Ubuntu20.04本地配置IsaacLab 4.2.0的G1訓練環境(一)

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

出現四足機器人,說明成功:

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/72703.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/72703.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/72703.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux文管讀寫書簽

文件:~/.config/gtk-3.0/bookmarks 格式:file://路徑 名稱,每個一行。 QTreeWidgetItem清空item所有子節點 讀取書簽 void MainWindow::genBookmark() {QString fp QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) &…

芋道打包時報錯:缺失@unocss插件

在遇到打包時,報這個錯誤,提示構建失敗是因為 ESLint 在加載 unocss 插件時,找不到 unocss/eslint-plugin 模塊 解決辦法:安裝缺失的依賴:保證unocss/eslint-plugin已經被正確安裝, 使用以下命令安裝&…

【JAVA架構師成長之路】【JVM實戰】第2集:生產環境內存飆高排查實戰

課程標題:生產環境內存飆高排查實戰——從堆轉儲到代碼修復的15分鐘指南 目標:掌握內存泄漏與OOM問題的系統性排查方法,快速定位代碼或配置缺陷 0-1分鐘:問題引入與核心現象 線上服務內存持續增長,觸發頻繁Full GC甚至OOM(OutOfMemoryError),導致服務崩潰。常見誘因:…

PROFINET轉PROFIBUS從案例剖析網關模塊的協議轉換功能

一、 案例背景 在當下追求高效協同的工業自動化生產體系里,設備間的無縫互聯互通堪稱關鍵要素。某企業的生產車間中,有一臺性能穩定的變頻器,其配備的是PROFIBUS接口。與此同時,操控整個生產線的核心大腦——西門子1500 PLC&…

flutter環境最新踩坑

## Flutter 開發常見問題排查與解決 ### 1. 項目初始化與依賴問題 bash # 清理項目 flutter clean # 獲取依賴 flutter pub get # 詳細日志運行 flutter run -v ### 2. 網絡和下載問題 - 網絡慢可能導致依賴下載卡住 - 使用 -v 參數可查看詳細日志 - 檢查網絡連接 - 可以嘗…

xss筆記與打靶(更新中)

這個文章好 https://blog.csdn.net/huangyongkang666/article/details/123624164?fromshareblogdetail&sharetypeblogdetail&sharerId123624164&sharereferPC&sharesource2401_88818565&sharefromfrom_link 什么是xss XSS(跨站腳本攻擊&…

Visual Studio 2022新建c語言項目的詳細步驟

步驟1:點擊創建新項目 步驟2:到了項目模板 --> 選擇“控制臺應用” (在window終端運行代碼。默認打印"Hello World") --> 點擊 “下一步” 步驟3:到了配置新項目模塊 --> 輸入“項目名稱” --> 更改“位置”路徑&…

SQL進階技巧:上課時長計算

目錄 0 問題描述 1 數據準備 2 問題解決 核心難點 時間區間標記與分組 區間合并與時長計算

HashMap 在多線程環境下可能引發哪些問題?如何解決?

HashMap 在多線程環境下可能引發哪些問題? 答案: 在多線程同時操作 HashMap 時,可能引發 死循環、數據丟失、臟數據讀取 等問題。 根本原因: HashMap 的設計是非線程安全的,多線程并發修改其結構(如擴容、…

告別GitHub連不上!一分鐘快速訪問方案

一、當GitHub抽風時,你是否也這樣崩潰過? 😡 npm install卡在node-sass半小時不動😭 git clone到90%突然fatal: early EOF🤬 改了半天hosts文件,第二天又失效了... 根本原因:傳統代理需要復雜…

【軟考-架構】2.1、操作系統概述-進程管理-同步互斥

?資料&文章更新? GitHub地址:https://github.com/tyronczt/system_architect 文章目錄 操作系統知識操作系統概述進程組成和狀態💯考試真題前趨圖進程資源圖💯考試真題問題1問題2 ?【重點】進程同步與互斥?💯考試真題問題…

基于開源庫編寫MQTT通訊

目錄 1. MQTT是什么?2. 開發交互UI3. 服務器核心代碼4. 客戶端核心代碼5. 消息訂閱與發布6. 通訊測試7. MQTT與PLC通訊最后. 核心總結 1. MQTT是什么? MQTT(Message Queuing Terlemetry Transport)消息隊列遙測協議;是…

在VScode下配置C/C++環境(tasks.json、launch.json、c_cpp_properties.json)

文章目錄 1. tasks.json、launch.json配置文件中參數(屬性)的說明2. tasks.json介紹3. launch.json介紹4. 直接生成tasks.json、launch.json配置文件的另外一種方式5. c_cpp_properties.json介紹6. 運行多個C/C文件7. 命令行方式編譯C 1. tasks.json、launch.json配置文件中參數…

ORB-SLAM2源碼學習(六):相機跟蹤(局部地圖跟蹤和關鍵幀創建)

目錄 1.局部地圖跟蹤 1.1 更新局部關鍵幀UpdateLocalKeyFrames 1.2 更新局部地圖點(來自局部關鍵幀)UpdateLocalPoints() 1.3 投影匹配 2. 對比四種跟蹤方式以及使用的投影匹配 3.關鍵幀創建 3.1 判斷是否需要創建新關鍵幀: NeedNewKeyFrame() 3…

PostgreSQL時間計算大全:從時間差到時區轉換(保姆級教程)

一、時間計算的三大核心場景 當你遇到這些需求時,本文就是你的救星🌟: 倒計時功能:計算活動剩余天數 用戶行為分析:統計操作間隔時間 跨國系統:多時區時間統一管理 報表生成:自動計算同比/環…

Qt6.8.2創建WebAssmebly項目使用FFmpeg資源

Qt6新出了WebAssmebly功能,可以將C寫的軟件到瀏覽器中運行,最近一段時間正在研究這方便內容,普通的控件響應都能實現,今天主要為大家分享如何將FFmpeg中的功能應用到瀏覽器中。 開發環境:window11,Qt6.8.2…

DeepSeek V3 源碼:從入門到放棄!

從入門到放棄 花了幾天時間,看懂了DeepSeek V3 源碼的邏輯。源碼的邏輯是不難的,但為什么模型結構需要這樣設計,為什么參數需要這樣設置呢?知其然,但不知其所以然。除了模型結構以外,模型的訓練數據、訓練…

【leetcode hot 100 240】搜索二維矩陣Ⅱ

解法一&#xff1a;直接查找 class Solution {public boolean searchMatrix(int[][] matrix, int target) {for(int i0; i<matrix.length; i){for(int j0; j<matrix[0].length; j){if(matrix[i][j]>target){break;}if(matrix[i][j]target){return true;}}}return fal…

UE4 組件 (對話組件)

制作一個可以生成對話氣泡&#xff0c;顯示對話臺詞的簡單組件。這個組件要的變量&#xff1a;臺詞&#xff08;外部傳入&#xff09;。功能&#xff1a;開始對話&#xff08;生成氣泡UI&#xff09; &#xff0c;結束對話。 一、對話組件創建 二、開始對話事件 1、注意這里獲…

自動化同步多服務器數據庫表結構

當項目每次進行版本升級的時候&#xff0c;如果在這次迭代中涉及表結構變更&#xff0c;需要將不同的生產環境下&#xff0c;都需要同步表結構的DDL語句&#xff0c;比較麻煩&#xff0c;而且還有可能忘記同步腳本&#xff0c;導致生產環境報錯.... 該方案采用SpringBootMybat…