基于单目视觉的装配机器人研究及应用

2018-05-16 07:51钟德星杨元刘瑞玲韩九强
西安交通大学学报 2018年5期
关键词:单目测距连杆

钟德星, 杨元, 刘瑞玲, 韩九强

(西安交通大学电子与信息工程学院, 710049, 西安)

机器人技术是一门涉及传感器、控制理论、机械工程等多学科的应用技术[1]。20世纪80年代,计算机视觉技术首次应用到了机器人系统中,与传统的机器人相比,视觉机器人在适应能力、控制精度、鲁棒性等方面都更为出色。美国Willow Garage于2013年研发成功的PR2机器人,借助视觉传感器感知周围环境,可完成清洁打扫、自主充电等一系列动作[2]。但是,因为视觉机器人的技术难度较大,所以未能在工业领域得到大规模应用。

本文对视觉机器人的运动目标识别、定位测距、抓取装配等技术进行了研究。利用计算机视觉技术对传送带上的工件进行自主识别定位,对视觉机械臂的运动方式进行数学建模,来分析其运动抓取方案。本文以五自由度的机械臂AL5D[3]为实验对象,设计并组建了视觉机器人自主装配生产线的软硬件系统。通过相关测试,采用本文所提工件识别和抓取算法的单目视觉机器人工件装配系统可以稳定高效地运行。

1 基于特征的动态目标识别算法

视觉机器人系统将视觉传感器获取的图像信息作为反馈,构成闭环控制系统[4]。这为实现机器人自主目标识别、定位测距、抓取装配奠定了基础。本文的研究对象是传送带上一整套工件的各个单个部件,其中包括底座、内芯、弹簧和顶盖,本文将采用改进型Camshift[5]算法来对其进行检测和跟踪。

1.1 目标识别

Camshift算法在跟踪开始前要先人为定位跟踪目标,并手动初始化搜索框。为了实现全自动视觉机器人装配,先通过算法识别出目标,然后对其进行跟踪。为了识别目标工件,本文提出了一种以目标的R、G、B三通道处理值和形状作为特征的目标识别算法。

在实验过程中发现工件表面光线反射会导致在对应图像区域R通道分量值变大,这对红色目标的识别形成了很大的干扰。针对这种情况本文所使用的颜色特征采用通道之间求差的方法获得,即

(1)

式中:R、G、B为彩色图像的三通道值。采用以dgb、drg、drb为颜色特征的方案,对于以红绿蓝为基色的目标,可有效缓解由于光照不均所导致的颜色特征差异不明显情况。

确定了对目标颜色特征的提取方案后,还要对目标的形状特征进行判断。由于目标工件都是圆形,且半径有所不同,所以本文采用Hough圆检测算法来进行目标的形状特征提取[6]。根据颜色特征以及形状特征识别并标记图像中的目标区域,而后作出目标反向投影图,并据此来跟踪目标的位置。

1.2 目标跟踪

Camshift算法对Meanshift均值漂移算法[7]做了改进,将Meanshift算法扩展到连续视频帧序列中,使更加适合视频流目标跟踪[8]。而本文对Camshift算法做了进一步改进,提高其目标跟踪的性能。Camshift算法的具体步骤如下:

(1)对初始框标定的待跟踪物体进行颜色空间转换,转换到HSV空间并提取H分量图像,继而进行反向投影得到反向投影图;

(2)根据反向投影图和输入框进行Meanshift迭代;

(3)下一帧图像用上一帧的输出框进行迭代。

在Meanshift迭代过程中,d维空间Rd中的样本集中x点的Meanshift向量可定义为

(2)

Sh(x)≡{y:(y-x)T(y-x)≤h2}

(3)

式中:h为半径;Sh为高维球区域;k为n个样本点中落入Sh的个数。(xi-x)是xi相对于x的偏移,Mh(x)指向概率密度梯度方向[9]。

