Pollen Robotics与Hugging Face发布开源双足机器人Microduck,可用Isaac Lab训练步态并部署到实机
Hugging Face博客发布英伟达参与的教程:在Isaac Lab 3.0与Newton中并行训练Microduck行走策略,导出ONNX后载入实机;策略需保持 61 维观测、14 维关节动作的接口一致。
AI解读:训练侧需要一台装有受支持NVIDIA GPU和驱动的Linux工作站,以及Git和uv;部署侧需要一台已配置好板载软件、可通过手柄等受支持控制接口操作的实体Microduck。
Isaac Lab已内置Microduck的机器人模型、场景、观测、动作、奖励与域随机化配置。平地任务之外还有包含楼梯、斜坡和崎岖地形的rough版本;策略输入 61 个观测值,输出 14 个关节位置。
教程称,在GPU上并行运行 4096 个环境、启用崎岖地形与backlash(齿轮间隙)预设时,可达每秒 125 万步;并可用 16 块GPU分布式训练。此类数字为教程方给出的配置说明,未附独立评测。
训练时随机化质量与质心、地面摩擦、关节惯量、编码器偏移、电池电压与压降、指令延迟,并按关节单独随机化齿轮间隙,以覆盖实机可能遇到的差异。
导出后可在Microduck Arena中与其他策略比较,该平台仅接受 61 维观测、14 维动作、最大 64 MiB的模型;也可上传至Hugging Face Hub,或用scp拷贝ONNX文件到实机,通过robotctl载入和重置策略。
Hugging Face博客发布一篇由多位作者合作的教程,介绍如何用NVIDIA Isaac Lab 3.0和Newton训练Microduck的行走策略,将其导出为ONNX文件,再载入实体机器人运行。Microduck是Pollen Robotics与Hugging Face发布的开源双足机器人。
教程说明,行走策略先在仿真中训练,但需应对真实舵机的摩擦、延迟和机械间隙。发布方给出的完整流程为:仿真训练、在Newton可视化器中评估、导出ONNX、部署到实机,或提交到Microduck Arena比较。
训练与部署的前置条件
仿真与训练需要一台装有受支持NVIDIA GPU和驱动的Linux工作站,并安装Git和uv。安装方式为克隆Isaac Lab的develop分支后执行uv sync,再用isaaclab list_envs --keyword MicroDuck --show_presets确认Microduck任务与预设可用。
部署侧需要一台已配置好、板载机器人软件正常运行的实体Microduck,以及手柄等受支持的控制接口。
- 仿真训练:Linux工作站、受支持的NVIDIA GPU与驱动
- 工具依赖:Git、uv
- 实机部署:已完成配置的Microduck与受支持控制接口(如配对手柄)
环境与策略接口
Isaac Lab已提供Microduck的机器人模型、场景、观测、动作、奖励与域随机化配置。教程建议从平地行走任务起步,rough变体则加入楼梯、斜坡与不平地形。
策略接收 61 个观测值,输出 14 个关节位置。教程强调,导出和部署时要与训练时保持观测顺序、归一化和动作缩放一致。
- 观测维度:61
- 动作维度:14 个关节位置
- 地形版本:平地与崎岖地形
训练配置与随机化范围
训练示例使用rsl_rl库、4096 个并行环境,并启用backlash预设。教程称,在崎岖地形并启用backlash的配置下可达每秒约 125 万步,也可跨GPU分布式训练,例如使用 16 块GPU。上述性能数字出自教程方。
为便于从仿真迁移到实机,训练中对每台“鸭子”随机化质量与质心、地面摩擦、关节惯量、编码器偏移、电池电压与压降、指令延迟,并变化地形、施加推力,同时按关节独立随机化齿轮间隙,以模拟不均匀磨损。教程用Newton的MJWarp求解器和基于Newton的BAM执行器模型来建模舵机响应。
- 并行环境数:4096
- 教程给出的峰值:崎岖地形加backlash下最高每秒 125 万步
- 随机化项:质量与质心、地面摩擦、关节惯量、编码器偏移、电池电压与压降、指令延迟、地形、推力、逐关节齿轮间隙
导出、分享与实机载入
RSL-RL回放工作流会自动导出TorchScript(policy.pt)和ONNX(policy.onnx),Microduck板载运行时加载的是ONNX文件。教程用Newton可视化器运行最新检查点进行检查。
Microduck Arena是Hugging Face Space上的比较与排行榜平台,接受 61 个观测值、14 个动作值、最大 64 MiB的模型。部署时用scp把policy.onnx拷贝到机器人,通过ssh执行robotctl policy list查看现有策略,再用robotctl policy load载入;如需恢复,可执行robotctl policy reset walk。教程附有实机被推倒后重新站稳并继续行走的演示。
- 导出文件:policy.pt与policy.onnx
- Arena模型限制:61 观测、14 动作、最大 64 MiB
- 实机操作:scp拷贝、robotctl policy load、robotctl policy reset walk
- 演示范围:单次实机行走与被推倒后的恢复