多個部件的組裝在幾乎每個主要行業 (如制造、汽車、航空航天、電子和醫療設備) 中都發揮著關鍵作用。盡管機器人組裝應用廣泛,但它仍然是一項重大挑戰。它涉及復雜的交互,機器人必須通過持續的物理接觸來操縱物體,這需要較高的精度和準確性。如今的機器人裝配系統長期以來一直受到固定自動化的限制。這些系統專為需要大量人工設計和部署的特定任務而構建,限制了其適應性和可擴展性。
機器人裝配的未來在于靈活的自動化。未來的機器人必須快速適應新的部件、姿勢和環境。將 機器人技術與仿真和 AI 集成 可以突破這些限制。多年來,NVIDIA 一直在 推進這一領域的研究 ,我們與 Universal Robots (UR) 的持續合作正在推動這一從研究創新到現實世界工業應用的轉型。
在本文中,我們展示了 UR10e 機器人上齒輪組件任務的 零樣本仿真到現實傳輸 。該任務在 NVIDIA Isaac Lab 中進行設計和訓練,并使用 NVIDIA Isaac ROS 和 UR10e 低電平轉矩接口進行部署。我們的目標是讓任何人都能復制這項工作,并將 Isaac Lab 和 Isaac ROS 用于自己的仿真到現實應用。
Isaac Lab 是一個用于機器人學習的開源模塊化訓練框架。Isaac ROS 基于開源 ROS 2 軟件框架構建,是加速計算包和 AI 模型的集合,為世界各地的 ROS 開發者帶來 NVIDIA 加速。它為導航和感知等常見任務提供即用型軟件包。
Isaac Lab 中的 Contact-rich 模擬
Isaac Lab 通過實現準確的物理特性和大規模的接觸模擬 強化學習 (RL) 在數千個并行環境中反復試驗或學習。曾經難以計算的東西,比如模擬復雜的交互,現在可以實現了。
Isaac Lab 包含來自 Factory 的 富有挑戰性的工業任務 ,例如 peg 插入、gear meshing 和 nut-bolt 緊固。Isaac Lab 支持模仿學習 (mimicking 演示數據) 和 RL,可為任何 機器人化身 提供靈活的訓練方法。

RL 是一種強大而有效的組裝問題技術,因為它不需要人類演示,并且對于感知、控制和固定中的錯誤非常可靠。然而,現實差距(reality gap)——仿真與現實世界之間的差異——仍然是一項關鍵挑戰。本文中介紹的工作流使用 IndustReal 的概念彌合了這一差距,IndustReal 是一套算法和工具,可實現強大的 RL 訓練技能,從而從仿真轉移到現實世界的機器人,以執行復雜的裝配任務。
在 Isaac Lab 中訓練齒輪裝配任務
齒輪裝配任務包括感知、抓取、運輸和將所有齒輪插入到相應的軸上。圖 2 顯示了任務的不同狀態,從一個齒輪的初始狀態到目標狀態。這需要三項核心技能:抓握生成、自由空間動作生成和插入。

抓握生成使用現成的抓握規劃器來獲取部件的可行抓握姿勢。 動作生成 和插入使用 RL 來學習策略。雖然機械臂的運動生成已得到充分確認,并且可以使用傳統的軌跡規劃器實現,但在處理更具挑戰性的插入任務之前,訓練基于 RL 的運動生成策略可為策略學習框架提供有用的校準和調試步驟。
圖 3 顯示了使用 Isaac Sim 和 Isaac Lab 進行動作生成和插入任務的策略學習工作流。對于每個任務,資產和場景規范定義了 Isaac Sim 中的仿真環境,而 Isaac Lab 則提供訓練環境。這兩項任務的策略均依賴于 Isaac Lab 中實施的低電平阻抗控制器。

運動生成和插入技能分別表述為單獨的強化學習問題,并獨立學習,如圖 3 所示。
- 動作生成:目標是讓機器人從指定機器人工作空間內的隨機初始關節角度開始,將其末端執行器移動到指定的目標姿勢 (例如抓握姿勢) 。 觀察包括機器人的關節位置和目標末端執行器姿態,而動作空間由關節位置目標組成。獎勵函數可最小化終端執行器與目標之間的距離,并對機器人突然或猛烈的動作進行懲罰。
- 插入:在機器人的抓手中初始化齒輪,并在目標軸附近以隨機采樣的姿態定位。目標是將齒輪移動到軸的底部。觀察包括機器人的關節位置和目標軸姿態,而動作空間由關節位置目標組成。獎勵函數可最小化齒輪和目標之間的距離,并對突然或激進的機器人動作再次施加懲罰。
對于這兩種技能,joint position targets 以 60 Hz 的頻率生成,由低級 impedance controller 執行。
該智能體使用各種隨機配置進行訓練,例如不同的初始 robot arm 姿態、機械手中的齒輪姿態、齒輪尺寸以及整個任務的各個階段 (例如,尚未插入齒輪或插入了一些齒輪) 。為 促進 sim-to-real 傳輸 ,domain randomization 應用于機器人動力學 (關節摩擦和阻尼) 和控制器增益,以及策略觀察噪聲。訓練在并行環境中進行,使智能體能夠獲得豐富而寶貴的經驗,這些經驗對于有效學習任務至關重要。
網絡架構和 RL 算法詳情
每個策略的結構均為具有 256 個單元的 Long Short-Term Memory (LSTM) 網絡,然后是具有三層分別包含 256、128 和 64 個神經元的多層感知器 (MLP) 。這些策略使用 rl-games 庫中的 Proximal Policy Optimization (PPO) 算法進行訓練。訓練在 Isaac Sim 4.5 和 Isaac Lab 2.1 上的 NVIDIA RTX 4090 GPU 中完成。
結果?
圖 4 顯示了經過訓練的策略在 UR10e 機器人上的實際應用,左側為 motion generation,右側為 insertion。