由式(2)(3)可知,无论xi、x间的距离多大,在Sh中所有样本点对均值偏移量Mh(x)的影响相差不大,距离x越近的样本点应对Mh(x)的影响越大。对此,本文对于均值偏移量的计算公式做了如下改进

(4)

GH(xi-x)=|H|-1/2G(H-1/2(xi-x))

(5)

式中:G(x)为单位核函数;H为正定矩阵,即带宽矩阵;w(xi)为非负的样本点权值。

在实际应用过程中,一般将H限定为一个对角阵,故式(5)可改写为

(6)

将式(6)中x放到求和符外面,可得

(7)

将式(7)等号右边第1项记为

(8)

在给定初始点x、核函数G(x)以及允许误差ε后,Meanshift算法进行迭代计算:①计算mh(x);②将x赋为mh(x);③当‖mh(x)-x‖<ε时,停止迭代,反之执行步骤①,继续迭代。

2 目标空间定位

确定目标识别与跟踪的算法后,为实现视觉机器人对于工件的准确抓取,还需对识别出目标的空间位置进行测量。视觉测量技术是一种基于坐标测量和视觉技术的新兴测量技术[10],本文就是采取单目视觉测量技术来获取目标的位置信息。

2.1 单目视觉空间测距算法

目标水平与竖直方向的空间位置分别为其相对于摄像头光轴在XY轴方向的偏移[11]。目标水平方向空间位置测量原理如图1所示。其中O为摄像头透镜光心,π为成像平面,V为像距,即光心到成像平面的距离,Z为目标中心到成像平面的距离,可得

(9)

同理,Y向测量示意如图2所示,可得

(10)

当检测到目标工件后,设得到的目标中心点像素坐标为(x′,y′),图像中心坐标为(x0,y0),则

图1 X向测量示意图

图2 Y向测量示意图

(11)

将式(11)代入式(9)、(10),可得

(12)

因其中像距V难以测量,故借助摄像头焦距f、物距U可得

(13)

在现实应用中,物距都远远大于像距,故

(14)

将式(14)代入式(13),可得

V≈f

(15)

将式(15)代入式(12),可得

(16)

至此,可通过式(16)求得目标的水平竖直位置。(x′,y′)为目标中心点像素坐标,Z为目标中心到像平面的垂直距离,摄像头焦距f可以通过摄像头标定的方法得到,本文采用基于二维靶标标定法来进行标定[12]。

单目视觉测距原理的示意如图3所示,其中π′为摄像头光心O所在平面,O′为实际目标的圆心,D为实际目标的直径,o′为图像中目标的圆心,d为目标在图像中的直径,Z′为实际目标中心到摄像头光心的直线距离,θ为实际目标中心相对于摄像头光轴的偏向角。

图3 单目测距算法原理

由式(15)以及三角形相似原理可得

(17)

(18)

又因为

(19)

(20)

可得目标中心到摄像头光心的距离

(21)

从而得到了目标物体的三维空间位置信息。

2.2 运动目标位置预测

在实际抓取过程中,由于传送带是运动的,所以需要相机持续采集图像,并对于工件的抓取位置做出预测。先用帧差法计算出传送带的运动速度,其次确定抓取动作的执行时间,最后与传送带速度结合预测合适的抓取点坐标[13]。

通过测量目标工件在传送带运动方向坐标的变化(xn-xm)与单帧的采样时间间隔fs,便可以求得传送带的速度

(22)

由于视觉机器人在获取目标位置后运转机械手臂到执行抓取操作的位置还需要一定的时间ts,在此过程中抓取目标工件还是处于运动状态,故要通过ts对工件的测量的X向位置x0进行矫正,即

xt=x0+tsvc

(23)

3 目标抓取

本文所使用的机械臂为链式结构,由连杆和关节组成,通过其末端的执行机构来操作目标物体。其中可控变量为机械臂的各个关节角度,通过建立机械臂数学模型,研究各关节角与末端执行器的位姿关系。

3.1 机器人标准坐标系描述

