图1 相机扫描示意图
本文将智能3D视觉传感器成像测量功能与奇瑞自主研究开发的6轴165kg机器人相结合,配合外围的逻辑I/O功能,实现了整个拆码—搬运—上线过程自动化和无人化。
3D智能视觉系统
3D智能机器视觉系统是指用计算机来实现人的视觉功能,也就是用计算机来实现对客观的三维物体的识别。3D智能机器视觉系统主要由三部分组成:图像的获取、图像的处理和分析以及输出或显示。据不完全统计,大约80%的工业视觉系统主要应用在检测与机械引导方面,包括提高生产效率、控制生产过程中的产品质量以及采集产品数据等。产品的分类和选择也集成于检测功能中。本文通过应用于奇瑞发动机公司汽车缸盖毛坯搬运生产线上的3D智能扫描摄像机视觉系统,说明系统的组成及功能。
3D视觉系统通过安装在机器人上面的3D扫描智能相机检测待上线的一垛缸盖毛坯产品,判断产品的类型与坐标数据,并根据结果,产生相应的信号与数据输入上位机。图像获取设备包括激光、摄像机等;图像处理设备包括相应的软件和硬件系统;输出设备是与搬运过程相连的有关系统,如以太网通信电缆、数据处理计算机以及报警指示装置等。数据传输到机器人控制上位计算机,进行分析和坐标数据转换工作,若发现数据不对或数据传输超时,则报警器报警;正确的机器视觉结果通过TCP/IP协议以太网传送给机器人控制计算机,以便控制搬运机器人完成缸盖毛坯的搬运。
本项目采用的相机为SICK公司的工业IVC系列智能相机产品,此产品专为柔性自动化生产线提供完整的解决方案,体积小,光源采用激光,受环境光线干扰小,铝合金外壳,防护等级达到IP65,FOV视野范围达到200mm×600mm,图像处理剖面率达到5000个剖面/s,配备TCP/IP以太网接口与RS-485接口,满足多种协议通信要求。具体示意图如图1所示。
图像的获取
3D智能相机在一定范围和特定高度位置把整个托盘在同一平面内的所有缸盖扫描一次,初步计算出每个缸盖的中心位置,并把相关的坐标数据发送给机械手保存。机械手和传感器之间通过TCP/IP接口,进行位置数据的交换。此项目单个缸盖尺寸:525mm×260mm×140mm,一个托盘缸盖尺寸:1050mm× 1040mm×1180mm,缸盖在z(高度)方向的定位精度:±2mm,x方向分辨率:0.5mm,y方向分辨率:0.5mm。
整个托盘一次扫描结束后发出8个缸盖x、y坐标值,为单个扫描提供坐标系偏移参考。
图2 3D相机高度设定
1.单个缸盖的扫描与定位
在每次抓取缸盖前,根据预先初步测量的中心位置坐标,3D智能相机再在该范围内精确测量该缸盖的位置参数。这样可以避免因抓取一次缸盖后导致其他缸盖位置变化而影响定位的精度。
经过单件的准确扫描与测量后,相机以相机本身的坐标系发出单件缸盖在空间上的坐标值与姿态值:x000.00,y000.00,z000.00,a000.00,b000.00,c000.00,以备提供给机器人进行姿态的转换。
2.坐标数据产生的过程
数据的产生包括以下几个部分:相机的初始化设定、相机的图像抓取参数设定、相机的数据分析参数设定以及以太网参数设定等。
相机的初始化设定,主要解决相机错误的处理方式、已编程序的加载方式定义、相机启动触发方式设定和相机状态的反馈。
图像抓取参数设定,实际上是将被测缸盖的可视化图像和内在特征转换成能被计算机处理的一系列数据,为了更好地采集到需要处理的图像,需要对相机的照明与高度、扫描速度、有效图像的区域、图像的二值化提高差异化比值、扫描的持续时间和匹配模板等进行设定优化:
(1)照明与高度 对于相机来说,照明是影响机器视觉系统输入的重要因素,直接影响输入数据的质量和应用效果。由于没有通用的机器视觉照明设备与光源,所以针对每个特定的应用实例,要选择相应的照明装置,以达到最佳效果。过去,许多工业用的机器视觉系统用可见光作为光源,这主要是因为可见光容易获得,价格低,并且便于操作。常用的几种可见光源是白帜灯、日光灯、水银灯和钠光灯。这些光源的最大缺点是光不能保持稳定,容易受日光的影响,会影响图像的效果。如何使光在一定程度上保持稳定,是实际应用过程中急需要解决的问题。针对此项目中的应用,我们采用激光作为图像拍摄的光源,激光波长658±15nm,激光滤光片60nm FWHM,电源电压24V(1±20%),激光等级‖级/2M。
相机的高度设定:为了使相机在移动扫描时获取准确的工件轮廓尺寸,必须对相机的高度进行调整设定,防止z方向的偏差。如图2所示,相机离工件底面的最佳高度为280+375mm,相机与工件的顶面的最佳高度为280mm。
(2)扫描速度与有效图像的区域 上文通过调节相机与工件的相对高度实现了z方向工件数据的准确稳定,x、y方向工件数据的准确要通过相机的移动速度进行匹配调整获得,x方向尺寸为相机自身条形激光束校准后保证,y方向尺寸通过机器人带相机沿y方向移动保证,从而获得1 : 1的三维扫描图像,以进行数据的处理。
(3)图像的二值化与模板匹配 图像的二值化就是将扫描的原始图像进行图像的灰度值(阀值)增强或减弱,用于调整图像的对比度,突出图像中的重要细节,改善视觉质量,方便程序内的模板寻找边缘轮廓与提高匹配度。关于模板,本项目预先采集两种缸盖的模板,两种缸盖在此定义为缸盖A与缸盖B,分别以缸盖的轮廓为粗定位,允许工件水平方向(A角度)±180°旋转,以此粗定位来确认缸盖的中心点为工件的坐标值来产生数据(x、y、z)提供给机器人控制器。每进行一次扫描拍照后,程序拍摄图像与模板匹配,进行缸盖的寻找定位。
图3 3D相机扫描成像图
(4)扫描后的图像处理 机器视觉系统中,视觉信息的处理技术主要依赖于图像处理方法,它包括图像增强、数据编码和传输、平滑、边缘锐化、分割、特征抽取、图像识别与理解等内容。经过这些处理后,输出图像的质量得到相当程度的改善,既提升了图像的视觉效果,又便于计算机对图像进行分析、处理和识别。此项目中扫描后的图像经过二值化处理后,需要对相应的特征点进行解析、组合与运算。
首先对图像的轮廓与模板进行匹配确定中心点,算出工件的x、y、z值,再匹配缸盖顶面上的三个点,通过ROI(region of interest) UNION工具经过两次组合为一工件平面,再通过FIT SURFACE工具生成一个水平参考面,利用数学运算CO-PLANARITY来对此两个面夹角进行解析,算出A、B、C对应的各角的值,分别定义如图3所示。
将运算后的数据x、y、z、a、b和c存储到可擦除的临时变量表DB数据块内,以方便数据调用与输出,通过以上过程,整个工件在空间的位置与姿态基本上已经确定完成,每次扫描后数据自动更新DB数据列表。
(5)数据的传输 此相机提供两种通信协议与方法——RS-485与TCP/IP以太网,考虑到以太网的通用性与适应性强等特点,本项目我们采用工业以太网进行相机与机器人控制器进行通信,相机做以太网服务器端,机器人控制器做以太网客户端,通过“open ethernet raw”与“write ethernet string”两命令,对端口与内容进行设定,输出格式为:='X'+STR(V0)+'Y'+STR(V1)+'Z'+STR(V2)+'A'+str(v5)+'B'+str(v4)+'C'+str(v3)+'E',结束符为ASCII字符“E”。同时为了更好地显示相机的拍摄效果,还可以将图像输出到HMI进行显示。
机器人系统
本项目我们采用奇瑞QH-165机器人,最大载荷质量为165kg,定位精度0.2mm,驱动部分采用松下MHMA5系列小惯量交流伺服驱动器。1、2、3轴采用功率5kW的电动机;4、5、6轴采用功率2.5kW的电动机。上位控制器采用基于嵌入式Windows XP平台计算机进行HMI开发,机器人动作控制程序采用C++语言进行编辑。具体的逻辑动作可分为机器人给相机执行命令的控制、机器人采集相机的数据、机器人姿态的转换和机器人动作控制等。
图4 机器人平面布置
1.机器人控制相机执行命令
主要通过外部I/O来实现,由于相机在扫描时要确定本次的扫描是整个托盘的扫描还是单个工件的扫描,具体的命令给出由机器人控制器来实现,相机通过可编程I/O来进行响应从而执行不同的条件分支程序。
2.机器人采集相机的数据
相机做以太网通信的客户端,机器人做服务器端,在开始拍照前机器人程序打开服务器,之后相机程序打开客户端连接服务器,并将拍照获得的位置信息传送到服务器,机器人获取数据后进行目标位置计算,并运动到抓取位置。
3.机器人姿态的转换
原理是:记录当前机器人末端位姿P1(x1,y1,z1,a1,b1,c1),扫描程序获得工件相对相机坐标原点的坐标值Pg(xg,yg,zg,ag,bg,cg)。将机器人进行90°姿态转换后进行手动缸盖的抓取,移动机器人到抓取点,记下机器人坐标值P2(x2,y2,z2,a2,b2,c2)。再通过数学运算得出调整的P△差值,作为坐标偏移常量,在后期的相机值中自动进行加法运算来保证机器人运动的准确性。
计算公式如下:
x△=x2-x1-xg
y△=y2-y1-yg
z△=z2-z1-zg
a△=a2-a1-ag
b△=b2-b1-bg
c△=c2-c1-cg
p2=p1+p△+pg
4.机器人动作控制
主要依据处理后的坐标值进行移动,分为四个区域:缸盖毛坯一区、缸盖毛坯二区,纸板存放区与下料辊道区。机器完成缸盖从码垛托盘搬运到生产线辊道过程后,用真空吸盘将隔层纸板搬运到纸板存放区,如图4所示。
图5 机器人HMI画面
5.程序设计
本程序在奇瑞公司QH165型机器人上位机程序基础上编写,对程序的主界面进行修改,按照搬运工位的步骤顺序采用按钮实现各个步骤的控制,添加了一些特定的显示部分,如图5所示。
(1)四个全局的整型的步骤变量,即: g_Lay、g_Floor、g_Part和g_InOut。g_Lay:取值范围是0~1,用于指定当前操作的料架(是第一个料架,还是第二个);g_Floor:取值范围是0~5,用于指定当前操作的工件层(第几层);g_Part:取值范围是0~7,指定当前操作的工件(第几个工件);g_InOut:取值范围0~1,指定当前整体扫描是里面一排还是外面一排(一层需要两次整体扫描)。
(2)程序界面组成 单层动作:用于对当前层的工件进行动作,包括单层的整体扫描,获取当前层的状态数据,当有纸板时,将纸板吸起,送到放置纸板位置;调整动作:用于对单个的工件进行扫描,获取位置,并调整姿态;单件动作:用于控制机器人到达工件抓取位置,抓取并搬运到送件位置;4个全局变量显示;当前层状态显示;程序运行状态显示。
夹具(夹爪)系统
为了实现对工件缸盖的平稳搬运,必须要依据不同工件(工件A/B)的特点,来设计合适的夹具,此项目考虑到两者的兼容性,既可以搬运A工件也可以搬运B工件。
整个夹具的设计充分考虑到产品的柔性搬运的需求,此套夹具上集成三大块部件:吸盘与真空发生器、夹爪总成和3D相机。吸盘与真空发生器采用SMC公司ZR系列产品,附带真空度压力检测开关,采用组件设计,能组合实现必要功能;双电控,有自保持功能,可集装化;可选择数字真空开关、电磁阀等功能。夹爪总成采用SMC公司的MHZ系列产品,此产品采用直线导轨,高刚性、高精度、防尘和防滴水构造。3D相机的安装板与夹爪的安装板进行集成并反向成90°安装,采用15mm厚45#钢进行加工制造。
辅助逻辑控制系统
辅助逻辑控制系统主要解决机器人与相机及外部设备之间的联锁控制与时序控制,协调各部件的动作顺序。本项目中将缸盖搬运到辊道的过程,机器人搬运前需要确认机动辊道上工件情况,是否料满,是否缺料。我们使用对射式光电开关作为检测元件进行有无件的检测,从而进行自动程序的扫描与执行。对于机器人与夹爪的电磁阀与真空发生器执行器的控制采用机器人进行I/O动作的控制,实现夹爪的打开与关闭,真空度的建立与破坏。由于考虑到安全原因,机器人工作区域为防护网包围,在此设定安全门方便物流的进出,配备EUCHNER安全开关,就近设定一按钮站,进行人工的请求开门/关门,机器人循环启/停止等动作。
结语
3D视觉引导机器人技术具有良好的成本节约优势,能对零件式样与位置的变化进行管理,免去了成本高昂的精密夹具、机械料档和料盘,实现了人工作业的自动化;能精确定位码垛上的零件,延长生产线正常运行时间;并通过基本检验和零件识别功能提升产品质量。该项技术已经被广泛地应用于各类搬运、组装、机械加工和压铸工艺中。使用机器人对无夹具定位工件的自动柔性搬运系统可以使生产流水线更加简单易于维护,并大幅度降低工人的劳动强度,效率和柔性又比较高。该系统结构简单,安全文明,并且无污染,能在各种机械加工场合进行应用,满足了高效率、低能耗的生产要求。由上文可知,机器人自动柔性搬运系统具有很高的效率和产品质量稳定性,同时兼具柔性和可靠性较高、结构简单和便于维护的优点,可以满足不同种类产品的生产。对于汽车生产厂家来说,可以很快地进行产品结构的调整,扩大产能,大大降低了产业工人的劳动强度,具有广泛的应用前景。
跟帖
查看更多跟帖 已显示全部跟帖