IsaacLab 从入门到精通(一) 环境配置和依赖安装

CSDN 2024-08-20 08:01:02 阅读 98

IsaacLab 从入门到精通(一) 环境配置和依赖安装

IsaacLab是NVIDIA提供的一个机器人强化学习仿真环境,它基于机器人仿真环境IsaacSim和机器人强化学习环境IsaacGym进行构建,它能够提供逼真的图像渲染和物理模拟,同时能够大幅提高强化学习的效率,因而成为近年来最受关注的强化学习和机器人仿真平台之一。

1.1 IsaacSim

1.1.1 环境需求

Isaac sim 系统需求

系统需求

Isaac sim 驱动需求

驱动需求

1.1.2 安装方式

(1) Pip 安装方式(推荐)

这种安装方式不需要安装启动器,十分简洁,对于仅需Robot开发的任务友好

建议先通过conda 创建虚拟环境python 3.10 再进行安装

https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_python.html

(2) Workstation 安装方式

这种方式会安装启动器,优点是独立打开isaac sim方便,可以装很多app

https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_workstation.html

(3) 其他方式

https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_container.html

1.2 IsaacLab

1.2.1 环境需求

推荐使用Conda虚拟环境安装,需要torch 2.2.2 和cu118(或者cu121)

https://isaac-sim.github.io/IsaacLab/source/setup/installation/pip_installation.html

然后git clone isaaclab

<code>git clone https://github.com/isaac-sim/IsaacLab.git

1.2.2 安装

按教程流程走就可以了,注意rsl-rl这个库后面会再独立安装一次,因此这里可以不选择装rsl-rl。

1.3 IsaacLab自定义任务模板

1.3.1 环境需求

需要安装Isaac sim及Isaac Lab,并且保证它们能够正常工作。

有了IsaacLab, 如何自定义自己的任务呢?目前在github上有一些独立扩展模板可以自定义自己的任务,截止至本文时间2024.7.10,主要有四个模板建议选择:

(1)官方的扩展模板(四足):

在orbit模板上进行了一定修改,但仍然依赖于IsaacLab的部分函数和接口。

https://github.com/isaac-sim/IsaacLabExtensionTemplate

(2)宇树的Go2模板(四足):

宇树给Go2平台提供的模板,比较简洁,仅适合四足场景使用

https://github.com/abizovnuralem/go2_omniverse

(3)Fan-ziqi同学的模板(四足):

Fan同学基于官方的模板进行的扩展,独立于IsaacLab,方便开发。

https://github.com/fan-ziqi/robot_lab

(4)本作者(NathanWu7, Qiwei Wu)提供的模板(机械臂和机械手)

参考了Fan同学和官方的模板,以及官方的manipulation代码,自制了一个扩展

https://github.com/NathanWu7/isaacLab.manipulation

由于作者主要的研究方向是Manipulation, 因此后续的教程将以这个模板为基础进行。

1.3.2 安装及部署IsaacLab.manipulation

找一个目录,激活conda环境,执行以下命令安装

git clone https://github.com/NathanWu7/isaacLab.manipulation

cd isaacLab.manipulation

conda activated isaaclab

pip install -e .

然后根据此环境的Readme.md文件,进行依赖的安装,重要部分:

cd isaacLab.manipulation/isaacLab/manipulation/algorithms #如果没有这个目录 创建目录

git clone https://github.com/leggedrobotics/rsl_rl.git

cd rsl_rl

python -m pip install -e .

这些指令会安装RSL-RL这个强化学习库,这个库对于并行的强化学习算法非常友好,对于新的算法可以直接在源码上进行补充,如果提示找不到rsl-rl,再在本库的根目录下运行一下安装命令以生成索引信息。在安装完成后,你应该能够执行以下示例:

python3 scripts/rsl_rl/train.py --task Template-Isaac-Reach-Kinova-v0--num_envs 4096 --headless #会报一些错 主要为urdf和usd文件的原因,不用管

python3 scripts/rsl_rl/train.py --task Template-Isaac-Reach-Franka-v0 --num_envs 4096 --headless

python3 scripts/rsl_rl/train.py --task Template-Isaac-Reach-UR10-v0 --num_envs 4096 --headless

python3 scripts/rsl_rl/train.py --task Template-Isaac-Repose-Cube-Allegro-v0 --num_envs 4096 --headless

其中,–task代表选择哪个任务,这些人物通过环境中的gym.register进行注册,可以ctrl+F找一下在哪里注册的,也可以修改注册时候的任务名字。

–headless模式不会显示图形界面,这在设置并行运行的环境(envs)非常多的时候很有用,如果你不小心开了,可以按键盘的v把图形界面关掉。如果你开的envs很少,也可以开着图形界面,一般在测试时建议开启图形界面(不加–headless)

如果一切正常,那么恭喜你环境已经配置完毕,可以开始自定义自己的任务了,下期教程将会开始逐步介绍如何自定义自己的任务。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。