Jump to content

Placement of coils on ladder rungs


cantcliff

Recommended Posts

From my training I understand that direct coil actions are always placed on the right hand side of the rung.

 

While attempting to solve as issue with a co-workers logic I noticed several coils run inline with contacts.

 

Instead of: 

 

----|/|----| |----|/|----(  )----(/)----

 

His ladder contains rungs like this:

 

----|/|----(  )----| |----|/|----(/)----


1) Visilogic does not produce any errors or warnings but will this cause unexpected behavior at compile/upload to the PLC?

 

2) I know Allen Bradley PLCS treat serial or parallel coils identical is this the same with the Unitronics PLC Vision series?

 

Link to comment
Share on other sites

Hello,

 

Thank you for using our Unitronics Forum.

 

Your co-worker's ladder isn't necessarily wrong, but good programming practice (perhaps for easier troubleshooting) it is best to keep the coils to the right. In your first situation, both the direct coil and inverted coil rely on the first three contacts.  In the second, the direct coil relies on the first inverted contact.  However, the inverted coil relies on all three contacts. 

 

Running a parallel statement may be a "better programming practice" in the second situation.  Running the direct contact, inverted contact, and inverted coil (the elements after the direct coil) in parallel with the direct coil rather than in series would keep the coils on the right hand side, thus keeping the programming practice.

 

Please let me know if this helps. 

Link to comment
Share on other sites

  • MVP 2023

It's somewhat poor programming practice to place coils in series, and even worse to place a coil in the middle of a series of contacts. One of the nice things about Visilogic is that it allows for a great deal flexibility in this regards and will work properly even when poor programming practice is used.

 

I would separate out the logic for better readability and troubleshooting, as follows:

                             A      B

----|/|----| |----|/|----(  )----(/)---- should be broken into two nets like this:

 

                             A

----|/|----| |----|/|----(  )----

 

     A      B

----| |----(/)----

 

And ----|/|----(  )----| |----|/|----(/)---- should be broken into two nets like this:

 

----|/|----(  )----

 

----|/|----| |----|/|----(/)----

 

Done in this way the logic is clear and unambiguous.

Link to comment
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
×
×
  • Create New...

Important Information

This site uses cookies. By clicking I accept, you agree to their use.