double coil syndrome

If N11:0 had its /2 bit set when being moved to N7:0 then a later OTE to N7:0/2, assuming the conditions leading to it were true, would have no net effect on the value in N7:0 since that bit was already set. If the conditions leading to the OTE were false then N7:0's value would be decreased by 4.

But if it had not been set then and the conditions to the OTE are true then N7:0's value is greater by 4. If the conditions are not true then the value in N7:0 is not affected.

If the conditions for the OTE were intermittent then the value of N7:0 would be going up and down by 4.
 
Last edited:
If N11:0 had its /2 bit set when being moved to N7:0 then a later OTE to N7:0/2 would have no net effect on the value in N7:0 since that bit was already set. But if it had not been set then suddenly, with the OTE to N7:0/2, N7:0's value is greater by 4.


And here's a picture to help explain.

bit_2_Value.jpg
 
To make it simple; you can only use an output once. If the output is used more than once, it will be controlled by the last rung it is on in the program. The other rung(s) it is on before it will not turn it on or off.
 
well, you can't really make it quite THAT simple ...

To make it simple; you can only use an output once. If the output is used more than once, it will be controlled by the last rung it is on in the program. The other rung(s) it is on before it will not turn it on or off.

... true enough - except with ControlLogix, CompactLogix, or FlexLogix systems ... or when using Immediate Output type instructions, etc. ...

for a six year old thread, this one still has at least a little bit of kick left in it ...

actually the only people who get confused by the "double coil syndrome" are the ones who still look at the OTE instructions as "outputs" - and mistakenly think that the OTE "turns on" or "turns off" a field device ... once you've progressed beyond that type of nonsense, then you've usually got a pretty good handle on the old "double coil" problem ...
 
Last edited:
Funny but most of the major players in the automotive sector utilise Double coil's in their programming standard however the use of MCR's elieviate the issue.
 
a new trick for the old dog? ...

Greetings STL??? ...

I'll admit that I'm intrigued by your statement ...

however the use of MCR's elieviate the issue.

I'm always eager to learn something new – especially if it's potentially useful ... can you please give us an example of how the system that you mentioned works? ...

here's how I (currently) interpret your statement ... where am I going wrong? ...

suppose that we have TWO separate OTE rungs to control a single field output – a simple LAMP for example ...

suppose that the first OTE is located in an MCR (Master Control Reset) zone that we'll call "Zone A" for discussion ... and suppose that the second OTE is located in another MCR zone that we'll call "Zone B" ...

now suppose that the conditions for the MCR "controlling" Zone A happen to be TRUE – so that this particular MCR is "enabled" and working normally ... let's also suppose that within Zone A the conditions controlling the OTE for the LAMP are also TRUE ...

in simplest terms, everything about MCR Zone A is trying its dead level best (bless its little heart) to turn the LAMP in the field ON ...

but then LATER IN THE SCAN ...

let's also suppose that the conditions for the MCR "controlling" Zone B happen to be FALSE – so that this particular MCR is "disabled" and trying to turn all of its outputs OFF ... just to play devil's advocate, let's also suppose that within Zone B the conditions controlling the OTE for the LAMP also happen to be TRUE ... (actually in this demonstration the TRUE/FALSE status of the OTE rung in this particular "disabled" zone won't make any difference at all) ...

so ... in simplest terms, under these conditions MCR Zone B is trying to "reset" the lamp's bit – and therefore (being LAST IN THE SCAN) it will turn the LAMP in the field OFF ...

when I run the sample code from an SLC-5/04 system (attached) I find that the LAMP in the field is indeed OFF – just as I expected it to be ... and this is regardless of the fact that everything about MCR Zone A is trying to turn it ON ... more specifically, anytime Switch B (controlling the second MCR) happens to be OFF, then the LAMP in my example is certain to be OFF in the field (regardless of any of the other switch settings) ... personally I'd sum this up by saying that the FALSE condition of the MCR for Zone B is "RESETTING" (or writing a ZERO into) the bit/box for the LAMP at the end of every scan ... the poor old MCR for Zone A never stands a chance of turning the LAMP in the field ON unless the MCR controlling Zone B (later in the ladder) decides to go along with the plan ...

so then – this is where I'm getting confused by what you said ... I'm having a hard time understanding how the use of MCR (Master Control Reset) instructions could (in any way) alleviate the confusion caused by this obvious "double coil" arrangement ... now I really don't doubt that what you say is true, so quite probably I'm just misunderstanding how the MCRs you're describing are actually set up ... to the best of my current understanding, any use of MCRs would tend to exacerbate the "double coil" problem – rather than alleviate it ... I'd sincerely appreciate it if you could post a little more detail on the programming arrangement that you have in mind ... this truly sounds like a new programming technique that I've never run across before – and I'd really like to learn more about it ...

just for any beginners who might be reading this post: the part that confuses MANY people is the mistaken belief that any OTE rungs located in a FALSE-conditioned MCR zone will simply be "skipped over" or just "ignored" ... this is NOT correct ... actually any OTE instructions in such a zone will indeed still be executed by the processor – but they will be executed with FALSE logic ... this causes the OTEs to "reset" or write zeros into their bit/boxes - and THAT'S the effect that's being demonstrated in the figure below ...

MCR_conflict.JPG
 
Last edited:
from Maintenance Man:

I was just trying to make it simple, but I agree maybe too simple

don't fret ...

words of wisdom: if the simplest things don't confuse you, then you obviously don't know enough about them ...

(in other words, NOTHING is ever as "simple" as it looks or sounds ... and the deeper you dig, the more "wonder" you'll find) ...

party on ...
 
I'm appreciating the older threads being bumped up.
The search function is helpful for some specific questions, some of the previously hashed out threads give things great context.
:)
 
TriStation 1131 Developer's Guide, v4.6

While reading through this guide I came across this
"Enable Multiple Writes
The Enable Multiple Writes property specifies whether a tagname can be written to multiple
times from programs in the application. If this property is not selected and the tagname is
written to more than once, an error is displayed when the program is compiled.
The default is cleared, which means the tagname can only be written to once in an application."

During programming the Triconix PLC I noticed that If the Enable Multiple writes option was not selected the program gives an error if an output is written more then once. And if enabled I think double coil syndrome happens.
 
I think it means that if the Enable Multiple Writes property is enabled the no warning will be given. It doesn't mean that all multiple writes will produce an acceptable result.
 
I got a rotary switch with 5 microswitches NO.and 14 positions.
Ea position make a unique combination of closed contacs 2 or 3 of them will be closed at any of the 14 positions. Now with every position I need to energize 3 hyd solenoides,of 7, so I only need 5 inputs and 3 ouputs to energize combination of 3 solenoides for every of the 14 positions.
How can I make this hapen without using "double coil syndrome"???
I got Proworx32 (my favor), RsLogix 500 and Concept
Gracias Amigo, please help.
[email protected]
 

Similar Topics

how to design a ladder for a motor which has to rotate both clockwise and anticlockwise.........i know i cant use a load twice.but the motor(load)...
Replies
13
Views
3,334
I m just learning and no industrial experiance...Please explain the concepts... -----------| I:0.1 |--------------------( O:0.0 )----- | |...
Replies
10
Views
5,321
I've just done a Check Program command, and I get this double coil error. What does it mean? How can I correct it? Thanks
Replies
23
Views
6,450
Hello, I was just reading about Double Coil Syndrome on an old post from here. It's something that I dealt with and figured out for the program...
Replies
18
Views
5,141
I came across a application recently, and noticed the use of a double coil. My understanding of this is that this will not work, but I am not as...
Replies
8
Views
3,825
Back
Top Bottom