“抓取再吸取的连续操作学习”研究工作发表于IEEE Trans. on Robotics:仿人手的柔性抓取,超人手的指背吸取!

本文主要是介绍“抓取再吸取的连续操作学习”研究工作发表于IEEE Trans. on Robotics:仿人手的柔性抓取,超人手的指背吸取!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

长期以来,抓取一直被认为是机器人操作中一项重要而实际的任务。然而,实现对不同物体的稳健和有效的抓取具有挑战性,因为它涉及夹具设计、感知、控制和学习等。最近基于学习的方法在抓取各种新物体方面表现出优异的性能。然而,这些方法要么通常仅限于一种单一的抓取模式,要么需要更多的末端执行器来抓取各种物体。此外,末端手的设计和学习方法通常是单独开发的,这可能无法充分探索多模态抓取能力。

Hybrid Robotic Grasping With a Soft Multimodal Gripper and a Deep Multistage Learning Scheme | IEEE Journals & Magazine | IEEE Xplore

近期清华大学计算机系孙富春教授团队在IEEE Transactions on Robotics发表的工作,提出了多模式软体手,实现自主多级混合的机器人抓取。软抓手具有三种抓取模式(即包络、吸取和包络_然后_吸取),既可以处理不同形状的物体,也可以同时抓取多个物体。我们提出了一种与多模态夹持器相结合的新型混合抓取方法,以优化抓取动作的数量。我们评估了不同场景下的 DRL 框架(即,两种抓握类型的对象比例不同)。与单一抓取模式相比,所提出的算法被证明可以减少抓取动作的数量(即提高抓取效率,模拟中的最大值为 161.0%,真实世界实验中的最大值为 153.5%)。
在这里插入图片描述

一.抓手的设计

如图所示,这种夹持器设计成对称的,四个手指围绕垂直轴(重力方向)均匀分布,每个手指由软室、卡纸层、力传感器和吸盘组成[见 图 2(a)]。每个手指的弯曲都可以通过伺服驱动的肌腱拖动来实现。我们可以通过使用具有不同腿部角度的扭力弹簧来调整夹持器开口的限制尺寸。此外,安装在指尖背面的真空吸盘用于产生吸力。所有的空气通道都是独立的,尽管它们共享一个真空源,保证了稳定的吸力。此外,每个指尖都配备了一个压阻式压力传感器来获取接触力,还配备了一个姿态传感器来获取手指的姿势信息。这样的设计确保了精确的控制,并允许 SMG 以混合方式抓取多个异构对象。
在这里插入图片描述

我们通过参考 3-D 模型构建了 SMG 的原型,如图 2(d)-(f) 所示。我们使用两种类型的硅橡胶制造了手指的软致动器:较软的 Ecoflex 0050 和较硬的 Nasil 4230。我们使用柔性钓鱼线作为 U 形肌腱来驱动四个手指并实现不同模式的弯曲变形。此外,我们将由 18 层纸和弹簧钢片组成的卡纸层逐层堆叠在一起。然后,我们将它们塞入软室内,以实现有效的可变刚度,从而提高多模式抓取性能。增加腔室中的气压主要使手指变硬,而不会产生太大的弯曲变形。

二. 学习策略

抓取过程涉及物体检测、抓取选择和机器人(夹具)控制。由于 SMG 的可变结构和可变形特性,很难开发一个精确的模型来捕捉它的所有特征。此外,由于其高主动/被动自由度和约束,SMG 的规划和控制也并非微不足道。寻找一种策略来最小化抓取动作的数量本质上是一个顺序学习问题,其中 SMG 与不确定的抓取环境相互作用,其动作可能会影响未来的情况。因此,在这项工作中,我们使用强化学习来生成保证最佳抓取效率的多模态抓取动作。

如图所示:(a) Clor 和深度高度图是通过深度相机捕获的RGB-D 图像的投影变换生成的。高度图的边缘是根据机器人工作空间的边界预定义的。然后使用 Mask R-CNN 获得掩码。最后,我们得到深度掩码。(b) 三个深度 Q 网络将一个或两个对象的深度高度图(即局部属性)与所有对象的深度高度图(即全局属性)连接起来作为输入,并输出三个 Q 值矩阵。© 执行使 Q 值最大化的动作。对于包络动作,通过弯曲四指对目标对象进行包络抓取。对于吸取动作,一个吸盘对目标对象执行吸取。enveloping_then_sucking 动作是对两个目标对象分别和顺序执行的包络和吸取的组合。
在这里插入图片描述

