一种适用于机械手自动抓取的物体重心检测方法与流程

文档序号:15990747发布日期:2018-11-17 02:10阅读:493来源:国知局
一种适用于机械手自动抓取的物体重心检测方法与流程

本发明公开了一种检测物体重心的方法,特别是涉及一种适用于机械手自动抓取的物体重心检测方法。

背景技术

对于家用服务机器人和工业机器人,会面临大量抓取物体的任务。机器人抓取物体时,确定物体的重心至关重要,例如,如果夹持点在过物体的重心的铅垂线上,物体在被提起的过程中不会发生旋转,如果夹持点不在过物体重心的铅垂线上,重力对于夹持点产生转矩,导致物体在被提起时旋转,使得夹持操作不稳定,引发意外情况导致抓取失败。因此,如果在机器人抓取物体之前确定物体的重心位置,能大大提高抓取成功率。

物体重心作为物体的内部参数,其位置与物体的三维形状、材料密度、质量分布均匀性等密切相关,如何确定一个物体的重心位置是比较困难的。当前,在该技术领域,对于物体重心的检测方法涉及较少,主要集中于通过搭建重心检测平台、使用大量传感器测得物体重心,该方法对于设备的配置要求较高,使用复杂,如授权公告号cn103091042b和授权公告号cn104142209b等所示的专利。且这些方法都不适用于机械手自动抓取的应用领域。



技术实现要素:

本发明所要解决的技术问题是提出一种适用于机械手自动抓取的物体重心检测方法,这种方法通过两次夹持动作,已知物体重量和物体与机械手之间的摩擦系数,从而检测得到物体的重心位置。在每一次夹持动作中,二指机械手用相同的力夹持住物体,将物体提起离开支撑面。

本发明采用的技术方案如下:

一种适用于机械手自动抓取的物体重心检测方法,如下:

步骤1.预先获取检测物体重心位置所需的相关参数;

步骤2.对被抓取物体进行两次抓取操作,结合预先获取的相关参数,分别计算得到被抓取物体四个可能的重心坐标值:

c1=(x1,y1),c2=(x2,y2),c3=(x3,y3),c4=(x4,y4);

步骤3.对得到的四个可能的重心坐标值进行计算,从中确定唯一的重心坐标。

进一步的,所述步骤1中,预先获取的参数包括物体的重力g、机械手对物体的抓取力f、机械手指与被抓取物体之间的摩擦系数μ、机械手圆形手指与被抓取物体接触面的半径r、两次抓取操作时物体的旋转角度θ1,θ2以及在对物体的两次抓取操作中,物体完全离开支撑面后,可得到过抓取点的铅垂线与y坐标轴的交点坐标(0,a1)和(0,a2)。

具体的获取方法如下:

通过机械手上的力传感器获取物体的重力g及机械手对物体的抓取力f;

通过相关数据库查询得到机械手指与被抓取物体之间的摩擦系数μ;

通过游标卡尺测量得到机械手圆形手指与被抓取物体接触面的半径r;

通过固定在机械手手指上的全方位滑觉传感器获得物体两次抓取操作时物体的旋转角度θ1,θ2;

在对物体的两次抓取操作中,物体完全离开支撑面后,可得到过抓取点的铅垂线方程分别为:

l1:y=tanθ1·x+a1

l2:y=tanθ2·x+a2(1)

据上述式(1)可获得铅垂线l1,l2分别与y坐标轴的交点坐标(0,a1)和(0,a2)。

进一步的,所述步骤2中,计算被抓取物体四个可能的重心坐标值计算公式如下:

其中,u=1,2,3,4;由上式可以分别计算得到被抓取物体四个可能的重心坐标值:c1=(x1,y1),c2=(x2,y2),c3=(x3,y3),c4=(x4,y4)。

进一步的,所述步骤3中确定唯一重心坐标的过程如下:

步骤3-1设定u的初始值,即u=1;

步骤3-2将(xu,yu)带入公式m(u)=yu-xu·tanθ1-a1;

步骤3-3判断m(u)与θ1正负号是否相同,如果相同,转到步骤3-4;如果不同,则将u设定成u=u+1;从新转到步骤3-2进行判断;

