随着机械设备的不断更新换代,数控机床正在逐步普及,而在机械零件加工中,一般数控机床的系统只具备通用的准备功能(G功能)。如加工一个简单的方腔,要通过程序编辑并经多次反复加工,才能完成这一方腔。如果零件稍复杂,不但加工程序较大,数据多,编程时间长,而且出现错误也不易检查。另外,加工很多形状相似的零件,每次都要重新编程,很费时间。为解决这一问题,可采取编制特种专用程序的方案。如果厂家提供的程序中有固定的程序和重复模式时,可将某一特殊部分作为子程序存放,使程序简化。如果带有宏程序任选功能时,还可以通过系统参数的设定,将编写的宏程序设定成固定循环的G功能。
笔者使用的是XKA738C数控铣床,它采用的是FANUK-0MJ系统(以下简称系统),配有“用户宏程序B”,它不仅可以对零件进行变量编程,而且可以将宏程序主体通过参数设定成固定循环的G功能。把用一组命令构成的功能象子程序一样存贮在存储器中,将存储的功能用一个命令代表(如G___) ,只根据写入的命令机床就能执行其功能。把存贮的这一组命令叫用户宏程序,代表命令叫用户宏程序命令。
1宏程序主体结构
数控系统中,宏程序结构如图1,系统参数中的程序号厂家已经设定为O9010--O9019,只要用自行确定的G代码调用宏程序主体程序号,就可进行相应形状的加工。通过参数设定,可以选择是否将宏程序显示在屏幕上,为避免程序被错改,最好选择屏蔽,但缺点是加工中光标不会移动,直到此功能结束。另外,其它程序号无法调出此宏程序。用户宏程序主体中间部分是加工过程,通过对其变量赋值,即可进行固定循环加工,程序结束通过M99返回主程序。 (图片)
图1 2 宏程序主体的编写
宏程序主体中以变量为主,用变量进行运算、转移。其目的不仅要使类似零件集中到一个范围内,而且结构要简洁,符合加工步骤,占用的内存要小。由于软件系统在工作中是采用中断查询控制方式,在需要改变工作状态时,由PIO向CPU提出中断申请,CPU经判断发出相应转移指令,机床再根据指令进行运动。现以圆腔加工为例(如图2),来考虑宏程序 的设计思路。(图片)
图2 1,变量的使用和运算
该系统中,设定自变量I中指定的地址与在用户宏程序主体内使用的变量号一一对应,此变量为系统变量,另外用于计算的公共变量,系统未作规定,可任意使用(除系统变量之外)。变量的运算,要按照系统规定编写,如:
#100=(#110×#102)1/2写成:100=SQRE [#110*#102]
当#100≥5时,转移到N6段,写成IF[#100GE5]GOTO6
2,设计程序思路
系统变量的确定
在圆腔加工中首先要对自变量I中的变量号与自订的G指令中字母对应,它直接影响零件加工的方式。如圆心坐标值X、Y (#24、#25),圆腔的半径D(#7),刀具半径R(#18),加工深度Z(#26),粗加工次数B(#2),加工余量K(#6),每次进刀深度Q(#17),然后是加工方向A(#1),安全高度H(#11),走刀量F(#9)。
圆腔加工流程图及程序
流程图是编制程序的重要步骤,程序是否合理,流程图是关键,它直接影响加工的运行轨迹以及转移的位置是否合理(如图3)。(图片)
图3 O9012;
#100=#26-#6;
#101=#9*5;
#102=#7-#6-#18;
#103=#102/#2;
#104=#25+#7-#18;
#105=#5-#18;
G00X#24 Y#25;
G00Z#11;
#106=0;
N100#106=#106+#17;
G01Z-#106 F#9;
IF[#102 EQ 0]GOTO 150;
#107=0;
N110 #106=#107+#103;
#108=#107+#25;
G01 Y#108 F#101;
IF[#1 EQ 1]GOTO 120;
IF[#1 EQ-1] GOTO 130;
N120 G03 X#24 Y#108 IO J-#107;
GOTO 140;
N130 G02 X#24 Y#101 IO J-#107;
N140 IF[#107 LT #102] GOTO 110;
N150 IF[#106 EQ #26] GOTO 160;
G00 Y#25;
IF[#106 LT #100]GOTO 100;
#106=#106+#6-#17;
GOTO 100;
N160 G01Y#104;
G03 X#24 Y#104 IO J-#105;
G00 Z#11;
M99;
将宏程序设定为固定循环的G指令
根据流程图可编写上述宏程序主体,并通过参数将O9012宏程序设定为固定循环的G指令。利用这种方式还可以编写其他G指令,如方腔、均布孔等的加工编程,并用于零件加工。这里通过参数设定宏程序 O9012 为G202,指令形式为:
G202 X—Y—Z—H—Q—K—D—R—B—A—F—
其中B—为每切深一次,圆腔需分n次切削余量。
例:加工f100mm×2mm、f80mm×2mm 两个圆腔,圆心分别距离坐标原点为A(40, 40)、B(-30,70),铣刀直径16mm,编程如下:
O0012
N1 G54 G90 G40 G17;
N2 S500 M03;
N3 G00 X0 Y0;
N4 Z50;
N5 G202 X 40 Y40 Z2.1 H2 Q1 K0.1 D50 R8 B5 A1 F50;(逆铣A点)
N6 G202 X-30 Y70 Z2.1 H2 Q1 K0.1 D40 R8 B3 A-1 F50 ;(顺铣B点)
N7 G00 Z50;
N8 G00 X0 Y0;
N9 M30;
3 结语
通过对机械加工中类似零件的编程,并固化为固定循环指令,不仅使编程的效率有很大提高,而且还可以避免编程繁琐出现计算上的错误。另外,这些G功能的开发应用,节省了向技术提供厂家重新购买类似功能的一大笔资金。
11/28/2004
|