新闻中心
新闻中心

02

2025

-

07

利用NVIDIA Isaac Lab训练工业机器人齿轮装配任务

浏览:371  

发布:2025-07-02 03:30:52


【导语】多部件装配在各行各业中发挥着关键作用,但机器人装配任务因其复杂性而极具挑战性。传统机器人装配系统受限于固定自动化模式,缺乏灵活性和可扩展性。未来,机器人装(zhuāng)配(pèi)将(jiāng)迈(mài)向(xiàng)灵(líng)活(huó)自(zì)动(dòng)化(huà),结(jié)合(hé)机(jī)器(qì)人(rén)技(jì)术(shù)、仿(fǎng)真(zhēn)与(yǔ)AI,突(tū)破(pò)现(xiàn)有(yǒu)局(jú)限(xiàn)。本(běn)文将(jiāng)介(jiè)绍(shào)NVIDIA与(yǔ)优(yōu)傲(ào)机(jī)器(qì)人(rén)(UR)的(de)合(hé)作(zuò)成(chéng)果(guǒ),展(zhǎn)示(shì)在UR10e机器人上实现齿轮装配任务的零样本仿真到现实迁移,利用Isaac Lab和Isaac ROS平台,推动机器人装配技术迈向新高度。

多部件(jiàn)装(zhuāng)配(pèi)在(zài)制(zhì)造(zào)、汽(qì)车(chē)、航(háng)空(kōng)航(háng)天(tiān)、电(diàn)子(zi)、医(yī)疗(liáo)设(shè)备(bèi)等(děng)绝(jué)大(dà)多(duō)数(shù)行(xíng)业(yè)中(zhōng)都(dōu)扮(ban)演(yǎn)着(zhe)关键角(jiǎo)色(sè)。虽(suī)然(rán)应(yīng)用(yòng)广(guǎng)泛(fàn),但(dàn)是(shì)机(jī)器(qì)人(rén)装(zhuāng)配(pèi)仍(réng)是(shì)一(yī)项(xiàng)极(jí)具(jù)挑(tiāo)战(zhàn)性(xìng)的(de)任(rèn)务(wu)。这(zhè)类(lèi)任(rèn)务(wu)涉(shè)及(jí)复(fù)杂(zá)的(de)交(jiāo)互(hù),机器人必须通过持续的物理接触来操控物体,对精度和准确性有极高要求。当前的机器人装配系统长期受限于固定自动化模式。这些系统往往为特定任务量身打造,需要大量人工工程来完成设计与部署,因而限制了其适应性和可扩展性。

未来的机器人装配将走向灵活自动化。下一代机器人必须能快速适应新的零件、位姿和环境。将机器人技术与仿(fǎng)真(zhēn)和(hé) AI 结(jié)合(hé),将有助于突破当前的限制。多年来,NVIDIA 一直在这一领域持续开展研究,并与优傲机器人 (Universal Robots, UR) 展开合(hé)作(zuò),正(zhèng)在(zài)将(jiāng)这(zhè)些(xiē)研(yán)究(jiū)创(chuàng)新(xīn)成(chéng)果(guǒ)转(zhuǎn)化(huà)为(wèi)现(xiàn)实(shí)中(zhōng)的(de)工(gōng)业(yè)应(yīng)用(yòng)。

本(běn)文将(jiāng)展(zhǎn)示(shì)在(zài) UR10e 机(jī)器(qì)人(rén)上(shàng)进(jìn)行(xíng)齿(chǐ)轮(lún)装(zhuāng)配(pèi)任(rèn)务(wu)的(de)零样本仿真到现实迁移。这一任务在NVIDIA Isaac Lab中设计并训练,并使用NVIDIA Isaac ROS和 UR10e 底层扭矩接口进行部署。我们希望所有开发者都能复现这项工作,使用 Isaac Lab 和 Isaac ROS 开发自己的仿真到现实应用。

Isaac Lab 是一个用于机器人学习的开源模块化训练框架。Isaac ROS 是基于开源框架 ROS 2 构建的一套加速计算软件包和 AI 模型,为全球 ROS 开发者带来 NVIDIA 的计算加速能力,并提供可直接使用的常见任务模块,如导航和感知等。

