4、动力学基础:牛顿-欧拉法、拉格朗日法、浮动基座动力学、质心动力学与角动量守恒

双足机器人的动力学模型是步态规划与控制的核心依据。与固定基座机械臂不同,双足机器人没有与地面刚性固连的基座,其运动过程中支撑脚交替、躯干姿态不断调整,系统呈现典型的浮动基座(Floating Base)特性。本章从牛顿-欧拉法与拉格朗日法两种经典建模框架出发,逐步引入浮动基座动力学、质心动力学与角动量守恒,帮助学习者建立从“完整多体模型”到“简化质心模型”的递进认知,为后续步态规划与控制策略设计奠定理论基础。

双足机器人动力学建模方法体系 完整多体动力学模型 n 个连杆 + 浮动基座(6 DoF) 牛顿-欧拉法(递推) 外推:速度/加速度从基座→末端 内推:力/力矩从末端→基座 计算效率 O(n),适合实时控制 约束力显式表达 拉格朗日法(解析) L = T - V(动能 - 势能) 广义坐标下统一推导 闭式方程,适合分析与仿真 约束力需拉格朗日乘子 浮动基座动力学 基座无固定约束,6 维广义加速度自由 质心动力学(CoM) M·r̈_c = ΣF_ext(线性) L̇_c = Στ_ext(角动量) 角动量守恒 L̇ = 0 → 姿态稳定控制 ZMP/CoP 与角动量耦合 模型复杂度递减 → 控制实时性递增

4.1 牛顿-欧拉法:递推建模与约束力求解

4.1.1 核心原理

牛顿-欧拉法基于牛顿第二定律(力与加速度关系)和欧拉方程(力矩与角加速度关系),对每个连杆逐一建立力与力矩平衡方程。对于双足机器人这类开链/闭链混合结构,通常采用外推-内推两阶段递推:

  • 外推(正向递推):从浮动基座(或支撑脚)出发,依次计算每个连杆的角速度、角加速度、线加速度,以及质心加速度。
  • 内推(反向递推):从末端执行器(摆动脚或手臂)向基座方向,依次计算每个关节所需的力与力矩,同时得到关节间约束力。

该方法的核心优势在于:计算复杂度为 O(n)(n 为连杆数),非常适合实时控制中的逆动力学求解。同时,关节约束力(如地面反作用力)在递推过程中自然显式出现,便于进行足底力分配与稳定性分析。

4.1.2 操作流程与关键方程

以单腿支撑相为例,设支撑脚为固定参考系,躯干为浮动基座。递推过程如下:

  1. 初始化:支撑脚处角速度 ω₀ = 0,线加速度 a₀ = g(重力加速度,向上为正)。
  2. 外推:对每个关节 i,利用关节速度 q̇ᵢ 和上一连杆状态递推:
    ωᵢ = ωᵢ₋₁ + Rᵢ·q̇ᵢ·ẑ
    αᵢ = αᵢ₋₁ + Rᵢ·q̈ᵢ·ẑ + ωᵢ₋₁ × (Rᵢ·q̇ᵢ·ẑ)
  3. 内推:从摆动脚开始,计算每个连杆的惯性力、重力项,并累加得到关节力矩 τᵢ。

对于双足支撑相,系统形成闭链,需引入约束雅可比矩阵将闭链拆分为两个开链分别求解,再通过约束力协调。

工程要点:牛顿-欧拉法在仿真中常与关节摩擦模型、电机力矩-转速特性联合使用。实际控制器中,通常将递推得到的力矩作为前馈项,与 PD 反馈项叠加,构成“计算力矩控制”框架。

4.1.3 案例拆解:单腿摆动相逆动力学

假设一个 5 连杆双足机器人(双腿各 2 关节 + 躯干 1 关节),在单腿支撑相中,摆动腿从后向前摆动。已知关节角度、角速度、角加速度轨迹(由步态规划器给出),需要计算各关节驱动力矩。

参数数值说明
连杆质量大腿 8 kg,小腿 4 kg,躯干 30 kg集中质量近似
摆动周期0.8 s步态周期 1.2 s,双支撑 0.4 s
最大髋关节力矩≈ 85 N·m牛顿-欧拉递推结果
最大膝关节力矩≈ 45 N·m摆动腿伸展阶段

通过牛顿-欧拉递推,可同时获得髋关节和膝关节的力矩曲线。若发现膝关节在摆动末期出现负力矩(即需要制动),说明步态规划中摆动腿减速过快,可调整轨迹的加速度曲线以降低峰值力矩。

