什么是程序双线圈?

在用户程序中,同一编程元件的线圈使用了两次或多次,称为双线圈输出。

一般情况下不允许出现双线圈输出,在三种特定的条件下允许双线圈输出。合理使用双线圈输出可以解决程序设计中的一些问题,还可以减少执行程序的时间。

(1)在跳步条件相反的两个程序段(如自动程序和手动程序)中,允许出现双线圈现象,即同一元件的线圈可以在两个程序段中分别出现一次。图2中的X10是自动/手动切换开关,当它为ON 时将跳过自动程序,执行手动程序;为OFF时将跳过手动程序,执行自动程序。实际上CPU 只执行正在处理的程序段中双线圈元件的线圈输出指令。

(2)在调用条件相反的两个子程序中,允许出现双线圈现象,即同一元件的线圈可以在两个子程序中分别出现一次。图3中X20为ON时调用在指针P0 处开始的子程序,X20 为 OFF 时调用在指针 P1 处开始的子程序。图中的 SRET 为子程序返回指令,FEND 为主程序结束指令。

(3) 与跳步指令控制的程序段相同,子程序中的指令只是在该子程序被调用时才执行,没有调用时不执行,因为调用它们的条件相反,在一个扫描周期内只能调用一个子程序,实际上只执行正在处理的子程序中双线圈元件的线圈输出指令。