- ·上一篇文章:在CAXA实体设计2006下Pro/ENGINEER产品的仿真动画探讨
- ·下一篇文章:振动条件下陀螺稳定平台漂移大的探讨
浅析在轮廓铣削中宏程序编程的应用
摘 要:通过对变量进行赋值及处理的方法达到程序功能的程序叫宏程序,通过编程实例介绍了宏程序编程在有规则的曲线、曲面铣削加工中的应用。
关键词:宏程序 变量 编程 铣削
Abstract: Through carries on the evaluation and the processing method to the variable achieves the program function the procedure to be called the great procedure, introduced through the programming example the great procedure programming in has the rule curve, in the surface milling processing application. key word: Great program variable programming milling
前言
在普通程序的编制中,一般是将一个具体数值赋给功能字,如G00 X10.,就是将10赋给功能字X。在宏程序编程中,可以将变量赋给功能字,在程序中或MDI面板上改变变量代表的数值,这种在程序中使用变量,通过对变量进行赋值及处理的方法达到程序功能的程序叫宏程序。
相对普通程序,由于宏程序编程可以使用类似计算机编程语言中的函数变量,使得程序编制更加容易和灵活,可实现普通编程难于实现的功能。宏程序编程属手工编程,其程序功能虽然也可以通过CAM编程实现,但CAM生成的程序往往较长,空刀运行的部分较多,降低加工效率,因此,在数控铣削中,对于非圆曲线、曲面、圆角、倒角的加工,当程序容量较小时,应用宏程序编程具有其独特的优点。
一.XY平面非圆曲线的加工
1.非圆曲线参数方程
编程前必须明确所加工的非圆曲线的参数方程,即x=x(t),y=y(t),常用的非圆曲线有:椭圆、渐开线、摆线、抛物线等,参数方程如下:
椭圆: x=a cost y=b sint
渐开线: x=r cost + rtsint y=r sint - rtcost
摆线: x=r(t – sint) y=r(1 – cost)
2.程序编制
编制非圆曲线程序时,为简便起见,常常会不用铣刀的半径补偿功能,而在椭圆的长、短轴a、b值或渐开线、摆线的r值上加(减)铣刀半径R,建立新的参数方程,铣刀中心走修正后的参数方程所形成的轨迹,实际上,铣刀中心走完该轨迹后,铣刀所切削的轮廓并不是所需的曲线。以加工外轮廓椭圆A为例,如图1所示,采用铣刀的半径补偿功能,以曲线参数方程进行编程,铣刀中心的轨迹为B,刀具加工出来的轮廓为A,这是所需的轮廓,若不用铣刀的半径补偿功能,而以椭圆的长、短轴a、b值加铣刀半径R建立新的参数方程编程,铣刀中心的轨迹为C,刀具加工出来的轮廓为D,轮廓D与轮廓A有明显偏离,只在椭圆的四个顶点重合,轮廓D是错误的。
图1 两种编程方式形成不同椭圆轮廓
设椭圆长轴半径为100mm,短轴半径为20mm,要求用φ20的平头立铣刀加工出外轮廓。
采用铣刀的半径补偿功能,以曲线参数方程进行编程,加工程序如下,加工出的轮廓为A
O0001
N10 M03 S800
N20 Z200
N30 G43 G00 Z20 H1
N40 M08
N50 X-70 Y-40
N60 G41 X-100 Y-30 D01
N70 G01 Z-3 F50
N80 X-100 Y0 F100
N90 #1=180
N100 WHILE[#1GE-180]DO1
N110 #2=100*COS[#1]
N120 #3=20*SIN[#1]
N130 G01 X[#2]Y[#3]F150
N140 #1=#-0.5
N150 END1
N160 Y10
N170 Z20
N180 M09
N190 G40 G00 X0 Y0
N200 G49Z200
N210M05
N220M30
不用铣刀的半径补偿功能,而在椭圆的长、短轴a、b值加铣刀半径R,加工程序如下,加工出的轮廓为D,A、D轮廓线产生偏离。
O0002
N10 M03 S800
N20 Z200
N30 G43 G00 Z20 H1
N40 M08
N50 X-70 Y-40
N60 G01 Z-3 F50
N70 X-110 Y0 F100
N80 #1=180
N90 WHILE[#1GE-180]DO1
N100 #2=110*COS[#1]
N110 #3=30*SIN[#1]
N120 G01 X[#2]Y[#3]F150
N130 #1=#-0.5
N140 END1
N150 Y10
N160 Z20
N170 M09
N180 G40Z200
N190 M05
N200 M30
需要指出的是,对于某些不便使用半径补偿功能,必须以刀心编程的加工程序,如用球头立铣刀加工非圆曲线形成的曲面,其球头立铣刀球心轨迹的参数方程不是简单的在非圆曲线参数方程的基础上加(减)某个常数,其球头刀球心轨迹已不同于加工面的曲线,球头刀球心轨迹的参数方程是在加工面的曲线参数方程的基础上,根据法线距离相等,推导出一个新的参数方程,然后再依据新的参数方程编程,以确定球头立铣刀球心运动轨迹。
二.球形曲面加工
1.编程程序
球状曲面是零件中常见的曲面,下例是凹球面加工的程序编制。
凹球一般采用球头立铣刀进行环切加工,如图2所示:
图2 凹球面加工示意图
O0003
N10 M03 S800
N20 Z200
N30 G43 G00 Z20 H1
N40 X0 Y0
N50 M08
N60 #3=5 (#3:刀具半径)
N70 #4=50 (#4:球形弧面半径)
N80 #5=30 (#5:当前刀具切削点半径,本题初始值为30)
N90 WHILE[#5 GE 0]DO1
N100 #1=#5*[#4-#3]/#4 (#1:球头刀球心X坐标)
N110 #2=SQRT[[#4-#3]*[#4-#3]-#1*#1]-40 (#2:球头刀球心Z坐标)
N120 G01 X[#1]F100
N130 Z[-#2]
N140 G03I[-#1]F250
N150 #5=#5-0.2
N160 END1
N170 G01Z10
N180 G49G00Z200
M05
M30
2.编程要点
(1)由于球头立铣刀在切削曲面过程中,其切削点随Z轴坐标变动而变动,刀具切削点的半径也就不是常数,编程时若应用半径补偿功能,其补偿值要用变量补偿,且进行或取消刀补时会产生空刀,本例编程不用半径补偿功能,程序直接控制球头立铣刀球心的运动,这可简化编程,减少空刀。
(2)由于本例程序用球头立铣刀球心的位置编程,对刀时刀具的对刀点一般选择球头刀的顶点,两点Z方向相差刀具半径,因此,对刀后,输入刀具长度补偿值时应减R。
(3)为提高加工质量,球形弧面呈水平状时,变量#5应选水平方向的尺寸,如圆环半径,球形弧面呈竖直状时,变量#5应选垂直方向的尺寸,如圆弧深度。
(4)刀具进入新一个圆环切削前,应用G01进给时,应先进给X后进Z。
3.关于其他弧面的加工
上述的编程思路及方法可用于凸球面的加工,循环语句内的条件表达式的变量增量(减量)为0.2即可取得较佳表面加工质量。
球形弧面也可用平头立铣刀加工,但表面质量不如球头立铣刀,应用平头立铣刀加工其编程简单,但其条件表达式的变量增量(减量)必须取很小才能取得好一些的表面加工质量,因此加工效率较低,可应用在某些球头立铣刀无法加工的曲面,如图3,图4所示。
图3 图4
三.倒角、倒圆的加工
倒角、倒圆是零件常见的形面,用宏程序加工这类形面比用专用刀具工装要简便,且精度较高。
1.倒角的加工
(1)程序编制
下例是长方体工件四周倒角的加工程序,倒角为60°,倒角上表面尺寸为100×80mm,用φ8的球铣刀加工,如图5所示。
图5
O0004
N10 M03 S800
N20 Z200
N30 G43 G00 Z10 H1
N40 X-60 Y0
N50 M08
N60 #3=4 (#3:刀具半径)
N70 #5=0 (#5:当前刀具切削点与倒角起始点的X方向的距离,本题初始值为0)
N80 #6=60 (#6:倒角角度 本题设定为60
关键词:宏程序 变量 编程 铣削
Abstract: Through carries on the evaluation and the processing method to the variable achieves the program function the procedure to be called the great procedure, introduced through the programming example the great procedure programming in has the rule curve, in the surface milling processing application. key word: Great program variable programming milling
前言
在普通程序的编制中,一般是将一个具体数值赋给功能字,如G00 X10.,就是将10赋给功能字X。在宏程序编程中,可以将变量赋给功能字,在程序中或MDI面板上改变变量代表的数值,这种在程序中使用变量,通过对变量进行赋值及处理的方法达到程序功能的程序叫宏程序。
相对普通程序,由于宏程序编程可以使用类似计算机编程语言中的函数变量,使得程序编制更加容易和灵活,可实现普通编程难于实现的功能。宏程序编程属手工编程,其程序功能虽然也可以通过CAM编程实现,但CAM生成的程序往往较长,空刀运行的部分较多,降低加工效率,因此,在数控铣削中,对于非圆曲线、曲面、圆角、倒角的加工,当程序容量较小时,应用宏程序编程具有其独特的优点。
一.XY平面非圆曲线的加工
1.非圆曲线参数方程
编程前必须明确所加工的非圆曲线的参数方程,即x=x(t),y=y(t),常用的非圆曲线有:椭圆、渐开线、摆线、抛物线等,参数方程如下:
椭圆: x=a cost y=b sint
渐开线: x=r cost + rtsint y=r sint - rtcost
摆线: x=r(t – sint) y=r(1 – cost)
2.程序编制
编制非圆曲线程序时,为简便起见,常常会不用铣刀的半径补偿功能,而在椭圆的长、短轴a、b值或渐开线、摆线的r值上加(减)铣刀半径R,建立新的参数方程,铣刀中心走修正后的参数方程所形成的轨迹,实际上,铣刀中心走完该轨迹后,铣刀所切削的轮廓并不是所需的曲线。以加工外轮廓椭圆A为例,如图1所示,采用铣刀的半径补偿功能,以曲线参数方程进行编程,铣刀中心的轨迹为B,刀具加工出来的轮廓为A,这是所需的轮廓,若不用铣刀的半径补偿功能,而以椭圆的长、短轴a、b值加铣刀半径R建立新的参数方程编程,铣刀中心的轨迹为C,刀具加工出来的轮廓为D,轮廓D与轮廓A有明显偏离,只在椭圆的四个顶点重合,轮廓D是错误的。
图1 两种编程方式形成不同椭圆轮廓
设椭圆长轴半径为100mm,短轴半径为20mm,要求用φ20的平头立铣刀加工出外轮廓。
采用铣刀的半径补偿功能,以曲线参数方程进行编程,加工程序如下,加工出的轮廓为A
O0001
N10 M03 S800
N20 Z200
N30 G43 G00 Z20 H1
N40 M08
N50 X-70 Y-40
N60 G41 X-100 Y-30 D01
N70 G01 Z-3 F50
N80 X-100 Y0 F100
N90 #1=180
N100 WHILE[#1GE-180]DO1
N110 #2=100*COS[#1]
N120 #3=20*SIN[#1]
N130 G01 X[#2]Y[#3]F150
N140 #1=#-0.5
N150 END1
N160 Y10
N170 Z20
N180 M09
N190 G40 G00 X0 Y0
N200 G49Z200
N210M05
N220M30
不用铣刀的半径补偿功能,而在椭圆的长、短轴a、b值加铣刀半径R,加工程序如下,加工出的轮廓为D,A、D轮廓线产生偏离。
O0002
N10 M03 S800
N20 Z200
N30 G43 G00 Z20 H1
N40 M08
N50 X-70 Y-40
N60 G01 Z-3 F50
N70 X-110 Y0 F100
N80 #1=180
N90 WHILE[#1GE-180]DO1
N100 #2=110*COS[#1]
N110 #3=30*SIN[#1]
N120 G01 X[#2]Y[#3]F150
N130 #1=#-0.5
N140 END1
N150 Y10
N160 Z20
N170 M09
N180 G40Z200
N190 M05
N200 M30
需要指出的是,对于某些不便使用半径补偿功能,必须以刀心编程的加工程序,如用球头立铣刀加工非圆曲线形成的曲面,其球头立铣刀球心轨迹的参数方程不是简单的在非圆曲线参数方程的基础上加(减)某个常数,其球头刀球心轨迹已不同于加工面的曲线,球头刀球心轨迹的参数方程是在加工面的曲线参数方程的基础上,根据法线距离相等,推导出一个新的参数方程,然后再依据新的参数方程编程,以确定球头立铣刀球心运动轨迹。
二.球形曲面加工
1.编程程序
球状曲面是零件中常见的曲面,下例是凹球面加工的程序编制。
凹球一般采用球头立铣刀进行环切加工,如图2所示:
图2 凹球面加工示意图
O0003
N10 M03 S800
N20 Z200
N30 G43 G00 Z20 H1
N40 X0 Y0
N50 M08
N60 #3=5 (#3:刀具半径)
N70 #4=50 (#4:球形弧面半径)
N80 #5=30 (#5:当前刀具切削点半径,本题初始值为30)
N90 WHILE[#5 GE 0]DO1
N100 #1=#5*[#4-#3]/#4 (#1:球头刀球心X坐标)
N110 #2=SQRT[[#4-#3]*[#4-#3]-#1*#1]-40 (#2:球头刀球心Z坐标)
N120 G01 X[#1]F100
N130 Z[-#2]
N140 G03I[-#1]F250
N150 #5=#5-0.2
N160 END1
N170 G01Z10
N180 G49G00Z200
M05
M30
2.编程要点
(1)由于球头立铣刀在切削曲面过程中,其切削点随Z轴坐标变动而变动,刀具切削点的半径也就不是常数,编程时若应用半径补偿功能,其补偿值要用变量补偿,且进行或取消刀补时会产生空刀,本例编程不用半径补偿功能,程序直接控制球头立铣刀球心的运动,这可简化编程,减少空刀。
(2)由于本例程序用球头立铣刀球心的位置编程,对刀时刀具的对刀点一般选择球头刀的顶点,两点Z方向相差刀具半径,因此,对刀后,输入刀具长度补偿值时应减R。
(3)为提高加工质量,球形弧面呈水平状时,变量#5应选水平方向的尺寸,如圆环半径,球形弧面呈竖直状时,变量#5应选垂直方向的尺寸,如圆弧深度。
(4)刀具进入新一个圆环切削前,应用G01进给时,应先进给X后进Z。
3.关于其他弧面的加工
上述的编程思路及方法可用于凸球面的加工,循环语句内的条件表达式的变量增量(减量)为0.2即可取得较佳表面加工质量。
球形弧面也可用平头立铣刀加工,但表面质量不如球头立铣刀,应用平头立铣刀加工其编程简单,但其条件表达式的变量增量(减量)必须取很小才能取得好一些的表面加工质量,因此加工效率较低,可应用在某些球头立铣刀无法加工的曲面,如图3,图4所示。
图3 图4
三.倒角、倒圆的加工
倒角、倒圆是零件常见的形面,用宏程序加工这类形面比用专用刀具工装要简便,且精度较高。
1.倒角的加工
(1)程序编制
下例是长方体工件四周倒角的加工程序,倒角为60°,倒角上表面尺寸为100×80mm,用φ8的球铣刀加工,如图5所示。
图5
O0004
N10 M03 S800
N20 Z200
N30 G43 G00 Z10 H1
N40 X-60 Y0
N50 M08
N60 #3=4 (#3:刀具半径)
N70 #5=0 (#5:当前刀具切削点与倒角起始点的X方向的距离,本题初始值为0)
N80 #6=60 (#6:倒角角度 本题设定为60





