Title:
四足机器人全身控制与非全身控制的示意
WBC and Non-WBC of the ``MIT Cheetah’’ Quadruped Robot


关联博文
[1] 四足机器人中不同优先级任务的执行——Null-Space Projection方法
[2] 四足机器人全身控制与非全身控制的示意 ← \leftarrow 本篇

其他相关博文
[1] MIT Cheetah 四足机器人的动力学及算法 (I) —— 简化动力学模型

[2] MIT Cheetah 四足机器人的动力学及算法 (II) —— 刚体模型与前向运动学算法

[3] MIT Cheetah 四足机器人的动力学及算法 (III) —— 电机转子动力学、刚体逆动力学、铰接刚体动力学之算法

[4] MIT Cheetah 四足机器人的动力学及算法 (IV) —— 浮动基座动力学、接触动力学之算法



说明
很久之前看过 MIT Cheetah 四足机器人动力学仿真与控制的开源代码.
这里简单回顾一下之前做的笔记,当时作为对开源代码的学习笼统地记了记.
翻出来也共享一下, 也为无人问津的博客加个篇数.
不过时间久远了, 许多内容也忘了.

[这里的涉及的内容也只是书本上的动力学知识和开源的代码,不和任何产品有关联]


全身控制 (WBC, Whole Body Control), 非全身控制 (Non-WBC).

I. 非全身控制 Non-WBC

非全身控制基于简化动力学模型 —— 土豆模型.
设计时尽量将四肢设计的轻细, 尤其末端惯量要小, 所以三个驱动电机都放在肩/髋关节处.
控制上就可以将四肢的惯性力、科氏力、离心力全部省略, 只剩下个身体动力学, 像个绑四个助推器 (足端作用力) 的 “土豆”, 也像个四旋翼飞行器. 简化动力学模型给到控制算法, 实现身体位姿的最优控制.

为了实现四足机器人的仿生运动步态, 分为两个步骤进行:
规划:
抬腿时序(对应不同仿生步态各腿之间的相位差)、摆动腿的末端轨迹(模仿动物的柔顺动作、步态参数的调整如转弯等)
控制:
针对摆动腿, 只要跟踪规划的末端轨迹 (如PD控制) 是位置控制.
主要控制难点在支撑腿, 支撑腿实现了往前运动、姿态平衡, 是力控制.
针对简化模型 (土豆模型), 有平衡控制方法 (就是利用最优控制获得足端力, 再利用雅克比矩阵获得关节控制力矩).
针对简化模型, 也有用模型预测控制方法 (每次计算以未来的 N 步状态做优化, 但实际只用第一步的结果后面的丢弃, 然后重复再优化).

II. 全身控制 WBC

全身控制基于全身动力学模型 —— 空间六维向量的迭代动力学方法.
刚体位姿分为:3 维平动 + 3 维转动.
传统的牛顿-欧拉动力学方法也分为:3 维平动方向上的牛顿方程 + 3 维转动方向上的欧拉方程.
新的动力学表示架构 ——空间六维向量的迭代动力学方法, 由 IIT 先进机器人部门的 Roy Featherstone 建立,该方法具有明晰的动力学结构. 用这套计算刚体动力学方法, 实时计算机器人的全身刚体动力学, 给到控制算法, 实现基于全身动力学的最优控制 (模型预测控制).

基于全身动力学的控制很复杂, 需要同时考虑支撑相和摆动相的控制 (而不是简化模型的分开控制).
引入了基于零空间映射的冗余度机器人多任务优先级控制方法, 再加上基于全身动力学方程的模型预测控制, 最后通过最优松弛因子将两种控制方法结合在一起, 实现全身控制.

III. WBC and Non-WBC 的图示

下面是当时做的笔记示意图.


在这里插入图片描述


版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/woyaomaishu2/article/details/145239951
本文作者:wzf@robotics_notes

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