6.3 底层控制与逆动力学:从关节指令到电机力矩 轨迹规划给了「关节角度随时间变化」的目标曲线,但电机不直接吃角度——它吃电流(力矩)。怎么让关节精确跟踪轨迹?这一层就是底层控制。 6.3.1 控制问题的形式化 轨迹跟踪控制问题: 给定:期望关节轨迹 $qd(t), \dot{q}d(t), \ddot{q}d(t)$。 当前:实际关节状态 $q(t), \dot{q}(t)$(编码器读)。 输出:电机力矩 $\tau(t)$。 目标:让 $q(t) \to qd(t)$,跟踪误差 $\to 0$。 这是经典控制理论的核心问题。 6.3.
轨迹规划给了「关节角度随时间变化」的目标曲线,但电机不直接吃角度——它吃电流(力矩)。怎么让关节精确跟踪轨迹?这一层就是底层控制。
轨迹跟踪控制问题:
这是经典控制理论的核心问题。
PID(Proportional-Integral-Derivative) 是工业最常用的控制器:
其中 e(t) = q_d(t) - q(t) 是跟踪误差。
| 项 | 作用 | 增大效果 |
|---|---|---|
| P(比例) | 误差大就用力大 | 响应快但易振荡 |
| I(积分) | 消除稳态误差 | 消除静差但可能超调 |
| D(微分) | 抑制误差变化 | 阻尼振荡但对噪声敏感 |
PID 简单到无需模型,调试到「能用」很容易。但高性能跟踪需要更精细的方法——因为 PID 忽略了机器人动力学。
机械臂的动力学方程(拉格朗日方程):
各项含义:
这是正向动力学——给定力矩求运动。控制的反向问题是逆动力学——给定期望运动求所需力矩:
逆动力学是计算力矩控制的基础。
计算力矩控制(也叫反馈线性化、inverse dynamics control)用逆动力学 + 反馈修正:
把这个 \tau 代入动力学方程:
两边消去,得:
误差动态是一个线性二阶系统!只要选 K_p, K_d 让这个二阶系统稳定,跟踪误差指数收敛到零。
def computed_torque(q, dq, q_d, dq_d, ddq_d, K_p, K_d, model): e = q_d - q de = dq_d - dq # 逆动力学 + 反馈 ddq_ref = ddq_d + K_p * e + K_d * de tau = model.M(q) @ ddq_ref + model.C(q, dq) @ dq + model.G(q) return tau
💡 工业现实:纯计算力矩在模型完美时极好,但实际机器人有摩擦、间隙、负载变化,模型不可能完美。所以实际系统常用「计算力矩 + 鲁棒项」或「自适应控制」补偿模型误差。
自适应控制(Adaptive Control)在模型参数不确定时,在线估计参数:
代表方法如 Slotine-Li 自适应控制,能保证跟踪误差和参数估计误差都有界。
自适应控制适合负载变化大的场景(机械臂抓不同重量物体)。
模型预测控制(Model Predictive Control, MPC) 是更现代的方法:
工作流程:
约束:
| 方法 | 模型 | 约束处理 | 计算成本 | 性能 |
|---|---|---|---|---|
| PID | 不需要 | 不处理 | 极低 | 中(无模型限制) |
| 计算力矩 | 需要精确模型 | 不处理 | 中 | 高(模型准时) |
| MPC | 需要 | 显式处理 | 高(每步优化) | 高 + 可处理约束 |
💡 MPC 的崛起:MPC 之所以成为高端机器人(人形、自动驾驶)的主流,核心是它显式处理约束——力矩不超限、关节不超限、不撞障碍、保持任务约束,这些都能写进 MPC 的优化问题。计算力矩做不到。
MPC 的挑战是计算成本——每步都要解一个优化。实时 MPC(100-1000Hz)需要:
现代工具如 acados、CasADi、HPIPM 让实时 MPC 在 1kHz 以下频率成为可能。
人形机器人有 30+ 自由度,且要保持平衡——传统单关节控制不够,需要全身控制(Whole-Body Control, WBC)。
WBC 把整个机器人建模为一个浮基系统:
WBC 的优化问题:
约束:
任务(task)可以叠加:
代表实现如 OSC(Operational Space Control)、Hierarchical WBC。波士顿动力 Atlas、Tesla Optimus 都用 WBC 做底层控制。
⚠️ WBC 的难度:浮基系统维度高、约束复杂、非线性强,实时求解 WBC 是当前机器人控制最前沿的工程难题之一。很多团队用 QP-based WBC + MPC 高层规划的层次架构。
机械臂末端在工作空间(笛卡尔空间)的运动与关节空间的运动通过雅可比矩阵(Jacobian) 关联:
雅可比的逆可用于操作空间控制(Operational Space Control, OSC):
OSC 是接触丰富任务(擦拭、抛光、与人协作)的常用方法,第 6.4 节的阻抗控制就是 OSC 的特例。
最近几年,学习型控制兴起:
学习型控制在高维、非线性、难以建模的系统(双足人形、柔性机器人)上有优势,但牺牲了安全保证。当前趋势是传统控制 + 学习增强的混合方案。
最后强调频率分层的重要性:
| 频率 | 任务 | 方法 |
|---|---|---|
| 1-10 Hz | 全局规划 | RRT*、LLM 规划 |
| 10-30 Hz | 策略生成 | VLA、扩散策略 |
| 30-100 Hz | 轨迹优化 | MPC、TOPP |
| 100-1000 Hz | 底层控制 | PID、计算力矩 |
| 1k-10k Hz | 电流环 | FOC、电流控制 |
每一层为下一层提供参考,下一层向上一层反馈状态。这是现代机器人系统的标准架构。
下一节《6.4 精细操作与力控》将讨论接触丰富任务的特殊控制——阻抗、导纳、力位混合控制。