您现在的位置:
FANUC利用数控系统中的特殊功能指令编写数控加工程序

    利用数控系统中的特殊功能指令编写数控加工程序,可以达到简化数控加工程序,提高编程效率的目的。该文通过实例,介绍了FANUC系统中可编程参数自动设定指令G10与系统中宏指令在数控编程中配合使用的方法和技巧,可为特殊零件的数控加工程序编制提供参考。

    在编制零件的数控加工程序时,经常会遇到一些特殊结构的零件,需要加工的部位,其结构相同或相似并且按照一定的规律分布。对于编程中常见的圆周等分、矩阵等分的孔的加工,我们可以采用厂家提供的固定循环程序来解决,但对于一些特殊零件,其分布的加工部位结构可能是二维和三维轮廓。针对这种情况,我们也可以采取编写子程序的方法,将加工内容相同的部分编成子程序,然后由主程序多次调用,以此来达到简化程序的目的。

    那么,上述方法是不是唯一的解决办法呢?在实践中我们发现,数控系统为用户提供了许多具有特殊意义的G指令、宏指令以及参变量。这就使我们在编制特殊零件的加工程序时,更容易编制零件的相同加工内容部分的通用程序,而且采用特殊G指令及宏指令、参变量编程,使数控程序更加简化,更具灵活性,如FANUC 15M系统中的可编程参数设定指令G10以及相关的宏指令等。

一、可编程参数设定指令G10及宏指令

    FANUC 15M系统中的G10指令,可实现刀具几何参数的设定与编辑功能,由程序指令变更刀具加工过程中的半径补偿量。其另一功能是在加工程序中实现工件坐标系的设定与设定值的变更。

1. G10指令变更刀具补偿量

格式:G90/G91 G10 L 11 P  R;
其中,变量 L—赋值为11,表示变更刀具补偿量方式;
P—刀具补偿号;
R—刀具的补偿量;
G90—覆盖原有补偿量;
G91—在原有补偿量的基础上累加。
在程序中通过改变R变量中的刀具半径补偿量,实现零件轮廓粗加工时调整加工余量,使用同一把刀具实现粗、精加工。

2. G10指令实现工件坐标系的设定、变更

格式:G90/G91 G10 L2 P  X  Y  Z;
其中,变量L—赋值为2表示变更工件坐标系方式;
P—工件坐标系,赋值1~6表示G54~G59;
X、Y、Z—工件坐标系原点坐标值;
G90—覆盖原有补偿量;
G91—在原有补偿量的基础上累加。 
利用G10工件坐标系的设定、变更功能,可实现工件坐标系的设定、修改和平移。

3. 用户宏指令

(1)变量的赋值与运算

格式:#i= #j+#k ;
FANUC系统中以“#”作为变量名,“#”后的数值为变量的下标,用来区分各变量。“=”表示变量的赋值,“#i”为被赋值的变量,“=”右边可以是实际值或表达式。表达式中可包含“+”、“-”、“×”、“/”运算符以及三角函数运算。

(2)无条件转移指令 GOTO
格式:GOTO n ;
n表示转移到目的程序段的行号。该指令将无条件转移到指定的程序段。

(3)条件转移指令IF
格式:IF [conditional expression] GOTO n ;
“[ ]”中是一个逻辑运算式,逻辑运算功能指令有:EQ:“=”;NE:“≠”;GT:“>”;GE:“≥”;LT:“<”;LE:“≤”。

    在逻辑运算式中,实际值、变量、表达式均可参与逻辑运算。n是转移目标程序段的行号。当“[ ]”中逻辑运算式成立时,程序将转移到n所指定的程序段,否则,继续执行下一程序段。

    在数控编程中,我们可以根据零件结构的特点,灵活运用数控系统中的特殊指令。例如,将G10指令与用户宏指令配合使用,可以使零件的加工程序更加简化,达到事半功倍的效果。程序可以缩短到原来的1/3,甚至更短。

二、应用实例分析

1. 零件特点

    图1是橡胶传送带的成型模板。齿形为曲线凹槽,横截面为梯形,齿形成直线等距排列。初始工件坐标系设定为G54原点位置,如图1所示。

2. 程序处理

    首先在初始工件坐标系G54下,编写模板零件的第一个齿形加工宏程序O7001。在零件的加工过程中,由主程序O7000调用O7001宏程序。第一个齿形加工完成后,利用可编程参数设定指令G10的工件坐标系变更功能,在加工其他齿形时通过变更初始工件坐标系G54的设定值,使工件坐标系按齿形排列间距产生平移,为下一齿形的加工重新自动设定工件坐标系。程序执行框图如图2所示。

    宏程序O7001中利用系统宏指令的参数计算以及判断循环功能,通过多次循环执行,将各齿形依次加工完成。下面是具体加工程序。

O7000
(T-XING CHUAN SONG DAI)
(KMC-4000SV)
G00 G90 G80 G49 G53 Z0
N10 T25 M06 (ENDMILL D=25MM)
G00 G90 G54 X812.554 Y-330.85 S220 M03
G43 Z20. H25
G65 P7001 B=6
GOO G49 G53 Z0 M05
T0 M06
M30

O7001
(MACRO)
#10=0
N20 G00 G90 G54 X812.554 Y-330.85
Z5.
G01 Z-20.2 F40
X618.961
G02 X600.095 Y-323.983 I0 J29.35
G01 X494.334 Y-235.239
G00 Z75.
X454.5 Y-201.815
Z5.
G01 Z-20.2
X312.265 Y-82.465
G02 X312.265 Y82.465 I69.196 J82.465
G01 X454.5 Y201.815
G00 Z75.
X494.334 Y235.239
Z5.
G01 Z-20.2
X600.095 Y323.983
G02 X618.961 Y330.85 I18.866 J-22.483
G01 X812.554
G00 Z75.
X273.811 Y0
Z5.
G01 Z-20.2
X0
G00 Z75.
X275.449 Y18.713
Z5.
G01 Z-20.2
G02 X253.144 Y0 I-22.305 J3.937
G02 X275.449 Y-18.713 I0 J-22.65
G00 Z100.
G91 G10 L2 P1 X454.5 Y0 Z0
#10=#10+1
IF [#10 EQ #2] GOTO 100
GOTO 20
N100 G90 G10 L2 P1 X-1583.75 Y-560.03 Z-683.7   (初始工件坐标系设定值)
M99

图2 宏程序O7001执行框图 

三、结束语

    采用可编程的参数设定指令G10,通过编程的方式更改刀具补偿量、根据需要重新设定工件坐标系,使工件坐标系可在任意方向上移动。将该指令与宏指令配合使用,增强了零件加工程序的逻辑性和灵活性,进一步扩展了数控系统的功能。零件加工程序大幅度简化,提高了编程效率,降低了编程差错率。在数控程序中采用特殊功能指令及参变量,为解决一些特殊及复杂零件的加工程序编制问题打开了思路。