三菱FX可编程控制器的程序流程控制功能指令 点击:125 | 回复:0



qfwl

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:51帖 | 5回
  • 年度积分:0
  • 历史总积分:204
  • 注册:2017年11月14日
发表于:2018-05-18 15:22:28
楼主

1. 条件跳转指令CJ

2. 子程序调用指令CALL与返回指令SRET

3. 主程序结束指令FEND

4. 主程序结束指令FEND

5. 监视定时器刷新指令WDT

6. 循环开始指令FOR与循环结束指令NEXT


1、条件跳转指令CJ

    CJCJP指令用于跳过顺序程序某一部分的场合,以减少扫描时间。条件跳转指令CJ应用说明如图


2、子程序调用指令CALL与返回指令SRET

   子程序应写在主程序之后,即子程序的标号应写在指令FEND之后,且子程序必须以SRET指令结束

3、中断返回指令IRET、允许中断指令EI与禁止中断指令DI

    PLC一般处在禁止中断状态。指令EI~DI之间的程序段为允许中断区间,而DI~EI之间为禁止中断区间。当程序执行到允许中断区间并且出现中断请求信号时,PLC停止执行主程序,去执行相应的中断子程序,遇到中断返回指令IRET时返回断点处继续执行主程序。

4、主程序结束指令FEND 
    FEND指令表示主程序的结束,子程序的开始。程序执行到FEND指令时,进行输出处理、输入处理、监视定时器刷新,完成后返回第0步。 
    FEND指令通常与CJ-P-FENDCALL-P-SRETI-IRET结构一起使用(P表示程序指针、I表示中断指针)。CALL指令的指针及子程序、中断指针及中断子程序都应放在FEND指令之后。CALL指令调用的子程序必须以子程序返回指令SRET结束。中断子程序必须以中断返回指令IRET结束。

5、监视定时器刷新指令WDT 
    如果扫描时间(从第0步到ENDFEND)超过100msPLC将停止运行。在这种情况之下,应将WDT指令插到合适的程序步(扫描时间不超过100ms)中刷新监视定时器。

6、循环开始指令FOR与循环结束指令NEXT 
    FOR~NEXT之间的程序重复执行n次(由操作数指定)后再执行NEXT指令后的程序。循环次数n的范围为1~32767。若n的取值范围为-32767~0,循环次数作1处理。
    FORNEXT总是成对出现,且应FOR在前,NEXT在后。FOR~NEXT循环指令最多可以嵌套5层。

    利用CJ指令可以跳出FOR~NEXT循环体。

      




热门招聘
相关主题

官方公众号

智造工程师