Isaac Lab 中接触密集型操作的仿真

Isaac Lab 让接触密集型仿真成为可能,它支持精确的物理仿真和大规模强化学习(RL,即“通过试错学习”),可在数千个并行环境中运行。而过去,这类复杂交互仿真在计算上难以处理和实现。

Isaac Lab 包含多个具有挑战性的工业级任务,如插入销钉、啮合齿轮、旋紧螺栓。它支持模仿学习(基于演示数据的模仿)和强化学习两种训练方法,适(shì)用(yòng)于(yú)不(bù)同(tóng)类(lèi)型(xíng)的(de)机(jī)器(qì)人(rén)形(xíng)态(tài)。

b3fd210e-42c7-11f0-b715-92fbcf53809c.gif

图(tú) 1. Isaac Lab 中(zhōng)的(de)接(jiē)触(chù)密(mì)集型(xíng)仿(fǎng)真(zhēn)环(huán)境(jìng)

强(qiáng)化(huà)学(xué)习(xí)是(shì)一(yī)种(zhǒng)适(shì)用(yòng)于(yú)装(zhuāng)配(pèi)问(wèn)题(tí)的(de)强(qiáng)大(dà)方(fāng)法(fǎ),因(yīn)为(wèi)它(tā)不(bù)需(xū)要(yào)人类演示,并且对感知、控制和夹具中的误差具有很强的鲁棒性。然而,“现实差距”(仿真与现实世界之间的差距)仍然是一个关键挑战。本文所展示的工作流基于 IndustReal 框架,有效地弥合了这一差距。IndustReal 是使机器人能够通过强化学习在仿真中学习装配任务,并将其迁移到真实世界的一套算法和系统工具包。

在 Isaac Lab 中训练齿轮装配任务

齿轮装配任务包括识别、抓取、搬运并将多个齿轮插入对应的轴上。图 2 展示了任务从初始状态到一个齿轮插入完成的过程。整个过程依赖三项核心技能:抓取、自由空间运动、插入。

b449b55a-42c7-11f0-b715-92fbcf53809c.png

图 2. 在 UR10e 机器人上齿轮装配任务的抓取、运输和插入技能

抓取生成使用现成的抓取规划器来获取零件的可行抓取位姿,运动与插入动作则使用强化学习策略进行训练。尽管机械臂的运动生成技术已较为成熟,可通过经典轨迹规划器实现,但训练基于强化学习的运动生成策略,能在应对更具挑战性的插入任务前,为策略学习框架提供有效的校准与调试步骤。

图 3 展示了基于Isaac Sim与 Isaac Lab 进行运动生成和插入任务的策略学习流程。仿真环境由 Isaac Sim 提供的资产与场景配置构成,训练环境由 Isaac Lab 提供。这两项任务的策略均依赖于在 Isaac Lab 中实现的底层阻抗控制器

b45a0fd6-42c7-11f0-b715-92fbcf53809c.jpg

图 3. 使用 Isaac Sim 和 Isaac Lab 进行运动生成和插入任务的策略学习流程

如图 3 所示,运动生成和插入技能分别被构建为独立的强化学习问题。

运动生成:目标是让机器人从指定工作空间内的随机初始关节角度出发,将末端执行器移动到指定目标位姿(例如抓取位姿)。观测数据包括机器人的关节位置和目标末端执行器位姿,动作空间则由关节位置目标构成。奖励函数会最小化末端执行器与目标之间的距离,同时对机器人的突然或剧烈动作进行惩罚。

插入任务:齿轮初始位于机器人夹具中,处于目标轴附近的随机采样位姿。任务目标是将齿轮移动到轴的底部。观测数据包括机器人的关节位置和目标轴位姿,动作空间同样由关节位置目标构成。奖励函数会最小化齿轮与目标位置之间的距离,并同样对突然或剧烈动作进行惩罚。

这两项技能的关节位置目标均以 60Hz 的频率生成,由底层阻抗控制器执行。

智能体在多种随机配置下进行训练,包括不同的初始机械臂位姿、夹具中齿轮的位姿、齿轮尺寸以及任务整体阶段(例如尚未插入任何齿轮或已插入部分齿轮)。为实现仿真到现实的迁移,还对机器人动力学参数(关节摩擦和阻尼)、控制器增益以及策略观测噪声均应用了域随机化。训练在并行环境中进行,使智能体能够获得多样化且有价值的经验,这对有效学习任务至关重要。

