首页 理论教育 跑道形凹槽类零件侧面铣削宏程序编程优化指南

跑道形凹槽类零件侧面铣削宏程序编程优化指南

时间:2023-06-25 理论教育 版权反馈
【摘要】:图3-65 跑道形凹槽类零件的加工路线示意图a)零件图 b)效果图由图3-65分析,可画出该宏程序的结构流程框图,如图3-66所示。

跑道形凹槽类零件侧面铣削宏程序编程优化指南

编制一个铣削加工图3-65所示跑道形凹槽类零件的通用程序。假设跑道形凹槽左侧圆弧中心的横坐标绝对值为X0,跑道形凹槽左侧圆弧中心的纵坐标绝对值为Y0,跑道形凹槽最终加工深度为Z,刀具起始切削安全高度为R,凹槽顶部Z轴绝对值为H,跑道形凹槽左侧圆弧半径为I,跑道形凹槽右侧圆弧半径为J,凹槽左右圆弧中心距为U,刀具半径为D,切削进给速度为F,Z轴每次降层深度为Q,有效切削刀具直径百分比为E,螺旋线插补半径为C(C≥刀具直径),精加工余量为K。

978-7-111-33271-8-Chapter03-94.jpg

图3-65 跑道形凹槽类零件的加工路线示意图

a)零件图 b)效果图

由图3-65分析,可画出该宏程序的结构流程框图,如图3-66所示。

说明:加工顺序为跑道形凹槽铣削粗加工、槽底部精加工、槽侧面精加工。

1.HNC—21/22M华中世纪星数控系统跑道形凹槽类零件铣削的用户宏程序

局部变量含义:

#23=X0;X0—工件跑道形凹槽左侧圆弧中心的横坐标绝对值

#24=Y0;Y0—工件跑道形凹槽左侧圆弧中心的纵坐标绝对值

#25=Z;Z—工件跑道形凹槽最终加工深度

#17=R;R—刀具起始切削安全高度

#7=H;H—螺旋线插补切削起始点的Z轴绝对坐标值

#8=I;I—工件跑道形凹槽左侧圆弧半径

#9=J;J—工件跑道形凹槽右侧圆弧半径

#20=U;U—凹槽左右圆弧中心距

#3=D;D—刀具半径

#5=F;F—切削进给速度

#16=Q;Q—凹槽粗加工Z轴每次降层深度

#4=E;E—有效刀具直径百分比

#2=C;C—螺旋切削插补半径

#10=K;K—精加工余量

978-7-111-33271-8-Chapter03-95.jpg

图3-66 铣削跑道形凹槽的用户宏程序结构流程框图

%3343;宏程序号

N005 #11=#7—#16;H—Q

N010 #12=2*#3*#4;刀具有效切削直径(2DE)

N020 #106=#25;把最终加工深度Z赋给#106

N030 IF#8GT#9;如果#8大于#9,则程序跳转到N060程序段(比较左侧圆弧与右侧圆弧半径的大小)

N035 #15=[#8-#3-#10]/#12;(I-D-K)/2DE(左侧圆弧切削均宽次数)

N040 #6=#15;将左侧圆弧切削均宽次数赋给中间变量#6

N045 #14=[#9-#3-#10]/#15;(J-D-K)/#15(右侧圆弧切削均宽宽度)

N050 #15=INT[#15];取整(分层切削数取整)

N055 ELSE;程序跳转到N080程序段

N060 #15=[#9-#3-#10]/#12;(J-D-K)/2DE(右侧圆弧切削均宽次数)

N065 #6=#15;将右侧圆弧均宽切削次数赋给中间变量#6

N070 #14=[#8-#3-#10]/#15;(I-D-K)/#15(左侧圆弧切削均宽宽度)

N075 #15=INT[#15];取整(分层切削数取整)

N080 ENDIF;

N085 #101=#12;将刀具有效切削直径值赋给中间变量#101

N090 #12=#14;将一侧小圆弧切削均宽宽度值赋给中间变量#12

N095 #14=#101;将中间变量值赋给变量#14

