在用户程序中,同一编程元件的线圈使用了两次或多次,称为双线圈输出。对同一编程元件,可以多次使用SET和RST指令。
下图中有过程映像输出位Q2.3的两个线圈,在同一个扫描周期,两个线圈的逻辑运算结果可能刚好相反,即Q2.3的线圈一个“通电”,一个“断电”。对于Q2.3控制的外部负载来说,真正起作用的是最后一个Q2.3的线圈的状态。

Q2.3的线圈的通断状态除了对外部负载起作用外,通过它的触点,还可能对程序中别的元件的状态产生影响。如果图中两个线圈的通断状态相反,B区域与其余区域中Q2.3触点的状态也是相反的,可能使程序运行异常。作者曾遇到因双线圈引起的物理输出继电器快速振荡的异常现象。所以一般应避免出现双线圈输出现象,例如将控制两个线圈的触点电路并联后控制一个线圈。
只要能保证在同一扫描周期内只执行其中一个线圈对应的逻辑运算,这样的双线圈输出是允许的。下列两种情况允许双线圈输出:
1)在跳步条件相反的两个程序段中,允许出现双线圈输出,即同一元件的线圈可以在两个程序段中分别出现一次。实际上CPU只执行正在处理的程序段中双线圈元件的一个线圈输出指令。
2)在调用条件相反的两个子程序(例如自动程序和手动程序)中,允许出现双线圈现象,即同一元件的线圈可以在两个子程序中分别出现一次。子程序中的指令只是在该子程序被调用时才执行,没有调用时不执行。
三菱的编程软件可以检查是否有双线圈输出,但是并不将双线圈输出作为错误,只是作为警告。有双线圈输出时,用户程序仍然可以执行。