在大型零件或复杂特征零件的数控加工中,一个程序内经常要使用到多刀具加工。目前大多数工厂还不能做到按工艺需求集中配给刀具,一般情况下是在生产现场,由操作者根据程序内容装夹调整刀具。一般的
加工中心刀库都能装夹20把以上的刀具,大型刀库可安装上百把刀具,操作者习惯将常用刀具或特定刀具放在刀库的固定位置,如将探头放在1号刀位,中心钻放在2号刀位等,这样在不同的程序里,只要程序内的刀具和刀位号与刀库内刀具和刀位号一致,机床刀具表中的刀具参数就可以继续使用,而不用重新进行对刀操作。
然而,如果操作者使用的程序是由编程人员应用CAM软件编制的,就可能出现程序内的刀具号与机床刀具库内的刀具不能一一对应的现象。如数控程序中2号刀是立铣刀,而现机床刀库中2号刀却是中心钻,这时,操作者必须根据程序重新调整刀库内刀具位置并设置刀具参数表,或者根据刀库内实际刀具位置更改程序内的刀具编号,才能实现程序中的刀具与刀库中的刀具一一对应。但调整刀具需要重新对刀和设置刀具参数表,而更改程序容易出错,稍有大意就可能造成产品报废,乃至发生机床碰撞事故。如何找到一种方便的方法来将程序内刀具和现场刀具进行对应转换成为笔者的研究课题。
1.问题分析及解决方法
常用的数控系统如HEIDENHAIN、FANUC等,都支持宏程序和参数的调用,为此,笔者通过在机床上的反复试验,验证了在刀具调用时可以使用宏变量表示的指令。例如在HEIDENHAIN数控系统中,可使用Q参数表示刀具号,参数Ql若被赋予了数值5,程序内有换刀指令段“TQl G17”时,实际执行的程序段等同于“T5 G17”。这样,由cAM软件编制的数控程序应用在HEIDENHAIN数控系统中时,如果换刀指令中的刀具号都用Q参数代替,操作者只需按照机床刀具库内刀具的实际位置,在程序开始时对所有刀具赋与正确的Q参数值,就可以将程序内的刀具和实际刀具位置对应起来,而不需重新调整刀具,也不需要更改程序内的具体刀具指令。
同样,在FANUC数控系统中,参数变量使用“#*”表示,如果#1=5,则执行程序段“T#1 M6”时与执行指令“T5M6”是一样的。这样,在刀具调用时通过宏变量来实现刀具号的对应转换,就可以解决自动编程中刀具号和现场刀具不对应的问题。而大部分自动编程软件都不具备宏变量的自动输出,为此,必须对软件进行后置处理程序的二次开发,来实现宏变量的自动输出。
2.HEIDENHAIN数控系统中刀具调用指令使用宏变量的实现
通过对MasterCAM 9.0相应后置处理程序的二次开发,可以成功地实现所需格式的程序输出。下面以HEIDENHAIN数控系统的ISO代码后置处理程序mpheid—i.pst为例,讲解如何在输出的数控程序中实现用宏变量来代替具体刀具号。
这需要解决以下两个问题:一是在程序开始部分按参数格式输m加工中所有用到的刀具列表,并对相应Q参数进行初始赋值,最好有注释,方便操作者的阅读更改;二是在输出的数控程序内部,所有的换刀指令中刀具号要使用相应Q参数来表示。
(1)输出刀具列表的实现 在mpheid—i.pst中,有一变量“tooltable”,它控制是否调用函数“pwrtt”,作用是在程序头进行刀具列表和毛坯的定义输出。找到该函数并确定其值为1。格式如下:
toollable:1#Call pwrtt´for pre—processing 0f tooltable
(2)定义变量增加以下几个变量,用于后置处理程序中刀具号的对应计算和实现正确的数控程序格式输出,定义格式如下:
fmt”Q”4 tnote—q1
fmt¨p01¨4tnote_q2
fmt¨TQ¨4 tq
(3)刀具列表的格式输出查找到函数体“pwrtt”,其最后有一段程序的内容为:
ift>0,pbld,n,”G99”,*t,*tool_length,*tlrad,e
它的作用是对前置中的刀具表进行预处理,并在程序开始按刀具在程序中出现的顺序输出刀具列表,此时相应输出的程序格式如下(示例中假定编程中使用了5
号ψ16mm立铣刀和6号ψ10mm立铣刀):
……..
N100 G99 T5 L0. R8
N102 G99 T6 L10. R5
……….. nextpage
这些程序段格式不符合HEIDENHAIN数控系统要求,在TNC426或TNC430等系列数控系统上是不能执行的,也不是我们想要的Q参数格式,需要对其进行格式转换。输出格式的转换必须通过修改后置处理程序中的函数“pwitt”来实现,修改后具体内容如下:
这是HEIDENHAIN数控系统中Q参数的标准赋值语句,意思就是将P01后的数值赋给前面的参数Q*,即Q5=5,Q6=6,分号后内容为该句程序中刀具的注释,方便操作者阅读。
(4)换刀指令格式的输出 修改程序里的函数“ptoolcomment,在换刀指令前把刀具号赋值给定义的变量“tq”,为换刀指令的转换做准备。程序如下:
tq=t
………..
查找后置处理程序中的所有“M6”,搜索到输出换刀指令的后置处理程序段:
pbld,n,*t,“M6”,e
此段程序将输出的数控程序换刀指令格式如下:
N116T5 M6
将搜索到的所有换刀段后置程序更改为:
pbld,n,*tq,“G17”,e
更改后的后置程序将输出如下格式的换刀指令:
N116 TQ5 G17
通过以上对该后置处理程序的修改,输出的数控程序格式有了较大变化,换刀指令满足了我们对数控程序格式的要求。这样,如果自动编程中用到的第5号刀具为咖16mm铣刀,而现场机床刀库中12号刀位已经有一把校对好的西16nllIl铣刀满足加工要求,机床操作者只需要把程序头部的相应赋值语句“D00 Q5 P01 5”改为“I)00 Q5 P01 12”即可,程序执行到换刀指令“TQ5G17”时,就会自动抓取刀库中的12号位西16mm铣刀进行加工,所有刀具参数都不用重新定义,也不需要操作者在程序内部将所有指令TQ5手工改为T12,避免了人为错误的发生。
3.FANUC数控系统中刀具调用使用宏变量的实现
FANUC数控系统的后置处理程序更改方式与HEI—DENHAIN数控系统的后置处理程序更改方式基本相同,但FANUC数控系统中宏变量使用“#”表示,而在MastercAM后置处理程序中,该符号作为后置处理程序内注释符处理,故不能通过修改后置程序直接输出符号“#”,可以在后置处理程序中定义一个特殊字符串变量如“AA”等,将这个特殊字符串输出到数控程序的相应位置,最后应用其它文字编辑程序将数控程序里的特殊字符串“AA”全部替换成符号“#”,转换为FuNAC数控系统能够使用的参数符号即可。
4.使用宏变量调用刀具注意事项
在执行用宏变量代表刀具号的程序时,需要在操作时注意一个问题,那就是在因故停止了机床加工,程序或机床复位以后,要想在程序的中间某一段重新开始执行时,必需先要运行一次程序头部的参数定义部分,再转到需要开始的程序段继续运行,这样才能将正确的刀具号调入内存,保证程序内使用的刀具的正确性和机床的安全。
5.结语
我们在许多复杂零件的¨动编程中使用r这个方法,在使川刀具很多时,此种方法更改快捷方便,如大于20把刀具时,用这种方法可以很快的完成刀具的准备和程序的校验,减少了大量的辅助时间,提高了机床利用率,取得了很好的应用效果。
轻松提高数控机床精度
随着我国经济的飞速发展,数控机床作为新一代工作母机,在机械制造中已得到广泛的应用,精密加工技术的迅速发展和零件加工精度的
0评论2025-01-04313
加工中心刀具长度补偿怎么用?
在数控加工中,刀具长度补偿是一种重要的措施,用于消除机床变形、热变形等因素引起的误差,保证加工精度,从而提高培训效率,减
0评论2024-12-18400
加工中心主轴定位角度怎么调?
在数控加工领域,加工中心主轴的定位角度是影响加工精度和效率的重要因素之一。正确调整主轴的定位角度可以提高加工质量,减
0评论2024-12-11496
每天早上打开数控机床时有没有必要热机?
工厂使用精密数控机床(加工中心、电火花、慢走丝等机床)进行高精密加工,你是否有这样的经验:每天早上开机进行加工,首件的加
0评论2023-08-151093