4.2.5 子程序调用指令M98、M99
数控车床程序的编写也可采用主、子程序的形式。数控系统按主程序的指令运行,但在主程序中遇见调用子程序的指令时,将开始按子程序的指令运行;在子程序中遇见调用结束指令时,自动返回到主程序,并重新按主程序的指令运行。
对程序中有一些顺序固定或反复出现的加工图形,可将其写成子程序,然后由主程序来调用,这样可以大大简化整个程序的编写。
1.子程序调用指令M98
指令格式:M98 P L
M98指令中的P后面跟的是被调用的子程序的程序号,而L后面跟的是调用该子程序的次数(默认值为1)。主、子程序的调用关系见图4-7。
在编写程序时,主、子程序必须写在同一个文件中,都是以字母“O”开头,以“O****”单独作为一程序行书写。子程序中还可以再调用其他子程序,即可多重嵌套调用。
图4-7 主、子程序调用关系
同一个子程序可被主程序多次调用。同一个主程序可以调用多个不同的子程序。
2.子程序结束指令M99
M99的功能就是结束子程序的运行并使数控系统返回到主程序,重新按主程序的指令运行。每个子程序的最后一条指令必须是M99。
【例4-6】主子程序调用编程:在图4-8中,轮廓的精加工用子程序编写,在主程序中,按轮廓的形状多次调用子程序,其参考程序如下:
图4-8 主、子程序编程
O1000
N001 G92 X150.0 Z100.0;
N002 M03 S800 M08;
N003 G00 X35.0 Z0;
N004 G01 X0 F0.3;
N005 G00 X30.0 Z2.0;
N006 G01 Z-55.0 F0.3;
N007 G00 X150.0 Z100.0;
N008 X32.0Z0T0303;
N009 M98 P1500 L2;
N010 G00 W-12.0;
N011 G01 X0 F0.12;
N012 G04 X2.0;
N013 G00 X150.0 Z100.0 M09;
N014 M30;
O1500
N101 G00 W-12.0;
N102 G01 U-12.0 F0.15;
N103 G04 X1.0;
N104G00U12;
N105 W-8;
N106 G01 U-12 F0.15;
N107 G04 X1.0;
N108 G00U12;
N109 M99;
取工件左端面中心点为编程坐标原点,对刀点位置在编程坐标系中X150 Z100位置。
需要注意的是:在MDI方式下,使用子程序调用指令是无效的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。