数控机床程序中m代码中的m98和m99是什么意思

想多学点东西
2024-11-04 17:33:06
推荐回答(3个)
回答1:

M98是调用子程序,M99是子程序返回

拓展资料:

如果在地址M后面指令了2位数值,那就把对应的信号送给机床,用来控制机床的ON/OFF。M代码在一个程序段中只允许一个有效,M代码信号为电平输出,保持信号。    

M代码说明M03主轴正转M04主轴反转M05主轴停止M08冷却液开M09冷却液关(不输出信号)M32润滑开M33润滑关(不输出信号)M10备用M11备用尖(不输出信号)M00程序暂停,按‘循环起动’程序继续执行M30程序结束,程序返回开始    

除M00,M30外,其它M代码的执行时间(不是脉冲宽度)可由诊断号№80设定。

设定值:0~255(128毫秒~32.640毫秒)

设定时间=设定值×128毫秒。

注1:当在程序中指定了上述以外的M代码系统将产生以下报警并停止执行。

01:M代码错

注2:M,S,T起动后,即使方式改变,也仍然保持,可按‘RESET’关闭(由参数009BIT3设置是否有效)。

下面的M代码规定了特殊的使用意义。

(1)M30(程序结束)

1)  表示主程序结束。

2)  停止自动运转,处于复位状态。

3)  返回到主程序开头。

4)  加工件数1。

(2)M00:程序停

当执行了M00的程序段后,停止自动运转。与单程序段停同样,把其前面的模态信息全部保存起来。CNC开始转后,再开始自动运转。

(3)M98/M99(调用子程序/子程序返回)

用于调用子程序。或程序结尾为M99时,程序可重复执行。详细情况情参照了程序控制一节。

注1:M00,M30的下一个程序段即使存在,也存不进缓冲存储器中去。

注2:执行M98和M99时,代码号不送出。    

回答2:

§2.18 子程序(M98、M99)

    当一个主程序内,有一些固定的程序指令组,它们须时常重复执行,这时可将它们编成子程序,而在主程序中可对它们进行调用,如此可简化程序,使主程序的结构更简洁、清楚。一个子程序亦可调用另一子程序,这种情况称之谓子程序嵌套。

下图表示两层嵌套的子程序调用:

   

1.子程序的结构

    子程序的组成,依下列格式编程:

    O05…………… 子程序编号

    N1………………指令内容

    N2………………指令内容

    ........

    Nn M99…………子程序结束

    即子程序以字母O(注意不是数字零0)为开始,其后跟数字,为子程序名编号。在上例中即为05。子程序的结束以M99为结束符。

2.子程序的执行

    子程序必须在主程序调用时才能被执行。子程序的调用格式如下:

    M98 P_________L_________

    字母P后所跟的数字就是子程序编号,L后的数据是子程序调用次数,若L没有被指定时,子程序仅执行一次。

    例:

    M98 P05……… 执行05子程序一次。

    M98 P05 L8……执行05子程序八次。

    在主程序里,子程序的调用与执行顺序如下:

 

3.子程序的位置

    在编写加工程序时,如需要用子程序调用功能,则子程序一般写在主程序之后,两者在一个加工文件里。如下图所示:

 

    如在一个加工程序中有多个子程序,则子程序必须都在主程序之后,而子程序之间的前后位置可以是任意的。

4.子程序编程时的注意事项

  [1]在子程序中可以调用其它子程序,既子程序可以嵌套调用。

系统规定子程序嵌套调用最多为十层。

  [2]子程序不能递归调用。所谓递归调用就是在子程序中有自己调用自己的

     语句,或者是子程序1调用子程序2,在子程序2中又调用子程序1,当出

     现 这种情况时也是间接的递归调用。

回答3:

FANUC系统,M98子程序调用指令,格式为M98 P(循环次数) O(子程序名)M99子程序取消指令(返回主程序