圖 4。在 Isaac Lab 模擬運動生成 (左) 和插入 (右) 中,在 UR10e 機器人上測試了經過訓練的策略
圖 5 展示了所學技能的組合。借助所學到的技能,機器人能夠通過重復抓握規劃器和所學到的技能,組裝隨機放置的三個齒輪。這些策略對齒輪組裝順序和齒輪的初始姿態十分可靠。


圖 5。經過訓練的 RL 策略經過排序,可在一個循環中執行多個機器人裝配步驟:移動到 gear 1 → 抓取 → 插入 → 移動到 gear 2 → 抓取 → 插入,以此類推
UR 扭矩控制接口,支持 sim-to-real 傳輸
這項工作采用 impedance control 技術,使機器人能夠與物體進行安全且合規的 (軟) 交互。雖然 position controllers 具有很高的準確性,但其剛度會因感知或現實世界的對齊挑戰而限制適應性,最終造成巨大的意外作用力。 impedance control 提供了一種更靈活的替代方案。
與工業機器人中常見的剛位置控制器不同,阻抗控制需要直接的 torque 命令,而這在工業機器人中并不常見。 UR 現在提供對其直接 torque 控制接口的搶先體驗 ,以實現此類控制。
NVIDIA 團隊與 UR 合作,使用 Isaac Lab 和論文《 IndustReal:Transferring Contact-Rich Assembly Tasks from Simulation to Reality 》中的方法來訓練策略,并使用 Isaac ROS 和 UR torque 接口在 UR10e 機器人上部署策略。使用了 Isaac ROS 的 Segment Anything 和 FoundationPose 軟件包。
使用 Isaac ROS 和 UR torque 接口在 UR10e 上實現 Sim-to-real 轉移
圖 6 顯示了在部署 Isaac Lab 中經過訓練的策略時使用的 sim-to-real 傳輸框架。工作流始于感知工作流,將 RGB 圖像輸入 Segment Anything ,然后輸出 segmentation mask。然后,該遮罩與深度圖像一起傳遞給 FoundationPose ,以估計齒輪塞的 6D 姿態。

“UR 關節編碼器的齒輪姿態和關節位置構成觀察結果,這些觀察結果將傳遞至策略,以預測增量關節位置。增量關節位置轉換為絕對目標關節位置,并作為阻抗控制器的輸入。使用 URScript 制作的自定義低級阻抗控制器以 500 Hz 頻率運行,并計算控制 UR 機器人執行任務所需的關節轉矩。結果如 Video 1 所示。”
開始使用?
本文展示了 UR10e 機器人上齒輪組件任務的零樣本仿真到現實傳輸。該任務在 NVIDIA Isaac Lab 中進行設計和訓練,并使用 NVIDIA Isaac ROS 和 UR10e 低電平轉矩接口進行部署。
準備好開始為機器人裝配任務開發您自己的 contact-rich 的操作策略了嗎?查看以下資源:
- 下載 Isaac Sim 和 Isaac Lab ,探索訓練接觸豐富的環境。
- 詳細了解本文中介紹的算法,請參閱 IndustReal:將接觸量豐富的裝配任務從仿真轉移到現實 ,并 將工業機器人裝配任務從仿真轉移到現實 。
- 請參閱 Isaac ROS 文檔 。
- 通過 Direct Torque Command 從 UR 下載搶先體驗版機器人軟件 。
- 閱讀 NVIDIA 機器人研發摘要 (R2D2) ,詳細了解機器人裝配領域接觸密集型操作方面的突破。
請持續關注 Isaac Lab 環境和訓練代碼,讓任何人都能測試這些策略并訓練自己的策略,以及支持您在自己的 UR 機器人上部署這些策略的參考工作流。
訂閱我們的時事通訊,并在 LinkedIn、Instagram、X 和 Facebook 上關注 NVIDIA Robotics,及時了解最新動態。探索 NVIDIA 文檔和 YouTube 頻道,并加入 NVIDIA Developer Robotics 論壇。要開啟您的機器人開發之旅,請立即注冊我們的免費 NVIDIA Robotics Fundamentals 課程。
開始使用 NVIDIA Isaac 庫和 AI 模型 開發物理 AI 系統。
致謝?
我們要感謝 Yashraj Narang 和 Buck Babich 為開發 UR sim-to-real 演示提供建議。我們感謝 Universal Robots 的 Rune S?e-Knudsen 為新開發的 direct torque control 接口提供技術支持。我們還要感謝 Bingjie Tang、Michael A. Lin、Iretiayo Akinola、Ankur Handa、Gaurav S. Sukhatme、Fabio Ramos、Dieter Fox 和 Yashraj Narang 主導撰寫本次演示所依據的 IndustReal 論文。
?