robot_lab 开源项目使用与启动教程
1. 项目介绍
robot_lab 是一个基于 IsaacLab 的 RL 扩展库,用于机器人开发。它允许开发者在隔离环境中开发,不受核心 Isaac Lab 仓库的影响。本项目适用于想要在机器人领域进行强化学习研究的开发者和研究人员。
2. 项目快速启动
安装 Isaac Lab
首先,按照 Isaac Lab 的官方安装指南安装 Isaac Lab。推荐使用 conda 安装,因为它可以简化从终端调用 Python 脚本的过程。
克隆 robot_lab 仓库
在 Isaac Lab 安装目录之外,单独克隆本仓库:
git clone https://github.com/fan-ziqi/robot_lab.git
安装 robot_lab 库
使用已安装 Isaac Lab 的 Python 解释器,安装本库:
python -m pip install -e source/robot_lab
验证安装
验证扩展是否正确安装,运行以下命令列出所有可用环境:
python scripts/tools/list_envs.py
设置 IDE(可选)
按照以下说明设置 IDE(例如 VSCode):
- 运行 VSCode 任务,按
Ctrl+Shift+P
,选择Tasks: Run Task
并运行下拉菜单中的setup_python_env
。 - 当运行此任务时,将提示你添加 Isaac Sim 安装路径的绝对路径。
- 如果一切运行正确,它应该在
.vscode
目录中创建一个.python.env
文件,其中包含所有由 Isaac Sim 和 Omniverse 提供的扩展的 Python 路径。
3. 应用案例和最佳实践
以下是一些使用 robot_lab 的应用案例和最佳实践:
-
案例: 基于强化学习控制 Unitree A1 四足机器人。
-
训练脚本:
python scripts/rsl_rl/base/train.py --task RobotLab-Isaac-Velocity-Rough-Unitree-A1-v0 --headless
-
播放脚本:
python scripts/rsl_rl/base/play.py --task RobotLab-Isaac-Velocity-Rough-Unitree-A1-v0
-
-
最佳实践: 在 Docker 容器中运行 robot_lab。
-
构建 Docker 容器:
cd docker docker compose --env-file .env.base --file docker-compose.yaml build robot-lab
-
运行 Docker 容器:
docker compose --env-file .env.base --file docker-compose.yaml up
-
4. 典型生态项目
目前,robot_lab 生态系统中的一些典型项目包括:
- rl_sar: 用于在 gazebo 或真实机器人上运行策略的项目。
- IsaacLab: robot_lab 依赖的核心 Isaac Lab 项目。
通过上述介绍和教程,您可以开始使用 robot_lab 进行机器人强化学习相关的开发和研究。