多部件裝配在制造、汽車、航空航天、電子、醫(yī)療設(shè)備等絕大多數(shù)行業(yè)中都扮演著關(guān)鍵角色。雖然應用廣泛,但是機器人裝配仍是一項極具挑戰(zhàn)性的任務。這類任務涉及復雜的交互,機器人必須通過持續(xù)的物理接觸來操控物體,對精度和準確性有極高要求。當前的機器人裝配系統(tǒng)長期受限于固定自動化模式。這些系統(tǒng)往往為特定任務量身打造,需要大量人工工程來完成設(shè)計與部署,因而限制了其適應性和可擴展性。
未來的機器人裝配將走向靈活自動化。下一代機器人必須能快速適應新的零件、位姿和環(huán)境。將機器人技術(shù)與仿真和 AI 結(jié)合,將有助于突破當前的限制。多年來,NVIDIA 一直在這一領(lǐng)域持續(xù)開展研究,并與優(yōu)傲機器人 (Universal Robots, UR) 展開合作,正在將這些研究創(chuàng)新成果轉(zhuǎn)化為現(xiàn)實中的工業(yè)應用。
本文將展示在 UR10e 機器人上進行齒輪裝配任務的零樣本仿真到現(xiàn)實遷移。這一任務在NVIDIA Isaac Lab中設(shè)計并訓練,并使用NVIDIA Isaac ROS和 UR10e 底層扭矩接口進行部署。我們希望所有開發(fā)者都能復現(xiàn)這項工作,使用 Isaac Lab 和 Isaac ROS 開發(fā)自己的仿真到現(xiàn)實應用。
Isaac Lab 是一個用于機器人學習的開源模塊化訓練框架。Isaac ROS 是基于開源框架 ROS 2 構(gòu)建的一套加速計算軟件包和 AI 模型,為全球 ROS 開發(fā)者帶來 NVIDIA 的計算加速能力,并提供可直接使用的常見任務模塊,如導航和感知等。
Isaac Lab 中接觸密集型操作的仿真
Isaac Lab 讓接觸密集型仿真成為可能,它支持精確的物理仿真和大規(guī)模強化學習(RL,即“通過試錯學習”),可在數(shù)千個并行環(huán)境中運行。而過去,這類復雜交互仿真在計算上難以處理和實現(xiàn)。
Isaac Lab 包含多個具有挑戰(zhàn)性的工業(yè)級任務,如插入銷釘、嚙合齒輪、旋緊螺栓。它支持模仿學習(基于演示數(shù)據(jù)的模仿)和強化學習兩種訓練方法,適用于不同類型的機器人形態(tài)。
圖 1. Isaac Lab 中的接觸密集型仿真環(huán)境
強化學習是一種適用于裝配問題的強大方法,因為它不需要人類演示,并且對感知、控制和夾具中的誤差具有很強的魯棒性。然而,“現(xiàn)實差距”(仿真與現(xiàn)實世界之間的差距)仍然是一個關(guān)鍵挑戰(zhàn)。本文所展示的工作流基于 IndustReal 框架,有效地彌合了這一差距。IndustReal 是使機器人能夠通過強化學習在仿真中學習裝配任務,并將其遷移到真實世界的一套算法和系統(tǒng)工具包。
在 Isaac Lab 中訓練齒輪裝配任務
齒輪裝配任務包括識別、抓取、搬運并將多個齒輪插入對應的軸上。圖 2 展示了任務從初始狀態(tài)到一個齒輪插入完成的過程。整個過程依賴三項核心技能:抓取、自由空間運動、插入。
圖 2. 在 UR10e 機器人上齒輪裝配任務的抓取、運輸和插入技能
抓取生成使用現(xiàn)成的抓取規(guī)劃器來獲取零件的可行抓取位姿,運動與插入動作則使用強化學習策略進行訓練。盡管機械臂的運動生成技術(shù)已較為成熟,可通過經(jīng)典軌跡規(guī)劃器實現(xiàn),但訓練基于強化學習的運動生成策略,能在應對更具挑戰(zhàn)性的插入任務前,為策略學習框架提供有效的校準與調(diào)試步驟。
圖 3 展示了基于Isaac Sim與 Isaac Lab 進行運動生成和插入任務的策略學習流程。仿真環(huán)境由 Isaac Sim 提供的資產(chǎn)與場景配置構(gòu)成,訓練環(huán)境由 Isaac Lab 提供。這兩項任務的策略均依賴于在 Isaac Lab 中實現(xiàn)的底層阻抗控制器。
圖 3. 使用 Isaac Sim 和 Isaac Lab 進行運動生成和插入任務的策略學習流程
如圖 3 所示,運動生成和插入技能分別被構(gòu)建為獨立的強化學習問題。
運動生成:目標是讓機器人從指定工作空間內(nèi)的隨機初始關(guān)節(jié)角度出發(fā),將末端執(zhí)行器移動到指定目標位姿(例如抓取位姿)。觀測數(shù)據(jù)包括機器人的關(guān)節(jié)位置和目標末端執(zhí)行器位姿,動作空間則由關(guān)節(jié)位置目標構(gòu)成。獎勵函數(shù)會最小化末端執(zhí)行器與目標之間的距離,同時對機器人的突然或劇烈動作進行懲罰。
插入任務:齒輪初始位于機器人夾具中,處于目標軸附近的隨機采樣位姿。任務目標是將齒輪移動到軸的底部。觀測數(shù)據(jù)包括機器人的關(guān)節(jié)位置和目標軸位姿,動作空間同樣由關(guān)節(jié)位置目標構(gòu)成。獎勵函數(shù)會最小化齒輪與目標位置之間的距離,并同樣對突然或劇烈動作進行懲罰。
這兩項技能的關(guān)節(jié)位置目標均以 60Hz 的頻率生成,由底層阻抗控制器執(zhí)行。
智能體在多種隨機配置下進行訓練,包括不同的初始機械臂位姿、夾具中齒輪的位姿、齒輪尺寸以及任務整體階段(例如尚未插入任何齒輪或已插入部分齒輪)。為實現(xiàn)仿真到現(xiàn)實的遷移,還對機器人動力學參數(shù)(關(guān)節(jié)摩擦和阻尼)、控制器增益以及策略觀測噪聲均應用了域隨機化。訓練在并行環(huán)境中進行,使智能體能夠獲得多樣化且有價值的經(jīng)驗,這對有效學習任務至關(guān)重要。
神經(jīng)網(wǎng)絡(luò)架構(gòu)與強化學習算法
每個策略均采用含 256 個單元的長短期記憶 (LSTM) 網(wǎng)絡(luò)結(jié)構(gòu),其后連接三層多層感知器 (MLP),分別含 256、128 和 64 個神經(jīng)元。訓練使用 rl-games 庫中的近端策略優(yōu)化 (PPO) 算法,在 Isaac Sim 4.5 與 Isaac Lab 2.1 環(huán)境中,基于 NVIDIA GPU 完成訓練。
訓練結(jié)果
圖 4 展示了 UR10e 機器人執(zhí)行訓練策略的效果,左側(cè)為運動生成環(huán)節(jié),右側(cè)為插入環(huán)節(jié)。
圖 4. UR10e 機器人在 Isaac Lab 仿真中測試訓練策略:運動生成(左)與插入(右)
圖 5 展示了所學技能的組合應用。通過重復調(diào)用抓取規(guī)劃器及兩項訓練技能,機器人能夠完成隨機擺放的三個齒輪的裝配。策略對齒輪的初始位姿與裝配順序均具有魯棒性。
圖 5. 訓練后的強化學習策略按順序循環(huán)執(zhí)行多步裝配:移動至齒輪 1→抓取→插入→移動至齒輪 2→抓取→插入,依此類推
支持仿真-現(xiàn)實遷移的UR 扭矩控制接口
本研究采用阻抗控制技術(shù),使機器人在與物體接觸時實現(xiàn)更安全、順應性更高(軟性)的交互。相比之下,盡管位置控制器精度高,但其剛性特性可能因感知誤差或現(xiàn)實對準問題限制適應性,甚至導致意外沖擊力。阻抗控制則提供了更靈活的解決方案。
與工業(yè)機器人常見的剛性位置控制器不同,阻抗控制需要直接扭矩命令,這在傳統(tǒng)工業(yè)機器人中并不常見。UR 目前已提供早期訪問版本,開發(fā)者可以使用其直接力矩控制接口,從而實現(xiàn)上述控制策略。
NVIDIA 團隊與 UR 合作,基于 Isaac Lab 和《IndustReal:將接觸密集型裝配任務從仿真遷移至現(xiàn)實》論文中的方法訓練策略,通過 Isaac ROS 和 UR 扭矩接口在 UR10e 機器人上部署。過程中使用了 Isaac ROS 的 Segment Anything 和 FoundationPose 軟件包。
基于 Isaac ROS 與 UR 扭矩接口的UR10e 仿真-現(xiàn)實遷移
圖 6 展示了從 Isaac Lab 部署訓練策略的仿真-現(xiàn)實遷移框架。感知模塊首先將 RGB 圖像送入 Segment Anything,生成分割掩碼。掩碼與深度圖像結(jié)合后輸入 FoundationPose,輸出齒輪的 6D 位姿。
圖 6. UR10e 機器人仿真-現(xiàn)實遷移工作流
然后,將齒輪位姿與來自 UR 關(guān)節(jié)編碼器的位置數(shù)據(jù)一并輸入策略,預測關(guān)節(jié)位置增量。增量值轉(zhuǎn)換為絕對目標關(guān)節(jié)位置后,作為阻抗控制器的輸入。自定義底層阻抗控制器采用 URScript 編寫,以 500 Hz 頻率運行,計算控制 UR 機器人執(zhí)行任務所需的關(guān)節(jié)扭矩。
開始開發(fā)
本文展示了在 UR10e 機器人上實現(xiàn)齒輪裝配任務的零樣本仿真到現(xiàn)實遷移——整個任務在 Isaac Lab 中完成設(shè)計與訓練,并通過 Isaac ROS 和 UR10e 底層扭矩接口實現(xiàn)部署。
-
機器人
+關(guān)注
關(guān)注
213文章
29748瀏覽量
212935 -
仿真
+關(guān)注
關(guān)注
52文章
4289瀏覽量
135877 -
AI
+關(guān)注
關(guān)注
88文章
35164瀏覽量
280029 -
工業(yè)機器人
+關(guān)注
關(guān)注
91文章
3457瀏覽量
94159
原文標題:利用 NVIDIA Isaac Lab 縮小工業(yè)機器人裝配應用中“仿真到現(xiàn)實”的差距
文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
NVIDIA Isaac Lab可用環(huán)境與強化學習腳本使用指南

盤點#機器人開發(fā)平臺
工業(yè)機器人與視覺實訓平臺介紹
NVIDIA Isaac SDK現(xiàn)已可用,即刻下載開啟您的機器人開發(fā)之旅吧!
NVIDIA AI機器人開發(fā)— NVIDIA Isaac Sim入門
NVIDIA 公開課 | AI 機器人開發(fā)第二講 — Isaac Sim 高階開發(fā)
CES | 用 NVIDIA Isaac Sim 2022.2 模擬未來智能機器人
使用 NVIDIA Isaac 仿真并定位 Husky 機器人

利用NVIDIA Isaac平臺構(gòu)建、設(shè)計并部署機器人應用

評論