房建龙 于波
(青岛思锐自动化工程有限公司,山东青岛 266100)
随着电子行业的快速发展,各种精小型电子接插件(端子)的使用越来越多,而且种类也越来越广,为了防止这些电子接插件(端子)的瑕疵品流入工序,每个电子接插件(端子)都需要在不同位置有7-8项工艺质检要求。如果单纯依靠人工质检(速度慢、人力成本太高)或实验室标准检测设备抽检,都不足以满足现代制造业对产品质量全流程的质量把控、以及需要在线生产检测的高速要求。
针对上述情况本研究提出了一种基于机器视觉的接插件端子检测系统,针对不同类型的接插件,该系统可通过多相机快速搭建出不同的检测视场,利用边缘检测、PLC多线程等技术手段实现多相机同时拍照处理数据,实现柔性化高速在线的高精度检测。
本论文设计与研究的接插件端子机器视觉检测系统(图1)是基于欧姆龙视觉相机、视觉控制器等硬件设备进行的开发,本系统包含视觉相机、镜头、光源系统、显示器、视觉控制器、PLC伺服控制等,利用三个相机从不同方向组态,实现对端子不同检测要求的尺寸测量。
本系统的光源系统(图2)是使用LED蓝色低角度环光进行打光,蓝色光波长短,适合高精度测量,而低角度光源适合物体边缘检测。
软件数据方面,本系统通过视觉系统的宏操作功能(类似Basic语言),把边缘检测Canny算法与冒泡排序数据处理相结合,很好地剔除了干扰数据的影响,稳定地实现了端子插针半径的精确计算;同时把不合格产品的检测项数据逐一记录存档,方便NG产品的数据趋势追溯分析;对NG产品进行报警显示的同时,同步通过EIP网络上传PLC,PLC伺服控制系统把NG产品剔除到废料盒内。
图1 系统结构图Fig.1 System structure diagram
图像预处理是指对相机捕捉到的图像进行灰度化处理、二值化、滤波平滑、增强、腐蚀、膨胀等多种图像处理[1],其主要目的是消除图像中无关的信息或噪声,使图像更加清晰真实,增强图像信息采集的可检测性,为下一步特征信息的提取提供必要的条件。
图像采集完成后由于受到产品本身材料的问题,可能使得同种产品不同批次物体,在同样的光照情况下形成颜色有差异的图像信息。然而对于视觉识别系统,其关键信息是图像的梯度特征而不是颜色。
而图像的灰度可以通过公式为fGray=0:30R(x;y)+0:59G(x;y)+0:11B(x;y)求得,方便了后续的图像处理[2]。
图像的二值化可以把灰度图像转换成二值图像(图3),也就是把大于某个临界灰度值的像素灰度设为灰度极大值即255,把小于这个值的像素灰度设为灰度极小值即0,从而实现图像的二值化[3]。
二值化的值由0-255个灰阶组成,灰阶的差别就是图像的梯度,利用梯度找出产品的边缘(图4)。
Canny边缘检测是从不同视觉对象中提取有用的结构信息并大大减少要处理的数据量的一种技术,Canny发现,在不同视觉系统上对边缘检测的要求较为类似,因此,可以实现一种具有广泛应用意义的边缘检测技术,本研究的视觉路径就是基于Canny的边缘检测。
边缘检测的一般标准包括:
(1)以低的错误率检测边缘,也即意味着需要尽可能准确的捕获图像中尽可能多的边缘。
(2)检测到的边缘应精确定位在真实边缘的中心。(3)图像中给定的边缘应只被标记一次,并且在可能的情况下,图像的噪声不应产生假的边缘。
在目前常用的边缘检测方法中,Canny边缘检测算法是具有严格定义的,可以提供良好可靠检测的方法之一。由于它具有满足边缘检测的三个标准和实现过程简单的优势,成为边缘检测最流行的算法之一。
实现的Canny算法中所采用的卷积算子比较简单,表达如下:
其x向、y向的一阶偏导数矩阵,梯度幅值以及梯度方向的数学表达式为:
图2 红色光源检测VS蓝色光源检测Fig.2 Red light source detection VS blue light source detection
图3 原始图片VS二值化图片Fig.3 Original image VS binary image
图4 原始图片查找边缘VS二值化图片查找边缘Fig.4 Original image search edge VS binary image search edge
图5 冒泡排序图解Fig.5 Bubble sort diagram
图6 端子干扰点Fig.6 Terminal interference point
冒泡排序是一种简单的排序算法(图5),它也是一种稳定排序算法。其实现原理是重复扫描待排序序列,并比较每一对相邻的元素,当该对元素顺序不正确时进行交换。一直重复这个过程,直到没有任何两个相邻元素可以交换,就表明完成了排序[4]。
本研究中,由于端子插针会有干扰点的存在,单纯依靠打光无法去掉干扰点,这就会造成Canny算法把干扰点当成边缘,这样视觉系统检测的数据偏差变大,无法获取真正的检测数据(图6、图7)。
图7 Canny算法检测的边缘Fig.7 Edge detection based on Canny algorithm
利用Canny算法把端子的外边缘稳定的检测出来,同时计算多组出插针内圆心到插针外边缘的半径尺寸,然后通过冒泡排序算法把数据由大到小的排列,把过大过小的数据进行剔除,通过二次元校正像素尺寸变成现场实际尺寸(图8)[5]。
本研究中,经过测试如果1个线程处理三个相机读取的图像,并进行数据处理共需要1.5s,视觉处理的时间整体超出了在线生产要求的0.75s的设备整体节拍指标,为此,启用多线程控制功能势在必行(图9)。
把三个相机的读取信息进行分配同时处理,对于来自不同相机的输入,各条线路可分别进行场景组数据和场景数据的设定、交换与处理(图10)。
多线程是为了同步完成多项任务,提高资源使用效率来提高系统的整体效率。经过多线程与多线程数据交换设计,视觉检测系统整体的运行节拍提高到0.55s(图11)。
为验证本论文所提出的机器视觉方案的可行性,以及相关算法、数据处理模式、时间节拍的有效性,尤其是本机器视觉系统在计量检测精度上是否满足与标准器(二次元影像测量仪)的精度误差控制比小于±0.025mm,是本研究的最重要任务。
图8 数据排序剔除Fig.8 Data sorting and elimination
GRR试验步骤:
(1)将接插件端子放在工装内,由伺服控制系统把工装运送到指定拍照位置。
图9 多线程工作场景Fig.9 Multithreading scenarios
图10 多线程数据交换Fig.10 Multithreaded data exchange
图11 多线程运行节拍提高到0.55SFig.11 The running time of multithreading is increased to 0.55s
表1 试验数据比对Tab.1 Comparison of test data
(2)PLC根据伺服位置控制相机系统拍照。
(3)视觉系统拍照完成后,根据程序处理图像,得出测量数据判断出产品OK/NG,同一个产品动态测量10次,一共10个产品总共100次,试验数据对比见表1。
(4)把OK/NG信息反馈给PLC系统,测量数据通过EIP总线网路上传服务器。
(5)端子检测试验数据比对(视觉系统检测数据与二次元影像仪检测数据)
经过多组(100次/10产品/组)数据试验验证,最终本论文设计的机器视觉系统检测数据与标准器二次元影像仪检测数据最大偏差小于±0.025mm,完全满足进行生产线在线质检的计量精度要求。
本论文设计了一种机器视觉组合的接插件端子检测系统,结合PLC伺服控制系统,通过启用多线程控制功能,可在线快速、高精度地完成接插件端子多项物理尺寸检测,摆脱了以往接插件端子尺寸精密检测只能依赖于实验室二次元影像仪抽查的弊端。
经大量GRR数据测试验证,本机器视觉检测系统,检测精度控制在±0.023mm以内(工艺要求≤±0.025mm),检测速度小于0.55ms(工艺要求≤±0.75ms),所有测量数据与图片可实时保存与上传,方便数据追溯与数据分析,真正实现了对所有上线的电子接插件可全部实施在线计量级别的质量检测,试验结果优良,尤其是系统的可柔性化适应于不同电子接插件的各种物理尺寸检测,使其具有很好的行业推广价值。