Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

Valve control via PLC

Status
Not open for further replies.

wokkaman

Electrical
Sep 8, 2015
2
0
0
GB
I'm pretty sure there's an easy fix but I just can't figure out how to create the PLC ladder to control three water valves, here's how it should work:
press button to select number 48 valve to go fully open (actuator's only require momentary energising to operate), as soon as it reaches fully open the fully open limit switch on number 48 valve should trigger the number 49 and 50 valve's should go fully shut. Then it's a matter of going the other way, press button to select number 49 and 50 valves to go fully open, the fully open limit switches of each valve should trigger number 1 valve should go fully shut.

Hopefully the drawing should show how I currently have the ladder logic.
The problem is that when I try to drive valve 48 open again, it's being forced closed by number 49+50 fully open limit switches as per the bottom piece of ladder.
Any ideas most welcome
valves_oojces.jpg
 
Replies continue below

Recommended for you

I think you wanted W49 Go Open / W50 Go Open to be outputs. You seemed to have corrected that before on the previous line, and might have missed it below.

If you are using the same push button to do these two processes, then you will need another latch. As it stands when you press the button all three valves will open.
 
Use one shots and set and reset coils. For example the series W49 fully open and W50 fully open triggers a one shot. The one shot (which remains active for only one scan) sets the W48 close command. Once W48 is fully shut, reset the W48 close command which will allow W48 to open.
 
Something like

Code:
[PB]--[/LS1]--[PROCESS LATCH]--->(VALVE 1 OPEN)

[LS1]--[PROCESS LATCH]----->(VALVE 2 CLOSE)
                      ----->(VALVE 3 CLOSE)
                      ----->(PROCESS LATCH)(OTU)

[PB]--[/LS2]--[/LS3]--[/PROCESS LATCH]----->(VALVE 2 OPEN)
                                      ----->(VALVE 3 OPEN)

[LS2]--[LS3]--[/PROCESS LATCH]-->(VALVE 1 CLOSE)
                              -->(PROCESS LATCH)(OTL)

You want to separate your processes somehow, such that they are in distinct states and some variable or latch controls when each can occur.
Or else you run into things where other parts of your code are trying to activate when they shouldn't.
Since ladder logic works as:
Read inputs -> scan code top to bottom -> Update outputs

The need for these control variables is necessary or else output commands will fight eachother.
 
Status
Not open for further replies.
Back
Top