基于视触觉传感器的机器人推动物体学习

新机器视觉

共 5962字,需浏览 12分钟

 ·

2021-11-14 21:26

点击下方卡片,关注“新机器视觉”公众号

视觉/图像重磅干货,第一时间送达

来源 |  CAAI认知系统与信息处理专委会


人类在处理物体时会利用抓握(例如抓握)和非抓握操作(例如推、拉、滚动和旋转)。在机器人中,诸如推动之类的非抓握操作是移动大、重或笨重物体、同时移动多个物体或对小物体或组件进行微调的有用方法。推动也是一种减少物体位置或姿势不确定性的有用方法,尤其是在杂乱的环境中。对于某些应用,以受控方式推动物体的能力有助于减少机器人的尺寸、复杂性、功率和成本,因为不需要复杂且昂贵的手或抓手。
 
然而,机器人推动提出了几个关键挑战。首先,推动物理分析很复杂,因为支撑力的分布大多是未知的,并且在推动操作过程中会发生变化。由于摩擦力在空间、时间和方向上的高度可变性,分析变得更加困难。其次,控制问题很难解决,因为它是非线性的,并且受到非完整约束(只有特定方向可以将物体从特定配置推入)。最后,很难从原始感官数据中提取关于物体状态和运动的准确信息。计算机视觉系统擅长提供全局状态信息,但可能存在精度低、校准错误和遮挡的问题。力/扭矩传感器和触觉传感器不会受到遮挡问题的影响,但仅提供有关物体状态的局部信息。
 
这项研究关注如何使用机器人手臂将物体从任意起始位置穿过支撑表面推到最终目标位置的问题。与大多数现有的分析和数据驱动方法相比,我们的方法不依赖于明确的推送交互模型,该模型预测对象姿势将如何响应特定推送动作而发生变化。相反,它使用反应性和自适应程序来探索物体周围以找到稳定的推动路径。具体来说,我们使用目标驱动的触觉探索来主动搜索稳定的推动配置,使对象保持相对于推动者的姿势,同时逐步将推动者和物体移向目标。为了促进这一点,我们使用来自光学触觉传感器的反馈来预测物体相对于推动器的姿态,并使用来自机器人的本体感受反馈来确定基架中推动器(末端执行器)的姿态。在平面上,我们的方法对接触位置和角度、起始位置(相对于目标位置)以及不同物体形状和大小的变化具有鲁棒性。我们方法的一般性质也使我们能够将物体推过曲面,据我们所知,这是第一次这样做。
 
1、方法
 A. 假设
 我们在这项工作中做出两个主要假设。首先,我们假设准静态相互作用,其中摩擦力主导惯性力。除了简化问题的动态性之外,这还避免了必须处理推送器在推送序列期间与对象失去接触的情况。其次,我们假设我们知道或可以测量垂直平面(或垂直于支撑表面的平面)中的传感器接触角,以使其保持平行于表面移动并避免与表面碰撞或与表面失去接触。目的。当将物体推过平面时不需要第二个假设,因为我们可以通过将相应的增益项设置为零来将推动器的运动限制在平行于表面的固定平面上。
 
B. 机器人系统和触觉传感器
 我们的实验系统包括一个 UniversalRobotics UR5 6-DoF 机械臂,配备了一个 TacTip 光学触觉传感器,我们用它来推动物体穿过一个表面。TacTip 传感器由布里斯托尔机器人实验室 (BRL) 的研究人员于 2009 年开发。我们的传感器尖端有一个充满凝胶的半球形橡胶表皮(半径20 毫米),带有 127 个内部标记,排列成六边形网格图案。虽然我们尚未调查尖端的半球形几何形状在此特定应用中的作用程度,但我们怀疑带有平垫的传感器不太适合,因为它们对物体方向的敏感性更有限。当皮肤变形时,内部摄像头(640 × 480 彩色像素,30 fps)跟踪针脚运动。根据正在执行的操作,传感器可以安装在两种不同的配置中。
  


C. 触觉伺服和目标对准
我们使用包含两个不同控制子系统的多反馈回路控制器来控制机械臂的推动运动:触觉伺服和目标对齐(见图 2)。这两个子系统协同工作以引导推动者和物体朝向目标。触觉伺服控制器的目标是在推动运动期间将传感器/推动器保持在相对于物体的固定方向和距离。第一个控制器取决于来自触觉感知子系统的反馈,该子系统包括光学触觉传感器和CNN。CNN 使用来自触觉传感器的图像来预测传感器/推动器相对于物体的姿势。第二个目标对齐控制器的目标是通过在推动移动期间围绕对象的周边移动传感器/推动器,将传感器/推动器的中心轴通过 CoF 定向到目标。第二个控制器依靠来自机器人的本体感受反馈来确定目标相对于传感器/推动器的方位和距离。
 


