宋 辉,李 钊
(沈阳工业大学信息科学与工程学院,沈阳 110870)
近年来,随着我国现代工业自动化智能产业的快速发展,工业机器人在汽车生产、零部件搬运、焊接、码垛等多种场合中被广泛应用,已成为一种对生产条件和生产环境适应性和灵活性很强的柔性自动化设备[1-4]。使用工业机器人代替人工能够减少劳动力,提高生产效率。机器视觉系统利用相机采集的图像来认知周围的环境信息,这些信息包括物体的位置、形状和姿态等等,并且视觉系统以其无接触、信息量大、检测范围广等特点,为在线生产检测提供了有效的手段。
由于目前自动化生产线上的大多数工业机器人仍采用示教再现的工作方式,这种方式需要事先对运动路线进行规划和编程,严格要求了工件的初始位姿和终止位姿。工业机器人在检测时,要求被检测工件的摆放位置、角度必须一致。但这需要昂贵的机械夹具和固定的装置,在一定程度上削弱了工业机器人的高灵活性。而对于传统的机器视觉来讲,一套固定的视觉系统只能采集到固定视野的图像,对于一些多种规格、复杂的工件,每次检测都需要更改相机的位置,甚至需要多台相机搭配来完成,成本代价高,检测效率慢。因此将视觉系统与工业机器人相结合,利用视觉系统的定位信息来引导工业机器人到相应的位置完成相应的动作,对于提高工业机器人的智能化水平具有重要意义[5]。
本文针对轮毂这种多规格、多样式的复杂工件作为检测对象,对其表面缺陷进行检测,由于其外观形是由多种复杂曲面构成的工件,因此将视觉系统和工业机器人相结合对不同面上的表面缺陷进行检测。由于机器人的运动控制为开环的,经过多次反复运动可能产生累计系统偏差,例如本文所采用的系统为了测试机器人多次运动后是否会还会造成上述所提出的累计误差,将工件平放的情况下进行了200次测试,其中每10次记录一次当前的机器人坐标,在实验过程中,在180次的时候出现了第一次偏差,X轴的数据向左偏移了0.01 mm,进行到200次的时候,Y轴向前偏移了0.01 mm,其它的位置不变。可以看出机器人经过多次重复的运动后会造成一个重复定位误差,这是不可避免的。而工件缺陷检测对于目标定位要求高,机器人在重复多次工作后,导致了机器人在初始位置的位置存在偏差,这种偏差导致视觉系统的离位,造成了成像角度和光照角度不理想,使成像系统退化,导致误检或漏检。为了避免机器人的累计偏差给检测带来的影响,该文通过对工件目标的图像特征分析,利用图像目标的定位不断校正,来提高定位的准确性。该文对系统搭建的重要部分轮毂初始位置的定位以及定位的准确性进行了实验验证。
视觉检测系统就是利用工业相机来代替人眼,将目标物体转换为图像信号;用图像处理软件来代替大脑,通过数字图像处理技术来完成识别、检测、定位等功能。本文的视觉检测系统主要由以下几个部分组成:
工业机器人系统:采用的是FANUC ARC MATE OiB系列的六轴工业机器人,该型号是专门为弧焊应用设计的,采用焊接机器人的原因是视觉系统负重小、不需要与工件相互接触、造价成本低,且该系列的机器人具有手臂苗条、安装空间小、机身质量轻 (小于100 kg)、重复定位精度高(±0.08 mm)等特点,适合要求动作精细的作业。
工业相机:由于相机固定在机器人末端执行器上边,随着机器人的转动而转动,因此需要采用面阵相机,轮毂缺陷的检测要求为1 mm,相机的分辨率要求要高于检测要求,因此选择对应3个像素,即1 mm对应3个像素。而轮毂的最大直径为488 mm,以500 mm作为视场范围,因此相机的分辨率为1 500×1 500像素。本文相机采用的是德国映美精工业相机 (DMK 23GP031),它的分辨率为2 592×1 944像素,满足检测的精度要求,且相机接口采用GigE接口,GigE的接口的相机传输速度快,接线较长,适合远离机器人的工作区域进行处理。另外还具备15帧每秒的检测速度,能够保证检测速度,满足项目检测需求。
镜头:上述所选取的相机的像元尺寸为2.2 μm,分辨率为2 592x1 944,因此相机靶面尺寸为5.038×4.277 mm。相机的光学接口为1/2.5英寸,对应的相机靶面对角线为6.4 mm。但1/2.5英寸接口的镜头少,采用2/3英寸镜头来替代,它的对角线距离为11 mm能够覆盖相机的对角线长度。镜头的放大倍率为:
B为相机的靶面长度,A为轮毂的长度。2/3英寸镜头的靶面长度为8.8 mm,可以求出对应的目标视场:
远大于目标的长度,能够满足要求。本文的实验采用的是微图视觉的定焦镜头 (LEM-1216-MP5),技术参数为:2/3英寸接口,焦距为12 mm,靶面尺寸为8.8x6.6 mm(对角线11 mm)。光圈值F1.6。
PLC:本文采用的是信捷XC系列的PLC。PLC的作用是将机器人到达指定位置时,给PLC一个脉冲信号,PLC将这个脉冲信号发给相机的外部触发,相机开始采集图像。
本文基于机器视觉建立了一个机器人视觉检测系统,来实现六轴机器人对轮毂的检测。视觉检测系统的工作原理如图1所示。
图1 视觉检测系统的一般原理
待测工件经过图像输入设备采集图像后转化为图像信号发送给计算机中的图像处理软件进行一系列的加工处理后,对检测的结果进行显示和处理。
本文具体的检测流程如图2所示。
图2 系统检测流程图
首先将机器人初始位置所拍摄到的图像发送给计算机,计算机通过图像处理来判断当前位置是否在机器人运动的初始位置,若不是则计算出与初始位置的偏差,并将这个偏差量发送给机器人,机器人调节位置后,再次进行判断是否在初始位置,不断重复校正调整,直到调节到初始位置,机器人开始按照预先设置好的程序进行运动,来对轮毂各部分进行检测。若和初始位置重合,则直接开始检测。
本文针对轮毂面积较大、曲面复杂、规格多样的特点,采用Eye-in-Hand式的手眼系统,工业相机安装在机器人的末端随机器人一起运动。机器人在初始位置后,发送一个下降沿信号给PLC,PLC将这个外部触发信号发送给相机,相机开始采集图像,并将图像传送到计算机进行图像处理,通过对轮毂图像特征分析,利用图像的几何不变矩特征来算出轮毂气阀的位置和等价椭圆法求解出气阀的方向。将求解出的位置信息与机器人设置程序中的气阀位姿做比较,将偏移量通过机器人配套的通讯软件发送到机器人,机器人调整新的运动路径,开始对轮毂进行缺陷检测,检测完成后,机器人回到初始位置开始下一轮的检测。视觉检测方案如图3所示。
图3 视觉检测方案
该方案中为了能够保证后续检测的顺利进行,必须需要对轮毂的位置进行定位。其定位的流程图如图4所示。
图4 轮毂图像定位流程图
定位的具体步骤如下:首先将工业相机采集到的图像转化为图像信号发送计算机的图像处理软件;通过对采集到的图像进行预处理 (去噪、图像分割、数字形态学处理)等操作,突出图像中感兴趣的区域,衰弱或者去除无用的信息。其次对预处理后的图像进一步分析,获取图像的特征信息,利用图像矩具有平移、旋转和缩放不变性计算出轮毂气阀的质心位置、长短轴的夹角、纵横比等矢量信息。最后将计算得到的数据信息通过通讯软件发送机器人控制系统,完成后续的轮毂检测操作[6-7]。
视觉系统的定位效果直接影响到工件检测的结果,由于视觉系统的定位是在图像处理的基础上进行的,因此首先需要对轮毂进行图像预处理。图像处理的过程就是通过计算机对图像进行一系列处理,以达到所需目的的过程。
首先将采集到的图像进行滤波去噪处理,CCD相机在采集图像的过程中,往往会伴随着环境噪声和随机噪声的存在,通过滤波消除噪声的干扰;其次对图像进行分割提取感兴趣区域,常见的分割方法有基于阈值的分割方法、基于边缘的分割方法和基于区域的分割方法。本文采用阈值分割的方法将图像转化为二值图像;最后通过数字形态学处理后可以提取分割出想要得到的图像区域,通过对目标区域的图像特征分析得到轮毂气阀的质心、角度、纵横比等特征信息,从而实现对目标的定位[8-10]。
在经过以上几个部分的图像预处理,实现了轮毂气阀的分离,为了得到轮毂气阀的位置信息,需要对图像的特征进行分析。图像特征分析其实就是一个信息提取的过程,从图像中获取有用的信息来进行标识和描述。主要的图像特征图像的颜色特征、纹理特征和形状特征。图像的形状特征是在物体从图像分割出来后进行分析,利用不同的特征描述方法来作为区别不同物体的依据,在机器视觉系统中起着十分重要的作用。用于形状描述的方法有很多[1112]。形状描述方法主要分为基于图像区域和基于图像轮廓的描述方法。基于图像区域的描述方法是用图像的全部信息来对图像进行描述,图像矩是一个内涵丰富且可减少计算量的特性特征类,用它可以来描述区域的形状、大小和位置等特征信息。
工件的定位是将目标图像从背景中分离出来,提取出目标区域,并计算和标记出目标的质心和方向[13]。识别结果的准确性与定位精度都将对机器人能否成功到位、准确检测起关键作用。本文以轮毂的气阀作为定位目标,轮毂气阀是轮毂上固定的一个位置,对于同一种型号的轮毂来讲,一旦知道了轮毂的气阀位置,其它的位置信息就能够确定下下来。轮毂气阀的位置由质心确定,求取质心的方法有很多种,如不变矩法、极值法以及零阶矩法等。不变矩法[14]因为具有平移、旋转、缩放不变性,在计算质心坐标时精度较高。本文利用图像的几何不变矩[15-16]特征求取区域的几何中心 (质心)。而工件的姿态则由长轴的角度和方向来确定。
对于一幅大小为 (M*N)的数字图像f(x,y),则(p+q)阶矩定义为:
图像的零阶矩m00(p=0,q=0)表示为区域密度的总和:
一阶矩m10(p=1,q=0)为图像对y轴的惯性矩,m01(p=0,q=0)为图像对x轴的惯性矩。
则区域的质心即区域灰度中心的坐标为:
中心矩μpq是相对于形心计算的:
它们与区域的位置无关,它们与矩mpq的关系如下:
则区域的区域惯性矩阵J是:
其中二阶中心矩μ20,μ02是惯性矩,μ11惯性积。
图像分析不仅需要知道一幅图像中物体的具体位置,而且还要知道物体在图像中的方向。本文利用等价椭圆主轴的方向和夹角来表示轮毂的位姿。等价椭圆是指和区域具有相同惯性矩阵的椭圆。图3为椭圆的一般形式,其中a表示为长半轴长,b为短半轴长,x'表示长轴的方向,y'表示短轴的方向,θ为方向角,表示长半轴长与水平方向的角度。
图5 椭圆的一般形式
通过求解惯性矩阵J,可以得到J的特征值和特征向量。特征值与等价椭圆的半长轴半径和半短轴半径的关系如下:
按照上述的工件定位方法,对其进行定位,在定位的过程中可以得到许多描述这个区域的特征信息,如图6所示,进行了几种不同位置的轮毂气阀进行检测,并用等价椭圆的形式标记出来质心位置,如图7所示,它们返回的特征信息如表1所示。
表1 不同位置轮毂的特征信息
前面引言部分通过实验指出了机器人在多次运行后会造成一个重复累计误差,随着运行次数的增加会给检测效果带来影响。为了测试通过定位后是否还存在这种误差,我们对图6(a)所示的工件进行实验验证。具体的实现步骤如下:
1)将工件平放在工作台上,调整此时机器人的位置,使其相机垂直于工件,记录下此时的机器人的坐标位置,设置好机器人的运动轨迹,使其能够对轮毂进行检测。
图6 不同位置的原始图像
图7 几种不同位置的轮毂气阀定位结果
2)检测完成后回到初始位置,通过定位算法对初始位置进行判断和校正后,开始进行检测。
3)重复步骤2,每间隔10次测试后记录下当前初始位置的坐标信息。
通过180次测试之后的机器人初始位置和第一次检测的初始位置并无偏差,为了避免出现因重复次数较少而未造成误差的影响,又多做了100次测试,发现280次也未发生偏差。实验表明通过视觉定位校正之后可以克服机器人开环系统所造成的重复精度误差。此外还验证了工件在一定倾斜情况下是否能够检测。首先调用之前设置好的能够检测的程序,记录下当前的位姿。之后通过陀螺仪依次调节工件的角度,每次只改变机器人Y轴的角度,使其与工件垂直,其他的参数不变,运行之前的运动轨迹看是否能够正常检测。如表2所示,记录了几组不同角度下的机器人的坐标位置的运行结果。
表中的数据是在世界坐标系下记录的,其中X,Y,Z分别对应X轴、Y轴和Z轴的位置,W,P,R分别对应X轴、Y轴和Z轴的回转角。通过表2我们可以得出在工件水平的情况下,传送带在误差10°以内的情况下,机器人都能够完成对轮毂的检测。在一定程度上解决了轮毂在传送过程中存在的倾斜问题。
表2 不同角度下的机器人坐标
本文结合了工业机器人和机器视觉系统对轮毂进行定位和检测,利用MATLAB图像处理软件对轮毂图像进行预处理,提取出轮毂气阀的区域,利用图像矩的特征分析求出质心的坐标以及等价椭圆的方法求出轮毂的方向。通过机器人的集成控制系统调节相机的位姿,以此来完成对轮毂的检测。通过实验表明,系统能够完成不同角度的轮毂气阀定位,以及工件在传送过程中有可能存在较小倾斜的问题,能够满足当前的生产环境要求。