You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

Reply
 
Thread Tools Display Modes
Old September 14th, 2021, 01:54 PM   #31
jraef
Member
United States

jraef is offline
 
jraef's Avatar
 
Join Date: May 2006
Location: Northern California
Posts: 2,066
Or, you could just buy a "Triplex Alternating Relay" and be done with it.

https://www.macromatic.com/products-...relays/triplex
https://www.factorymation.com/FSR-TA120-ALSL
https://web.marshbellofram.com/diver...x-controllers/

It's true that it will likely cost a little more than a "smart relay" type of micro PLC, but requires no programming.

Last edited by jraef; September 14th, 2021 at 01:59 PM.
  Reply With Quote
Old September 14th, 2021, 07:32 PM   #32
Crdss
Member
Brazil

Crdss is offline
 
Join Date: Oct 2016
Location: Rio
Posts: 18
I need to program a vacuum center in the PLC,
under the following conditions, both in the CX-ONE of ONROM, as well as of SIEMENS (TIA PORTAL V15),
with 3 pumps;
2 vacuostats;
2 levels of buoys - 1 for disposal (upper - full tank)) and another for blocking (lower - empty tank), under the following operating conditions:
- in manual mode, the system will work continuously, regardless of the vacuum level of the system, only stopping in condition of blocking level of one of the tanks or activation of the protection of the motor contactor thermal relay;
in automatic mode, the 18' Hg vacuum switch informs the system to start operating at 1st. pump, if left open for more than 15 seconds, the second pump starts operating. the 15" Hg vacuum switch requests the input of the 3rd pump. after closing the 15" Hg vacuum switch, an internal PLC contactor is activated, and 1 minute after this condition, the 3rd. pump is turned off, 1 minute after the closing of the 18" Hg vacuum switch, the 2nd pump is turned off, and if the system spends more than 10 minutes above this level, the 1st pump is turned off, only returning to operation when there is a change in the system's vacuum level, the clp makes the pumps alternate in their operation, providing the equivalent use of all pumps.
inputs:
I.OO MANUAL PUMP 1
I.01 AUTOMATIC PUMP 1
I.02 MANUAL PUMP 2
I.03 AUTOMATIC PUMP 2
I.04 MANUAL PUMP 3
I.05 AUTOMATIC PUMP 3
I.06 DISPOSAL BUOY - TANK 1
I.07 BLOCK BUOY - TANK 1
I.08 DISPOSAL BUOY - TANK 2
I.09 BLOCK BUOY - TANK 2
I.10 VACUOSTAT (CLOSES WITH 15" Hg AND OPENS WITH 18" HG)
I.11 VACUOSTAT (CLOSES WITH 15" Hg AND OPENS WITH 15 "Hg

OUTPUTS:

Q0 - RELAY'1 (VENTILATION SOLENOID VALVE - TANK 1)
Q01 - RELAY'2 (CENTER FAILURE)
Q02 - RELAY'3 (LOW VACUUM ALARM)
Q03 - RELAY´4 (BLOCKING LEVEL ALARM)
Q04 - RELAY´5 9 SOLENOID VENTILATION VALVE - TANK 2)
Q05 - RELAY 6 (PUMP CONTACTOR 1)
Q06 - RELAY 7 (PUMP C0NTATOR 2)
Q07 - RELAY 8 (PUMP CONTACTOR 3)
  Reply With Quote
Old September 15th, 2021, 05:25 AM   #33
drbitboy
Lifetime Supporting Member
United States

drbitboy is offline
 
drbitboy's Avatar
 
Join Date: Dec 2019
Location: Rochester, NY
Posts: 3,400
Quote:
I.10 VACUOSTAT (CLOSES WITH 15" Hg AND OPENS WITH 18" Hg)
I.11 VACUOSTAT (CLOSES WITH 15" Hg AND OPENS WITH 15" Hg)
Is that correct, or is it a typo, and the red 15 supposed to be an 18?

Or if it is correct, how does the system detect when the vacuum changes from 18.001"Hg to 17.999"Hg?

Are the blue WITHs implying the vacuostat (vacuum switch?) closes when the vacuum goes above 15/18"Hg, and the orange WITHs implying that the vacuostat opens when the vacuum goes below 15/18"Hg? Or vice versa?

