Pool Systems Automation: Difference between revisions
Matt Parnell (talk | contribs) |
Matt Parnell (talk | contribs) |
||
Line 317: | Line 317: | ||
[[File:FFSC-001 Pg 5 - PLC Panel Layout.png|300px]] | [[File:FFSC-001 Pg 5 - PLC Panel Layout.png|300px]] | ||
==== | ==== Sensor Wiring ==== | ||
Pages 10-19 are reserved for sensors (including "flow meters") and their associated | Pages 10-19 are reserved for sensors (including "flow meters") and their associated wiring. | ||
[[File:FFSC-001 Pg 10 - Filter Tank Pressure Sensors.png|300px]] | [[File:FFSC-001 Pg 10 - Filter Tank Pressure Sensors.png|300px]] |
Revision as of 21:11, 3 September 2021
Overview
A monitoring and control automation system was installed in the pump house during the 2020-2021 off-season. As of June 2021, continued refinement is still on-going. It was custom designed and installed to aide in the management of the pool, ensuring the pool is safe and comfortable for all occupants while reducing effort for the staff.
Background
The project was officially kicked off in December 2020 with the following goals:
- To alert staff and key maintenance personal of abnormal operating conditions or situations requiring attention.
- To protect aging equipment (i.e. the boiler) from damage due to malfunction.
- To reduce staff workload by automatically filling the pool.
- To record historical data for pressure, flow, temperature and chemical levels.
The following principles drove and will drive all future design efforts:
- The system must not hinder or add complexity to daily pool maintenance.
- In the event of automatic system failure, manual systems (gauges, valves) should be usable to perform all tasks.
- The system must be very well documented and maintainable by moderately technical member-volunteers.
Operation
Monitoring
Main Pump Motor
The main pump motor is monitored via an auxiliary contact on the motor starter. The contacts close upon pressing the Start button, assuming sufficient voltage is present and the overload is not tripped. The contacts open upon pressing the Stop button, or when another motor-stopping event occurs.
The main pump motor auxiliary contact and a snapshot of the flow rate (via the flow meter) determines the operating state.
State | LCD Notification | Condition(s) | Stack Light |
---|---|---|---|
Pump Stopped | Pump Stopped | The default state upon initialization. Set when the pump is stopped. | Red (Flashing) |
Pump Startup | Pump Startup | The pump is starting up (a 10-second static delay once the motor starter contacts are closed). | Off |
Operating | Pump Operating | Green/Yellow (Flashing) | |
Backwash | Alternating Red-Green |
Filter Tank Pressure
Four filter tank pressures are monitored by sensors with internal signal conditioning. When fed by a 24 VDC (each sensor is independently fused), a 1 V to 5 V output corresponds with 0 to 100 psi of pressure.
A value is considered valid if the measured voltage is 1 V or greater (less than 1 V suggests an open circuit or failed sensor). The low and high thresholds are somewhat arbitrary, and based upon observation. A nominal pressure of 10 psi is assumed (add 8 psi to the limit per PHTA guidelines for a single-gauge backwash threshold).
Qualifier | Threshold | Result | LCD Notification | Stack Light |
---|---|---|---|---|
Operating | < 8 psi | Pressure Low | Flt Tank Pres L | Yellow |
Operating | ≥ 8 psi and < 18 psi | Pressure OK | None | Green (unless overridden) |
Operating | ≥ 18 psi | Pressure High | Flt Tank Pres H | Yellow |
When in the Pump Startup, Operating or Backwash state, each tank pressure is briefly shown on the LCD in psi. If the value is not valid, Fault is shown in place of a pressure value.
Water Flow
Water Level
Boiler Operation
Control
Auto-Fill
The pool is automatically filled when a low threshold is met via the surge tank water level sensor.
User Interfaces
Stack Light
The stack light indicates the overall operating state of the system.
State | Description |
---|---|
None | The system is off or the pump is starting up. |
Solid Green | The pump and system are operating nominally. |
Flashing Green | Same as Green with active pool fill. |
Solid Yellow | The pump and system are operating but intervention may be required. |
Flashing Yellow | Same as Yellow with active pool fill. |
Solid Red | The pump is stopped by the operator. |
Flashing Red | The pump is stopped due to the surge tank level. |
LCD/Keypad
Remote Monitoring
Design
Programmable Logic Controller
A DirectLogic 06 (D0-06DD2) programmable logic controller (PLC) is used for as the base for monitoring and control. A PLC was selected due to its reliability and relative ease-of-maintenance by volunteer maintenance staff. Within the electrical engineering community, most have had some level of experience with PLCs and/or ladder logic. It is assumed that within the membership, there will always be someone with the knowledge that can volunteer on an as-needed basis.
The controller consists of an internal CPU, 24V inputs/outputs (I/O) and multiple add-on modules for analog measurements. Serial communication carried over WiFi via a Lantronix PremierWave XN, presenting the PLC as if it were connected to a virtual communication port on the host PC.
Digital Inputs
Input | Function | Description |
---|---|---|
X4 | Surge Tank Float | Not presently implemented; reserved for future use. |
X5 | Motor Starter Status | Active when the main pump is operating. |
X10 | Boiler Stage A | Active when conditions described in Pool Boiler Stage A: Demand for Heat are met. |
X11 | Boiler Stage B | Active when conditions described in Pool Boiler Stage B: Flow/Temperature Interlocks are met. |
X12 | Boiler Stage C | |
X13 | Boiler Stage D | |
X14 | Boiler Stage E |
Digital Outputs
Output | Function | Description |
---|---|---|
Y4 | Stack Light Red | Drives the red element of the stack light. |
Y5 | Stack Light Yellow | Drives the yellow element of the stack light. |
Y6 | Stack Light Green | Drives the green element of the stack light. |
Y10 | Fill Valve | Drives the pool fill valve into the open position (spring-return when off). |
Y11 | Motor Starter Stop | Stops the main pump by mimicking "stop" button closure. |
Y12 | Boiler Disable | Disables boiler operation when a significant fault condition is observed. |
Expansion Modules
Slot | Part Number | Function | Purpose |
---|---|---|---|
1 | D0-07CDR | 4 x 12/24 VDC Input, 3 x Relay | Not used at this time (spare) |
2 | F0-04AD-2 | 4 x Analog Input (0-5 VDC or 0-10 VDC) | Sensor inputs (pressure) |
3 | F0-04AD-1 | 4 x Analog Input (0-20 mA or 4-20 mA) | Sensor inputs (flow, depth) |
4 | N/A | Not Populated | Spare |
Serial Interfaces
The DL06 PLC has two serial interfaces. On this unit, they are configured as follows:
Serial Interface | Electrical Configuration | Serial Configuration | Purpose |
---|---|---|---|
Port 1 | RS-232 | 9600 8O1/None | Programming |
Port 2 | RS-232 | 38400 8N1/None | Modbus Polling |
Sensors
The following points, as shown in the Process Flow Diagram, are monitored by the PLC:
- 4 x Pressure Transmitter (PT) units, one per filter tank. Each unit is connected in parallel to a non-electrical gauge.
- 1 x Flow Transmitter (FT) unit prior to the pool return. A manual gauge is placed in the vicinity of this paddle-wheel sensor.
- 2 x Depth Transmitter (DT) units, placed near the bottom of the surge tank and in the static level probe well. The latter is optional (may not be implemented).
There are additional sensors, not directly monitored by the PLC, but considered to be part of the system:
- 1 x Temperature Transmitter (TT) prior to the inlet of the boiler. This unit is used as the feedback for the temperature controller, which raises a call for heat to the boiler.
- 1 x Flow Transmitter (FT), pH probe, ORP probe and conductivity sensor. These sensors are fed into the Chemtrol PC2100 and are detailed here.
The following sensors are used:
Parameter | Sensor Part | Range | Output |
---|---|---|---|
Pressure | Measurement Specialties MSP-300-100-P-4-N-1 | 0 to 100 psi | 1-5 V analog |
Flow (Output) | GF Signet P51530-P1 | 0.3 to 6 m/s 1 to 20 ft/s |
Sine Wave (analog) |
Depth | ALS-MPM-2F | 0-5 meters | 4-20 mA |
Temperature | TBD - PT100 RTD | -40 to +400 degC | Resistive |
NOTE: The flow meter was previously a GF Signet MK515.3P1. Erratic behavior prompted its replacement in early June 2021.
Drawings
Drawings have been updated as of June 24th, 2021 with multiple corrections and as-built updates. They are still in-process and subject to review and change.
Panel Layout
Pages 5-9 are reserved for enclosure panel layouts.
Sensor Wiring
Pages 10-19 are reserved for sensors (including "flow meters") and their associated wiring.
Programmable Logic Controller
Pages 20-29 are reserved for the PLC and its expansion modules.
Auxiliary
Pages 40-49 are reserved for systems related to the automation system (via interconnection).
Known Issues
- Detection of backwash (versus operating) is occasionally incorrect. This is likely due to the ramp-of of the flow meter.
- Some PLC LCD time display screens are buggy.
Planning
The following features are planned when possible:
- Implement time-of-day auto-fill to reduce the frequency at which the pool is filled during the day. The club is not billed at a time-of-day rate, but as "good citizens" it is ideal to fill during low-demand periods to help reduce water bills for all city residents.
- Add a float switch as a failsafe means for detecting over-fill. In the event that the depth sensor fails.
- Add variable frequency drive (VFD) control for the main pump motor, when and if implemented.
Surge Tank Modulating Valve
If the budget permits, a spring-return modulating valve will be installed on the drain return into the surge tank. This will allow consistent level control via water level feedback. This will restore intended surge tank functionality (maintaining the proper surge tank level regardless of pool level).