当前位置: 首页 > article >正文

Ubuntu20.04从零安装IsaacSim/IsaacLab

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
  • IDE设置(Vscode)

电脑硬件配置:

  • 显卡: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版本

在这里插入图片描述

在这里插入图片描述
上面这种下载方式特别慢,可以从网盘下载,将zip文件重命名为Isaac Sim.zip,放到指定路径(~/.local/share/ov/pkg/isaac-sim-4.2.0/ )下,这里命名千万注意不能出错,之后从EXCHANGE/交易所下点击安装即可从下载好的包进行安装,避免长时间的下载。

  • 网盘链接
https://www.123684.com/s/CF6DVv-5zxMA?
提取码:v7HA

在这里插入图片描述

安装完成即可从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" ]]; then
    echo "Error: 环境 '$ENV_NAME' 不存在,请确认环境名称是否正确。"
    exit 1
fi

echo "目标环境路径:$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
EOF

echo "激活脚本已创建:$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安装完成。

IDE设置(Vscode)

由于上述步骤中已经配置好isaac所需的conda环境,因此后续只需要通过在VSCode左下角选择并激活相应的python解释器,或者打开命令面板(Ctrl Shift P)并选择相应的Python解释器,点击运行就可以进行调试运行,如上述验证案例,其输出结果和终端运行结果一致。

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


http://www.kler.cn/a/405296.html

相关文章:

  • Shell编程-8
  • C++标准模板库 -- map和set
  • Verilog HDL可综合与不可综合语句
  • elasticsearch介绍和部署
  • ZYNQ-7020嵌入式系统学习笔记(1)——使用ARM核配置UART发送Helloworld
  • Spring Web入门练习
  • python内存分析
  • Qt-常用的显示类控件
  • Zookeeper集群搭建Centos环境下
  • ROS机器视觉入门:从基础到人脸识别与目标检测
  • 网络安全中常用浏览器插件、拓展
  • 生日主题的烟花特效HTML,CSS,JS
  • 20241121 android中树结构列表(使用recyclerView实现)
  • 【K8S系列】imagePullSecrets配置正确,但docker pull仍然失败,进一步排查详细步骤
  • java: spire.pdf.free 9.12.3 create pdf
  • Android 应用添加系统签名权限介绍
  • reactflow 中 useOnViewportChange 模块作用
  • 异构网络,赋能企业的智能连接
  • Next.js 入门指南:深入构建服务器渲染的现代 Web 应用
  • SpringBoot(二十七)SpringBoot集成XRebel实现异常定位
  • VMware 中 虚拟机【Linux系统】固定 ip 访问
  • 【Docker】Docker介绍|部署|简单使用|镜像操作|容器操作|自动构建镜像
  • 通过vite+vue3+pinia从0到1搭建一个uniapp应用
  • Element UI 组件库详解【Vue】
  • Ubuntu查看磁盘IO情况常用方法
  • Shell脚本2 -- 永久环境变量与字符串操作