□ 胡 辉 □ 谭小群
西北工业大学 机电学院 西安 710072
随着机器人技术的迅猛发展和计算视觉技术的日益普及,机器人视觉系统在各行各业的应用越来越广泛。
在电测技术中,应变片黏贴质量的优劣对测量的可靠性影响很大,是一个非常关键的环节,必须予以注意。由于构件在受力后各处的应变不同,有时位置的微小变化也会造成测出的应变偏差较大。因此,为提高电测结果的准确性,在将应变片贴在被测定物上的过程中,必须精确检测出应变片的位置特征点,并提高应变片黏贴位置的精度。机器人视觉技术能很好地解决这一问题,由于对生产质量要求,本系统需要对应变片进行两次视觉检测以提高检测精度。
本文分别从系统功能和结构、控制系统设计、软件设计、系统运行及测试4方面对机器人自动贴片系统进行论述和分析。
机器人自动贴片系统能够完成各种电阻应变片的自动贴片,并且贴片精度能达到±0.1 mm。该系统主要由机器人系统模块、PLC控制模块、视觉检测模块和上位机模块4部分组成,图1为机器人自动贴片系统结构图。机器人系统模块的主要作用是根据贴片要求,移动吸取应变片的吸头到目标位置,主要由机器人本体以及机器人控制系统组成;PLC控制模块直接控制工件的翻转、机器人的外部自动运行以及按钮和灯的运行,主要由PLC控制系统组成;视觉检测模块主要向上位机和机器人控制系统提供应变片贴片位置的偏移信息,主要由工业相机本体以及IN-SIGHT软件系统组成;上位机模块主要用于在软件层控制系统的启动/停止、应变片参数设置及选择、系统用户管理以及各个设备运行状态的监控。
图1 机器人自动贴片系统结构
控制系统从上至下分为3层:上位机软件层、设备驱动层和底层硬件平台,如图2所示,设备驱动负责连接上位机软件和底层硬件。
图2 机器人自动贴片系统层次结构图
本系统的上位机软件构架在Windows XP操作系统上,采用Visual C#.NET工具进行开发,上位机软件主要分为6个模块:数据传送模块、数据处理模块、图形显示模块、数据监控模块、数据保存模块和参数设置模块。软件主框架主要负责把上述6个模块联系起来,并提供多线程支持。系统采用面向对象技术和基于组件的设计思想进行设计,因此本系统可以方便地扩展现有代码,提高编码效率,也减低了出错概率,降低软件维护的难度。
设备驱动负责连接上位机软件和底层硬件。OPC是一套基于Windows操作平台,为工业应用程序之间提供高效的信息集成和多功能的组件对象模型接口标准,它以微软的组件对象模型COM/DCOM/COM+技术为基础,采用客户/服务器模式(C/S),OPCDAAuto.dll是其中的一种COM组件。WinAPI是Windows应用程序编程接口,可以用来完成各种各样的功能,包括窗口管理、图形设备接口、内存管理、媒体控制和系统扩展等。
硬件平台以研华工控机、KUKA机器人、康耐视工业相机和三菱PLC为核心。KUKA机器人与工控机通过网线进行连接,三菱PLC与工控机通过RS232接口进行连接,康耐视工业相机和工控机通过网线进行连接。本系统的元件主要采用PLC控制,主要控制元件有电磁阀、指示灯、接近开关、继电器等。
2.4.1 控制系统结构及控制方式
PLC系统构成灵活、扩展容易,通用性、适应性、抗干扰能力强,使用方便,编程简单,并能与上位机构成复杂的控制系统,实现生产过程的综合自动化,因此,本系统采用基于上位机和PLC的控制方式。机器人采用KUKA KR 5 sixx R650本身的KR C2控制系统,该控制系统为多处理器系统,并且通过I/O端口控制响应外围设备的输入信号以及输出信号。机器人自动贴片系统的启动及停止、应变片参数设置及选择、贴片状态监测等任务主要由上位PC机完成。PLC的控制程序采用三菱PLC编程软件进行编写,机器人运动程序采用KUKA机器人的KRL语言在机器人示教盒中进行编写。在贴片过程中,机器人控制系统与上位PC机采用以太网的方式进行通信,PLC控制系统与上位PC机采用串口方式进行通信。
2.4.2 视觉检测系统
视觉检测系统包括硬件模块和软件模块。硬件主要包括工业相机、镜头和光源。本系统采用的是康耐视In-Sight1403视觉检测软件,每次对同一个应变片进行两次视觉处理,软件根据不同应变片的不同特性来检测其相应的偏移量。In-Sight1403功能强大,能及时分辨出有瑕疵的应变片,并把相应的信息发送给主控系统,把不良品剔除。
本系统的相机固定在工作台上,从下往上对应变片进行检测,即检测应变片的反面。本系统采用康耐视In-Sight1403视觉检测方法,检测出应变片特征中心点在图像像素坐标系O-UV的u、v坐标值和实际应变片相对于标准模板应变片的偏移角度,根据标定方法将图像像素坐标值转换成机器人工件坐标系下的x、y值。工件坐标系是根据翻转机构平面建立的一个坐标系,各个坐标轴与图像像素坐标系的各个轴平行。机器人的工件坐标系与相机图像像素坐标系的关系如图3所示。
图3 图像像素坐标系与工件坐标系示意图
在机器人自动贴片工作中,机器人在工件坐标系下工作,工件坐标系与全局坐标系的位姿关系可以通过KUKA机器人的工件标定功能得到。在本系统中,应变片到相机的工作距离是固定的,这可以由机器人TCP到工作台平面的距离来保证。被贴物体的目标点的补偿值是根据视觉检测所得的3个值来求得,并通过上位机算法对贴片位置进行实时精度补偿。
软件设计是整个系统的核心部分,本系统的软件部分为上位机软件程序和下位机软件程序,上位机软件程序包括系统的启动/停止控制程序、应变片参数设置及选择程序、贴片状态监测程序、视觉检测数据算法程序,下位机的集成程序以及人机界面程序,下位机软件程序包括PLC控制程序和机器人控制程序。整个系统的流程如图4所示。
图4 系统程序流程
3.2.1 数据传送模块
该模块主要负责机器人运动控制指令和PLC控制指令的传送、机器人状态参数和PLC状态参数的读取以及视觉检测数据的传送。上位机和机器人使用OPC通信方式,主要使用的 COM组件为 OPCDAAuto.dll、opccomn_ps.dll、opc_aeps.dll、opchda_ps.dll和 opcproxy.dll,其中主要包括数据访问类IOPCCommon、同步读写数据类IOPCSyncIO和异步读写数据类IOPCASyncIO2等,通过实例化这些类,供数据传送模块使用。上位机和PLC使用串口通信,通过实例化类SerialPort来设置串口通信参数。视觉检测数据的传送使用COM组件通信,这是由于厂家康耐视提供的驱动是Cognex.InSight.dll组件和Cognex.InSight.Controls.Display.dll组件,通过实例化这些组件中的类即可进行数据传送。
3.2.2 数据处理模块
该模块主要是实现机器人贴片位置的实时补偿,系统通过使用空间坐标转换的办法和软件算法来实现机器人自动贴片精度的提高。软件实时补偿后,机器人的贴片精度达到预期要求的±0.1 mm。
3.2.3 参数设置模块
该模块主要是由系统管理人员进行设置,主要设置的参数包括应变片的型号、弹性体的型号、光视job的设置以及贴片数目等,结合本系统的软件控制程序,选择完这些参数后即可启动贴片任务。
针对梅特勒-托利多公司提供的某种型号的应变片进行测试,系统运行界面如图5所示,图中显示应变片进行视觉检测后的特征区域,并在右侧数据显示栏中显示了视觉检测后的应变片特征区域中心点在机器人工件坐标系下的坐标值。使用精密放大仪进行检测,本系统的应变片贴片精度达到±0.1 mm。
图5 系统运行界面
机器人自动贴片系统设计完成后,经过安装与调试,系统运行良好,各项功能都达到了预先设计的指标。机器人自动贴片系统的重复定位精度为±0.02 mm,定位精度达到了预先设计的指标,即±0.1 mm,极大地提高了应变片贴片的效率以及质量,现已投入生产使用。
[1] 杜宝瑞,冯子明,姚艳彬,等.用于飞机部件自动制孔的机器人制孔系统[J].航空制造技术,2010(2):47-50.
[2] 戴娟,汪大鹏,陈蕾,等.电测应力实验中应变片的黏贴技巧[J].湖南工程学院学报,2003,13(3):55-57.
[3] 邹益仁,马增良.现场总线控制系统的设计和开发[M].北京:国防工业出版社,2003.
[4] 高晓丁,胥光申,王锦.电阻应变片贴装方位偏差对测量结果的影响[J].西安石油学院学报(自然科学版),2001,16(6):41-43.