【摘要】本文介绍了在数控机床上用寻边器测量工件尺寸及形位公差,同时快速设定工件零点的方法。它的成功应用不仅为众多的中小企业充分利用数控机床的先进功能、节约购置专用检测设备的投入提供了经验,同时为一些特殊及相似零件的编程加工及检测打开了思路。FANUC和SINUMERIK数控系统是当今应用范围最广泛的两类数控系统,虽然在操作方式上有所差异,但其基本方法是一致的,以下分别做出说明。
【关键词】形位公差 寻边器 检测
LILi_li
(SJ Petroleum Machinery Co. Sinopec Corp. Jingzhou Hubei, 434024, China)
【Keywords】tolerance of form and position ; detecting ; the edge finder
引言
数控机床和三坐标测量机均是机电一体化的自动化机械,数控机床是将被加工对象进行数字化处理,然后利用数字信息进行控制,从而加工出合格产品。而三坐标测量机则是在已加工好的产品上,利用测头与工件型面接触测得一系列点的坐标值,进而计算出尺寸、形位误差值的测量设备,数控机床与三坐标测量机均是利用坐标轴的移动实现自身功能。基于这一共同点,该方法在不改变数控机床CNC控制系统的条件下 ,将数控机床原有的功能加以扩展,通过宏程序实现在数控机床上测量工件尺寸及形位公差等多项功能。
1 硬件部分
寻边器上测头的基本功能是触发和瞄准。测头分为机械式、光电式、电气式三种。测头性能的好坏,决定着测量方式的难易、测量精度的高低。这次选用我国生产的应用极为广泛的硬线连接光电式测头,它属于接触式测头,为通用型球头测头,直径6毫米,能测定高度、槽宽、孔径和轮廓形状等。
2 软件部分
2.1 SIEMENS系统中的宏程序
;%_N_WORKPIECE ZERO AUTO SET_MPF (主程序名)
;$PATH=/_N_MPF_DIR
IF R20<=0 GOTOF _L
IF R20>4 GOTOF ERROR
AAA:R20=R20
CASE R20 OF 1 GOTOF _A 2 GOTOF _AA 3 GOTOF _B 4 GOTOF _BB DEFAULT GOTOF _E
_A: R[R20]=$AA_IM[X]
记录当前X轴机床坐标系的值,其结果保存在变量R1中
MSG("RECORD R" <<R20<<" POINT X AXIS AND THEN PRESS BUTTON [RESET]")
提示用户X轴方向的R1点坐标已经记录,按下复位键
R20=R20+1
M0
_AA: R[R20]=$AA_IM[X]
记录当前X轴机床坐标系的值,结果保存在变量R2中
MSG("RECORD R" <<R20<<" POINT X AXIS AND THEN PRESS BUTTON [RESET] ")
提示用户X轴方向的R2点坐标已经记录,按下复位键
M0
R20=R20+1
M0
_B: R[R20]=$AA_IM[Y]
记录当前Y轴机床坐标系的值,其结果保存在变量R3中
MSG("RECORD R"<<R20<<" POINT Y AXIS AND THEN PRESS BUTTON [RESET]")
提示用户Y轴方向的R3点坐标已经记录,按下复位键
R20=R20+1
M0
_BB: R[R20]=$AA_IM[Y]
记录当前Y轴机床坐标系中的值, 其结果保存在变量R4中
MSG("RECORD R"<<R20<<" POINT Y AXIS THEN PRESS CYCLE START ")
提示用户Y轴方向的R4点坐标已经记录,按循环启动键
R20=R20+1
M0
_E:
R15=(R1+R2)/2 ; 计算工件中心的X轴坐标
R16=(R3+R4)/2 ; 计算工件中心的Y轴坐标
$P_UIFR[1,X,TR]=R15;
表示将产品中心的X轴坐标输入到G54零点偏置中;表达式中的 1代表G54; 如有必要可以改为2(代表G55)等等
$P_UIFR[1,Y,TR]=R16;
表示将产品中心的Y轴坐标输入到G54的零点偏置中,表达式中的 1代表G54; 如有必要可以改为2(代表G55)等等
R14=2*SQRT(POT(R1-R15)+POT(R3-R16))+6 ;
R17=ABS(R2-R1)-6 R18=ABS(R4-R3)-6;
注意这三个表达式中的数值“6” 代表寻边器测头的直径。
MSG("D="<<R14<<" L="<<R17<<" W="<<R18<<"")
在控制面板上显示出工件的直径(长度、宽度尺寸)
M0
GOTOF END
_L: R20=1
GOTOB AAA
ERROR: MSG(“ FIRST ENTER PART NUMBER 0 OR 1 TO &R20”) ;
提示用户修改变量R20的值,首先将数值0或1填入变量R20中。
END:
MSG() 清除所有信息
M30 程序结束并返回程序开头
2.2 FANUC系统中的宏程序
O0999 (宏程序名)
N1
#1 =54.0 (选择坐标系 G54)
#2 =0.1 (塞尺厚度)可根据实际情况改变该数值
IF [#2 LT 0 ] GOTO2
IF [#2 GT 1 ] GOTO2 (若塞尺厚度大于1mm,小于0mm则程
序跳转到N2,面板上显示报警信息)
IF [#1 EQ 54 ] GOTO54 (选择G54零点偏置)
IF [#1 EQ 55 ] GOTO55 (选择G55零点偏置)
#3000 =1(YOU INPUT ERR, INPUT 54-55) (机床报警)
N2
#3000=2(YOU INPUT ERR,INPUT 0.0-1.0)
(机床报警:提示输入错误,请输入正确的塞尺厚度0-1.0)
N54
M3S60 (转换至手动状态,并沿水平方向缓慢移动产品,
直至寻边器上的测头刚刚与孔壁(或者工件边沿)
接触,此时寻边器上的指示灯会发光;)
M0
#501 =#5021 (读取当前X方向上X1点的机床坐标值;)
M00 (转换至手动状态,启动主轴旋转,仅在水平方向缓慢移
动产品,直至寻边器上的测头刚刚与孔壁接触,指示灯亮;)
#502 =#5021 (读取当前X方向上X2点的机床坐标值;)
#503 =[#501+#502]/2 (计算工件X方向中心点的坐标;)
#801 =#5221 (记录G54零偏区中 X方向的中心;)
#5221 =#503 (将X方向中心点坐标赋值到G54零偏区中;)
M00 (如果工件是圆形的,则不移动机床;如果工件是矩形的,则
转换至手动状态,启动主轴旋转;在竖直方向移动产品,直至
寻边器上的测头刚刚与工件侧壁接触,如图2所示Y1点的位置;)
#504 =#5022 (读取当前Y方向Y1点的机床坐标;)
M00 (仅在竖直方向缓慢移动产品,直至寻边器上的测头刚
刚与孔壁(或者工件边沿)接触(水平方向不动),);
#505=#5022 (读取当前Y方向Y2点的机床坐标;)
#506 =[#504+#505]/2 (计算工件Y方向的中心;)
#802 =#5222 (记录G54 零偏区中Y轴的中心;)
#5222 =#506 (设置G54 零偏区中Y轴的中心;)
M00 (暂停,转换至手动状态,取下寻边器,将刀具装入主轴,移
动刀具到刚好和塞尺接触的位置;准备测量该刀具Z轴零位;)
#508 =#5023 (读取当前Z方向机床坐标;)
#509 =#508-#2-#[11000+#4120] (计算Z轴零位;) (注:#4120为当前主轴上刀具号,
#11001、#11002、#11003......依次为1号刀的刀具
长度补偿值,2号刀、3号刀......,值为正,若刀具
补偿内存形式是B 类,则系统变量从#2001开始,同
时此处11000可以改为2000)
#803 =#5223 (记录当前G54 零偏区中Z轴的零点;)
#5223 =#509 (设置当前G54 零偏区中Z轴的零点;)
M00
#510=2*SQRT[[#5021-#5221]*[#5021-#5221]+[#5022-#5222]*[#5022-#5222]]+ 6
(计算工件直径尺寸;)
#511=ABS[#502-#501]-6 (计算工件长度尺寸;)
#512=ABS[#505-#504]-6 (计算工件宽度尺寸;) 注意表达式中
的数值 “6” 代表寻边器测头的直径。
N100 #3006=1(D=#510 L=#511 W=#512 )
(在控制面板上显示工件直径(长度、宽度)各自所对应的变量名)
GOTO 200
M00
N55 M3S60
M00
(G55 X POS AUTO SET) (以下G55的程序与上面相同,已省略;)
N200 M30 程序结束
3 项目的理论依据
3.1 假设坐标轴上A B两点坐标分别为( xA , yA ,zA ) ( xB , yB , zB),根据坐标轴上两点间的距离、中点计算公式及圆的标准方程 (其中 圆心O点坐标为(a,b),半径为r)可求得圆的半径尺寸和A B两点间的距离 ,其中x=xA - xB;y=yA - yB;z=zA – zB,中点的坐标随之求得。
3.2 如果要检查产品的形状及位置公差,依据的原则为最小条件及最小二乘法。就是利用离散采样数据点的集合,将一定的数学模型进行计算以获得测量结果的过程。由于应用本测量方法测得的值均为一些要素表面离散点的坐标,因此要测出需要的几何元素误差值,还要进行相应的数学推导。对于形位误差的测量,只需用增加工件上的几个测量点,即可完成产品的直线度、圆度、同轴度等检测项目。测量精度可以达到0.003毫米,较常规检测更为精确。下面以测量图1中孔轴线的直线度为例做简要说明:(公式推导过程省略)
公式(1)
将该直线方程化为一般式:
ax + b - y = 0 公式(2)
然后,求得各个测量点到该最小二乘线的距离:
d =(axi - yi + b)/ 公式(3)
设待测公差项目是孔轴线的直线度,公差为小于0.005mm。
先将孔沿轴向划分为N 个截面(本例取N = 4) , 测得每一截面上孔内表面上任意三个点的坐标(见下表) ,根据数学定理:不在同一条直线上的三点确定一个圆, 可求得各截面圆对应的孔中心坐标, 将此N 个孔中心的坐标xi 、 yi 代入式公式(1) ,拟合最小二乘直线y = ax + b,再将各圆心点的坐标代入式(3) ,可求出各个孔的中心点到该直线的距离;误差值为2dmax。
表 寻边器测量孔内4个截面上任意三点的坐标值
normal style="TEXT-ALIGN: left" align=left>
normal style="TEXT-ALIGN: center" align=center>第一点坐标
normal style="TEXT-ALIGN: center" align=center>第二点坐标
第三点坐标
normal style="TEXT-ALIGN: left" align=left>第1截面
normal style="TEXT-ALIGN: left" align=left>(-6.096, 24.249)
normal style="TEXT-ALIGN: left" align=left>(22.578, 10.784)
normal style="TEXT-ALIGN: left" align=left>(12.465,-21.678)
normal style="TEXT-ALIGN: left" align=left>第2截面
normal style="TEXT-ALIGN: left" align=left>(23.99,-7.346)
normal style="TEXT-ALIGN: left" align=left>(20. 880, 13.749)
normal style="TEXT-ALIGN: left" align=left>(-23.388,8.859)
normal style="TEXT-ALIGN: left" align=left>第3截面
normal style="TEXT-ALIGN: left" align=left>(5.675, 24.341)
normal style="TEXT-ALIGN: left" align=left>(-24.71, -3.748)
normal style="TEXT-ALIGN: left" align=left>(23.78, - 7.699)
normal style="TEXT-ALIGN: left" align=left>第4截面
normal style="TEXT-ALIGN: left" align=left>(-12.55, 21.611)
normal style="TEXT-ALIGN: left" align=left>(-6.82, -24.059)
normal style="TEXT-ALIGN: left" align=left>(23.699, 7.911)
此为任意方向上孔的直线度误差:计算结果Δ = 2dmax = 0.0082mm。该数值大于设定的公差值0.005mm,因此该检测项目不合格。
图1
图2 圆形工件
图3 矩形工件
图2、图3中红色粗实线代表工件轮廓,黑色细实线小圆圈代表寻边器上测头的不同位置。以水平方向作为X轴方向,以竖直方向作为Y轴方向设定坐标系。按照宏程序中的说明,先将寻边器装入主轴,使主轴低速(一般取60-80转/分钟)旋转,然后转换至JOG方式,找到X1点的坐标,然后依次是X2点,Y1点,Y2点,注意矩形工件与圆形工件在Y1点的位置选择上有区别(如图所示),其余操作相同,可在20秒钟之内让系统自动记录并在指定的零点偏置区(G54或G55等)中输入工件(X、Y轴)中心点坐标和Z轴的零点,如果是FANUC系统的机床,则会显示出圆形工件的直径(和矩形工件的长度、宽度)所对应的参数号:#510、#511、#512等,这些变量对应的数值保存在OFFSET界面下。查看时先按功能【OFFSET SETTING】 键,按下继续菜单键 , 再按下章节选择软键[MACRO](宏);用翻页键或数值键及软键[NO.SRH](NO.搜索)选择参数号,即可显示每一个参数所对应的具体数值。如果是在SIEMENS系统的机床上,则会直接在控制面板上显示出圆形工件的直径(和矩形工件的长度、宽度)尺寸。
4 结束语
通过一段时间的使用测试,该方法完全满足了实际加工和检测过程的需要,可以即时检测产品同轴度、直线度等项目,免去了转运到三坐标测量仪上进行检测的时间和费用,体现出较明显的高效性、实用性和稳定性。尽管如此,上述方法仍有诸多不足;这里仅提出个人的一点经验,不妥之处还请各位专家批评、指正。