G10 L12 P_R_在用户宏程序中的应用
2009年全国技工教育和职业培训
优秀教研成果评选活动参评论文
G10 L12 P_R_在用户宏程序中的应用
G10 L12 P_R_在用户宏程序中的应用
邓德红
清远市高级技工学校
摘要:本文以广东省第三届数控大赛加工实例来说明G10 L12 P_R_在程序中如何赋予刀具半径补偿值的具体使用方法。在用户宏程序中将半径值设为一个变量值,通过G10 L12 P_R_指令将不断变化中的半径值输入CNC储存器中。使用这种半径变量的方式可实现一般程序编制不出的轮廓和曲面。
关键词:G10 L12 P_R_、刀具半径变量、用户宏程序、刀具补偿功能
一、引言
在数控机床的铣削编程中,可以直接按加工工件的轮廓尺寸编程,系统使用刀补功能进行自动的计算处理,从而使计算及编程均大大简化,这就要求编程人员必须掌握刀补功能的正确、合理使用的方法。 在FANUC?0i?数控系统中,刀补实质上是指生成加上补偿量以后的刀具轨迹的功能,其作用体现的两个方面:一是在编程时直接按图样尺寸编程,可不必考虑刀具的半径,只要在实际加工时输入刀具的半径补偿值即可;二是刀具磨损引起的刀具半径变化值,可以用刀具半径补偿值来修正。
在实际轮廓加工过程中,刀补执行过程有三步:刀补的建立、刀补的运行和刀补的取消三个阶段。根据刀补在工件拐角处过渡方式的不同,刀补通常又分为B型刀补和C型刀补。B型刀补是指在拐角处采用圆弧过渡,C型刀补则是采用直线过渡方式。如今的大多数数控系统均采用了C型刀补方式。在手工编程加工中半径补偿值输入CNC储存器的方法有两种:
?1、用手工的方式将要使用的刀具半径值直接输入刀具偏置号内,这种方法输入的半径值是固定的。
2、在程序中用指令G10 L12 P_R_将对应的半径值输入到CNC储存器,这种输入的方法可以在程序运行中可以任意将半径值输到储存器内,如果通过用户宏程序设半径值为一个变量再与G10 L12 P_R_对应。那这个程序加工的轮廓就可以实现不断的变化,在手工编程中这种编程是一个非常实用的功能,特别当它与用户宏程序结合一起使用时,将更加显出它的功能与方便。在手工编程中它是解决一些复杂编程是不可替代的用法。如轮廓的循环加工规则曲面的加工。
本文结合实际生产中G10 L12 P_R_的应用,以实例来说明刀具补偿值在手工编程中的应用。
二、FANUC系统 G10 L12 P_R_刀具半径补偿值的说明与使用方法。
???? “G10(可编程参数输入)指令”在FANUC?0i?系统中可以实现刀补功能。G10指令的功能较多,不但可以实现固定补偿量的偏移,而且可以实现变量的运算值的补偿,故此指令在粗加工及空间倒圆角中应用较多。
1、指令格式
G10?L12?P?_R_?;
在FANUC数控系统中,G10 L12 P_R_是一个系统值,它的使用有着严格的规定。它的格式取决于需要的刀具补偿器中。见表:
说明:P:刀具补偿号
R: 绝对值指令(G90)方式时的刀具补偿值,增量值指令(G91)方式时的刀具补偿值为该值与指定的刀具补偿号的值相加和。
例如:G10?L12?P1?R5,相当于在D01中输入补偿量为5;G10?L12?P5?R8,相当于将补偿量为8的数值输入到D05中;G10?L12?P6?R#1,相当于将补偿量为一变量的值输入到D06中。
2、编程举例:N50 #1=5;
N60 G10 L12 P1 R#1;(表示:#1代表的值为T1D1刀具储存器中的半径补偿值,即在程序中输入刀具的半径补偿值,#值后可以是一个变量。)
用程序输入刀具补偿值的主要使用场合是#参数程序,只要两者可以灵活运用在一起那在手工编程中就可以解决轮廓的倒圆角,和需要半径补偿变化的手工编程中。
三、加工实例分析:
?如下图:该图为第三届全国数控竞赛广东选拔赛图纸,为了便于说明G10 L12 P_R_的使用,在此仅就倒圆角的精加工进行详细的说明。
? 在这个加工程序中,程序需要建立了几个重要的关系,既平刀加工斜面时的高度位置关系,加工深度每次变化的运动轨迹关系,这几个关系相互影响,相互作用。
1、加工轨迹分析:
? 使用平(球)刀进行倒圆角的加工,加工方向为从下向上的方式逐层提升,但平(球)刀加工斜面时的深度问题需要数学的计算,为了方便编程和轨迹描刀位点选择在刀心上,刀心与刀尖只不过是平(球)刀的两个几何点,而刀具上的任何一点都是随着刀具整体而进行相同的“平动”的,因此确定刀心Z轴的坐标便可,这样不但令编程与数学计算都比较方便,还遵守了统一的对刀基准(刀尖)。当刀具在A点处时处于加工斜面的最低点,这时的半径补偿值为初始值,随着刀具沿着斜边最低点逐层提升,在每层高度上的刀具要与斜面相切半径补偿值需要不断地变化的,可以说刀心不断地向内部的方向前进,导致半径补偿值不断变小。如此推算当刀心向内移动的距离大与半径补偿值初始值时可能会出现负值的补偿值。
从上述得知如果想要编出可以顺利的将斜面加工出来的程序,就要使程序中的加工高度要不断变化,半径补偿值也要不断地变化,高度值与半径补偿值的数值变化可以在程序中通过#参数的编写实现,使Z轴等于不断变化的高度值就可以解决高度变化的问题,但半径补偿值数值虽然是在程序中得到了变化,但如何将这个数值赋予储存器就是一个关键问题。由此可见,只有通过G10 L12 P_R_将半径补偿变化值输入到储存器内再通过程序内的指令(G41/G42)将变化后的补偿值调用才能真正的实现半径补偿值的变化。
2、加工程序及说明
????通过以下程序,可以看出G10 L12 P_R_如何在将半径补偿值输入存储器中实现一般手工编程无法加工规则曲面的一大亮点。(以工件顶点上方为编程中心)
O0046?(程序名)
T1M6
#2=41
#3=23
#4=30
#5=17
#6=5
#7=10
#11=0
#8=0
#28=-4.5
#14=[#3+[#4-#3]/2]*SIN[#7]
#15=[#3+[#4-#3]/2]*COS[#7]
#19=4
#20=3
G54G90G0X0Y0Z20
M03S1000
G0X[#28-#14]Y[#15]Z5
WHILE[#11LT90]DO1
#22=#21*COS[#11]
#23=#21*[SIN[#11]-1]
#24=#22-#20
G1Z#23F500
G10L12P01R#24
G41D01G1X[#28-#14]Y#15F600 (A)
#9=[#4]*SIN[#7]
#10=[#4]*COS[#7]
X[#5-#9]Y#10 (B)
G02Y-#10I#9J-#10 (C)
G01X[#28-#14]Y-#15; (D)
G90G0X[#28-#14]Y[#15]
#11=#11+2
END1
G0X0Y0G40
M30 程序结束
说明:
1、#24参数值为程序变化中的半径补偿值,G10 L12 P1 R#24是使#24所代表的数值输入到刀具半径补偿值T1D1中。
??
?
参考资料:
1、《FANUC Oi Mate-MC操作说明书》 北京发那科机电有限公司????
2、《数控大赛 试题·答案·点评》?????机械工业出版社
注:本文已发表在《职业》杂志2008年10期下
G10 L12 P_R_在用户宏程序中的应用.doc