1 刀具长度补偿功能的执行过程
典型的指令格式为g43 z_h_;或g44 z_h_。其中g43指令加补偿值,也叫正向补偿,即把编程的z值加上h代码指定的偏值寄存器中预设的数值后作为cnc实际执行的z坐标移动值。相应的,g44指令减去预设的补偿值,也叫负向补偿。
当指令g43时,实际执行的z坐标值为z'=z_+(h_);
当指令g44时,实际执行的z坐标值为z'=z_-(h_);
这个运算不受g90绝对值指令或g91增量值指令状态的影响。偏值寄存器中可预设正值或负值,因此有如下等同情况。
1) 指令g43、h设正值等同于指令g44、h设负值的效果;
2) 指令g43、h设负值等同于指令g44、h设正值的效果。
因此一般情况下,为避免指令输入或使用时失误,可根据操作者习惯采用两种方式:
1) 只用指令g43,h设正值或负值:
2) h只设正值,用指令g43或g44。
以下介绍使用较多的第一种情况。
指令格式中z值可以为0,但h0或h00将取消刀具长度补偿,与g49效果等同,因为0号偏值寄存器被nc永远置0。
一般情况下,为避免失误,通过设定参数使刀具长度补偿只对z轴有效。例如当前指令为g43x_h_;时,x轴的移动并没有被补偿。
被补偿的偏置值由h后面的代码指定。例如h1设20.、h2设-30.,当指令“g43 z100.h1;”时,z轴将移动至120.处:而当指令“g43 z100. h2;”时,z轴将移动至70.处。
g43(g44)与g00、g01出现在一个程序段时,nc将首先执行g43(g44)。
可以在固定循环的程序段中指令g43(g44),这时只能指令一个h代码,刀具长度补偿同时对z值和r值有效。
在机床回参考点时,除非使用g27、g28、g30等指令,否则必须取消刀具长度补偿。为了安全,在一把刀加工结束或程序段结束时,都应取消刀具长度补偿。
现代数控机床基本上淘汰了纸带,用芯片存储程序和刀具长度补偿值,可以随时修改,但通过设置和修改补偿量避免和减少改动加工程序,避免和减少因此可能带来的误改、改不全等事故发生也是很有意义的。有些数控机床在出厂时因为参数设定不当,造成存储保护开关只能禁止修改加工程序,这种情况是相当危险的。
2 利用刀具长度补偿功能简化编程
利用nc处理刀具长度补偿功能的原理,可以简化编程。在编制加工程序时,忽略不同刀具长度对编程数值的影响,可以只以一把假想长度的标准刀具进行编程,这个假想长度也可以是0,以简化编程中不必要的计算,在正式加工前再把实际刀具长度与标准刀具长度的差值作为该刀具的长度补偿数值设置到其所使用的h代码地址内。
试切时在零件或夹具上垂直于z轴(平行于x、y轴)的平面族内选择一个z0平面,该平面是刀具长度补偿后编程的z坐标0点。一般以达到图纸尺寸的零件上的一个平面或台阶作为z0平面,也叫对刀基准面。如果是切削毛坯,需先用一把铣刀通过试切建立这个平面。钻头t1、镗刀t2、铣刀t3是z轴在机床零件点时的位置,标准刀具是前端抵至z0平面的位置。
根据用户购买机床时的实际配置,对刀有两种情况。
1) 有机外对刀仪 一般以对刀仪供货时随机的校验棒作为标准刀具,把它装进主轴,.轴回到机床零点,然后以手动方式使标准刀具的前端(一般是钢球)抵至z0平面,可以用塞尺确认。
a. 把此时机床坐标系的z轴值(负值)减去标准刀具的长度(正值),注意是负值时得绝对值相加,把这个值(负值)设置为该工件坐标系的z值。接着在对刀仪上测出所有加工刀具的长度,即主轴端面至刀尖的距离,然后把这些值(正值)分别作为每把刀的刀具长度补偿值。
b. 直接把此时机床坐标系的z轴值(负值)设置为该工件坐标系的z值。接着在对刀仪上测出所有加工刀具与标准刀具的长度之差,比标准刀具长的记为正值,比标准刀具短的记为负值,然后把这些值分别作为每把刀的刀具长度补偿值。
2) 没有机外对刀仪 没有对刀仪的用户,一般采用前述的指令g43、h只设负值的方式。分别把加工刀具装进主轴,z轴回到机床零点,然后以手动方式使刀具的前端抵至z0平面。把此时机床坐标系的z轴值(负值)直接作为每把刀的刀具长度补偿值。同时该工件坐标系的z值永远置0。这种对刀过程,对大部分数控系统,在刀具偏置页面下就可以显示当时的z坐标值,可以直接把该值输入到补偿地址。应注意这时显示的z坐标值一般是相对值,一定要切换到机床坐标系,否则很容易造成事故。
有的操作者用一个对刀块确认刀具的前端抵至z0平面,这样在输入补偿值或输入工件坐标系z值时换算对刀块的厚度,也容易因加减搞错和漏加漏减造成事故。
3) 不同刀具的对刀点 根据使用经验,为使程序调整简单,钻头、铣刀、镗刀等刀具以刀尖对刀。但是对倒角刀具,比如锪钻、倒角镗刀、倒角立铣刀等以被倒角的孔口接触刀刃作为对刀点,这样可以简化倒角角度与z轴进给长度的换算。