1. 基本定义与核心作用
(1) TO(Trajectory Optimization,轨迹优化)
- 作用:通过数学优化方法生成全局最优或次优的运动轨迹,通常作为高层规划模块,为后续控制提供参考轨迹。例如,双足机器人步态规划中的质心轨迹生成。
- 特点:离线或半离线计算,侧重于全局最优性,但实时性较差,通常与MPC或WBC结合使用。
(2) MPC(Model Predictive Control,模型预测控制)
- 作用:基于动态模型和滚动时域优化,实时调整控制输入以跟踪参考轨迹,同时处理约束(如摩擦锥、关节力矩限制)。例如,人形机器人步态的动态调整。
- 特点:在线优化、预测性与实时校正能力,适用于动态环境和高层任务规划。
(3) WBC(Whole Body Control,全身控制)
- 作用:协调机器人全身关节运动,通过优化实现动态平衡与多任务优先级协调(如末端轨迹跟踪与平衡)。例如,MIT Mini Cheetah通过WBC提升运动速度至3.7m/s。
- 特点:基于动力学模型的实时优化,处理关节加速度、接触力等多约束,优先级任务分层管理。
2. 核心区别对比
维度 | TO | MPC | WBC |
---|---|---|---|
时间尺度 | 长周期(秒级) | 中周期(毫秒级滚动优化) | 短周期(毫秒级实时控制) |
优化目标 | 全局轨迹最优 | 局部跟踪与动态调整 | 多任务协调与动态平衡 |
约束处理 | 静态约束(如路径障碍物) | 动态约束(摩擦锥、动力学方程) | 多物理约束(关节限位、接触力) |
实时性 | 低(离线为主) | 中高(在线滚动优化) | 高(实时反馈调整) |
应用层级 | 高层规划 | 中层控制 | 底层执行 |
典型应用 | 四足机器人步态生成 | 双足机器人动态步态 | 人形机器人平衡控制 |
3. 协同工作流程示例
- TO生成参考轨迹:例如,规划质心轨迹或足端摆动路径。
- MPC跟踪与调整:根据当前状态和预测模型优化控制输入(如地面反作用力)。
- WBC执行与补偿:将MPC输出转化为关节指令,处理动力学约束并协调全身运动。
4. 开源工具与框架
工具/框架 | 功能 | 适用场景 | 来源 |
---|---|---|---|
TinyMPC | 轻量级MPC求解器,适用于资源受限的嵌入式平台(如四旋翼) | 微控制器实时控制 | CMU开源项目 |
OpenLoong | 集成MPC+WBC的人形机器人控制框架,支持Mujoco仿真与实物部署 | 人形机器人步态与平衡 | 开放原子开发者社区 |
OCS2 | 自动生成全身动力学模型,支持四足/双足机器人MPC优化 | 复杂动力学系统的轨迹优化 | ETH Zurich |
qpOASES | 高效QP求解器,用于MPC和WBC的优化问题求解 | 通用二次规划问题 | 开源算法库 |
5. 技术挑战与发展趋势
- 硬件适配:MPC和WBC需高性能计算单元(如NVIDIA Jetson)支持实时优化。
- 算法融合:结合强化学习与传统控制(如MIT Mini Cheetah的混合控制方案)。
- 仿真到实物的迁移:通过机理建模减少虚实差异(sim2real),提升控制鲁棒性。
总结
TO、MPC和WBC在机器人控制中形成“规划-优化-执行”的闭环链路:
- TO 提供全局参考,MPC 动态调整轨迹,WBC 确保执行精度与稳定性。
- 开源生态(如TinyMPC、OpenLoong)已覆盖算法、仿真与硬件部署,开发者可基于需求选择工具链。
- 未来方向聚焦于算法轻量化、多模态任务协同及学习与传统控制的深度融合。