My guess would be that it is the following:
  • I.10 VACUOSTAT is CLOSED ABOVE 18" Hg and is OPEN BELOW 18" Hg
  • I.11 VACUOSTAT is CLOSED ABOVE 15" Hg and is OPEN BELOW 15" Hg)
What are the condition that will cause the pump ordering (which is first, which is second, which is third) to alternate/change?
__________________
i) Take care of the bits, and the bytes will take care of themselves.
ii) There is no software problem that cannot be solved with another layer of indirection.

Last edited by drbitboy; September 15th, 2021 at 05:37 AM.
  Reply With Quote
Old September 15th, 2021, 06:42 AM   #34
drbitboy
Lifetime Supporting Member
United States

drbitboy is offline
 
drbitboy's Avatar
 
Join Date: Dec 2019
Location: Rochester, NY
Posts: 3,400
Re-state the control scheme prose as logical statements e.g.
  • the 18" Hg vacuum switch informs the system to start operating at 1st. pump, ... if the system spends more than 10 minutes above [18"Hg], the 1st pump is turned off, only returning to operation when there is a change in the system's vacuum level
    • => the first pump is on if either
      • the 18"Hg switch is open
      • OR
        • the first pump is on
        • AND
        • the 18"Hg switch has been continuously closed for less than 10min
  • if [18"Hg switch is] open for more than 15 seconds, the second pump starts operating. ... 1 minute after the closing of the 18" Hg vacuum switch, the 2nd pump is turned off
    • => the second pump is on if either
      • the 18"Hg switch has been continuously open for more than 15s
      • OR
        • second pump is on
        • AND
        • the 18"Hg switch has been continuously closed for less than 1min
  • the 15" Hg vacuum switch requests the input of the 3rd pump. after closing the 15" Hg vacuum switch, an internal PLC contactor is activated, and 1 minute after this condition, the 3rd. pump is turned off,
    • => the third pump is on if either
      • the 15"Hg switch is open
      • OR
        • third pump is on
        • AND
        • the 15"Hg switch has been continuously closed for less than 1min
All three of those descriptions can be implemented with the Start/Stop circuit; (see this link):
  • Start is the initial condition e.g. "switch opens," or "switch has been continuously open for more than 15s"
  • Run is the pump on condition
  • Stop is the not-expired state of a "continuously closed for X minutes" timer.
The states of conceptual sequence of pumps
  • First_pump_on
  • Second_pump_on
  • Third_pump_on
will be internal bits (booleans) that are independent of the contactor outputs for the physical pumps:
  • PUMP CONTACTOR 1
  • PUMP CONTACTOR 2
  • PUMP CONTACTOR 3
There will be nine other bits indicating which physical pump is which sequenced pump:
  • Pump_1_is_first
  • Pump_1_is_second
  • Pump_1_is_third
  • Pump_2_is_first
  • Pump_2_is_second
  • Pump_2_is_first
  • Pump_3_is_first
  • Pump_3_is_second
  • Pump_3_is_third
The most complex section will be the code that assigns the values of these nine bits. Only three of those bits will be 1 at any time; the other 6 will be 0. Only one of the Pump_1_is_... bits will be 1 at any time; only one of the ..._first bits will be 1 at any time; etc. This section will also have to implement some metric for "equivalent use," such as number of starts or total run time, as well as whether a pump is in manual or not, and assign 1s and 0s to the Pump_N_is_Mth bits accordingly.

Obviously that functionality could also be performed with three INTs, but it does not matter in the end.

The final section of the program will determine which contactors to the physical pumps will be on e.g. for Pump 1

MANUAL PUMP 1 PUMP CONTACTOR 1
----+-------] [---------------------------------------------+--------( )-----
| |
| AUTOMATIC PUMP 1 Pump_1_is_first First_is_on |
+-------] [----------+--------] [-------------] [-------+
| |
| Pump_1_is_second Second_is_on |
+--------] [-------------] [-------+
| |
| Pump_1_is_third Third_is_on |
+--------] [-------------] [-------+

This is only one approach; this could also be done with bits in INTs and bit-wise OR and AND instructions.
__________________
i) Take care of the bits, and the bytes will take care of themselves.
ii) There is no software problem that cannot be solved with another layer of indirection.