在描述控制器的操作时,我们将使用以下符号。我们使用大写字母来表示 3-D 坐标系。具体来说,我们使用字母B作为机械臂的基架,S作为传感器/推杆的框架,F作为特征/接触的框架,T作为目标框架(其轴平行于对应的基架轴) .在训练期间,特征/接触框架 F 是固定的(相对于 B)而 S 是移动的。在推送序列期间,F 由姿势预测CNN 的输出确定(相对于 S)。帧S'、S''和S'''分别表示参考传感器帧、触觉伺服校正帧和目标对准校正帧(见图3)。这些帧的位姿由参考传感器位姿和两个 PID 控制器产生的输出/校正信号确定。
 


 
D. 触觉姿势估计
使用CNN 来预测光学触觉传感器相对于(局部)物体表面的相对距离和方向,基于从传感器接收到的输入图像.虽然我们在工作中使用了 TacTip 传感器,但原则上,任何提供足够信息来预测状态变量的光学触觉传感器都可以在这里使用,例如 GelSight 。或者,如果使用非光学触觉传感器,则可以将CNN 替换为神经网络或其他能够学习传感器输出和姿势状态变量之间映射的非线性回归模型。使用我们基于CNN 的方法,首先将 640 × 480 ×3 触觉传感器图像转换为灰度,然后裁剪、阈值化并调整大小为 128 × 128 ×1,然后再归一化为 [0, 1] 范围内的浮点数.我们使用阈值来降低模型对环境照明和接触面图案变化的敏感性。然后将预处理后的图像作为输入应用于预测接触角和深度的CNN。
 


两个数据集用于训练和验证模型,第三个数据集用于部署前的最终测试。每个数据集包含 2000 张标记的传感器图像,我们通过在z ∈ [1, 5] mm 和 α, β ∈ [- 20, 20] 度。在数据收集期间,我们不是从上方将传感器移动到位,而是通过从随机采样的偏移量在表面上滑动/滚动将其移动到位。我们发现这提高了泛化性能并避免了复杂数据增强来模拟运动相关剪切效应的需要。我们使用 Adam 优化器(学习率 = 10^−4;衰减 = 10^−6)从随机权重初始化训练模型 100 个 epoch,或者直到均方误差验证损失显示连续10 个 epoch 没有改进。训练后,模型对 z、α 和 β 进行测试预测,平均绝对误差分别为 0.1 mm、0.39 ◦和0.34◦。需要注意的是,CNN 只训练了一次,然后该模型被用于这里考虑的所有物体和表面:对于具有不同摩擦特性的不同形状的物体,它不需要重新训练或替换。
 
E. 物体和表面
在前两个实验中,我们使用了一系列不同形状、大小和质量的棱柱形塑料物体。通过使用棱柱形物体,我们可以简化传感器接触角 β 的计算,它需要保持推动运动与支撑表面平行。由于物体的侧面垂直于支撑表面,因此该角度通常设置为零。然而,它也可以改变以补偿较软表面上物体的任何前倾。对于具有倾斜侧面的物体,例如圆锥或平截头体,传感器接触角需要从模型或测量值中获得,或者通过将触觉传感器与物体的表面和侧面接触来估计。
 
在第三个实验中,我们使用了一些不规则的日常物品来证明该方法对物体、形状、大小和材料变化的稳健性。选择这些对象是为了使用可管理数量的对象来说明各种材料属性,例如形状、纹理、柔顺性和透明度。由于我们目前的触觉传感器设计不能靠近表面放置,我们没有考虑低剖面、扁平的物体。此外,这里只考虑了平坦的水平表面,因为对于不规则的物体,弯曲的表面会带来额外的俯仰和与表面碰撞的挑战。总的来说,这足以探索对不规则物体的推动控制。未来的工作可以建立在这种方法的基础上,使用重新设计的传感器来展示更多的通用性。
 
我们将物体推过中等密度的闭孔聚乙烯泡沫板,该泡沫板可以作为水平面平放或在硬纸板成型器上弯曲以形成凸面或凹面曲面。我们之所以选择这种材料,是因为它具有广泛的可用性、可重构性,而且其更柔软的性质使其成为推动物体穿过的更具挑战性的表面类型之一。为方便起见,我们还在基础坐标系中定义了位于(-85, -330, 70, 180, -90, 0) 处的工作坐标系。这里,前三个空间坐标以毫米为单位;最后三个旋转角度(extrinsic-xyz Euler 约定)以度为单位。
 


F. 物体姿态追踪
为了在推动序列期间捕捉物体的运动,我们使用英特尔实感D435 深度摄像头来跟踪附着在每个物体上表面的ArUco 标记(25× 25 毫米)。相机使用直接从相机 API 获得的内在参数进行校准,并使用手眼校准程序计算出外在参数。我们使用来自相机的彩色图像来计算相机帧中标记的(近似)姿态,并使用在标记质心处获取的深度读数来更准确地计算它们的位置。使用外部相机参数将标记姿势和位置转换为机器人基础框架,以提供~1 mm 的位置精度。
 


2、结果
我们在三个实验中评估了我们的方法:第一个研究了该方法对初始接触位置和角度变化的稳健性;第二个评估该方法在平面和曲面上对五种不同的对象形状和三种不同的起始位置(相对于目标)的执行情况;第三个通过从第二个起始位置(我们认为这是三个起始位置中最具挑战性的)推动它们穿过平面来评估该方法对五个不规则日常物体的稳健性。
 
