unitreerobotics/unitree_rl_lab
unitreerobotics/unitree_rl_lab has 1,445 GitHub stars and 350 forks. GitHot measured +4 stars in 24 hours and +10 in 7 days. Last checked 2026-11-11 20:15 UTC. Last push 2026-05-25.
This is a repository for reinforcement learning implementation for Unitree robots, based on IsaacLab.
측정된 스타 증가
- in 24h
- +4
- in 7 days
- +10
- in 15 days
- 업데이트 지연
- in 1 month
- 업데이트 지연
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
README.md
OriginalUnitree RL Lab
Overview
This project provides a set of reinforcement learning environments for Unitree robots, built on top of IsaacLab.
Currently supports Unitree Go2, H1 and G1-29dof robots.
Installation
Install Isaac Lab by following the installation guide.
Install the Unitree RL IsaacLab standalone environments.
Clone or copy this repository separately from the Isaac Lab installation (i.e. outside the
IsaacLabdirectory):git clone https://github.com/unitreerobotics/unitree_rl_lab.gitUse a python interpreter that has Isaac Lab installed, install the library in editable mode using:
conda activate env_isaaclab ./unitree_rl_lab.sh -i # restart your shell to activate the environment changes.
Download unitree robot description files
Method 1: Using USD Files
Download unitree usd files from unitree_model, keeping folder structure
git clone https://huggingface.co/datasets/unitreerobotics/unitree_modelConfig
UNITREE_MODEL_DIRinsource/unitree_rl_lab/unitree_rl_lab/assets/robots/unitree.py.UNITREE_MODEL_DIR = "</home/user/projects/unitree_usd>"
Method 2: Using URDF Files [Recommended] Only for Isaacsim >= 5.0
- Download unitree robot urdf files from unitree_ros
git clone https://github.com/unitreerobotics/unitree_ros.git - Config
UNITREE_ROS_DIRinsource/unitree_rl_lab/unitree_rl_lab/assets/robots/unitree.py.UNITREE_ROS_DIR = "</home/user/projects/unitree_ros/unitree_ros>" - [Optional]: change robot_cfg.spawn if you want to use urdf files
Verify that the environments are correctly installed by:
Listing the available tasks:
./unitree_rl_lab.sh -l # This is a faster version than isaaclabRunning a task:
./unitree_rl_lab.sh -t --task Unitree-G1-29dof-Velocity # support for autocomplete task-name # same as python scripts/rsl_rl/train.py --headless --task Unitree-G1-29dof-VelocityInference with a trained agent:
./unitree_rl_lab.sh -p --task Unitree-G1-29dof-Velocity # support for autocomplete task-name # same as python scripts/rsl_rl/play.py --task Unitree-G1-29dof-Velocity
Deploy
After the model training is completed, we need to perform sim2sim on the trained strategy in Mujoco to test the performance of the model. Then deploy sim2real.
Setup
# Install dependencies
sudo apt install -y libyaml-cpp-dev libboost-all-dev libeigen3-dev libspdlog-dev libfmt-dev
# Install unitree_sdk2
git clone [email protected]:unitreerobotics/unitree_sdk2.git
cd unitree_sdk2
mkdir build && cd build
cmake .. -DBUILD_EXAMPLES=OFF # Install on the /usr/local directory
sudo make install
# Compile the robot_controller
cd unitree_rl_lab/deploy/robots/g1_29dof # or other robots
mkdir build && cd build
cmake .. && make
Sim2Sim
Installing the unitree_mujoco.
- Set the
robotat/simulate/config.yamlto g1 - Set
domain_idto 0 - Set
enable_elastic_handto 1 - Set
use_joystckto 1.
# start simulation
cd unitree_mujoco/simulate/build
./unitree_mujoco
# ./unitree_mujoco -i 0 -n eth0 -r g1 -s scene_29dof.xml # alternative
cd unitree_rl_lab/deploy/robots/g1_29dof/build
./g1_ctrl
# 1. press [L2 + Up] to set the robot to stand up
# 2. Click the mujoco window, and then press 8 to make the robot feet touch the ground.
# 3. Press [R1 + X] to run the policy.
# 4. Click the mujoco window, and then press 9 to disable the elastic band.
Sim2Real
You can use this program to control the robot directly, but make sure the on-borad control program has been closed.
./g1_ctrl --network eth0 # eth0 is the network interface name.
Acknowledgements
This repository is built upon the support and contributions of the following open-source projects. Special thanks to:
- IsaacLab: The foundation for training and running codes.
- mujoco: Providing powerful simulation functionalities.
- robot_lab: Referenced for project structure and parts of the implementation.
- whole_body_tracking: Versatile humanoid control framework for motion tracking.
관련 프로젝트 살펴보기
sindresorhus/awesome
😎 온갖 흥미로운 주제에 관한 Awesome 목록 [참고: 기존 풀 리퀘스트를 따라잡을 여유가 생길 때까지 풀 리퀘스트가 일시적으로 비활성화되어 있습니다]
535,855 스타EbookFoundation/free-programming-books
:books: 무료로 이용할 수 있는 프로그래밍 도서
401,488 스타nilbuild/developer-roadmap
개발자의 커리어 성장을 돕는 인터랙티브 로드맵, 가이드 및 기타 교육 콘텐츠.
371,906 스타vinta/awesome-python
“Python으로 X를 하고 싶은데, 어떤 도구를 써야 할까?”에 답하는 결정판 목록.
334,285 스타