神经网络架构与强化学习算法

每个策略均采用含 256 个单元的长短期记忆 (LSTM) 网络结构,其后连接三层多层感知器 (MLP),分别含 256、128 和 64 个神经元。训练使用 rl-games 库中的近端策略优化 (PPO) 算法,在 Isaac Sim 4.5 与 Isaac Lab 2.1 环境中,基于 NVIDIA GPU 完成训练。

训练结果

图 4 展示了 UR10e 机器人执行训练策略的效果,左侧为运动生成环节,右侧为插入环节。

b46c64a6-42c7-11f0-b715-92fbcf53809c.gif

b4affed2-42c7-11f0-b715-92fbcf53809c.gif

图 4. UR10e 机器人在 Isaac Lab 仿真中测试训练策略:运(yùn)动(dòng)生(shēng)成(chéng)(左(zuǒ))与(yǔ)插(chā)入(右)

图 5 展示了所学技能的组合应用。通过重复调用抓取规划器及两项训练技能,机器人能够完成随机摆放的三个齿轮的装配。策略对齿轮的初始位姿与装配顺序均具有鲁棒性。

b4f40ef6-42c7-11f0-b715-92fbcf53809c.gif

b56ae850-42c7-11f0-b715-92fbcf53809c.gif

图 5. 训练后的强化学习策略按顺序循环执行多步装配:移动至齿轮 1→抓取→插入→移动至齿轮 2→抓取→插入,依此类推

支持仿真-现实迁移的UR 扭矩控制接口

本研究采用阻抗控制技术,使机器人在与物体接触时实现更安全、顺应性更高(软性)的交互。相比之下,尽管位置控制器精度高,但其刚性特性可能因感知误差或现实对准问题限制适应性,甚至导致意外冲击力。阻抗控制则提供了更灵活的解决方案。

工业机器人常见的刚性位置控制器不同,阻抗控制需要直接扭矩命令,这在传统工业机器人中并不常见。UR 目前已提供早期访问版本,开发者可以使用其直接力矩控制接口,从而实现上述控制策略。

NVIDIA 团(tuán)队(duì)与(yǔ) UR 合(hé)作(zuò),基(jī)于(yú) Isaac Lab 和(hé)《IndustReal:将接触密集型装配任务从仿真迁移至现实》论文中的方法训练策略,通过 Isaac ROS 和 UR 扭矩接口在 UR10e 机器人上(shàng)部(bù)署(shǔ)。过(guò)程(chéng)中(zhōng)使(shǐ)用(yòng)了(le) Isaac ROS 的(de) Segment Anything 和(hé) FoundationPose 软(ruǎn)件(jiàn)包(bāo)。

基(jī)于(yú) Isaac ROS 与(yǔ) UR 扭(niǔ)矩(ju)接(jiē)口(kǒu)的(de)UR10e 仿(fǎng)真(zhēn)-现(xiàn)实(shí)迁(qiān)移(yí)

图(tú) 6 展(zhǎn)示(shì)了(le)从(cóng) Isaac Lab 部(bù)署(shǔ)训(xun)练策略的仿真-现实迁移框架。感知模块首先将 RGB 图像送入 Segment Anything,生成分割掩码。掩码与深度图像结合后输入 FoundationPose,输出齿轮的 6D 位姿。

b5971f7e-42c7-11f0-b715-92fbcf53809c.png

图 6. UR10e 机器人仿真-现实迁移工作流

然后,将齿轮位姿与来自 UR 关节编码器的位置数据一并输入策略,预测关节位置增量。增量值转换为绝对目标关节位置后,作为阻抗控制器的输入。自定义底层阻抗控制器采用 URScript 编写,以 500 Hz 频率运行,计算控制 UR 机器人执行任务所需的关节扭矩。

开始开发

本文展示了在 UR10e 机器人上实现齿轮装配任务的零样本仿真到现实迁移——整个任务在 Isaac Lab 中完成设计与训练,并通过 Isaac ROS 和 UR10e 底层扭矩接口实现部署。