步骤3-4将(xu,yu)带入公式n(u)=yu-xu·tanθ2-a2;

步骤3-5判断m(u)与θ2正负号是否相同,如果相同,则输出重心位置(xu,yu),结束;如果不是,则将u设定成u=u+1;从新转到步骤3-2从新进行判断。

所述的检测方法使用的原理是:

机械手与物体接触面的摩擦转矩与重力对于夹持点的力矩平衡。当机械手夹持物体的位置不在过物体重心的铅垂线上时,物体在被提升的过程中会发生旋转,在机械手与物体的接触面之间产生摩擦力,形成摩擦转矩。由于重力的作用线不过机械手对于物体的夹持点,因此重力对于夹持点产生力矩。力矩与摩擦转矩相平衡。

本发明所述物体重心的计算方法,使用机械手对物体进行两次抓取,即可简单有效的检测得到物体的重心位置,不受物体形状和质量分布的影响,且实现结构简单,所需传感器较少,在家用服务机器人及工业机器人中有较大的实用价值。

本发明的有益效果

1、本发明解决了机器人实际抓取操作中,检测重心较为困难的问题,已知物体重力和摩擦系数,仅通过两次抓取即可求得物体重心的位置。

2、现有的检测物体重心的方法需要复杂的传感器设备,本发明简化了测量设备,使用能控制夹持力的机械手,使用全方位的滑觉传感器,已知物体重力和物体与机械手之间的摩擦系数,即可求得物体重心位置。

3、本发明在家用服务机器人及工业机器人中有较大的实用价值。

附图说明

构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。

图1二指机械手模型图

图2机械手夹持物体示意图

图3物体被机械手提升离开支撑面示意图

图4摩擦转矩计算说明图

图5重心位置计算说明图

图6从四个可能的重心坐标中确定唯一的重心坐标流程图

图中:01二指机械手、02全方位滑觉传感器。

具体实施方式

应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合;

正如背景技术所介绍的,当前,在该技术领域,对于物体重心的检测方法涉及较少,主要集中于通过搭建重心检测平台、使用大量传感器测得物体重心,该方法对于设备的配置要求较高,使用复杂,如授权公告号cn103091042b和授权公告号cn104142209b等所示的专利。且这些方法都不适用于机械手自动抓取的应用领域。

为了解决如上的技术问题,本申请提出了一种适用于机械手自动抓取的物体重心检测方法,这种方法通过两次夹持动作,已知物体重量和物体与机械手之间的摩擦系数,从而检测得到物体的重心位置。在每一次夹持动作中,二指机械手用相同的力夹持住物体,将物体提起离开支撑面。

本申请的一种典型的实施方式中,一种适用于机械手自动抓取的物体重心检测方法,包括以下步骤:

步骤1.预先获取检测物体重心位置所需的相关参数;

步骤2.对被抓取物体进行两次抓取操作,结合预先获取的相关参数,分别计算得到被抓取物体四个可能的重心坐标值:

c1=(x1,y1),c2=(x2,y2),c3=(x3,y3),c4=(x4,y4);

步骤3.对得到的四个可能的重心坐标值进行计算,从中确定唯一的重心坐标。

参数具体的获取方式如下:

图1所示的为二指机械手模型,通过二指机械手01上的力传感器获取物体的重力g及机械手对物体的抓取力f;

由于机械手所抓取的物体表面材质有限,因此,可通过相关数据库查询得到机械手指与被抓取物体之间的摩擦系数μ;

机械手与物体的接触面以圆形为例,通过游标卡尺测量得到机械手圆形手指与被抓取物体接触面的半径r;

通过固定在机械手手指上的全方位滑觉传感器02获得物体两次抓取操作时物体的旋转角度θ1,θ2;在对物体的两次抓取操作中,物体完全离开支撑面后,可得到过抓取点的铅垂线方程分别为:

l1:y=tanθ1·x+a1

l2:y=tanθ2·x+a2(1)

根据上述式(1)可获得铅垂线l1,l2分别与y坐标轴的交点坐标(0,a1)和(0,a2)。

上述检测方法中,机械手与物体的接触面为圆形,仅仅是便于对检测方法进行说明,但本发明不局限于圆形接触平面。