常见误区:初学者常忽略浮动基座本身的加速度项。在牛顿-欧拉法中,躯干(浮动基座)的线加速度并非零,而是由支撑腿的约束力和重力共同决定。若将躯干视为固定基座,将导致地面反作用力计算严重偏差。

4.2 拉格朗日法:从能量到运动方程

4.2.1 核心原理

拉格朗日法从系统总动能 T 和总势能 V 出发,定义拉格朗日函数 L = T - V,通过欧拉-拉格朗日方程推导运动方程:

d/dt(∂L/∂q̇ᵢ) - ∂L/∂qᵢ = τᵢ + Σⱼ Jⱼᵀ·F_extⱼ

其中 qᵢ 为广义坐标,τᵢ 为广义力,Jⱼ 为外力作用点的雅可比矩阵。对于双足机器人,广义坐标通常选择为:浮动基座的 6 个自由度(位置 3 + 姿态 3)+ 所有关节角。

4.2.2 浮动基座下的拉格朗日方程结构

将广义坐标分为浮动基座坐标 q_b ∈ R⁶ 和关节坐标 q_j ∈ Rⁿ,运动方程可写为分块形式:

[ M_bb  M_bj ] [q̈_b]   [C_b]   [G_b]   [0    ]   [J_bᵀ]
[ M_jb  M_jj ] [q̈_j] + [C_j] + [G_j] = [τ_j  ] + [J_jᵀ] · F_ext

其中 M_bb 为基座惯性矩阵,M_jj 为关节惯性矩阵,M_bj 为耦合项。关键特征:基座行对应的广义力为零(浮动基座不受外部直接驱动),因此基座加速度由关节运动和外部接触力隐式决定。

4.2.3 案例拆解:双支撑相闭链约束处理

双足支撑时,两只脚同时接触地面,形成闭链。拉格朗日法处理闭链的标准方法是引入约束方程:

  1. 建立约束方程 Φ(q) = 0(如两脚位置固定在地面)。
  2. 计算约束雅可比 J_c = ∂Φ/∂q。
  3. 在运动方程中加入约束力项 J_cᵀ·λ,其中 λ 为拉格朗日乘子(物理意义为约束力)。
  4. 联立求解 q̈ 和 λ。

该方法在仿真中精度高,但计算量较大。实际步态规划中,常将双支撑相简化为“瞬时切换”或“软接触模型”,以降低计算复杂度。

经验总结:拉格朗日法适合离线仿真、步态优化和动力学分析;牛顿-欧拉法适合在线实时控制。两者在数学上等价,但数值特性不同——拉格朗日法在关节数较多时可能出现病态矩阵,牛顿-欧拉法数值稳定性更好。

4.3 浮动基座动力学与质心动力学

4.3.1 浮动基座动力学的核心特征

双足机器人区别于固定基座机械臂的本质在于:基座(躯干)没有物理锚点,其运动由重力、地面反作用力和关节力矩共同决定。浮动基座动力学的关键结论:

  • 基座的线加速度 a_b 和角加速度 α_b 是“自由”的,由系统总外力决定。
  • 关节力矩不仅驱动关节运动,还间接影响基座姿态——这就是行走时躯干自然前倾的动力学原因。
  • 地面反作用力(GRF)是唯一的外部力源,其作用点(CoP)和大小直接决定基座加速度。

4.3.2 质心动力学的简化与意义

将整个机器人视为一个质点系统,定义质心位置 r_c 和总质量 M。质心动力学方程为:

M·r̈_c = ΣF_ext = F_GRF + M·g
L̇_c = Στ_ext = (p_CoP - r_c) × F_GRF

其中 L̇_c 为绕质心的角动量变化率,p_CoP 为压力中心(CoP)。这一简化模型将复杂的多体动力学压缩为两个方程,是线性倒立摆(LIPM)、质心轨迹规划等经典步态规划方法的基础。

模型类型状态变量计算复杂度适用场景
完整多体模型所有连杆位姿 + 速度O(n³) 矩阵运算精确仿真、动力学分析
浮动基座模型基座 6 DoF + 关节角O(n) 递推实时控制、力矩前馈
质心模型质心位置 + 角动量O(1) 常微分方程步态规划、稳定性判据

4.3.3 案例拆解:从质心动力学推导 ZMP 约束

