教机器人通过障碍赛道,需要的不仅仅是一个行走策略。它必须感知周围环境、保持平衡,并在前方障碍物阻挡路径时调整动作。开发这些能力涉及多个阶段:创建资产和环境、使用物理仿真来建模机器人与环境的交互,以及在仿真中训练和评估策略。
NVIDIA RTX Spark 作为本地开发中心,支持 AI 辅助的规划与策略验证。NVIDIA Isaac Lab 提供在云端进行强化学习的机器人学习框架,Newton 负责建模物理行为,NVIDIA Omniverse 库通过 RTX 渲染生成仿真视觉观测。训练好的策略返回 RTX Spark,在 NVIDIA Isaac Sim 中进行本地评估。
本文以 Microduck 作为参考机器人,由 Hermes、NVIDIA Nemotron 和 Astra 协助完成规划与准备工作,逐步介绍整个工作流。你将了解如何创建仿真障碍赛道、训练导航策略,并在仿真中评估其行为——这一流程可以适配到你自己的机器人和任务上。这为物理部署奠定了基础,而在物理部署中,仿真与真实世界行为之间的差异还需要进一步细化。

1. 制定障碍赛道计划
工作流始于一段描述障碍赛道以及 Microduck 必须学习内容的提示词。在 RTX Spark 上,Hermes 和 NVIDIA Nemotron 3.5 Bolt 将该提示词转化为分步项目计划。这些指令确立了预期任务、可用资源、预期输出以及各智能体应遵循的阶段。可使用以下示例来组织你的提示词:
Build and test a simulated Microduck obstacle course with navigation and locomotion challenges. Make a photorealistic concept image and have Astra build and test it.
...
Workflow
Use Hermes and Nemotron 3.5 Bolt for preparation and Astra for asset creation and simulation.
...
1. Research and plan
Review official Microduck documentation and summarize capabilities, constraints, and unknowns. Define the course layout, obstacle dimensions, clearances, and intended route.
...
2. Generate the concept
Use a verified Microduck reference image to generate a photorealistic course concept. Check robot appearance, relative scale, and movement space; save prompts and provenance.
...
3. Identify assets
Extract unique reusable assets, group repeated instances, and select representative crops. Record dimensions, locations, and reference limitations; preserve original images.
...
4. Prepare the handoff
Package the plan, robot brief, concept, asset inventory, crops, and execution instructions. Verify required files, delegate to Astra, and wait for confirmed results.
...
5. Create and verify assets
Have Astra enhance references, model geometry in FreeCAD, and apply materials in Blender. Before simulation, verify every asset is completed or demonstrably blocked, with at least one usable model.
...
6. Assemble and test
Verify robot capabilities, assemble the course, and test navigation, challenges, and resets. Provide reproducible instructions and evidence; do not operate physical hardware.
...
本地规划包括简要审阅Microduck 的代码仓库和文档。该审阅确定机器人的能力、后续工作所需的资源,以及仍需核实的细节。由此产生的计划不仅涵盖资产创建,还概述了环境构建、机器人准备、仿真、训练、验证和部署。
赛道需要同时测试移动和感知能力。Microduck 必须学会绕过障碍物、穿过受限空间,同时保持平衡。请以这些要求来指导所提议的布局以及构建该布局所需的物体。
本地图像生成模型会生成赛道的概念图。随后 Hermes 和 Nemotron 分析该图像,并创建其中可见、可复用资产的清单。每个资产都会获得一个标识符、对其可见特征的描述,以及一张裁剪后的参考图。该清单会记录物体被截断或遮挡的位置,以便后续阶段能够区分可见细节与假设。

Hermes 将这些输出整合为一个交接包:整体项目计划、Microduck 研究与来源链接、概念图、资产清单、裁剪参考图,以及后续阶段的说明。随后它会自动将工作委派给 Astra。该交接包为 Astra 提供了继续工作所需的更广泛项目背景和资产规格。

2. 创建仿真资产
Astra 使用上一阶段的项目计划和参考图,创建赛道所需的 3D 资产。从较大的概念图中裁剪物体可能会得到尺寸小、分辨率低的参考图。在建模之前,Astra 使用云端图像编辑来分离物体,并生成更清晰、分辨率更高的图像。
Astra 将增强后的参考图与原始裁剪图进行对比,检查轮廓、比例、颜色和显著特征是否保持一致。增强后的图像提供了更清晰的建模指导,而原始图像则记录了概念图中可见的内容。无法从图像中确定的尺寸和隐藏表面会被记录为建模假设。
Astra 指导 FreeCAD 构建基础几何体和可编辑的 CAD 结构,然后使用 Blender 添加精细几何细节和材质。这两个应用程序都通过程序化执行在本地运行。生成的资产会保存为可编辑模型并导出为 USD 资产,同时附带预览图和输出检查以供审阅。

你也可以从 SimReady Central Library 获取资产,这是一个免费且无需门禁的库,包含 2,000 多个可直接用于仿真的 OpenUSD 资产。将它们与新生成的物体一起复用,可减少在 Isaac Sim 中组装障碍赛道所需的资产准备工作。生成的资产成为 Microduck 仿真训练环境的构建模块。

