郑魁敬 周 鑫 程晓金
(①燕山大学先进锻压成形技术与科学教育部重点实验室,河北秦皇岛 066004;②燕山大学河北省并联机器人与机电系统实验室,河北秦皇岛 066004)
近年来,由于能够提高机器人在不同环境中的自主判断能力,保证机器人的灵活性和工作质量,视觉技术已经逐渐成为机器人获得环境信息的重要手段[1-5]。特别是在自动化生产线中,由于机械定位装置的偏差有时会导致机器人不能准确抓取工件,视觉系统越来越多地被应用于机器人上下料过程中的工件自动定位[6-8]。采用视觉技术,给生产线中的上下料机器人装上“眼睛”,通过准确识别工件位置,避免因机械定位、对中装置与工料的碰撞、挤压等造成不必要损失,从而简化了生产线中机械定位的工艺复杂性,有效缩短了定位时间,提高了机器人上下料效率和灵活性[9-10]。
本文将工业机器人与视觉定位系统进行集成,通过以太网实现机器人控制系统与工业摄像机、图像处理软件之间的实时通讯,实现工业机器人对板料工件的灵活快速准确抓取和放置。
机器人上下料系统包括机器人系统、集成控制系统、图像采集和处理系统、实时通讯接口等。
机器人上下料系统硬件如图1所示,包括服务器主机、ABB1410六自由度工业机器人、维视 MV-2000UC摄像机、端拾器真空系统、上下料工作台、I/O接口、数据传输介质等。集成控制软件安装在主机上,能与机器人控制器通讯并响应其请求,触发视觉系统拍照并进行图像处理。
ABB公司IRC5控制器与 PC机通讯可采用RS232、OPC server及Socket Message;现场总线通讯支持 Device Net、Profibus、Profinet、EtherNetIP。本文采用Socket Message,通过网络接口实现PC机与机器人通讯。机器人上下料系统将机器人控制器、PC机连入局域网,向PC机分配特定IP地址和端口号以便控制器搜索;维视MV-2000UC工业摄像机安装到上料工作台上方,通过USB接口连接到PC机;端拾器真空系统连接到控制器Device Net总线I/O板。
如图2所示,控制器与PC主机采用C/S结构,控制器端为客户端,PC机端为服务器端。由于摄像机采用固定式安装,为避免机器人在抓取时干涉摄像机拍照,拍照的触发信号设定在机器人离开上料台后的指定位姿,由控制器向PC机发出。PC机得到信号后,通过执行C语言开发的软件控制摄像机采集图像,然后进行图像处理,将工件定位信息数据通过PC机传递给机器人控制器,当机器人的端拾器运动到目标点时发出真空系统触发信号进行工件抓取。
视觉系统基本任务是从摄像机获取图像信息并通过计算确定工件的空间位置信息。
机器人抓取工件为400 mm×410 mm×1 mm的金属薄板,需要获得目标物体相对于标准位置沿x、y方向的偏移距离Tx、Ty以及绕z轴的偏转角度θ。图像坐标系和世界坐标系的关系如图3所示,O1-xy为世界坐标系;O2-uv为图像坐标系。图像坐标系的u方向与世界坐标系的x方向相同,而v方向和y方向相反,可以建立空间中的目标物体相对于标准位置的偏移模型为
式中:x1、y1为图像坐标系中标准位置的坐标;u、v为图像坐标系中目标物体坐标;r为图像坐标系到世界坐标系的比例因子,mm/pixel;Tx、Ty为偏移量。
用式(2)计算r并计算平均值,确定r为0.643 1。参数x1,y1确定为(516.868,703.197)。
当机器人的端拾器运动到某一规定位置时,客户端按照指定的IP地址与服务端口号请求与服务器端连接,然后触发摄像机照相。
摄像机将图像信号传给视觉系统软件进行图像处理。图像处理包括图像预处理、特征提取、边缘提取及中心位置识别等,流程如图4所示。
服务器将图像处理得到的板料位置偏差数据按顺序封装成字节流,返回给客户端,客户端按顺序将字节流打开,同时赋值给控制器中的变量X、Y、Rz,及时修正机器人抓取的目标点。
对系统实时性产生影响的因素主要有3个方面:系统响应快慢,图像处理速度和网络延迟。
Windows是一个通用操作系统平台,在实时性方面存在一定缺陷:线程优先级太少;隐含的不确定的线程调度机制;优先级倒置,尤其体现在中断处理中。本系统嵌入RTX(Real-time Extension)对Windows系统进行实时扩展。
通过向操作系统嵌入RTX,不但能够改进系统数据传输的实时性,还能够避免由于操作系统内部引起的错误,保证了系统运行的可靠性。
由于视觉定位中使用的特定标志物图像及背景图像尺寸对计算时间影响较大,为提高视觉定位实时性,分别改变待识别图像及背景图像尺寸,进行图像匹配实时性测试。当标志物图像和背景图像尺寸缩小40% ~60%时,特征点数减少20% ~30%,定位时间缩短30%~40%,在满足定位精度要求下提高了定位实时性。因此,通过合理选择图像尺寸不仅可满足匹配精度,还能提高视觉定位效率。
首先,通过限制以太网通讯负载大小的方法提高以太网实时性。通信负载主要由节点数目和数据帧长度决定。在自动化生产线中,节点间传输数据多为不超过256字节的短信息帧,因此限制通信负载的大小主要取决于节点数目,可通过尽量减少节点数降低延迟。其次,采用快速以太网和交换式以太网取代共享式以太网,通过划分网络避免竞争或提高通信速率减少延迟。最后,可给不同信息分配优先级,使紧急事件信息能够及时得到传输,从而改善以太网实时性能。
对系统实时性测试采用程序插桩方法。程序插桩是在静态测试阶段向被测程序中插入操作,人为加入测试函数(桩函数),在程序执行过程中通过收集插入信息来获得程序执行和状态数据的测试技术。服务器端实时性度量指标为软件响应延迟时间、运行时间和输出延迟时间。要获取这些时间信息,需要在程序中插入探针,即进行插桩。桩点位置设计在Server/Client的入口、出口和图像处理系统的入口、出口。系统实时性测试结果如表1所示。
表1 系统实时性测试结果 s
首先利用ABB公司Robotstudio仿真软件对整个系统的可行性及网络通信能力进行仿真测试。向Robotstudio软件导入三维模型、定义虚拟I/O板,建立虚拟数组模仿视觉系统,完全模拟上下料系统。虚拟上下料系统如图5所示。
在虚拟上下料系统中仿真测试后进行机器人上下料实验。对工件进行视觉定位,确定工件的偏移位置。利用视觉系统对工件图像的处理过程如图6所示,工件定位数据如表2所示。
将表2中的视觉定位数据传递给机器人控制器,控制机器人实时调整位姿,准确抓取工件。机器人上下料系统如图7所示,系统控制软件界面如图8所示。在稳定光源下,机器人能够以10次/min的速度将随意放置的板料灵活抓取并准确放入下料台,达到了系统设计要求。
表2 工件定位数据
基于视觉定位的上下料机器人系统集成技术,通过引入视觉功能使机器人能够准确确定板料的位置和方向信息,从而能够灵活准确快速地实现随意摆放的工件上下料。该系统的研究对于自动化生产线中减少机器人上下料时间、降低成本、提高自动化水平具有重要的理论与实际意义。
[1]Savage L.Fully featured machine vision software drives manufacturing[J].Photonics Spectra,2011,45(11):1 -5.
[2]蔡征宇,沈俊杰,杨昀.基于工业CCD摄像机的机器人视觉定位系统研究[J].机电一体化,2010(3):22-25.
[3]陈伟华,马琼雄,陈月军.基于VisionPro的工业机器人视觉定位系统[J].组合机床与自动化加工技术,2012(2):81-83.
[4]张建中,何永义,李军.机器人装配视觉定位应用研究[J].机电工程,2011,28(8):934 -937.
[5]Shahabi H H,Ratnam M M.Prediction of surface roughness and dimensional deviation of workpiece in turning:a machine vision approach[J].Advanced Manufacturing Technology,2010,48(1):213 -226.
[6]李金义,杨成,王京,等.基于视觉定位的机器人搬运系统[J].制造业自动化,2011,33(4):40 -42.
[7]姜永成,周正干,任福君,等.图像尺寸对机器人视觉定位实时性的影响研究[J].计算机工程与应用,2010,46(7):197 -199.
[8]徐剑飞,周德俭,林卓强.基于PC机器视觉的贴片机视觉对中应用研究[J].测控技术,2007,26(7):82 -85.
[9]稻叶善治.机床和智能机器人的融合[J].世界制造技术与装备市场,2009(4):37 -38.
[10]关号兵,顾寄南,陈四杰,等.圆柱体工件上下料机器人视觉系统设计[J].机械设计与研究,2012,28(1):18 -21.