三种抓取动作:包络、吸取和包络_然后_吸取。如图所示:(a) 夹具的包围和吸取姿势。为了包络目标物体,必须首先确定包络方向αe、包络旋转角度γe和夹持器张开距离d。然后进行预包络过程,包括绕 z 轴旋转角度 γe 和手指的弯曲位移以实现包络开口距离 d。最后,夹持器接近目标物体,进一步弯曲位移施加到手指以实现包围动作。对于吸取,必须首先导出吸取方位αs和吸取旋转角γs。然后执行预吸过程,包括手指的弯曲位移,然后绕z轴旋转角度γs,然后绕框架G的x轴旋转角度θs。最后,吸盘2 接近目标位置并执行吸取动作。 (b) 3D 抓取环境中三个动作中的每一个所涉及的过程。enveloping_then_sucking 动作是 enveloping 动作和 sucking 动作的组合。
在这里插入图片描述

三.结果

在本节中,我们使用一组实验评估 SMG 的性能以及我们提出的方法的有效性。首先,我们介绍训练数据集。其次,我们验证了我们的 SMG 的多模态抓取能力,并展示了我们的方法确保无碰撞抓取的能力。然后,我们训练我们的 DRL 算法并测试其适应基于模拟环境的多模态抓取的能力。最后,我们的混合抓取框架的准确性和效率在真实世界和模拟实验中得到了验证。通过混合抓取明显不同的物体来说明抓取效率,例如,更适合吸取的扁平物体和更适合包裹的圆形物体。

这些实验的目的阐明如下:

1)证明我们设计的软抓手在抓取不同种类的物体时具有良好的适应性和灵活性。

2)评估我们提出的算法的性能及其实现多模式自主抓取的能力。

3)研究两种物体的不同比例对抓取效率的影响,并验证我们的多模态抓取模式优于单一抓取模式。

  1. 用于训练和测试的数据集。我们的数据集涵盖 13 个对象类别,每个类别包含一个或多个子类型。模拟数据集是从一组 3-D 模拟模型生成的,这些模型随机分为训练集和测试集。我们使用模拟器 CoppeliaSim 为模拟中使用的每个子类型创建五种不同大小的对象。真实的数据集是从生活场景中收集的。
    在这里插入图片描述

  2. 多模态抓手的抓取演示。(a) 包络圆形物体。(b) 吸取平面物体。© Enveloping_then_sucking 两类对象。
    在这里插入图片描述

  3. 模拟和现实场景中四种情况的吸取方向优化。图像右上角的快照是每个状态的颜色高度图。包络和吸取的目标对象分别由红色和绿色矩形包围,它们是最小面积的边界框。
    在这里插入图片描述

  4. 训练表现。(a) 在培训步骤中掌握三种行动的效率。当系统选择正确的动作时,抓取效率显着提高(即,策略分别对适合包围和吸取的对象执行包围和吸取动作,并最大化完全成功的 enveloping_then_sucking 动作)。(b) 三种类型的动作在训练步骤的成功动作中的分布。enveloping_then_sucking 动作有两个成功标准(即拾取两个物体的完全成功动作和仅拾取一个物体的半成功动作)。完全成功的 enveloping_then_sucking 动作的比例在训练步骤中显着增加,有助于抓取效率的最大化。
    在这里插入图片描述

  5. 多模态抓取策略在模拟和真实测试中的表现。(a)–© 11 种不同比例的适合包封的物体的三种动作分布。每个比例对应一组包含 200 个动作并重复 3 次的实验。图 (d) 和 (e) 显示了三种动作在总实验中的分布,其中包含 11 组子实验(11 × 200 个动作)并重复 3 次。(f) 适合包封的不同比例物体的成功率和抓取效率。
    在这里插入图片描述

  6. 性能评估

为了评估我们训练的混合抓取模型的性能,我们在两种类型物体的不同比例的场景中测试了该方法,以测量抓取率和抓取效率。
在这里插入图片描述

五.总结

在这项工作中,我们开发了一个基于学习的机器人混合抓取框架,包括抓手设计、抓取建模、基于模拟的训练和模拟到真实的转移。我们的目标是尽量减少抓取动作的数量,以优化抓取效率。我们设计了一个包含四个手指的 SMG,每个指尖的背面都有一个真空杯。它具有多模态抓取能力,具有包覆、吸取和包覆再吸取三种抓取模式,使抓取器能够处理异质物体并同时抓取多个物体。所提出的混合抓取学习方法可以实现多阶段自主抓取,可用于充分探索 SMG 的能力。

