刚体动力学
Rigid Body Dynamics常用研究力和力矩如何让一个或多个相连刚体产生加速与转动。
刚体动力学研究一个或多个用关节相连的刚体,在外力和力矩作用下如何运动。单个刚体遵循牛顿-欧拉方程:F=ma 管平移(F 为合力,m 为质量,a 为质心加速度),τ=Iα+ω×(Iω) 管转动(τ 为合力矩,I 为惯性张量,α 为角加速度,ω 为角速度)。机械臂这类多刚体系统通常写成 M(q)q̈+c(q,q̇)+g(q)=τ:q 是关节角,M 是质量矩阵,c 是科里奥利力与离心力项,g 是重力项,τ 是关节力矩。已知力矩求运动叫正动力学,物理仿真器每一步都在算;已知运动求力矩叫逆动力学,用于力矩控制和重力补偿。Featherstone 的《Rigid Body Dynamics Algorithms》是标准参考,MuJoCo 的相关算法即基于它。
例子机械臂端着水杯静止不动时 q̇ 和 q̈ 都为零,方程只剩 g(q)=τ,算出的就是各关节为抵消重力需要输出的力矩,这就是重力补偿。
- 也叫
- 多刚体动力学、Rigid-Body Dynamics
- 相关
- 牛顿-欧拉方程、拉格朗日方程、质量矩阵、正动力学、逆动力学、物理引擎
- 来源
- Wikipedia: Rigid body dynamics
Modern Robotics (Lynch & Park), Ch.8 Dynamics of Open Chains
MuJoCo Documentation: Computation