5. 模型驱动的步态控制
对应 CS123 · Lecture 5 "Model-based Gait Control"
上一章 Pupper 已经能站起来。这一章我们让它走起来,暂时不动强化学习,只用手写的步态生成器。这样我们能清楚知道机器人为什么会走成这样,也能为第 6 章的 RL 策略提供一个对比基线。
本章目标
- 理解支撑相(stance)与摆动相(swing)的划分
- 能写一个最简单的 trot 步态发生器(四条腿两两同相)
- 能用 IK 把"末端足端轨迹"转成"关节角序列"
- 能让 Pupper 在仿真里走出 1 米直线
前置阅读
- 第 3 章 逆运动学
- 第 4 章 四足 URDF 装配
章节大纲
- 四足常见步态:walk / trot / bound / gallop
- 步态 = 各腿"抬/落"节奏图
- 足端轨迹:在世界坐标里画一条摆动曲线
- 把足端轨迹经 IK 转成关节角 → 喂 PD
- 中心模式发生器(CPG)简述(可选延伸)
- 实验 1:原地踏步
- 实验 2:按给定速度往前走
- 常见失败模式:滑步、踩空、对角腿不同步
组队学习任务
-
gait_trot.py:开环 trot,能按参数调步频、步长、步高 - 在仿真里录一段 10 秒"向前走" demo
- 把它跟第 6 章训练出的 RL 策略做并列视频对比(写 100 字观察)
参考资料
- CS123 Lecture 5: Model-based Gait Control
- Raibert, "Legged Robots That Balance"