【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
TODO:写完再整理

文章目录


前言

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!

本文先对动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

一、建立单刚体动力学模型(近似抽象模型)

集中质量模型即单刚体模型,分析机器人是可以忽略腿的作用,将地面对腿部的作用直接等效作用在躯干质心,这种假设在机器人腿部质量相对于总质量占比很小的情况下是合理的(Cheetah 3与Mini Cheetah的4条腿总质量都不机器人重量的10%),这个平衡控制器的模型是一个高度简化的单刚体模型,这个模型也能用来做跳跃阶段的地面反作用力规划
【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法

.
.

二、建立单刚体模型的运动方程AX=B(躯干平衡控制器模型)

在将机器人看作单刚体模型的情况下,机器人运动方程为:(运动方程是线性的)
【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法
m和IG是机器人的总质量和质心转动惯量,g是重力矢量,pi,i∈{1,2,3,4}是脚的位置。 术语是表示叉积的斜对称矩阵

该机器人运动方程是通过单刚体动力学模型建立的,也就是基本的

牛顿第二定律:合力=ma

角动量定理:合力矩=惯量*角加速度
其中F为作用在四条腿的地面反作用力,若知道了躯干的状态,通过求解齐次线性方程AX=B可以求出躯干的反作用力F

控制器模型采用了机器人的COM平移的线加速度Pc’'和身体角加速度Wc’以及力【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法之间的常用线性关系进行线性化的

.
.

三、使用反馈控制律计算期望的躯干质心加速度和角加速度,进而得到期望的躯干质心的状态b

平衡控制器在质心和身体方向上执行阻抗控制,同时还得确保脚力满足摩擦约束
【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法
公式中的期望位置、期望线速度和期望角度是由用户和COM轨迹生成器给定的;躯干实时的位置、线速度、和角度(方向)是由状态估计器估计的

计算期望的躯干质心加速度时,输入躯干质心期望位置和躯干质心期望速度,通过实时测得的实际躯干质心位置和速度,得到位置和速度的误差,通过PD控制器得到期望的躯干质心加速度;

计算期望的躯干质心角加速度时,输入躯干质心期望角速度,通过实时测得的实际躯干质实物速度,得到速度的误差,通过阻抗控制器得到期望的躯干质心角加速度;

得到期望的躯干质心加速度和角加速度后,根据单刚体模型的运动方程,分别乘上机器人的质量m和转动惯量I即可得到从地面反作用到躯干上的力矩【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法和转动惯量【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法

计算得到了期望的躯干的质心状态b

【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法
.
.

四、地面反作用力问题直接通过齐次方程 ,进行求解

上面计算得到了期望的躯干质心的状态
【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法
也建立了线性运动方程AX=B
【MPC的前身方法二】(5.3)动力学模型+反馈控制+齐次线性方程AX=B求解反作用力方法

通过使用线性求解库求解该线性方程,可以得到地面实际作用在躯干质心上的反作用合力矩F

.

评价

(1)这种方法用纯数学的方法进行求解,能得到唯一精确的解,但是算力非常大,实时性不高

(2)基于静力学建立的运动方程,在动步态运动时,反作用力的误差可能较大,看机械参数调参优化吧
.
.

五、计算躯干质心作用在地面的作用力

通过牛顿第三定律:作用力与反作用力大小一致、方向相反的原理,求得地面反作用力后,则期望的躯干质心作用在地面的作用力为其负值


总结

(1)【模型部分】有模型,但是模型没有进行简化,计算困难
(2)【优化预测部分】AX=B的问题没有化简成为可迭代的X(n+1)=AX(n)+BU(n)的形式,无法进行MPC的迭代预测,是直接使用线性代数的方法求绝对解的
(3)【控制部分】解算到反作用力,,并没有进一步与解算成腿每个关节的力矩,因此做不了实质的控制,MPC再这个基础上进一步使用雅可比解算控制或者WBC控制,综上,本文没有控制部分

参考资料

《High-slope terrain locomotion for torque-controlled quadruped robots》
《Push recovery by stepping for humanoid robots with force controlled joints》

上一篇:Python数据分析第7天


下一篇:[笔记] DP 优化