Ubuntu20.04从零安装IsaacSim/IsaacLab
- 电脑硬件配置:
- 安装Isaac sim
- 方案一:pip安装
- 方案二:预构建二进制文件安装
- 1、安装ominiverse
- 2、在ominiverse中安装isaac sim,下载最新的4.2版本
- 安装Isaac Lab
- 1、IsaacLab环境克隆
- 2、创建conda环境
- 3、创建Isaac Sim符号链接
- 3、虚拟环境安装Isaac SIm依赖
- 4、安装IsaacLab扩展
- 5、检查isaaclab是否安装成功
- 6、设置自动source setup_isaac.sh
电脑硬件配置:
- 显卡:RTX 4090
- 系统:Ubuntu 20.04
- 驱动:535.183.06
安装Isaac sim
方案一:pip安装
由于使用 pip 安装 Isaac Sim 需要 GLIBC 2.34+ 版本兼容性。要检查系统上的 GLIBC 版本,请使用命令 ldd --version 。
这可能会在某些Linux发行版上引起兼容性问题。例如,Ubuntu 20.04 LTS 默认使用 GLIBC 2.31。如果遇到兼容性问题,建议采用 Isaac Sim Binaries Installation 的安装方法。
glibc升级很容易将系统搞崩,而且很有可能会出其他问题,20.04的系统不建议使用这种方式。
由于电脑配置了很多东西,尝试网上的方法(sudo apt install libc6
),失败数次后选择放弃,但探索出了安装失败回退到老版本的方法,供大家参考,不是22.04以上的系统不建议使用,下面将分享第二种方法。
方案二:预构建二进制文件安装
1、安装ominiverse
1)下载AppImage文件
2)安装ominiverse launcher
复制安装包到自己想放置的文件夹中,运行下面的指令开始安装
sudo chmod +x omniverse-launcher-linux.AppImage
./omniverse-launcher-linux.AppImage
3)运行登入NVIDIA账户按照引导设置后开始使用
由于ominiverse是运行的底座,因此sim需要在这上面进行安装构建。
2、在ominiverse中安装isaac sim,下载最新的4.2版本
上面这种下载方式特别慢,可以从网盘下载,放到指定路径(~/.local/share/ov/pkg/
),将zip文件重命名为Isaac Sim.zip
,这里命名千万注意不能出错,之后从EXCHANGE/交易所
下点击安装即可从下载好的包进行安装,避免长时间的下载。
安装完成即可从LIBRARY -> APPS -> Isaac Sim
,点击LAUNCH启动
看到这个界面,即安装成功。
之后还需要使用conda创建环境来替代isaac sim原来的环境,并安装相关依赖,这部分可以和isaaclab的放到一块。
如果之前用过其他版本,在安装后第一次需要运行以下命令,以删除所有旧用户数据和缓存变量
${ISAACSIM_PATH}/isaac-sim.sh --reset-user
安装Isaac Lab
1、IsaacLab环境克隆
从github克隆IsaacLab环境到指定目录,可以放置在isaac sim的同级目录下
cd ~/.local/share/ov/pkg/
git clone https://github.com/isaac-sim/IsaacLab.git
2、创建conda环境
这一步骤只在创建虚拟环境时使用一次,之后便不再使用。
cd IsaacLab
# Option 1: Default name for conda environment is 'isaaclab'
./isaaclab.sh --conda # or "./isaaclab.sh -c"
# Option 2: Custom name for conda environment
./isaaclab.sh --conda my_env # or "./isaaclab.sh -c my_env"
之后要使用前必须先进入所创建的这个虚拟环境后再用python命令
conda activate isaaclab # or "conda activate my_env"
一旦进入虚拟环境,就不需要使用 ./isaaclab.sh -p
来运行Python脚本。可以使用环境中的默认Python可执行文件,即通过运行 python 或 python3
3、创建Isaac Sim符号链接
在已安装的Isaac Sim根目录和Isaac Lab目录的 _isaac_sim 之间建立符号链接。这样做方便了索引Python模块并查找与Isaac Sim一起提供的扩展。(在Isaac Lab目录下创建一个isaac sim的超链接)
# enter the cloned repository
cd IsaacLab
# create a symbolic link
ln -s path_to_isaac_sim _isaac_sim
# For example: ln -s ~/.local/share/ov/pkg/isaac-sim-4.2.0 _isaac_sim
执行完这行命令后,在IsaacLab文件夹下会有一个_isaac_sim的超链接
3、虚拟环境安装Isaac SIm依赖
1) 安装依赖
下面所有操作默认在刚刚创建的conda虚拟环境中运行
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia
pip install stable-baselines3==2.0.0 tensorboard==2.11.0 tensorboard-plugin-wit==1.8.1 protobuf==3.20.3
#设置isaacsim环境变量调用改conda环境中的python,替代掉原环境的python
h #不想每次都用这个命令可以将它加入到.bashrc文件# these dependency are needed by robomimic which is not available on Windows
sudo apt install cmake build-essential
2) 验证是否安装成功
- 检查sim是否可以从独立的 python 脚本中运行,需要先激活刚刚创建的虚拟环境
# checks that python path is set correctly
python -c "print('Isaac Sim configuration is now complete.')"
输出:Isaac Sim configuration is now complete.
#checks that Isaac Sim can be launched from python
source /home/user/.local/share/ov/pkg/isaac-sim-4.2.0/setup conda env.sh #不想每次都用这个命令可以看第6步
python ${ISAACSIM_PATH}/standalone_examples/api/omni.isaac.core/add_cubes.py
成功会输出如下界面
4、安装IsaacLab扩展
运行此安装命令,遍历 source/extensions 目录中的所有扩展,同时使用带有 --editable 标志的pip进行安装:
cd IsaacLab
./isaaclab.sh --install # or "./isaaclab.sh -i"
上述代码将按默认设置安装所有学习框架。如果您想只安装特定框架,可以将框架的名称作为参数传递。例如,为了只安装 rl_games 框架,可以运行
./isaaclab.sh --install rl_games # or "./isaaclab.sh -i rl_games"
# 有效选项有 rl_games, rsl_rl, sb3, skrl, robomimic, none
5、检查isaaclab是否安装成功
# Option 1: Using the isaaclab.sh executable
# note: this works for both the bundled python and the virtual environment
./isaaclab.sh -p source/standalone/tutorials/00_sim/create_empty.py# Option 2: Using python in your virtual environment
source ~/.local/share/ov/pkg/isaac-sim-4.2.0/setup conda env.sh
python source/standalone/tutorials/00_sim/create_empty.py
出现黑色框框说明安装成功。
6、设置自动source setup_isaac.sh
为了避免每次使用conda环境都需要source一下(不然会报错:ModuleNotFoundError: No module named 'omni.isaac.kit'
),我们需要对刚刚创建的conda环境进行设置,为了方便将设置过程写成一个脚本如下,注意更改自己的isaacsim路径。
#!/bin/bash# Step 1: 确认目标环境的路径
ENV_NAME="isaaclab"
ENV_PATH=$(conda info --envs | grep -w "$ENV_NAME" | awk '{print $NF}')if [[ -z "$ENV_PATH" ]]; thenecho "Error: 环境 '$ENV_NAME' 不存在,请确认环境名称是否正确。"exit 1
fiecho "目标环境路径:$ENV_PATH"# Step 2: 创建激活脚本目录
ACTIVATE_DIR="$ENV_PATH/etc/conda/activate.d"
mkdir -p "$ACTIVATE_DIR"
echo "激活脚本目录已创建:$ACTIVATE_DIR"# Step 3: 创建激活脚本
ACTIVATE_SCRIPT="$ACTIVATE_DIR/setup_isaac.sh"
cat <<EOF > "$ACTIVATE_SCRIPT"
#!/bin/bash
source /home/user/.local/share/ov/pkg/isaac-sim-4.2.0/setup_conda_env.sh
EOFecho "激活脚本已创建:$ACTIVATE_SCRIPT"# Step 4: 赋予脚本执行权限
chmod +x "$ACTIVATE_SCRIPT"
echo "激活脚本权限已设置为可执行"# Step 5: 提示完成
echo "激活环境时自动运行命令已成功配置!"
echo "测试:激活 '$ENV_NAME' 环境时,'setup_conda_env.sh' 将自动运行。"
按照下面步骤操作:
touch setup_isaaclab_hook.sh
nano setup_isaaclab_hook.sh
# 复制上面的代码并保存
chmod +x setup_isaaclab_hook.sh
./setup_isaaclab_hook.sh
rm setup_isaaclab_hook.sh
具体原理:每个 Conda 环境都有一个特殊的目录,用于存放在环境激活和停用时自动运行的脚本,将source /home/user/.local/share/ov/pkg/isaac-sim-4.2.0/setup_conda_env.sh
在环境激活时运行,完成设置。
至此,IsaacLab安装完成。
https://isaac-sim.github.io/IsaacLab/main/index.html
https://docs.robotsfan.com/isaaclab/source/setup/installation/pip_installation.html
https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_python.html