unitree_rl_gym 环境搭建完整指南:从 Conda 虚拟环境到 Isaac Gym、rsl_rl 与实物部署依赖的安装配置 unitree_rl_gym 环境搭建完整指南从 Conda 虚拟环境到 Isaac Gym、rsl_rl 与实物部署依赖的安装配置【免费下载链接】unitree_rl_gym项目地址: https://gitcode.com/GitHub_Trending/un/unitree_rl_gym本指南以仓库 doc/setup_zh.md 为骨架系统讲解在 Ubuntu Nvidia GPU 环境下搭建 Unitree 机器人强化学习训练与部署环境的全过程涵盖 MiniConda 虚拟环境创建、PyTorch / Isaac Gym / rsl_rl / unitree_rl_gym / unitree_sdk2py 五个组件的安装与验证。读完本文你将拥有一套可运行legged_gym/scripts/train.py训练、play.py回放以及 Mujoco / 实物部署的完整环境并理解每个依赖在仓库中的具体作用与源码层面的调用关系。一、环境要求与依赖全景在动手安装之前先明确本仓库对运行环境的最低要求与 doc/setup_zh.md 一致操作系统推荐 Ubuntu 18.04 或更高版本显卡Nvidia 显卡Isaac Gym 的 GPU 加速仿真与 PyTorch 的 CUDA 训练都强依赖 Nvidia 硬件驱动版本建议使用 525 或更高版本的 Nvidia 驱动以匹配下文安装的 PyTorch CUDA 12.1 工具链。从仓库根目录的 setup.py 可以确认unitree_rl_gym包本身声明的运行时依赖为install_requires[isaacgym, rsl-rl, matplotlib, numpy1.20, tensorboard, mujoco3.2.3, pyyaml]其中isaacgym与rsl-rl是训练链路的核心mujoco服务于 Sim2Sim 部署pyyaml用于解析部署配置文件见 deploy/deploy_real/config.pytensorboard用于训练过程可视化。因此本文按文档顺序先搭建虚拟环境再依次安装 PyTorch、Isaac Gym、rsl_rl、unitree_rl_gym最后安装可选的 unitree_sdk2py。二、创建 Conda 虚拟环境强烈建议在虚拟环境中运行训练或部署程序避免不同项目之间的依赖冲突。推荐使用 Conda 管理虚拟环境。2.1 安装 MiniConda已有 Conda 可跳过MiniConda 是 Conda 的轻量级发行版足够满足本项目的环境管理需求。以下命令下载官方安装脚本并静默安装到~/miniconda3mkdir -p ~/miniconda3 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3 rm ~/miniconda3/miniconda.sh安装完成后初始化 Conda使其在新建终端中自动可用~/miniconda3/bin/conda init --all source ~/.bashrc说明-b表示静默batch模式-u表示更新已存在的安装-p ~/miniconda3指定安装前缀路径。2.2 创建并激活环境创建名为unitree-rl、Python 版本为 3.8 的虚拟环境Isaac Gym 与 rsl_rl 对本仓库配置的兼容性以此版本为基准conda create -n unitree-rl python3.8激活环境conda activate unitree-rl激活后后续所有安装命令都应在此环境中执行。建议同时确认 Python 与 pip 指向的是环境内的解释器which python/python --version。三、安装 PyTorchCUDA 12.1 版本PyTorch 是本仓库强化学习训练与推理的神经网络框架训练时策略网络的前向/反向传播、rsl_rl中的 PPO 算法更新均运行在 PyTorch 张量之上可参见 legged_gym/scripts/train.py 中通过task_registry.make_alg_runner创建OnPolicyRunner并调用ppo_runner.learn(...)的训练入口。使用 Conda 安装与 CUDA 12.1 配套的 PyTorch 2.3.1 全家桶conda install pytorch2.3.1 torchvision0.18.1 torchaudio2.3.1 pytorch-cuda12.1 -c pytorch -c nvidia参数说明pytorch2.3.1PyTorch 主框架版本torchvision0.18.1/torchaudio2.3.1与 PyTorch 2.3.1 严格配套的视觉 / 音频扩展库pytorch-cuda12.1指定 CUDA 12.1 运行时需与 Nvidia 驱动525兼容-c pytorch -c nvidia指定从 PyTorch 官方 channel 与 Nvidia channel 拉取软件包。安装完成后可用以下命令快速验证 CUDA 可用性python -c import torch; print(torch.__version__, torch.cuda.is_available())输出2.3.1 True即表示 PyTorch 与 CUDA 均就绪。四、安装 Isaac GymIsaac Gym 是 Nvidia 提供的 GPU 加速刚体仿真与强化学习训练框架本仓库中所有 Gym 仿真环境legged_gym/envs/下的 go2、g1、h1、h1_2都构建在它之上。4.1 下载需要从 Nvidia 官网Isaac Gym 页面下载 Isaac Gym 的压缩包下载时注意选择与自身系统匹配的 Linux 版本解压后会得到包含python子目录的isaacgym目录。4.2 安装进入isaacgym/python目录以可编辑模式安装cd isaacgym/python pip install -e .4.3 验证安装运行 Isaac Gym 自带的示例程序若弹出窗口并显示 1080 个球下落则安装成功cd examples python 1080_balls_of_solitude.py该示例会创建 GPU 仿真场景并渲染物理引擎中 1080 个刚体球的自由落体效果是验证 Isaac Gym 是否能正常驱动显卡仿真的最直接手段。如有问题可参考解压目录下isaacgym/docs/index.html中的官方文档进行排查。与仓库的衔接训练脚本入口 legged_gym/scripts/train.py 在导入legged_gym.envs之前会先import isaacgym因此 Isaac Gym 必须成功安装否则训练与 Play 都无法启动。仿真参数如use_gpu_pipeline、物理引擎选择在 legged_gym/utils/helpers.py 的parse_sim_params中通过gymapi.SimParams初始化并从命令行参数与配置类中读取。五、安装 rsl_rl强化学习算法库rsl_rl是来自 leggedrobotics 的强化学习算法库本仓库的 PPO 训练器直接复用其OnPolicyRunner见 legged_gym/utils/task_registry.py其中make_alg_runner会创建OnPolicyRunner(env, train_cfg_dict, log_dir, deviceargs.rl_device)并执行断点续训逻辑。5.1 克隆仓库git clone https://github.com/leggedrobotics/rsl_rl.git5.2 切换分支切换到与本仓库匹配的v1.0.2分支cd rsl_rl git checkout v1.0.2版本匹配很重要本仓库基于 rsl_rl 1.0.x 的 API 编写切换分支可避免后续OnPolicyRunner等接口签名不兼容导致的运行错误。5.3 安装pip install -e .以可编辑模式安装后对 rsl_rl 的任何改动无需重装即可生效便于调试。六、安装 unitree_rl_gym本仓库主体6.1 下载git clone https://github.com/unitreerobotics/unitree_rl_gym.git6.2 安装进入仓库根目录并以可编辑模式安装cd unitree_rl_gym pip install -e .pip install -e .会执行根目录的 setup.py自动安装前面列出的全部依赖若环境中尚缺并把legged_gym、deploy等顶层包注册到当前 Python 环境从而支持后续直接运行python legged_gym/scripts/train.py这类以仓库根目录为工作目录的命令。安装完成后可验证环境就绪程度python -c import isaacgym, torch, rsl_rl; print(deps ok)七、安装 unitree_sdk2py可选实物部署专用unitree_sdk2py是宇树官方提供的 Python SDK用于与真实机器人通信订阅电机状态、下发控制指令。如果只需在仿真中训练与回放可以跳过本节只有计划将训练好的策略部署到物理机器人Sim2Real时才需要安装。7.1 下载git clone https://github.com/unitreerobotics/unitree_sdk2_python.git7.2 安装cd unitree_sdk2_python pip install -e .7.3 在仓库中的用途实物部署脚本 deploy/deploy_real/deploy_real.py 依赖该 SDK 完成与机器人的低层通信lowcmd / lowstate 话题配置项在 deploy/deploy_real/configs 下的 YAML 中声明例如lowcmd_topic、lowstate_topic、kps/kds、default_angles等由 deploy/deploy_real/config.py 统一解析。部署命令格式为python deploy/deploy_real/deploy_real.py {net_interface} {config_name}其中net_interface是连接机器人的网卡名如enp3s0config_name是deploy/deploy_real/configs/下的配置文件如g1.yaml、h1.yaml、h1_2.yaml。详细操作步骤零力矩模式、调试模式、遥控器按键流程等可参考 deploy/deploy_real/README.zh.md。八、安装完成后的验证与下一步按照上述步骤完成后你已经可以在unitree-rl虚拟环境中运行本仓库的核心程序。仓库 README_zh.md 给出的完整流程为Train → Play → Sim2Sim → Sim2Real下面简要说明验证安装是否真正可用的两条命令8.1 训练Trainpython legged_gym/scripts/train.py --taskxxx--task为必选参数可取值包括go2、g1、h1、h1_2分别对应 legged_gym/envs 下注册的仿真环境。任务注册机制位于 legged_gym/utils/task_registry.py训练默认将结果保存到logs/experiment_name/date_time_run_name/model_iteration.pt日志目录的拼接逻辑见 task_registry.py。常用命令行参数由 legged_gym/utils/helpers.py 的get_args()定义包括--headless不渲染图形界面、效率更高、--resume、--experiment_name、--run_name、--load_run、--checkpoint、--num_envs、--seed、--max_iterations、--rl_device等。8.2 回放Playpython legged_gym/scripts/play.py --taskxxxPlay 会加载指定实验的最后一个模型进行策略回放并导出 Actor 网络legged_gym/scripts/play.py 中EXPORT_POLICY True时会调用 helpers.py 的export_policy_as_jit将普通 MLP 策略导出为policy_1.pt、将 RNNLSTM策略导出为policy_lstm_1.pt保存到logs/{experiment_name}/exported/policies/供 Mujoco 仿真或 C 部署使用。8.3 常见问题排查思路Isaac Gym 无法启动 / 黑屏优先检查 Nvidia 驱动版本建议 525、nvidia-smi输出以及 Isaac Gym 解压目录下的docs/index.html官方文档训练时 CUDA 报错确认pytorch-cuda12.1与驱动匹配可用python -c import torch; print(torch.cuda.is_available())定位导入 rsl_rl 失败确认已git checkout v1.0.2并pip install -e .pip 安装 unitree_rl_gym 失败检查 setup.py 中声明的依赖是否被正确解析如numpy1.20等固定版本约束部署环节异常先确认已安装 unitree_sdk2py并核对部署 YAML 配置与机器人型号一致。总结本文从系统要求出发完整复现了 doc/setup_zh.md 的安装流程MiniConda 虚拟环境 → PyTorch 2.3.1CUDA 12.1→ Isaac Gym → rsl_rl v1.0.2 → unitree_rl_gym并补充了可选的 unitree_sdk2py 实物部署依赖。每个组件都可以在仓库源码中找到其实际调用位置例如训练入口 train.py、任务注册 task_registry.py、参数解析 helpers.py、部署配置解析 config.py。按顺序安装并逐项验证后即可开始 Unitree Go2 / G1 / H1 / H1_2 的强化学习训练、仿真回放与实物部署工作。若安装过程中遇到问题请优先核对各组件的版本匹配关系与依赖是否安装正确。【免费下载链接】unitree_rl_gym项目地址: https://gitcode.com/GitHub_Trending/un/unitree_rl_gym创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考