这是一篇应用宏程序加工的实际应用文章。作者从加工的原理、方法及工艺参数设置等方面进行了较为详细的介绍,并给出了加工程序。文中所介绍的加工及编程方法有一定的实用价值。 对于螺旋槽零件的加工,可以在四轴加工中心上,用A轴和X轴的联动进行铣削。在如图1所示的螺旋往复槽筒零件中,其两段旋向相反的螺旋槽可以用上述方法加工,但两段螺旋槽连接处的圆弧部分,却是加工的难点。这里介绍一种用宏程序编程的方法,可以巧妙的解决这个难题,编写的加工程序简短,而且加工精度也很高。
图1 螺旋往复槽筒 图1所示中的螺旋往复槽筒零件,材料为38CrMoAI。该零件上需要加工出往复螺旋槽,槽与滑块配合,当螺旋往复槽筒旋转时,滑块产生左右往复运动。两条螺旋槽连接处用圆弧连接。为了便于说明问题,我们以加工宽5mm的一条螺旋往复槽为例,零件图如图2所示。
图2 螺旋往复槽筒零件图 我们以槽底直径φ50mm的圆为基圆,然后沿两条螺旋线交叉处的素线(图中所示圆柱面的背面中线)展开,如图3所示。基圆直径为50mm,展开后对应的Y轴长度为157mm,即基圆周长。以中心O为起刀点,铣刀旋转,在Z轴方向(机床主轴的上下方向)向工件进给1mm,切进工件。然后A轴正方向旋转进给,同时铣刀向X正方向作进给运动(向右进给),开始加工螺旋槽。
图3 螺旋往复槽筒零件展开图 螺旋槽的螺距为62mm,A轴、X轴的进给速度和坐标值的计算方法为:当A轴旋转一周360°时,铣刀在X轴方向进给一个螺距62mm。这样工件旋从O点转到A点(螺旋线的终点亦即圆弧的起点),如果已知角∠AO1B=54.32°,则A点的A轴坐标值为:
如果不知道∠AO1B的角度,而是知道A点对应于Y轴的坐标:Yn=66.69mm,如图3所示,Y轴坐标转换为A轴坐标的计算方法如下:
那么从O点至A点的角度值为: A=360+180+152.84=692.84° 因此,A点的X轴和A轴坐标为:A(X124.434,A692.84),即当A轴旋转了692.84°,X轴正向移动了124.434 mm。 当A轴连续旋转,按同样方法,得到其他点的坐标:B(X124.434,A747.16),C(X-124.434,A2132.84),D(X-124.434,A2187.16)。 这样旋转整8周即2880°,回到O点,完成一个深1mm的螺旋往复槽的加工。可以利用子程序的方法,调用子程序4次,即可加工出4mm深的槽。 下面介绍圆弧段宏程序的编程方法。 如图4所示,A点至B点为半径为27.7mm的一段圆弧,P为圆弧上任意一点,角度θ(顺时针方向为负,逆时针方向为正)。那么P点的参数方程为:
式中,θ为参数。
图4 圆的参数方程及建模 根据图中可知, ; 由于 ,将 转换为A轴坐标值:
所以P点的参数方程为:
在华中数控系统的宏程序中,三角函数的角度要用弧度表示,因此,角度θ值转换为弧度为: 。 机床采用附加第四轴(A轴)的立式铣床或立式加工中心,数控系统为华中(HNC—21/22M)系统。零件右端用A轴上的自动定心三爪卡盘夹紧,左端用{dj1}顶紧。以工件外表面中心点为X、Y、Z原点,建立工件坐标系G55。采用直径为φ5 mm的键槽铣刀,槽深为4mm。 设置参数: #1=27.7,圆弧半径; #2=-27.16°,圆弧起始角度; #3=27.16°,圆弧终止角度。 加工程序如下: 主程序 O1000 %1001 G40 G49 G94;(初始化) G90 G55;{jd1}值编程,设定G55坐标系) G00 A10;(A轴快速回位) G91 G28 A0;(A轴回零) G90 G00 X0 Y0;(X、Y至工件坐标原点O点) M03 S1000;(主轴旋转) G43 G00 Z50 H1;(长度补偿,Z向至工件上表面50高) M08;(切削液开) G00 Z10;(快速下刀) G01 Z0 F100 ;(下刀至工件上表面) M98 P1002 L4 ;(调用子程序) G90 G00 Z50 M09;(快速提刀,切削液关) G49;(取消刀具长度补偿) M05;(主轴停止) M02;(程序结束 子程序 %1002 G91 G01 Z-1 F100;(下刀吃深1mm) G90 G01 X124.434 A692.84 F100 ;(加工从O→A螺旋线) #1=27.7;(圆弧半径) #2=-27.16;(圆弧初始角) #3=27.16;(圆弧终止角) WHILE [#2 LT #3] ;(循环语句) #4=99.377+#1*COS[#2*PI/180] ;(P点的X轴坐标值) #5=720+2.292*[#1*SIN[#2*PI/180] ;(P点的 A轴坐标值) G01 X[#4] A[#5] F100;(拟合右圆弧曲线) #2=#2+0.1;(变量增加0.1°) ENDW ;(循环指令结束) G01 X124.434 A747.16 ;(到B点) G01 X-124.434 A2132.84;(加工从B→C螺旋线) #11=27.7;(圆弧半径) #12=-27.16;(圆弧初始角) #13=27.16;(圆弧终止角) WHILE [#12 LT #13] ;(循环语句) #14=-99.377-#11*COS[#12*PI/180] ;(左端圆弧上任意一点的X坐标值) #15=2160+2.292*[#11*SIN[#12*PI/180];(左端圆弧上任意一点的A坐标值) G01 X[#14] A[#15] F100;(拟合左圆弧曲线) #12=#12+0.1;(变量增加0.1) ENDW;(循环语句结束) G01 X-124.434 A2187.16;(到D点) G01 X0 A2880;(加工从D→O螺旋线(循环一周完成)) G91 G00 Z20;(提刀20) G90 G00 A10;(A轴快速移动) G91 G28 A0;(A轴回零) G91 G00 Z-10 ;(快速下刀10mm) G01 Z-10 F100;(G01下刀10mm,至已加工表面) M99;(子程序结束) 在子程序中,由于华中系统A轴的{zd0}值为9999,所以每当完成一个工作循环后(A轴进给2880°),使A轴回零,这样即使调用子程序多次,A轴的数值也不会超过{zd0}限制值,并且每次回零,还可以xx误差,提高加工精度。 本文来自。 |