MIT四足机器人Cheetah(2) Convex Mpc身体姿态控制.pdfVIP

MIT四足机器人Cheetah(2) Convex Mpc身体姿态控制.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MIT 四足机器人 Cheetah —Convex Mpc 身体姿态控制 在“MIT 四足机器人Cheetah 摆动腿控制、单刚体模型平衡控制器”中,主要简单的总结了 下一般情况下腿足机器人的摆动腿控制方法以及Cheetah 3 的基于集中质量模型的平衡控 制器。此外,MIT 还在Cheetah 3 以及Mini Cheetah 上采用了Convex MPC 平衡控制器, 在其 2018 年论文 《Dynamic Locomotion in the MIT Cheetah 3 Through Convex Model-Predictive Control》中,Cheetah3 通过Convex MPC 平衡控制器达到了3m/s 的奔 跑速度: 为了将论文中的方案部署到自己的腿足机器人上,笔者此处依次从问题分析、模型简化、 方程列写、QP表达形式组织等谈谈自己对这篇论文的一些理解。 1)首先是描述机器人状态的主要变量的选取。对于机器人自身运动状态的描述,姿态 以及位置层面,可以使用姿态角 (roll ,pitch,yaw)和质心位置(x,y,z)来描述,同时为了描述 其运动层面,可以加入姿态角角速度以及机器人质心的运动速度。因此,在机器人状态描述 层面,共有姿态角、质心位置、姿态角角速度、质心速度共12 个量描述。在外界输入层面, 现今大多腿足机器人的MPC 都是规划质心轨迹,而后采用逆动力学跟随质心轨迹。但这种 方法在实际工程操作中,首先是逆动力学求解难度大,其次在机器人存在空中相时,也很难 保证能够跟随所规划的质心轨迹,出于力控的角度,更理想的应该是直接规划出关节力矩, 亦或能够在其基础上较简单的求出各关节力矩。 2)大致确定了我们希望的状态描述量以及需要规划的量,此处之前提过的单刚体模型 恰好满足这些条件,单刚体模型的运动方程如下: 其中第三项其实就是旋转矩阵的导与角速度的关系,在一般的机器人学教材中都有。 不清楚的可以看一下ETH 的精简版的机器人运动学动力学讲义: https://ethz.ch/content/dam/ethz/special-interest/mavt/robotics-n-intelligent-systems/r sl-dam/documents/RobotDynamics2017/RD_HS2017script.pdf 通过IMU获得的角速度仅是机器人相对于身体坐标系的角速度。身体坐标系中的运动 变换到世界坐标系可通过左乘一个变换矩阵R,论文中是依据ZYX 顺序变换,这也是目前 很多论文中通用的变换方式: 当R满秩时,求逆即可得到身体坐标系的角速度与世界坐标系的角速度的关系: 而此时的变换矩阵恰好是绕z 轴旋转的变换矩阵,即 同时惯量*角加速度项的微分项为 此处第二项是因为这个 求导操作是在非惯性系下进行的,所以多了个叉乘项。机器人相对于世界坐标系的惯量表达 式为: 上文已将R简化为绕z 轴的旋转矩阵,此处依旧适用: 此时将上文的单刚体运动方程写成状态空间的表达方式 (xdot Ax+Bu)为: Cheetah3 中是将最后的重力加速度项也整合到了状态矩阵A 中,此处笔者为了表述更加易 懂就将其先单拎出来。这是连续时间的状态方程,因为最终需要计算机编程实现,需要将其 离散化。要将A、B矩阵离散化,可以将他们分别乘以控制周期dt,而后求矩阵指数即可, Eigen 中: matlab 中可用expm()函数。离散化结果如下: 通过这个模型,便可以计算出系统对应的输出,可以将其组织为一个MPC 问题, 即求得最优的当前输入使得系统下一时刻输出尽可能接近期望值,同时也要保证输入量 尽可能小。因为在实际机器人中,机器人的力矩是有限的,我们并不希望计算出一个很大的 力矩。当然这算是一个很简单的cost 函数,状态变量、输入量变化率等我们都没有加入约 束。有了cost 函数,实际已经可以开始求解了,但我们的控制对象是对实时性要求较高的 腿足机器人,若直接对这种形式求解然后用于机器人控制,是不能将MPC 周期控制在几十 ms 内的,会严重影响控制性能。 为了提高MPC 的计算速度,除了减少约束条件,缩短预测/控制时域等外,可以将MPC 转为显示预测控制 (Explicit Mpc),当今用于汽车ECU等对实时性要求较高的MPC 大多也 是Explicit Mpc 形式,简单来说,Ex

文档评论(0)

猪狗孔明 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档