宇树为G1维护了多个官方仿真仓库,但它们面向的任务不同。`unitree_mujoco`主要用于底层控制器和Sim-to-Real接口验证,`unitree_rl_gym`采用独立版NVIDIA Isaac Gym训练栈,`unitree_rl_lab`与`unitree_sim_isaaclab`则基于Isaac Lab。
应按第一个需要交付的产物来选,而不能只看哪个工具更新。本文限定为不接实机的起步流程;平台全景见机器人仿真器对比,迁移风险见Sim-to-Real失败原因。
三个名称对应不同工作流
官方MuJoCo仓库把Unitree SDK2消息与MuJoCo连接起来,并提供C++和Python实现。README将底层开发与控制器验证列为主要用途,G1和H1-2使用`unitree_hg` IDL系列。
`unitree_rl_gym`基于独立版NVIDIA Isaac Gym,而`unitree_rl_lab`基于Isaac Lab。把两者都称为Isaac Lab会掩盖运行环境、依赖版本、任务注册和部署步骤的差别。
| 官方路径 | 最适合的首要用途 | 重要边界 |
|---|---|---|
| unitree_mujoco | DDS与底层控制器验证 | 不是完整RL训练框架 |
| unitree_rl_gym | 复现既有Train→Play→Sim2Sim→Sim2Real流程 | 使用独立版Isaac Gym及固定版本依赖 |
| unitree_rl_lab | 当前Isaac Lab强化学习任务 | 遵循仓库任务名和兼容版本 |
| unitree_sim_isaaclab | 结合Unitree DDS的Isaac Lab仿真 | 附带权重仅供仿真测试,不可直接上机 |
控制器接口是重点时选MuJoCo
已经有底层控制器或SDK2消息循环,希望在不开启实机的情况下检查关节顺序、命令与观测时,先使用`unitree_mujoco`。官方README推荐C++版本,也提供Python示例。
不要把Go2默认示例不加修改地用于G1,应选择G1配置和消息类型。调试接口时使用回环地址和隔离的DDS域,避免仿真流量误达真实机器人。
复现独立版Isaac Gym流程时再选RL Gym
`unitree_rl_gym`支持G1,并记录Train、Play、Sim2Sim和Sim2Real步骤。它适合复现已经固定依赖的宇树运动控制流程或既有检查点。
安装说明采用独立版Isaac Gym、Python 3.8环境,以及指定版本的PyTorch与RSL-RL。不要混用当前Isaac Lab教程中的命令,也不要把由此产生的依赖冲突误判为G1模型问题。

新强化学习项目优先检查Isaac Lab路径
新项目可查看支持G1-29dof任务的`unitree_rl_lab`,以及提供G1、H1-2和DDS兼容仿真的`unitree_sim_isaaclab`。安装前重新确认仓库所要求的Isaac Lab版本。
选择一个仓库作为任务名、资产和启动命令的唯一基准。没有分支记录就混合不同仓库的URDF、USD、奖励和配置,会使结果难以复现。
| 首次运行检查 | 应记录内容 | 防止的问题 |
|---|---|---|
| 仓库状态 | URL、分支/标签、提交 | 上游变化导致无法复现 |
| 机器人资产 | G1版本与关节列表 | 自由度或关节顺序错误 |
| 中间件 | 接口、网卡、DDS域 | 收不到消息或误连实机 |
| 控制 | 模式、频率、增益、动作缩放 | 不稳定或饱和运动 |
| 评估 | 种子、地形、扰动、成功标准 | 只挑成功回放 |
最小起步流程从冒烟测试开始
克隆选定的官方仓库,固定提交,并完全按照该版本README创建环境。加载G1资产,用单一环境运行被动或站立示例,检查关节名与限制,再增加并行环境或开始训练。
分开训练与评估种子,并把环境配置和检查点一起保存。域随机化应在名义模型和接口正确之后使用。

Sim-to-Real是一项新的验证工作
上机前核对控制频率、状态延迟、单位、关节映射、力矩和位置限制、归一化统计、初始姿态以及通信丢失行为。初次测试应使用支撑、保守限制和触手可及的急停。
官方仓库支持G1只说明存在一条路径,并不保证任意策略在所有G1配置上安全有效。每个导出的检查点都应作为带版本的控制产物单独审查。
实机记录中应同时保存仓库提交、机器人型号与硬件配置、固件、控制模式、策略哈希和安全限值。出现异常时才能判断是模型变化、通信设置还是硬件状态导致,而不是把所有问题笼统归为Sim-to-Real差距。
常见问题
unitree_rl_gym是Isaac Lab项目吗?
不是。它基于独立版NVIDIA Isaac Gym;`unitree_rl_lab`和`unitree_sim_isaaclab`则基于Isaac Lab。
在哪个仓库测试G1低层控制器?
如果重点是SDK2、DDS消息与控制器验证,使用`unitree_mujoco`,同时选择G1配置并隔离DDS域。
仿真检查点可以直接部署到G1吗?
不可以。先验证机器人版本、关节映射、单位、时序、限制、归一化和安全行为,再进行分阶段低能量实机测试。
已核验的官方资料
最后核查:2026年8月7日