[西门子] 三菱FX3U (CJ跳转、CALL子程序调用、中断程序)指令运用

[复制链接]
查看59734 | 回复0 | 2023-12-30 18:48:55 | 显示全部楼层 |阅读模式


​CJ条件跳转指令



​当条件跳转CJ指令的驱动X10为ON时,程序跳转到CJ指令指定的编号P10处,之间的程序被跳过不执行。如果驱动条件输入X10变为OFF,则执行紧接到CJ指令后的程序(按原扫描顺序执行)。当驱动条件为M8000时表示无条件跳转。通过跳转指令优化程序结构后可以缩短程序的扫描时间,提高程序执行速度。

条件跳转指令CJ(P)的操作数为指针标号P0~P4095,其中P63为END所在步序,不需标记。指针标号可以用变址寄存器修改。

CJ指令注意事项:

1、CJP指令表示脉冲执行方式。

2、在同一个程序中,一个跳转标号只能出现一次,否则将会出错。

3、在跳转执行期间,即使被跳过程序的驱动条件改变,但其输出结果仍保持跳转前的状态,因为跳转期间根本没有执行这段程序。

4、如果在跳转开始时定时器和计数器已在工作,则在跳转执行期间这些定时器和计数器将停止工作,直到跳转条件不满足后继续工作。对于正在工作的定时器T192~T199和高速计数器C235~C255不管有无跳转仍连续工作。



CALL子程序调用指令

FEND主程序结束指令

SRET子程序返回指令



解析:当PLC接通M8000为ON,则跳转到标号P10处去执行子程序。当扫描执行到SRET指令时,返回到CALL指令的下一步继续执行。FEND表示主程序结束标志,FEND指令为无条件驱动,当执行到FEND时,PLC进行输入/输出处理,监视定时器WDT刷新,完成后返回启始0步。SRET是子程序结束标志。在主程序中可以多次使用。

PLC扫描到任何一个FEND指令时,向0步程序返回,在多个FEND指令时,副程序区的子程序和中断程序必须在最后一个FEND指令和END指令之间编写。

CALL子程序调用与返回指令注意事项:

1、子程序调用指令CALL必须要和子程序返回指令SRET成对使用。SRET指令和FEND指令为无驱动条件。

2、P63不能用于CALL指令。同一标号的P不可以同时被CJ指令和CALL指令共用,例如CALL P10中的P10就不能用于CJ P10。

3、转移标号不可以重复,也不能和跳转CJ指令的标号重复。

4、子程序可以嵌套调用(子程序中再次呼叫其它子程序),最多可以嵌套5级。

5、主程序内的程序无时无刻都会扫描执行,而子程序和中断程序需要触发某些条件,相应的子程序才会执行。

6、所有定时器均可用于主程序,但子程序要使用定时器时,只能是T192~T199、T246~T249这10个。

7、子程序必须写在FEND和END之间,否则出错。



CALL子程序调用与CJ条件跳转指令的区别:

CJ条件跳转指令是在主程序内跳转,不会跳过主程序区,而CALL调用子程序是直接跳到副程序区。子程序调用指令CALL必须要和子程序返回指令SRET成对使用,而CJ指令不用。
子程序是区别于主程序的独立程序段,不同的子程序互相独立,可以编写不同用途的子程序为主程序提供不同的服务。当系统规模很大、控制要求复杂时,可以把程序分为不同的子程序,使程序结构简化明了。当某个功能需要多次执行时,也可以编写成子程序,需要时直接调用。


EI允许中断指令

DI禁止中断指令IRET中断返回指令
中断子程序能否进行与中断条件与中断指针有关。PLC通常处于禁止中断状态,由EI和DI指令组成允许中断范围。在执行到该区间,如有中断源产生中断,CPU将暂停主程序执行转而执行中断服务程序。当遇到IRET时返回断点继续执行主程序。
中断事件号外部信号输入中断:


定时器中断(循环中断):

例如I610的中断指针,代表的是每10ms执行一次中断程序。
高速计数器中断指针的编号有6个,从I010到I060,必须与高速计数器指令DHSCS一起使用。

中断子程序编程注意事项:
1、多个中断依次发生,按发生的先后为序,发生越早级别越高,如果多个中断源同时发出信号,则中断指针号越小优先级越高。例如I001优先于I501,I501优先于I601。

2、当M8050~M8058为ON时,禁止执行相应I0□□~I8□□的中断,M8059为ON时禁止所有计数器中断。

3、无需中断禁止时,可以只用EI指令,不必用DI指令。调用一次中断程序只执行一个扫描周期的时间。

4、在执行一个中断服务程序时,如果在中断服务程序中有EI和DI,可实现二级中断嵌套,否则将禁止其它中断。

5、中断服务程序必须写在FEND和END之间,否则出错。






三菱FX3U入门第一课(本体及接线介绍)

三菱FX3U编程软件GXWORKS2安装以及使用编程线缆USB-SC09-FX进行程序的上传下载

三菱FX3U PLC电池的作用及存储器盒的使用

三菱FX3U产品特性及本体选型

三菱FX3U软元件整理总结(输入X、输出Y、定时器T、计数器C、辅助继电器M、数据寄存器D、状态S、变址寄存器V、Z、常数指定)

三菱PLC程序加密的几种方法
三菱FX3U基本指令编程汇总​三菱编程软件GX WORKS2常用快捷键一览表
三菱FX3U主控指令(MC MCR)
三菱FX3U高速计数器运用

版权声明

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则