本文采用三维笛卡尔标准坐标系,在视觉机器人运动的过程中,主要涉及以下坐标系:基坐标系{B}、参考坐标系{S}(参考坐标系1的设立是为了方便目标识别与定位,参考坐标系2则是针对目标抓取)、腕部坐标系{W}、工具坐标系{T}、目标坐标系{G}、相机坐标系{C},如图4所示。

以往公积金异地转移流程太复杂,如今,随着全国住房公积金异地转移接续平台的上线,职工只需向转入地公积金中心提出转移申请,转入地公积金中心通过全国转移接续平台办理,即可实现“账随人走、钱随账走”,手续简化了很多。

图4 视觉机器人标准坐标系

3.2 运动学正解

本文从固定基座开始编号,称为连杆0,第一个可动连杆记为连杆1,最末端的连杆记为连杆n。连杆i和连杆i+1之间的关节为关节i+1。对于AL5D机器人,连杆参数是:连杆i-1的连杆转角αi-1,连杆i-1连杆长度ai-1,连杆偏距即相邻的两个连杆长度ai-1和ai与关节轴i交点之间的有向距离di,关节角即αi-1按右手法则绕轴i旋转到αi的角度θi。其连杆参数值如表1所示,其中a2、a3为确定值,为了易于用公式表示,故用符号表示。

表1 连杆参数表

在确定机器人各连杆参数与坐标系后,使用改进的D-H参数法,就可确定各连杆变换矩阵。将各连杆变换矩阵相乘就便得到最终变换矩阵,本文的最终变换矩阵为

(24)

其中对三角函数进行了简写,即si=sinθi,sijk=sin(θi+θj+θk),cijk=cos(θi+θj+θk)。

3.3 运动学逆解

运动学正解是由关节角求得机械臂末端操作夹的位姿,但是在实际应用中,需通过操作夹的位姿来求得关节角组合,即运动学逆解问题[14]。

运动学逆解一般都有多组关节角对应一个位姿的情况。对于本文所研究的机械臂,各关节角的旋转幅度为0°~180°,且目标的夹取位置只能是目标的正上方,故给定目标位置后,末端操作夹的位置也就确定了,继而机械臂的各关节角唯一。

对于逆运动求解问题可通过封闭解法求得,研究表明:所有具备转动关节和移动关节的串联型6自由度机构均是可解的,而且具备6处旋转关节的机械臂存在封闭解的充分条件为相邻的3个关节轴相交于一点[15]。本文采用的机器人的2、3、4关节轴是平行的,所以其封闭解存在,故本文采用几何解法进行机器人逆运动学求解。

图5 腕部坐标系相对于基坐标系的位置

图6 关节平面几何关系

由图6中角度关系以及机械臂关节的角度限定,可用几何解法求出各个关节角的准确值,即

(25)

综上所述,利用本文所提出的基于颜色和形状特征的目标工件识别算法检测到传送带上的目标工件,继而通过基于Camshift的目标跟踪算法以及单目视觉测距算法对目标工件进行实时跟踪测距。通过式(23)得到抓取位置,换算成腕部坐标系相对于基坐标系的位置后,通过式(25)求得机械臂各个关节角的大小,从而完成整个识别抓取动作。

4 视觉机器人工件装配系统实现

为验证上述研究结果,本文搭建了一个视觉机器人工件装配平台来进行测试实验。

4.1 系统搭建

视觉机器人工件装配平台以AL5D机械臂作为抓取装置,选择USC舵机控制板进行舵机的控制,选择罗技C270相机作为图像传感器。利用Qt作为开发框架开发上位软件,利用状态设计模式,在系统内部维护动作、目标两个状态机,分别用来描述机器人可执行的动作和当前动作状态机中所操作的目标工件种类。

4.2 性能测试

为测试本系统性能,本文设计了两个性能测试实验:视觉测距精度测试和装配成功率测试。

