数控加工中,刀具实际所在的位置往往和编程时刀具理论上应在的位置不同,这是我们需要重新根据刀具位置来修改程序,然而正如大家知道的,修改程序是一件多么繁杂而易错的环节,因此,刀具补偿的概念就应运而生。所谓刀具补偿就是用来补偿刀具实际安装位置与理论编程位置之差的一种功能。使用刀具补偿功能后,改变刀具,只需要改变刀具位置补偿值即可,而不必修改数控程序。
刀具补偿中我们经常用的有长度补偿和半径补偿,一般初入数控行业的人很难熟练的使用这两种补偿,下面我们就这两种补偿方式详细讲解一下。
一、刀具长度补偿
1、刀具长度补偿的概念
首先我们应了解一下什么是刀具长度。刀具长度是一个很重要的概念。我们在对一个零件编程的时候,首先要指定零件的编程中心,然后才能建立工件编程坐标系,而此坐标系只是一个工件坐标系,零点一般在工件上。长度补偿只是和Z坐标有关,它不象X、Y平面内的编程零点,因为刀具是由主轴锥孔定位而不改变,对于Z坐标的零点就不一样了。每一把刀的长度都是不同的,例如,我们要钻一个深为50mm的孔,然后攻丝深为45mm,分别用一把长为250mm的钻头和一把长为350mm的丝锥。先用钻头钻孔深50mm,此时机床已经设定工件零点,当换上丝锥攻丝时,如果两把刀都从设定零点开始加工,丝锥因为比钻头长而攻丝过长,损坏刀具和工件。此时如果设定刀具补偿,把丝锥和钻头的长度进行补偿,此时机床零点设定之后,即使丝锥和钻头长度不同,因补偿的存在,在调用丝锥工作时,零点Z坐标已经自动向Z+(或Z)补偿了丝锥的长度,保证了加工零点的正确。
2、刀具长度补偿指令
通过执行含有G43(G44)和H指令来实现刀具长度补偿,同时我们给出一个Z坐标值,这样刀具在补偿之后移动到离工件表面距离为Z的地方。另外一个指令G49是取消G43(G44)指令的,其实我们不必使用这个指令,因为每把刀具都有自己的长度补偿,当换刀时,利用G43(G44)H指令赋予了自己的刀长补偿而自动取消了前一把刀具的长度补偿。
G43表示存储器中补偿量与程序指令的终点坐标值相加,G44表示相减,取消刀具长度偏置可用G49指令或H00指令。程序段N80G43 Z56 H05与中,假如05存储器中值为16,则表示终点坐标值为72mm。
3、刀具长度补偿的两种方式
(1)用刀具的实际长度作为刀长的补偿(推荐使用这种方式)。使用刀长作为补偿就是使用对刀仪测量刀具的长度,然后把这个数值输入到刀具长度补偿寄存器中,作为刀长补偿。
使用刀具长度作为刀长补偿,可以避免在不同的工件加工中不断地修改刀长偏置。这样一把刀具用在不同的工件上也不用修改刀长偏置。在这种情况下,可以按照一定的刀具编号规则,给每一把刀具作档案,用一个小标牌写上每把刀具的相关参数,包括刀具的长度、半径等资料。这对于那些专门设有刀具管理部门的公司来说,就用不着和操作工面对面地告诉刀具的参数了,同时即使因刀库容量原因把刀具取下来等下次重新装上时,只需根据标牌上的刀长数值作为刀具长度补偿而不需再进行测量。
使用刀具长度作为刀长补偿还可以让机床一边进行加工运行,一边在对刀仪上进行其他刀具的长度测量,而不必因为在机床上对刀而占用机床运行时间,这样可充分发挥加工中心的效率。这样主轴移动到编程Z坐标点时,就是主轴坐标加上(或减去)刀具长度补偿后的Z坐标数值。
(2)利用刀尖在Z方向上与编程零点的距离值(有正负之分)作为补偿值。这种方法适用于机床只有一个人操作而没有足够的时间来利用对刀仪测量刀具的长度时使用。这样做当用一把刀加工另外的工件时就要重新进行刀长补偿的设置。使用这种方法进行刀长补偿时,补偿值就是主轴从机床Z坐标零点移动到工件编程零点时的刀尖移动距离,因此此补偿值总是负值而且很大。
二、 刀具半径补偿
1、刀具半径补偿概念
在轮廓加工时,刀具中心运动轨迹(刀具中心或金属丝中心的运动轨迹)与被加工零件的实际轮廓要偏移一定距离,这种偏移称为刀具半径补偿,又称刀具中心偏移。
由于数控系统控制的是刀具中心轨迹,因此数控系统要根据输入的零件轮廓尺寸及刀具半径补偿值计算出刀心轨迹。根据刀具补偿指令,数控加工机床可自动进行刀具半径补偿。特别是在手工编程时,刀具半径补偿尤为重要。手工编程时,运用刀具半径补偿指令,就可以根据零件的轮廓值编程,不需计算刀心轨迹编程,这样就大大减少了计算量和出错率。虽然利用CAD/CAM自动编程,手工计算量小,生成程序的速度快,但当刀具有少量磨损或加工轮廓尺寸与设计尺寸稍有偏差时或者在粗铣、半精铣和精铣的各工步加工余量变化时,仍需作适当调整,而运用了刀具半径补偿后,不需修改刀具尺寸或建模尺寸而重新生成程序,只需要在数控机床上对刀具补偿参数做适当修改即可。既简化了编程计算,又增加了程序的可读性。
刀具半径补偿有B功能(Basic)和C功能(Complete)两种补偿形式。由于B功能刀具半径补偿只根据本段程序进行刀补计算,不能解决程序段之间的过渡问题,要求将工件轮廓处理成圆角过渡,因此工件尖角处工艺性不好。而且编程人员必须事先估计出刀补后可能出现的间断点和交叉点,并进行人为处理,显然增加编程的难度;而C功能刀具半径补偿能自动处理两程序段刀具中心轨迹的转接,可完全按照工件轮廓来编程,因此现代CNC数控机床几乎都采用C功能刀具半径补偿。这时要求建立刀具半径补偿程序段的后续至少两个程序段必须有指定补偿平面的位移指令(G00、G01,G02、G03等),否则无法建立正确的刀具补偿。
2、刀具半径补偿指令
根据ISO规定,当刀具中心轨迹在程序规定的前进方向的右边时称为右刀补,用G42表示;反之称为左刀补,用G41表示。
G41是刀具左补偿指令(左刀补),即顺着刀具前进方向看(假定工件不动),刀具中心 轨迹位于工件轮廓的左边,称左刀补。
G42是刀具右补偿指令(右刀补),即顺着刀具前进方向看(假定工件不动),刀具中心轨迹位于工件轮廓的右边,称右刀补。
G40是为取消刀具半径补偿指令。使用该指令后,G41、G42指令无效。