1.算法的设计
(1)该零件铣削椭圆型腔轮廓和实例5-1铣削椭圆凸台轮廓只是内凹和外凸的区别,在变量的选择、算法的设计以及程序流程框图方面几乎一致。
(2)采用同心椭圆偏置方法,实现椭圆型腔的铣削加工参见实例5-2中所述,但在本实例椭圆内凹型腔的铣削中略有不同。从里到外的同心椭圆等距偏置方法的编程基本算法:先铣削一个长/短半轴尺寸较小的椭圆型腔轮廓,型腔铣削完毕后,同步增大椭圆长/短半轴尺寸值,再次铣削出下一个尺寸更大的椭圆型腔轮廓,如此反复,直到最终椭圆的长/短半轴尺寸一起增大至零件的尺寸,至此椭圆型腔加工完毕,可以看做椭圆型腔的各个轮廓通过等距偏置而形成的。
从里到外的同心椭圆偏置法编程的关键:长/短半轴尺寸值由小到大同步增大,依次增大至零件的加工尺寸。切记:长、短半轴有可能不同时增大至零件的最终尺寸;长/短半轴的尺寸值每次同步增大和每次增加相同的值不是同一个概念,同步增大可能是相同的值,也可能是不同的值。
在本实例中,设置变量#101来控制椭圆的长半轴值、#102控制椭圆的短半轴值,通过椭圆参数方程计算出任意角度椭圆轮廓上点的坐标,采用直线拟合插补形成椭圆轮廓的刀路轨迹;铣削完成一个椭圆轮廓后,通过语句#101=#101+6、#102=#102+4同步增大椭圆的长/短半轴值,最后通过条件判断语句IF[#101 LE 30]GOTO n1和IF[#102 LE 20]GOTO n2实现铣削椭圆型腔轮廓的循环过程。
(3)铣削椭圆型腔的进刀方式:
封闭型腔加工时,无法采用轮廓法向的延长线切入和切出方式加工零件,Z轴进刀方式不同于开放式轮廓的进刀方式,可以采用预先钻落刀孔、螺旋进刀、Z字斜线进刀等方式。
2.刀具轨迹图以及程序流程框图的设计
根据以上算法设计和分析,规划铣削椭圆型腔轮廓的刀路轨迹如图5-19所示,基于椭圆参数方程进行编程的程序设计流程框图如图5-20所示,采用同心等距偏置法进行编程的程序设计流程框图如图5-21所示。
图5-19 加工椭圆型腔的刀路轨迹示意图
图5-20 参数方程铣削椭圆型腔程序设计流程框图
图5-21 同心等距偏置椭圆法铣程序设计流程框图
3.根据算法以及流程框图编写加工的宏程序代码
程序1:基于椭圆参数方程编制的宏程序代码
实例5-4 程序1编程要点提示:
本实例程序O5014,作为精加工椭圆内凹型腔的宏程序,和程序O5001的主要区别:
1)程序O5014用于加工椭圆的内凹型腔轮廓,程序O5001用于加工椭圆凸台轮廓。
2)两者在使用的刀具半径补偿方向是相反的,请结合程序O5001和程序O5014仔细分析其中的区别。
程序2:采用Z字斜线进刀编制的宏程序代码
(www.xing528.com)
实例5-4 程序2编程要点提示:
(1)本程序是铣削椭圆型腔的精加工程序,不能用于粗加工。
(2)Z轴进刀方式为Z字斜线进刀切入零件,该进刀方式是两轴联动平缓地切入零件,在封闭型腔的加工中应用较多,其关键是:在进刀之前确定好刀具的位置,参见程序中语句G0 X0 Y0、G0 Z1和G01 X10 Z[#105]F300的作用。
(3)本程序采用Z字斜线进刀的进刀方式并实现了分层铣削椭圆型腔的加工。
(4)本程序采用刀心编程方式,避免了频繁建立刀具半径补偿和取消刀具半径补偿语句,使得编程简单有效。建议在铣削轮廓形状较为简单的条件下尽量采用刀心编程,因为采用刀具半径补偿形式进行编程,理论上编程过程相对简单,但是在实际编程中不是很容易控制,易造成过切或欠切现象。
(5)程序中如果椭圆角度变化是从0°增至360°,则采用刀具半径左补偿(G41);如果角度变化是从360°递减至0°,则采用刀具半径右补偿(G42)。
程序3:采用同心等距偏置椭圆方法编制的宏程序代码
实例5-4 程序3编程要点提示:
本程序采用同心等距偏置椭圆方法,依次从内到外一圈一圈地铣削整个椭圆型腔,既适用于毛坯的粗加工,也适用于精加工轮廓。
程序4:采用同心椭圆偏置方法编制的粗、精加工宏程序代码
实例5-4 程序4编程要点提示:
(1)本程序完成从毛坯到椭圆型腔的粗加工和精加工整个过程。
(2)本程序粗加工算法的核心为同心等距偏置椭圆方法,说明如下:
1)根据加工零件以及毛坯的尺寸,确定加工循环的次数,参见程序中语句#106=3。
2)根据毛坯余量以及加工循环的次数,计算出每次加工的余量大小,参见程序中语句#107=30/#106和#108=20/#106。
3)根据每次铣削的余量大小,结合椭圆参数方程,计算每个步距X、Y轴的移动量,参见程序中语句#103=[#111-#117-#110]∗COS[#100]、#104=[#112-#117-#110]∗SIN[#100]。
(3)程序中#110号变量的作用:
1)用来控制椭圆精加工的余量,参见程序中语句#103=[#111-#117-#110]∗COS[#100]和#104=[#112-#117-#110]∗SIN[#100]。
2)标志变量的作用,参见程序中语句IF[#110 LT 0.2]GOTO 80。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。