PLC的主控继电器指令

主控继电器( master control relay,mcr)指令用来控制mcr区内的指令是否被正常执行,相当于一个用来接通和断开“能流”的主令开关。
mcra为激活mcr区指令,表明按mcr方式操作的区域的开始;mcrd为取消mcr区指令,表示按mcr方式操作的区域的结束。mcra和mcrd指令应成对使用,这两条指令之间的程序的执行与否与mcr位的状态有关,mcr区之外的指令不受mcr位的影响。主控继电器指令格式及说明见表3-78。
表3-78 主控继电器指令格式及说明
“mcr(”和“)mcr”在编程时必须成对使用,以表示子母线的开始与结束。mcr控制区是指“mcr(”和“)mcr”之间的指令。“mcr(”和“)mcr”指令可以嵌套使用,最大嵌套深度为8层指令。可能的堆栈条目的最大数目为8个。当堆栈满时,执行“mcr(”将产生mcr堆栈故障( mcrf);当堆栈空时,执行“)mcr”将产生mcr堆栈故障(mcrf)。
如果在“mcr(”和“)mcr”指令之间使用beu指令,当执行beu时也会结束mcr区。如果在mcr控制区里有块调用指令,mcr当前状态不能继承到被调用的块内,如果需要在被调用的块内使用mcr控制区,必须在被调用块内重新激活mcr区。
“mcr(”打开一个mcr控制区指令。“mcr(”在mcr堆栈上保存rlo,然后打开一个mcr控制区。
当rlo =1时,mcr“打开”,正常执行该mcr控制区内与mcr有关的指令。
当rlo =0时,mcr“关闭”。
“)mcr”关闭一个mcr控制区指令。“)mcr”从mcr堆栈中删除一个条目,然后结束一个mcr区域。释放最后一个mcr堆栈位置,并将其设置为“1”。