复合刚体算法
Composite Rigid Body AlgorithmCRBA进阶把关节外侧连杆合成一个刚体来高效计算质量矩阵的算法
用来计算关节空间质量矩阵 M(q) 的递推算法,M 描述关节加速度与所需关节力矩之间的惯性关系,方法一般追溯到 Walker 与 Orin 1982 年的论文。核心想法是:对第 i 个关节,把它外侧的所有连杆看成锁死在一起的复合刚体,这个复合体的惯量直接给出 M 中与该关节相关的元素;复合惯量可以从末端往根部逐级累加。算出 M 后,再用递归牛顿-欧拉算法求出科里奥利、离心和重力项 c,解 M·q̈ = τ − c 就完成正动力学。它和铰接体算法是正动力学的两条常见路线。
例子MuJoCo 每个仿真步用 CRB 算法得到关节空间质量矩阵 M,用 RNE 算法(加速度置零)得到包含科里奥利、离心和重力的偏置力,再结合约束求解得到加速度;Pinocchio 里对应的函数是 crba。
- 也叫
- 组合刚体算法、CRB 算法、Composite-Rigid-Body Algorithm
- 相关
- 质量矩阵、铰接体算法、递归牛顿-欧拉算法、正动力学、运动学树、MuJoCo
- 来源
- MuJoCo 文档: Computation
Walker & Orin: Efficient Dynamic Computer Simulation of Robotic Mechanisms (1982)
Pinocchio 项目主页(CRBA 等算法列表)