N100 G90 G00 X[#23] Y[#24];指令刀具移到工件左侧圆弧中心

N105 Z[#17];刀具快速下降到工件上方安全距离

N110 G01 Z[#7+#10] F[#5/2];刀具以工进速度下降

N115 WHILE #11GE#25;如果#11小于#9,则跳转到N230(判断背吃刀量是否小于最终加工深度)

N120 G02 I[#2] Z[#11] F[#5/4];螺旋线进给切削

N125 #100=1;计数器置初始值

N130 #21=SQRT[#20*#20-[#8-#9]*[#8-#9]];计算两圆弧切线长度

N135 #22=ATAN[[#8-#9]/#21];切线与X轴夹角

N140 WHILE #100LE#15;如果#100大于#15,则程序跳转到N215程序段(判断计数器值是否小于分层切削数)

N145 #104=#100*#12;左侧圆弧分层逐次切削宽度

N150 #105=#100*#14;右侧圆弧分层逐次切削宽度

N155 #27=#104*SIN[#22*PI/180];左侧圆弧切点横坐标

N160 #28=#104*COS[#22*PI/180];左侧圆弧切点纵坐标

N165 #29=#105*SIN[#22*PI/180];右侧圆弧切点横坐标

N170 #30=#105*COS[#22*PI/180];右侧圆弧切点纵坐标

N175 G01 X[#23+#20+#100*#105] F[#5];直线插补到右侧圆弧

N180 G02 X[#23+#20+#29] Y[#24-#30] I[-#105]J0;沿跑道形凹槽内轮廓圆弧插补

N185 G01 X[#23+#27] Y[#24-#28];沿跑道形凹槽内轮廓直线插补

N190 G02 X[#23+#27] Y[#24+#28] I[-#27] J[#28];沿跑道形凹槽内轮廓圆弧插补

N195 G01 X[#23+#20+#29] Y[#24+#30];沿跑道形凹槽内轮廓直线插补

N200 G02 X[#23+#20+#100*#105] Y[#24] I[-#29] J[-#30];沿跑道形凹槽内轮廓圆弧插补

N205 #100=#100+1;计数器加1

N210 ENDW;返回循环体2

N215 G01 X[#23] Y[#24];直线插补到左侧圆弧中心

N220 #11=#11-#16;变量(背吃刀量)等量(Q)减少

N225 ENDW;返回循环体1

N230 G02 I[#2] Z[#25] F[#5/4];螺旋线进给切削,进入槽底部深度精加工

N235 #100=1;计数器置初始值

N240 WHILE #100LE#15;如果100大于#15,则程序跳转到N315程序段(判断计数器值是否小于分层切削数)

N245 #104=#100*#12;左侧圆弧分层逐次切削宽度

N250 #105=#100*#14;右侧圆弧分层逐次切削宽度

N255 #27=#104*SIN[#22*PI/180];左侧圆弧切点横坐标

N260 #28=#104*COS[#22*PI/180];左侧圆弧切点纵坐标

N265 #29=#105*SIN[#22*PI/180];右侧圆弧切点横坐标

N270 #30=#105*COS[#22*PI/180];右侧圆弧切点纵坐标

N275 G01 X[#23+#20+#100*#105]F[#5];直线插补到右侧圆弧

N280 G02 X[#23+#20+#29] Y[#24-#30] I[-#105]J0;沿跑道形凹槽内轮廓圆弧插补

N285 G01 X[#23+#27] Y[#24-#28];沿跑道形凹槽内轮廓直线插补

N290 G02 X[#23+#27] Y[#24+#28] I[-#27] J[#28];沿跑道形凹槽内轮廓圆弧插补

N295 G01 X[#23+#20+#29] Y[#24+#30];沿跑道形凹槽内轮廓直线插补

N300 G02 X[#23+#20+#100*#105] Y[#24] I[-#29] J[-#30];沿跑道形凹槽内轮廓圆弧插补

N305 #100=#100+1;计数器加1

N310 ENDW;返回循环体3

N315 G01 X[#23+#20+#9-#3-#2] Y[#24+#2];跑道形凹槽侧面轮廓精加工

N320 G02 X[#23+#20+#9-#3] Y[#24]R[#2];圆弧切入

N325 G02 X[#23+#20+[#9-#3]*SIN[#22*PI/180]] Y[#24-[#9-#3]*COS[#22*PI/180]] I[-#9+#3]J0;沿跑道形凹槽侧面轮廓圆弧插补

N330 G01 X[#23+[#8-#3]*SIN[#22*PI/180]] Y[#24-[#8-#3]*COS[#22*PI/180]];沿跑道形凹槽侧面直线插补

N335 G02 X[#23+[#8-#3]*SIN[#22*PI/180]] Y[#24+[#8-#3]*COS[#22*PI/180]] I[-[#8-#3]*SIN[#22PI/180]] J[[#8-#3]*COS[#22*PI/180]];沿跑道形凹槽侧面圆弧插补

N340 G01 X[#23+#20+[#9-#3]*SIN[#22*PI/180]] Y[#24+[#9-#3]*COS[#22PI/180]];沿跑道形凹槽侧面直线插补

N345 G02 X[#23+#20+#9-#3] Y[#24] I[-[#9-#3]*SIN[#22*PI/180]] J[[#9-#3]*COS[#22*PI/180]];沿跑道形凹槽侧面圆弧插补

N350 G02 X[#23+#20+#9-#3-#2] Y[#24-#2]R[#2];圆弧切出

N355 G01 X[#23] Y[#24];返回左侧圆弧中心

N360 G00 Z[#17+50];抬刀

N365 M99;程序结束,返回调用程序

2.SINUMERIK802D数控系统铣削加工跑道形凹槽的用户R参数程序

R参数含义:

R24=X0;X0—工件跑道形凹槽左侧圆弧中心的横坐标绝对值

R25=Y0;Y0—工件跑道形凹槽左侧圆弧中心的纵坐标绝对值

R26=Z;Z—工件跑道形凹槽最终加工深度

R18=R;R—刀具起始切削安全高度

R11=H;H—螺旋线插补切削起始点的Z轴绝对坐标值

R4=I;I—工件跑道形凹槽左侧圆弧半径

R5=J;J—工件跑道形凹槽右侧圆弧半径

R21=U;U—圆弧中心距

R7=D;D—刀具半径

R9=F;F—切削进给速度

R17=Q;Q—凹槽粗加工Z轴每次降层深度

R8=E;E—有效刀具直径百分比

R3=C;C—螺旋切削半径

R6=K;K—精加工余量

L3343.SPF;R参数子程序名

N005 R16=R11-R17;H-Q

N010 R12=2*R7*R8;刀具有效切削直径(2DE)

N020 R106=R26;把最终加工深度Z赋给R106

N030 IF R4<=R5 GOTOF MARKE1;如果R4(左侧圆弧半径)小于或等于R5(右侧圆弧半径)时,则程序跳转到MARKE1程序段

N035 R15=[R4-R7-R6]/R12;(I-D-K)/2DE(左侧圆弧切削次数宽度)

N040 R2=R15;将左侧圆弧切削均宽次数赋给中间变量R2

N045 R14=[R5-R7-R6]/R15;(J-D-K)/R15(右侧圆弧切削均宽宽度)

N050 R15=TRUN[R15];取整(分层切削数取整)

N055 GOTOF MARKE2;程序无条件跳转到MARKE2程序段

N060 MARKE1:R15=[R5-R7-R6]/R12;(J-D-K)/2DE(右侧圆弧切削均次数)

N065 R2=R15;将圆弧右侧均宽切削次数赋给中间变量R2

N070 R14=[R4-R7-R6]/R15;(I-D-K)/R15(左侧圆弧切削均宽宽度)

N075 R15=TRUN[R15];取整(分层切削数取整)

N080 MARKE2:R101=R12;将刀具有效切削直径值赋给中间变量R101

N085 R12=R14;将右侧圆弧切削均宽宽度值赋给中间变量R12

N090 R14=R101;将中间变量值赋给变量R14

N095 G90 G00 X=R24 Y=R25;指令刀具移到工件左侧圆弧中心

N100 Z=R18;刀具快速下降到工件上方安全距离

N105 G01 Z=R11+R6 F=R9/2;刀具以工进速度下降

N110 MARKE3:G02 I=R3 Z=R16 F=R9/4;螺旋线进给切削

N115 R100=1;计数器置初始值

N120 R22=SQRT[R21*R21-[R4-R5]*[R4-R5]];计算两圆弧切线长度

N125 R23=ATAN[[R4-R5]/R22];切线与X轴夹角

N130 MARKE4:R104=R100*R12;左侧圆弧分层逐次切削宽度

N135 R105=R100*R14;右侧圆弧分层逐次切削宽度

N140 R27=R104*SIN[R23];左侧圆弧切点横坐标

N145 R28=R104*COS[R23];左侧圆弧切点纵坐标

N150 R29=R105*SIN[R23];右侧圆弧切点横坐标

N155 R30=R105*COS[R23];右侧圆弧切点纵坐标

N160 G01 X=[R24+R21+R100*R105] F=R9;直线插补到右侧圆弧

N165 G02 X=R24+R21+R29 Y=R25-R30 I=-R105 J0;沿跑道形凹槽圆弧插补

N170 G01 X=R24+R27 Y=R25-R28;沿跑道形凹槽直线插补

N175 G02 X=R24+R27 Y=R25+R28 I=-R27 J=R28;沿跑道形凹槽圆弧插补

N180 G01 X=R24+R21+R29 Y=R25+R30;沿跑道形凹槽直线插补

N185 G02 X=R24+R21+R100*R105 Y=25 I=-R29 J=-R30;沿跑道形凹槽圆弧插补

N190 R100=R100+1;计数器加1

N195 IF R100<=R15 GOTOB MARKE4;如果R100小于或等于R15时,则程序跳转到MARKE4程序段

N200 G01 X=R24 Y=R25;直线插补左侧圆弧中心

N205 R16=R16-R17;变量(背吃刀量)等量(Q)减少

N210 IF R16>=R26 GOTOB MARKE3;如果R16大于或等于R26时,则程序跳转到MARKE3程序段

N215 G02 I=R3 Z=R26 F=R9/4;螺旋线进给切削,进入槽底部深度槽加工

N220 R100=1;计数器置初始值

N225 MARKE5:R104=R100*R12;左侧圆弧分层逐次切削宽度

N230 R105=R100*R14;右侧圆弧分层逐次切削宽度

N235 R27=R104*SIN[R23];左侧圆弧切点横坐标

N240 R28=R104*COS[R23];左侧圆弧切点纵坐标

N245 R29=R105*SIN[R23];右侧圆弧切点横坐标

N250 R30=R105*COS[R23];右侧圆弧切点纵坐标

N255 G01 X=R24+R21+R100*R105 F=R9;直线插补到右侧圆弧

N260 G02 X=R24+R21+R29 Y=R25-R30 I=-R105 J0;沿跑道形凹槽圆弧插补

N265 G01 X=R24+R27 Y=R25-R28;沿跑道形凹槽直线插补

N270 G02 X=R24+R27 Y=R25+R28 I=-R27 J=R28;沿跑道形凹槽圆弧插补

N275 G01 X=R24+R21+R29 Y=R25+R30;沿跑道形凹槽直线插补

N280 G02 X=R24+R21+R100*R105 Y=R25 I=-R29 J=-R30;沿跑道形凹槽圆弧插补

N285 R100=R100+1;计数器加1

N290 IF R100<=R15 GOTOB MARKE5;如果R100小于或等于R15时,则程序跳转到MARKE5程序段

N295 G01 X=R24+R21+R5-R7-R3 Y=R25+R3;跑道形凹槽侧面轮廓精加工

N300 G02 X=R24+R21+R5-R7 Y=R25 CR=R3;圆弧切入

N305 G02 X=R24+R21+[R5-R7]*SIN[R23] Y=R25-[R5-R7]*COS[R23] I=-R5+R7 J0;沿跑道形凹槽侧面圆弧插补

N310 G01 X=R24+[R4-R7]*SIN[R23] Y=R25-[R4-R7]*COS[R23];沿跑道形凹槽侧面直线插补

N315 G02 X=R24+[R4-R7]*SIN[R23] Y=R25+[R4-R7]*COS[R23]I=-[R4-R7]*SIN[R23] J=[R4-R7]*COS[R23];沿跑道形凹槽侧面圆弧插补

N320 G01 X=R24+R21+[R5-R7]*SIN[R23] Y=R25+[R5-R7]*COS[R23];沿跑道形凹槽侧面直线插补

N325 G02 X=-R24+R21+R5-#R7 Y=R25 I=-[R5-R7]*SIN[R23]] J=[[R5-R7]*COS[R23];沿跑道形凹槽侧面圆弧插补

N330 G02 X=R24+R21+R5-R7-R3 Y=R25-R3 CR=R3;圆弧切出

N335 G01 X=R24 Y=R25;返回左侧圆弧中心

N340 G00 Z=R18+50;抬刀

N345 RET;R参数子程序结束,返回调用程序

3.FANUC0i数控系统铣削加工跑道形凹槽的用户宏程序

自变量含义:

#24=X0;X0—工件跑道形凹槽左侧圆弧中心的横坐标绝对值

#25=Y0;Y0—工件跑道形凹槽左侧圆弧中心的纵坐标绝对值

#26=Z;Z—工件跑道形凹槽最终加工深度

#18=R;R—刀具起始切削安全高度

#11=H;H—螺旋线插补切削起始点的Z轴绝对坐标值

#4=I;I—工件跑道形凹槽左侧圆弧半径

#5=J;J—工件跑道形凹槽右侧圆弧半径(www.xing528.com)

#21=U;U—圆弧中心距

#7=D;D—刀具半径

#9=F;F—切削进给速度

#17=Q;Q—凹槽粗加工Z轴每次降层深度

#8=E;E—有效刀具直径百分比

#3=C;C—螺旋切削半径

#6=K;K—精加工余量

O3343;宏程序名

N005 #16=#11-#17;H-Q

N010 #12=2*#7*#8;刀具有效切削直径(2DE)

N020 #106=#26;把最终加工深度Z赋给#106

N030 IF [#4LT#5] GOTO 60;如果#4小于#5时,则程序跳转到N060(比较左侧圆弧与右侧圆弧半径的大小)

N035 #15=[#4-#7-#6]/#12;(I-D-K)/2DE(左侧圆弧切削均宽次数)

N040 #2=#15;将左侧圆弧切削均宽次数赋给中间变量#2

N045 #14=[#5-#7-#6]/#15;(J-D-K)/#15(右侧圆弧切削均宽宽度)

N050 #15=FIX[#15];上取整(分层切削数取整)

N055 GOTO80;无条件跳转到N080程序段

N060 #15=[#5-#7-#6]/#12;(J-D-K)/2DE(右侧圆弧切削均宽次数)

N065 #2=#15;将左侧圆弧均宽切削次数赋给中间变量#2

N070 #14=[#4-#7-#6]/#15;(I-D-K)/#15(左侧圆弧切削均宽宽度)

N075 #15=FIX[#15];上取整(分层切削数取整)

N080 #101=#12;将刀具有效切削直径值赋给中间变量#101

N085 #12=#14;将右侧圆弧切削均宽宽度值赋给中间变量#12

N090 #14=#101;将中间变量值赋给变量#14

N095 G90 G00 X#24 Y#25;指令刀具移到工件左侧圆弧中心

N100 Z#18;刀具快速下降到工件上方安全距离

N105 G01 Z[#11+#6] F[#9/2];刀具以工进速度下降

N110 WHILE [#16GE#26]DO1;如果#16小于#26时,则程序跳转到N225(判断背吃刀量是否小于最终加工深度)

N115 G02 I#3 Z#16 F[#9/4];螺旋线进给切削

N120 #100=1;计数器置初始值

N125 #22=SQRT[#21*#21-[#4-#5]*[#4-#5]];计算两圆弧切线长度

N130 #23=ATAN[[#4-#5]/#22];切线与X轴夹角

N135 WHILE [#100LE#15] DO2;如果#100大于#15时,则程序跳转到N210(判断计数器值是否大于分层切削数)

N140 #104=#100*#12;左侧圆弧分层逐次切削宽度

N145 #105=#100*#14;右侧圆弧分层逐次切削宽度

N150 #27=#104*SIN[#23];左侧圆弧切点横坐标

N155 #28=#104*COS[#23];左侧圆弧切点纵坐标

N160 #29=#105*SIN[#23];右侧圆弧切点横坐标

N165 #30=#105*COS[#23];右侧圆弧切点纵坐标

N170 G01 X[#24+#21+#100*#105] F#9;直线插补到右侧圆弧

N175 G02 X[#24+#21+#29] Y[#25-#30] I-#105 J0;沿跑道形凹槽圆弧插补

N180 G01 X[#24+#27] Y[#25-#28];沿跑道形凹槽直线插补

N185 G02 X[#24+#27] Y[#25+#28] I-#27 J#28;沿跑道形凹槽圆弧插补

N190 G01 X[#24+#21+#29] Y[#25+#30];沿跑道形凹槽直线插补

N195 G02 X[#24+#21+#100*#105] Y#25 I-#29 J-#30;沿跑道形凹槽圆弧插补

N200 #100=#100+1;计数器加1

N205 END2;返回循环体2

N210 G01 X#24 Y#25;

N215 #16=#16-#17;变量(背吃刀量)等量(Q)减少

N220 END1;返回循环体1

N225 G02 I#3 Z#26 F[#9/4];螺旋线进给切削,进入槽底部深度精加工

N230 #100=1;计数器置初始值

N235 WHILE [#100LE#15] DO3;如果#100大于#15时,则程序跳转到N310(判断计数器值是否小于分层切削数)

N240 #104=#100*#12;左侧圆弧分层逐次切削宽度

N245 #105=#100*#14;右侧圆弧分层逐次切削宽度

N250 #27=#104*SIN[#23];左侧圆弧切点横坐标

N255 #28=#104*COS[#23];左侧圆弧切点纵坐标

N260 #29=#105*SIN[#23];右侧圆弧切点横坐标

N265 #30=#105*COS[#23];右侧圆弧切点纵坐标

N270 G01 X[#24+#21+#100*#105] F#9;直线插补到右侧圆弧

N275 G02 X[#24+#21+#29] Y[#25-#30] I-#105 J0;沿跑道形凹槽圆弧插补

N280 G01 X[#24+#27] Y[#25-#28];沿跑道形凹槽直线插补

N285 G02 X[#24+#27] Y[#25+#28] I-#27 J#28;沿跑道形凹槽直线插补

N290 G01 X[#24+#21+#29] Y[#25+#30];沿跑道形凹槽直线插补

N295 G02 X[#24+#21+#100*#105] Y#25 I-#29 J-#30;沿跑道形凹槽圆弧插补

N300 #100=#100+1;计数器加1

N305 END3;返回循环体3

N310 G01 X[#24+#21+#5-#7-#3] Y[#25+#3];跑道形凹槽侧面轮廓精加工

N315 G02 X[#24+#21+#5-#7] Y#25 R#3;圆弧切入

N320 G02 X[#24+#21+[#5-#7]*SIN[#23]] Y[#25-[#5-#7]*COS[#23]] I[-#5+#7]J0;沿跑道形凹槽侧面圆弧插补

N325 G01 X[#24+[#4-#7]*SIN[#23]] Y[#25-[#4-#7]*COS[#23]];沿跑道形凹槽侧面直线插补

N330 G02 X[#24+[#4-#7]*SIN[#23]] Y[#25+[#4-#7]*COS[#23]] I[-[#4-#7]*SIN[#23]] J[[#4-#7]*COS[#23]];沿跑道形凹槽侧面圆弧插补

N335 G01 X[#24+#21+[#5-#7]*SIN[#23]] Y[#25+[#5-#7]*COS[#23]];沿跑道形凹槽侧面直线插补

N340 G02 X[#24+#21+#5-#7] Y#25 I[-[#5-#7]*SIN[#23]] J[[#5-#7]*COS[#23]];沿跑道形凹槽侧面圆弧插补

N345 G02 X[#24+#21+#5-#7-#3] Y[#25-#3] R#3;圆弧切出

N350 G01 X#24 Y#25;返回左侧圆弧中心

N355 G00 Z[#18+50];抬刀

N360 M99;程序结束,返回调用程序

注意:

1)刀具半径值D必须小于或等于跑道形凹槽圆弧半径I或J。

2)R、H、Z的设定值必须遵守关系:R>H>Z。

3)有效切削刀具直径百分比E不可大于1.0。

4)精加工余量K不能大于Q(0≤K≤Q≤H-Z)。

5)每层加工深度Q不能大于零件总加工厚度(R-Z),关系为0≤K≤Q≤H-Z。

6)刀具半径值必须大于0。

7)程序中没有使用刀具半径补偿指令G41、G42、G40。

4.编程实例

铣床或加工中心上加工图3-67所示跑道形凹槽零件的侧面。跑道形凹槽左侧圆弧半径为100.0mm,跑道形凹槽右侧圆弧半径为80.0mm,两圆弧中心距为280.0mm,跑道形凹槽深20.0mm。试用变量(或参数)编写出加工此类零件的通用程序。

978-7-111-33271-8-Chapter03-96.jpg

图3-67 跑道形凹槽零件编程实例铣削刀具路线示意图

a)尺寸图 b)效果图

解:

(1)工艺设计 建立工件坐标系,确定跑道形凹槽左侧圆弧中心的工件绝对坐标为(120.0,120.0),工件表面为工件坐标系Z轴的零点,机床坐标系偏置值设置在G54寄存器中。

(2)加工顺序 螺旋下降分层粗铣跑道形凹槽,精加工槽底部,精加工跑道形凹槽侧面。

采用不对称顺铣削方式铣削跑道形凹槽。螺旋下降分层粗铣跑道形凹槽时,Z轴每次等高下降深度Q为2.0mm;凹槽底部和凹槽侧面的精加工余量K为0.5mm。

铣刀直径为ϕ32.0mm,主轴转速为500r/min,铣削进给速度为150mm/min,主轴起始位置在零件上方50.0mm处,螺旋线插补半径为10mm,刀具起始切削安全高度在零件上方5.0mm处,Z轴每次降层深度为2.0mm,有效切削刀具直径百分比为0.7,螺旋线插补半径为20.0mm,精加工余量为0.5mm。根据不同数控系统,运用变量引数赋值和参数直接赋值编制宏程序。

(3)零件加工程序

1)HNC—21/22M华中世纪星数控系统。

局部变量含义:

#23=120.0;工件跑道形凹槽左侧圆弧中心的横坐标绝对值

#24=120.0;工件跑道形凹槽左侧圆弧中心的纵坐标绝对值

#25=-20.0;工件跑道形凹槽最终加工深度

#17=5.0;刀具起始切削安全高度

#7=0.0;螺旋线插补切削起始点的Z轴绝对坐标值

#8=100.0;工件跑道形凹槽左侧圆弧半径

#9=80.0;工件跑道形凹槽右侧圆弧半径

#20=280.0;凹槽左右圆弧中心距

#3=32.0;刀具半径

#5=150.0;切削进给速度

#16=2.0;凹槽粗加工Z轴每次降层深度

#4=0.7;有效刀具直径百分比

#2=20.0;螺旋切削插补半径

#10=0.5;精加工余量

主程序如下:

O××××;文件名

%××××;程序号

N10 T01 M06;调用1号刀

N15 G17 G90 G21 G94 G54 G40 G49 G80;程序运行初始状态设置

N20 G43 G00 Z50.0 H01 S500 M03;建立刀具长度补偿,主轴正转,转速为500r/min

N25 X0.0 Y0.0 M07;刀具快速移动到工件坐标零点,打开切削液

N30 M98 P3343 X120.0 Y120.0 Z-20.0 R5.0 H0.U280.0 I100.0 J80.0 D16.0 F150.Q2.0 E0.7 C20.0 K0.5;调用加工跑道形凹槽侧面铣削的宏程序

N35 G00 Z100.0 M09;刀具退到工件上表面100mm处,切削液关闭

N40 G49;取消刀具长度补偿

N45 X0 Y0 M05;刀具退回工件坐标零点,主轴停止

N50 M30;程序结束并返回程序开头

%3343;跑道形凹槽侧面铣削用户宏程序(见前面)

M99;子程序结束,返回主程序

2)SINUMERIK 802D数控系统。

主程序如下:

FZG×××××;程序名

N05 R24=120.0;工件跑道形凹槽左侧圆弧中心的横坐标绝对值

R25=120.0;工件跑道形凹槽左侧圆弧中心的纵坐标绝对值

R26=-20.0;工件跑道形凹槽最终加工深度

R18=5.0;刀具起始切削安全高度

R11=0.0;螺旋线插补切削起始点的Z轴绝对坐标值

R4=100.0;工件跑道形凹槽左侧圆弧半径

R5=80.0;工件跑道形凹槽右侧圆弧半径

R21=280.0;圆弧中心距

R7=32.0;刀具半径

R9=150.0;切削进给速度

R17=2.0;凹槽粗加工Z轴每次降层深度

R8=0.7;有效刀具直径百分比

R3=20.0;螺旋切削半径

R6=0.5;精加工余量

N10 T1 D1;调用1号刀

N15 G17 G90 G71 G94 G54 G40;程序运行初始状态设置

N20 G00 Z50.0 S500 M03;主轴正转,转速为500r/min

N25 X0.0 Y0.0 M07;刀具快速移动到工件坐标零点,打开切削液

N35 L3343;调用加工跑道形凹槽侧面铣削的R参数子程序

N40 G00 Z100.0 M09;刀具退到工件上表面100mm处,切削液关闭

N42 D00;取消刀具长度补偿

N45 X0 Y0 M05;刀具退回工件坐标零点,主轴停止

N50 M02;程序结束并返回程序开头

L3343;跑道形凹槽侧面铣削用户R参数子程序(见前面)

RET;R参数子程序结束,返回主程序

3)FANUC 0i数控系统。

自变量含义:

#24=120.0;工件跑道形凹槽左侧圆弧中心的横坐标绝对值

#25=120.0;工件跑道形凹槽左侧圆弧中心的纵坐标绝对值

#26=-20.0;工件跑道形凹槽最终加工深度

#18=5.0;刀具起始切削安全高度

#11=0.0;螺旋线插补切削起始点的Z轴绝对坐标值

#4=100.0;工件跑道形凹槽左侧圆弧半径

#5=80.0;工件跑道形凹槽右侧圆弧半径

#21=280.0;圆弧中心距

#7=32.0;刀具半径

#9=150.0;切削进给速度

#17=2.0;凹槽粗加工Z轴每次降层深度

#8=0.7;有效刀具直径百分比

#3=20.0;螺旋切削半径

#6=0.5;精加工余量

主程序如下:

O××××;程序名

N10 T01 M06;调用1号刀

N15 G17 G90 G21 G94 G54 G40 G49 G80;工艺加工状态设置

N20 G43 G00 Z50.0 H01 S500 M03;建立刀具长度补偿,主轴正转,转速为500r/min

N25 X0.0 Y0.0 M07;刀具快速移动到工件坐标零点,打开切削液

N30 G65 P3343 X120.0 Y120.0 Z-20.0 R5.0 H0. U280.0 I100.0 J80.0 D16.0 F150. Q2.0 E0.7 C20.0 K0.5;调用加工跑道形凹槽侧面铣削的宏程序

N35 G00 Z100.0 M09;刀具退到工件上表面100mm处,切削液关闭

N40 G49;取消刀具长度补偿

N45 X0 Y0 M05;刀具退回工件坐标零点,主轴停止

N50 M30;程序结束并返回程序开头

O3343;跑道形凹槽侧面铣削用户宏程序(见前面)

M99;子程序结束,返回主程序

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