Standalone RSL-RL bridge package for OrcaLab and OrcaGym.
Project description
OrcaLocomotion
OrcaLocomotion 是 OrcaLab 的训练扩展组件,支持训练 Unitree 机器人的运动控制策略, 并可在 OrcaLab 中播放训练好的策略。
| 仿真 | 实机 |
|---|---|
支持的任务
| 任务 | 训练 | OrcaLab 回放 |
|---|---|---|
Unitree-Go2-Flat |
Unitree/mjlab | orca_rl.run_play |
Unitree-Go2-Rough |
Unitree/mjlab | orca_rl.run_play |
Unitree-G1-Flat |
Unitree/mjlab | orca_rl.run_play |
安装
推荐使用 Ubuntu 22.04 + NVIDIA GPU 进行训练。仅在 OrcaLab 中回放策略时需要显示器。
git clone https://github.com/openverse-orca/OrcaLocomotion.git
# 编译 C++ 扩展所需的系统依赖
sudo apt install -y libyaml-cpp-dev libboost-all-dev libeigen3-dev libspdlog-dev libfmt-dev
# 创建并激活 OrcaLab Python 3.12 环境
conda create -n orcalab python=3.12
conda activate orcalab
# 进入刚下载的 OrcaLocomotion 仓库根目录
cd OrcaLocomotion
pip install --no-deps mjlab==1.2.0
pip install -r requirements.txt
OrcaLab 前置条件: 回放需要在 OrcaLab 中订阅
unitree_robots资产。 本项目使用的 GO2 和 G1 机器人预制件均来自该资产包。
训练
使用基于 mjlab 项目进行训练。以下命令以无头模式运行 mjlab 训练器,
checkpoint 写入 mjlab_rl/logs/rsl_rl/。
cd mjlab_rl
python scripts/train.py Unitree-Go2-Flat --env.scene.num-envs=4096
python scripts/train.py Unitree-Go2-Rough --env.scene.num-envs=4096
python scripts/train.py Unitree-G1-Flat --env.scene.num-envs=4096
训练产出的 checkpoint 可用于 OrcaLocomotion 回放。
回放
启动 OrcaLab 后,依次选择 运行 -> 开始模拟 -> 无仿真程序启动 -> 启动。 然后在仓库根目录运行回放命令:
python -m orca_rl.run_play --config Unitree-Go2-Flat --checkpoint <checkpoint.pt>
python -m orca_rl.run_play --config Unitree-Go2-Rough --checkpoint <checkpoint.pt>
python -m orca_rl.run_play --config Unitree-G1-Flat --checkpoint <checkpoint.pt>
使用 Unitree/mjlab 训练步骤产出的 checkpoint。
注意:
Unitree-Go2-Rough需要在 OrcaLab 中订阅地形资产。如需导入额外资产, 请 提交 issue。
资产
Unitree-Go2-Rough 在 OrcaLab scene 回放时会默认发布这个粗糙地形可视化资产:
assets/e071469a36d3c8aa/test_terrain/prefabs/terrain_usda
也可以使用另一个 5x5 地形资产:
assets/e071469a36d3c8aa/terrain_5x5/prefabs/terrain_usda
必须订阅地形渲染资产: 在 Orca 云端资产管理平台订阅
OrcaPrimitiveTerrainXml和MjlabRough5x5xml_20260527。 它们是两个地形高度图对应的渲染资产。
如果导入了自己的 OrcaLab 地形资产,需要在 python -m orca_rl.run_play 中通过
--rough-terrain-asset <orca_asset_path> 改成新的 spawnable asset 路径;必要时也可以用
--rough-terrain-actor <actor_name> 改发布到 scene 里的 actor 名称。
仓库中同时保留了对应的 rough 地形 XML 源文件,便于检查或重新导入资产:
| 资产 | 用途 |
|---|---|
assets/terrain/mjlab_rough_5x5_xml/terrain.xml |
Go2 粗糙地形回放 |
致谢
训练任务和机器人资产参考 unitree_rl_mjlab 项目构建,并使用 mujocolab/mjlab 作为训练后端。 用户可自行选择基于 mjlab 的第三方扩展项目。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orca_locomotion-0.1.0.tar.gz.
File metadata
- Download URL: orca_locomotion-0.1.0.tar.gz
- Upload date:
- Size: 88.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1cb49e55ea55fade5cd919b337fbbf401ee222fbdcfbc2339114153339f4c519
|
|
| MD5 |
7c9fa578d710ca3c3b6f248bb654e1d6
|
|
| BLAKE2b-256 |
f2bcd092a2b32b4fb3add579bb85c35cc41635ef44ed510840906a93bc9056bf
|
File details
Details for the file orca_locomotion-0.1.0-py3-none-any.whl.
File metadata
- Download URL: orca_locomotion-0.1.0-py3-none-any.whl
- Upload date:
- Size: 88.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb8430ce115cdb6fb779a8b596adfb42b6bb48ec06eeefa14f27df9281ab04db
|
|
| MD5 |
9c0e266a6089c4f671a6aa2caa84a04f
|
|
| BLAKE2b-256 |
0a28cb032faf691d01c89de5ab34e59609ad46da7750116b791fa1e87ed379ac
|