黄光亮 秦树人
(重庆大学测试中心,重庆 400030)
检测是制造过程中极其重要的一个环节,如何提高检测效率、缩短检测时间越来越成为制造业关注的焦点。传统的检测方法是离线检测,将工件从机床上卸下,在测量设备上检测完后装回机床再加工。这样需要耗费大量的时间在工件装卸和坐标找正上,而且还会产生人为误差。在线检测是将测头安装在机床主轴上,由测量程序控制测头自动完成检测。在线检测能大幅度地减少测量时间,避免二次装夹误差并提高机床的精度保持性。
文献[1-3]对在线检测系统及其软件进行了研究,但或被测工件信息的获取过于繁琐或没有考虑测量结果的误差补偿。文献[4-5]开发了基于Auto-CAD的加工中心在线检测系统,用二次开发工具ObjectARX获取被测工件信息,但各个功能模块并没有统一起来使其成为一个整体。文献[6]将虚拟仪器技术用于尺寸测量,对虚拟式的工件检测仪进行了有益的探索,但采用的是离线测量的方式且检测对象仅限于几何尺寸。本文利用虚拟仪器技术,整合各功能模块,使在线检测系统统一为仪器的形式,并对整个检测系统产生的误差进行补偿。
本文将虚拟式检测仪与加工中心的在线检测技术相结合,构建一个完整的在线检测系统,结构如图1所示[7]。它由五部分组成:机床本体、CNC系统、伺服系统、测头系统和检测仪。
在线检测系统的构建主要是将测头系统与加工中心的CNC系统相连接:先将测头装在刀柄上,再把测头像刀具一样置于刀库中或安装在主轴上,然后将测头的数据线经接收器连接到加工中心的数控系统,对测头进行校正后即可进行检测。
系统主要用于实现工件序后的在线检测。检测仪首先从工件的CAD图上读取零件信息,选择测量对象(圆孔、凸台等)并自动生成测量主宏程序。如果是序中检测,测量的工件关键信息可以手动输入。检测仪将测量程序由RS232串行通信接口上传给数控系统。数控系统执行测量程序,伺服系统驱动运动部件带动测头按规定的路径向测量点运动,当测球接触工件时发出触发信号[7]。该信号通过测头与数控系统的专用接口传到接收器,转换后传给机床的控制系统,机床停止运动,接触点的坐标值被记录下来,然后程序再控制测头进行下一个测量动作。这些被记录下来的数据可以通过RS232立刻回传检测仪,也可以先在数控系统中存储起来,待全部测量点都检测完成后一起回传。检测仪对测量结果修正后可进行评定或可视化等数据处理工作。
系统软件设计是检测仪开发的关键。按照检测仪的工作原理,把检测仪的功能分为CAD图形交换、宏程序生成、测量仿真、通信、数据分析、结果输出和文件保存回放7个主要功能模块,如图2所示。
检测仪选用集成开发环境VC++6.0开发,图3为开发完成的检测仪主界面。下面对各主要功能模块进行介绍。
绝大多数的零件图是用AutoCAD绘制的,从CAD图中获取工件的检测信息,可以保证设计、加工、检测的延续性。DXF(Drawing Exchange File)是一种图形信息交换文件,以ASCII码格式保存绘图信息,通常作为高级语言编写程序的接口。DXF文件由顺序出现的七大段组成:标题段、类段、表段、块段、实体段、对象段和结束段[8]。与零件尺寸有关的信息只包含在实体段(ENTITIES)中,其他段可以忽略。
图形交互模块从实体段读取直线、多段线、圆弧、圆等图元信息,并提取绘图边界信息。从绘图区大小和检测仪屏幕区大小获得一个比例,将各图元按比例重绘于检测仪。在检测仪屏幕上选取测量信息(直径、宽度、高度等)时,通过比例可以得到较准确的实际值。
宏程序生成模块把从图形交互模块中获得的零件信息作为变量生成检测主宏程序,可以完成圆心直径、宽度、平面位置、高度/深度、孔心距、直线度、平面度和圆度的检测,如图4所示。
宏程序编写时应规划合理的测量路径,避免测头提前触发影响测量结果。最典型的是圆心和直径的测量,如果路径规划不合理很容易将弦长当成直径。同时测头应该与工件作两次接触,先高速与工件接触以定位,退回一小段距离后以较低的速度接触,取第二次接触的主轴坐标。
仿真模块可以在检测前对实际检测中测头的运动路径进行模拟,避免实际检测过程中对测头系统造成的破坏。仿真模块以OpenGL作为场景开发工具,以图形化的方式再现加工中心的在线检测过程。
检测仪通过RS232串行接口与CNC系统通信,接口有9针-9针和9针-25针两种,采用XON/XOFF通信协议,通信开始前应使接收方处于准备好状态。通信模块主要实现测量宏程序的上传和检测数据的回传功能。
宏程序中只适合作简单的尺寸运算,如果将复杂的运算放在宏程序中进行,如平面度、圆度的计算,会占用工控机大量的处理时间,大大降低测量的效率,所以把数据处理作为一个模块从宏程序中独立出来,利用计算机强大的性能进行计算。
数据处理模块对从通信模块获得的数据进行误差补偿后,用适当的算法对检测数据进行处理。直线度误差的评定方法中,最小二乘法是比较通用的算法,易于转换成计算机程序;最小区域法符合最小条件。直线度误差同时采用最小二乘法和最小区域法评定[9-10],对评定结果取其小者。平面度误差评定中,最小包容区域法符合最小条件,但难用解析法求出,最小二乘法便于采用计算机对数据进行处理和计算,在测量数据比较多时,更加方便和快捷。所以平面度误差用最小二乘法评定[11]。圆度误差也采用最小二乘法评定,因为测量圆度误差时测量点在圆周均布,即角度增量相同,适合用最小二乘法进行拟合,并且最小二乘法能确定唯一的圆心和半径[12]。
结果输出模块对数据处理的结果与设计要求进行对比评定,以表格的形式显示及打印,形成检测报告。
对于采集到的数据需要根据检测任务的不同,按照不同的文件名加以区分保存,否则检测的数据多了以后后续处理时难以区分。回放功能主要是对保存的数据读取,以进行后续分析处理。
如果直接对采集回来的数据进行分析,得出的结果会产生较大的误差。检测仪的精度受加工中心固有误差、测头系统误差和评定算法误差三方面因素的影响。加工中心的误差包括几何误差和热误差,其辨识和补偿方法见文献[13-14]。下面着重分析测头误差和评定算法误差。
测头误差形成原因是测头存在机械滞后和信号传输及电气接口处理滞后,测头在刚接触工件时并不产生触发信号,而是在测头偏移其“零位”自由状态一段距离后才发出触发信号。预行程误差和测头重复定位误差称为测头静态误差,随机动态误差和动态误差称为测头动态误差,其中对测量精度影响最大的是预行程误差[15]。通过测头的标定可以对这些误差项进行补偿。测头标定包括有效直径、偏心量和测头长度。
3.1.1 测头有效直径标定
由于预行程误差的存在,测球刚接触工件时测头并没有被触发,而是测头(或工作台)继续产生一定位移量之后才会触发。如图5所示,A位置为“零位”自由状态,B位置为触发状态,可以认为距离d就是测头的预行程误差。
对测头触发时的力学模型进行分析后可知预行程误差与触发方位角、测杆长度、测球直径、测头弹性模量等参数有关[16]。可以确定各个参数后根据相关公式计算出预行程误差,再在测量结果中补偿。但是确定各个参数时也会产生误差并且效率也不高。下面介绍一种可行的确定预行程误差的新方法。
如图5,当测头在B位置触发时,相当于C位置点划线所示的测头与处于A位置的工件刚接触时就产生触发信号,即C测头处于“零位”自由状态。此时C测球的直径变为2d,它并不是测球的真实直径,故称其为有效直径。只要标定了有效直径就可以对预行程误差进行补偿。
有效直径可以用环规来标定。如图6a所示,环规孔的准确直径为D,使测球位于环规孔的圆心,分别在Y方向的1和2位置触发,触发时的坐标值为Y1和Y2,则Y方向的有效直径为D-|Y1-Y2|。有效直径随测头方位角的不同会有所改变,可以在检测前先对该方向上的有效直径进行标定。
3.1.2 测头偏心标定
测头安装时很难保证测球中心与加工中心主轴的回转中心完全一致,而测头触发时记录的是主轴的位置坐标,所以需要标定对测球中心与机床主轴中心的偏心量,用以对主轴坐标进行补偿。如图6b所示,环规孔中心坐标为X0、Y0,加工中心X轴、Y轴准确定位于孔心位置,测头分别在Y方向1、2位置触发,X方向3、4位置触发,得到两个方向的中点值X1、Y1,则偏心量 !x=|X0-X1|,!y=|Y0-Y1|。
3.1.3 测头长度标定
在进行Z轴方向的测量时,如果不知道准确的测头长度补偿值,将无法得到准确的测量结果,所以要对测头长度进行标定。测头长度可以用已知Z平面坐标位置的工件来标定:使测头在Z方向触发,将触发时Z轴坐标值减去原刀具长度补偿值和标定用Z面的值便可获得测头长度。
检测仪对直线度、平面度、圆度等形状误差的评定需要用到特定的算法,这些算法对检测的数据有一定的要求,否则也会产生较大的误差。
直线度可以用最小二乘法和最小包容区域法评定。最小区域法符合最小条件,但当数据点不在某一轴的附近分布时,会产生较大的误差,不能作为评定的依据。如图7所示,平行线a和b确定数据点最小包容区域,c是最小二乘拟合直线。由最小二乘法确定的直线度误差为d1+d2,最小区域法确定的直线度误差为d,很显然d>d1+d2。
圆度误差的评定是用测量数据点与最小二乘拟合圆在两个方向上进行比较,取与最小二乘圆距离最大的两点之和。实际上是把鸡心线的内切圆当作最小二乘圆[17]。因为圆度测量时是等角间距采样,所以当采样点数较少时,鸡心线形状明显,这种情况下所拟合的最小二乘圆误差比较大。因此应该增加采样点数来减小用最小二乘法拟合圆带来的误差。
将检测仪用于加工中心上进行测量,检测结果经误差补偿后,与三坐标测量机(CMM)测量结果和无误差补偿的测量结果进行比较,如表1所示。表明经误差补偿后检测仪的测量精度得到了提高。
表1 测量结果比较 mm
加工中心在线检测仪继承了虚拟仪器的优点,从工件CAD图获取测量信息,自动生成测量宏程序,宏程序上传机床后,机床带动测头自动完成测量。测量数据回传检测仪,分析后给出检测结果,避免了二次装夹误差。对测头系统和评定算法误差进行了分析,提出了误差补偿的方法。验证表明,虚拟式的在线检测仪能够完成较高精度的测量。
[1]陈明娟,章青,刘又午,等.加工中心在线检测软件开发[J].制造技术与机床,2000(4):52-53.
[2]刘战强,等.用于加工中心的在线工件自动测量系统[J].工具技术,2000,34(9):30-32.
[3]邓三鹏.数控机床在线检测软件的开发[J].机械设计与制造,2006(1):153-155.
[4]桑宏强,等.基于AutoCAD的加工中心在线工件自动检测系统[J].机床与液压,2007,35(5):190-191.
[5]孙志海.基于CAD的加工中心在线检测系统研究与开发[D].天津:河北工业大学,2003.
[6]郭明清,等.虚拟式零件尺寸检测仪的研制[J].振动、测试与诊断,2008,28(4):334-337.
[7]张晓峰.数控机床在线检测技术[J].CAD/CAM与制造业信息化.2005(12):69-71.
[8]李芳珍,等.DXF文件格式及其外部接口的研究[J].兵工自动化,2008,27(7):83-85.
[9]姚广晓,等.直线度误差的计算机辅助算法[J].机械工程师,2003(10):42-43.
[10]岳武陵,等.精确求解平面内直线度误差的计算机算法[J].南通工学院学报,2000,16(4):39-41.
[11]张昉.平面度误差的最小二乘法分析[J].机械制造与研究,2002(3):17-19.
[12]刘玉梅,等.圆度误差评定的计算机实现方法[J].沈阳工业学院学报,1999,18(1):37-40.
[13]郭辰.多功能数控铣床几何误差补偿技术的研究[D].沈阳:沈阳工业大学,2005.
[14]郭前建,杨建国,王秀山,等.数控机床热误差的在线测量与补偿加工[J].制造技术与机床,2007(4):32-34,37.
[15]孙芳芳.精密零件加工在线检测系统关键技术实现[D].南京:南京航空航天大学,2007:18-20.
[16]韩翠娥,等.接触触发式测头触发力的理论分析[J].军械工程学院学报,2005,17(5):75-78.
[17]颜景平.最小二乘圆参数的计算问题[J].计量学报,1989,10(2):132-137.