刘 超,陈 捷,洪荣晶,秦钟伟
(南京工业大学 a.机械与动力工程学院;b.江苏省工业装备数字制造及控制技术重点实验室, 南京 211800)
在现代工业自动化生产中,涉及到各种各样的产品质量检测、工件分拣、模型识别等应用,例如工件批量加工的尺寸检查、元件自动定位和分拣、IC上的字符识别等。通常这种带有高度重复性和智能性的工作只能由人眼来完成[1]。而在很多工业自动化生产场合,人眼根本无法实现连续稳定地工作。通过图像采集与图像处理技术搭建机器视觉检测平台,自动化生产线中的分拣系统将更具智能。将机器视觉技术应用到工业分拣系统上有着高质量,高速率,高可靠性等无法替代的优势[2]。
20世纪80年代,机器视觉获得了蓬勃发展,新概念、新方法、新理论不断涌现[3]。工业视觉系统的应用大致可分为两个方向:工业视觉检测系统和工业机器人系统[4]。国外基于机器视觉的自动化分拣的研究已有很大发展,并已经广泛应用于生产生活中。日本的机械手供应商,包括Fanuc公司、Motman公司和 Staubli 公司,都推出了基于视觉的自动“拣选”系统[5]。国际先进的视觉集成公司如康耐视、基士达、松下、NI等,其开发的视觉系统与各大机器人厂商合作,广泛应用于各行各业。国内机器视觉技术应用于90年代,起步较晚,但是经过二十多年的努力,我国基于机器视觉的自动分拣研究已经有了较为成熟的应用。
目前国内外学者主要采用PC作为视觉检测平台的处理器。Bikarna Pokharel就通过工业相机、PC机等设备搭建了基于NI视觉检测技术的分拣系统[6]。施银中通过USB摄像头和PC机,借助NI IMAQ Vision模块搭建了LED球灯泡的视觉检测系统[7];熊晓松选用USB摄像头和NI LabVIEW视觉开发模块搭建视觉检测平台[8]。王诗宇等以并联型机器人和康奈In-Sight7000 型工业相机搭建工业机器人视觉分拣系统[9]。
采用PC作为核心的视觉检测平台搭建方式很多时候不能满足工业现场复杂的工作环境,而NI公司生产的智能相机内置图像采集卡和高性能图像处理器,视觉检测过程不需要借助PC机,且配有千兆以太网接口和工业I/O接口用于连接其他设备。采用集成化的高性能NI系列智能相机为核心搭建机器视觉检测平台具有开发周期短,检测速度快,可靠性高的特点。
智能相机固定在相机支架上,通过以太网编写和配置相应的图像采集、图像处理以及图像检测功能函数后,独立运行检测程序。检测结果传递给UR机器人控制柜。UR机械手根据检测结果执行分拣程序。图1是系统结构示意图。
图1 系统结构示意图
(1)NI 1776c智能相机:1.6 GHz Intel Atom处理器,512MB系统内存,2GB闪存,图像分辨率:1600×1200;
(2)相机电源:NI系列智能相机专用电源,12W24VDC, ±10%;
(3)相机固定支架:根据智能相机镜头自行设计支架;
(4)光源:LED光源;
(5)相机I/O板(781993-01):17-pin M12 to 25-pin相机接口,4通道数字输入,4通道数字输出,1个触发输入,1个LED输出,9-pin RS232接口,2-pin 电源输出接口;
(6)电磁继电器:用于连接智能相机I/O板和UR机器人控制柜;
(7)上位机:PC机,用于编写配置图像处理和图像检测函数,同时显示智能相机的检测界面;
(8)UR工业机器人:UR5,六自由度关节臂式机器人,配有专用示教器、UR控制柜、二爪型气爪、气泵;
(9)工件工作台:步进电机驱动,用于传输不同类型的工件;
(10)光电传感器:安装在工作台指定位置,用于检测工件的位置。
(1)NI VBAI(NI Vision Builder for Automated Inspection,NI用于自动检测的视觉生成器):NI 1776c智能相机集成化的机器视觉检测平台可以搭载VBAI软件,通过以太网连接PC机与智能相机,借助PC机实现NI 机器视觉检测平台图像采集、图像处理和检测功能函数的编写和配置。
(2)NI VI(NI Vision Assistant,NI 视觉助手):用于进行具体的图像预处理和边缘特征提取。
(3)LabVIEW:辅助编程。
研究智能相机I/O通讯板和UR机器人控制柜的通讯原理,电磁继电器作中间通信媒介,设计了一种用于NI视觉平台和工业机器人通讯的I/O电路,接线原理见图2。
图2 视觉检测平台和机械手I/O通信接线原理图
待分拣工件通过形状检测时,智能相机IO板数字输出OUT正负端通过一个500Ω的电阻相连,形成一个闭合回路;而待分拣工件未通过形状检测时,数字输出OUT正负端相当于断路。借助电磁继电器将检测结果传递给UR控制柜。
本系统分拣不同形状特征的工件,即分拣圆形、方形和三角形工件,规定分拣的优先级为圆形→方形→三角形,设计了如图3所示的机器视觉检查流程。共三种检查,每种检查都编写配置了相应的图像处理和检测功能函数,三种图像检查循环运行。
图3 机器视觉检查流程
整个机器视觉检测平台的检测流程如图4所示。
图4 机器视觉检测平台检查流程
光电传感器检测到待分拣工件进入NI 1776c智能相机视野时,触发相机采集图像,原始图像通过VA软件实现图像预处理,然后提取工件的边缘特征,之后基于边缘特征进行模板匹配,从而识别出不同形状的工件。最后把识别结果通过通讯电路传递给UR控制柜。
(1)图像预处理:本视觉检测平台的预处理步骤包括:改善图像亮度和对比度的图像增强、抽取HSV颜色空间亮度值V的灰度化处理、灰度图Gaussian滤波、消除图像噪点的形态学闭运算操作。
(2)边缘特征提取:图像边缘即亮度值变化较大的点。图像边缘特征具有缩放、旋转、位移不变性[10]。利用边缘特征进行目标识别即可以降低噪声的影响,又可以减少计算时间。传统的边缘提取算子有:Roberts算子、Sobel算子、Canny算子、Laplacian算子等,本文采用Sobel算子进行边缘检测。
描述图像的二阶可微函数f(x,y)的一阶导数定义为图像梯度向量:
(1)
图像梯度的向量幅值代表了图像在像素(x,y)处的变化速率:
(2)
Sobel算子通过3×3的掩膜来近似X和Y方向上一阶导数值∂f/∂x和∂f/∂y。假设某像素3×3邻域内的灰度为v1,v2,v3,v4,v5,v6,v7,v8,v9,则邻域中心点的梯度近似为:
s≈|Gx|+|Gy|=|(v7+2v8+v9)-(v1+2v2+v3)|+
|(v3+2v6+v9)-(v1+2v4+v7)|
(3)
图像预处理及边缘提取的效果如图5所示。
(a)圆形原图 (b)方形原图 (c)三角形原图
(d)圆形边缘 (e)方形边缘 (f)三角形边缘图5 边缘提取效果图
模板匹配通过计算已知的模板图与实时图中搜索区域的相似性测度实现目标识别[11]。目前用于模板匹配的方法主要有基于灰度的匹配和基于特征的匹配。基于灰度的匹配原理简单,实现容易,但是计算量大且易受干扰,而基于边缘的模板匹配不仅降低了计算量,部分遮挡时也可以得到较好的匹配结果[12]。
“你好。”她说,带有欢快的语气。我转过身的时候看见了她向我伸出的瘦削的手,我迟疑了一下,轻轻握了一下她的手,冰凉冰凉的。抬头的时候,很惊奇地,看见她戴着一副墨镜。很少看见过有人在室内戴墨镜。我盯着她的眼睛看的时候发现她很不自然地躲过我的目光,才发觉自己失礼。我点头致歉,然后转身打开门,关门的时候,再次对她点点头。
基于边缘特征的模板匹配算法如下:
(3)
模板图像与目标搜索区域完全匹配则返回1,完全不同则返回0。
在VBAI中实现基于边缘特征的模板匹配的效果如图6所示。
图6 边缘特征模板匹配
实际分拣过程中,我们设定分拣的优先级为圆形→方形→三角形。视觉检测程序的运行界面如图7所示。
图7 视觉检测界面
分拣程序的设计步骤如下:
(1)机械手运动路径规划:机器手三种运动指令:MoveJ、MoveL和MoveC,分别对应关节最优运动、直线运动和圆周运动。合理规划运动方式和轨迹,确保安全的前提下,保证时间最优。
(2)获取视觉检测结果:类别检测信息传输至机械手控制柜数字输入模块,每一个不同类别都对应一路数字输入通道。
(3)抓取程序设计:根据接收到的工件类别信息将不同形状工件抓取至相应放置区;未接收到类别信息则保持初始状态。
实验设备的实物接线如图8所示。
图8 实验设备实物接线
系统分拣结果的准确性如表1所示。
表1 系统分拣结果
本文从理论和实验上完成了NI视觉检测技术在产品分拣中的应用方案设计。通过运用NI机器视觉检测技术,脱离PC成功实现了不同形状的工件检测并实现了NI视觉平台与UR工业机器人之间的I/O通信,实验效果非常理想。基于NI智能相机的产品分拣系统克服了传统的自动化分拣系统灵活性差、可靠度低等弊端,视觉检测灵活可靠且便于开发,具有很强的工业实用性。