
用 Isaac Lab 训练 Microduck 并部署到真机

Microduck 是 Pollen Robotics 与 Hugging Face 最近发布的开源双足机器人,主打低成本。现在,开发者可以用 NVIDIA Isaac Lab 和 Newton 在仿真中训练它的行走策略,导成 ONNX,再部署到真实机器人上。这篇教程完整走了一遍这个流程,从安装环境到硬件部署都给了具体命令。
Isaac Lab 是 NVIDIA 的开源强化学习框架,借助 GPU 并行仿真来训练策略。Newton 提供执行器建模和域随机化,目的是让仿真中练出来的策略能迁移到真实硬件。教程里使用的任务已经由 Isaac Lab 提供,包括机器人模型、场景、观测、动作、奖励和域随机化。任务分为平坦地形和崎岖地形两种,后者加入了台阶、坡度和不平地面。行走策略接收 61 个观测值,输出 14 个关节位置。原文强调,导出和部署时必须保持观测顺序、归一化和动作缩放与训练一致。
训练方面,Isaac Lab 通过 GPU 并行环境加速。还支持多 GPU 分布式训练,教程举例用 16 块 GPU,在 rough terrain 且 backlash 开启的情况下,可以达到每秒 125 万步。为了让策略适应真实伺服,训练使用 Newton 的 MJWarp 求解器和 Better Actuator Models (BAM) 来建模伺服响应,并通过 backlash 预设将位置目标转成真实伺服力矩,其中包含固件控制器、电机电气限制、摩擦和延迟的建模。域随机化会改变每只 Microduck 的质量/质心、地面摩擦、关节惯性、编码器偏移、电池电压/压降、指令延迟,还会变化地形、施加推力,并让每个关节的 backlash 独立变化,以模拟不均匀磨损。原文给出了具体的训练命令,使用 rsl_rl 库,任务是 IsaacContrib-Velocity-Rough-MicroDuck 或 Flat 版本,4096 个环境,presets=backlash。
评估和导出方面,用 isaaclab play 命令配合 Newton 可视化器查看最新 checkpoint。RSL-RL 的 playback 流程会自动导出 TorchScript 和 ONNX 文件,部署到 Microduck 的是 policy.onnx。之后可以把模型传到 Hugging Face Hub,或在 Microduck Arena 中比较兼容性和排行榜。Arena 接受 61 个观测值、14 个动作值、最大 64 MiB 的模型。
部署到真实机器人时,先把 policy.onnx 复制到机器人,然后用 robotctl policy load 加载,用 robotctl monitor 监视状态,需要时用 policy reset 恢复默认策略。教程配图展示了部署后的策略在跌倒后能自己恢复站立并继续行走。
最后,教程还指出可以用 Isaac Lab 3.0 扩展更复杂的运动(如带课程的地形难度)、感知与导航(加入头戴相机深度和状态观测),以及灵巧操作(Kuka-Allegro 示例)。也可以用项目生成器创建自定义任务,并从 SimReady Central Library 添加资产。
这篇文章是官方教程,特点是每个步骤都有命令和配置,适合希望把仿真训练好的策略搬到真实机器人的开发者。需要注意,仿真训练本身需要 Linux 工作站和受支持的 NVIDIA GPU,部署则需要一台已经配置好的物理 Microduck 以及配对的手柄等控制接口。