Last edited by drbitboy; September 15th, 2021 at 06:54 AM.
  Reply With Quote
Old September 15th, 2021, 08:05 PM   #35
Crdss
Member
Brazil

Crdss is offline
 
Join Date: Oct 2016
Location: Rio
Posts: 18
Quote:
Originally Posted by drbitboy View Post
Re-state the control scheme prose as logical statements e.g.
  • the 18" Hg vacuum switch informs the system to start operating at 1st. pump, ... if the system spends more than 10 minutes above [18"Hg], the 1st pump is turned off, only returning to operation when there is a change in the system's vacuum level
    • => the first pump is on if either
      • the 18"Hg switch is open
      • OR
        • the first pump is on
        • AND
        • the 18"Hg switch has been continuously closed for less than 10min
  • if [18"Hg switch is] open for more than 15 seconds, the second pump starts operating. ... 1 minute after the closing of the 18" Hg vacuum switch, the 2nd pump is turned off
    • => the second pump is on if either
      • the 18"Hg switch has been continuously open for more than 15s
      • OR
        • second pump is on
        • AND
        • the 18"Hg switch has been continuously closed for less than 1min
  • the 15" Hg vacuum switch requests the input of the 3rd pump. after closing the 15" Hg vacuum switch, an internal PLC contactor is activated, and 1 minute after this condition, the 3rd. pump is turned off,
    • => the third pump is on if either
      • the 15"Hg switch is open
      • OR
        • third pump is on
        • AND
        • the 15"Hg switch has been continuously closed for less than 1min
All three of those descriptions can be implemented with the Start/Stop circuit; (see this link):
  • Start is the initial condition e.g. "switch opens," or "switch has been continuously open for more than 15s"
  • Run is the pump on condition
  • Stop is the not-expired state of a "continuously closed for X minutes" timer.
The states of conceptual sequence of pumps
  • First_pump_on
  • Second_pump_on
  • Third_pump_on
will be internal bits (booleans) that are independent of the contactor outputs for the physical pumps:
  • PUMP CONTACTOR 1
  • PUMP CONTACTOR 2
  • PUMP CONTACTOR 3
There will be nine other bits indicating which physical pump is which sequenced pump:
  • Pump_1_is_first
  • Pump_1_is_second
  • Pump_1_is_third
  • Pump_2_is_first
  • Pump_2_is_second
  • Pump_2_is_first
  • Pump_3_is_first
  • Pump_3_is_second
  • Pump_3_is_third
The most complex section will be the code that assigns the values of these nine bits. Only three of those bits will be 1 at any time; the other 6 will be 0. Only one of the Pump_1_is_... bits will be 1 at any time; only one of the ..._first bits will be 1 at any time; etc. This section will also have to implement some metric for "equivalent use," such as number of starts or total run time, as well as whether a pump is in manual or not, and assign 1s and 0s to the Pump_N_is_Mth bits accordingly.

Obviously that functionality could also be performed with three INTs, but it does not matter in the end.

The final section of the program will determine which contactors to the physical pumps will be on e.g. for Pump 1

MANUAL PUMP 1 PUMP CONTACTOR 1
----+-------] [---------------------------------------------+--------( )-----
| |
| AUTOMATIC PUMP 1 Pump_1_is_first First_is_on |
+-------] [----------+--------] [-------------] [-------+
| |
| Pump_1_is_second Second_is_on |
+--------] [-------------] [-------+
| |
| Pump_1_is_third Third_is_on |
+--------] [-------------] [-------+

This is only one approach; this could also be done with bits in INTs and bit-wise OR and AND instructions.
friend, I deeply appreciate your attention in answering me.consegui the programming code of this problem. it is a sewage station to
vacuo, (from the company EVAC SYSTEMS (formerly PVAC), commanded by plc (in this case clp onron. There are 17 coding pages in ladder language divided into two columns, that is, with 12 sections (section name). There are 19 comparators (CMP). ), 16 timers (TIM), 30 counters (CNTR), 7 (CNT), 2 (BSET), 42 (MOVE),
11 (DIFU) and 2 (DIFD), all this by coded by the CX-ONE (ONROM programmer).
  Reply With Quote
Old September 15th, 2021, 08:09 PM   #36
Crdss
Member
Brazil

Crdss is offline
 
Join Date: Oct 2016
Location: Rio
Posts: 18
If you have interest i can post to the group for analysis. Thankful
  Reply With Quote
Old September 15th, 2021, 08:23 PM   #37
drbitboy
Lifetime Supporting Member
United States

drbitboy is offline
 
drbitboy's Avatar
 
Join Date: Dec 2019
Location: Rochester, NY
Posts: 3,400
Quote:
Originally Posted by Crdss View Post
If you have interest i can post to the group for analysis. Thankful

I am interested. PDF landscape format is most universal; that way people who do not have the same software can look at the code.
__________________
i) Take care of the bits, and the bytes will take care of themselves.
ii) There is no software problem that cannot be solved with another layer of indirection.
  Reply With Quote