本文对不同位置的不同目标工件进行了视觉测距测试。实验对目标工件不同情况下进行共计50次视觉测距,视觉测距所得三维空间坐标与目标实际空间坐标之间相对误差如图7所示。由图7可知,视觉测距所得三维空间坐标与目标实际空间坐标之间的相对误差在5%以内,完全满足本文抓取装配的精度要求。

图7 空间测距相对误差统计

此外,对视觉机器人工件装配平台进行了6组随机空间位置的自主抓取装配测试,每组测试进行5轮完整自主抓取装配实验,最终只有第5组测试中的一轮装配由于光线干扰造成顶盖工件角度测量错误,导致最终装配失败。总体自主抓取装配成功率达到96.7%,完全达到了应用的要求。

5 结 论

针对传统工业机器人示教型控制策略所导致的灵活性差的缺点,本文就视觉机器人的关键技术展开研究,提出了一套完整的视觉识别定位抓取算法实现方案,使得工业机器人环境适应能力大幅提高,执行任务的灵活性大大提高。

本文通过基于改进型Camshift的动态目标识别跟踪算法对目标工件进行识别跟踪,实验测试结果表明,该算法对于目标工件的识别率达到100%,与此同时处理速度达到16.36帧/s,完全满足对于实时性的要求。为保证视觉机器人机械手臂对目标工件的精准抓取,本文采用单目视觉测距对目标的三维坐标位置进行测量,实验结果表明,该算法对于近距离目标空间位置的测量相对误差小于5%。最终整体装配成功率达到96.7%。

本文所提算法虽可以满足本文指定的装配工件的识别、定位、装配等一系列操作,但对于更加精细或装配精度更高的工件,本文所采用的单目测距算法的定位精度是有限的。在更高精度要求时,可采用深度摄像机和改进测距算法来对工件进行精度更高的空间测距定位。

参考文献:

[1] 方勇纯. 机器人视觉伺服研究综述 [J]. 智能系统学报, 2008, 3(2): 109-114.

FANG Chunyong. A survey of robot visual servoing [J]. CAAI Transactions on Intelligent Systems, 2008, 3(2): 109-114.

[2] HSIAO E, COLLET A, HEBERT M. Making specific features less discriminative to improve point-based 3D object recognition [C]∥Proceedings of the 23rd IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ, USA: IEEE, 2010: 2653-2660.

[3] LYNXMOTION. AL5D arm assembly instructions rev. 2.1 [EB/OL]. [2017-08-18]. http: ∥www. lynxmotion.com/images/html/build143b.htm.

[4] 苑晶, 李阳, 董星亮, 等. 基于运动模式在线分类的移动机器人目标跟踪 [J]. 仪器仪表学报, 2017, 38(3): 568-577.

YUAN Jing, LI Yang, DONG Xingliang, et al. Target tracking with a mobile robot based on on-line classification for motion patterns [J]. Chinese Journal of Scientific Instrument, 2017, 38(3): 568-577.

[5] WANG Z, YANG X, XU Y, et al. Camshift guided particle filter for visual tracking [J]. Pattern Recognition Letters, 2009, 30(4): 407-413.

[6] 夏磊, 蔡超, 周成平, 等. 一种用Hough变换检测圆的快速算法 [J]. 计算机应用研究, 2007, 24(10): 197-199.

XIA Lei, CAI Chao, ZHOU Chengping, et al. New fast algorithm of Hough transform detection of circles [J]. Application Research of Computers, 2007, 24(10): 197-199.

[7] FUKUNAGA K, HOSTETLER L D. The estimation of the gradient of a density function, with applications in pattern recognition [J]. IEEE Transactions on Information Theory, 1975, 21(1): 32-40.

[8] LIU X, CHU H, LI P. Research of the improved Camshift tracking algorithm [C]∥International Conference on Mechatronics and Automation. Piscataway, NJ, USA: IEEE, 2007: 968-972.

[9] 孙小炜, 李言俊, 陈义. MeanShift图像分割的快速算法 [J]. 测控技术, 2008, 27(7): 23-25.

SUN Xiaowei, LI Yanjun, CHEN Yi. Fast mean shift algorithm in image segmentation [J]. Measurement & Control Technology, 2008, 27(7): 23-25

[10] 陈小林. 单目视觉系统的姿态解算算法研究 [J]. 仪器仪表学报, 2014(s1): 45-48.

CHEN Xiaolin. Research of attitude calculation of single camera visual system [J]. Chinese Journal of Scientific Instrument, 2014(s1): 45-48.

[11] 韩延祥, 张志胜, 戴敏. 用于目标测距的单目视觉测量方法 [J]. 光学精密工程, 2011, 19(5): 1110-1117.

HAN Yanxiang, ZHANG Zhisheng, DAI Min. Monocular vision system for distance measurement based on feature points [J]. Optics and Precision Engineering, 2011, 19(5): 1110-1117.

[12] 马颂德, 张正友. 计算机视觉-计算机理论与算法基础 [M]. 北京: 科学技术出版社, 1998.

[13] XIONG P, ZHU X, SONG A, et al. A target grabbing strategy for telerobot based on improved stiffness display device [J]. IEEE/CAA Journal of Automatica Sinica, 2017, 4(4): 1-7.

[14] 张晓艳, 孙建桥, 丁千. 五自由度机械臂的运动学分析及时滞控制 [J]. 西安交通大学学报, 2013, 47(10): 103-108.

ZHANG Xiaoyan, SUN Jianqiao, DING Qian. Kinematics analysis and time delayed control of a five-degree of freedom manipulator [J]. Journal of Xi’an Jiaotong University, 2013, 47(10): 103-108.

[15] GOSSELIN C, FOUCAULT S. Dynamic point-to-point trajectory planning of a two-DOF cable-suspended parallel robot [J]. IEEE Transactions on Robotics, 2017, 30(3): 728-736.

[本刊相关文献链接]

张铁,林康宇,邹焱飚,等.用于机器人末端残余振动控制的控制误差优化输入整形器.2018,52(4):90-97.[doi:10.7652/xjtuxb201804013]

董肖莉,李卫军,宁欣,等.应用三角形坐标系的风格化肖像生成算法.2018,52(4):139-144.[doi:10.7652/xjtuxb201804 020]

杨航,刘凌,倪骏康,等.双关节刚性机器人自适应BP神经网络算法.2018,52(1):129-135.[doi:10.7652/xjtuxb201801 019]

程传奇,郝向阳,李建胜,等.融合改进A*算法和动态窗口法的全局动态路径规划.2017,51(11):137-143.[doi:10.7652/xjtuxb201711019]

李兵,杜俊伟,陈磊,等.工业机器人RV减速器传动误差分析.2017,51(10):1-6.[doi:10.7652/xjtuxb201710001]

尹贵,张小栋,陈江城,等.下肢康复机器人按需辅助自适应控制方法.2017,51(10):39-46.[doi:10.7652/xjtuxb201710 007]

栾玉亮,荣伟彬,吴方勇,等.3-PPSR柔性并联机器人力控制研究.2017,51(4):85-90.[doi:10.7652/xjtuxb201704013]

黄昔光,黄旭,李启才.利用共形几何代数的串联机器人位置逆解求解方法.2017,51(1):9-12.[doi:10.7652/xjtuxb2017 01002]

周雪峰,孙广彬,刘晓光,等.应用扩展零力矩点预观控制和分解动量控制的仿人机器人全身运动规划方法.2016,50(12):58-63.[doi:10.7652/xjtuxb201612010]

猜你喜欢
单目测距连杆
压裂泵虚拟试验连杆疲劳性能研究
基于单目视觉车距测量方法综述
某发动机连杆螺栓拧紧工艺开发
类星体的精准测距
一种单目相机/三轴陀螺仪/里程计紧组合导航算法
基于单目视觉的仓储物流机器人定位方法探讨
单目SLAM直线匹配增强平面发现方法
连杆的设计及有限元分析
浅谈超声波测距
基于PSOC超声测距系统设计