进一步的,所述的检测方法中,每一次机械手对同一物体进行抓取,将物体提升离开支撑面后,保持抓取的抓取力f相同,则重心到过夹持点的铅垂线的距离相同。

进一步的,所述的检测方法中,在四个可能重心位置坐标中,选择真实重心位置坐标使用了一系列的矩阵运算。

机械手对物体进行一次抓取动作的示意图如图2所示,其中,将整个抓取状态投影在xoy平面上,z轴垂直于纸面向外。在图2所示的坐标系内,二指机械手的两个手指在x轴和y轴的坐标相同,在z轴的坐标不同。

本检测原理是机械手与物体接触面的摩擦转矩与重力对于夹持点的力矩平衡。其中,重力到夹持点的力矩主要取决于物体重力的大小与重力到夹持点的力臂。重心在z轴上的位置变化对重力到夹持点的力臂的影响非常小,可以忽略,因此,取重心在xoy平面上的投影c点代表重心的位置。

由于机械手所抓取位置不在过重心的铅垂线上,在物体被提升的过程中,由于重力的作用发生如图3所示的旋转。

当物体被完全提升至离开支撑平面的时候,过机械手与物体的接触面的直线为l,如图3中虚直线所示。由于机械手与物体的接触面之间存在摩擦转矩,物体的重心不会旋转到直线l上,而是旋转到距离l一定距离的位置,如图3中c点所示。c点距离l的距离为d。物体的重力作用在重心c上,重力如图3中g表示。机械手作用在物体上的摩擦转矩如图3中m所示。根据力矩与摩擦转矩相平衡的原理,可得公式(1)。

m=g·d(1)

计算圆形接触面的摩擦转矩使用公式(2)

m=∫0r∫0σ*μ*r*da(2)

在公式(2)中,da=r*dα*dr;f代表抓取力;s代表抓取区域;μ代表摩擦系数;r代表接触面的半径;dα,dr,分别是面积积分微元,如图4所示。

经计算,得公式(3)

将公式(1)与公式(3)结合求解d,得公式(4)

机械手对同一物体进行抓取时,参数r、μ、g显然恒定不变;

如图5所示,如果机械手分别在抓取点gp1,gp2连续两次以相同的抓取力f抓取物体,物体完全离开支撑面后,过抓取点的铅垂线分别为l1,l2,设两次抓取时重心c点离铅垂线l1,l2的距离分别为d1和d2,可得公式(5)

d1=d2(5)

两次抓取操作的抓取点gp1,gp2由机械手的控制系统确定,因此易知抓取点的坐标值。

两次抓取操作中,物体的旋转角度分别为θ1,θ2,如图5所示。其中,若物体在被提升过程中顺时针旋转,则θi>0,若物体在被提升过程中逆时针旋转,则θi<0。在图5的计算案例中θ1>0,θ2<0。

因此可以得到铅垂线为l1和l2在坐标系中的方程,如式(6)

l1:y=tanθ1·x+a1

l2:y=tanθ2·x+a2(6)

其中,如图5所示,铅垂线l1,l2分别与y坐标轴的交点坐标为(0,a1)和(0,a2)。

设重心坐标为(xc,yc),则重心到直线l1与l2的距离表示为公式(7)

联立(4)、(5)和(7),可得式(8)

其中,u=1,2,3,4。

解方程式(8),满足该式的重心坐标有四个可能坐标值,分别为:c1=(x1,y1),c2=(x2,y2),c3=(x3,y3),c4=(x4,y4)。其中:

从上面四个可能的重心坐标中确定唯一的重心坐标,具体流程如图6所示,如下:

步骤3-1设定u的初始值,即u=1;

步骤3-2将(xu,yu)带入公式m(u)=yu-xu·tanθ1-a1;

步骤3-3判断m(u)与θ1正负号是否相同,如果相同,转到步骤3-4;如果不同,则将u设定成u=u+1;从新转到步骤3-2进行判断;

步骤3-4将(xu,yu)带入公式n(u)=yu-xu·tanθ2-a2;

步骤3-5判断m(u)与θ2正负号是否相同,如果相同,则输出重心位置(xu,yu),结束;如果不是,则将u设定成u=u+1;从新转到步骤3-2从新进行判断。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1