Sign in to follow this  
Followers 0
gko

OMRON LADDER LOGIC? dublicated output warning

12 posts in this topic

Hi all, I am trying to relize a ladder diagram like below : My purpose is design a ladder logic which is created from SFC (sequence flow chart). I have to use same output in different rungs. But during the compilation i get " dublicated output" warnings and my program doesn't work. Can anyone suggest a way that i can use these outputs in different rungs without getting warnings? I need your helps..Thanks Guven in1 .....................||..................................(out1) . . . . .....................||......||...........................(out1) in3 transition2

Share this post


Link to post
Share on other sites
My sugggestion would be to use work bits in your ladder rungs. Then at the bottom of the program, use the work bits in parallel to turn on the output bits. Your program is probably not "working" because the output will be controlled by the last logic scanned. Hope this will help.

Share this post


Link to post
Share on other sites
gko.. do what GT suggests.... On a side note for outputs. Treat Outputs like a coil of a relay... that is, you only have one coil for a relay as such, and all of the wired connections that control the relay are connected together. Always remember that the history of ladder logic is that it is also referred as relay logic... PLC's relpaced walk in controls boards which had 1000's of wired relays to preform the logic in a PLC that we take for granted... imagine trying to test these things the first time... an online edit would have basically been rewiring the darn thing,,,

Share this post


Link to post
Share on other sites
good old days Actually did that thing on a tiny machine here cause there was to little logic for a plc. 4 relays and the machine worked perfectly. Did the thinking like I was programming a plc with the difference that u can only use a sensor once or you have to ad another relay :) Rally fun to test it thou and as u say we take to much for granted these days...

Share this post


Link to post
Share on other sites
The only way to do it..... ----------------------------------------------------------------------------------------- ........||.......+...(out1) ....||.....||....l ----------------------------------------------------------------------------------------- !!!!!!!!!!!!!!! You cant write same output more than once. !!!!!!!!!!!!!!!!!!!!!!!! other solution - frequently used in programming ----------------------------------------------------------------------------------------- .......||..........+..(bit10) *10 = example of available bit ...||.......||.....l bit10 ...||..........(out1) -----------------------------------------------------------------------------------------

Share this post


Link to post
Share on other sites
Actually, you can. I've ignored quite a lot of those warnings, and if you really know what you do you can save a lot of programming by using more than one write to a variable. The second write will simply overwrite the result from the first one. It's however NOT something that should be done by a newbie, and only in exceptional cases by experienced programmers.

Share this post


Link to post
Share on other sites
A good example of when we use multiple outputs is on our security control panels. We have a lamptest function at the end of the program that does a BSET on the outputs. Normal LED operation is from the logic above, but when the lamptest is activated, it overrides the bits and lights all the LED's.

Share this post


Link to post
Share on other sites
Of course you can but beginners should first learn to write the program so that each bit is controlled by only one instruction.

Share this post


Link to post
Share on other sites
When I program I always set all outputs last in the program and all "help"-bits I use in the program is wired directly to the output with only emergency-stop and such things in betwen. It makes up big "or"-circuits but that makes the output easy to overlook,change and handle and there is never any need for any duplicated output cause if one bit is on the output is enabled. If a bit should cancel an output its just coupled as an "and-not"-circuit. This is my way of doing it and I usualy do it in a separet section last in the program.

Share this post


Link to post
Share on other sites
Well I agree with you. Thats the way I do it too. Also when I instruct someone I stick to that rule. (initiation, main program, outputs, subprograms...) Edited by Lord Kreps

Share this post


Link to post
Share on other sites
We add on section at the beginning: assign inputs: We have each physical input connected to an internal bit and in the program we only use the internal bits. That way we can easily connect change an input without having to change all the programming. For instance when we change over from a light-on photo-eye to a dark-on we only hav eto change in that section (no problems with falling and rising edges either)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0