ZMP(零力矩点)是双足稳定性的核心判据。由质心动力学方程可推导:当角动量变化率 L̇_c = 0 时(即姿态稳定),ZMP 位置为:

p_ZMP_x = r_cx - (r_cz / g) · r̈_cx
p_ZMP_y = r_cy - (r_cz / g) · r̈_cy

这意味着:ZMP 位置由质心水平加速度决定。若质心加速度过大,ZMP 将超出支撑多边形,导致翻倒。实际步态规划中,通常先规划质心轨迹,再反算 ZMP 轨迹,确保其始终落在支撑脚范围内。

实战经验:在 Atlas、ASIMO 等先进双足机器人中,质心动力学模型被用于在线步态调整。当受到外部扰动时,控制器通过调整质心加速度(即调整 ZMP 位置)来恢复平衡,而不是直接修改关节轨迹——这大大降低了控制维度。

4.4 角动量守恒与姿态稳定

4.4.1 角动量守恒的物理意义

在无外力矩作用时,系统绕质心的角动量守恒:L̇_c = 0。对于双足机器人,这意味着:

  • 若机器人处于腾空相(双脚离地),其角动量守恒,姿态只能通过关节内部运动调整(如摆臂、摆腿改变质量分布)。
  • 在支撑相,地面反作用力提供外力矩,角动量可以变化——这正是姿态控制的“输入通道”。
  • 角动量变化率与 ZMP 位置直接相关:L̇_c = (p_CoP - r_c) × F_GRF,因此控制 ZMP 就是控制角动量。

4.4.2 角动量控制在步态中的应用

实际行走中,完全保持角动量为零并不现实(摆动腿运动必然产生角动量)。工程上采用角动量规划策略:

  1. 设定期望角动量轨迹 L_d(t),通常为平滑曲线,在单步周期内从零开始并归零。
  2. 通过关节力矩控制使实际角动量跟踪期望值。
  3. 将角动量误差转化为躯干姿态修正量,与质心位置控制解耦。

这种“质心位置 + 角动量”的双通道控制架构,是当前双足机器人运动控制的主流范式。

常见误区:初学者常将角动量守恒误解为“角动量必须始终为零”。实际上,角动量守恒是指无外力矩时角动量不变,而行走过程中地面反作用力持续提供外力矩,角动量必然变化。正确的控制目标是让角动量变化率可控,而非强制为零。

4.4.3 案例拆解:腾空相姿态调整

在跑步或跳跃动作中,机器人进入腾空相,此时角动量守恒。假设机器人起跳时具有初始角动量 L₀ = 2.5 kg·m²/s(由起跳姿态决定),腾空时间 0.3 s,需要在落地前将躯干姿态调整回竖直方向。

调整策略角动量变化效果
摆臂(双臂快速旋转)手臂产生反向角动量,躯干获得正向角动量躯干前倾角减小 8°
收腿(屈膝缩短转动惯量)躯干角速度增大(角动量守恒)躯干旋转速度提升 30%
不对称摆腿产生偏航角动量调整落地朝向

该案例说明:腾空相中虽然总角动量守恒,但通过改变质量分布(转动惯量)和内部动量交换,可以控制躯干姿态。这正是跑跳动作中“空中姿态控制”的动力学本质。

4.5 模型选择与工程实践总结

在实际双足机器人开发中,不同动力学模型服务于不同目的:

应用场景推荐模型原因
实时力矩控制(>1 kHz)牛顿-欧拉递推计算效率高,适合嵌入式实现
步态离线优化拉格朗日 + 约束闭式方程便于梯度计算
在线步态调整质心动力学 + LIPM低维模型响应快,适合预测控制
稳定性分析ZMP + 角动量直接对应物理稳定判据
工程建议:在控制器设计中,建议采用“分层模型”策略——上层用质心模型做步态规划(频率 50-100 Hz),中层用浮动基座模型做力矩前馈(频率 500 Hz),底层用牛顿-欧拉递推做关节力矩计算(频率 1-2 kHz)。这种分层架构兼顾了实时性与模型精度。

本章从牛顿-欧拉法和拉格朗日法两种经典建模方法出发,建立了从完整多体模型到质心模型的递进框架。浮动基座动力学揭示了双足机器人“无根”运动的本质,质心动力学与角动量守恒则为步态规划提供了低维而有效的控制模型。理解这些动力学基础,是后续学习步态规划算法(如 ZMP 规划、模型预测控制、全身力矩控制)的前提。