工业机器人视觉检测系统研究
2020-01-16王琳张珊珊潘艳飞刘新
文/王琳 张珊珊 潘艳飞 刘新
1 引言
云端激光打标系统由工业机器人、智能相机和激光打标机三个主要硬件部分加MES 排产下单系统组成,可通过手机端或PC 端远程下发个性化定制设计内容。工业机器人是现代化自动控制技术发展的一个重要的生产工具,通过示教编程或离线编程使其按照程序进行一系列作业[1-3]。机器视觉以计算机视觉技术为基础,对智能相机采集到的数据进行处理分析[4],包括物体的形状、位置、颜色、角度等信息,智能相机控制系统将分析后的数据反馈给机器人控制器,机器人完成准确的抓取动作。
基于机器视觉和工业机器人技术,可以满足工业生产的一些更加柔性化的需求,使工业的生产过程更加灵活,从而实现工业的小批量个性化生产[5]。基于视觉的工业机器人抓取技术是现如今和未来科技工业的必要研究内容,目前已在多个领域内广泛应用,如:汽车自动化生产、智能交通系统、医疗诊断成像、元器件检测、遥感图像等诸多方面[6-9]。
就目前来说,国内外针对视觉抓取系统的研究方向主要有1)手眼标定方法2)特征提取算法3)与深度学习相结合的视觉抓取方法[10]。手眼标定技术目前发展比较成熟,产生了深远的影响,比如早期的Tsai-Lenz、Navy等[11][12]手眼标定算法。 Ying Wang 等[13]设计的清障机器人通过单双目结合组成混合视觉系统对目标物进行特征提取。在数据引导的方法下,Sergry Levine[14]将深度学习技术应用到机器人区分任务中,利用相机拍摄到的图像训练卷积神经网络来预测机械手在空间的运动,该方法能够有效并且实时控制机器人,成功掌握新的抓取目标,最后通过连续伺服矫正错误。而国内视觉抓取系统的研究[15]偏向于几何引导的方法,王朋强[16]将双目视觉系统和机械臂结合,实现了对目标的识别定位以及抓取。在国家的支持下,国内也已有许多家公司以及科研单位在机器视觉领域取得了一系列成果,逐步的将机器视觉技术引入到对机器人的控制当中[17]。
本文主要通过对基于视觉的机器人抓取系统的研究,实现对目标物正反面的区分。主要过程如下:以使用一套云端激光名片盒打印系统为研究对象,在名片盒表面打印出所下的订单,从而实现制造业中的个性化批量生产检测。设计规则:将名片盒盒盖一面作为工件的正面,另一面作为反面。在机器人抓取工件之前,待打标的名片盒在工作候选区内的空间位姿各不相同,工件正反面也处于随机分布状态。正常情况下,工业机器人末端执行器抓取名片盒并翻转,随后将其移动到激光打标位置,最后执行激光打标的动作,完成打标任务,如果名片盒工件正面朝上,待机器人抓取后,激光打标机将在反面位置完成打标作业,这将导致不合格品产生。这就要求机器人能区分候选区所摆放目标工件的正反面,只抓取其中反面朝上的工件。
2 系统平台搭建
本文使用国产某型号六自由度工业机器人,搭建出基于视觉的工业机器人检测检测系统,如图1所示。本系统利用某型号工业智能相机采集图像,机器人获取图像中正确目标工件的位置后,吸盘抓取目标工件,调整位姿到激光打标处进行作业,激光打标完成后将工件移动到出口位置,完成一个工件的打标任务检测。系统通过以太网实现工业机器人、智能相机、激光打标机以及计算机之间的通讯和信息处理。
3 机器人视觉检测系统
机器人视觉检测系统在计算机端对智能相机采集到的工作区域的图像进行预处理,快速地识别并定位图像中的目标工件,根据相机标定参数,结合目标工件的像素坐标计算出六自由度工业机器人坐标系中的位置坐标,并将坐标信息发送给机器人控制器,机器人执行命令程序实现抓取动作。系统检测任务利用视觉软件来完成,通过计算机处理,只选择反面朝上工件作为目标工件。图2为本文的系统工作流程示意图。
3.1 相机标定
图1:机器人视觉检测系统平台
图2:系统工作流程示意图
图3:标定九宫格模板图
相机标定是一种利用所拍摄到工作区域的二维图像信息来建立其与目标工件三维空间位置坐标对应关系的技术,是识别并定位目标物的基础也是最重要的工作之一。基于视觉的工业机器人检测系统使用的是单目相机,标定的目的是寻找相机的内外参数。一般来说,相机的标定可以分为两种方法:自标定和依赖于参照物标定。相机自标定是通过拍摄周围物体,依据数字图像处理相关方法以及几何计算来调节相机参数,标定结果往往误差较大,不适用于高精度的应用场合。依靠参照物的相机标定相比自标定方法精度更高,通过相机成像,依据数字图像处理方法,空间计算相机的内外参数。本文采用依赖于参照物的方式进行相机标定。
图4:相机标定结果图
图5:图形化开发平台功能模块部分示意图
图6:模板匹配结果图
通过相机标定来获取摄像机的内参和外参矩阵,同时得到每一副标定图像的旋转和平移矩阵,内参和外参可对智能相机拍摄的图像进行矫正,得到畸变相对较小的图像。相机标定以小孔成像为基本模型,成像模型以相机坐标系作为中介,连接空间物体表面某点的三维世界坐标系与二维图像平面坐标系,具体可分为图像坐标到相机坐标的内部参数标定和相机坐标到世界坐标的外部参数标标定两个过程。
本文采用九宫格标定图作为标定模板,如图3所示,图片像素为320×480,实际测量九宫格两点纵横距离为30mm,依据小孔成像原理,可得出内参矩阵K1,可将其从相机坐标系转换到图像坐标系上。
其中:(x0,y0)是图像平面上的像素坐标,fx,fy为相机透镜的物理焦距长度与成像仪的每个单元尺寸sx,sy的乘积,s 为坐标轴倾斜参数,理想情况下为零。
对相机进行外部参数标定,即可完成世界坐标系到相机坐标系的转换,这是一个刚体变换的过程,只涉及旋转和平移动作。因此外参矩阵K2是旋转矩阵R 和偏移矩阵T 的变换:
其中:(XC,YC,ZC),( XW,YW,ZW) 分别是相机坐标系和世界坐标系下的对应位置坐标,R是3×3 的正交单位矩阵,T 是三位平移向量,是1×3 的零向量,外参矩阵K2为4×4矩阵,只与相机外部参数有关。
实验计算内、外参数矩阵即可完成相机标定,结果图如图4。由于标定出的标定板世界坐标系的原点与实际工业机器人坐标系的原点(已被固定)不同,需利用示教器将工业机器人移动到与标定板原点重合处后进行平移,调整计算使结果正确。
3.2 目标定位检测
目标检测定位是机器人实现自动抓取的基础,目前存在两种目标检测的算法:基于模板匹配和基于特征匹配。考虑本文所研究的机器人抓取系统的应用场景,目标为统一铝制名片盒(盒面为矩形),故本文采用基于模板匹配的目标检测定位方法,计算获取目标工件的中心点坐标及其姿态。
本研究所使用智能相机配套搭载与其相适应的图形化开发平台,其中包含有图像采集、上传、校准工具、通讯工具、定位工具、预处理工具、测量工具和检测工具等功能模块,如图5所示,为机器人抓取工件中进行目标的定位检测提供了工具。该图形化开发平台与其他大多数图像处理软件相比较,有方便函数调用的优点,只需根据实际使用的情况进行搭建合理流程,调整模块参数再进行编译运行即可完成目标定位检测的任务。
3.2.1 目标工件中心点坐标
基于模板匹配的目标检测定位方法主要是将一个包含目标形状的图像与相机采集图像进行匹配,其中获取目标工件(名片盒)中心点位置坐标的步骤如下:
(1)设置学习区域。在图像中设置学习的感兴趣区域,包括区域的大小和位置信息,使该区域尽可能贴近围绕目标工件模型即名片盒子的边缘,选择该区域作为模板区域。
(2)设置搜索参数。针对名片盒在目标区域内的摆放位置是任意姿态的情况,需要设置搜索限制角度参数,该角度参数是搜索过程中允许旋转的最大限度。
(3)设置模型位置参考点。名片盒模型中心点是机器手臂要抓取的位置点,学习区域贴近名片盒边缘,故可将学习区域的中心位置点作为模型位置的中心点。
如图6a 所示是学习模板,在工作区域放置名片盒的任意位姿相当于在此学习模板的基础上平移旋转,用该学习模板进行匹配可得到名片盒的位置中心点坐标信息。图6b 是经过学习模板匹配定位识别的示意图。
3.2.2 学习掩膜区分工件正反面
本文的研究目标是利用标记区分待激光打印名片盒的正反面,如图7所示将名片盒背面做黑色标记,以此区分工件的正反面,机器人抓取工作区域内的带黑色标记名片盒,在激光打标区设定位置翻转手臂,使名片盒正面朝上后完成激光打标任务。
图像处理中对待处理的图像进行全部或局部遮挡来控制处理的区域或者过程,本文使用带掩膜的学习模板,掩膜在这里起到屏蔽作用,用掩膜对图像上的某些区域作屏蔽使其不参加处理或不参加处理参数的计算。采集带黑色标记的名片盒图像提取其中的感兴趣区域,利用图形化开发平台中带掩膜学习模板模块设置学习模板,设置参数,擦除其中的黑色区域剪切模板保存使用。计算机处理智能相机采集到的工作区域图像,使用带掩膜学习模板进行模板匹配定位目标工件,视野图片中有黑色标记的名片盒为待机器人抓取的目标工件,无标记的名片盒将不做处理。
3.3 机器人抓取运动
本研究所用的六自由度工业机器人开发模式采用WinCE 嵌入式系统标准开发模式:在宿主计算机上进行程序开发,通过以太网将可执行程序下载到GUC 一体化嵌入式运动控制器中使用,程序中包含IO 指令、控制指令、移动指令、演算指令等。常用的指令如:
JUMP 跳转指令;
CALL 调用子程序指令;
IF ELSE WHILE PAUSE判断暂停语句。
示教器通过编程,使用这些指令来控制机器人的运动从而完成期望的系列动作,部分程序代码如图8所示。
4 实验分析
本研究的工业机器人视觉检测系统使用国产某型号六自由度工业机器人、某型号工业智能相机和激光打标机,通过以太网进行数据通讯,通过智能相机的配套软件图形化开发平台进行图片处理,实现机器人的检测抓取动作。为了验证本文所研究的使用带掩膜学习模板进行带黑色标记的工件区分系统的实际效果及可行性,做出以下实验。本系统可准确的完成图像采集、显示、相机标定、模板采集、目标定位、机器人控制的模块功能。
如图9所示,在试验台工作区内同时摆放多个工件,运行机器程序,在计算机端观察相机识别图像处理情况,发现在窗口中,每次机器进行定位抓取时均能抓取带有黑色标记的名片盒,且黑色标记的形状不会影响实验结果,但黑色标记的整块面积要制定合适的大小,当超过这个数值时,将不能完成正反面区分的工作任务。定位方面,与实际位置坐标的误差在+1mm 之内,姿态角度的误差在+1°之内,精度值满足实际生产需求。综上,实验结果表明本文的基于视觉的工业机器人检测系统是具有实际的研究价值。
5 结语
工业机器人视觉检测系统的研究目的在于有针对性的提升工厂生产效率。当工厂收到云端新订单任务,MES 系统进行计划排产。本文基于一套云端激光打标系统进行研究,结合计算机视觉技术知识,利用带掩膜学习模板进行目标匹配的方法实现了对规则的目标工件正反面区分,达到预期检测效果。本文所研究的机器人检测系统可以应用在实际的生产环境中,选择正确的工件,提高加工产品的效率和质量。总的来说,基于视觉的工业机器人检测系统是机器视觉技术和机器人控制技术的结合,是工业领域生产过程由自动化向数字化、智能化发展的必经之路。
图7:带掩膜学习模板设置图
图9:模板匹配结果图