Old September 15th, 2021, 08:33 PM   #38
Crdss
Member
Brazil

Crdss is offline
 
Join Date: Oct 2016
Location: Rio
Posts: 18
Quote:
Originally Posted by drbitboy View Post
i am interested. Pdf landscape format is most universal; that way people who do not have the same software can look at the code.


friend are more than 20 pages. I have them printed. I will scan all of them and convert to pdf.
As soon as it is ready to be placed in group.la for monday or tuesday. Good studies
  Reply With Quote
Old September 15th, 2021, 08:35 PM   #39
Crdss
Member
Brazil

Crdss is offline
 
Join Date: Oct 2016
Location: Rio
Posts: 18
Quote:
Originally Posted by drbitboy View Post
i am interested. Pdf landscape format is most universal; that way people who do not have the same software can look at the code.
is it possible after you analyze this onrom cx-one schedule, convert to allen bradley and tia portal 15 from siemens' rs-logic?
  Reply With Quote
Old September 20th, 2021, 03:04 AM   #40
drbitboy
Lifetime Supporting Member
United States

drbitboy is offline
 
drbitboy's Avatar
 
Join Date: Dec 2019
Location: Rochester, NY
Posts: 3,400
Here is an untested approach to the problem described by OP, written for MicroLogix 1100 Series B in ladder. Comments, criticisms, etc. are welcome.

The bulk of the sequencing logic is in [LAD 234 LEADLAGLAG]. The basic idea is that there are three pumps (1, 2, 3) and three sequence types Lead, Lag1, Lag2. Each of the pumps will be assigned a unique sequence type, so at any give time there will be one Lead pump, one Lag1 pump, and one Lag2 pump. Which pump is assigned which type is dependent on each pump's mode (Manual, Automatic, Maintenance) and how much accumulated run time each pump has relative to the other pumps. When all pumps are in Automatic mode, as vacuum decreases, the pump designated Lead turns on first, then the pump designated Lag1, and finally the pump designated Lag2.

Everything else seems straightforward.
Attached Files
File Type: pdf 3_pump_sequencing.pdf (434.5 KB, 9 views)
File Type: zip 3_pump_sequencing.zip (41.4 KB, 0 views)
__________________
i) Take care of the bits, and the bytes will take care of themselves.
ii) There is no software problem that cannot be solved with another layer of indirection.
  Reply With Quote
Old September 21st, 2021, 02:00 AM   #41
drbitboy
Lifetime Supporting Member
United States

drbitboy is offline
 
drbitboy's Avatar
 
Join Date: Dec 2019
Location: Rochester, NY
Posts: 3,400
There has been limited testing and some bugs fixed as a result.


I put the project on Github at this link.
__________________
i) Take care of the bits, and the bytes will take care of themselves.
ii) There is no software problem that cannot be solved with another layer of indirection.
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
Pump Control with a PLC MisterEzell LIVE PLC Questions And Answers 18 September 20th, 2021 10:37 PM
Pump Sequencing RSLogix 5000 and FTView ME wfortuny LIVE PLC Questions And Answers 8 February 9th, 2012 08:20 PM
way OT: Proper installation of effluent pump in septic system advice needed. Sliver LIVE PLC Questions And Answers 17 October 19th, 2009 08:54 AM
Again and again. How to start? Alex Pel LIVE PLC Questions And Answers 33 December 31st, 2004 12:10 PM
Please a tiny push on this............. hidroela LIVE PLC Questions And Answers 11 November 1st, 2004 06:52 PM


All times are GMT -4. The time now is 09:03 AM.


.