在数控铣床零件加工过程中,由于刀具的磨损、现场实际刀具尺寸与编程时规定的刀具尺寸不一致和更换刀具等原因,都会直接影响最终加工尺寸,造成加工误差。为了最大限度地减少因刀具尺寸变化等原因造成的误差,目前数控铣床通常都具有刀具半径补偿功能,根据输入的修正补偿量和程序自动地加工出优质零件,否则,很难保证加工精度。同时,使用刀具半径补偿,实现了根据零件轮廓直接编程的巨变,大大简化了编程工作量。因此,理解刀具半径补偿并能正确灵活地使用刀具补偿功能,将起到事半功倍的效果,将刀具补偿和变量编程结合使用,还可实现一些复杂曲面的加工,在数控切削加工中有较强的实用价值。
一、对刀具半径补偿的认识
1.刀具半径补偿作用
在数控铣床上进行轮廓加工时,由于铣刀半径的存在,刀具中心轨迹和工件轮廓不重合,两者相差一个刀具半径值,为此必须使刀具沿工件轮廓的法向偏移一个刀具半径值,才能保证零件的轮廓尺寸,如图1所示。这种自动偏移计算称为刀具半径补偿。现代数控机床通常都具备完善的刀具半径补偿功能,编程人员只需根据轮廓编程,数控装置就会自动计算刀具中心轨迹,加工出所需要的工件轮廓。需要注意的是,在使用刀具半径补偿指令后,如果具体加工时选用不同半径的刀具,则自动偏移量是不同的,如图1当中就分别选择了半径不同的刀具1和刀具2进行加工,其轨迹偏移量就明显不同。
2. 刀具半径补偿指令
刀具半径补偿指令有G41、G42和G40共3个指令。沿着刀具前进方向看,刀具位于工件轮廓的左侧,称为左补偿,用G41指令,相当于顺铣,常在精加工阶段采用,如图1刀具1中心轨迹所示;沿着刀具前进方向看,刀具位于工件轮廓的右侧,称为右补偿,用G42指令,相当于逆铣,常用于工件表面硬皮和粗加工,如图1刀具2中心轨迹所示;G40指令是用于取消补偿用。
3. 刀具半径补偿执行过程
刀具半径补偿工作过程分为三步。第一步,建立刀具半径补偿,如图1中的SA段所示,这个工作要在切削工件之前完成。第二步,执行刀具半径补偿。如图1当中,左刀具半径补偿ABCDA段和右刀具半径补偿ADCBA所示。第三步,撤消刀具半径补偿。如图1当中AS段所示,加工结束后取消刀具半径补偿,刀具回到起始位置S。
二、刀具半径补偿的应用剖析
1. 实现零件的轮廓加工,提高加工精度
使用刀具半径补偿指令可以按零件的内、外轮廓直接编程,实现轮廓加工,这是刀具半径补偿的一般应用。由于刀具半径补偿值不一定等于刀具半径值,因此在首件加工时,为了不浪费材料,应采取增加刀具半径补偿值的方法,根据加工实测值和理论值之差,修正刀具半径补偿值,从而提高加工精度。同一加工程序,当刀具磨损或重磨后,直径会发生改变,则需要通过修改刀具半径补偿值来获得所需的尺寸精度,增加程序的柔性。
2. 同一程序实现零件粗、精加工
刀具半径补偿除简化编程外,还可以用修改刀具半径补偿值的方法,实现用同一程序进行轮廓的粗、精加工。即在粗加工阶段:刀具半径补偿值=刀具半径+精加工余量;在精加工阶段,刀具半径补偿值=刀具半径+修正值。
3. 设置正负刀具半径补偿值实现零件的等宽壁厚加工
一般情况下,刀具半径补偿值应为正值,若补偿值为负值,则G41和G42相互替换。利用这一特点,当加工相等宽度的、由直线和圆弧或者含有曲线的等距轮廓工件时,只需针对一个轮廓进行编程即可:加工好第一个轮廓后,修改刀具半径补偿值,使“刀具半径补偿值=-(刀具半径+轮廓宽度)”,即可实现对第二个轮廓的加工。
在实际加工时,需要考虑建立刀具半径补偿和撤销刀具半径补偿时的刀轨,会不会引起对加工工件的过切或与工件轮廓相干涉,若影响,只需要修改或者撤消刀具半径补偿的轨迹即可。同理,在模具加工中,利用同一程序也可以加工同一公称尺寸的内外两个型面,且可通过修改刀具半径补偿值保证配合精度。
4. 使用刀具半径补偿和变量编程,实现对轮廓倒圆/倒角的加工
上述刀具半径补偿的应用,一般地,是在加工开始前将刀具半径补偿值输入到数控装置,加工过程中,刀具半径补偿值是保持不变的,称为定刀具半径补偿。另一种情况,刀具半径补偿值在加工过程中需要按一定的规律改变,被称为变刀具半径补偿。变刀具半径补偿需要与变量编程结合才能发挥作用。所谓变量编程,即允许程序中使用变量和给变量赋值,并能进行算术运算、逻辑运算和条件转移,是数控程序编制的高级形式。
FNNUC0i系统的变量编程,可利用G10指令和系统变量按照某种规律改变刀具半径补偿值,在程序同一轨迹的控制下,可实现对具有一定规律的边缘截面复杂曲面的加工,通用性强。如工件任意轮廓的倒圆、倒角加工,或圆孔/圆柱的边缘倒圆、倒角加工等。
三、刀具半径补偿运用实例
1. 定刀具半径补偿编程实例
如图2所示零件,工材硬铝,在零件外围加工一个类似矩形的壁厚4mm的等距轮廓,且外轮廓边缘倒半径2mm的圆角。经过工艺分析,确定主视图正方形中心为X、Y坐标轴编程原点,水平向右为X轴正向,向上为Y轴正向,Z轴零点在工件顶面上;外轮廓和倒圆加工选择Φ12mm高速钢立铣刀,等宽内轮廓选择Φ8mm高速钢槽刀,则用FNNUC0i编写外轮廓加工程序如下。
O0001;(主程序,d12mm立铣刀)
G40G80G49G21G94G17G16;(初始化)
G90G54G00X0.Y0.S1200M03;(建立工件坐标系)
G43Z100.H01;
Y-62.5; Z5.0 M08;
G01Z-9.0 F200;
D01M98P8011F120(分层粗铣外轮廓)
G01Z-18.0;
D01M98P8011F120(分层粗铣外轮廓)
/G91G28Z0.;
/G91G28Y0.;
/M01;(选择性停止)
G90G00Z5.0;
G01Z-18.0F200;
D11M98P8011F80;(精铣外轮廓)
G00Z200.0;
M30;
O8011(子程序,外轮廓轨迹)
G41G01X15.; (建立刀具半径补偿)
G03X0.Y-47.5R15.;(圆弧切入)
G01X-47.5,R10.;
Y-14.,R9.0;
G03Y4.R9.0,R9.0;
G01Y47.5.,R10.;
X-4.0,R9.0;
G03X14.R9.,R9;
G01X47.5,R10.;
Y-47.5.,R10.;
X0.;
G03X-15.Y-62.5R15.; (圆弧切出)
G40G01X0.; (取消刀具半径补偿)
M99;
其中,在外轮廓粗切时,刀具半径补偿D01输入“6.2”,外轮廓精切时,实测工件尺寸计算修正量,刀具半径补偿D11输入“6+”修正量。在内轮廓加工时,只需修改程序头和结尾的进退刀路线,把刀具半径补偿变量D01设置为“-(4.2+4)”,就可对内轮廓进行粗加工,内轮廓精加工时只需把D11改为“-(4+4+修正量)”即可。由此可知,采用刀具半径补偿后,同一程序只需改变进退刀路线和刀具半径补偿值,即可实现对等壁厚零件的内外轮廓的粗、精加工。
2.变刀具半径补偿编程实例
依然是上述加工实例,如果希望采用变刀具半径补偿的方式编制加工程序,那么首先要从工艺上分析外轮廓倒圆加工。由于圆角半径仅2mm,余量不大,因此为提高加工效率,粗精加工合一,选用Φ12mm平底立铣刀。由于使用变刀具半径补偿编程的关键,是建立加工曲面截断面曲线与刀具半径补偿变量之间的规律数学关系,经分析,建立如图3所示的变刀具半径补偿几何计算模型。
图中点A为SE圆弧上任意一点,设#1变量表示刀具半径,#2变量表示倒圆半径,#11为循环变量[0,90],#4表示变刀具半径补偿变量,#3表示刀心到倒圆圆心的距离,由图中几何关系可得,截断面圆弧曲线上任一点A的刀具半径补偿值:#4=#3-#2=#2*COS[#11]+#1-#2,由于A点的任意性,该公式即为加工曲面截断面曲线与刀具半径补偿变量之间的数学关系。因此,根据图3所示的几何关系,可求出A点位置刀心的Z轴坐值:#5=#2*[sin[#11]-1]。
根据上述变量之间的关系,采用点A自下而上运动等高环切的加工路线,循环调用外轮廓轨迹子程序进行等高加工,编制变量程序如下,即可实现轮廓倒圆加工。若表面精度高,可选择球刀,道理相同。
O0002;(Φ12mm立铣刀)
G40G80G49G21G94G17G16;
#1=6.;(刀具半径)
#2=2.;(倒圆半径)
#11=0.;(角度赋初值为0)
G90G54G00X0.Y0.S1000M03;
G43Z100.H01;
Y-62.5;
Z5.0 M08;
G01Z0.F200;
WH[#11LE90]DO1 ;(当型循环)
#3=#2* [COS[#11]+#1-1];(刀心到倒圆心的距离)
#5=#2*[SIN[#11]-1];(Z 轴坐标值)
#4=#3-#2 ;(刀具半径补偿值)
G01Z#5F30O; (Z 轴进刀至切削位置)
G1OL12P01R#4;(将变刀具半径补偿值赋给D01)
D01M98P8011F1000;(调轮廓子程序)
#11=#11+1.;(角度循环递增,递增量可据实际情况设置)
END1;(循环结束)
G00Z200.0;
M30;
四、结束语
灵活运用刀具半径补偿功能对简化数控手工编程,保证和提高加工精度,提高程序柔性,实现轮廓倒圆/倒角之类的曲面加工具有重要意义和价值。根据经验使用刀具半径补偿时还应注意以下几点。
(1)建立或撤消刀具半径补偿时,刀具必须在补偿平面内或G01方式下移动,且移动距离大于刀具半径补偿值。
(2)在补偿状态下,铣削内侧最小圆弧一般要求满足关系:刀具半径≤刀具半径补偿值≤最小内侧圆弧半径。
(3)建立刀具半径补偿后,不能出现连续两个程序段无选择补偿坐标平面的移动指令。否则,编制的加工程序运行时产生报警,无法执行。