岳宏梅
(安徽芜湖技师学院,安徽芜湖 241001)
在数车加工中,经常会遇到除直线和圆弧外的非圆曲线编程。对于非圆曲线,一般借助CAD用轮廓逼近的方式编程,这种编程不但程序冗长而且加工费时,有时甚至会出错。采用宏程序编程,可以通过对变量进行赋值、运算,并能利用循环语句控制程序流向等,使程序实现一些有规律变化(如椭圆)的动作,从而简化编程,提高加工效率。
宏程序是指采用了宏变量的程序。一般分为A类和B类宏程序。由于B类宏程序是以直接公式和语言输入的,和C语言相似,在FANUC 0i系统中的应用比较广。本文就采用B类宏程序。由于B类宏程序使用较广,一般书中都有介绍,这里就不再重复了。
用直线拟合椭圆,以Z坐标作为自变量,X坐标作为因变量。为了编程方便,一般采用等长步距逼近法,步距值根据椭圆精度要求和编程人员经验确定(步距值越小,零件的精度越高),在程序执行过程中根据自变量的变化对应找到椭圆上的坐标值。另外,椭圆方程中的值与工件坐标系中的值不是同一值,编程时应找出两者之间的对应关系。
#1 椭圆方程中初始点的Z坐标值
#2 椭圆方程中的初始点X坐标值,通过椭圆方程变换得来。
#3 椭圆初始点在工件坐标系中的X坐标值
#4 椭圆初始点在工件坐标系中的Z坐标值
图1
例1:加工如图1所示的零件,毛坯尺寸为φ32×48 mm,以工件右端面和轴线的交点为工件原点(φ30外圆已加工好)。程序如下:O0001;
T0101;
G00 X35 Z5
G73 U16 W0 R4
G73 P10 Q20 U0.5 W0 F0.3
N10 G00 X0
G01 Z0 F0.1
#1=20 (椭圆方程中初始点的Z坐标值)
N50#2=12*SQRT[1-#1*#1/400](椭圆方程中的初始点X坐标值,通过椭圆方程变换得来)
#3=2*#2 (椭圆初始点在工件坐标系中的X坐标值)
#4=#1-20 (椭圆初始点在工件坐标系中的Z坐标值)
G01 X#3 Z#4
#1=#1-0.1 (变量重新赋值)
IF[[#1]GE7]GO TO50 (判断椭圆是否到达终点)
G01 W-9
G02 U6 W-3 R3
N20 G01 X35
G00 X100 Z100
M05
M30
图2
例2:使用数控车床切削零件如图2所示,毛坯尺寸为 φ45×48 mm,以工件右端面和轴线的交点为工件原点。其它地方加工程序略(以例1为参考),只编写凸椭圆部分程序。IF和WHILE循环语句可替换使用,参考程序如下:
#1=15
WHILE[[#1]GE 0]DO 1
#2=8*SQRT[1-#1*#1/225]
#3=2*[#2+10]
#4=#1-28
G01 X#3 Z#4
#1=#1-0.1
END1
图3
例3:使用数控车床切削零件如图 3所示,毛坯尺寸为 φ50×48 mm,以工件右端面和轴线的交点为工件原点。
其他地方加工程序(以例1为参考)略,只编写凹椭圆部分程序:#1=12
N50#2=24*SQRT[1-#1*#1/1600]
#3=2*[42-#2]
#4=#1-22
G01 X#3 Z#4
#1=#1-0.1
IF[[#1]GE-23]GO TO50
以上程序已在FANUC 0i系统验证成功。当然,椭圆除了直角坐标编程外,还可采用参数方程编写加工程序。在实际生产过程中,需要根据已知条件,选择合适的编程方法(以上3个图形,均采用直角坐标编程)。运用宏程序编制椭圆,需要根据零件的实际尺寸,改变椭圆方程中的参数,即可实现椭圆的加工。
[1] 陈冲锋,张国政.典型零件宏程序编制在数控车床中的应用[J].中国现代教育装备,2010(7):89-90.
[2] 耿国卿.数控机床操作与编程培训教程[M].北京:机械工业出版社,2001.
[3] 沈建峰,朱勤惠.数控车床技能鉴定[M].北京:化学工业出版社,2007.
[4] 徐昆鹏,张欣.数控加工中宏程序的应用技巧[M].北京:化学工业出版社,2006.