Ubuntu20.04本地配置IsaacLab的G1訓練環境(一)
- 配置Omniverse環境
- 配置IsaacSim
- 配置IsaacLab
寫在前面,如果Ubuntu剩余空間低于60G,則空間不足,除非你不需要資產包。但資產包中卻包含了G1模型、Go2模型等機器人模型和代碼,是必不可少的。
另外,IsaacLab是基于IsaacSim的進一步開發,因此在安裝IsaacLab前要先安裝IsaacSim。
配置Omniverse環境
從官網下載omniverse launcher運行文件(Direct Link: Linux)
運行omniverse-launcher文件,登錄Nvidia賬號,按照引導選擇,進入Omniverse主界面。
同意相關協議
按照默認設置路徑:
下載omniverse nucleus navigator:
選擇導航欄的交易所(exchange)目錄下搜索nucleus navigator進行安裝:
安裝完成后,點擊圖書館(Library)->nucleus navigator->啟動(launch),啟動導航工具:
點擊創建本地服務器(create local server)->next->填入個人信息,完成本地服務器的初始設置。
這里,賬戶的創建建議用admin,密碼admin(其他也可以),其他自行填寫。
創建完成且安裝完成后結果如下:
配置IsaacSim
進入omniverse的交互所(exchange)界面,選擇IsaacSim,點擊外部鏈接:
隨后會跳轉到瀏覽器鏈接中,然后選擇4.2.0,Linux版本,下載。(對于這一步,跟之前的版本有所不同,之前不存在外部鏈接,而是直接安裝。現在只能選擇外部鏈接。)
下載完成后將壓縮包解壓至/home/xx(你自己的用戶名)/.local/share/ov/pkg/isaac-sim-4.2.0。這一步中,若不存在isaac-sim-4.2.0文件夾,則創建一個,并將文件解壓進去。
然后,新開一個終端,執行:
sudo gedit ~/.bashrc
并在最下面寫入:
export ISAACSIM_PATH="${HOME}/.local/share/ov/pkg/isaac-sim-4.2.0"
export ISAACSIM_PYTHON_EXE="${ISAACSIM_PATH}/python.sh"
關閉bashrc文件,回到終端,執行:
source ~/.bashrc
cd ~/.local/share/ov/pkg
python3 -m pip install --upgrade pip
sudo apt-get update && sudo apt-get install -y git
git clone https://github.com/isaac-sim/IsaacLab.git # 若下載失敗,可采用git鏡像git clone https://kkgithub.com/isaac-sim/IsaacLab.git
cd IsaacLab
gedit isaaclab.sh
在sh文件上方,命令“export ISAACLAB_PATH=“ ( c d " ( cd " (cd"( dirname “${BASH_SOURCE[0]}” )” &> /dev/null && pwd )"”之前添加代碼:
source ~/.local/share/ov/pkg/isaac-sim-4.2.0/setup_conda_env.sh
而后,關閉文件,在終端中執行:
source ~/.bashrc
# 創建符號鏈接
ln -s ~/.local/share/ov/pkg/isaac-sim-4.2.0 _isaac_sim
# 配置conda環境
./isaaclab.sh --conda
# 激活虛擬環境,環境名稱默認為isaaclab,若指定名稱,則執行 ./isaaclab.sh --conda my_env
conda activate isaaclab
# 安裝
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
sudo apt install cmake build-essential
驗證是否安裝成功,終端執行:
python ${ISAACSIM_PATH}/standalone_examples/api/omni.isaac.core/add_cubes.py
若出現如下圖所示界面以及終端輸出,說明isaacsim安裝成功。
配置IsaacLab
進入~/.local/share/ov/pkg/IsaacLab目錄,在該目錄下打開終端,執行:
./isaaclab.sh --install
這一步會安裝需要的環境,其中有三個git網站會進行訪問,若出現某git網站無法訪問之類的報錯,純屬網絡問題。建議使用vscode打開~/.local/share/ov/pkg文件夾,然后搜索github,并替換成kkgithub(github鏡像)。再次執行上述命令,待安裝完成后再替換回github。
不出意外的話就要出意外了,出現rsl-rl找不到匹配版本的問題。
執行:
pip install "git+https://github.com/leggedrobotics/rsl_rl.git"
然后,啟動isaaclab:
./isaaclab.sh -s
這里的啟動會比較費時,只有在最后出現了Isaac Sim App is loaded.才說明啟動成功。
隨后,下載本地資產包Assets,資產包是在之前外部鏈接的頁面下載的:
配置資產包,在IsaacLab的啟動界面中,在下方導航欄的Content中找到Omniverse/localhost/Library,在Library目錄下創建NVIDIA文件夾(若不存在NVIDIA),并在NVIDIA文件夾內添加下載的Assets資產包到該位置(右鍵Upload Files or Folder)。
右下角Import導入。等待導入完成,關閉界面,回到終端,執行:
bash isaac-sim.sh --/persistent/isaac/asset_root/default="omniverse://localhost/Library/NVIDIA/Assets"
該命令的目的是用于指定默認的資產路徑。為驗證是否設置成功,在打開的IsaacSim界面中,導航欄進行如圖所示選擇:
顯示:
這里顯示雖然不是剛剛導入的路徑,但實際上是沒有問題的。
隨后,找到~/.local/share/ov/pkg/IsaacLab/source/extensions/omni.isaac.lab/omni/isaac/lab/app/app_launcher.py文件,并將其中第683行的路徑改為:
"omniverse://localhost/Library/NVIDIA/Assets/Isaac/4.2"
然后測試,在IsaacLab目錄下,conda虛擬環境中執行:
./isaaclab.sh -p source/standalone/demos/quadrupeds.py
# 或者執行
# python source/standalone/demos/quadrupeds.py
出現四足機器人,說明成功: