包光旋,黄家才,李 耀,王思睿,盛云龙,吕思男
(南京工程学院工业中心、创新创业学院, 江苏 南京 211167)
近年来,随着国家对机器人产业的大力扶持,国内一些高校以及科研院所、企业等也对机器人视觉领域进行了相关的研究,如利用机器人搬运、分拣物品等.传统的分拣方式采用示教或离线编程的方式对机器人的动作和目标的摆放位置预先严格设定,一旦机器人的工作环境有所改变,就会导致抓取错误.机器人视觉技术利用摄像机来模拟人类的视觉功能,对客观事物进行测量和判断,是一种非接触式的测量方式,可实现无接触检测、无接触识别定位等功能[1].利用机器人视觉技术来引导机器人完成分拣工作,可帮助企业高效地完成生产任务,因此开发和研究基于视觉技术的工业分拣机器人系统有着十分重要的意义.
Delta机器人分拣系统总体架构如图1所示.系统工作过程为:杂乱无章、形态各异的工件在传送带1上运动至视觉检测区;系统根据相机所采集的图像进行处理,提取图像特征并与事先建立的工件模板匹配,获取工件位置坐标,发送至上位机;上位机根据坐标关系,获取工件在系统中的坐标,根据该坐标逆解出机器人各个轴转动角度以实现精准抓取后将工件下放到传送带2上.
图1 Delta机器人分拣系统总体架构图
分拣系统平台硬件主要包括Delta并联机器人、CANopen主站卡、工业相机、镜头、光源等.
控制系统包括(见图2):
图2 控制系统图
1) 并联机器人系统包括并联型机器人本体、上位机和驱动各关节的伺服驱动器等.上位机负责机器人的轨迹规划、图像处理、人机交互等任务.机器人末端执行机构为气动吸盘,用于吸附传送带上的分拣对象,完成抓取动作.
2) 视觉系统选用分辨率较低、帧速率较高的德国Basler公司的acA 1920-40gc型号的CMOS相机,以便视觉系统能够快速、精确地提取目标工件的特征.镜头选择日本MORITEX公司的ML-U3518SR-18C型号的镜头.
3) CAN通信组网利用USBCAN-E-P主站卡把USB通讯协议转换成CANopen通信协议,通过主站卡发送指令控制机器人运行并实现数据交互,主站卡将位置指令发送给驱动器来驱动电机运行.
4) 系统选取传送带来输送分拣对象,传送带长度约为2 m,分拣对象为杂乱分布的圆形、三角形和正方形的塑料工件.
视觉系统的任务是将待分拣对象的位姿信息以及种类信息传递给机器人控制系统,图3是基于本试验平台的视觉系统基本的工作流程.
图3 视觉系统基本工作流程
为了使相机能够获取精确的分拣对象位姿信息,需要对相机进行标定.选用张氏标定法[2],其精度较高,标定过程易于实现.应用7×7的Halcon标定板,外形边长为120 mm×120 mm,图案边长为100 mm×100 mm,圆点直径为6.25 mm,中心距为12.5 mm,加工精度为±0.1 mm.在相机视野范围内,经过多次旋转和平移操作,得到20张不同位姿的标定板图像,并把图像保存在同一目录中,为标定程序读取图像做好准备,然后利用OpenCV开源视觉库编写标定程序,完成相机内部参数矩阵和畸变系数的求解[3],过程如图4所示.图5为20个不同位姿下标定板图像.通过标定之后获得的相机参数如表1所示.
图4 OpenCV标定流程图
图5 不同位姿下标定板图像
表1 相机标定结果
相机的内外参数标定之后可获得视觉坐标系中图像上特征点在图像像素坐标系中的坐标,还需要对整个系统进行标定,主要分为视觉系统与传送带的标定和传送带与机器人的标定[4].
首先相机拍照并计算标定板上特征点M此时在传送带坐标系中的位置[5](x1,y1,0),控制传送带运行一段距离,再次触发相机拍照并计算标定板上特征点M此时在传送带坐标系中的位置(x2,y2,0).得到视觉系统坐标系中的坐标到传送带坐标系中的坐标转换关系为:
(1)
式中:Pw为传送带坐标系下的坐标点;Pv为视觉系统下的坐标点;θ1为视觉系统与传送带之间的转角,θ1=0.27°.
采用点触的方式对传送带坐标系与机器人坐标系进行标定[6], 探针安装在机器人末端上,移动机器人,使探针触碰到标定板上的特征点N,特征点N在机器人坐标系中的位置为(x3,y3);控制传送带运行一段距离,再次移动机器人,使探针触碰到特征点N,此时特征点N在机器人坐标系中的位置为(x4,y4).得到机器人系统坐标系中的坐标到传送带坐标系中的坐标转换关系为:
(2)
在采集过程中,相机获取的为视频流,视频流是由一帧帧图像组成,而后续图像处理过程需要对一幅幅图像进行处理,故对视频流中的图像进行保存.若保存每一帧图像,则会造成处理时间增加,引起不必要的资源浪费.每间隔一定时间对视频流中图像进行保存可有效缓解此问题.利用图像预处理技术对采集到的图像进行优化[7],预处理各步骤为(结果图像如图6所示):
(a) 原始图像
(b) 灰度处理图像
(c) 中值滤波图像
(d) 二值化图像
(e) 轮廓提取图像
1) 灰度处理,彩色图像的特点是颜色丰富多彩,但是其内容数据信息量较大,计算机处理时间较长,进而造成识别的延迟,在实时性比较高的机器人分拣场合,这是不能允许的,因此对图像进行灰度处理.选用加权法对原始图像进行灰度处理,表达式为:
Gray=WR×R+WG×G+WB×B
(3)
式中:Gray为灰度值;WR、WG、WB分别为R、G、B的不同权值.
经过加权法处理后的灰度图像(见图6(b)),不仅保持与彩色图像同样的特征描述能力,而且减少了计算量,缩短了处理时间,提高了视觉系统的工作效率.
2) 中值滤波,图像滤波就是对目标图像的噪声进行抑制的过程,选用中值滤波的方式能够很好地滤除工件图像中的噪声,使工件图像轮廓较为清晰,中值滤波的实质是将像素点邻域内灰度值的中位数来代替该像素点的灰度值.选择一个二维模板,该模板由其临近的若干像素组成,将板内像素点的灰度值按大小进行排序,选取中位数来替换原图像像素点的灰度值,数学表达式为:
g(i,j)=med{f(x-k,y-l),(k,l∈W)}
(4)
式中:g(i,j)为处理后像素点的灰度值;W为二维模板;f(x-k,y-l)为模板中各像素点的灰度值.
经过中值滤波处理后的图像见图6(c).该方法可以有效去除椒盐噪声,同时还能保留图像的边缘细节.
3) 图像进行二值化处理, 以达到减小数据量、图像清晰化的目标, 便于进一步的识别处理.二值化的算法可以分为固定阈值和自适应阈值,考虑到对视觉系统的识别速度有较高要求,固定阈值法计算量要远小于自适应阈值法,所以在此选用固定阈值法,其处理效果比自适应阈值法好,处理后的图像见图6(d).
4) 为了获取图像信息,需要对二值化图像进行轮廓提取.轮廓提取的效果如图6(e)所示,图像周围的斑点都可视为轮廓,其特征与工件轮廓特征相比,斑点轮廓周长较小.根据周长大小筛选出所需提取信息的工件轮廓,对周长设定阈值为40 000,大于该值则为工件轮廓,小于该值则为不需要的噪声.结果如图7所示,可明显看出经过筛选后的轮廓图仅剩下工件轮廓.
(a) 轮廓提取效果图
(b) 剔除噪声后轮廓图
对所提取的所有轮廓做匹配,匹配出指定的工件轮廓,实现对指定工件的抓取.Hu矩提供了大量的关于图像的几何信息,将模板轮廓的Hu矩值和所有待匹配轮廓图中的Hu矩值做比较,返回值越小说明两张图像中的形状越匹配,取返回值中小于或等于0.01的值,其对应的轮廓为所要匹配的轮廓.以矩形模板为例,轮廓匹配返回值满足的只有0.001 248 15,将该值对应的轮廓在原图中绘出.利用矩的零阶矩和一阶矩求解出目标工件质心的像素坐标,并将像素坐标系显示到图像上,如图8所示.
图8 标记后图像
通过视觉系统采集传送带上的工件图像,并对图像进行处理得到目标工件的信息,机器人控制系统通过读取图像中的信息对目标工件进行分拣.机器人运动控制系统和视觉系统通过多线程同时运行,提高系统的效率,分拣系统的程序流程见图9.
图9 系统程序流程图
为了验证系统的可靠性,模拟工业现场进行分拣试验.将同等数量的圆形、三角形和正方形共计300枚工件混合后,在系统运行后以均等的密度随机投放于传送带上,以正方形作为目标工件,调整传送带的速度,计算抓取成功率.设定末端执行器的最大加速度为2 m/s2,最大速度为0.8 m/s,分拣结果见表2.
表2 机器人分拣结果
通过试验数据可以看出,系统的分拣成功率在96%以上,视觉系统的识别率为100%,证明该视觉控制系统满足快速、准确分拣的需求,保证机器人能够高速、高精度自主分拣.
介绍了Delta机器人分拣系统的软硬件组成、工作流程以及基于图像特征提取和图像匹配等图像处理技术的试验对象识别方法.视觉技术的引入,提高了Delta机器人的智能化程度和技术水平,使工业机器人可以更好地适应环境的改变.以形状不同的工件为分拣试验对象,试验结果表明视觉技术与并联机器人结合的方式适用于工件的分拣与抓取,且抓取准确率高、速度快,提高了自动化水平和质量.机器人与机器视觉的结合会越来越广泛地应用于各个领域.