【cpg控制】HOPF振荡器动态特性分析

本文深入分析了HOPF振荡器在CPG控制中的动态特性,包括α、μ和ω参数的影响。α值决定了振荡器收敛速度,μ值影响信号幅值,而ω值则控制着周期。不同参数设置会产生不同波形,适配执行器特性和机器人运动需求。
摘要由CSDN通过智能技术生成

系列文章目录

【cpg控制】Hopf振荡器的一种python实现

【CPG控制】Hopf振荡器引入beta参数

【CPG控制】Hopf振荡器之间的耦合

【cpg控制】HOPF振荡器动态特性分析

概述

众所周知,动物最常见的运动方式是节律运动,即按照一定的节奏、有力度地重复、协调、持续进行的动作,是低级神经中枢的自激行为。生物学上,动物的节律运动控制区被认为是分层并且模块化的,其控制以中枢模式发生器为中心,既可以接受来自高层的高级神经中枢的主观控制,也可以响应来自躯体各种感受器官的反射,这就是CPG控制机理。

前人已经按照CPG控制机理建立了不同形式的数学模型,它们能够产生的周期振荡的信号,使其能够满足节律运动的特点。

CPG模型分类
目前比较经典的CPG模型可划分为以下两大类:

  • ①基于神经元的模型:Matsuoka神经元震荡模型、Kimura模型等,该类模型生物学意义明确,但参数较多,动态特性分析比较复杂。

  • ②基于非线性振荡器的模型:Kuramoto相位振荡器、Hopf谐波振荡器等,该类模型参数较少,模型比较成熟。

在保证能够输出稳定的周期性震荡信号的前提下,那些形式简单、参数较少、计算量小、便于分析、易于实现的CPG模型是更好的选择。根据这一个原则,我们选取了HOPF振荡器作为CPG控制的核心。

一、HOPF振荡器

HOPF振荡器在状态空间中存在一个稳定的极限环,即对于任意非零初始值,均能使得振荡器产生相同形状的周期性振荡信号,其数学模型如下:
d x d t = α ( μ − r 2 ) x − ω y \frac{dx}{dt} = \alpha(\mu - r^2)x - \omega y dtdx=α(μr2)xωy

d y d t = α ( μ − r 2 ) y + ω x \frac {dy}{dt} = \alpha(\mu-r^2)y+\omega x dtdy=

  • 43
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
基于关节间二维旋转矩阵耦合性Hopf振荡器模型是一种常用的方法来模拟蛇形机器人的运动。下面是一个基于Matlab的耦合Hopf振荡器模型的完整代码示例: ```matlab % 参数设置 N = 6; % 关节数量 gamma = 1; % 非线性增益 mu = 1; % 控制参数 omega = 2*pi; % 振荡频率 % 初始化关节位置和速度 x = zeros(N, 1); y = zeros(N, 1); xdot = zeros(N, 1); ydot = zeros(N, 1); % 耦合矩阵 K = [0, 1, 0, 0, 0, -1; -1, 0, 1, 0, 0, 0; 0, -1, 0, 1, 0, 0; 0, 0, -1, 0, 1, 0; 0, 0, 0, -1, 0, 1; 1, 0, 0, 0, -1, 0]; % 模拟时间参数 tspan = [0, 10]; % 模拟时间范围 dt = 0.01; % 模拟步长 % 模拟运动 [t, sol] = ode45(@hopf_oscillator, tspan, [x; y; xdot; ydot]); % 提取关节位置 x = sol(:, 1:N); y = sol(:, N+1:2*N); % 绘制关节位置 figure; for i = 1:N plot(x(:, i), y(:, i), 'LineWidth', 2); hold on; end xlabel('X'); ylabel('Y'); title('Snake Robot Motion'); grid on; % Hopf振荡器ODE函数 function dxdt = hopf_oscillator(~, z) x = z(1:N); y = z(N+1:2*N); xdot = z(2*N+1:3*N); ydot = z(3*N+1:4*N); % 计算耦合项 x_couple = K * x; y_couple = K * y; % 计算导数 xdot = gamma * (mu - x.^2) - omega * y + x_couple; ydot = gamma * (mu - y.^2) + omega * x + y_couple; % 组合结果 dxdt = [xdot; ydot; x; y]; end ``` 这段代码实现了一个包含6个关节的蛇形机器人的模拟运动,并使用基于关节间二维旋转矩阵的耦合Hopf振荡器模型来描述关节之间的耦合行为。你可以根据需要修改参数和模拟时间范围,并运行代码进行模拟。绘制的图形展示了蛇形机器人的关节运动轨迹。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值