我们在仿真环境使用 DRL 训练了我们的学习模型。我们在模拟和现实中测试了经过训练的模型。结果表明,三个执行动作的分布对工作空间中两类对象的比例敏感。执行的包裹和吸吮动作的数量分别与 Pe(即适合包裹和吸吮的物体比例)呈正相关和负相关。然而,enveloping_then_sucking 动作的执行次数只有在 Pe 接近 50% 时才会增加,并且在 Pe=50% 时达到最大值。我们的方法在模拟中获得了 93% 的平均成功率和 161% 的最大抓取效率,在真实机器人实验中达到了 88% 的平均成功率和 154% 的最大抓取效率。这表明我们的混合抓取模型优于传统的单一抓取模式方法,后者的抓取效率低于 100%。此外,我们的 DRL 策略能够处理新物体,并且可以可靠地从模拟转移到现实世界。该代码可在 https://github.com/fukangl/SMG-multimodal-grasping 获得。

未来的工作包括实施所提出的方法以在杂乱的环境中抓住指定的目标;例如,优化场景中的抓取动作,其中目标对象被具有不同特征的非目标对象包围并且不允许过头抓取。我们也有兴趣减小 SMG 的尺寸,以实现精细的操作和抓取任务,例如组装、表面处理和整形等。

这篇关于“抓取再吸取的连续操作学习”研究工作发表于IEEE Trans. on Robotics:仿人手的柔性抓取,超人手的指背吸取!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/531715

相关文章

使用Java填充Word模板的操作指南

《使用Java填充Word模板的操作指南》本文介绍了Java填充Word模板的实现方法,包括文本、列表和复选框的填充,首先通过Word域功能设置模板变量,然后使用poi-tl、aspose-words... 目录前言一、设置word模板普通字段列表字段复选框二、代码1. 引入POM2. 模板放入项目3.代码

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Python内存管理机制之垃圾回收与引用计数操作全过程

《Python内存管理机制之垃圾回收与引用计数操作全过程》SQLAlchemy是Python中最流行的ORM(对象关系映射)框架之一,它提供了高效且灵活的数据库操作方式,本文将介绍如何使用SQLAlc... 目录安装核心概念连接数据库定义数据模型创建数据库表基本CRUD操作创建数据读取数据更新数据删除数据查

Go语言中json操作的实现

《Go语言中json操作的实现》本文主要介绍了Go语言中的json操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 一、jsOChina编程N 与 Go 类型对应关系️ 二、基本操作:编码与解码 三、结构体标签(Struc

C#利用Free Spire.XLS for .NET复制Excel工作表

《C#利用FreeSpire.XLSfor.NET复制Excel工作表》在日常的.NET开发中,我们经常需要操作Excel文件,本文将详细介绍C#如何使用FreeSpire.XLSfor.NET... 目录1. 环境准备2. 核心功能3. android示例代码3.1 在同一工作簿内复制工作表3.2 在不同

Python屏幕抓取和录制的详细代码示例

《Python屏幕抓取和录制的详细代码示例》随着现代计算机性能的提高和网络速度的加快,越来越多的用户需要对他们的屏幕进行录制,:本文主要介绍Python屏幕抓取和录制的相关资料,需要的朋友可以参考... 目录一、常用 python 屏幕抓取库二、pyautogui 截屏示例三、mss 高性能截图四、Pill

Java 字符串操作之contains 和 substring 方法最佳实践与常见问题

《Java字符串操作之contains和substring方法最佳实践与常见问题》本文给大家详细介绍Java字符串操作之contains和substring方法最佳实践与常见问题,本文结合实例... 目录一、contains 方法详解1. 方法定义与语法2. 底层实现原理3. 使用示例4. 注意事项二、su

Java Stream流与使用操作指南

《JavaStream流与使用操作指南》Stream不是数据结构,而是一种高级的数据处理工具,允许你以声明式的方式处理数据集合,类似于SQL语句操作数据库,本文给大家介绍JavaStream流与使用... 目录一、什么是stream流二、创建stream流1.单列集合创建stream流2.双列集合创建str

Python正则表达式匹配和替换的操作指南

《Python正则表达式匹配和替换的操作指南》正则表达式是处理文本的强大工具,Python通过re模块提供了完整的正则表达式功能,本文将通过代码示例详细介绍Python中的正则匹配和替换操作,需要的朋... 目录基础语法导入re模块基本元字符常用匹配方法1. re.match() - 从字符串开头匹配2.

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo