本文档属于 Robotics Tutorial 项目,作者:Pengfei Guo,达妙科技。采用 CC BY 4.0 协议,转载请注明出处。
运动控制方向综合教学大纲¶
版本: v2.0 | 日期: 2026-05-14 定位: 面向完成 SLAM 主线 v8 的工程师,系统掌握机械臂/足式/复合机器人的运动控制全栈 数据基础: 当前目录约 133 个 Markdown 文件, 127,536 行; 覆盖机械臂(固定基座) -> 足式(浮动基座) -> 复合(组合系统) -> 仿真(跨方向工具) 总投入: 机械臂核心 ~76 周 (前沿规划另 ~12-16 周) + 足式 ~37 周 + 复合 ~45 周 + 仿真 ~12 周 = 合计核心 ~170 周,含机械臂前沿规划约 ~182-186 周; 子方向可独立选修
本大纲不覆盖的内容¶
- 移动机器人规划方法论 (MPPI/博弈/不确定性/多机协作) -> 见
04_移动机器人规控/ - 无人机规控 -> 见
04_移动机器人规控/70_无人机/ - SLAM/感知/建图 -> 见
03_SLAM/ - C++ 语言基础/模板/并发 -> 见
02_C++基础与进阶/和03_SLAM/Ch1-20 - 数学基础 -> 见
01_数学/
四大子方向递进关系¶
运动控制方向按机器人本体复杂度形成自然递进链,每个子方向建立在前一个之上,但也可独立选修:
机械臂(固定基座,最简入手点)
| 共享: Pinocchio, ros2_control, 阻抗控制, BT.CPP
v
足式(浮动基座 + 接触切换 + 步态)
| 共享: WBC, MPC, RL sim-to-real
v
复合(机械臂 + 移动底盘,组合问题)
| 工具支撑
v
仿真(MuJoCo/Isaac Lab/Genesis, 跨方向 GPU 训练)
为什么这个顺序合理:
- **机械臂**是固定基座、全驱动系统——基座不动,每个关节都有电机,数学最干净。SLAM 工程师熟悉的 Eigen/Sophus 技能可以直接迁移到 Pinocchio。
- **足式**引入浮动基座(6 个无驱动自由度)和离散接触切换——动力学方程从 \(M\ddot{q}+h=\tau\) 变成 \(M\ddot{q}+h=S^T\tau+J_c^T\lambda\),复杂度跃升一个数量级。但机械臂阶段建立的 Pinocchio/ros2_control 基础可直接复用。
- **复合**本质上是"机械臂动力学 + 足式动力学"的耦合——轮足需要同时处理轮式运动学和腿部接触切换,移动操作需要底盘运动和臂末端精度的协调,人形则是足式的超集加上上肢操作。
- **仿真**是跨方向的工具层——无论做机械臂还是足式,最终都需要 GPU 并行训练和 sim-to-real 部署。
跨方向能力层(不属于任何子方向,服务所有子方向):
跨方向能力层:
+-- MJLab RL 运控工程手册 (2409 行) -- 平台选型/环境搭建/四足训练/人形训练/部署全流程
| 覆盖: IsaacLab vs MuJoCo MJX vs Warp 决策树, Go2/H1/G1 训练实战, sim-to-real
|
+-- 动作模仿理论 (455 行) -- DeepMimic->AMP->ASE->PHC->SONIC 演进
覆盖: 参考追踪奖励, 对抗学习自动奖励, 技能嵌入, MoCap-to-Robot 部署
总览路线图(Progressive Architecture)¶
v8 SLAM 主线完成(Ch1-46, 第 1-48 周)
| C++17 . Eigen . 并发 . SLAM 优化 . ROS2 . CMake/CUDA
v
+===================================================================+
| 00_公共基础(规划中,共享知识地基) |
| URDF/Xacro/MJCF 统一建模 | Pinocchio 核心 API |
| QP/NLP 求解器选型 | CppAD/CasADi 自动微分 |
| ros2_control 硬件抽象 | 实时 C++ 工程 |
| sim-to-real 资产管道 | 碰撞检测/SDF |
+===================================================================+
|
+-----+-------+-------+-------+
| | |
v v v
+==========+ +==========+ +============+
|10_足式 | |20_机械臂 | |30_复合 |
|浮动基座 | |固定基座 | |组合系统 |
|接触切换 | |全驱动 | |轮足/移动 |
|步态MPC | |力控/双臂 | |操作/人形 |
|RL部署 | |VLA策略 | |全身控制 |
|26文件 | |47文件 | |48文件 |
|~37 周 | |~76 周 | |~45 周 |
+==========+ +==========+ +============+
| | |
+------+------+-------+------+
| |
v v
+=============+ +==============+
| 40_仿真 | | 跨方向能力层 |
| MuJoCo+MJX | | RL运控手册 |
| 可微分仿真 | | 动作模仿理论 |
| GPU生态 | | ~2864 行 |
| 10文件 | | |
| ~12 周 | | |
+=============+ +==============+
快速路径(Quick-Start Tracks)¶
不是每个人都需要 182 周的完整课程。以下三条最小路径分别面向最常见的职业目标:
路径 A:机械臂快速路径(~13.5 周)¶
目标:端到端 MoveIt2 pick-and-place 系统
P01(URDF, 1周) -> M01(Pinocchio, 1.5周) -> M03(IK, 1.5周) -> M04(碰撞检测, 1.5周)
-> M07(OMPL规划, 1.5周) -> M10(时间参数化, 1周) -> M12(ros2_control, 1.5周)
-> M14(MoveIt2/MTC, 2周) -> M15(综合实战, 2周)
总计 ~13.5 周
完成后能力:独立搭建 MoveIt2 pick-and-place 系统,仿真和真机均可运行。后续按需补力控(F 系列)、双臂(D 系列)。
路径 B:足式快速路径(~15 周)¶
目标:四足 MPC+WBC 控制器 + RL locomotion policy
30_Pinocchio深度精读(1.5周) -> 50_空间向量与浮动基座动力学(1.5周)
-> 70_腿足简化模型理论(1.5周) -> 90_WBC分层优化与TSID(2周)
-> 110_OCS2完整栈与双线程MPC(2周) -> 190_腿足RL训练栈(2周)
-> 210_RL与MPC混合范式(1.5周) -> 240_legged_control精读(1.5周)
-> 250_Mini-Legged综合实战(1.5周)
总计 ~15 周
完成后能力:在 MuJoCo/IsaacLab 中部署四足 OCS2 MPC+WBC 控制器,训练并导出 RL locomotion policy。
路径 C:复合快速路径(~9 周)¶
目标:轮足 MPC + 移动操作基础
前置:需先完成机械臂快速路径或足式快速路径之一。
10_复合机器人全景(0.5周) -> 30_多模态MPC(1.5周) -> 40_RL全身控制基础(1.5周)
-> 60_轮式运动学与Pfaffian(1周) -> 70_轮足混合MPC(1.5周)
-> 120_底盘臂联合规划(1.5周) -> 140_VLA移动操作(1.5周)
总计 ~9 周
完成后能力:理解轮足混合 MPC 控制架构,搭建底盘+臂联合规划原型。
计算与硬件需求表¶
总体配置建议¶
| 配置等级 | 硬件 | 覆盖范围 |
|---|---|---|
| 最低可行 | 8GB RAM, 4 核 CPU, 无 GPU | 机械臂基础 / 足式理论 / 仿真 S01-S02 |
| 推荐仿真 | 16GB RAM, RTX 3060 12GB | 所有仿真训练 (IsaacLab/MJX 数千环境) |
| 全栈研发 | 32GB RAM, RTX 4090 24GB, Ubuntu 22.04 PREEMPT_RT | 含 RL 大规模训练 + 真机部署 |
| 工业级 | 上述 + Unitree Go2 + Franka Panda + Jetson Orin | 全部真机实验 |
| 前沿研究 | A100 80GB / 多卡集群 | VLA 微调 / 人形基础模型 / Foundation Model |
分方向详表¶
| 子方向 | 章节范围 | GPU 需求 | 真机需求 | 备注 |
|---|---|---|---|---|
| 机械臂-基础 | P01-M03, M07-M08, M10 | 不需要 | 不需要(纯仿真) | MuJoCo/Gazebo |
| 机械臂-碰撞规划 | M04-M06 | cuRobo 需 RTX 3060+ | 不需要 | GPU 加速规划 |
| 机械臂-实时硬件 | M11-M12 | 不需要 | 推荐真机 | Franka/UR5e, PREEMPT_RT |
| 机械臂-力控 | F01-F05 | 不需要 | 推荐力传感器 | MuJoCo 可替代 |
| 机械臂-学习力控 | F09-F10 | 需要(训练) | 推荐 | Isaac Lab, RTX 3060+ |
| 机械臂-双臂 VLA | D04, D12 | A100/RTX 4090 | 不需要 | 大模型微调 |
| 足式-基础理论 | 30-52 | 不需要 | 不需要 | Pinocchio+Eigen |
| 足式-MPC/WBC | 90-55 | 不需要 | 推荐四足 | OCS2 实时 MPC, 32GB RAM |
| 足式-RL 训练 | 190-65 | 需要(GPU 并行) | 不需要 | IsaacLab/MJX, RTX 3060+ |
| 足式-感知 MPC | 220-67 | 推荐 | 推荐 | 高程图生成, RTX 3060+ |
| 足式-综合实战 | 240-69 | 推荐 | 强烈推荐 | 全栈部署, RTX 4090+Go2 |
| 复合-理论基础 | 10-75 | 不需要 | 不需要 | OCS2/Pinocchio, 16GB RAM |
| 复合-轮足 | 60-81 | 需要(RL) | 推荐轮足平台 | MPC+RL 训练, RTX 3060+ |
| 复合-移动操作 | 120-85 | 推荐 | 推荐 | Mobile ALOHA, RTX 3060+ |
| 复合-四足臂/人形 | 160-95 | 需要 | 推荐 | WBC+RL 全身控制, RTX 4090 |
| 复合-前沿 | 260-100 | 需要(大模型) | 视项目而定 | VLA/Foundation Model, A100 |
| 仿真-MuJoCo 核心 | S01-S02 | 不需要 | 不需要 | pip install mujoco |
| 仿真-GPU 生态 | S03, S3B | 需要 | 不需要 | MJX/Warp/Playground, RTX 3060+ |
| 仿真-可微分 | S04-S05 | 推荐 | 不需要 | JAX+可微分 MPC, RTX 3060+ |
| 跨方向-RL 运控 | MJLab 文档 | 需要 | 推荐 | Go2/H1 训练, RTX 4090 |
| 跨方向-动作模仿 | 动作模仿理论 | 需要(GPU 训练) | 不需要 | PHC/AMP 训练, RTX 4090+ |
工业 vs 研究标记¶
| 标记 | 含义 | 适用人群 |
|---|---|---|
| 🏭 | 工业落地核心 | 所有学习者必修 |
| 🔬 | 研究前沿 | 博士预备者重点 |
| 🏭🔬 | 工业+研究兼有 | 工业者按需、研究者必修 |
| 子方向 | 🏭 工业落地核心 | 🔬 研究前沿 | 🏭🔬 工业+研究兼有 |
|---|---|---|---|
| 机械臂 | M12(ros2_control), M14(MoveIt2), F04(libfranka 阻抗), F05(导纳控制) | F12(可微仿真力控), D06(波变量), D12(VLA), M16(灵巧手) | M09(GPU 规划), F09(学习型力控), D08(遥操作数据采集) |
| 足式 | 110_OCS2(MPC), 170_实时 C++, 180_硬件栈, 200_RL C++ 部署 | 150_优化驱动落脚, 160_感知驱动落脚, 260_博士导引 | 190_RL 训练栈, 210_RL+MPC 混合, 240_legged_control |
| 复合 | 130_OCS2 mobile_manipulator | 230_人形全身 RL, 260_VLA Foundation Model, 300_博士规划 | 40_RL 全身控制, 70_轮足混合 MPC, 140_VLA 移动操作 |
| 仿真 | S01(MuJoCo 核心), S02(交互式控制) | S04(可微分仿真理论), S05(可微分 MPC) | S03(GPU 生态), S3B(mjlab 深度实战) |
| 跨方向 | MJLab 文档 Part1-3(选型/安装/四足训练) | 动作模仿理论(AMP/ASE/PHC) | MJLab 文档 Part6-7(部署/进阶工程) |
标记使用说明: - 纯工业导向的学习者可跳过所有"研究前沿"标记章节,节约约 30% 时间 - 博士预备者应优先完成"工业+研究兼有"章节,再深入"研究前沿"章节 - "工业落地核心"章节是所有学习者的必修项
前置知识依赖矩阵¶
| 子方向 | 依赖 v8 章节 | 关键知识点 | 最小前置集 |
|---|---|---|---|
| 机械臂 | Ch3(RAII), Ch6(继承多态), Ch11(Eigen), Ch14(CRTP), Ch17(锁), Ch19-20(并发), Ch29(设计模式), Ch31(ROS2), Ch35(pmr 内存) | Sophus CRTP, 模板元编程, Eigen Map/Block, std::thread/atomic, Composite/Strategy 模式, pluginlib | 未完成 v8 者至少补 Ch3/6/11/14/17/19-20/29/31/35 共 10 章 |
| 足式 | 机械臂前置 + Ch22(SIMD), Ch23(李群 manif), Ch24(Ceres 自动微分) | Eigen 表达式模板/对齐, CRTP 访问者模式, SE(3) 李群运算, 自动微分 Jet 类型 | 机械臂前置 + Ch22/23/24 共 3 章 |
| 复合 | 足式全部前置 + Ch27(OOP 高级), Ch42-43(CUDA 流) | 浮动基座动力学, OCS2/Crocoddyl, WBC/TSID, RL sim-to-real | 足式前置 + Ch27/42-43 共 3 章 |
| 仿真 | Ch11(Eigen), Ch22(SIMD), Ch24(自动微分), Ch45-46(CUDA/Docker) | JAX/Warp 编程, GPU 并行仿真, 可微分物理引擎 | 任一子方向完成后均可进入 |
| 跨方向 RL | PPO/SAC 理论基础(自学), Ch45-46(CUDA) | RL 训练循环, reward 设计, domain randomization | 基础 RL + GPU 编程 |
v8 前置三层口径: - 最低可启动: Ch11, Ch14, Ch17, Ch19-20, Ch29, Ch31。可支撑 Quick Start 演示。 - 推荐补齐: Ch3, Ch6, Ch11, Ch14, Ch17, Ch19-20, Ch29, Ch31, Ch35。适合完整学习核心课程。 - 完整前置: 完成 v8 Ch1-Ch46;未完成者按附录章节索引补齐。
交叉依赖图:
v8 SLAM 主线 (Ch1-46, 48 周)
|
+--> 机械臂 (P01-P02 + M01-M15 + F01-F10 + D01-D10, 核心 76 周; 前沿规划另 12-16 周)
| |
| +--> 足式 (30-70, 37 周) <-- 可独立从 v8 进入
| | |
| | +---> 复合 (70-100, 45 周) <-- 需足式 or 机械臂前置
| |
| +---> 仿真 (S01-S05, 12 周) <-- 任一方向完成后进入
|
+---> 跨方向 RL 运控 + 动作模仿 <-- 独立模块,可随时学习
生态速览(2026-05 更新)¶
| 子方向 | 核心生态 | 最新动态(2026-05) |
|---|---|---|
| 机械臂 | Pinocchio 3.9 / Drake v1.52 / MoveIt2 Kilted / ros2_control | Pinocchio 3.4-3.9: 闭环链 MJCF 解析, mimic joint 全 Lie 群算法, Delassus 算子约束动力学, NumPy 2 兼容; Drake v1.43-v1.52: 月度发布, LBM Eval 49-task 基准; MoveIt2 Kilted: Python API 占 80% 新部署, Jacobian 硬件加速, JTAC 导纳控制器 |
| 足式 | OCS2(维护模式) / Crocoddyl 3.2 / Aligator / MuJoCo Playground | OCS2 v1.0 进入维护模式, 新项目推荐迁移 Aligator; Crocoddyl 3.2 重大 API 重构; MuJoCo Playground v0.2.0 获 RSS 2025 Outstanding Demo; Aligator/ProxDDP 发表 T-RO Mar 2025 |
| 复合 | OCS2 mobile_manipulator / VLA(pi0.5) / Mobile ALOHA / UMI on Legs | OCS2 mobile_manipulator 移动操作 MPC 参考实现; VLA pi0.5 跨机器人泛化; Mobile ALOHA Stanford 双臂移动操作开源; UMI on Legs CMU 四足+臂操作 |
| 仿真 | MuJoCo 3.7+MJX / Genesis 0.4.5 / Isaac Lab 3.0+Newton / Holosoma | MuJoCo 3.7.0(2026-04-14): MJX GPU 后端成熟, Warp 百万级并行; Genesis $105M 融资(Jul 2025): 43M FPS 多物理; Isaac Lab 3.0 Newton: MuJoCo Warp 可选后端; Holosoma(Amazon FAR): 多仿真器统一 |
三大机械臂学派生态¶
| 学派 | 核心栈 | 代表特征 |
|---|---|---|
| INRIA 学派 | Pinocchio 3.9 + Coal + ProxQP + Aligator | CRTP 编译期多态, Lie 群全算法, ~1.2us RNEA |
| TRI 学派 | Drake v1.52 | 标量参数化 MultibodyPlant<T>, Bazel 构建, 月度发布 |
| SwRI 工程派 | MoveIt2 Kilted + ros2_control | Python API 80%+ 新部署, pluginlib 三层工厂, JTAC 导纳 |
前沿更新(2025-2026 关键事件)¶
| 时间 | 事件 | 影响 |
|---|---|---|
| 2025-03 | Aligator/ProxDDP 发表于 T-RO | 替代 Crocoddyl 成为新项目默认轨迹优化器 |
| 2025-05 | MuJoCo Playground v0.2.0 获 RSS 2025 Outstanding Demo | MuJoCo GPU RL 训练栈生产级就绪 |
| 2025-07 | Genesis $105M 融资 | 43M FPS 多物理引擎, 统一刚体/流体/柔体 |
| 2025-H2 | OCS2 进入维护模式(v1.0) | ETH RSL 不再积极开发; 仍教 OCS2(存量代码巨大)但注明迁移路径 |
| 2025-H2 | Swiss-Mile Nature 2025 | 轮足商业化里程碑, ETH RSL spin-off |
| 2025 | FALCON / SoFTA | 力敏感人形双代理架构 |
| 2025 | RAMBO | 可微 QP + RL 残差混合四足操作 |
| 2025 | UMI on Legs | Diffusion Policy 在四足平台的操作复用 |
| 2025 | pi0.5 | 开放世界 VLA 泛化 |
| 2025 | SpatialVLA (RSS 2025) | 3D 自我中心 VLA, 空间理解质的飞跃 |
| 2026-01 | Isaac Lab 3.0 + Newton 物理引擎 | Newton 后端实质运行 MuJoCo Warp; 打破 IsaacLab=PhysX 的绑定 |
| 2026-03 | NVIDIA GR00T-WBC | G1 全身控制 checkpoint + VR 遥操作开源 |
| 2026-03 | Crocoddyl 3.2 重大 API 重构 | 不向后兼容; 足式 DDP 章节以 3.2 API 为准 |
| 2026-04 | MuJoCo 3.7.0 | Warp 后端成熟, MJX 性能逼近 Isaac Lab |
第一部分:00_公共基础 (规划中)¶
目录:
00_公共基础/状态: v0.1 草案, 定义重构原则与迁移计划 定位: 为机械臂、足式、复合、仿真四个子方向建立统一的公共知识地基
建设动机¶
四个子方向的机器人本体不同,但底层工具和数学结构高度重叠。公共基础层将跨方向共享的知识统一收口,解决三个问题:
- 维护成本高 -- 同一个公式或 API 在多处修复,容易出现一处正确、一处过期
- 学习路径重复 -- 读者切换方向时反复学习同一套基础,符号约定和版本信息可能不同
- 知识边界模糊 -- 公共理论、方向特化和工程案例混在一起
章节规划表¶
| 编号 | 章节 | 来源 | 覆盖方向 | 状态 |
|---|---|---|---|---|
| C01 | URDF/Xacro/MJCF 统一建模 | 机械臂 P01 + 仿真 S01 MJCF | 全方向 | 待抽取 |
| C02 | Pinocchio 核心 API (Model/Data/FK/RNEA/ABA) | 机械臂 M01 + 足式 30 | 全方向 | 待抽取 |
| C03 | 空间向量代数与动力学方程 | 足式 50 | 全方向(固定基座为子集) | 待抽取 |
| C04 | QP/NLP 求解器选型 (OSQP/ProxQP/HPIPM/Ipopt) | 机械臂 M05 + 足式 60 | 全方向 | 待抽取 |
| C05 | CppAD/CasADi 自动微分与代码生成 | 足式 40 | 全方向 | 待抽取 |
| C06 | ros2_control 硬件抽象与控制器框架 | 机械臂 M12 + 足式 180 | 机械臂/足式/复合 | 待抽取 |
| C07 | 实时 C++ 工程 (PREEMPT_RT/无堆分配/EtherCAT) | 机械臂 M11 + 足式 170 | 机械臂/足式/复合 | 待抽取 |
| C08 | sim-to-real 资产管道与 Domain Randomization | 机械臂 P02 + 复合 270 | 全方向 | 待抽取 |
| C09 | 碰撞检测/SDF/凸分解 | 机械臂 M04 + 仿真 S01 | 机械臂/仿真 | 待抽取 |
| C10 | 符号约定与全局记号表 | 散布于各方向 | 全方向 | 待创建 |
各模块详细说明¶
C01 URDF/Xacro/MJCF 统一建模 -- 目前机械臂 P01 讲 URDF/Xacro, 仿真 S01 讲 MJCF, 两边各有覆盖但未统一。公共基础版将: (1) 统一 link/joint/transmission 三子树语义; (2) 对照 URDF/SDF/MJCF 三格式的语义差异; (3) 统一惯性参数计算方法(CAD/meshlab/SysId); (4) 建立 Mesh 管理标准(STL/DAE/OBJ 的使用场景); (5) 提供 URDF->SDF->MJCF 多格式转换速查表。
C02 Pinocchio 核心 API -- 机械臂 M01 以固定基座 7-DOF 为主, 足式 30 以浮动基座 18+ DOF 为主。公共基础版将: (1) 统一 Model/Data 分离架构说明(天然线程安全+零 malloc); (2) 统一 CRTP 关节类型系统(JointModelBase 十几种关节); (3) 统一标量参数化说明(double/CppAD/CodeGen/多精度); (4) 按 FK/RNEA/ABA/CRBA 各列出固定基座和浮动基座的调用差异; (5) Coal 碰撞检测接口统一说明。
C03 空间向量代数 -- 目前只在足式 50 详细讲解。公共基础版将: (1) 明确 6D 空间向量在固定基座(机械臂)中的简化形式; (2) 统一 twist/wrench 符号约定; (3) Plucker 坐标与 Ad_T 的全局记号; (4) Featherstone 记号到 Pinocchio API 的映射表。
C04 QP/NLP 求解器选型 -- 目前机械臂 M05 和足式 60 各有讲解, 选型标准不完全一致。公共基础版将: (1) 统一 QP 标准形式和 KKT 条件说明; (2) 建立求解器选型矩阵(OSQP/ProxQP/qpOASES/HPIPM/PIQP/Ipopt/SNOPT); (3) 提供各场景推荐(WBC->ProxQP, MPC->HPIPM, NLP->Ipopt); (4) 性能基准(问题规模 vs 求解时间)。
C05 CppAD/CasADi 自动微分 -- 目前只在足式 40 详细讲解。公共基础版将: (1) tape-based AD vs 前向 Jet 的选型指南; (2) CppADCodeGen 符号代码生成完整流水线; (3) CasADi SX/MX 的对照说明; (4) 性能跃迁量化(数值差分->CppAD 解释->CodeGen 预编译)。
C06 ros2_control -- 机械臂 M12 和足式 180 各有侧重。公共基础版将: (1) 统一 SystemInterface 编写模板; (2) 统一 controller_manager RT 主循环(read->update->write); (3) 常用控制器对照(JointTrajectory/Forward/PID); (4) 与 Franka/UR/Unitree 硬件的对接模板。
C07 实时 C++ 工程 -- 机械臂 M11 和足式 170 内容高度重叠。公共基础版将: (1) PREEMPT_RT 安装与配置一次写清; (2) 实时安全 C++ 五条铁律统一; (3) cyclictest/ftrace 诊断流程标准化; (4) EIGEN_RUNTIME_NO_MALLOC 使用指南。
C08 sim-to-real 资产管道 -- 机械臂 P02 讲基础管线, 复合 270 讲统一方法论。公共基础版将: (1) CAD->mesh 简化->URDF/MJCF 全流程; (2) Domain Randomization 参数设计通用指南; (3) sim2sim 验证标准流程; (4) Docker 多阶段构建模板。
C09 碰撞检测/SDF/凸分解 -- 机械臂 M04 和仿真 S01 各有覆盖。公共基础版将: (1) FCL/Coal/hpp-fcl 层级包围盒统一说明; (2) SDF 距离场在 MPC 约束和碰撞检测中的共用; (3) 凸分解(V-HACD/CoACD)通用流程。
C10 符号约定与全局记号表 -- 目前各方向符号约定不完全一致。公共基础版将: (1) 统一 q/v/tau/lambda 等符号; (2) 统一坐标系约定(世界系/基座系/末端系); (3) 统一力矩/力的正方向; (4) 统一下标/上标约定。
建设原则: 公共基础层不是把各方向文档"抽空",而是建立一个稳定的知识地基。方向文档仍然负责讲清本方向的物理问题、工程取舍和实战案例。
迁移顺序: C01->C02->C03->C10(符号先统一)->C04->C05->C06->C07->C08->C09, 预计 3-6 个月完成。
第二部分:10_足式方向(26 文件, 24 章, ~37 周)¶
目录:
10_足式/详细大纲:10_足式/足式方向_综合教学大纲.md(v1.0, 1432 行) 完成后能力: 部署四足 MPC+WBC 控制器, 训练 RL locomotion policy, 理解感知驱动落脚规划 入口前置: 机械臂前置 + v8 Ch22(SIMD)/Ch23(李群)/Ch24(自动微分) 核心栈: Pinocchio 3.9 / Crocoddyl 3.2 / Aligator / OCS2 / IsaacLab / ros2_control
总览: 8 阶段 x 里程碑¶
| 阶段 | 章节 | 周数 | 里程碑 |
|---|---|---|---|
| 0-Intro | 10_序章上篇-20_序章下篇 | -- | 建立四分法全景, 明确 37 周路线图 |
| I-Foundations | 30-50 | 6 | MS-1: Pinocchio+CppAD 可微动力学流水线跑通 |
| II-Theory | 70-52 | 4 | MS-2: LIPM MPC 仿真行走, 摩擦锥约束编码 |
| III-Core | 90-58 | 10 | MS-3: OCS2 四足 trot 仿真实时运行 |
| IV-Advanced | 150-60, 63, 65 | 6 | MS-4: RL 策略训练+Contact-Implicit TO 原型 |
| V-Engineering | 170-62, 64, 66 | 6 | MS-5: 1kHz 实时控制循环 + RL C++ 部署 |
| VI-Integration | 230-68 | 4 | MS-6: Perceptive MPC + legged_control 全栈跑通 |
| VII-Capstone | 250-70 | 4 | MS-7: Mini-Legged 端到端系统 + 研究定位 |
章节速览表¶
| 阶段 | 编号 | 标题 | 周数 | 重要度 | 共享 |
|---|---|---|---|---|---|
| 0 | 10 | 序章上篇: 全景与四分法 | -- | 导读 | -- |
| 0 | 20 | 序章下篇: 前沿与学习路径 | -- | 导读 | -- |
| I | 30 | Pinocchio 深度精读 | 1.5 | *** | 全方向(同 M01) |
| I | 40 | CppAD 与 CppADCodeGen | 1.5 | *** | 全方向 |
| I | 50 | 空间向量与浮动基座动力学 | 2 | *** | 全方向(固定基座为子集) |
| I | 60 | QP/NLP 建模 | 1 | *** | 全方向 |
| II | 70 | 腿足简化模型理论 | 2 | *** | -- |
| II | 80 | 接触力学与约束优化 | 2 | *** | -- |
| III | 90 | WBC 分层优化与 TSID | 2 | *** | 机械臂 F07 |
| III | 100 | DDP 家族与 Crocoddyl | 1.5 | *** | 机械臂 M03 |
| III | 110 | OCS2 完整栈与双线程 MPC | 2 | *** | -- |
| III | 120 | 步态管理与接触序列 | 1.5 | ** | -- |
| III | 130 | 腿足状态估计 | 1.5 | ** | SLAM 衔接 |
| III | 140 | 落脚点规划经典方法 | 1 | ** | -- |
| IV | 150 | 优化驱动落脚与接触规划 | 1.5 | ** 🔬 | -- |
| IV | 160 | 感知驱动落脚规划 | 1.5 | ** 🔬 | SLAM 衔接 |
| IV | 190 | 腿足 RL 训练栈 | 1.5 | *** 🏭🔬 | -- |
| IV | 210 | RL 与 MPC 混合范式 | 1.5 | ** 🏭🔬 | -- |
| V | 170 | 实时 C++ 工程 | 1.5 | *** 🏭 | 全方向 |
| V | 180 | 腿足硬件栈 | 1.5 | ** 🏭 | -- |
| V | 200 | RL 的 C++ 部署 | 1.5 | *** 🏭 | -- |
| V | 220 | 腿足感知数据结构 | 1.5 | ** | -- |
| VI | 230 | Perceptive MPC | 2 | *** | SLAM 衔接 |
| VI | 240 | legged_control 精读 | 2 | *** 🏭🔬 | -- |
| VII | 250 | Mini-Legged 综合实战 | 2 | *** | -- |
| VII | 260 | 研究方向与博士导引 | 2 | ** 🔬 | -- |
足式方向各章核心知识点速览¶
阶段 0 -- 序章导论(2 篇, 非计入正式学时)
- 10_序章上篇: 全景与四分法 (449 行) -- 规控四级火箭(全局规划/局部 MPC/轨迹跟踪 WBC/低层伺服); 本体四分法([A]无人机/[B]机械臂/[C]足式/[D]复合); 7 层基础设施栈(Eigen/Pinocchio/求解器/AD/ROS2/实时 Linux/仿真); 方向间复用矩阵
- 20_序章下篇: 前沿与学习路径 (561 行) -- 自驾为何不入四分法(感知-决策主导 vs 规控主导); 横向方法论前沿(可微仿真/Foundation Models/World Models); 6 阶段学习路径; 12-15 个月时间线; 工具链安装清单
阶段 I -- 基础工具链(4 章, ~6 周)
里程碑 MS-1: 完成 "URDF -> Pinocchio -> CppAD tape -> CppADCodeGen .so -> QP 求解" 全流水线, 12-DOF Go2 RNEA+导数 < 2 us
- 30_Pinocchio 深度精读 -- Model/Data 分离架构(天然线程安全+零 malloc); CRTP 关节类型系统; 标量参数化(double/CppAD/CodeGen/多精度); FK/RNEA/ABA/CRBA 算法实现; 解析导数(比 AD 快 3-5x); Coal 碰撞检测; 约束动力学 ProximalSolver; 性能基线 Go2 RNEA ~1.5 us
- 40_CppAD 与 CppADCodeGen -- tape-based AD vs 前向 Jet; CppADCodeGen 符号代码生成(tape->C 源码->.so); Pinocchio 模板->CppAD 记录->CodeGen 编译->dlopen 流水线; OCS2 CppAdInterface; 选型三角; 性能跃迁(数值差分 20us->CodeGen 1.5us, 加速 13x)
- 50_空间向量与浮动基座动力学 -- 6D 空间向量动机; twist/wrench 对偶性; Plucker 坐标与 Ad_T; 6x6 空间惯量矩阵; Featherstone RNEA/ABA/CRBA O(N) 推导; 浮动基座全身动力学方程; Centroidal Momentum 与 CCRBA; Pinocchio 代码-数学对应
- 60_QP/NLP 建模 -- SLAM 无约束到规控有约束的范式跨越; QP 标准形式与求解器选型(OSQP/ProxQP/qpOASES/HPIPM/PIQP); Ifopt+Ipopt; CasADi 符号框架; HPIPM 结构化稀疏 QP; 选型指南
阶段 II -- 足式理论核心(2 章, ~4 周)
里程碑 MS-2: LIPM + QP 实现四足站立平衡 MPC; 手写摩擦锥线性化并编码为 QP 约束
- 70_腿足简化模型理论 -- 维度灾难(Go2 状态 48 维 vs LIPM 6 维); LIPM/CoM/CoP/ZMP/DCM/Capture Point; SLIP 弹簧倒立摆; SRBD 单刚体模型; Centroidal Model; C++ 实现嵌入 OCS2 代价函数
- 80_接触力学与约束优化 -- 接触力三大铁律(Signorini/Coulomb/互补性); 摩擦锥线性化(锥->多面体); LCP/NCP/Contact-Implicit TO 数学基础; Centroidal Dynamics 深入(CCRBA/角动量守恒/flywheel); 接触 Jacobian API
阶段 III -- 核心控制算法(6 章, ~10 周)
里程碑 MS-3: OCS2 legged_robot 四足 trot 双线程 MPC 10ms 周期内收敛
- 90_WBC 分层优化与 TSID -- 控制层级四级火箭; HQP 分层 QP; TSID 框架精读(Task/Constraint/Solver Strategy); 轻量 WBC 对比; EIGEN_RUNTIME_NO_MALLOC; 从零实现四足平衡 WBC
- 100_DDP 家族与 Crocoddyl -- DDP/iLQR/FDDP 对比; Crocoddyl 3.2 精读(ActionModel/ActionData, API 大改版); Aligator ProxDDP+ParallelRiccati; 机械臂/腿足轨迹优化实操
- 110_OCS2 完整栈与双线程 MPC -- OCS2 五层架构; SQP+HPIPM; 双线程设计(Solver 异步+Control 实时, lock-free); CentroidalModel; Go2 配置; RTL 设计模式; 迁移注意(维护模式->Aligator)
- 120_步态管理与接触序列 -- OCS2 SwitchedModelReferenceManager; 步态切换数学(jump map); 自定义步态; MIQP; Contact-Implicit TO; 三种步态哲学对比(OCS2/MIT Cheetah/legged_gym)
- 130_腿足状态估计 -- 腿足 vs SLAM 差异; legged_control LinearKF 精读; InEKF(Barrau/Bonnabel); 接触切换检测; Factor Graph(BLF/SwingCR); SLAM+腿足融合; Go2 部署
- 140_落脚点规划经典方法 -- Raibert Heuristic 及现代变体; ZMP Preview Control; Linear MPC 联合优化; 步行生物力学; 四足 trot 实时落脚仿真
阶段 IV -- 进阶方法(4 章, ~6 周)
里程碑 MS-4: IsaacLab Go2 trot 策略收敛; CITO 原型 Drake 跑通; 理解 Teacher-Student/残差 RL
- 150_优化驱动落脚与接触规划 -- "让接触成为决策变量"; MIQP; Contact-Implicit TO(Posa 2014/Mordatch 2012); GCS(Marcucci 2024); TOWR phase durations; 工程选型
- 160_感知驱动落脚规划 -- 感知落脚=SLAM 与规控的交叉点; 高程图 Elevation Map; Traversability; ANYmal Parkour(Zhuang CoRL 2023/Hoeller Sci. Robotics 2024); DTC; Go2 仿真
- 190_腿足 RL 训练栈 -- 腿足 RL vs 通用 RL; IsaacLab GPU 并行(4096+ 环境); legged_gym/rsl_rl 精读; PPO 实现细节; 奖励工程(20+ 奖励项); Domain Randomization; Teacher-Student; Go2 trot 训练
- 210_RL 与 MPC 混合范式 -- 纯 MPC vs 纯 RL 短板; MPC-Net(蒸馏); Cafe-MPC/VWBC; RAMBO; 残差 RL; Teacher-Student 蒸馏; 混合光谱; GR00T-WBC
阶段 V -- 工程部署(4 章, ~6 周)
里程碑 MS-5: PREEMPT_RT 1kHz 稳定; RL 策略 ONNX 推理 < 1ms; 高程图管线端到端
- 170_实时 C++ 工程 -- 硬实时 vs 软实时跨越; PREEMPT_RT 内核配置; SCHED_FIFO+mlockall; 控制循环四大禁忌; cyclictest/ftrace 诊断; ros2_control 框架; 零堆分配 1kHz
- 180_腿足硬件栈 -- 四足硬件组件; CAN/EtherCAT/USB 通信; Unitree SDK Go2/A1/B1; LCM; IMU 标定; 硬件排障; ros2_control HardwareInterface
- 200_RL 的 C++ 部署 -- Python 训好->C++ 部署完整流水线; TorchScript vs ONNX 导出; LibTorch/ONNX Runtime/TensorRT; 实时推理要求(延迟<1ms/预分配/线程亲和); Go2 RL 策略部署; rl_sar
- 220_腿足感知数据结构 -- grid_map 库; elevation_mapping_cupy(GPU 高程图); Kalman 融合; Traversability 多层次; PCL/Open3D 投影; C++/Python 混合架构; 体素与 3D 感知; Go2 感知管线
阶段 VI -- 系统集成(2 章, ~4 周)
里程碑 MS-6: Perceptive MPC ocs2_perceptive 跑通; legged_control 全模块理解并可修改
- 230_Perceptive MPC -- Grandia 2022 T-RO 精读; elevation map->MPC 代价嵌入; 双线性插值+CppAD 自动求导(栅格可微化); SDF 距离函数; OCS2 ocs2_perceptive 自定义感知约束; SLAM->规控接口; 感知-规控前沿(DTC/Parkour/VLA)
- 240_legged_control 精读 -- legged_control 定位(UC Berkeley 开源参考); 全模块精读(OCS2 MPC+轻量 WBC+LinearKF+ros2_control); Gazebo/MuJoCo 仿真部署; 新机器人适配; 关键模块修改; "简化"与"省略"识别; 毕业设计/研究模板
阶段 VII -- 实战与研究(2 章, ~4 周)
里程碑 MS-7: Mini-Legged 在 Gazebo/MuJoCo 中稳定 trot; 研究方向调研完成
- 250_Mini-Legged 综合实战 -- MVP 规划(Go2 站立+trot+抗扰, Jetson 实时); 不抄 legged_control 自己写; 综合 Pinocchio+Eigen+CppAD+OSQP+ros2_control+CMake+测试; 系统级工程决策; 性能对标; 作为研究工具
- 260_研究方向与博士导引 -- 优化前沿(Aligator/CITO/GCS); 感知-控制(Perceptive MPC/DTC/Parkour); 学习-控制(MPC-Net/Cafe-MPC/Residual RL/Diffusion/World Models/可微仿真); 运动能力(Humanoid/WB Manipulation/Agile); Foundation Models(RT-2/Octo/OpenVLA); 30+ 开放问题
完整章节详情 -> 见
10_足式/足式方向_综合教学大纲.md
关键路径与并行支线¶
关键路径(不可跳过): 30 -> 50 -> 60 -> 80 -> 90 -> 110 -> 240 -> 250
可并行支线: - 40 与 50 可并行(互不依赖, 仅共同依赖 30) - 170-62 与 190-64 可交叉(工程栈 vs RL 栈相对独立) - 150-60 可在 190 之前或之后(优化路线 vs 学习路线)
足式方向学时统计¶
| 阶段 | 章数 | 周数 | 占比 |
|---|---|---|---|
| I-Foundations | 4 | 6 | 16% |
| II-Theory | 2 | 4 | 11% |
| III-Core | 6 | 10 | 27% |
| IV-Advanced | 4 | 6 | 16% |
| V-Engineering | 4 | 6 | 16% |
| VI-Integration | 2 | 4 | 11% |
| VII-Capstone | 2 | 4 | 11% |
| 合计 | 24 | ~37 | 100% |
第三部分:20_机械臂方向(47 文件, 核心 37 章, ~76 周; 前沿规划 5 章, ~12-16 周)¶
目录:
20_机械臂/详细大纲:20_机械臂/机械臂方向_综合教学大纲.md(v1.2, 1555 行 -- GOLD STANDARD) 完成后能力: 独立搭建 MoveIt2 pick-and-place 全栈,部署 1kHz 阻抗控制,训练 VLA 策略 入口前置: v8 Ch3/6/11/14/17/19-20/29/31/35 共 10 章 核心栈: Pinocchio 3.9 / Drake v1.52 / MoveIt2 Kilted / ros2_control
篇章结构¶
+---------------------------------------------------------------------+
| 第一篇: 机械臂核心 (M 系列, P01-M15, 17 章 ~24 周) |
| Part 0 跨方向共享基础 (P01-P02, 2.5 周) |
| Part 1 动力学与运动学 (M01-M03, 4 周) |
| Part 2 碰撞与优化建模 (M04-M06, 4 周) |
| Part 3 运动规划 (M07-M10, 5.5 周) |
| Part 4 实时控制与硬件 (M11-M12, 3 周) |
| Part 5 任务编排与系统集成 (M13-M14, 3 周) |
| Part 6 综合实战 (M15, 2 周) |
+---------------------------------------------------------------------+
| 第二篇: 力控与柔顺控制 (F 系列, F01-F10, 10 章 ~28 周) |
| Part 1 力控基础 (F01-F05, 8 周) |
| Part 2 高级力控 (F06-F08, 10 周) |
| Part 3 学习型力控 (F09-F10, 10 周) |
+---------------------------------------------------------------------+
| 第三篇: 双臂协调与遥操作 (D 系列, D01-D10, 10 章 ~24 周) |
| Part 1 双臂协同理论与规划 (D01-D04, 8 周) |
| Part 2 遥操作理论与数据采集 (D05-D08, 8 周) |
| Part 3 系统集成与综合实战 (D09-D10, 8 周) |
+---------------------------------------------------------------------+
| 第四篇: 前沿专题规划 (5 章, 12-16 周, 可独立选修) |
| F11 触觉感知与力控融合 (2-3 周) |
| F12 接触隐式优化与可微仿真 (2-3 周) |
| D11 现代遥操作数据管线 (2 周) |
| D12 VLA 与操作策略 (3-4 周) |
| M16 灵巧操作与多指手 (3-4 周) |
+---------------------------------------------------------------------+
各篇速览¶
| 篇 | Part | 章节 | 内容主线 | 周数 |
|---|---|---|---|---|
| 一 | Part 0 跨方向基础 | P01, P02 | URDF/Xacro 建模, sim-to-real 资产管道 | 2.5 |
| 一 | Part 1 动力学与运动学 | M01, M02, M03 | Pinocchio 精读, 库对比, IK 求解器 | 4 |
| 一 | Part 2 碰撞与优化建模 | M04, M05, M06 | 碰撞检测/SDF, QP/NLP 建模, 自动微分与代码生成 | 4 |
| 一 | Part 3 运动规划 | M07, M08, M09, M10 | OMPL 采样规划, 轨迹优化, GPU 加速规划, 时间参数化 | 5.5 |
| 一 | Part 4 实时与硬件 | M11, M12 | PREEMPT_RT 1kHz, ros2_control + RL 部署 | 3 |
| 一 | Part 5 任务编排 | M13, M14 | BT.CPP v4, MoveIt2 + MTC 工业集成 | 3 |
| 一 | Part 6 综合实战 | M15 | Mini-Manip: Gazebo Harmonic 端到端 pick-and-place | 2 |
| 二 | Part 1 力控基础 | F01-F05 | 阻抗/导纳二分法, 操作空间动力学, libfranka 阻抗, 导纳控制 | 8 |
| 二 | Part 2 高级力控 | F06-F08 | 变阻抗/无源性/碰撞安全, WBC/TSID/mc_rtc, MPC+WBC 联合力控 | 10 |
| 二 | Part 3 学习型力控 | F09-F10 | RL+阻抗/Diffusion Policy/SERL, Mini-ForceControl 综合实战 | 10 |
| 三 | Part 1 协同理论 | D01-D04 | 协调运动学, 闭链约束规划, Grasp Matrix/内力控制, ACT/双臂 RL | 8 |
| 三 | Part 2 遥操作 | D05-D08 | 二端口网络/透明度, 波变量, TDPA, ALOHA/GELLO/UMI 数据采集 | 8 |
| 三 | Part 3 系统集成 | D09-D10 | 双臂 MoveIt2/ros2_control 集成, Mini-DualArm 综合实战 | 8 |
| 四 | 前沿专题 | F11/F12/D11/D12/M16 | 触觉/可微仿真/遥操作数据/VLA/灵巧手 | 12-16 |
机械臂各章核心知识点速览¶
Part 0 跨方向共享基础 (P01-P02, 2.5 周)
- P01 URDF/Xacro 机器人建模 (1 周) -- URDF XML schema(link/joint/transmission); joint 六种类型; transmission 与 ros2_control 绑定; Xacro 宏系统; 惯性参数计算(CAD/meshlab/SysId); Mesh 管理(STL vs DAE); robot_state_publisher 验证; URDF->SDF->MJCF 多格式转换; 常见坑(惯性张量不对称导致仿真爆炸)
- P02 sim-to-real 资产管道 (1.5 周) -- CAD->mesh 简化->URDF/MJCF 管线; MeshLab/Blender 减面; 凸分解(V-HACD/CoACD); 物理属性标定(Swevers 法); sim-to-real gap 三大来源; Domain Randomization; Docker 多阶段构建; CI/CD; 跨平台编译(x86->ARM); Genesis/MuJoCo MJX/Isaac Sim
Part 1 动力学与运动学 (M01-M03, 4 周)
- M01 Pinocchio 精读 (1.5 周) -- Pinocchio 三大学派定位; Model/Data 分离; CRTP 关节类型(JointModelBase 十几种); 标量参数化; FK/RNEA/ABA/CRBA 全算法; 解析导数; Coal 碰撞; 约束动力学; 与 Drake/KDL/RBDL 对比
- M02 动力学库对比 (1 周) -- Drake MultibodyPlant
; KDL/RBDL/Bullet/MuJoCo; 标量参数化 vs 虚函数; Bazel vs CMake; Python 绑定; 选型决策树 - M03 IK 求解器 (1.5 周) -- 解析 IK vs 数值 IK; Pinocchio IK(梯度/GN/LM); TRAC-IK(并行随机重启); 冗余分解(null-space); IK 约束(关节限位/碰撞/奇异); 实时 IK 性能
Part 2 碰撞与优化建模 (M04-M06, 4 周)
- M04 碰撞检测/SDF (1.5 周) -- FCL 层级包围盒; GPU 碰撞(cuRobo Sphere-SDF); Coal/hpp-fcl; 距离查询 vs 碰撞查询; SDF 场; 凸分解; nvblox ESDF
- M05 QP/NLP 建模 (1 周) -- 约束优化标准形式; QP 求解器选型; 自动微分(CppAD/CasADi); NLP(Ipopt/SNOPT); 凸松弛; KKT 条件
- M06 自动微分与代码生成 (1.5 周) -- CppAD tape; CppADCodeGen; CasADi SX/MX; AutoDiffXd; 代码生成 vs 解释执行; 性能对比
Part 3 运动规划 (M07-M10, 5.5 周)
- M07 OMPL 采样规划 (1.5 周) -- 采样规划理论(PRM/RRT/RRT*); OMPL 架构(StateSampler/Planner/MotionValidator); BIT*/AIT*; 规划时间 vs 路径质量; MoveIt2 OMPL 集成
- M08 轨迹优化规划器 (1.5 周) -- CHOMP/STOMP/TrajOpt; SDF 代价; 对偶优化; Pilz 工业规划器; 与采样规划对比
- M09 GPU 加速规划 (1.5 周) -- cuRobo 完整栈(GPU IK+碰撞+轨迹优化); VAMP; MPPI 采样型 MPC; GPU 并行 IK(百万级随机初始化); Newton 1.0
- M10 时间参数化 (1 周) -- TOPP/TOPP-RA; Ruckig 在线生成; 时间最优 vs 平滑; ros2_control 轨迹插值
Part 4 实时控制与硬件 (M11-M12, 3 周)
- M11 实时 C++ 工程 (1.5 周) -- PREEMPT_RT; SCHED_FIFO+mlockall; 无堆分配; cyclictest/ftrace; 控制循环四大禁忌; EIGEN_RUNTIME_NO_MALLOC; 1kHz 实时部署
- M12 ros2_control (1.5 周) -- SystemInterface 编写; JointTrajectoryController/ForwardCommandController; RL 部署 CRISP; 硬件抽象层; Franka/UR 驱动; 异步硬件组件
Part 5 任务编排与系统集成 (M13-M14, 3 周)
- M13 BT.CPP v4 (1 周) -- Ticking 模型; ConditionNode/ActionNode/ControlNode; BT vs FSM; Composite/Strategy 模式; pluginlib; 错误恢复; Groot2 可视化
- M14 MoveIt2+MTC (2 周) -- MoveGroup/MoveItCpp; PlanningScene; MTC Stage-based pipeline; 工业集成; JTAC 导纳; Python API; ros2_control 联动
Part 6 综合实战 (M15, 2 周)
- M15 Mini-Manip -- Gazebo Harmonic 端到端 pick-and-place; 综合 URDF+Pinocchio+OMPL+ros2_control+BT.CPP+MoveIt2; 仿真->真机; 性能对标; 作为项目模板
第二篇力控章节速览 (F01-F10, 28 周)
- F01 阻抗/导纳二分法(2 周) -- F02 操作空间动力学(1.5 周) -- F03 经典力控理论(1.5 周)
- F04 libfranka 阻抗控制(1.5 周) -- F05 导纳控制与 JTAC(1.5 周)
- F06 变阻抗/无源性/碰撞安全(3 周) -- F07 WBC/TSID/mc_rtc(4 周) -- F08 MPC+WBC 联合力控(3 周)
- F09 RL+阻抗/Diffusion Policy/SERL(5 周) -- F10 Mini-ForceControl 综合实战(5 周)
第三篇双臂章节速览 (D01-D10, 24 周)
- D01 双臂协调运动学(2 周) -- D02 闭链约束规划(2 周) -- D03 Grasp Matrix/内力控制(2 周) -- D04 ACT/双臂 RL(2 周)
- D05 二端口网络/透明度(2 周) -- D06 波变量理论(2 周) -- D07 TDPA 工程实现(2 周) -- D08 ALOHA/GELLO/UMI 数据采集(2 周)
- D09 双臂 MoveIt2/ros2_control 集成(4 周) -- D10 Mini-DualArm 综合实战(4 周)
第四篇前沿专题速览 (5 章, 12-16 周)
- F11 触觉感知(GelSight/DIGIT/TACTO, 2-3 周) -- F12 接触隐式优化(Drake Hydroelastic/Dojo, 2-3 周) -- D11 现代遥操作数据管线(DROID/LeRobot v3/OXE, 2 周) -- D12 VLA 与操作策略(OpenVLA/pi0/Gemini/Diffusion Policy/DP3, 3-4 周) -- M16 灵巧操作与多指手(LEAP Hand/DexGraspNet 2.0/RL sim-to-real, 3-4 周)
计算与硬件需求速览¶
| 阶段 | GPU | 真机 | 说明 |
|---|---|---|---|
| P01-M03, M05-M08, M10 | 无需 | 纯仿真 | MuJoCo/Gazebo |
| M04, M09 (碰撞/GPU 规划) | RTX 3060+ | 仿真优先 | cuRobo 需 GPU |
| M11-M12 (实时/硬件) | 无需 | 推荐真机 | Franka/UR5e |
| F01-F05 (力控基础) | 无需 | 推荐力传感器 | MuJoCo 可替代 |
| F09-F10, D04, D12 (学习) | A100/4090 | 按需 | Isaac Lab/大模型微调 |
完整章节详情 -> 见
20_机械臂/机械臂方向_综合教学大纲.md
第四部分:30_复合方向(48 文件, 36 教学章, ~45 周)-- 完整章节目录¶
目录:
30_复合/无独立子大纲 -- 本节为完整参考 完成后能力: 搭建轮足/移动操作/人形全身控制系统,掌握 VLA 与 sim-to-real 方法论 入口前置: 完成 v8 主线 + 腿足 24 章(30-70),或至少完成机械臂快速路径 核心栈: Pinocchio / OCS2 / Crocoddyl/Aligator / IsaacLab / ros2_control / MuJoCo / cuRobo
三层文档结构¶
复合方向由三层文档组成,形成"概览-教学-调研"立体知识网络:
- 第一层: 全景综述 -- 轮足(D1)/移动操作(D2)/足式操作(D3) 行业全貌
- 第二层: 教学大纲 -- 增量式(70-56) + 续篇(10-100) 共 36 章
- 第三层: 深度调研 -- 每个子方向的论文/项目/数学/硬件详解
增量课程(70-56, 6 章, ~8 周)¶
面向已完成 v8 主线 Ch1-46 的 SLAM 工程师,补充 MPC/WBC/实时 C++/行为树/GPU 规控等机械臂与腿足交叉技能。这 6 章是复合方向的"桥梁层"。
| 编号 | 标题 | 周数 | 核心主题 | 关键项目/论文 |
|---|---|---|---|---|
| 70 | DDP/FDDP/ProxDDP 家族 | 1 | DDP->iLQR->FDDP->ProxDDP 算法链; Crocoddyl ActionModel/ActionData 分离; Aligator ProxDDP+ParallelRiccati | Crocoddyl 3.2, Aligator; Mastalli ICRA 2020, Jallet T-RO 2025 |
| 80 | OCS2 完整 MPC 栈 | 1 | OCS2 三层架构+双线程设计; SQP-RTI; CppAD+CppADCodeGen 预编译微分 | OCS2 v1.0; ocs2_legged_robot, ocs2_mobile_manipulator |
| 90 | 实时 C++ 工程 | 1 | PREEMPT_RT 内核; 实时安全 C++ 五条铁律; lock-free triple-buffer; cyclictest/ftrace 诊断 | legged_control, OCS2 MpcMrtInterface |
| 100 | BT.CPP + MoveIt2 任务编排 | 1 | BT.CPP 4.x Ticking 模型; BT vs FSM; MTC Stage-based pipeline; BT 编排 MTC | BT.CPP v4, MoveIt2 MTC, Nav2 |
| 110 | GPU 加速规控 | 1.5 | cuRobo GPU 并行 IK+碰撞+轨迹优化; MPPI 采样型 MPC; Newton 1.0 475x 加速 | cuRobo, Isaac Lab MPPI |
| 120 | 综合实战 | 1.5 | 三条路径: Mini-Legged / Mini-Arm-Manip / RL-MPC-Hybrid; 可运行代码仓库+demo 视频 | -- |
增量课程里程碑检查点:
| 检查项 | 指标 |
|---|---|
| DDP/FDDP 算法 | 能手写 backward pass 公式并对照 Crocoddyl 源码逐行映射 |
| OCS2 MPC 部署 | 四足/机械臂 MPC 在仿真中 >=50Hz 稳定运行 |
| 实时 C++ | cyclictest 最大抖动 <50us,控制循环无堆分配 |
| BT + MoveIt2 | 完成含 Fallback 重试的 pick-and-place 任务 |
| GPU 规控 | cuRobo 规划时间 <50ms,理解 MPPI 采样并行 |
| 综合实战 | 选定路径端到端系统可运行并输出 demo 视频 |
通过标准:6 项全部达标后进入续篇 10-100。
Part VII: 公共基础层(10-75, 5 章, ~5 周)¶
从纯腿足到复合机器人的"桥梁层"。新增三维度:末端操作任务、多模态运动约束、操作-运动耦合。
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 |
|---|---|---|---|---|---|
| 10 | 复合机器人全景 | 1345 | 1 | 三子方向 x 三层级金字塔 | 三维扩展(末端操作/多模态运动/任务耦合); 统一构型向量 q=(q_base,q_leg,q_arm); 开源生态网络(OCS2/qm_control/legged_gym/openpi/LeRobot) |
| 20 | 浮动基座臂统一动力学 | 1630 | 1 | 质心动量矩阵 CMM | 统一状态向量 x=(p,R,q_leg,q_arm,...); CMM A(q) 映射; 臂反力矩对基座稳定性; 浮基+臂联合状态估计(EKF/UKF) |
| 30 | 多模态 MPC | 1761 | 1 | SE(3) 末端跟踪与自碰撞 | MPC 代价项扩展(CoM+GRF+EE 6D pose); 自碰撞约束 hpp-fcl; OCS2 mobile_manipulator 模板; 18+ DOF SQP-RTI 维度挑战 |
| 40 | RL 全身控制基础 | 67 | 1 | IsaacLab 多体 RL | IsaacLab 3.0 多后端架构; 多肢体 env 搭建(观测/动作/reward); Teacher-Student 范式; Newton 1.0 475x 加速 |
| 50 | 操作技能接口 | 97 | 1 | 末端跟踪策略与抓取流水线 | EE Tracking Policy; 操作原语(reach/grasp/lift/transport/place/insert); Diffusion Policy + ACT 简介; AnyGrasp/Contact-GraspNet 集成 |
Part VII 里程碑:
| 检查项 | 达标指标 |
|---|---|
| 统一建模 | 能写出 q=(q_base,q_leg,q_arm) 的 EoM 并用 Pinocchio 验证 CMM |
| 多模态 MPC | OCS2 mobile_manipulator 在仿真中行走+末端跟踪 |
| 多体 RL | IsaacLab 中 Go2+Z1 env 可训练并收敛 |
| 操作接口 | EE tracking + 简化抓取流水线仿真成功率 > 70% |
Part VIII: D1 轮足方向(60-81, 6 章, ~7 周)¶
轮足 = "效率 x 灵活性"最优折中。平坦地面轮驱 >3 m/s,复杂地形足式通过。平台:B2-W, ANYmal-W, TITA。
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 |
|---|---|---|---|---|---|
| 60 | 轮式运动学与 Pfaffian 约束 | 75 | 1 | 非完整约束 | 轮纯滚动 v_y=0; Pfaffian 形式 A(q)*dq=0; 差速/全向/阿克曼统一; 轮足 Pfaffian 随接触模式切换 |
| 70 | 轮足混合 MPC | 88 | 1.5 | Bjelonic NMPC 精读 | Bjelonic Science Robotics 2021; OCS2 扩展 CentroidalModel+轮关节; 混合接触模型; 能效代价设计; WBC 层轮/足力矩优先级 QP |
| 80 | Wheel-Legged-Gym RL | 69 | 1 | 端到端 RL | ETH 开源轮足 RL; 动作空间(足关节位置+轮转速); Curriculum(平地->台阶); 轮地摩擦 DR |
| 90 | Swiss-Mile 商业化 | 57 | 0.5 | 商业化路线 | ETH RSL spin-off 2023; Bjelonic NMPC+RL 模式切换+LiDAR SLAM; 续航优化(轮驱降 60% 能耗); Swiss-Mile Nature 2025 |
| 100 | 模式切换 | 78 | 1 | 轮/足/混合 FSM 与 RL | 三种模式(纯轮/纯足/混合); FSM 方案(地形规则触发); RL meta-controller; 切换安全过渡期平滑; 感知输入(高程图/地形分类) |
| 110 | 轮足 SimToReal 与硬件 | 84 | 1 | sim-to-real + 硬件集成 | B2-W/ANYmal-W 硬件; DR->SysID->残差 RL 三阶段; 轮足特有挑战(轮地摩擦/轮胎弹性/打滑); 部署性能(MPC<5ms/WBC<1ms) |
Part VIII 里程碑:
| 检查项 | 达标指标 |
|---|---|
| Pfaffian 约束 | 推导轮足 Pfaffian 矩阵并用 MuJoCo 验证 |
| 轮足 MPC | OCS2 NMPC 实现平地轮驱 + 台阶足通过 |
| 端到端 RL | wheel-legged-gym 训练收敛,策略自动切换轮/足 |
| SimToReal | 完整 DR 管线 + sim-to-real gap 量化报告 |
Part IX: D2 移动操作方向(120-85, 4 章, ~5 周)¶
底盘+臂松耦合——技术成熟度最高、工业化最快。从 Nav2+MoveIt2 经典栈到 VLA 端到端。平台:Go2+Z1, Mobile ALOHA, Stretch。
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 |
|---|---|---|---|---|---|
| 120 | 底盘+臂联合规划 | 50 | 1 | Nav2 + MoveIt2 | 松耦合架构(Nav2 SE(2)->MoveIt2 SE(3)->BT 编排); 联合优化"底盘位姿+臂构型"; MoveIt2 mobile_manipulator 规划组; BT 编排流程 |
| 130 | OCS2 mobile_manipulator 精读 | 42 | 1 | 移动操作 MPC 参考实现 | OCS2 ocs2_mobile_manipulator; 运动学 vs 动力学建模; EE tracking SE(3) Lie 群对数映射; 与 30_多模态 MPC 的关系 |
| 140 | VLA 移动操作 | 79 | 1.5 | pi0/LeRobot/Flow Matching | pi0(3B VLM+Flow Matching); pi0.5(开放世界泛化); SpatialVLA(RSS 2025, 3D 自我中心); LeRobot 统一数据格式; VLA 边界(语义强/精度弱->需 safety filter) |
| 150 | Mobile ALOHA 与 UMI | 85 | 1.5 | 数据采集 + ACT | Mobile ALOHA(Stanford 2024, 双臂移动+遥操作+ACT); ACT(CVAE+Transformer, K 步动作块); UMI(手持夹爪->跨平台迁移); Co-training; ACT->Diffusion Policy 演进 |
Part IX 里程碑:
| 检查项 | 达标指标 |
|---|---|
| 经典栈 | Nav2+MoveIt2 实现导航+抓取流程 |
| MPC 模型 | OCS2 mobile_manipulator 精读并修改底盘模型 |
| VLA 部署 | openpi/LeRobot 推理并分析动作质量 |
| 数据驱动 | 数据采集 -> ACT 训练 -> 评估闭环 |
Part X-A: D3a 四足+臂方向(160-91, 6 章, ~8 周)¶
Loco-manipulation 最成熟工程路线。19-DOF(12 腿+6 臂+1 夹爪)完整开源栈。核心挑战:行走操作实时协调、臂反力矩补偿、力敏感控制。
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 |
|---|---|---|---|---|---|
| 160 | 四足臂动力学概览 | 46 | 1 | Loco-manipulation | 论文谱系(ALMA->Sleiman->qm_control->Deep WBC->RAMBO); 三大架构(MPC+WBC/端到端 RL/MPC+RL 混合); 臂反力矩问题 |
| 170 | qm_control 精读 | 40 | 1.5 | OCS2 NMPC + 混合 WBC | 架构(NMPC100Hz->WBC500Hz->PD~1kHz); 混合 WBC 四分支(站立/行走/行走操作/动态); 任务优先级; 代码结构(qm_interface/qm_wbc/qm_hw) |
| 180 | Deep WBC 精读 | 40 | 1 | 端到端 RL 19-DOF | 单一 RL 策略控制全部 19 关节; Teacher-Student 蒸馏; 优势(简洁低延迟) vs 劣势(安全性弱); 与 qm_control MPC+WBC 对比 |
| 190 | Visual WBC 精读 | 37 | 1 | 视觉+RL 双层 | RGB/Depth->CNN->RL; 双层(高层 vision~10Hz+低层 locomotion~50Hz); 视觉 sim-to-real(DR+depth 替代 RGB); 与 Deep WBC 增量(加视觉) |
| 200 | UMI on Legs 精读 | 40 | 1 | Diffusion Policy + RL WBC | 操作与运动解耦; 任务帧接口(EE 目标 base frame); 策略复用(同一 Diffusion Policy 换底盘只换 WBC); 与 150_ALOHA/UMI 衔接 |
| 210 | RAMBO 混合 MPC/RL | 57 | 1.5 | 可微 QP 前馈 | MPC 参考轨迹->可微 QP 前馈->RL 残差修正; 可微 QP(KKT 对参数可微->梯度回传); MPC 层提供硬约束安全; 与足式 210_RL+MPC 衔接 |
Part X-A 里程碑:
| 检查项 | 达标指标 |
|---|---|
| MPC+WBC | qm_control 编译运行,Go2+Z1 仿真中行走操作 |
| 端到端 RL | 19-DOF Deep WBC 在 IsaacLab 训练收敛 |
| 视觉控制 | 深度图像观测加入后策略仍收敛 |
| 混合架构 | 理解 RAMBO 可微 QP,能推导 KKT 雅可比 |
Part X-B: D3b 人形方向(220-95, 4 章, ~7 周)¶
2025-2026 爆发期。30+ DOF 需要新范式——经典 LIPM/DCM -> 端到端 RL -> 力敏感 Loco-Mani。平台:G1/H1, GR00T, Figure 02。
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 |
|---|---|---|---|---|---|
| 220 | 经典人形全身控制 | 48 | 1.5 | LIPM/DCM/TSID | LIPM(CoM 固定高度线性化); DCM(不稳定模式 Capture Point 控制); ZMP/CoP 约束(支撑多边形内); TSID 任务优先级 QP; Kajita 2001, Englsberger 2015, Del Prete 2016 |
| 230 | 人形全身 RL | 46 | 2 | ExBody/OmniH2O/GR00T-WBC | ExBody(外骨骼动捕重定向); OmniH2O(VR 全身远程操控 RL); GR00T-WBC(NVIDIA 2026, G1 全身控制基础模型); 大规模 MoCap(AMASS/CMU)->imitation reward->PPO; 30+ DOF reward shaping+curriculum |
| 240 | ASAP SimToReal | 42 | 1.5 | Delta-Action 残差模型 | ASAP 2025(仿真 base+真机 delta-action residual); 三范式对比(DR 宽泛保守/SysID 精确费时/Delta 折中); 30+ DOF DR 参数空间爆炸; Newton 1.0 影响(475x->更大 DR 覆盖) |
| 250 | 力敏感人形 LocoMani | 59 | 2 | FALCON/SoFTA 双代理 | FALCON 2025(locomotion+manipulation agent, EE 目标接口); SoFTA 2025(F/T 传感器->RL 力敏感操作); 力敏感 vs 力盲; 与 RAMBO 对比(FALCON 纯 RL 双代理 vs RAMBO MPC+RL 混合) |
Part X-B 里程碑:
| 检查项 | 达标指标 |
|---|---|
| 经典理论 | 推导 LIPM->DCM,用 TSID 实现 G1 站立平衡 |
| 全身 RL | IsaacLab 中训练 G1 行走策略并收敛 |
| SimToReal | 理解 DR/SysID/Delta 三范式,实现两阶段管线 |
| 力敏感 | 理解 FALCON 双代理架构,设计力反馈 RL 接口 |
Part XI: 跨方向前沿与博士路径(260-100, 5 章, ~5 周)¶
不再深入单一方向,跨方向综合收束。面向 B2-B3 博士预备水平的封顶层。
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 |
|---|---|---|---|---|---|
| 260 | VLA Foundation Model | 38 | 1 | pi0/GR00T/Octo/RT-2 | pi0/pi0.5(3B VLM+Flow Matching); GR00T N1(NVIDIA 2025, 人形基础模型); SpatialVLA(RSS 2025, 3D 自我中心); VLA+MPC safety filter; 根本边界(语义强/精度弱->必须配合安全机制) |
| 270 | SimToReal 统一方法论 | 37 | 0.5 | DR vs SysID vs Delta | 三范式对比矩阵(按方向差异各有最佳组合); DR 参数设计(质量/惯量/摩擦/延迟/噪声/执行器); SysID(灰箱->贝叶斯优化/CMA-ES); Newton 1.0(475x->大规模参数扫描) |
| 280 | 多机协作 LocoMani | 32 | 1 | 多机器人协调操作 | 协作搬运(两台四足+臂->闭链运动学约束); 分布式 MPC(局部 OCP+通信约束耦合); Multi-Agent RL(MAPPO/QMIX); 异构协作(轮足+四足臂+无人机) |
| 290 | 感知操作运动统一闭环 | 62 | 1.5 | SLAM 博士着陆点 | 三闭环架构(SLAM->MPC->操作策略); SLAM->MPC 接口(地图不确定性->代价权重自适应); 主动感知; 多频率调度(SLAM20Hz+MPC100Hz+操作~10Hz); SLAM 博士独特优势 |
| 300 | 研究方向与博士规划 | 69 | 1 | 30+ 开放问题 | D1(7)+D2(7)+D3a(8)+D3b(8) 按方向分类; 三条博士路径(A 力敏感->RSS/T-RO, B 感知统一->Science Robotics, C 人形 sim-to-real->产业高需求); 产业着陆(ANYbotics/Unitree/Boston Dynamics/Physical Intelligence/NVIDIA) |
Part XI 里程碑:
| 检查项 | 达标指标 |
|---|---|
| VLA | 对比 5+ VLA 架构差异,设计 VLA+safety filter |
| SimToReal | 同一任务上对比 DR/SysID/Delta 三范式 |
| 三闭环 | 完整 SLAM->MPC->操作 接口定义 |
| 博士规划 | Research Proposal 初稿,明确方向与 5 年路径 |
全部通过 = 复合方向 ~45 周完整路径毕业。
复合方向各章核心知识点展开¶
增量课程 6 章详细描述
- 70_DDP/FDDP/ProxDDP -- 算法链: DDP->iLQR(Gauss-Newton 近似)->FDDP(Feasibility-Driven, 不可行初始 guess)->ProxDDP(Proximal Augmented Lagrangian)。核心公式: Bellman 最优性->backward pass(Q 函数二次展开->反馈增益 K_k+前馈 k_k)->forward pass 迭代。DDP vs iLQR 权衡: 真 Newton 收敛快 vs Gauss-Newton 省 Hessian。FDDP 允许中间迭代不满足动力学可行性(Mastalli AutRob 2022)。约束处理三范式: Penalty->Augmented Lagrangian->Interior-Point; Aligator ProxDDP 统一为单 pass(T-RO 2025)。Crocoddyl 用虚函数而非 CRTP 的设计决策(维度>=16 时性能差异在噪声内, 可读性/编译时间优势显著)。
- 80_OCS2 完整 MPC 栈 -- OCS2 三层架构: Problem Definition->Solver(SLQ/DDP/SQP-RTI)->MPC+ROS2 Interface。双线程设计: Solver 线程异步求解+Control 线程插值执行, lock-free 消息传递。Switched System: CentroidalModel+SwitchedModelReferenceManager 实现步态切换。SQP-RTI: 每个 MPC 周期只跑一次 QP 迭代(real-time iteration), 牺牲最优性换取恒定延迟。CppAD+CppADCodeGen 预编译微分: 首次运行生成 C 代码->编译 .so->后续零 AD 开销。与 Crocoddyl 对比: OCS2 偏"部署就绪"(双线程/SQP-RTI/ROS2 集成), Crocoddyl 偏"算法灵活"(新约束处理/多接触)。
- 90_实时 C++ 工程 -- PREEMPT_RT 内核补丁(已进入 Linux 6.x 主线): CONFIG_PREEMPT_RT 开启全抢占。实时安全 C++ 五条铁律: 无堆分配/无虚函数在热路径/无锁无阻塞 IO/SCHED_FIFO+CPU 隔离/EIGEN_RUNTIME_NO_MALLOC。MPC 双线程同步: Solver 线程非实时+Control 线程实时, lock-free triple-buffer 传递。Latency 分析工具链: cyclictest/ftrace/perf sched/自定义 scope timer。
- 100_BT.CPP + MoveIt2 -- BT.CPP 4.x Ticking 模型: ConditionNode/ActionNode/ControlNode(Sequence/Fallback/Parallel)。BT vs FSM 本质差异: BT 每 tick 从根重新评估->天然支持抢占与错误恢复。MTC Stage-based pipeline: 每个 Stage 独立求解再组合。BT 编排 MTC: BT 顶层->MTC pick-and-place->MoveIt2 OMPL/Pilz->ros2_control->硬件。
- 110_GPU 加速规控 -- cuRobo 核心三件套: GPU 并行 IK(百万级随机初始化)+GPU 碰撞检测(Sphere-SDF)+GPU 轨迹优化。MPPI(Model Predictive Path Integral): 采样型 MPC, 无需梯度, GPU 天然适配。Newton 1.0(GTC 2026): 475x 物理仿真加速后端。
- 120_综合实战 -- 三条路径: A) Mini-Legged(四足 MPC 栈, OCS2+Pinocchio+WBC+Gazebo+A1); B) Mini-Arm-Manip(机械臂抓取栈, BT.CPP+MTC+MoveIt2+ros2_control+Panda); C) RL-MPC-Hybrid(RL 策略+MPC safety filter 混合架构)。交付物: 可运行代码仓库+2000 字技术报告+1 分钟 demo 视频。
Part VII 公共基础层 5 章详细描述
- 10_复合机器人全景 (1345 行, 1 周) -- 本章是复合方向的入口。三维扩展概念: 从纯腿足的"行走"扩展到(1)末端操作(脚->夹爪), (2)多模态运动(纯足式->轮+足/底盘+臂/腿+臂), (3)任务-运动耦合。三子方向定义: D1 轮足 MPC+WBC 为主; D2 移动操作 Nav2+MoveIt2->VLA; D3 足式操作(D3a 四足+臂 19 DOF / D3b 人形 30+ DOF)。统一构型向量: q=(q_base, q_leg, q_arm) in SE(3) x R^n_leg x R^n_arm。三层级金字塔: 精通 MPC+WBC->掌握 RL->博士着陆。开源生态网络: OCS2/qm_control/legged_gym/wheel-legged-gym/openpi/LeRobot 关系图。
- 20_浮动基座臂统一动力学 (1630 行, 1 周) -- 统一状态向量: x=(p_base, R_base, q_leg, q_arm, v_base, omega_base, dq_leg, dq_arm)。质心动量矩阵 CMM: A(q) 将广义速度映射到 6D 质心动量 h=[k;l]=A(q)*dq。臂反力矩对基座稳定性: tau_arm->F_base_reaction, 这是复合机器人的核心耦合问题(臂快速运动会扰动四足行走平衡)。浮基+臂联合状态估计: IMU+足端接触+臂关节编码器->EKF/UKF。Pinocchio centroidal.hpp / OCS2 CentroidalModelInfo 精读。
- 30_多模态 MPC (1761 行, 1 周) -- 本章是复合方向理论最重的章节。MPC 代价项扩展: 从纯足式的 CoM tracking+GRF, 增加 EE 6D pose tracking(Lie 群对数映射误差, 避免欧拉角奇异)。自碰撞约束: d(link_arm_i, link_leg_j)>=d_safe, hpp-fcl 距离查询嵌入 MPC 约束。OCS2 mobile_manipulator 模板: 从 legged_robot 扩展的最小改动路径。求解维度挑战: 18+ DOF SQP-RTI 维度爆炸->降 horizon/增 dt 权衡。
- 40_RL 全身控制基础 (67 行, 1 周) -- IsaacLab 3.0 多后端架构: Isaac Sim+MuJoCo+(Newton 1.0 即将接入) 统一 API。多肢体 env 搭建: 观测(base+joint+EE+cmd)/动作(关节位置/力矩)/reward(行走+末端+操作)。Teacher-Student 范式: 特权 teacher(完美状态)->蒸馏 student(传感器观测)。Newton 1.0 影响: 475x 加速->训练时间从小时级降至分钟级。
- 50_操作技能接口 (97 行, 1 周) -- EE Tracking Policy: WBC/RL->关节命令->末端任务空间 6D 跟踪。操作原语层: reach/grasp/lift/transport/place/insert, 每个原语对应一组约束和终止条件。Diffusion Policy(Chi RSS 2023): 扩散模型生成动作序列, 天然多模态。ACT(Zhao RSS 2023): CVAE 编码器+Transformer 解码器, 一次预测 K 步动作块。抓取检测集成: AnyGrasp/Contact-GraspNet->6D 候选->WBC 执行。
Part VIII-XI 章节补充说明
D1 轮足方向的核心挑战在于非完整约束的处理: 轮纯滚动约束 v_y=0 是速度层约束, 不可积分到位置层(Pfaffian 形式), 这与足式的接触约束本质不同。轮足混合 MPC 需要同时处理轮的滚动约束和腿的接触力分配, Bjelonic NMPC(Science Robotics 2021)是该方向的里程碑工作。
D2 移动操作方向的技术成熟度最高, 工业化最快。松耦合架构(Nav2+MoveIt2+BT)已是标准工业方案, 但 VLA 端到端方法(pi0/SpatialVLA)正在重新定义上限。关键转折点在于 pi0.5(2025)实现了开放世界泛化, 从固定环境到未见过的厨房/仓库。
D3a 四足+臂方向是 Loco-manipulation 最成熟的工程路线。三大架构(MPC+WBC 分层/端到端 RL/MPC+RL 混合)的对比是本方向核心议题: qm_control(MPC+WBC, 精度高有约束) vs Deep WBC(端到端 RL, 简洁低延迟但安全性弱) vs RAMBO(可微 QP+RL 残差, 兼顾安全与灵活)。
D3b 人形方向是 2025-2026 爆发期。30+ DOF 使得经典 MPC+WBC 面临维度灾难, 端到端 RL 成为主流探索方向。GR00T-WBC(NVIDIA 2026)可能重新定义人形全身控制范式——作为 Foundation Model, 它可以在多种人形平台上泛化。
Part VIII D1 轮足各章详细描述
- 60_轮式运动学与 Pfaffian (75 行) -- 非完整约束是轮足的数学核心: 轮纯滚动 v_y=0 是速度层约束, 不可积分到位置层。Pfaffian 形式 A(q)*dq=0 可以统一描述差速/全向/阿克曼三种底盘。轮足混合时, Pfaffian 约束随接触模式切换(轮着地 vs 抬起), 这是轮足 MPC 的核心难点。参考: Bjelonic RAL 2020, LaValle 2006 Ch15。
- 70_轮足混合 MPC (88 行) -- Bjelonic NMPC(Science Robotics 2021)是轮足 MPC 的里程碑。OCS2 扩展: CentroidalModel 增加轮关节->轮接触力+轮转速为额外决策变量。混合接触模型: 轮=滚动约束+法向力, 足=标准接触力。代价设计: 速度跟踪+能效(轮优先)+地形适应(足补偿)+姿态稳定。WBC 层: 轮力矩与足力矩的不同优先级 QP 分配。
- 80_Wheel-Legged-Gym RL (69 行) -- ETH 开源轮足 RL 框架, 基于 legged_gym 扩展。动作空间: 足关节位置+轮转速(混合离散/连续)。Curriculum: 平地->斜面->台阶->随机地形渐进。sim-to-real gap: 轮地摩擦域随机化、轮胎弹性建模、编码器噪声注入。
- 90_Swiss-Mile 商业化 (57 行) -- ETH RSL spin-off(2023), 基于 ANYmal-W 城市配送。技术栈: Bjelonic NMPC+RL 模式切换+LiDAR SLAM+语义导航。商业化关键: 续航优化(轮驱降 60% 能耗), 全天候可靠性, 多楼层导航。Swiss-Mile Nature 2025 是轮足商业化的重要里程碑。
- 100_模式切换 (78 行) -- 三种模式: 纯轮(平坦高速)/纯足(复杂低速)/混合(过渡)。FSM 方案: 基于地形坡度/粗糙度/高差的规则触发(简单但边界多)。RL 方案: meta-controller 选运动模式, FALCON 式双层架构的轮足版本。切换安全: 模式切换瞬间的"双模式"过渡期平滑约束。感知输入: 高程图/地形分类->模式决策上游。
- 110_轮足 SimToReal (84 行) -- 硬件: Unitree B2-W/ANYmal-W。sim-to-real 三阶段: DR(摩擦/质量/延迟/噪声)->SysID(真机标定)->残差 RL 补偿。轮足特有挑战: 轮地摩擦模型不准(湿地/碎石/冰面), 轮胎弹性变形, 打滑检测。部署性能: MPC<5ms/WBC<1ms/端到端延迟<10ms。
Part IX D2 移动操作各章详细描述
- 120_底盘+臂联合规划 (50 行) -- 松耦合架构: Nav2(SE(2) 导航)->MoveIt2(SE(3) 操作)->BT 编排。联合规划挑战: 底盘移动改变臂工作空间->联合优化"底盘位姿+臂构型"。MoveIt2 mobile_manipulator 规划组: 底盘自由度纳入 OMPL 状态空间。BT 编排: NavigateToObject->AlignBase->PlanArm->ExecuteGrasp。
- 130_OCS2 mobile_manipulator (42 行) -- OCS2 ocs2_mobile_manipulator: 底盘 SE(2)/SE(3)+臂 n-DOF 的统一 OCP。两种建模: 运动学(速度级决策) vs 动力学(力矩级)。EE tracking 代价: SE(3) Lie 群对数映射误差, 避免欧拉角奇异。与 30_多模态 MPC 关系: 30 讲通用概念, 本章是 OCS2 移动操作具体实现精读。
- 140_VLA 移动操作 (79 行) -- pi0(Physical Intelligence 2024): 3B VLM+Flow Matching 动作头。pi0.5(2025): 开放世界泛化, 从固定环境到未见过的厨房/仓库。SpatialVLA(RSS 2025): 3D 自我中心 VLA, 2D->3D 空间理解的跃迁。LeRobot(HuggingFace): 开源统一数据格式+多种策略(ACT/Diffusion/VLA)。Flow Matching vs Diffusion: 连续时间推广, 训练更稳定。VLA 边界: 语义强/精度弱->需 MPC/WBC safety filter(260 深入)。
- 150_Mobile ALOHA 与 UMI (85 行) -- Mobile ALOHA(Stanford 2024): 双臂移动底盘+遥操作+ACT 训练。ACT: CVAE 编码器+Transformer 解码器, 一次预测 K 步动作块。UMI(Universal Manipulation Interface): 手持夹爪采集->跨平台策略迁移。Co-training: 混合仿真数据+真机示教提升泛化。ACT->Diffusion Policy 演进: ACT 快速推理(4ms) vs Diffusion 更好多模态。
Part X-A D3a 四足+臂各章详细描述
- 160_四足臂动力学概览 (46 行) -- 论文谱系: ALMA(2019)->Sleiman(2021)->qm_control(2023)->Deep WBC(2024)->RAMBO(2025)。三大架构对比: MPC+WBC 分层(可解释, 有约束, 但调参难) vs 端到端 RL(简洁, 低延迟, 但安全性弱) vs MPC+RL 混合(兼顾, 但复杂度高)。臂反力矩问题: 臂运动->影响腿接触力分配->WBC 必须联合约束, 这是四足+臂区别于纯四足的核心物理问题。
- 170_qm_control 精读 (40 行) -- 架构: OCS2 NMPC(~100Hz)->WBC QP(~500Hz)->PD 关节(~1kHz)。混合 WBC 四分支: 站立操作(臂运动, 腿静止)/行走(纯腿)/行走操作(腿+臂同时)/动态操作(快速臂运动需额外平衡补偿)。任务优先级: 腿接触力约束>平衡>EE 跟踪>姿态正则化。代码结构: qm_interface(URDF/Pinocchio/OCS2 配置)->qm_wbc(QP 求解)->qm_hw(ros2_control 硬件接口)。
- 180_Deep WBC 精读 (40 行) -- 核心思想: 单一 RL 策略控制全部 19 关节, 无 MPC/WBC 分层。Teacher-Student: teacher 用完美状态(位置/速度/接触力)训练->student 只用传感器观测(IMU/关节编码器)蒸馏。优势: 架构简单(一个网络), 延迟低(推理<1ms), 无需调 MPC 参数。劣势: 无显式安全保证(关节限位靠 reward penalty 而非硬约束), 可解释性差, 失败模式不可预测。与 qm_control 对比: 精度(MPC+WBC 更高) vs 简洁度(Deep WBC 更高) vs 安全性(MPC+WBC 更好)。
- 190_Visual WBC 精读 (37 行) -- 在 Deep WBC 基础上加视觉: RGB/Depth->CNN 编码->RL->全身控制。双层架构: 高层 vision policy(~10Hz, 处理图像)->低层 locomotion policy(~50Hz, 输出关节命令)。视觉 sim-to-real 关键: DR on lighting/texture+depth 替代 RGB(depth 对光照/材质不变)。与 Deep WBC 增量: 加视觉->"看到什么就操作什么", 从盲操作到视觉引导操作。
- 200_UMI on Legs 精读 (40 行) -- 核心创新: 操作策略与运动策略解耦。Diffusion Policy 管 EE 目标(不关心底盘怎么走), RL WBC 管全身协调(保证行走中跟踪 EE 目标)。任务帧接口: EE 目标在 base frame 表达->RL WBC 保证行走中跟踪。策略复用: 同一 Diffusion Policy 可在不同底盘复用(Go2/B1/ANYmal), 只换 WBC。与 150_ALOHA/UMI 衔接: 150 讲 UMI 数据采集+ACT, 本章讲 UMI 在四足平台应用。
- 210_RAMBO 混合 MPC/RL (57 行) -- MPC 参考轨迹->可微 QP 前馈力矩->RL 残差修正。可微 QP 核心: KKT 矩阵对参数可微->梯度回传到 RL->端到端训练。安全性: MPC 层提供硬约束(力限位/自碰撞), RL 残差受约束裁剪(不会输出超出安全范围的修正)。与足式 210_RL+MPC 衔接: 足式 210 讲 RL+MPC 混合概念(光谱), 本章是四足+臂上的具体前沿实现。
Part X-B D3b 人形各章详细描述
- 220_经典人形全身控制 (48 行) -- LIPM 线性倒立摆: CoM 固定高度->线性化 ZMP 动力学, 这是人形步态规划的数学基石(Kajita 2001)。DCM 发散分量: LIPM 不稳定模式分量->Capture Point 控制(Englsberger 2015), 现代"可捕获"抽象。ZMP/CoP 约束: 零力矩点必须在支撑多边形内, 这是步态规划的核心约束。TSID: 任务优先级 QP, ZMP+力矩限位+自碰撞联合约束(Del Prete 2016)。从四足到人形: 四足有四个支撑点形成较大支撑多边形, 人形双足支撑面小得多->平衡控制更难。
- 230_人形全身 RL (46 行) -- ExBody(2024): 外骨骼式动捕重定向->人形全身控制, 上下半身解耦(上半身追踪动捕, 下半身 RL 平衡)。OmniH2O(2024): VR 全身远程操控 RL 策略。GR00T-WBC(NVIDIA 2026): G1 全身控制基础模型——可能重定义人形 WBC 范式(类似 GPT 对 NLP 的影响)。训练策略: 大规模动捕(AMASS/CMU)->motion imitation reward->PPO。30+ DOF 挑战: 高维观测/动作->reward shaping 更精细+curriculum 更重要(平地站立->走->转弯->台阶)。
- 240_ASAP SimToReal (42 行) -- ASAP(2025): 仿真 base policy+真机 delta-action residual 补偿。三范式对比: DR(宽泛保守, 策略鲁棒但可能次优)/SysID(精确费时, 需要大量真机数据)/Delta-Action(折中, 仿真 base 便宜+真机 delta 补偿少量数据)。人形特有挑战: 30+ DOF 的 DR 参数空间爆炸(质量/惯量/摩擦/延迟各 30+ 参数->千维参数空间), 双足双手多接触点。Newton 1.0 影响: 475x 加速->DR 覆盖更大参数空间->delta 残差更小。
- 250_力敏感人形 LocoMani (59 行) -- FALCON(2025): locomotion agent+manipulation agent, EE 目标接口通信(locomotion 不需要知道 manipulation 在做什么, 只需要跟踪 EE 目标)。SoFTA(2025): F/T 传感器->RL 输入->力敏感操作(插入/擦拭/拧螺栓等需要力反馈的任务)。力敏感 vs 力盲: 传统 VLA/RL "力盲"(只有位置/视觉, 不知道接触力), 力敏感加入触觉/力觉反馈使操作更精细。与 RAMBO 对比: FALCON 纯 RL 双代理(简洁但无显式约束), RAMBO MPC+RL 混合(有约束但复杂)。
Part XI 跨方向前沿各章详细描述
- 260_VLA Foundation Model (38 行) -- pi0/pi0.5 是 VLA 方向的标杆: 3B VLM 编码视觉-语言, Flow Matching 动作头生成连续动作序列。GR00T N1(NVIDIA 2025): 人形基础模型, 双臂精细操作预训练。SpatialVLA(RSS 2025): 3D 自我中心 VLA, 将 2D 图像理解提升到 3D 空间理解。VLA+MPC safety filter: VLA 输出 EE 目标->MPC 检查 ZMP/力约束->修正执行。根本边界: 语义强/精度弱(VLA 知道"拿杯子"但不知道用多大力)、泛化强/安全弱(新环境可以尝试但可能摔倒)->必须配合底层安全机制。
- 270_SimToReal 统一方法论 (37 行) -- 三范式对比矩阵: 按方向差异(轮足/四足+臂/人形)各有最佳组合。DR 参数设计: 质量(+-20%)/惯量(+-30%)/摩擦(+-50%)/延迟(+-2ms)/噪声(传感器级)/执行器(位置增益/阻尼)——物理意义与合理范围。SysID 方法: 灰箱->贝叶斯优化/CMA-ES 参数搜索。Newton 1.0 影响: 475x 加速->DR 大规模参数扫描系统性覆盖(原来一个 DR 配置训 1 小时, 现在 < 10 秒)。
- 280_多机协作 LocoMani (32 行) -- 协作搬运: 两台四足+臂共搬大型物体->闭链运动学约束(物体连接两个末端, 约束各自运动)。分布式 MPC: 局部 OCP+通信约束耦合(每个机器人解自己的 OCP, 但通过通信共享约束)。Multi-Agent RL: MAPPO/QMIX/通信 RL 在 loco-mani 上应用。异构协作: 轮足(高速移动)+四足+臂(灵活操作)+无人机(空中感知)。
- 290_感知操作运动统一闭环 (62 行) -- 三闭环架构: SLAM(感知, 提供地图+位姿)->MPC(运动, 规划轨迹)->操作策略(操作, 执行任务)。SLAM->MPC 接口: 地图不确定性->MPC 代价权重自适应(不确定区域更保守)。操作->SLAM 接口: 主动感知(操作需更好感知时, 规划感知动作, 如转头看目标)。多频率调度: SLAM20Hz+MPC100Hz+操作~10Hz, 异步管线。SLAM 博士生独特优势: 理解不确定性传播的人很少同时理解 MPC+RL, 这正是差异化。
- 300_研究方向与博士规划 (69 行) -- 30+ 开放问题: D1(7 个轮足问题)+D2(7 个移动操作问题)+D3a(8 个四足+臂问题)+D3b(8 个人形问题)。三条博士路径: A 力敏感 loco-mani(最直接, FALCON+RAMBO->RSS/T-RO); B 感知-操作-运动统一(最创新, 三闭环->Science Robotics); C 人形 sim-to-real(最热门, ASAP+FALCON->产业高需求)。产业着陆: ANYbotics/Unitree/Boston Dynamics/Physical Intelligence/NVIDIA/Swiss-Mile/Agility/Figure。
复合方向调研报告(参考性质,不计入学时)¶
| 文件 | 路径 | 定位 |
|---|---|---|
| Survey_D1_轮足机器人 | 调研/ | 轮足行业全景 |
| Survey_D2_移动操作 | 调研/ | 移动操作行业全景 |
| Survey_D3_移动操作 | 调研/ | 足式操作行业全景 |
| Deep_D1_轮足深度调研 | 调研/ | 轮足论文/项目/数学/硬件详解 |
| Deep_D2_移动操作深度调研 | 调研/ | 移动操作详解 |
| Deep_D3a_四足臂深度调研 | 调研/ | 四足+臂详解 |
| Deep_D3b_人形深度调研 | 调研/ | 人形详解 |
| Deep_四足人形规控项目调研 | 调研/ | 22 个 C++ 项目全景 |
| Deep_轮足与足式机械臂调研 | 调研/ | 轮足与足式臂开源全景 |
| Survey_课程规划与结论 | 调研/ | 课程规划综合结论 |
复合方向附录¶
| 文件 | 路径 | 内容 |
|---|---|---|
| Appendix_A_依赖图 | 附录/ | 章节依赖关系图 |
| Appendix_A3_合并章节列表 | 附录/ | 全部章节合并索引 |
| Appendix_B_合并路线图 | 附录/ | 学习路径路线图 |
| Appendix_B3_技能矩阵 | 附录/ | 技能维度达标矩阵 |
| Appendix_C_引用索引 | 附录/ | 论文引用索引 |
| Appendix_C3_核心开源项目速查 | 附录/ | 开源项目速查表 |
复合方向 2025-2026 前沿追踪¶
| 成果 | 时间 | 关联章节 | 影响 |
|---|---|---|---|
| GR00T-WBC (NVIDIA) | 2026-03 | 230, 260 | G1 全身控制基础模型, 可能重定义人形 WBC 范式 |
| pi0.5 (Physical Intelligence) | 2025 | 140, 260 | 开放世界泛化 VLA |
| SpatialVLA (RSS 2025) | 2025 | 140, 260 | 3D 自我中心 VLA, 空间理解质的飞跃 |
| Newton 1.0 (GTC 2026) | 2026 | 40, 240, 270 | 475x 物理仿真加速 |
| Isaac Lab 3.0 | 2025-26 | 40, 80, 180 | 多后端(Isaac Sim+MuJoCo+Newton) |
| FALCON / SoFTA | 2025 | 250 | 力敏感人形双代理架构 |
| RAMBO | 2025 | 210 | 可微 QP + RL 残差混合 |
| UMI on Legs | 2025 | 200 | Diffusion Policy 四足操作复用 |
| Swiss-Mile Nature | 2025 | 90 | 轮足商业化里程碑 |
| Crocoddyl 3.2 | 2026-03 | 增量 70 | 不向后兼容 API 重构 |
| Aligator ProxDDP | 2025-03 T-RO | 增量 70 | 推荐替代 OCS2 |
复合方向依赖图¶
v8 SLAM 主线 (Ch1-46)
|
+-> 增量 (70-56) 足式 (30-70)
| | |
| +------+---------------+
| v
| Part VII 公共基础 (10-75)
| 10 全景 -> 20 统一动力学 -> 30 多模态 MPC
| 40 RL 基础 50 操作接口
| |
| +--------+----------+----------+
| v v v v
| VIII D1 IX D2 X-A D3a X-B D3b
| 轮足 移动操作 四足+臂 人形
| 60-81 120-85 160-91 220-95
| +--------+----------+----------+
| v
| Part XI 前沿+博士 (260-100)
| 260 VLA -> 270 SimToReal -> 280 多机
| -> 290 统一闭环 -> 300 博士规划
v
毕业 (~Week 80-85)
复合方向技能矩阵¶
| 技能维度 | 增量完成 (120) | 续篇完成 (300) |
|---|---|---|
| 纯腿足 MPC+WBC | 3/5 | 5/5 |
| 复合机器人动力学 | 2/5 | 5/5 |
| 轮足混合控制 | 0/5 | 4/5 |
| 移动操作 | 1/5 | 4/5 |
| Loco-Manipulation | 0/5 | 5/5 |
| 人形全身控制 | 0/5 | 5/5 |
| VLA/Foundation Model | 0/5 | 3/5 |
| Sim-to-Real | 1/5 | 5/5 |
| 力敏感控制 | 0/5 | 4/5 |
| 博士研究能力 | 1/5 | 5/5 |
第五部分:40_仿真与 RL 工具层(10 文件, ~12 周)-- 完整章节目录¶
目录:
40_仿真/+ 根目录 2 个跨方向文件 无独立子大纲 -- 本节为完整参考 完成后能力: MuJoCo+MJX GPU 训练, 可微分仿真, sim-to-real pipeline 全栈 入口前置: 任一子方向完成后均可进入; 核心前置为 Eigen 高级+ROS2 基础+PPO/SAC 训练经验 核心栈: MuJoCo 3.7 / MJX / Warp / Playground / mjlab / Isaac Lab 3.0 / Genesis / acados / leap-c
三大认知跨越¶
学员从 IsaacGym/Pinocchio 背景进入 MuJoCo 生态需要完成三个认知跨越:
- 从"黑盒仿真器"到"可检查可逆的物理引擎" -- MuJoCo 的
mj_forward和mj_inverse在有接触时都是 well-defined 的 - 从"只能前向传播"到"梯度流经物理" -- 可微分仿真让梯度穿过接触和约束,但接触非光滑性会引入有偏梯度
- 从"单一仿真器锁定"到"多仿真器协同" -- sim2sim 验证成为工业默认实践
仿真课程章节表(S00-S05 + S3B + S99, 8 文件)¶
| 编号 | 标题 | 行数 | 周数 | 核心主题 | 关键知识点 | 里程碑 |
|---|---|---|---|---|---|---|
| S00 | 导读 | 97 | -- | 定位与迁移图 | 三大认知跨越; PhysX->MJX/Warp 迁移; 全局路线(S-I->S-II->S-III) | 画出技能迁移图,判断项目该用哪个仿真器 |
| S01 | MuJoCo 核心引擎 | 343 | 3 | 物理哲学与 MJCF | Gauss 原理+凸优化+软约束; mjModel/mjData 双结构(与 Pinocchio 同构); mj_step/mj_forward/mj_inverse 三大函数; MJCF 远超 URDF; Menagerie 55-60 模型; implicitfast 积分器 | Go2 正逆动力学验证(mj_forward->mj_inverse->力平衡) |
| S02 | 交互式控制 | 251 | 2 | MJPC/mjctrl/mink | MJPC 实时交互 MPC(iLQG/Sampling+拖拽 GUI); mjctrl 教材级单文件控制器(<200 行); mink QP-based 差分 IK; 与 OCS2/acados 定位对比 | MJPC 拖拽观察 iLQG vs Sampling; mjctrl 10min Panda demo |
| S03 | GPU 生态 | 312 | 2 | MJX/Warp/Playground | MJX JAX 后端(jax.vmap+jax.grad); Warp CUDA(MJX 152-313x 快, 暂不支持 autodiff); Playground 端到端(RSS 2025, 单 GPU 15min 四足); Holosoma 多仿真器; 选型决策树; Newton 1.0/Genesis 0.4.5 | Playground Go1 15min 训练; mjlab Go2 迁移验证 |
| S3B | mjlab 深度实战 | 504 | 2 | 五层架构精读 | Simulation(Warp)->Entity->Scene->ManagerBasedRLEnv(6 Manager)->Task Registry; 与 IsaacLab API 1:1; Rucker 伪惯量参数化; Go2 velocity tracking 完整示例; G1 Motion Tracking(MimicKit->BeyondMimic->ONNX->真机); Unitree unitree_rl_mjlab 全线 | ANYmal C 自定义集成; Rucker DR 消融(无/质量/完整) |
| S04 | 可微分仿真理论 | 219 | 1.5 | 接触梯度与策略 | 互补条件非光滑性; 四类策略(Penalty/解析平滑/代理解耦/Value smoothing); Suh ICML 2022(FoBG 低方差但方向错误); SHAC(短 horizon+critic, 比 PPO 快 17x); 首个四足可微 sim2real(Song CoRL 2024/Schwarke CoRL 2025) | 复现 Suh "球撞墙" FoBG 偏差; MJX 梯度爆炸观察 |
| S05 | 可微分 MPC | 217 | 1.5 | leap-c/acados 可微 NMPC | Amos 2018(KKT+隐函数->backward pass); TD-MPC2/DreamerV3 不是可微 MPC 辨析; acados 可微 NMPC(IFT+IPM 平滑); leap-c(acados 作为 PyTorch 可微层); AC-MPC(T-RO 2025, 无人机 21m/s); 决策矩阵(安全->leap-c/大 DOF->PPO/低接触->SHAC) | leap-c 梯度穿过 MPC; "可微 MPC vs 纯 RL vs 纯 MPC"选型练习 |
| S99 | 附录 | 120 | -- | 速查 | 20 个项目五星排序; 必读 8 篇+推荐 8 篇论文; 教学资源(Colab/Bootcamp/CMU 16-745/MIT 6.832/GAMES 201); 选型矩阵决策树 | -- |
仿真各章核心知识点展开¶
Part S-I: MuJoCo 仿真器核心(S01-S02, ~5 周)
- S01 MuJoCo 核心引擎与 MJCF 建模 (3 周) -- 这是仿真方向的基石。MuJoCo 选择"Gauss 原理+凸优化+软约束"而非 PhysX/Bullet 的"LCP+硬接触", 其根本影响在于: (1) 解唯一, 逆动力学在有接触时仍 well-defined, 而 PhysX 不保证; (2) reward landscape 更光滑, 有利于 RL 训练; (3) 可微分梯度质量更好。mjModel(只读)/mjData(可变)的双结构与 Pinocchio Model/Data 逐字段同构, SLAM 工程师可直接类比。MJCF 格式远超 URDF: 支持接触参数(solref/solimp)、30+ 种传感器、执行器模型(motor/position/muscle)、等式约束。Menagerie 提供 55-60 个工业级 MJCF 模型, 覆盖 Go2/G1/H1/ANYmal/Panda/ALOHA2。
- S02 交互式控制 (2 周) -- MJPC 是 DeepMind 开发的实时交互 MPC 框架, 支持 iLQG/Gradient/Predictive Sampling 三种求解器, 通过 GUI 拖拽目标实时观察控制行为。其中 iLQG 与 OCS2 的 SLQ 求解器数学同构。mjctrl 是教材级单文件控制器集合, 每个控制器不到 200 行: 梯度 IK/GN-IK/LM-IK/差分 IK/OSC, 是理解控制算法本质的最佳入口。mink 是 QP-based 差分 IK, 其约束处理与 TSID WBC 数学同构。
Part S-II: GPU 生态与多仿真器融合(S03+S3B, ~4 周)
- S03 GPU 生态 (2 周) -- 2024-2026 年 MuJoCo GPU 生态剧变: MJX(JAX 后端, jax.vmap 批量并行+jax.grad 可微分, 千级并行); MuJoCo Warp(CUDA kernel, 比 MJX locomotion 快 152x/manipulation 快 313x, 但暂不支持 autodiff); Playground(端到端 GPU RL->sim2real, RSS 2025 Outstanding Demo, 6 平台验证, 单 GPU 15min 训完四足); Holosoma(Amazon FAR, 4 种后端, FastSAC/FastTD3 15min G1 locomotion)。2026 更新: Newton 1.0(GTC 2026, 475x faster than MJX, IsaacLab 可选后端); Genesis 0.4.5($105M 融资, 43M FPS, 统一刚体/流体/柔体)。
- S3B mjlab 深度实战 (2 周) -- Berkeley mjlab 是 IsaacLab 的 MuJoCo 对等框架, API 几乎 1:1。五层架构: Simulation(Warp)->Entity->Scene->ManagerBasedRLEnv(6 Manager)->Task Registry。核心差异: Entity 统一抽象、MJCF 格式、Rucker 伪惯量参数化(10 维 sigma, 任何值保证物理合法)。从零建环境: Go2 velocity tracking 完整示例(Scene->6 Manager->注册->训练)。Motion Tracking: G1 回旋踢(MimicKit pkl->csv->npz->BeyondMimic reward->ONNX->真机)。Unitree 官方
unitree_rl_mjlab覆盖 Go2/A2/G1/R1/H1_2/H2 全线。
Part S-III: 可微分仿真与可微分 MPC(S04-S05, ~3 周)
- S04 可微分仿真理论 (1.5 周) -- 接触非光滑性的核心挑战: 互补条件 phi*lambda=0 在接触处状态转移不可微, 梯度含 Dirac delta。四类应对策略: Penalty 软化(简单但物理失真)、解析平滑(精确但复杂)、代理解耦(REINFORCE 式, 高方差)、Value function smoothing(SHAC)。Suh ICML 2022 Outstanding Paper: FoBG 在刚性接触下低方差但方向错误, 可微分仿真不总是比 PPO 好。SHAC: 短 horizon(h~32)+critic terminal value, Humanoid 比 PPO 快 17x, 接触密集时优势减小。首个四足可微 sim2real: Song CoRL 2024(floating-base/joint 分离), Schwarke CoRL 2025(ANYmal zero-shot)。
- S05 可微分 MPC (1.5 周) -- Amos 2018: KKT+隐函数定理->backward pass 约等于一次修改版 LQR。关键辨析: TD-MPC2/DreamerV3 不是可微分 MPC(前者世界模型+MPPI, 后者 RSSM+imagination)。acados 可微 NMPC(Frey 2025: IFT+IPM 平滑, 比 mpc.pytorch 快 3x+)。leap-c: acados NMPC 作为 PyTorch 可微层, 支持 IL+RL+混合, 部署保留约束满足。AC-MPC(Romero T-RO 2025: 可微 MPC actor+PPO, 无人机 21 m/s)。决策矩阵: 安全约束->leap-c; 大 DOF 人形->PPO+DR; 低接触->SHAC; 多任务->TD-MPC2; 学 MPC 参->leap-c。
MJLab RL 运控工程手册(2409 行, 跨方向独立模块)¶
纯工程操作手册——不含算法理论,覆盖安装/训练/调参/部署全流程。
| Part | 主题 | 核心内容 | 产出 |
|---|---|---|---|
| 1 | 平台选型 | MuJoCo CPU/MJX/Warp vs Isaac Lab 对比表; 速度 benchmark; 决策树 | 仿真器选型决策 |
| 2 | 环境搭建 | IsaacLab 安装(~20GB); mjlab(pip install, 5min); 验证命令 | 双平台可运行 |
| 3 | 四足(Go2) | 环境配置->观测/奖励/终止->PPO 训练->评估; 超参调优 | 可部署 locomotion |
| 4 | 人形(H1/G1) | 19/29-DOF 关节配置; 平衡稳定; 渐进课程(平地->斜面->台阶) | 站立+行走策略 |
| 5 | 动作模仿 | DeepMimic/AMP/BeyondMimic 方案选择; MoCap 准备; Retargeting; motion tracking 管线 | MoCap->策略管线 |
| 6 | 部署 | ONNX 导出; sim2sim 验证; 真机推理; 传感器对齐; 安全保护 | Sim2Real checklist |
| 7 | 高级技巧 | 多 GPU; W&B; 高级 DR(Rucker/电机/摩擦/外力); 不稳定诊断; CUDA Graph | 工程排查能力 |
动作模仿理论(455 行, 理论伴读)¶
工程手册 Part 5 的理论伴读——DeepMimic/AMP/ASE 数学推导与直觉。
| 阶段 | 方法 | 核心机制 | 突破 | 限制 |
|---|---|---|---|---|
| 2018 | DeepMimic | 手工奖励 + RSI | 首个 MoCap+RL 物理控制 | 单动作专家 |
| 2021 | AMP | GAN discriminator 替代手工奖励 | 风格/任务解耦 | 每任务单独训练 |
| 2022 | ASE | Encoder+Decoder+D 预训练, 高层微调 | 技能复用, 潜空间插值 | 仅限仿真人形 |
| 2023 | PHC | Hard Negative Mining + Progressive Training | 永续控制, AMASS >98% | 单体型 |
| 2025 | BeyondMimic | Guided Diffusion + Motion Tracking, G1 真机 | 全链路 generation->tracking->real | 计算成本高 |
| 2025 | SONIC | 数百小时数据的 motion foundation model | 类 LLM 规模化 | 新方向,尚未广泛验证 |
MuJoCo vs IsaacLab 选型对比表¶
| 维度 | MuJoCo (MJX/Warp) | IsaacLab |
|---|---|---|
| 物理引擎 | Gauss 原理+凸优化+软约束 | PhysX(默认)/Newton(MuJoCo Warp 后端) |
| 接触模型 | 解唯一, 逆动力学 well-defined | LCP 硬约束(PhysX), 依版本而异 |
| GPU 后端 | MJX(JAX, 可微分) / Warp(CUDA, 最快) | PhysX GPU / Newton(MuJoCo Warp) |
| 可微分 | MJX 原生 jax.grad |
不原生, 需 SHAC/FoBG 等包装 |
| 训练速度 | Playground 单 GPU 15min 四足 / Warp 百万级 | 4096+ 环境并行, 成熟 |
| 模型格式 | MJCF(原生) + URDF(转换) | USD(原生) + URDF(支持) |
| 模型库 | Menagerie 55-60 个工业级模型 | Isaac Sim 资产库 |
| 安装 | pip install mujoco(5min) |
~20GB, 需 Omniverse |
| API | Python/C, 轻量 | 重型 Python, 大量抽象 |
| 社区 | DeepMind 维护, 学术主流 | NVIDIA 维护, 工业+学术 |
| 最佳场景 | 可微分研究 / 逆动力学 / 轻量部署 | 大规模 RL / 复杂场景渲染 / 工业仿真 |
| 推荐 | 研究+教学+快速原型 | 大规模训练+复杂场景+工业部署 |
选型决策树:
需要可微分? --是--> MJX (JAX 原生 autodiff)
|
否
|
需要极大规模(>10k 环境)? --是--> IsaacLab (成熟的大规模 RL 栈)
|
否
|
需要逆动力学/力平衡检查? --是--> MuJoCo (mj_inverse well-defined)
|
否
|
需要复杂场景渲染? --是--> IsaacLab + Isaac Sim
|
否
|
快速原型/教学? --是--> MuJoCo Playground (单 GPU 15min)
仿真方向学习路径¶
| 路径 | 重点 | 周数 |
|---|---|---|
| A 仿真为主 | S00->S01->S02->S03->S3B->S04->S05 | 12 周 |
| B RL 工程为主 | 手册 Part 1-7,按需查阅 S01/S3B/动作模仿理论 | 6-8 周 |
| C 动作模仿为主 | 动作模仿理论->手册 Part 5->S3B Motion Tracking | 3-4 周 |
| D 最短部署 | 手册 Part 1-3->Part 6->S3B sim2sim | 4 周 |
仿真方向文件清单与统计¶
| 文件 | 路径 | 行数 | 所属 |
|---|---|---|---|
| S00_导读 | 仿真/ | 97 | 仿真课程 |
| S01_MuJoCo 核心引擎 | 仿真/ | 343 | 仿真课程 |
| S02_交互式控制 | 仿真/ | 251 | 仿真课程 |
| S03_GPU 生态 | 仿真/ | 312 | 仿真课程 |
| S3B_mjlab 深度实战 | 仿真/ | 504 | 仿真课程 |
| S04_可微分仿真理论 | 仿真/ | 219 | 仿真课程 |
| S05_可微分 MPC | 仿真/ | 217 | 仿真课程 |
| S99_附录 | 仿真/ | 120 | 仿真课程 |
| RL 运控工程手册 | 根目录 | 2409 | 工程手册 |
| 动作模仿理论 | 复合/ | 455 | 理论伴读 |
| 合计 | -- | 4927 | -- |
第六部分:跨方向能力层定位¶
RL + 动作模仿 = 跨方向能力层¶
RL 和动作模仿不属于任何单一子方向,而是服务所有子方向的基础能力。其在各方向中的具体形态不同:
| 能力 | 机械臂 | 足式 | 复合 | 仿真 |
|---|---|---|---|---|
| RL 动作空间 | 阻抗参数 (K_d, D_d) | 关节位置偏移 | 全身多关节+轮转速 | GPU 并行训练环境 |
| RL 安全机制 | 底层柔顺+高层策略 | 位置偏移+域随机化 | MPC safety filter | sim2sim 验证 |
| RL 训练规模 | 数百环境 | 数千环境 (4096+) | 数千环境 | 百万级并行 |
| RL 部署 | ros2_control CRISP | LibTorch/ONNX/TensorRT | RL WBC + MPC | Playground/mjlab |
| 动作模仿 | D08 遥操作数据 | PHC/AMP 四足模仿 | ExBody/BeyondMimic 人形 | MimicKit 管线 |
RL + MPC 混合光谱¶
纯 MPC ◄────────────────────────────────────────────► 纯 RL
| | | | |
OCS2 MPC-Net RAMBO Teacher- 端到端
SQP-RTI (蒸馏策略) (MPC+可微QP Student Deep WBC
网络) +RL残差) (特权蒸馏)
可解释性高 ◄──────────────────────────────────────► 可解释性低
安全保证强 ◄──────────────────────────────────────► 安全保证弱
感知弱 ◄──────────────────────────────────────► 感知强
调参繁 ◄──────────────────────────────────────► 自动化高
跨方向 sim-to-real 统一方法论¶
| 方法 | 核心思想 | 最适场景 | 代表工作 |
|---|---|---|---|
| Domain Randomization (DR) | 训练时随机化物理参数,policy 学习鲁棒性 | 中等 DOF, 参数空间可控 | legged_gym, IsaacLab |
| System Identification (SysID) | 标定真机参数,缩小 sim-real gap | 高精度需求, 参数可测量 | Swevers 法, 贝叶斯优化 |
| Delta-Action Residual | 仿真 base + 真机残差补偿 | 高 DOF(30+), DR 参数空间爆炸 | ASAP 2025 |
| Sim2Sim 验证 | 多仿真器交叉验证 | 工业部署前的安全检查 | IsaacLab->MuJoCo 对照 |
| 可微仿真 | 梯度穿过物理引擎 | 低接触, 需参数优化 | Song CoRL 2024, Schwarke CoRL 2025 |
第七部分:交叉引用地图¶
7.1 内部交叉(05_运动控制 四子方向之间)¶
共享知识模块表¶
| 共享知识模块 | 机械臂 | 足式 | 复合 | 仿真 | 首次出现 |
|---|---|---|---|---|---|
| Pinocchio 动力学 | M01 精读 | 30 浮动基座扩展 | 10-72 臂+基座耦合 | S01 MuJoCo 对比 | M01/30 |
| ros2_control | M12 硬件驱动 | 180 腿足硬件 | 10 BT+MoveIt | -- | M12 |
| 阻抗/导纳控制 | F04-F05 经典 | 90 WBC 力控任务 | 180 Deep WBC | S02 MJPC 对比 | F04 |
| BT.CPP 行为树 | M13 精读 | -- | 100 MoveIt 集成 | -- | M13 |
| WBC/TSID | F07 浮动基座 | 90 核心 | 170-190 精读系列 | -- | 90 |
| MPC | M08 轨迹优化 | 100-55 核心 | 80/73/77 多模态 | S05 可微分 MPC | 100 |
| RL sim-to-real | F09 学习力控 | 190-65 核心 | 40/78/93 全身 RL | S03 GPU 训练 | 190 |
| URDF/MJCF 建模 | P01 核心 | 30 复用 | 10 复用 | S01 MJCF 精读 | P01 |
| 实时 C++ 工程 | M11 核心 | 170 扩展 | (见足式 170) | -- | M11 |
| QP/NLP 求解器 | M05 核心 | 60 扩展 | 70 ProxDDP | S05 可微分 NLP | M05 |
| VLA/Foundation | D12 策略 | -- | 140/260 VLA | -- | D12 |
| 碰撞检测/SDF | M04 FCL/GPU | -- | -- | S01 接触模型 | M04 |
| 轨迹优化/TOPP | M08, M10 | 100 DDP 族 | 30 多模态 MPC | S05 可微分 MPC | M08 |
| 遥操作/数据采集 | D05-D08 | -- | 150 ALOHA/UMI | -- | D05 |
内部知识流向图¶
机械臂 M 系列 足式 30-70
+---------+ +----------+
|Pinocchio |<----共享---->|Pinocchio |
|IK/FK/碰撞| |浮动基座 |
|ros2_ctrl |<----共享---->|ros2_ctrl |
|BT.CPP |------------->| |
+----+-----+ +----+-----+
| |
F 系列力控 | +-------------------->| WBC/MPC
阻抗/导纳 | | |
+----v----+ +-----v----+
|F07 WBC |<----共享---->|90 WBC |
|F09 RL |<----共享---->|190 RL |
+----+----+ +-----+----+
| |
v v
+--------------------------------------+
| 复合 10-100 |
| 轮足(60-81) . 移动操作(120-85) |
| 四足臂(160-91) . 人形(220-95) |
| 前沿(260-100) |
+-------------------+------------------+
|
v
+--------------------------------------+
| 仿真 S01-S05 |
| MuJoCo 核心 -> GPU 生态 -> 可微仿真 |
| (全方向交叉能力层,可独立选修) |
+--------------------------------------+
7.2 高频交叉知识点详解¶
以下对交叉引用表中出现频率最高的五个共享知识点做简要说明,帮助读者理解"同一知识在不同方向中为何形态不同"。
Pinocchio(出现 3 个方向)¶
- 机械臂 M01: 固定基座 7-DOF, 重点 CRTP 访问者模式、标量参数化、FK/RNEA/ABA 全算法精读
- 足式 30: 浮动基座 18+ DOF, 重点 centroidal momentum、接触约束动力学、Delassus 算子
- 复合 10-72: 浮动基座+臂统一模型, 重点多体系统拼接、augmented Jacobian
三者共用同一库但访问不同 API 子集。建议从 M01(固定基座)入手建立直觉,再扩展到浮动基座。
WBC / TSID(出现 3 个方向)¶
- 机械臂 F07: 理论视角——TSID 框架的任务优先级 QP、mc_rtc FSM+QP DSL
- 足式 90: 工程视角——WBIC(MIT Cheetah) 全身逆运动学+逆动力学、实时 QP 求解
- 复合 170-88: 应用视角——qm_control 四足+臂 WBC、Deep WBC 学习增强
三者数学形式统一 (min ||J q'' - x''_des||^2 s.t. dynamics+contacts), 区别在约束数量与实时性要求。
RL + Isaac Lab(出现 4 个方向)¶
- 机械臂 F09: 动作空间为阻抗参数(K_d, D_d), 安全底层柔顺+高层策略探索
- 足式 190-65: 动作空间为关节位置偏移, 大规模并行训练(4096+ 环境), 部署 LibTorch/ONNX
- 复合 40/80: 全身 RL+轮足 Gym, 多模态奖励设计
- 仿真 S03/S3B: MuJoCo MJX/Playground/mjlab 作为 Isaac Lab 的替代 GPU 训练栈
核心差异在动作空间设计与安全约束。机械臂用阻抗参数保证接触安全,足式用位置偏移+域随机化保证鲁棒性。
ros2_control(出现 3 个方向)¶
- 机械臂 M12: SystemInterface 编写、JointTrajectoryController/ForwardCommandController、RL 部署 CRISP
- 足式 180: 腿足硬件栈、EtherCAT/CAN 总线通信、状态估计集成
- 复合 110: 轮足 SimToReal 硬件, 多执行器类型混合(轮+腿+臂)
三者共用 controller_manager RT 主循环(read->update->write), 区别在硬件接口复杂度与通信协议。
VLA / Foundation Models(出现 2 个方向)¶
- 机械臂 D12: 操作策略层——OpenVLA 微调、Diffusion Policy 训练、pi0 Flow Matching 部署
- 复合 140/260: 移动操作层——VLA 驱动移动+操作联合, 多机器人跨具身泛化
05 侧重"如何用 VLA 输出的动作驱动底层控制器", 06_具身智能侧重"VLA 模型本身的训练与理解"。
7.3 外部交叉(05_运动控制 与其他模块)¶
-> 03_SLAM:感知到规控闭环¶
| 交叉点 | 05 侧章节 | 03 侧知识 | 闭环关系 |
|---|---|---|---|
| Perceptive MPC | 足式 230 | 地形高程图/点云 | SLAM 提供局部地形 -> MPC 地形自适应步态 |
| 感知-操作统一闭环 | 复合 290 | 视觉 SLAM 定位 | SLAM 位姿 -> 底盘导航 -> 臂端操作 |
| 点云碰撞 | 机械臂 M04 | 深度点云/ESDF | nvblox ESDF -> cuRobo 实时避障规划 |
| 手眼标定 | 机械臂 M15 | 相机标定/外参 | eye-in-hand 标定依赖 SLAM 标定知识 |
| 腿足状态估计 | 足式 130 | Ch39 ESKF/MSCKF | InEKF 与 VIO 滤波方法同源 |
-> 04_移动规控:MPC/MPPI 方法论共享¶
| 交叉点 | 05 侧章节 | 04 侧知识 | 方法论映射 |
|---|---|---|---|
| MPPI 采样式 MPC | 足式 110, 210 | MPPI_07 | 同一框架在足式全身/移动路径跟踪的实例化 |
| 多机协作 | 复合 280 | Multi 多机规控 | 分布式 MPC 与编队的统一形式 |
| 优化建模 | 机械臂 M05+M08 | 轨迹优化基础 | C-space 优化 vs SE(2) 优化的共同数学 |
| DDP/iLQR | 足式 100 | DDP 理论 | DDP 族在不同运动形态下的实例化 |
| 轮式运动学 | 复合 60 | 移动规控运动学 | Pfaffian 约束/非完整系统共享数学基础 |
-> 01_数学:优化理论与几何基础¶
| 交叉点 | 05 侧章节 | 01 侧知识 | 依赖说明 |
|---|---|---|---|
| 凸优化/QP/NLP | M05, F07, 足式 60 | 凸优化理论 | QP 求解器(OSQP/ProxQP)的理论基础 |
| 李群/李代数 | M01, 足式 30 | 李群理论 | SE(3)/SO(3) integrate/difference |
| 最优控制 | 足式 100-55 | 变分法/Pontryagin | LQR -> iLQR -> DDP -> MPC 理论链 |
| 微分几何 | F12 可微仿真 | 流形/切空间 | 约束流形上的轨迹优化需切空间采样 |
| 自动微分 | S04 可微分仿真 | 链式法则/伴随 | 可微分物理引擎依赖链式法则和伴随方法 |
-> 06_具身智能:VLA/Foundation Models¶
| 交叉点 | 05 侧章节 | 06 侧知识 | 接口关系 |
|---|---|---|---|
| VLA 模型 | D12, 复合 140/260 | VLM/LLM 基础 | 05 提供动作执行层, 06 提供语义理解层 |
| Diffusion Policy | F09 | 扩散模型理论 | DDPM/Flow Matching 数学在 06, 05 负责控制集成 |
| 模仿学习管线 | D08, D11 | IL/BC 理论 | 05 建数据采集设施, 06 建策略训练管线 |
| 人形基础模型 | 复合 260 | 多模态大模型 | pi0/Gemini Robotics 横跨 05(控制) 与 06(智能) |
| 动作模仿 | 动作模仿理论 | 人形控制 | DeepMimic 到 ASE 是人形具身的基础技术 |
7.4 核心工具栈交叉速查¶
| 工具/库 | 机械臂 | 足式 | 复合 | 仿真 |
|---|---|---|---|---|
| Pinocchio | M01 核心 | 30 核心 | 10-72 | -- |
| Drake | M02 对比 | -- | -- | -- |
| MoveIt2 | M14 核心 | -- | 100, 130 | -- |
| ros2_control | M12 核心 | 180 | 110 | -- |
| BT.CPP | M13 核心 | -- | 100 | -- |
| OCS2 | -- | 110 核心 | 70, 130 | -- |
| Crocoddyl | -- | 100 | -- | -- |
| Aligator | -- | 100 | -- | -- |
| Isaac Lab | F09 | 190-65 | 40, 80 | S03 对比 |
| MuJoCo | P02 后端 | 250 | 200 | S01-S05 核心 |
| OMPL | M07 核心 | -- | -- | -- |
| cuRobo | M09 GPU | -- | -- | -- |
| libfranka | F04 核心 | -- | -- | -- |
| LeRobot | D11 | -- | 150 | -- |
| acados | -- | -- | -- | S05 可微 MPC |
| OSQP/ProxQP | M05 | 60 | -- | -- |
| HPIPM | -- | 110 | -- | -- |
第八部分:学习路径建议¶
8.1 按目标受众的推荐路径¶
| 受众 | 背景 | 推荐路径 | 预计时长 | 终点能力 |
|---|---|---|---|---|
| 工业机械臂工程师 | 有 ROS/MoveIt 经验 | 机械臂快速(13.5 周) + F 系列力控(28 周) + 仿真 S01-S02(4 周) | ~46 周 | MoveIt2 全栈+力控+MuJoCo 验证 |
| 四足 RL 研究者 | 有 RL 背景需补控制 | 足式快速(15 周) + 仿真全部(12 周) + MJLab 文档 + 动作模仿 | ~31 周 | MPC+WBC+RL 混合+GPU 训练全栈 |
| 移动操作方向博士 | 完成 v8 目标博士 | 机械臂快速(13.5 周) + 足式快速(15 周) + 复合全部(45 周) + 仿真(12 周) | ~86 周 | 复合全栈+博士研究方向 |
| 人形全身控制工程师 | 有机器人学基础 | 足式全部(37 周) + 复合 D3b(7 周) + 复合 220-100(10 周) + MJLab 文档 | ~57 周 | 人形 WBC+RL+sim-to-real+VLA |
| 仿真工具链工程师 | 有 GPU 编程基础 | 仿真全部(12 周) + MJLab 文档 + 机械臂 P01-M03(4 周) + 足式 30-60(6 周) | ~25 周 | MuJoCo/IsaacLab 全栈+基础机器人学 |
| 轮足/移动操作工程师 | 完成足式方向 | 复合 D1(7 周) + D2(5 周) | ~12 周 | 轮足 MPC + 底盘臂联合规控 |
| 全栈机器人博士 | 完成 v8 全部 | 机械臂(76 周) + 足式(37 周) + 复合(45 周) | 120+ 周 | 博士级全面规控能力 |
8.2 按已有基础的加速建议¶
| 已有基础 | 可跳过 | 重点增量 |
|---|---|---|
| 完成 v8 SLAM 主线 (Ch1-46) | 无需回补 | 直接进入任一方向 |
| 仅 Python + ROS2 | 需补 v8 最小前置 (10 章) | Ch3,6,11,14,17,19-20,29,31,35 |
| 已有 MoveIt1 经验 | P01 快速过 | M14 重点看 MoveIt2 + MTC 差异 |
| 已有力控经验 | F01-F03 快速过 | F06(变阻抗) + F09(学习型) 前沿增量 |
| 已有足式 RL 经验 | 190-65 快速过 | F07(WBC) + S04-05(可微仿真) 补理论 |
8.3 子方向间迁移路径¶
机械臂 M 系列 (24 周)
+---> + F 系列 (28 周) ---> 力控全栈 (52 周)
| +---> + 足式 WBC (90) ---> 人形力控
| +---> + D 系列 (24 周) ---> 双臂力控遥操作 (76 周)
+---> + 足式 (37 周) ---> + 复合 D2 ---> 移动操作全栈
+---> + 仿真 S 系列 (12 周) ---> 可微仿真能力 (36 周)
足式 30-70 (37 周)
+---> + 复合 D1 轮足 (60-81) ---> 轮足全栈 (44 周)
+---> + 复合 D3a 四足臂 (160-91) ---> 四足操作 (50 周)
+---> + 复合 D3b 人形 (220-95) ---> 人形控制 (44 周)
+---> + 前沿 260-100 ---> 博士级前沿能力
8.4 详细路径规划(五种典型受众)¶
路径 1: 工业机械臂工程师(目标 ~46 周)¶
背景: 有 ROS1/MoveIt1 经验, 需要升级到 ROS2 生态
阶段规划:
第 1 阶段 (13.5 周): 机械臂快速路径
P01(URDF) -> M01(Pinocchio) -> M03(IK) -> M04(碰撞)
-> M07(OMPL) -> M10(时间参数化) -> M12(ros2_control)
-> M14(MoveIt2/MTC) -> M15(综合实战)
出口: MoveIt2 pick-and-place 可运行
第 2 阶段 (8 周): 力控基础
F01(阻抗/导纳二分法) -> F02(操作空间动力学)
-> F04(libfranka 阻抗) -> F05(导纳控制/JTAC)
出口: 1kHz 阻抗控制闭环
第 3 阶段 (10 周): 高级力控
F06(变阻抗/无源性) -> F07(WBC/TSID/mc_rtc) -> F08(MPC+WBC 联合)
出口: 多任务力控编排
第 4 阶段 (10 周): 学习型力控
F09(RL+阻抗/Diffusion Policy) -> F10(Mini-ForceControl)
出口: 学习型力控系统
第 5 阶段 (4 周): 仿真验证
S01(MuJoCo 核心) -> S02(交互式控制)
出口: MuJoCo 力控仿真验证能力
可选扩展: 后续进入 D 系列双臂(+24 周)或仿真 S03-S05(+8 周)
路径 2: 四足 RL 研究者(目标 ~31 周)¶
背景: 有 PPO/SAC 训练经验, 需要补控制理论
阶段规划:
第 1 阶段 (6 周): 基础工具链
30(Pinocchio) -> 50(空间向量) -> 60(QP/NLP)
出口: Pinocchio+QP 工具栈可用
第 2 阶段 (6 周): 控制理论核心
70(简化模型) -> 90(WBC) -> 110(OCS2 MPC)
出口: MPC+WBC 理论理解
第 3 阶段 (3 周): RL+MPC 混合
190(RL 训练栈) -> 210(RL+MPC 混合)
出口: 理解 RL+MPC 混合光谱
第 4 阶段 (4 周): 仿真深度
S01(MuJoCo) -> S03(GPU 生态) -> S3B(mjlab)
出口: MuJoCo/IsaacLab 双栈能力
第 5 阶段 (5 周): 可微分仿真
S04(可微分理论) -> S05(可微分 MPC) + 动作模仿理论
出口: 可微分仿真+动作模仿前沿
第 6 阶段 (7 周): MJLab 工程手册
Part 1-7 全部 + sim2real
出口: GPU 训练+真机部署全栈
路径 3: 移动操作方向博士(目标 ~86 周)¶
背景: 完成 v8, 目标博士级复合机器人能力
阶段规划:
第 1 阶段 (13.5 周): 机械臂基础
机械臂快速路径全部
出口: MoveIt2 pick-and-place
第 2 阶段 (15 周): 足式基础
足式快速路径全部
出口: MPC+WBC+RL 基础
第 3 阶段 (8 周): 复合增量桥梁
增量课程 70-120 全部
出口: DDP/OCS2/实时C++/BT/GPU 规控 交叉技能
第 4 阶段 (5 周): 复合公共基础
Part VII 全部 (10-50)
出口: 复合机器人统一建模+RL+操作接口
第 5 阶段 (7 周): 轮足方向
Part VIII 全部 (60-110)
出口: 轮足 MPC+RL+SimToReal
第 6 阶段 (5 周): 移动操作方向
Part IX 全部 (120-150)
出口: Nav2+MoveIt2+VLA 移动操作
第 7 阶段 (8 周): 四足+臂方向
Part X-A 全部 (160-210)
出口: Loco-manipulation 三大架构
第 8 阶段 (7 周): 人形方向
Part X-B 全部 (220-250)
出口: 人形全身控制(经典+RL)
第 9 阶段 (5 周): 前沿与博士定位
Part XI 全部 (260-300)
出口: Research Proposal 初稿
第 10 阶段 (12 周): 仿真全栈
S01-S05 + MJLab 文档 + 动作模仿
出口: 可微分仿真+GPU 训练全栈
路径 4: 人形全身控制工程师(目标 ~57 周)¶
背景: 有机器人学基础, 目标人形控制
第 1 阶段 (37 周): 足式全部
10-260 全 24 章 + 2 序章
出口: 四足 MPC+WBC+RL+部署 全栈
第 2 阶段 (5 周): 复合公共基础
10-50 (Part VII)
出口: 浮基+臂统一动力学
第 3 阶段 (7 周): 人形方向
220-250 (Part X-B)
出口: 经典+RL 人形控制
第 4 阶段 (5 周): 前沿
260-300 + MJLab 文档
出口: GR00T-WBC + VLA + 博士定位
路径 5: 仿真工具链工程师(目标 ~25 周)¶
背景: 有 GPU/CUDA 编程基础, 目标仿真工具链
第 1 阶段 (4 周): 机器人学基础
P01(URDF) -> M01(Pinocchio) -> M03(IK)
出口: 基础机器人学
第 2 阶段 (6 周): 足式基础
30(Pinocchio) -> 50(空间向量) -> 60(QP/NLP) -> 70(简化模型)
出口: 浮动基座动力学
第 3 阶段 (12 周): 仿真全部
S00-S05 + S3B + S99
出口: MuJoCo/MJX/Warp/可微分 全栈
第 4 阶段 (3 周): 工程手册
MJLab Part 1-3 + Part 6-7
出口: GPU 训练+部署
8.5 通用建议¶
- 无论选哪条路径,P01(URDF) 和 M01/30(Pinocchio) 是必经之路,所有子方向都依赖它们
- RL 训练相关章节(190/S03/MJLab 文档) 建议在有 GPU 的条件下集中学习
- 调研报告和附录不计入学习时间,作为参考资料按需查阅
- 每个子方向的"综合实战"章节(M15/250/120/300)不应跳过,它们是检验学习效果的关键节点
第九部分:跨方向共享知识图谱¶
以下知识模块在多个子方向中重复出现,学习一次即可跨方向复用:
| 共享知识模块 | 首次出现 | 机械臂复用 | 足式复用 | 复合复用 | 仿真复用 | 复用策略 |
|---|---|---|---|---|---|---|
| Pinocchio 动力学 | M01/30 | M01 精读 | 30 浮动基座 | 10-72 耦合 | S01 对比 | Model/Data API 一致, 标量类型切换 |
| ros2_control | M12 | M12 硬件驱动 | 180 腿足 | 10 复合 | -- | 同一 hardware_interface 框架 |
| 阻抗/导纳控制 | F04 | F04-F05 经典 | 90 WBC 力控任务 | 180 Deep WBC | S02 MJPC 对比 | 从关节空间到笛卡尔到全身 |
| WBC/TSID | 90 | F07 浮动基座 | 90 核心 | 170-190 系列 | -- | 固定基座到浮动到多接触 |
| MPC (OCS2) | 100 | M08 轨迹优化 | 100-55 核心 | 70/130 多模态 | S05 可微 | 固定到浮动到接触切换到可微 |
| RL sim-to-real | 190 | F09 学习力控 | 190-65 核心 | 40/78/93 全身 | S03 GPU | PPO/SAC 训练到 C++ 推理到真机 |
| URDF/MJCF 建模 | P01 | P01 核心 | 30 复用 | 10 复用 | S01 MJCF | 同一机器人描述贯穿全栈 |
| 实时 C++ 工程 | M11 | M11 核心 | 170 扩展 | (足式 170) | -- | PREEMPT_RT/无堆分配/EtherCAT |
| QP/NLP 求解器 | M05 | M05 核心 | 60 扩展 | 70 ProxDDP | S05 可微 NLP | ProxQP/OSQP/Ipopt 跨场景复用 |
学习策略建议:先在一个子方向深入掌握共享模块,再在其他子方向快速迁移。例如先在机械臂 M01 精读 Pinocchio,到足式 30 只需补浮动基座扩展部分。
第十部分:总览统计¶
10.1 文件与行数统计¶
| 统计项 | 数值 |
|---|---|
| 05_运动控制 总文件数 | ~133 个 Markdown |
| 05_运动控制 总行数 | ~127,536 行 |
| 机械臂方向 (20_机械臂/) | 47 文件 |
| 足式方向 (10_足式/) | 27 文件 |
| 复合方向 (30_复合/) | 48 文件 |
| 仿真方向 (40_仿真/) | 10 文件 |
| 公共基础 (00_公共基础/) | 1 文件 (规划中) |
10.2 学时统计¶
| 子方向 | 核心章数 | 核心周数 | 前沿规划 | 总计 |
|---|---|---|---|---|
| 机械臂 | 37 | ~76 | 5 章 12-16 周 | ~88-92 |
| 足式 | 24+2 序章 | ~37 | -- | ~37 |
| 复合 | 36 | ~45 | -- | ~45 |
| 仿真 | 7+附录 | ~12 | -- | ~12 |
| 跨方向 | 2 (手册+理论) | -- | -- | 按需 |
| 合计 | ~104+5 | ~170 | 12-16 | ~182-186 |
10.3 子大纲引用索引¶
| 子方向 | 子大纲文件 | 行数 | 版本 |
|---|---|---|---|
| 足式 | 10_足式/足式方向_综合教学大纲.md |
1432 | v1.0 |
| 机械臂 | 20_机械臂/机械臂方向_综合教学大纲.md |
1555 | v1.2 (GOLD STANDARD) |
| 复合 | 无独立子大纲, 完整内容见本文 第四部分 | -- | -- |
| 仿真 | 无独立子大纲, 完整内容见本文 第五部分 | -- | -- |
10.4 编号快速索引¶
| 方向 | 编号范围 | 章数 | 文件目录 |
|---|---|---|---|
| 足式 | 10(序章)-260(博士导引) | 24+2 序章 | 10_足式/ |
| 机械臂 | P01-P02, M01-M15, F01-F10, D01-D10; F11-F12/D11-D12/M16 规划 | 37+5 规划 | 20_机械臂/ |
| 复合 | 增量(70-56) + 续篇(10-300) | 36 | 30_复合/ |
| 仿真 | S00-S05, S3B, S99 | 7+附录 | 40_仿真/ |
附录¶
附录 A:全方向关键项目总表¶
A.1 动力学与运动学库¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 语言 | 活跃度 |
|---|---|---|---|---|---|
| Pinocchio | stack-of-tasks/pinocchio | M01, 30, 10-72 | CRTP 动力学, FK/RNEA/ABA, 约束动力学 | C++ | 活跃 |
| Drake | RobotLocomotion/drake | M02 | MultibodyPlant |
C++ | 活跃 |
| KDL | orocos/orocos_kinematics_dynamics | M02 | 链式动力学 | C++ | 维护 |
| RBDL | rbdl/rbdl | M02 | Featherstone 算法 | C++ | 低活跃 |
| Bullet | bulletphysics/bullet3 | M02 | 物理引擎 | C++ | 维护 |
A.2 规划与控制库¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 语言 | 活跃度 |
|---|---|---|---|---|---|
| OMPL | ompl/ompl | M07 | 采样规划(RRT/PRM/BIT*) | C++ | 活跃 |
| cuRobo | NVIDIA/curobo | M09, 110 | GPU 并行 IK+碰撞+轨迹优化 | Python/CUDA | 活跃 |
| OCS2 | leggedrobotics/ocs2 | 110, 70, 130 | 双线程 MPC, Switched Systems | C++ | 维护模式 |
| Crocoddyl | loco-3d/crocoddyl | 100 | DDP/FDDP, ActionModel | C++ | 活跃 |
| Aligator | Simple-Robotics/aligator | 100 | ProxDDP+ParallelRiccati | C++ | 活跃 |
| TSID | stack-of-tasks/tsid | 90 | 任务优先级 QP | C++ | 活跃 |
| acados | acados/acados | S05 | 嵌入式 NMPC | C/Python | 活跃 |
| leap-c | freiburg/leap-c | S05 | 可微分 NMPC PyTorch 层 | Python | 活跃 |
A.3 ROS2 生态¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 活跃度 |
|---|---|---|---|---|
| MoveIt2 | ros-planning/moveit2 | M14 | 运动规划框架 | 活跃 |
| ros2_control | ros-controls/ros2_control | M12, 180 | 硬件抽象+控制器 | 活跃 |
| BT.CPP | BehaviorTree/BehaviorTree.CPP | M13, 100 | 行为树框架 | 活跃 |
| Nav2 | ros-planning/navigation2 | 120 | 移动导航 | 活跃 |
| MTC | ros-planning/moveit_task_constructor | M14 | 任务编排 | 活跃 |
A.4 仿真与 RL 训练¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 活跃度 |
|---|---|---|---|---|
| MuJoCo | google-deepmind/mujoco | S01-S05 | 物理引擎(CPU+MJX+Warp) | 活跃 |
| Menagerie | google-deepmind/mujoco_menagerie | S01 | 55-60 个 MJCF 模型 | 活跃 |
| MJPC | google-deepmind/mujoco_mpc | S02 | 交互式 MPC | 活跃 |
| mjctrl | kevinzakka/mjctrl | S02 | 教材级控制器 | 活跃 |
| Playground | google-deepmind/mujoco_playground | S03 | 端到端 GPU RL | 活跃 |
| mjlab | -- | S3B | IsaacLab API 兼容 MuJoCo 后端 | 活跃 |
| IsaacLab | NVIDIA/Isaac-Lab | 190, 40 | GPU 并行 RL | 活跃 |
| legged_gym | leggedrobotics/legged_gym | 190 | ETH 足式 RL | 维护 |
| rsl_rl | leggedrobotics/rsl_rl | 190 | ETH RL 训练框架 | 活跃 |
| Genesis | Genesis-Embodied-AI/Genesis | P02, S03 | 43M FPS 多物理 | 活跃 |
A.5 足式与复合控制¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 活跃度 |
|---|---|---|---|---|
| legged_control | qiayuanl/legged_control | 240 | OCS2 MPC+WBC 参考 | ROS2 迁移中 |
| qm_control | -- | 170 | 四足+臂 OCS2+WBC | 学术 |
| wheel-legged-gym | -- | 80 | 轮足 RL 训练 | 学术 |
| rl_sar | -- | 200 | RL C++ 部署框架 | 活跃 |
| unitree_rl_mjlab | Unitree | S3B | Go2/G1/H1 全线 RL | 活跃 |
A.6 VLA 与操作¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 活跃度 |
|---|---|---|---|---|
| LeRobot | huggingface/lerobot | D11, 150 | 统一数据格式+多策略 | 活跃 |
| openpi | -- | 140 | pi0 开源推理 | 活跃 |
| OpenVLA | openvla/openvla | D12 | 开源 VLA | 活跃 |
| Mobile ALOHA | -- | 150 | 双臂移动操作 | 学术 |
| AnyGrasp | -- | 50 | 6D 抓取检测 | 活跃 |
A.7 求解器¶
| 项目 | GitHub | 涉及章节 | 核心能力 | 活跃度 |
|---|---|---|---|---|
| OSQP | osqp/osqp | M05, 60 | 轻量 QP 求解器 | 活跃 |
| ProxQP | Simple-Robotics/proxsuite | M05, 60 | 高精度 QP | 活跃 |
| HPIPM | giaf/hpipm | 110 | 结构化稀疏 QP | 活跃 |
| Ipopt | coin-or/Ipopt | 60 | 大规模 NLP | 活跃 |
| CasADi | casadi/casadi | 60 | 符号 AD 框架 | 活跃 |
| Coal/hpp-fcl | coal-library/coal | M04, 30 | 碰撞检测 | 活跃 |
| CoACD | SarahWeiii/CoACD | P02 | 学习增强凸分解 | 活跃 |
A.8 前沿项目版本快照(截至 2026-05-14)¶
| 项目 | 版本/状态 | 备注 |
|---|---|---|
| Pinocchio | 3.9.x | 约束动力学 ProximalSolver 稳定 |
| Crocoddyl | 3.2 | API 大改版, 不向后兼容 2.x |
| Aligator | 活跃开发 | 推荐替代 OCS2 用于新项目 |
| OCS2 | v1.0 维护模式 | 已有项目可用; 新项目推荐 Aligator |
| Drake | v1.52 | 月度发布节奏 |
| MoveIt2 | Kilted | Python API 80%+ |
| IsaacLab | 3.0 | 多后端(Isaac Sim+MuJoCo+Newton) |
| MuJoCo | 3.7.0 (2026-04-14) | MJX 成熟, Warp 百万级并行 |
| MuJoCo Playground | v0.2.0 | RSS 2025 Outstanding Demo |
| Genesis | 0.4.5 | $105M 融资, 43M FPS GPU 仿真 |
| Newton | 1.0 (GTC 2026) | 475x 加速, IsaacLab 可选后端 |
| Holosoma | Amazon FAR | 4 种后端, FastSAC/FastTD3 |
| GR00T-WBC | NVIDIA Mar 2026 | G1 全身控制 Foundation Model |
| legged_control | ROS2 迁移中 | Qiayuan Liao, UC Berkeley |
| PREEMPT_RT | 6.x 主线化 | 不再需要打补丁 |
| LeRobot | v3+ | HuggingFace 统一数据格式 |
| pi0/pi0.5 | Physical Intelligence | 3B VLM + Flow Matching |
| SpatialVLA | RSS 2025 | 3D 自我中心 VLA |
| acados | 活跃开发 | 可微分 NMPC |
| leap-c | Freiburg Diehl 组 | acados 作为 PyTorch 可微层 |
附录 B:硬件平台速查¶
| 类别 | 平台 | 涉及章节 | 用途 |
|---|---|---|---|
| 机械臂 | Franka Panda | M11-M15, F01-F10 | 力控标杆, libfranka |
| UR5e | M12, M14 | 工业协作臂 | |
| LEAP Hand | M16 | 灵巧手 RL | |
| 四足 | Unitree Go2 | 足式全部, 复合 D3a | 教学/研究主力 |
| Unitree B2/B2-W | 复合 D1 轮足 | 轮足平台 | |
| ANYmal | 足式 240, 复合 | 工业级四足 | |
| 人形 | Unitree G1/H1 | 复合 D3b | 人形全身控制 |
| NVIDIA GR00T | 复合 230, 260 | Foundation Model | |
| 移动操作 | Mobile ALOHA | 复合 D2 | 双臂移动操作 |
| Go2+Z1 | 复合 D3a | 四足+臂 | |
| Stretch | 复合 D2 | 家用移动操作 | |
| 计算 | RTX 3060/4090 | RL 训练 | 仿真 GPU |
| A100 80GB | VLA 微调 | 大模型训练 | |
| Jetson Orin | 部署 | 机载推理 |
附录 C:论文路线图(核心 30+ 篇)¶
C.1 机械臂方向核心论文¶
| 年份 | 论文 | 关联章节 | 贡献 |
|---|---|---|---|
| 2008 | Featherstone "Rigid Body Dynamics Algorithms" | M01, 50 | 空间向量代数与 O(N) 算法 |
| 2017 | Corke "A Robotics Toolbox for MATLAB" | P01 | DH 参数与 URDF 映射参考 |
| 2019 | Carpentier et al. "The Pinocchio C++ library" | M01, 30 | CRTP 动力学库设计 |
| 2020 | Mastalli et al. "Crocoddyl" (ICRA) | 100 | 多接触轨迹优化 |
| 2023 | Sundaralingam et al. "cuRobo" | M09, 110 | GPU 并行运动规划 |
| 2024 | Tola et al. "Mastering URDF and Xacro" | P01 | ROS2 建模实践 |
| 2025 | Jallet et al. "ProxDDP" (T-RO) | 100 | 并行约束 DDP |
C.2 足式方向核心论文¶
| 年份 | 论文 | 关联章节 | 贡献 |
|---|---|---|---|
| 1986 | Raibert "Legged Robots That Balance" | 140 | 腿足控制奠基 |
| 2003 | Kajita et al. "Biped Walking Pattern Generation" (ICRA) | 70 | LIPM 预览控制 |
| 2012 | Koolen et al. "Capture Point" | 70 | DCM 理论 |
| 2013 | Orin et al. "Centroidal Momentum" | 70, 50 | 质心动量统一 |
| 2014 | Posa et al. "Contact-Implicit TO" | 150 | 接触隐式优化 |
| 2018 | Di Carlo et al. "MIT Cheetah 3" | 120 | 步态管理 |
| 2020 | Carius et al. "MPC-Net" | 210 | MPC 蒸馏策略网络 |
| 2020 | Hartley et al. "Contact-aided InEKF" | 130 | 腿足状态估计 |
| 2022 | Suh et al. "FoBG" (ICML Outstanding) | S04 | 可微分仿真偏差分析 |
| 2023 | Grandia et al. "Perceptive Locomotion" (T-RO) | 230 | 感知 MPC |
| 2023 | Zhuang et al. "ANYmal Parkour" (CoRL) | 160 | RL 极限运动 |
| 2024 | Hoeller et al. "ANYmal Parkour" (Science Robotics) | 160 | 感知驱动落脚 |
| 2024 | Chignoli et al. "Cafe-MPC/VWBC" | 210 | 值函数学 WBC 调参 |
| 2024 | Marcucci et al. "GCS" (Math. Programming) | 150 | 图凸集规划 |
C.3 复合方向核心论文¶
| 年份 | 论文 | 关联章节 | 贡献 |
|---|---|---|---|
| 2020 | Bjelonic et al. "轮足 NMPC" (RAL) | 60, 70 | 非完整约束 |
| 2021 | Bjelonic et al. "ANYmal-W" (Science Robotics) | 70 | 轮足混合 MPC |
| 2023 | Chi et al. "Diffusion Policy" (RSS) | 50, 200 | 扩散模型动作生成 |
| 2023 | Zhao et al. "ACT" (RSS) | 150 | CVAE+Transformer 模仿学习 |
| 2024 | Mobile ALOHA (Stanford) | 150 | 双臂移动操作开源 |
| 2024 | Cheng et al. "ExBody" | 230 | 外骨骼动捕人形控制 |
| 2025 | pi0.5 (Physical Intelligence) | 140, 260 | 开放世界 VLA |
| 2025 | SpatialVLA (RSS) | 140, 260 | 3D 自我中心 VLA |
| 2025 | FALCON | 250 | 力敏感人形双代理 |
| 2025 | SoFTA | 250 | F/T 传感器 RL 操作 |
| 2025 | RAMBO | 210 | 可微 QP+RL 残差 |
| 2025 | UMI on Legs (CMU) | 200 | Diffusion Policy 四足复用 |
| 2025 | Swiss-Mile (Nature) | 90 | 轮足商业化 |
| 2025 | ASAP | 240 | Delta-Action SimToReal |
| 2026 | GR00T-WBC (NVIDIA) | 230, 260 | G1 全身控制基础模型 |
C.4 仿真与可微分方向核心论文¶
| 年份 | 论文 | 关联章节 | 贡献 |
|---|---|---|---|
| 2012 | Todorov et al. "MuJoCo" | S01 | MuJoCo 物理引擎 |
| 2017 | Tobin et al. "Domain Randomization" | P02, 270 | sim-to-real DR 奠基 |
| 2018 | Amos et al. "Differentiable MPC" | S05 | KKT 隐函数可微 |
| 2018 | Peng et al. "DeepMimic" | 动作模仿 | MoCap+RL 物理控制 |
| 2021 | Peng et al. "AMP" | 动作模仿 | GAN 自动奖励 |
| 2022 | Peng et al. "ASE" | 动作模仿 | 技能嵌入 |
| 2022 | Suh et al. "FoBG" (ICML) | S04 | 可微仿真偏差 |
| 2023 | Luo et al. "PHC" | 动作模仿 | 永续全身控制 |
| 2024 | Song et al. "Differentiable Sim Quadruped" (CoRL) | S04 | 首个四足可微 sim2real |
| 2025 | Frey et al. "acados 可微 NMPC" | S05 | 工业级可微 MPC |
| 2025 | Romero et al. "AC-MPC" (T-RO) | S05 | 可微 MPC actor+PPO |
| 2025 | Schwarke et al. "ANYmal zero-shot" (CoRL) | S04 | 可微仿真 zero-shot 部署 |
| 2025 | MuJoCo Playground (RSS Outstanding Demo) | S03 | GPU RL 训练栈成熟 |
| 2025 | BeyondMimic | 动作模仿 | G1 真机全链路 |
| 2025 | SONIC | 动作模仿 | Motion Foundation Model |
C.5 动作模仿技术演进链¶
DeepMimic (Peng 2018) -- 手工奖励追踪
|
+-- 问题: 奖励设计繁琐, 新动作需重新调参
v
AMP (Peng 2021) -- GAN discriminator 替代手工奖励
|
+-- 问题: 每任务单独训练, 技能不可复用
v
ASE (Peng 2022) -- Encoder+Decoder+D 预训练, 高层微调
|
+-- 问题: 仍限仿真人形, 与真机差距大
v
PHC (Luo 2023) -- Hard Negative Mining + Progressive Training
|
+-- 问题: 人体运动如何迁移到机器人?
v
BeyondMimic (2025) -- Guided Diffusion + Motion Tracking, G1 真机
ExBody/ExBody2 (Cheng 2024) -- 上下半身解耦
SONIC (2025) -- 数百小时数据的 motion foundation model
附录 D:数学速查表¶
D.1 李群/李代数¶
| 符号 | 含义 | 出现章节 |
|---|---|---|
| \(SO(3)\) | 3D 旋转群 | M01, 30, 全部 |
| \(SE(3)\) | 3D 刚体变换群 | M01, 30, 50 |
| \(\log/\exp\) | 李群-李代数映射 | M01, 30 |
| \(\text{Ad}_T\) | 伴随表示 | 50 |
| Pluecker 坐标 | 6D 空间向量 | 50 |
D.2 动力学方程¶
| 方程 | 形式 | 适用 |
|---|---|---|
| 固定基座 | \(M(q)\ddot{q}+h(q,\dot{q})=\tau\) | 机械臂 |
| 浮动基座 | \(M(q)\ddot{q}+h=S^T\tau+J_c^T\lambda\) | 足式/复合 |
| Centroidal | \(\dot{h}=\sum_{i}(f_i \times r_i)\) | 足式/复合 |
D.3 优化标准形式¶
| 类型 | 标准形式 | 求解器 | 出现章节 |
|---|---|---|---|
| QP | \(\min \frac{1}{2}x^THx+g^Tx\), s.t. \(Ax\leq b, Cx=d\) | OSQP/ProxQP/HPIPM | M05, 60, 90 |
| NLP | \(\min f(x)\), s.t. \(c(x)=0, h(x)\leq 0\) | Ipopt/SNOPT | 60, 150 |
| OCP | \(\min \sum_{k} l_k(x_k,u_k) + l_N(x_N)\), s.t. \(x_{k+1}=f(x_k,u_k)\) | OCS2/Crocoddyl | 100, 110 |
D.4 RL 基础¶
| 概念 | 定义 | 出现章节 |
|---|---|---|
| MDP | \((S, A, P, R, \gamma)\) | 190, 40 |
| PPO | Clipped surrogate objective | 190, 40, 80 |
| GAE | \(\hat{A}_t = \sum_{l=0}(\gamma\lambda)^l \delta_{t+l}\) | 190 |
| Domain Randomization | 训练时随机化物理参数 | P02, 270, 190 |
附录 E:MPC/WBC/RL 混合架构选型指南¶
E.1 三种控制范式对比¶
| 维度 | 纯 MPC (OCS2/acados) | 纯 RL (IsaacLab/Playground) | MPC+RL 混合 |
|---|---|---|---|
| 可解释性 | 高 -- 每个状态有明确物理含义 | 低 -- 黑盒神经网络 | 中 -- MPC 层可解释 |
| 安全保证 | 强 -- 约束显式编码 | 弱 -- 仅训练分布内 | 中-强 -- MPC 约束兜底 |
| 感知能力 | 弱 -- 需要显式状态估计 | 强 -- 端到端从传感器学 | 中 -- RL 处理感知 |
| 调参成本 | 高 -- 代价权重/模型参数 | 中 -- 奖励工程 | 高 -- 两层都需要调 |
| 泛化能力 | 弱 -- 模型局限 | 中 -- Domain Randomization | 中 -- 结合两者优势 |
| 实时性 | 强 -- 确定性计算 | 弱 -- 推理延迟 | 中 -- 取决于架构 |
| 适用 DOF | 中 -- 18-25 DOF 可行 | 高 -- 30+ DOF 可行 | 中 -- 视 MPC 层复杂度 |
| 代表工作 | OCS2 legged_robot | legged_gym/rsl_rl | RAMBO/Cafe-MPC/MPC-Net |
E.2 选型决策树¶
任务需要硬安全约束? --是--> MPC 层必须存在
| |
| 是否需要感知?
| | |
| 是 否
| | |
| MPC+RL 混合 纯 MPC
| (RAMBO 式) (OCS2)
否
|
DOF > 25? --是--> 端到端 RL (Deep WBC 式)
|
否
|
需要感知? --是--> Teacher-Student RL + MPC safety filter
|
否
|
纯 MPC (OCS2/Crocoddyl) 即可
E.3 各架构代表实现¶
| 架构 | 代表工作 | MPC 层 | RL 层 | 接口 | 适用平台 |
|---|---|---|---|---|---|
| 纯 MPC+WBC | OCS2 legged_robot | CentroidalModel SQP-RTI | -- | -- | Go2/ANYmal |
| MPC-Net | Carius 2020 | OCS2 教师 | 模仿策略网络 | 状态->动作映射 | ANYmal |
| RAMBO | 2025 | MPC 参考轨迹+可微 QP | RL 残差修正 | 可微 QP 梯度回传 | 四足+臂 |
| Cafe-MPC/VWBC | Chignoli 2024 | OCS2 MPC | 值函数学 WBC 权重 | WBC 参数 | MIT Cheetah |
| 残差 RL | 多 | MPC 基础动作 | RL 学修正项 | 动作加法 | 通用 |
| Teacher-Student | ANYmal Parkour | 特权 teacher(状态) | student(传感器) | 蒸馏 | ANYmal |
| Deep WBC | 2024 | -- | 单一 19-DOF RL | -- | Go2+Z1 |
| FALCON | 2025 | -- | 双代理(loco+mani) | EE 目标接口 | G1 |
| AC-MPC | Romero 2025 | 可微 MPC actor | PPO critic | 可微 MPC 梯度 | 无人机 |
E.4 按方向推荐¶
| 方向 | 推荐架构 | 理由 |
|---|---|---|
| 四足行走 | OCS2 MPC+WBC | 成熟, 实时, 可部署 |
| 四足 parkour | Teacher-Student RL | 需要感知, 端到端 |
| 四足+臂操作 | RAMBO 或 qm_control MPC+WBC | 安全约束+灵活操作 |
| 人形行走 | 端到端 RL (GR00T-WBC) | 30+ DOF MPC 维度灾难 |
| 人形操作 | FALCON 双代理 | loco+mani 解耦 |
| 移动操作(底盘+臂) | Nav2+MoveIt2 或 VLA | 松耦合, 工业成熟 |
| 轮足 | Bjelonic NMPC 或 RL | 混合约束 |
附录 F:教学资源与学习材料¶
F.1 在线课程¶
| 课程 | 来源 | 关联章节 | 内容 |
|---|---|---|---|
| CMU 16-745 Optimal Control | CMU Zac Manchester | 100, S04 | DDP/TO/可微分仿真 |
| MIT 6.832 Underactuated Robotics | MIT Russ Tedrake | 70, 100, 150 | 欠驱动机器人控制 |
| GAMES 201 高级物理引擎 | 闫令琪(中文) | S01, S04 | 可微分物理仿真 |
| Stanford CS237B Manipulation | Stanford | M14, D12 | 操作与抓取 |
| ETH Robot Dynamics | ETH Hutter 组 | 50, 90, 110 | 足式控制全栈 |
F.2 官方教程与文档¶
| 资源 | URL | 关联章节 |
|---|---|---|
| MuJoCo Documentation | mujoco.readthedocs.io | S01-S05 |
| Pinocchio Documentation | stack-of-tasks.github.io/pinocchio | M01, 30 |
| MoveIt2 Tutorials | moveit.picknik.ai | M14 |
| ros2_control Docs | control.ros.org | M12, 180 |
| IsaacLab Documentation | isaac-sim.github.io/IsaacLab | 190, 40 |
| OCS2 Wiki | leggedrobotics.github.io/ocs2 | 110 |
| Crocoddyl Documentation | gepettoweb.laas.fr/doc/loco-3d/crocoddyl | 100 |
| MuJoCo Playground Colab | -- | S03 |
F.3 推荐教材¶
| 教材 | 作者 | 关联章节 | 层次 |
|---|---|---|---|
| Rigid Body Dynamics Algorithms | Featherstone 2008 | 50 | 经典必读 |
| Modern Robotics | Lynch & Park 2017 | M01-M03 | 入门 |
| Planning Algorithms | LaValle 2006 | M07, 60 | 规划理论 |
| Robotics: Modelling, Planning and Control | Siciliano et al. 2010 | F01-F05 | 力控经典 |
| Numerical Optimization | Nocedal & Wright 2006 | M05, 60 | 优化理论 |
| Reinforcement Learning: An Introduction | Sutton & Barto 2018 | 190, 40 | RL 基础 |
附录 G:难度与时间投入标记说明¶
| 标记 | 含义 | 典型周数 |
|---|---|---|
| *** | 核心必修, 不可跳过 | 1.5-2 周 |
| ** | 重要但可根据背景调整深度 | 1-1.5 周 |
| * | 选修/参考 | 按需 |
附录 H:硬件选型指南(详细版)¶
H.1 机械臂平台¶
| 平台 | DOF | 力控 | 价格(大约) | 推荐场景 | 涉及章节 |
|---|---|---|---|---|---|
| Franka Panda | 7 | 关节力矩传感器(标配) | ~$30k | 力控研究标杆 | M11-M15, F01-F10 |
| UR5e | 6 | 外置 F/T 传感器 | ~$35k | 工业协作 | M12, M14 |
| Kuka iiwa | 7 | 关节力矩传感器 | ~$100k+ | 高精度力控 | F04-F05 |
| xArm/达妙 | 6/7 | 视型号 | ~\(3k-\)10k | 教学/原型 | P01-M03 |
| LEAP Hand | 16 | 无 | ~$2k(DIY) | 灵巧手 RL | M16 |
| ALOHA 2 | 2x7 | 无 | ~$50k+ | 双臂遥操作 | D05-D10, 150 |
| GELLO | 6 | 无 | ~$5k | 低成本遥操作 | D08 |
H.2 四足平台¶
| 平台 | 关节数 | 重量 | 推荐场景 | 涉及章节 |
|---|---|---|---|---|
| Unitree Go2 | 12 | ~15kg | 教学/研究主力 | 足式全部, 复合 D3a |
| Unitree B2 | 12 | ~60kg | 户外/负载 | 足式进阶 |
| Unitree B2-W | 12+4轮 | ~70kg | 轮足研究 | 复合 D1 |
| ANYmal | 12 | ~50kg | 工业级 | 足式 240 |
| ANYmal-W | 12+4轮 | ~55kg | 工业级轮足 | 复合 D1 |
| MIT Mini Cheetah | 12 | ~9kg | 学术经典 | 足式 110 |
H.3 人形平台¶
| 平台 | DOF | 推荐场景 | 涉及章节 |
|---|---|---|---|
| Unitree G1 | 23-29 | 人形研究(主力) | 复合 D3b, 230 |
| Unitree H1 | 19 | 人形行走 | 复合 D3b, 230 |
| NVIDIA GR00T | -- | Foundation Model 验证 | 复合 230, 260 |
| Figure 02 | 30+ | 产业级人形 | 复合 260 |
| 1X NEO | 30+ | 家用人形 | 复合 260 |
H.4 计算平台¶
| 平台 | 用途 | GPU | 推荐场景 |
|---|---|---|---|
| 消费级 PC | 开发/仿真 | RTX 3060-4090 | RL 训练/MuJoCo |
| 工作站 | 大规模训练 | A100 80GB | VLA 微调/人形训练 |
| Jetson Orin | 机载推理 | 集成 GPU | 四足/人形部署 |
| Jetson Xavier | 轻量推理 | 集成 GPU | 机械臂部署 |
| Intel NUC | 边缘计算 | 无 | MPC 实时推理 |
H.5 传感器¶
| 类型 | 推荐 | 用途 | 涉及章节 |
|---|---|---|---|
| F/T 传感器 | ATI Mini45, OnRobot HEX | 力控/操作力测量 | F01-F10, 250 |
| IMU | Xsens MTi, VectorNav | 状态估计 | 130, 180 |
| 深度相机 | RealSense D435i/D455 | 感知/高程图 | 220, 160 |
| LiDAR | Livox Mid-360, Velodyne | SLAM/地形感知 | 230 |
| 触觉传感器 | GelSight Mini, DIGIT | 灵巧操作 | F11 |
| 编码器 | 关节内置 | 关节位置反馈 | 全部 |
附录 I:常见问题¶
Q: 我应该先学机械臂还是足式? A: 如果你的目标是工业部署(工厂自动化/协作机器人), 先学机械臂。如果你的目标是学术研究(足式控制/人形机器人), 可以直接进入足式。机械臂是更简单的入手点(固定基座, 数学更干净), 但两者可以并行。
Q: 我没有 GPU, 能学什么? A: 机械臂基础(P01-M10), 足式理论(30-140), 仿真 S01-S02 都不需要 GPU。纯 CPU MuJoCo 可以完成大部分控制算法验证。RL 训练需要 GPU, 但理论理解不需要。
Q: OCS2 还是 Aligator? A: 已有 OCS2 项目继续用 OCS2(v1.0 稳定可用); 新项目推荐 Aligator(ProxDDP, 更好的约束处理, C++20, 并行 Riccati)。本大纲仍教 OCS2(存量代码巨大, legged_control 基于 OCS2), 但在足式 100 和增量 70 中介绍 Aligator 作为替代。
Q: MuJoCo 还是 IsaacLab? A: 见本文附录 E 的选型决策树。简要: 需要可微分->MJX; 极大规模训练->IsaacLab; 快速原型->Playground; 逆动力学验证->MuJoCo; 复杂场景渲染->IsaacLab。2026 年趋势是多仿真器协同(IsaacLab 3.0 已支持 MuJoCo Warp 后端)。
Q: 我应该把所有子方向都学完吗? A: 不需要。选择一条路径(见第八部分), 深入一个方向后再横向扩展。全栈学完 170+ 周适合全职博士, 非全职学习者应聚焦一个方向。
Q: 复合方向为什么没有独立子大纲? A: 复合方向的内容已在本总大纲第四部分完整展开(36 章逐章详情), 暂无独立子大纲文件。足式和机械臂各有独立子大纲(足式 1432 行, 机械臂 1555 行)。
附录 J:跨方向控制算法对照表¶
本表帮助理解同一控制算法在不同子方向中的形态差异。
J.1 MPC 在各方向的形态¶
| 方向 | MPC 框架 | 模型 | 约束 | 求解 | 频率 | 决策变量 |
|---|---|---|---|---|---|---|
| 机械臂 | M08 轨迹优化 | 固定基座 7-DOF | 关节限位, 碰撞 | SQP/iLQR | ~50Hz | 关节轨迹 |
| 足式 | OCS2 110 | CentroidalModel 18+ DOF | 摩擦锥, 力限位 | SQP-RTI+HPIPM | ~100Hz | CoM+GRF+步态 |
| 复合-轮足 | Bjelonic NMPC 70 | Centroidal+轮关节 | 摩擦锥+滚动约束 | SQP-RTI | ~50-100Hz | CoM+GRF+轮转速 |
| 复合-移动操作 | OCS2 mm 130 | SE(2)+臂 n-DOF | EE tracking+碰撞 | SQP-RTI | ~50Hz | 底盘位姿+关节 |
| 复合-人形 | 220 LIPM/DCM | LIPM 6 维 | ZMP in 支撑多边形 | QP | ~100Hz | CoM+步序 |
| 仿真-可微 | S05 leap-c | 任意 | 可微约束 | IPM+IFT | ~50Hz | 学习 MPC 参数 |
| 仿真-MJPC | S02 | MuJoCo 模型 | 无显式约束 | iLQG/Sampling | ~实时 | 关节力矩/位置 |
J.2 WBC 在各方向的形态¶
| 方向 | WBC 框架 | 任务层级 | 约束 | 求解器 | 频率 |
|---|---|---|---|---|---|
| 机械臂 | F07 TSID | EE 位姿 > 姿态 > 能耗 | 关节限位, 碰撞 | ProxQP | ~500Hz |
| 足式 | 90 WBIC | 平衡 > 步态 > 姿态 | 摩擦锥, 力矩限位 | OSQP/ProxQP | ~500Hz-1kHz |
| 复合-四足臂 | 170 qm_control | 接触力 > 平衡 > EE > 姿态 | 摩擦锥+碰撞+力矩 | ProxQP | ~500Hz |
| 复合-人形 | 220 TSID | ZMP > 平衡 > EE > 姿态 | ZMP+力矩+自碰撞 | ProxQP | ~500Hz |
| 仿真-mink | S02 | EE 位姿 | 关节限位+碰撞 | OSQP | ~100Hz |
J.3 RL 在各方向的形态¶
| 方向 | 动作空间 | 观测空间 | 奖励设计 | 训练规模 | 部署方式 |
|---|---|---|---|---|---|
| 机械臂 F09 | 阻抗参数 K_d, D_d | 关节+力传感器 | 跟踪+力约束 | ~256 env | ros2_control |
| 足式 190 | 关节位置偏移 | IMU+关节 | 20+ 奖励项 | ~4096 env | ONNX/LibTorch |
| 复合-轮足 80 | 足关节+轮转速 | IMU+关节+轮编码 | 速度+能效+地形 | ~2048 env | ONNX |
| 复合-四足臂 180 | 19-DOF 关节 | 全身状态 | 行走+操作 | ~4096 env | ONNX |
| 复合-人形 230 | 30+ DOF 关节 | 全身+动捕 | 模仿+平衡+任务 | ~4096 env | ONNX/TRT |
| 仿真 S03 | GPU 并行 | GPU 观测 | Playground 默认 | ~百万级 | 原生 GPU |
J.4 sim-to-real 在各方向的形态¶
| 方向 | 主要方法 | DR 参数量 | SysID 难度 | 特有挑战 |
|---|---|---|---|---|
| 机械臂 | DR+SysId | ~20 | 低(固定基座) | 执行器延迟, 力传感器噪声 |
| 足式 | DR+Teacher-Student | ~50 | 中(浮动基座) | 地形未建模, 接触切换 |
| 复合-轮足 | DR+SysId+残差 RL | ~60 | 中 | 轮地摩擦, 轮胎弹性 |
| 复合-四足臂 | DR+Teacher-Student | ~70 | 中-高 | 臂反力矩, 负载变化 |
| 复合-人形 | DR+Delta-Action | ~100+ | 高(30+ DOF) | DR 参数空间爆炸 |
| 仿真 S04 | 可微分仿真 | N/A | 低(梯度直接) | 接触非光滑性 |
附录 K:目录结构与文件索引¶
K.1 完整目录树¶
05_运动控制/
|
+-- 运动控制方向_总大纲.md <- 本文件 (v2.0, ~2200 行)
|
+-- 00_公共基础/ <- 规划中, 跨方向共享知识地基
| +-- 公共基础层建设计划.md <- v0.1 草案
|
+-- 10_足式/ <- 26 文件, ~37 周
| +-- 足式方向_综合教学大纲.md <- v1.0, 1432 行
| +-- 10_序章上篇_全景与四分法.md
| +-- 20_序章下篇_前沿与学习路径.md
| +-- 30_Pinocchio深度精读.md
| +-- 40_CppAD与代码生成.md
| +-- 50_空间向量与浮动基座动力学.md
| +-- 60_QP_NLP建模.md
| +-- 70_腿足简化模型理论.md
| +-- 80_接触力学与约束优化.md
| +-- 90_WBC分层优化与TSID.md
| +-- 100_DDP家族与Crocoddyl.md
| +-- 110_OCS2完整栈与双线程MPC.md
| +-- 120_步态管理与接触序列.md
| +-- 130_腿足状态估计.md
| +-- 140_落脚点规划经典方法.md
| +-- 150_优化驱动落脚与接触规划.md
| +-- 160_感知驱动落脚规划.md
| +-- 170_实时CPP工程.md
| +-- 180_腿足硬件栈.md
| +-- 190_腿足RL训练栈.md
| +-- 200_RL的CPP部署.md
| +-- 210_RL与MPC混合范式.md
| +-- 220_腿足感知数据结构.md
| +-- 230_Perceptive_MPC.md
| +-- 240_legged_control精读.md
| +-- 250_Mini-Legged综合实战.md
| +-- 260_研究方向与博士导引.md
|
+-- 20_机械臂/ <- 47 文件, ~76 周 (前沿规划另 12-16 周)
| +-- 机械臂方向_综合教学大纲.md <- v1.2, 1555 行 (GOLD STANDARD)
| +-- P01-P02, M01-M15, F01-F10, D01-D10 系列章节
|
+-- 30_复合/ <- 48 文件, ~45 周
| +-- README.md <- 三层结构导读
| +-- 10_复合机器人全景.md ~ 300_研究方向与博士规划.md <- 30 教学章节
| +-- 动作模仿理论.md <- 跨方向理论伴读
| +-- 调研/ <- 10 份调研报告
| +-- 附录/ <- 6 份附录
|
+-- 40_仿真/ <- 10 文件, ~12 周
| +-- README.md <- 交叉能力层定位
| +-- MuJoCo与可微分仿真_规控交叉能力层教学大纲_v0.1_完整版_含mjlab实战.md
| +-- S01_MuJoCo核心引擎_教学版.md
| +-- S02_交互式控制_教学版.md
| +-- S03_GPU生态.md
| +-- S03B_mjlab深度实战.md
| +-- S04_可微分仿真理论.md
| +-- S05_可微分MPC.md
| +-- S99_附录.md
| +-- MJLab与IsaacLab_RL运控教学文档.md <- 跨方向工程手册
K.2 文件命名约定¶
| 前缀 | 含义 | 示例 |
|---|---|---|
| P0x | 跨方向共享基础 (Part 0) | P01_URDF, P02_sim-to-real |
| M0x | 机械臂核心 (M 系列) | M01_Pinocchio, M14_MoveIt2 |
| F0x | 力控与柔顺控制 (F 系列) | F04_阻抗控制, F09_学习型力控 |
| D0x | 双臂协调与遥操作 (D 系列) | D08_遥操作数据采集 |
| S0x | 仿真课程 (S 系列) | S01_MuJoCo, S04_可微分仿真 |
| 数字前缀(10-300) | 复合/足式章节编号 x 10 | 10_复合机器人全景, 90_WBC |
| Survey_ | 调研报告 | Survey_D1_轮足 |
| Deep_ | 深度调研 | Deep_D3b_人形 |
| Appendix_ | 附录 | Appendix_A_依赖图 |
版本历史¶
| 版本 | 日期 | 变更 |
|---|---|---|
| v1.0 | 2026-05-04 | 初始骨架版本; 四大子方向框架+快速路径+生态速览+交叉引用 |
| v2.0 | 2026-05-14 | 全面扩展至 ~2200 行: 增加总览路线图 ASCII 树; 三条快速路径; 合并计算与硬件需求表; 统一工业 vs 研究标记; 完善前置依赖矩阵; 更新生态速览至 2026-05-14; 00_公共基础 10 模块详细规划(含各模块详细说明); 10_足式 24 章核心知识点速览(按 7 阶段展开, 含里程碑+关键路径+并行支线); 20_机械臂 37 章核心知识点速览(按 4 篇展开, 含各 Part 章节详情); 30_复合完整逐章详情(增量 6 章+续篇 30 章, 含 7 个 Part 里程碑+技能矩阵+依赖图+调研/附录索引+各章核心知识点展开+2025-2026 前沿追踪); 40_仿真完整逐章详情(8 文件+MJLab 手册 7 Parts+动作模仿理论演进表+4 条学习路径+各章核心知识点展开+MuJoCo vs IsaacLab 选型对比表+选型决策树); 跨方向能力层定位(RL 动作空间对比表+MPC-RL 混合光谱图+sim-to-real 统一方法论 5 种方法); 交叉引用地图(内部 14 模块+高频交叉详解 5 点+外部 4 方向 20+ 交叉点+工具栈速查 20+ 工具); 学习路径建议(7 受众路径表+5 加速建议+迁移路径图+5 种受众详细阶段规划); 共享知识图谱(9 模块复用策略); 总览统计+编号索引+目录树; 附录 A-K(项目总表 60+ 项目/论文路线图 30+ 篇/数学速查/MPC-WBC-RL 架构选型/教学资源/硬件选型/控制算法对照表/常见问题/目录索引) |