Up to date PLC programming slc500

G

Thread Starter

Gray

<P>Im looking for some help on "modern" PLC programming techniques for an AB slc500 using RSLogix 500 to carry out 6 off valve sequencing(V1 to V8) & blower start&stop on a water filtration system.

<P>I can do it the "old fashioned way" using the limit switches as premissive/ interlocks to open valves and start timers, but I'm looking into using the modern facilities of the RSlogix 500 software.

<P>To give a rough idea of 1 of the filters it is as follows;
<PRE>

Vent <---V7--- ----V1-----< H2O In
| |
| |---V5----->Back Wash
|-----------| H2O out
| |
| |
| filter |
| |
| |
|___________|
| |
>X---V6-----> |-------V2----->H2O Out
Blower Air In |
|_______V8____>Drain

The sequence is as follows;

Blower V1 V2 V5 V4 V6 V7 V8
Online 0 1 1 0 0 0 0 0
Offline 0 0 0 0 0 0 1 1
Drain 0 0 0 1 1 1 1 0 for 2m Air Scour 1 0 0 0 0 1 1 0 for 5m
BW Air/H2O 1 0 0 1 1 1 1 0 for 10m
BW H2O 0 0 0 1 1 0 0 0 for 10m
Refill 0 1 0 0 0 0 1 0 for 1m
Rinse 0 1 0 0 0 0 0 1 for 5m

Where 1 = open/ on & 0 = closed/ off
</PRE>

<P>Any input greatly appreciated. Thanks in advance
<BR>Gray
 
L

Lewis Bodden

<P>I would use a table with the values loaded as you have them shown in your table. For example we can use the B3 file for the table. B3:0 would have the bits set as you have them in the row labeled "Online". B3:1 would have the bits set as you have them in the row labeled "Offline". And so on. Using a Move Instruction with an indirect address would move the table value to the Outputs. The bits in the table would line up with the Bits in the Output word.
<PRE>
--------------------
----| MOV |
|Source B3:[N7:0]|
|Dest O:0|
--------------------
</PRE>
<P>To Change States, change the Value of N7:0.
<PRE>

I:1 B9:0 --------------------
--| |--[OSR]--| MOV |
1 |Source 0|
|Dest N7:0|
--------------------
</PRE>
<P>A single timer could be used to sequence through the wash cycle. You would use a Move instruction similar to that described above and you would use the N7:0 pointer to move the preset to the Timer.

<P>Let me know if you have any more questions.

<P>Best wishes
<BR>[email protected]
 
You can use a 8 step (or how many you will need) sequencer which can be started from enabled by an automatic signal or a manual push button, Have a advance push button to bypass any step.
When the sequencer is started the approperiate bits will start those timers valves.You can include a reset button if you want.
regards,
sekar
 
Thanks Lewis, the kind of help I was after. I'll see if I can get my head around it and give it a go.

I guess I can also check for valve fault in a similar manner by loading similar truth tables but with limit switch values instead?

My main concern however is the PLC is in the field and I don't have one to play with here in the office. So when I have written the logic here it must be atleast 80% OK so that I can commission the unit ASAP rather than get there and spend days rewriting.

Thanks again
Gray
 
J

Jeremy Pollard

Investigate the SQC/SQO instruction set. Very useful, quick and set up for diagnostic programming well. 2 rungs of logic does the trick.

Cheers from: Jeremy Pollard, CET The Crazy Canuckian!
Integration and Automation Training, Consulting, and Software

Control Design Column
http://www.linkpath.com/index2gisufrm.php3?tempCode=CON&onlineIssue=true&mem
_sess=d8734688500ceb501ce5610f4a530004&speed=high

On The Web - http://www.tsuonline.com

PLCopen North America - [email protected]
http://www.PLCopen.org
 
Top