当前位置: 首页 > article >正文

机器人对物体重定向操作的发展简述

物体重定向操作的发展简述

  • 前言
  • 1、手内重定向和外部重定向
  • 2、重定向原语
  • 3、重定向状态转换网络
  • 4、连续任意姿态的重定向
  • 5、利用其他环境约束重定向
  • 总结
  • Reference


前言

对于一些特殊的任务(如装配和打包),对物体放置的位姿由明确的要求,但由于机器人有限的旋转角度和环境的约束,一次抓取放置即可达到目标姿态有时是困难的,这时就需要实施物体的重定向操作。

本文按照手内操作和外部操作的分类,主要对外部操作的重定向方法按照发展历程进行简单的介绍。


1、手内重定向和外部重定向

手内重定向指利用灵巧手和控制策略实现物体的重定向的方法,不需要与外部的环境接触。

外部重定向指夹爪利用桌面或者环境中的其他约束,通过操作原语使物体重定向的方法。
物体重定向场景

多指手重定向的场景 [1, 2]。(1)手部朝上的手内重定向。(2)手部朝下的外部重定向(利用桌面)。(3)手部朝下的手内重定向。

上图所示为多指手的手内重定向和外部重定向的场景。

多指手的手内重定向又分为手部朝上和手部朝下两种情况,手部朝下的重定向还需要考虑到重力的影响。

外部重定向利用了外界环境的约束,所以其可以使用更少的手指或者更简单的末端执行器完成重定向。

本文则把重点放在外部重定向,即利用外界环境约束(如桌面)的重定向方法。

2、重定向原语

对物体重定向的研究,最早可以追溯到1980s,最初的研究是在桌面上使用原语重定向物体。这些原语包括push,squeezing,pivoting,和toppling等。这些原语按又可以分为平面重定向和6D重定向。

平面重定向主要利用push或者squeezing使物体在平面上进行移动或者旋转(旋转轴始终垂直于桌面),使其达到新的位置和姿态。但是这种方法得到的新的位姿是有限的,因为其接触面始终没有改变,所以称其为平面重定向。
平面重定向原语

平面重定向案例。(a)Push原语实现重定向 [3]。(b)Squeezing原语实现重定向 [4]。

6D重定向是采用pivoting或toppling等原语使得物体进行翻转到达一个新的六维空间姿态,其能够实现的姿态是该物体能够达到任意稳定姿态,所以称为6D重定向。

6D重定向原语

6D重定向案例。(a)Pivoting原语实现重定向 [5]。(b)Toppling原语实现重定向 [6]。

Pivoting和toppling的区别:Pivoting是指物体围绕一个固定点或轴旋转,而toppling则是物体因重心超出支撑面而倾倒。简单来说,pivoting保持稳定,而toppling则涉及失去平衡。

3、重定向状态转换网络

在搞清楚上述能够完成重定向原语的工作机制之后,接下来就是重定向规划,如何从物体的一个稳定位姿达到另一个稳定的位姿。

如下图所示就是一个基于原语的重定向规划器案例。首先,在离线阶段,规划器构建一个结构化的状态网络,包括所有在这些状态中至少可以执行roatation或pivoting原语能到达的物体方向状态。在线阶段,规划器可以被重复触发,以在状态网络中找到从初始方向到目标方向的序列化路径。
基于原语的重定向规划器

基于原语的重定向规划器 [5]。(a)树状结构的状态转换流程。(b)网状结构的状态转换。其中S代表物体的离散稳定状态,(a, θ)表示绕旋转轴a旋转角度θ。

通过对物体离散稳定状态之间的转换关系进行原语化转换,可以构建一个物体的转态转换网络,将从初始状态到目标状态的复杂三维重定向操作分解为多步骤的二维重定向原语的操作。

4、连续任意姿态的重定向

由于上述方法主要适用于物体的离散稳定位姿,而且物体的形状多是规则的形状。接下来的研究将离散姿态扩展到任意姿态,将规则形状扩展到不规则形状。

任意姿态的重定向

任意姿态的重定向 [7-9]。(a)使用Pivoting将物体重定向到任意姿态 [7]。(b)利用中间的过渡位姿来重定向到目标位姿 [8]。

上图所示即为针对不规则物体的任意位姿重定向的代表性研究工作。

(a)提出了一种算法,使用pivoting and rolling两种运动原语,高效地规划双指夹持器在桌面上重定向3D物体到任意姿态,即使在夹持器工作空间受限的情况下也能减少建立和断开接触的次数。

(b)提出了一种学习驱动的分层规划方法,通过预训练的路径成本估计和模拟交互训练,快速找到可行的低成本路径解决方案,以实现机器人对物体的任意目标姿势操纵任务。

5、利用其他环境约束重定向

之前的博客中已经介绍过利用环境约束或者外界资源辅助机器人操作:

  • 机器人如何利用环境约束辅助抓取?
  • 机器人利用外界资源辅助操作

