《数控车床车削宏程序.ppt》由会员分享,可在线阅读,更多相关《数控车床车削宏程序.ppt(12页珍藏版)》请在三一办公上搜索。
1、宏程序,宏指令编程概述 宏程序指令适合抛物线、椭圆、双曲线等没有插补指令的曲线编程;适合图形一样,只是尺寸不同的系列零件的编程;适合工艺路径一样,只是位置参数不同的系列零件的编程。较大地简化编程;扩展应用范围。,运算符与表达式 1、算术运算符+、-、*、/2、条件运算符 EQ(=)、NE()、GT()、GE(=)、LT()、LE(=)AR判断参数合法性的宏(判断是否定义,是增量还是绝对)3、逻辑运算符 AND(与)、OR(或)、NOT(非)4、函数 SIN(正弦)、COS(余弦)、TAN(正切)、ATAN(反正切-9090)、ATAN2(反正切-180180)、ABS(绝对值)、INT(取整)
2、、SIGN(取符号)、SQRT(开方)、EXP(指数)5、表达式 用运算符连接起来的常数或宏变量构成表达式。,赋值语句 格式:宏变量=常数或表达式#2=175/SQRT2*COS55*PI/180;#3=124.0;条件判别语句IF,ELSE,ENDIF 格式(i):IF 条件表达式 ELSE ENDIF 格式(ii):IF 条件表达式 ENDIF循环语句WHILE,ENDW 格式:WHILE 条件表达式 ENDW,例1:用宏程序编制下图所示抛物线Z=-X/8,在区间 0,16内的程序。%8002#10=0#11=0N10 G92 X0 Z5M03 S600G01 X0 Z0 F300WHIL
3、E#10 LE 16G90 G01 X#10 Z-#11 F500#10=#10+0.08#11=#10*#10/8ENDWG00 Z0 M05G00 X0,%3401 N1 T0101N2 G37N3#10=0;A坐标初值N4#11=0;B坐标初值N5 M03 S600N6 WHILE#10 LE 8N7 G90 G01 X#10 Z-#11 F500N8#10=#10+0.08N9#11=#10*#10/2N10 ENDWN11 G00 Z0 M05N12 G00 X0N13 M30,例2、用宏程序编制下图所示抛物线程序。,8,32,A,B,抛物线B=-A2/2在A区间0,8,%3401T
4、0101G00 X21 Z3M03 S600#10=7.5;A坐标初值(粗加工)WHILE#10 GE 0#11=#10*#10/2;B坐标G90G01X2*#10+0.8 F500Z-#11+0.05U2Z3#10=#10-0.6ENDW#10=0;A坐标初值(精加工)WHILE#10 LE 8#11=#10*#10/2;B坐标G90G01X2*#10Z-#11F500,例3:用宏程序编制下图所示零件加工程序。,#10=#10+0.08ENDWG01 X16 Z-32Z-40 G00 X21 Z3 M05M30,8,32,A,B,抛物线B=-A2/2在A区间0,8,例4:用宏程序编制如图3.
5、4.3所示零件加工程序。,%0342N1 T0101N2 G00 X20.5 Z3N3#11=12;B坐标初值N4#10=SQRT2*#11;A坐标初值N5 M03 S600N6 WHILE#10 LE 8N7 G90G01X2*#10Z-#11-12F500N8#10=#10+0.08N9#11=#10*#10/2N10 ENDWN11 G01 X16 Z-20N12 Z-28N13 G00 X20.5 Z3 M05N14 M30,8,32,A,B,抛物线B=-A2/2在B区间12,32,12,例5:用宏程序编制如图3.4.3所示零件加工程序。,%0342N1 T0101 N2 M03 S6
6、00N3 G00 X35 Z3N4 G01 X18 F100N5 Z-4N6#11=8;Z坐标初值N7#10=SQRT2*#11 N8 G01 X2*#10+3N9 WHILE#11 LE 28N10#10=SQRT2*#11 N11G90G01X2*#10+3Z-#11-4F500N12#11=#11+0.04N13 ENDWN14 G01 X22 Z-24N15 Z-30,图,3,.4.2,宏程序编制例图,抛物线B=-A2/2在B区间12,32,20,30,30,8,4,3,18,22,5,N16 X30N17 Z-35 N18 G00 X35 Z3N19 M05N20 M30,例6 抛物
7、线与椭圆的混合运用。%8002(程序名)G92 X50 Z0(起点坐标)U32 V40 W55 A8 B5 C4 M98 P8001(定义#20=32、#21=40、#22=55、#0=8、#1=5、#2=4)G36 G90 X50 Z0(到起点位置)M30%8001(子程序名)#10=0#11=0(抛物线起点X、Z轴坐标值)#12=0#13=0(椭圆起点在X、Z轴方向增量值)G64 G37(小线段连续加工、半径编程)WHILE#11 LE#20(抛物线方程:Z=-X*X/C)G01 X2*#10 Z-#11 F1500#10=#10+0.08(计算各段抛物线X轴坐标)#11=#10*#10/
8、#2(计算各段抛物线Z轴坐标)ENDWG01 X2*SQRT#20*#2 Z-#20(到达抛物线终点)G01 Z-#21(到达直线终点)WHILe#13 LE#1(椭圆方程:X*X/A*A+Z*Z/B*B=1)#16=#1*#1-#13*#13#15=SQRT#16#12=#15*#0/#1(计算椭圆X轴方向的增量)G01 X2*SQRT#20*#2+#0-#12 Z-#21-#13#13=#13+0.08(确定椭圆Z轴方向的增量)ENDWG01 X 2*SQRT#20*#2+#0 Z-#21-#1(到达椭圆终点)G01 Z-#22U12 G00 Z0 m99,%8002(程序名)G92 X90 Z30(起点坐标)U10 V50 W80 A20 B40 C3 M98 P8001(定义#20=10、#21=50、#22=80、#0=20、#1=40、#2=3)G00 X90 Z30(到起点位置)M30%8001(子程序名)G00 Z-#22+#21+#20X#1+5#10=#2WHILE#10 LE#21 G00 Z-#22+#21+#20-#10G01 X#0G00 X#1+5#10=#10+#2-1 ENDWG00 Z-#22+#20G01 X#0G00 X#1+5G00 X90 Z30M99,当前局部变量#0#38对应的宏调用量传递的字段参数名,HNC华中数控,