FANUC 0i系统和SINUMERIK 802D系统都是目前国内最流行的机床控制系统,它们都适用于数控车床、数控铣床、加工中心和专用数控机床等。该文作者主要针对加工中心上应用FANUC 0i系统和SINUMERIK 802D系统在编程指令、编程方法上的不同,目的是供机床操作编程人员参考与借鉴。
一、数控加工程序结构的异同
不管是哪种数控系统,数控加工程序都由程序开始部分、若干个程序段、程序结束部分组成。每一个数控加工程序对应一个程序号,不同的数控系统,程序号的规定不同。
对于FANUC 0i系统,主程序和子程序的程序号规定相同,由地址“O”和后面的4位数字组成,如O1234。而对于SINUMERIK 802D数控系统,主程序以.mpf为后缀,子程序以.spf为后缀,如SPF1.mpf。
二、刀具功能的异同
刀具功能,又称T功能,编程时用来选择刀具,由T代码和它后面的2位数字表示,其编程格式因数控系统的不同而异。
如在FANUC 0i数控中,换刀时必须结合M98指令,其编程格式如下:
T M98 P9000
其中:T后为刀具号,一般取2位;M98为调用换刀子程序;P9000为换刀子程序号。指定刀具偏置值的代码分为H代码(刀具长度偏置)和D代码(刀具半径补偿)。
在SINUMERIK 802D系统中,采用T、D指令编程。T功能用来选择刀具,而D功能用来选择相关的刀偏。一把刀具可以匹配1~9个不同补偿的刀偏组。如果没有编写D指令,则D1自动生效。如果编写D0,则刀具补偿值无效。每个刀补在调用时,长度和半径都必须输入完整。
三、编程指令的异同
1.目标点的坐标值表达方法
在数控加工程序中,表示目标点的坐标值有绝对尺寸指令和增量尺寸指令两种,在FANUC 0i系统和SINUMERIK 802D系统中,分别用G90、G91指定。
不过,SINUMERIK 802D系统还可以在程序中通过AC或IC以绝对尺寸或相对尺寸方式进行设定,编程更为灵活。
2.基本移动指令
基本移动指令有G00、G01、G02、G03。G00和G01的编程格式均相同。但圆弧插补有区别。对于FANUC 0i系统,圆弧插补有终点/圆弧半径和终点/圆心坐标两种编程方式,而SINUMERIK 802D数控系统有5种编程方式,除上面两种方式外,还有张角/圆心、张角/终点等极坐标编程方式,以及通过中间点进行圆弧插补和切线过渡圆弧编程方式。
3.刀具半径补偿指令
在铣削零件轮廓时,由于刀具半径尺寸的影响,刀具的中心轨迹与零件轮廓往往不一致。为了避免计算刀具中心轨迹,数控系统提供了刀具半径补偿功能,编程人员可以直接按零件图样上的轮廓尺寸编程。
(1)相同之处
1)指令及功能 G41是刀具半径左补偿指令,即顺着刀具前进方向看(假定工件不动),刀具位于工件轮廓的左边;G42是刀具半径右补偿指令,即顺着刀具前进方向看(假定工件不动),刀具位于工件轮廓的右边;G40是取消刀具半径补偿指令。使用该指令后,G41、G42指令无效。
2)编程格式
这里有三点要说明:首先,建立和取消刀补必须与G01或G00指令组合完成;其次,程序中的X、Y是G01、G00运动的目标点坐标;第三,D代码中存放刀具半径值作为偏置量,用于数控系统计算刀具中心的运动轨迹。偏置量可用CRT/MDI方式输入。
所以在应用时要注意:建立刀具半径补偿的程序段,必须是在补偿平面内不为零的直线移动,一般应在切入工件之前完成;取消刀具半径补偿的程序段,一般应在切出工件之后完成;当刀具半径大于所加工工件内轮廓转角或刀具直径大于所加工沟槽时会产生过切,要避免这种情况的发生。
(2)不同之处
对于FANUC 0i系统,G41或G42必须与G40成对使用,即编程中刀补方向改变时,必须先取消刀补,才能建立新的刀补。而对于SINUMERIK 802D系统,无需经过G40,G41、G42就可以相互转换。
4.刀具长度补偿指令
使用刀具长度补偿指令,在编程时不必考虑刀具的实际长度及各把刀具不同的长度尺寸。加工时,用CRT/MDI方式输入刀具的长度尺寸,即可进行正确加工。当由于刀具磨损、更换刀具等原因引起刀具长度尺寸变化时,只要修正刀具长度补偿量,而不必调整程序或刀具。
(1)指令及功能
G43是建立刀具长度正补偿,G44是建立刀具长度负补偿,G49是取消刀具长度补偿。
(2)编程格式
G43(G44) G00(G01) Z H
G49 G00(G01) Z
以上编程指令只适合于FANUC 0i系统。对于SINUMERIK 802D系统,刀具调用后,刀具长度补偿立即生效,无需G代码指定。
5.固定循环功能
为了进一步提高编程工作效率,数控系统中一般设计了固定循环功能,它规定对于一些典型加工中的固定、连续的动作,用一个程序段表达,即用固定循环指令来进行孔或槽的加工。
(1)基于FANUC 0i系统中固定循环功能的编程
对于FANUC 0i系统,常用的固定循环指令能完成的工作有钻孔、攻螺纹和镗孔等。这些循环通常包括在XY平面定位、快速移动到R平面、孔的切削加工、孔底动作、返回到R平面、返回到起始平面6个基本动作,如图1所示。
图1 固定循环的基本动作
常用的固定循环有高速深孔钻循环、螺纹切削循环、精镗循环等。
编程格式如下:
G90(G91) G98(G99) G73~G89 X Y Z R Q P F K
式中,G90 /G91表示绝对坐标编程或增量坐标编程;G98表示刀具返回到起始平面;G99表示刀具返回到返回R平面;G73~G89表示孔加工方式,如钻孔加工、高速深孔钻加工、镗孔加工等;X、Y表示孔的位置坐标;Z表示孔底坐标;R表示安全面(R平面)的坐标;Q表示每次切削深度;P表示孔底的暂停时间;F表示切削进给速度;K表示规定的重复加工次数。
固定循环由G80或01组的G代码撤消。
(2)基于SINUMERIK 802D系统中固定循环功能的编程
对于SINUMERIK 802D系统,固定循环是指用于特定加工过程的工艺子程序,在具体加工过程中只要改变参数就可以实现各种循环。
固定循环中使用的基本参数的含义如下表所示,参数示意如图2所示。
SINUMERIK 802D系统包括钻孔循环(如中心钻孔、深度钻孔、刚性攻丝、铰孔、镗孔等)、钻孔样式循环(加工一排孔、加工一圈孔)和铣削循环(矩形槽、键槽和圆形凹槽)。
图2 主要参数示意图
图3 加工示例
(3)编程比较
如图3所示零件,要求加工所有的孔,工件零点选择在工件左上角,选用Φ10的钻头,进给速度F=20mm/min,主轴转速S=600r/min,我们分别在FANUC 0i系统和SINUMERIK 802D系统进行了编程,程序如下: