当用半径为R的圆柱铣刀加工工件轮廓A时,如果机床不具备刀补功能,编程人员要按照距轮廓A距离为R( R为刀具半径)的刀具中心运动轨迹B的数据来编程。其运算有时是很复杂的,而当刀具刃磨后,刀具的半径减小,那么就要按新的刀心轨迹编程,否则加工出来的零件要增加一个余量(即刀具的磨损量)。
指令格式:
G41 G00 X__ Y__ H (或D)__
G41 G01 X__ Y__ H (或D)__
G42 G00 X__ Y__ H (或D)__
G42 G01 X__ Y__ H (或D)__
指令功能: 数控系统根据工件轮廓和刀具半径自动计算刀具中心轨迹,控制刀具沿刀具中心轨迹移动,加工出所需要的工件轮廓,编程时避免计算复杂的刀心轨迹。
图4.17 刀具半径补偿位置判断
指令说明:
(1)X__ Y__ 表示刀具移动至工件轮廓上点的坐标值;
(2)H (或D)__为刀具半径补偿寄存器地址符,寄存器存储刀具半径补偿值;
(3)如图4.17左图所示,沿刀具进刀方向看,刀具中心在零件轮廓左侧,则为刀具半径左补偿,用G41指令;
(4)如图4.17右图所示,沿刀具进刀方向看,刀具中心在零件轮廓右侧,则为刀具半径右补偿,用G42指令;
(5)通过G00或G01运动指令建立刀具半径补偿。
例题:如图4.18所示,刀具由O点至A点,采用刀具半径左补偿指令G41后,刀具将在直线插补过程中向左偏置一个半径值,使刀具中心移动到B点,其程序段为:
G41 G01 X50 Y40 F100 H01
图4.18 刀具半径补偿过程 图4.19 刀具磨损后的刀具半径补偿
(1)H01为刀具半径偏置代码,偏置量(刀具半径)预先寄存在H01指令指定的寄存器中。
(2)运用刀具半径补偿指令,通过调整刀具半径补偿值来补偿刀具的磨损量和重磨量,如图4.19所示,r1为新刀具的半径,r2为磨损后刀具的半径。
(3)此外运用刀具半径补偿指令,还可以实现使用同一把刀具对工件进行粗、精加工,如图4.20所示,粗加工时刀具半径r1为r+Δ,精加工时刀具半径补偿值为r,其中Δ为精加工余量。
图4.20 粗、精加工的刀具半径补偿
刀具长度补偿G43、G44、G49指令
刀具长度补偿指令一般用于刀具轴向(Z方向)的补偿,它使刀具在Z方向上的实际位移量比程序给定值增加或减少一个偏置量,这样当刀具在长度方向的尺寸发生变化时(如钻头刃磨后),可以在不改变程序的情况下,通过改变偏置量,加工出所要求的零件尺寸。
指令格式:
G43 Z__ H__
G44 Z__ H__
G49
指令功能:对刀具的长度进行补偿
指令说明:
(1) G43指令为刀具长度正补偿;
(2) G44指令为刀具长度负补偿;
(3) G49指令为取消刀具长度补偿;
(4) 刀具长度补偿指刀具在Z方向的实际位移比程序给定值增加或减少一个偏置值;
(5) 格式中的Z值是指程序中的指令值,即目标点坐标;
(6) H为刀具长度补偿代码,后面两位数字是刀具长度补偿寄存器的地址符。H01指01号寄存器,在该寄存器中存放对应刀具长度的补偿值。
使用G43、G44时,不管用绝对尺寸还是用增量尺寸指令编程,程序中指定的Z轴移动指令的终点坐标值,都要与H代码指令的存储器中的偏移量进行运算。
执行G43时:Z实际值=Z指令值+H__中的偏置值
执行G44时:Z实际值=Z指令值-H__中的偏置值
例题:图4.16所示,图中A点为刀具起点,加工路线为1→2→3→4→5→6→7→8→9。要求刀具在工件坐标系零点Z轴方向向下偏移3mm,按增量坐标值方式编程(提示把偏置量3mm存入地址为H01的寄存器中)。
图4.16 刀具长度补偿G43、G44、G49指令例题
N01 G91 G00 X70 Y45
S800 M03
N02 G43 Z-22 H01
N03 G01 Z-18 F100 M08
N04 G04 X5
N05 G00 Z18
N06 X30 Y-20
N07 G01 Z-33 F100
N08 G00 G49 Z55 M09
N09 X-100 Y-25
N10 M30