吴 晓,宋 骄
(南通大学电气工程学院,江苏 南通 226019)
在电子工业生产与加工中,点胶机扮演者重要的角色,例如在半导体的元器件的粘贴,一些精密微型的器械条纹印刷和封装等行业都有着广泛的应用。传统的点胶技术只实现了半自动化,因为它需要人工去确定和输入点胶位置,点胶的路径也是人工设定的,不仅耗费人力而且不可避免的造成人为误差。此外点胶机内部的机械传动装置,点胶的方式,夹具的设计精度以及待点胶产品的精度都会对点胶的精度造成影响。随着信息技术的飞速发展,电子产业趋向于微型化,精密化,集成化,因此单纯的人工点胶已经无法满足市场需求。
基于机器视觉的闭环控制势必要取代高成本、高耗时、精度低、随机性大的开环人工点胶方式,其构成的主流的系统是基于视觉的非接触式系统,该系统的特点是:(1)动态响应速度快;(2)精度高;(3)可靠性高;(4)量程大;(5)效率高[1]。
这里介绍的是一个自建的点胶平台,它既可以实现高精度高效率的点胶操作,并且具有对点胶误差自行检测的功能。
该系统主要由视觉检测定位系统,控制系统,伺服系统这三个子系统组成。系统结构,如图1所示[2]。视觉系统:由PC机、相机和光源控制器组成。相机对工件进行图像采集,由PC机上的视觉软件进行图像加强、二值化处理,边缘提取,几何特征匹配并获取中心点坐标。光源控制器是照明系统的核心部件,调节光照亮度,提高图像采集的精度。控制系统:包括运动控制器和外围电气线路,运动控制器是整个系统的大脑,由它负责坐标转换,进而控制伺服系统。伺服系统:本系统是三轴机械系统,故X轴、Y轴、Z轴三轴均配有伺服电机与伺服驱动器。
图1 系统结构图Fig.1 System Structure Diagram
整个系统的设备配置,如表1所示。
表1 系统设备配置表Tab.1 System Equipment Configuration Table
点胶机的工作原理,如图2所示。相机采集图像信息,传送到PC机上,通过视觉软件对图像进行实时处理得到中心点坐标,传送到运动控制器中,将边缘坐标转化成点胶机的绝对坐标,控制点胶机运动[3]。
图2 点胶机的工作原理图Fig.2 Working Principle of the Dispenser
视觉相机采集到的图像信息实际是图像坐标系下的像素坐标,进行相应的坐标转换才能实现对三轴平台的控制。这其中既包含图像坐标系和物理坐标系的平移关系,也包含两个坐标系的倍率关系。
3.2.1 倍率的确定
3.2.2 图像坐标和物理坐标关系
图像坐标系和三轴平台物理坐标系的模型关系,如图3所示。x0y为物理坐标系,u0v为图像坐标系,(u,v)和(x,y)分别是相机的中心点P在图像坐标系和物理坐标系下的坐标,点M是点胶机物理原点坐标。
图3 图像坐标系和物理坐标系Fig.3 Image Coordinate System and Physical Coordinate System
为了求得式(1)中的倍率变换矩阵和偏移量,提出了定点法,即设定三个物理坐标点(x1,y1),(x2,y2),(x3,y3),然后通过视觉相机对这三个点进行坐标读取,在软件中对三个点进行处理后读取这三点对应图像坐标系下的坐标(u1,v1),(u2,v2),(u3,v3)。
即设:
分别将三点的图像坐标和物理坐标代入(2)式中并化简得:
将式(3)进行Doolittle迭代变换得:
则
式中:P—单位行变换矩阵。
求得H1、H2、H3、H4、H5、H6,再将图像的中心点坐标代入式(2)中就可以获得物理坐标。
3.3.1 图像增强算法
灰度图像增强一般采用频率域或空间域的方法,频率域又分为高通滤波、低通滤波等。
由于工件表面粗糙程度,平滑程度,光源噪声等存在,造成采集到的初始图像会存在各种噪声,因此要使用低通滤波去除图像的噪声干扰。获得图像的中心点坐标的关键是准确提取边缘信息,而高通滤波可以增强斑点的边缘,提高图像边缘的清晰度[4-6]。
3.3.2 二值化算法
由于灰度图像本身就存在一个轮廓过度的问题,为了提高图像边缘的精度必须对图像进行二值化处理,如图4所示。
图4 初始图像Fig.4 Initial Image
图5 二值化后的图像Fig.5 Image After Two Values
在X-sight软件中调用分块处理任务二值化自适应算法求得阈值T,使图像的对比更为清晰。二值化后图像[7-8],如图5所示。
式中:M(u,ν)和M′(u,ν)分别为二值化前后的图像在(u,v)点的像素灰度值。0则代表区域为白色,255则代表区域为黑色。通过阈值分割后,使图像对比更加的明显,解决了灰度图像轮廓过渡的问题。
中心点坐标的提取采用“弦端点”法,从理论上来说,想要求出圆心的坐标,只要在圆上任意找到两条弦,即作两条分别平行于X轴和Y轴的弦,然后分别作垂线。
算法原理,如图6所示。分别作M条平行于X轴直线Ki(i=1~M)和N条平行于Y轴的直线Li(i=1~N)。直线Ki与圆有两个交点分别为PiL(xiL,yiL)和PiR(xiR,yiR);同样地,直线Li与圆也有两个交点ViB(xiB,yiB)和ViT(xiT,yiT)[9]。则可得圆心坐标:
由式(5)可知,只要测得若干条X方向上直线与圆相交的左右端点和Y方向上的与圆相交的上下端点,即求出圆心的坐标。将圆心坐标代入(2)式中,便可控制三轴平台实现点胶操作。
图6 算法原理图Fig.6 Algorithm Diagram
搭建好整个硬件平台,确定相机、运动控制器和伺服控制器的相互通信正常,在XDC软件编程环境下编写程序,实现对机器人平台的控制。首先伺服系统使能,然后再对X轴、Y轴、Z轴分别设定原点;接着机械臂使能,控制机械臂动作,获取工件图像,提取目标点边缘坐标,选取具有代表性的像素点,配置坐标输出,使用RECR函数读取坐标并转换;最后整个机器人使能,然后必须设置一个延时,再使用RBPATH指令实现运动平台按采集的坐标路径运动,并将点胶的效果显示在触摸屏上[10]。
6.1.1 光学误差
视觉测量系统依据的光学测量原理,因此透镜畸变产生的误差不可避免。由于镜头畸变会导致理想的图像坐标和实际的图像坐标存在偏移关系:
式中:(ud,vd)—实际的图像坐标;(uu,vu)—理想的图像坐标;δx和δy—畸变量,,k1、k2、k3—透镜的畸变系数与光学中心位置有直接关系,可以通过改变光学中心的位置来减小中心偏移的失真。
6.1.2 机械误差
本系统中X轴、Y轴、Z轴分别由三个伺服电机控制点胶头在丝杆上滑动,丝杆的制造工艺,Z轴和X0Y平面的倾斜度以及点胶过程中的抖动等都会对整个系统造成一定的误差,这些统称为机械误差[10]。
视觉相机的优劣决定光学误差的大小,因为光学中心位置直接影响中心偏移量的大小。事实上,一个好的透镜中心偏移是很小的5×10-4mm。
点胶过程中,引入了直线插补法,即首先假设点胶头从起始点在X轴方向上走一个脉冲当量,发现终点在曲线的下方则在下一条线段沿Y轴方向上走一个脉冲当量,如此往复,提高点胶的精度[11-12]。
将三维的坐标投影到x0y平面,则曲线上的一个点P坐标用参数r的方程表示即:
空间内点P在P0和P1之间运动,P随着参数u作线性运动得到轨迹。P0到P1这段曲线上,P、P0、P1分别对应0、r、1,从而可得:
取一把70mm的直尺测本系统的精度,由视觉软件X-sight测得图像坐标系下长度1272Pixel,距离倍率Δs=1272/70。视觉相机采集直尺实物图,如图7所示。
图7 相机采集的直尺实物图Fig.7 Camera Ruler Drawing
控制胶头运行70mm直尺距离并用视觉相机采集起点和终点的图像坐标,重复进行此记录数据,如表2所示。
表2 距离重复性实验(单位:Pixel)Tab.2 Distance Repeated Experiments(Unit:Pixel)
使用以下计算式进行距离重复性误差分析:
RD=0.57Pixel=0.03mm
由距离重复性实验的结果可得,系统误差精度达到0.03mm。
研究了视觉检测的智能点胶系统。通过视觉相机快速采集图像信息,并进行增强、滤波等处理从而获取中心点坐标,通过配置Modbus输出将坐标信息传送到运动控制器中,实现三轴联动点胶。与传统的点胶相比,本设计有以下优点:
(1)引入了机器视觉检测系统,实现了点胶自动化,并且通过的实验,摸索出了实用且精度高的视觉标定方法;
(2)从实验数据来看XD系列PLC的内部插补等算法已经比较成熟,点胶精度可以达到工业生产的需要。