A. 实验1 - 改变水平平面的初始接触位置和角度
在第一个实验中,我们将蓝色方形棱镜从工作坐标系原点的起始位置推到 (0, 200, 400, 0, 0, 0) 处的目标位置。为了研究该方法如何响应初始接触位置和角度的变化,我们从七个不同的空间偏移和沿最靠近传感器的物体一侧的三个不同的角度偏移启动了推动序列。我们使用了 (-30, -20, -10, 0, 10, 20, 30) mm 范围内的空间偏移和 (-20, 0, 20) ° 范围内的角度偏移,并记录了传感器和物体(ArUco 标记))空间和角度偏移的每种组合的十次试验的轨迹。我们还计算了在推动序列完成时从传感器的中心轴到目标的距离y_targ 的平均值± 标准偏差,以衡量推动者能够接近目标的距离。在这个实验中,我们在7 ×3 × 10 = 210 次试验中计算出这些值是 1.27 ± 0.51mm。
 
尽管初始接触位置和角度发生变化,但轨迹都以良好的精度平滑地收敛在目标上,证实该方法对初始配置的变化具有鲁棒性。
 
B. 实验2 - 改变平面和曲面的对象形状和相对于目标的起始位置
在第二个实验中,我们将五个几何对象从三个不同的起始位置推向(0, 200, 400, 0, 0, 0) 处的目标。对于第一个开始位置(在此图中标记为“开始 1”),传感器最初移动到工作框架的原点,就像第一个实验一样。对于第二个起始位置(“start 2”),传感器在位姿 (0, 0, 200,-150, 0, 0) 处初始化,该位姿更接近目标但指向相反的方向,以便进行更广泛的机动需要才能达到它。对于第三个起始位置(“start 3”),传感器在姿势 (0, 200,150, 45, 0, 0) 处初始化,该姿势更接近目标但指向远离目标,以便更快速地机动达到它所必需的。
 
对于每个开始位置,物体直接放置在传感器尖端的前面并旋转到最不利(不稳定)的配置,使得物体的外角位于传感器尖端的中心。对于曲面,我们增加了起始姿势的高度,以允许在凸面的中心和凹面的边缘处增加 45 毫米的表面高度。
 
对于物体和起始位置的 5 × 3 = 15 组合中的每一个,我们记录了十次试验中的传感器和物体轨迹,并计算了距离 y_targ 的平均值± 标准偏差,作为推动者能够接近目标的距离的度量。目标。这些值在图 10 中与相应的传感器和对象轨迹一起显示。每五次推动运动绘制轨迹以避免数字变得过于混乱。在所有对象和起始位置中,距离 y_targ 的平均值± 标准偏差为1.18 ± 1.10 毫米。对于凸曲面和凹曲面,这些值分别增加到5.54 ± 4.17 mm 和 4.78 ± 3.35 mm。
 
C. 实验 3——在平面上推动不规则的日常物体
在第三个实验中,我们将五个不规则的日常物体从第二个起始位置(“start2”)的随机初始方向推向(0, 200, 400, 0, 0, 0)处的目标。由于在这个实验中,我们还改变了物体的初始方向,我们决定将起始位置的数量限制为一个,以避免过多的实验配置。无论如何,我们认为第二个起始位置是最具挑战性的,足以证明该方法可以应对推动一系列不规则形状的日常物品。我们对不规则物体和其他实验条件的选择在方法的第 III-E 节中进行了解释。
 
对于每个物体,我们记录了十次试验(每次从不同的随机物体方向开始)的传感器和物体轨迹,并计算了距离 y_targ 的平均值±标准偏差,作为推动者接近目标的距离的衡量标准。这些值显示在图11 第一列中相应的传感器和对象轨迹旁边。在所有对象和(随机)起始方向上,距离ytarg 的平均值± 标准偏差为3.05 ± 3.36 毫米。
 
3、讨论
本文提出了一种基于目标触觉探索的机器人推动方法。我们已经证明它可以达到良好的精度,并且对初始接触位置和角度的变化以及不同的物体形状和相对于目标的起始位置具有鲁棒性。在这项工作中,我们已经证明,无需直接模拟推动者 - 对象交互的动力学,就可以在机器人推动方面表现良好。尽管我们在我们的系统中使用了一个模型(CNN 姿势预测模型),但我们还没有使用一个模型来明确地尝试预测对象姿势如何响应特定的推动动作而发生变化。这就提出了一个有趣的问题,即应该对系统的哪些方面进行建模(无论采用何种建模方法)以实现最佳性能。迄今为止,大部分工作都集中在对象交互的动力学建模上,但事实证明,这可能不是推广到不同情况的最容易的方面。我们还表明,虽然推动弯曲表面比平坦的水平表面更具挑战性,但仍然可以使用简单的方法实现合理的性能水平。由于大多数现实世界的应用不太可能仅限于平坦的水平表面,因此我们认为该领域的未来研究在开发新方法时也考虑非平面表面和其他更复杂的环境是很重要的。

—版权声明—

仅用于学术分享,版权属于原作者。

若有侵权,请联系微信号:yiyang-sy 删除或修改!


—THE END—
浏览 34
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报