同样对于重定向操作,这些环境约束和外界资源也可以辅助重定向。

如下图(a)所示,对于放置在桌面上的扳手,机器人很难直接翻转扳手来利用它,但是可以先将其放置在环境中的container上,使其暴露出可再抓取的部位,方便翻转扳手。

下图(b)则是同时利用了鞋子和盒子边缘接触和重力完成鞋子的掉落和翻转,大大提升了鞋子打包的效率。
利用外界资源重定向

利用外界资源重定向。(a)利用环境中的container翻转扳手以使用扳手的另外一面 [10]。(b)利用盒子边缘接触和重力翻转鞋子到目标打包姿态 [11]。


总结

本文主要按照时间的顺序,简要地介绍了重定向相关的研究,主要包括外部重定向中的重定向原语,重定向状态转换网络,连续任意姿态的重定向,和利用其他环境约束重定向,为相关人员提供参考。

本文为个人观点,如有描述不当或者错误之处,请批评指正。

Reference

[1] Chen T, Xu J, Agrawal P. A system for general in-hand object re-orientation[C]//CoRL. PMLR, 2022: 297-307.
[2] Chen T, Tippur M, Wu S, et al. Visual dexterity: In-hand dexterous manipulation from depth[C]//ICML workshop on new frontiers in learning, control, and dynamical systems. 2023.
[3] Lynch K M. The mechanics of fine manipulation by pushing[C]//ICRA. 1992: 2269-2276.
[4] Brost R C. Planning robot grasping motions in the presence of uncertainty[M]. Carnegie-Mellon University, The Robotics Inst itute, 1985.
[5] Omata T, Farooqi M A. Reorientation planning for a multifingered hand based on orientation states network using regrasp primitives[C]//IROS. Innovative Robotics for Real-World Applications. IROS’97. IEEE, 1997, 1: 285-290.
[6] Lynch K M. Inexpensive conveyor‐based parts feeding[J]. Assembly Automation, 1999, 19(3): 209-215.
[7] Hou Y, Jia Z, Mason M T. Fast planning for 3d any-pose-reorienting using pivoting[C]//ICRA. IEEE, 2018: 1631-1638.
[8] Xu K, Yu H, Huang R, et al. Efficient object manipulation to an arbitrary goal pose: Learning-based anytime prioritized planning[C]//ICRA. IEEE, 2022: 7277-7283.
[9] Wada K, James S, Davison A J. Reorientbot: Learning object reorientation for specific-posed placement[C]//ICRA. IEEE, 2022: 8252-8258.
[10] Xu P, Cheng H, Wang J, et al. Learning to reorient objects with stable placements afforded by extrinsic supports[J]. IEEE TASE, 2023.
[11] Dong Y, Duan J, Liu Y, et al. Robotic Shoe Packaging Strategies Based on a Single Soft-Gripper System and Extrinsic Resources[C]//ICARM. IEEE, 2023: 469-475.


http://www.kler.cn/a/466153.html

相关文章:

  • 一文讲明白朴素贝叶斯算法及其计算公式(入门普及)
  • 【蓝桥杯研究生组】第14届Java试题答案整理
  • Flutter 实现 列表滑动过程控件停靠效果 学习
  • 若依中Feign调用的具体使用(若依微服务版自身已集成openfeign依赖,并在此基础上定义了自己的注解)
  • django vue3实现大文件分段续传(断点续传)
  • Windows应用开发-解析MP4视频文件(第1部分)
  • 无人机+无人车+无人船:海空地协同解决方案技术详解
  • Mac Android Studio 提升Mac的编译速度
  • 如何使用Python调用淘宝api接口获取商品详情信息?
  • 腾讯 HunyuanVideo 上线,自定义文本生成视频
  • Python(四)——SVG 图坐标轴数字和其他文本设置总结
  • Mac设置默认打开程序
  • 学生心理咨询评估系统(源码+数据库+文档)
  • 【LC】191. 位1的个数
  • Python Notes 1 - introduction with the OpenAI API Development
  • PyTorch快速入门教程【小土堆】之完整模型训练套路
  • gin集成Swagger
  • DjangoORM字段参数、常用字段类型及参数、模型和表单验证器详解
  • 三格电子新品上市——IEC103 转 ModbusTCP 网关
  • Redis - 7 ( 11000 字 Redis 入门级教程 )
  • springBoot集成netty中登录鉴权、在pieline消息传递
  • df.groupby(pd.Grouper(level=1)).sum()
  • 解决 `pnpm install` 出现 `ERR_PNPM_ENOENT` 错误的方法
  • 【前端】掌握 JavaScript Map:从入门到精通
  • “善弈者”也需妙手,Oclean欧可林:差异化不是说说而已
  • 适用于小白的程序报错提问 AI 模板