3. 组装仿真环境
Astra 在 Isaac Sim 中使用准备好的资产来组合障碍赛道。Isaac Sim 提供对 Omniverse 库渲染和传感器仿真能力的访问,而 Newton 负责建模 Microduck 的物理行为,包括移动和平衡。
机器人的关节结构和运动在仿真中通过连杆、关节和执行器来定义。这些元素建立了策略动作与仿真机器人之间的关系。连杆表示连接的刚体,关节约束它们的相对运动,执行器驱动运动。它们共同建模了机器人与环境的交互。AI 智能体可以帮助配置这些元素。
仿真传感器观测提供前方障碍物的信息。当机器人尝试行走时,仿真会捕捉其动作的后果:它是否保持姿态、在赛道中取得进展,还是绊倒和摔倒。
结果是一个完整的学习环境:一个可以行动的机器人、一个它可以交互的障碍赛道,以及一个可以从这些交互中生成反馈的仿真环境。强化学习(RL)利用这种反馈来训练机器人策略。

4. 训练感知和运动策略
在 Microduck 及其环境准备就绪后,NVIDIA Isaac Lab 提供了大规模训练和评估机器人策略的工具。这个开源框架可以同时运行多个 Microduck 仿真,生成经验,供 RL 算法用来改进其共享策略。
对于每个任务,你需要定义机器人观察到什么、它可以采取什么动作,以及用于指导学习的奖励。然后使用 Isaac Lab API 实现该任务。Newton 是一个开源、GPU 加速的物理引擎,它模拟 Microduck 如何响应这些动作而移动,并与地面及其环境交互。
早期的尝试可能包括不稳定的步伐、碰撞和摔倒。训练算法利用这些结果和任务的奖励来更新策略,使其朝着更成功的行为发展。每次尝试都遵循相同的仿真循环:
仿真观测 → 策略动作 → 仿真运动 → 更新后的观测

并行仿真同时从多次尝试中提供经验来训练策略。在此任务中,坡道和不平坦表面是障碍物:Microduck 必须穿越弯曲的坡道,同时保持平衡并避免摔倒。改变地形让策略获得调整其运动以适应不同地面条件的经验。
坡道和障碍物训练实验使用前几节中 Astra 生成的资产以及 Isaac Lab Microduck 示例环境 作为起点。在该环境中预训练的运动策略在 Isaac Lab 中接受额外训练,以穿越坡道和障碍物,使用头部相机深度和机器人状态观测。此适应运行在 NVIDIA RTX PRO 6000 Blackwell 工作站版 GPU 上使用了 4,096 个并行环境。

5. 在 RTX Spark 上验证训练好的策略
训练后,在本地 RTX Spark 上的 Isaac Sim 中验证训练好的策略。Microduck 接收仿真观测,预测动作,在环境中移动,并根据策略对更新后的场景做出响应。检查 Microduck 是否检测到障碍物、调整其运动并完成赛道。
此阶段将策略学习与策略评估分开。在训练期间,策略随着获得新经验而变化。在评估期间,你检查所选策略的行为,并确定它在哪里成功或需要进一步改进。
记录赛道完成情况、摔倒、碰撞以及进展停止的情况。这些测量结果与 rollout 视频配对,可以指导对环境或训练设置的迭代。

6. 为在物理机器人上部署策略做准备
一旦策略在仿真中表现可靠,下一步就是在机器人的板载计算机上运行它。本文涵盖了达到该目标之前的工作:创建资产、组装环境以及训练和评估策略。详细的硬件部署不在讨论范围内。
为仿真到现实的过渡做准备,首先要有一个反映真实机器人行为的仿真。Isaac Lab 支持 Better Actuator Models (BAM) 来建模伺服响应,包括命令延迟、机械背隙(传动系统中的少量间隙)以及电机从共享电池取电时的电压下降。将这些设置与 Microduck 的测量值匹配,有助于缩小仿真到现实的差距。
即使模型经过仔细校准,真实机器人上的传感器、地面接触和控制时序也可能不同。Isaac Lab 的 域随机化 在现实范围内变化物理参数和观测噪声,让策略练习处理这些差异。硬件测试随后显示需要进一步调整的地方,指导下一轮仿真、训练和验证。
图 10 显示了在 Isaac Lab 中训练的运动策略在物理 Microduck 上运行。

开始使用
此工作流将 AI 辅助规划、仿真、资产创建以及机器人策略训练与评估连接起来。它结合了本地资产与环境生成、云端规模的策略学习,以及在 RTX Spark 上的本地策略验证。AI 智能体将提示转化为计划,Isaac Lab 支持策略训练,Isaac Sim 支持部署前的评估。
进一步了解此工作流中使用的平台,并在其文档中尝试这些示例:
- 从 SimReady Central Library 获取无限制资产
- Omniverse 库,用于将仿真能力集成到应用中
- RTX Spark
- 在 RTX Spark 上安装 Isaac Sim——下载 Windows x86 二进制文件(可通过 Arm 上的 Windows x86 仿真 开箱即用)
- Isaac Sim,用于机器人和环境仿真
- Newton,用于物理仿真
- Isaac Lab,用于强化学习和模仿学习策略训练
- Isaac Lab 学习路径
- Microduck 示例 Isaac Lab 环境
- Hugging Face 上的 Microduck sim-to-real 教程
- 使用原生 BAM 舵机的 Microduck 行走演示
致谢
此工作流由 NVIDIA 各团队协作开发,包括:
Aaron Young、Antoine Richard、Chase Telegin、Gavriel State、Hammad Mazhar、Kelly Guo、Milad Rakhsha、Oyindamola Omotuyi、Pierre Fleau、Rishabh Chadha、Rogelio Olguin、Ruben D’Sa 和 Yenal Kal。
