US20230131356A1 - Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment - Google Patents
Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment Download PDFInfo
- Publication number
- US20230131356A1 US20230131356A1 US18/086,902 US202218086902A US2023131356A1 US 20230131356 A1 US20230131356 A1 US 20230131356A1 US 202218086902 A US202218086902 A US 202218086902A US 2023131356 A1 US2023131356 A1 US 2023131356A1
- Authority
- US
- United States
- Prior art keywords
- control logic
- pool
- pump
- pump control
- spa
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/416—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control of velocity, acceleration or deceleration
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H33/00—Bathing devices for special therapeutic or hygienic purposes
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04H—BUILDINGS OR LIKE STRUCTURES FOR PARTICULAR PURPOSES; SWIMMING OR SPLASH BATHS OR POOLS; MASTS; FENCING; TENTS OR CANOPIES, IN GENERAL
- E04H4/00—Swimming or splash baths or pools
- E04H4/12—Devices or arrangements for circulating water, i.e. devices for removal of polluted water, cleaning baths or for water treatment
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01F—MEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
- G01F1/00—Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
- G01F1/05—Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow by using mechanical effects
- G01F1/06—Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow by using mechanical effects using rotating vanes with tangential admission
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01F—MEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
- G01F15/00—Details of, or accessories for, apparatus of groups G01F1/00 - G01F13/00 insofar as such details or appliances are not adapted to particular types of such apparatus
- G01F15/06—Indicating or recording devices
- G01F15/061—Indicating or recording devices for remote indication
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01K—MEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
- G01K3/00—Thermometers giving results other than momentary value of temperature
- G01K3/005—Circuits arrangements for indicating a predetermined temperature
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01L—MEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
- G01L13/00—Devices or apparatus for measuring differences of two or more fluid pressure values
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01L—MEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
- G01L19/00—Details of, or accessories for, apparatus for measuring steady or quasi-steady pressure of a fluent medium insofar as such details or accessories are not special to particular types of pressure gauges
- G01L19/08—Means for indicating or recording, e.g. for remote indication
- G01L19/086—Means for indicating or recording, e.g. for remote indication for remote indication
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R19/00—Arrangements for measuring currents or voltages or for indicating presence or sign thereof
- G01R19/165—Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values
- G01R19/16566—Circuits and arrangements for comparing voltage or current with one or several thresholds and for indicating the result not covered by subgroups G01R19/16504, G01R19/16528, G01R19/16533
- G01R19/16571—Circuits and arrangements for comparing voltage or current with one or several thresholds and for indicating the result not covered by subgroups G01R19/16504, G01R19/16528, G01R19/16533 comparing AC or DC current with one threshold, e.g. load current, over-current, surge current or fault current
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C17/00—Arrangements for transmitting signals characterised by the use of a wireless electrical link
- G08C17/02—Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/02—Characteristics of apparatus not provided for in the preceding codes heated or cooled
- A61H2201/0221—Mechanism for heating or cooling
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5007—Control means thereof computer controlled
- A61H2201/501—Control means thereof computer controlled connected to external computer devices or networks
- A61H2201/5012—Control means thereof computer controlled connected to external computer devices or networks using the internet
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5023—Interfaces to the user
- A61H2201/5035—Several programs selectable
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5023—Interfaces to the user
- A61H2201/5043—Displays
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5058—Sensors or detectors
- A61H2201/5071—Pressure sensors
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5058—Sensors or detectors
- A61H2201/5082—Temperature sensors
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5058—Sensors or detectors
- A61H2201/5087—Flow rate sensors
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61H—PHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
- A61H2201/00—Characteristics of apparatus not provided for in the preceding codes
- A61H2201/50—Control means thereof
- A61H2201/5097—Control means thereof wireless
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04H—BUILDINGS OR LIKE STRUCTURES FOR PARTICULAR PURPOSES; SWIMMING OR SPLASH BATHS OR POOLS; MASTS; FENCING; TENTS OR CANOPIES, IN GENERAL
- E04H4/00—Swimming or splash baths or pools
- E04H4/12—Devices or arrangements for circulating water, i.e. devices for removal of polluted water, cleaning baths or for water treatment
- E04H4/129—Systems for heating the water content of swimming pools
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04H—BUILDINGS OR LIKE STRUCTURES FOR PARTICULAR PURPOSES; SWIMMING OR SPLASH BATHS OR POOLS; MASTS; FENCING; TENTS OR CANOPIES, IN GENERAL
- E04H4/00—Swimming or splash baths or pools
- E04H4/14—Parts, details or accessories not otherwise provided for
- E04H4/16—Parts, details or accessories not otherwise provided for specially adapted for cleaning
- E04H4/1654—Self-propelled cleaners
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25168—Domotique, access through internet protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37371—Flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/50—Machine tool, machine tool null till machine tool work handling
- G05B2219/50333—Temperature
Definitions
- the present disclosure relates to systems and methods for providing network connectivity and remote monitoring, optimization and control of pool/spa equipment.
- swimming pool equipment is conventionally controlled by an electronic pool controller at an equipment pad. Power is supplied from the controller and electrical subpanel to the pool equipment through an electrical conduit (e.g., hardwire). Alternatively, swimming pool equipment can be controlled by electrical circuit breakers in a subpanel at an equipment pad. Power is supplied from the subpanel to the pool equipment through an electrical conduit (e.g., hardwire). Without an electronic pool controller, any time-based control is typically an electro-mechanical clock wired in series between the subpanel and the pool equipment, thereby breaking one or both legs of the power supply to the pool equipment. To monitor or maintain conditions of pool equipment, the pool, pool water, or the pool environment, sensors or other data collection means typically reside at the equipment pad or the pool.
- Remote control of the pool and related equipment typically requires hard-wired communication between the pool controller (at the pad) and pool equipment, as well as wired or wireless communication between the pool controller and user interface. More recent remote control systems feature communication between the controller at the pad and a cloud server (e.g., via a home router), as well as communication between the user interface and the cloud server by cell or WiFi router.
- heating systems are commonly used to control water temperature. Such systems generally have one or more inlet pipes for receiving water to be heated, and one or more outlet pipes for delivering heated water from the heating system back to the pool/spa. While heating systems are commonly installed and used in pool and spa environments, there are a variety of problems that can arise in connection with the installation and operation of such devices.
- the piping to and from the heating system can be incorrectly installed (e.g., in a reverse fashion). This causes the water flowing from the pump to incorrectly enter the heating system's “outlet.”
- a variety of problems can occur, such as the inlet water temperature sensor reading the temperature of the water after being heated, and incorrectly concluding that the water has reached the desired temperature. This leads to the heating system repeatedly experiencing a short cycle. Backward water flow also renders other safety sensors and pressure-activated bypass loops ineffective. Further, such an improper installation scenario can be difficult to diagnose in the field.
- Heating systems commonly use pressure switches to measure water pressure and detect if the filter pump is running. This is a way of protecting the heating system from damage due to heating when the water flow is too low.
- pressure switches do not measure water flow rate directly, and can incorrectly indicate water flow. This can lead to damaged or destroyed heating systems.
- pool and spa heating systems that utilize heat pumps can also be susceptible to a variety of malfunctions.
- heat is transferred from the air into the refrigerant flowing inside the heat exchanger. This results in the air being cooled as it passes through the heat exchanger.
- water separates from the air, and moisture accumulates on the heat exchanger. This water typically drains off of the heat exchanger without harm to the heat exchanger.
- the heat exchanger surface temperature is below the freezing point of water, the moisture can freeze. This is a common issue with heat pumps of all types, not just pool heating systems.
- heat pumps are equipped with a control system that detects the frosting conditions in the heat exchanger and automatically executes a defrost cycle.
- Defrost cycles typically involve either deactivating the heat pump and allowing the heat exchanger to thaw out due to ambient air temperatures, or engaging a refrigerant reversing valve to heat the heat exchanger surface to thaw out the heat exchanger.
- a temperature sensor is usually attached to a refrigerant tube near the heat exchanger. The temperature sensor is used to measure the refrigerant temperature and identify if a defrost cycle is necessary. The duration of the defrost cycle might be a fixed time period, can continue until the measured refrigerant temperature is above a preset threshold, or a combination of both.
- refrigerant temperatures can drop and cause frosting due to malfunctions of the pool heater.
- Some of these malfunctions include a low refrigerant pressure, a low air flow across the heat exchanger, and a reduced heat transfer caused by buildup of dirt or other debris on the heat exchanger. These malfunctions can cause the low temperature condition, and be incorrectly treated as a “normal” amount of frost that can be remedied by executing a defrost cycle.
- refrigerant reversing valves in pool heating systems can be used to allow the user to either heat or cool the swimming pool, and they can be actuated in response to an automatically-executed defrosting routine. These reversing valves are actuated by a solenoid, and can sometimes be stuck in one position or the other.
- the present disclosure relates to systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment.
- “Internet-of-Things” functionality is provided for pool and spa equipment in a flexible and cost-effective manner, in various embodiments.
- network connectivity and remote monitoring/control of pool and spa equipment is provided by a network communication and local control subsystem installed in pool/spa equipment.
- network connectivity and remote monitoring/control of pool and spa equipment is provided by a pool/spa system controller interconnected with pool/spa equipment operating in conjunction with local and/or remote pool/spa control logic.
- network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a pool “hub” interconnected with pool/spa equipment operating in conjunction with remote pool/spa control logic.
- network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a pool “translator” interconnected with pool/spa equipment operating in conjunction with local and/or remote pool/spa control logic.
- network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a plurality of pool connectivity modules that communicate with pool/spa equipment, operating in conjunction with remote pool/spa control logic.
- network connectivity and remote monitoring and control of pool and spa equipment is provided by way of wireless communications provided directly in the pool/spa equipment and operating in conjunction with remote pool/spa control logic.
- network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a reduced-size “hub” interconnected with pool/spa equipment operating in conjunction with remote pool/spa control logic.
- network connectivity and remote monitoring and control of pool and spa equipment is provided by way of pool/spa chlorination system and controller that is interconnected with pool/spa equipment operating in conjunction with remote pool/spa control logic.
- pool logic which can be embodied as software code installed in any of the various embodiments of the present disclosure.
- Communication between devices, the controller, the router, the cloud, and/or the user interfaces can use a number of technologies, where each technology could provide an advantage in cost or reliability for each communication segment.
- Data for managing the pool and pool equipment e.g., relating to wind, time, temperature, humidity to manage heating, water features, skimmer operation, approaching storms, sunrise, sunset, etc.
- Sensors dedicated to specific pool equipment e.g., pressure sensors, flow sensors or temp sensors in the heater used to manage pump speed, control valve positions, etc.
- Smart switches could be installed between an existing conduit and the subpanel or device by a user (e.g., pool owner or pool professional), because installation of a new hard conduit is unnecessary (reducing the need for an electrician), or smart switches could be integrated into pool or spa equipment.
- a heater with an integrated smart switch could act as a hub for connectivity to the home router.
- the system of the present disclosure provides a modular relay, a wiring hub, and/or a control module that can be conveniently installed near pool/spa equipment, and which provides Internet-enabled remote control and connectivity of pool/spa components without requiring installation of complete (e.g., pad-mounted) pool/spa system controller.
- the modular relay, wiring hub, and/or control module allow owners of existing pool/spa equipment who do not currently own a pool/spa control system to enjoy the benefits of such a control system without requiring the installation, equipment, and expense associated with conventional pool/spa control systems.
- system of the present disclosure provides advanced heating and cooling functionality and enhanced diagnostics for pool/spa equipment via a plurality of sensors that can be conveniently installed near or within pool/spa equipment, and which provides Internet-enabled remote control and connectivity of pool/spa components.
- the system includes a first temperature sensor which measures a first temperature of water entering the heating system and a second temperature sensor which measures a second temperature of water exiting the heating system.
- the system further includes a control subsystem in communication with the first and second sensors, capable of determining whether the first temperature is greater than the second temperature. When the first temperature is greater than the second temperature, the control subsystem generates a diagnostic report that indicates that the heating system has been improperly installed.
- the systems and methods of the present disclosure detect low water flow rates through a heating system based on measurements of inlet and outlet water temperatures.
- the system includes a first temperature sensor which measures a first temperature of water entering the heating system and a second temperature sensor measuring a second temperature of water exiting the heating system.
- the system also includes a control subsystem in communication with the first and seconds temperature sensors, capable of determining a temperature rise by measuring a difference between the first temperature and the second temperature.
- the control subsystem further determines a maximum allowed temperature rise value for the heating system and whether the temperature rise is greater than the maximum allowed temperature rise. When the temperature rise is greater than the maximum allowed temperature rise, the system generates a diagnostic report indicating that the heating system has a low water flow rate.
- the systems and methods of the present disclosure can detect and diagnose a stuck reversing valve in a refrigeration system of pool and spa heating systems.
- the system includes a first temperature sensor measuring an ambient air temperature and a second temperature sensor measuring a refrigerant temperature.
- the system further includes a control subsystem in communication with the heating system.
- the control subsystem is capable of determining when the refrigerant temperature is less than a refrigerant threshold and whether the ambient temperature is less than or greater than an ambient threshold. When the ambient temperature is greater than the ambient threshold, the control subsystem transmits a diagnostic report and deactivates the heating system. When the ambient temperature is less than the ambient threshold, the control subsystem executes a defrost cycle.
- the systems and methods of the present disclosure can detect and correct a stuck reversing valve in a refrigeration system of a heating system.
- the system includes a first temperature sensor measuring a first temperature of water entering a heater and a second temperature sensor measuring a second temperature of water exiting the heater.
- the system further includes a control subsystem in communication with the heating system.
- the control subsystem is capable of determining whether the heating system is in a heating mode or a cooling mode and determining when a reversing value is stuck.
- the reversing valve is stuck in the heating mode when the second water temperature is lower than the first water temperature and the reversing valve is stuck in the cooling mode when the second water temperature is greater than the first water temperature.
- the control subsystem is further capable of cycling the reversing valve to unstick and enable the reversing valve to function properly.
- FIG. 1 is a diagram illustrating the system of the present disclosure
- FIG. 2 is a block diagram illustrating components of the subsystems of FIG. 1 ;
- FIG. 3 is a diagram illustrating various types of control logic in accordance with the present disclosure
- FIG. 4 is a diagram illustrating processing steps carried out by the system of FIGS. 1 - 2 ;
- FIG. 5 is a diagram illustrating another embodiment of the present disclosure.
- FIG. 6 is a flowchart illustrating processing steps carried out by the system of FIG. 5 ;
- FIG. 7 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIG. 8 is a flowchart illustrating processing steps carried out by the system of FIG. 7 ;
- FIG. 9 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIG. 10 is a flowchart showing processing steps carried out by the system of FIG. 9 ;
- FIG. 11 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIG. 12 is a diagram illustrating processing steps carried out by the system of FIG. 11 ;
- FIG. 13 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIG. 14 is a flowchart illustrating processing steps carried out by the system of FIG. 13 ;
- FIG. 15 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIGS. 16 A- 16 B are diagram illustrating another embodiment of the system of the present disclosure.
- FIG. 17 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIG. 18 is a diagram illustrating the pump control logic of FIG. 3 ;
- FIGS. 19 A- 19 AU are flowcharts illustrating processing steps of the pump control logic of FIG. 3 ;
- FIG. 20 is a diagram illustrating chemistry automation control logic of FIG. 3 ;
- FIGS. 21 A- 21 I are flowcharts illustrating processing steps of the chemistry automation control logic of FIG. 3 ;
- FIG. 22 is a diagram illustrating the heater control logic of FIG. 3 ;
- FIGS. 23 A- 23 J are flowcharts illustrating processing steps of the heater control logic of FIG. 3 ;
- FIG. 24 is a diagram illustrating the lighting control logic of FIG. 3 ;
- FIGS. 25 A- 25 AB are flowcharts illustrating processing steps of the lighting control logic of FIG. 3 ;
- FIG. 26 is a diagram illustrating the pool cleaner control logic of FIG. 3 ;
- FIGS. 27 A- 27 O are flowcharts illustrating processing steps of the pool cleaner control logic of FIG. 3 ;
- FIG. 28 is a diagram illustrating the valve actuator control logic of FIG. 3 ;
- FIGS. 29 A- 29 I are flowcharts illustrating processing steps of the valve actuator control logic of FIG. 3 ;
- FIG. 30 is a diagram illustrating water feature control logic of FIG. 3 ;
- FIGS. 31 A- 31 F are flowcharts illustrating processing steps of the water feature control logic of FIG. 3 ;
- FIG. 32 is a diagram illustrating pool control logic of FIG. 3 ;
- FIGS. 33 A- 33 AH are flowcharts illustrating processing steps of the pool control logic of FIG. 3 ;
- FIGS. 34 A- 34 J are diagrams illustrating another embodiment of the system of the present disclosure.
- FIG. 35 is a diagram illustrating another embodiment of the system of the present disclosure.
- FIGS. 36 - 40 are diagrams illustrating further embodiments of the system of the present disclosure.
- FIG. 41 is a flowchart illustrating an installation method in accordance with the present disclosure.
- FIGS. 42 A- 42 I are diagrams illustrating the installation method of FIG. 41 ;
- FIG. 43 is a diagram illustrating a recommendation system for recommending upgrades in pool/spa equipment
- FIG. 44 is a flowchart illustrating processing steps carried out by the system of FIG. 43 for recommending upgrades in pool/spa equipment;
- FIGS. 45 - 48 are user interface screens for generated by the recommendation system of FIG. 43 .
- FIG. 49 is a diagram illustrating a monitoring and control system in accordance with the present disclosure.
- FIG. 50 is a diagram illustrating the system of FIG. 49 ;
- FIG. 51 is a block diagram illustrating control logic of the system of FIG. 49 ;
- FIG. 52 is a flowchart illustrating processing steps carried out by the system of FIG. 49 ;
- FIG. 53 is a flowchart illustrating processing steps carried out by the system of FIG. 49 ;
- FIGS. 54 A and 54 B are graphical illustrations of heater cycles of the system of FIG. 49 ;
- FIG. 55 is a flowchart illustrating processing steps carried out by the system of FIG. 49 ;
- FIG. 56 is a flowchart illustrating processing steps carried out by the system of FIG. 49 ;
- FIG. 57 is a flowchart illustrating processing steps carried out by the system of FIG. 49 ;
- FIGS. 58 - 68 are user interface screens generated by the system of FIG. 49 ;
- FIG. 69 is a flowchart illustrating processing steps carried out by the system of FIG. 49 ;
- FIG. 70 is a diagram illustrating a sensor hub of the system of FIG. 49 ;
- FIGS. 71 - 72 are user interface screens generated by the system of FIG. 49 ;
- FIG. 73 is a block diagram illustrating components of an embodiment of the heating/cooling system of FIG. 1 ;
- FIGS. 74 A-D are flowcharts illustrating processing steps carried out by the heating/cooling system of FIG. 73 ;
- FIG. 75 is a block diagram illustrating components of an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 76 is a flowchart illustrating processing steps carried out by the heating/cooling system of FIG. 75 ;
- FIG. 77 is a block diagram illustrating components of an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 78 is a flowchart illustrating processing steps carried out by the heating/cooling system of FIG. 77 ;
- FIG. 79 is a block diagram illustrating components of an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 80 is a flowchart illustrating processing steps carried out by the heating/cooling system of FIG. 79 ;
- FIG. 81 is a block diagram illustrating components of an embodiment of the heating/cooling system of FIG. 1 ;
- FIGS. 82 - 83 are user interface screens generated by the heating/cooling system of FIG. 81 ;
- FIG. 84 is a block diagram illustrating a component schematic capable of being implemented in an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 85 is a block diagram illustrating components of an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 86 is a diagram illustrating an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 87 is a flowchart illustrating process steps carried out by the embodiment of the system of FIG. 86 for detecting an improperly installed heating system based on measurements of inlet and outlet water temperature;
- FIG. 88 is a flowchart illustrating process steps carried out by the embodiment of the system of FIG. 86 for detecting a low water flow rate through a heating system based on measurements of inlet and outlet water temperature;
- FIG. 89 is an illustration showing an embodiment of the heating/cooling system of FIG. 1 ;
- FIG. 90 is a flowchart illustrating process steps carried out by the embodiment of the system of FIG. 89 for identifying frost conditions in a heating system.
- FIG. 91 is a flowchart illustrating process steps carried out by the embodiment of the system of FIG. 89 for detecting and correcting a stuck reversing valve in a refrigeration system of a heating system.
- the present disclosure relates to systems and methods for providing network connectivity and remote monitoring, optimization and control of pool/spa equipment, as discussed in detail below in connection with FIGS. 1 - 91 .
- FIG. 1 is a diagram illustrating the system 10 of the present disclosure.
- the system 10 includes, but is not limited to, a plurality of network communication and local control subsystems 12 a - 12 h which could be installed in or connected to a plurality of pool and spa equipment 14 a - 14 h , so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a - 14 h .
- the subsystems 12 a - 12 h could communicate with each other over a network 16 , which could include, but is not limited to, the Internet.
- the subsystems 12 a - 12 h provide “Internet-of-Things” functionality for the plurality of pool and spa equipment 14 a - 14 h .
- subsystems 12 a - 12 h could further include a “big data” subsystem, subsystems for receiving input from manufacturers/factories, subsystems for receiving external data/input (e.g., data from the Internet), and subsystems for receiving input from customers.
- a “big data” subsystem subsystems for receiving input from manufacturers/factories
- subsystems for receiving external data/input e.g., data from the Internet
- subsystems for receiving input from customers e.g., data from the Internet
- the subsystems 12 a - 12 h could include control logic for allowing each of the devices 14 a - 14 h to interact with each other (e.g., to exchange data and commands for controlling each other), as well as to be remotely controlled by another system such as a remote server, a “cloud” based control system, a remote computer system, a smart device (e.g., smart phone, smart speaker, smart chip embedded in the body), etc., and combinations thereof as will be discussed in greater detail below.
- a remote server e.g., a “cloud” based control system
- a remote computer system e.g., a smart device, smart phone, smart speaker, smart chip embedded in the body
- the pool and spa equipment 14 a - 14 h could include various types of pool and spa equipment, such as a pump 14 a , a heating/cooling system 14 b , a sanitization system 14 c , a water feature or miscellaneous subsystem 14 d , a valve actuator 14 e , a pool/spa control system 14 f , a pool cleaner 14 g , and/or a lighting system 14 h .
- the heating/cooling system 14 b may also describe, or be described as, a heating system, heater, cooling system, cooler, or any combination thereof. Additionally, as can be seen in FIG.
- the subsystems 12 a - 12 h could also communicate with one or more servers 18 , and/or with one or more smart devices 20 (e.g., phone, tablet, computer systems, etc.), via the network 16 .
- an on-site control processor 19 could be in communication with the various systems shown in FIG. 1 .
- the on-site control processor 19 could be a pool/spa control system installed at the location of a pool or spa, a reduced-functionality pool/spa control system, or another type of control system. Examples of such systems will be described in detail below.
- FIG. 2 is a block diagram illustrating components of the subsystems 12 a - 12 h in greater detail.
- a variety of subsystem components could be provided for providing network connectivity for pool and spa equipment via a multitude of wired and wireless means.
- the subsystems 12 a - 12 h could be installed in pool/spa equipment (e.g., within the physical housings of the equipment 14 a - 14 h ), or connected thereto, to provide network connectivity to each device.
- the subsystems 12 a - 12 h can be provided as “after-market” components that provide network connectivity and remote monitoring and control for pool/spa equipment that does not ordinarily include such connectivity.
- the subsystems 12 a - 12 h allow for a wide variety of wired and wireless connections to the pool/spa equipment.
- a smart telephone could directly connect with pool or spa equipment via a Bluetooth, WiFi, RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.), or satellite connection, via the subsystems 12 a - 12 h .
- a home computer could connect to pool/spa equipment using a home WiFi network, via the subsystems 12 a - 12 h or by way of a wired Ethernet connection to the pool/spa equipment.
- a remote server or “cloud” platform could connect to the pool/spa equipment via the subsystems 12 a - 12 h , to allow for remote and/or web-based control.
- a processor 22 provides local processing capability for each of the subsystems 12 a - 12 h .
- the processor 22 is in communication with a random access memory 24 , and one or more non-volatile memories 28 .
- the non-volatile memory 28 could store one or more local control programs 30 for providing local control of the pool or spa equipment in which the subsystem is installed.
- a TCP/IP stack 26 is provided for allowing each of the subsystems to obtain an Internet protocol address, and to provide Internet connectivity for each of the subsystems.
- the processor 22 could communicate with a wired communication subsystem 36 , a wireless communication subsystem 34 , a sensor interface subsystem 38 , and an actuator interface subsystem 40 via a bus 32 .
- the wired communication subsystem 36 could include an Ethernet transceiver 42 , and a serial transceiver 44 .
- the serial transceiver could support one or more suitable serial communication protocols, such as RS-485, RS-232, USB, etc.
- the wireless communication subsystem 34 could include a WiFi transceiver 46 , a Bluetooth (or Bluetooth LE) transceiver 48 , a cellular data transceiver 50 , a satellite transceiver 52 , and infrared transceiver 54 , and a radiofrequency/RF mesh transceiver 56 .
- the cellular data transceiver 50 could support one or more cellular data communications protocols, such as 4G, LTE, 5G, etc.
- the radiofrequency/RF mesh transceiver 56 could support one or more RF mesh network protocols, such as ZWave, Zigbee, Thread, Weave, etc.
- the sensor interface subsystem 38 could include analog connection interfaces, digital connection interfaces, and one or more analog-to-digital converters 58 .
- the actuator interface subsystem 40 could include analog connection interfaces, digital connection interfaces, and one or more digital-to-analog converters 60 .
- the sensor interface subsystem allows the network communication and local control subsystem to obtain information from a wide variety of sensors associated with pool/spa equipment, as well as other types of sensors.
- the actuator interface subsystem 40 allows the network communication and local control subsystem to control one or more pieces of pool/spa equipment connected to the subsystem.
- the wired and wireless communication subsystems 34 , 36 allow the network communication and local control subsystem to connect via various wired and wireless communication means to the Internet. This allows a piece of pool or spa equipment to transmit operational and status information to one or more remote devices, as well as to be remotely controlled by such devices.
- FIG. 3 is a diagram illustrating various types of control logic in accordance with the present disclosure, for controlling various types of pool and spa equipment.
- the control logic indicated generally as pool control logic 70 , could be embodied as programmed instructions (software code) stored on a non-transitory computer-readable medium, and could include water feature control logic 72 , valve actuator control logic 74 , cleaner control logic 76 , lighting control logic 78 , heater control logic 80 , chemistry automation control logic 82 , and pump control logic 84 .
- Such logic could be installed locally (e.g., in one or more of the subsystems 12 a - 12 h ), on a remote server or computer system (e.g., in the server 18 or the smart phone/computer system 20 ), in the “cloud,” or in any combination of such systems.
- the functions provided by the logic 70 - 84 is described in greater detail below.
- the various logic operations disclosed herein could be trigged by (e.g., receive and a signal from) various sensors and/or inputs to the system, as needed. Such inputs could be periodically monitored by the pool control logic 70 of the system 10 .
- FIG. 4 is a diagram illustrating processing steps, indicated generally at 90 , carried out by the system of FIGS. 1 - 2 .
- IoT devices refers to pool/spa equipment having Internet-of-Things functionality provided in accordance with the present disclosure, such as the equipment 14 a - 14 h of FIG. 1 .
- the system monitors IoT devices for incoming operational data.
- step 94 a decision is made as to whether incoming operational data has been received. If a negative determination has been made, control returns to step 92 . Otherwise, step 96 occurs, wherein the system receives incoming operational data.
- step 98 the system processes instructions, operational data, and external data, discussed hereinbelow. Then, in step 100 , the system optimizes operational set points. In step 102 , the system transmits setpoints to one or more devices (one or more of the pool/spa equipment 14 a - 14 h ) for use thereby.
- step 104 the system also monitors for incoming instructions. A determination is made in step 105 as to whether an incoming instruction has been received. If a negative determination has been made, control returns to step 104 . Otherwise, in step 106 , the system receives one or more incoming instructions. Then, control proceeds to step 98 , discussed above. Additionally, in step 107 , the system also monitors for updated external data (e.g., web data). In step 108 , a decision has been made as to whether updated external data is available. If a negative determination has been made, control returns to step 107 . Otherwise, step 109 occurs, wherein the system receives the updated external data. Then, control proceeds to step 98 , discussed above.
- updated external data e.g., web data
- FIG. 5 is a diagram illustrating another embodiment of the present disclosure, indicated generally at 110 .
- network connectivity and remote monitoring/control of pool and spa components is provided by way of a central pool/spa system controller 114 f .
- the pool/spa system controller 114 f could be the OMNILOGIC pool/spa system controller manufactured and sold by Hayward Industries Inc.
- the pool/spa system controller 114 f could communicate with one or more valve actuators 114 e , a single speed pump 113 , a variable speed pump 114 a , pool/spa lighting systems 114 h , a pool/spa heating or cooling system 114 b , and/or a pool/spa chlorination system 114 c , such as a salt chlorinator.
- the pool/spa control system 114 f could receive input from one or more external sensors 126 and could provide “personality” by way of remotely provisioned logic for the devices.
- the pool/spa control system 114 f communicates with a remote server, such as the server 118 , via a WiFi router 122 and the Internet.
- the server 118 could communicate with one or more remote control systems 120 , such as a smart device (e.g., smart phone, smart speaker, smart TV, embedded device), a computer system, a tablet computer, etc.
- the control system 114 f could also receive external web data 131 via the Internet and WiFi router 122 (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use by pool control logic 170 , described hereinbelow. Additionally, the WiFi router 122 could communicate with a home management system 125 in a peer-to-peer arrangement, if desired. The server 118 could also access big data 127 and perform analytics 129 in connection with various types of information relating to the pool/spa equipment, usage thereof, and status information relating thereto. Further, the server 118 communicate with one or more third-party smart devices 124 via a suitable cloud application programming interface (API).
- API cloud application programming interface
- the third-party smart devices 124 could also remotely communicate with and control the pool/spa equipment shown in FIG. 5 .
- the pool/spa control system 114 f could include pool logic 170 stored therein for allowing central control and monitoring of pool/spa equipment at the pool/spa site.
- the pool logic 170 could include any of the various pool control logic described herein. Additionally, such logic 170 could also be stored in the server 118 , or at another location.
- FIG. 6 is a flowchart, indicated generally at 130 , illustrating processing steps carried out by the system of FIG. 5 .
- the pool/spa system controller 114 f of FIG. 5 monitors connected devices for incoming operational data. Then, in step 134 , a decision is made as to whether incoming operational data has been received. If not, control returns to step 132 . Otherwise, step 136 occurs, wherein the pool/spa system controller receives incoming operational data. Then, in step 138 , the pool/spa system controller 114 f processes instructions, operational data, and external data, discussed hereinbelow. Then, in step 140 , the pool/spa system controller 114 f optimizes operational set points.
- the pool/spa system controller transmits set points to the connected devices, such as the pool/spa equipment 113 , 114 a , 114 h , 114 b , and 114 c shown in FIG. 5 .
- the pool/spa system controller 114 f could also transmit such setpoint information to other devices, such as the smart devices 124 illustrated in FIG. 5 .
- step 150 the pool/spa system controller monitors for incoming instructions.
- step 152 a determination is made as to whether an incoming instruction has been received. If not, control returns to step 150 . Otherwise, step 150 occurs, wherein the pool/spa system controller 114 f receives incoming instructions. Then, processing proceeds to step 138 , discussed above.
- step 156 the pool/spa system controller 114 f monitors for updated external data (e.g., web-supplied data, such as weather information and other information from remote data sources).
- step 158 the system determines whether updated external data is available. If not, control returns to step 156 . Otherwise step 160 occurs, wherein the pool/spa system controller receives the updated external data. Then, control proceeds to step 138 , discussed above.
- updated external data e.g., web-supplied data, such as weather information and other information from remote data sources.
- step 158 the system determines whether updated external data is available. If not, control returns to step 156 . Otherwise step 160 occurs, wherein the
- FIG. 7 is a diagram illustrating another embodiment of the system of the present disclosure, wherein remote connectivity is provided by way of a pool “hub” component 230 .
- the pool hub component 230 includes a subset of the functional features of the pool/spa system controller 114 f of FIG. 5 , such as basic on/off control relays, the ability to select a pump speed, the ability to select heater temperature, the ability to control pool light colors and shows, the ability to set equipment schedules, and the ability to interlock one pool/spa component with another pool/spa component.
- the pool hub communicates with and controls a number of pool/spa components, such as a single speed pump 213 , a variable speed pump 214 a , pool/spa lighting systems 214 h , a pool/spa heating system 214 b , and a pool/spa chlorination system 214 c .
- the pool hub 230 can control a valve actuator 214 e and can receive various sensor inputs 226 and 228 , such as temperature sensors, wind speed sensors, runtime sensors, current/voltage usage sensors, flow sensors, heater pressure sensors, water temperature sensors, chlorine sensors, pH/ORP sensors, etc.
- sensor inputs 226 and 228 such as temperature sensors, wind speed sensors, runtime sensors, current/voltage usage sensors, flow sensors, heater pressure sensors, water temperature sensors, chlorine sensors, pH/ORP sensors, etc.
- Such sensors could be positioned internally within the hub, external thereto, or a combination thereof.
- the pool hub 230 could be powered by electrical current supplied by a breaker panel 217 or by photovoltaic (e.g., solar) cells and/or systems.
- Breaker panel 217 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- the pool hub 230 could communicate with a remote server 218 via a WiFi router 222 and a network connection such as the Internet.
- the server to 218 could include pool logic 270 which can be used to remotely monitor and control operation of the devices to 213 , 214 a , 214 h , 214 b , and 214 c .
- the pool logic 270 could include any of the pool logic discussed herein. Additionally, the server 218 could communicate with one or more remote control devices 220 , such as a smart cellular telephone, a remote computer, a tablet computer, etc. The server 218 could also receive external web data 231 via the Internet (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use by pool logic 270 . Further, the server 218 could communicate with one or more third-party devices 224 via an appropriate cloud API. Further, the server 218 could process big data 232 and perform analytics 234 on various pool/spa data. Still further, the server 218 could communicate with a home management system 225 , if desired.
- the server 218 could communicate with a home management system 225 , if desired.
- FIG. 8 is a flowchart illustrating processing steps, indicated generally at 240 , carried out by the system of FIG. 7 .
- the pool hub 230 monitors connected devices for incoming operational data.
- a determination is made as to whether an incoming operational data has been received. If not, control returns to step 242 . Otherwise, step 246 occurs, wherein the pool hub 230 receives incoming operational data.
- the pool 230 transmits incoming instructions and operational data to the server 218 .
- the server 218 receives the incoming instructions and operational data from the pool hub 230 .
- step 252 the server 218 processes the incoming instructions, operational data, and external data, discussed hereinbelow.
- step 254 the server 218 optimizes operational set points.
- step 256 the server 218 transmits operational setpoints to the pool hub 230 .
- step 258 the pool hub 230 receives the operational set points.
- step 260 the pool hub 230 transmits the operational setpoints to the connected devices.
- step 262 the pool hub 230 optionally transmits the operational setpoints to one or more smart devices, such as the third-party smart devices 224 of FIG. 7 .
- step 263 the pool hub 230 monitors smart devices for incoming operational data.
- step 265 a decision is made as to whether incoming operational data has been received. If not, control returns to step 263 . Otherwise, step 246 occurs, where in the incoming operational data is received at the pool hub 230 . Then, control passes to step 248 , discussed above.
- step 264 the pool hub 230 monitors for incoming instructions. Then, in step 266 , a determination is made as to whether an incoming instruction has been received. If a negative determination has been made, control returns to step 264 . Otherwise, step 268 occurs, wherein the pool hub 230 receives the incoming instructions. Then, control passes to step 248 , discussed above.
- step 272 the server 218 monitors for updated external data, such as web-supplied data including weather data and other data.
- updated external data such as web-supplied data including weather data and other data.
- step 274 a determination is made as to whether updated external data is available. If not, control returns to step 272 . Otherwise, step 276 occurs, wherein the updated external data is received at the server 218 . Then, control passes to step 252 , discussed above.
- FIG. 9 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 310 .
- a pool command “translator” module 330 is provided, which includes a complete set of pool logic 370 .
- the pool logic 370 could include any of the pool logic discussed herein.
- the translator 330 could communicate with one or more external relays 329 . Additionally, the translator 330 could communicate with a plurality of pool/spa components, including valve actuators 314 e , a single speed pump 313 , a variable speed pump 314 a , pool/spa lighting systems 314 h , a pool/spa heating system 314 b , and a pool/spa chlorination system 314 c .
- the translator 330 could receive electrical power from a breaker panel 317 or from photovoltaic (e.g., solar) cells and/or systems.
- Breaker panel 317 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- the translator 330 could receive information from various sensors such as external sensors 326 and internal sensors 328 . Such sensors could include, but are not limited to, temperature sensors, wind speed sensors, runtime sensors, current/voltage usage sensors, flow sensors, heat pressure sensors, water temperature sensors, chlorine sensors, PH/ORP sensors, etc.
- the translator 330 could also receive external web data 331 via the Internet and WiFi router 322 (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use by pool logic 370 .
- the translator 330 could communicate with the remote server 318 via a WiFi router 322 and a network connection such as the Internet.
- the server 318 could communicate with the remote control system 320 , such as a smart cellular telephone, a remote computer, a tablet computer, etc. Additionally, the server 318 could process big data 332 and perform analytics 334 on pool/spa data, using a suitable API. Further, the server 318 could communicate with one or more third-party smart devices 324 , using a suitable cloud API. Still further, the server 318 could communicate with a home management system 325 , if desired.
- FIG. 10 is a flowchart showing processing steps, indicated generally at 340 , carried out by the system of FIG. 9 .
- the translator 330 monitors connected devices for incoming operational data.
- step 334 a decision is made as to whether incoming operational data has been received. If not, control returns to step 342 . Otherwise, step 346 occurs, wherein the translator 330 receives the incoming operational data. Then, step 360 occurs, wherein the translator processes instructions, operational data, and external data, discussed hereinbelow.
- step 362 the translator optimizes operational set points.
- step 364 the translator transmits the setpoints to the connect devices (e.g., to the components 313 , 314 a , 314 e , 314 h , 314 b , and 314 c ).
- the translator could transmit the setpoints to one or more smart devices, such as the third-party smart devices 324 .
- step 348 the translator 330 monitors smart devices for incoming operational data.
- step 350 a decision is made as to whether incoming operational data has been received. If not, control returns to step 348 . Otherwise, step 352 occurs, wherein the translator 330 receives incoming operational data. Then, control passes to step 360 , discussed above.
- step 354 the translator 330 monitors for incoming instructions.
- step 356 a decision is made as to whether incoming instructions have been received. If not, control returns to step 354 . Otherwise, step 358 occurs, wherein the translator 330 receives incoming instructions. Then, control passes to step 360 , discussed above.
- step 368 the translator 330 monitors for updated external data, such as web data. Such data could include, but is not limited to, remote weather data, etc.
- step 372 a decision is made as to whether updated external data is available. If not, control returns to step 368 . Otherwise, step 374 occurs, wherein the translator 330 receives the updated external data. Then, control passes to step 360 , discussed above.
- FIG. 11 is a diagram illustrating another embodiment of the system, indicated generally at 410 .
- remote connectivity is provided by way of a plurality of connectivity modules 430 a - 430 e .
- Each of these modules could include a combination of high and/or low voltage relays for connection to various pool and spa equipment, such as valve actuators 414 e , a single speed pump 413 , a variable speed pump 414 a , pool/spa lighting systems 414 h , pool/spa heating system 414 b , and/or pool/spa chlorination system 414 C.
- Connectivity could be provided to the pool/spa equipment additionally using WiFi, Bluetooth, or RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.) connectivity.
- the connectivity modules could provide WiFi for every unit, could adapt for usage with legacy devices, could provide “personality” by way of remotely provisioned logic for the devices, could remember limp mode schedules during a WiFi outage, and could also include start/stop buttons and an LS bus gate way, if desired.
- the modules could be powered by a breaker panel 427 or by photovoltaic (e.g., solar) cells and/or systems.
- Breaker panel 427 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. Additionally, each of the modules could communicate with a remote server 418 by a WiFi router 422 and a network connection, such as the Internet.
- the pool/spa control logic 470 could be provided in the server 418 for remotely controlling and monitoring the pool/spa equipment.
- the pool logic 470 could include any of the pool logic discussed herein.
- the server 418 could also receive external web data 431 via the Internet (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use by pool logic 470 .
- the server 418 could communicate with one or more remote control devices 420 , such as a smart phone, a remote computer, a tablet computer, etc.
- the server 418 could access big data 432 and perform analytics 434 on pool/spa data, if desired.
- the server 418 could also communicate with one or more third-party smart devices 424 , via a suitable cloud API.
- the server 418 could communicate with a home management system 425 , if desired.
- FIG. 12 is a diagram illustrating processing steps, indicated generally at 440 , carried out by the system of FIG. 11 .
- the pool connectivity modules 430 a - 430 e monitor smart devices for incoming operational data.
- step 444 a determination is made as to whether incoming operational data has been received. If not, control returns to step 442 . Otherwise, step 446 occurs, wherein the pool connectivity modules each receive the incoming operational data. Then, and step 448 , the pool conductivity modules 430 a - 430 e transmit operational data to the server 418 .
- step 450 the operational data is received at the server 418 .
- step 452 the server 418 processes the incoming instructions, operational data, and external data, discussed hereinbelow. Then, in step 454 , the server 418 optimizes operational support. In step 456 , the server 418 transmits the operational set points to the connected devices (e.g., to the devices 413 , 414 a , 414 e , 414 h , 414 b , and 414 c ). In step 458 , the server transmits operational set points for the smart devices to the pool connectivity modules 430 a - 430 e . In step 460 , the pool conductivity modules 430 a - 430 e receive the operational setpoints for the smart devices. Then, in step 462 , the modules transmit the operational set points to the smart devices.
- the connected devices e.g., to the devices 413 , 414 a , 414 e , 414 h , 414 b , and 414 c .
- step 458 the server transmits operational
- step 464 the server for 18 monitors connected devices for incoming operational data.
- step 466 a determination is made as to whether incoming operational data has been received. If not, control returns to step 464 . Otherwise, step 450 occurs, wherein the server 418 receives the operational data. Control then passes to step 452 , discussed above.
- step 468 the server 418 monitors for incoming instructions.
- step 470 a determination is made as to whether the incoming instructions have been received. If not, control returns to step 468 . Otherwise, step 472 occurs, wherein the server 418 receives the incoming instructions. Then, control passes to step 452 , discussed above.
- step 474 the server 418 monitors for updated external data, such as web data including, but not limited to, remote weather information, etc. Then, in step 476 , a determination is made as to whether updated external data is available. If not, control passes to step 474 . Otherwise, step 478 occurs, wherein the updated external data is received at the server 418 . Then, control passes to step 452 , discussed above.
- updated external data such as web data including, but not limited to, remote weather information, etc.
- FIG. 13 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 510 .
- wireless connectivity is provided directly within pool/spa equipment, allowing such equipment to communicate directly to the Internet.
- pool spa equipment such as a single speed pump 513 , a variable speed pump 5148 , pool/spa lighting system 514 h , heater 514 b , and/or chlorinator 514 c , in addition to valve actuators 514 e , each have built-in wireless communications subsystems, such as WiFi, Bluetooth, radiofrequency/RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.), and or cellular wireless communication subsystems.
- WiFi WiFi
- Bluetooth radiofrequency/RF mesh
- RF mesh e.g., ZWave, Zigbee, Thread, Weave, etc.
- Each of these devices can communicate directly with the Internet via a WiFi router 522 .
- external sensors 526 could also communicate with the WiFi router 522 , and could also include built-in wireless communications such as WiFi, Bluetooth, radiofrequency/RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.), and cellular communications.
- the sensors 526 could include, but are not limited to, heater pressure sensors, water temperature sensors, chlorine sensors, pH/aware pressure sensors, etc. It is noted that each of the pool/spa components could include the ability to remember schedules during a WiFi outage (limp mode) as provisioned by remote pool logic. Additionally, each of these devices could include start/stop buttons, if desired, for stand-alone operation.
- a breaker panel 527 could provide electrical power to each of the pool/spa components.
- Breaker panel 527 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the pool/spa components.
- the server 518 could include pool logic 570 for remotely controlling and/or monitoring the pool/spa equipment.
- the pool logic 570 could be any of the pool logic discussed herein.
- the server 518 could receive external web data 531 via the Internet (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use by pool logic 570 .
- the server 518 could also communicate with one or more remote control devices 520 , such as smart telephones, remote computer systems, tablet computers, etc.
- the server 518 could also access big data 532 and perform analytics 534 on pool/spa data, if desired.
- the server 518 could communicate with one or more third-party smart devices 524 , via a suitable cloud API. Still further, the server 518 could communicate with a home management system 525 , if desired.
- FIG. 14 is a flowchart illustrating processing steps, indicated generally at 540 , carried out by the system of FIG. 13 .
- the server 518 monitors connected devices for incoming operational data. Then, in step 544 , a determination is made as to whether incoming operational data has been received. If not, control returns to step 542 . Otherwise, step 546 occurs, wherein the server 518 receives incoming operational data. Then, in step 548 , the server 518 processes the instructions, the operational data, and external data, discussed hereinbelow.
- the server 518 optimizes operational set points. Then, in step 552 , the server transmits the setpoints to the connected pool/spa devices, such as those devices shown in FIG. 13 .
- step 554 the server 518 monitors for incoming instructions. Then, in step 556 , a determination is made as to whether incoming instructions have been received. If not, control returns to step 554 . Otherwise, step 558 occurs, wherein the server 518 receives incoming instructions. Then, step 548 , discussed above, is invoked.
- step 560 the server 518 monitors for updated external data, such as web data including, but not limited to remote weather data, etc.
- updated external data such as web data including, but not limited to remote weather data, etc.
- step 562 a decision is made as to whether updated external data is available. If not, control returns to step 560 . Otherwise, step 564 occurs, wherein the server 518 receives the updated external data. Then, control passes to step 548 , discussed above.
- FIG. 15 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 610 .
- network connectivity and remote monitoring/control is provided by way of a reduced-size hub 646 which can be easily wall-mounted.
- the hub 646 provides wired and wireless connections for various pool and spa equipment, such as a variable speed pump 614 a , a single-speed pump 613 , a smart heater 614 b , a legacy heater 615 , a chlorination system 617 , any other type of chlorinator 614 c , a booster pump 619 , and a third-party pump 621 .
- Various relays 648 , 650 , 652 , and 654 could also be provided for controlling the pumps, if desired.
- the hub 646 could communicate with and control a smart valve actuator 614 e , and/or lighting system 614 h .
- Optional control relays 656 and power supplies 658 could also be in communication with the hub 646 .
- the hub 646 could provide a WiFi hotspot for allowing a homeowner's cellular telephone, tablet computer, or personal computer 644 to communicate with the hub 646 , and to control the pool/spa equipment shown in FIG. 15 .
- a breaker panel 627 provides electrical power to the various devices shown in FIG. 15 .
- Breaker panel 627 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown in FIG. 15 .
- a wall-mounted light controller 640 could communicate by Bluetooth and/or RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.) to the hub 646 for remotely controlling the lights 614 h .
- RF mesh e.g., ZWave, Zigbee, Thread, Weave, etc.
- a third-party Bluetooth and/or RF mesh-enabled switch 642 could also communicate with the hub 646 .
- the hub 646 could also communicate with the homeowner's WiFi router 622 for providing an Internet connection to the pool/spa components.
- a remote pool/spa server 618 could communicate with the router 622 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired.
- the server 618 could communicate with one or more remote computer systems 620 such as a smart phone, a tablet computer, a remote computer system, etc., if desired.
- the pool/spa control logic discussed herein could be installed in the server 618 , in the remote computer 620 , and/or in the smart phone 644 (e.g., by way of a pool control “app”), if desired.
- the server 618 could communicate with one or more third-party smart devices 624 by a suitable cloud API, and the server 618 could access big data 632 and perform analytics 634 on pool/spa data, if desired.
- the server 618 could also communicate with a home management system 638 , if desired.
- FIG. 16 A is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 710 .
- network connectivity and remote monitoring/control is provided by way of a WiFi-enabled pool/spa chlorination system and controller 717 .
- the controller 717 provides connections for various pool and spa equipment, such as a variable speed pump 714 a , a single-speed pump 713 , a smart heater 714 b , a legacy heater 715 , a chlorination system 717 c , a booster pump 719 , and a third-party pump 721 .
- Various relays 749 , 750 , and 754 could also be provided for controlling the pumps, if desired.
- the controller 717 could communicate with and control a smart valve actuator 714 e , and/or lighting system 714 h .
- Optional control relays 756 and power supplies 758 could also be in communication with the controller 717 .
- a breaker panel 727 provides electrical power to the various devices shown in FIG. 16 A .
- Breaker panel 727 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown in FIG. 16 A .
- the controller 717 could also communicate with the homeowner's WiFi router 722 for providing an Internet connection to the pool/spa components.
- a remote pool/spa server 718 could communicate with the router 722 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired.
- the server 718 could communicate with one or more remote computer systems 720 such as a smart phone, a tablet computer, a remote computer system, etc., if desired.
- the pool/spa control logic discussed herein could be installed in the server 718 , in the remote computer 720 , or elsewhere, if desired.
- the server 718 could communicate with one or more third-party smart devices 724 by a suitable cloud API, and the server 718 could access big data 732 and perform analytics 734 on pool/spa data, if desired.
- the server 718 could communicate with a home management system 738 if desired.
- FIG. 16 B is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 4510 .
- network connectivity and remote monitoring/control is provided by way of a WiFi-enabled pool/spa variable speed pumping system and controller (also referred to herein in connection with FIG. 16 B as “variable speed pumping system,” “pumping system,” or “controller”), indicated generally at 4514 a .
- a variable speed pumping system can include a variable speed pump, a possessor/controller, memory, communications interface(s), and an input device, so that the variable speed pumping system can communicate with and/or control additional installed pool/spa equipment.
- pump control logic 84 could be installed/reside in variable speed pumping system 4514 a .
- any of the various processes in the embodiments described herein in connection with FIGS. 19 A- 19 AU could be incorporated into pump control logic 84 and installed in variable speed pumping system 4514 a , either alone or in any combination.
- any additional processes disclosed herein in connection with pool control logic 70 e.g., water feature control logic 72 , valve actuator control logic 74 , cleaner control logic 76 , lighting control logic 78 , heater control logic 80 , chemistry automation control logic 82
- the controller 4514 a provides connections for various pool and spa equipment, such as a pool/spa chlorination system 4517 , a single-speed pump 4513 , a smart heater 4514 b , a legacy heater 4515 , a chlorination system 4514 c , a booster pump 4519 , and a third-party pump 4521 .
- Various relays 4549 , 4550 , and 4554 could also be provided for controlling the pumps, if desired.
- Variable speed pumping system and controller 4514 a could include on-board or modularly upgradeable pool control components (e.g., communication modules, relays, temperature sensors, pressure sensors, flow sensors, etc.).
- variable speed pumping system 4514 a could control existing heaters (or heat pumps) using on-board or modularly upgradeable relays and temperature sensors.
- Pump control logic 84 discussed in greater detail hereinbelow, could also utilize multiple sensors for parallel plumbing circuits (e.g., branch plumbing).
- the controller 4514 a could communicate with and control a smart valve actuator 4514 e , and/or lighting system 4514 h .
- Optional control relays 4556 and power supplies 4558 could also be in communication with the controller 4514 a .
- variable speed pumping system and controller 4514 a could use the modularly upgradeable smart relays to control a variety of existing installed pool/spa equipment including single speed pumps, pressure cleaner booster pumps, LED and incandescent pool lights, and landscape lights.
- the modularly upgradeable control components can be used by pump control logic 84 to provide pump or system performance reporting and diagnostic functions (present and historical) including, but not limited to, phase current, torque, speed, horsepower, run time, and ramp rate.
- Pump control logic 84 could provide the system performance and diagnostic information to the cloud, or to a smart to a smart device via a Bluetooth or any of the other communication protocols disclosed herein.
- a breaker panel 4527 provides electrical power to the various devices shown in FIG. 16 B .
- Breaker panel 4527 could include one or more smart circuit breakers (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein, and/or conventional circuit breakers.
- photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown in FIG. 16 B .
- the controller 4514 a could also communicate with the homeowner's WiFi router 4522 for providing an Internet connection to the pool/spa components.
- a remote pool/spa server 4518 could communicate with the router 4522 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired.
- the server 4518 could communicate with one or more remote computer systems 4520 such as a smart phone, a tablet computer, a remote computer system, etc., if desired.
- the pool/spa control logic discussed herein could be installed in the variable speed pumping system and controller 4514 a , in the server 4518 , in the remote computer 4520 , or elsewhere, if desired.
- the server 4518 could communicate with one or more third-party smart devices 4524 by a suitable cloud API, and the server 4518 could access big data 4532 and perform analytics 4534 on pool/spa data, if desired.
- the server 4518 could communicate with a home management system 4538 if desired. It is also further complicated that any of the functions described herein could also be performed by the variable speed pumping system and controller 4514 a.
- the pumping system and controller 4514 a can be provided with a human machine interface or user interface device, indicated generally at 4560 .
- the user interface could include physical keys, a digital display, and/or a touchscreen 4562 , as shown in FIG. 16 B , any other suitable input technologies, or any combination thereof. It is also contemplated that any of the pool/spa equipment described herein could be provided with a similar user interface device.
- Providing a user interface device 4562 on pumping system and controller 4514 a enables the delivery of existing or enhanced features of local pool/spa equipment control and control of remote devices (e.g., beyond the pool area) to the pool owner via the pool pump, while also reducing costs to the pool owner (e.g., reducing hardware costs, installation expenses, etc.). Because every pool/spa must include at least one pump, providing control of and communication with additional equipment, connectivity, and monitoring (e.g., status and condition of pool and equipment) functionality of the pool environment via the pool pump can further reduce pool owner cost and significantly improve usability. By leveraging information obtained at the equipment pad, from remote/external devices, and/or via a connection to the internet, operation of the pumping system 4514 a and other devices can be further optimized.
- FIG. 17 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 810 .
- network connectivity and remote monitoring/control is provided by way of a reduced-size hub 860 which can be easily wall-mounted.
- the hub 860 provides wired and wireless connections for various pool and spa equipment, such as a variable speed pump 814 a , a single-speed pump 813 , a smart heater 814 b , a legacy heater 815 , a chlorination system 817 c , and other equipment (e.g., lighting equipment).
- the hub 860 could provide a WiFi hotspot for allowing a homeowner's cellular telephone, tablet computer, or personal computer 844 to communicate with the hub 846 , and to control the pool/spa equipment shown in FIG. 17 .
- a breaker panel 827 provides electrical power to the various devices shown in FIG. 17 .
- Breaker panel 827 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown in FIG. 17 .
- a wall-mounted light controller 840 could communicate by Bluetooth and/or RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.) to the hub 860 for remotely controlling lights. Additionally, a third-party Bluetooth and/or RF mesh-enabled switch 842 could also communicate with the hub 860 .
- the hub 860 could also communicate with the homeowner's WiFi router 822 for providing an Internet connection to the pool/spa components.
- a remote pool/spa server 818 could communicate with the router 822 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired. Additionally, the server 818 could communicate with one or more remote computer systems 820 such as a smart phone, a tablet computer, a remote computer system, etc., if desired.
- the server 818 is a cloud-based, virtual server, and the pool/spa control logic discussed herein is installed in the server 818 .
- the pool logic could be any of the pool logic discussed herein.
- the server 818 could communicate with one or more third-party smart devices 824 by a suitable cloud API, and the server 818 could access big data 832 and perform analytics 834 on pool/spa data, if desired.
- the server 818 could also communicate with a home management system 838 , if desired.
- FIG. 18 is a diagram 900 illustrating pump control logic 84 .
- Pump control logic 84 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically, pump control logic 84 can communicate with, or receive, user input data 902 , pump operational data 904 , pump factory specifications 906 , pump configuration parameters 908 , web data 910 , pool configuration parameters 912 , data from related devices 914 , health monitoring data 916 and/or external sensor data 918 .
- Pump control logic 84 can control variable speed pumps, designed for residential and commercial pool applications (as well as additional installed pool/spa equipment), providing flow and pressure for water circulation and operation of pool equipment.
- Variable speed pumps as described herein, could include a pump wet end, a motor, a variable frequency/speed drive, and a user interface (see FIG. 16 B ).
- the variable speed pump is used anytime a pool is in operation, which may be year-round and/or all-day based on a particular application (e.g. residential vs. commercial) or location.
- the pump control logic 84 can control the variable speed drive to operate in stand-alone mode, relay control mode, or via communication with Hayward automation, described hereinbelow.
- the pump In stand-alone mode, the pump operates independently of the pool control logic 70 . Stand-alone mode is programmable with respect to functions such as timers and preset speeds. In relay control mode, the pump operates according to inputs received from third party systems and devices using low voltage digital inputs. For example, the digital inputs could be used to select discrete timer speeds set in the pump user interface.
- the pump When communicating with Hayward automation, the pump is controlled by a variety of Hayward automation systems such as, but not limited to: OmniLogic®, ProLogic®, and OnCommand®. The pump could communicate with Hayward automation systems using RS485 and associated Hayward automation communication protocols, or any other suitable communication protocol disclosed herein.
- the pump can also serve as a pool control system.
- the user interface could utilize a color LCD touch screen with resistive and/or capacitive touch capability, or any other suitable input technology.
- the user interface could provide a user with information such as ambient air and pool water temperatures, providing true freeze protection capability, as well as thermostat control of a pool heater or heat pump.
- the user interface could also be used to communicate with and to control one or more smart relays and smart actuators, allowing the pump to coordinate operation of other pieces of pool equipment.
- the user interface can be used for interlock control of other installed pool/spa equipment.
- the pump could also be provided with a communication module (e.g., WiFi, ethernet, Bluetooth, ZWave, Zigbee, Thread, Weave, etc.) allowing remote application control of the pump and/or pool pad equipment, and to allow remote data collection of site specific information.
- a communication module e.g., WiFi, ethernet, Bluetooth, ZWave, Zigbee, Thread, Weave, etc.
- Pump control logic 84 can be controlled remotely with a personal computer, smart phone, tablet, or other device via wired or wireless communication, including but not limited to, Bluetooth, WiFi, powerline transmission, etc. Accordingly, the pump can have a full-featured local interface (see FIG. 16 B ), minimal local user interface, or no local user interface at all. Nevertheless, all aspects of the pump operational data and pump control logic 84 can be available for review and adjustment if necessary.
- the pump control logic 84 can report multiple pieces of information to a user, the system, or a central server for data collection, storage and analysis.
- the information can include, but is not limited to, date of installation, warranty registration, warranty possible claims, feedback of problems daily operating conditions, usage statistics, feedback of power supply conditions or quality, detailed profiles of pool pad setups, and information related to other equipment the pump may be controlling.
- the pump control logic 84 can also automatically register warranties and submit warranty claims should there be an issue with any piece of equipment in the system.
- User input data 902 could include timers, schedules (e.g., on/off, speed, duration of operation, how much flow should be provided), turnover goals, turbidity/water clarity goals, etc.
- Pump operational data 904 could include power consumption, current draw, input voltage, flow (rate), flow (yes/no), temperature, water pressure, air cavitation, water detection, debris sensor, etc.
- Pump factory specifications 906 could include power consumption current draw, input voltage, life expectancy, etc.
- Pump configuration parameters 908 could include IP address, GPS coordinates, zip code, time and date, etc.
- Web data 910 could include location (based on IP address), time and date, sunrise/sunset data, regional and local weather forecast data, ambient temperature, ambient light, humidity, season, elevation, dew point, etc.
- Pool configuration parameters 912 could include pool surface area, pool geometry, pool liner color, pool cover (yes/no), pool volume, etc.
- Data from related devices 914 could include data relating to at least the following: strainer(s), pool cover(s), filter(s), chlorinator(s), skimmer(s), pool cleaner(s), water features (e.g., laminar, bubbler, sheer fall, deck jet, fountains, scuppers, waterfall, etc.), heater(s) (gas/heat pump), heat (solar), chemical dispenser(s), disinfectant system(s) (ultraviolet ozone), secondary pump(s), tablet/liquid chlorine feeder(s), valves, controller(s), spa(s), water slide(s), etc.
- the pump control logic 84 could receive input from an external device to identify an operating profile. In another example, the pump control logic 84 could determine the most efficient turn-over rate based on the volume of the body of water. In yet another example the pump control logic could lower the speed of the pump to prevent a water feature from flooding a closed pool cover. Health monitoring data 916 could include line-to-line balance, grounding, bonding, leak current, runtime, operating temperature, power consumption, predictive failure, operating noise, power cycles, airflow sensor, temperature of cooling, efficiency, settings, troubleshooting data, etc.
- External sensor data 918 could include water level, water temperature, water flow speed, suction/vacuum pressure, strainer basket load, airflow sensor or temperature of cooling, pool cover detection, turbidity, valve position, etc. Additionally, the pump control logic can receive heater and pump data trends, learning data, time and speeds used per month, time and duration that a pool cover is open, and various characteristics of pump use. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter.
- the user/operator can provide this information by first determining the temperature (e.g., by checking a thermometer, a thermocouple, a weather forecast, the Internet, etc.) and then entering the temperature into the system via a user interface.
- determining the temperature e.g., by checking a thermometer, a thermocouple, a weather forecast, the Internet, etc.
- the pump control logic 84 could optimize the operation of the pump by, for example, running based on whether conditions (e.g., windy conditions produce more leaves and thus a need for more skimming), maximizing energy factor (or best efficiency point), communicating errors to the user/dealer/manufacturer, communicating performance to the manufacturer (e.g., usage stats) to calculate system curve to profile pools, providing feedback (e.g., basket is full, bearings going bad, seal starting to leak, etc.), and responding to needs of other equipment (e.g., pump/pump control logic could control actuators or other devices for pool pads with limited equipment (Low voltage control), lighting system, cleaner, high voltage control for booster pump, and hub through direct control or bridge to cloud for pool pad).
- conditions e.g., windy conditions produce more leaves and thus a need for more skimming
- energy factor or best efficiency point
- communicating errors to the user/dealer/manufacturer communicating performance to the manufacturer (e.g., usage stats) to calculate system curve to profile pools
- the pump could include a software application (accessible via user interface 4562 or on a remote device having a similar user interface), described in greater detail hereinbelow, that delivers enhanced features to the user.
- the application could define a pool owner's usage and target modes for the user to select from including but not limited to efficiency mode, spa mode, or party mode. Selecting a mode will automatically adjust pump speed or flow accordingly.
- the application can also allow for seasonal adjustability which will adjust operation of the pump based on the time of year.
- the application can also monitor the pump and send a signal or message if the pump has been inoperative for a defined period of time. Sending this message can remind a user to resume operation of a pump if he/she manually stopped it.
- the application can also report the energy consumption of the pump instantly or in monthly or yearly reports.
- the application can also provide a single push for pre-loaded programs for the pump.
- the application can also allow for quick access dynamic language translation.
- the application can also monitor pump usage, and display a number of “favorite” speeds by the user. The amount of speeds shown can be dependent on the user and does not have to show the maximum number of possible preset speeds.
- the application can also allow for the quick and easy ability to switch to the last selected program or “last known good” program which is the last program that ran without any errors.
- the application can send notifications of all activities within the system via WiFi, Bluetooth or similar means.
- the notifications can include but is not limited to a blocked filter, increase in RPM of the pump, or reporting of loss of prime-protects system.
- the application can include a page for frequently asked questions for service and troubleshooting of all components in the system 10 .
- the application can further include links to service and troubleshooting videos.
- the pumping system or application can also certify that installation is correct and reliable.
- the application can provide a “certification checklist” and wizard that guides the installer to verify the entire pool pad after configuration. Some items on the checklist can include, but is not limited to, checking whether the correct pump is on the correct relay, verify simulated schedule execution, confirm all equipment is working, confirm user preferences, etc. Once the checklist is completed, the pool is “certified” to be configured and tested and is now ready for use.
- FIGS. 19 A- 19 G are flowcharts illustrating processing steps of the pump control logic 84 .
- FIG. 19 A is a flowchart illustrating processing logic of the pump control logic 84 communicating with a pump.
- the pump control logic 84 receives an instruction to activate the pump.
- the pump logic 84 retrieves data pertaining to factory specified power parameters from memory, e.g., parameters relating to power consumption, current draw, and line voltage.
- the pump logic 84 receives line power operational data.
- the pump logic 84 determines whether the line power operational data is within factory specified operation parameters. If a positive determination is made, the process proceeds to step 1012 .
- step 1008 the pump control logic 84 transmits an instruction to the pump to activate, and the process ends.
- step 1008 the pump control logic 84 determines if there are any retries remaining. If a positive determination is made, then the pump control logic 84 proceeds to step 1004 and continues the process from that step. If a negative determination is made, then the pump control logic 84 proceeds to step 1010 and transmits an error condition signal, and then returns to step 1004 to continue the process from that step.
- the line voltage can be measured, including but not limited to, L1-L2, L1-GND, L2-GND, and in step 1010 , pump control logic 84 can report associated issues to the user.
- pump control logic 84 can measure the line current in step 1002 , and in step 1010 , pump control logic 84 can report associated issues to the user.
- pump control logic 84 can measure the ground leakage current in step 1002 , monitor for proper grounding in steps 1006 and 1008 , and report associated issues to the user in step 1010 .
- the pump control logic 84 can also check and verify proper bonding connection (e.g., checking for electrical continuity between the pump and a known good bonding point using a voltage measurement circuit or other known means) in the aforementioned steps.
- FIG. 19 B is another flowchart illustrating processing logic of the pump control logic 84 communicating with a pump in connection with priming.
- the pump control logic 84 receives an instruction to activate the pump.
- the pump logic 84 receives operational data from a pump water detection sensor.
- the pump logic 84 determines whether water is detected. If a positive determination is made, the process proceeds to step 1029 . If a negative determination is made, the process proceeds to step 1025 .
- step 1029 the pump control logic 84 clears the priming period timer, and the process ends. As referenced above, if a negative determination is made at step 1024 , then the process proceeds to step 1025 .
- step 1025 the pump control logic 84 starts or continues the priming period timer and then proceeds to step 1026 where it determines if there is any time remaining. If a positive determination is made, then the pump control logic 84 proceeds to step 1027 where it decrements the priming timer and then continues to step 1022 to continue the process from that step. If a negative determination is made, then the pump control logic 84 proceeds to step 1028 and transmits an error condition signal indicating that prime has failed, and the process ends.
- FIG. 19 C is another flowchart illustrating processing logic of the pump control logic 84 communicating with a pump.
- the pump control logic 84 receives an instruction to activate the pump.
- the pump logic 84 receives operational data from a debris sensor in a strainer basket.
- the pump logic 84 determines whether the strainer basket is full. If a positive determination is made, the process proceeds to step 1038 where the pump control logic 84 transmits a message to the user to clean the strainer basket and then returns to step 1032 . If a negative determination is made in step 1036 , then the pump control logic 84 proceeds to step 1039 and transmits an instruction to the pump to activate, and the process ends.
- FIG. 19 D is a flowchart illustrating processing logic of the pump control logic 84 determining alert conditions of a pump and subsequently notifying a user or pool professional (e.g., service technician, builders, installers, etc.) of the alert condition.
- the pump control logic 84 proceeds with four parallel routine sequences that respectively begin with steps 1040 , 1050 , 1060 , and 1070 . Each routine sequence is discussed sequentially, though it should be understood that the routine loops could operate in parallel, or alternatively, in series with each other.
- the sequence beginning with step 1040 monitors the health of the pump (as well as other installed pool equipment, discussed hereinbelow) by monitoring the runtime of the pump and comparing the runtime of the pump with life expectancy data.
- the pump control logic 84 retrieves factory specified life expectancy data from memory.
- the factory specified life expectancy data could be provided by the manufacturer as a specified number of hour, days, years, etc. for which the entire pump unit is expected to maintain optimal performance.
- factory specified life expectancy data could be provided for individual components of the pump unit (e.g., motor bearings, other motor components, etc.) in addition to, or in place of, the entire pump unit, thereby providing users and service providers greater granularity and predictability for maintenance protocols.
- the pump control logic 84 determines an alert threshold, e.g., less than 90% of pump life expectancy remaining or runtime value.
- the alert threshold could be provided by the user, by a pool professional (e.g., service technician, builders, installers, etc.), or by the manufacturer.
- the pump control logic 84 receives operational data on pump runtime and proceeds to step 1045 where it displays an odometer indicating pump runtime. It is noted that the odometer could also be configured to display the remaining life expectancy of the pump and/or individual components.
- the pump control logic 84 determines if the pump runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1044 and continues to receive operational data on pump runtime.
- an alert is transmitted to a user, and the process ends.
- the alert could be a visual and/or audio notification that could be displayed on a user's smart device (e.g., phone, text, or email based). For example, if a user's smartphone is in communication with pump control logic 84 , the alerts could be delivered via pop-up notification, text, etc. In addition to describing the problem, the alerts could also suggest possible remedies (e.g., “Excessive Motor Heating-Reduce Speed”).
- the second sequence begins in step 1050 where the pump control logic 84 retrieves factory specified operating temperature data from memory. The process then proceeds to step 1051 and step 1052 .
- the pump control logic 84 stores the temperature rise (ambient to equipment) in the histogram counters, and proceeds to step 1053 .
- the histogram counters can be bands that indicate temperature rise values, e.g., a first counter band can be a temperature rise of 0-10 degrees, a second counter band can be a temperature rise of 10-20 degrees, a third counter band can be a temperature rise of 20-30 degrees, and a fourth counter band can be a temperature rise of greater than 30 degrees.
- the pump control logic 84 determines if the temperature rise is too high.
- step 1052 the pump control logic 84 determines an alert threshold, e.g., a temperature value that is 10% above or below operating temperature.
- step 1054 the pump control logic 84 receives operational data on pump operating temperature.
- step 1056 the pump control logic 84 determines if the pump operating temperature exceeds the threshold, or is outside of a threshold range. If a negative determination is made, then the process returns to step 1054 and continues to receive operational data on pump operating temperature. If a positive determination is made, then the process proceeds to step 1058 where an alert is transmitted to a user, and the process ends.
- the third sequence begins in step 1060 where the pump control logic 84 retrieves factory specified power consumption data from memory.
- the pump control logic 84 determines an alert threshold, e.g., a power value that is 110% of specified power consumption.
- the pump control logic 84 receives operational data on pump power consumption.
- the pump control logic 84 determines if the pump power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 1064 and continues to receive operational data on pump power consumption. If a positive determination is made, then the process proceeds to step 1068 where an alert is transmitted to a user, and the process ends.
- the fourth sequence begins in step 1070 where the pump control logic 84 retrieves factory warranty data from memory, e.g., a warranty expiration date.
- the pump control logic 84 determines an alert threshold, e.g., days left on factory warranty.
- the pump control logic 84 receives current date information.
- the pump control logic 84 determines if the current date is beyond the threshold date or the number of days remaining is below the threshold date. If a negative determination is made, then the process returns to step 1074 and continues to receive current date information. If a positive determination is made, then the process proceeds to step 1076 where an alert is transmitted to a user, and the process ends.
- the pump control logic 84 could also report additional information to the user, pool professional (e.g., service technician, builders, installers, etc.), or manufacturer including runtime, operating temperatures/profile, power consumption, operating noise, number of power cycles, temperature of cooling air (from a pump cooling fan), and degradation of efficiency.
- pool professional e.g., service technician, builders, installers, etc.
- manufacturer including runtime, operating temperatures/profile, power consumption, operating noise, number of power cycles, temperature of cooling air (from a pump cooling fan), and degradation of efficiency.
- FIG. 19 E is another flowchart illustrating processing logic of the pump control logic 84 communicating with a pump.
- the pump control logic 84 receives an instruction to activate the pump.
- the pump logic 84 retrieves maximum power consumption setpoint data from pool devices from memory, e.g., maximum combined power consumption for all active devices.
- the pump logic 84 receives operational data on power consumption from all active devices.
- the pump logic 84 determines the combined power consumption for active devices.
- the pump logic 84 determines whether the combined power consumption is below a setpoint. If a positive determination is made, the process proceeds to step 1094 . If a negative determination is made, the process proceeds to step 1090 .
- step 1094 the pump control logic 84 transmits an instruction to the pump to activate, and the process ends.
- step 1090 the pump control logic 84 determines if there are any retries remaining. If a positive determination is made, then the pump control logic 84 proceeds to step 1084 and continues the process from that step. If a negative determination is made, then the pump control logic 84 proceeds to step 1092 and transmits a power save notification, and the process ends.
- FIG. 19 F is another flowchart illustrating processing logic of the pump control logic 84 communicating with a pump.
- the pump control logic 84 receives an instruction to activate the pump.
- the pump control logic 84 receives date and time information.
- the pump control logic 84 determines the current season, e.g., summer.
- the pump control logic 84 retrieves operational setpoint data for the current season from memory, e.g., schedule, pump power, etc.
- the pump control logic 84 transmits an instruction to the pump to operate at seasonal operational setpoints.
- FIG. 19 G is another flowchart illustrating processing logic of the pump control logic 84 communicating with the pump.
- the pump control logic 84 retrieves setpoint data on the desired pool turnover rate from the memory (e.g., the desired turnovers in a twenty-four hour period). While the desired pool turnover rate can be specified by the user and stored in the memory, it is noted that the turnover rate setpoint data it could also be retrieved from the web based on the size, geometry, location of the pool, or any combination thereof.
- the pump control logic 84 retrieves pool configuration data on the volume of the pool from the memory. The pump control logic 84 then, in step 1114 , receives operational data on flow rate from external sensors.
- step 1116 the pump control logic 84 , using the turnover rate setpoint data, the pool configuration data, and the external sensor data, calculates the minimum flow rate to achieve the desired pool turnover rate.
- step 1118 the pump control logic 84 transmits an instruction to the pump to operate at a minimum speed to achieve the desired turnover rate, and the process then returns to step 1114 . It is noted that by this process, the pump control logic 84 could continuously adjust the speed of the pump throughout the twenty-four hour period based on repeated minimum flow rate calculations.
- FIG. 19 H is another flowchart illustrating processing logic of the pump control logic 84 communicating with the pump.
- the pump control logic 84 receives an instruction to activate the pump.
- the pump control logic 84 retrieves data on factory specified power parameters from memory. Some examples of power parameters include, but is not limited to, power consumption, current draw, line voltage, line current, ground leakage current, proper bonding, etc.
- the pump control logic 84 received operational data of the pump, including but not limited to, L1-L2, L1-GND, and L2-GND.
- the pump control logic 84 compares whether the operational data is within the specified operating parameters of the pump.
- step 3708 the pump control logic 84 transmits an instruction to activate the pump and the process ends. If a negative determination is made, the pump control logic 84 proceeds to step 3710 where it decides whether retries are remaining. If a positive determination is made, the pump control logic 84 proceeds back to step 3704 where it receives operational data on the pump. If a negative determination is made, the pump control logic 84 proceeds to step 3712 where an error condition is transmitted and the process proceeds back to step 3704 .
- the above process can measure all parameters related to electrical power of the pump and can indicate any type of issue to the user.
- FIG. 19 I is another flowchart illustrating processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor or measure the water level in a pump.
- the pump control logic 84 retrieves data on factory specified parameters from memory for the water level in a pump.
- the pump control logic 84 receives operational water level data in the pump and in the strainer housing.
- the pump control logic 84 decides whether the water level data is within the factory specified operating parameters. If a positive determination is made, the pump control logic 84 proceeds to step 3722 . If a negative determination is made, the pump control logic 84 proceeds to step 3728 .
- step 3722 the pump control logic 84 determines whether the water level has been an issue for a set amount of time. If a negative determination is made, the pump control logic 84 will proceed to step 3724 where the speed of the pump is increased periodically. If a positive determination is made, the pump control logic 84 will proceed to step 3726 where it will indicate to the user that there is an air leak in the suction side plumbing. In step 3728 , the pump control logic 84 will transmit a message to the user or system that the water level data is within the factory specified parameters.
- FIG. 19 J is another flowchart illustrating processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor or measure water flow in the pump.
- the pump control logic 84 retrieves data on the factory specified parameters from memory for the water flow in the pump.
- the pump control logic 84 receives operational flow data in the pump.
- the pump control logic 84 determines whether the flow data is within the range for the factory specified operational parameters. Step 3742 can further be associated with cavitation detection. If a negative determination is made, the pump control logic 84 proceeds to steps 3744 , and if a positive determination is made, the pump control logic 84 proceeds to step 3746 .
- step 3744 the pump control logic 84 determines whether retries are remaining. If there are no retries remaining, the pump control logic 84 proceeds to step 3748 to transmit an error condition and if there are retries remaining, the pump control logic 84 proceeds back to step 3740 . In step 3746 , the pump control logic 84 transmits a message to the user or the system that the flow data is within the factory specified parameters.
- FIG. 19 K is another flowchart illustrating processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor or measure the water temperature.
- the pump control logic 84 retrieves data on the factory specified parameters from memory for the water temperature.
- the pump control logic 84 receives operational data of water temperature and set point temperature data.
- the pump control logic 84 determines whether the water temperature is within the set point and/or factory parameters. If a positive determination is made, the pump control logic 84 proceeds to step 3758 where the pump control logic 84 transmits a message to the user that the water temperature is within the factory specified or set point parameters and the process would end thereafter.
- step 3760 the pump control logic 84 performs a function or changes the pump operation to maintain a factory or set point water temperature.
- step 3762 the pump control logic 84 transmits a message to the user or the system that the pump control logic 84 has performed some function or changed the pump operation to maintain a factory or set point water temperature.
- FIG. 19 L is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor or measure the water chemistry.
- the pump control logic 84 retrieves data on factory specified parameters from memory for the water chemistry.
- the pump control logic 84 receives operation data regarding the water chemistry.
- the pump control logic 84 determines whether the water chemistry is within factory specified operating parameters. If a positive determination is made, the pump control logic 84 proceeds to step 3772 where the pump control logic 84 transmits a message to the user that the water chemistry is within the specified operating parameters.
- step 3774 the pump control logic 84 determines whether the pool chemistry is maintained by a separate device. If a positive determination is made, the pump control logic 84 proceeds to step 3776 where the pump control logic 84 communicates with the other device to determine what the device needs for proper operation. If a negative determination is made, the pump control logic 84 proceeds to step 3778 directly or after step 3776 . In step 3778 , the pump control logic 84 performs a function or changes operation of the pump to maintain the proper water chemistry based on the step 3776 or the set point parameters retrieved from memory. In step 3780 , the pump control logic 84 transmits a message to the user or the system that attention may be needed regarding the water chemistry.
- FIG. 19 M is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to detect a gasket leak or a shaft seal leak.
- the pump control logic 84 receives operational data from a sensor in the gasket or shaft seal.
- the pump control logic 84 determines if there is a gasket or shaft seal leak.
- the determination is made whether there is in fact a gasket or shaft seal leak. If a negative determination is made, the pump control logic 84 proceeds to step 3790 and will transmit a message to the user or system that there is no leak. If a positive determination is made, the pump control logic 84 will transmit a message in step 3792 that the user should fix the leak.
- FIG. 19 N is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 retrieves factory specified life expectancy data of the shaft seal from memory.
- the pump control logic 84 determines the alert threshold for the life expectancy of the shaft seal. For example, a 90% threshold will alert the user when 90% of the life expectancy of the shaft seal is reached.
- the pump control logic 84 will receive operational data on the shaft seal runtime.
- the pump control logic 84 will determine whether the runtime is greater than the threshold with regard to the life expectancy data. If a negative determination is made, the pump control logic 84 will go back to step 3798 . If a positive determination is made, the pump control logic 84 will proceed to step 3882 and transmit a message to the user regarding the remaining shaft seal shelf life so that the user can proactively address the shaft seal before a leak occurs.
- FIG. 19 O is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to determine the cleanliness of the filter.
- the pump control logic 84 retrieves data on the factory specified parameters from memory for debris in the filter and energy consumption of the pump.
- the pump control logic 84 receives operational data from the sensors in the filter and energy consumption in the pump.
- the pump control logic 84 determines the cleanliness of the filter based on the debris in the filter.
- the pump control logic 84 makes a determination as to whether the filter needs to be serviced.
- the pump control logic 84 in step 3894 will determine if the energy consumption of the pump exceeds a factory or user set threshold, and if it does, the process ends and if it does not, then in step 3896 , the pump control logic 84 can adjust the flow to maintain a flow rate based on the amount of debris in the filter. If a positive determination is made in step 3892 , the pump control logic 84 in step 3898 will transmit a message to the user or system to service the filter (e.g., clean the cartridge). In step 3900 , the pump control logic 84 will determine whether the user took action to service the filter.
- step 3902 the pump control logic 84 will proceed to step 3902 to adjust the pump operation to maintain a flow rate needed by the rest of the system 10 . If a positive determination is made, the pump control logic 84 will skip step 3902 and will proceed directly back to step 3888 .
- FIG. 19 P is a flowchart illustrating processing steps carried out by the pump control logic 84 for periodically testing and advising the user of the variance from a “clean filter” state.
- pump control logic 84 can periodically enter a “test” filter system state where the pool/spa equipment go to predetermined positions/states/speeds for testing the filter.
- pump control logic 84 monitors for a “clean filter” condition (e.g., operational data from filter or input from a user, servicer, or installer, etc.).
- a “clean filter” condition e.g., operational data from filter or input from a user, servicer, or installer, etc.
- a skimmer could communicate (using and of the data communication protocols disclosed herein) to pump control logic 84 that the filter has been cleaned or replaced, or the user could utilize an input device to indicate to pump control logic 84 that the filter has been cleaned or replaced.
- pump control logic 84 determines if a “clean filter” condition has been received. If a negative determination is made in step 3906 , pump control logic 84 returns to step 3904 . If a positive determination is made in step 3906 , pump control logic 84 proceeds to step 3908 , where pump control logic 84 retrieves “test” filter system state setpoints (e.g., valve position, pump speed, etc.) from the memory.
- test filter system state setpoints e.g., valve position, pump speed, etc.
- pump control logic 84 transmits an instruction to the installed pool/spa equipment to operate at the “test” setpoints.
- pump control logic 84 receives current operational date from the filter.
- pump control logic 84 determines if there are (1) retries remaining. If a positive determination is made in step 3914 , pump control logic 84 proceeds to step 3916 and saved the “clean filter” operational data to the memory. Thus, after pump control logic 84 receives a “clean filter” condition, the pool/spa equipment enters a “test” system state and records the current operational data from the filter to the memory as a baseline measurement for future comparison.
- pump control logic 84 proceeds to step 3918 , where pump control logic 84 computes the variance from the “clean filter” operational data.
- pump control logic 84 could transmit a message to (e.g., advise) the user (e.g., “Filter Health ##%).
- pump control logic 84 transmits instructions to the installed pool/spa equipment to resume normal operation.
- the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3908 .
- FIG. 19 Q is a flowchart illustrating processing steps carried out by the pump control logic 84 for determining if debris is interfering with operation of the pump. For example, in step 3926 , pump control logic 84 retrieves setpoint data on the acceptable debris level at a pump component(s) from memory. This setpoint data could be provided by the pump manufacturer, or alternatively, could be set by the user. In step 3928 , pump control logic 84 receives operational data on debris at the pump component(s).
- the pump control logic could monitor one or more individual components (e.g., the impeller, shaft seal, and motor shaft) of the pump and could further monitor one or more parameters associated with each component (e.g., the level of debris in the impeller and/or rotational speed of the impeller). For example, pump control logic 84 could determine if there is debris trapped in the impeller by monitoring motor current, motor power consumption, or by using an accelerometer to determine an increase in motor vibration. In step 3930 , pump control logic 84 determines if the level of debris at the pump component(s) is below the setpoint. If a positive determination is made in step 3930 , pump control logic 84 returns to step 3928 .
- the level of debris at the pump component(s) is below the setpoint. If a positive determination is made in step 3930 , pump control logic 84 returns to step 3928 .
- pump control logic 84 proceeds to step 3932 , where pump control logic 84 determines if there are retries remaining. If a positive determination is made in step 3932 , pump control logic 84 returns to step 3928 . If a negative determination is made in step 3932 , pump control logic 84 proceeds to step 3934 , where pump control logic 84 transmits an instruction to the user (e.g., “Clean Impeller”). While the foregoing process has been discussed in terms of monitoring debris, it is also contemplated that pump control logic 84 can monitor additional parameters and alert the user when these parameters have exceeded their respective setpoints using similar processing steps.
- an instruction to the user e.g., “Clean Impeller”. While the foregoing process has been discussed in terms of monitoring debris, it is also contemplated that pump control logic 84 can monitor additional parameters and alert the user when these parameters have exceeded their respective setpoints using similar processing steps.
- pump control logic 84 could also monitor rotational speeds of the components, determine whether debris is causing physical interference with the rotation of the impeller, shaft seal, or motor shaft, and then transmit an instruction to the user to address the issue (e.g., “Binding in Impeller—Clear Debris”). For example, pump control logic 84 could monitor motor current, power consumption, and receive operational data from an accelerometer to determine an increase in motor vibration (thereby indicating physical interference/binding of the impeller). Further still, instead of alerting the user when an operational parameter has exceeded its respective operational setpoint, pump control logic 84 could alter the operation of the pump to restore normal operation.
- pump control logic 84 could monitor the humidity of the air inside the variable speed drive enclosure and adjust its operating condition to minimize humidity, thereby increasing reliability.
- pump control logic 84 could receive operational data from a humidity sensor located within the variable speed drive enclosure. If pump control logic 84 determines that the humidity within the variable speed drive enclosure is above a maximum setpoint value, pump control logic 84 could transmit an instruction to the variable speed drive to increase the speed of operation, thereby drying out the air within the enclosure (due to increased temperature of certain electrical components within the enclosure precipitated by the increase in operating speed).
- FIGS. 19 R and 19 S are flowcharts illustrating processing steps carried out by the pump control logic 84 for assisting the user in determining the pump setpoints that should be used based on the user's installed equipment and preferences.
- pump control logic 84 could include a wizard-based application that is accessible by the user via a human machine interface installed on the pump, centralized pool/spa control system, smartphone/device, web browser, or any other means for communicating with the system, disclosed herein.
- pump control logic 84 prompts the user to specify installed pool/spa equipment and operational parameters therefore (e.g., minimum skimmer speed/flow, number of skimmers, minimum heater speed/flow, has heater, heat pump, solar, etc.).
- the application could utilize widely-known bar scanning technology (e.g., utilizing/in combination with a camera of smart device), enabling the user to simply scan the barcode of each piece of installed equipment thereby avoiding the necessity of manual entry.
- Pump control logic 84 could then retrieve additional information (e.g., specifications, setpoints, warranty information, etc.) on the scanned equipment from a remote location (e.g., a remote server) using any suitable communication protocol described herein (e.g., accessing the internet vial a home WiFi router).
- pump control logic 84 prompts the user to specify the desired pool/spa activities (e.g., bathing, swimming, water sports, etc.).
- pump control logic 84 could present the user with a list of pre-programmed activities from which to choose, the user could search a database of pre-programmed activities, or the user could program custom activities and save the same to memory for later retrieval and use.
- pump control logic 84 determines an acceptable range of speed setpoints for the pump (e.g., speed/flow for all pump related features).
- pump control logic 84 presents the acceptable speed presets to the user and then prompts the user to select desired/optimal setpoints for the pump and in step 3944 , pump control logic 84 stores the user selected pump setpoints to memory and the process then ends.
- the wizard could assist the user in selecting the desired/optimal pump setpoints by stepping through multiple actual pump speeds/flows so that the user can “choose” a desired speed/flow while observing the effect of the different speeds/flows on the actual pool/spa environment.
- pump control logic 84 could then proceed to step 3950 , where an instruction is transmitted to the pump to operate at an (acceptable) first (1st) speed.
- pump control logic 84 transmits an instruction to the pump to operate at an (acceptable) second (2nd) speed.
- step 3954 pump control logic 84 transmits an instruction to operate the pump at another (acceptable) speed. Pump control logic 84 then proceeds to step 3942 , described hereinabove. It is noted that any number of acceptable speeds can be presented to the user. Accordingly, because the application could be run, viewed, or accessed on a mobile device (e.g., not tethered to a specific location) the wizard/application enables the user to stand poolside, watching features as speeds/flows are automatically displayed by pump control logic 84 or selected by the user/installer for each prompt. The wizard/application also enables the user/installer to stand at the equipment pad, watching equipment function (e.g., heater ignition) as the pump steps through various speeds/flows.
- equipment function e.g., heater ignition
- pump control logic 84 could sense and/or advise of a maximum speed/flow beyond which the pump cavitates or reaches an undesirable inflection point in energy consumption/efficiency. For example, pump control logic 84 could determine the maximum speed/flow beyond which the pump cavitates using operational data received from an accelerometer, optical sensor, or other means.
- pump control logic 84 determines if the user selected setpoints are causing pump cavitation. If a negative determination is made in step 3946 , pump control logic 84 proceeds to step 3944 , discussed hereinabove. If a positive determination is made in step 3946 , pump control logic 84 proceeds to step 3948 , where an alert is transmitted to the user.
- the system could determine speeds at which the pump cavitates beforehand and remove the speeds at which the pump cavitates from the acceptable setpoints that are presented to the user in step 3942 .
- pump control logic 84 could suggest to the user alternative modes of operation (e.g., other than that selected by the user) that either improve the reliability of one or more pieces of installed pool/spa equipment, or improve the efficiency of one or more pieces of installed pool/spa equipment, individually, or as a whole system.
- other pieces of installed pool/spa equipment could communicate with the pump control logic 84 and advise of optimum performance criteria. This logic could reside in other installed pool/spa equipment and be communicated to the pump, or the logic could be contained within the pump itself.
- FIG. 19 S is a flowchart illustrating processing steps carried out by the pump control logic 84 for automatically determining the pump setpoints that should be used based on the user's installed equipment and preferences.
- pump control logic 84 is able to “auto detect” equipment that is installed and automatically determine how the system should be run based on a variety of optimization choices (e.g., energy consumption, water feature performance, heating preferences, etc.).
- pump control logic 84 prompts the user to specify desired pool/spa activities (e.g., bathing, swimming, water sports, etc.).
- pump control logic 84 could present the user with a list of pre-programmed activities from which to choose, the user could search a database of pre-programmed activities, or the user could program custom activities and save the same to memory for later retrieval and use.
- pump control logic 84 receives operational data from pool/spa equipment.
- pump control logic 84 determines what pool/equipment has been installed, using the received operational data therefrom.
- pump control logic 84 retrieves the installed equipment setpoints (e.g., minimum flow and/or pressure for heater operation) from memory.
- pump control logic 84 determines the optimal speed setpoints for the pump based on all of the installed equipment. For example, pump control logic 84 could estimate the necessary pump speed. Alternatively, pump control logic 84 could step through various speeds/flows and receive operational data from the installed equipment (e.g., heaters, water features, valves, etc.) when there is sufficient flow and/or pressure for operation. Pump control logic 84 then proceeds to step 3966 , where pump control logic 84 stores the pump setpoint data to memory, and then the process ends. It is also contemplated that, in addition to pump speed, pump control logic 84 could capture the correct valve positions for delivering the required flow and/or pressure.
- operational data e.g., heaters, water features, valves, etc.
- Pump control logic 84 could also search for signals from any smart utility, radio frequency, WiFi, cellular, Bluetooth, geo-positioning, etc. that provides data for energy costs, energy discount periods, peak demand, etc. (see FIG. 33 T ). Pump control logic 84 could then use this data to optimize performance and/or energy costs.
- the application/wizard could walk the user through multiple steps for different installation modes, such as relay control or connection to pool/spa automation controllers (e.g., Hayward automation), and could indicate supported software levels of the pool/spa automation controllers.
- the application could also access dealer-defined programs/schedules via the cloud and then download the programs/scheduled to the pump for local installation.
- pump control logic 84 could operate according to a dealer-defined or user-defined schedule, pump control logic 84 is capable of determining when pool/spa equipment requires a flow that deviates from the normal schedule (e.g., due to user interaction, weather patterns, addition of pool/spa equipment, etc.) and automatically adjusting the pump flow/speed therefore.
- the application could further provide the user/installer with answers to frequently asked questions (i.e., FAQs) for the installation process as well as for individual pieces of pool/spa equipment, installation videos (either stored locally or as links accessible through communication protocols discussed herein), and can serve as a dynamic “quick start guide.”
- Pump control logic 84 could also serve as an Automated Engineered pool system solution for areas having regulations, such as in Florida (e.g., reports and/or calculates total dynamic head and/or flow).
- an “Automated Engineered” pool system solution is one that automatically derives Total Dynamic Head (“TDH”) by measuring key metrics.
- TSH vs. flow an overall System Curve (TDH vs. flow) could be estimated or calculated from a single point or generated when measured at multiple speeds when using a multi-speed pump.
- FIG. 19 T is a flowchart illustrating processing steps carried out by the pump control logic 84 for recording baseline performance data for future reference. More specifically, once the initial installation of the pool equipment is complete (see FIGS. 19 R and 19 S ), pump control logic 84 can record initial operational data from the installed equipment. For example, in step 3968 , pump control logic 84 determines if the user has completed the installation wizard (see FIGS. 19 R and 19 S ). If a negative determination is made in step 3968 , pump control logic 84 repeats step 3968 .
- pump control logic 84 proceeds to step 3970 , where pump control logic 84 receives operational data from installed pool/spa equipment (e.g., pump performance, motor performance, sound levels, etc.).
- pump control logic 84 saves the operational data to the memory as baseline performance data. This baseline performance data could be used, for example, in combination with the health monitoring pump control logic 84 processing steps shown in FIG. 19 D or as illustrated in FIG. 19 U , discussed hereinbelow.
- FIG. 19 U is a flowchart illustrating processing steps carried out by the pump control logic 84 for determining pump health by comparing baseline performance data and current operational data.
- pump control logic 84 retrieves baseline performance data (e.g., pump performance, motor performance, sound levels, etc.) from the memory.
- pump control logic 84 determines an alert threshold (e.g., performance down 10%, sound level increase 10%, etc.).
- an alert threshold e.g., performance down 10%, sound level increase 10%, etc.
- pump control logic 84 receives current operational data from the installed pool/spa equipment and/or other connected devices (e.g., sound level from microphone located at the pump).
- pump control logic 84 calculates the change (e.g., delta) from the baseline performance data.
- step 3982 pump control logic 84 determines if the change from baseline performance is greater than the threshold. If a negative determination is made in step 3982 , pump control logic 84 returns to step 3978 . If a positive determination is made in step 3982 , pump control logic 84 proceeds to step 3984 , where pump control logic 84 determines if there are retries remaining. If a positive determination is made in step 3984 , pump control logic 84 returns to step 3978 . If a negative determination is made in step 3984 , pump control logic 84 proceeds to step 3986 , where an alert is transmitted to the user (e.g., “Service Pump”). The process then ends.
- an alert is transmitted to the user (e.g., “Service Pump”). The process then ends.
- FIG. 19 V is a flowchart illustrating processing steps carried out by the pump control logic 84 for determining current weather conditions.
- pump control logic 84 receives an IP address from a smart device on a local network.
- pump control logic 84 receives location data based on the IP address (e.g., web data/geolocation provider).
- pump control logic 84 receives web data on current weather conditions (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). It is noted that pump control logic 84 can receive web data through any wired and/or wireless communication protocols disclosed herein.
- Current weather conditions can include, for example, temperature, precipitation, wind speed, wind direction, etc.
- Web data on current weather conditions could also include live 3rd party data, for example, live weather maps of precipitation and cloud cover.
- pool pump control logic 84 saves the current weather conditions to the memory for later retrieval.
- pump control logic 84 is delayed by X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and then the process returns to step 3988 .
- pump control logic 84 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 4000 , pump control logic 84 could receive the ZIP code data from the user interface device.
- pump control logic 84 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi). While the foregoing is discussed in connection with pump control logic 84 obtaining current weather information from a remote source (e.g., the internet), it is contemplated that pump control logic 84 could obtain current weather information from local sources as well (e.g., receive operational data from local temperature sensors/thermocouples, wind meters/anemometers, rain gauges/ombrometers, etc.).
- Pump control logic 84 can receive web data on future/forecasted weather conditions (e.g., 7-day forecasts, almanacs, etc.), in addition to current weather forecasts.
- FIG. 19 W is a flowchart illustrating processing steps carried out by the pump control logic 84 for determining forecasted weather conditions. Although the processing steps shown in FIGS. 19 V and 19 W are discussed sequentially, it should be understood that the processing steps carried out by pump control logic 84 in FIGS. 19 V and 19 W could operate in parallel, or alternatively, in series with each other.
- pump control logic 84 receives an IP address from a smart device on a local network.
- pump control logic 84 receives location data based on the IP address (e.g., web data/geolocation provider).
- pump control logic 84 receives web data on forecasted weather conditions (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). It is noted that pump control logic 84 can access receive web data through any wired and/or wireless communication protocols disclosed herein. Forecasted weather conditions can include, for example, temperature, precipitation, wind speed, wind direction, etc. Web data on forecasted weather conditions could also include live 3rd party data, for example, live weather maps of precipitation and cloud cover.
- pool pump control logic 84 saves the forecasted weather conditions to the memory for later retrieval.
- pump control logic 84 is delayed by X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and then the process returns to step 4004 .
- pump control logic 84 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 4016 , pump control logic 84 could receive the ZIP code data from the user interface device.
- pump control logic 84 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi).
- FIG. 19 X is a flowchart illustrating processing steps carried out by pump control logic 84 for instructing the pump to run higher load operating modes during cooler times of the day if higher than normal temperatures are expected.
- pump control logic 84 receives current date and time data (e.g., from internal clock, as web data, etc.).
- pump control logic 84 retrieves forecasted weather conditions (e.g., hourly forecast) for the current date. The forecasted weather conditions can be obtained by way of the process described herein, in connection with FIG. 19 W .
- pump control logic 84 retrieves the pump schedule for the current date from the memory.
- pump control logic 84 identifies periods (e.g., times of day) of high load operating conditions in the pump schedule.
- pump control logic 84 identifies periods of forecasted high temperatures (e.g., times of day above 80° F.).
- pump control logic 84 determines if the periods of forecasted high temperatures and high load conditions coincide. If a negative determination is made (e.g., the pump will not be running at a high-load during periods of high temperature) in step 4030 , pump control logic 84 returns to step 4020 .
- pump control logic 84 proceeds to step 4032 , where periods of forecasted low temperatures (e.g., times of day below 70° F.) are identified. Pump control logic 84 then proceeds to step 4034 , where the pump schedule is modified so that the higher load operating modes run during periods of forecasted low temperatures. In step 4036 , pump control logic 84 saves the modified pump schedule to the memory. Pump control logic 84 then returns to step 4020 .
- periods of forecasted low temperatures e.g., times of day below 70° F.
- FIG. 19 Y is a flowchart illustrating processing steps carried out by pump control logic 84 for automated operation of pool devices based on current weather conditions (e.g., periods of heavy rain).
- pump control logic 84 retrieves current weather conditions (e.g., precipitation, wind speed, etc.) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 19 V .
- pump control logic 84 retrieves maximum precipitation setpoint data from memory.
- pump control logic 84 determines if the current amount of precipitation is above the maximum precipitation setpoint.
- step 4044 pump control logic 84 transmits an instruction to the pump to suspend operation (e.g., preventing damage due to water ingress).
- step 4046 pump control logic 84 could transmit an instruction to disconnect power to high voltage circuits.
- step 4048 pump control logic 84 determines if the operation of any pool devices (e.g., pump, smart relays, smart circuit breaker, etc.) has been altered due to the weather condition (e.g., heavy precipitation). If a negative determination is made, the process reverts to step 4038 .
- any pool devices e.g., pump, smart relays, smart circuit breaker, etc.
- step 4050 pump control logic 84 transmits an instruction to revert to regular operation of the pool device(s).
- pump control logic 84 could transmit a message to the user (e.g., “precipitation subsided”). The process then reverts to step 4038 .
- pump control logic 84 could suspend operation in advance of periods of heavy precipitation by monitoring the forecasted weather conditions and suspending operation before the precipitation begins.
- FIG. 19 Z is a flowchart illustrating processing steps carried out by the pump control logic 84 for automated operation of pool devices based on current weather conditions (e.g., high winds).
- pump control logic 84 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 19 V .
- pump control logic 84 retrieves maximum wind speed setpoint data from memory.
- pump control logic 84 determines if the current wind speed is above the maximum wind speed setpoint.
- step 4060 pump control logic 84 transmits an instruction to the pump to increase circulation, thereby providing better skimmer performance.
- pump control logic 84 could transmit an instruction to actuate a smart valve(s).
- smart valves include an actuator which rotates valves in response to a control signal from pool control logic 70 (e.g., water feature control logic 72 , valve actuator control logic 74 , cleaner control logic 76 , lighting control logic 78 , heater control logic 80 , chemistry automation control logic 82 ).
- smart valves could be utilized in any application that requires the automated operation of valves in a pool/spa environment.
- pump control logic 84 could thereby automatically engage pool/spa operation, solar heating, pool cleaners, water features, provide additional flow to the skimmer(s), and/or decrease flow from the suction outlets during periods of high winds.
- pump control logic 84 could further detect accumulated debris at pool/spa equipment (e.g., motor fan inlet) and in step 4066 , pump control logic 84 could transmit an alert to the user (e.g., “Remove Debris from Motor Fan Inlet”). The process then reverts to step 4054 .
- step 4058 the process proceeds to step 4068 , where pump control logic 84 determines if the operation of any pool devices has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 4054 . If a positive determination is made, the process proceeds to step 4070 , where pump control logic 84 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 4072 , pump control logic 84 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 4054 .
- the weather condition e.g., high winds
- FIG. 19 AA is a flowchart illustrating processing steps carried out by pump control logic 84 for automatically adjusting pump speed/flow for cleaning a pool/spa in response to a weather condition (e.g., high winds). More specifically, pump control logic 84 can manage and/or respond to heavy debris/particulate sources (e.g., trees, vegetation, dust, etc.) up-wind of the pool/spa area by adjusting the pump speed or flow, based on wind speed and/or direction. For example, in step 4074 , pump control logic 84 retrieves current weather conditions (e.g., wind speed, direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 19 V .
- a weather condition e.g., high winds.
- pump control logic 84 can manage and/or respond to heavy debris/particulate sources (e.g., trees, vegetation, dust, etc.) up-wind of the pool/spa area by adjusting the pump speed or flow, based on wind speed and
- step 4076 pump control logic 84 retrieves maximum wind speed setpoint data from memory.
- step 4078 pump control logic 84 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 4080 , where pump control logic 84 retrieves skimmer location data from the memory. The skimmer location data can be obtained by way of the process described herein, in connection with FIG. 33 A .
- step 4082 pump control logic 84 determines the most downwind skimmer(s).
- step 4084 pump control logic 84 transmits an instruction to increase the flow to the downwind skimmer(s) and the process then reverts to step 4074 .
- the flow to the downwind skimmer(s) can be increased in various ways, including, but not limited to, transmitting an instruction to the pump to increase the pump speed, and transmitting an instruction to a smart valve to actuate, thereby adjusting to a position that optimizes flow to the skimmer.
- pump control logic 84 could transmit an instruction to deactivate or reduce water features (e.g., decrease pump speed, adjust valve positions to reduce flow, etc.), thereby preventing splash-out.
- step 4078 the process proceeds to step 4088 , where pump control logic 84 determines if the operation of any pool devices (e.g., pump, smart valves, etc.) have been altered due to the weather condition (e.g., high winds). If a negative determination is made in step 4088 , the process reverts to step 4074 . If a positive determination is made in step 4088 , pump control logic 84 proceeds to step 4090 , where pump control logic 84 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 4092 , pump control logic 84 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 4074 .
- any pool devices e.g., pump, smart valves, etc.
- the process reverts to step 4074 .
- FIG. 19 AB is a flowchart illustrating processing steps carried out by pump control logic 84 for automatically adjusting operation of the pump in response to weather conditions (e.g., ambient temperature, wind speed, and/or wind chill) to provide freeze protection.
- weather conditions e.g., ambient temperature, wind speed, and/or wind chill
- step 4094 pump control logic 84 retrieves current weather conditions data from memory (e.g., ambient temperature, wind speed, and/or wind chill).
- the current weather conditions can be obtained by way of the process described herein, in connection with FIG. 19 V .
- pump control logic 84 receives operational data from the pump (e.g., pump speed/flow).
- step 4098 pump control logic 84 determines if there is a freeze risk based on the current weather conditions and the speed/flow of the pump. If a negative determination is made (e.g., there is no freeze risk) in step 4098 , pump control logic 84 returns to step 4094 . If a positive determination is made (e.g., there is a freeze risk) in step 4098 , pump control logic 84 transmits an instruction to the pump to increase speed/flow. Pump control logic 84 then reverts to step 4094 .
- FIG. 19 AC is a flowchart illustrating processing steps carried out by pump control logic 84 for adjusting the operation of the pump to meet the needs of other pool/spa equipment.
- pump control logic 84 could increase the speed/flow of the pump in response to an increase in the output of the heater, necessitated by a drop in ambient temperature (e.g., heater output increased to maintain desired pool/spa temperature).
- the heater output is increased (e.g., due to a drop in ambient temperature).
- pump control logic 84 receives operational data from the heater (e.g., current or requested BTU output).
- pump control logic 84 determines if an increase in pump speed/flow is required based on the operational data received from the heater.
- pump control logic 84 returns to step 4104 . If a positive determination is made in step 4106 , pump control logic 84 proceeds to step 4108 , where an instruction is transmitted to the pump to increase speed/flow. Pump control logic 84 then returns to step 4104 . While the foregoing process steps are discussed in connection with the pump control logic 84 adjusting the operation of the pump in response to the needs of the heater during a drop in ambient temperature, it is contemplated that pump control logic 84 can adjust the operation of the pump in response to the needs of any of the installed pool/spa equipment disclosed herein.
- FIG. 19 AD is a flowchart illustrating processing steps carried out by the pump control logic 84 for determining and running a mode of operation based on the time of day (e.g., daytime or evening) or time of year (e.g., season).
- pump control logic 84 receives an IP address from a smart device on a local network.
- pump control logic 84 receives location data based on the IP address (e.g., web data/geolocation provider).
- pump control logic 84 receives web data on sunrise/sunset times (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow).
- pump control logic 84 can receive web data through any wired and/or wireless communication protocols disclosed herein.
- pump control logic 84 saves the sunrise/sunset data to the memory for later retrieval.
- pump control logic 84 receives current time and date data (e.g., from web or internal clock).
- pump control logic 84 determines if the current time is between sunrise and sunset (e.g., daytime). If a positive determination is made in step 4120 , pump control logic 84 proceeds to step 4122 , where pump control logic 84 retrieves equipment setpoints for a daytime operation mode (e.g., pump speed/flow during the day).
- a daytime operation mode e.g., pump speed/flow during the day.
- pump control logic 84 transmits instructions to installed pool/spa equipment to operate at the retrieved setpoints and then pump control logic 84 returns to step 4118 . If a negative determination is made in step 4120 , pump control logic 84 proceeds to step 4126 , where pump control logic 84 retrieves equipment setpoints for an evening operation mode (e.g., pump speed/flow during the evening) and then pump control logic 84 proceeds to step 4124 , discussed hereinabove. While the foregoing process steps have been discussed in terms of selecting a mode of operation based on the time of day, it is also contemplated that pump control logic 84 could select the mode of operation based on the time of year (e.g., season).
- pump control logic 84 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 4130 , pump control logic 84 could receive the ZIP code data from the user interface device.
- pump control logic 84 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi).
- FIG. 19 AE is a flowchart illustrating processing steps carried out by the pump control logic 84 for determining and running a mode of operation based on the amount of sun exposure.
- pump control logic 84 receives operational data from an ambient light sensor (e.g., sun exposure).
- pump control logic 84 retrieves ambient light setpoints (e.g., minimum and/or maximum sun exposure for modes of operation) from the memory.
- ambient light setpoints e.g., minimum and/or maximum sun exposure for modes of operation
- pump control logic 84 determines if the current ambient light is above the minimum setpoint. Conversely, pump control logic 84 could also determine if the current ambient light is below the below the minimum setpoint or above or below the maximum setpoint, thereby determining high or low sun exposure.
- pump control logic 84 proceeds to step 4140 , where pump control logic 84 retrieves equipment setpoints (e.g., pump speed/flow) for a high sun exposure operation mode. If a negative determination is made in step 4138 , pump control logic 84 proceeds to step 4144 , where pump control logic 84 retrieves equipment setpoints (e.g., pump speed/flow) for a low sun exposure operation mode. In step 4142 , pump control logic 84 transmits an instruction(s) to installed pool/spa equipment to operate at the retrieved setpoints for the current operation mode and then the process reverts to step 4134 .
- equipment setpoints e.g., pump speed/flow
- FIG. 19 AF is a flowchart illustrating processing steps carried out by pump control logic 84 for minimizing sound pressure when pool occupants are in close proximity to a pumping system.
- pump control logic 84 receives operational data from a proximity sensor.
- pump control logic 84 determines if there are pool occupants in close proximity. If a positive determination is made in step 4148 , pump control logic 84 proceeds to step 4150 , where pump control logic 84 retrieves maximum ambient noise setpoint data for pump operation from the memory (e.g., maximum allowable decibels when occupants are in close proximity to the pump).
- pump control logic 84 receives ambient noise operational data (e.g., measured decibels from a microphone positioned at or near the pump).
- ambient noise operational data e.g., measured decibels from a microphone positioned at or near the pump.
- pump control logic 84 determined if the measured ambient noise is above the maximum ambient noise setpoint. If a positive determination is made at step 4154 , pump control logic 84 proceeds to step 4156 , where pump control logic 84 transmits an instruction to the pump to decrease output (e.g., reduce speed by 5%), thereby reducing the decibels generated by the pump. Pump control logic 84 then reverts to step 4152 . If a negative determination is made at step 4154 , pump control logic 84 reverts to step 4152 .
- pump control logic 84 proceeds to step 4158 , where pump control logic 84 determines if the operation of the pumping system has been altered (e.g., the output of the pump was previously reduced from normal operating levels). If a negative determination is made in step 4158 , pump control logic 84 reverts to step 4146 . If a positive determination is made in step 4158 , pump control logic 84 proceeds to step 4160 , where pump control logic 84 transmits an instruction to the pump system equipment to resume normal operation. Thus, pump control logic 84 could reduce the output of the pumping system to reduce decibel levels when pool occupants are detected, but resume normal operation when pool occupants are no longer present.
- FIG. 19 AG is a flowchart illustrating processing steps carried out by pump control logic 84 for addressing alert conditions. More specifically, pump control logic 84 could ask the user if it should automatically address the issue and if it should automatically address the issue in the future.
- pump control logic 84 transmits an alert and recommendation to the user (e.g., “Excessive Motor Heating—Reduce Speed”). The alert and recommendation can be generated as described herein, in connection with FIG. 19 D .
- pump control logic 84 prompts the user for automatic system implementation of the recommendation (e.g., “Reduce Motor Speed?—Y/N”).
- pump control logic 84 determines if the user elects automatic implementation of the recommendation.
- step 4166 If a negative determination is made in step 4166 , the process ends. If a positive determination is made in step 4166 , pump control logic 84 proceeds to step 4168 , where pump control logic 84 prompts the user for automatic implementation of the recommendation for subsequent similar alerts (e.g., “Automatically Address This Alert From Now On?”). In step 4170 , pump control logic 84 determines if the user elects automatic implementation for subsequent alerts. If a positive determination is made in step 4170 , pump control logic 84 saves the user preference to memory. In step 4174 , pump control logic 84 transmits an instruction to the installed pool/spa equipment to implement the recommendation (e.g., reduce motor speed). If a negative determination is made in step 4170 , pump control logic 84 proceeds to step 7174 and the process then ends.
- step 4168 pump control logic 84 prompts the user for automatic implementation of the recommendation for subsequent similar alerts (e.g., “Automatically Address This Alert From Now On?”).
- step 4170 pump control logic 84
- FIG. 19 AH is a flowchart illustrating processing steps carried out by pump control logic 84 for automatically advising the user of nearby pool service companies when the pumping system, or any other installed pool/spa equipment, needs attention. It is contemplated that pump control logic 84 could notify the user by way of an on-board indicator provided on the pumping system and/or by way of a notification “pushed” out to other devices (e.g., smart devices) via any of the communication protocols disclosed herein. Pump control logic 84 could also automatically notify a user's preferred pool service provider when the pumping system, or any other installed pool/spa equipment, needs attention. In step 4176 , pump control logic 84 receives operational data from the installed pool/spa equipment (e.g., temperature of pump motor).
- operational data e.g., temperature of pump motor
- pump control logic 84 determines if any of the installed pool/spa equipment is in need of service. Pump control logic 84 can determine if any of the pool/spa equipment is in need of service by way of a similar process as described herein, in connection with FIG. 19 D . If a negative determination is made in step 4178 , pump control logic 84 returns to step 4176 . If a positive determination is made in step 4178 , pump control logic 84 proceeds to step 4186 , where pump control logic 84 determines the location of the pool/spa. The location of the pool/spa can be determined by way of a similar process as described herein, in connection with FIG. 19 V .
- pump control logic 84 receives web data on local pool service providers (e.g., pool service providers in close proximity to the pool/spa location).
- pump control logic 84 prompts the user to select a preferred service provider (e.g., from a list of the local pool service providers.
- pump control logic 84 stores the selected service provider to memory.
- pump control logic 84 transmits an alert to the selected service provider (e.g., skimmer filter at [address] requires replacement).
- pump control logic 84 could automatically notify a previously selected preferred service provider when any of the pool/spa equipment needs attention.
- pump control logic 84 could determine if a pool service provider was previously selected. If a negative determination is made in step 4180 , pump control logic 84 proceeds to step 4186 . If a positive determination is made in step 4180 , pump control logic 84 proceeds to step 4182 , where pump control logic 84 retrieves the previously selected service provider data from the memory. In step 4184 , pump control logic 84 transmits an alert to the previously selected service provider (e.g., skimmer filter at [address] requires replacement). Pump control logic 84 then returns to step 4176 .
- FIG. 19 AI is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor the status of the filter.
- the pump control logic 84 retrieves data on the factory specified parameters from memory for flow and/or pressure drop in the pump.
- the pump control logic 84 receives operational data from a sensor regarding the flow and/or pressure drop in the pump.
- the pump control logic 84 determines the pressure drop and/or flow rate in the pump.
- the pump control logic 84 determines whether the pressure and/or flow rate is within the factory specified parameters. If a positive determination is made, the process ends, and if a negative determination is made, the pump control logic 84 proceeds to step 4310 where the appropriate valves are actuated to initiate backwash filtering.
- FIG. 19 AJ is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor the debris on the surface of the pool.
- the pump control logic 84 receives operational data from the vision system which provides the location and amount of debris in locations of the pool surface.
- the pump control logic 84 determines the location of high debris area on the pool surface.
- the pump control logic 84 alters the position of return fittings and the skimmers to remove debris from the pool surface in an efficient and effective manner.
- FIG. 19 AK is another flowchart illustrating the processing logic of the pump control logic 84 .
- pump control logic 84 could determine the correct water flow for water features by communicating with other pieces of installed pool/spa equipment which advise pump control logic 84 of optimum performance criteria. This logic could reside in other installed pool/spa equipment and be communicated to the pump, or the logic could be contained within the pump itself.
- the pump control logic 84 receives an instruction to determine the correct flow for a water feature.
- the pump control logic 84 retrieves data for the water features from memory. The data retrieved can include, but is not limited to, type of water feature, size, capacity, water flow capacity, water flow levels, etc.
- the pump control logic 84 receives user input, if any, for water feature customization to achieve a custom appearance. For example, a manual mode could be provided to allow the user to specify the desired water feature performance. If there is no user input, then the pump control logic 84 can use the data retrieved in step 4322 . In step 4326 , the pump control logic 84 can calculate the optimal flow rate based on the characteristics of the water feature. Such characteristics, include but is not limited to, water feature, size, capacity, water flow capacity, water flow levels, etc. In step 4328 , the pump control logic 84 receives a schedule for the water features, if any.
- step 4330 the pump control logic 84 adjusts the valves of the water feature so that the their operation can be schedule based.
- the pump control logic 84 transmits the flow rate needed for the water feature.
- the type of water features can include, but is not limited to, laminars, bubblers, waterfalls, deck jets, fountains, and skuppers.
- FIG. 19 AL is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to provide flow to a heater.
- the pump control logic 84 retrieves water temperature set point data for heater operation from memory. This data could include minimum and maximum water temperatures set by a user or set by factory specified operating parameters.
- the pump control logic 84 receives operational temperature data.
- the pump control logic 84 determines whether the water temperature is below a minimum set point. If a positive determination is made, the pump control logic 84 proceeds to step 4342 to transmit an instruction to provide flow to the heater.
- step 4344 determines whether the water temperature is above a maximum set point. If a negative determination is made, the process ends. If a positive determination is made, the pump control logic 84 actuates valves to bypass the heater to improve hydraulic efficiency in step 4346 .
- FIG. 19 AM is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to activate a heater or monitor or address heating controls.
- the pump control logic 84 retrieves an optimum flow rate set point data for heater operation from memory.
- the pump control logic 84 receives operational flow rate and/or valve position data.
- the pump control logic 84 receives data from the heat source identifying when the heat source has adequate flow and/or pressure to operate.
- the pump control logic 84 determines whether the operational data is within the optimal set point range.
- step 4356 the pump control logic 84 proceeds to step 4356 to store and/or update current optimal flow rate for each heater device.
- the pump control logic 84 can store a history of this data. If a negative determination is made, the pump control logic 84 proceeds to step 4358 where a determination is made regarding whether retries are remaining. If a positive determination is made, the pump control logic 84 proceeds to step 4360 , to transmit an instruction to increase flow to the heater by five percent. Any other percentage increase could be used. If a negative determination is made, the pump control logic 84 proceeds to step 4362 to transmit an error condition and the process would then end.
- FIG. 19 AN is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to manage a pump.
- the pump control logic 84 receives operational data from a pool cover.
- the pump control logic 84 determines whether the pool cover is closed. If a negative determination is made, the pump control logic 84 reverts back to step 4366 . If a positive determination is made, the pump control logic 84 proceeds to step 4370 where it retrieves pool configuration parameters from memory such as pool surface area, volume, geometry, water features, etc. in step 4372 , the pump control logic 84 determines proper operation of the pump when the pool cover is closed based on the factors retrieved above.
- step 4374 the pump control logic 84 determines proper pump speed to ensure the pool cover is not damaged by flooding.
- step 4376 the pump control logic 84 can determine the decreased rate of chlorine reduction due to lack of direct sunlight or less solar loading.
- step 4378 the pump control logic 84 transmits instructions to pump of the foregoing calculations such as proper pump speed.
- FIG. 19 AO is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to manage the water level in the pool.
- the pump control logic 84 retrieves pool water level settings from memory. This setting can be user set or set by factory default parameters.
- the pump control logic 84 receives operational data from a sensor monitoring the water level in a pool.
- the pump control logic 84 determines whether the water level is within the set point parameters. If a positive determination is made, the pump control logic 84 proceeds to step 4388 to transmit an appropriate message to the user or the system.
- step 4390 the pump control logic 84 transmits an appropriate message to the user or the system that the water level is not in set point range and that the pump operation has been adjusted to remedy the water level situation.
- FIG. 19 AP is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to manage the operation of the pump based on the number of bathers in the pool.
- the pump control logic 84 receives operational data from motion sensors.
- the pump control logic 84 determines the number of bathers in the pool based on the data from the motion sensors.
- the pump control logic 84 retrieves pool configuration parameters from memory. Such parameters could include, but is not limited to, pool surface area, volume, geometry, etc. The parameters will assist the pump control logic 84 in step 4402 to determine proper pump speed based on the number of bathers in the pool.
- the pump in step 4402 can adjust its operation based on the number of bathers.
- the pump control logic 84 could also control other equipment that needs to be deactivated or activated based on the presence and/or number of bathers in the pool. For example, in step 4404 , the pump control logic 84 determines whether to activate or deactivate other pool equipment based on the number of bathers in the pool. In step 4406 , the pump control logic 84 transmits the deactivation or activation signal to the other equipment.
- FIG. 19 AQ is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor system curve of the pump which is the summation of the dynamic head.
- the pump control logic 84 retrieves data regarding the pump from memory.
- the pump control logic 84 receives operational data from sensors monitoring the pump.
- the pump control logic 84 estimates or calculates the system curve based on the multiple speeds of the pump. Alternatively, pump control logic 84 could estimate or calculate the overall system curve based on a single point.
- the pump control logic 84 provides an indication of system efficiency rating and alerts trade and/or consumers based on factory defined or selectable changes.
- the pump control logic 84 provides an indication of system efficiency such as “efficiency mode,” “performance mode” etc. and assigns a push button to go to a selected mode with one push of a button.
- the pump control logic 84 calculates periods of hydraulic inefficiencies and in step 4422 , it recommends ways to improve hydraulic efficiency.
- the pump control logic 84 auto-delivers the correct flow or speed to make the equipment more efficient. For example, pump control logic 84 could measure suction head (negative pressure) on the vacuum side of the pump and measure pressure head on the pressure side of pump, both measurement devices being integral or adjacent to the pump, to derive Total Dynamic Head (“TDH”).
- TDH Total Dynamic Head
- pump control logic 84 could compare the calculated system curve to known industry system curves (e.g., “Curve A”, “Curve C”, etc.) and determine a hydraulic efficiency “score.” Pump control logic 84 could then determine how to improve the efficiency score and then either provide general suggestions to the user to improve said score, or automatically implement the suggestions. In one example, pump control logic 84 could monitor the typical operating flow of the pool/pump and suggest alternate schedules that would achieve the same number of turnovers in a day with lower power consumption.
- FIG. 19 AR is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to monitor demand based operation from local utility companies.
- the pump control logic 84 retrieves data on factory specified parameters from memory for the utility company.
- the pump control logic 84 receives operation data of the pump flow.
- the pump control logic 84 determines whether the pump operational data is within the set point parameters set by the utility company. If a positive determination is made, the pump control logic 84 proceeds to step 4434 where a message is transmitted to the user regarding the pump operational data being within the set point parameters of the utility company and the process ends.
- step 4436 the pump control logic 84 performs a function or changes the pump operation to conform to the utility company set point parameters. Then in step 4438 , the pump control logic 84 transmits a message that the pump operation has changed to conform to the utility company standards.
- FIG. 19 AS is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to provide flow to a selected pool equipment.
- the pump control logic 84 retrieves data on factory specified parameters from memory for the pumping needs of a selected pool equipment.
- the pump control logic 84 determines whether the flow data is being defined by the selected pool equipment. If a negative determination is made, the pump control logic 84 proceeds to step 4446 where the pump itself defines the flow parameters for the selected pool equipment based on the flow provided by the pump. If a positive determination is and after step 4446 , the pump control logic 84 proceeds to step 4448 where it receives operational data for the flow of the pool equipment.
- step 4450 the pump control logic 84 determines whether the flow data is within the set point parameters either defined by the equipment or the pump. If a positive determination is made, a message is transmitted to the user or the system that the flow data is within operating parameters. If a negative determination is made, the pump control logic 84 proceeds to step 4454 where the speed of the pump is increased periodically to meet the demand of the pool equipment and the process again reverts to step 4448 to receiver operational data and make the same determination in step 4450 .
- FIG. 19 AT is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to measure the turbidity of the water.
- the pump control logic 84 retrieves data on factory specified parameters from memory regarding the turbidity of the water.
- the pump control logic 84 recieves operational turbidity data.
- the pump control logic 84 determines whether the turbidity data is within the specified operating parameters. If a positive determination is made, the pump control logic 84 proceeds to step 4464 where a message is transmitted regarding the turbidity data being within the operating range.
- step 4466 a determination is made as to whether the user wants to set a blackout time instead of a filter time. If a negative determination is made, the pump control logic 84 proceeds to step 4468 where the pump control logic 84 automatically sets the filter schedule based on turbidity level. If a positive determination is made, the pump control logic 84 sets a blackout time period based on the user input in step 4470 . Then in step 4472 , the pump control logic 84 adjusts the pump to pump only what is needed to save energy and meet turbidity levels.
- FIG. 19 AU is another flowchart illustrating the processing logic of the pump control logic 84 .
- the pump control logic 84 receives an instruction to prime the pump.
- the pump control logic 84 can start the pump at the desired speed, not the prime speed.
- the pump control logic 84 receives operation data from the pump regarding water detection.
- the pump control logic 84 determines whether water is detected. If a positive determination is made, the pump control logic 84 proceeds to step 4480 where the priming period timer is cleared and the process ends. If a negative determination is made, the pump control logic 84 proceeds to step 4482 where a timer is started or continued.
- step 4484 the pump control logic 84 make a determination as to whether there is time remaining in the timer that was started. If a positive determination is made, the pump control logic 84 decrements the timer and proceeds back to step 4476 . If a negative determination is made, the pump control logic 84 proceeds to step 4484 where a determination is made as to whether if the current try is a retry. If a positive determination is made, the pump control logic 84 proceeds to step 4490 where an error condition is transmitted alerting the system or user that the priming failed and the process ends. If a negative determination is made and the current try is the first try, then the pump control logic 84 proceeds to step 4492 where the pump is stopped and allowed to cool. Then in step 4494 , the pump control logic 84 reprimes at the maximum rotations per minute until flow return, then immediately the pump control logic 84 will return to the user or firmware desired speed.
- the above processes for the pump control logic 84 can also be applied to a pumping system that is able to manage auxiliary pumps used at any given site. Some of the management features can include, but is not limited to, turning auxiliary pumps on/off according to specific schedules, as well as changing the pump speed for a variable speed pump. Indeed, all of the processes for the pump control logic 84 as shown with respect to FIGS. 18 - 19 AU can be applied to auxiliary pumps.
- Auxiliary pumps can include, but are not limited to, pressure cleaner booster pumps, waterfall pumps, and pumps used for water features or spas.
- any of the various processes in the embodiments described herein in connection with FIGS. 19 A- 19 AU could be incorporated into pump control logic 84 either alone or in any combination.
- any additional processes disclosed herein in connection with pool control logic 70 e.g., water feature control logic 72 , valve actuator control logic 74 , cleaner control logic 76 , lighting control logic 78 , heater control logic 80 , chemistry automation control logic 82
- pump control logic 84 either alone or in any combination.
- the pump could include or be modularly upgradeable to include any of the various processes in the embodiments described herein in connection with FIGS. 19 A- 19 AU .
- pool control logic 70 e.g., water feature control logic 72 , valve actuator control logic 74 , cleaner control logic 76 , lighting control logic 78 , heater control logic 80 , chemistry automation control logic 82 ).
- embodiments may provide smart valves/smart valve actuators that include an actuator which rotates valves in response to a control signal.
- the smart valve actuator may function as a stand-alone control for its associated valve or valves.
- the smart valve actuator may operate in conjunction with a control automation system as described herein.
- the smart valve actuator can operate according to a preset, preconfigured, and/or modifiable schedule.
- the smart valve actuator as described further below may provide for an easier installation and use by untrained installers and users. Further, the smart valve actuator may reduce the time and cost required when needing multiple pumps and ball valves to attain a perfect balance of distributed or shared water features. Additionally the smart valve actuator gives the pool owner control over his water features, the ability to articulate and balance them remotely, and the possibility of providing varied effects on demand.
- valve actuators have been used to electrify a valve to enable remote control.
- Existing valve actuators have internal or software driven limit switches that the installer can use to program the valve actuator to stop turning the valve at the desired point. This allows a valve to turn to a desired point and deliver a desired effect on a water feature, and prevents the actuator motor from turning the valve to inappropriate positions that may ‘dead-head’ the plumbing, blocking all water flow.
- the installer of such a valve actuator must carefully mount the valve actuator in one of four orientations on top of the valve in order to place the existing 180 degrees of control in the needed orientation with the valve. Then the installer must disassemble the actuator body and carefully re-position two cams so that when the shaft position reaches the desired limit, the cam depresses an internal limit switch and disconnects power to the motor. This installation procedure is time consuming and requires skill.
- Traditional (non-smart) valve actuators have also required an AC low-volt power supply to power the actuator's motor. This power source may require additional circuitry or power transformers to generate this power source dedicated only for use to power the actuator motor.
- traditional valve actuators have only one programmable limit for clockwise and one for counterclockwise actuation. These programmable limits may be set to achieve a particular effect on a water feature, for example causing a pleasing flow on a fountain or a desired height on a deck jet. However, if the water flow or pressure changes at the input port of the valve, the desired effect is lost. Similarly, water flow will change due to pump speed changes, filter media condition, and interaction with the valve position of additional valves in the system or booster pumps that may divert water.
- Embodiments provide a smart valve actuator that addresses many of the drawbacks of traditional valve actuators.
- a smart valve actuator has the ability to be controlled directly at the device or from the pool automation system in the same manner as one would control a variable speed pump, for example, by providing control of intermediate positions via software control.
- the smart valve actuator may be addressed automatically from the control.
- the control may be given an address of the smart valve actuator that enables the control to transmit fixed and variable commands to the smart valve actuator.
- Embodiments may provide a number of additional features such as the ability to set minimum and maximum settings for each smart valve actuator to allow for minimum and maximum allowed flow and to set protection limits to prevent the valve from turning to potentially damaging positions.
- Additional features may enable the configuration/setting of high, medium and low default flow settings and the ability to control positions variably by using, as non-limiting examples, digital or analog + and ⁇ buttons, a digital or analog slider, or a rotary knob on the controller or on the actuator to control the flow.
- LEDs may be provided that allow the pool owner or servicer to identify settings, set points and flow at a glance.
- an added flow, temperature or pressure sensor can monitor the water properties of the output flow and automatically adjust the valve position to seek a programmed setpoint and/or an absolute position sensor can allow manual valve actuation without requiring re-synchronization after the motor is re-connected to the shaft, thereby eliminating the need to mount the smart valve actuator in a particular orientation because the device can manage the valve angle over the entire 360 degree rotation of the valve.
- the smart valve actuator can be used manually or through automation.
- the smart valve actuator may sit on an existing valve, may have a valve integral to it on pool equipment plumbing or may be located at a location in the backyard to control a flow of water between one to many plumbed water ports.
- the smart valve actuator is capable of receiving from, or giving to, a pool controller, a unique address that enables communication of specific commands and settings between the actuator and its controlling entity.
- the smart valve actuator when controlled by the pool automation system, may communicate by communication protocols, including without limitation, RS485, Ethernet, WiFi, Bluetooth, ZWave, Zigbee, thread, cellular or another communication protocol.
- Wireless control of the smart valve actuator from a web-enabled device or the pool controller may occur in the following embodiments: when the WiFi chip is on main (intelligence) PCB, is attached/plugged into main PCB, is modularly upgraded on the main PCB or in the PCB enclosure, is modularly upgraded on/external to the main PCB enclosure, or is remote to the main PCB enclosure.
- An antenna may be mounted with, or located remote to, the WiFi chip for all prescribed locations/methods described above.
- the smart valve actuator may also allow pool controlling devices to communicate directly with web-enabled devices (e.g.: phone, tablets, phones, thermostats, voice enabled devices, etc.) without the need to go through a home router.
- the smart valve actuator can be configured to set specific open and close valve settings, and it can be defaulted or configured with default settings for low flow, medium flow, high flow, or programmable flow at varied angles. These flow rates can be used to dial in settings when a pump is powering the water associated with water features. In some cases these flow rates can be used to achieve the desired outcome at the lowest flow increasing the pool's energy efficiency.
- the smart valve actuator's position may be variably controlled in a number of ways, such as without limitation, by using push and hold digital or analog buttons, digital or analog + and ⁇ buttons, a digital or analog slider, and/or a rotary knob on the controller or on the actuator to control the flow.
- the smart valve actuator may be used to automate filter valves and their associated positions such as, for example, filter, backwash, rinse, waste, closed, recirculate, and winterize.
- An additional benefit of the smart valve actuator is that it may allow filters and valves to be bypassed when not required for certain applications, such as when operating an attached spa, thereby improving flow and energy efficiency.
- the smart valve actuator could be used in connection with the addition of chemicals (e.g., ORP, pH, free chlorine, etc.) to the pool/spa.
- the smart valve actuator could be used to integrate the automation of various positions for tablet feeding automation.
- the smart valve actuator may be used to automatically manage water flow needed for operation of suction and pressure cleaners.
- the pump When a smart valve actuator is used in conjunction with a variable speed pump, the pump may be able to increase its speed to deliver the flow necessary for proper operation of a suction or pressure cleaner, thereby maximizing energy savings when compared to running the variable speed pump at a higher speed throughout the day.
- the smart valve actuator control may set angles via commands. The commands may be stored in the controller or the actuator processor. The change in settings may be done automatically; may be done through power interruption to move to the next setting, may be done through time duration of the power interruption; and may be done with a manual setting on the actuator.
- the smart valve actuator may have 1 to many increments with increments set at 0.5 degrees for 180 degrees, or other resolution or range.
- the smart valve actuator may measure the angle set manually and store that position in memory for use as one of its default settings.
- the smart valve actuator may include sensor capabilities to measure the temperature, flow rates and./or pressure of the input water or output water when the valve is diverted and be able to use the measured parameters to turn the motor to achieve a desired setpoint.
- the flow sensing or pressure sensing may be built into the smart valve actuator or may be attained by a secondary flow sensor.
- a stored setpoint flow/pressure level may be used by a PID loop (or other control algorithm) to turn the valve to a needed position to achieve the flow and the smart valve actuator may update the position if conditions (pressure, flow, etc.) changes.
- the smart valve actuator provides a number of improvements over traditional (non-smart) valve actuators.
- the smart valve actuator may manage a fluid level in a spa with a sensor or may manage return valves from a spa to prevent the spa from emptying or overfilling via level sensing.
- the smart valve actuator may block a water feature flow if ambient temperatures are too low thus providing a valve-controlled freeze protection.
- the smart valve actuator may be operated by a bi-metallic switch as an input that reverses the motor at low temperatures (no circuit board needed).
- the smart valve actuator may communicate with a pool cover sensor input that prevents activation of a water feature if the pool cover is closed.
- the smart valve actuator may open a solar panel return if the solar panel temperature has reached a desired setpoint.
- the smart valve actuator may include a wind sensor and block a water feature flow if forecasted wind (retrieved from the web) is too high. For example, the smart valve actuator may reverse the motor at higher wind speeds to stop water features from dumping water out of the pool. The smart valve actuator may also block a water feature if flooding is sensed by float or conductivity sensing.
- the smart valve actuator may include a dual input power capability that can accept either AC power inputs or DC power input to power the motor.
- the smart valve actuator can include a handle, or the like, to provide for manual operation of the smart valve actuator, if necessary, during loss of power (e.g., power cable being cut) or loss of communication (e.g., communications cable being cut, electronics failure, etc.) to the smart valve actuator.
- loss of power e.g., power cable being cut
- loss of communication e.g., communications cable being cut, electronics failure, etc.
- the smart valve actuator may monitor energy saving interactions with a pump to support a minimum required speed to achieve requested flows in all of the active water features. This approach may enable all water to go through the water features and none through the return jets because of 100% efficiency.
- the smart valve actuator may request a higher RPM if the desired flow cannot be achieved (a pump runs only at filtration speed, but if a water feature is turned on, the smart valve actuator controller can request increased speed if the flow setpoint cannot be achieved).
- the smart valve actuator position may also be adjusted to see if a desired flow rate can be achieved at the filtration flow rate.
- Calculations may be performed to determine the most efficient pump speed to achieve the desired results by algorithm or by communication from the pump of the power draw.
- the use of the smart valve actuator may facilitate measuring and reporting excess flow by comparing the controlled quantity to the valve position and computing the margin available; i.e. determining if the pump speed is higher than needed to achieve the requested water feature flow.
- the computation may indicate what reduction in pump speed may be implemented.
- Embodiments may perform flow sensing and pressure sensing. For example, flow may be measured with a paddle wheel or a turbine and interpreted by a co-located processor or remotely located processor. Flow may also be measured with ultrasonic doppler methods, thermal mass/dispersion methods, magnetic/induction methods, optical methods, etc. Pressure sensing may be performed with a flow sensor mounted on a pipe, or a tube run from the pipe to a sensor mounted on the circuit board. Methods for pressure sensing include strain gage piezoresistive methods, capacitive methods, magnetic diaphragm displacement methods, optical methods, resonant frequency methods, etc. The smart valve actuator may also utilize a temperature sensor. For example, temperature sensing can determine ambient temperature, remote solar panel temperature, or water temperature at the input or output ports.
- the smart valve actuator may include protection features for the pool system.
- the protection features may include stored limits of damaging valve positions and undesired valve positions along with software to automatically restore permitted valve positions after manual actuation of the valve or understand its position upon power-up to assure that the valve is in the correct position.
- the smart valve actuator may facilitate motor current monitoring and input voltage monitoring to initiate scale-back or shutdown to protect life and prevent internal damage to pool system components.
- the pool system may have a ‘legacy’ mode that can accept travel limit settings via pushbutton or power interrupt signaling from the controller.
- This legacy mode can be implemented by disconnecting the motor from the drive shaft and signaling the software by timed direction reversals, wireless communication, or a physical or magnetic pushbutton.
- software can learn the relationship between valve angle and measured parameters and predict if a requested setting is possible based on a simulation of what valve angle will be needed to achieve the desired effect.
- the software may contain methods to prevent ‘hunting’ or needless motor activation for minor fluctuations of the measured parameters.
- the motor drive software may generate stepper motor signals to drive the motor faster or slower than current products based on synchronous motors.
- FIG. 20 is a diagram 1200 illustrating chemistry automation control logic 82 .
- Chemistry automation control logic 82 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically, chemistry automation control logic 82 can communicate with, or receive, user input data 1202 , chemistry automation operational data 1204 , chemistry automation factory specifications 1206 , chemistry automation configuration parameters 1208 , web data 1210 , pool configuration parameters 1212 , data from related devices 124 , health monitoring data 1216 , and/or external sensor data 1218 .
- User input data 1202 could include timers, schedules (e.g., on/off, what speed, operation duration, etc.), chlorination levels, alternative sanitizers (e.g., liquid, chlorine, tablets, etc.), etc.
- Chemistry automation operational data 1204 could include water chemistry, water temperature, air temperature, water detection, water flow (rate), water flow (yes/no), water pressure, air cavitation, salt concentration, chemistry dispense rate, power consumption, current draw, water conductivity, salinity, applied voltage, water hardness, etc.
- Chemistry automation factory specifications 1206 could include power consumption, current draw, input voltage, etc.
- Chemistry automation configuration parameters 1208 could include IP address, GPS coordinates, zip code, time and date, etc.
- Web data 1210 could include location (based on IP address), time and date, sunrise/sunset data, regional and local weather forecast data, temperature, ambient light, solar radiation, humidity, season, elevation, dew point, etc.
- the chemistry automation logic 82 could shift operation based on weather input.
- Pool configuration parameters 1212 could include pool surface area, pool geometry, pool liner color, pool cover (yes/no), volume, etc.
- Data from related devices 1214 could include data relating to at least the following: pump(s), heater(s) (gas/heat pump), heat (solar), pool covers, controller(s), spa(s), water feature(s), secondary pump(s), valves/actuators/bypasses, alternative sanitizers (agent, fill level, weight, feed rate, etc.), etc.
- the chemistry automation control logic 82 could receive input from an external device to identify an operating profile.
- Health monitoring data 1216 could include power consumption, current monitoring, line-to-line balance, grounding, bonding, leak current, runtime, operating temperatures, number of power cycles, efficiency, pressure drop of scaling cell (chlorinator), presence of gas pockets (chlorinator), ultraviolet output (UV sanitizer), ozone suction (UV sanitizer), lamp temperature (UV sanitizer), time to clean (chemistry dispenser), age of dispense medium (chemistry dispenser), born on date (chemistry dispenser), etc.
- chlorinator chlorinator
- UV sanitizer ultraviolet output
- UV sanitizer ozone suction
- lamp temperature UV sanitizer
- time to clean chemistry dispenser
- age of dispense medium chemistry dispenser
- born on date chemistry dispenser
- External sensor data 1218 could include water temperature, water flow rate, air temperature, suction/vacuum pressure, water chemistry, turnover rate of pool, ambient light, pool cover detection, motion sensors, bather detection, salt concentration, pH, water hardness, cyanuric acid levels, turbidity, ozone concentrations, algae, microbial populations, phosphate levels, nitrate levels, water level, bather load, etc. It is noted that, the chemistry automation control logic 82 could sample the water from various locations, including ports, as well as offline sensing equipment.
- the external sensor data 1218 (as well as external sensor data received by any and/or all of the control logic systems 72 - 83 ) can be received from sensors in a plurality of locations, including but not limited to, the pool pad, in the pool itself, or remote from the pool. Additionally, the chemistry automation control logic 82 can receive learned information and a pool cover schedule. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter.
- the user/operator can provide this information by first determining the pool chemistry (e.g., by manually testing the pool chemistry by conventional means that are well known to the art) and then entering the pool chemistry information into the system via a user interface.
- FIGS. 21 A- 21 I are flowcharts illustrating processing steps of the chemistry automation control logic 82 .
- FIG. 21 A is a flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 receives an instruction to activate the chemistry automation system.
- the chemistry automation control logic 82 receives operational data from the chemistry automation system water detection sensor.
- the chemistry automation system water detection sensor can be, for example, a flow switch, flow meter, current flow (“gas sensor”), etc.
- the chemistry automation control logic 82 determines if water is detected.
- step 1306 the chemistry automation control logic 82 transmits an instruction to the chemistry automation system to activate, and the process ends.
- the chemistry automation control logic 82 proceeds to step 1308 where it determines if there are any retries remaining. For example, in step 1308 the chemistry automation control logic 82 could determines if there are any retries remaining for a timer (e.g., 1 hour, 6 hours, 24 hours, or any other suitable time interval), or if there has been no flow detected over the same period of time. If a positive determination is made, e.g., the twenty-four hour timer has not expired, then the process returns to step 1302 and continues from there. If a negative determination is made, e.g., the twenty-four hour timer has expired indicating that there has been no flow over a twenty-four hour period, then the process proceeds to step 1310 where an error condition is transmitted, and the process ends.
- a timer e.g., 1 hour, 6 hours, 24 hours, or any other suitable time interval
- FIG. 21 B is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 receives an instruction to activate the chemistry automation system.
- the chemistry automation control logic 82 retrieves data on factory specified power parameters from memory (e.g., power consumption, current draw, and line voltage).
- the chemistry automation control logic 82 receives line power operational data.
- the chemistry automation control logic 82 determines if the line power is within factory specifications. If a positive determination is made, then the chemistry automation control logic 82 proceeds to step 1320 where it transmits an instruction to the chemistry automation system to activate, and the process ends.
- step 1322 determines if there are any retries remaining. If a positive determination is made, then the process returns to step 1316 and continues from there. If a negative determination is made, then the process proceeds to step 1324 where an error condition is transmitted, and the process ends.
- FIG. 21 C is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 retrieves user-specified chlorination levels from memory.
- the chemistry automation control logic 82 retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc.
- the chemistry automation control logic 82 receives operational data from the chemistry automation system, e.g., chlorination rate.
- chemistry automation control logic 82 determines the length of chlorination time to reach the user-specified level.
- chemistry automation control logic 82 transmits an instruction to the chemistry automation system to run for the determined length of time, and then returns to step 1330 .
- FIG. 21 D is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 retrieves user-specified chlorination levels from memory.
- the chemistry automation control logic 82 receives pump operational data, e.g., turnover rate.
- the chemistry automation control logic 82 receives water chemistry operational data from external sensors.
- chemistry automation control logic 82 transmits pump and water chemistry operational data to memory.
- the chemistry automation control logic 82 determines if the chlorine level is below the user-specified level.
- step 1338 determines whether a negative determination is made, then the chemistry automation control logic 82 returns to step 1338 and continues from there. If a positive determination is made, then the chemistry automation control logic 82 proceeds to step 1346 where it determines the length of chlorination time required to reach the user-specified chlorine level. In step 1348 , the chemistry automation control logic 82 transmits the determined chlorination time to memory. In step 1350 , the chemistry automation control logic 82 transmits an instruction to the chemistry automation system to run for the determined length of time, and then returns to step 1338 .
- FIG. 21 E is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 receives operational data from ambient light sensors.
- the chemistry automation control logic 82 determines the amount of direct sunlight to a body of water.
- the chemistry automation control logic 82 retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc.
- the chemistry automation control logic 82 determines the rate of chlorine reduction due to direct sunlight.
- the chemistry automation control logic 82 transmits an instruction to the chemistry automation system to increase dispensing rate of chlorine by rate of chlorine reduction due to direct sunlight, and then returns to step 1352 .
- FIG. 21 F is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 receives an instruction to activate the chemistry automation system.
- the chemistry automation control logic 82 receives operational data from the pool cover.
- the chemistry automation control logic 82 determines if the pool cover is closed. If a negative determination is made, then the chemistry automation control logic 82 returns to step 1364 and continues from there. If a positive determination is made, then the chemistry automation control logic 82 proceeds to step 1368 where it retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc.
- step 1370 the chemistry automation control logic 82 determines the decreased rate of chlorine reduction due to lack of direct sunlight.
- step 1372 the chemistry automation control logic 82 transmits an instruction to the chemistry automation system to decrease the dispensing rate of chlorine by the decreased rate of chlorine reduction due to lack of direct sunlight, and then returns to step 1364 .
- FIG. 21 G is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 receives an instruction to activate the chemistry automation system.
- the chemistry automation control logic 82 receives operational data from the motion sensors.
- the chemistry automation control logic 82 determines the number of bathers in the pool.
- the chemistry automation control logic 82 retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc.
- the chemistry automation control logic 82 determines an increased chlorine demand based on the number of bathers.
- the chemistry automation control logic 82 transmits an instruction to the chemistry automation system to increase the dispensing rate of chlorine by the increased chlorine demand based on the number of bathers, and then returns to step 1376 .
- FIG. 21 H is a flowchart illustrating processing logic of the chemistry automation control logic 82 determining alert conditions of a chemistry automation system.
- the chemistry automation control logic 82 proceeds with four parallel routine sequences that respectively begin with steps 1386 , 1396 , 1406 , 1416 . Each routine sequence is discussed sequentially, though it should be understood that the routine loops could operate in parallel, or alternatively, in series with each other.
- the first sequence begins in step 1386 where the chemistry automation control logic 82 retrieves factory specified life expectancy data from memory.
- the chemistry automation control logic 82 determines an alert threshold, e.g., less than 90% of chemistry automation life expectancy remaining or runtime value.
- step 1390 the chemistry automation control logic 82 receives operational data on chemistry automation runtime.
- step 1392 the chemistry automation control logic 82 determines if the chemistry automation runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1390 and continues to receive operational data on chemistry automation runtime. If a positive determination is made, then the process proceeds to step 1394 where an alert is transmitted to a user, and the process ends.
- the second sequence begins in step 1396 where the chemistry automation control logic 82 retrieves factory specified operating temperature data from memory.
- the chemistry automation control logic 82 determines an alert threshold, e.g., a temperature value that is 10% above or below operating temperature.
- the chemistry automation control logic 82 receives operational data on chemistry automation system operating temperature.
- the chemistry automation control logic 82 determines if the chemistry automation system operating temperature exceeds the threshold, or is outside of a threshold range. If a negative determination is made, then the process returns to step 1400 and continues to receive operational data on chemistry automation system operating temperature. If a positive determination is made, then the process proceeds to step 1404 where the chemistry automation control logic 82 reduces the output of the chemistry automation system.
- the third sequence begins in step 1406 where the chemistry automation control logic 82 retrieves factory specified power consumption data from memory.
- the chemistry automation control logic 82 determines an alert threshold, e.g., power value that is 110% of specified power consumption.
- the chemistry automation control logic 82 receives operational data on chemistry automation system power consumption.
- the chemistry automation control logic 82 determines if the chemistry automation system power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 1410 and continues to receive operational data on chemistry automation system power consumption. If a positive determination is made, then the process proceeds to step 1414 where the chemistry automation control logic 82 reduces the output of the chemistry automation system.
- the fourth sequence begins in step 1416 where the chemistry automation control logic 82 retrieves factory warranty data from memory, e.g., a warranty expiration date.
- the chemistry automation control logic 82 determines an alert threshold, e.g., days left on factory warranty.
- the chemistry automation control logic 82 receives current date information.
- the chemistry automation control logic 82 determines if the current date is beyond the threshold date or the number of days remaining is below the threshold date. If a negative determination is made, then the process returns to step 1420 and continues to receive current date information. If a positive determination is made, then the process proceeds to step 1424 where an alert is transmitted to a user, and the process ends.
- FIG. 21 I is another flowchart illustrating processing logic of the chemistry automation control logic 82 communicating with a chemistry automation system.
- the chemistry automation control logic 82 retrieves factory specified servicing data from memory, e.g., service intervals.
- the chemistry automation control logic 82 retrieves date of previous service from memory.
- the chemistry automation control logic 82 determines the time to the next service and then proceeds to steps 1432 and 1438 .
- the chemistry automation control logic 82 transmits an instruction to the human-machine interface device to display the time to the next service.
- the chemistry automation control logic 82 determines the alert threshold, e.g., 30 days to next service.
- step 1434 the chemistry automation control logic 82 determines if the time to the next service is less than the threshold. If a negative determination is made, then the process returns to step 1428 and continues to receive the date of pervious service from memory. If a positive determination is made, then the process proceeds to step 1436 where the chemistry automation control logic 82 transmits an alert to the user.
- FIG. 22 is a diagram 1500 illustrating heater control logic 80 .
- Heater control logic 80 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically, heater control logic 80 can communicate with, or receive, user input data 1502 , heater operational data 1504 , heater factory specifications 1506 , heater configuration parameters 1508 , web data 1510 , pool configuration parameters 1512 , data from related devices 1514 , health monitoring data 1516 , and/or external sensor data 1518 .
- User input data 1502 could include heating and/or cooling temperature set points, heating or cooling mode, pool/spa mode, heater x or cooler x, where “x” is an index referring to one or more heating and/or cooling devices, countdown to heat, etc.
- Heater operational data 1504 could include line voltage, power consumption, gas pressure, air pressure or vacuum, air temperature, humidity, other environmental conditions, flow rate, water level, state (e.g., on/off), temperature setpoint, duration setpoint, operating noise, etc.
- Heater factory specifications 1506 could include gas heater input rating, gas heater thermal efficiency, heat pump output & COP (coefficient of performance) at T1 (reference test temperature 1), RH1 (reference test relative humidity 1), heat pump output & COP at T1, RH2 (reference test relative humidity 2), heat pump output & COP at T2 (reference test temperature 2), RH1, heat pump output & COP at T2, RH2, power consumption, current draw, input voltage, etc.
- Heater configuration parameters 1508 could include IP address, GPS coordinates, zip code, etc.
- Web data 1510 could include regional solar irradiance data, regional weather forecast data, regional fuel cost data, direct solar irradiance—modeled clear-sky, diffuse solar irradiance—modeled clear-sky, air temperature, relative humidity, wind speed, cloud cover, cost of natural gas, cost of propane gas, cost of electricity, etc.
- Pool configuration parameters 1512 could include pool surface area, pool volume, emissivity of pool, absorptivity of pool, pool solar exposure, fraction of weather station wind speed at pool surface, desired water temperature, pump schedule, type of pool cover (solar transmittance, thermal conductivity, emissivity, absorptivity), pool cover use schedule, etc.
- Data from related devices 1514 could include data relating to at least the following: pump(s), secondary pump(s), filter bypass, water feature(s), chemical dispensers, valves/actuators/bypass, pool cover(s), controller(s), spa(s), etc.
- the following relationships could exist between the heater control logic 80 the related devices: water features (used to assist loss of heat/coolers), chemical dispensers (logic 80 could open bypass to prevent off balance chemistry from entering the heater), secondary pump (affects overall system flow), tablet/liquid chlorine feeder (if present in system should not be used on the same loop as the heater), and external sensors (could have shared flow switch and water temperature sensors).
- Health monitoring data 1516 could include runtime, operating temperatures/profile, power consumption, predictive failure, number of cycles, degradation of efficiency, pool chemistry, fuel gas pressure, refrigerant pressures, refrigerant temperatures, exhaust temperature, carbon monoxide, freeze and condensation warnings, motor speed (RPM), other operating conditions, settings, troubleshooting data, etc.
- External sensor data 1518 could include air temperature, humidity, ambient noise, pool chemistry, fuel gas pressure, exhaust temperature, carbon monoxide, carbon dioxide, oxygen, vibration, bather detection, etc.
- the heater control logic 80 can receive information pertaining to time limits on setting block heater schedules, maximum allowable temperatures, password protection, scheduled heating, and setback schedules.
- the temperature e.g., by checking a thermometer, a thermocouple, a weather forecast, the internet, etc.
- FIGS. 23 A- 23 J are flowcharts illustrating processing steps of the heater control logic 80 .
- FIG. 23 A is a flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 receives an instruction to activate the heater.
- the heater logic 80 retrieves data pertaining to factory specified power parameters from memory, e.g., parameters relating to power consumption, current draw, and line voltage.
- the heater logic 80 receives line power operational data.
- the heater logic 80 determines whether the line power operational data is within factory specifications. If a positive determination is made, the process proceeds to step 1528 . If a negative determination is made, the process proceeds to step 1530 .
- step 1528 the heater control logic 80 transmits an instruction to the heater to activate, and the process ends.
- the process proceeds to step 1530 .
- step 1530 the heater control logic 80 determines if there are any retries remaining. If a positive determination is made, then the heater control logic 80 proceeds to step 1524 and continues the process from that step. If a negative determination is made, then the heater control logic 80 proceeds to step 1532 and transmits an error condition signal, and then ends the process.
- FIG. 23 B is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 receives an instruction to activate the heater.
- the heater logic 80 retrieves minimum fuel setpoint data for heater operation from memory, e.g., minimum gas pressure.
- the heater logic 80 receives operational data on fuel, e.g., current gas pressure.
- the heater logic 80 determines whether the gas pressure is above a minimum setpoint. If a positive determination is made, the process proceeds to step 1542 . If a negative determination is made, the process proceeds to step 1541 .
- the heater control logic 80 transmits an instruction to the heater to activate, and the process ends.
- step 1541 the heater control logic 80 logs the error timestamp.
- step 1543 the heater control logic 80 determines if the number of error logs for the week exceeds the allowable amount. If a positive determination is made, the process proceeds to step 1545 . If a negative determination is made, the process proceeds to step 1544 . In step 1545 , the heater control logic 80 transmits an alert to the user, and the process ends. As referenced above, if a negative determination is made at step 1543 , then the process proceeds to step 1544 where the heater control logic 80 determines if there are any retries remaining. If a positive determination is made, then the heater control logic 80 proceeds to step 1538 and continues the process from that step. If a negative determination is made, then the heater control logic 80 proceeds to step 1546 and transmits an error condition signal, and then ends the process.
- FIG. 23 C is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 receives an instruction to activate the heater.
- the heater logic 80 retrieves blower setpoint data for heater operation from memory, e.g., minimum air pressure.
- the heater logic 80 receives blower operational data, e.g., air pressure.
- the heater logic 80 determines whether the air pressure is above the minimum setpoint. If a positive determination is made, the process proceeds to step 1556 . If a negative determination is made, the process proceeds to step 1558 .
- the heater control logic 80 transmits an instruction to the heater to activate, and the process ends.
- step 1558 the heater control logic 80 determines if there are any retries remaining. If a positive determination is made, then the heater control logic 80 proceeds to step 1560 and transmits an instruction to the blower to increase the air pressure by 5%, and proceeds to step 1552 and continues the process from that step. It is noted that while the blower could increase air pressure in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then the heater control logic 80 proceeds to step 1562 and transmits an error condition signal, and then ends the process.
- FIG. 23 D is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 receives an instruction to activate the heater.
- the heater logic 80 retrieves water temperature setpoint data for heater operation from memory, e.g., minimum and maximum water temperatures.
- the heater logic 80 receives operational temperature data, e.g., water temperature read by a sensor.
- the heater logic 80 determines whether the water temperature is below the minimum setpoint. If a positive determination is made, the process proceeds to step 1572 . If a negative determination is made, the process returns to step 1568 .
- the heater control logic 80 transmits an instruction to the heater to activate.
- step 1574 the heater control logic 80 receives operational temperature data.
- step 1576 the heater control logic 80 determines if the water temperature is above a maximum setpoint. If a positive determination is made, then the heater control logic 80 proceeds to step 1578 and transmits an instruction to the heater to switch to standby mode, and the process ends. If a negative determination is made, then the heater control logic 80 returns to step 1574 .
- FIG. 23 E is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 receives an instruction to activate the heater.
- the heater logic 80 retrieves minimum flow rate setpoint data for heater operation from memory, e.g., gallons per minute.
- the heater logic 80 receives operational flow rate data.
- the heater logic 80 determines whether the flow rate is above the minimum setpoint. If a positive determination is made, the process proceeds to step 1590 . If a negative determination is made, the process proceeds to step 1592 .
- the heater control logic 80 transmits an instruction to the heater to activate, and the process ends.
- step 1592 the heater control logic 80 determines if there are any retries remaining. If a positive determination is made, then the heater control logic 80 proceeds to step 1594 and transmits an instruction to the pump to increase the flow by 5%, and proceeds to step 1586 and continues the process from that step. It is noted that while the pump could increase flow in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then the heater control logic 80 proceeds to step 1596 and transmits an error condition signal, and then ends the process.
- FIG. 23 F is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 receives an instruction to activate the heater.
- the heater logic 80 retrieves runtime setpoint data for heater operation from memory, e.g., duration of operation.
- the heater logic 80 transmits an instruction to the heater to activate.
- the heater logic 80 sets a countdown timer for a predefined number (“x”) of seconds, where “x” is the desired runtime of the heater, and activates the timer.
- the heater logic 80 determines if the timer has reached “0.” If a positive determination is made, the process proceeds to step 1608 . If a negative determination is made, the process returns to step 1604 .
- the heater control logic 80 transmits an instruction to deactivate the heater, and the process ends.
- FIG. 23 G is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater control logic 80 retrieves maximum ambient noise setpoint data for heater operation from memory.
- the heater logic 80 receives ambient noise operational data.
- step 1614 determines if the ambient noise is above the maximum allowed value. If a positive determination is made, the process proceeds to step 1616 . If a negative determination is made, the process returns to step 1612 .
- the heater control logic 80 determines if there are any retries remaining.
- step 1618 the heater control logic 80 proceeds to step 1618 and transmits an instruction to the heater to decrease the output by 5%, and proceeds to step 1612 and continues the process from that step. It is noted that while the heater could decrease output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then the heater control logic 80 proceeds to step 1620 and transmits an error condition signal, and then ends the process.
- FIG. 23 H is another flowchart illustrating processing logic of the heater control logic 80 communicating with a heater.
- the heater logic 80 receives operational data from ambient noise sensors.
- the heater logic 80 transmits operational data from ambient noise sensors to memory.
- the heater logic 80 determines the average ambient noise setpoint based on operational data from the sensors.
- the heater logic 80 receives operational data from heater noise sensors.
- the heater logic 80 determines if the decibel level is above the average ambient setpoint. If a positive determination is made, the process proceeds to step 1632 . If a negative determination is made, the process returns to step 1628 .
- step 1632 the heater control logic 80 determines if there are any retries remaining. If a positive determination is made, then the heater control logic 80 proceeds to step 1634 and transmits an instruction to the heater to decrease performance by 5%, and proceeds to step 1628 and continues the process from that step. It is noted that while the heater could decrease performance in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then the heater control logic 80 proceeds to step 1636 and transmits an error condition signal, and then ends the process.
- processing logic of the heater control logic 80 shown in FIGS. 23 G and 23 H could be combined into a process that determines the average ambient noise level over a given period of time and then saves the average ambient noise level to the memory for later retrieval as the maximum ambient noise setpoint data for heater operation, illustrated in step 1610 of FIG. 23 G .
- the process could then proceed according to the steps as illustrated in FIG. 23 G as described above.
- FIG. 23 I is a flowchart illustrating processing logic of the heater control logic 80 determining alert conditions of a heater.
- the heater control logic 80 proceeds with four parallel routine sequences that respectively begin with steps 1638 , 1648 , 1658 , and 1668 . Each routine sequence is discussed sequentially, though it should be understood that the routine loops could operate in parallel, or alternatively, in series with each other.
- the first sequence begins in step 1638 where the heater control logic 80 retrieves factory specified life expectancy data from memory.
- the heater control logic 80 determines an alert threshold, e.g., less than 90% of heater life expectancy remaining or runtime value.
- the heater control logic 80 receives operational data on heater runtime.
- step 1642 the heater control logic 80 determines if the heater runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1642 and continues to receive operational data on heater runtime. If a positive determination is made, then the process proceeds to step 1646 where an alert is transmitted to a user, and the process ends.
- the second sequence begins in step 1648 where the heater control logic 80 retrieves factory specified operating temperature data from memory.
- the heater control logic 80 determines an alert threshold, e.g., a temperature value that is 10% above or below operating temperature.
- the heater control logic 80 receives operational data on heater system operating temperature.
- the heater control logic 80 determines if the heater system operating temperature exceeds the threshold, or is outside of a threshold range. If a negative determination is made, then the process returns to step 1652 and continues to receive operational data on heater system operating temperature. If a positive determination is made, then the process proceeds to step 1656 where an alert is transmitted to a user, and the process ends.
- step 1658 the heater control logic 80 retrieves factory specified power consumption data from memory.
- step 1660 the heater control logic 80 determines an alert threshold, e.g., power value that is 110% of specified power consumption.
- step 1662 the heater control logic 80 receives operational data on heater system power consumption.
- step 1664 the heater control logic 80 determines if the heater system power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 1662 and continues to receive operational data on heater system power consumption. If a positive determination is made, then the process proceeds to step 1666 where an alert is transmitted to a user, and the process ends.
- the fourth sequence begins in step 1668 where the heater control logic 80 retrieves maximum carbon monoxide output setpoint from memory, e.g., the maximum permitted carbon monoxide output for the heater.
- the heater control logic 80 determines an alert threshold, e.g., 905 of maximum carbon monoxide output.
- the heater control logic 80 receives operational data on heater system carbon monoxide output.
- the heater control logic 80 determines if the heater system carbon monoxide output is greater than the threshold. If a negative determination is made, then the process returns to step 1672 and continues to receive operational data on heater system carbon monoxide output. If a positive determination is made, then the process proceeds to step 1676 where it transmits an instruction to the heater to deactivate. The process then proceeds to step 1678 and transmits an alert to a user, and the process ends.
- FIG. 23 J is a flowchart illustrating the procedure implemented when heat is being requested by a user.
- the heater control logic 80 receives an instruction that heat is called for.
- the heater control logic 80 proceeds to check if the heater has power.
- the heater control logic determines if the heater has power. If a negative determination is made, then the process proceeds to step 1714 . If a positive determination is made, then the process proceeds to step 1686 .
- the heater control logic 80 determines if there are any retries remaining.
- step 1684 the heater control logic 80 indicates an error condition and the process ends.
- step 1686 the heater control logic 80 checks the gas pressure.
- step 1688 the heater control logic 80 determines if the pressure is within the specified range. If a positive determination is made, then the process proceeds to step 1690 . If a negative determination is made, then the process proceeds to step 1718 . In step 1718 , the heater control logic 80 determines if there are any retries remaining.
- step 1690 the heater control logic 80 checks the blower operation.
- step 1692 the heater control logic 80 determines if the air pressure is within the specified range. If a positive determination is made, then the process proceeds to step 1694 . If a negative determination is made, then the process proceeds to step 1722 . In step 1722 , the heater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process returns to step 1690 .
- step 1724 the heater control logic 80 indicates an error condition and the process ends.
- step 1694 the heater control logic 80 checks the water flow.
- step 1696 the heater control logic 80 determines if the flow rate (GPM) is within the specified range. If a positive determination is made, then the process proceeds to step 1698 . If a negative determination is made, then the process proceeds to step 1726 . In step 1726 , the heater control logic 80 determines if there are any retries remaining.
- step 1728 If a positive determination is made then the process proceeds to step 1728 where it sends an electronic signal to the pump to increase or decrease the flow by 5%, and then returns to step 1694 . It is noted that while the pump could increase or decrease flow in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made in step 1726 then the process proceeds to step 1730 where the heater control logic 80 indicates an error condition and the process ends. As referenced above if a positive determination is made in step 1696 , then the process proceeds to step 1698 . In step 1698 , the heater control logic 80 queries for an operation temperature setpoint.
- step 1700 the heater control logic 80 determines if the operation temperature setpoint has been received. If a positive determination is made, then the process proceeds to step 1702 . If a negative determination is made, then the process proceeds to step 1732 . In step 1732 , the heater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process proceeds to step 1734 where it prompts the heater for a desired water temperature, and then returns to step 1698 . If a negative determination is made in step 1732 then the process proceeds to step 1736 where the heater control logic 80 indicates an error condition and the process ends. As referenced above if a positive determination is made in step 1700 , then the process proceeds to step 1702 .
- step 1702 the heater control logic 80 electronically receives data relating to the water temperature.
- step 1704 the heater control logic 80 determines if the operation temperature setpoint is greater than the water temperature. If a positive determination is made, then the process proceeds to step 1706 . If a negative determination is made, then the process proceeds to step 1740 .
- step 1740 the heater control logic 80 places the heater in standby and returns to step 1702 . As referenced above if a positive determination is made in step 1704 , then the process proceeds to step 1706 .
- step 1706 the heater control logic 80 engages the heater.
- step 1708 the heater control logic 80 starts a timer.
- step 1710 the heater control logic 80 determines if the temperature setpoint is lower than the water temperature. If a positive determination is made, then the process proceeds to step 1712 where it deactivates the heater and the process ends. If a negative determination is made, then the process proceeds to step 1742 . In step 1742 , the heater control logic 80 determines if the operation duration has exceeded the threshold. If a positive determination is made, then the process proceeds to step 1712 where it deactivates the heater and the process ends. If a negative determination is made then the process returns to step 1706 .
- FIG. 24 is a diagram 1800 illustrating lighting control logic 78 .
- Lighting control logic 78 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically, lighting control logic 78 can communicate with, or receive, user input data 1802 , lighting operational data 1804 , lighting factory specifications 1806 , lighting configuration parameters 1808 , web data 1810 , pool configuration parameters 1812 , data from related devices 1814 , health monitoring data 1816 and/or external sensor data 1818 .
- User input data 1802 could include lighting color, lighting intensity, lighting duration, timers, schedule, default program(s), pool temperature setpoint(s), etc.
- Lighting operational data 1804 could include status (on/off), cycles (on/off), line voltage, current draw, power consumption, environment (water/air), temperature (lights), ambient light, light color, light intensity, etc.
- Lighting factory specifications 1806 could include lumen output, life expectancy, current draw, input voltage, power consumption, operating environment, etc.
- Lighting configuration parameters 1808 could include IP address, GPS coordinates, zip code, time and date, etc.
- Web data 1810 could include location (based on IP address), time and date, sunrise/sunset data, local lighting code, regional and local weather forecast data, etc.
- Pool configuration parameters 1812 could include pool surface area, pool geometry, pool liner color, pool cover (yes/no), pool cover schedule, etc.
- Data from related devices 1814 could include data relating to at least the following: additional lights/systems, chlorinator(s), pump(s), cleaner(s), water feature(s), heater (gas), heater (solar), chemical dispenser, valve(s), pool cover (various), controller, spa, water slide, etc.
- the following relationships could exist between the lighting control logic 78 the related devices: valves (activate water features, solenoid, dancing waters, etc.), and water slide (shows path, auto-on).
- Health monitoring data 1816 could include errors, runtime, estimated lumen output, average power consumption, line voltage, line current, percent of light output, operating environment, warranty countdown, water pressure, etc.
- External sensor data 1818 could include ambient light, lighting output, motion/occupancy, bather detection, temperature (pool), moisture, chlorine content, pH level, etc. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter.
- FIGS. 25 A- 25 AB are flowcharts illustrating processing steps of the lighting control logic 78 .
- FIG. 25 A is a flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives an instruction to activate the lighting system.
- step 1822 the lighting control logic 78 retrieves data pertaining to factory specified power parameters from memory, e.g., parameters relating to power consumption, current draw, and line voltage.
- step 1824 the lighting control logic 78 receives line power operational data.
- step 1826 the lighting logic 78 determines whether the line power operational data is within factory specifications. If a positive determination is made, the process proceeds to step 1828 . If a negative determination is made, the process proceeds to step 1830 .
- step 1828 the lighting control logic 78 transmits an instruction to the lighting system to activate, and the process ends. As referenced above, if a negative determination is made at step 1826 , then the process proceeds to step 1830 .
- step 1830 the lighting control logic 78 determines if there are any retries remaining. If a positive determination is made, then the lighting control logic 78 proceeds to step 1824 and continues the process from that step. If a negative determination is made, then the lighting control logic 78 proceeds to step 1832 and transmits an error condition signal, and the process ends.
- FIG. 25 B is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives an instruction to activate the lighting system.
- the lighting control logic 78 retrieves factory specified operating environment data from memory, e.g., is the light in air or water.
- the lighting control logic 78 receives data from lighting fixture moisture sensor.
- the lighting control logic 78 determines the environment of the lighting fixture, e.g., is the fixture in air or water.
- the lighting control logic 78 determines if the lighting fixture is in the environment specified by the factory specified operating environment. If a positive determination is made, the process proceeds to step 1842 .
- step 1844 the lighting control logic 78 transmits an instruction to the lighting system to activate, and the process ends.
- step 1844 the lighting control logic 78 determines if there are any retries remaining. If a positive determination is made, then the lighting control logic 78 proceeds to step 1836 and continues the process from that step. If a negative determination is made, then the lighting control logic 78 proceeds to step 1846 and transmits an error condition signal, and the process ends.
- FIG. 25 C is a flowchart illustrating a process for a user to define a light show.
- the lighting control logic 78 prompts the user for a desired lighting color.
- the lighting control logic 78 receives the desired lighting color data from the user.
- the lighting control logic 78 prompts the user for a desired lighting speed.
- the lighting control logic 78 receives the desired lighting speed data from the user.
- the lighting control logic 78 prompts the user for a desired lighting motion profile.
- the lighting control logic 78 receives desired lighting motion profile data from the user.
- the lighting control logic 78 retrieves pool geometry data from memory.
- step 1862 the lighting control logic 78 processes the data received from the user and the pool geometry data.
- step 1864 the lighting control logic 78 generates a virtual preview of a light show from the user data and pool geometry data.
- step 1866 the lighting control logic 78 transmits the virtual preview of the light show to the user.
- step 1868 the lighting control logic 78 prompts the user to save virtual preview parameters to the memory.
- step 1870 the lighting control logic 78 determines if the user has saved the parameters. If a positive determination is made then the process proceeds to step 1872 where the lighting control logic 78 transmits the parameters to memory as a stored light show, and the process ends.
- step 1874 the lighting control logic 78 prompts the user to enter new parameters, and then proceeds to step 1876 .
- step 1876 the lighting control logic 78 determines if the user has elected to enter new parameters. If a positive determination is made then the process returns to step 1848 . If a negative determination is made then the process ends.
- FIG. 25 D is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters.
- the lighting control logic 78 receives sunrise/sunset data from the web based on the geographic location.
- the lighting control logic 78 receives current time data.
- the lighting control logic 78 determines if the current time is after sunset. If a positive determination is made, the process proceeds to step 1888 .
- step 1884 the lighting control logic 78 delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1882 .
- step 1886 the process proceeds to step 1888 .
- step 1888 the lighting control logic 78 determines if the current time is before sunrise. If a positive determination is made, then the lighting control logic 78 proceeds to step 1890 where it transmits an instruction to activate the lighting system, and the process ends. If a negative determination is made, then the lighting control logic 78 proceeds to step 1892 where it delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1882 .
- FIG. 25 E is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters.
- the lighting control logic 78 receives sunrise/sunset data from the web based on the geographic location.
- the lighting control logic 78 receives current time data.
- the lighting control logic 78 determines if the current time is after sunset. If a positive determination is made, the process proceeds to step 1902 .
- step 1910 the lighting control logic 78 delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1898 .
- step 1902 the lighting control logic 78 determines if the current time is before sunrise. If a positive determination is made, then the lighting control logic 78 proceeds to step 1904 . If a negative determination is made, then the lighting control logic 78 proceeds to step 1892 where it delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1898 .
- step 1904 the lighting control logic 78 receives operational data from a pool cleaner.
- step 1906 the lighting control logic 78 determines if the pool cleaner is running. If a negative determination is made, then the process returns to step 1898 . If a positive determination is made, then the process proceeds to step 1908 where the lighting control logic 78 transmits an instruction to activate the lighting system.
- FIG. 25 F is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from a water feature.
- the lighting control logic 78 determines the operational status of the water feature.
- the lighting control logic 78 determines if the water feature is running. If a negative determination is made, then the process returns to step 1914 . If a positive determination is made, then the process proceeds to step 1920 where the lighting control logic 78 interlocks with the water feature.
- the lighting control logic 78 transmits an instruction to the lighting system to activate.
- FIG. 25 G is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from a pool cover.
- the lighting control logic 78 determines the operational status of the pool cover, e.g., is the pool cover open or closed.
- the lighting control logic 78 determines if the pool cover is open. If a positive determination is made, then the process returns to step 1924 . If a negative determination is made, then the process proceeds to step 1930 where the lighting control logic 78 transmits an instruction to the lighting system to deactivate, and then returns to step 1924 .
- FIG. 25 H is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives an instruction to activate the lighting system.
- the lighting control logic 78 receives operational data from a pool cover.
- the lighting control logic 78 determines the operational state of the pool cover, e.g., is the pool cover open or closed.
- the lighting control logic 78 determines if the pool cover is open. If a positive determination is made, then the process proceeds to step 1940 where the lighting control logic 78 transmits an instruction to the lighting system to activate and then returns to step 1934 .
- step 1942 the lighting control logic 78 determines if there are any retries remaining. If a positive determination is made, then the process returns to step 1934 . If a negative determination is made, then the process proceeds to step 1944 where an error condition is transmitted, and the process ends.
- FIG. 25 I is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives an instruction to activate the lighting system.
- the lighting control logic 78 receives operational data from a pool cover.
- the lighting control logic 78 determines the operational state of the pool cover, e.g., is the pool cover open or closed.
- the lighting control logic 78 determines if the pool cover is open. If a positive determination is made, then the process proceeds to step 1960 where the lighting control logic 78 transmits an instruction to the lighting system to activate, and the process ends.
- step 1954 the lighting control logic 78 prompts a user to open the pool cover.
- step 1956 the lighting control logic 78 determines if the user has issued an instruction to open the pool cover. If a negative determination is made, then the process returns to step 1948 . If a positive determination is made, then the process proceeds to step 1958 where the lighting control logic 78 transmits an instruction to the pool cover to open, and the process ends.
- FIG. 25 J is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives a minimum ambient light setpoint value.
- the lighting control logic 78 receives a maximum ambient light setpoint value.
- the lighting control logic 78 receives a current ambient light value from an external sensor.
- the lighting control logic 78 determines if the current ambient light value is below the minimum ambient light setpoint. If a negative determination is made, then the process returns to step 1966 . If a positive determination is made, then the process proceeds to step 1970 where the lighting control logic 78 transmits an instruction to the lighting system to activate the lights.
- step 1972 the lighting control logic 78 receives a current ambient light value from an external sensor.
- step 1974 the lighting control logic 78 determines if the current ambient light value is below a minimum ambient light setpoint. If a positive determination is made, then the process proceeds to step 1980 where the lighting control logic 78 transmits an instruction to the lighting system to increase the lumen output by 5% and then returns to step 1972 . It is noted that while the lighting system could increase lumen output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then the process proceeds to step 1976 .
- step 1976 the lighting control logic 78 determines if the current ambient light value is above the maximum ambient light setpoint. If a negative determination is made (e.g., the ambient light is in the acceptable range—above the minimum setpoint and below the maximum setpoint), then the process proceeds to step 1978 where it delays for a predetermined time period and then returns to step 1972 . If a positive determination is made, then the process proceeds to step 1984 where the lighting control logic 78 determines if there are any retries remaining. If a negative determination is made, then the process proceeds to step 1986 where the lighting control logic 78 transmits an instruction to the lighting system to deactivate the lights and then returns to step 1966 .
- a negative determination e.g., the ambient light is in the acceptable range—above the minimum setpoint and below the maximum setpoint
- step 1982 the lighting control logic 78 transmits an instruction to the lighting system to decrease lumen output by 5% and then returns to step 1972 . It is noted that while the lighting system could increase lumen output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.).
- FIG. 23 K is a flowchart illustrating processing logic of the lighting control logic 78 determining an error condition and preventative maintenance reminders for a lighting system.
- the lighting control logic 78 proceeds with six parallel routine sequences that respectively begin with steps 1988 , 1994 , 2004 , 2014 , 2024 , 2034 . Each routine sequence is discussed sequentially, though it should be understood that the routine loops could operate in parallel, or alternatively, in series with each other.
- the first sequence begins in step 1988 where the lighting control logic 78 monitors for an error condition.
- step 1990 the lighting control logic 78 determines if there is an error condition. If a negative determination is made, then the process returns to step 1988 .
- step 1992 the lighting control logic 78 transmits an error condition.
- step 1993 the lighting control logic 78 determines if the user has snoozed the error condition. If a negative determination is made, then the process ends. If a positive determination is made, then the process proceeds to step 1995 where it delays for a predetermined period of time and then returns to step 1992 .
- the second sequence begins at step 1994 , where the lighting control logic 78 retrieves factory specified life expectancy data from memory.
- the lighting control logic 78 determines a preventative maintenance threshold, e.g., less than 90% of light life expectancy remaining or runtime value.
- the lighting control logic 78 receives operational data on lighting system runtime.
- the lighting control logic 78 determines if the lighting system runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1998 and continues to receive operational data on lighting system runtime. If a positive determination is made, then the process proceeds to step 2002 where a preventative maintenance reminder is transmitted to a user, and the process ends.
- the third sequence begins in step 2004 where the lighting control logic 78 retrieves factory specified lumen output data from memory.
- the lighting control logic 78 determines a maintenance threshold, e.g., a lumen output value that is 90% of a specified lumen output.
- the lighting control logic 78 receives operational data on lighting system lumen output.
- the lighting control logic 78 determines if the lighting system operating lumen output is less than the threshold. If a negative determination is made, then the process returns to step 2008 and continues to receive operational lumen output data for the lighting system. If a positive determination is made, then the process proceeds to step 2012 where a preventative maintenance reminder is transmitted to a user, and the process ends.
- the fourth sequence begins in step 2014 where the lighting control logic 78 retrieves factory specified power consumption data from memory.
- the lighting control logic 78 determines a maintenance threshold, e.g., power value that is 110% of specified power consumption.
- the lighting control logic 78 receives operational data on lighting system power consumption.
- the lighting control logic 78 determines if the lighting system power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 2018 and continues to receive operational data on lighting system power consumption. If a positive determination is made, then the process proceeds to step 2022 where a preventative maintenance reminder is transmitted to a user, and the process ends.
- the fifth sequence begins in step 2024 where the lighting control logic 78 retrieves factory specified input voltage data from memory.
- the lighting control logic 78 determines a maintenance threshold, e.g., an input voltage value that is +/ ⁇ 10% of specified line voltage.
- the lighting control logic 78 receives operational data on lighting system line voltage.
- the lighting control logic 78 determines if the lighting system line voltage is greater than the threshold. If a negative determination is made, then the process returns to step 2028 and continues to receive operational data on lighting system line voltage. If a positive determination is made, then the process proceeds to step 2032 where a preventative maintenance reminder is transmitted to a user, and the process ends.
- step 2034 the lighting control logic 78 retrieves factory warranty data from memory.
- step 2036 the lighting control logic 78 determines a maintenance threshold, e.g., 90% of the time period of the factory warranty has expired.
- step 2038 the lighting control logic 78 receives operational data on lighting system runtime.
- step 2040 the lighting control logic 78 determines if the lighting system runtime is greater than the threshold. If a negative determination is made, then the process returns to step 2038 and continues to receive operational data on lighting system runtime. If a positive determination is made, then the process proceeds to step 2042 where a preventative maintenance reminder is transmitted to a user, and the process ends.
- FIG. 25 L is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives lighting system temperature operational data.
- the lighting control logic 78 determines if the lighting system needs to scale back lumen output due to temperature. If a negative determination is made, then the process returns to step 2044 . If a positive determination is made, then the process proceeds to step 2048 where the lighting control logic 78 receives pool temperature operational data.
- the lighting control logic 78 determines the required reduction in pool temperature to return the lighting system to full lumen output.
- the lighting control logic 78 transmits an instruction to the heater to reduce the temperature by the required amount, and then returns to step 2044 .
- FIG. 25 M is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives lighting system temperature operational data.
- the lighting control logic 78 determines if the lighting system needs to scale back lumen output due to temperature. If a negative determination is made, then the process returns to step 2054 . If a positive determination is made, then the process proceeds to step 2058 where the lighting control logic 78 transmits an instruction to the heater instructing it to decrease output by 5%, and then returns to step 2054 . It is noted that while the heater could decrease output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.).
- FIG. 25 N is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 retrieves pool temperature setpoint data from memory.
- the lighting control logic 78 receives pool temperature operational data.
- the lighting control logic 78 determines the range between temperature setpoint and temperature operational data.
- the lighting control logic 78 retrieves RGB color table from memory.
- the lighting control logic 78 generates a lookup table including desired RGB color spectrum and associated temperature range (e.g., from blue at measured temperature to white at setpoint).
- the lighting control logic 78 receives pool temperature operational data.
- the lighting control logic 78 determines the RGB color associated with temperature operational data.
- the lighting control logic 78 transmits an instruction to the lighting system to display the RGB color associated with the pool temperature, and then returns to step 2070 .
- FIG. 25 O is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 retrieves chlorine level setpoint data from memory.
- the lighting control logic 78 receives chlorine level operational data.
- the lighting control logic 78 determines the range between chlorine level setpoint and chlorine level operational data.
- the lighting control logic 78 retrieves RGB color table from memory.
- the lighting control logic 78 generates a lookup table including desired RGB color spectrum and associated chlorine level range (e.g., from green at measured temperature to purple at setpoint).
- the lighting control logic 78 receives chlorine level operational data.
- step 2088 the lighting control logic 78 determines the RGB color associated with chlorine level operational data.
- step 2090 the lighting control logic 78 transmits an instruction to the lighting system to display the RGB color associated with the chlorine level.
- step 2092 the lighting control logic 78 determines if the chlorine level operational data is equal to the chlorine level setpoint. If a positive determination is made, then the process proceeds to step 2094 where the lighting control logic 78 transmits a message stating that the pool chemistry is “OK,” and the process ends. If a negative determination is made, then the process proceeds to step 2096 where the lighting control logic 78 transmits a message stating that chlorine should be added to the pool. The process then proceeds to step 2098 where it delays for a predetermined period of time before returning to step 2086 .
- FIG. 25 P is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 retrieves chlorine level setpoint data from memory.
- the lighting control logic 78 receives chlorine level operational data.
- the lighting control logic 78 determines if the chlorine level operational data is equal to the chlorine level setpoint. If a positive determination is made, then the process returns to step 2102 . If a negative determination is made then the process proceeds to step 2106 where it retrieves a lighting program associated with a chlorine imbalance from memory, e.g., activate yellow or flashing yellow light to alert a user to a chlorine imbalance.
- the lighting control logic 78 transmits an instruction to the lighting system to display the program associated with a chlorine imbalance, and then returns to step 2102 .
- FIG. 25 Q is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 monitors for user-selected light shows and colors.
- the lighting control logic 78 determines if the user has selected a light show or colors. If a negative determination is made, then the process returns to step 2110 . If a positive determination is made, then the process proceeds to step 2114 where the lighting control logic 78 receives parameters of the user-selected light show or color.
- the lighting control logic 78 receives a timestamp for the user-selected light show or colors.
- the lighting control logic 78 transmits the parameters and timestamp to memory.
- the lighting control logic 78 determines the most commonly selected light show or colors.
- the lighting control logic 78 saves the most commonly selected light show or colors to memory as a default lighting program, and then returns to step 2110 .
- FIG. 25 R is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- This process includes two parallel branches for defining a lighting program for pool features and displaying a lighting program for a specific pool features.
- the process begins at steps 2124 and 2144 .
- the lighting control logic 78 monitors for user-selected light shows and colors.
- the lighting control logic 78 determines if the user has selected a light show or colors. If a negative determination is made, then the process returns to step 2124 . If a positive determination is made, then the process proceeds to step 2128 where the lighting control logic 78 determines if additional pool features are currently active, e.g., pool/spa spillover features.
- step 2142 the lighting control logic 78 displays the user-selected light show or colors, and the process ends. If a positive determination is made, then the process proceeds to step 2130 where it receives operational data of the currently active pool features.
- step 2132 the lighting control logic 78 receives parameters of the user-selected light show or color.
- step 2134 the lighting control logic 78 receives a timestamp for the currently active pool features and lightshow.
- step 2136 the lighting control logic 78 transmits the pool feature operational data, light show parameters, and timestamp to memory.
- step 2138 the lighting control logic 78 determines the most commonly selected light show or colors associated with the additional pool feature.
- step 2140 the lighting control logic 78 saves the most commonly selected light show or colors to memory as a default lighting program for the additional pool features, and then returns to step 2124 .
- step 2144 the lighting control logic 78 monitors for currently active pool features.
- step 2146 the lighting control logic 78 determines if there are any currently active pool features. If a negative determination is made, then the process returns to step 2144 . If a positive determination is made, then the process proceeds to step 2148 where the lighting control logic 78 determines if there is a stored default lighting program for the pool feature. If a negative determination is made, then the process proceeds to step 2124 , where it goes through the process of having a user define a light show for that pool feature. If a positive determination is made, then the process proceeds to step 2150 , where the lighting control logic 78 retrieves the stored default program for the pool feature from memory. In step 2152 , the lighting control logic 78 transmits an instruction to the lighting system to display the default program for the pool feature, and the process ends.
- FIG. 25 S is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from a motion sensor.
- the lighting control logic 78 determines if the motion sensor has been triggered. If a negative determination is made, then the process returns to step 2154 . If a positive determination is made, then the process proceeds to step 2158 where the lighting control logic 78 receives sunrise/sunset data from the Internet.
- step 2160 the lighting control logic 78 receives the current time data.
- the lighting control logic 78 determines if the current time is after sunset. If a negative determination is made, then the process returns to step 2154 .
- step 2164 the lighting control logic 78 determines if the current time is before sunrise. If a negative determination is made, then the process returns to step 2154 . If a positive determination is made then the process proceeds to steps 2166 and 2168 , where the lighting control logic 78 transmits a signal to activate the lighting system, transmits an alert to the user, and then ends the process.
- FIG. 25 T is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from a motion sensor.
- the lighting control logic 78 determines if the motion sensor has been triggered. If a negative determination is made, then the process returns to step 2170 . If a positive determination is made, then the process proceeds to step 2174 where the lighting control logic 78 retrieves a minimum ambient light setpoint value from memory.
- the lighting control logic 78 receives ambient light operational data.
- the lighting control logic 78 determines if the ambient light operational data is below the minimum setpoint. If a negative determination is made, then the process returns to step 2170 . If a positive determination is made, then the process proceeds to steps 2180 and 2182 , where the lighting control logic 78 transmits a signal to activate the lighting system, transmits an alert to the user, and then ends the process.
- FIG. 25 U is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from a motion sensor.
- the lighting control logic 78 determines if the motion sensor has been triggered. If a negative determination is made, then the process returns to step 2184 . If a positive determination is made, then the process proceeds to step 2188 where the lighting control logic 78 retrieves a minimum ambient light setpoint value from memory.
- the lighting control logic 78 receives ambient light operational data.
- the lighting control logic 78 determines if the ambient light operational data is below the minimum setpoint. If a negative determination is made, then the process returns to step 2184 .
- step 2194 determines if a light show is in progress. If a negative determination is made, then the process proceeds to step 2202 . If a positive determination is made then the process proceeds to step 2196 .
- step 2196 the lighting control logic 78 transmits an instruction to the lighting system to discontinue showing the current show. As referenced above, if a negative determination is made in step 2194 , then the process proceeds to step 2202 .
- step 2202 the lighting control logic 78 transmits an instruction to activate the lighting system. Step 2196 and 2202 both proceed to step 2198 where the lighting control logic 78 transmits an instruction to the lighting system to display white light at the maximum lumen value.
- step 2200 the lighting control logic 78 transmits an alert to the user, and the process ends.
- FIG. 25 V is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from light sensors.
- the lighting control logic 78 saves operational data from the light sensors to memory.
- the lighting control logic 78 determines the average setpoint based on operational data from the light sensors.
- the lighting control logic 78 determines if there is remaining time to establish the setpoint. If a positive determination is made, then the process returns to step 2204 and the setpoint continues to be established.
- step 2212 the lighting control logic 78 determines the acceptable deviation from the setpoint, e.g., 90% of the setpoint.
- step 2214 the lighting control logic 78 receives operational data from the light sensors.
- step 2216 the lighting control logic 78 determines if the operational data from the light sensors is within the acceptable deviation. If a positive determination is made, then the process returns to step 2214 . If a negative determination is made, then the process proceeds to step 2218 where the lighting control logic 78 transmits an instruction to the pump to activate.
- step 2220 the lighting control logic 78 transmits an instruction to the chlorinator to activate and then proceeds to step 2222 where it delays for a predetermined period of time before returning to step 2204 .
- FIG. 25 W is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters.
- the lighting control logic 78 receives local weather forecast data from the Internet/Web.
- the lighting control logic 78 processes the weather forecast and identifies impending inclement weather.
- the lighting control logic 78 determines if there is any impending inclement weather. If a negative determination is made, then the process returns to step 2226 .
- step 2232 the lighting control logic 78 retrieves a weather alert lighting program from memory and then proceeds to steps 2234 and 2236 .
- step 2234 the lighting control logic 78 transmits an instruction to the lighting system to display the weather alert program, e.g., a flashing white light at maximum lumen output.
- step 2236 the lighting control logic 78 transmits an instruction to the pool devices to shield against lightning strike.
- FIG. 25 X is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 receives operational data from external moisture sensors.
- the lighting control logic 78 determines the presence of precipitation, e.g., versus a splash of water, for example.
- the lighting control logic 78 determines if there is precipitation. If a negative determination is made, then the process proceeds to step 2246 . If a positive determination is made, then the process proceeds to step 2244 where the lighting control logic 78 transmits an instruction to the lighting system to activate, and then returns to step 2238 .
- the lighting control logic 78 receives operational data from the lighting system.
- step 2248 the lighting control logic 78 determines if the lighting system is active. If a negative determination is made, then the process returns to step 2238 . If a positive determination is made, then the process proceeds to step 2250 where the lighting control logic 78 transmits an instruction to the lighting system to deactivate, and returns to step 2238 .
- FIG. 25 Y is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 monitors safety alarms for incoming operational data.
- the lighting control logic 78 receives incoming operational data from the safety alarms.
- the lighting control logic 78 determines if a safety alarm has been triggered. If a negative determination is made, then the process returns to step 2252 . If a positive determination is made, then the process proceeds to step 2258 where the lighting control logic 78 receives parameters of the user-selected light show or color.
- the lighting control logic 78 retrieves a safety alarm lighting program from the memory.
- the lighting control logic 78 transmits an instruction to the lighting system to display the safety alarm program, e.g., a flashing red light at maximum lumen output, and the process ends.
- FIG. 25 Z is another flowchart illustrating processing logic of the lighting control logic 78 communicating with a lighting system.
- the lighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters.
- the lighting control logic 78 receives regional sea turtle migratory and nesting data from the Internet/Web.
- the lighting control logic 78 determines the proximity of the pool to sea turtle nesting areas.
- the lighting control logic 78 determines if the pool is located in a sea turtle nesting area. If a negative determination is made, then the process returns to step 2264 .
- step 2270 the lighting control logic 78 receives the current data.
- the lighting control logic 78 determines if the current date is during the sea turtle nesting season. If a negative determination is made then the process returns to step 2270 . If a positive determination is made, then the process proceeds to step 2276 where the lighting control logic 78 transmits an instruction to the lighting system to lock out all colors other than amber, and the process ends.
- FIG. 25 AA is a flowchart illustrating processing logic of the lighting control logic 78 for controlling multiple light sources.
- the lighting control logic 78 proceeds with four parallel routine sequences that respectively begin with steps 2278 , 2288 , 2298 , 2308 . Each routine sequence is discussed sequentially, though it should be understood that the routine loops could operate in parallel, or alternatively, in series with each other.
- the first sequence begins in step 2278 where the lighting control logic 78 transmits an instruction to a first light source to display a color.
- the lighting control logic 78 monitors a first motion sensor for incoming operational data.
- the lighting control logic 78 receives incoming operational data from the first motion sensor.
- step 2284 the lighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2280 . If a positive determination is made then the process proceeds to step 2286 where the lighting control logic 78 transmits an instruction to the first light source to change the color, and then returns to step 2284 .
- the second sequence begins in step 2288 where the lighting control logic 78 transmits an instruction to a second light source to display a color.
- the lighting control logic 78 monitors a second motion sensor for incoming operational data.
- the lighting control logic 78 receives incoming operational data from the second motion sensor.
- the lighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2290 . If a positive determination is made then the process proceeds to step 2296 where the lighting control logic 78 transmits an instruction to the second light source to change the color, and then returns to step 2294 .
- the third sequence begins in step 2298 where the lighting control logic 78 transmits an instruction to a third light source to display a color.
- the lighting control logic 78 monitors a third motion sensor for incoming operational data.
- the lighting control logic 78 receives incoming operational data from the third motion sensor.
- the lighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2300 . If a positive determination is made then the process proceeds to step 2306 where the lighting control logic 78 transmits an instruction to the third light source to change the color, and then returns to step 2304 .
- the nth sequence begins in step 2308 where the lighting control logic 78 transmits an instruction to an nth light source to display a color.
- the lighting control logic 78 monitors an nth motion sensor for incoming operational data.
- the lighting control logic 78 receives incoming operational data from the nth motion sensor.
- the lighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2310 . If a positive determination is made then the process proceeds to step 2316 where the lighting control logic 78 transmits an instruction to the nth light source to change the color, and then returns to step 2314 .
- FIG. 25 AB is another flowchart illustrating processing steps of the lighting control logic 78 communicating with the lighting system 14 h .
- the lighting control logic 78 receives water pressure operational data from external sensor(s) at a first time.
- the lighting control logic 78 delays for x seconds, where “x” refers to any suitable integral value (e.g., 30, 60, 3600, 7200, etc.).
- the lighting control logic 78 receives water pressure operational data from external sensor(s) at a second time.
- the lighting control logic 78 determines the change (e.g., delta (A)) in water pressure.
- step 2326 the lighting control logic 78 retrieves setpoint data for the acceptable drop, or increase, in water pressure from the memory.
- the lighting control logic 78 determines if the change in water pressure is acceptable (e.g., by comparing the actual change in water pressure to the acceptable change in water pressure). If a positive determination is made, then the process returns to step 2318 . If a negative determination is made, then the process proceeds to step 2230 where the lighting control logic 78 retrieves a lighting program associated with a drop, or increase, in water pressure from the memory (e.g., red lights, red flashing lights, fast pulsing lights for pressure increase, slow pulsing lights for pressure decrease, etc.).
- a lighting program associated with a drop, or increase, in water pressure from the memory e.g., red lights, red flashing lights, fast pulsing lights for pressure increase, slow pulsing lights for pressure decrease, etc.
- the lighting control logic 78 can also manage and/or control the brightness of a plurality of lights in response to noise or sound.
- An ambient noise or sound sensor can be used to detect a plurality of bathers ingress and egress from the swimming pool and even the bathers voices.
- the ambient noise sensor can detect voice commands and/or noise levels and control the lights based such voice commands and noise levels.
- the lighting control logic 78 can modulate the plurality of lights color, tempo, etc. if the control logic senses music, games, voices, etc. Further, the noise sensor could also sense for games being played by bathers, for example, “Marco Polo,” and adjust output of the lights accordingly.
- the lighting control logic 78 can also receive input from a pressure sensor for effectively determining depth of the water above the sensor. This sensor can be located in a light or any other suitable location in a pool or spa environment. The lighting control logic 78 can trigger an automatic water fill routine or draining routine to adjust the water level based on any set level in the system.
- FIG. 26 is a diagram 2400 illustrating pool cleaner control logic 76 .
- Pool cleaner control logic 76 could incorporate a variety of types of data and/or data sources. More specifically, pool cleaner control logic 76 could incorporate user input data 2402 , pool cleaner operational data 2404 , pool cleaner factory specifications 2406 , pool cleaner configuration parameters 2408 , web data 2410 , pool configuration parameters 2412 , data from related devices 2414 , health monitoring data 2416 , and/or external sensor data 2418 . While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter.
- the user/operator can provide this information by first determining if the pool cover has been deployed (e.g., by visual inspection) and then entering the pool cover deployment status into the system via a user interface.
- User input data 2402 could include timers, schedules (e.g., on/off and what speed), cleaning patterns (e.g., orientation of cleaner), etc.
- Pool cleaner operational data 2404 could include submersion (e.g., float switch and/or moisture sensor), debris level (e.g., collection bag), debris weight, power consumption, current draw, speed of motor (RPM), speed of turbine (RPM), speed of cleaner, orientation of cleaner, etc.
- the pool cleaner control logic 76 could make a determination as to whether energy can be supplied to the cleaner via an integral turbine.
- Pool cleaner factor specifications 2406 could include motor speed, power consumption, current draw, input voltage, life expectancy, etc.
- Pool cleaner configuration parameters 2408 could include IP address, GPS coordinates, zipcode, time and date, etc.
- Web data 2410 could include location (e.g., based on IP address), time and date, sunrise/sunset data, ambient light, season, etc.
- Pool configuration parameters 2412 could include connected pool devices, pool surface area, pool geometry, pool liner color, pool cover (e.g., yes or no), pool cover schedule, etc.
- Data from related devices 2414 could include the pump, booster pump, changeover valve, valve actuator, vision system, pool cover, controller, power supply, etc.
- Health monitoring data 2416 could include line-to-line balance, grounding, bonding, leak current, runtime, operating temperature, power consumption, etc.
- External sensor data 2418 could include water circulation, water flow rate, water pressure water turbidity, power consumption, current draw, line voltage, valve actuation, ambient light, debris location, pool cover detection, etc.
- the pool cleaner control logic 76 could optimize the operation of the pool cleaner. Examples include, anti-kink/hose un-tangle, adjust performance based on internal sensors, cleaner and/or cleaner circuit pressure sensing, time of day sensing, and send cleaner to dirty/high debris area of the pool.
- FIGS. 27 A- 27 O are flowcharts illustrating processing steps of the pool cleaner control logic 76 .
- FIG. 27 A is a flowchart illustrating processing logic of the pool cleaner control logic 76 communicating with a pump.
- the pool cleaner control logic 76 receives instruction to activate a pool cleaner.
- the pool cleaner control logic 76 receives operation data from a pump.
- the pool cleaner control logic 76 determines whether the pump is on. If a positive determination is made, the process proceeds to step 2426 . If a negative determination is made, then in step 2425 the pool cleaner control logic 76 transmits instructions to the pump to activate, and then proceeds to step 2426 .
- step 2426 the pool cleaner control logic 76 retrieves minimum flow rate setpoint data for the pool cleaner operation from a memory (e.g., gallons per minute.
- step 2428 the pool cleaner control logic 76 receives operational flow rate data 2428 .
- step 2430 the pool cleaner control logic 76 determines whether the flow rate is above a minimum setpoint. If a positive determination is made, then the process proceeds to step 2432 , where the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends. If a negative determination is made in step 2430 , then the process proceeds to step 2434 , where the pool cleaner control logic 76 determines whether there are retries remaining.
- step 2436 the pool cleaner control logic 76 transmits instructions to the pump to increase the flow rate (e.g., by 5%), and the process reverts back to step 2428 . If instead, a negative determination is made in step 2434 , then in step 2438 , the pool cleaner control logic 76 transmits an error condition, and the process ends.
- FIG. 27 B is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a booster pump.
- the pool cleaner control logic 76 receives instructions to activate the pool cleaner.
- the pool cleaner control logic 76 retrieves pool configuration data from memory (e.g., connected pool devices).
- the pool cleaner control logic 76 receives operational data from a pump.
- the pool cleaner control logic 76 determines whether the pump is on. If a positive determination is made, the process proceeds to step 2448 . If a negative determination is made, in step 2456 , the pool cleaner control logic 76 transmits instructions to the pump to activate, and the proceeds to step 2448 .
- step 2448 the pool cleaner control logic 76 determines whether there is a booster pump. If a positive determination is made, then in step 2450 the pool cleaner control logic 76 receives operational data from the booster pump. In step 2452 , the pool cleaner control logic 76 determines whether the booster pump is on. If a positive determination is made in step 2452 , then in step 2454 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made in step 2452 , then in step 2458 the pool cleaner control logic 76 transmits instructions to the booster pump to activate, and then proceeds to step 2454 . If a negative determination is made in step 2448 , then the process proceeds to step 2454 (as discussed above).
- FIG. 27 C is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a valve actuator.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 receives operational data from a changeover valve actuator (e.g., orientation).
- the pool cleaner control logic 76 determines whether the valve actuator is in the correct orientation (e.g., valve is open). If a positive determination is made, then the process proceeds to step 2466 , where the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends.
- step 2464 the process proceeds to step 2468 , where the pool cleaner control logic 76 determines whether there are retries remaining. If a positive determination is made, then in step 2470 , the pool cleaner control logic 76 transmits instructions to the valve actuator to move to the correct orientation (e.g., open), and the process reverts to step 2462 . If instead, a negative determination is made in step 2468 , then in step 2472 , the pool cleaner control logic 76 transmits an error condition (e.g., valve seized), and the process ends.
- an error condition e.g., valve seized
- FIG. 27 D is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a pressure sensor.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 retrieves pressure setpoint data for pool cleaner operation from memory (e.g., minimum pressure).
- the pool cleaner control logic 76 receives operational data from a pressure sensor.
- the pool cleaner control logic 76 determines whether the pressure is sufficient. If a negative determination is made in step 2480 , then in step 2490 , the pool cleaner control logic 76 determines whether there are any retries remaining.
- step 2490 the pool cleaner control logic 76 transmits instructions to the pump to increase output (e.g., by 5%), and the process reverts back to step 2478 . If a negative determination is made in step 2490 , then in step 2494 , the pool cleaner control logic 76 transmits an error condition (e.g., leak), and the process ends. If a positive determination is made in step 2480 , then in step 2482 , the pool cleaner control logic 76 retrieves flow rate setpoint data for pool cleaner operation from a memory (e.g., minimum flow rate). In step 2484 , the pool cleaner control logic 76 receives operational data from a flow sensor.
- a memory e.g., minimum flow rate
- step 2486 the pool cleaner control logic 76 determines whether the flow rate is sufficient. If a positive determination is made in step 2486 , then in step 2488 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends. If a negative determination is made in step 2486 , then in step 2496 , the pool cleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made, then in step 2498 , the pool cleaner control logic 76 transmits instructions to the pump to increase output (e.g., by 5%), and the process reverts to step 2484 .
- the pool cleaner control logic 76 determines whether the flow rate is sufficient. If a positive determination is made in step 2486 , then in step 2488 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends. If a negative determination is made in step 2486 , then in step 2496 , the pool cleaner control logic 76 determines whether there are any retries remaining. If
- step 2496 the pool cleaner control logic 76 transmits an error condition (e.g., blockage), and the process ends.
- error condition e.g., blockage
- FIG. 27 E is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a valve.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 retrieves pressure setpoint data for a pool cleaner operation from a memory (e.g., minimum circuit pressure).
- the pool cleaner control logic 76 receives operational data from a pressure sensor.
- the pool cleaner control logic 76 determines whether the circuit pressure is sufficient. If a positive determination is made, then in step 2510 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and the process ends.
- step 2508 determines whether there are any retries remaining. If a positive determination is made, then in step 2514 , the pool cleaner control logic 76 receives operational data from an input valve (e.g., valve position). In step 2516 , the pool cleaner control logic 76 determines required valve actuation to achieve pressure setpoint (e.g., open 90%). In step 2518 , the pool cleaner control logic 76 transmits instructions to the valve to actuate by a determined amount. If a negative determination is made in step 2512 , then in step 2520 , the pool cleaner control logic 76 transmits an error condition (e.g., valve seized), and the process ends.
- an error condition e.g., valve seized
- FIG. 27 F is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a pool cleaner submersion sensor.
- the pool cleaner control logic 76 receives instruction to activate a pool cleaner.
- the pool cleaner control logic 76 receives operational data from the pool cleaner submersion sensor (e.g., float switch or moisture sensor).
- the pool cleaner control logic 76 determines whether the pool cleaner is submerged. If a positive determination is made, then in step 2528 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made in step 2526 , then in step 2530 , the pool cleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made, then the process reverts to step 2524 . If a negative determination is made, then the process proceeds to step 2532 , where the pool cleaner control logic 76 transmits an error condition, and the process ends.
- the pool cleaner control logic 76 transmits an error condition, and the process ends.
- FIG. 27 G is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a debris sensor of the pool cleaner collection bag.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 receives operational data from a debris sensor for a collection bag.
- the pool cleaner control logic 76 determines the debris level of the collection bag.
- the pool cleaner control logic 76 could optionally transmit instruction to an HMI device to display the debris level of the collection bag.
- the pool cleaner control logic 76 determines whether the collection bag is full.
- step 2544 the pool cleaner control logic 76 transmits a message to the user to empty the collection bag, and the process reverts to step 2536 .
- the pool cleaner logic 76 could transmit an instruction to the pool cleaner to swim to a pool skimmer and purge the collection bag so that the debris from the collection bag is emptied without user intervention and quickly removed from the pool via the skimmer. If a negative determination is made in step 2540 , then in step 2542 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and the process ends.
- FIG. 27 H is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a pool cleaner regarding a motor speed threshold.
- the pool cleaner control logic 76 retrieves factory specified pool cleaner motor speed data from memory.
- the pool cleaner control logic 76 determines the motor speed threshold for a full collection bag (e.g., 95% of factory specified speed).
- the pool cleaner control logic 76 receives operational data from the pool cleaner (e.g., motor speed).
- the pool cleaner control logic 76 determines whether the motor speed is below a threshold. If a negative determination is made, the process reverts to step 2552 . If a positive determination is made, the process proceeds to step 2556 , where the pool cleaner control logic 76 transmits a message to the user to empty the collection bag, and the process reverts to step 2552 .
- FIG. 27 I is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating regarding line power operational data.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 retrieves data on factory specified power parameters from a memory (e.g., power consumption, current draw, and/or line voltage).
- the pool cleaner control logic 76 receives line power operational data.
- the pool cleaner control logic 76 determines whether the line power is within factory specifications. If a positive determination is made, then in step 2566 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate.
- step 2564 determines whether there are any retries remaining. If a positive determination is made in step 2568 , then the process reverts to step 2562 . If a negative determination is made in step 2570 , then in step 2570 , the pool cleaner control logic 76 transmits an error condition, and the process ends.
- FIG. 27 J is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with an internal tachometer.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate.
- the pool cleaner control logic 76 retrieves turbine setpoint data for a pool cleaner operation from memory (e.g., minimum RPMs).
- the pool cleaner control logic 76 receives operational data from an internal tachometer.
- the pool cleaner control logic 76 determines whether the speed of the turbine is sufficient. If a positive determination is made in step 2578 , the process reverts to step 2576 .
- step 2578 determines whether there are any retries remaining. If a positive determination is made in step 2582 , then in step 2584 , the pool cleaner control logic 76 transmits instructions to the pump to increase output (e.g., by 5%), and the process reverts to step 2576 . If a negative determination is made in step 2582 , then in step 2586 , the pool cleaner control logic 76 transmits an error condition (e.g., obstruction), and the process ends.
- an error condition e.g., obstruction
- FIG. 27 K is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with an internal tachometer.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate.
- the pool cleaner control logic 76 retrieves turbine setpoint data for a pool cleaner operation from a memory (e.g., minimum RPMs).
- the pool cleaner control logic 76 receives operational data from an internal tachometer.
- the pool cleaner control logic 76 determines whether the speed of the turbine is sufficient. If a positive determination is made, the process reverts to step 2592 .
- step 2594 the pool cleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made in step 2598 , then in step 2600 , the pool cleaner control logic 76 receives operational data from a flow rate sensor. In step 2602 , the pool cleaner control logic 76 determines the required increase in flow rate to achieve the turbine speed setpoint. In step 2604 , the pool cleaner control logic 76 determines the required increase in pump speed to achieve a required flow rate. In step 2606 , the pool cleaner control logic 76 transmits the instruction to the pump to increase output by the determined amount, and the process reverts to step 2592 . If a negative determination is made in step 2598 , then in step 2608 , the pool cleaner control logic 76 transmits an error condition (e.g., obstruction), and the process ends.
- an error condition e.g., obstruction
- FIG. 27 L is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a pump.
- the pool cleaner control logic 76 retrieves scheduling data for a pool cleaner operation from a memory (e.g., operating hours, duration, schedule, weather conditions, upcoming events at the site, etc.).
- the pool cleaner control logic 76 receives time data from a clock (e.g., current time).
- the pool cleaner control logic 76 determines whether the current time is within hours of operation. If a negative determination is made, then the process reverts to step 2612 . If a positive determination is made, then in step 2616 , the pool cleaner control logic 76 receives operational data from a pump.
- step 2618 the pool cleaner control logic 76 determines whether the pump is on. If a positive determination is made in step 2618 , then in step 2620 , the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made in step 2618 , then in step 2622 , the pool cleaner control logic 76 transmits instructions to the pump to activate, and the process proceeds to step 2620 .
- FIG. 27 M is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with an ambient light sensor.
- the pool cleaner control logic 76 receives operational data from an ambient light sensor.
- the pool cleaner control logic 76 determines the time of day (e.g., day, night, etc.).
- the pool cleaner control logic 76 determines whether it is nighttime. If a negative determination is made, the process reverts to step 2624 . If a positive determination is made, then in step 2630 , the pool cleaner control logic 76 receives operational data from a pump. In step 2632 , the pool cleaner control logic 76 determines whether the pump is on.
- step 2634 the pool cleaner control logic 76 transmits instructions to the pool cleaner to activate, and the process ends. If a negative determination is made in step 2632 , then in step 2636 , the pool cleaner control logic 76 transmits instructions to the pump to activate, and the process proceeds to step 2634 .
- FIG. 27 N is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a vision system.
- the pool cleaner control logic 76 receives instructions to activate a pool cleaner.
- the pool cleaner control logic 76 receives operational data from a vision system (e.g., location of debris).
- the pool cleaner control logic 76 determines the location of a high debris area.
- the pool cleaner control logic 76 determines the location and orientation of the pool cleaner.
- the pool cleaner control logic 76 transmits instructions to the pool cleaner to traverse the high debris area. The process then reverts to step 2640 .
- FIG. 27 O is a flowchart illustrating processing steps of the pool cleaner control logic 76 communicating with a software application.
- the application displays a graphical representation or image of the pool on the device on which the software application is installed. While step 2639 shows the software application installed on a smartphone, it is to be appreciated that the software application can be installed on various devices of the system 10 , including but not limited to, the computer system 20 or the pool/spa control system 14 f .
- the user indicates (e.g., by touching the smartphone screen in the appropriate location) where debris is observed in the pool.
- the software application marks each spot that the user has indicated with a graphical overlay (e.g., a box is placed around each indicated debris area).
- the software application transmits an instruction to the cleaner 14 g to navigate to the debris areas indicated by the user and clean the same. The process then ends.
- pool cleaner control logic illustrated in FIGS. 27 A- 27 O and discussed above could be used to control a pool/spa cleaner that does not have on-board electronic controls, such as, for example, a conventional suction or pressure cleaner.
- control of the cleaner could be implemented by way of a valve actuator that has an associated processor and network connectivity, such as the valve actuator discussed herein in connection with FIGS. 28 - 29 I .
- the valve actuator would be in fluid communication with the cleaner, and the control logic discussed in connection with FIGS. 27 A- 27 O would be applied to control the valve actuator to correspondingly control operation of the cleaner.
- FIG. 28 is a diagram 2700 illustrating valve actuator control logic 74 .
- Valve actuator control logic 74 could incorporate a variety of types of data and/or data sources. More specifically, valve actuator control logic 76 could incorporate user input data 2702 , valve actuator operational data 2704 , valve actuator factory specifications 2706 , valve actuator configuration parameters 2708 , web data 2710 , pool configuration parameters 2712 , data from related devices 2714 , health monitoring data 2716 , and/or external sensor data 2718 .
- User input data 2702 could include schedule information (e.g., on/off and what orientation, duration of power on/off for specific orientation, open/close), etc.
- Valve actuator operational data 2704 could include line voltage, operation (e.g., on, off, etc.), orientation (e.g., open, close, etc.), power duration, etc.
- Valve actuator factor specification 2706 could include source voltage, power consumption, current draw, etc.
- Valve actuator configuration parameters 2708 could include IP address, GPS coordinates, zipcode, time and date, etc.
- Web data 2710 could include location (e.g., based on IP address), time and date, sunrise/sunset data, temperature, ambient light, season, etc.
- Pool configuration parameters 2712 could include pool surface area, pool geometry, pool line color, pool cover (e.g., yes, no, etc.), pool cover schedule, etc.
- Data from related devices 2714 could include additional valves, pump, heater (e.g., gas, heat pump, etc.), heat (e.g., solar), spa, UV ozone, cleaner, controller, chlorinator, water features, water slide, skimmer, filter, etc.
- Health monitoring data 2716 could include power consumption, current monitoring, source voltage, etc.
- External sensor data 2718 could include water flow rate, water pressure, etc.
- FIGS. 29 A- 29 I are flowcharts illustrating processing steps of the valve actuator control logic 74 .
- FIG. 29 A is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a valve actuator.
- the valve actuator control logic 74 receives instructions to actuate a valve.
- the valve actuator control logic 74 retrieves data on factory specified power parameters from a memory (e.g., line voltage).
- the valve actuator control logic 74 receives line voltage operational data.
- the valve actuator control logic 74 determines whether the line voltage is within the factory specifications.
- step 2728 the valve actuator control logic 74 transmits instructions to the valve actuator to actuate. If a negative determination is made in step 2726 , then in step 2730 , the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2730 , then the process reverts to step 2724 . If a negative determination is made in step 2730 , then in step 2732 , the valve actuator control logic 74 transmits an error condition (e.g., undervoltage, overvoltage, etc.), and the process ends.
- an error condition e.g., undervoltage, overvoltage, etc.
- FIG. 29 B is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a heater.
- the valve actuator control logic 74 receives instructions to activate a heater.
- the valve actuator control logic 74 receives operational data from a pump.
- the valve actuator control logic 74 receives operational data from a heater valve actuator (e.g., orientation) 14 e .
- the valve actuator control logic 74 determines whether the heater valve actuator 14 e is in the correct orientation (e.g., valve is open). If a positive determination is made in step 2742 , then in step 2750 a determination is made as to whether the pump 14 a is on.
- step 2744 the valve actuator control logic 74 transmits instructions to the heater 14 b to activate, and the process ends. If a negative determination is made in step 2750 the valve actuator control logic 74 transmits an instruction to the pump 14 a to activate and the process then proceeds to step 2744 . If a negative determination is made in step 2742 , then in step 2738 , a determination is made as to whether the pump 14 a is on. If a positive determination is made in step 2738 , the valve actuator control logic 74 transmits an instruction to the pump 14 a to deactivate. If a negative determination is made in step 2738 , the process proceeds to step 2754 .
- step 2752 the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2752 , then in step 2754 , the valve actuator control logic 74 transmits instructions to the heater valve actuator 14 e to move to the correct orientation (e.g., open) and the process then reverts to step 2736 . If a negative determination is made in step 2752 , then in step 2756 , the valve actuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends.
- an error condition e.g., valve seized
- FIG. 29 C is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a heater.
- the valve actuator control logic 74 receives instructions to activate a heater.
- the valve actuator control logic 74 receives operational data from a pump.
- the valve actuator control logic 74 determines whether the pump is active. If a negative determination is made in step 2762 , then in step 2776 , the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2776 , then the process reverts to step 2760 .
- step 2776 If a negative determination is made in step 2776 , then in step 2778 , the valve actuator control logic 74 transmits an error condition (e.g., interlock), and the process ends. If a positive determination is made in step 2762 , then in step 2764 , the valve actuator control logic 74 receives operational data from a heater valve actuator (e.g., orientation). In step 2766 , the valve actuator control logic 74 determines whether the heater valve actuator is in the correct orientation (e.g., valve is open). If a positive determination is made in step 2766 , then in step 2768 , the valve actuator control logic 74 transmits instructions to the heater to activate, and the process ends.
- a heater valve actuator e.g., orientation
- step 2768 the valve actuator control logic 74 transmits instructions to the heater to activate, and the process ends.
- step 2770 the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2770 , then in step 2772 , the valve actuator control logic 74 transmits instructions to the heater valve actuator to move to the correct orientation (e.g., open). If a negative determination is made in step 2770 , then in step 2774 , the valve actuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends.
- an error condition e.g., valve seized
- FIG. 29 D is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a water feature valve actuator.
- the valve actuator control logic 74 receives instructions to increase the output of the water stream feature (e.g., new flow rate setpoint).
- the valve actuator control logic 74 receives operational data from a water feature (e.g., flow rate).
- the valve actuator control logic 74 determines whether the water feature is active. If a positive determination is made in step 2784 , then in step 2786 , the valve actuator control logic 74 determines whether the flow rate is sufficient. If a positive determination is made in step 2786 , then the process ends.
- step 2786 determines whether there are any retries remaining. If a positive determination is made in step 2794 , then in step 2796 , the valve actuator control logic 74 transmits instructions to the water feature valve actuator to increase throughput (e.g., by 5%), and the process reverts to step 2782 . If a negative determination is made in step 2794 , then in step 2798 , the valve actuator control logic 74 transmits an error condition (e.g., blockage), and the process ends. If a negative determination is made in step 2784 , then in step 2788 , the valve actuator control logic 74 determines whether there are any retries remaining.
- an error condition e.g., blockage
- step 2790 the valve actuator control logic 74 transmits instructions to the water feature valve actuator to open, and the process reverts to step 2782 . If a negative determination is made in step 2788 , then in step 2792 , the valve actuator control logic 74 transmits an error condition (e.g., blockage), and the process ends.
- an error condition e.g., blockage
- FIG. 29 E is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a water feature valve actuator.
- the valve actuator control logic 74 receives instructions to activate a water feature.
- the valve actuator control logic 74 retrieves flow rate setpoint data for water feature operation from a memory (e.g., minimum flow rate).
- the valve actuator control logic 74 receives operational data from a water feature (e.g., flow rate).
- the valve actuator control logic 74 determines whether the water feature is active. If a positive determination is made in step 2806 , then in step 2808 , the valve actuator control logic 74 determines whether the flow rate is sufficient.
- step 2808 determines whether a positive determination is made in step 2808 , then the process ends. If a negative determination is made in step 2808 , then in step 2816 , the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2816 , then in step 2818 , the valve actuator control logic 74 transmits instructions to the water feature valve actuator to increase throughput (e.g., by 5%), and the process reverts to step 2804 . If a negative determination is made in step 2816 , then in step 2820 the valve actuator control logic 74 transmits an error condition (e.g., blockage), and the process ends.
- an error condition e.g., blockage
- step 2810 the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2810 , then in step 2812 , the valve actuator control logic 74 transmits instructions to the water feature valve actuator to open, and the process reverts to step 2802 . If a negative determination is made in step 2810 , then in step 2814 , the valve actuator control logic 74 transmits an error condition (e.g., blockage), and the process ends.
- an error condition e.g., blockage
- FIG. 29 F is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a heater valve actuator.
- the valve actuator control logic 74 receives instructions to activate the heater.
- the valve actuator control logic 74 receives operational data from a heater valve actuator (e.g., orientation).
- the valve actuator control logic 74 determines whether the heater valve actuator is in the correct orientation (e.g., valve is open). If a negative determination is made in step 2826 , then in step 2834 , the valve actuator control logic 74 determines whether there are any retries remaining.
- step 2834 If a positive determination is made in step 2834 , then in step 2836 , the valve actuator control logic 74 transmits instructions to the heater valve actuator to move to the correct orientation (e.g., open), and the process reverts to step 2824 . If a negative determination is made in step 2834 , then in step 2838 , the valve actuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends. If a positive determination is made in step 2826 , then in step 2828 , the valve actuator control logic 74 receives operational data from a pump valve actuator (e.g., orientation). In step 2830 , the valve actuator control logic 74 determines whether the pump valve actuator is in the correct orientation (e.g., valve is open).
- a pump valve actuator e.g., orientation
- step 2830 If a positive determination is made in step 2830 , then in step 2832 , the valve actuator control logic 74 transmits instructions to the heater to activate. If a negative determination is made in step 2830 , then in step 2840 , the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2840 , then in step 2842 , the valve actuator control logic 74 transmits instructions to the pump valve actuator to move to the correct orientation (e.g., open), and the process reverts to step 2828 . If a negative determination is made in step 2840 , then in step 2844 , the valve actuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends.
- an error condition e.g., valve seized
- FIG. 29 G is a flowchart illustrating processing steps of the valve actuator control logic 74 .
- the heater valve actuator receives instructions to open.
- the heater valve actuator sends instructions to the pump valve actuator to open.
- the heater valve actuator receives operating data from the pump valve actuator.
- the heater valve actuator determines if the pump valve actuator is open.
- the heater valve actuator moves to the open orientation.
- FIG. 29 H is a flowchart illustrating processing steps of the valve actuator control logic 74 .
- the valve actuator control logic 74 receives instructions to actuate a valve.
- the valve actuator control logic 74 receives an input from a timer for x seconds.
- the valve actuator control logic 74 transmits instructions to the valve actuator to move to a desired orientation.
- FIG. 29 I is a flowchart illustrating processing steps of the valve actuator control logic 74 communicating with a pump.
- the valve actuator control logic 74 retrieves operational setpoint data on valve actuator orientation for a given pump speed (e.g., actuate valve at a given speed).
- the valve actuator control logic 74 receives operational data from a pump (e.g., RPMs).
- the valve actuator control logic 74 determines the correct valve actuator orientation for a speed of the pump.
- the valve actuator control logic 74 receives operational data from a valve actuator (e.g., orientation).
- the valve actuator control logic 74 determines whether the valve actuator is in the correct orientation.
- step 2870 If a positive determination is made in step 2870 , then the process reverts to step 2864 . If a negative determination is made in step 2870 , then in step 2872 , the valve actuator control logic 74 determines whether there are any retries remaining. If a positive determination is made in step 2872 , then in step 2874 , the valve actuator control logic 74 transmits instructions to the valve actuator to move to the correct orientation, and the process reverts to step 2868 . If a negative determination is made in step 2872 , then in step 2876 , the valve actuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends.
- an error condition e.g., valve seized
- FIG. 30 is a diagram 2900 illustrating water feature control logic 72 .
- Water feature control logic 72 could incorporate a variety of types of data and/or data sources. More specifically, water feature control logic 72 could incorporate user input data 2902 , water feature operational data 2904 , water feature factory specifications 2906 , water feature configuration parameters 2908 , web data 2910 , pool configuration parameters 2912 , data from related devices 2914 , health monitoring data 2916 , and/or external sensor data 2918 .
- User input data 2902 could include timers, schedules, feature parameters (e.g., how high, how much flow for effect), etc.
- Water feature operational data 2904 could include pressure, water flow rate, debris sensing, actuator position, etc.
- Water feature configuration parameters 2908 could include IP address, GPS coordinates, zipcode, time and date, etc.
- Web data 2910 could include location (e.g., based on IP address), time and date, sunrise/sunset data, regional/local weather forecast, wind speed, wind direction, etc.
- Pool configuration parameters 2912 could include connected pool devices, pool surface area, pool geometry, pool line color, pool cover (e.g., yes, no, etc.), pool cover schedule, etc.
- Data from related devices 2914 could include additional water features, pump, chemistry dispenser, heater (e.g., gas pump, heat pump, etc.), heat (e.g., solar), chiller, spa, UV sanitizer, pool cleaner, controller, chlorinator, water slide, skimmer, filter, voice recognition/activation system, etc.
- External sensor data 2918 could include debris sensor, water temperature, motion sensor, ambient noise, etc. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter.
- the user/operator can provide this information by first determining the water temperature (e.g., by checking a thermometer, thermocouple, etc.) and then entering the water temperature into the system via a user interface.
- the water feature control logic 76 could optimize the operation of the water features by, for example, determining if the feature has been degraded due to debris by receiving data from a pressure sensor in the unit, determining appropriate operation by receiving weather data (e.g., wind location, direction, and speed) and modifying operating parameters, not running the water feature or altering the operation thereof if users are present (e.g., auto-home, or auto-away), enhance turn-over and make pH adjustments, varying the height of water from a water feature by using a variable position actuator, self-leveling the water feature using an actuator and level sensor.
- weather data e.g., wind location, direction, and speed
- modifying operating parameters not running the water feature or altering the operation thereof if users are present (e.g., auto-home, or auto-away)
- enhance turn-over and make pH adjustments varying the height of water from a water feature by using a variable position actuator, self-leveling the water feature using an actuator and level sensor.
- FIGS. 31 A- 31 F are flowcharts illustrating processing steps of the water feature control logic 72 .
- FIG. 31 A is a flowchart illustrating processing steps of the water feature control logic 72 .
- the water feature control logic 72 receives instructions to activate a water feature.
- the water feature control logic 72 retrieves minimum flow rate setpoint data for water feature operation from a memory (e.g., gallons per minute).
- the water feature control logic 72 receives operational flow rate data.
- the water feature control logic 72 determines whether the flow rate is above a minimum setpoint.
- step 2926 If a positive determination is made in step 2926 , then in step 2928 , the water feature control logic 72 transmits instructions to the water feature actuator valve to move to an open orientation, and the process ends. If a negative determination is made in step 2926 , then in step 2930 , the water feature control logic 72 determines whether there are any retries remaining. If a positive determination is made in step 2930 , then in step 2932 , the water feature control logic 72 transmits instructions to the pump to increase flow (e.g., by 5%), and the process reverts to step 2924 . If a negative determination is made in step 2930 , then in step 2934 , the water feature control logic 72 transmits an error condition, and the process ends.
- FIG. 31 B is a flowchart illustrating processing steps of the water feature control logic 72 .
- the water feature control logic 72 receives instructions to activate a water feature.
- the water feature control logic 72 receives operational data from connected pool devices (e.g., additional water features).
- the water feature control logic 72 determines whether there are additional water features. If a positive determination is made in step 2940 , then in step 2942 , the water feature control logic 72 determines whether additional water features are active. If a positive determination is made in step 2942 , then in step 2944 , the water feature control logic 72 transmits instructions to the water feature actuator valve to move to an open orientation, and the process ends.
- step 2942 If a negative determination is made in step 2942 , then in step 2946 , the water feature control logic 72 transmits instruction to additional water feature actuator valves to move to the open orientation, and the process ends. If a negative determination is made in step 2940 , then the process proceeds to step 2944 (as discussed above).
- FIG. 31 C is a flowchart illustrating processing steps of the water feature control logic 72 .
- the water feature control logic 72 receives operational data from chemistry automation system.
- the water feature control logic 72 determines if the chemistry automation system is active. If a negative determination is made in step 2950 , then the process reverts to step 2948 . If a positive determination is made in step 2950 , then in step 2952 , the water feature control logic 72 transmits instructions to the water feature actuation valve to move to the open orientation.
- FIG. 31 D is a flowchart illustrating processing steps of the water feature control logic 72 .
- the water feature control logic 72 retrieves water temperature setpoint data from memory (e.g., desired pool temperature).
- the water feature control logic 72 receives operational data from a temperature sensor.
- the water feature control logic 72 determines whether the temperature is above a setpoint. If a positive determination is made in step 2958 , then in step 2960 , the water feature control logic 72 transmits instructions to the chiller to activate.
- step 2962 the water feature control logic 72 transmits instructions to the water feature actuation valve to move to the open orientation, and the process reverts to step 2956 .
- step 2958 the water feature control logic 72 receives operational data from chiller and water feature.
- step 2966 the water feature control logic 72 determines whether the chiller and water feature are active. If a negative determination is made in step 2966 , then the process reverts to step 2956 . If a positive determination is made in step 2966 , then in step 2968 , the water feature control logic 72 transmits instruction to deactivate the chiller and water feature.
- FIG. 31 E is a flowchart illustrating processing steps of the water feature control logic 72 .
- the water feature control logic 72 receives operational data from a motion sensor.
- the water feature control logic 72 determines whether the motion sensor is triggered. If a positive determination is made in step 2972 , then in step 2980 , the water feature control logic 72 transmits instruction to the water feature valve actuator to move to the open position, and the process reverts to step 2970 . If a negative determination is made in step 2972 , then in step 2974 , the water feature control logic 72 receives operational data from a water feature valve actuator (e.g., orientation). In step 2976 , the water feature control logic 72 determines whether the valve actuator is in the open orientation.
- a water feature valve actuator e.g., orientation
- step 2976 If a negative determination is made in step 2976 , the process reverts to step 2970 . If a positive determination is made in step 2976 , then in step 2978 , the water feature control logic 72 transmits instruction to the water feature valve actuator to move to the closed position, and the process reverts to step 2970 .
- FIG. 31 F is a flowchart illustrating processing steps of the water feature control logic 72 .
- the water feature control logic 72 retrieves ambient noise setpoint data from memory (e.g., maximum ambient noise value).
- the water feature control logic 72 receives operational data from an ambient noise sensor.
- the water feature control logic 72 determines whether the ambient noise is above a maximum setpoint. If a positive determination is made in step 2986 , then in step 2988 , the water feature control logic 72 transmits instruction to water feature valve actuator to decrease throughput (e.g., by 5%), and the process reverts to step 2984 . If a negative determination is made in step 2986 , then in step 2990 , the water feature control logic 72 transmits instruction to the water feature valve actuator to increase throughput (e.g., by 5%), and the process reverts to step 2984 .
- control logic illustrated in FIGS. 31 A- 31 F and discussed above could be used to control a pool/spa water feature that does not have on-board electronic controls, such as, for example, a conventional water feature.
- control of the water feature could be implemented by way of a valve actuator that has an associated processor and network connectivity, such as the valve actuator discussed herein in connection with FIGS. 28 - 29 I .
- the valve actuator would be in fluid communication with the water feature, and the control logic discussed in connection with FIGS. 27 A- 27 O would be applied to control the valve actuator to correspondingly control operation of the water feature.
- FIG. 32 is a diagram 3000 illustrating another embodiment of pool control logic 70 .
- Pool control logic 70 could incorporate a variety of types of data and/or data sources in addition to those discussed hereinabove. More specifically, pool control logic 70 could process user input data 3002 , operational data 3004 , equipment factory specifications 3006 , equipment configuration parameters 3008 , web data 3010 , pool configuration parameters 3012 , data from related devices 3014 , health monitoring data 3016 , and/or external sensor data 3018 .
- User input data 3002 could include maximum sun exposure (e.g., UV, intensity, etc.), minimum sun exposure, device operation setpoints, preferred pool/spa area, contact means (e.g., SMS/text), user profiles, zip code, maximum wind speed setpoint, lighting programs, mode selection, override code, and desired actions (e.g., pump speed up, spa on, lights on, etc.).
- maximum sun exposure e.g., UV, intensity, etc.
- minimum sun exposure e.g., minimum sun exposure
- device operation setpoints e.g., minimum sun exposure
- preferred pool/spa area e.g., contact means (e.g., SMS/text)
- contact means e.g., SMS/text
- user profiles zip code
- maximum wind speed setpoint e.g., maximum wind speed setpoint
- lighting programs e.g., mode selection, override code
- desired actions e.g., pump speed up, spa on, lights on, etc.
- Operational data 3004 could include GPS coordinates, compass bearing, accelerometer information, image data, IP address, timers, energy usage, and video monitoring data.
- Equipment factory specifications 3006 could include device maximum wind speed, device operation setpoints, device power requirements, and device critical requirements (e.g., plumbing size, flow rate, clearance, etc.).
- Equipment configuration parameters 3008 could include IP address, GPS coordinates, ZIP code, time and date, lighting programs, etc.
- Web data 3010 could include location (based on IP address), time & date, sun position, maximum sun exposure, sunrise/sunset data, local lighting code, regional & local weather, forecast data, wind speed and direction, historic weather conditions, live weather maps, local noise ordinance, local traffic conditions, local energy providers, local energy costs, energy rebates and discounts, video monitoring data, device/equipment information, etc.
- Pool configuration parameters 3012 could include, pool surface area, pool geometry, pool cover (e.g., yes, no), etc.
- Related devices/systems 3014 could include smart devices, user interface devices, shading devices, skimmers, pumps, water features, fire features, pool covers, lighting systems, heaters or coolers, pool cleaners, sanitization systems, chemical dispensing systems, alarm systems, garage doors, interior (home) lights, maintenance system/application, etc.
- Health monitoring data 3016 could include ambient temperature, water temperature, wind speed, warranty countdown, maintenance schedule, past equipment issues, service history, etc.
- External sensor data 3018 could include motion sensors (e.g., bather detection), ambient temperature sensors, water temperature sensors, ambient noise sensors, light sensors (home/interior), video (home/interior), bar code scanners, etc.
- the temperature e.g., by checking a thermometer, a thermocouple, a weather forecast, the internet, etc.
- FIGS. 33 A- 33 AH are flowcharts illustrating additional processing steps of the pool control logic 70 carried out with respect to related devices, systems, and applications.
- FIG. 33 A is a flowchart illustrating processing steps of the pool control logic 70 for determining locations of skimmers and/or the pool/spa to account for wind, sun, or other external factors.
- the pool control logic 70 transmits an instruction to the user to traverse the perimeter of the pool while holding the smart device.
- the pool control logic 70 receives positioning data (e.g., GPS coordinates, compass bearing, etc.) from the smart device as the user traverses the pool.
- positioning data e.g., GPS coordinates, compass bearing, etc.
- the pool control logic 70 transmits an instruction to the user to place the smart device at a skimmer location.
- the pool control logic 70 receives positioning data (e.g., GPS coordinates, compass bearing, accelerometer information, etc.) from the smart device placed at the skimmer location.
- positioning data e.g., GPS coordinates, compass bearing, accelerometer information, etc.
- the pool control logic 70 transmits an instruction to the user to photograph the skimmer and pool using the smart device and in step 3110 , the pool control logic 70 receives image data from the smart device.
- the pool control logic 70 determines the location of the skimmer relative to the pool (e.g., using GPS, compass, accelerometer information, and/or image data provided by the smart device). In step 3114 , pool control logic 70 saves the location of the skimmer to memory for later retrieval, described hereinbelow in connection with FIG. 33 G .
- pool control logic can also determine the location, geometry, and orientation of the pool/spa (e.g., using GPS, compass, accelerometer information, and/or image data from the smart device) and in step 3118 , pool control logic 70 could save the location, geometry, and orientation of the pool/spa to memory for later retrieval, described hereinbelow in connection with FIG. 33 L .
- FIG. 33 B is a flowchart illustrating processing steps carried out by the pool control logic 70 for estimating sun exposure and alerting the user to the same.
- pool control logic 70 transmits an instruction to the user to photograph the pool/spa using a smart device.
- pool control logic 70 receives data from the smart device (e.g., GPS, compass, image, date and time data, etc.).
- pool control logic 70 determines if additional photographs are needed (e.g., multiple photographs could be taken at various times during the day).
- pool control logic 70 proceeds to step 3126 , where the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3120 . If a negative determination is made, the process proceeds to step 3128 , where pool control logic 70 receives data on sun position (e.g., from sun tracking application or web data) based on location data from the smart device. In step 3130 , pool control logic 70 receives current date and time data (e.g., from internal clock or as web data). In step 3132 , pool control logic estimates the current sun exposure (e.g., ultraviolet “UV” index) based on location, image, sun position, and date and time data.
- sun position e.g., from sun tracking application or web data
- current date and time data e.g., from internal clock or as web data.
- pool control logic estimates the current sun exposure (e.g., ultraviolet “UV” index) based on location, image, sun position, and date
- pool control logic 70 retrieves a maximum UV exposure setpoint from the memory.
- the maximum UV exposure setpoint could be provided by the user, or retrieved as web data provided by a recognized health organization.
- pool control logic 70 determines if the current sun exposure is above the maximum UV exposure setpoint. If a positive determination is made, the process proceeds to step 3138 , where pool control logic 70 transmits an alert to the user (e.g., “Caution—High UV Index”). If a negative determination is made, the process reverts to step 3130 .
- FIG. 33 C is a flowchart illustrating processing steps carried out by the pool control logic 70 for automatically deploying shading devices (e.g., umbrellas, awnings, shades, etc.) based on estimated sun exposure.
- pool control logic 70 transmits an instruction to the user to photograph the pool/spa using a smart device.
- pool control logic 70 receives data from the smart device (e.g., GPS, compass, image, date and time data, etc.).
- step 3144 pool control logic 70 determines if additional photographs are needed (e.g., multiple photographs could be taken at various times during the day).
- pool control logic 70 proceeds to step 3146 , where the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3140 . If a negative determination is made, the process proceeds to step 3148 , where pool control logic 70 receives data on sun position (e.g., from sun tracking application or web data) based on location data from the smart device. In step 3150 , pool control logic 70 receives current date and time data (e.g., from internal clock or as web data).
- sun position e.g., from sun tracking application or web data
- current date and time data e.g., from internal clock or as web data.
- pool control logic 70 estimates the current sun exposure (e.g., ultraviolet “UV” index, sun intensity, etc.) based on location, image, sun position, and date and time data.
- pool control logic 70 retrieves a shading device setpoint from the memory.
- the shading device setpoint is a sun exposure value for triggering operation of the shading devices, and could be provided by the user, as a configuration parameter, or retrieved as web data.
- pool control logic 70 determines if the current estimated sun exposure is above the shading device setpoint. If a positive determination is made, the process proceeds to step 3158 , where pool control logic 70 transmits an instruction to the shading devices to deploy and then reverts to step 3150 .
- step 3160 pool control logic 70 determines if the shading devices are deployed. If a negative determination is made, the process reverts to step 3150 . If a positive determination is made, the process proceeds to step 3162 , where pool control logic 70 transmits an instruction to the shading devices to retract and then reverts to step 3150 .
- FIG. 33 D is a flowchart illustrating processing steps carried out by the pool control logic 70 for notifying a user of sun conditions at a preferred area of the pool (e.g., lounging area).
- pool control logic 70 transmits an instruction to the user to photograph the pool/spa using a smart device.
- pool control logic 70 receives data from the smart device (e.g., GPS, compass, image, date and time data, etc.).
- pool control logic 70 determines if additional photographs are needed (e.g., multiple photographs could be taken at various times during the day).
- pool control logic 70 proceeds to step 3170 , where the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3164 . If a negative determination is made, the process proceeds to step 3172 , where pool control logic 70 receives data on sun position (e.g., from sun tracking application or web data) based on location data from the smart device. In step 3174 , pool control logic 70 retrieves location data of a preferred area of the pool from the memory. The location data of the preferred area of the pool can be obtained by way of a similar process, as described herein, in connection with FIG. 33 A (e.g., process for determining skimmer location).
- sun position e.g., from sun tracking application or web data
- the pool control logic 70 receives current date and time data (e.g., from internal clock, or as web data). In step 3178 , pool control logic 70 estimates the current sun exposure at the preferred area (e.g., using GPS, compass, image, and sun positioning data). In step 3180 , pool control logic 70 retrieves a minimum sun exposure setpoint (e.g., minimum UV index or sun intensity) from the memory. In step 3182 , pool control logic 70 determines if the current estimated sun exposure is above the minimum sun exposure setpoint. If a negative determination is made, the process reverts to step 3176 .
- a minimum sun exposure setpoint e.g., minimum UV index or sun intensity
- pool control logic 70 transmits an alert to the user (e.g., “Lounge Area is Sunny”).
- an alert e.g., “Lounge Area is Sunny”.
- multiple users can create profiles containing their preferred areas of the pool and a means for receiving alerts. For example, a user could create a profile with two preferred areas of the pool, name the preferred areas of the pool (e.g., “lounge area,” “spa area,” etc.) and pool control logic 70 could sent the user a SMS/text message when either of the preferred areas are sunny. It is also noted that pool control logic 70 could collect historical usage data for each user and save the data (e.g., to the memory) to individual user profiles for later retrieval and use.
- FIG. 33 E is a flowchart illustrating processing steps carried out by the pool control logic 70 for planning the optimal placement of a pool/spa prior to installation.
- pool control logic 70 transmits an instruction to the user to photograph a desired pool/spa location using a smart device.
- pool control logic 70 receives desired location data from the smart device (e.g., GPS coordinates, compass bearing, image data, etc.).
- desired location data e.g., GPS coordinates, compass bearing, image data, etc.
- pool control logic 70 receives data on sun position (e.g., data from sun tracking application or as web data), based on the location data from the smart device.
- sun position e.g., data from sun tracking application or as web data
- pool control logic 70 determines the optimal location and orientation of the pool/spa for ideal sun exposure (e.g., using GPS, compass, and image data from smart device).
- pool control logic 70 receives data on historic weather conditions (e.g., prevailing winds, speed, direction, etc.) based on the location data from the smart device and in step 3196 , pool control logic 70 determines the optimal location of a skimmer (e.g., based on historic wind conditions/direction).
- pool control logic 70 transmits the optimized location and orientation data to the user (e.g., in the form of architectural drawings, renderings, etc.).
- pool control logic 70 saves the optimized location data to the memory for later retrieval.
- FIG. 33 F is a flowchart illustrating processing steps carried out by the pool control logic 70 for determining current weather conditions.
- pool control logic 70 receives an IP address from a smart device on a local network.
- pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider).
- pool control logic 70 receives web data on current weather conditions (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow).
- Current weather conditions can include, for example, temperature, precipitation, wind speed, wind direction, etc.
- Web data on current weather conditions could also include live 3rd party data, for example, live weather maps of precipitation and cloud cover.
- pool control logic 70 saves the current weather conditions to the memory for later retrieval.
- pool control logic 70 is delayed by X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and then the process returns to step 3200 .
- pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 3212 , pool control logic 70 could receive the ZIP code data from the user interface device.
- pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi.
- FIG. 33 G is a flowchart illustrating processing steps carried out by the pool control logic 70 for selecting a skimmer based on current weather conditions.
- pool control logic 70 retrieves current weather conditions (e.g., wind direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- pool control logic 70 retrieves skimmer location data from the memory. The skimmer location data can be obtained by way of the process described herein, in connection with FIG. 33 A .
- pool control logic 70 determines if there are multiple skimmers. If a negative determination is made, the process ends.
- pool control logic 70 determines the most downwind skimmer (using the location data).
- pool control logic 70 transmits an instruction to the most downwind skimmer to activate. Pool control logic 70 could also sent an instruction to all other skimmers to deactivate. The process then reverts to step 3216 .
- pool control logic 70 could transmit an instruction to increase the suction of an upwind skimmer to compensate for the wind conditions or pool control logic 70 could transmit an instruction to decrease the suction of a downwind skimmer to compensate for the increased debris flowing therethrough due to the wind condition.
- pool control logic 70 could transmit an instruction to alter the skimmer suction relative to main drain suction.
- FIG. 33 H is a flowchart illustrating processing steps carried out by the pool control logic 70 for automated operation of pool devices based on current weather conditions.
- pool control logic 70 retrieves current weather conditions (e.g., wind speed, up-wind debris source direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- pool control logic 70 retrieves maximum wind speed setpoint data from memory.
- pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3238 , where pool control logic 70 transmits an instruction to the pump to increase circulation.
- pool control logic 70 could transmit an instruction to deactivate or reduce water features (e.g., fountains).
- pool control logic 70 could transmit an instruction to deactivate or reduce fire features.
- pool control logic 70 could transmit an instruction to retract shading devices (e.g., umbrellas, awnings, shades, etc.).
- step 3246 pool control logic 70 could transmit a message to the user (e.g., “Caution—High Winds”). The process then reverts to step 3226 .
- step 3230 the process proceeds to step 3232 , where pool control logic 70 determines if the operation of any pool devices has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3226 . If a positive determination is made, the process proceeds to step 3234 , where pool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 3236 , pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3226 .
- the above process can also be used to configure the skimmer locations with respect to the up-wind debris direction.
- FIG. 33 I is a flowchart illustrating processing steps carried out by the pool control logic 70 for automated operation of a pool cover based on current weather conditions.
- pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- step 3250 pool control logic 70 retrieves maximum wind speed setpoint data from memory.
- step 3252 pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3260 , where pool control logic 70 receives operational data from a pool motion sensor (e.g., bather detection, as described hereinabove).
- a pool motion sensor e.g., bather detection, as described hereinabove.
- pool control logic 70 determines if an active bather has been detected. If a positive determination is made, the process could optionally proceed to step 3264 , where pool control logic 70 transmits an instruction to the lighting system to display a weather alert program (e.g., flashing white lights) and the process then reverts to step 3248 . If a negative determination is made, the process proceeds to step 3266 , where pool control logic 70 transmits an instruction to close the pool cover (e.g., 90% closed, allowing for safety egress).
- a weather alert program e.g., flashing white lights
- step 3252 the process proceeds to step 3254 , where pool control logic 70 determines if the operation of any pool devices (e.g., pool cover, lighting system) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3248 . If a positive determination is made, the process proceeds to step 3256 , where pool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 3258 , pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3248 .
- any pool devices e.g., pool cover, lighting system
- FIG. 33 J is a flowchart illustrating processing steps carried out by the pool control logic 70 for compensating heat loss due to current weather conditions.
- pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- step 3270 pool control logic 70 retrieves maximum wind speed setpoint data from memory.
- step 3272 pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3280 , where pool control logic 70 retrieves pool configuration parameters from memory (e.g., pool surface area, geometry, volume, etc.).
- pool control logic 70 receives data on the ambient temperature (e.g., from sensor or web data). In step 3284 , pool control logic 70 receives operational data on water temperature (e.g., from sensor). In step 3286 , pool control logic 70 determines heat loss due to the current weather condition (e.g., prevailing winds). In step 3288 , pool control logic 70 transmits an instruction to the heater to increase output (e.g., compensating for the heat loss) and the process reverts to step 3268 .
- the current weather condition e.g., prevailing winds
- step 3272 the process proceeds to step 3274 , where pool control logic 70 determines if the operation of any pool devices (e.g., heater) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3268 . If a positive determination is made, the process proceeds to step 3276 , where pool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 3278 , pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3268 .
- any pool devices e.g., heater
- the process reverts to step 3268 .
- FIG. 33 K is a flowchart illustrating processing steps carried out by the pool control logic 70 for determining if a freeze risk exists and if so, taking appropriate action.
- pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- step 3292 pool control logic 70 retrieves maximum wind speed setpoint data from memory.
- step 3294 pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3302 , where pool control logic 70 receives data on the ambient temperature (e.g., from sensor or web data).
- pool control logic 70 determines heat loss due to the current weather condition (e.g., prevailing winds). Heat loss due to the weather conditions (e.g., wind) can be obtained by way of the process described herein, in connection with FIG. 33 J .
- step 3306 pool control logic 70 determines if a freeze risk exists (e.g., due to ambient temperature, heat loss, wind chill, etc.). If a negative determination is made, the process reverts to step 3290 . If a positive determination is made, the process proceeds to step 3308 , where pool control logic 70 transmits an instruction to the pump to increase speed.
- pool control logic 70 could transmit an instruction to the heater to increase output
- pool control logic 70 could transmit an instruction to the lighting system to display a freeze risk program (e.g., flashing blue lights)
- pool control logic 70 could transmit a message to the user (e.g., “Freeze Risk”). The process then reverts to step 3290 . If a negative determination is made in step 3294 , the process proceeds to step 3296 , where pool control logic 70 determines if the operation of any pool devices (e.g., pump, heater, lighting system, etc.) has been altered due to the weather condition (e.g., high winds).
- any pool devices e.g., pump, heater, lighting system, etc.
- step 3290 If a negative determination is made, the process reverts to step 3290 . If a positive determination is made, the process proceeds to step 3298 , where pool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 3300 , pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3290 .
- FIG. 33 L is a flowchart illustrating processing steps carried out by the pool control logic 70 for cleaning a pool/spa in response to a weather condition (e.g., high winds).
- pool control logic 70 retrieves current weather conditions (e.g., wind speed, direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- step 3318 pool control logic 70 retrieves maximum wind speed setpoint data from memory.
- step 3320 pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3328 , where pool control logic 70 retrieves pool geometry and orientation data from the memory.
- pool control logic 70 determines the downwind area of the pool/spa.
- pool control logic 70 transmits an instruction to a pool cleaner to traverse the downwind area of the pool and the process then reverts to step 3316 . If a negative determination is made in step 3320 , the process proceeds to step 3322 , where pool control logic 70 determines if the operation of any pool devices (e.g., pool cleaner) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3316 .
- any pool devices e.g., pool cleaner
- step 3324 pool control logic 70 transmits an instruction to revert to regular operation of the pool device(s).
- step 3326 pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3316 .
- FIG. 33 M is a flowchart illustrating processing steps carried out by the pool control logic 70 for sanitizing a pool/spa in response to a weather condition (e.g., high winds).
- pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection with FIG. 33 F .
- step 3336 pool control logic 70 retrieves maximum wind speed setpoint data from memory.
- pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint.
- pool control logic 70 retrieves pool configuration parameters (e.g., pool surface area, geometry, volume, etc.) from the memory.
- pool control logic 70 determines the increased sanitization needs of the pool due to the weather condition (e.g., high winds causing increased debris in pool).
- pool control logic 70 transmits an instruction to a sanitization system to increase operation by the determined amount and the process then reverts to step 3334 .
- step 3338 the process proceeds to step 3340 , where pool control logic 70 determines if the operation of any pool devices (e.g., sanitization system) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3334 . If a positive determination is made, the process proceeds to step 3342 , where pool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, in step 3344 , pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3334 .
- any pool devices e.g., sanitization system
- FIG. 33 N is a flowchart illustrating processing steps carried out by the pool control logic 70 for operating pool devices based on timers triggered by sunrise/sunset times.
- pool control logic 70 receives an IP address from a smart device on a local network.
- pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider).
- location data e.g., web data/geolocation provider.
- pool control logic 70 receives web data on sunrise/sunset times (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow).
- pool control logic 70 receives time and date data (e.g., via an internal clock or as web data).
- pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3358 . If a positive determination is made, the process proceeds to step 3362 , where pool control logic 70 begins a timer for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.).
- step 3364 pool control logic 70 transmits an instruction to a pool device to activate/alter operation. For example, pool control logic 70 could transmit an instruction to the pump 14 a to increase speed upon sunrise, for a specified duration of time, or pool control logic 70 could transmit an instruction to display a countdown to sundown.
- step 3366 pool control logic 70 determines if the timer has reached zero (0) seconds. If a negative determination is made, the process repeats step 3366 . If a positive determination is made, the process proceeds to step 3368 , where pool control logic 70 transmits an instruction to the pool device to deactivate/resume normal operation. The process then reverts to step 3352 .
- step 3370 pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 3372 , pool control logic 70 could receive the ZIP code data from the user interface device and then the process could proceed to step 3356 .
- step 3374 pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi) and then the process could proceed to step 3356 .
- FIG. 33 O is a flowchart illustrating processing steps carried out by the pool control logic 70 for operating pool devices based on sunrise/sunset times (e.g., activate at sunrise, deactivate at sunset).
- the pool control logic 70 could transmit an instruction to the pump 14 a to increase speed upon sunrise and decrease speed upon sunset, the pool control logic 70 could transmit an instruction to increase the filtration rate or hours based on sunlight hours, or the pool control logic 70 could transmit an instruction to the lighting system 14 h to activate upon sundown and deactivate upon sunrise.
- pool control logic 70 receives an IP address from a smart device on a local network.
- pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider).
- pool control logic 70 receives web data on sunrise/sunset times (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow).
- pool control logic 70 receives time and date data (e.g., via an internal clock or as web data).
- step 3384 pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3382 . If a positive determination is made, the process proceeds to step 3386 , where pool control logic 70 transmits an instruction to a pool device to activate/alter operation.
- pool control logic 70 receives time and date data (e.g., via an internal clock or as web data).
- step 3390 pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3388 . If a positive determination is made, the process proceeds to step 3392 , where pool control logic 70 transmits an instruction to the pool device to deactivate/resume normal operation. The process then reverts to step 3376 .
- step 3394 pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 3396 , pool control logic 70 could receive the ZIP code data from the user interface device and then the process could proceed to step 3380 .
- step 3398 pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi) and then the process could proceed to step 3380 .
- FIG. 33 P is a flowchart illustrating processing steps carried out by the pool control logic 70 for operating pool devices at different setpoints during the daytime and evening.
- pool control logic 70 could operate a sanitization system at a first setpoint during the daytime and operate at a second setpoint during the evening.
- pool control logic 70 receives web data on sunrise/sunset times. The web data on sunrise/sunset times can be obtained by way of the process described herein, in connection with FIG. 33 N .
- step 3402 pool control logic 70 receives time and date data (e.g., via an internal clock or as web data).
- pool control logic 70 determines if the current time is the sunrise or sunset time.
- step 3402 If a negative determination is made, the process reverts to step 3402 . If a positive determination is made, the process proceeds to step 3406 , where pool control logic 70 retrieves setpoint data for a daylight sanitization rate from the memory. In step 3408 , pool control logic 70 transmits an instruction to a sanitization system to operate at the daylight sanitization rate. In step 3410 , pool control logic 70 receives time and date data (e.g., via an internal clock or as web data). In step 3412 , pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3410 .
- time and date data e.g., via an internal clock or as web data
- step 3414 pool control logic 70 retrieves setpoint data on an evening sanitization rate from the memory.
- step 3416 pool control logic 70 transmits an instruction to the sanitization system to operate at the evening sanitization rate. The process then reverts to step 3400 .
- FIG. 33 Q is a flowchart illustrating processing steps carried out by the pool control logic 70 for operating a sanitization system based on the current weather conditions.
- pool control logic 70 retrieves current weather conditions data from the memory.
- Current weather conditions data can be obtained by way of the process described herein, in connection with FIG. 33 F .
- Current weather conditions could include air temperature, humidity, heat/cold index, wind-chill, etc.
- pool control logic 70 could receive water temperature operational data from a sensor.
- pool control logic 70 retrieves pool configuration parameters from the memory.
- pool control logic 70 determines the sanitization rate based on the current weather conditions.
- pool control logic 70 could determine the sanitization rate based on the water temperature.
- pool control logic 70 transmits an instruction to the sanitization system to operate at the determined rate. The process then reverts to step 3418 .
- FIG. 33 R is a flowchart illustrating processing steps carried out by the pool control logic 70 for operating the system 10 based on maximum ambient noise.
- pool control logic 70 receives web data on the local noise ordinance (e.g., maximum decibels at specified times allowed by code). The web data on the local noise ordinance can be obtained by way of a similar process as described herein, in connection with FIG. 33 N (e.g., by determining the location of the system 10 and then receiving web data based on that location).
- step 3432 pool control logic 70 receives time and date data (e.g., internal clock or web data).
- step 3434 pool control logic 70 receives operational data from an ambient noise sensor.
- step 3436 pool control logic 70 determines if the current ambient noise is above the maximum ambient noise (set by ordinance) at the current time. If a negative determination is made, the process reverts to step 3432 . If a positive determination is made, the process proceeds to step 3438 , where pool control logic 70 transmits an instruction to a pool device (e.g., water feature, pump, heater, blower, etc.) to reduce operation by X %, wherein X is any suitable integer between one (1) and one hundred (100) (e.g., 1, 2, 5, 10, etc.). The process then reverts to step 3432 .
- a pool device e.g., water feature, pump, heater, blower, etc.
- FIG. 33 S is a flowchart illustrating processing steps carried out by the pool control logic 70 for compensating for ambient noise.
- pool control logic 70 receives web data (e.g., Google maps) on local traffic conditions (e.g., number/density/speed of vehicles surrounding current location). The web data on the local traffic conditions can be obtained by way of a similar process as described herein, in connection with FIG. 33 N (e.g., by determining the location of the system 10 and then receiving web data based on that location).
- step 3442 pool control logic 70 determines/estimates the noise intensity of the local traffic.
- pool control logic 70 could receive operational data from an ambient noise sensor that is positioned to sense the noise produced by the local traffic.
- pool control logic 70 determines the intensity of white noise needed to compensate for the noise intensity of the local traffic.
- pool control logic 70 transmits an instruction to a pool device (e.g., water feature or other device capable of producing white noise) to increase output by X %, wherein X is any suitable integer (e.g., 5, 10, 50, etc.).
- a pool device e.g., water feature or other device capable of producing white noise
- X is any suitable integer (e.g., 5, 10, 50, etc.).
- pool control logic 70 receives operational data from an ambient noise sensor (e.g., white noise sensor).
- step 3450 pool control logic 70 determines if the white noise being produced is sufficient to compensate for the noise being produced by the local traffic. If a negative determination is made, the process reverts to step 3446 . If a positive determination is made, the process reverts to step 3440 .
- FIG. 33 T is a flowchart illustrating processing steps carried out by the pool control logic 70 for determining the local cost of energy.
- pool control logic 70 receives an IP address from a smart device on a local network.
- pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider).
- location data e.g., web data/geolocation provider.
- pool control logic 70 receives web data (e.g., a listing) of local energy providers (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow).
- step 3460 pool control logic 70 transmits an instruction to the user to select their local energy provider (e.g., from a list of local energy providers).
- the local energy providers/vendors can also be determined by way of the user entering, scanning, or selecting the vendor from a drop-down menu.
- pool control logic 70 receives web data on local energy cost (e.g., as provided by the selected energy vendor).
- the local energy costs could include both current energy costs and/or forecasted energy costs.
- pool control logic 70 could transmit a rebate/discount message to the user (e.g., government and/or power company energy and/or energy-based equipment rebates and discounts).
- pool control logic 70 saves the local energy cost data to the memory for later retrieval.
- pool control logic 70 is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and the process then reverts to step 3454 .
- pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and in step 3470 , pool control logic 70 could receive the ZIP code data from the user interface device and then the process could proceed to step 3458 .
- pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi) and then the process could proceed to step 3458 .
- FIG. 33 U is a flowchart illustrating processing steps carried out by the pool control logic 70 for informing the user of the cost of a desired action.
- pool control logic 70 retrieves local energy cost data from the memory.
- the web data on the local energy costs can be obtained by way of the process as described herein, in connection with FIG. 33 T (e.g., by determining the location of the system 10 and then receiving web data based on that location).
- pool control logic 70 receives user input on a desired action (e.g., pump speed up, spa on, lights on, etc.).
- a desired action e.g., pump speed up, spa on, lights on, etc.
- the desired action could also include bringing a pool feature to a desired state, over time (e.g., bringing the pool water temperature to 80 degrees Fahrenheit by Friday at 5:00 pm and maintaining the temperature for a specified duration of time).
- pool control logic 70 determines the predicted cost of the desired action.
- pool control logic 70 transmits a message to the user (e.g., cost per minute, hour, day, etc.).
- FIG. 33 V is a flowchart illustrating processing steps carried out by the pool control logic 70 for optimizing the operation of pool devices based on energy cost (peak and off-peak hours).
- pool control logic 70 retrieves local energy cost data from the memory (e.g., peak/off-peak cost of electricity).
- the web data on the local energy costs can be obtained by way of the process as described herein, in connection with FIG. 33 T (e.g., by determining the location of the system 10 and then receiving web data based on that location).
- pool control logic 70 receives user input on pool device operating schedules (e.g., filtering, pool cleaning, etc.).
- pool control logic 70 determines an optimized schedule for the lowest energy cost.
- pool control logic 70 transmits an instruction to the pool devices to operate according to the optimized schedule.
- energy-based commands could be capable of auto-overriding other system commands, and vice-versa, based on weather/environmental demands (e.g., optimized energy settings vs. weather vs. basic pool requirements—clean, sanitized, etc.). The process then returns to step 3484 .
- FIG. 33 W is a flowchart illustrating processing steps carried out by the pool control logic 70 for warning the user of pool device operation during peak energy cost hours.
- pool control logic 70 retrieves local energy cost data from the memory (e.g., peak/off-peak cost of electricity).
- the web data on the local energy costs can be obtained by way of the process as described herein, in connection with FIG. 33 T (e.g., by determining the location of the system 10 and then receiving web data based on that location).
- pool control logic 70 retrieves user input on a desired action (e.g., pump speed up, spa on, lights on, etc.).
- pool control logic 70 receives time and date data (e.g., internal clock, or as web data).
- pool control logic 70 determines whether the current time corresponds to peak hours for electricity costs. If a positive determination is made, the process proceeds to step 3500 , where pool control logic 70 transmits a message to the user (e.g., “Warning—Peak hours. Do you wish to proceed?”). In step 3502 , pool control logic 70 receives user input (e.g., yes/no). In step 3504 , pool control logic 70 determines if the user wishes to proceed with the desired action. If a negative determination is made, the process ends.
- step 3506 pool control logic 70 transmits an instruction to the pool device to perform the desired action (e.g., pump speed up, spa on, lights on, etc.) and the process ends. If a negative determination is made at step 3498 , the process proceeds to step 3506 .
- the desired action e.g., pump speed up, spa on, lights on, etc.
- FIG. 33 X is a flowchart illustrating processing steps carried out by the pool control logic 70 for preventing use of the system 10 during peak electrical cost hours.
- pool control logic 70 retrieves local energy cost data from the memory (e.g., peak/off-peak cost of electricity).
- the web data on the local energy costs can be obtained by way of the process as described herein, in connection with FIG. 33 T (e.g., by determining the location of the system 10 and then receiving web data based on that location).
- pool control logic 70 retrieves user input on a desired action (e.g., pump speed up, spa on, lights on, etc.).
- a desired action e.g., pump speed up, spa on, lights on, etc.
- pool control logic 70 receives time and date data (e.g., internal clock, or as web data). In step 3514 , pool control logic 70 determines if it is currently peak hours for electricity costs. If a positive determination is made, the process proceeds to step 3516 , where pool control logic 70 transmits a message to the user (e.g., “Warning—Peak hours. Please enter Priority User override code.”). In step 3518 , pool control logic 70 receives user input (e.g., Priority User override code). In step 3520 , pool control logic 70 determines if the Priority User override code is correct.
- time and date data e.g., internal clock, or as web data.
- step 3514 pool control logic 70 determines if it is currently peak hours for electricity costs. If a positive determination is made, the process proceeds to step 3516 , where pool control logic 70 transmits a message to the user (e.g., “Warning—Peak hours. Please enter Priority User override code
- step 3522 pool control logic 70 transmits an instruction to the pool device to perform the desired action (e.g., pump speed up, spa on, lights on, etc.) and the process ends. If a negative determination is made, the process proceeds to step 3524 , where pool control logic 70 determines if there are retries remaining (e.g., remaining attempts to enter the correct code). If a negative determination is made at step 3524 , the process ends. If a positive determination is made at step 3524 , the process reverts to step 3518 . If a negative determination is made at step 3514 , the process proceeds to step 3522 .
- the desired action e.g., pump speed up, spa on, lights on, etc.
- FIG. 33 Y is a flowchart illustrating processing steps carried out by the pool control logic 70 for deactivating high-powered systems/devices/components to reduce electrical costs.
- pool control logic 70 receives an instruction to activate “Energy Save Mode.”
- pool control logic 70 identifies high-powered lighting devices in the lighting system. The high-powered lighting devices could be identified at the time of installation (e.g., manually or scanned) or by pool control logic 70 (e.g., macro or sensed).
- pool control logic 70 transmits an instruction to the high-powered lighting to deactivate (e.g., deactivate non-LED lighting devices).
- “Energy Save Mode” could also identify and deactivate any device using an amount power that exceeds a predefined setpoint. Additionally, pool control logic 70 could transmit an instruction to a device to reduce operation until the device is only consuming power at low, predefined setpoint.
- web data e.g., 3rd party Web advised conditions, energy cost, weather, environmental, etc.
- prompt/trigger pool control logic 70 e.g., pump control, valve control, lighting control, cleaner control, etc.
- FIG. 33 Z is a flowchart illustrating processing steps carried out by the pool control logic 70 for alerting the user to pool/spa area ingress and egress.
- pool control logic 70 receives live or historical video of the pool/yard (e.g., from 3rd party application/source).
- pool control logic 70 analyzes the video of the pool/yard for occupant ingress/egress.
- pool control logic 70 determines if there has been an ingress/egress (e.g., unwanted intrusion, monitoring the whereabouts of children, etc.) in connection with a body of water. If a negative determination is made, the process reverts to step 3532 . If a positive determination is made, the process proceeds to step 3538 , where pool control logic 70 transmits a message to the user (e.g., “Alert—pool ingress/egress”). The process then reverts to step 3532 .
- an ingress/egress e.g., unwanted intrusion, monitoring the whereabouts of children, etc.
- pool control logic 70 could transmit instructions to an alarm system to activate (e.g., 3rd party alarm system/security provider) and then revert to step 3532 .
- the pool control logic 70 could also communicate with 3rd party security systems (e.g., front-door systems with video, audio, door unlock/lock, etc.) and in-home lighting systems and receive data from 3rd party live satellite image/video feeds.
- 3rd party security systems e.g., front-door systems with video, audio, door unlock/lock, etc.
- in-home lighting systems receive data from 3rd party live satellite image/video feeds.
- FIG. 33 AA is a flowchart illustrating processing steps carried out by the pool control logic 70 for leveraging video data from a 3rd party to maintain the cleanliness of a pool/spa.
- pool control logic 70 receives live or historical video of the pool/yard (e.g., from 3rd party application/source).
- pool control logic 70 analyzes the video of the pool/yard for debris (e.g., presence of debris in pool, debris movement in pool, debris concentration in pool, etc.).
- step 3546 pool control logic 70 determines if there is debris in the pool. If a negative determination is made, the process reverts to step 3542 .
- step 3548 pool control logic 70 transmits an instruction to a pool device to activate (e.g., cleaner, skimmer, filter, etc.). The process then reverts to step 3542 .
- pool control logic 70 could transmit an instruction to a pool cleaner to traverse the area of the pool having the highest concentration of debris, and then revert to step 3542 .
- FIG. 33 AB is a flowchart illustrating processing steps carried out by the pool control logic 70 for operation of the lighting system 14 h based on operational data from an external source.
- pool control logic 70 receives operational data from an external source (e.g., a signal that the garage door is opening).
- pool control logic 70 could receive operational data from another external device (e.g., a signal that the indoor lighting devices are turned on).
- pool control logic 70 receives web data on sunrise/sunset times (e.g., based on ZIP code, address, or GPS coordinates). The web data on the sunrise/sunset times can be obtained by way of the process as described herein, in connection with FIG.
- pool control logic 70 receives current time and date data (e.g., from an internal clock, or as web data).
- pool control logic 70 determines if the current time is after sunset. If a negative determination is made, the process reverts to step 3552 . If a positive determination is made, the process proceeds to step 3560 , where pool control logic 70 transmits an instruction to the lighting system to activate (e.g., a selection, pool zone, yard zone, or all outdoor lights). The process then reverts to step 3552 .
- pool control logic 70 could also synchronize/trigger the outdoor/pool lighting system to an “all on” command for the indoor lights. This is particularly useful for emergency lighting scenarios.
- the indoor lights could receive an “all on” command in response to a triggered smoke detector and pool control logic 70 could transmit an instruction to the lighting system 14 h to activate all lights at maximum intensity.
- Pool control logic 70 could determine that an “all on” command has been sent to the indoor lights directly, by receiving the same command (e.g., direct communication or network communication between the indoor lights and/or smoke detector and pool control logic 70 ), or indirectly, by monitoring the indoor lighting and/or smoke detector (e.g., light sensors or video monitoring for the indoor lighting, noise sensor for the smoke detector, etc.).
- FIG. 33 AC is a flowchart illustrating processing steps carried out by the pool control logic 70 for matching or synchronizing the operation of the lighting system 14 h to interior mood lighting in a home.
- pool control logic 70 receives operational data from an external device (e.g., mood/color lighting selected in a home).
- pool control logic 70 could receive operational data from a sensor positioned for sensing the lighting conditions (e.g., intensity or color) in the home, or pool control logic 70 could receive operational data from a third party application or video feed showing the lighting conditions in the house.
- step 3566 pool control logic 70 determines the RGB color spectrum of the mood lighting.
- pool control logic 70 transmits an instruction to the lighting system to operate the lights at the determined RGB color spectrum (e.g., matching the mood lighting to a selection, pool zone, yard zone, or all outdoor lights).
- FIG. 33 AD is a flowchart illustrating processing steps carried out by the pool control logic 70 for communicating with a smart device in the possession of a servicer/installer.
- the smart device scans an equipment bar code (e.g., at time of service, installation, etc.).
- pool control logic 70 could receive the equipment bar code data scanned by the smart device.
- the smart device identifies the location of the scanned equipment (e.g., via GPS, geo-positioning application, etc.).
- the smart device transmits the location of the equipment and the date of service/installation to the cloud.
- the location of the equipment and date of service/installation could be used for warranty registration, as well as other purposes, as described hereinbelow.
- the cloud could be accessed by pool control logic 70 , or a third party system (e.g., smart device/maintenance system used by servicer/installer).
- pool control logic 70 could save the location of the equipment and the date of service/installation to the memory for later retrieval.
- pool control logic 70 receives information on existing equipment installed at the same location/site (e.g., from the cloud or from the memory).
- pool control logic 70 determines if it is at or near time to service/replace any of the existing installed equipment.
- step 3580 pool control logic 70 transmits a notification to the servicer/installer (e.g., “Device due for maintenance in X days”) and the process ends.
- the process could proceed to step 3584 , where pool control logic 70 transmits information to the servicer/installer regarding past issues with the equipment at the location/site and the process ends. If a negative determination is made in step 3578 , the process ends. This service information could also be accessed through the cloud and viewed by the servicer/installer, original equipment manufacturer, or authorized service center.
- the service information could also be provided to the servicer/installer before arrival at the site through a smart device and/or application utilizing geo-fencing and global positioning systems (e.g., a geo-fence is placed around the site and the service information is provided to the servicer/installer upon crossing the geo-fence threshold), discussed hereinbelow.
- geo-fencing and global positioning systems e.g., a geo-fence is placed around the site and the service information is provided to the servicer/installer upon crossing the geo-fence threshold
- FIG. 33 AE is a flowchart illustrating processing steps carried out by the pool control logic 70 for communicating with an application used by a servicer/installer.
- a smart device scans an equipment bar code (e.g., at the time of service, installation, etc.).
- pool control logic 70 could receive the equipment bar code data scanned by the smart device.
- an application on the smart device receives equipment information (e.g., web data from the equipment manufacturer).
- the application displays critical equipment requirements (e.g., plumbing size, flow, clearance, etc.).
- the application receives information on existing equipment at the same location/site (e.g., from the cloud or from memory).
- the application can receive information on existing equipment by way of a similar process as to that described herein, in connection with FIG. 33 AD .
- any preexisting equipment could be scanned, and data on the preexisting equipment could be received from the cloud or from memory.
- the application analyzes the information for any potential adverse interactions with other equipment installed at the same location/site.
- the application determines if there are any potential adverse interactions. If a positive determination is made, the process proceeds to step 3598 , where the application displays a notification to the servicer/installer (e.g., “Caution—incompatible equipment”).
- step 3600 the application receives known pool parameters (e.g., location, regional weather/environmental conditions, pool geometry, connected pool devices, energy costs, user preferences, etc.).
- step 3602 the application determines optimal settings for the newly serviced/installed equipment.
- the application can recommend programming based on regional preferences, including seasonal programming (summer, winter, etc.). Further, the application can estimate energy costs based on location weather data and other locational factors. The price estimation can take into account local currency.
- step 3604 the application displays the optimal settings for the newly serviced/installed equipment. While the process described hereinabove, in connection with FIG. 33 AE , makes reference to an application that could be used by a servicer/installer, pool control logic 70 could also accomplish these same steps.
- FIG. 33 AF is a flowchart illustrating processing steps carried out by notifying a servicer of servicing opportunities around his/her current location.
- an application receives current location data (e.g., GPS coordinates) from a smart device.
- the application could run on the smart device, a laptop, a remote server having a web-accessible user interface, or any other suitable mobile device that can accompany the servicer/installer.
- the application receives the location of equipment and date of service/installation from the cloud within a specified range (e.g., location and service/installation dates of equipment within 50 miles.
- the application determines if any of the equipment within the specified range needs servicing/replacement.
- the application places a geo-fence around sites with equipment needing servicing/replacement.
- the application determines if the current location of the smart device (e.g., mobile device running application and carried by the servicer) is within a geo-fenced area.
- step 3608 If a negative determination is made, the process reverts to step 3608 . If a positive determination is made, the process proceeds to step 3618 , where the application transmits a notification to the servicer/installer (e.g., location of site, equipment needing service/replacement, past issues, etc.) and the process reverts to step 3608 . While the process described hereinabove, in connection with FIG. 33 AE , makes reference to an application that could be used by a servicer/installer, pool control logic 70 could also accomplish/be used in connection with these same steps.
- the servicer/installer e.g., location of site, equipment needing service/replacement, past issues, etc.
- pool control logic 70 could transmit the location and service date of the equipment to the cloud or same the data to memory, where the data is later accessed by the application, or pool control logic 70 could determine if any of the equipment needs servicing/replacing and transmit a notification to the application regarding same.
- FIG. 33 AG is a flowchart illustrating processing steps of a maintenance/targeted marketing system in accordance with the system of the present disclosure for notifying a pool/spa owner that equipment is in need of service.
- the maintenance system receives (e.g., from pool control logic, cloud, servicer, etc.) data on the location of equipment and date of service/installation.
- the maintenance system determines if any equipment needs servicing/replacement.
- the maintenance system cross-references the location of the equipment needing servicing/replacement with a customer information database (e.g., house phone, cellular phone, home address, email address, etc.).
- the maintenance system transmits a notifications to owners/users with equipment needing servicing/replacement (e.g., robo-calls, SMS messaging, letters, emails, etc.).
- FIG. 33 AH is a flowchart illustrating processing steps carried out by the pool control logic 70 for limiting the operation of pool devices when the an adult is not present.
- pool control logic 70 retrieves pool location, geometry, and orientation data from memory. The pool location, geometry, and orientation data can be obtained by way of the process described herein, in connection with FIG. 33 A .
- pool control logic 70 places a geo-fence around the pool/spa area.
- pool control logic 70 receives operational data from a smart device of an adult/parent (e.g., GPS coordinates).
- pool control logic 70 determines if the smart device is within the geo-fenced area.
- step 3636 pool control logic 70 transmits an instruction to the pool devices to operate in “Adult Mode” (e.g., parent, adult-only, features enabled) and the process reverts to step 3632 .
- step 3638 pool control logic 70 transmits an instruction to the pool devices to operate in “Safe Mode” (e.g., parent, adult-only, features disabled) and the process reverts to step 3632 .
- FIGS. 34 A- 34 J are diagrams showing additional embodiments of the pool and/or spa control system of the present disclosure, indicated generally at 4610 . More specifically, FIGS. 34 A- 34 J illustrate modular relays 4670 , a wiring hub 4646 , and a control module 4661 provided in accordance with the present disclosure.
- FIG. 34 A is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 4610 .
- network connectivity and remote monitoring/control is provided by way of a wiring hub 4646 which can be easily mounted to a variety of surfaces (discussed hereinbelow in connection with FIGS. 34 F- 34 I .
- the wiring hub 4646 provides connections for various pool and spa equipment, such as a variable speed pump 4614 a , a single-speed pump 4613 , and a legacy heater 4615 , as well as other equipment.
- the hub 4646 could communicate with and control a smart valve actuator 4614 e , and/or lighting system 4614 h .
- Optional smart control relays 4670 could also be in communication with the hub 4646 , or could communicate with any other HUA (e.g., a unique addressing system, digital, analog or mechanical switches or dip switches) enabled pool/spa component capable of receiving or assigning a network address.
- HUA e.g., a unique addressing system, digital, analog or mechanical switches or dip switches
- the hub 4646 could be in communication (e.g., using any of the wired or wireless connections and associated communication protocols discussed hereinabove) with a control module 4661 having a user interface 4660 .
- the user interface device 4660 could include physical keys, a digital display, and/or a touchscreen 4662 , as shown in FIG. 34 A . Any other suitable input technologies, or any combination thereof, could also be utilized, thereby enabling a user to interact with the pool and/or spa control system 10 .
- the control module 4661 could provide a WiFi hotspot for allowing a service provider's cellular telephone, tablet computer, or other mobile computing device 4644 to communicate with the system 10 , and to control the pool/spa equipment shown in FIG. 34 A .
- a breaker panel 4627 provides electrical power to the various devices shown in FIG. 34 A .
- Breaker panel 4627 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein.
- photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown in FIG. 34 A .
- the hub 4646 could also communicate with the homeowner's WiFi router 4622 via the control module 4661 , thereby providing an Internet connection to the pool/spa components in communication with the wiring hub 4646 .
- a remote pool/spa server 4618 could communicate with the router 4622 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired.
- the server 4618 could communicate with one or more remote computer systems 4620 such as a smart phone, a tablet computer, a remote computer system, home automation, etc., if desired.
- the pool/spa control logic discussed herein could be installed in the server 4618 , in one or more of the remote computers 4620 , and/or in the control module 4661 , if desired.
- the system could include a control/UI/WiFi module 4661 which includes an external controlling unit 4660 having a user interface (“UI”) display 4662 , a control board with processor and memory (not shown), and which is able to communicate with a home router 4622 by way of a wired or wireless connection (e.g., integral WiFi/cellular/RF, wired Ethernet, and/or an external WiFi/cellular antenna).
- UI user interface
- a control board with processor and memory not shown
- a home router 4622 by way of a wired or wireless connection (e.g., integral WiFi/cellular/RF, wired Ethernet, and/or an external WiFi/cellular antenna).
- a wired or wireless connection e.g., integral WiFi/cellular/RF, wired Ethernet, and/or an external WiFi/cellular antenna
- Control/UI/WiFi module 4661 could include a printed circuit board (not shown), a control module having a processor and memory, a graphical user interface display 4662 (e.g., LCD, LED, buttons, knobs, capacitive plastic, etc.), a WiFi module, ethernet jack, USB port, LEDs, a sealed enclosure, a mounting bracket (e.g., for mounting the module 4661 to a wall, post, pole, plumbing, etc.), and a means for communication with a wiring hub 4646 .
- a printed circuit board not shown
- a control module having a processor and memory e.g., a graphical user interface display 4662 (e.g., LCD, LED, buttons, knobs, capacitive plastic, etc.), a WiFi module, ethernet jack, USB port, LEDs, a sealed enclosure, a mounting bracket (e.g., for mounting the module 4661 to a wall, post, pole, plumbing, etc.), and a means for communication with a wiring hub 46
- control module 4661 could be mounted on or inside another piece of equipment such as, for example, a pump, heater, chlorinator, control, timeclock, etc.
- the control module 4661 could communicate with the wiring hub 4646 by way of either wired (e.g., RS485, ethernet, USB, serial, etc.) or wireless (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.) communication protocols.
- the wiring hub 4646 includes an enclosure, provisions for wire routing (meeting or exceeding IPxx ingress protection standards), a printed circuit board, and a power cord “whip” (cable).
- the wiring hub could be provided with communication interfaces for receiving and transmitting data to one or more devices.
- the wiring hub could communicate with, temperature sensors, external sensor, flow sensors, pressure sensors, chemical and physical property sensors, valve actuator ports, RS485 bus connections (for smart devices, smart relay(s), smart (firmware assisted) valves, smart sensors, and other smart devices) chlorination connections, lighting connections, power connectors, low voltage relays, etc.
- the communication interfaces could also be used to expand the functionality of the wiring hub such as, for example, by being used to interface with wireless communication chips (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.), and additional communication modules.
- wireless communication chips e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.
- the Control/UI/WiFi module 4661 is used to monitor, activate, and operate installed pool equipment.
- the control module 4661 could operate the equipment as needed with people present or absent, in the pool or around the backyard, which may be year-round and/or all-day based on application (e.g. residential vs. commercial) or location.
- the control module 4661 also monitors, detects, informs, and initiates protective action through a heuristic capability (using one or more algorithms) by accumulating and analyzing raw sensor data and external data to automatically develop ‘normal’ and ‘abnormal’ operating ranges, then taking action or alerting operators when the algorithm detects that operation is out of normal or safe operating range.
- the heuristic algorithms can also learn from operator response to a condition, and therefore account for factors not anticipated or sensed by the equipment. Such algorithms could be implemented in any of the embodiments discussed in the present disclosure, and need not be limited to the control module 4661 .
- the control module 4661 provides for distributed (e.g., the control module can be moved throughout the pool/spa environment based on the particular needs of the pool/spa environment and needs/wants of the pool/spa user) control of pool equipment and conditions that can be moved according to the specific needs of a particular pool/spa environment and/or user. For example, the control module 4661 could be moved away from the power switching or pool equipment to a remote location, closer to the wireless network, or closer to the home, or closer to wherever the user is (e.g., poolside). In addition, the control module 4661 could also allow for full pool control capability to be moved, or transferred, to a remote location from the pool pad, such as for example, to a cloud server 4618 or to a remote office.
- distributed e.g., the control module can be moved throughout the pool/spa environment based on the particular needs of the pool/spa environment and needs/wants of the pool/spa user
- the control module 4661 could be moved away from the power switching or pool equipment to a remote location, closer to the
- the connection to the wiring hub can be extended or virtualized via communications protocol over other mediums.
- the wiring hub 4646 could locally switch power or the wiring hub 4646 could command smart relays 4670 (discussed hereinbelow) to switch power or control signals.
- the wiring hub 4646 could further be provided with “limp mode” behaviors (discussed in greater detail hereinbelow) if communication to the controller is severed or impaired. These behaviors could include, but are not limited to, maintaining interlocks between relays, schedules, or other special behaviors that are intended to keep the pool system functional at a reduced level until normal operation is restored.
- the wiring hub 4646 could also integrate safety control functions needed for heating or other appliances, or the wiring hub 4646 could directly communicate with such safety controls.
- the control module 4661 and wiring hub 4646 could be mounted on a wall, on a post, on a stake (e.g., rebar), on a piece of plumbing, inside or on a piece of existing pool/spa equipment (e.g., pump, heater, chlorinator, existing automation, etc.). Further the control module 4661 and wiring hub 4646 may be mounted together in a single location or mounted separately.
- the wiring hub 4646 could provide power to the control system by tapping existing power connections at the load end of the conduit coming from a sub panel, timeclock, control, junction box or other electrical connection to the powered equipment. After turning off the power at breaker 4627 , a pool installer or service professional could remove the power whip from the existing equipment, and then reconnect the power whip to the wiring hub, thereby providing power to the wiring hub and control module 4661 without having to access the line voltage compartment of an electrical panel. Further, a new whip could then be connected to the wiring hub 4646 which could, in turn, deliver power from the wiring hub 4646 to additional powered equipment (see FIGS. 34 B and 34 C ).
- an existing power conduit from a variable speed pump 4614 a or a single speed pump 4613 could be disconnected from the variable speed pump 4614 a and then plugged back into, or otherwise connected to, the wiring hub 4646 .
- a new power whip could then be used to connect the wiring hub 4646 to the variable speed pump 4614 a .
- a communication cable e.g., RS485
- the installed power conduit from a heater 4615 could be disconnected from the heater 4615 and then plugged into, or otherwise connected to, the wiring hub 4646 .
- a new power conduit could then be used to connect the wiring hub 4646 to the heater 4615 and a communication cable (e.g., RS485) could be connected between the wiring hub 4646 and the heater 4615 to provide communication therebetween.
- a communication cable e.g., RS485
- the installed power conduit from a powered device e.g., pump, heater, chlorinator, cleaner, transformer, etc.
- a new power conduit cable is then used to connect the wiring hub 4646 to a smart relay 4670 and an additional power conduit cable is used to connect the smart relay 4670 to the powered device (e.g., pump, heater, chlorinator, cleaner, transformer, etc.).
- a powered device e.g., pump, heater, chlorinator, cleaner, transformer, etc.
- the wiring hub 4646 and/or control/UI/WiFi module 4661 could also be powered directly from a 120V/240V NEMA style plug, thereby qualifying as a cord-connected appliance. Because safety codes allow for increased flexibility in the location and mounting of cord-connected appliances, the labor to install or retrofit the devices is reduced, and the accessibility to the user, installer, or site wiring technician is improved.
- the modular nature of the wiring hub 4646 and control module 4661 provides for configurations thereof that are tailored for integration with the installed pool/spa equipment (e.g., such as a pump, heater, chlorinator, etc.) or that can remain in stand-alone configurations, thereby providing flexible communication to the controlled devices (e.g., via a wired or wireless connection). It is within the scope of the present disclosure that any and all of the pool control logic described herein could be located in and run from the wiring hub 4646 and/or the control module 4661 .
- the modular relays of the present disclosure could be used in connection with both residential and some commercial applications.
- the modular relays provide control (e.g., activation and deactivation) of a piece of pool equipment based on a control signal received from a controller (e.g., control module 4661 ) or local manual input (discussed hereinbelow).
- a controller e.g., control module 4661
- the modular relay 4670 could be used to control a pump, cleaner booster, spa booster, heater, pool lights, spa lights, landscape lights, post lights, accent lights, other types of lights, fans, chlorinators, water feature pumps, pond pumps, and cleaners, as well as additional pieces of electrically powered/controlled pool/spa equipment and yard equipment/devices.
- the modular relay 4670 could include a printed circuit board, a processor, an HUA (e.g., a unique addressing system, digital, analog or mechanical switches or dip switches), activation and/or deactivation button, status LEDs, a relay (s), an enclosure with multiple power entries, a power cord whip, and wired (e.g., RS485, USB, ethernet, etc.) and/or wireless communication (e.g., WiFi, Bluetooth, Bluetooth LE, ZWave, Zigbee, cellular, thread, mesh, etc.) interfaces for communicating with the controlling hardware.
- HUA e.g., a unique addressing system, digital, analog or mechanical switches or dip switches
- activation and/or deactivation button e.g., a relay (s)
- an enclosure with multiple power entries e.g., RS485, USB, ethernet, etc.
- wireless communication e.g., WiFi, Bluetooth, Bluetooth LE, ZWave, Zigbee, cellular, thread, mesh,
- the modular relay 4670 can be controlled by a variety of controlling devices.
- the relay 4670 could be controlled on schedule (e.g., existing timeclocks 4672 ), using an algorithm (e.g., controller/pool control logic 70 ), through user input (e.g., a button on the modular relay), from a web enabled device (e.g., through the cloud, the router or direct) or in stand-alone manual mode.
- the controlling devices could include, but are not limited to, a pump, a heater, a cleaner, a salt chlorinator, a lighting controller, a chemical automation system, a hub or an existing controller, a smart phone, tablet, computer, or smartwatch, or a voice enabled device (e.g., Amazon Echo).
- the modular relay of the present disclosure could be capable of detecting when there is no communication from a controlling system/device, if the modular relay has not yet been configured, or if the modular relay has been improperly operated or installed, and in response, placing itself in stand-alone manual or ‘limp’ modes.
- the relay can operate independently of the pool/spa control system. For example, in the event that communication with the control system could not be established, the modular relay could automatically enter standalone mode. In standalone mode, the modular relay could provide a visual indication (e.g., a flashing or steadily illuminated multicolor LED status indicator) that communication with the control system could not be established, or that communication has been severed. The modular relay could then implement a limp mode for the relay. In limp mode the modular relay could still be activated in response to timed events/schedules.
- a visual indication e.g., a flashing or steadily illuminated multicolor LED status indicator
- the behaviors of the modular relay when in manual or limp modes could be defined by firmware or set by user preference, thus providing the ability to maintain a schedule, always turn off, always turn on, switch to a special schedule, or other actions intended to maintain the water body while the pool/spa control system is in a state of reduced functionality.
- the relay could also enter service mode in response to motion or other proximity detection (e.g., when a service provider is in close proximity to a piece of pool/spa equipment), geofencing (e.g., when a service provider enters the vicinity of the pool/spa area), voice command (e.g., in response to audible request to “enter service mode”) or a button press (e.g., a physical “service” button located on the relay).
- Service mode could also allow a technician to temporarily operate the relay and then pass control back (e.g., manually or via a timer) to the controller.
- the modular relay device could also allow local control (e.g., by touch or voice) at the smart relay without disabling remote control.
- the relay could enter service mode in response to a service provider being in close proximity to the relay.
- an application running on the service provider's mobile device could communicate with the relay using any of the communication protocols heretofore described and grant the service provider access to configuration parameters for the relay and/or the pool control system 10 .
- additional security measures could be implemented for preventing unauthorized access to the configuration parameters.
- a password could be required for access to the configuration parameters.
- the password could be stored within the application so as to auto-populate and unlock the system parameters when the service provider is in close proximity to the relay.
- the service provider could be prompted for a password when in close proximity to the relay.
- Multiple passwords could be set so as to unlock various system parameters associated with individual passwords. For example, a service provider password could be used to unlock all of the system parameters, whereas a pool user password could only unlock a subset of the system parameters.
- the modular relay could indicate the status of the modular relay through LEDs (e.g., integrated into the modular relay), text, graphics, or sound (e.g., provided on a user interface device), or directly to web, WiFi, Bluetooth, Zigbee enabled devices (e.g., smartphones and other mobile devices).
- the status indications could include, but are not limited to, power, Internet connection, communicating with the system, no communication with the system, WiFi connected, no WiFi, controlled mode, service mode, enabled or disabled, current, voltage, run-time history, actuation history, etc.
- the smart relay can identify itself to a controller (e.g., by providing a physical or network address, or by asking for an address to be provided by the controller automatically), thereby allowing the modular relay to communicate with, and be controlled by the controller.
- the modular relay could also be manually given a particular network address.
- the controller could control one or a plurality of relays independently, in a timed sequence, or simultaneously.
- the modular relay device could be provided with its own proprietary/dedicated electrical/junction box (“enclosure”) for one (e.g., relay 4670 ) or a plurality of relays (e.g., wiring hub 4646 ), but could also be installed in an existing single gang, dual gang, timeclock, or non-traditional electrical/junction box.
- the proprietary/dedicated enclosure of the modular relay device could be provided with a multitude of means for mounting the enclosure to the pool pad.
- the means for mounting the enclosure could include, but are not limited to, hose clamps, screw holes, rebar mounts, zip-tie holes, etc.
- FIG. 34 F illustrates the modular relay 4670 with integral means for mounting to a plumbing pipe (e.g., rounded back).
- FIG. 34 G illustrates the modular relay 4670 with integral means for mounting to a pole (e.g., rounded back).
- FIG. 34 H illustrates the modular relay 4670 with integral means for mounting to a post or wall (e.g., screw bosses).
- FIG. 34 I illustrates the modular relay 4670 with integral means for mounting to rebar inserts (e.g., rebar holders).
- a secondary structure could also be provided and could include one or more of the means for mounting the enclosure.
- the modular relay device could include an incoming (power) whip/connection (including conduit connection hardware) for conducting power from the supply (e.g., breaker panel).
- the connection could be built in, attached, supplied or purchased separately.
- incoming whip(s) could connect to an existing sub-panel, timeclock enclosure, or junction box with conductors connecting to existing equipment's power connection and the opposite end of the incoming whip(s) could connect to the relay connection in the modular relay system inside the enclosure.
- Whips can enter and exit the enclosure from the same side (e.g., both entering and exiting the bottom of the enclosure as shown in FIG. 34 B ) or from opposite sides (e.g., from a side to the top or bottom, from the top or bottom to the side, or from the top to the bottom or bottom to the top, etc.).
- the whips could be coupled to the enclosure using straight connections, using 45 degree or 90 degree conduit connectors, or low profile connectors. Standard conduit connectors could be used or proprietary connections could be added to improve simplicity of connections.
- the threading of the conduit connectors could be male or female, or alternatively, the conduit connectors and the enclosure need not use threading at all. Additionally, there can be a conduit entry and/or exit in the cover of the relay or relay enclosure.
- the modular relay device enclosure is designed such that it readily accepts incoming whips from existing equipment (e.g., sub-panel, timeclock or junction box, etc,) and exiting whips to the powered and controlled device.
- the enclosure of the modular relay device could have relays that are detachable, that are integral, or that are integral and fully potted. Further, the relays could be permanently installed, mounted by way of screws, or could be mounted by way of a hinged connection (inside or outside) with one or more screws.
- the modular relay device could have a ground fault circuit interrupter (“GFCI”), arc fault, or other protective circuit built into the relay.
- GFCI ground fault circuit interrupter
- the modular relay device could also measure load power, supply voltage, contact closure, contact resistance, or general contact health.
- the modular relay device could measure circuit or ambient temperature, or sense water flow or temperature via an attached sensor. The inclusion of GFCI or other safety functions could satisfy wiring requirements without needing an additional (and expensive) GFCI breaker.
- the relay could be encased/over molded into a line cord, thereby allowing a servicer/installer to remove the existing whip from the power supply (e.g., breaker panel) to the piece of equipment and replace it with a new line cord having an integral relay. It is desirable to utilize the existing whip to connect the breaker panel to the wiring hub so as to avoid entering/accessing the “hot” section of the breaker panel or subpanel, and use the new over molded line cord with integral relay to connect the wiring hub and piece of pool/spa equipment. However, the new over molded line cord with integral relay could be used to connect breaker panel and the wiring hub, and the existing whip could be used to connect the piece of pool/spa equipment and the wiring hub.
- the new line cord could further include a means to communicate with the controller (e.g., RS485, USB, Ethernet, Bluetooth, WiFi, Zigbee, Cellular, Thread, LE Bluetooth, any mesh type network, etc.).
- the relay could also include a number of additional smart relay capabilities that could allow for the addition of other circuitry, inputs, or external communication modules.
- the modular relay device could accept sensor inputs (e.g., temp, light, wind, etc.) or external data (e.g., storm detection, web servers, GPS inputs for geo fencing, etc.). It is within the scope of the current disclosure that any and all of the pool control logic described herein could be locate in and run from the relay 4670 .
- FIG. 35 is a diagram illustrating another embodiment of the system of the present disclosure, wherein a wireless communication device, indicated generally at 4800 , provides communication between pool/spa components or equipment, a home router, and the internet.
- the wireless communication interface 4800 allows pool controlling devices (e.g., pump, heater, chlorinator, cleaner, hub, automation, etc.) to communicate with the home router and thereby communicate with the Internet.
- the wireless communication device could be located directly on the main (intelligence) printed circuit board (“PCB”), could be attached/plugged into the main PCB, could be provided as a modular upgrade to the main PCB or PCB enclosure, could be a modular upgrade to/external to the main PCB enclosure, or could be located remotely to the main PCB enclosure.
- PCB main (intelligence) printed circuit board
- an antenna could be mounted with (internal antenna 4804 ) or remote to (external antenna 4816 ) a wireless transceiver module 4802 in the embodiments described herein.
- the wireless communication interface 4800 could also allow pool controlling devices to directly communicate with web enabled devices (e.g., smartphones, tablets, thermostats, voice enabled devices, etc.) without the need to go through a home router. Additionally, the wireless communication interface 4800 could provide communication between the pool/spa components or equipment and the web/cloud server, thereby providing tools and indicators to assist a user in solving connectivity problems with the controller through the server/cloud and to the consumer and apps.
- the wireless communication interface 4800 includes a protocol processor 4808 , a radio circuit 4810 , and an antenna 4804 and could be installed directly on the circuit board of the controlling equipment.
- the wireless communication interface 4800 could have a secondary external antenna 4816 that could be installed for better connectivity (e.g., signal strength) or for placement at a location closer to the home router.
- the wireless communication interface 4800 could also include a printed circuit board, a protocol processor 4808 , an HUA module 4812 (e.g., for providing a unique hardware address), a radio circuit 4810 , an antenna 4804 , status LEDs 4814 , an ethernet/USB/RS485/Bluetooth connection 4806 , and an enclosure that could be mounted using the enclosure itself or using a secondary mount.
- a secondary mount could be provided for mounting the wireless communication interface 4800 without (or with) the use of tools (e.g., by snapping the antenna to the mount or other suitable methods).
- the wireless communication interface 4800 could include any wired or wireless communication protocol disclosed herein for communicating with the controller hardware.
- An antenna (internal antenna 4802 or external antenna 4816 ) is used to communicate commands from remote web enabled devices (e.g., wireless devices) to a controller unit, which activate equipment as needed with people present or absent, in the pool or around the backyard, which may be year-round and/or all-day based on application (e.g. residential vs. commercial) or location.
- the wireless communication interface 4800 could communicate with the controlling devices by way of RS485, USB, Bluetooth, ethernet, cellular, WiFi, Zigbee or other communication protocols.
- the antenna 4802 could facilitate communication with the home router through WiFi, Cellular, Bluetooth, ethernet, or other communication protocols.
- the wireless communication interface 4800 could also be provided with a button to activate service/troubleshooting indicators (e.g., LEDs 4814 ) to provide information relating to the status/connectivity problems of the wireless communication interface 4800 .
- the wireless communication interface 4800 could be provided with LED indicators 4814 which could be illuminated in various colors (e.g., black, green, orange, red, etc.) and activation patterns (e.g., solid, blinking, etc.) based on the status of the wireless communication interface 4800 .
- a green LED could indicate normal operation
- a yellow LED could indicate an issue that can be addressed by the user
- a red LED could indicate an issue that needs to be addressed by a service provider.
- the status LEDs could further include a power icon LED (indicating bad cable, no power, power ok, WPS activation), a router icon LED (indicating router not present, incorrect password, no IP address assigned, router DHCP error, incompatible router/black listed firmware or model), a web icon LED (indicating web not present, no UDP connection allowed, no remote server found, connected to web server), an Internet icon LED (indicating no internet/no google, high error rate, connected to the internet), a signal strength LED (indicating not configured, out of range, weak signal, 75% or greater signal), a quality of signal LED (indicating error rates via a bar graph, high error rate, strong connection/low error rate), and a connection speed LED (indicating reduced connection speed/sufficient connection speed). Additionally, the LEDs could indicate the status of the connection as illustrated in Table 1 below.
- connection status could also be communicated through the controller user interface (e.g., a status page) to help installers/users identify communication problems with the cloud and/or application using similar multicolor status indicators as described above. For example, all faults could be provided in a list with one color (e.g., green) or another color (e.g., red) indicators to identify a connection problem area.
- the status page could also provide a solution to a particular connection problem associated with a color. Further, the system could prompt the user to contact the manufacturer in the event that a problem is not known or that the problem is known to not be resolvable through a troubleshooting manual.
- the status page could be activated through a service button (e.g., provided on the control device, pool/spa equipment, or in an application) to allow a web-enabled device to obtain the status of the wireless communication interface via an application.
- a service button e.g., provided on the control device, pool/spa equipment, or in an application
- the application status page could provide all of the faults in a list with green or red indicators to easily identify problem areas, a description of the solutions to particular problems, a walk-through presentation on how to address/fix the problem, and/or a video illustrating how to address/fix the problem.
- the application could also provide a configuration walk-through page to instruct a user on how to configure the wireless communication interface.
- the configuration walk-through page could be activated through a service button.
- the application could also connect to a service to provide remote customer service via a web-enabled controller which could allow the service provider to remotely troubleshoot and fix the problem with minimum user interaction.
- FIG. 41 is a flowchart illustrating installation steps, indicated generally at 6000 , for installing the pool and/or spa control system 4610 , as described above in connection with FIGS. 34 A- 34 J of the present disclosure. Additionally, FIGS. 42 A- 42 I are diagrams further illustrating the installation steps of FIG. 41 .
- an existing pool or spa environment could include a lighting system 4614 h having a switch 6028 (e.g., a single-gang light switch), a single-speed (e.g., booster) pump 4613 , an existing filter pump (e.g., single or variable speed) 4614 a , a heater 4615 , timers or timeclocks 4672 , and a power source 4627 (e.g., a breaker panel).
- a switch 6028 e.g., a single-gang light switch
- a single-speed (e.g., booster) pump 4613 e.g., an existing filter pump (e.g., single or variable speed) 4614 a
- a heater 4615 e.g., timers or timeclocks 4672
- a power source 4627 e.g., a breaker panel
- Existing power conductors 6030 a - c could provide power to existing pool or spa devices directly from the power source 4627 or via intermediary devices (e.g., switch 6028 or timeclocks 4672 ). Accordingly, the power conductors 6030 a - c could include power cables, conduits, and the like.
- the existing pool or spa environment could also include any of the other pool or spa devices disclosed herein.
- the wiring hub 4646 could be provided with any of the mounting means described above in connection with the smart relay 4670 and shown in FIGS. 34 G- 34 I .
- the means for mounting the wiring hub 4646 could include, but are not limited to, hose clamps, screw holes, rebar mounts, zip-tie holes, etc.
- the installer could also mount a control module 4661 .
- the control module 4661 could be mounted at a location proximate to the wiring hub 4646 (see FIG. 42 B ), or could be removably affixed such that it can be moved according to the specific needs of a particular pool or spa environment and/or user.
- the control module 4661 could be removably affixed such that the control module 4661 could be moved away from the pool pad to a location closer to a wireless network, a home, or to any convenient location for the user (e.g., poolside).
- the control module could also be provided with any of the mounting means described above in connection with the smart relay 4670 and shown in FIGS. 34 G- 34 I .
- wiring hub 4646 and control module 4661 could be provided as separate components, it is within the scope of the present disclosure that some, or all, of the functionality of the control module 4661 could be integrated into the wiring hub 4646 . Accordingly, wiring hub 4646 and control module 4661 could be provided as a single, integral component, thereby eliminating the need to separately mount control module 4661 .
- step 6004 the installer could disconnect an existing power conductor from an existing pool or spa device.
- existing power conductor 6030 a could be disconnected from existing filter pump 4614 a .
- the existing power conductor can be connected to the wiring hub.
- the end of existing power conductor 6030 a that was disconnected from variable speed pump 4614 a could be connected to an input of wiring hub 4646 , thereby electrically coupling the power source 4627 to the wiring hub 4646 (e.g., via timeclock 4672 ) and providing power thereto.
- a first end of a new power conductor can be connected to the wiring hub and then in step 6010 , a second end of the new power conductor can be connected to the existing pool or spa device.
- a first end of new power conductor 6032 a is connected to wiring hub 4646 and a second end of the new power conductor 6032 a is connected to the existing variable speed pump 4614 a , thereby electrically coupling the power source 4627 to the existing variable speed pump 4614 a (via the wiring hub 4646 ) and providing power thereto.
- This installation method enables a service provider to install the wiring hub 4646 and provide power to one or more devices therefrom without having to access the line voltage compartment of an electrical panel.
- the wiring hub 4646 can control operation of the existing variable speed pump 4614 a by controlling the power provided thereto based on, for example, any of the control logic 70 discussed in connection with control system 10 of the present disclosure.
- step 6012 communication is established between the wiring hub and the control system of the present disclosure.
- a communications cable 6034 could couple the wiring hub 4646 and controller 4661 , providing two-way communication therebetween.
- the wiring hub 4646 could communicate with the control system 4610 via the controller 4661 , or the wiring hub could communicate with the control system 4610 via an integral communications module.
- the controller 4661 can be connected to a homeowner's WiFi network and the controller can be configured.
- the wiring hub can provide communication between newly installed or existing smart pool or spa devices (e.g., devices having network communication capabilities) and the control system of the present disclosure.
- an installer could replace an existing pool or spa device (having no network communications capabilities) with a smart pool or spa device.
- FIG. 42 F the existing filter pump 4614 a shown in FIGS. 42 A-E has been removed and a smart variable speed pump 4614 b has been installed in its place.
- a second end of the new power conductor can be connected to the new smart pool or spa device.
- a first end of new power conductor 6032 a is connected to wiring hub 4646 and a second end of the new power conductor 6032 a is connected to the smart variable speed pump 4614 b , thereby electrically coupling the power source 4627 to the smart variable speed pump 4614 b (via the wiring hub 4646 ) and providing power thereto.
- step 6020 communication is established between the wiring hub and the smart pool or spa device.
- a communications cable 6034 could couple the wiring hub 4646 and smart variable speed pump 4614 b , providing two-way communication therebetween.
- the wiring hub 4646 could communicate with the control system 4610 via the controller 4661 , or the wiring hub could communicate with the control system 4610 via an integral communications module.
- communication between the control system of the present disclosure and the smart variable speed pump 4614 b is provided by way of wiring hub 4646 .
- the wiring hub 4646 can control operation of the smart variable speed pump 4614 b based on, for example, any of the control logic 70 discussed in connection with control system 10 of the present disclosure.
- the wiring hub can provide communication between additional newly installed or existing smart pool or spa devices and the control system of the present disclosure.
- smart relays 4670 a - b could be installed to provide control of existing pool or spa devices (e.g., lighting system 4614 h and single speed pump 4613 ) by the control system of the present disclosure.
- an installer can first disconnect an existing power conductor from an existing pool or spa device as shown in step 6004 of FIG. 41 .
- a first end of existing power conductor 6030 b could be disconnected from the single speed pump 4613 .
- an installer can mount a smart relay device as described above and shown in FIGS. 34 G- 34 I .
- the means for mounting a smart relay 4670 could include, but are not limited to, hose clamps, screw holes, rebar mounts, zip-tie holes, etc.
- the installer then connects the existing power conductor to the smart relay.
- the first end of power conductor 6030 b that was disconnected from the single speed pump 4613 is reconnected to an input of the smart relay 4670 a .
- an installer can connect a new power conductor to the smart relay and then in step 6010 , the new power conductor is also connected to the existing pool or spa device.
- a first end of a new power conductor 6032 a is coupled to the smart relay 4070 a and a second end of the new power conductor is coupled to the existing single speed pump 4613 .
- step 6025 communication is established between the smart relay and the wiring hub.
- a communications cable 6034 could couple the wiring hub 4646 and smart relay 4670 a , providing two-way communication therebetween.
- the wiring hub 4646 could communicate with the control system 4610 via the controller 4661 , or the wiring hub could communicate with the control system 4610 via an integral communications module. Accordingly, communication between the control system of the present disclosure and the smart relay 4670 a could be provided by way of wiring hub 4646 .
- a smart relay could be configured to replace a light (or other) switch, thereby providing for control of a lighting system (or other system or device controlled by a switch) by the control system of the present disclosure.
- a lighting system or other system or device controlled by a switch
- an installer could remove a single-gang lighting switch 6028 (see FIG. 42 G ) and replace it with a smart relay 4670 b .
- a communications cable 6034 could couple the wiring hub 4646 and smart relay 4670 b , providing two-way communication therebetween and providing for control of the existing lighting system 4614 h by the control system of the present disclosure.
- the wiring hub 4646 can control operation of the smart relays 4670 based on, for example, any of the control logic 70 discussed in connection with control system 10 of the present disclosure.
- the smart relays could also communicate directly with the control module 4661 or other controller of the control system by way of any wired (e.g., RS485, ethernet, USB, serial, etc.) or wireless (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.) communication protocols discussed herein.
- FIG. 42 I illustrates additional aspects of control system 4610 of the present disclosure.
- the wiring hub 4646 could accept connections from and provide for control of additional pool or spa devices.
- the wiring hub could provide power to and/or control a smart valve actuator 4614 e or heater 4615 and the wiring hub 4646 could be coupled to and receive information from a plurality of sensors 4626 , for example, air and water temperature sensors.
- sensors 4626 for example, air and water temperature sensors.
- the pool or spa devices of could be communicatively coupled by way of any wired (e.g., RS485, ethernet, USB, serial, etc.) or wireless (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.) communication protocols discussed herein.
- wired e.g., RS485, ethernet, USB, serial, etc.
- wireless e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.
- FIG. 43 is a system diagram which illustrates a recommendation system 6100 for recommending upgrades to pool/spa equipment.
- the system 6100 can include a pool or spa equipment pad 6102 having at least one of a pump, filter, heater, chlorinator, controller, lights, or other pool or spa device (or any combination thereof).
- the present disclosure is not limited to any specific device within the pool or spa equipment pad.
- a servicer who services a customer's pool or spa can use his or her smartphone 6104 to take a photograph of the pool or spa equipment pad 6102 using a camera 6106 on mounted and installed with the smartphone 6104 .
- the servicer can use the regular camera application included on the smartphone 6104 .
- the servicer can launch the camera functionality of the smartphone 6104 using an application provided by the system of the present disclosure as will be discussed in greater detail below.
- the smartphone can provide “guides” to position and orientate the product in the camera application to aid in image capture and recognition.
- the data captured by the smartphone e.g., in the photograph taken by the smartphone
- the smartphone can also capture data labels on a product.
- the smartphone 6104 can upload at least one digital photo 6108 to a network 6110 (e.g., the Internet) for transfer to other computer systems as will be explained in greater detail below.
- the digital photo 6108 can be stored in a database and retrieved for future reference by a help desk or a service desk, if desired.
- the digital photo(s) 6108 can be transmitted to and received by a computer vision computer system 6112 for processing the digital photo 6108 using suitable computer vision software to determine the make, model and manufacturer of all of the pool equipment on the pool or spa equipment pad 6102 .
- the computer vision system 6112 can process a digital photo 6108 having a picture of just one component of the pool or spa equipment pad 6102 , or it can process a plurality of components on the pool or spa equipment pad 6102 .
- the computer vision computer system 6112 could include the IBM Watson or Google Lens systems which can process the digital photos 6108 . These computer vision systems can process to the photos to determine the make, model and manufacturer of the device.
- the digital photo can be of the pool itself and the computer vision system can process this photo to determine the size of the pool and the amount of gallons of water in the pool by using the camera lens parameters such as a the amount of feet the camera is from the ground and the amount of feet the camera is from the pool.
- the system can use this information to solve for the depth of the pool and the other dimensions and thereby determine the amount of gallons and pool size.
- the size and capacity of water of a pool can be used to make certain recommendations as will be explained in greater detail below.
- the data relating to the equipment on the pool or spa equipment pad 6102 can be sent to a pool analytics computer system 6114 .
- the pool analytics computer system 6114 can use the data generated by the computer vision computer systems 6112 to determine if there are upgrades or replacements products that may be of interest to an owner of the pool or spa. For example, if the computer vision computer system 6112 determines that a pool or spa equipment pad 6102 has a variable speed pump that is two years old and a newer model has greater energy efficiency or more pumping speeds, the pool analytics computer system 6114 can recommend to the servicer or the pool owner that it may be time to upgrade to newer model.
- the pool analytics computer system 6114 can determine whether the pool or spa equipment pad has an older chlorinator and whether a newer model exists to provide additional benefits such as extending the life of chlorination cells, killing more bacteria, or reducing the overall chlorine demand. If such a determination is made, then the pool analytics computer system 6114 can recommend an upgrade to the newer model and specifically identify a device which will provide the greater benefits. With respect to pool automation, the pool analytics computer system 6114 can determine the make and model of a pool controller and determine whether a newer version exists that provides greater benefits such as more control over the pool or spa environment or a faster processor or better hardware in general. If this is the case, the pool analytics computer system 6114 can make a recommendation to upgrade to a certain newer device.
- the pool analytics computer system 6114 can determine the make and model of lights being used anywhere in the pool or spa environment, and can determine if a newer version of lights exists that provide enhanced benefits such as more fixed colors, more light shows, less energy usage, and more brightness. If this is the case, the pool analytics computer system 6114 can recommend an upgrade.
- the above examples are for illustration purposes only and can apply to any type of upgrade for any type of device in the pool or spa environment and does not necessarily have to be limited to components on a pool or spa equipment pad 6102 .
- the computer vision services provided by the computer vision computer system(s) 6112 could also be performed on a smartphone 6104 , if desired.
- the pool analytics computer system 6114 can be programmed and updated with information relating to new devices and new features that improve upon preexisting device to offer upgrades.
- the pool analytics computer system 6114 can include a database with features associated with a make and model of a device. Those features can be compared with a plurality of newer models, and computer code can apply logic to determine whether the features of the new device offer improvements over the old versions. For example, if a certain variable speed drive is rated with a certain energy performance, and a newer model is rated with a better energy performance, then the system can make a positive determination that an upgrade can be recommended. Alternatively, the pool analytics computer system 6114 can make suggestions for replacement equipment that may be better suited for a certain pool or spa environment than an existing device.
- the pool analytics computer system 6114 can recommend a variable speed drive rated at 20,000 gallons and provide the reason for the recommendation.
- the system can determine the size of the pool by an input from the servicer, by a database search based on the home address of the owner, by automatically using a geolocation of the digital photo 6108 as will be discussed in greater detail below, or by leveraging the photo of the pool as discussed above.
- the system 6100 does not need to have a separate computer vision computer system 6112 . Rather, the entire logic of the computer vision computer system 6112 can be done by the pool analytics computer system 6114 . In this case, the digital photos 6108 can be directly received by the pool analytics computer system 6114 for processing to determine the make and model of the pool devices on the pool or spa equipment pad 6102 .
- the system can use the algorithms of the computer vision computer system 6112 and the pool analytics computer system 6114 to extract user data from the digital photos taken on the servicer's smartphone.
- the data which can be determined includes model number and the data relating to the model number (power requirements, etc.).
- the data can also include serial number and date of manufacture.
- the data can also include the date the device was installed which can be obtained from the servicer phone.
- the data can also include geolocation/home address from the phone or cooperative application as will be discussed herein.
- the data can also include the installing company information and the installer's name which can be default parameters entered by a servicer.
- the data can also include a home owner's name which can be auto populated from address and geolocation information as discussed herein.
- the data can be updated or overridden by the servicer or installer.
- the data can also include MSRP or price information of the devices, which the servicer can override and which the system can leverage the override information to provide better pricing information to the manufacturers of the devices.
- the data can also include cost of installation which can be provided by the installer and which can also be captured by the system to provide that information to the manufacturer so that the manufacturer can provide better price estimates for installation in the future.
- the data can also include information about one or more utility companies servicing the pool owner's home and the ability to select the one or more utility companies in the user interface as will be discussed below.
- the utility information can be captured by determining the geolocation information from the servicer smartphone and using a database based on the location to determine which utility or utilities service that area.
- the data can include annual energy cost which can be determined by using the geolocation information to determine power costs at that location from the utility and a formula to make the calculation.
- the system can use the algorithms of the computer vision computer system 6112 and the pool analytics computer system 6114 and the data gathered to provide auto-warranty registration and auto-rebate submissions. For example, the system can automatically register a product with the manufacturer by determining the information of the product and the pool owner information as discussed herein. Moreover the system can automatically apply for utility company rebates based on the information of the product and the pool owner information. Moreover the system can automatically apply for manufacturer rebates based on the information of the product and the pool owner information. As discussed herein, the system can automatically determine product information with computer vision systems and the pool owner information with geolocation.
- the system can automatically connect with a utility or merchant submit to automatically submit a rebate or the system can auto-populate a relevant form for the pool owner to allow for the owner's review and submission.
- These automatic procedures can be accomplished by using barcode information taken from the servicer's smartphone and geolocation information from the data capture as discussed herein.
- the pool analytics computer system 6114 can send a customized upgrade/replacement sales data 6116 over the network 6110 back to the servicer smartphone 6104 .
- this data can be also sent to a home owner smartphone 6118 .
- this data can be also sent only to the home owner smartphone 6118 .
- the data 6116 can be presented to the user in the form of a user interface screen as will be discussed in greater detail below.
- the servicer can share these details with the homeowner or owner of the pool, and can discuss the upgrades further.
- the servicer can share the data 6116 with the homeowner by sending the data 6116 over the network 6110 to the homeowner's smartphone 6118 .
- the homeowner and servicer can receive the data 6116 contemporaneously on each of their smartphones.
- FIG. 44 is a flowchart illustrating processing steps 6120 carried out by the system of FIG. 43 .
- the process can begin with step 6122 , wherein the servicer captures a photo or a plurality of photos of the pool pad or any particular pool equipment with the servicer's smartphone.
- the process can then proceed to step 6124 where the photos taken in step 6122 are transmitted to a computer vision computer system.
- the process can then proceed to step 6126 where the photo(s) can be processed by computer vision algorithm(s) to identify pool/spa equipment types and model numbers.
- the process can be then proceed to step 6128 where pool and spa equipment types and model numbers are transmitted to a pool analytics computer system.
- the transmission and processing of the photos in steps 6124 and 6126 can occur in the pool analytics computer system.
- the process can proceed to step 6130 where the equipment type and model numbers are processed by recommendation algorithm(s) at the pool analytics computer system(s) to identify suitable upgrade and/or replacement equipment.
- the pool analytics computer system(s) can generate recommendations based on new equipment with enhanced features or provide recommendations to adopt certain pool equipment to replace current pool equipment not suitable for the current pool or spa.
- the process can then proceed to step 6132 where customized sales forms/screens can be generated with pre-populated upgrade and/or replacement equipment (generated by the recommendation algorithm(s)) and transmitted to a servicer's smart phone.
- the process can then proceed to step 6134 where a customized sales forms/screen can be displayed to a service provider.
- step 6122 the process can proceed to step 6136 where geocoding information can be extracted from the photos taken by the servicer on his smartphone.
- Smartphone camera applications can provide geocoding/geolocation/geotag information with geocoding/geolocation/geotag information. Alternatively, this information can be extracted using the smartphone GPS data.
- step 6138 the pool owner information is determined using geotag information extracted in step 6136 . This can include a pool owner's home address. Once a home address is determined, a database of records can be searched to determine the pool equipment at that home.
- a computer vision algorithm does not need to process the photos because the geocoding/geolocation/geotag information can provide a means for determining the pool equipment by determining the pool owner's address and the pool equipment being used at the address through database searching.
- a home owner's email address can be extracted using the geocoding/geolocation/geotag data by determining a home address and cross references a database relating the home address or home owner personal identifying information. This information can be automatically populated in the user interface screens as will be discussed below.
- FIG. 45 illustrates an initial user interface screen generated by the system.
- a user profile portion 6200 is provided which can be populated with pool owner information such as owner name, street address, email, zip code, total gallons, months operating, whether there is a pool, a pool and spa, pool control, and comments with respect to customer hassles.
- the user profile portion 6200 can be automatically generated by the geocoding/geolocation/geotag information extracted from the servicer's smartphone which can use this information to retrieve an address and the address can be used with a database to populate the other fields.
- a servicer can manually enter a customer name which the system can take as an input and can automatically populate the rest of the fields based on an address book or database with fields related to a customer name.
- an incoming call from a customer can use the phone number from the caller ID to query a database having the rest of the information related to the phone number, which the application can use to auto-populate the remainder of the fields. If all of the information does not get populated, the system can alert the servicer and the servicer can request the information from the pool owner. Customer hassles can be automatically extracted by the system based on the types of pool and spa components detected in the equipment pad 6102 or can be manually entered by the servicer.
- the screen can also include top level menus for the pool and spa devices including, but not limited to, pumps, lights, heaters, cleaners, controllers, and chemical automation.
- a user of the application can choose any one of the product category buttons 6202 or can choose more than one.
- FIG. 46 is drawing of a user interface screen illustrating recommendations relating to upgrading pumps.
- This screen can include a pool owner profile portion 6200 which can include the pool owner's information as discussed above with respect to FIG. 45 .
- This screen can be displayed after the user selects one or more of the product category buttons 6202 as discussed above in connection to FIG. 45 .
- the screen can also include a plurality of columns 6204 . Column 6204 a can provide context to the rows.
- column 6204 a can include at least one pump which can have a general description such as “circular pump #1” or “pump #2 spa or water feature.”
- Column 6204 a can also include a portion for specifying the upgrade number being suggested for each general pump, such as “upgrade 1,” “upgrade 2,” to “upgrade n.”
- the screen can also include the following columns: column 6204 b can include an existing product; column 6204 c can include a list of quantities to be recommended; column 6204 d can list the make and model of the replacement models if any, which can be populated automatically by the recommendation systems and methods discussed above in connection with FIGS.
- column 6204 e can include a cost for the replacement devices
- column 6204 f can include the estimated labor costs of the replacement models
- column 6204 g can include consumer benefits for using the recommended upgrades over current devices
- column 6204 h can include an amount of energy savings for each of the recommended products if applicable
- column 6204 i can include an amount of energy savings per year for each of the recommended products if applicable
- column 6204 j can include a list of rebates if applicable
- column 6204 k can include comments with relating to the recommended products
- 6204 l can include timing information on when the recommended product should be installed.
- fields 6206 a , 6206 b , 6206 c , and 6206 d can relate to the specific details about the current devices being used in the pool or spa which can be populated automatically by the computer vision and/or geo-location systems and methods discussed above in connection with FIGS. 43 and 44 .
- This auto-populate feature can happen in real-time upon the servicer taking a photograph of a pool or equipment pad, or the fields can auto-populated based on a previous photo from a previous visit by the servicer.
- Fields 6208 a , 6208 b , and 6208 c can be selected by a servicer by, for example, tapping the field which causes the system to display a color or pattern over the field.
- the servicer can highlight his or her recommendation of which replacement product the pool owner should purchase out of a plurality of automatically recommended replacement products with respect to the current device in column 6204 a .
- Columns 6204 h , 6204 i , and 6204 j can be auto-populated with a real-time computer communication with a utility company or a database having the information.
- Columns 6204 d , 6204 e and 6204 f can be auto-populated as prices are known and labor costs can be estimated, and the servicer or a dealer can manually update such costs before they are presented to a pool owner or in real-time.
- the servicer or dealer can modify the price and estimated labor for the consumer products in a source database or such modifications can exist in a limited database on the servicer or dealer device.
- Column 6204 l can be modified by a servicer by any means such as a drop down menu provided by the user interface.
- the servicer can select another device category in same screen and the system can repeat the process as discussed above in connection with FIG. 46 .
- the servicer can then select a recommended device among automatically generated recommendations within the new device category.
- the servicer can repeat this process for all relevant device categories that are available for a pool or spa.
- the servicer can select more than one device category which can prompt the system to recommend products for all devices relating to the selected device categories.
- the pool owner can receive the automatically generated recommendations and the servicer's choice among them by an email, text, or link to an application on the owner's smartphone for retrieving the user interface screen of the system of the present disclosure.
- FIG. 47 illustrates the user interface screen of FIG. 46 after the servicer has selected a replacement product.
- this user interface can include the same information as the user interface of FIG. 46 such as pool owner profile information and replacement products along with the servicer recommendation.
- a pool owner can select a replacement on his/her own smartphone or on the servicer's smartphone or through any other means. Once this selection is made, the system can cause the replacement product details to be highlighted in a different color or pattern as shown in 6210 a - 6210 b .
- the servicer recommended a replacement product in field 6208 a and the pool owner followed the recommendation by selecting the product as shown in 6210 a .
- the servicer recommended a product among a plurality of automatically recommended products in field 6208 b but the pool owner selected another product recommended automatically by the system of the present disclosure as shown in field 6210 b .
- the system recommended a plurality of devices and the servicer chose one of them in field 6208 c , but the pool owner decided not to upgrade as no device was selected.
- the system can generate a work order and can generate a servicer or dealer invoice for the pool owner.
- the invoice can provide a summary sheet for future upgrade recommendations for remaining upgrade opportunities.
- FIG. 48 is a drawing illustrating another embodiment of the user interface screen of the present disclosure.
- the user interface screens can be modular and flexible and can be easily modified by a servicer or programmer to remove, swap, move, or modify the various columns.
- additional columns can be included such as replacement part number 6212a, VPL (ea) 6212 b , VPL (ext'd) 6212 c , est'd labor (ext'd) 6212 d , and utility rebate 6212 e .
- other types of equipment including, but not limited to, filters and cleaners can be included in the user interface screen.
- FIGS. 45 - 48 are merely example embodiments of a user interface screen generated by the system of the present disclosure.
- the screens can be customizable to include any types of inputs or fields to display information helpful to a user.
- the system can also be programmed to generate a screen that can be customized by the servicer or the pool owner.
- the system can include a memory to store user screen preferences of the pool owner and servicer and can automatically display the preferred user interface layout for each user.
- the user interface screens can include recommendations for a plurality of devices or a single device as described above.
- the user interface screens can include any combination of devices in a pool or spa environment. For example, with respect to FIGS. 46 - 47 , only pumps are shown, but this can include all the other types of devices in a pool or any combination of those devices.
- the databases that can be relied upon by the system of the present disclosure include a servicer database, a utilities database, a manufacturer database (having dealer, consumer, equipment pad, and product information), and an equipment pad profile database. These databases can be combined or separate.
- FIG. 49 is a system diagram which illustrates a monitoring and control system 7100 for monitoring and/or controlling pool/spa equipment 7102 , according to the present disclosure.
- the system 7100 is able to aggregate information from a variety of sources (e.g., operational data from connected devices, sensor data, web data, historical trends, etc.), process that information (e.g., via machine learning algorithms), and using the processed information, control the pool/spa equipment, preemptively address problems before they occur, and/or provide alerts if a problem does occur.
- the system 7100 can further provide documentation of problems, provide suggested solutions to problems, identification of problems prior to a pool/spa service technician (“servicer”) arriving on-site, and identification of problem causation.
- servicer pool/spa service technician
- the system 7100 is able to provide the aforementioned benefits utilizing combinations of one or more of hardware (system controllers, smart/connected pool/spa equipment, sensors, etc.), applications (e.g., smartphone applications, servicer systems, etc.), and cloud integration (e.g., central management/control, data storage, machine learning/analytics, etc.).
- hardware system controllers, smart/connected pool/spa equipment, sensors, etc.
- applications e.g., smartphone applications, servicer systems, etc.
- cloud integration e.g., central management/control, data storage, machine learning/analytics, etc.
- the system 7100 can identify an alert condition (e.g., decibel level from pump microphone/sensor is exceeding historical levels), determine if a problem exists (e.g., decibel levels from pump indicative of shaft bearing failure within 30 days), provide a solution to the problem (e.g., replace shaft bearing within 30 days), and generate a list of materials needed to implement to solution (e.g., one new shaft bearing, one new shaft seal, two O-rings, shaft grease, etc.).
- an alert condition e.g., decibel level from pump microphone/sensor is exceeding historical levels
- determine if a problem exists e.g., decibel levels from pump indicative of shaft bearing failure within 30 days
- provide a solution to the problem e.g., replace shaft bearing within 30 days
- generate a list of materials needed to implement to solution e.g., one new shaft bearing, one new shaft seal, two O-rings, shaft grease, etc.
- the system 7100 can also determine where the materials can be located (e.g., in a servicer's monitored inventory, at a local distributor, online distributor, etc.), determine lead-times for the materials (e.g., in inventory, available to ship in 2 days, available for pickup at distributor, etc.), and order the materials if requested.
- the materials e.g., in a servicer's monitored inventory, at a local distributor, online distributor, etc.
- determine lead-times for the materials e.g., in inventory, available to ship in 2 days, available for pickup at distributor, etc.
- the monitoring and control system 7100 can include a pool/spa control system 7120 for controlling and communicating with the pool/spa equipment 7102 , a sensor hub 7122 in communication with a plurality of sensors 7140 , an analytics system 7114 , and a pool/spa servicer system 7124 .
- the pool/spa equipment 7102 can include but is not limited to a heating/cooling system 7132 , a pump 7134 , a filter 7136 , and a pool/spa chemistry system 7138 .
- the plurality of sensors can be configured to gather operational data related to the equipment 7102 as will be discussed in greater detail hereinbelow.
- the system 7100 is able to monitor and control smart and/or connected devices (e.g., devices which are capable of direct communication with the system 7100 via a data connection) as well as legacy devices (e.g., devices which not are capable of direct communication with the system 7100 via a data connection).
- a connected device such as pump 7134 can provide operational data (e.g., pump speed, water pressure, etc.) directly to the system 7100 , and can be controlled by the system 7100 , by way of a data connection (e.g., RS485, WiFi, Bluetooth, ZWave, Zigbee, etc.).
- a data connection e.g., RS485, WiFi, Bluetooth, ZWave, Zigbee, etc.
- a legacy device such as heater 7132 may not include a communication bus, or may not otherwise be capable of communication with the system 7100 (e.g., incompatible communication protocols between the heater 7132 and system 7100 ).
- sensors 7140 are provided to monitor the operation of the heater 7132 and provide this information (e.g., water outlet temperature) to the system 7100 by way of sensor hub 7122 , discussed herein.
- the system 7100 is able to control the heater 7132 via a smart relay 7148 , discussed herein, which communicates with the system 7100 and regulates power provided to the heater 7132 .
- the system 7100 can monitor and control additional legacy devices in a similar fashion.
- FIG. 50 is another diagram which illustrates additional aspects of the sensor hub 7122 and sensors 7140 of the monitoring and control system 7100 of the present disclosure. As shown in FIG. 50 , and described below, data gathered by sensors 7140 and sensor hub 7122 is used by the system 7100 to monitor various characteristics of the equipment 7102 and/or the pool/spa environment.
- the heating/cooling system 7132 could be provided with a flood sensor 7140 a to determine if the heat exchanger is leaking so that it can be replaced before heater is damaged.
- the heating/cooling system 7132 could also be provided with a heater pod 7140 b that can include multiple sensors (e.g., current clamping, vibration, flooding, thermostat voltage, etc.), as well as a thermostat relay, for determining if heat was called for but is not heating, heater power loss, igniter current cycling with re-tries, low gas pressure, ignition failure, blower fan failure, heat run time and energy cost calculation, acting as a remote thermostat and heat shutoff, and providing alerts (e.g., head usage rules are violated).
- sensors e.g., current clamping, vibration, flooding, thermostat voltage, etc.
- a thermostat relay for determining if heat was called for but is not heating, heater power loss, igniter current cycling with re-tries, low gas pressure, ignition failure, blower fan failure, heat run time and energy cost calculation, acting as a
- the heating/cooling system 7132 could also be provided with an outlet temperature sensor 7140 c , of an insulated wrap-on variety or similar, that can be used to determine heater efficiency loss due to moisture or a burner issue, that the heater is not firing, or an excessive output temperature caused by low flowrate, shortening the lifespan of the heater.
- the pump 7134 could be provided with a vacuum sensor 7140 d in its drain plug, the operational data from the vacuum sensor 7140 d , being used by the system 7100 to determine whether a pump skimmer needs to be cleared and to detect low water below the skimmer.
- the vacuum sensor 7140 d could also be used by the system 7100 to clear a loaded pool skimmer or main drain.
- a flood sensor 7140 e can be provided, the operational data from the flood sensor 7140 e , being used by the system 7100 to determine shaft seal leakage, so that the seal can be replaced before the bearings are damaged, or to determine that there is a flooded pool pad, so that the pump can be shut off, thereby avoiding emptying of the pool (and potential displacement relative to the water table).
- Motor temperature sensor 7140 f and vibration sensor 7141 f can also be provided, the operational data from the motor temperature sensor 7140 f and vibration sensor 7141 f , being used by the system 7100 to determine if there is a blocked fan inlet (e.g., by leaves or improper installation), or a broken or fouled fan blade (e.g., via bearing noise).
- a blocked fan inlet e.g., by leaves or improper installation
- a broken or fouled fan blade e.g., via bearing noise
- a combination sensor 7140 h including salinity, water temperature, and flow sensing can also be provided, the operational data from the combination sensor 7140 h being used by the system 7100 to determine the inlet water temperature for remote heat control, low salinity for salt chlorination control, insufficient flow for heating control, whether backwashing is necessary, whether the pump is running dry, the pool turnover rate or filter schedule assessment, and whether there is an energy savings opportunity by converting a single-speed pump to a variable-speed pump (“VSP”).
- VSP variable-speed pump
- PH and oxidation reduction potential (“ORP”) sensors 7140 i can also be provided, the operational data from the PH and ORP sensors 7140 i , being used by the system 7100 to manage pH and chlorine dose by the pool/spa chemistry system 7138 .
- the system 7100 can include water sample mailers 7146 .
- the water sample mailers 7146 contain sample vials of pool water which can be tested by a service provider.
- the water samples can be provided with prepaid postage, can be pre-addressed, and can be bar-coded so that a pool owner can easily send a sample of pool water to a servicer if one is requested by the servicer, or if the pool owner required that the water be tested for another reason.
- the system 7100 could further include smart test strips and the system 7100 could process the data from the smart test strips and suggest an appropriate water treatment.
- the sensor hub 7122 could be provided with integral rain, ambient light, humidity, and air temperature sensors 7140 j .
- the sensor hub 7122 could also be provided with an integrated jug feeder system 7142 , including a peristaltic pump that draws from a container (e.g., jug) of acid, the integrated jug feeder system 7142 being used by the system 7100 to control the pH of the pool or spa water.
- the system 7100 can include acid and/or chlorine feed tanks 7144 that include level sensing capabilities that provide additional operational data to the monitoring and control system 7100 , thereby further enhancing automation capabilities.
- the sensor hub 7122 can include a memory, the memory being used for local storage of acid feeding, chemical dosing, and filtering schedules. The schedules can be manually updated locally, or automatically updated based on algorithms processed by the analytics system 7114 .
- the system 7100 is able to aggregate information from a variety of sources, process that information, and using the processed information, control the pool/spa equipment, preemptively address problems before they occur, and/or provide alerts if a problem does occur.
- the analytics system 7114 of the system 7100 can be in communication with and/or receive information from a historical database 7150 , connected data sources 7152 , and sensor hub data 7154 .
- the historical database includes a comprehensive data set of historical information (e.g., power, noise, environmental data, water levels, size of plumbing, jets, measured head, failures, normal power draw for a pump, power consumption changes in the months preceding a failure, normal power draw for a chlorination cell, chlorination cell power draw preceding a failure, chlorination cell power draw preceding a cleaning, normal gas consumption of a heater, gas consumption of a heater preceding a failure, gas consumption of a heater preceding a service, etc.), including failures and the conditions preceding failures, which is analyzed (e.g., using machine learning) by the system 7100 to predict failures before they occur and suggest solutions. As the information contained historical database grows, the predictions become increasingly accurate.
- historical information e.g., power, noise, environmental data, water levels, size of plumbing, jets, measured head, failures, normal power draw for a pump, power consumption changes in the months preceding a failure, normal power draw for a chlorination cell, chlorination cell
- the historical database 7150 can include historical data gathered from connected pool/spa devices 7102 , data recorded by sensors 7140 , as well as additional historical information gathered and recorded by the system 7100 .
- the historical database 7150 can also contain information related to a plurality of pool/spa environments (e.g., pool/spas located at a plurality of residences or commercial locations distributed across a wide geographic area).
- the connected data sources 7152 can include up-to-date information retrieved from the Internet, current operational data from one or more connected pool/spa devices 7102 , as well as any other currently available information.
- the connected data sources 7152 can include, but are not limited to, information related to the time and date, pool mode, pool/spa/spill, weather, air temperature, pool temperature, ORP level, pH level, salt level, water level, sunlight/UV index, approaching storms, wind direction, rainfall, utility costs, utility rebates, utility time of use rates, gas costs, and the like.
- information from the connected data sources 7152 can also be saved to the historical database 7150 for later retrieval and use by the system 7100 .
- the sensor hub data 7154 can include current information that is received from the sensors 7140 in communication with the sensor hub 7122 .
- the sensor hub data 7154 can include, but is not limited to, information related to wind speed, wind direction, ambient light, water turbidity, chlorine level, liquid feed tank level, water hardness, water mix ratio, phosphate level, stray current, pool cover position (e.g., open or closed), candela and/or lumen levels (e.g., for lighting), pool chemistry (e.g., pH, TA, TH, CyA, CL2), and the like, as well as other information received from storm sensors, water sensors, water leak sensors, water fills sensing (e.g., leaks), evaporation sensing and algorithm, vibration sensors, heat sensors, power line sensors (e.g., power digital imprint), noise sensors, music sensors, rain sensors, humidity sensors, and motion sensors (both in and out of water).
- the sensor hub data 7154 can also be saved to
- the analytics system 7114 processes the information from the historical database 7150 , connected data sources 7152 , and sensor hub data 7154 to determine information related to the system 7100 that may not be detectable, may be inconvenient, or may be cost-prohibitive utilizing traditional sensing means. For example, a sensor may not be commercially available to determine a shaft seal failure. Further, it could be beneficial to a pool owner or servicer to predict a shaft seal failure before it occurs.
- the system 7100 of the present disclosure can generate determined information for the pool/spa equipment 7102 .
- the system 7100 can determine information related to the pump 7134 such as, but not limited to, shaft seals, drive failures, communication failures, seal failures, motor failures, bearing failure/noise, basket level (e.g., low, med, high, etc.), skimmer level (e.g., low, med, high, etc.), filter status (e.g., pressure increasing, time to backwash, etc.), blocked air inlet, fan blade broken, impeller broken or damaged, pump running dry, pool turnover rate, pump run time and energy calculations, pump run time and turnover calculations and energy suggestions, inefficiencies in energy usage because of a problem, and the like.
- the pump 7134 such as, but not limited to, shaft seals, drive failures, communication failures, seal failures, motor failures, bearing failure/noise, basket level (e.g., low, med, high, etc.), skimmer level (e.g.
- the system 7100 can determine information related to the heater 7132 such as, but not limited to, a board failure, communication failure, ignition failure, igniter cycling, heater power loss, whether the heater is calling for heat but not heating, blower fan failed, a gas leak, kinked line, combustion failure, low gas pressure, no gas available, a water leak, heater run time and energy calculation, heating expense that exceed the pool owner's historical heating trends, and the like.
- a flood sensor can be used to identify that a heat exchanger is leaking.
- the system 7100 can determine information related to a lighting system (discussed herein) such as, but not limited to, a bulb that is about to burn out, a bulb that is burnt out, LEDs that have failed, that the LED lights are leaking, a low voltage (voltage drop) condition, that the LEDs are dimming from hours of operation, that the lights have been on too long, or the like.
- a lighting system discussed herein
- a bulb that is about to burn out a bulb that is burnt out
- LEDs that have failed that the LED lights are leaking
- a low voltage (voltage drop) condition that the LEDs are dimming from hours of operation, that the lights have been on too long, or the like.
- the system 7100 can determine information related to a filter system 7136 such as, but not limited to, that it is time to backwash or clean elements, the DE or sand is low, there is leak in the filter, a plug is not plugged in, a gasket seal is not correct, a belly band is not tight enough, there is a leak in an air valve, there is a crack in shell, and the like.
- a filter system 7136 such as, but not limited to, that it is time to backwash or clean elements, the DE or sand is low, there is leak in the filter, a plug is not plugged in, a gasket seal is not correct, a belly band is not tight enough, there is a leak in an air valve, there is a crack in shell, and the like.
- the system 7100 can determine information related to the chemistry system 7136 such as, but not limited to, the salt level (e.g., salt needed or excess), board damage, the chlorinator cell is dirty, the chlorinator cell has calcification, the probe is dirty or broken, the probe is out of calibration, that it is time to replace the chlorinator cell, it is time to replace flow switch, the pool needs chlorine, the pool needs acid, the UV lamp brightness has decreased from its initial level, the UV lamp is damaged, the UV lamp needs to be replaced, the feed tank levels for acid or liquid chlorine, that too much acid or chlorine is being used based on historical trends; identification of phosphates, that the pool water is out of chemical balance, what chemicals are needed and how much of them is needed to restore balance, and the like.
- the salt level e.g., salt needed or excess
- board damage e.g., the chlorinator cell is dirty
- the chlorinator cell has calcification
- the probe is dirty or broken
- the probe is out of calibration
- the pool needs chlorine
- the system 7100 can determine information related to a pool/spa cleaner system such as, but not limited to, that it is time to empty debris, identification of debris (in or around) the pool/spa, that a drive is failing, that bearings need to be repaired, or the like.
- FIG. 52 is a flowchart illustrating processing steps carried out by the system 7100 of the present disclosure to preemptively address an equipment failure before it occurs.
- the system 7100 could monitor a plurality of pumps 7134 (e.g., 100 pumps at various sites dispersed in a geographical region).
- the system can 7100 detect a deviation or change in bearing sound (e.g., increased decibels or altered sound profile) and/or a change in resistance of the pump motor (e.g., increased power draw) from historical trends.
- the altered sound and resistance data can be compared with information contained in the historical database 7150 to determine the cause of the deviation (e.g., a failing bearing) and a predicted timeline (e.g., the bearing will fail in 30 days).
- step 7300 the system 7100 receives operational data from the sensor hub controller (e.g., bearing sound data, motor resistance data, power draw data, etc.) and then proceeds to step 7302 , where the system 7100 processes the operational data to determine the presence of an alert condition (e.g., the pump bearings will fail in 30 days). The system 7100 then proceeds to step 7304 , where a determination is made as to the presence of an alert condition. If a negative determination is made in step 7304 , the system 7100 returns to step 7300 .
- operational data e.g., bearing sound data, motor resistance data, power draw data, etc.
- step 7302 the system 7100 processes the operational data to determine the presence of an alert condition (e.g., the pump bearings will fail in 30 days).
- step 7304 a determination is made as to the presence of an alert condition. If a negative determination is made in step 7304 , the system 7100 returns to step 7300 .
- the owner/customer can be alerted (e.g., via email, SMS/text/iMessage, pop-up notification, etc.) to the condition (e.g., pump failure), a servicer can be alerted that his or her customer's pump is going to fail, and replacement parts can be automatically ordered and delivered to the servicer or directly to the customer location, all before any adverse condition occurs (e.g., pump failure).
- the system 7100 could further include an application installed on a home owner's smart device (e.g., smartphone) 7118 and on a servicer's smart device 7104 (see FIG. 49 ) and notifications/alerts can be transmitted via the application, discussed in greater detail below.
- step 7304 the system 7100 proceeds to step 7306 where a alert condition is transmitted to a servicer (e.g., Customer #1234 pump bearings will fail in 30 days).
- a servicer e.g., Customer #1234 pump bearings will fail in 30 days.
- the servicer addresses the alert condition (e.g., the bearings are replaced prior to failure/predicted failure) and the system 7100 returns to step 7300 .
- the system 7100 could transmit an alert condition to the homeowner (e.g., pump bearings will fail in 30 days) before proceeding to step 7308 .
- step 7312 the system 7100 could automatically order replacement parts (e.g., new bearings for pump arrive at customer's location prior to servicer arrival) before proceeding to step 7308 .
- FIG. 53 is a flowchart illustrating processing steps carried out by the system 7100 of the present disclosure to alert a homeowner when current energy usage exceeds historical trends (e.g., the variable speed pump “VSP” has been running on high for 24 hours, the heater has been running for three days at 104 degrees Fahrenheit, etc.).
- the system 7100 can transmit an alert to a homeowner (or servicer) when a parameter is not running within specification or a parameter is not consistent with historical trends (e.g., too much heating turnover, power consumption, chemical dispensing, water refilling, dropped packets, etc.).
- step 7314 the system 7100 receives operational data from the sensor hub (e.g., energy usage data, pump speed data, heater temperature and runtime data, etc.) and then proceeds to step 7316 , where the system 7100 retrieves historical operational data from the memory (e.g., historical database 7150 ).
- step 7318 the system 7100 determines trends for the historical data and then in step 73120 , the system 7100 compares the current operational data with the historical data trends.
- step 7322 the system 7100 determined whether the current operational data is consistent with the historical trends. If a positive determination is made in step 7322 , the system returns to step 7314 .
- step 7322 If a negative determination is made in step 7322 , the system proceeds to step 7324 where an alert condition (e.g., pump has been running at high speed for 24 hours) is transmitted to the homeowner (e.g., via an application running on smart device 7118 ). The system 7100 then returns to step 7314 .
- an alert condition e.g., pump has been running at high speed for 24 hours
- FIG. 54 A is a graphical representation of a historical trend for a normal heat cycle for heater 7132
- FIG. 54 B is a graphical representation of a heat cycle that deviates for the historical trend shown in FIG. 54 A
- FIG. 55 is a flowchart illustrating processing steps carried out by the system 7100 to restore the heat cycle to normal operation.
- the output water temperature of the heater quickly rises while the input water temperature only gradually increases (e.g., lags behind) due to the large volume of the pool/spa. Both the output and input water temperatures of the heater continue to increase until the output temperature reaches a predetermined setpoint. At this point, the heater stops firing and the output temperature eventually reaches equilibrium with the input temperature.
- the system 7100 is able to determine that the heater is failing to fire or that it is cycling by comparing the current output water temperature to the historical trend discussed in connection with FIG. 54 A and determining that the output water temperature is below the historical trend. Similarly, the system 7100 can determine if the heater has erroneously continued to fire by comparing the current output water temperature to the historical trend discussed in connection with FIG. 54 A and determining that the output water temperature is above the historical trend.
- FIG. 55 is a flowchart illustrating processing steps carried out by the system 7100 in connection with FIGS. 55 A and 55 B .
- the system 7100 is initialized, in step 7328 the system 7100 determines whether heating is desired, in step 7330 the system 7100 determines whether the thermostat voltage is acceptable, and in step 7332 the system determines if the water is cold. If a positive determination is made in step 7332 , the system 7100 proceeds to step 7334 where the system 7100 determines if the water has been flowing for over a minute.
- step 7334 the system proceeds to step 7336 , where the system 7100 determines whether the water is flowing fast enough (e.g., operational data from a flow sensor is above a predetermined setpoint). If a positive determination is made in step 7336 , the system 7100 transmits an instruction to start the heater in step 7338 . In step 7340 , the system 7100 determines whether the heater is operating like it should (e.g., by comparing the current output water temperature to the historical trend discussed in connection with FIG. 55 A ). If a positive determination is made in step 7340 , the system 7100 proceeds to step 7342 where the a determination is made as to whether the water has reached a predetermined setpoint.
- the system 7100 proceeds to step 7342 where the a determination is made as to whether the water has reached a predetermined setpoint.
- step 7342 If a positive determination is made in step 7342 , the system 7100 returns to step 7332 . If a negative determination is made in step 7342 , the system 7100 proceeds to step 7344 , where a determination is made as to whether the heater daily run time house rules have been exceeded. If a positive determination is made in step 7344 , the system 7100 proceeds to step 7346 , where the heater is disabled until the next day and a flag is saved to memory (e.g., historical database 7150 ). Once the next day begins (e.g., after midnight) the system 7100 proceeds to step 7348 where an instruction is transmitted to the heater to restore the heater setpoint to a minimum heater setpoint value and then the system 7100 returns to step 7332 .
- step 7344 where a determination is made as to whether the heater daily run time house rules have been exceeded. If a positive determination is made in step 7344 , the system 7100 proceeds to step 7346 , where the heater is disabled until the next day and
- step 7350 a heater limping cycling alarm is transmitted (e.g., to the homeowner or servicer). If the system 7100 determines in step 7340 that the heater is not running, the system 7100 proceeds to step 7352 , where the system 7100 determines whether four attempts have occurred during an excessive restart alarm. If a positive determination is made in step 7352 , the system proceeds to step 7354 where an alarm lockout is put in place (e.g., heater service required). If a negative determination is made in step 7352 , the system 7100 proceeds to step 7356 where a heater excessive restart alarm is transmitted (e.g., no lockout is put in place, but the alarm must be cleared).
- a heater excessive restart alarm is transmitted (e.g., no lockout is put in place, but the alarm must be cleared).
- step 7358 the system 7100 determines if the heater has restarted after five minutes of restarting. If a positive determination is made in step 7358 , the system 7100 proceeds to step 7360 , where the system initiates a timer (e.g., one hour) and after expiration of the timer, attempts to restart the heater. The system 7100 then returns to step 7332 . It is contemplated by the present disclosure that the system 7100 can be configured to only transmit an alert condition when a significant change from historical trends is detected. This can be accomplished using alert thresholds that are established using hysteresis modeling, thereby preventing erroneous alerts due to signal jitter or the like.
- FIG. 56 is a flowchart illustrating processing steps carried out by the system 7100 to automatically grant a servicer access to the system to perform authorized work.
- the system 7100 can determine that a servicer is authorized to service a particular account.
- the system 7100 could identify the servicer by way of the servicer's smart device 7104 that is registered to the account, by an individually coded key fob, a location pod, or other identification/authorization systems.
- the servicer can enter a pool/spa environment, the system 7100 can identify the servicer and that he or she is authorized to perform work and then the system 7100 initiates a servicer mode and alerts the homeowner that the servicer has arrived at the site.
- the servicer leaves the site and the system 7100 resumes normal operation.
- the system 7100 identifies the servicer (e.g., by access code, RFID device, geolocation, etc.).
- the system 7100 enters a service mode (e.g., transmits an instruction to the pool/spa devices to cease operation).
- the system 7100 transmits an alert to the customer (e.g., “the servicer has arrived”).
- the servicer performs authorized work (e.g., cleans the filter baskets) and leaves the pool/spa location.
- step 7372 the system 7100 recognizes that the servicer has left the pool/spa location (e.g., by access code, RFID device, geolocation, etc.). Finally, in step 7374 , the system 7100 returns to normal operation mode (e.g., transmits an instruction to the pool/spa devices to resume normal operation). Optionally, in step 7386 , the system 7100 can save the details of the service call (e.g., date and time of service, work performed, fees, etc.) to memory (e.g., servicer database 7128 or servicer system 7124 ).
- the details of the service call e.g., date and time of service, work performed, fees, etc.
- geolocation services running on the servicer's smart device 7104 can be utilized by the system 7100 to determine if the servicer is at the site and register his or her presence in an account history.
- the location services can also be utilized by the system 7100 to automatically update the application on the homeowner's smart device 7118 and notify the homeowner that the servicer is present, has left, performed the expected work, etc.
- the application can also display information such as water readings (if they were taken by the servicer) and those readings can also be stored to memory (e.g., servicer database 7128 , historical database 7150 , or servicer system 7124 ).
- the application can also provide real-time updates as the work is performed by the servicer, the reason for the work, and the costs. All of this information can be stored by the system 7100 as data points for future reference and analysis (e.g., machine learning) by the system 7100 .
- the system 7100 can alert the servicer to alert conditions (that the servicer may not have been aware of before arrival) so that he or she can address the alert conditions while on-site. If there is a predicted failure with a piece of pool/spa equipment, the servicer can receive an alert via an application on the servicer's smart device 7104 . The servicer can then choose to transmit that alert to the homeowner via a similar application on the homeowner's smart device 7118 . The servicer can also request approval (e.g. with a countdown timer for the current service call or the next) to address the alert within the same application.
- the system 7100 can also document that the servicer was on site, that an alert was present, that the homeowner was notified of the alert, and the homeowner's response to the request to address the alert (if one was given). For example, as shown in FIG. 56 , in optional step 7376 , the system 7100 determines if a new alert condition is present. If a negative determination is made in step 7376 , the system 7100 proceeds to step 7366 . If a positive determination is made in step 7376 , the system 7100 proceeds to step 7378 , where an alert condition is transmitted to the servicer (e.g., Customer #1234 pump bearings will fail in 30 days). In step 7380 , the servicer can choose to request authorization to address the alert condition.
- the servicer e.g., Customer #1234 pump bearings will fail in 30 days.
- step 7382 the system 7100 transmits a work authorization request to the homeowner (e.g., via smartphone application, email, etc.) and in step 7384 , the system 7100 saves the homeowner's response (or lack thereof) to memory (e.g., servicer database 7128 or servicer system 7124 ). The system 7100 then proceeds to step 7370 .
- the system 7100 can also automatically generate a returned material authorization (“RMA”) and warranty claim submission based on the work performed by the servicer (e.g., pump replacement), information recorded by the servicer via application 7160 (e.g., detailed explanation of reason for RMA or failure mode of part) discussed herein, and/or information saved to servicer database 7128 or servicer system 7124 (e.g., customer information, time and date, etc.).
- RMA returned material authorization
- warranty claim submission based on the work performed by the servicer (e.g., pump replacement), information recorded by the servicer via application 7160 (e.g., detailed explanation of reason for RMA or failure mode of part) discussed herein, and/or information saved to servicer database 7128 or servicer system 7124 (e.g., customer information, time and date, etc.).
- FIG. 57 is a flowchart illustrating processing steps carried out by the system 7100 to automatically grant a servicer WiFi access to the system to perform authorized work.
- the system 7100 can enable a WiFi access point that grants the servicer direct access to the system 7100 without having to log in to the account, homeowner's WiFi, or the cloud.
- the servicer arrives at the pool/spa location.
- the system 7100 identifies the servicer (e.g., by access code, RFID device, geolocation, etc.).
- the system 7100 activates a WiFi access point and in step 7392 , the system 7100 establishes a WiFi connection with the servicer's smart device.
- the servicer performs the authorized work (e.g., modifying the controller) and then leaves the pool/spa location.
- the system 7100 deactivates the WiFi access point.
- FIGS. 58 - 67 illustrate user interface screens of application 7160 that are generated by the system 7100 .
- the application can be run on the homeowner's smart device 7118 , the servicer's smart device 7104 , the servicer system 7124 , or any other device capable of displaying the application and accepting user input.
- FIG. 58 illustrates an initial user interface screen generated by the system 7100 .
- the initial user interface screen can include a portion 7162 for displaying current weather conditions. Additionally, a user can click on portion 7162 to display an extended weather forecast.
- a portion 7164 of the user interface can also be used to display current promotional offers to a user. Additional portions of the user interface can also be provided for information related to, and interaction with, one or more of the pool/spa devices discussed herein.
- portion 7166 can display current heating settings. If portion 7166 is clicked, the user can modify the heater settings (e.g., on/off or variably via a GUI slider or wheel to increase or decrease the temperature). If maximum and minimum temperature setpoint values have been established by an administrator of the system 7100 , a particular user can be prevented from exceeding these values via the application 7160 . According to some aspects of the present disclosure, portion 7166 can also provide additional functionality passed on the number of times it is clicked.
- a first click could provide access to heater on/off control and manual heat settings
- a second click could access heating rules and alarm setup
- a third click could access basic heat settings, smart heat settings (e.g., least costly heating option for a desired goal) and heating history
- a fourth click could provide access to the head schedule settings
- a fifth click could cause the system 7100 to display a diagnostic screen.
- Portion 7168 can be used to display information related to a filtration schedule (e.g., showing a countdown to a next filtration event).
- the system 7100 could store setpoints for a water turnover target, and periods when filtration is not desired (e.g., do not filter start and end times).
- Portion 7168 could display the status of the pump (e.g., on/off), the measured water turnovers from the previous 24-hour period, the next filter start or stop time, and provide a boost button.
- the application 7160 can also be used by the system 7100 to display alerts to a user.
- portion 7170 can display the health status of a pool filter (e.g., that a filter is clean or that a backwash is necessary). If an alert is present, service is needed, a response is required, or the like, the application 7160 can display any of the portions in a color which will draw the user's attention. For example, if the filter is clean and no action is necessary, portion 7170 can be displayed in a blue, or another color, whereas if the filter needs to be cleaned, portion 7170 can be displayed in yellow or another color that will draw the user's attention.
- portion 7172 can be used to display information related to water quality and can be displayed in a first color (e.g., blue) if the water quality is good and displayed in a second color (e.g., yellow) if the water is unsafe, needs testing, or otherwise requires attention.
- a first color e.g., blue
- a second color e.g., yellow
- portion 7172 can provide access to a manual test entry screen.
- certain user interface screens of the application 7160 are only displayed based on who is using the application (e.g., homeowner versus servicer). For example, if a user is logged into the application 7160 as a servicer, clicking on portion 7172 , will display a service call log user interface screen, shown in FIG. 59 . As shown, the service call log user interface screen can display scheduled maintenance intervals and fields for the servicer to record information such as water testing results and general notes related to the customer account.
- the application 7160 can respond to voice commands via voice assistance products (e.g., Amazon Alexa, Google Assistant, Microsoft Cortana, Apple's Ski, etc.), allowing servicers to access and perform work at customer sites without needing to physically manipulate a graphical user interface.
- voice assistance products e.g., Amazon Alexa, Google Assistant, Microsoft Cortana, Apple's Ski, etc.
- portion 7174 can display available upgrades and energy saving advice, discussed hereinabove with respect to FIGS. 43 - 48 . If a user clicks on portion 7174 the system 7100 generates a user interface screen displaying further information on the upgrades and/or energy savings advice, as shown in FIG. 60 .
- the user interface screen shown in FIG. 60 can include a first portion 7186 that contains available upgrades and a second portion 7188 that displays upgrades that the user has declined or is not interested in. Clicking on an item or upgrade displayed on the user interface screen of FIG. 60 will cause the system 7100 to generates another user interface screen, shown in FIG. 61 , displaying additional information and resources related to the upgrade. For example, through the user interface screen of FIG.
- a user can purchase the upgrade from a distributor or servicer (see FIG. 62 ), move the upgrade to the user's shopping list (see FIG. 64 ), request a quotation, request an in-person sales call, click on a link to visit a manufacturer's website (see FIG. 63 ), set a reminder related to the upgrade, or indicate that he or she is not interested in the offer.
- the system 7100 can generate another user interface screen displaying visual representations of pool/spa equipment that have already been upgraded as well as pool/spa equipment upgrades that are available for installation (e.g., as determined by the system 7100 , discussed above).
- the user interface screen shown in FIG. 71 can include portions 7236 that include visual representations (e.g., an image or rendering of a variable speed pump, filter, smart valve, lighting system, etc.) of pool/spa equipment that have already been upgraded and portions 7238 that include visual representations (e.g., image or rendering of a control system, chlorination system, etc.) of available pool/spa equipment upgrades.
- Clicking on one of the portions 7236 or 7238 can cause the application 7160 to display additional information related to the piece of pool/spa equipment associated with the visual representation. For example, clicking on a portion 7236 showing an image of an installed variable speed pump can cause the application 7160 to display the status of the variable speed pump or provide the option to alter parameters, whereas clicking on a portion 7238 can cause the application 7160 to display information such as component availability, component cost, and installation options (e.g., request a quotation from an installer).
- the portions 7236 and 7238 of the user interface screen shown in FIG. 71 can be displayed in the form of a puzzle. Further, the portions 7236 and 7238 of the user interface screen shown in FIG.
- the 71 can together form a complete puzzle based on the number of available upgrades determined by the system 7100 . For example, if the system 7100 determines that two upgrades are available and two upgrades were already installed, the application 7160 will display the puzzle as having four pieces. Similarly, if the system 7100 determines that two upgrades are available and three upgrades were already installed, the application 7160 will display the puzzle as having five pieces. Further still, the application 7160 can display portions 7238 as faded images, visually signaling to the user that additional equipment upgrades are necessary to “complete” the puzzle.
- portion 7176 can display a link to a user's shopping list. Clicking on portion 7176 causes the system 7100 to generate a user interface screen, as shown in FIG. 64 .
- the user interface screen shown in FIG. 64 can include a first portion 7190 that contains a list of items already selected by the user for purchase, and a second portion 7192 that includes a list of recently viewed or recommended items that the user may want to add to the list of items selected for purchase, displayed in the first portion 7190 .
- the list of items in the first portion 7190 could include checkboxes that are filled and the list in the second portion 7192 could include check boxes that are not filled. Unchecking a checkbox in the first portion 7190 can move an item to the second portion 7192 . Similarly, checking a checkbox of an item in the second portion 7192 can move the item to the first portion 7190 .
- portion 7178 can display a link to a learning and troubleshooting area, such as for example, a manufacturer's web-based support center (see FIG. 66 ).
- portion 7180 can display a link to a service and support area, such as for example, a designated pool servicer's portal (see FIG. 65 A ) where the user can schedule an appointment for service (see FIG. 65 B ) or initiate direct communication (e.g., instant messaging, email, voice, etc.) with the servicer.
- Portion 7182 of the application 7160 can display a link to a user interface screen that provides information related to a user's pool or spa installation, shown in FIG. 67 . For example, the user interface screen of FIG.
- 67 can include photographs of the homeowner's pool/spa equipment (e.g., picture of a pump, heater nameplate, filter, booster pump, blower, lights, GVA, etc.). These photographs could be stored by the system 7100 or could be stored at another location (e.g., a photograph storage website such as Google Drive, iCloud, etc.) in communication with the system 7100 .
- the photographs could be uploaded by the homeowner or the servicer and according to some aspects of the present disclosure, the servicer can be required to populate photographs to the system 7100 when performing maintenance or the like.
- a servicer can access the photos remotely, enabling the servicer to confirm that he or she has all required tools and equipment for a particular job prior to arrival on-site.
- a portion 7184 could display a feedback link to a survey (e.g., survey monkey) where the user can review the servicer and the work performed.
- the application 7160 can provide linking and/or communication between homeowners and servicers.
- the application 7160 can link a servicer to a particular homeowner as a servicer of record and rules of engagement and support (e.g., automatic approval up to a certain monetary value, or automatic approval for preventative maintenance) can be established and saved to a homeowner profile.
- the system 7100 can generate a user interface screen including a list of available servicers (e.g., servicer systems 7124 ) from which the homeowner can select a servicer of record.
- the servicer of record could have access to all of the information from a particular site that is collected by system 7100 , whereas a servicer that is not of record could only have access to a subset of that information.
- the homeowner can schedule a service call through the application 7160 or request a service call the next time a servicer is in the neighborhood (e.g., using geofencing surrounding the homeowner's location and geolocation services on the a servicer smart device or vehicle). For example, when a homeowner needs to refill pool/spa chemicals, the homeowner can request a refill the next time that the servicer of record is in the neighborhood, or the homeowner can request an immediate refill to all servicers in the area.
- the homeowner request can be transmitted to broadcast system 7126 in communication with the system 7100 (see FIG. 49 ).
- the broadcast system 7126 can further be in communication with one or more servicer smart devices 7104 or servicer systems 7124 . Servicer can monitor the broadcast system 7126 and can accept a service request using the application 7160 . Once a servicer has accepted the homeowner's request, the request can be cleared from the broadcast system 7126 .
- the system 7100 can automatically request refills for the homeowner based on the current level of the chemicals (e.g., if sensors in communication with the system 7100 are utilized to monitor the levels) and/or based on historical trends (e.g., on average the homeowner requests a refill every X days, or X % of the chemicals are consumed per day).
- the application 7160 can also generate a user interface screen that provides the homeowner with a map of a geographical area that includes the homeowner's position, one or more servicers' positions relative to the homeowner, and estimated time of arrival and route tracking if a service appointment has been requested by the homeowner and accepted by a servicer.
- the application 7160 can also provide a servicer with the ability to provide a quotation to a homeowner, request approval to complete the quoted work, view and record the response, and provide an invoice without leaving the confines of the application 7160 . Further, the system 7100 can generate quotations for the servicer (that he or she can then directly submit to the homeowner for approval) for predicted or preventative maintenance of equipment (based on the installed pool/spa equipment and historical maintenance data) or for service in the event of a problem with a piece of equipment. For example, the application 7160 can include a user interface screen that presents a quotation or contract for the homeowner's approval, such as a contract to do simple or specific work without requiring a quote or prior approval.
- the application 7160 can also include dashboard, or summary screen.
- the summary screen can be manually generated by the servicer, automatically generated by the system 7100 on a periodic bases (e.g., monthly), or continuously updated by the system 7100 in real-time.
- the summary screen can include energy usage, energy savings, energy savings suggestions, services to be reviewed or provided, periodic service summaries (e.g., weekly, monthly, seasonal, yearly, etc.), periodic alert summaries (e.g., weekly, monthly, seasonal, yearly, etc.), and services or energy costs.
- a first user interface screen 7240 can include a portion 7246 for displaying current weather conditions (e.g., temperature, cloud cover, wind speed, humidity, etc.), a portion 7248 for displaying a list of specified preferred activities (e.g., swimming, entertaining, sunbathing, gardening, walking, etc.), and a portion 7250 for displaying customized recommendations (e.g., “High winds tomorrow, take furniture in after dinner”).
- the list of specified preferred activities can include indicia for indicating whether the current weather conditions are appropriate for a specific activity. For example, if a the user specifies that swimming is appropriate between temperatures of 75 and 95 degrees and the current temperature is 86 degrees, the application 7160 will indicate that swimming is appropriate at present.
- the application 7160 can also display additional user interface screens based on forecasted weather conditions. For example, if a user swipes left on user interface screen 7240 , the application will advance to user interface screen 7242 , which displays the forecasted weather conditions for the next day. It is contemplated by the present disclosure that the application 7160 can display any number of user interface screens for future dates, the only limiting factor being the availability of forecasted weather conditions (e.g., weather forecasts, almanacs, etc.). For example, if the current date is Friday, March 4, swiping left on user interface screen 7240 , will cause the application 7160 to display user interface screen 7242 including information for Saturday, March 5.
- forecasted weather conditions e.g., weather forecasts, almanacs, etc.
- user interface screen 7242 can include a portion 7252 for displaying the date and forecasted weather conditions (e.g., temperature, cloud cover, wind speed, humidity, etc.), a portion 7254 for displaying a list of specified preferred activities (e.g., swimming, entertaining, sunbathing, gardening, walking, etc.), and a portion 7256 for displaying customized recommendations (e.g., “High winds tomorrow, take furniture in after dinner”).
- the list of specified preferred activities can include indicia for indicating whether the forecasted weather conditions will be appropriate for a specific activity. For example, if a the user specifies that swimming is appropriate between temperatures of 75 and 95 degrees and the forecasted temperature is 72 degrees, the application 7160 will indicate that swimming is not appropriate at present.
- the user interface screens 7240 and 7242 shown in FIG. 72 can also include a portion 7258 for providing the user access to a user interface configuration screen 7244 , for example by clicking thereon.
- the configuration screen 7244 can include a portion 7260 for displaying a list of common activities (e.g., swimming, entertaining, sunbathing, gardening, walking, sailing, geocaching, bungee jumping, clam digging, mushroom hunting, etc.) from which the user can select his or her preferred activities (e.g., swimming, entertaining, sunbathing, gardening, walking, etc.). Selecting a preferred activity can cause the application 7160 to display a portion 7262 for specifying appropriate conditions for the preferred activity.
- common activities e.g., swimming, entertaining, sunbathing, gardening, walking, sailing, geocaching, bungee jumping, clam digging, mushroom hunting, etc.
- Selecting a preferred activity can cause the application 7160 to display a portion 7262 for specifying appropriate conditions for the preferred activity.
- portion 7262 can be used by the user to specify the air temperature (e.g., 70-95 degrees), water temperature (e.g., any/all), sun (e.g., full/no cloud cover), wind speed (e.g., moderate), and humidity (e.g., any/all) for which sunbathing is appropriate.
- the system 7100 can compare the user specified conditions for each activity against the current or forecasted weather conditions to determine whether the preferred activities displayed in portions 7248 and 7254 suitable.
- the user interface configuration screen 7244 can also include a portion 7264 for allowing the user to add an activity to the list of common activities displayed in portion 7260 . For example, by clicking on portion 7264 , the user could add “running” to the list of common activities and then access portion 7264 to specify the desired conditions therefor.
- the system 7100 can also include a servicer dashboard 7200 .
- the servicer dashboard 7200 is an application including a graphical user interface generated by the system 7100 and can be installed on, for example, the servicer system 7124 or the servicer's smart device 7104 .
- the dashboard 7200 can identify the servicer's accounts (e.g., where the servicer has previously performed work or is the servicer of record) 7208 within a specified geographical area, prospective accounts 7210, and locations 7212 where homeowners have expressed no interest in pool/spa services.
- the dashboard 7200 can include a graphical user interface portion 7202 for providing an overview of the status of each of the servicer's accounts (e.g., healthy pools, impaired pools (low chemicals, system check needed, replace component, etc.), pools that are down, pools experiencing problems with communications, past due invoices, etc.).
- the dashboard 7200 can show that a particular system at a customer site is communicating with the dashboard 7200 , that the system is up to date (firmware), the last time a servicer visited a site, and the health of a system by category (e.g., controls, chemistry, pump, heater, filter, lights, cleaner, etc.).
- User interface 7202 can also show requests from customers, messages from customers, forum posts made by customers, as well as additional information related to the servicer's accounts.
- the dashboard 7200 can also include a graphical user interface portion 7204 showing prospective opportunities for a servicer. For example, portion 7204 can identify equipment needs at the servicer's accounts, or identify locations where the system 7100 has not been installed.
- the dashboard 7200 can also receive notifications (e.g., push, pop-up, etc.) when the system 7100 determines that a servicer is in close proximity to a prospective opportunity (e.g., a location where the system 7100 has not been installed, a location where equipment needs to be replaced, etc.) or a location where the system 7100 has determined that the homeowner can benefit from replacement of aging or inefficient equipment (e.g., as described herein in connection with FIGS. 43 - 48 ).
- notifications e.g., push, pop-up, etc.
- the dashboard 7200 can also include a graphical user interface portion 7206 including tools for the servicer, such as a route planner (e.g., service or sales) or a means for reordering supplies.
- a route planner e.g., service or sales
- the dashboard 7200 can generate a daily route based on a determination of which particular sites require service on a given day and then direct the servicer to his or her appointments in the most efficient manner (e.g., shortest distance), based on the level of complexity (e.g., estimated time for completion), and/or based on revenue/profit maximization (e.g., estimated time for completion versus net profit margin).
- the daily route generated by the dashboard 7200 can include directions, route overview, materials needed for the service appointments, an estimated time for each service, and the like.
- the dashboard can generate a list of all the materials (e.g., chemicals, motors, cables, logic boards, sensors, etc.) that a servicer needs for a particular day (or week), so that the servicer can verify that he or she has all of the materials needed to complete the service calls before beginning the daily route, thereby increasing efficiency by minimizing the number of trips a servicer must make to procure materials.
- materials e.g., chemicals, motors, cables, logic boards, sensors, etc.
- the system 7100 can also include a secure service technician portal (“SSTP”).
- SSTP secure service technician portal
- the SSTP can be displayed as a graphical user interface screen on the servicer system 7124 and can provide a servicer access to site parameters, name, address, turnovers, etc., the ability to specify recipients for alerts, etc.
- the system 7100 can also include a secure administrative portal (“SAP”) that can be displayed as a graphical user interface screen on a manufacturer's system and can provide the ability to set global parameters, PID coefficients, enter promotional offers, etc.
- SAP secure administrative portal
- Both the SSTP and the SAP can communicate with and access a configuration database.
- the configuration database can store configuration parameters and the current status of various pieces of equipment, an alarm dispatch history, a dashboard browsing history, etc.
- FIG. 69 is a flowchart illustrating processing steps carried out by the system 7100 to determine that a servicer's vehicle is stocked with all the materials, discussed above, that a servicer needs for a particular day (or week).
- the system 7100 determines the ideal inventory for a servicer's vehicle.
- the system 7100 determines the current inventory of the servicer's vehicle.
- the system 7100 compares the ideal inventory with the current inventory of the servicer's vehicle.
- step 7404 the system determines whether the inventory of the servicer's vehicle needs to be replenished. If a negative determination is made in step 7404 , the system 7100 returns to step 7398 .
- step 7404 the system 7100 proceeds to step 7406 where a list of the required inventory items are transmitted to a distributor (for pick-up or delivery to the servicer).
- the system 7100 then returns to step 7398 .
- a servicer's vehicle can be outfitted with a barcode system, RFID system, or vision system (such as that described above) in communication with the system 7100 for determining the exact inventory of the servicer's vehicle in real-time.
- the system 7100 can add those items to a list to be transmitted to a distributor so that they can be restocked.
- the inventory of the vehicle can then be compared with the list of materials needed for the day (or week).
- the system 7100 can utilize machine learning to analyze data received by the system 7100 (e.g., number of pool/spa locations, age of equipment, historical service requests, etc.) and determine the required inventory list for the servicer's vehicle. For example, the system 7100 could determine that three sensors, two power cables, two seals, one logic board, twenty bags of salt, and twenty gallons of liquid chlorine should be on the servicer's vehicle at the beginning of the week.
- data received by the system 7100 e.g., number of pool/spa locations, age of equipment, historical service requests, etc.
- the system 7100 could determine that three sensors, two power cables, two seals, one logic board, twenty bags of salt, and twenty gallons of liquid chlorine should be on the servicer's vehicle at the beginning of the week.
- FIG. 70 is a block diagram of the sensor hub 7122 .
- the system 7100 can include sensor hub 7122 in for monitoring operational parameters of legacy pool/spa devices (e.g., devices which are not are capable of direct communication with the system 7100 via a data connection).
- the sensor hub monitors the operational parameters of the legacy devices by way of a plurality of sensors 7140 that are disposed on, or around, the pool/spa devices and that are in communication with the sensor hub 7122 .
- Each sensor 7140 can monitor one or more operational parameters of a legacy pool/spa device or provide the system 7100 with additional monitoring capabilities for connected pool/spa devices. For example, as shown in FIG.
- the sensor hub 7122 can include a printed circuit board (“PCB”) 7214 having sensor inputs 7216 for a receiving operational data from one or more sensors, such as a line current sensor 7140 k , a water temperature sensor 71401 , a combination water flow and temperature sensor 7140 m , an ambient temperature sensor 7140 n , and a pH and ORP sensing kit 7140p.
- the PCB 7214 can include both digital and analog inputs.
- the sensor hub 7122 monitors the operational parameters of the legacy pool/spa devices and transmits operational data from the sensors 7140 to the system 7100 via a network 7110 .
- the sensor hub 7122 can communicate with the system 7100 via any wired or wireless communications protocol (e.g., RS485, WiFi, Bluetooth, ZWave, Zigbee, cellular, etc.). Accordingly, sensor hub 7122 can include an LTE module 7218 , a WiFi transceiver 7220 , or any other network communication bus suitable for providing communication with the system 7100 .
- wired or wireless communications protocol e.g., RS485, WiFi, Bluetooth, ZWave, Zigbee, cellular, etc.
- sensor hub 7122 can include an LTE module 7218 , a WiFi transceiver 7220 , or any other network communication bus suitable for providing communication with the system 7100 .
- the sensor hub 7122 can also include a line power input 7222 for receiving power from a power source. According to some aspects of the present disclosure, the sensor hub 7122 can also include relays 7224 (both high-voltage and low-voltage) for controlling one or more pool/spa devices. For example, the sensor hub could include relays 7224 for controlling an acid feeder 7226 , a chlorine feeder or salt chlorinator 7228 , a variable-speed pump 7230 , and a single-speed pump 7232 .
- the sensor hub 7122 can also include a housing 7234 enclosing the PCB 7214 , LTE module 7218 , and WiFi module 7220 , and providing access to sensor inputs 7216 , line power input 7222 , and relays 7224 .
- the sensor hub 7122 can be modular, allowing for expansion to monitor additional pool/spa devices or to provide additional diagnostic capabilities.
- an expansion module could be added to the sensor hub 7122 to provide more advanced machine learning.
- Expansion modules can also be added to provide enhanced monitoring and control capabilities for acid feeders, chlorine feeders, salt chlorinators, variable speed pumps, single speed pumps, and the like.
- the expansion module can be provided in the form of an input card on the PCB 7214 or as a separate unit that communicates with the sensor hub 7122 through a communication bus such as RS485 or WiFi.
- the pool “hub” disclosed herein, as well as the various embodiments disclosed herein, allows for wired and wireless communication (e.g., wireless methods 802.11 protocols, Zigbee, ZWave), with pool pad components. Communication could include product status, product health, energy use (e.g., individual and/or system), errors, preventative maintenance, etc.
- the hub could incorporate all of the types of communication to the hub and from the hub to the home router.
- the pool hub could be upgraded through the web, push updates to connected equipment at the pad, etc.
- the hub could be fully configured (e.g., through an app), which includes schedules, names, temperatures, possible chemical dosage, percentage output, etc.
- the hub could have web based cloud connectivity to other cloud based devices or systems to allow for enhanced communication and/or enhanced external inputs.
- the hub could have a communication antenna for RF mesh (e.g., ZWave, Zigbee, Thread, Weave), BlueTooth, etc to connect to pool and non-pool equipment.
- the connectivity could be done at the pool pad, the processing could be done on the cloud (e.g., with one app built based on activated features).
- the hub could connect thermal imaging to relay pool, pad, spa, and/or weather information to the hub.
- the hub could enable virtual interlocks between devices based on predetermined rules and relationships.
- the system of the present disclosure is modular and can grow with the addition and/or replacement of equipment. More specifically, the system consolidates all products as they are added (e.g., pump, heater, chemistry automation systems), and could only show the ones currently installed. App updates (e.g., for accessing the system from a local device) could come from new compiled code and/or a profile held in the device and transferred to the app. The system could store the operating profile and/or environment of the devices captured by the hub or in the devices and relayed to the hub (which could support the predictive failure ability as well as supports warranty analysis claims).
- App updates e.g., for accessing the system from a local device
- the system could store the operating profile and/or environment of the devices captured by the hub or in the devices and relayed to the hub (which could support the predictive failure ability as well as supports warranty analysis claims).
- the system could store standard profiles for heater/pump (e.g., Northeast region by zipcode) and/or heater/pump/lights (e.g., Southwest region by zipcode) for easy configuration (e.g., start with standard configurations based on the geography).
- heater/pump e.g., Northeast region by zipcode
- heater/pump/lights e.g., Southwest region by zipcode
- the system could monitor a variety of types of plug in and/or wireless sensors (e.g., air, pool, spa, solar, temperature, etc.) for a variety of types of measurements (e.g., presence of flow, measurement of flow, line pressure, water levels, UV levels, wind speeds, light presence, etc.).
- types of sensors e.g., presence of flow, measurement of flow, line pressure, water levels, UV levels, wind speeds, light presence, etc.
- Other types of sensors that could be used include turbidity sensors, bacteria sensors, alkalinity sensors, hardness sensors, RF sensors, sound wave sensors, different light spectrum sensors, reflectors, magnetic sensors, radar, infrared, humidity, evaporation, moisture, motion, galvanic corrosion, chemical corrosion, electrolysis, electrical storm sensors, etc.
- the sensors could analyze and/or process raw data (e.g., locally sensed parameters, from a third party source, etc.) with an integrated processor or communicate the raw data (e.g., locally sensed parameters, from a third party source, etc.) for processing in a co-located or remote processor.
- the sensor analysis could incorporate trigger points, trend monitoring, manual correlation analysis, automatic correlation analysis, etc.
- the sensors could be individual or grouped (e.g., for more efficient connection and/or pairing).
- the hub could function as a router for data, relay for data, or analyze the data.
- the hub could have one or many different electrical and protocol data communication interfaces to support connection to legacy and future protocols and devices.
- the hub could have built in Ethernet (e.g., wired, WiFi, cellular, and/or other), as well as communication with home router and/or direct to cloud (e.g., cellular).
- the hub could connect through wired (e.g., RS485) and/or wireless communication (e.g., WiFi, Bluetooth, ZWave, Zigbee, etc.) with a pump (e.g., for full variable speed pump (“VSP”) capabilities), heater or heat pump (e.g., for heat control), etc. (i.e., low voltage and/or high voltage applications).
- VSP variable speed pump
- the hub could have one or more modular relays or relay banks (e.g., four relays or relay banks).
- the hub could connect to the relay bank for relay control through wired (e.g., RS485) and/or wireless communication.
- the relays could be used to control any electrical devices (e.g., high or low voltage), such as pumps, lights, etc.
- the hub could control wired or wireless valves with transformation at plug or 120V (e.g., to provide power to valve based on hub architecture).
- the hub could connect to a light controller through wired and/or wireless (e.g., Bluetooth and/or RF mesh such as ZWave, Zigbee, Thread, Weave, etc.) communication, such as to give relay control to a pool, spa, backyard lighting, etc.
- wired and/or wireless e.g., Bluetooth and/or RF mesh such as ZWave, Zigbee, Thread, Weave, etc.
- the system can perform a variety of types of analytics.
- the system could analyze electrical, gas, and/or propane usage for one or more pool devices, sites, and/or geographies (e.g., based on data from the hub or device).
- the system could analyze consolidated site information to facilitate creation of algorithms (e.g., to increase efficiency for all users).
- the system could use historical data trends to predict future trends, future costs, utility budgets, warnings, efficiency change, as well as to offer preventative maintenance, predictive failure, and/or potential downtime risks.
- the system could communicate with utilities via a web-based API or some other suitable mechanism.
- the system could use data trends and/or external data to minimize energy usage and/or facilitate energy consumption decisions.
- the system could analyze data to predict a budget for requested outcomes to give consumers better visibility in their choices.
- the system could use external web based data to automate decisions based on learned or imputed data or trends.
- the system could use historical and/or external data to predict outcomes heating or filtering events to increase autonomy and reduce energy usage for these outcomes.
- the system could use failures, predictive failures or preventative maintenance alerts to automatically assign or request service from a customer or partner.
- the system could use external data from partners to increase the efficiency, potential decisions, functionality of the hub in the IoT world.
- the system could use data to adjust automated decisions based on sensors, decision information, inputs from other devices, etc.
- the system could use flow, pool temperature, air temperature, wind data, etc.
- the system could use data communicated to the hub from a water leveling sensor to predict leaks and/or water bills, and/or to automatically alert leak repair company that customer has an issue with his or her pool.
- the system could use web based data (e.g., time of year, sunrise and sunset, time, etc.) to predict light availability and automate changes in device schedules.
- the system could use consolidated site information to help notify the user of a devices operation through the actions of an alternate device.
- the system could provide an installer with a step by step interface for product installation when a product is selected.
- web data can also include, but is not limited to: environmental conditions such as ambient temperature, humidity, wind speed and direction, rain, lightning, snow, cloud coverage, forecasts (e.g., 5 day, 10 day, etc.), pollen, visibility, fog, pollution, smog, road conditions, travel delays, UV index, location, zip code, GPS coordinates, IP address, sunrise, sunset, sun location, wind chill, public water costs, public water availability, public water quality, drought or flood alerts, average chemical costs (e.g., internet costs of chlorine, etc.), tornado/hurricane alerts, etc.; local energy data such as electricity costs, fuel costs, peak hours and cost fluctuation, sun location, available energy rebates, etc.; personal data produced in conjunction with web or web enabled device (e.g., nest, phone, hub, etc.) such as location (e.g., home, away, on the way home, etc.), data usage, amount of web enabled devices used or connected (
- Pool control logic 70 could interface with the voice interaction devices directly (e.g., Bluetooth), locally (e.g., through network router or mesh network), or via the cloud.
- the user commands, inputs, actions, etc., described herein, could be provided to pool control logic 70 via the voice interaction device and notifications, messages, alerts, etc., described herein, could be transmitted to the user via the voice interaction device (e.g., verbal notification, messages, alerts, etc.). For example, to activate the lighting system 14 h , a user could simply say, “Alexa, turn on the pool lights.”
- power line carrier e.g., power-line digital subscriber line (PDSL), mains communication, power-line telecommunications, or power-line networking (PLN)
- PDSL power-line digital subscriber line
- PDN power-line networking
- site data could be replaced with cloud data, or data at the site could be combined with data in the cloud, and the system could intelligently combine disparate data from different cloud servers.
- North-South-East-West e.g., phone compass
- pool control logic 70 could receive operational data from one or more pieces of pool equipment having enhanced sensing capabilities.
- the system 10 could include lighting system 14 h (see, e.g., FIG. 1 ) having a smart light 5014 h . More specifically, as shown in FIG.
- smart light 5014 h could include temperature sensor 5000 (e.g., for temperature sensing of air, water, etc.), microphone 5001 , chemistry sensor 5002 (e.g., for sensing salinity, pH, ORP, TDS, chlorine, etc.), light output sensor 5004 (e.g.
- the smart light 5014 h could further include the ability to measure for stray current.
- the user input module could include touch-based inputs (e.g., capacitive, inductive, fear field RF, etc.).
- the smart light 5014 h could further include a display 5019 provided as a separate component or integrally provided with user input module 5018 .
- the smart light 5014 h could accordingly be used to display an error message for a fault condition or warning message regarding pool chemistry, or could be used to display any other kind of visual media.
- the network communication and local control subsystem 12 h could communicate with pool control logic 70 , located in one or more of the pool/spa components discussed herein, using any of the communication protocols discussed herein, including but not limited to, power line carrier, ethernet, RF, Bluetooth, WiFi, and Zigbee.
- Smart light 5014 h could also record hours of operation, light output, voltage, and current as well as corresponding operating and environmental conditions during use.
- temperature sensor 5000 microphone 5001 , chemistry sensor 5002 , light output sensor 5004 , occupancy sensor 5006 , water clarity sensor 5008 , water level sensor, 5010 , water pressure sensor 5012 , flow sensor 5014 , turbidity sensor 5016 , user input module 5018 , and network communication and local control subsystem 12 h could be incorporated into the a lighting device, or could be provided as an additional attachment to the lighting device body.
- pool control logic 70 could reside or be run within the smart light 5014 h , in another piece of pool/spa equipment, remotely, or distributed amongst one or more of these locations.
- FIG. 37 is a flowchart illustrating processing steps of the pool control logic 70 for controlling a heater based on operational data received from the smart lights 5014 h described above. More specifically, multiple smart lights provided in and around the pool/spa could act as a mesh array of temperature sensor inputs for determining the average temperature of the pool/spa and controlling the heater accordingly.
- the pool control logic 70 receives operational data, e.g., temperature, from a first smart light.
- the pool control logic 70 receives operational data, e.g., temperature, from a second smart light.
- the pool control logic 70 receives operational data, e.g., temperature, from the nth smart light.
- the pool control logic 70 receives operational data for all smart lights in addition to the first and second smart lights discussed in connection with steps 5022 and 5024 .
- the pool control logic 70 determines the average temperature off the pool/spa based on the operational data received from the smart lights.
- the pool control logic 70 retrieves temperature setpoint data from memory.
- the pool control logic 70 determines if the average temperature (determined in step 5026 ) is below the temperature setpoint. If a positive determination is made, e.g., the average temperature is below the temperature setpoint, then the process proceeds to step 5032 , where the pool control logic 70 transmits an instruction to activate a heater and the process reverts to step 5020 .
- pool control logic 70 transmits an instruction to deactivate a heater and the process reverts to step 5020 . It is also contemplated that instead of determining the average temperature of the pool/spa, pool control logic 70 could determine the warmest or coolest area of the pool/spa and control the heater accordingly (e.g., warming the coolest area of the pool to a temperature setpoint, or cease warming of the pool when the warmest area of the pool reaches a temperature setpoint).
- FIG. 38 is a flowchart illustrating processing steps of the pool control logic 70 for controlling a heater by determining a predicted temperature setpoint based on previous user specified temperature setpoints.
- the pool control logic 70 receives an instruction to activate a heater.
- the pool control logic 70 retrieves a first previous user temperature setpoint from memory.
- the pool control logic 70 retrieves a second previous user temperature setpoint from memory.
- the pool control logic 70 retrieves the nth previous user temperature setpoint from memory. That is, in step 5042 the pool control logic 70 retrieves all other previous user temperature setpoints from memory that are desired.
- the system can be set-up so that the three (3), four (4), five (5), ten (10), or twenty (20), etc., most recent previous user temperature setpoints are utilized in this process.
- the pool control logic 70 determines a predicted user temperature setpoint based on the previous user temperature setpoints retrieved from memory in steps 5038 , 5040 , and 5042 . This determination can be based on, for example, the mean, median, mode, etc., of the previous user temperature setpoints retrieved from memory.
- the pool control logic 70 transmits an instruction to a heater to operate, e.g., until the predicted setpoint determined in step 5044 is reached.
- FIG. 39 is a flowchart illustrating processing steps of the pool control logic 70 for controlling the pool/spa water chemistry by operating sanitization equipment based on operational data received from water chemistry sensors in one or more smart lights 5014 h .
- the pool control logic 70 receives water chemistry setpoints, e.g., relating to salinity, pH, ORP, TDS, chlorine levels, etc., from memory.
- the pool control logic 70 receives water chemistry operational data, e.g., salinity, pH, ORP, TDS, chlorine levels, etc., from smart light sensors.
- step 5052 the pool control logic 70 determines if the water chemistry operational data (determined in step 5050 ) is within specific levels, e.g., which are based on the setpoints retrieved in step 5048 . If a positive determination is made, then the process returns to step 5050 , where the pool control logic 70 continues to receive water chemistry operational data from the smart light sensors. If a negative determination is made, then the process proceeds to step 5054 , where the pool control logic 70 determines an action to correct the water chemistry, e.g., increase chlorination rate by X %.
- step 5056 the pool control logic transmits an instruction to the chemistry automation system to take corrective action in accordance with the action determined in step 5054 , e.g., increase the chlorination rate by X %, and the process reverts to step 5050 .
- pool control logic 70 could also use operational data received from the smart light 5014 h sensors to control a robotic cleaner based on operational data received from water clarity sensor 5008 or occupancy sensor 5006 , activate the pump and/or filter based on operational data received from water clarity sensor 5009 , activate water features, actuate valves, or activate the pump based on operational data received from flow sensor 5014 , trigger a house alarm (if armed) based on operational data received from occupancy sensor 5006 , activate the lighting system based on operational data received from occupancy sensor 5006 (e.g., turn on the lights, increase the intensity of the lights, switch light color based on an unplanned occupancy or turn lights on based on time of day, automatically turn off after a period of time if no occupant detected, “follow the swimmer” by only activating the light when an occupant is detected proximate thereto), adjust the water temperature based on operational data received from occupancy sensor 5006 , adjust light output
- FIG. 40 is a flowchart illustrating processing steps of the pool control logic 70 for predictively displaying the most popular light show based on previously selected light shows.
- the pool control logic 70 receives an instruction to activate a light show.
- the pool control logic 70 retrieves a first previously selected light show from memory.
- the pool control logic 70 retrieves a second previously selected light show from memory.
- the pool control logic 70 retrieves the nth previously selected light show from memory. That is, in step 5064 the pool control logic 70 retrieves all other previously selected light shows from memory.
- the system can be set-up so that the three (3), four (4), five (5), ten (10), or twenty (20), etc., most recent previously selected light shows are utilized in this process.
- the pool control logic 70 determines the most common light show based on the previously selected light shows retrieved from memory in steps 5060 , 5062 , and 5064 .
- the pool control logic 70 transmits an instruction to a lighting system to display the most common light show as determined in step 5066 .
- pool control logic 70 could instead retrieve a set number of most recent light shows (e.g., most recent 10 light shows), or pool control logic 70 could retrieve light shows that were selected within a specified period of time (e.g., light shows selected within the last year).
- the smart light 5014 h could communicate with music and speaker systems to provide a coordinated music and lighting show (e.g., lights change color and intensity, pulse, move, etc. based on a particular musical selection).
- smart light 5014 h could provide for user interaction with the pool/spa control system 10 and pool control logic 70 .
- the smart light could include a user input module 5018 having touch-based inputs and a display 5019 .
- the user could use the touch-based controls to adjust the water temperature at the smart light 5014 h , or to modify or change a light show or light color.
- the touch-based controls and display 5019 could be used to virtually configure custom light shows.
- the user could interact with the pool/spa control system 10 using the microphone 5001 (e.g., using voice commands either above or below water).
- the pool control logic 70 could receive operational data from a plurality of smart lights 5014 h disposed about a pool/spa. More specifically, pool control logic 70 could receive operational data from occupancy sensors 5006 in the plurality of smart lights 5014 h . Using the plurality of lights 5014 h and sensors 5006 as nodes in a mesh array, pool control logic 70 could determine the location of the occupant in the pool/spa.
- the smart light 5014 h could further perform an optical comparison with a camera to identify when the pool is dirty or contains debris or other particulate.
- a plurality of smart lights 5014 h could be used as an array to provide directional input for a robotic cleaner.
- pool control logic 70 could determine areas of the pool having high concentrations of dirt or debris.
- a plurality of smart lights 5014 h could be disposed about a pool/spa. Pool control logic 70 could then determine the smart light 5014 h in closest proximity to the debris and send an instruction to activate the smart light 5014 h .
- the pool cleaner would then detect the light from the smart light 5014 , proceed towards the same, and accordingly proceed towards the area having a high concentration of debris.
- smart lights 5014 h could independently illuminate if they determine they are proximate to an area of high debris. The pool cleaner could then proceed to each area of high debris, in turn.
- smart lights 5014 h could be used to provide light catalyzed chemistry for sanitization by adjusting their light output wavelength.
- pool control logic 70 could receive an instruction to sanitize the pool/spa. Pool control logic 70 could then retrieve light wavelength sanitization setpoint data from the memory (e.g., sanitization wavelength is 254 nm). Pool control logic 70 could then transmit an instruction to the lighting system 14 h and/or smart light 5014 h to operate at the sanitization setpoint (e.g., 254 nm).
- FIGS. 73 - 85 illustrate components of embodiments of the heating/cooling system 14 b of FIG. 1 and processing steps carried out by the embodiments of the heating/cooling system 14 b .
- FIG. 73 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b of FIG. 1 for measuring venting system exhaust pressure, venting system temperature, and detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b.
- a pool heater of a heating/cooling system that is installed in a building or indoor space utilizes a venting system comprising a vent and vent pipes to safely exhaust the products of combustion outdoors.
- a blockage in the vent and/or vent pipes can result in poisonous exhaust gases (e.g., carbon monoxide) being released into the building or indoor space.
- a blockage in the vent and/or vent pipes can reduce air flow and increase exhaust gas recirculation, both of which can cause carbon monoxide production to increase.
- design safety standards for pool heaters require tests that demonstrate that a heater of the heating/cooling system will detect a vent and/or vent pipe blockage and deactivate before the carbon monoxide concentration in the exhaust gas reaches a predetermined level.
- Pool heater manufacturers can detect a vent and/or vent pipe blockage via at least one pressure switch that detects the venting system exhaust pressure generated by the blockage.
- a pressure switch is susceptible to failure.
- the tubing between the pressure switch and the vent and/or vent pipes can be disconnected or broken or the pressure switch can be improperly wired (i.e., “jumpered”) thereby rendering the pressure switch ineffective.
- the heating/cooling system 14 b could include a heater 7400 having a water inlet pipe 7404 a , a water outlet pipe 7404 b , a heat exchanger 7402 , a vent 7406 , vent pipes 7408 , a fan 7410 having a fan motor 7412 , a differential pressure sensor 7414 and a network communication and local control subsystem 12 b (“control subsystem 12 b ”) including, but not limited to, a processor 22 and a memory 23 .
- the control subsystem 12 b could be a hardware processor including a controller in communication with the memory 23 and the differential pressure sensor 7414 .
- the heating/cooling system 14 b can include one or more temperature sensors 7415 that can monitor the temperature of one or more of the vent pipes 7408 , water inlet 7404 a , and water outlet 7404 b , which can be monitored by the processor 22 and used to generate a temperature profile for the heating/cooling system 14 b.
- the water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means.
- the water passes through the heater 7400 and into the heat exchanger 7402 .
- the water outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa.
- the differential pressure sensor 7414 measures the exhaust pressure in the vent 7406 and/or vent pipes 7408 and cannot be “jumpered” like a pressure switch which makes it more effective. As shown, the differential pressure sensor 7414 can measure the pressure differential between the vent 7406 and one or more of the vent pipes 7408 in order to determine the presence of a blockage therein.
- the heating/cooling system 14 b provides for detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b by defining a plurality of predetermined venting system exhaust pressure thresholds as described in further detail below.
- the control subsystem 12 b could include a processor 22 in communication with a memory 23 including at least one of a random-access memory 24 and a non-volatile memory 30 .
- the processor 22 provides local processing capability for the control subsystem 12 b .
- the non-volatile memory 30 can store one or more local control programs 30 for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor 22 is in communication with the differential pressure sensor 7414 of the heater 7400 .
- a pressure sensor may also be referred to as a pressure transducer, a pressure transmitter, a pressure indicator, a piezometer and a manometer and could be one of an absolute pressure sensor, a gauge pressure sensor, a vacuum pressure sensor, a differential pressure sensor, a sealed pressure sensor or any other type of pressure sensing device.
- the differential pressure sensor 7414 can be connected to and in communication with the heating/cooling system 14 b and the control subsystem 12 b via a wired or a wireless connection.
- the processor 22 may detect changes and/or problems in the performance of the venting of the heating/cooling system 14 b and control the operation of the heating/cooling system 14 b based on (1) a measurement of the venting system exhaust pressure relative to a plurality of predetermined pressure thresholds and (2) a calculated difference between the measurement of the venting system exhaust pressure and a last recorded measurement of the venting system exhaust pressure relative to a plurality of predetermined pressure thresholds.
- the control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b . The components of the control subsystem 12 b are discussed in more detail above in regards to FIG. 2 .
- FIGS. 74 A-B are flowcharts illustrating processing steps carried out by the heating/cooling system 14 b of FIG. 73 for detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b , indicated generally at method 7450 .
- the system 14 b receives a command to heat the water in the pool or spa and ignites and fires the heater 7400 .
- a user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 of FIG. 1 ) or via a display of the heating/cooling system 14 b to instruct the heating system 14 b to heat the water in the pool or spa.
- the system 14 b may transmit the command due to a predetermined condition.
- a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature.
- the activation command can also be a command to cool the water in a pool or spa.
- step 7454 the system 14 b receives a command to activate the fan 7410 .
- step 7456 the system 14 b determines whether the fan is operational. If the fan 7410 is not operational (i.e., the fan motor 7412 is inoperative), then in step 7458 , the system 14 b determines whether any retries remain for transmitting an activation command to the fan 7410 . If no retries remain, then in step 7462 , the system 14 b transmits an error message and the process ends. If at least one retry remains, then the system 14 b transmits a command to activate the fan 7410 in step 7460 . If the fan 7410 is operational (i.e., the fan motor 7412 is operative), then the system 14 b measures the venting system exhaust pressure via the differential pressure sensor 7414 in step 7464 .
- the system 14 b determines whether the measured venting system differential exhaust pressure is greater than a predetermined minimum pressure threshold.
- a minimum venting system differential exhaust pressure should be present when the fan 7410 is operational. For example, if the fan 7410 is operational but the measured venting system differential exhaust pressure is less than a predetermined minimum pressure threshold, then the vent 7406 or the vent pipes 7408 may be damaged and/or disconnected.
- the system 14 b transmits a diagnostic message indicative of a problem with the venting of the system 14 b when the measured venting system differential exhaust pressure is not greater than the predetermined minimum pressure threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., vent 7406 and/or vent pipes 7408 disconnected), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7470 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or the increase of exhaust gas within the heater 7400 and the process ends.
- the system 14 b determines that the measured venting system differential exhaust pressure is greater than the predetermined minimum pressure threshold, the process proceeds to step 7472 .
- step 7472 the system 14 b determines whether the measured venting system differential exhaust pressure is less than a predetermined maximum pressure threshold.
- a venting system differential exhaust pressure maximum threshold can be used to detect a blockage of the vent 7406 and/or the vent pipes 7408 .
- the system 14 b transmits a diagnostic message indicative of a problem with the venting of the system 14 b when the system 14 b determines that the measured venting system differential exhaust pressure is not less than the predetermined maximum pressure threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., vent 7406 and/or vent pipes 7408 blocked), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7476 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or the increase of exhaust gas within the heater 7400 and the process ends.
- the process proceeds to step 7478 .
- step 7478 the system 14 b retrieves the last recorded measured venting system differential exhaust pressure and in step 7480 , the system 14 b calculates a difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure.
- the last recorded measured venting system differential exhaust pressure can be stored in the memory 23 or the cloud.
- An increase in the venting system differential exhaust pressure over time can be indicative of a blockage forming (e.g., an animal nest) within the vent 7406 and/or the vent pipes 7408 .
- step 7482 the system 14 b determines whether the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure is less than the last recorded calculated difference. If the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure is less than the last recorded calculated difference, then in step 7484 , the system 14 b records the measured venting system differential exhaust pressure as the last recorded measured venting system differential exhaust pressure. Additionally, in step 7486 , the system 14 b records the calculated difference as the last recorded calculated difference. Then, in step 7488 , the system 14 b continues the operation of the heater 7400 .
- step 7490 the system 14 b determines whether the calculated difference exceeds the last recorded calculated difference by a predetermined threshold. In particular, the system 14 b determines whether the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure exceeds the last recorded calculated difference by a predetermined “high” pressure threshold.
- the system 14 b transmits a diagnostic message indicative of a problem with the venting of the system 14 b when the calculated difference exceeds the last recorded calculated difference by the predetermined “high” pressure threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., unsafe pressure level), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7496 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or the increase of exhaust gas within the heater 7400 and the process ends.
- the system 14 b continues the operation of the heater 7400 in step 7496 when the calculated difference does not exceed the last recorded calculated difference by the predetermined “high” pressure threshold.
- FIGS. 74 C- 74 D are flowcharts illustrating processing steps carried out by the heating/cooling system 14 b of FIG. 73 for detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b , indicated generally at method 7451 . More specifically, the heating/cooling system 14 b can detect changes and/or problems in the performance of the venting of the heating/cooling system 14 b by using the one or more temperature sensors 7415 shown in FIG. 73 to monitor the temperature profile of the water inlet 7404 a , water outlet 7404 b , and vent pipe 7408 .
- the system can detect changes and/or problems in the performance of the venting of the heating/cooling system 14 b using steps similar to those discussed in connection with method 7450 , except for the distinctions noted herein. According to some embodiments of the present disclosure, the foregoing processing steps can also be executed by the heating/cooling system 14 b in connection with the “economy” and/or “adaptive” modes of the system described herein.
- the system 14 b receives a command to heat the water in the pool or spa and ignites and fires the heater 7400 .
- a user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 of FIG. 1 ) or via a display of the heating/cooling system 14 b to instruct the heating system 14 b to heat the water in the pool or spa.
- the system 14 b may transmit the command due to a predetermined condition.
- a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature.
- the activation command can also be a command to cool the water in a pool or spa.
- step 7455 the system 14 b receives a command to activate the fan 7410 .
- step 7457 the system 14 b determines whether the fan is operational. If the fan 7410 is not operational (i.e., the fan motor 7412 is inoperative), then in step 7459 , the system 14 b determines whether any retries remain for transmitting an activation command to the fan 7410 . If no retries remain, then in step 7463 , the system 14 b transmits an error message and the process ends. If at least one retry remains, then the system 14 b transmits a command to activate the fan 7410 in step 7461 . If the fan 7410 is operational (i.e., the fan motor 7412 is operative), then the system 14 b measures the temperature profile of the heating/cooling system 14 b via the one or more temperature sensors 7415 in step 7465 .
- step 7467 the system 14 b determines whether the measured temperature profile is greater than a predetermined minimum temperature profile threshold.
- a minimum temperature profile should be present when the fan 7410 is operational. For example, if the fan 7410 is operational but the measured temperature profile is less than a predetermined minimum temperature profile, then the vent 7406 or the vent pipes 7408 may be damaged and/or disconnected.
- the system 14 b transmits a diagnostic message indicative of a problem with the system 14 b when the measured temperature profile is not greater than the predetermined minimum temperature profile threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., vent 7406 and/or vent pipes 7408 disconnected), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7471 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or the increase of temperature within the heater 7400 and the process ends.
- the process proceeds to step 7473 .
- step 7473 the system 14 b determines whether the measured temperature profile is less than a predetermined maximum temperature profile threshold.
- a temperature profile maximum threshold can be used to detect a blockage of the vent 7406 and/or the vent pipes 7408 .
- the system 14 b transmits a diagnostic message indicative of a problem with the venting of the system 14 b when the system 14 b determines that the measured temperature profile is not less than the predetermined maximum temperature profile threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., vent 7406 and/or vent pipes 7408 blocked), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7477 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or the increase of temperature within the heater 7400 and the process ends.
- the process proceeds to step 7479 .
- step 7479 the system 14 b retrieves the last recorded measured temperature profile and in step 7481 , the system 14 b calculates a difference between the measured temperature profile and the last recorded measured temperature profile.
- the last recorded measured temperature profile can be stored in the memory 23 or the cloud.
- An increase in the temperature profile over time can be indicative of a blockage forming (e.g., an animal nest) within the vent 7406 and/or the vent pipes 7408 .
- step 7483 the system 14 b determines whether the calculated difference between the measured temperature profile and the last recorded measured temperature profile is less than the last recorded calculated difference. If the calculated difference between the measured temperature profile and the last recorded measured temperature profile is less than the last recorded calculated difference, then in step 7485 , the system 14 b records the measured temperature profile as the last recorded measured temperature profile. Additionally, in step 7487 , the system 14 b records the calculated difference as the last recorded calculated difference. Then, in step 7489 , the system 14 b continues the operation of the heater 7400 .
- step 7491 the system 14 b determines whether the calculated difference exceeds the last recorded calculated difference by a predetermined threshold. In particular, the system 14 b determines whether the calculated difference between the measured temperature profile and the last recorded measured temperature profile exceeds the last recorded calculated difference by a predetermined “high” temperature profile threshold.
- the system 14 b transmits a diagnostic message indicative of a problem with the venting of the system 14 b when the calculated difference exceeds the last recorded calculated difference by the predetermined “high” temperature profile threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., unsafe temperature level), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7495 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or the increase of temperature within the heater 7400 and the process ends.
- the system 14 b continues the operation of the heater 7400 in step 7497 when the calculated difference does not exceed the last recorded calculated difference by the predetermined “high” temperature profile threshold.
- FIG. 75 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b of FIG. 1 for detecting the proper function of a fan motor of the heating/cooling system 14 b based on a measurement of the electric current of the fan motor.
- a pool heater of a heating/cooling system comprises a fan driven by an electric motor to move air through the heating/cooling system.
- a fan driven by an electric motor to move air through the heating/cooling system.
- air is moved through the burner and combustion system by a centrifugal fan (i.e., a blower) whereas in a heat pump pool heater, air is moved through the heat exchanger by an axial fan.
- the electric current flowing to the motors of these fans can be used to detect and diagnose a problem with the pool heater.
- a pressure switch can confirm whether the blower is functioning before the gas valve is opened and ignition is started by measuring the small vacuum generated by the blower.
- the heating/cooling system 14 b provides for detecting the proper function of a fan motor of the heating/cooling system 14 b based on a measurement of the electric current of the fan motor at a given speed (e.g., RPM) via a current sensor and thereby obviating a need for a pressure switch. As shown in FIG.
- the heating/cooling system 14 b could include a heater 7400 having a water inlet pipe 7404 a , a water outlet pipe 7404 b , a heat exchanger 7402 , a vent 7406 , vent pipes 7408 , a fan 7410 having a fan motor 7412 , a current sensor 7416 and a network communication and local control subsystem 12 b (“control subsystem 12 b ”) including, but not limited to, a processor 22 and a memory 23 .
- the control subsystem 12 b could be a hardware processor including a controller in communication with the memory 23 and the current sensor 7416 .
- the water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means.
- the water passes through the heater 7400 and into the heat exchanger 7402 .
- the water outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa.
- the current sensor 7416 measures the electric current of the fan motor 7412 .
- the speed (e.g., RPM) of the fan motor can be provided to the processor 22 , either directly (e.g., by way of a communication channel, or the like, therebetween), or via an intermediate rotational speed sensor (not shown), for example, coupled to the output shaft of the motor 7412 .
- the heating/cooling system 14 b provides for detecting the proper function of the fan motor 7412 of the heating/cooling system 14 b based on a measurement of the electric current of the fan motor 7412 at a given speed (e.g., RPM), via the current sensor 7416 , and by defining a plurality of predetermined current thresholds.
- a given speed e.g., RPM
- the control subsystem 12 b could include a processor 22 in communication with a memory 23 including at least one of a random-access memory 24 and a non-volatile memory 30 .
- the processor 22 provides local processing capability for the control subsystem 12 b .
- the non-volatile memory 30 can store one or more local control programs 30 for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor 22 is in communication with the current sensor 7416 of the heater 7400 . It is noted that the current sensor 7416 could sense an alternating current input or a direct current input.
- the current sensor 7416 can be connected to and in communication with the heating/cooling system 14 b and the control subsystem 12 b via a wired or a wireless connection.
- the processor 22 may detect changes and/or problems in the performance of the fan motor 7412 and control the operation of the heating/cooling system 14 b based on a measurement of the current of the motor 7412 relative to a plurality of predetermined current thresholds. It is noted that the control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b . The components of the control subsystem 12 b are discussed in more detail above in regards to FIG. 2 .
- FIG. 76 is a flowchart illustrating processing steps carried out by the heating/cooling system 14 b of FIG. 75 for detecting the proper function of the fan motor 7412 of the heating/cooling system 14 b based on the measurement of the electric current of the fan motor 7412 via the current sensor 7416 , indicated generally at method 7500 .
- the system 14 b receives a command to heat the water in the pool or spa and ignites and fires the heater 7400 .
- a user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 of FIG. 1 ) or via a display of the heating/cooling system 14 b to instruct the heating system 14 b to heat the water in the pool or spa.
- the system 14 b may transmit the command due to a predetermined condition.
- a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature.
- the activation command can also be a command to cool the water in a pool or spa.
- step 7504 the system 14 b receives a command to activate the fan 7410 . Then, in step 7506 , the system 14 b determines whether the fan is operational. If the fan 7410 is not operational (i.e., the fan motor 7412 is inoperative), then in step 7508 , the system 14 b determines whether any retries remain for transmitting an activation command to the fan 7410 . If no retries remain, then in step 7510 , the system 14 b transmits an error message and the process ends. If at least one retry remains, then the system 14 b transmits a command to activate the fan 7410 in step 7510 .
- the system 14 b measures the current of the fan motor 7412 via the current sensor 7416 .
- the system 14 b can measure the speed (e.g., RPM) of the fan motor 7412 .
- the system 14 b determines whether the measured fan motor current is greater than a predetermined minimum current threshold.
- the system 14 b can determine whether the measured fan motor current is greater than a predetermined minimum current threshold at a given speed of the fan motor. For example, the current of the fan motor can vary, depending on the speed at which the fan motor is operating.
- the system 14 b can account for variations in operating speed when determining if the fan motor current is operating within current thresholds.
- a minimum fan motor current should be present when the fan 7410 and fan motor 7412 are operative. For example, if the system 14 b receives a command to activate the fan 7410 but the measured fan motor current is not greater than the predetermined minimum current threshold, then the fan motor 7412 may be improperly wired.
- the system 14 b transmits a diagnostic message indicative of a problem with the fan motor 7412 when the measured fan motor current is not greater than the predetermined minimum current threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., fan motor open circuit), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and the process ends.
- the process proceeds to step 7522 .
- step 7522 the system 14 b determines whether the measured fan motor current is less than a predetermined maximum current threshold.
- a fan motor maximum current threshold can detect whether the fan motor 7412 is damaged.
- the system 14 b transmits a diagnostic message indicative of a problem with the fan motor 7412 of the system 14 b when the system 14 b determines that the measured fan motor current is not less than the predetermined maximum current threshold.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., fan motor 7412 damaged), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- step 7528 the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and/or further damage to the fan motor 7412 and the process ends.
- the system 14 b determines that the measured fan motor current is less than the predetermined maximum current threshold, the system 14 b continues the operation of the heater 7400 in step 7524 .
- FIG. 77 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b of FIG. 1 for ensuring sufficient water flow for proper function of a pool heater by measuring water flow rate via a flow sensor embedded within the pool heater.
- a pool heater of a heating/cooling system commonly utilizes a pressure switch to measure the water flow rate and detect if a filter pump is operative. As such, the pool heater can be protected from damage incurred by heating water when the water flow rate is too low. However, pressure switches do not measure water flow rate directly and as such, can incorrectly indicate the water flow rate resulting in damage to the pool heater.
- the ability to accurately measure the water flow rate via a flow sensor allows for the advanced functionality of and enhanced diagnostics regarding the operation of pool heater and/or a heating/cooling system. As such, the heating/cooling system 14 b provides for ensuring sufficient water flow for proper function of a pool heater by measuring water flow rate via a flow sensor embedded within the pool heater.
- the heating/cooling system 14 can define at least one predetermined water flow rate threshold which allows for protecting a pool heater from the damage incurred by heating water when the water flow rate is too low. Additionally, the heating/cooling system 14 b provides a user with enhanced diagnostics regarding the operation of a pool heater and/or a heating/cooling system.
- the heating/cooling system 14 b could include a heater 7400 having a water inlet pipe 7404 a , a water outlet pipe 7404 b , a heat exchanger 7402 , a flow sensor 7418 , a pressure sensor 7419 , and a network communication and local control subsystem 12 b (“control subsystem 12 b ”) including, but not limited to, a processor 22 and a memory 23 .
- control subsystem 12 b could be a hardware processor including a controller in communication with the memory 23 , the flow sensor 7418 , and/or the pressure sensor 7419 .
- the water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means.
- the water passes through the heater 7400 and into the heat exchanger 7402 .
- the water outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa.
- the flow sensor 7418 measures the water flow rate of the water within the inlet pipe 7404 a .
- a pressure sensor 7419 can measure a pressure differential between the water inlet pipe 7404 a and the water outlet pipe 7404 b .
- the heating/cooling system 14 b provides for defining at least one predetermined minimum water flow rate, or pressure differential, threshold which allows for protecting the heater 7400 from the damage incurred by heating water when the water flow rate, or pressure, is too low.
- the control subsystem 12 b could include a processor 22 in communication with a memory 23 including at least one of a random-access memory 24 and a non-volatile memory 30 .
- the processor 22 provides local processing capability for the control subsystem 12 b .
- the non-volatile memory 30 can store one or more local control programs 30 for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor 22 is in communication with the flow sensor 7418 and/or pressure sensor 7419 of the heater 7400 . It is noted that the flow sensor 7418 can be a paddle-wheel flow sensor wherein water flow causes the rotation of a paddle wheel which generates an electrical pulse signal whose frequency is proportional to the water flow rate.
- the flow sensor 7418 can also be of a type other than a paddle-wheel and can be a combination device comprising a flow sensor and a water temperature sensor.
- the flow sensor 7418 can be connected to and in communication with the heating/cooling system 14 b and the control subsystem 12 b via a wired or a wireless connection.
- the processor 22 may detect changes and/or problems in the performance of the heater 7400 and control the operation of the heating/cooling system 14 b based on a measured water flow rate via the flow sensor 7418 relative to at least one predetermined minimum flow rate threshold.
- the processor 22 can also detect changes and/or problems in the performance of the heater 7400 and control the operation of the heating/cooling system 14 b based on a measured pressure differential between the water inlet 7404 a and the water outlet 7404 b via the pressure sensor 7419 relative to at least one predetermined maximum pressure differential threshold.
- the control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b . The components of the control subsystem 12 b are discussed in more detail above in regards to FIG. 2 .
- FIG. 78 is a flowchart illustrating the processing steps carried out by the heating/cooling system 14 b of FIG. 77 for ensuring sufficient water flow for proper function of the heater 7400 by measuring the water flow rate via the flow sensor 7418 embedded within the heater 7400 , indicated generally at method 7550 .
- the system 14 b receives a command to heat the water in the pool or spa and ignites and fires the heater 7400 .
- a user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 of FIG. 1 ) or via a display of the heating/cooling system 14 b to instruct the heating system 14 b to heat the water in the pool or spa.
- the system 14 b may transmit the command due to a predetermined condition.
- a predetermined condition For example, a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature.
- the activation command can also be a command to cool the water in a pool or spa.
- step 7554 the system 14 b retrieves the minimum flow rate setpoint data for operation of the heater 7400 .
- the setpoint data can be stored in the memory 23 of the heating/cooling system 14 b or in the cloud.
- step 7556 the system 14 b measures the flow rate of the water within the water inlet pipe 7404 a via the flow sensor 7418 .
- step 7558 the system 14 b determines whether the measured flow rate is greater than the minimum flow rate setpoint data threshold. If the system determines that the measured flow rate is greater than the minimum flow rate setpoint data threshold, then the system 14 b continues operation of the heater 7400 in step 7560 . This allows smaller BTU heaters to function at lower water flow rates while still requiring larger BTU heaters to have higher water flow rates.
- step 7562 the system 14 b determines whether any retries remain for transmitting a command to measure the flow rate via the flow sensor 7418 . If at least one retry remains, the system 14 b transmits a command to measure the flow rate of the water within the water inlet pipe 7404 a via the flow sensor 7418 . However, if no retries remain, then in step 7564 , the system 14 b transmits a diagnostic message indicating insufficient water flow for proper function of the heater 7400 .
- the heating/cooling system 14 b provides a user with enhanced diagnostic messages regarding the operation of the heater 7400 and/or the heating/cooling system 14 b based on the measured flow rate via the flow sensor 7418 .
- the flow sensor 7418 provides the ability to distinguish the difference between a water flow rate that is zero (e.g., a water flow rate indicating that the filter pump is OFF) and a water flow rate that is low (e.g., a water flow rate indicating that the filter pump in ON but that the water flow is too low).
- the heating/cooling system 14 b can transmit messages to other network connected pool or spa equipment such as “more flow needed” or “turn pump on so water temperature can be checked” to ensure sufficient water flow for proper function the heater 7400 .
- the system 14 b can transmit the measured water flow rate to other network connected equipment such as a pool or spa automation system.
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., insufficient water flow rate), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and the process ends.
- the heating/cooling system 14 b can ensure sufficient water flow for proper function of the heater 7400 by measuring the water flow rate via the differential pressure sensor 7419 embedded within the heater 7400 .
- the system can retrieve a maximum differential pressure setpoint for heater operation.
- the system measures the differential pressure between the water inlet and outlet pipes.
- the system determines if the measured differential pressure is greater than the maximum differential pressure setpoint. If a positive determination is made in step 7559 , the system proceeds to step 7562 , as described herein. If a negative determination is made in step 7559 , the system proceeds to step 7560 and continues operation of the heater.
- FIG. 79 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b of FIG. 1 for ensuring sufficient gas pressure for proper function of a heater by measuring gas pressure via a pressure sensor embedded within the heater.
- a gas-fired pool heater requires a minimum gas pressure supplied by a gas utility to function properly. If the pool heater has insufficient gas pressure, then the pool heater can fail to ignite, ignite harshly or exhibit a buildup of soot in the pool heater due to improper fuel/air mixture. Therefore, a pool heater of a heating/cooling system is commonly equipped with a test port that a technician can use to connect a pressure gauge and test for gas pressure.
- gas pressure can vary over time and as such, a point measurement made by a technician may not be representative of the gas pressure at the time of an ignition failure. Therefore, diagnosing a problem with the pool heater pertaining to insufficient gas pressure can be difficult.
- the ability to accurately measure gas pressure via a pressure sensor allows for advanced functionality of and enhanced diagnostics regarding the operation of a pool heater and/or a heating/cooling system.
- the heating/cooling system 14 b can accurately diagnose a failed ignition due to low gas pressure and can also prevent harsh ignitions and the buildup of soot by monitoring gas pressure.
- the heating/cooling system 14 b can provide a user with enhanced diagnostic messages regarding the operation of a pool heater and/or the heating/cooling system 14 b.
- the heating/cooling system 14 b could include a heater 7400 having a water inlet pipe 7404 a , a water outlet pipe 7404 b , a heat exchanger 7402 , an orifice 7420 , a valve 7422 , a gas line 7424 , a pressure sensor 7426 and a network communication and local control subsystem 12 b (“control subsystem 12 b ”) including, but not limited to, a processor 22 and a memory 23 .
- the control subsystem 12 b could be a hardware processor including a controller in communication with the memory 23 and the pressure sensor 7426 .
- the water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means.
- the water passes through the heater 7400 and into the heat exchanger 7402 .
- the water outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa.
- the pressure sensor 7426 measures the gas pressure within the gas line 7424 . Gas enters the heater 7400 via the gas line 7424 and valve 7422 . The gas is ignited and provides heat through the orifice 7420 .
- the heating/cooling system 14 b provides for ensuring sufficient gas pressure for proper function of the heater 7400 by measuring gas pressure within the gas line 7424 via the pressure sensor 7424 . Additionally, the heating cooling system 14 b provides a user with enhanced diagnostic messages regarding the operation of the heater 7400 and/or the heating/cooling system 14 b.
- the control subsystem 12 b could include a processor 22 in communication with a memory 23 including at least one of a random-access memory 24 and a non-volatile memory 30 .
- the processor 22 provides local processing capability for the control subsystem 12 b .
- the non-volatile memory 30 can store one or more local control programs 30 for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor 22 is in communication with the pressure sensor 7426 of the heater 7400 .
- the pressure sensor 7426 may also be referred to as a pressure transducer, a pressure transmitter, a pressure indicator, a piezometer and a manometer and could be one of an absolute pressure sensor, a gauge pressure sensor, a vacuum pressure sensor, a differential pressure sensor, a sealed pressure sensor or any other type of pressure sensing device.
- the pressure sensor 7426 can be connected to and in communication with the heating/cooling system 14 b and the control subsystem 12 b via a wired or a wireless connection.
- the processor 22 may detect changes and/or problems in the performance of the heater 7400 and control the operation of the heating/cooling system 14 b based on a measured gas pressure within the gas line 7424 via the pressure sensor 7426 relative to at least one predetermined minimum gas pressure threshold. It is noted that the control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b . The components of the control subsystem 12 b are discussed in more detail above in regards to FIG. 2 .
- FIG. 80 is a flowchart illustrating the processing steps carried out by the heating/cooling system 14 b of FIG. 79 for ensuring sufficient gas pressure for proper function of the heater 7400 by measuring gas pressure within the gas line 7424 via the pressure sensor 7424 embedded within the heater 7400 , indicated generally at method 7570 .
- the system 14 b receives a command to heat the water in the pool or spa and ignites and fires the heater 7400 .
- a user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 of FIG. 1 ) or via a display of the heating/cooling system 14 b to instruct the heating system 14 b to heat the water in the pool or spa.
- the system 14 b may transmit the command due to a predetermined condition.
- a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature.
- the activation command can also be a command to cool the water in a pool or spa.
- step 7574 the system 14 b retrieves the minimum gas pressure setpoint data for the operation of the heater 7400 .
- the data can be stored in the memory 23 of the heating/cooling system 14 b or in the cloud.
- step 7576 the system 14 b measures the gas pressure of the gas within the gas line 7424 via the pressure sensor 7426 .
- step 7578 the system 14 b determines whether the measured gas pressure is greater than the minimum gas pressure setpoint data threshold. If the system determines that the measured gas pressure is greater than the minimum gas pressure setpoint data threshold, then the system 14 b continues operation of the heater 7400 in step 7580 .
- step 7582 the process proceeds to step 7582 .
- step 7582 the system 14 b determines whether any retries remain for transmitting a command to measure the gas pressure within the gas line 7424 via the pressure sensor 7426 . If at least one retry remains, then the system 14 b transmits a command to measure the gas pressure within the gas line 7424 via the pressure sensor 7426 . However, if no retries remain, then in step 7584 , the system 14 b transmits a diagnostic message indicating insufficient gas pressure for the proper function of the heater 7400 .
- the heating/cooling system 14 b provides a user with enhanced diagnostic messages regarding the operation of the heater 7400 and/or the heating/cooling system 14 b based on the measured gas pressure within the gas line 7424 via the pressure sensor 7426 .
- the pressure sensor 7426 provides the ability to distinguish the difference between a gas pressure that is zero (e.g., a gas pressure indicating that the gas line is CLOSED) and a gas pressure that is low (e.g., a gas pressure indicating that the gas line is OPEN but that the gas pressure is too low).
- the diagnostic message can be a report, an alert, etc.
- the diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the diagnostic message can include, but is not limited to, a summary of the problem (e.g., insufficient gas pressure), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command.
- the system 14 b stops the operation of the heater 7400 to prevent potential damage to the heater 7400 and the process ends.
- FIG. 81 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b of FIG. 1 for setting various threshold limits with respect to energy consumption via a graphic user interface of the heating/cooling system 14 b and receiving alerts when energy consumption exceeds the set various threshold limits.
- a heater generally consumes a large amount of energy to heat a pool and/or spa. Therefore, a user of a pool and/or spa may only heat the pool and/or spa when necessary. However, a user may inadvertently forget to turn the heater off after using the pool and/or spa or a third party (e.g., a house guest) may heat the pool and/or spa when the user is away from the pool and/or spa resulting in unexpectedly high energy consumption and utility bills.
- the ability to configure a heater of a heating/cooling system to set various threshold limits with respect to energy consumption via a graphic user interface and to receive alerts when energy consumption exceeds the set various threshold limits allows for responsible use of the heater and minimizing the operation costs thereof.
- the heating/cooling system 14 b could include a heater 7400 having a water inlet pipe 7404 a , a water outlet pipe 7404 b , a heat exchanger 7402 , a graphic user interface 7428 , a timing circuit 7430 and a network communication and local control subsystem 12 b (“control subsystem 12 b ”) including, but not limited to, a processor 22 and a memory 23 .
- control subsystem 12 b could be a hardware processor including a controller in communication with the memory 23 , the graphic user interface 7428 and the timing circuit 7430 .
- the water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means.
- the water passes through the heater 7400 and into the heat exchanger 7402 .
- the water outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa.
- the graphic user interface 7428 allows a user to configure the heater 7400 of the heating/cooling system 14 b by setting various threshold limits with respect to energy consumption.
- the heating/cooling system 14 b controls an operation of the heater 7400 based on the inputs to the graphic user interface 7428 and the timing circuit 7430 logic. Additionally, the heating/cooling system 14 b provides the user with alerts when energy consumption exceeds the set various threshold limits.
- the control subsystem 12 b could include a processor 22 in communication with a memory 23 including at least one of a random-access memory 24 and a non-volatile memory 30 .
- the processor 22 provides local processing capability for the control subsystem 12 b .
- the non-volatile memory 30 can store one or more local control programs 30 for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor 22 is in communication with the graphic user interface 7428 and the timing circuit 7430 of the heater 7400 . It is noted that the control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b . The components of the control subsystem 12 b are discussed in more detail above in regards to FIG. 2 .
- FIGS. 82 - 83 are user interface screens 7600 and 7630 generated by the heating/cooling system 14 b of FIG. 81 .
- the interface screen 7600 allows a user to configure the settings of the heater 7400 .
- input fields 7602 , 7606 , 7610 and 7614 allow the user to set a temperature of the pool or spa for either a gas heater or a heat pump.
- input fields 7604 , 7608 , 7612 and 7616 allow the user to set a total run time of the gas heater or the heat pump.
- the heating/cooling system 14 b can also allow the user to restrict the function of the heater 7400 under certain conditions.
- the heating/cooling system 14 b can include one or more “adaptive” or “economy” modes, which the user can select, configure, and/or enable using one or more interface screens (not shown) generated by the heating/cooling system 14 b and displayed on the graphical user interface 7428 .
- the “adaptive” or “economy” modes can minimize energy consumption while maintaining user comfort by automatically lowering the temperature setpoint of the pool or spa (thereby reducing energy demand on the heater 14 b ) when the ambient outdoor temperature is warmer and by automatically raising the temperature setpoint of the pool or spa when the ambient outdoor temperature is colder.
- the temperature setpoint can be modified continuously based on a current temperature differential (e.g., the difference between the current ambient temperature and a user specified water temperature) or the temperature setpoint can be modified once the current ambient temperature crosses one or more predetermined thresholds.
- a current temperature differential e.g., the difference between the current ambient temperature and a user specified water temperature
- the “adaptive” or “economy” modes can increase the efficiency of the heater 14 b by 2% or more.
- the interface screen 7630 allows a user to configure the heater 7400 to receive an alert when energy consumption exceeds set threshold limits under certain conditions.
- input field 7632 allows the user to receive an alert when a gas heater runs for more than a set number of total hours in a day.
- input fields 7634 , 7636 and 7638 , 7640 respectively allow the user to receive an alert when the pool temperature is set higher than a temperature threshold for more than a particular number of days in a row for the gas heater and when the spa temperature is set higher than a temperature threshold for more than a particular number of hours in a day for the gas heater.
- input fields 7642 , 7644 , 7646 , 7648 and 7650 allow the user to receive alerts when energy consumption exceeds set threshold limits under certain conditions for the heat pump.
- input field 7642 allows the user to receive an alert when the heat pump runs for more than a set number of total hours in a day.
- input fields 7644 , 7646 and 7648 , 7650 respectively allow the user to receive an alert when the pool temperature is set higher than a temperature threshold for more than a particular number of days in a row for the heat pump and when the spa temperature is set higher than a temperature threshold for more than a particular number of hours in a day for the heat pump.
- the alert can be a notification and can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20 .
- the alert can include, but is not limited to, an energy consumption report, an estimated utility bill and/or an override command.
- FIG. 84 is a block diagram 7770 illustrating a component schematic capable of being implemented in an embodiment of the heating/cooling system 14 b of FIG. 1 for detecting electrical short circuits and resetting circuit protection.
- a pool heater utilizes various switching devices to detect the proper function thereof.
- a pool heater can use a bimetal switch to protect against over-temperature conditions, an air pressure switch to ensure a fan is functioning properly, a water pressure switch to ensure a water pump is functioning properly, etc.
- a control system of the pool heater passes an amount of current through these switches to check their operational state (i.e., the control system polls a status of the switches).
- polling the status of these switches in this manner is problematic because a ground short on the wires thereof can damage the control system, a transformer and/or a fuse of the pool heater.
- an embodiment of the heating/cooling system 14 b implements a method of polling the status of switching and/or sensing devices to detect electrical shorts and reset circuit protection by using at least one polymeric positive temperature coefficient (PPTC) embedding within a heater.
- a PPTC device is a resettable fuse and is positioned between a control module (e.g., a processor) and a switching or sensing device.
- the PPTC 7434 a is positioned between the processor 22 and an air pressure switch 7436 and the PPTC device 7434 b is positioned between the processor 22 and a water pressure switch 7438 .
- the PPTC devices 7434 a and 7434 b may be directly coupled to the processor 22 or indirectly coupled to the processor 22 via a Vbus 7432 . As such, the heating/cooling system 14 b can accurately detect a problem causing high current while simultaneously protecting itself from damage. Once the detected electrical short is removed or the defective switching or sensing device is removed, normal operation of the heating/cooling system 14 b can resume.
- FIG. 85 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b of FIG. 1 for enabling the simplified setup of replacement components via a removable memory module storing configuration data of a heater of the heating/cooling system 14 b.
- Pool heater control systems have advanced such that it is necessary to incorporate more setting and configuration data and values into the control system to ensure the proper function of the pool heater.
- Settings such as the pool heater model number, the serial number, the BTU output, the minimum ambient temperature, the minimum water flow rate, etc. are set by the manufacturer when the pool heater is manufactured.
- other settings such as a user's favorite temperature settings, preset run durations, temperature unit, maximum allowed temperature settings, pool size, etc. are set in the field when the pool heater is installed. All of these settings must be manually re-entered if it becomes necessary to replace a faulty circuit board of the pool heater.
- a memory module in a service replacement circuit board is specially coded to indicate that it has never been configured for a specific pool heater. Therefore, after being powered ON for the first time, a user is prompted to enter the setting and configuration data and values for the pool heater to ensure that the pool heater functions properly.
- the heating/cooling system 14 b enables the simplified setup of a replacement circuit board via a removable memory module storing configuration data of a heater of the heating/cooling system 14 b .
- the heating/cooling system 14 b could include a heater 7400 having a water inlet pipe 7404 a , a water outlet pipe 7404 b , a heat exchanger 7402 , a portable memory module 7440 and a network communication and local control subsystem 12 b (“control subsystem 12 b ”) including, but not limited to, a processor 22 and a memory 23 .
- the control subsystem 12 b could be a hardware processor including a controller in communication with the memory 23 and the portable memory module 7440 .
- the water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means.
- the water passes through the heater 7400 and into the heat exchanger 7402 .
- the water outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa.
- the portable memory module 7440 plugs into a circuit board of the heating/cooling system 14 b (not shown) and stores the configuration data of the heater 7400 of the heating/cooling system 14 b.
- the control subsystem 12 b could include a processor 22 in communication with a memory 23 including at least one of a random-access memory 24 and a non-volatile memory 30 .
- the processor 22 provides local processing capability for the control subsystem 12 b .
- the non-volatile memory 30 can store one or more local control programs 30 for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor 22 is in communication with the portable memory module 7440 of the heater 7400 .
- the portable memory module 7440 can be connected to and in communication with the heating/cooling system 14 b and the control subsystem 12 b via a wired or a wireless connection.
- the portable memory module 7440 can instantly configure the replacement circuit board by being removed from the circuit board and plugged into the replacement circuit board. Additionally, the portable memory module 7740 can be used to store diagnostic event history, enabling the history to stay with the heater 7400 when the replacement circuit board is installed.
- control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b .
- the components of the control subsystem 12 b are discussed in more detail above in regards to FIG. 2 .
- FIGS. 73 - 85 illustrate components of embodiments of the heating/cooling system 14 b of FIG. 1 and processing steps carried out by the embodiments of the heating/cooling system 14 b .
- FIG. 1 illustrates the overall system of the present disclosure, indicated generally at 10 .
- the system 10 includes, but is not limited to, a plurality of network communication and local control subsystems 12 a - h which could be installed in or connected to a plurality of pool and spa equipment 14 a - h , so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a - h .
- the pool and spa equipment could include, but is not limited to, a pump 14 a , the heating/cooling system 14 b , a sanitization system 14 c , a water feature/miscellaneous subsystem 14 d , a valve actuator/valve position 14 e , a pool/spa control system 14 f , a cleaner 14 g and a lighting system 14 h.
- control subsystems 12 a - 12 h could communicate with each other over a network 16 , which could include, but is not limited to, the Internet.
- the control subsystems 12 a - 12 h provide “Internet-of-Things” functionality for the plurality of pool and spa equipment 14 a - 14 h . It is noted that control subsystems 12 a - 12 h could further include a “big data” subsystem, subsystems for receiving input from manufacturers/factories, subsystems for receiving external data/input (e.g., data from the Internet), and subsystems for receiving input from customers.
- control subsystems 12 a - 12 h could include control logic for allowing each of the pool and spa equipment 14 a - 14 h to interact with each other (e.g., to exchange data and commands for controlling each other), as well as to be remotely controlled by another system such as a remote server, a “cloud” based control system, a remote computer system, a smart device (e.g., smart phone, smart speaker, smart chip embedded in the body), etc., and combinations thereof.
- the heating/cooling system 14 b may also describe, or be described as, a heater, a cooling system, cooler, or any combination thereof.
- Each of the pool and spa equipment 14 a - 14 h can further include a display, such as a touchscreen, a screen with a touchpad, etc.
- control subsystems 12 a - 12 h could also communicate with one or more servers 18 , and/or with one or more smart devices 20 (e.g., a phone, a tablet, a computer system, etc.), via the network 16 .
- an on-site control processor 19 could be in communication with the various systems shown in FIG. 1 .
- the on-site control processor 19 could be a pool/spa control system installed at the location of a pool or spa, a reduced-functionality pool/spa control system, or another type of control system.
- systems and methods are discussed with reference to a swimming pool and/or a spa.
- systems and methods of the present disclosure can be used with any body of liquid, including but not limited to, bathtubs, water tanks, etc.
- the system and methods will be discussed below with reference to a heating system.
- the systems and methods of the present disclosure can also be used with a cooling system or a heating/cooling system. As such, examples and embodiments for cooling systems will also be described below.
- FIG. 86 is a diagram illustrating components of the heating system 14 b of FIG. 1 of the present disclosure.
- the heating system 14 b includes an inlet pipe 7812 , an outlet pipe 7814 , an inlet temperature sensor 7816 , an outlet temperature sensor 7818 , a network communication and local control subsystem 12 b (“control subsystem 12 b ”), described in connection with FIGS. 1 and 2 , and a heater 7822 .
- the inlet pipe 7812 transports water from the pool/spa into the heating system 14 b via, for example, a water pump or other means.
- the inlet temperature sensor 7816 measures the temperature of the water before the water enters the heater 7822 .
- the outlet pipe 7814 transports water out from the heater 7822 to, for example, the pool or spa.
- the outlet temperature sensor 7818 measures the temperature of the water after the water leaves the heater 7822 .
- the inlet temperature sensor 7816 and the outlet temperature sensor 7818 can be one or more of a negative temperature coefficient thermistor, a resistance temperature detector, a thermocouple, a semiconductor-based sensor, a thermometer, or any other type of temperature sensing device.
- the inlet temperature sensor 7816 and the outlet temperature sensor 7818 can be connected to and in communication with the heater 7822 and the control subsystem 12 b via a wired or a wireless connection.
- inlet temperature sensor 7816 can be positioned anywhere along the inlet pipe 7812 , the heater 7822 , a pump, or along other inlet components.
- outlet temperature sensor 7818 can be positioned anywhere along the outlet pipe 7814 , the heater 7822 or along other outlet components.
- the control subsystem 12 b could include a processor in communication with a memory including at least one of a random-access memory and a non-volatile memory.
- the processor provides local processing capability for the control subsystem 12 b .
- the non-volatile memory can store one or more local control programs for providing local control of the pool and spa equipment in which the control subsystem 12 b is installed.
- the processor is in communication with the inlet temperature sensor 7816 , outlet temperature sensor 7818 , and the heater 7822 .
- the processor can detect changes in the performance of the heating system 14 b and control the operation of the heating system 14 b based on a calculated difference between temperature measurements taken by the inlet temperature sensor 7816 and the outlet temperature sensor 7818 . It is noted that the control subsystem 12 b can be affixed to, installed within, or located remotely from the heater 7822 . The components of the control subsystem 12 b are discussed in more detail in regards to FIGS. 1 and 2 .
- the heating system 14 b can further include a display, such as a touchscreen, a screen with a touchpad, etc.
- the display can be affixed to, installed within or installed remotely from the heater 7822 .
- the display can receive user input via, for example, the touch screen, a keyboard, a remote or wireless signal, etc.
- the display can further show diagnostic issues, messages, instructions, etc.
- FIG. 87 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting an improperly installed heating system, indicated generally at method 7830 .
- the system receives a temperature command.
- the temperature command can be an instruction to heat the water in the pool or spa.
- a user sends the temperature command by using a smart device (e.g., smart phone), or using a display and/or control buttons on the heating system 14 b to instruct the heater 7822 to heat the pool.
- the system transmits the temperature command due to a predetermined condition.
- the user can set a condition instructing the heater 7822 to activate (e.g., engage heating functions) at a predetermined time, at a predetermined temperature, etc.
- a condition instructing the heater 7822 to activate e.g., engage heating functions
- the temperature command can also be an instruction to cool the water in the pool or spa.
- the system measures the inlet water temperature and the outlet water temperature via the inlet temperature sensor 7816 and the outlet temperature sensor 7818 , respectively.
- the system measures the inlet water temperature and the outlet water temperature upon receiving the temperature command.
- the system measures the inlet water temperature and the outlet water temperature upon a predetermined amount of time after receiving the temperature command. The predetermined amount of time can allow for the heating system 14 b to enter a proper operational state, such as a heat exchanger of the heater 7822 heating to an optimal level.
- step 7836 the system determines whether the inlet water temperature is greater than the outlet water temperature.
- the system proceeds to step 7838 and generates and transmits a diagnostic report.
- the diagnostic report can be a report, a message, an alert, etc.
- the diagnostic report is transmitted to and displayed by the display of the heating system 14 b or the smart device.
- the diagnostic report can include a report of the issue (e.g., incorrect piping installation), instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc.
- the system proceeds to step 7840 and executes the temperature command (e.g., activates the heating system 14 b ).
- step 7836 can include the system determining whether the inlet water temperature is less than the outlet water temperature. When the inlet temperature is less than the outlet temperature in view of an instruction to cool the system, in step 7838 , transmits a diagnostic report. Otherwise, when the inlet temperature is not less than the outlet temperature in view of an instruction to cool, the system executes the temperature command (e.g., activates the cooling system) in step 7840 .
- the temperature command e.g., activates the cooling system
- FIG. 88 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting a low water flow rate through the heating system 14 b based on measurements of inlet and outlet water temperatures, indicated generally at method 7850 .
- the system determines that the heater 7822 is activated.
- the system waits a predetermined amount of time. For example, the system can wait 15 seconds. This waiting period allows the heater 7822 to achieve a suitable flow stabilization. Those skilled in the art would understand that other time periods can also be used and that different heating systems can require different durations to achieve the suitable flow stabilization.
- the system calculates a temperature rise. For example, the control system 12 b performs a first temperature measurement at the inlet pipe 7812 , a second temperature measurement at the outlet pipe 7814 , and subtracts the inlet temperature from the outlet temperature to determine the temperature rise.
- the system determines a maximum allowed temperature value for the heating system 14 b .
- the system can use a lookup table.
- the lookup table can include heating system types, BTU/joule size, piping sizes, capacity, a maximum allowed temperature rise value for each type/size, etc.
- the lookup table can be stored in the system, on the Internet (in the cloud), on a remote server, etc.
- the system determines whether the value of the measured temperature rise is greater than the value of the maximum allowed temperature rise. When the value of the measured temperature rise is greater than the value of the maximum allowed temperature rise, the system proceeds to step 7862 , and generates and transmits a diagnostic report, and shuts down the heater.
- the diagnostic report can include a report of the issue (e.g., low flow rate), instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc.
- a report of the issue e.g., low flow rate
- instructions detailing how to fix the issue e.g., an option to schedule a repair specialist, an override command, etc.
- method 7860 can be similarly applied to a cooling system, where a temperature drop value is calculated and compared to a lookup table including a maximum allowed temperature drop.
- the processing steps discussed above in connection with FIGS. 87 - 88 could be carried out remote from the heater, e.g., in one or more of the devices shown in FIG. 1 .
- the system 10 includes, but is not limited to, a plurality of network communication and local control subsystems 12 a - 12 h (including the control subsystem 12 b ) which could be installed in or connected to a plurality of pool and spa equipment 14 a - 14 h (including the heating system 14 b ), so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a - 14 h .
- the subsystems 12 a - 12 h (including the control subsystem 12 b ) are described in greater detail in connection with FIG. 2 .
- the subsystems 12 a - 12 h could communicate with each other over the network 16 , which could include, but is not limited to, the Internet.
- the subsystems 12 a - 12 h provide “Internet-of-Things” functionality for the plurality of pool and spa equipment 14 a - 14 h . It is noted that subsystems 12 a - 12 h could further include a “big data” subsystem, subsystems for receiving input from manufacturers/factories, subsystems for receiving external data/input (e.g., data from the Internet), and subsystems for receiving input from customers.
- the subsystems 12 a - 12 h could include control logic for allowing each of the devices 14 a - 14 h to interact with each other (e.g., to exchange data and commands for controlling each other), as well as to be remotely controlled by another system such as a remote server, a “cloud” based control system, a remote computer system, a smart device (e.g., smart phone, smart speaker, smart chip embedded in the body), etc., and combinations thereof as will be discussed in greater detail below.
- the subsystems 12 a - 12 h could be programmed to carry out the processes discussed above in connection with FIGS. 87 and 88 .
- FIG. 3 is a diagram illustrating various types of control logic in accordance with the present disclosure, for controlling various types of pool and spa equipment
- the control logic indicated generally as pool control logic 70
- the control logic 70 could be embodied as programmed instructions (software code) stored on a non-transitory computer-readable medium, and could include pump control logic 84 and heater control logic 80 , which could also include the process steps discussed herein in connection with FIGS. 87 and 88 .
- Such logic could be installed locally (e.g., in one or more of the subsystems 12 a - 12 h ), on a remote server or computer system (e.g., in the server 18 or the smart phone/computer system 20 ), in the “cloud,” or in any combination of such systems shown in FIG. 1 .
- FIG. 89 is a diagram illustrating components of another heater system 7914 b of the present disclosure.
- the system 7914 b includes an inlet pipe 8012 , an outlet pipe 8014 , an inlet temperature sensor 8016 , an outlet temperature sensor 8018 , a network communication and local control subsystem 7912 b (“control subsystem 7912 b ”), a heater 8022 , an ambient air temperature sensor 8024 , and a refrigerant temperature sensor 8026 .
- the inlet pipe 8012 transports water from the pool/spa into the heating system 7914 b via, for example, a water pump or other means.
- the inlet temperature sensor 8016 measures the temperature of the water before the water enters the heater 8022 .
- the outlet pipe 8014 transports water out from the heater 8022 to, for example, the pool or spa.
- the outlet temperature sensor 8018 measures the temperature of the water after the water leaves the heater 8022 .
- the inlet temperature sensor 8016 , the outlet temperature sensor 8018 , the ambient air temperature sensor 8024 , and the refrigerant temperature sensor 8026 can be one of a negative temperature coefficient thermistor, a resistance temperature detector, a thermocouple, a semiconductor-based sensor, a thermometer, or any other type of temperature sensing device.
- the temperature sensors 8016 , 8018 , 8024 , and 8026 can be connected to and in communication with the heater 8022 and the control subsystem 7912 b via a wired or a wireless connection. It should be understood that the temperature sensors 8016 , 8018 , 8024 , and 8026 can be positioned anywhere along the inlet pipe 8012 , the outlet pipe 8014 , the heater 8022 , a pump, or along other components.
- the control subsystem 7912 b can be similar to control subsystem 12 b described herein and could include a processor in communication with a memory including at least one of a random-access memory and a non-volatile memory.
- the processor provides local processing capability for the control subsystem 7912 b .
- the non-volatile memory can store one or more local control programs for providing local control of the pool and spa equipment in which the control subsystem 7912 b is installed.
- the processor is in communication with the temperature sensors 8016 , 8018 , 8024 , and 8026 , and the heater 8022 .
- the processor can detect changes in the performance of the heating system 7914 b and control the operation of the heating system 7914 b based on a calculated difference between a temperature measurement of the inlet temperature sensor 8016 and the outlet temperature sensor 8018 , a comparison of a temperature measurement of the ambient air temperature sensor 8024 and a threshold value, and a comparison of a temperature measurement of the refrigerant temperature sensor 8026 and a threshold value.
- the control subsystem 7912 b can be affixed to, installed within or installed remotely from the heater 8022 .
- the components of the control subsystem 7912 b as part of the subsystems 12 a - 12 h , are discussed in more detail above in regards to FIG. 2 .
- the heating system 7914 b can further include a display, such as a touchscreen, a screen with a touchpad, etc.
- the display can be affixed to, installed within or installed remotely from the heater 8022 .
- the display can receive user input via, for example, the touch screen, a keyboard, a remote or wireless signal, etc.
- the display can further show diagnostic issues, messages, instructions, etc.
- FIG. 90 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting frosting conditions in the heater 8022 , indicated generally at method 8030 .
- the system determines an ambient air temperature.
- the system uses the ambient air temperature sensor 224 to measure the ambient air temperature.
- the system 7914 b determines a refrigerant temperature.
- the system uses the refrigerant temperature sensor 8026 to measure the refrigerant temperature.
- the system determines whether the refrigerant temperature is less than a refrigerant temperature threshold.
- the refrigerant temperature threshold can be preset by a manufacture, a supplier, a user, or any other party.
- the refrigerant temperature threshold can be modified, either remotely or locally.
- the refrigerant temperature threshold can be modified via wireless software update (e.g., remotely) or the user can modify the refrigerant temperature threshold using the display of the heating system 7914 b (e.g., locally).
- the refrigerant temperature threshold can be modified in response to, refrigerant pressure, refrigerant type, or any other factors affecting the refrigerant.
- the system proceeds to step 8038 and determines whether the ambient temperature is less than an ambient temperature threshold.
- the ambient temperature threshold can also be preset by the manufacture, the supplier, the user, or any other party, and can also be modified, either remotely or locally. Those skilled in the art would understand that the ambient temperature threshold can be modified in response to, atmospheric pressure, sea level, humidity, or any other factors.
- the system executes a defrost cycle.
- the defrost cycle can include either deactivating the heating system 200 and allowing a heat exchanger of the heater 8022 to thaw out due to ambient air temperatures, secondary heaters, etc., or engaging a refrigerant reversing valve to heat a heat exchanger surface to thaw out the heat exchanger.
- the system can further send an alert or notification indicating that the heating system 7914 b has been deactivated and the defrost cycle has been activated.
- the alert or notification can be set to a user's smart device, to the display of the heating system 7914 b , etc.
- the system proceeds to step 8042 , deactivates the heating system, and transmits a diagnostic report.
- the diagnostic report can be a report, a message, an alert, etc.
- the diagnostic report can include a report of the issue, instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc.
- FIG. 91 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting and correcting a stuck reversing valve in a refrigeration system of the heating system 7914 b , indicated generally at method 8050 .
- the system determines whether the heating system 7914 b is in a heating mode or in a cooling mode.
- the system measures the inlet water temperature and the outlet water temperature via the inlet temperature sensor 8016 and the outlet temperature sensor 8018 , respectively.
- the system determines whether the reversing valve is stuck.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Fluid Mechanics (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Public Health (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Power Engineering (AREA)
- Architecture (AREA)
- Life Sciences & Earth Sciences (AREA)
- Civil Engineering (AREA)
- Veterinary Medicine (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Water Supply & Treatment (AREA)
- Animal Behavior & Ethology (AREA)
- General Engineering & Computer Science (AREA)
- Structural Engineering (AREA)
- Rehabilitation Therapy (AREA)
- Physical Education & Sports Medicine (AREA)
- Pain & Pain Management (AREA)
- Epidemiology (AREA)
- Selective Calling Equipment (AREA)
- Heat-Pump Type And Storage Water Heaters (AREA)
- Air Conditioning Control Device (AREA)
Abstract
Description
- The present application is a continuation of, and claims priority to, U.S. patent application Ser. No. 16/905,661 filed on Jun. 18, 2020, which claims the benefit of U.S. Provisional Application No. 62/862,982 filed on Jun. 18, 2019 and is a continuation-in-part of U.S. patent application Ser. No. 15/957,482 filed on Apr. 19, 2018, which is a continuation-in-part of U.S. patent application Ser. No. 15/886,576 filed on Feb. 1, 2018, which is a continuation-in-part of U.S. patent application Ser. No. 15/886,171 filed on Feb. 1, 2018, which is a continuation-in-part of U.S. patent application Ser. No. 15/413,199 filed on Jan. 23, 2017, which claims the benefit of U.S. Provisional Application No. 62/286,272 filed on Jan. 22, 2016, U.S. Provisional Application No. 62/310,510 filed on Mar. 18, 2016, U.S. Provisional Application No. 62/381,903 filed on Aug. 31, 2016, U.S. Provisional Application No. 62/412,504 filed on Oct. 25, 2016, and U.S. Provisional Application No. 62/414,545 filed on Oct. 28, 2016. The present application is also a continuation-in-part of, and claims priority to, U.S. patent application Ser. No. 15/957,482 filed on Apr. 19, 2018, which is a continuation-in-part of U.S. patent application Ser. No. 15/886,576 filed on Feb. 1, 2018, which is a continuation-in-part of U.S. patent application Ser. No. 15/886,171 filed on Feb. 1, 2018, which is a continuation-in-part of U.S. patent application Ser. No. 15/413,199 filed on Jan. 23, 2017, which claims the benefit of U.S. Provisional Application No. 62/286,272 filed on Jan. 22, 2016, U.S. Provisional Application No. 62/310,510 filed on Mar. 18, 2016, U.S. Provisional Application No. 62/381,903 filed on Aug. 31, 2016, U.S. Provisional Application No. 62/412,504 filed on Oct. 25, 2016, and U.S. Provisional Application No. 62/414,545 filed on Oct. 28, 2016. The present application is also a continuation-in-part of, and claims priority to, U.S. patent application Ser. No. 15/413,199 filed on Jan. 23, 2017, which claims the benefit of U.S. Provisional Application No. 62/286,272 filed on Jan. 22, 2016, U.S. Provisional Application No. 62/310,510 filed on Mar. 18, 2016, U.S. Provisional Application No. 62/381,903 filed on Aug. 31, 2016, U.S. Provisional Application No. 62/412,504 filed on Oct. 25, 2016, and U.S. Provisional Application No. 62/414,545 filed on Oct. 28, 2016. The entire disclosures of the aforementioned applications are all expressly incorporated by reference herein.
- The present disclosure relates to systems and methods for providing network connectivity and remote monitoring, optimization and control of pool/spa equipment.
- Swimming pool equipment is conventionally controlled by an electronic pool controller at an equipment pad. Power is supplied from the controller and electrical subpanel to the pool equipment through an electrical conduit (e.g., hardwire). Alternatively, swimming pool equipment can be controlled by electrical circuit breakers in a subpanel at an equipment pad. Power is supplied from the subpanel to the pool equipment through an electrical conduit (e.g., hardwire). Without an electronic pool controller, any time-based control is typically an electro-mechanical clock wired in series between the subpanel and the pool equipment, thereby breaking one or both legs of the power supply to the pool equipment. To monitor or maintain conditions of pool equipment, the pool, pool water, or the pool environment, sensors or other data collection means typically reside at the equipment pad or the pool.
- Remote control of the pool and related equipment typically requires hard-wired communication between the pool controller (at the pad) and pool equipment, as well as wired or wireless communication between the pool controller and user interface. More recent remote control systems feature communication between the controller at the pad and a cloud server (e.g., via a home router), as well as communication between the user interface and the cloud server by cell or WiFi router.
- Adding control features to an existing pool and equipment pad is typically costly because of the required electrical competence necessary to install new conduits to provide power from the subpanel to the controller, and from the controller to the pool equipment. Further, pool monitoring and maintenance can be confusing and time consuming for pool owners, which often leads to the employment of pool servicers. The lack of connectivity and subsequent lack of understanding of the status and condition of the pool and pool equipment requires costly and sometimes unnecessary visits by pool professionals.
- In the pool and spa field, heating systems are commonly used to control water temperature. Such systems generally have one or more inlet pipes for receiving water to be heated, and one or more outlet pipes for delivering heated water from the heating system back to the pool/spa. While heating systems are commonly installed and used in pool and spa environments, there are a variety of problems that can arise in connection with the installation and operation of such devices.
- For example, in some instances, the piping to and from the heating system can be incorrectly installed (e.g., in a reverse fashion). This causes the water flowing from the pump to incorrectly enter the heating system's “outlet.” As a result, a variety of problems can occur, such as the inlet water temperature sensor reading the temperature of the water after being heated, and incorrectly concluding that the water has reached the desired temperature. This leads to the heating system repeatedly experiencing a short cycle. Backward water flow also renders other safety sensors and pressure-activated bypass loops ineffective. Further, such an improper installation scenario can be difficult to diagnose in the field.
- It is also important to ensure that proper flow rates are maintained by pool and spa heating systems during operation. Heating systems commonly use pressure switches to measure water pressure and detect if the filter pump is running. This is a way of protecting the heating system from damage due to heating when the water flow is too low. However, pressure switches do not measure water flow rate directly, and can incorrectly indicate water flow. This can lead to damaged or destroyed heating systems.
- Still further, pool and spa heating systems that utilize heat pumps can also be susceptible to a variety of malfunctions. As the outdoor air flows across the heat exchanger, heat is transferred from the air into the refrigerant flowing inside the heat exchanger. This results in the air being cooled as it passes through the heat exchanger. As the air is cooled below its dew point, water separates from the air, and moisture accumulates on the heat exchanger. This water typically drains off of the heat exchanger without harm to the heat exchanger. However, if the heat exchanger surface temperature is below the freezing point of water, the moisture can freeze. This is a common issue with heat pumps of all types, not just pool heating systems.
- Another potential malfunction of heat exchangers relates to frost conditions. Typically, heat pumps are equipped with a control system that detects the frosting conditions in the heat exchanger and automatically executes a defrost cycle. Defrost cycles typically involve either deactivating the heat pump and allowing the heat exchanger to thaw out due to ambient air temperatures, or engaging a refrigerant reversing valve to heat the heat exchanger surface to thaw out the heat exchanger. A temperature sensor is usually attached to a refrigerant tube near the heat exchanger. The temperature sensor is used to measure the refrigerant temperature and identify if a defrost cycle is necessary. The duration of the defrost cycle might be a fixed time period, can continue until the measured refrigerant temperature is above a preset threshold, or a combination of both.
- The aforementioned approach presents a problem because refrigerant temperatures can drop and cause frosting due to malfunctions of the pool heater. Some of these malfunctions include a low refrigerant pressure, a low air flow across the heat exchanger, and a reduced heat transfer caused by buildup of dirt or other debris on the heat exchanger. These malfunctions can cause the low temperature condition, and be incorrectly treated as a “normal” amount of frost that can be remedied by executing a defrost cycle. In addition, refrigerant reversing valves in pool heating systems can be used to allow the user to either heat or cool the swimming pool, and they can be actuated in response to an automatically-executed defrosting routine. These reversing valves are actuated by a solenoid, and can sometimes be stuck in one position or the other.
- Accordingly, what is needed is a system and method to provide pool owners and pool servicers with enhanced control of, and connectivity between, pool equipment devices, which detects and diagnoses improper installation and malfunction conditions in the equipment devices, and which reduces hardware and/or installation costs.
- The present disclosure relates to systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment. “Internet-of-Things” functionality is provided for pool and spa equipment in a flexible and cost-effective manner, in various embodiments. For example, in one embodiment, network connectivity and remote monitoring/control of pool and spa equipment is provided by a network communication and local control subsystem installed in pool/spa equipment. In another embodiment, network connectivity and remote monitoring/control of pool and spa equipment is provided by a pool/spa system controller interconnected with pool/spa equipment operating in conjunction with local and/or remote pool/spa control logic. In another embodiment, network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a pool “hub” interconnected with pool/spa equipment operating in conjunction with remote pool/spa control logic. In yet another embodiment, network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a pool “translator” interconnected with pool/spa equipment operating in conjunction with local and/or remote pool/spa control logic. In still another embodiment, network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a plurality of pool connectivity modules that communicate with pool/spa equipment, operating in conjunction with remote pool/spa control logic. In a further embodiment, network connectivity and remote monitoring and control of pool and spa equipment is provided by way of wireless communications provided directly in the pool/spa equipment and operating in conjunction with remote pool/spa control logic. In yet another embodiment, network connectivity and remote monitoring and control of pool and spa equipment is provided by way of a reduced-size “hub” interconnected with pool/spa equipment operating in conjunction with remote pool/spa control logic. In still another embodiment, network connectivity and remote monitoring and control of pool and spa equipment is provided by way of pool/spa chlorination system and controller that is interconnected with pool/spa equipment operating in conjunction with remote pool/spa control logic. Also disclosed are various control processes (“pool logic”) which can be embodied as software code installed in any of the various embodiments of the present disclosure.
- Communication between devices, the controller, the router, the cloud, and/or the user interfaces can use a number of technologies, where each technology could provide an advantage in cost or reliability for each communication segment. Data for managing the pool and pool equipment (e.g., relating to wind, time, temperature, humidity to manage heating, water features, skimmer operation, approaching storms, sunrise, sunset, etc.) could be gathered from the cloud, in addition to or instead of data gathered through sensors and datacom cables at the pool or pad. Sensors dedicated to specific pool equipment (e.g., pressure sensors, flow sensors or temp sensors in the heater used to manage pump speed, control valve positions, etc.) could share data with the controller to manage other pool equipment (e.g., to optimize performance), rather than requiring dedicated sensors for each device. Smart switches could be installed between an existing conduit and the subpanel or device by a user (e.g., pool owner or pool professional), because installation of a new hard conduit is unnecessary (reducing the need for an electrician), or smart switches could be integrated into pool or spa equipment. For example, a heater with an integrated smart switch could act as a hub for connectivity to the home router.
- In still further embodiments, the system of the present disclosure provides a modular relay, a wiring hub, and/or a control module that can be conveniently installed near pool/spa equipment, and which provides Internet-enabled remote control and connectivity of pool/spa components without requiring installation of complete (e.g., pad-mounted) pool/spa system controller. Conveniently, the modular relay, wiring hub, and/or control module allow owners of existing pool/spa equipment who do not currently own a pool/spa control system to enjoy the benefits of such a control system without requiring the installation, equipment, and expense associated with conventional pool/spa control systems.
- In still further embodiments, the system of the present disclosure provides advanced heating and cooling functionality and enhanced diagnostics for pool/spa equipment via a plurality of sensors that can be conveniently installed near or within pool/spa equipment, and which provides Internet-enabled remote control and connectivity of pool/spa components.
- In other embodiments of the present disclosure, systems and methods are provided for detecting and diagnosing improper installation and malfunction conditions in pool and spa heating systems. In one embodiment, the system includes a first temperature sensor which measures a first temperature of water entering the heating system and a second temperature sensor which measures a second temperature of water exiting the heating system. The system further includes a control subsystem in communication with the first and second sensors, capable of determining whether the first temperature is greater than the second temperature. When the first temperature is greater than the second temperature, the control subsystem generates a diagnostic report that indicates that the heating system has been improperly installed.
- In another embodiment, the systems and methods of the present disclosure detect low water flow rates through a heating system based on measurements of inlet and outlet water temperatures. The system includes a first temperature sensor which measures a first temperature of water entering the heating system and a second temperature sensor measuring a second temperature of water exiting the heating system. The system also includes a control subsystem in communication with the first and seconds temperature sensors, capable of determining a temperature rise by measuring a difference between the first temperature and the second temperature. The control subsystem further determines a maximum allowed temperature rise value for the heating system and whether the temperature rise is greater than the maximum allowed temperature rise. When the temperature rise is greater than the maximum allowed temperature rise, the system generates a diagnostic report indicating that the heating system has a low water flow rate.
- In still another embodiment, the systems and methods of the present disclosure can detect and diagnose a stuck reversing valve in a refrigeration system of pool and spa heating systems. The system includes a first temperature sensor measuring an ambient air temperature and a second temperature sensor measuring a refrigerant temperature. The system further includes a control subsystem in communication with the heating system. The control subsystem is capable of determining when the refrigerant temperature is less than a refrigerant threshold and whether the ambient temperature is less than or greater than an ambient threshold. When the ambient temperature is greater than the ambient threshold, the control subsystem transmits a diagnostic report and deactivates the heating system. When the ambient temperature is less than the ambient threshold, the control subsystem executes a defrost cycle.
- In yet another embodiment, the systems and methods of the present disclosure can detect and correct a stuck reversing valve in a refrigeration system of a heating system. The system includes a first temperature sensor measuring a first temperature of water entering a heater and a second temperature sensor measuring a second temperature of water exiting the heater. The system further includes a control subsystem in communication with the heating system. The control subsystem is capable of determining whether the heating system is in a heating mode or a cooling mode and determining when a reversing value is stuck. The reversing valve is stuck in the heating mode when the second water temperature is lower than the first water temperature and the reversing valve is stuck in the cooling mode when the second water temperature is greater than the first water temperature. The control subsystem is further capable of cycling the reversing valve to unstick and enable the reversing valve to function properly.
- The foregoing features of the disclosure will be apparent from the following Detailed Description of the Invention, taken in connection with the accompanying drawings, in which:
-
FIG. 1 is a diagram illustrating the system of the present disclosure; -
FIG. 2 is a block diagram illustrating components of the subsystems ofFIG. 1 ; -
FIG. 3 is a diagram illustrating various types of control logic in accordance with the present disclosure; -
FIG. 4 is a diagram illustrating processing steps carried out by the system ofFIGS. 1-2 ; -
FIG. 5 is a diagram illustrating another embodiment of the present disclosure; -
FIG. 6 is a flowchart illustrating processing steps carried out by the system ofFIG. 5 ; -
FIG. 7 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIG. 8 is a flowchart illustrating processing steps carried out by the system ofFIG. 7 ; -
FIG. 9 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIG. 10 is a flowchart showing processing steps carried out by the system ofFIG. 9 ; -
FIG. 11 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIG. 12 is a diagram illustrating processing steps carried out by the system ofFIG. 11 ; -
FIG. 13 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIG. 14 is a flowchart illustrating processing steps carried out by the system ofFIG. 13 ; -
FIG. 15 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIGS. 16A-16B are diagram illustrating another embodiment of the system of the present disclosure; -
FIG. 17 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIG. 18 is a diagram illustrating the pump control logic ofFIG. 3 ; -
FIGS. 19A-19AU are flowcharts illustrating processing steps of the pump control logic ofFIG. 3 ; -
FIG. 20 is a diagram illustrating chemistry automation control logic ofFIG. 3 ; -
FIGS. 21A-21I are flowcharts illustrating processing steps of the chemistry automation control logic ofFIG. 3 ; -
FIG. 22 is a diagram illustrating the heater control logic ofFIG. 3 ; -
FIGS. 23A-23J are flowcharts illustrating processing steps of the heater control logic ofFIG. 3 ; -
FIG. 24 is a diagram illustrating the lighting control logic ofFIG. 3 ; -
FIGS. 25A-25AB are flowcharts illustrating processing steps of the lighting control logic ofFIG. 3 ; -
FIG. 26 is a diagram illustrating the pool cleaner control logic ofFIG. 3 ; -
FIGS. 27A-27O are flowcharts illustrating processing steps of the pool cleaner control logic ofFIG. 3 ; -
FIG. 28 is a diagram illustrating the valve actuator control logic ofFIG. 3 ; -
FIGS. 29A-29I are flowcharts illustrating processing steps of the valve actuator control logic ofFIG. 3 ; -
FIG. 30 is a diagram illustrating water feature control logic ofFIG. 3 ; -
FIGS. 31A-31F are flowcharts illustrating processing steps of the water feature control logic ofFIG. 3 ; -
FIG. 32 is a diagram illustrating pool control logic ofFIG. 3 ; -
FIGS. 33A-33AH are flowcharts illustrating processing steps of the pool control logic ofFIG. 3 ; -
FIGS. 34A-34J are diagrams illustrating another embodiment of the system of the present disclosure; -
FIG. 35 is a diagram illustrating another embodiment of the system of the present disclosure; -
FIGS. 36-40 are diagrams illustrating further embodiments of the system of the present disclosure; -
FIG. 41 is a flowchart illustrating an installation method in accordance with the present disclosure; -
FIGS. 42A-42I are diagrams illustrating the installation method ofFIG. 41 ; -
FIG. 43 is a diagram illustrating a recommendation system for recommending upgrades in pool/spa equipment; -
FIG. 44 is a flowchart illustrating processing steps carried out by the system ofFIG. 43 for recommending upgrades in pool/spa equipment; -
FIGS. 45-48 are user interface screens for generated by the recommendation system ofFIG. 43 . -
FIG. 49 is a diagram illustrating a monitoring and control system in accordance with the present disclosure; -
FIG. 50 is a diagram illustrating the system ofFIG. 49 ; -
FIG. 51 is a block diagram illustrating control logic of the system ofFIG. 49 ; -
FIG. 52 is a flowchart illustrating processing steps carried out by the system ofFIG. 49 ; -
FIG. 53 is a flowchart illustrating processing steps carried out by the system ofFIG. 49 ; -
FIGS. 54A and 54B are graphical illustrations of heater cycles of the system ofFIG. 49 ; -
FIG. 55 is a flowchart illustrating processing steps carried out by the system ofFIG. 49 ; -
FIG. 56 is a flowchart illustrating processing steps carried out by the system ofFIG. 49 ; -
FIG. 57 is a flowchart illustrating processing steps carried out by the system ofFIG. 49 ; -
FIGS. 58-68 are user interface screens generated by the system ofFIG. 49 ; -
FIG. 69 is a flowchart illustrating processing steps carried out by the system ofFIG. 49 ; -
FIG. 70 is a diagram illustrating a sensor hub of the system ofFIG. 49 ; -
FIGS. 71-72 are user interface screens generated by the system ofFIG. 49 ; -
FIG. 73 is a block diagram illustrating components of an embodiment of the heating/cooling system ofFIG. 1 ; -
FIGS. 74A-D are flowcharts illustrating processing steps carried out by the heating/cooling system ofFIG. 73 ; -
FIG. 75 is a block diagram illustrating components of an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 76 is a flowchart illustrating processing steps carried out by the heating/cooling system ofFIG. 75 ; -
FIG. 77 is a block diagram illustrating components of an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 78 is a flowchart illustrating processing steps carried out by the heating/cooling system ofFIG. 77 ; -
FIG. 79 is a block diagram illustrating components of an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 80 is a flowchart illustrating processing steps carried out by the heating/cooling system ofFIG. 79 ; -
FIG. 81 is a block diagram illustrating components of an embodiment of the heating/cooling system ofFIG. 1 ; -
FIGS. 82-83 are user interface screens generated by the heating/cooling system ofFIG. 81 ; -
FIG. 84 is a block diagram illustrating a component schematic capable of being implemented in an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 85 is a block diagram illustrating components of an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 86 is a diagram illustrating an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 87 is a flowchart illustrating process steps carried out by the embodiment of the system ofFIG. 86 for detecting an improperly installed heating system based on measurements of inlet and outlet water temperature; -
FIG. 88 is a flowchart illustrating process steps carried out by the embodiment of the system ofFIG. 86 for detecting a low water flow rate through a heating system based on measurements of inlet and outlet water temperature; -
FIG. 89 is an illustration showing an embodiment of the heating/cooling system ofFIG. 1 ; -
FIG. 90 is a flowchart illustrating process steps carried out by the embodiment of the system ofFIG. 89 for identifying frost conditions in a heating system; and -
FIG. 91 is a flowchart illustrating process steps carried out by the embodiment of the system ofFIG. 89 for detecting and correcting a stuck reversing valve in a refrigeration system of a heating system. - The present disclosure relates to systems and methods for providing network connectivity and remote monitoring, optimization and control of pool/spa equipment, as discussed in detail below in connection with
FIGS. 1-91 . -
FIG. 1 is a diagram illustrating thesystem 10 of the present disclosure. Thesystem 10 includes, but is not limited to, a plurality of network communication andlocal control subsystems 12 a-12 h which could be installed in or connected to a plurality of pool and spa equipment 14 a-14 h, so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a-14 h. Thesubsystems 12 a-12 h could communicate with each other over anetwork 16, which could include, but is not limited to, the Internet. Importantly, thesubsystems 12 a-12 h provide “Internet-of-Things” functionality for the plurality of pool and spa equipment 14 a-14 h. It is noted thatsubsystems 12 a-12 h could further include a “big data” subsystem, subsystems for receiving input from manufacturers/factories, subsystems for receiving external data/input (e.g., data from the Internet), and subsystems for receiving input from customers. As will be discussed in greater detail below, thesubsystems 12 a-12 h could include control logic for allowing each of the devices 14 a-14 h to interact with each other (e.g., to exchange data and commands for controlling each other), as well as to be remotely controlled by another system such as a remote server, a “cloud” based control system, a remote computer system, a smart device (e.g., smart phone, smart speaker, smart chip embedded in the body), etc., and combinations thereof as will be discussed in greater detail below. - As can be seen, the pool and spa equipment 14 a-14 h could include various types of pool and spa equipment, such as a
pump 14 a, a heating/cooling system 14 b, asanitization system 14 c, a water feature ormiscellaneous subsystem 14 d, avalve actuator 14 e, a pool/spa control system 14 f, a pool cleaner 14 g, and/or alighting system 14 h. It is noted that, as described herein, the heating/cooling system 14 b may also describe, or be described as, a heating system, heater, cooling system, cooler, or any combination thereof. Additionally, as can be seen inFIG. 1 , thesubsystems 12 a-12 h could also communicate with one ormore servers 18, and/or with one or more smart devices 20 (e.g., phone, tablet, computer systems, etc.), via thenetwork 16. Still further, an on-site control processor 19 could be in communication with the various systems shown inFIG. 1 . The on-site control processor 19 could be a pool/spa control system installed at the location of a pool or spa, a reduced-functionality pool/spa control system, or another type of control system. Examples of such systems will be described in detail below. -
FIG. 2 is a block diagram illustrating components of thesubsystems 12 a-12 h in greater detail. As can be seen, a variety of subsystem components could be provided for providing network connectivity for pool and spa equipment via a multitude of wired and wireless means. As noted above, thesubsystems 12 a-12 h could be installed in pool/spa equipment (e.g., within the physical housings of the equipment 14 a-14 h), or connected thereto, to provide network connectivity to each device. Advantageously, thesubsystems 12 a-12 h can be provided as “after-market” components that provide network connectivity and remote monitoring and control for pool/spa equipment that does not ordinarily include such connectivity. Importantly, thesubsystems 12 a-12 h allow for a wide variety of wired and wireless connections to the pool/spa equipment. For example, a smart telephone could directly connect with pool or spa equipment via a Bluetooth, WiFi, RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.), or satellite connection, via thesubsystems 12 a-12 h. Moreover, a home computer could connect to pool/spa equipment using a home WiFi network, via thesubsystems 12 a-12 h or by way of a wired Ethernet connection to the pool/spa equipment. Still further, a remote server or “cloud” platform could connect to the pool/spa equipment via thesubsystems 12 a-12 h, to allow for remote and/or web-based control. - A
processor 22 provides local processing capability for each of thesubsystems 12 a-12 h. Theprocessor 22 is in communication with arandom access memory 24, and one or morenon-volatile memories 28. Thenon-volatile memory 28 could store one or morelocal control programs 30 for providing local control of the pool or spa equipment in which the subsystem is installed. A TCP/IP stack 26 is provided for allowing each of the subsystems to obtain an Internet protocol address, and to provide Internet connectivity for each of the subsystems. Theprocessor 22 could communicate with awired communication subsystem 36, awireless communication subsystem 34, asensor interface subsystem 38, and anactuator interface subsystem 40 via abus 32. Thewired communication subsystem 36 could include anEthernet transceiver 42, and aserial transceiver 44. The serial transceiver could support one or more suitable serial communication protocols, such as RS-485, RS-232, USB, etc. Thewireless communication subsystem 34 could include aWiFi transceiver 46, a Bluetooth (or Bluetooth LE)transceiver 48, acellular data transceiver 50, asatellite transceiver 52, andinfrared transceiver 54, and a radiofrequency/RF mesh transceiver 56. Thecellular data transceiver 50 could support one or more cellular data communications protocols, such as 4G, LTE, 5G, etc. The radiofrequency/RF mesh transceiver 56 could support one or more RF mesh network protocols, such as ZWave, Zigbee, Thread, Weave, etc. Thesensor interface subsystem 38 could include analog connection interfaces, digital connection interfaces, and one or more analog-to-digital converters 58. Theactuator interface subsystem 40 could include analog connection interfaces, digital connection interfaces, and one or more digital-to-analog converters 60. The sensor interface subsystem allows the network communication and local control subsystem to obtain information from a wide variety of sensors associated with pool/spa equipment, as well as other types of sensors. Theactuator interface subsystem 40 allows the network communication and local control subsystem to control one or more pieces of pool/spa equipment connected to the subsystem. The wired andwireless communication subsystems -
FIG. 3 is a diagram illustrating various types of control logic in accordance with the present disclosure, for controlling various types of pool and spa equipment. The control logic, indicated generally aspool control logic 70, could be embodied as programmed instructions (software code) stored on a non-transitory computer-readable medium, and could include waterfeature control logic 72, valveactuator control logic 74,cleaner control logic 76,lighting control logic 78,heater control logic 80, chemistryautomation control logic 82, and pumpcontrol logic 84. Such logic could be installed locally (e.g., in one or more of thesubsystems 12 a-12 h), on a remote server or computer system (e.g., in theserver 18 or the smart phone/computer system 20), in the “cloud,” or in any combination of such systems. The functions provided by the logic 70-84 is described in greater detail below. As will be discussed in greater detail below the various logic operations disclosed herein (including the operational instruction disclosed herein) could be trigged by (e.g., receive and a signal from) various sensors and/or inputs to the system, as needed. Such inputs could be periodically monitored by thepool control logic 70 of thesystem 10. -
FIG. 4 is a diagram illustrating processing steps, indicated generally at 90, carried out by the system ofFIGS. 1-2 . It is noted that the term “IoT devices” (shown in the drawings) refers to pool/spa equipment having Internet-of-Things functionality provided in accordance with the present disclosure, such as the equipment 14 a-14 h ofFIG. 1 . Beginning instep 92, the system monitors IoT devices for incoming operational data. Instep 94, a decision is made as to whether incoming operational data has been received. If a negative determination has been made, control returns to step 92. Otherwise, step 96 occurs, wherein the system receives incoming operational data. Instep 98, the system processes instructions, operational data, and external data, discussed hereinbelow. Then, instep 100, the system optimizes operational set points. Instep 102, the system transmits setpoints to one or more devices (one or more of the pool/spa equipment 14 a-14 h) for use thereby. - In
step 104, the system also monitors for incoming instructions. A determination is made instep 105 as to whether an incoming instruction has been received. If a negative determination has been made, control returns to step 104. Otherwise, instep 106, the system receives one or more incoming instructions. Then, control proceeds to step 98, discussed above. Additionally, instep 107, the system also monitors for updated external data (e.g., web data). Instep 108, a decision has been made as to whether updated external data is available. If a negative determination has been made, control returns to step 107. Otherwise,step 109 occurs, wherein the system receives the updated external data. Then, control proceeds to step 98, discussed above. -
FIG. 5 is a diagram illustrating another embodiment of the present disclosure, indicated generally at 110. In this embodiment, network connectivity and remote monitoring/control of pool and spa components is provided by way of a central pool/spa system controller 114 f. The pool/spa system controller 114 f could be the OMNILOGIC pool/spa system controller manufactured and sold by Hayward Industries Inc. The pool/spa system controller 114 f could communicate with one ormore valve actuators 114 e, asingle speed pump 113, avariable speed pump 114 a, pool/spa lighting systems 114 h, a pool/spa heating orcooling system 114 b, and/or a pool/spa chlorination system 114 c, such as a salt chlorinator. Additionally, the pool/spa control system 114 f could receive input from one or moreexternal sensors 126 and could provide “personality” by way of remotely provisioned logic for the devices. The pool/spa control system 114 f communicates with a remote server, such as theserver 118, via aWiFi router 122 and the Internet. Theserver 118 could communicate with one or moreremote control systems 120, such as a smart device (e.g., smart phone, smart speaker, smart TV, embedded device), a computer system, a tablet computer, etc. Thecontrol system 114 f could also receiveexternal web data 131 via the Internet and WiFi router 122 (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use bypool control logic 170, described hereinbelow. Additionally, theWiFi router 122 could communicate with ahome management system 125 in a peer-to-peer arrangement, if desired. Theserver 118 could also accessbig data 127 and performanalytics 129 in connection with various types of information relating to the pool/spa equipment, usage thereof, and status information relating thereto. Further, theserver 118 communicate with one or more third-partysmart devices 124 via a suitable cloud application programming interface (API). The third-partysmart devices 124 could also remotely communicate with and control the pool/spa equipment shown inFIG. 5 . Additionally, the pool/spa control system 114 f could includepool logic 170 stored therein for allowing central control and monitoring of pool/spa equipment at the pool/spa site. Thepool logic 170 could include any of the various pool control logic described herein. Additionally,such logic 170 could also be stored in theserver 118, or at another location. -
FIG. 6 is a flowchart, indicated generally at 130, illustrating processing steps carried out by the system ofFIG. 5 . Instep 132, the pool/spa system controller 114 f ofFIG. 5 monitors connected devices for incoming operational data. Then, instep 134, a decision is made as to whether incoming operational data has been received. If not, control returns to step 132. Otherwise,step 136 occurs, wherein the pool/spa system controller receives incoming operational data. Then, instep 138, the pool/spa system controller 114 f processes instructions, operational data, and external data, discussed hereinbelow. Then, instep 140, the pool/spa system controller 114 f optimizes operational set points. Instep 142, the pool/spa system controller transmits set points to the connected devices, such as the pool/spa equipment FIG. 5 . Instep 144, the pool/spa system controller 114 f could also transmit such setpoint information to other devices, such as thesmart devices 124 illustrated inFIG. 5 . - In
step 150, the pool/spa system controller monitors for incoming instructions. Instep 152, a determination is made as to whether an incoming instruction has been received. If not, control returns to step 150. Otherwise,step 150 occurs, wherein the pool/spa system controller 114 f receives incoming instructions. Then, processing proceeds to step 138, discussed above. Instep 156, the pool/spa system controller 114 f monitors for updated external data (e.g., web-supplied data, such as weather information and other information from remote data sources). Instep 158, the system determines whether updated external data is available. If not, control returns to step 156. Otherwise step 160 occurs, wherein the pool/spa system controller receives the updated external data. Then, control proceeds to step 138, discussed above. -
FIG. 7 is a diagram illustrating another embodiment of the system of the present disclosure, wherein remote connectivity is provided by way of a pool “hub”component 230. Thepool hub component 230 includes a subset of the functional features of the pool/spa system controller 114 f ofFIG. 5 , such as basic on/off control relays, the ability to select a pump speed, the ability to select heater temperature, the ability to control pool light colors and shows, the ability to set equipment schedules, and the ability to interlock one pool/spa component with another pool/spa component. The pool hub communicates with and controls a number of pool/spa components, such as asingle speed pump 213, avariable speed pump 214 a, pool/spa lighting systems 214 h, a pool/spa heating system 214 b, and a pool/spa chlorination system 214 c. Additionally, thepool hub 230 can control avalve actuator 214 e and can receivevarious sensor inputs pool hub 230 could be powered by electrical current supplied by abreaker panel 217 or by photovoltaic (e.g., solar) cells and/or systems.Breaker panel 217 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. Thepool hub 230 could communicate with aremote server 218 via aWiFi router 222 and a network connection such as the Internet. The server to 218 could includepool logic 270 which can be used to remotely monitor and control operation of the devices to 213, 214 a, 214 h, 214 b, and 214 c. Thepool logic 270 could include any of the pool logic discussed herein. Additionally, theserver 218 could communicate with one or moreremote control devices 220, such as a smart cellular telephone, a remote computer, a tablet computer, etc. Theserver 218 could also receiveexternal web data 231 via the Internet (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use bypool logic 270. Further, theserver 218 could communicate with one or more third-party devices 224 via an appropriate cloud API. Further, theserver 218 could processbig data 232 and performanalytics 234 on various pool/spa data. Still further, theserver 218 could communicate with ahome management system 225, if desired. -
FIG. 8 is a flowchart illustrating processing steps, indicated generally at 240, carried out by the system ofFIG. 7 . Instep 242, thepool hub 230 monitors connected devices for incoming operational data. Instep 244, a determination is made as to whether an incoming operational data has been received. If not, control returns to step 242. Otherwise,step 246 occurs, wherein thepool hub 230 receives incoming operational data. Then, instep 248, thepool 230 transmits incoming instructions and operational data to theserver 218. Then, instep 250, theserver 218 receives the incoming instructions and operational data from thepool hub 230. Instep 252, theserver 218 processes the incoming instructions, operational data, and external data, discussed hereinbelow. Instep 254, theserver 218 optimizes operational set points. Then, instep 256, theserver 218 transmits operational setpoints to thepool hub 230. Instep 258, thepool hub 230 receives the operational set points. Then, instep 260, thepool hub 230 transmits the operational setpoints to the connected devices. Instep 262, thepool hub 230 optionally transmits the operational setpoints to one or more smart devices, such as the third-partysmart devices 224 ofFIG. 7 . - In
step 263, thepool hub 230 monitors smart devices for incoming operational data. Instep 265, a decision is made as to whether incoming operational data has been received. If not, control returns to step 263. Otherwise,step 246 occurs, where in the incoming operational data is received at thepool hub 230. Then, control passes to step 248, discussed above. - In
step 264, thepool hub 230 monitors for incoming instructions. Then, instep 266, a determination is made as to whether an incoming instruction has been received. If a negative determination has been made, control returns to step 264. Otherwise, step 268 occurs, wherein thepool hub 230 receives the incoming instructions. Then, control passes to step 248, discussed above. - In
step 272, theserver 218 monitors for updated external data, such as web-supplied data including weather data and other data. Instep 274, a determination is made as to whether updated external data is available. If not, control returns to step 272. Otherwise,step 276 occurs, wherein the updated external data is received at theserver 218. Then, control passes to step 252, discussed above. -
FIG. 9 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 310. In this embodiment, a pool command “translator”module 330 is provided, which includes a complete set ofpool logic 370. Thepool logic 370 could include any of the pool logic discussed herein. Thetranslator 330 could communicate with one or moreexternal relays 329. Additionally, thetranslator 330 could communicate with a plurality of pool/spa components, includingvalve actuators 314 e, asingle speed pump 313, avariable speed pump 314 a, pool/spa lighting systems 314 h, a pool/spa heating system 314 b, and a pool/spa chlorination system 314 c. Thetranslator 330 could receive electrical power from abreaker panel 317 or from photovoltaic (e.g., solar) cells and/or systems.Breaker panel 317 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. Additionally, thetranslator 330 could receive information from various sensors such asexternal sensors 326 andinternal sensors 328. Such sensors could include, but are not limited to, temperature sensors, wind speed sensors, runtime sensors, current/voltage usage sensors, flow sensors, heat pressure sensors, water temperature sensors, chlorine sensors, PH/ORP sensors, etc. Thetranslator 330 could also receiveexternal web data 331 via the Internet and WiFi router 322 (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use bypool logic 370. - The
translator 330 could communicate with theremote server 318 via aWiFi router 322 and a network connection such as the Internet. Theserver 318 could communicate with theremote control system 320, such as a smart cellular telephone, a remote computer, a tablet computer, etc. Additionally, theserver 318 could processbig data 332 and performanalytics 334 on pool/spa data, using a suitable API. Further, theserver 318 could communicate with one or more third-partysmart devices 324, using a suitable cloud API. Still further, theserver 318 could communicate with ahome management system 325, if desired. -
FIG. 10 is a flowchart showing processing steps, indicated generally at 340, carried out by the system ofFIG. 9 . Instep 342, thetranslator 330 monitors connected devices for incoming operational data. Instep 334, a decision is made as to whether incoming operational data has been received. If not, control returns to step 342. Otherwise,step 346 occurs, wherein thetranslator 330 receives the incoming operational data. Then, step 360 occurs, wherein the translator processes instructions, operational data, and external data, discussed hereinbelow. Instep 362, the translator optimizes operational set points. Then, instep 364, the translator transmits the setpoints to the connect devices (e.g., to thecomponents step 366, the translator could transmit the setpoints to one or more smart devices, such as the third-partysmart devices 324. - In
step 348, thetranslator 330 monitors smart devices for incoming operational data. Instep 350, a decision is made as to whether incoming operational data has been received. If not, control returns to step 348. Otherwise,step 352 occurs, wherein thetranslator 330 receives incoming operational data. Then, control passes to step 360, discussed above. - In
step 354, thetranslator 330 monitors for incoming instructions. Instep 356, a decision is made as to whether incoming instructions have been received. If not, control returns to step 354. Otherwise,step 358 occurs, wherein thetranslator 330 receives incoming instructions. Then, control passes to step 360, discussed above. - In
step 368, thetranslator 330 monitors for updated external data, such as web data. Such data could include, but is not limited to, remote weather data, etc. Instep 372, a decision is made as to whether updated external data is available. If not, control returns to step 368. Otherwise,step 374 occurs, wherein thetranslator 330 receives the updated external data. Then, control passes to step 360, discussed above. -
FIG. 11 is a diagram illustrating another embodiment of the system, indicated generally at 410. In this embodiment, remote connectivity is provided by way of a plurality of connectivity modules 430 a-430 e. Each of these modules could include a combination of high and/or low voltage relays for connection to various pool and spa equipment, such asvalve actuators 414 e, asingle speed pump 413, avariable speed pump 414 a, pool/spa lighting systems 414 h, pool/spa heating system 414 b, and/or pool/spa chlorination system 414C. Connectivity could be provided to the pool/spa equipment additionally using WiFi, Bluetooth, or RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.) connectivity. The connectivity modules could provide WiFi for every unit, could adapt for usage with legacy devices, could provide “personality” by way of remotely provisioned logic for the devices, could remember limp mode schedules during a WiFi outage, and could also include start/stop buttons and an LS bus gate way, if desired. The modules could be powered by abreaker panel 427 or by photovoltaic (e.g., solar) cells and/or systems.Breaker panel 427 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. Additionally, each of the modules could communicate with aremote server 418 by aWiFi router 422 and a network connection, such as the Internet. The pool/spa control logic 470 could be provided in theserver 418 for remotely controlling and monitoring the pool/spa equipment. Thepool logic 470 could include any of the pool logic discussed herein. Theserver 418 could also receiveexternal web data 431 via the Internet (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use bypool logic 470. Additionally, theserver 418 could communicate with one or moreremote control devices 420, such as a smart phone, a remote computer, a tablet computer, etc. Theserver 418 could accessbig data 432 and performanalytics 434 on pool/spa data, if desired. Additionally, theserver 418 could also communicate with one or more third-partysmart devices 424, via a suitable cloud API. Still further, theserver 418 could communicate with ahome management system 425, if desired. -
FIG. 12 is a diagram illustrating processing steps, indicated generally at 440, carried out by the system ofFIG. 11 . Instep 442, the pool connectivity modules 430 a-430 e monitor smart devices for incoming operational data. Instep 444, a determination is made as to whether incoming operational data has been received. If not, control returns to step 442. Otherwise,step 446 occurs, wherein the pool connectivity modules each receive the incoming operational data. Then, and step 448, the pool conductivity modules 430 a-430 e transmit operational data to theserver 418. Instep 450, the operational data is received at theserver 418. Instep 452, theserver 418 processes the incoming instructions, operational data, and external data, discussed hereinbelow. Then, instep 454, theserver 418 optimizes operational support. Instep 456, theserver 418 transmits the operational set points to the connected devices (e.g., to thedevices step 458, the server transmits operational set points for the smart devices to the pool connectivity modules 430 a-430 e. Instep 460, the pool conductivity modules 430 a-430 e receive the operational setpoints for the smart devices. Then, instep 462, the modules transmit the operational set points to the smart devices. - In
step 464, the server for 18 monitors connected devices for incoming operational data. Instep 466, a determination is made as to whether incoming operational data has been received. If not, control returns to step 464. Otherwise,step 450 occurs, wherein theserver 418 receives the operational data. Control then passes to step 452, discussed above. - In
step 468, theserver 418 monitors for incoming instructions. Instep 470, a determination is made as to whether the incoming instructions have been received. If not, control returns to step 468. Otherwise,step 472 occurs, wherein theserver 418 receives the incoming instructions. Then, control passes to step 452, discussed above. - In
step 474, theserver 418 monitors for updated external data, such as web data including, but not limited to, remote weather information, etc. Then, instep 476, a determination is made as to whether updated external data is available. If not, control passes to step 474. Otherwise,step 478 occurs, wherein the updated external data is received at theserver 418. Then, control passes to step 452, discussed above. -
FIG. 13 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 510. In this embodiment, wireless connectivity is provided directly within pool/spa equipment, allowing such equipment to communicate directly to the Internet. As shown, pool spa equipment, such as asingle speed pump 513, a variable speed pump 5148, pool/spa lighting system 514 h,heater 514 b, and/orchlorinator 514 c, in addition tovalve actuators 514 e, each have built-in wireless communications subsystems, such as WiFi, Bluetooth, radiofrequency/RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.), and or cellular wireless communication subsystems. Each of these devices can communicate directly with the Internet via aWiFi router 522. Additionally,external sensors 526 could also communicate with theWiFi router 522, and could also include built-in wireless communications such as WiFi, Bluetooth, radiofrequency/RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.), and cellular communications. Thesensors 526 could include, but are not limited to, heater pressure sensors, water temperature sensors, chlorine sensors, pH/aware pressure sensors, etc. It is noted that each of the pool/spa components could include the ability to remember schedules during a WiFi outage (limp mode) as provisioned by remote pool logic. Additionally, each of these devices could include start/stop buttons, if desired, for stand-alone operation. Abreaker panel 527 could provide electrical power to each of the pool/spa components.Breaker panel 527 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. In some embodiments, photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the pool/spa components. - Each of the pool/spa components discussed above, including the
sensors 526, could communicate with aremote server 518. Theserver 518 could includepool logic 570 for remotely controlling and/or monitoring the pool/spa equipment. Thepool logic 570 could be any of the pool logic discussed herein. Theserver 518 could receiveexternal web data 531 via the Internet (e.g., time & date, sunrise/sunset data, regional and local weather forecasts, wind, UV, sunlight) for use bypool logic 570. Theserver 518 could also communicate with one or moreremote control devices 520, such as smart telephones, remote computer systems, tablet computers, etc. Theserver 518 could also accessbig data 532 and performanalytics 534 on pool/spa data, if desired. Additionally, theserver 518 could communicate with one or more third-partysmart devices 524, via a suitable cloud API. Still further, theserver 518 could communicate with ahome management system 525, if desired. -
FIG. 14 is a flowchart illustrating processing steps, indicated generally at 540, carried out by the system ofFIG. 13 . Instep 542, theserver 518 monitors connected devices for incoming operational data. Then, instep 544, a determination is made as to whether incoming operational data has been received. If not, control returns to step 542. Otherwise,step 546 occurs, wherein theserver 518 receives incoming operational data. Then, instep 548, theserver 518 processes the instructions, the operational data, and external data, discussed hereinbelow. Instep 550, theserver 518 optimizes operational set points. Then, instep 552, the server transmits the setpoints to the connected pool/spa devices, such as those devices shown inFIG. 13 . - In
step 554, theserver 518 monitors for incoming instructions. Then, instep 556, a determination is made as to whether incoming instructions have been received. If not, control returns to step 554. Otherwise,step 558 occurs, wherein theserver 518 receives incoming instructions. Then, step 548, discussed above, is invoked. - In
step 560, theserver 518 monitors for updated external data, such as web data including, but not limited to remote weather data, etc. Instep 562, a decision is made as to whether updated external data is available. If not, control returns to step 560. Otherwise,step 564 occurs, wherein theserver 518 receives the updated external data. Then, control passes to step 548, discussed above. -
FIG. 15 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 610. In this embodiment, network connectivity and remote monitoring/control is provided by way of a reduced-size hub 646 which can be easily wall-mounted. Thehub 646 provides wired and wireless connections for various pool and spa equipment, such as avariable speed pump 614 a, a single-speed pump 613, asmart heater 614 b, alegacy heater 615, achlorination system 617, any other type ofchlorinator 614 c, abooster pump 619, and a third-party pump 621.Various relays hub 646 could communicate with and control asmart valve actuator 614 e, and/orlighting system 614 h. Optional control relays 656 andpower supplies 658 could also be in communication with thehub 646. - As can be seen, the
hub 646 could provide a WiFi hotspot for allowing a homeowner's cellular telephone, tablet computer, orpersonal computer 644 to communicate with thehub 646, and to control the pool/spa equipment shown inFIG. 15 . Abreaker panel 627 provides electrical power to the various devices shown inFIG. 15 .Breaker panel 627 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. In some embodiments, photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown inFIG. 15 . A wall-mountedlight controller 640 could communicate by Bluetooth and/or RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.) to thehub 646 for remotely controlling thelights 614 h. Additionally, a third-party Bluetooth and/or RF mesh-enabledswitch 642 could also communicate with thehub 646. Thehub 646 could also communicate with the homeowner'sWiFi router 622 for providing an Internet connection to the pool/spa components. A remote pool/spa server 618 could communicate with therouter 622 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired. Additionally, theserver 618 could communicate with one or moreremote computer systems 620 such as a smart phone, a tablet computer, a remote computer system, etc., if desired. The pool/spa control logic discussed herein could be installed in theserver 618, in theremote computer 620, and/or in the smart phone 644 (e.g., by way of a pool control “app”), if desired. Further, theserver 618 could communicate with one or more third-partysmart devices 624 by a suitable cloud API, and theserver 618 could accessbig data 632 and performanalytics 634 on pool/spa data, if desired. Theserver 618 could also communicate with ahome management system 638, if desired. -
FIG. 16A is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 710. In this embodiment, network connectivity and remote monitoring/control is provided by way of a WiFi-enabled pool/spa chlorination system andcontroller 717. Thecontroller 717 provides connections for various pool and spa equipment, such as avariable speed pump 714 a, a single-speed pump 713, asmart heater 714 b, alegacy heater 715, a chlorination system 717 c, abooster pump 719, and a third-party pump 721.Various relays controller 717 could communicate with and control asmart valve actuator 714 e, and/orlighting system 714 h. Optional control relays 756 andpower supplies 758 could also be in communication with thecontroller 717. - A
breaker panel 727 provides electrical power to the various devices shown inFIG. 16A .Breaker panel 727 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. In some embodiments, photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown inFIG. 16A . Thecontroller 717 could also communicate with the homeowner'sWiFi router 722 for providing an Internet connection to the pool/spa components. A remote pool/spa server 718 could communicate with therouter 722 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired. Additionally, theserver 718 could communicate with one or moreremote computer systems 720 such as a smart phone, a tablet computer, a remote computer system, etc., if desired. The pool/spa control logic discussed herein could be installed in theserver 718, in theremote computer 720, or elsewhere, if desired. Further, theserver 718 could communicate with one or more third-partysmart devices 724 by a suitable cloud API, and theserver 718 could accessbig data 732 and performanalytics 734 on pool/spa data, if desired. Still further, theserver 718 could communicate with ahome management system 738 if desired. -
FIG. 16B is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 4510. In this embodiment, network connectivity and remote monitoring/control is provided by way of a WiFi-enabled pool/spa variable speed pumping system and controller (also referred to herein in connection withFIG. 16B as “variable speed pumping system,” “pumping system,” or “controller”), indicated generally at 4514 a. As referred to herein, a variable speed pumping system can include a variable speed pump, a possessor/controller, memory, communications interface(s), and an input device, so that the variable speed pumping system can communicate with and/or control additional installed pool/spa equipment. Accordingly, pumpcontrol logic 84, as described hereinbelow, could be installed/reside in variablespeed pumping system 4514 a. For example, any of the various processes in the embodiments described herein in connection withFIGS. 19A-19AU could be incorporated intopump control logic 84 and installed in variablespeed pumping system 4514 a, either alone or in any combination. Further, any additional processes disclosed herein in connection with pool control logic 70 (e.g., waterfeature control logic 72, valveactuator control logic 74,cleaner control logic 76,lighting control logic 78,heater control logic 80, chemistry automation control logic 82) could also be incorporated intopump control logic 84 and installed in variablespeed pumping system 4514 a, either alone or in any combination. - The
controller 4514 a provides connections for various pool and spa equipment, such as a pool/spa chlorination system 4517, a single-speed pump 4513, asmart heater 4514 b, alegacy heater 4515, achlorination system 4514 c, abooster pump 4519, and a third-party pump 4521.Various relays controller 4514 a could include on-board or modularly upgradeable pool control components (e.g., communication modules, relays, temperature sensors, pressure sensors, flow sensors, etc.). For example, the variablespeed pumping system 4514 a could control existing heaters (or heat pumps) using on-board or modularly upgradeable relays and temperature sensors.Pump control logic 84, discussed in greater detail hereinbelow, could also utilize multiple sensors for parallel plumbing circuits (e.g., branch plumbing). Also, thecontroller 4514 a could communicate with and control asmart valve actuator 4514 e, and/orlighting system 4514 h.Optional control relays 4556 andpower supplies 4558 could also be in communication with thecontroller 4514 a. Accordingly, variable speed pumping system andcontroller 4514 a could use the modularly upgradeable smart relays to control a variety of existing installed pool/spa equipment including single speed pumps, pressure cleaner booster pumps, LED and incandescent pool lights, and landscape lights. The modularly upgradeable control components can be used bypump control logic 84 to provide pump or system performance reporting and diagnostic functions (present and historical) including, but not limited to, phase current, torque, speed, horsepower, run time, and ramp rate.Pump control logic 84 could provide the system performance and diagnostic information to the cloud, or to a smart to a smart device via a Bluetooth or any of the other communication protocols disclosed herein. - A
breaker panel 4527 provides electrical power to the various devices shown inFIG. 16B .Breaker panel 4527 could include one or more smart circuit breakers (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein, and/or conventional circuit breakers. In some embodiments, photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown inFIG. 16B . Thecontroller 4514 a could also communicate with the homeowner'sWiFi router 4522 for providing an Internet connection to the pool/spa components. A remote pool/spa server 4518 could communicate with therouter 4522 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired. Additionally, theserver 4518 could communicate with one or moreremote computer systems 4520 such as a smart phone, a tablet computer, a remote computer system, etc., if desired. The pool/spa control logic discussed herein could be installed in the variable speed pumping system andcontroller 4514 a, in theserver 4518, in theremote computer 4520, or elsewhere, if desired. Further, theserver 4518 could communicate with one or more third-partysmart devices 4524 by a suitable cloud API, and theserver 4518 could accessbig data 4532 and performanalytics 4534 on pool/spa data, if desired. Still further, theserver 4518 could communicate with ahome management system 4538 if desired. It is also further complicated that any of the functions described herein could also be performed by the variable speed pumping system andcontroller 4514 a. - As illustrated in
FIG. 16B , the pumping system andcontroller 4514 a can be provided with a human machine interface or user interface device, indicated generally at 4560. The user interface could include physical keys, a digital display, and/or atouchscreen 4562, as shown inFIG. 16B , any other suitable input technologies, or any combination thereof. It is also contemplated that any of the pool/spa equipment described herein could be provided with a similar user interface device. Providing auser interface device 4562 on pumping system andcontroller 4514 a enables the delivery of existing or enhanced features of local pool/spa equipment control and control of remote devices (e.g., beyond the pool area) to the pool owner via the pool pump, while also reducing costs to the pool owner (e.g., reducing hardware costs, installation expenses, etc.). Because every pool/spa must include at least one pump, providing control of and communication with additional equipment, connectivity, and monitoring (e.g., status and condition of pool and equipment) functionality of the pool environment via the pool pump can further reduce pool owner cost and significantly improve usability. By leveraging information obtained at the equipment pad, from remote/external devices, and/or via a connection to the internet, operation of thepumping system 4514 a and other devices can be further optimized. -
FIG. 17 is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 810. In this embodiment, network connectivity and remote monitoring/control is provided by way of a reduced-size hub 860 which can be easily wall-mounted. Thehub 860 provides wired and wireless connections for various pool and spa equipment, such as avariable speed pump 814 a, a single-speed pump 813, asmart heater 814 b, alegacy heater 815, a chlorination system 817 c, and other equipment (e.g., lighting equipment). - As can be seen, the
hub 860 could provide a WiFi hotspot for allowing a homeowner's cellular telephone, tablet computer, orpersonal computer 844 to communicate with the hub 846, and to control the pool/spa equipment shown inFIG. 17 . Abreaker panel 827 provides electrical power to the various devices shown inFIG. 17 .Breaker panel 827 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. In some embodiments, photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown inFIG. 17 . A wall-mountedlight controller 840 could communicate by Bluetooth and/or RF mesh (e.g., ZWave, Zigbee, Thread, Weave, etc.) to thehub 860 for remotely controlling lights. Additionally, a third-party Bluetooth and/or RF mesh-enabledswitch 842 could also communicate with thehub 860. Thehub 860 could also communicate with the homeowner'sWiFi router 822 for providing an Internet connection to the pool/spa components. A remote pool/spa server 818 could communicate with therouter 822 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired. Additionally, theserver 818 could communicate with one or moreremote computer systems 820 such as a smart phone, a tablet computer, a remote computer system, etc., if desired. In this embodiment, theserver 818 is a cloud-based, virtual server, and the pool/spa control logic discussed herein is installed in theserver 818. The pool logic could be any of the pool logic discussed herein. Further, theserver 818 could communicate with one or more third-partysmart devices 824 by a suitable cloud API, and theserver 818 could accessbig data 832 and performanalytics 834 on pool/spa data, if desired. Theserver 818 could also communicate with ahome management system 838, if desired. -
FIG. 18 is a diagram 900 illustratingpump control logic 84.Pump control logic 84 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically,pump control logic 84 can communicate with, or receive,user input data 902, pumpoperational data 904, pumpfactory specifications 906,pump configuration parameters 908,web data 910,pool configuration parameters 912, data fromrelated devices 914,health monitoring data 916 and/orexternal sensor data 918. -
Pump control logic 84 can control variable speed pumps, designed for residential and commercial pool applications (as well as additional installed pool/spa equipment), providing flow and pressure for water circulation and operation of pool equipment. Variable speed pumps, as described herein, could include a pump wet end, a motor, a variable frequency/speed drive, and a user interface (seeFIG. 16B ). The variable speed pump is used anytime a pool is in operation, which may be year-round and/or all-day based on a particular application (e.g. residential vs. commercial) or location. Thepump control logic 84 can control the variable speed drive to operate in stand-alone mode, relay control mode, or via communication with Hayward automation, described hereinbelow. - In stand-alone mode, the pump operates independently of the
pool control logic 70. Stand-alone mode is programmable with respect to functions such as timers and preset speeds. In relay control mode, the pump operates according to inputs received from third party systems and devices using low voltage digital inputs. For example, the digital inputs could be used to select discrete timer speeds set in the pump user interface. When communicating with Hayward automation, the pump is controlled by a variety of Hayward automation systems such as, but not limited to: OmniLogic®, ProLogic®, and OnCommand®. The pump could communicate with Hayward automation systems using RS485 and associated Hayward automation communication protocols, or any other suitable communication protocol disclosed herein. - In addition to operating in the modes described previously, the pump can also serve as a pool control system. The user interface could utilize a color LCD touch screen with resistive and/or capacitive touch capability, or any other suitable input technology. The user interface could provide a user with information such as ambient air and pool water temperatures, providing true freeze protection capability, as well as thermostat control of a pool heater or heat pump. The user interface could also be used to communicate with and to control one or more smart relays and smart actuators, allowing the pump to coordinate operation of other pieces of pool equipment. For example, the user interface can be used for interlock control of other installed pool/spa equipment. The pump could also be provided with a communication module (e.g., WiFi, ethernet, Bluetooth, ZWave, Zigbee, Thread, Weave, etc.) allowing remote application control of the pump and/or pool pad equipment, and to allow remote data collection of site specific information.
-
Pump control logic 84 can be controlled remotely with a personal computer, smart phone, tablet, or other device via wired or wireless communication, including but not limited to, Bluetooth, WiFi, powerline transmission, etc. Accordingly, the pump can have a full-featured local interface (seeFIG. 16B ), minimal local user interface, or no local user interface at all. Nevertheless, all aspects of the pump operational data and pumpcontrol logic 84 can be available for review and adjustment if necessary. Thepump control logic 84 can report multiple pieces of information to a user, the system, or a central server for data collection, storage and analysis. The information can include, but is not limited to, date of installation, warranty registration, warranty possible claims, feedback of problems daily operating conditions, usage statistics, feedback of power supply conditions or quality, detailed profiles of pool pad setups, and information related to other equipment the pump may be controlling. Thepump control logic 84 can also automatically register warranties and submit warranty claims should there be an issue with any piece of equipment in the system. -
User input data 902 could include timers, schedules (e.g., on/off, speed, duration of operation, how much flow should be provided), turnover goals, turbidity/water clarity goals, etc. Pumpoperational data 904 could include power consumption, current draw, input voltage, flow (rate), flow (yes/no), temperature, water pressure, air cavitation, water detection, debris sensor, etc.Pump factory specifications 906 could include power consumption current draw, input voltage, life expectancy, etc.Pump configuration parameters 908 could include IP address, GPS coordinates, zip code, time and date, etc.Web data 910 could include location (based on IP address), time and date, sunrise/sunset data, regional and local weather forecast data, ambient temperature, ambient light, humidity, season, elevation, dew point, etc. For example, thepump control logic 84 could shift the pump timers based on weather input.Pool configuration parameters 912 could include pool surface area, pool geometry, pool liner color, pool cover (yes/no), pool volume, etc. Data fromrelated devices 914 could include data relating to at least the following: strainer(s), pool cover(s), filter(s), chlorinator(s), skimmer(s), pool cleaner(s), water features (e.g., laminar, bubbler, sheer fall, deck jet, fountains, scuppers, waterfall, etc.), heater(s) (gas/heat pump), heat (solar), chemical dispenser(s), disinfectant system(s) (ultraviolet ozone), secondary pump(s), tablet/liquid chlorine feeder(s), valves, controller(s), spa(s), water slide(s), etc. For example, thepump control logic 84 could receive input from an external device to identify an operating profile. In another example, thepump control logic 84 could determine the most efficient turn-over rate based on the volume of the body of water. In yet another example the pump control logic could lower the speed of the pump to prevent a water feature from flooding a closed pool cover.Health monitoring data 916 could include line-to-line balance, grounding, bonding, leak current, runtime, operating temperature, power consumption, predictive failure, operating noise, power cycles, airflow sensor, temperature of cooling, efficiency, settings, troubleshooting data, etc.External sensor data 918, could include water level, water temperature, water flow speed, suction/vacuum pressure, strainer basket load, airflow sensor or temperature of cooling, pool cover detection, turbidity, valve position, etc. Additionally, the pump control logic can receive heater and pump data trends, learning data, time and speeds used per month, time and duration that a pool cover is open, and various characteristics of pump use. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a temperature sensor has not been installed in a particular system, the user/operator can provide this information by first determining the temperature (e.g., by checking a thermometer, a thermocouple, a weather forecast, the Internet, etc.) and then entering the temperature into the system via a user interface. Using this data, thepump control logic 84 could optimize the operation of the pump by, for example, running based on whether conditions (e.g., windy conditions produce more leaves and thus a need for more skimming), maximizing energy factor (or best efficiency point), communicating errors to the user/dealer/manufacturer, communicating performance to the manufacturer (e.g., usage stats) to calculate system curve to profile pools, providing feedback (e.g., basket is full, bearings going bad, seal starting to leak, etc.), and responding to needs of other equipment (e.g., pump/pump control logic could control actuators or other devices for pool pads with limited equipment (Low voltage control), lighting system, cleaner, high voltage control for booster pump, and hub through direct control or bridge to cloud for pool pad). - The pump could include a software application (accessible via
user interface 4562 or on a remote device having a similar user interface), described in greater detail hereinbelow, that delivers enhanced features to the user. For example, the application could define a pool owner's usage and target modes for the user to select from including but not limited to efficiency mode, spa mode, or party mode. Selecting a mode will automatically adjust pump speed or flow accordingly. The application can also allow for seasonal adjustability which will adjust operation of the pump based on the time of year. The application can also monitor the pump and send a signal or message if the pump has been inoperative for a defined period of time. Sending this message can remind a user to resume operation of a pump if he/she manually stopped it. The application can also report the energy consumption of the pump instantly or in monthly or yearly reports. The application can also provide a single push for pre-loaded programs for the pump. The application can also allow for quick access dynamic language translation. The application can also monitor pump usage, and display a number of “favorite” speeds by the user. The amount of speeds shown can be dependent on the user and does not have to show the maximum number of possible preset speeds. The application can also allow for the quick and easy ability to switch to the last selected program or “last known good” program which is the last program that ran without any errors. The application can send notifications of all activities within the system via WiFi, Bluetooth or similar means. The notifications can include but is not limited to a blocked filter, increase in RPM of the pump, or reporting of loss of prime-protects system. The application can include a page for frequently asked questions for service and troubleshooting of all components in thesystem 10. The application can further include links to service and troubleshooting videos. - The pumping system or application can also certify that installation is correct and reliable. The application can provide a “certification checklist” and wizard that guides the installer to verify the entire pool pad after configuration. Some items on the checklist can include, but is not limited to, checking whether the correct pump is on the correct relay, verify simulated schedule execution, confirm all equipment is working, confirm user preferences, etc. Once the checklist is completed, the pool is “certified” to be configured and tested and is now ready for use.
-
FIGS. 19A-19G are flowcharts illustrating processing steps of thepump control logic 84.FIG. 19A is a flowchart illustrating processing logic of thepump control logic 84 communicating with a pump. Instep 1000, thepump control logic 84 receives an instruction to activate the pump. Instep 1002, thepump logic 84 retrieves data pertaining to factory specified power parameters from memory, e.g., parameters relating to power consumption, current draw, and line voltage. Instep 1004, thepump logic 84 receives line power operational data. Instep 1006, thepump logic 84 determines whether the line power operational data is within factory specified operation parameters. If a positive determination is made, the process proceeds to step 1012. If a negative determination is made, the process proceeds to step 1008. Instep 1012, thepump control logic 84 transmits an instruction to the pump to activate, and the process ends. As referenced above, if a negative determination is made atstep 1006, then the process proceeds to step 1008. Instep 1008, thepump control logic 84 determines if there are any retries remaining. If a positive determination is made, then thepump control logic 84 proceeds to step 1004 and continues the process from that step. If a negative determination is made, then thepump control logic 84 proceeds to step 1010 and transmits an error condition signal, and then returns to step 1004 to continue the process from that step. For example, instep 1002, the line voltage can be measured, including but not limited to, L1-L2, L1-GND, L2-GND, and instep 1010, pumpcontrol logic 84 can report associated issues to the user. In another example, pumpcontrol logic 84 can measure the line current instep 1002, and instep 1010, pumpcontrol logic 84 can report associated issues to the user. In yet another example, pumpcontrol logic 84 can measure the ground leakage current instep 1002, monitor for proper grounding insteps step 1010. Thepump control logic 84 can also check and verify proper bonding connection (e.g., checking for electrical continuity between the pump and a known good bonding point using a voltage measurement circuit or other known means) in the aforementioned steps. -
FIG. 19B is another flowchart illustrating processing logic of thepump control logic 84 communicating with a pump in connection with priming. Instep 1020, thepump control logic 84 receives an instruction to activate the pump. Instep 1022, thepump logic 84 receives operational data from a pump water detection sensor. Instep 1024, thepump logic 84 determines whether water is detected. If a positive determination is made, the process proceeds to step 1029. If a negative determination is made, the process proceeds to step 1025. Instep 1029, thepump control logic 84 clears the priming period timer, and the process ends. As referenced above, if a negative determination is made atstep 1024, then the process proceeds to step 1025. Instep 1025, thepump control logic 84 starts or continues the priming period timer and then proceeds to step 1026 where it determines if there is any time remaining. If a positive determination is made, then thepump control logic 84 proceeds to step 1027 where it decrements the priming timer and then continues to step 1022 to continue the process from that step. If a negative determination is made, then thepump control logic 84 proceeds to step 1028 and transmits an error condition signal indicating that prime has failed, and the process ends. -
FIG. 19C is another flowchart illustrating processing logic of thepump control logic 84 communicating with a pump. Instep 1030, thepump control logic 84 receives an instruction to activate the pump. Instep 1032, thepump logic 84 receives operational data from a debris sensor in a strainer basket. Insteps pump logic 84 determines whether the strainer basket is full. If a positive determination is made, the process proceeds to step 1038 where thepump control logic 84 transmits a message to the user to clean the strainer basket and then returns to step 1032. If a negative determination is made instep 1036, then thepump control logic 84 proceeds to step 1039 and transmits an instruction to the pump to activate, and the process ends. -
FIG. 19D is a flowchart illustrating processing logic of thepump control logic 84 determining alert conditions of a pump and subsequently notifying a user or pool professional (e.g., service technician, builders, installers, etc.) of the alert condition. Thepump control logic 84 proceeds with four parallel routine sequences that respectively begin withsteps step 1040 monitors the health of the pump (as well as other installed pool equipment, discussed hereinbelow) by monitoring the runtime of the pump and comparing the runtime of the pump with life expectancy data. Instep 1040 thepump control logic 84 retrieves factory specified life expectancy data from memory. The factory specified life expectancy data could be provided by the manufacturer as a specified number of hour, days, years, etc. for which the entire pump unit is expected to maintain optimal performance. Alternatively, factory specified life expectancy data could be provided for individual components of the pump unit (e.g., motor bearings, other motor components, etc.) in addition to, or in place of, the entire pump unit, thereby providing users and service providers greater granularity and predictability for maintenance protocols. Instep 1042, thepump control logic 84 determines an alert threshold, e.g., less than 90% of pump life expectancy remaining or runtime value. Alternatively, the alert threshold could be provided by the user, by a pool professional (e.g., service technician, builders, installers, etc.), or by the manufacturer. Instep 1044, thepump control logic 84 receives operational data on pump runtime and proceeds to step 1045 where it displays an odometer indicating pump runtime. It is noted that the odometer could also be configured to display the remaining life expectancy of the pump and/or individual components. Instep 1046, thepump control logic 84 determines if the pump runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1044 and continues to receive operational data on pump runtime. If a positive determination is made, then the process proceeds to step 1048 where an alert is transmitted to a user, and the process ends. The alert could be a visual and/or audio notification that could be displayed on a user's smart device (e.g., phone, text, or email based). For example, if a user's smartphone is in communication withpump control logic 84, the alerts could be delivered via pop-up notification, text, etc. In addition to describing the problem, the alerts could also suggest possible remedies (e.g., “Excessive Motor Heating-Reduce Speed”). - The second sequence begins in
step 1050 where thepump control logic 84 retrieves factory specified operating temperature data from memory. The process then proceeds to step 1051 andstep 1052. Instep 1051, thepump control logic 84 stores the temperature rise (ambient to equipment) in the histogram counters, and proceeds to step 1053. The histogram counters can be bands that indicate temperature rise values, e.g., a first counter band can be a temperature rise of 0-10 degrees, a second counter band can be a temperature rise of 10-20 degrees, a third counter band can be a temperature rise of 20-30 degrees, and a fourth counter band can be a temperature rise of greater than 30 degrees. Instep 1053, thepump control logic 84 determines if the temperature rise is too high. If a negative determination is made, then the process returns to step 1051 and continues to store the temperature rise in the histogram counters. If a positive determination is made, then the process proceeds to step 1055 where an alert indicating “excessive motor heating” is transmitted to a user, and the process ends. Instep 1052, thepump control logic 84 determines an alert threshold, e.g., a temperature value that is 10% above or below operating temperature. Instep 1054, thepump control logic 84 receives operational data on pump operating temperature. Instep 1056, thepump control logic 84 determines if the pump operating temperature exceeds the threshold, or is outside of a threshold range. If a negative determination is made, then the process returns to step 1054 and continues to receive operational data on pump operating temperature. If a positive determination is made, then the process proceeds to step 1058 where an alert is transmitted to a user, and the process ends. - The third sequence begins in
step 1060 where thepump control logic 84 retrieves factory specified power consumption data from memory. Instep 1062, thepump control logic 84 determines an alert threshold, e.g., a power value that is 110% of specified power consumption. Instep 1064, thepump control logic 84 receives operational data on pump power consumption. Instep 1066, thepump control logic 84 determines if the pump power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 1064 and continues to receive operational data on pump power consumption. If a positive determination is made, then the process proceeds to step 1068 where an alert is transmitted to a user, and the process ends. - The fourth sequence begins in
step 1070 where thepump control logic 84 retrieves factory warranty data from memory, e.g., a warranty expiration date. Instep 1072, thepump control logic 84 determines an alert threshold, e.g., days left on factory warranty. Instep 1074, thepump control logic 84 receives current date information. Instep 1075, thepump control logic 84 determines if the current date is beyond the threshold date or the number of days remaining is below the threshold date. If a negative determination is made, then the process returns to step 1074 and continues to receive current date information. If a positive determination is made, then the process proceeds to step 1076 where an alert is transmitted to a user, and the process ends. In addition to the foregoing, it is contemplated that thepump control logic 84 could also report additional information to the user, pool professional (e.g., service technician, builders, installers, etc.), or manufacturer including runtime, operating temperatures/profile, power consumption, operating noise, number of power cycles, temperature of cooling air (from a pump cooling fan), and degradation of efficiency. -
FIG. 19E is another flowchart illustrating processing logic of thepump control logic 84 communicating with a pump. Instep 1080, thepump control logic 84 receives an instruction to activate the pump. Instep 1082, thepump logic 84 retrieves maximum power consumption setpoint data from pool devices from memory, e.g., maximum combined power consumption for all active devices. Instep 1084, thepump logic 84 receives operational data on power consumption from all active devices. Instep 1086, thepump logic 84 determines the combined power consumption for active devices. Instep 1088, thepump logic 84 determines whether the combined power consumption is below a setpoint. If a positive determination is made, the process proceeds to step 1094. If a negative determination is made, the process proceeds to step 1090. Instep 1094, thepump control logic 84 transmits an instruction to the pump to activate, and the process ends. As referenced above, if a negative determination is made atstep 1088, then the process proceeds to step 1090. Instep 1090, thepump control logic 84 determines if there are any retries remaining. If a positive determination is made, then thepump control logic 84 proceeds to step 1084 and continues the process from that step. If a negative determination is made, then thepump control logic 84 proceeds to step 1092 and transmits a power save notification, and the process ends. -
FIG. 19F is another flowchart illustrating processing logic of thepump control logic 84 communicating with a pump. Instep 1100, thepump control logic 84 receives an instruction to activate the pump. Instep 1102, thepump control logic 84 receives date and time information. Instep 1104, thepump control logic 84 determines the current season, e.g., summer. Instep 1106, thepump control logic 84 retrieves operational setpoint data for the current season from memory, e.g., schedule, pump power, etc. Instep 1108, thepump control logic 84 transmits an instruction to the pump to operate at seasonal operational setpoints. -
FIG. 19G is another flowchart illustrating processing logic of thepump control logic 84 communicating with the pump. Instep 1110, thepump control logic 84 retrieves setpoint data on the desired pool turnover rate from the memory (e.g., the desired turnovers in a twenty-four hour period). While the desired pool turnover rate can be specified by the user and stored in the memory, it is noted that the turnover rate setpoint data it could also be retrieved from the web based on the size, geometry, location of the pool, or any combination thereof. Instep 1112, thepump control logic 84 retrieves pool configuration data on the volume of the pool from the memory. Thepump control logic 84 then, instep 1114, receives operational data on flow rate from external sensors. Instep 1116, thepump control logic 84, using the turnover rate setpoint data, the pool configuration data, and the external sensor data, calculates the minimum flow rate to achieve the desired pool turnover rate. Instep 1118, thepump control logic 84 transmits an instruction to the pump to operate at a minimum speed to achieve the desired turnover rate, and the process then returns to step 1114. It is noted that by this process, thepump control logic 84 could continuously adjust the speed of the pump throughout the twenty-four hour period based on repeated minimum flow rate calculations. -
FIG. 19H is another flowchart illustrating processing logic of thepump control logic 84 communicating with the pump. Instep 3700, thepump control logic 84 receives an instruction to activate the pump. Instep 3702, thepump control logic 84 retrieves data on factory specified power parameters from memory. Some examples of power parameters include, but is not limited to, power consumption, current draw, line voltage, line current, ground leakage current, proper bonding, etc. Instep 3704, thepump control logic 84 received operational data of the pump, including but not limited to, L1-L2, L1-GND, and L2-GND. Instep 3706, thepump control logic 84 compares whether the operational data is within the specified operating parameters of the pump. If a positive determination is made, thepump control logic 84 proceeds to step 3708 where thepump control logic 84 transmits an instruction to activate the pump and the process ends. If a negative determination is made, thepump control logic 84 proceeds to step 3710 where it decides whether retries are remaining. If a positive determination is made, thepump control logic 84 proceeds back to step 3704 where it receives operational data on the pump. If a negative determination is made, thepump control logic 84 proceeds to step 3712 where an error condition is transmitted and the process proceeds back tostep 3704. The above process can measure all parameters related to electrical power of the pump and can indicate any type of issue to the user. -
FIG. 19I is another flowchart illustrating processing logic of thepump control logic 84. Instep 3714, thepump control logic 84 receives an instruction to monitor or measure the water level in a pump. Instep 3716, thepump control logic 84 retrieves data on factory specified parameters from memory for the water level in a pump. Instep 3718, thepump control logic 84 receives operational water level data in the pump and in the strainer housing. Instep 3720, thepump control logic 84 decides whether the water level data is within the factory specified operating parameters. If a positive determination is made, thepump control logic 84 proceeds to step 3722. If a negative determination is made, thepump control logic 84 proceeds to step 3728. Instep 3722, thepump control logic 84 determines whether the water level has been an issue for a set amount of time. If a negative determination is made, thepump control logic 84 will proceed to step 3724 where the speed of the pump is increased periodically. If a positive determination is made, thepump control logic 84 will proceed to step 3726 where it will indicate to the user that there is an air leak in the suction side plumbing. Instep 3728, thepump control logic 84 will transmit a message to the user or system that the water level data is within the factory specified parameters. -
FIG. 19J is another flowchart illustrating processing logic of thepump control logic 84. Instep 3730, thepump control logic 84 receives an instruction to monitor or measure water flow in the pump. Instep 3732, thepump control logic 84 retrieves data on the factory specified parameters from memory for the water flow in the pump. Instep 3740, thepump control logic 84 receives operational flow data in the pump. Instep 3742, thepump control logic 84 determines whether the flow data is within the range for the factory specified operational parameters.Step 3742 can further be associated with cavitation detection. If a negative determination is made, thepump control logic 84 proceeds tosteps 3744, and if a positive determination is made, thepump control logic 84 proceeds to step 3746. Instep 3744, thepump control logic 84 determines whether retries are remaining. If there are no retries remaining, thepump control logic 84 proceeds to step 3748 to transmit an error condition and if there are retries remaining, thepump control logic 84 proceeds back tostep 3740. Instep 3746, thepump control logic 84 transmits a message to the user or the system that the flow data is within the factory specified parameters. -
FIG. 19K is another flowchart illustrating processing logic of thepump control logic 84. Instep 3750, thepump control logic 84 receives an instruction to monitor or measure the water temperature. Instep 3752, thepump control logic 84 retrieves data on the factory specified parameters from memory for the water temperature. Instep 3754, thepump control logic 84 receives operational data of water temperature and set point temperature data. Instep 3756, thepump control logic 84 determines whether the water temperature is within the set point and/or factory parameters. If a positive determination is made, thepump control logic 84 proceeds to step 3758 where thepump control logic 84 transmits a message to the user that the water temperature is within the factory specified or set point parameters and the process would end thereafter. If a negative determination is made, thepump control logic 84 proceeds to step 3760 where thepump control logic 84 performs a function or changes the pump operation to maintain a factory or set point water temperature. Instep 3762, thepump control logic 84 transmits a message to the user or the system that thepump control logic 84 has performed some function or changed the pump operation to maintain a factory or set point water temperature. -
FIG. 19L is another flowchart illustrating the processing logic of thepump control logic 84. Instep 3764, thepump control logic 84 receives an instruction to monitor or measure the water chemistry. Instep 3766, thepump control logic 84 retrieves data on factory specified parameters from memory for the water chemistry. Instep 3768, thepump control logic 84 receives operation data regarding the water chemistry. Instep 3770, thepump control logic 84 determines whether the water chemistry is within factory specified operating parameters. If a positive determination is made, thepump control logic 84 proceeds to step 3772 where thepump control logic 84 transmits a message to the user that the water chemistry is within the specified operating parameters. If a negative determination is made, thepump control logic 84 proceeds to step 3774 where thepump control logic 84 determines whether the pool chemistry is maintained by a separate device. If a positive determination is made, thepump control logic 84 proceeds to step 3776 where thepump control logic 84 communicates with the other device to determine what the device needs for proper operation. If a negative determination is made, thepump control logic 84 proceeds to step 3778 directly or afterstep 3776. Instep 3778, thepump control logic 84 performs a function or changes operation of the pump to maintain the proper water chemistry based on thestep 3776 or the set point parameters retrieved from memory. Instep 3780, thepump control logic 84 transmits a message to the user or the system that attention may be needed regarding the water chemistry. -
FIG. 19M is another flowchart illustrating the processing logic of thepump control logic 84. Instep 3782, thepump control logic 84 receives an instruction to detect a gasket leak or a shaft seal leak. Instep 3784, thepump control logic 84 receives operational data from a sensor in the gasket or shaft seal. Instep 3786, thepump control logic 84 determines if there is a gasket or shaft seal leak. Instep 3788, the determination is made whether there is in fact a gasket or shaft seal leak. If a negative determination is made, thepump control logic 84 proceeds to step 3790 and will transmit a message to the user or system that there is no leak. If a positive determination is made, thepump control logic 84 will transmit a message instep 3792 that the user should fix the leak. -
FIG. 19N is another flowchart illustrating the processing logic of thepump control logic 84. Instep 3794, thepump control logic 84 retrieves factory specified life expectancy data of the shaft seal from memory. Instep 3796, thepump control logic 84 determines the alert threshold for the life expectancy of the shaft seal. For example, a 90% threshold will alert the user when 90% of the life expectancy of the shaft seal is reached. Instep 3798, thepump control logic 84 will receive operational data on the shaft seal runtime. Instep 3880, thepump control logic 84 will determine whether the runtime is greater than the threshold with regard to the life expectancy data. If a negative determination is made, thepump control logic 84 will go back tostep 3798. If a positive determination is made, thepump control logic 84 will proceed to step 3882 and transmit a message to the user regarding the remaining shaft seal shelf life so that the user can proactively address the shaft seal before a leak occurs. -
FIG. 19O is another flowchart illustrating the processing logic of thepump control logic 84. Instep 3884, thepump control logic 84 receives an instruction to determine the cleanliness of the filter. Instep 3886, thepump control logic 84 retrieves data on the factory specified parameters from memory for debris in the filter and energy consumption of the pump. Instep 3888, thepump control logic 84 receives operational data from the sensors in the filter and energy consumption in the pump. Instep 3890, thepump control logic 84 determines the cleanliness of the filter based on the debris in the filter. Instep 3892, thepump control logic 84 makes a determination as to whether the filter needs to be serviced. If a negative determination is made, thepump control logic 84 instep 3894 will determine if the energy consumption of the pump exceeds a factory or user set threshold, and if it does, the process ends and if it does not, then instep 3896, thepump control logic 84 can adjust the flow to maintain a flow rate based on the amount of debris in the filter. If a positive determination is made instep 3892, thepump control logic 84 instep 3898 will transmit a message to the user or system to service the filter (e.g., clean the cartridge). Instep 3900, thepump control logic 84 will determine whether the user took action to service the filter. If a negative determination is made, thepump control logic 84 will proceed to step 3902 to adjust the pump operation to maintain a flow rate needed by the rest of thesystem 10. If a positive determination is made, thepump control logic 84 will skipstep 3902 and will proceed directly back tostep 3888. -
FIG. 19P is a flowchart illustrating processing steps carried out by thepump control logic 84 for periodically testing and advising the user of the variance from a “clean filter” state. For example, pumpcontrol logic 84 can periodically enter a “test” filter system state where the pool/spa equipment go to predetermined positions/states/speeds for testing the filter. Instep 3904, pumpcontrol logic 84 monitors for a “clean filter” condition (e.g., operational data from filter or input from a user, servicer, or installer, etc.). For example, a skimmer could communicate (using and of the data communication protocols disclosed herein) to pumpcontrol logic 84 that the filter has been cleaned or replaced, or the user could utilize an input device to indicate to pumpcontrol logic 84 that the filter has been cleaned or replaced. Instep 3906, pumpcontrol logic 84 determines if a “clean filter” condition has been received. If a negative determination is made instep 3906, pumpcontrol logic 84 returns to step 3904. If a positive determination is made instep 3906, pumpcontrol logic 84 proceeds to step 3908, wherepump control logic 84 retrieves “test” filter system state setpoints (e.g., valve position, pump speed, etc.) from the memory. Instep 3910, pumpcontrol logic 84 transmits an instruction to the installed pool/spa equipment to operate at the “test” setpoints. Instep 3912, pumpcontrol logic 84 receives current operational date from the filter. Instep 3914, pumpcontrol logic 84 determines if there are (1) retries remaining. If a positive determination is made instep 3914, pumpcontrol logic 84 proceeds to step 3916 and saved the “clean filter” operational data to the memory. Thus, afterpump control logic 84 receives a “clean filter” condition, the pool/spa equipment enters a “test” system state and records the current operational data from the filter to the memory as a baseline measurement for future comparison. If a negative determination is made instep 3914, pumpcontrol logic 84 proceeds to step 3918, wherepump control logic 84 computes the variance from the “clean filter” operational data. Optionally, instep 3920, pumpcontrol logic 84 could transmit a message to (e.g., advise) the user (e.g., “Filter Health ##%). Instep 3922, pumpcontrol logic 84 transmits instructions to the installed pool/spa equipment to resume normal operation. Instep 3924, the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3908. -
FIG. 19Q is a flowchart illustrating processing steps carried out by thepump control logic 84 for determining if debris is interfering with operation of the pump. For example, instep 3926, pumpcontrol logic 84 retrieves setpoint data on the acceptable debris level at a pump component(s) from memory. This setpoint data could be provided by the pump manufacturer, or alternatively, could be set by the user. Instep 3928, pumpcontrol logic 84 receives operational data on debris at the pump component(s). It is noted that the pump control logic could monitor one or more individual components (e.g., the impeller, shaft seal, and motor shaft) of the pump and could further monitor one or more parameters associated with each component (e.g., the level of debris in the impeller and/or rotational speed of the impeller). For example, pumpcontrol logic 84 could determine if there is debris trapped in the impeller by monitoring motor current, motor power consumption, or by using an accelerometer to determine an increase in motor vibration. Instep 3930, pumpcontrol logic 84 determines if the level of debris at the pump component(s) is below the setpoint. If a positive determination is made instep 3930, pumpcontrol logic 84 returns to step 3928. If a negative determination is made instep 3930, pumpcontrol logic 84 proceeds to step 3932, wherepump control logic 84 determines if there are retries remaining. If a positive determination is made instep 3932, pumpcontrol logic 84 returns to step 3928. If a negative determination is made instep 3932, pumpcontrol logic 84 proceeds to step 3934, wherepump control logic 84 transmits an instruction to the user (e.g., “Clean Impeller”). While the foregoing process has been discussed in terms of monitoring debris, it is also contemplated thatpump control logic 84 can monitor additional parameters and alert the user when these parameters have exceeded their respective setpoints using similar processing steps. For example, in addition to monitoring the level of debris trapped in the impeller, discussed above, pumpcontrol logic 84 could also monitor rotational speeds of the components, determine whether debris is causing physical interference with the rotation of the impeller, shaft seal, or motor shaft, and then transmit an instruction to the user to address the issue (e.g., “Binding in Impeller—Clear Debris”). For example, pumpcontrol logic 84 could monitor motor current, power consumption, and receive operational data from an accelerometer to determine an increase in motor vibration (thereby indicating physical interference/binding of the impeller). Further still, instead of alerting the user when an operational parameter has exceeded its respective operational setpoint,pump control logic 84 could alter the operation of the pump to restore normal operation. For example, in the case of a variable speed drive, pumpcontrol logic 84 could monitor the humidity of the air inside the variable speed drive enclosure and adjust its operating condition to minimize humidity, thereby increasing reliability. For example, pumpcontrol logic 84 could receive operational data from a humidity sensor located within the variable speed drive enclosure. Ifpump control logic 84 determines that the humidity within the variable speed drive enclosure is above a maximum setpoint value,pump control logic 84 could transmit an instruction to the variable speed drive to increase the speed of operation, thereby drying out the air within the enclosure (due to increased temperature of certain electrical components within the enclosure precipitated by the increase in operating speed). -
FIGS. 19R and 19S are flowcharts illustrating processing steps carried out by thepump control logic 84 for assisting the user in determining the pump setpoints that should be used based on the user's installed equipment and preferences. It is contemplated thatpump control logic 84 could include a wizard-based application that is accessible by the user via a human machine interface installed on the pump, centralized pool/spa control system, smartphone/device, web browser, or any other means for communicating with the system, disclosed herein. For example, instep 3936, pumpcontrol logic 84 prompts the user to specify installed pool/spa equipment and operational parameters therefore (e.g., minimum skimmer speed/flow, number of skimmers, minimum heater speed/flow, has heater, heat pump, solar, etc.). Alternatively, the application could utilize widely-known bar scanning technology (e.g., utilizing/in combination with a camera of smart device), enabling the user to simply scan the barcode of each piece of installed equipment thereby avoiding the necessity of manual entry.Pump control logic 84 could then retrieve additional information (e.g., specifications, setpoints, warranty information, etc.) on the scanned equipment from a remote location (e.g., a remote server) using any suitable communication protocol described herein (e.g., accessing the internet vial a home WiFi router). Instep 3938, pumpcontrol logic 84 prompts the user to specify the desired pool/spa activities (e.g., bathing, swimming, water sports, etc.). For example, pumpcontrol logic 84 could present the user with a list of pre-programmed activities from which to choose, the user could search a database of pre-programmed activities, or the user could program custom activities and save the same to memory for later retrieval and use. Instep 3940, pumpcontrol logic 84 determines an acceptable range of speed setpoints for the pump (e.g., speed/flow for all pump related features). Instep 3942, pumpcontrol logic 84 presents the acceptable speed presets to the user and then prompts the user to select desired/optimal setpoints for the pump and instep 3944, pumpcontrol logic 84 stores the user selected pump setpoints to memory and the process then ends. Optionally, as shown in steps 3950-3954, the wizard could assist the user in selecting the desired/optimal pump setpoints by stepping through multiple actual pump speeds/flows so that the user can “choose” a desired speed/flow while observing the effect of the different speeds/flows on the actual pool/spa environment. For example, after determining the acceptable speed setpoints for the pump instep 3940, pumpcontrol logic 84 could then proceed to step 3950, where an instruction is transmitted to the pump to operate at an (acceptable) first (1st) speed. Instep 3952, pumpcontrol logic 84 transmits an instruction to the pump to operate at an (acceptable) second (2nd) speed. Instep 3954, pumpcontrol logic 84 transmits an instruction to operate the pump at another (acceptable) speed.Pump control logic 84 then proceeds to step 3942, described hereinabove. It is noted that any number of acceptable speeds can be presented to the user. Accordingly, because the application could be run, viewed, or accessed on a mobile device (e.g., not tethered to a specific location) the wizard/application enables the user to stand poolside, watching features as speeds/flows are automatically displayed bypump control logic 84 or selected by the user/installer for each prompt. The wizard/application also enables the user/installer to stand at the equipment pad, watching equipment function (e.g., heater ignition) as the pump steps through various speeds/flows. Optionally, as shown insteps control logic 84 could sense and/or advise of a maximum speed/flow beyond which the pump cavitates or reaches an undesirable inflection point in energy consumption/efficiency. For example, pumpcontrol logic 84 could determine the maximum speed/flow beyond which the pump cavitates using operational data received from an accelerometer, optical sensor, or other means. Instep 3946, pumpcontrol logic 84 determines if the user selected setpoints are causing pump cavitation. If a negative determination is made instep 3946, pumpcontrol logic 84 proceeds to step 3944, discussed hereinabove. If a positive determination is made instep 3946, pumpcontrol logic 84 proceeds to step 3948, where an alert is transmitted to the user. Alternatively, the system could determine speeds at which the pump cavitates beforehand and remove the speeds at which the pump cavitates from the acceptable setpoints that are presented to the user instep 3942. Also optionally, pumpcontrol logic 84 could suggest to the user alternative modes of operation (e.g., other than that selected by the user) that either improve the reliability of one or more pieces of installed pool/spa equipment, or improve the efficiency of one or more pieces of installed pool/spa equipment, individually, or as a whole system. For example, other pieces of installed pool/spa equipment could communicate with thepump control logic 84 and advise of optimum performance criteria. This logic could reside in other installed pool/spa equipment and be communicated to the pump, or the logic could be contained within the pump itself. -
FIG. 19S is a flowchart illustrating processing steps carried out by thepump control logic 84 for automatically determining the pump setpoints that should be used based on the user's installed equipment and preferences. According to this embodiment, pumpcontrol logic 84 is able to “auto detect” equipment that is installed and automatically determine how the system should be run based on a variety of optimization choices (e.g., energy consumption, water feature performance, heating preferences, etc.). Instep 3956, pumpcontrol logic 84 prompts the user to specify desired pool/spa activities (e.g., bathing, swimming, water sports, etc.). As described above, pumpcontrol logic 84 could present the user with a list of pre-programmed activities from which to choose, the user could search a database of pre-programmed activities, or the user could program custom activities and save the same to memory for later retrieval and use. Instep 3958, pumpcontrol logic 84 receives operational data from pool/spa equipment. Instep 3960, pumpcontrol logic 84 determines what pool/equipment has been installed, using the received operational data therefrom. Instep 3962, pumpcontrol logic 84 retrieves the installed equipment setpoints (e.g., minimum flow and/or pressure for heater operation) from memory. Using the equipment setpoints, instep 3964, pumpcontrol logic 84 then determines the optimal speed setpoints for the pump based on all of the installed equipment. For example, pumpcontrol logic 84 could estimate the necessary pump speed. Alternatively, pumpcontrol logic 84 could step through various speeds/flows and receive operational data from the installed equipment (e.g., heaters, water features, valves, etc.) when there is sufficient flow and/or pressure for operation.Pump control logic 84 then proceeds to step 3966, wherepump control logic 84 stores the pump setpoint data to memory, and then the process ends. It is also contemplated that, in addition to pump speed,pump control logic 84 could capture the correct valve positions for delivering the required flow and/or pressure.Pump control logic 84 could also search for signals from any smart utility, radio frequency, WiFi, cellular, Bluetooth, geo-positioning, etc. that provides data for energy costs, energy discount periods, peak demand, etc. (seeFIG. 33T ).Pump control logic 84 could then use this data to optimize performance and/or energy costs. - In addition to the foregoing, the application/wizard could walk the user through multiple steps for different installation modes, such as relay control or connection to pool/spa automation controllers (e.g., Hayward automation), and could indicate supported software levels of the pool/spa automation controllers. The application could also access dealer-defined programs/schedules via the cloud and then download the programs/scheduled to the pump for local installation. Although
pump control logic 84 could operate according to a dealer-defined or user-defined schedule, pumpcontrol logic 84 is capable of determining when pool/spa equipment requires a flow that deviates from the normal schedule (e.g., due to user interaction, weather patterns, addition of pool/spa equipment, etc.) and automatically adjusting the pump flow/speed therefore. The application could further provide the user/installer with answers to frequently asked questions (i.e., FAQs) for the installation process as well as for individual pieces of pool/spa equipment, installation videos (either stored locally or as links accessible through communication protocols discussed herein), and can serve as a dynamic “quick start guide.”Pump control logic 84 could also serve as an Automated Engineered pool system solution for areas having regulations, such as in Florida (e.g., reports and/or calculates total dynamic head and/or flow). As described herein, an “Automated Engineered” pool system solution is one that automatically derives Total Dynamic Head (“TDH”) by measuring key metrics. For example, it could measure suction head (negative pressure) on the vacuum side of the pump and measure the pressure head on the pressure side of pump, both measurement devices being integral or adjacent to the pump, to derive Total Dynamic Head. Further, an overall System Curve (TDH vs. flow) could be estimated or calculated from a single point or generated when measured at multiple speeds when using a multi-speed pump. -
FIG. 19T is a flowchart illustrating processing steps carried out by thepump control logic 84 for recording baseline performance data for future reference. More specifically, once the initial installation of the pool equipment is complete (seeFIGS. 19R and 19S ),pump control logic 84 can record initial operational data from the installed equipment. For example, instep 3968, pumpcontrol logic 84 determines if the user has completed the installation wizard (seeFIGS. 19R and 19S ). If a negative determination is made instep 3968, pumpcontrol logic 84 repeats step 3968. If a positive determination is made instep 3968, pumpcontrol logic 84 proceeds to step 3970, wherepump control logic 84 receives operational data from installed pool/spa equipment (e.g., pump performance, motor performance, sound levels, etc.). Instep 3972, pumpcontrol logic 84 saves the operational data to the memory as baseline performance data. This baseline performance data could be used, for example, in combination with the health monitoringpump control logic 84 processing steps shown inFIG. 19D or as illustrated inFIG. 19U , discussed hereinbelow. -
FIG. 19U is a flowchart illustrating processing steps carried out by thepump control logic 84 for determining pump health by comparing baseline performance data and current operational data. Instep 3974, pumpcontrol logic 84 retrieves baseline performance data (e.g., pump performance, motor performance, sound levels, etc.) from the memory. Instep 3976, pumpcontrol logic 84 determines an alert threshold (e.g., performance down 10%, sound level increase 10%, etc.). Instep 3978, pumpcontrol logic 84 receives current operational data from the installed pool/spa equipment and/or other connected devices (e.g., sound level from microphone located at the pump). Instep 3980, pumpcontrol logic 84 calculates the change (e.g., delta) from the baseline performance data. Instep 3982, pumpcontrol logic 84 determines if the change from baseline performance is greater than the threshold. If a negative determination is made instep 3982, pumpcontrol logic 84 returns to step 3978. If a positive determination is made instep 3982, pumpcontrol logic 84 proceeds to step 3984, wherepump control logic 84 determines if there are retries remaining. If a positive determination is made instep 3984, pumpcontrol logic 84 returns to step 3978. If a negative determination is made instep 3984, pumpcontrol logic 84 proceeds to step 3986, where an alert is transmitted to the user (e.g., “Service Pump”). The process then ends. -
FIG. 19V is a flowchart illustrating processing steps carried out by thepump control logic 84 for determining current weather conditions. Instep 3988, pumpcontrol logic 84 receives an IP address from a smart device on a local network. Instep 3990, pumpcontrol logic 84 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 3992, pumpcontrol logic 84 receives web data on current weather conditions (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). It is noted thatpump control logic 84 can receive web data through any wired and/or wireless communication protocols disclosed herein. Current weather conditions can include, for example, temperature, precipitation, wind speed, wind direction, etc. Web data on current weather conditions could also include live 3rd party data, for example, live weather maps of precipitation and cloud cover. Instep 3994, poolpump control logic 84 saves the current weather conditions to the memory for later retrieval. Instep 3996, pumpcontrol logic 84 is delayed by X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and then the process returns to step 3988. Optionally, instep 3998, pumpcontrol logic 84 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 4000, pumpcontrol logic 84 could receive the ZIP code data from the user interface device. Instep 4002, pumpcontrol logic 84 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi). While the foregoing is discussed in connection withpump control logic 84 obtaining current weather information from a remote source (e.g., the internet), it is contemplated thatpump control logic 84 could obtain current weather information from local sources as well (e.g., receive operational data from local temperature sensors/thermocouples, wind meters/anemometers, rain gauges/ombrometers, etc.). -
Pump control logic 84 can receive web data on future/forecasted weather conditions (e.g., 7-day forecasts, almanacs, etc.), in addition to current weather forecasts.FIG. 19W is a flowchart illustrating processing steps carried out by thepump control logic 84 for determining forecasted weather conditions. Although the processing steps shown inFIGS. 19V and 19W are discussed sequentially, it should be understood that the processing steps carried out bypump control logic 84 inFIGS. 19V and 19W could operate in parallel, or alternatively, in series with each other. Instep 4004, pumpcontrol logic 84 receives an IP address from a smart device on a local network. Instep 4006, pumpcontrol logic 84 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 4008, pumpcontrol logic 84 receives web data on forecasted weather conditions (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). It is noted thatpump control logic 84 can access receive web data through any wired and/or wireless communication protocols disclosed herein. Forecasted weather conditions can include, for example, temperature, precipitation, wind speed, wind direction, etc. Web data on forecasted weather conditions could also include live 3rd party data, for example, live weather maps of precipitation and cloud cover. Instep 4010, poolpump control logic 84 saves the forecasted weather conditions to the memory for later retrieval. Instep 4012, pumpcontrol logic 84 is delayed by X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and then the process returns to step 4004. Optionally, instep 4014, pumpcontrol logic 84 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 4016, pumpcontrol logic 84 could receive the ZIP code data from the user interface device. Instep 4018, pumpcontrol logic 84 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi). -
FIG. 19X is a flowchart illustrating processing steps carried out bypump control logic 84 for instructing the pump to run higher load operating modes during cooler times of the day if higher than normal temperatures are expected. Instep 4020, pumpcontrol logic 84 receives current date and time data (e.g., from internal clock, as web data, etc.). Instep 4022, pumpcontrol logic 84 retrieves forecasted weather conditions (e.g., hourly forecast) for the current date. The forecasted weather conditions can be obtained by way of the process described herein, in connection withFIG. 19W . Instep 4024, pumpcontrol logic 84 retrieves the pump schedule for the current date from the memory. Instep 4026, pumpcontrol logic 84 identifies periods (e.g., times of day) of high load operating conditions in the pump schedule. Instep 4028, pumpcontrol logic 84 identifies periods of forecasted high temperatures (e.g., times of day above 80° F.). Instep 4030, pumpcontrol logic 84 determines if the periods of forecasted high temperatures and high load conditions coincide. If a negative determination is made (e.g., the pump will not be running at a high-load during periods of high temperature) instep 4030, pumpcontrol logic 84 returns to step 4020. If a positive determination is made (e.g., the pump will be running at a high-load during periods of high temperature) instep 4030, pumpcontrol logic 84 proceeds to step 4032, where periods of forecasted low temperatures (e.g., times of day below 70° F.) are identified.Pump control logic 84 then proceeds to step 4034, where the pump schedule is modified so that the higher load operating modes run during periods of forecasted low temperatures. Instep 4036, pumpcontrol logic 84 saves the modified pump schedule to the memory.Pump control logic 84 then returns to step 4020. -
FIG. 19Y is a flowchart illustrating processing steps carried out bypump control logic 84 for automated operation of pool devices based on current weather conditions (e.g., periods of heavy rain). Instep 4038, pumpcontrol logic 84 retrieves current weather conditions (e.g., precipitation, wind speed, etc.) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 19V . Instep 4040, pumpcontrol logic 84 retrieves maximum precipitation setpoint data from memory. Instep 4042, pumpcontrol logic 84 determines if the current amount of precipitation is above the maximum precipitation setpoint. If a positive determination is made, the process proceeds to step 4044, wherepump control logic 84 transmits an instruction to the pump to suspend operation (e.g., preventing damage due to water ingress). Optionally, instep 4046, pumpcontrol logic 84 could transmit an instruction to disconnect power to high voltage circuits. The process then reverts to step 4038. If a negative determination is made instep 4042, the process proceeds to step 4048, wherepump control logic 84 determines if the operation of any pool devices (e.g., pump, smart relays, smart circuit breaker, etc.) has been altered due to the weather condition (e.g., heavy precipitation). If a negative determination is made, the process reverts to step 4038. If a positive determination is made, the process proceeds to step 4050, wherepump control logic 84 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 4052, pumpcontrol logic 84 could transmit a message to the user (e.g., “precipitation subsided”). The process then reverts to step 4038. In addition to the foregoing, it is also contemplated thatpump control logic 84 could suspend operation in advance of periods of heavy precipitation by monitoring the forecasted weather conditions and suspending operation before the precipitation begins. -
FIG. 19Z is a flowchart illustrating processing steps carried out by thepump control logic 84 for automated operation of pool devices based on current weather conditions (e.g., high winds). Instep 4054, pumpcontrol logic 84 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 19V . Instep 4056, pumpcontrol logic 84 retrieves maximum wind speed setpoint data from memory. Instep 4058, pumpcontrol logic 84 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 4060, wherepump control logic 84 transmits an instruction to the pump to increase circulation, thereby providing better skimmer performance. Optionally, instep 4062, pumpcontrol logic 84 could transmit an instruction to actuate a smart valve(s). As referred to herein, smart valves (or smart valve actuators) include an actuator which rotates valves in response to a control signal from pool control logic 70 (e.g., waterfeature control logic 72, valveactuator control logic 74,cleaner control logic 76,lighting control logic 78,heater control logic 80, chemistry automation control logic 82). Accordingly, smart valves could be utilized in any application that requires the automated operation of valves in a pool/spa environment. For example, actuation of smart valves bypump control logic 84 could thereby automatically engage pool/spa operation, solar heating, pool cleaners, water features, provide additional flow to the skimmer(s), and/or decrease flow from the suction outlets during periods of high winds. Also optionally, instep 4064, pumpcontrol logic 84 could further detect accumulated debris at pool/spa equipment (e.g., motor fan inlet) and instep 4066, pumpcontrol logic 84 could transmit an alert to the user (e.g., “Remove Debris from Motor Fan Inlet”). The process then reverts to step 4054. If a negative determination is made instep 4058, the process proceeds to step 4068, wherepump control logic 84 determines if the operation of any pool devices has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 4054. If a positive determination is made, the process proceeds to step 4070, wherepump control logic 84 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 4072, pumpcontrol logic 84 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 4054. -
FIG. 19AA is a flowchart illustrating processing steps carried out bypump control logic 84 for automatically adjusting pump speed/flow for cleaning a pool/spa in response to a weather condition (e.g., high winds). More specifically,pump control logic 84 can manage and/or respond to heavy debris/particulate sources (e.g., trees, vegetation, dust, etc.) up-wind of the pool/spa area by adjusting the pump speed or flow, based on wind speed and/or direction. For example, instep 4074, pumpcontrol logic 84 retrieves current weather conditions (e.g., wind speed, direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 19V . Instep 4076, pumpcontrol logic 84 retrieves maximum wind speed setpoint data from memory. Instep 4078, pumpcontrol logic 84 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 4080, wherepump control logic 84 retrieves skimmer location data from the memory. The skimmer location data can be obtained by way of the process described herein, in connection withFIG. 33A . Instep 4082, pumpcontrol logic 84 determines the most downwind skimmer(s). Instep 4084, pumpcontrol logic 84 transmits an instruction to increase the flow to the downwind skimmer(s) and the process then reverts to step 4074. The flow to the downwind skimmer(s) can be increased in various ways, including, but not limited to, transmitting an instruction to the pump to increase the pump speed, and transmitting an instruction to a smart valve to actuate, thereby adjusting to a position that optimizes flow to the skimmer. Optionally, instep 4086, pumpcontrol logic 84 could transmit an instruction to deactivate or reduce water features (e.g., decrease pump speed, adjust valve positions to reduce flow, etc.), thereby preventing splash-out. If a negative determination is made instep 4078, the process proceeds to step 4088, wherepump control logic 84 determines if the operation of any pool devices (e.g., pump, smart valves, etc.) have been altered due to the weather condition (e.g., high winds). If a negative determination is made instep 4088, the process reverts to step 4074. If a positive determination is made instep 4088, pumpcontrol logic 84 proceeds to step 4090, wherepump control logic 84 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 4092, pumpcontrol logic 84 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 4074. -
FIG. 19AB is a flowchart illustrating processing steps carried out bypump control logic 84 for automatically adjusting operation of the pump in response to weather conditions (e.g., ambient temperature, wind speed, and/or wind chill) to provide freeze protection. This enablespump control logic 84 to provide a lower, more energy efficient setpoint (e.g., minimum speed and temperature). Instep 4094, pumpcontrol logic 84 retrieves current weather conditions data from memory (e.g., ambient temperature, wind speed, and/or wind chill). The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 19V . Instep 4096, pumpcontrol logic 84 receives operational data from the pump (e.g., pump speed/flow). Instep 4098, pumpcontrol logic 84 determines if there is a freeze risk based on the current weather conditions and the speed/flow of the pump. If a negative determination is made (e.g., there is no freeze risk) instep 4098, pumpcontrol logic 84 returns to step 4094. If a positive determination is made (e.g., there is a freeze risk) instep 4098, pumpcontrol logic 84 transmits an instruction to the pump to increase speed/flow.Pump control logic 84 then reverts to step 4094. -
FIG. 19AC is a flowchart illustrating processing steps carried out bypump control logic 84 for adjusting the operation of the pump to meet the needs of other pool/spa equipment. For example, pumpcontrol logic 84 could increase the speed/flow of the pump in response to an increase in the output of the heater, necessitated by a drop in ambient temperature (e.g., heater output increased to maintain desired pool/spa temperature). Instep 4102, the heater output is increased (e.g., due to a drop in ambient temperature). Instep 4104, pumpcontrol logic 84 receives operational data from the heater (e.g., current or requested BTU output). Instep 4106, pumpcontrol logic 84 determines if an increase in pump speed/flow is required based on the operational data received from the heater. If a negative determination is made instep 4106, pumpcontrol logic 84 returns to step 4104. If a positive determination is made instep 4106, pumpcontrol logic 84 proceeds to step 4108, where an instruction is transmitted to the pump to increase speed/flow.Pump control logic 84 then returns to step 4104. While the foregoing process steps are discussed in connection with thepump control logic 84 adjusting the operation of the pump in response to the needs of the heater during a drop in ambient temperature, it is contemplated thatpump control logic 84 can adjust the operation of the pump in response to the needs of any of the installed pool/spa equipment disclosed herein. -
FIG. 19AD is a flowchart illustrating processing steps carried out by thepump control logic 84 for determining and running a mode of operation based on the time of day (e.g., daytime or evening) or time of year (e.g., season). Instep 4110, pumpcontrol logic 84 receives an IP address from a smart device on a local network. Instep 4112, pumpcontrol logic 84 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 4114, pumpcontrol logic 84 receives web data on sunrise/sunset times (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). It is noted thatpump control logic 84 can receive web data through any wired and/or wireless communication protocols disclosed herein. Instep 4116, pumpcontrol logic 84 saves the sunrise/sunset data to the memory for later retrieval. Instep 4118, pumpcontrol logic 84 receives current time and date data (e.g., from web or internal clock). Instep 4120, pumpcontrol logic 84 determines if the current time is between sunrise and sunset (e.g., daytime). If a positive determination is made instep 4120, pumpcontrol logic 84 proceeds to step 4122, wherepump control logic 84 retrieves equipment setpoints for a daytime operation mode (e.g., pump speed/flow during the day). Instep 4124, pumpcontrol logic 84 transmits instructions to installed pool/spa equipment to operate at the retrieved setpoints and then pumpcontrol logic 84 returns to step 4118. If a negative determination is made instep 4120, pumpcontrol logic 84 proceeds to step 4126, wherepump control logic 84 retrieves equipment setpoints for an evening operation mode (e.g., pump speed/flow during the evening) and then pumpcontrol logic 84 proceeds to step 4124, discussed hereinabove. While the foregoing process steps have been discussed in terms of selecting a mode of operation based on the time of day, it is also contemplated thatpump control logic 84 could select the mode of operation based on the time of year (e.g., season). Furthermore the modes of operation could be pre-programed (e.g., default seasonal modes of operation/programming provided by the manufacturer, pool professional (e.g., service technician, builders, installers, etc.)) or user-defined (e.g., customized modes of operation based on the time of day or season). Optionally, instep 4128, pumpcontrol logic 84 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 4130, pumpcontrol logic 84 could receive the ZIP code data from the user interface device. Instep 4132, pumpcontrol logic 84 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi). -
FIG. 19AE is a flowchart illustrating processing steps carried out by thepump control logic 84 for determining and running a mode of operation based on the amount of sun exposure. Instep 4134, pumpcontrol logic 84 receives operational data from an ambient light sensor (e.g., sun exposure). Instep 4136, pumpcontrol logic 84 retrieves ambient light setpoints (e.g., minimum and/or maximum sun exposure for modes of operation) from the memory. Instep 4138, pumpcontrol logic 84 determines if the current ambient light is above the minimum setpoint. Conversely, pumpcontrol logic 84 could also determine if the current ambient light is below the below the minimum setpoint or above or below the maximum setpoint, thereby determining high or low sun exposure. If a positive determination is made instep 4138, pumpcontrol logic 84 proceeds to step 4140, wherepump control logic 84 retrieves equipment setpoints (e.g., pump speed/flow) for a high sun exposure operation mode. If a negative determination is made instep 4138, pumpcontrol logic 84 proceeds to step 4144, wherepump control logic 84 retrieves equipment setpoints (e.g., pump speed/flow) for a low sun exposure operation mode. Instep 4142, pumpcontrol logic 84 transmits an instruction(s) to installed pool/spa equipment to operate at the retrieved setpoints for the current operation mode and then the process reverts to step 4134. -
FIG. 19AF is a flowchart illustrating processing steps carried out bypump control logic 84 for minimizing sound pressure when pool occupants are in close proximity to a pumping system. Instep 4146, pumpcontrol logic 84 receives operational data from a proximity sensor. Instep 4148, pumpcontrol logic 84 determines if there are pool occupants in close proximity. If a positive determination is made instep 4148, pumpcontrol logic 84 proceeds to step 4150, wherepump control logic 84 retrieves maximum ambient noise setpoint data for pump operation from the memory (e.g., maximum allowable decibels when occupants are in close proximity to the pump). Instep 4152, pumpcontrol logic 84 receives ambient noise operational data (e.g., measured decibels from a microphone positioned at or near the pump). Instep 4154, pumpcontrol logic 84 determined if the measured ambient noise is above the maximum ambient noise setpoint. If a positive determination is made atstep 4154, pumpcontrol logic 84 proceeds to step 4156, wherepump control logic 84 transmits an instruction to the pump to decrease output (e.g., reduce speed by 5%), thereby reducing the decibels generated by the pump.Pump control logic 84 then reverts to step 4152. If a negative determination is made atstep 4154, pumpcontrol logic 84 reverts to step 4152. If a negative determination is made atstep 4148, pumpcontrol logic 84 proceeds to step 4158, wherepump control logic 84 determines if the operation of the pumping system has been altered (e.g., the output of the pump was previously reduced from normal operating levels). If a negative determination is made instep 4158, pumpcontrol logic 84 reverts to step 4146. If a positive determination is made instep 4158, pumpcontrol logic 84 proceeds to step 4160, wherepump control logic 84 transmits an instruction to the pump system equipment to resume normal operation. Thus, pumpcontrol logic 84 could reduce the output of the pumping system to reduce decibel levels when pool occupants are detected, but resume normal operation when pool occupants are no longer present. -
FIG. 19AG is a flowchart illustrating processing steps carried out bypump control logic 84 for addressing alert conditions. More specifically,pump control logic 84 could ask the user if it should automatically address the issue and if it should automatically address the issue in the future. Instep 4162, pumpcontrol logic 84 transmits an alert and recommendation to the user (e.g., “Excessive Motor Heating—Reduce Speed”). The alert and recommendation can be generated as described herein, in connection withFIG. 19D . Instep 4164, pumpcontrol logic 84 prompts the user for automatic system implementation of the recommendation (e.g., “Reduce Motor Speed?—Y/N”). Instep 4166, pumpcontrol logic 84 determines if the user elects automatic implementation of the recommendation. If a negative determination is made instep 4166, the process ends. If a positive determination is made instep 4166, pumpcontrol logic 84 proceeds to step 4168, wherepump control logic 84 prompts the user for automatic implementation of the recommendation for subsequent similar alerts (e.g., “Automatically Address This Alert From Now On?”). Instep 4170, pumpcontrol logic 84 determines if the user elects automatic implementation for subsequent alerts. If a positive determination is made instep 4170, pumpcontrol logic 84 saves the user preference to memory. Instep 4174, pumpcontrol logic 84 transmits an instruction to the installed pool/spa equipment to implement the recommendation (e.g., reduce motor speed). If a negative determination is made instep 4170, pumpcontrol logic 84 proceeds to step 7174 and the process then ends. -
FIG. 19AH is a flowchart illustrating processing steps carried out bypump control logic 84 for automatically advising the user of nearby pool service companies when the pumping system, or any other installed pool/spa equipment, needs attention. It is contemplated thatpump control logic 84 could notify the user by way of an on-board indicator provided on the pumping system and/or by way of a notification “pushed” out to other devices (e.g., smart devices) via any of the communication protocols disclosed herein.Pump control logic 84 could also automatically notify a user's preferred pool service provider when the pumping system, or any other installed pool/spa equipment, needs attention. Instep 4176, pumpcontrol logic 84 receives operational data from the installed pool/spa equipment (e.g., temperature of pump motor). Instep 4178, pumpcontrol logic 84 determines if any of the installed pool/spa equipment is in need of service.Pump control logic 84 can determine if any of the pool/spa equipment is in need of service by way of a similar process as described herein, in connection withFIG. 19D . If a negative determination is made instep 4178, pumpcontrol logic 84 returns to step 4176. If a positive determination is made instep 4178, pumpcontrol logic 84 proceeds to step 4186, wherepump control logic 84 determines the location of the pool/spa. The location of the pool/spa can be determined by way of a similar process as described herein, in connection withFIG. 19V . Instep 4188, pumpcontrol logic 84 receives web data on local pool service providers (e.g., pool service providers in close proximity to the pool/spa location). Instep 4190, pumpcontrol logic 84 prompts the user to select a preferred service provider (e.g., from a list of the local pool service providers. Instep 4192, pumpcontrol logic 84 stores the selected service provider to memory. Instep 4194, pumpcontrol logic 84 transmits an alert to the selected service provider (e.g., skimmer filter at [address] requires replacement). Optionally,pump control logic 84 could automatically notify a previously selected preferred service provider when any of the pool/spa equipment needs attention. For example, instep 4180, pumpcontrol logic 84 could determine if a pool service provider was previously selected. If a negative determination is made instep 4180, pumpcontrol logic 84 proceeds to step 4186. If a positive determination is made instep 4180, pumpcontrol logic 84 proceeds to step 4182, wherepump control logic 84 retrieves the previously selected service provider data from the memory. Instep 4184, pumpcontrol logic 84 transmits an alert to the previously selected service provider (e.g., skimmer filter at [address] requires replacement).Pump control logic 84 then returns to step 4176.FIG. 19AI is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4300, thepump control logic 84 receives an instruction to monitor the status of the filter. Instep 4302, thepump control logic 84 retrieves data on the factory specified parameters from memory for flow and/or pressure drop in the pump. Instep 4304, thepump control logic 84 receives operational data from a sensor regarding the flow and/or pressure drop in the pump. Instep 4306, thepump control logic 84 determines the pressure drop and/or flow rate in the pump. Instep 4308, thepump control logic 84 determines whether the pressure and/or flow rate is within the factory specified parameters. If a positive determination is made, the process ends, and if a negative determination is made, thepump control logic 84 proceeds to step 4310 where the appropriate valves are actuated to initiate backwash filtering. -
FIG. 19AJ is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4312, thepump control logic 84 receives an instruction to monitor the debris on the surface of the pool. Instep 4314, thepump control logic 84 receives operational data from the vision system which provides the location and amount of debris in locations of the pool surface. Instep 4316, thepump control logic 84 determines the location of high debris area on the pool surface. Instep 4318, thepump control logic 84 alters the position of return fittings and the skimmers to remove debris from the pool surface in an efficient and effective manner. -
FIG. 19AK is another flowchart illustrating the processing logic of thepump control logic 84. For example, pumpcontrol logic 84 could determine the correct water flow for water features by communicating with other pieces of installed pool/spa equipment which advisepump control logic 84 of optimum performance criteria. This logic could reside in other installed pool/spa equipment and be communicated to the pump, or the logic could be contained within the pump itself. Instep 4320, thepump control logic 84 receives an instruction to determine the correct flow for a water feature. Instep 4322, thepump control logic 84 retrieves data for the water features from memory. The data retrieved can include, but is not limited to, type of water feature, size, capacity, water flow capacity, water flow levels, etc. Instep 4324, thepump control logic 84 receives user input, if any, for water feature customization to achieve a custom appearance. For example, a manual mode could be provided to allow the user to specify the desired water feature performance. If there is no user input, then thepump control logic 84 can use the data retrieved instep 4322. Instep 4326, thepump control logic 84 can calculate the optimal flow rate based on the characteristics of the water feature. Such characteristics, include but is not limited to, water feature, size, capacity, water flow capacity, water flow levels, etc. Instep 4328, thepump control logic 84 receives a schedule for the water features, if any. Instep 4330, thepump control logic 84 adjusts the valves of the water feature so that the their operation can be schedule based. Instep 4332, thepump control logic 84 transmits the flow rate needed for the water feature. The type of water features can include, but is not limited to, laminars, bubblers, waterfalls, deck jets, fountains, and skuppers. -
FIG. 19AL is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4334, thepump control logic 84 receives an instruction to provide flow to a heater. Instep 4336, thepump control logic 84 retrieves water temperature set point data for heater operation from memory. This data could include minimum and maximum water temperatures set by a user or set by factory specified operating parameters. Instep 4338, thepump control logic 84 receives operational temperature data. Instep 4340, thepump control logic 84 determines whether the water temperature is below a minimum set point. If a positive determination is made, thepump control logic 84 proceeds to step 4342 to transmit an instruction to provide flow to the heater. If a negative determination is made, thepump control logic 84 proceeds to step 4344 to determine whether the water temperature is above a maximum set point. If a negative determination is made, the process ends. If a positive determination is made, thepump control logic 84 actuates valves to bypass the heater to improve hydraulic efficiency instep 4346. -
FIG. 19AM is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4348, thepump control logic 84 receives an instruction to activate a heater or monitor or address heating controls. Instep 4350, thepump control logic 84 retrieves an optimum flow rate set point data for heater operation from memory. Instep 4352, thepump control logic 84 receives operational flow rate and/or valve position data. In this step, thepump control logic 84 receives data from the heat source identifying when the heat source has adequate flow and/or pressure to operate. Instep 4354, thepump control logic 84 determines whether the operational data is within the optimal set point range. If a positive determination is made, thepump control logic 84 proceeds to step 4356 to store and/or update current optimal flow rate for each heater device. Thepump control logic 84 can store a history of this data. If a negative determination is made, thepump control logic 84 proceeds to step 4358 where a determination is made regarding whether retries are remaining. If a positive determination is made, thepump control logic 84 proceeds to step 4360, to transmit an instruction to increase flow to the heater by five percent. Any other percentage increase could be used. If a negative determination is made, thepump control logic 84 proceeds to step 4362 to transmit an error condition and the process would then end. -
FIG. 19AN is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4364, thepump control logic 84 receives an instruction to manage a pump. Instep 4366, thepump control logic 84 receives operational data from a pool cover. Instep 4368, thepump control logic 84 determines whether the pool cover is closed. If a negative determination is made, thepump control logic 84 reverts back tostep 4366. If a positive determination is made, thepump control logic 84 proceeds to step 4370 where it retrieves pool configuration parameters from memory such as pool surface area, volume, geometry, water features, etc. instep 4372, thepump control logic 84 determines proper operation of the pump when the pool cover is closed based on the factors retrieved above. Instep 4374, thepump control logic 84 determines proper pump speed to ensure the pool cover is not damaged by flooding. Instep 4376, thepump control logic 84 can determine the decreased rate of chlorine reduction due to lack of direct sunlight or less solar loading. Instep 4378, thepump control logic 84 transmits instructions to pump of the foregoing calculations such as proper pump speed. -
FIG. 19AO is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4380, thepump control logic 84 receives an instruction to manage the water level in the pool. Instep 4382, thepump control logic 84 retrieves pool water level settings from memory. This setting can be user set or set by factory default parameters. Instep 4384, thepump control logic 84 receives operational data from a sensor monitoring the water level in a pool. Instep 4386, thepump control logic 84 determines whether the water level is within the set point parameters. If a positive determination is made, thepump control logic 84 proceeds to step 4388 to transmit an appropriate message to the user or the system. If a negative determination is made, thepump control logic 84 proceeds to step 4390 to adjust the operation of the pump to allow the water level in the pool to reach the set point parameters. Instep 4392, thepump control logic 84 transmit an appropriate message to the user or the system that the water level is not in set point range and that the pump operation has been adjusted to remedy the water level situation. -
FIG. 19AP is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4394, thepump control logic 84 receives an instruction to manage the operation of the pump based on the number of bathers in the pool. Instep 4396, thepump control logic 84 receives operational data from motion sensors. Instep 4398, thepump control logic 84 determines the number of bathers in the pool based on the data from the motion sensors. Instep 4400, thepump control logic 84 retrieves pool configuration parameters from memory. Such parameters could include, but is not limited to, pool surface area, volume, geometry, etc. The parameters will assist thepump control logic 84 instep 4402 to determine proper pump speed based on the number of bathers in the pool. The pump instep 4402 can adjust its operation based on the number of bathers. Furthermore, thepump control logic 84 could also control other equipment that needs to be deactivated or activated based on the presence and/or number of bathers in the pool. For example, instep 4404, thepump control logic 84 determines whether to activate or deactivate other pool equipment based on the number of bathers in the pool. Instep 4406, thepump control logic 84 transmits the deactivation or activation signal to the other equipment. -
FIG. 19AQ is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4408, thepump control logic 84 receives an instruction to monitor system curve of the pump which is the summation of the dynamic head. Instep 4410, thepump control logic 84 retrieves data regarding the pump from memory. Instep 4412, thepump control logic 84 receives operational data from sensors monitoring the pump. Instep 4414, thepump control logic 84 estimates or calculates the system curve based on the multiple speeds of the pump. Alternatively, pumpcontrol logic 84 could estimate or calculate the overall system curve based on a single point. Instep 4416, thepump control logic 84 provides an indication of system efficiency rating and alerts trade and/or consumers based on factory defined or selectable changes. Instep 4418, thepump control logic 84 provides an indication of system efficiency such as “efficiency mode,” “performance mode” etc. and assigns a push button to go to a selected mode with one push of a button. Instep 4420, thepump control logic 84 calculates periods of hydraulic inefficiencies and instep 4422, it recommends ways to improve hydraulic efficiency. Instep 4424, thepump control logic 84 auto-delivers the correct flow or speed to make the equipment more efficient. For example, pumpcontrol logic 84 could measure suction head (negative pressure) on the vacuum side of the pump and measure pressure head on the pressure side of pump, both measurement devices being integral or adjacent to the pump, to derive Total Dynamic Head (“TDH”). An overall System Curve (TDH vs. flow) could also be estimated or calculated from a single point, or generated when measured at multiple speeds when using a multi-speed pump. Furtherpump control logic 84 could compare the calculated system curve to known industry system curves (e.g., “Curve A”, “Curve C”, etc.) and determine a hydraulic efficiency “score.”Pump control logic 84 could then determine how to improve the efficiency score and then either provide general suggestions to the user to improve said score, or automatically implement the suggestions. In one example, pumpcontrol logic 84 could monitor the typical operating flow of the pool/pump and suggest alternate schedules that would achieve the same number of turnovers in a day with lower power consumption. -
FIG. 19AR is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4426, thepump control logic 84 receives an instruction to monitor demand based operation from local utility companies. Instep 4428, thepump control logic 84 retrieves data on factory specified parameters from memory for the utility company. Instep 4430, thepump control logic 84 receives operation data of the pump flow. Instep 4432, thepump control logic 84 determines whether the pump operational data is within the set point parameters set by the utility company. If a positive determination is made, thepump control logic 84 proceeds to step 4434 where a message is transmitted to the user regarding the pump operational data being within the set point parameters of the utility company and the process ends. If a negative determination is made, thepump control logic 84 proceeds to step 4436 where thepump control logic 84 performs a function or changes the pump operation to conform to the utility company set point parameters. Then instep 4438, thepump control logic 84 transmits a message that the pump operation has changed to conform to the utility company standards. -
FIG. 19AS is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4440, thepump control logic 84 receives an instruction to provide flow to a selected pool equipment. Instep 4442, thepump control logic 84 retrieves data on factory specified parameters from memory for the pumping needs of a selected pool equipment. Instep 4444, thepump control logic 84 determines whether the flow data is being defined by the selected pool equipment. If a negative determination is made, thepump control logic 84 proceeds to step 4446 where the pump itself defines the flow parameters for the selected pool equipment based on the flow provided by the pump. If a positive determination is and afterstep 4446, thepump control logic 84 proceeds to step 4448 where it receives operational data for the flow of the pool equipment. Instep 4450, thepump control logic 84 determines whether the flow data is within the set point parameters either defined by the equipment or the pump. If a positive determination is made, a message is transmitted to the user or the system that the flow data is within operating parameters. If a negative determination is made, thepump control logic 84 proceeds to step 4454 where the speed of the pump is increased periodically to meet the demand of the pool equipment and the process again reverts to step 4448 to receiver operational data and make the same determination instep 4450. -
FIG. 19AT is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4456, thepump control logic 84 receives an instruction to measure the turbidity of the water. Instep 4458, thepump control logic 84 retrieves data on factory specified parameters from memory regarding the turbidity of the water. Instep 4460, thepump control logic 84 recieves operational turbidity data. Instep 4462, thepump control logic 84 determines whether the turbidity data is within the specified operating parameters. If a positive determination is made, thepump control logic 84 proceeds to step 4464 where a message is transmitted regarding the turbidity data being within the operating range. If a negative determination is made, thepump control logic 84 proceeds to step 4466 where a determination is made as to whether the user wants to set a blackout time instead of a filter time. If a negative determination is made, thepump control logic 84 proceeds to step 4468 where thepump control logic 84 automatically sets the filter schedule based on turbidity level. If a positive determination is made, thepump control logic 84 sets a blackout time period based on the user input instep 4470. Then instep 4472, thepump control logic 84 adjusts the pump to pump only what is needed to save energy and meet turbidity levels. -
FIG. 19AU is another flowchart illustrating the processing logic of thepump control logic 84. Instep 4473, thepump control logic 84 receives an instruction to prime the pump. Instep 4474, thepump control logic 84 can start the pump at the desired speed, not the prime speed. Instep 4476, thepump control logic 84 receives operation data from the pump regarding water detection. Instep 4478, thepump control logic 84 determines whether water is detected. If a positive determination is made, thepump control logic 84 proceeds to step 4480 where the priming period timer is cleared and the process ends. If a negative determination is made, thepump control logic 84 proceeds to step 4482 where a timer is started or continued. Instep 4484, thepump control logic 84 make a determination as to whether there is time remaining in the timer that was started. If a positive determination is made, thepump control logic 84 decrements the timer and proceeds back tostep 4476. If a negative determination is made, thepump control logic 84 proceeds to step 4484 where a determination is made as to whether if the current try is a retry. If a positive determination is made, thepump control logic 84 proceeds to step 4490 where an error condition is transmitted alerting the system or user that the priming failed and the process ends. If a negative determination is made and the current try is the first try, then thepump control logic 84 proceeds to step 4492 where the pump is stopped and allowed to cool. Then instep 4494, thepump control logic 84 reprimes at the maximum rotations per minute until flow return, then immediately thepump control logic 84 will return to the user or firmware desired speed. - The above processes for the
pump control logic 84 can also be applied to a pumping system that is able to manage auxiliary pumps used at any given site. Some of the management features can include, but is not limited to, turning auxiliary pumps on/off according to specific schedules, as well as changing the pump speed for a variable speed pump. Indeed, all of the processes for thepump control logic 84 as shown with respect toFIGS. 18-19AU can be applied to auxiliary pumps. Auxiliary pumps can include, but are not limited to, pressure cleaner booster pumps, waterfall pumps, and pumps used for water features or spas. - It is contemplated that any of the various processes in the embodiments described herein in connection with
FIGS. 19A-19AU could be incorporated intopump control logic 84 either alone or in any combination. Further any additional processes disclosed herein in connection with pool control logic 70 (e.g., waterfeature control logic 72, valveactuator control logic 74,cleaner control logic 76,lighting control logic 78,heater control logic 80, chemistry automation control logic 82) could also be incorporated intopump control logic 84 either alone or in any combination. For example, the pump could include or be modularly upgradeable to include any of the various processes in the embodiments described herein in connection withFIGS. 19A-19AU . Further still, any of the flowcharts illustrating processing steps disclosed in connection withpump control logic 84 can be applied to pool control logic 70 (e.g., waterfeature control logic 72, valveactuator control logic 74,cleaner control logic 76,lighting control logic 78,heater control logic 80, chemistry automation control logic 82). - As mentioned briefly above, embodiments may provide smart valves/smart valve actuators that include an actuator which rotates valves in response to a control signal. In one embodiment, the smart valve actuator may function as a stand-alone control for its associated valve or valves. In another embodiment, the smart valve actuator may operate in conjunction with a control automation system as described herein. In a further embodiments, the smart valve actuator can operate according to a preset, preconfigured, and/or modifiable schedule. The smart valve actuator as described further below may provide for an easier installation and use by untrained installers and users. Further, the smart valve actuator may reduce the time and cost required when needing multiple pumps and ball valves to attain a perfect balance of distributed or shared water features. Additionally the smart valve actuator gives the pool owner control over his water features, the ability to articulate and balance them remotely, and the possibility of providing varied effects on demand.
- Traditional (non-smart) valve actuators have been used to electrify a valve to enable remote control. Existing valve actuators have internal or software driven limit switches that the installer can use to program the valve actuator to stop turning the valve at the desired point. This allows a valve to turn to a desired point and deliver a desired effect on a water feature, and prevents the actuator motor from turning the valve to inappropriate positions that may ‘dead-head’ the plumbing, blocking all water flow. However, the installer of such a valve actuator must carefully mount the valve actuator in one of four orientations on top of the valve in order to place the existing 180 degrees of control in the needed orientation with the valve. Then the installer must disassemble the actuator body and carefully re-position two cams so that when the shaft position reaches the desired limit, the cam depresses an internal limit switch and disconnects power to the motor. This installation procedure is time consuming and requires skill.
- Traditional (non-smart) valve actuators have also required an AC low-volt power supply to power the actuator's motor. This power source may require additional circuitry or power transformers to generate this power source dedicated only for use to power the actuator motor. Additionally, traditional valve actuators have only one programmable limit for clockwise and one for counterclockwise actuation. These programmable limits may be set to achieve a particular effect on a water feature, for example causing a pleasing flow on a fountain or a desired height on a deck jet. However, if the water flow or pressure changes at the input port of the valve, the desired effect is lost. Similarly, water flow will change due to pump speed changes, filter media condition, and interaction with the valve position of additional valves in the system or booster pumps that may divert water. Having water features that are influenced by interactions with other equipment and valves results in undesired performance. Installers often add completely isolated plumbing systems only for water features to avoid this undesired behavior. An additional issue with traditional valve actuators is that the cam setting of traditional valves is limited in resolution to the splines present on the actuator drive shaft, and is often too coarse to allow setting for an exact water feature effect. This requires compromise in setting to the nearest setting.
- Embodiments provide a smart valve actuator that addresses many of the drawbacks of traditional valve actuators. In one embodiment, a smart valve actuator has the ability to be controlled directly at the device or from the pool automation system in the same manner as one would control a variable speed pump, for example, by providing control of intermediate positions via software control. In one embodiment the smart valve actuator may be addressed automatically from the control. In another embodiment, the control may be given an address of the smart valve actuator that enables the control to transmit fixed and variable commands to the smart valve actuator. Embodiments may provide a number of additional features such as the ability to set minimum and maximum settings for each smart valve actuator to allow for minimum and maximum allowed flow and to set protection limits to prevent the valve from turning to potentially damaging positions. Additional features may enable the configuration/setting of high, medium and low default flow settings and the ability to control positions variably by using, as non-limiting examples, digital or analog + and − buttons, a digital or analog slider, or a rotary knob on the controller or on the actuator to control the flow. In one embodiment LEDs may be provided that allow the pool owner or servicer to identify settings, set points and flow at a glance. In further embodiments, an added flow, temperature or pressure sensor can monitor the water properties of the output flow and automatically adjust the valve position to seek a programmed setpoint and/or an absolute position sensor can allow manual valve actuation without requiring re-synchronization after the motor is re-connected to the shaft, thereby eliminating the need to mount the smart valve actuator in a particular orientation because the device can manage the valve angle over the entire 360 degree rotation of the valve.
- The smart valve actuator can be used manually or through automation. The smart valve actuator may sit on an existing valve, may have a valve integral to it on pool equipment plumbing or may be located at a location in the backyard to control a flow of water between one to many plumbed water ports. In one embodiment, the smart valve actuator is capable of receiving from, or giving to, a pool controller, a unique address that enables communication of specific commands and settings between the actuator and its controlling entity. In some embodiments, when controlled by the pool automation system, the smart valve actuator may communicate by communication protocols, including without limitation, RS485, Ethernet, WiFi, Bluetooth, ZWave, Zigbee, thread, cellular or another communication protocol. Wireless control of the smart valve actuator from a web-enabled device or the pool controller may occur in the following embodiments: when the WiFi chip is on main (intelligence) PCB, is attached/plugged into main PCB, is modularly upgraded on the main PCB or in the PCB enclosure, is modularly upgraded on/external to the main PCB enclosure, or is remote to the main PCB enclosure. An antenna may be mounted with, or located remote to, the WiFi chip for all prescribed locations/methods described above. The smart valve actuator may also allow pool controlling devices to communicate directly with web-enabled devices (e.g.: phone, tablets, phones, thermostats, voice enabled devices, etc.) without the need to go through a home router.
- The smart valve actuator can be configured to set specific open and close valve settings, and it can be defaulted or configured with default settings for low flow, medium flow, high flow, or programmable flow at varied angles. These flow rates can be used to dial in settings when a pump is powering the water associated with water features. In some cases these flow rates can be used to achieve the desired outcome at the lowest flow increasing the pool's energy efficiency. The smart valve actuator's position may be variably controlled in a number of ways, such as without limitation, by using push and hold digital or analog buttons, digital or analog + and − buttons, a digital or analog slider, and/or a rotary knob on the controller or on the actuator to control the flow.
- In one embodiment, the smart valve actuator may be used to automate filter valves and their associated positions such as, for example, filter, backwash, rinse, waste, closed, recirculate, and winterize. An additional benefit of the smart valve actuator is that it may allow filters and valves to be bypassed when not required for certain applications, such as when operating an attached spa, thereby improving flow and energy efficiency. In another embodiments, the smart valve actuator could be used in connection with the addition of chemicals (e.g., ORP, pH, free chlorine, etc.) to the pool/spa. For example, the smart valve actuator could be used to integrate the automation of various positions for tablet feeding automation.
- In an embodiment, the smart valve actuator may be used to automatically manage water flow needed for operation of suction and pressure cleaners. When a smart valve actuator is used in conjunction with a variable speed pump, the pump may be able to increase its speed to deliver the flow necessary for proper operation of a suction or pressure cleaner, thereby maximizing energy savings when compared to running the variable speed pump at a higher speed throughout the day. In one embodiment, the smart valve actuator control may set angles via commands. The commands may be stored in the controller or the actuator processor. The change in settings may be done automatically; may be done through power interruption to move to the next setting, may be done through time duration of the power interruption; and may be done with a manual setting on the actuator.
- Among its features, the smart valve actuator may have 1 to many increments with increments set at 0.5 degrees for 180 degrees, or other resolution or range. The smart valve actuator may measure the angle set manually and store that position in memory for use as one of its default settings. In one embodiment the smart valve actuator may include sensor capabilities to measure the temperature, flow rates and./or pressure of the input water or output water when the valve is diverted and be able to use the measured parameters to turn the motor to achieve a desired setpoint. The flow sensing or pressure sensing may be built into the smart valve actuator or may be attained by a secondary flow sensor.
- In one embodiment, a stored setpoint flow/pressure level may be used by a PID loop (or other control algorithm) to turn the valve to a needed position to achieve the flow and the smart valve actuator may update the position if conditions (pressure, flow, etc.) changes.
- As noted, the smart valve actuator provides a number of improvements over traditional (non-smart) valve actuators. For example, the smart valve actuator may manage a fluid level in a spa with a sensor or may manage return valves from a spa to prevent the spa from emptying or overfilling via level sensing. The smart valve actuator may block a water feature flow if ambient temperatures are too low thus providing a valve-controlled freeze protection. For example, the smart valve actuator may be operated by a bi-metallic switch as an input that reverses the motor at low temperatures (no circuit board needed). The smart valve actuator may communicate with a pool cover sensor input that prevents activation of a water feature if the pool cover is closed. Additionally, in some embodiments, the smart valve actuator may open a solar panel return if the solar panel temperature has reached a desired setpoint. In one embodiment, the smart valve actuator may include a wind sensor and block a water feature flow if forecasted wind (retrieved from the web) is too high. For example, the smart valve actuator may reverse the motor at higher wind speeds to stop water features from dumping water out of the pool. The smart valve actuator may also block a water feature if flooding is sensed by float or conductivity sensing. In one embodiment, the smart valve actuator may include a dual input power capability that can accept either AC power inputs or DC power input to power the motor. Further, in some embodiments, the smart valve actuator can include a handle, or the like, to provide for manual operation of the smart valve actuator, if necessary, during loss of power (e.g., power cable being cut) or loss of communication (e.g., communications cable being cut, electronics failure, etc.) to the smart valve actuator.
- Among the improvements made possible through the use of the smart valve actuator as described herein are increased efficiency in the pool system. For example, in one embodiment, the smart valve actuator may monitor energy saving interactions with a pump to support a minimum required speed to achieve requested flows in all of the active water features. This approach may enable all water to go through the water features and none through the return jets because of 100% efficiency. Similarly, the smart valve actuator may request a higher RPM if the desired flow cannot be achieved (a pump runs only at filtration speed, but if a water feature is turned on, the smart valve actuator controller can request increased speed if the flow setpoint cannot be achieved). The smart valve actuator position may also be adjusted to see if a desired flow rate can be achieved at the filtration flow rate. Calculations may be performed to determine the most efficient pump speed to achieve the desired results by algorithm or by communication from the pump of the power draw. The use of the smart valve actuator may facilitate measuring and reporting excess flow by comparing the controlled quantity to the valve position and computing the margin available; i.e. determining if the pump speed is higher than needed to achieve the requested water feature flow. The computation may indicate what reduction in pump speed may be implemented.
- Embodiments may perform flow sensing and pressure sensing. For example, flow may be measured with a paddle wheel or a turbine and interpreted by a co-located processor or remotely located processor. Flow may also be measured with ultrasonic doppler methods, thermal mass/dispersion methods, magnetic/induction methods, optical methods, etc. Pressure sensing may be performed with a flow sensor mounted on a pipe, or a tube run from the pipe to a sensor mounted on the circuit board. Methods for pressure sensing include strain gage piezoresistive methods, capacitive methods, magnetic diaphragm displacement methods, optical methods, resonant frequency methods, etc. The smart valve actuator may also utilize a temperature sensor. For example, temperature sensing can determine ambient temperature, remote solar panel temperature, or water temperature at the input or output ports.
- In some embodiments, the smart valve actuator may include protection features for the pool system. The protection features may include stored limits of damaging valve positions and undesired valve positions along with software to automatically restore permitted valve positions after manual actuation of the valve or understand its position upon power-up to assure that the valve is in the correct position. Additionally, the smart valve actuator may facilitate motor current monitoring and input voltage monitoring to initiate scale-back or shutdown to protect life and prevent internal damage to pool system components.
- In one embodiment, the pool system may have a ‘legacy’ mode that can accept travel limit settings via pushbutton or power interrupt signaling from the controller. This legacy mode can be implemented by disconnecting the motor from the drive shaft and signaling the software by timed direction reversals, wireless communication, or a physical or magnetic pushbutton. In some embodiments, software can learn the relationship between valve angle and measured parameters and predict if a requested setting is possible based on a simulation of what valve angle will be needed to achieve the desired effect. In one embodiment the software may contain methods to prevent ‘hunting’ or needless motor activation for minor fluctuations of the measured parameters. Further, the motor drive software may generate stepper motor signals to drive the motor faster or slower than current products based on synchronous motors.
-
FIG. 20 is a diagram 1200 illustrating chemistryautomation control logic 82. Chemistryautomation control logic 82 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically, chemistryautomation control logic 82 can communicate with, or receive,user input data 1202, chemistry automationoperational data 1204, chemistryautomation factory specifications 1206, chemistryautomation configuration parameters 1208,web data 1210,pool configuration parameters 1212, data fromrelated devices 124,health monitoring data 1216, and/orexternal sensor data 1218. -
User input data 1202 could include timers, schedules (e.g., on/off, what speed, operation duration, etc.), chlorination levels, alternative sanitizers (e.g., liquid, chlorine, tablets, etc.), etc. Chemistry automationoperational data 1204 could include water chemistry, water temperature, air temperature, water detection, water flow (rate), water flow (yes/no), water pressure, air cavitation, salt concentration, chemistry dispense rate, power consumption, current draw, water conductivity, salinity, applied voltage, water hardness, etc. Chemistryautomation factory specifications 1206 could include power consumption, current draw, input voltage, etc. Chemistryautomation configuration parameters 1208 could include IP address, GPS coordinates, zip code, time and date, etc.Web data 1210 could include location (based on IP address), time and date, sunrise/sunset data, regional and local weather forecast data, temperature, ambient light, solar radiation, humidity, season, elevation, dew point, etc. In one example thechemistry automation logic 82 could shift operation based on weather input.Pool configuration parameters 1212 could include pool surface area, pool geometry, pool liner color, pool cover (yes/no), volume, etc. Data fromrelated devices 1214 could include data relating to at least the following: pump(s), heater(s) (gas/heat pump), heat (solar), pool covers, controller(s), spa(s), water feature(s), secondary pump(s), valves/actuators/bypasses, alternative sanitizers (agent, fill level, weight, feed rate, etc.), etc. In one example, the chemistryautomation control logic 82 could receive input from an external device to identify an operating profile.Health monitoring data 1216 could include power consumption, current monitoring, line-to-line balance, grounding, bonding, leak current, runtime, operating temperatures, number of power cycles, efficiency, pressure drop of scaling cell (chlorinator), presence of gas pockets (chlorinator), ultraviolet output (UV sanitizer), ozone suction (UV sanitizer), lamp temperature (UV sanitizer), time to clean (chemistry dispenser), age of dispense medium (chemistry dispenser), born on date (chemistry dispenser), etc.External sensor data 1218, could include water temperature, water flow rate, air temperature, suction/vacuum pressure, water chemistry, turnover rate of pool, ambient light, pool cover detection, motion sensors, bather detection, salt concentration, pH, water hardness, cyanuric acid levels, turbidity, ozone concentrations, algae, microbial populations, phosphate levels, nitrate levels, water level, bather load, etc. It is noted that, the chemistryautomation control logic 82 could sample the water from various locations, including ports, as well as offline sensing equipment. It is further noted that the external sensor data 1218 (as well as external sensor data received by any and/or all of the control logic systems 72-83) can be received from sensors in a plurality of locations, including but not limited to, the pool pad, in the pool itself, or remote from the pool. Additionally, the chemistryautomation control logic 82 can receive learned information and a pool cover schedule. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a particular pool chemistry sensor has not been installed in a particular system, the user/operator can provide this information by first determining the pool chemistry (e.g., by manually testing the pool chemistry by conventional means that are well known to the art) and then entering the pool chemistry information into the system via a user interface. -
FIGS. 21A-21I are flowcharts illustrating processing steps of the chemistryautomation control logic 82.FIG. 21A is a flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1300, the chemistryautomation control logic 82 receives an instruction to activate the chemistry automation system. Instep 1302, the chemistryautomation control logic 82 receives operational data from the chemistry automation system water detection sensor. The chemistry automation system water detection sensor can be, for example, a flow switch, flow meter, current flow (“gas sensor”), etc. Instep 1304, the chemistryautomation control logic 82 determines if water is detected. If a positive determination is made, then the chemistryautomation control logic 82 proceeds to step 1306 where it transmits an instruction to the chemistry automation system to activate, and the process ends. If a negative determination is made, then the chemistryautomation control logic 82 proceeds to step 1308 where it determines if there are any retries remaining. For example, instep 1308 the chemistryautomation control logic 82 could determines if there are any retries remaining for a timer (e.g., 1 hour, 6 hours, 24 hours, or any other suitable time interval), or if there has been no flow detected over the same period of time. If a positive determination is made, e.g., the twenty-four hour timer has not expired, then the process returns to step 1302 and continues from there. If a negative determination is made, e.g., the twenty-four hour timer has expired indicating that there has been no flow over a twenty-four hour period, then the process proceeds to step 1310 where an error condition is transmitted, and the process ends. -
FIG. 21B is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1312, the chemistryautomation control logic 82 receives an instruction to activate the chemistry automation system. Instep 1314, the chemistryautomation control logic 82 retrieves data on factory specified power parameters from memory (e.g., power consumption, current draw, and line voltage). Instep 1316, the chemistryautomation control logic 82 receives line power operational data. Instep 1318, the chemistryautomation control logic 82 determines if the line power is within factory specifications. If a positive determination is made, then the chemistryautomation control logic 82 proceeds to step 1320 where it transmits an instruction to the chemistry automation system to activate, and the process ends. If a negative determination is made, then the chemistryautomation control logic 82 proceeds to step 1322 where it determines if there are any retries remaining. If a positive determination is made, then the process returns to step 1316 and continues from there. If a negative determination is made, then the process proceeds to step 1324 where an error condition is transmitted, and the process ends. -
FIG. 21C is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1326, the chemistryautomation control logic 82 retrieves user-specified chlorination levels from memory. Instep 1328, the chemistryautomation control logic 82 retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc. Instep 1330, the chemistryautomation control logic 82 receives operational data from the chemistry automation system, e.g., chlorination rate. Instep 1332, chemistryautomation control logic 82 determines the length of chlorination time to reach the user-specified level. Instep 1334, chemistryautomation control logic 82 transmits an instruction to the chemistry automation system to run for the determined length of time, and then returns to step 1330. -
FIG. 21D is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1336, the chemistryautomation control logic 82 retrieves user-specified chlorination levels from memory. Instep 1338, the chemistryautomation control logic 82 receives pump operational data, e.g., turnover rate. Instep 1340, the chemistryautomation control logic 82 receives water chemistry operational data from external sensors. Instep 1342, chemistryautomation control logic 82 transmits pump and water chemistry operational data to memory. Instep 1344, the chemistryautomation control logic 82 determines if the chlorine level is below the user-specified level. If a negative determination is made, then the chemistryautomation control logic 82 returns to step 1338 and continues from there. If a positive determination is made, then the chemistryautomation control logic 82 proceeds to step 1346 where it determines the length of chlorination time required to reach the user-specified chlorine level. Instep 1348, the chemistryautomation control logic 82 transmits the determined chlorination time to memory. Instep 1350, the chemistryautomation control logic 82 transmits an instruction to the chemistry automation system to run for the determined length of time, and then returns to step 1338. -
FIG. 21E is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1352, the chemistryautomation control logic 82 receives operational data from ambient light sensors. Instep 1354, the chemistryautomation control logic 82 determines the amount of direct sunlight to a body of water. Instep 1356, the chemistryautomation control logic 82 retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc. Instep 1358, the chemistryautomation control logic 82 determines the rate of chlorine reduction due to direct sunlight. Instep 1360, the chemistryautomation control logic 82 transmits an instruction to the chemistry automation system to increase dispensing rate of chlorine by rate of chlorine reduction due to direct sunlight, and then returns to step 1352. -
FIG. 21F is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1362, the chemistryautomation control logic 82 receives an instruction to activate the chemistry automation system. Instep 1364, the chemistryautomation control logic 82 receives operational data from the pool cover. Instep 1366, the chemistryautomation control logic 82 determines if the pool cover is closed. If a negative determination is made, then the chemistryautomation control logic 82 returns to step 1364 and continues from there. If a positive determination is made, then the chemistryautomation control logic 82 proceeds to step 1368 where it retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc. Instep 1370, the chemistryautomation control logic 82 determines the decreased rate of chlorine reduction due to lack of direct sunlight. Instep 1372, the chemistryautomation control logic 82 transmits an instruction to the chemistry automation system to decrease the dispensing rate of chlorine by the decreased rate of chlorine reduction due to lack of direct sunlight, and then returns to step 1364. -
FIG. 21G is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1374, the chemistryautomation control logic 82 receives an instruction to activate the chemistry automation system. Instep 1376, the chemistryautomation control logic 82 receives operational data from the motion sensors. Instep 1378, the chemistryautomation control logic 82 determines the number of bathers in the pool. Instep 1380, the chemistryautomation control logic 82 retrieves pool configuration parameters from memory, e.g., pool surface area, volume, geometry, etc. Instep 1382, the chemistryautomation control logic 82 determines an increased chlorine demand based on the number of bathers. Instep 1384, the chemistryautomation control logic 82 transmits an instruction to the chemistry automation system to increase the dispensing rate of chlorine by the increased chlorine demand based on the number of bathers, and then returns to step 1376. -
FIG. 21H is a flowchart illustrating processing logic of the chemistryautomation control logic 82 determining alert conditions of a chemistry automation system. The chemistryautomation control logic 82 proceeds with four parallel routine sequences that respectively begin withsteps step 1386 where the chemistryautomation control logic 82 retrieves factory specified life expectancy data from memory. Instep 1388, the chemistryautomation control logic 82 determines an alert threshold, e.g., less than 90% of chemistry automation life expectancy remaining or runtime value. Instep 1390, the chemistryautomation control logic 82 receives operational data on chemistry automation runtime. Instep 1392, the chemistryautomation control logic 82 determines if the chemistry automation runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1390 and continues to receive operational data on chemistry automation runtime. If a positive determination is made, then the process proceeds to step 1394 where an alert is transmitted to a user, and the process ends. - The second sequence begins in
step 1396 where the chemistryautomation control logic 82 retrieves factory specified operating temperature data from memory. Instep 1398, the chemistryautomation control logic 82 determines an alert threshold, e.g., a temperature value that is 10% above or below operating temperature. Instep 1400, the chemistryautomation control logic 82 receives operational data on chemistry automation system operating temperature. Instep 1402, the chemistryautomation control logic 82 determines if the chemistry automation system operating temperature exceeds the threshold, or is outside of a threshold range. If a negative determination is made, then the process returns to step 1400 and continues to receive operational data on chemistry automation system operating temperature. If a positive determination is made, then the process proceeds to step 1404 where the chemistryautomation control logic 82 reduces the output of the chemistry automation system. - The third sequence begins in
step 1406 where the chemistryautomation control logic 82 retrieves factory specified power consumption data from memory. Instep 1408, the chemistryautomation control logic 82 determines an alert threshold, e.g., power value that is 110% of specified power consumption. Instep 1410, the chemistryautomation control logic 82 receives operational data on chemistry automation system power consumption. Instep 1412, the chemistryautomation control logic 82 determines if the chemistry automation system power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 1410 and continues to receive operational data on chemistry automation system power consumption. If a positive determination is made, then the process proceeds to step 1414 where the chemistryautomation control logic 82 reduces the output of the chemistry automation system. - The fourth sequence begins in
step 1416 where the chemistryautomation control logic 82 retrieves factory warranty data from memory, e.g., a warranty expiration date. Instep 1418, the chemistryautomation control logic 82 determines an alert threshold, e.g., days left on factory warranty. Instep 1420, the chemistryautomation control logic 82 receives current date information. Instep 1422, the chemistryautomation control logic 82 determines if the current date is beyond the threshold date or the number of days remaining is below the threshold date. If a negative determination is made, then the process returns to step 1420 and continues to receive current date information. If a positive determination is made, then the process proceeds to step 1424 where an alert is transmitted to a user, and the process ends. -
FIG. 21I is another flowchart illustrating processing logic of the chemistryautomation control logic 82 communicating with a chemistry automation system. Instep 1426, the chemistryautomation control logic 82 retrieves factory specified servicing data from memory, e.g., service intervals. Instep 1428, the chemistryautomation control logic 82 retrieves date of previous service from memory. Instep 1430, the chemistryautomation control logic 82 determines the time to the next service and then proceeds tosteps step 1438, the chemistryautomation control logic 82 transmits an instruction to the human-machine interface device to display the time to the next service. Instep 1432, the chemistryautomation control logic 82 determines the alert threshold, e.g., 30 days to next service. Instep 1434, the chemistryautomation control logic 82 determines if the time to the next service is less than the threshold. If a negative determination is made, then the process returns to step 1428 and continues to receive the date of pervious service from memory. If a positive determination is made, then the process proceeds to step 1436 where the chemistryautomation control logic 82 transmits an alert to the user. -
FIG. 22 is a diagram 1500 illustratingheater control logic 80.Heater control logic 80 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically,heater control logic 80 can communicate with, or receive, user input data 1502, heateroperational data 1504,heater factory specifications 1506,heater configuration parameters 1508,web data 1510,pool configuration parameters 1512, data fromrelated devices 1514,health monitoring data 1516, and/orexternal sensor data 1518. - User input data 1502 could include heating and/or cooling temperature set points, heating or cooling mode, pool/spa mode, heater x or cooler x, where “x” is an index referring to one or more heating and/or cooling devices, countdown to heat, etc. Heater
operational data 1504 could include line voltage, power consumption, gas pressure, air pressure or vacuum, air temperature, humidity, other environmental conditions, flow rate, water level, state (e.g., on/off), temperature setpoint, duration setpoint, operating noise, etc.Heater factory specifications 1506 could include gas heater input rating, gas heater thermal efficiency, heat pump output & COP (coefficient of performance) at T1 (reference test temperature 1), RH1 (reference test relative humidity 1), heat pump output & COP at T1, RH2 (reference test relative humidity 2), heat pump output & COP at T2 (reference test temperature 2), RH1, heat pump output & COP at T2, RH2, power consumption, current draw, input voltage, etc.Heater configuration parameters 1508 could include IP address, GPS coordinates, zip code, etc.Web data 1510 could include regional solar irradiance data, regional weather forecast data, regional fuel cost data, direct solar irradiance—modeled clear-sky, diffuse solar irradiance—modeled clear-sky, air temperature, relative humidity, wind speed, cloud cover, cost of natural gas, cost of propane gas, cost of electricity, etc.Pool configuration parameters 1512 could include pool surface area, pool volume, emissivity of pool, absorptivity of pool, pool solar exposure, fraction of weather station wind speed at pool surface, desired water temperature, pump schedule, type of pool cover (solar transmittance, thermal conductivity, emissivity, absorptivity), pool cover use schedule, etc. Data fromrelated devices 1514 could include data relating to at least the following: pump(s), secondary pump(s), filter bypass, water feature(s), chemical dispensers, valves/actuators/bypass, pool cover(s), controller(s), spa(s), etc. The following relationships could exist between theheater control logic 80 the related devices: water features (used to assist loss of heat/coolers), chemical dispensers (logic 80 could open bypass to prevent off balance chemistry from entering the heater), secondary pump (affects overall system flow), tablet/liquid chlorine feeder (if present in system should not be used on the same loop as the heater), and external sensors (could have shared flow switch and water temperature sensors).Health monitoring data 1516 could include runtime, operating temperatures/profile, power consumption, predictive failure, number of cycles, degradation of efficiency, pool chemistry, fuel gas pressure, refrigerant pressures, refrigerant temperatures, exhaust temperature, carbon monoxide, freeze and condensation warnings, motor speed (RPM), other operating conditions, settings, troubleshooting data, etc.External sensor data 1518, could include air temperature, humidity, ambient noise, pool chemistry, fuel gas pressure, exhaust temperature, carbon monoxide, carbon dioxide, oxygen, vibration, bather detection, etc. Additionally, theheater control logic 80 can receive information pertaining to time limits on setting block heater schedules, maximum allowable temperatures, password protection, scheduled heating, and setback schedules. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a temperature sensor has not been installed in a particular system, the user/operator can provide this information by first determining the temperature (e.g., by checking a thermometer, a thermocouple, a weather forecast, the internet, etc.) and then entering the temperature into the system via a user interface. -
FIGS. 23A-23J are flowcharts illustrating processing steps of theheater control logic 80.FIG. 23A is a flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1520, theheater control logic 80 receives an instruction to activate the heater. Instep 1522, theheater logic 80 retrieves data pertaining to factory specified power parameters from memory, e.g., parameters relating to power consumption, current draw, and line voltage. Instep 1524, theheater logic 80 receives line power operational data. Instep 1526, theheater logic 80 determines whether the line power operational data is within factory specifications. If a positive determination is made, the process proceeds to step 1528. If a negative determination is made, the process proceeds to step 1530. Instep 1528, theheater control logic 80 transmits an instruction to the heater to activate, and the process ends. As referenced above, if a negative determination is made atstep 1526, then the process proceeds to step 1530. Instep 1530, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made, then theheater control logic 80 proceeds to step 1524 and continues the process from that step. If a negative determination is made, then theheater control logic 80 proceeds to step 1532 and transmits an error condition signal, and then ends the process. -
FIG. 23B is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1534, theheater control logic 80 receives an instruction to activate the heater. Instep 1536, theheater logic 80 retrieves minimum fuel setpoint data for heater operation from memory, e.g., minimum gas pressure. Instep 1538, theheater logic 80 receives operational data on fuel, e.g., current gas pressure. Instep 1540, theheater logic 80 determines whether the gas pressure is above a minimum setpoint. If a positive determination is made, the process proceeds to step 1542. If a negative determination is made, the process proceeds to step 1541. Instep 1542, theheater control logic 80 transmits an instruction to the heater to activate, and the process ends. As referenced above, if a negative determination is made atstep 1540, then the process proceeds to step 1541. Instep 1541, theheater control logic 80 logs the error timestamp. Instep 1543, theheater control logic 80 determines if the number of error logs for the week exceeds the allowable amount. If a positive determination is made, the process proceeds to step 1545. If a negative determination is made, the process proceeds to step 1544. Instep 1545, theheater control logic 80 transmits an alert to the user, and the process ends. As referenced above, if a negative determination is made atstep 1543, then the process proceeds to step 1544 where theheater control logic 80 determines if there are any retries remaining. If a positive determination is made, then theheater control logic 80 proceeds to step 1538 and continues the process from that step. If a negative determination is made, then theheater control logic 80 proceeds to step 1546 and transmits an error condition signal, and then ends the process. -
FIG. 23C is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1548, theheater control logic 80 receives an instruction to activate the heater. Instep 1550, theheater logic 80 retrieves blower setpoint data for heater operation from memory, e.g., minimum air pressure. Instep 1552, theheater logic 80 receives blower operational data, e.g., air pressure. Instep 1554, theheater logic 80 determines whether the air pressure is above the minimum setpoint. If a positive determination is made, the process proceeds to step 1556. If a negative determination is made, the process proceeds to step 1558. Instep 1556, theheater control logic 80 transmits an instruction to the heater to activate, and the process ends. As referenced above, if a negative determination is made atstep 1554, then the process proceeds to step 1558. Instep 1558, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made, then theheater control logic 80 proceeds to step 1560 and transmits an instruction to the blower to increase the air pressure by 5%, and proceeds to step 1552 and continues the process from that step. It is noted that while the blower could increase air pressure in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then theheater control logic 80 proceeds to step 1562 and transmits an error condition signal, and then ends the process. -
FIG. 23D is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1564, theheater control logic 80 receives an instruction to activate the heater. Instep 1566, theheater logic 80 retrieves water temperature setpoint data for heater operation from memory, e.g., minimum and maximum water temperatures. Instep 1568, theheater logic 80 receives operational temperature data, e.g., water temperature read by a sensor. Instep 1570, theheater logic 80 determines whether the water temperature is below the minimum setpoint. If a positive determination is made, the process proceeds to step 1572. If a negative determination is made, the process returns to step 1568. Instep 1572, theheater control logic 80 transmits an instruction to the heater to activate. Instep 1574, theheater control logic 80 receives operational temperature data. Instep 1576, theheater control logic 80 determines if the water temperature is above a maximum setpoint. If a positive determination is made, then theheater control logic 80 proceeds to step 1578 and transmits an instruction to the heater to switch to standby mode, and the process ends. If a negative determination is made, then theheater control logic 80 returns to step 1574. -
FIG. 23E is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1582, theheater control logic 80 receives an instruction to activate the heater. Instep 1584, theheater logic 80 retrieves minimum flow rate setpoint data for heater operation from memory, e.g., gallons per minute. Instep 1586, theheater logic 80 receives operational flow rate data. Instep 1588, theheater logic 80 determines whether the flow rate is above the minimum setpoint. If a positive determination is made, the process proceeds to step 1590. If a negative determination is made, the process proceeds to step 1592. Instep 1590, theheater control logic 80 transmits an instruction to the heater to activate, and the process ends. As referenced above, if a negative determination is made atstep 1588, then the process proceeds to step 1592. Instep 1592, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made, then theheater control logic 80 proceeds to step 1594 and transmits an instruction to the pump to increase the flow by 5%, and proceeds to step 1586 and continues the process from that step. It is noted that while the pump could increase flow in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then theheater control logic 80 proceeds to step 1596 and transmits an error condition signal, and then ends the process. -
FIG. 23F is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1598, theheater control logic 80 receives an instruction to activate the heater. Instep 1600, theheater logic 80 retrieves runtime setpoint data for heater operation from memory, e.g., duration of operation. Instep 1602, theheater logic 80 transmits an instruction to the heater to activate. Instep 1604, theheater logic 80 sets a countdown timer for a predefined number (“x”) of seconds, where “x” is the desired runtime of the heater, and activates the timer. Instep 1606, theheater logic 80 determines if the timer has reached “0.” If a positive determination is made, the process proceeds to step 1608. If a negative determination is made, the process returns to step 1604. Instep 1608, theheater control logic 80 transmits an instruction to deactivate the heater, and the process ends. -
FIG. 23G is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1610, theheater control logic 80 retrieves maximum ambient noise setpoint data for heater operation from memory. Instep 1612, theheater logic 80 receives ambient noise operational data. Instep 1614, determines if the ambient noise is above the maximum allowed value. If a positive determination is made, the process proceeds to step 1616. If a negative determination is made, the process returns to step 1612. Instep 1616, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made, then theheater control logic 80 proceeds to step 1618 and transmits an instruction to the heater to decrease the output by 5%, and proceeds to step 1612 and continues the process from that step. It is noted that while the heater could decrease output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then theheater control logic 80 proceeds to step 1620 and transmits an error condition signal, and then ends the process. -
FIG. 23H is another flowchart illustrating processing logic of theheater control logic 80 communicating with a heater. Instep 1622, theheater logic 80 receives operational data from ambient noise sensors. Instep 1624, theheater logic 80 transmits operational data from ambient noise sensors to memory. Instep 1626, theheater logic 80 determines the average ambient noise setpoint based on operational data from the sensors. Instep 1628, theheater logic 80 receives operational data from heater noise sensors. Instep 1630, theheater logic 80 determines if the decibel level is above the average ambient setpoint. If a positive determination is made, the process proceeds to step 1632. If a negative determination is made, the process returns to step 1628. Instep 1632, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made, then theheater control logic 80 proceeds to step 1634 and transmits an instruction to the heater to decrease performance by 5%, and proceeds to step 1628 and continues the process from that step. It is noted that while the heater could decrease performance in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then theheater control logic 80 proceeds to step 1636 and transmits an error condition signal, and then ends the process. - It is noted that the processing logic of the
heater control logic 80 shown inFIGS. 23G and 23H could be combined into a process that determines the average ambient noise level over a given period of time and then saves the average ambient noise level to the memory for later retrieval as the maximum ambient noise setpoint data for heater operation, illustrated instep 1610 ofFIG. 23G . The process could then proceed according to the steps as illustrated inFIG. 23G as described above. -
FIG. 23I is a flowchart illustrating processing logic of theheater control logic 80 determining alert conditions of a heater. Theheater control logic 80 proceeds with four parallel routine sequences that respectively begin withsteps step 1638 where theheater control logic 80 retrieves factory specified life expectancy data from memory. Instep 1640, theheater control logic 80 determines an alert threshold, e.g., less than 90% of heater life expectancy remaining or runtime value. Instep 1642, theheater control logic 80 receives operational data on heater runtime. Instep 1642, theheater control logic 80 determines if the heater runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1642 and continues to receive operational data on heater runtime. If a positive determination is made, then the process proceeds to step 1646 where an alert is transmitted to a user, and the process ends. - The second sequence begins in
step 1648 where theheater control logic 80 retrieves factory specified operating temperature data from memory. Instep 1650, theheater control logic 80 determines an alert threshold, e.g., a temperature value that is 10% above or below operating temperature. Instep 1652, theheater control logic 80 receives operational data on heater system operating temperature. Instep 1654, theheater control logic 80 determines if the heater system operating temperature exceeds the threshold, or is outside of a threshold range. If a negative determination is made, then the process returns to step 1652 and continues to receive operational data on heater system operating temperature. If a positive determination is made, then the process proceeds to step 1656 where an alert is transmitted to a user, and the process ends. - The third sequence begins in
step 1658 where theheater control logic 80 retrieves factory specified power consumption data from memory. Instep 1660, theheater control logic 80 determines an alert threshold, e.g., power value that is 110% of specified power consumption. Instep 1662, theheater control logic 80 receives operational data on heater system power consumption. Instep 1664, theheater control logic 80 determines if the heater system power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 1662 and continues to receive operational data on heater system power consumption. If a positive determination is made, then the process proceeds to step 1666 where an alert is transmitted to a user, and the process ends. - The fourth sequence begins in
step 1668 where theheater control logic 80 retrieves maximum carbon monoxide output setpoint from memory, e.g., the maximum permitted carbon monoxide output for the heater. Instep 1670, theheater control logic 80 determines an alert threshold, e.g., 905 of maximum carbon monoxide output. Instep 1672, theheater control logic 80 receives operational data on heater system carbon monoxide output. Instep 1674, theheater control logic 80 determines if the heater system carbon monoxide output is greater than the threshold. If a negative determination is made, then the process returns to step 1672 and continues to receive operational data on heater system carbon monoxide output. If a positive determination is made, then the process proceeds to step 1676 where it transmits an instruction to the heater to deactivate. The process then proceeds to step 1678 and transmits an alert to a user, and the process ends. -
FIG. 23J is a flowchart illustrating the procedure implemented when heat is being requested by a user. Instep 1680, theheater control logic 80 receives an instruction that heat is called for. Instep 1682, theheater control logic 80 proceeds to check if the heater has power. Instep 1684, the heater control logic determines if the heater has power. If a negative determination is made, then the process proceeds to step 1714. If a positive determination is made, then the process proceeds to step 1686. Instep 1714, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process returns to step 1682, but if a negative determination is made then the process proceeds to step 1716 where theheater control logic 80 indicates an error condition and the process ends. As referenced above, if a positive determination is made instep 1684, then the process proceeds to step 1686. Instep 1686, theheater control logic 80 checks the gas pressure. Instep 1688, theheater control logic 80 determines if the pressure is within the specified range. If a positive determination is made, then the process proceeds to step 1690. If a negative determination is made, then the process proceeds to step 1718. Instep 1718, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process returns to step 1686. If a negative determination is made then the process proceeds to step 1720 where theheater control logic 80 indicates an error condition and the process ends. As referenced above if a positive determination is made instep 1688, then the process proceeds to step 1690. Instep 1690, theheater control logic 80 checks the blower operation. Instep 1692, theheater control logic 80 determines if the air pressure is within the specified range. If a positive determination is made, then the process proceeds to step 1694. If a negative determination is made, then the process proceeds to step 1722. Instep 1722, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process returns to step 1690. If a negative determination is made then the process proceeds to step 1724 where theheater control logic 80 indicates an error condition and the process ends. As referenced above if a positive determination is made instep 1692, then the process proceeds to step 1694. Instep 1694, theheater control logic 80 checks the water flow. Instep 1696, theheater control logic 80 determines if the flow rate (GPM) is within the specified range. If a positive determination is made, then the process proceeds to step 1698. If a negative determination is made, then the process proceeds to step 1726. Instep 1726, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process proceeds to step 1728 where it sends an electronic signal to the pump to increase or decrease the flow by 5%, and then returns to step 1694. It is noted that while the pump could increase or decrease flow in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made instep 1726 then the process proceeds to step 1730 where theheater control logic 80 indicates an error condition and the process ends. As referenced above if a positive determination is made instep 1696, then the process proceeds to step 1698. Instep 1698, theheater control logic 80 queries for an operation temperature setpoint. Instep 1700, theheater control logic 80 determines if the operation temperature setpoint has been received. If a positive determination is made, then the process proceeds to step 1702. If a negative determination is made, then the process proceeds to step 1732. Instep 1732, theheater control logic 80 determines if there are any retries remaining. If a positive determination is made then the process proceeds to step 1734 where it prompts the heater for a desired water temperature, and then returns to step 1698. If a negative determination is made instep 1732 then the process proceeds to step 1736 where theheater control logic 80 indicates an error condition and the process ends. As referenced above if a positive determination is made instep 1700, then the process proceeds to step 1702. Instep 1702, theheater control logic 80 electronically receives data relating to the water temperature. Instep 1704, theheater control logic 80 determines if the operation temperature setpoint is greater than the water temperature. If a positive determination is made, then the process proceeds to step 1706. If a negative determination is made, then the process proceeds to step 1740. Instep 1740, theheater control logic 80 places the heater in standby and returns to step 1702. As referenced above if a positive determination is made instep 1704, then the process proceeds to step 1706. Instep 1706, theheater control logic 80 engages the heater. Instep 1708, theheater control logic 80 starts a timer. Instep 1710, theheater control logic 80 determines if the temperature setpoint is lower than the water temperature. If a positive determination is made, then the process proceeds to step 1712 where it deactivates the heater and the process ends. If a negative determination is made, then the process proceeds to step 1742. Instep 1742, theheater control logic 80 determines if the operation duration has exceeded the threshold. If a positive determination is made, then the process proceeds to step 1712 where it deactivates the heater and the process ends. If a negative determination is made then the process returns to step 1706. -
FIG. 24 is a diagram 1800 illustratinglighting control logic 78.Lighting control logic 78 could incorporate and/or be in communication with a variety of types of data and/or data sources. More specifically,lighting control logic 78 can communicate with, or receive,user input data 1802, lightingoperational data 1804,lighting factory specifications 1806,lighting configuration parameters 1808,web data 1810,pool configuration parameters 1812, data fromrelated devices 1814,health monitoring data 1816 and/orexternal sensor data 1818. -
User input data 1802 could include lighting color, lighting intensity, lighting duration, timers, schedule, default program(s), pool temperature setpoint(s), etc. Lightingoperational data 1804 could include status (on/off), cycles (on/off), line voltage, current draw, power consumption, environment (water/air), temperature (lights), ambient light, light color, light intensity, etc.Lighting factory specifications 1806 could include lumen output, life expectancy, current draw, input voltage, power consumption, operating environment, etc.Lighting configuration parameters 1808 could include IP address, GPS coordinates, zip code, time and date, etc.Web data 1810 could include location (based on IP address), time and date, sunrise/sunset data, local lighting code, regional and local weather forecast data, etc.Pool configuration parameters 1812 could include pool surface area, pool geometry, pool liner color, pool cover (yes/no), pool cover schedule, etc. Data fromrelated devices 1814 could include data relating to at least the following: additional lights/systems, chlorinator(s), pump(s), cleaner(s), water feature(s), heater (gas), heater (solar), chemical dispenser, valve(s), pool cover (various), controller, spa, water slide, etc. For example, the following relationships could exist between thelighting control logic 78 the related devices: valves (activate water features, solenoid, dancing waters, etc.), and water slide (shows path, auto-on).Health monitoring data 1816 could include errors, runtime, estimated lumen output, average power consumption, line voltage, line current, percent of light output, operating environment, warranty countdown, water pressure, etc.External sensor data 1818, could include ambient light, lighting output, motion/occupancy, bather detection, temperature (pool), moisture, chlorine content, pH level, etc. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a pool temperature sensor has not been installed in a particular system, the user/operator can provide this information by first determining the pool temperature (e.g., by checking a thermometer, thermocouple, etc.) and then entering the pool temperature into the system via a user interface.FIGS. 25A-25AB are flowcharts illustrating processing steps of thelighting control logic 78.FIG. 25A is a flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1820, thelighting control logic 78 receives an instruction to activate the lighting system. Instep 1822, thelighting control logic 78 retrieves data pertaining to factory specified power parameters from memory, e.g., parameters relating to power consumption, current draw, and line voltage. Instep 1824, thelighting control logic 78 receives line power operational data. Instep 1826, thelighting logic 78 determines whether the line power operational data is within factory specifications. If a positive determination is made, the process proceeds to step 1828. If a negative determination is made, the process proceeds to step 1830. Instep 1828, thelighting control logic 78 transmits an instruction to the lighting system to activate, and the process ends. As referenced above, if a negative determination is made atstep 1826, then the process proceeds to step 1830. Instep 1830, thelighting control logic 78 determines if there are any retries remaining. If a positive determination is made, then thelighting control logic 78 proceeds to step 1824 and continues the process from that step. If a negative determination is made, then thelighting control logic 78 proceeds to step 1832 and transmits an error condition signal, and the process ends. -
FIG. 25B is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1832, thelighting control logic 78 receives an instruction to activate the lighting system. Instep 1834, thelighting control logic 78 retrieves factory specified operating environment data from memory, e.g., is the light in air or water. Instep 1836, thelighting control logic 78 receives data from lighting fixture moisture sensor. Instep 1838, thelighting control logic 78 determines the environment of the lighting fixture, e.g., is the fixture in air or water. Instep 1840, thelighting control logic 78 determines if the lighting fixture is in the environment specified by the factory specified operating environment. If a positive determination is made, the process proceeds to step 1842. If a negative determination is made, the process proceeds to step 1844. Instep 1842, thelighting control logic 78 transmits an instruction to the lighting system to activate, and the process ends. As referenced above, if a negative determination is made atstep 1840, then the process proceeds to step 1844. Instep 1844, thelighting control logic 78 determines if there are any retries remaining. If a positive determination is made, then thelighting control logic 78 proceeds to step 1836 and continues the process from that step. If a negative determination is made, then thelighting control logic 78 proceeds to step 1846 and transmits an error condition signal, and the process ends. -
FIG. 25C is a flowchart illustrating a process for a user to define a light show. Instep 1848, thelighting control logic 78 prompts the user for a desired lighting color. Instep 1850, thelighting control logic 78 receives the desired lighting color data from the user. Instep 1852, thelighting control logic 78 prompts the user for a desired lighting speed. Instep 1854, thelighting control logic 78 receives the desired lighting speed data from the user. Instep 1856, thelighting control logic 78 prompts the user for a desired lighting motion profile. Instep 1858, thelighting control logic 78 receives desired lighting motion profile data from the user. Instep 1860, thelighting control logic 78 retrieves pool geometry data from memory. Instep 1862, thelighting control logic 78 processes the data received from the user and the pool geometry data. Instep 1864, thelighting control logic 78 generates a virtual preview of a light show from the user data and pool geometry data. Instep 1866, thelighting control logic 78 transmits the virtual preview of the light show to the user. Instep 1868, thelighting control logic 78 prompts the user to save virtual preview parameters to the memory. Instep 1870, thelighting control logic 78 determines if the user has saved the parameters. If a positive determination is made then the process proceeds to step 1872 where thelighting control logic 78 transmits the parameters to memory as a stored light show, and the process ends. If a negative determination is made, then the process proceeds to step 1874 where thelighting control logic 78 prompts the user to enter new parameters, and then proceeds to step 1876. Instep 1876, thelighting control logic 78 determines if the user has elected to enter new parameters. If a positive determination is made then the process returns to step 1848. If a negative determination is made then the process ends. -
FIG. 25D is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1878, thelighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters. Instep 1880, thelighting control logic 78 receives sunrise/sunset data from the web based on the geographic location. Instep 1882, thelighting control logic 78 receives current time data. Instep 1886, thelighting control logic 78 determines if the current time is after sunset. If a positive determination is made, the process proceeds to step 1888. If a negative determination is made, the process proceeds to step 1884 where thelighting control logic 78 delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1882. As referenced above, if a positive determination is made atstep 1886, then the process proceeds to step 1888. Instep 1888, thelighting control logic 78 determines if the current time is before sunrise. If a positive determination is made, then thelighting control logic 78 proceeds to step 1890 where it transmits an instruction to activate the lighting system, and the process ends. If a negative determination is made, then thelighting control logic 78 proceeds to step 1892 where it delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1882. -
FIG. 25E is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1894, thelighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters. Instep 1896, thelighting control logic 78 receives sunrise/sunset data from the web based on the geographic location. Instep 1898, thelighting control logic 78 receives current time data. Instep 1900, thelighting control logic 78 determines if the current time is after sunset. If a positive determination is made, the process proceeds to step 1902. If a negative determination is made, the process proceeds to step 1910 where thelighting control logic 78 delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1898. As referenced above, if a positive determination is made atstep 1900, then the process proceeds to step 1902. Instep 1902, thelighting control logic 78 determines if the current time is before sunrise. If a positive determination is made, then thelighting control logic 78 proceeds to step 1904. If a negative determination is made, then thelighting control logic 78 proceeds to step 1892 where it delays operation for a predetermined period of time, and after the expiration of the predetermined period of time returns to step 1898. As referenced above, if a positive determination is made atstep 1902, then the process proceeds to step 1904. Instep 1904, thelighting control logic 78 receives operational data from a pool cleaner. Instep 1906, thelighting control logic 78 determines if the pool cleaner is running. If a negative determination is made, then the process returns to step 1898. If a positive determination is made, then the process proceeds to step 1908 where thelighting control logic 78 transmits an instruction to activate the lighting system. -
FIG. 25F is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1914, thelighting control logic 78 receives operational data from a water feature. Instep 1916, thelighting control logic 78 determines the operational status of the water feature. Instep 1918, thelighting control logic 78 determines if the water feature is running. If a negative determination is made, then the process returns to step 1914. If a positive determination is made, then the process proceeds to step 1920 where thelighting control logic 78 interlocks with the water feature. Instep 1922, thelighting control logic 78 transmits an instruction to the lighting system to activate. -
FIG. 25G is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1924, thelighting control logic 78 receives operational data from a pool cover. Instep 1926, thelighting control logic 78 determines the operational status of the pool cover, e.g., is the pool cover open or closed. Instep 1928, thelighting control logic 78 determines if the pool cover is open. If a positive determination is made, then the process returns to step 1924. If a negative determination is made, then the process proceeds to step 1930 where thelighting control logic 78 transmits an instruction to the lighting system to deactivate, and then returns to step 1924. -
FIG. 25H is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1932, thelighting control logic 78 receives an instruction to activate the lighting system. Instep 1934, thelighting control logic 78 receives operational data from a pool cover. Instep 1936, thelighting control logic 78 determines the operational state of the pool cover, e.g., is the pool cover open or closed. Instep 1938, thelighting control logic 78 determines if the pool cover is open. If a positive determination is made, then the process proceeds to step 1940 where thelighting control logic 78 transmits an instruction to the lighting system to activate and then returns to step 1934. If a negative determination is made, then the process proceeds to step 1942 where thelighting control logic 78 determines if there are any retries remaining. If a positive determination is made, then the process returns to step 1934. If a negative determination is made, then the process proceeds to step 1944 where an error condition is transmitted, and the process ends. -
FIG. 25I is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1946, thelighting control logic 78 receives an instruction to activate the lighting system. Instep 1948, thelighting control logic 78 receives operational data from a pool cover. Instep 1950, thelighting control logic 78 determines the operational state of the pool cover, e.g., is the pool cover open or closed. Instep 1952, thelighting control logic 78 determines if the pool cover is open. If a positive determination is made, then the process proceeds to step 1960 where thelighting control logic 78 transmits an instruction to the lighting system to activate, and the process ends. If a negative determination is made, then the process proceeds to step 1954 where thelighting control logic 78 prompts a user to open the pool cover. Instep 1956, thelighting control logic 78 determines if the user has issued an instruction to open the pool cover. If a negative determination is made, then the process returns to step 1948. If a positive determination is made, then the process proceeds to step 1958 where thelighting control logic 78 transmits an instruction to the pool cover to open, and the process ends. -
FIG. 25J is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 1962, thelighting control logic 78 receives a minimum ambient light setpoint value. Instep 1964, thelighting control logic 78 receives a maximum ambient light setpoint value. Instep 1966, thelighting control logic 78 receives a current ambient light value from an external sensor. Instep 1968, thelighting control logic 78 determines if the current ambient light value is below the minimum ambient light setpoint. If a negative determination is made, then the process returns to step 1966. If a positive determination is made, then the process proceeds to step 1970 where thelighting control logic 78 transmits an instruction to the lighting system to activate the lights. Instep 1972, thelighting control logic 78 receives a current ambient light value from an external sensor. Instep 1974, thelighting control logic 78 determines if the current ambient light value is below a minimum ambient light setpoint. If a positive determination is made, then the process proceeds to step 1980 where thelighting control logic 78 transmits an instruction to the lighting system to increase the lumen output by 5% and then returns to step 1972. It is noted that while the lighting system could increase lumen output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). If a negative determination is made, then the process proceeds to step 1976. Instep 1976, thelighting control logic 78 determines if the current ambient light value is above the maximum ambient light setpoint. If a negative determination is made (e.g., the ambient light is in the acceptable range—above the minimum setpoint and below the maximum setpoint), then the process proceeds to step 1978 where it delays for a predetermined time period and then returns to step 1972. If a positive determination is made, then the process proceeds to step 1984 where thelighting control logic 78 determines if there are any retries remaining. If a negative determination is made, then the process proceeds to step 1986 where thelighting control logic 78 transmits an instruction to the lighting system to deactivate the lights and then returns to step 1966. If a positive determination is made, then the process proceeds to step 1982 where thelighting control logic 78 transmits an instruction to the lighting system to decrease lumen output by 5% and then returns to step 1972. It is noted that while the lighting system could increase lumen output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). -
FIG. 23K is a flowchart illustrating processing logic of thelighting control logic 78 determining an error condition and preventative maintenance reminders for a lighting system. Thelighting control logic 78 proceeds with six parallel routine sequences that respectively begin withsteps step 1988 where thelighting control logic 78 monitors for an error condition. Instep 1990, thelighting control logic 78 determines if there is an error condition. If a negative determination is made, then the process returns to step 1988. If a positive determination is made, then the process proceeds to step 1992 where thelighting control logic 78 transmits an error condition. Instep 1993, thelighting control logic 78 determines if the user has snoozed the error condition. If a negative determination is made, then the process ends. If a positive determination is made, then the process proceeds to step 1995 where it delays for a predetermined period of time and then returns to step 1992. - The second sequence begins at
step 1994, where thelighting control logic 78 retrieves factory specified life expectancy data from memory. Instep 1996, thelighting control logic 78 determines a preventative maintenance threshold, e.g., less than 90% of light life expectancy remaining or runtime value. Instep 1998, thelighting control logic 78 receives operational data on lighting system runtime. Instep 2000, thelighting control logic 78 determines if the lighting system runtime is greater than the threshold. If a negative determination is made, then the process returns to step 1998 and continues to receive operational data on lighting system runtime. If a positive determination is made, then the process proceeds to step 2002 where a preventative maintenance reminder is transmitted to a user, and the process ends. - The third sequence begins in
step 2004 where thelighting control logic 78 retrieves factory specified lumen output data from memory. Instep 2006, thelighting control logic 78 determines a maintenance threshold, e.g., a lumen output value that is 90% of a specified lumen output. Instep 2008, thelighting control logic 78 receives operational data on lighting system lumen output. Instep 2010, thelighting control logic 78 determines if the lighting system operating lumen output is less than the threshold. If a negative determination is made, then the process returns to step 2008 and continues to receive operational lumen output data for the lighting system. If a positive determination is made, then the process proceeds to step 2012 where a preventative maintenance reminder is transmitted to a user, and the process ends. - The fourth sequence begins in
step 2014 where thelighting control logic 78 retrieves factory specified power consumption data from memory. Instep 2016, thelighting control logic 78 determines a maintenance threshold, e.g., power value that is 110% of specified power consumption. Instep 2018, thelighting control logic 78 receives operational data on lighting system power consumption. Instep 2020, thelighting control logic 78 determines if the lighting system power consumption is greater than the threshold. If a negative determination is made, then the process returns to step 2018 and continues to receive operational data on lighting system power consumption. If a positive determination is made, then the process proceeds to step 2022 where a preventative maintenance reminder is transmitted to a user, and the process ends. - The fifth sequence begins in
step 2024 where thelighting control logic 78 retrieves factory specified input voltage data from memory. Instep 2026, thelighting control logic 78 determines a maintenance threshold, e.g., an input voltage value that is +/−10% of specified line voltage. Instep 2028, thelighting control logic 78 receives operational data on lighting system line voltage. Instep 2030, thelighting control logic 78 determines if the lighting system line voltage is greater than the threshold. If a negative determination is made, then the process returns to step 2028 and continues to receive operational data on lighting system line voltage. If a positive determination is made, then the process proceeds to step 2032 where a preventative maintenance reminder is transmitted to a user, and the process ends. - The sixth sequence begins in
step 2034 where thelighting control logic 78 retrieves factory warranty data from memory. Instep 2036, thelighting control logic 78 determines a maintenance threshold, e.g., 90% of the time period of the factory warranty has expired. Instep 2038, thelighting control logic 78 receives operational data on lighting system runtime. Instep 2040, thelighting control logic 78 determines if the lighting system runtime is greater than the threshold. If a negative determination is made, then the process returns to step 2038 and continues to receive operational data on lighting system runtime. If a positive determination is made, then the process proceeds to step 2042 where a preventative maintenance reminder is transmitted to a user, and the process ends. -
FIG. 25L is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2044, thelighting control logic 78 receives lighting system temperature operational data. Instep 2046, thelighting control logic 78 determines if the lighting system needs to scale back lumen output due to temperature. If a negative determination is made, then the process returns to step 2044. If a positive determination is made, then the process proceeds to step 2048 where thelighting control logic 78 receives pool temperature operational data. Instep 2050, thelighting control logic 78 determines the required reduction in pool temperature to return the lighting system to full lumen output. Instep 2052, thelighting control logic 78 transmits an instruction to the heater to reduce the temperature by the required amount, and then returns to step 2044. -
FIG. 25M is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2054, thelighting control logic 78 receives lighting system temperature operational data. Instep 2056, thelighting control logic 78 determines if the lighting system needs to scale back lumen output due to temperature. If a negative determination is made, then the process returns to step 2054. If a positive determination is made, then the process proceeds to step 2058 where thelighting control logic 78 transmits an instruction to the heater instructing it to decrease output by 5%, and then returns to step 2054. It is noted that while the heater could decrease output in 5% increments it is contemplated that any satisfactory incremental value could be chosen for optimization of the system (e.g., 1%, 2%, 5%, 10%, etc.). -
FIG. 25N is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2060, thelighting control logic 78 retrieves pool temperature setpoint data from memory. Instep 2062, thelighting control logic 78 receives pool temperature operational data. Instep 2064, thelighting control logic 78 determines the range between temperature setpoint and temperature operational data. Instep 2066, thelighting control logic 78 retrieves RGB color table from memory. Instep 2068, thelighting control logic 78 generates a lookup table including desired RGB color spectrum and associated temperature range (e.g., from blue at measured temperature to white at setpoint). Instep 2070, thelighting control logic 78 receives pool temperature operational data. Instep 2072, thelighting control logic 78 determines the RGB color associated with temperature operational data. Instep 2074, thelighting control logic 78 transmits an instruction to the lighting system to display the RGB color associated with the pool temperature, and then returns to step 2070. -
FIG. 25O is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2076, thelighting control logic 78 retrieves chlorine level setpoint data from memory. Instep 2078, thelighting control logic 78 receives chlorine level operational data. Instep 2080, thelighting control logic 78 determines the range between chlorine level setpoint and chlorine level operational data. Instep 2082, thelighting control logic 78 retrieves RGB color table from memory. Instep 2084, thelighting control logic 78 generates a lookup table including desired RGB color spectrum and associated chlorine level range (e.g., from green at measured temperature to purple at setpoint). Instep 2086, thelighting control logic 78 receives chlorine level operational data. Instep 2088, thelighting control logic 78 determines the RGB color associated with chlorine level operational data. Instep 2090, thelighting control logic 78 transmits an instruction to the lighting system to display the RGB color associated with the chlorine level. Instep 2092, thelighting control logic 78 determines if the chlorine level operational data is equal to the chlorine level setpoint. If a positive determination is made, then the process proceeds to step 2094 where thelighting control logic 78 transmits a message stating that the pool chemistry is “OK,” and the process ends. If a negative determination is made, then the process proceeds to step 2096 where thelighting control logic 78 transmits a message stating that chlorine should be added to the pool. The process then proceeds to step 2098 where it delays for a predetermined period of time before returning tostep 2086. -
FIG. 25P is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2100, thelighting control logic 78 retrieves chlorine level setpoint data from memory. Instep 2102, thelighting control logic 78 receives chlorine level operational data. Instep 2104, thelighting control logic 78 determines if the chlorine level operational data is equal to the chlorine level setpoint. If a positive determination is made, then the process returns to step 2102. If a negative determination is made then the process proceeds to step 2106 where it retrieves a lighting program associated with a chlorine imbalance from memory, e.g., activate yellow or flashing yellow light to alert a user to a chlorine imbalance. Instep 2108, thelighting control logic 78 transmits an instruction to the lighting system to display the program associated with a chlorine imbalance, and then returns to step 2102. -
FIG. 25Q is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2110, thelighting control logic 78 monitors for user-selected light shows and colors. Instep 2112, thelighting control logic 78 determines if the user has selected a light show or colors. If a negative determination is made, then the process returns to step 2110. If a positive determination is made, then the process proceeds to step 2114 where thelighting control logic 78 receives parameters of the user-selected light show or color. Instep 2116, thelighting control logic 78 receives a timestamp for the user-selected light show or colors. Instep 2118, thelighting control logic 78 transmits the parameters and timestamp to memory. Instep 2120, thelighting control logic 78 determines the most commonly selected light show or colors. Instep 2122, thelighting control logic 78 saves the most commonly selected light show or colors to memory as a default lighting program, and then returns to step 2110. -
FIG. 25R is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. This process includes two parallel branches for defining a lighting program for pool features and displaying a lighting program for a specific pool features. The process begins atsteps step 2124, thelighting control logic 78 monitors for user-selected light shows and colors. Instep 2126, thelighting control logic 78 determines if the user has selected a light show or colors. If a negative determination is made, then the process returns to step 2124. If a positive determination is made, then the process proceeds to step 2128 where thelighting control logic 78 determines if additional pool features are currently active, e.g., pool/spa spillover features. If a negative determination is made, then the process proceeds to step 2142 where thelighting control logic 78 displays the user-selected light show or colors, and the process ends. If a positive determination is made, then the process proceeds to step 2130 where it receives operational data of the currently active pool features. Instep 2132, thelighting control logic 78 receives parameters of the user-selected light show or color. Instep 2134, thelighting control logic 78 receives a timestamp for the currently active pool features and lightshow. Instep 2136, thelighting control logic 78 transmits the pool feature operational data, light show parameters, and timestamp to memory. Instep 2138, thelighting control logic 78 determines the most commonly selected light show or colors associated with the additional pool feature. Instep 2140, thelighting control logic 78 saves the most commonly selected light show or colors to memory as a default lighting program for the additional pool features, and then returns to step 2124. - In
step 2144, thelighting control logic 78 monitors for currently active pool features. Instep 2146, thelighting control logic 78 determines if there are any currently active pool features. If a negative determination is made, then the process returns to step 2144. If a positive determination is made, then the process proceeds to step 2148 where thelighting control logic 78 determines if there is a stored default lighting program for the pool feature. If a negative determination is made, then the process proceeds to step 2124, where it goes through the process of having a user define a light show for that pool feature. If a positive determination is made, then the process proceeds to step 2150, where thelighting control logic 78 retrieves the stored default program for the pool feature from memory. Instep 2152, thelighting control logic 78 transmits an instruction to the lighting system to display the default program for the pool feature, and the process ends. -
FIG. 25S is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2154, thelighting control logic 78 receives operational data from a motion sensor. Instep 2156, thelighting control logic 78 determines if the motion sensor has been triggered. If a negative determination is made, then the process returns to step 2154. If a positive determination is made, then the process proceeds to step 2158 where thelighting control logic 78 receives sunrise/sunset data from the Internet. Instep 2160, thelighting control logic 78 receives the current time data. Instep 2162, thelighting control logic 78 determines if the current time is after sunset. If a negative determination is made, then the process returns to step 2154. If a positive determination is made, then the process proceeds to step 2164. Instep 2164, thelighting control logic 78 determines if the current time is before sunrise. If a negative determination is made, then the process returns to step 2154. If a positive determination is made then the process proceeds tosteps lighting control logic 78 transmits a signal to activate the lighting system, transmits an alert to the user, and then ends the process. -
FIG. 25T is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2170, thelighting control logic 78 receives operational data from a motion sensor. Instep 2172, thelighting control logic 78 determines if the motion sensor has been triggered. If a negative determination is made, then the process returns to step 2170. If a positive determination is made, then the process proceeds to step 2174 where thelighting control logic 78 retrieves a minimum ambient light setpoint value from memory. Instep 2176, thelighting control logic 78 receives ambient light operational data. Instep 2178, thelighting control logic 78 determines if the ambient light operational data is below the minimum setpoint. If a negative determination is made, then the process returns to step 2170. If a positive determination is made, then the process proceeds tosteps lighting control logic 78 transmits a signal to activate the lighting system, transmits an alert to the user, and then ends the process. -
FIG. 25U is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2184, thelighting control logic 78 receives operational data from a motion sensor. Instep 2186, thelighting control logic 78 determines if the motion sensor has been triggered. If a negative determination is made, then the process returns to step 2184. If a positive determination is made, then the process proceeds to step 2188 where thelighting control logic 78 retrieves a minimum ambient light setpoint value from memory. Instep 2190, thelighting control logic 78 receives ambient light operational data. Instep 2192, thelighting control logic 78 determines if the ambient light operational data is below the minimum setpoint. If a negative determination is made, then the process returns to step 2184. If a positive determination is made, then the process proceeds to step 2194 where it determines if a light show is in progress. If a negative determination is made, then the process proceeds to step 2202. If a positive determination is made then the process proceeds to step 2196. Instep 2196, thelighting control logic 78 transmits an instruction to the lighting system to discontinue showing the current show. As referenced above, if a negative determination is made instep 2194, then the process proceeds to step 2202. Instep 2202, thelighting control logic 78 transmits an instruction to activate the lighting system.Step lighting control logic 78 transmits an instruction to the lighting system to display white light at the maximum lumen value. Instep 2200, thelighting control logic 78 transmits an alert to the user, and the process ends. -
FIG. 25V is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2204, thelighting control logic 78 receives operational data from light sensors. Instep 2206, thelighting control logic 78 saves operational data from the light sensors to memory. Instep 2208, thelighting control logic 78 determines the average setpoint based on operational data from the light sensors. Instep 2210, thelighting control logic 78 determines if there is remaining time to establish the setpoint. If a positive determination is made, then the process returns to step 2204 and the setpoint continues to be established. If a negative determination is made, then the process proceeds to step 2212 where thelighting control logic 78 determines the acceptable deviation from the setpoint, e.g., 90% of the setpoint. Instep 2214, thelighting control logic 78 receives operational data from the light sensors. Instep 2216 thelighting control logic 78 determines if the operational data from the light sensors is within the acceptable deviation. If a positive determination is made, then the process returns to step 2214. If a negative determination is made, then the process proceeds to step 2218 where thelighting control logic 78 transmits an instruction to the pump to activate. Instep 2220, thelighting control logic 78 transmits an instruction to the chlorinator to activate and then proceeds to step 2222 where it delays for a predetermined period of time before returning tostep 2204. -
FIG. 25W is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2224, thelighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters. Instep 2226, thelighting control logic 78 receives local weather forecast data from the Internet/Web. Instep 2228, thelighting control logic 78 processes the weather forecast and identifies impending inclement weather. Instep 2230, thelighting control logic 78 determines if there is any impending inclement weather. If a negative determination is made, then the process returns to step 2226. If a positive determination is made, then the process proceeds to step 2232 where thelighting control logic 78 retrieves a weather alert lighting program from memory and then proceeds tosteps step 2234, thelighting control logic 78 transmits an instruction to the lighting system to display the weather alert program, e.g., a flashing white light at maximum lumen output. Instep 2236, thelighting control logic 78 transmits an instruction to the pool devices to shield against lightning strike. -
FIG. 25X is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2238, thelighting control logic 78 receives operational data from external moisture sensors. Instep 2240, thelighting control logic 78 determines the presence of precipitation, e.g., versus a splash of water, for example. Instep 2242, thelighting control logic 78 determines if there is precipitation. If a negative determination is made, then the process proceeds to step 2246. If a positive determination is made, then the process proceeds to step 2244 where thelighting control logic 78 transmits an instruction to the lighting system to activate, and then returns to step 2238. Instep 2246, thelighting control logic 78 receives operational data from the lighting system. Instep 2248, thelighting control logic 78 determines if the lighting system is active. If a negative determination is made, then the process returns to step 2238. If a positive determination is made, then the process proceeds to step 2250 where thelighting control logic 78 transmits an instruction to the lighting system to deactivate, and returns to step 2238. -
FIG. 25Y is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2252, thelighting control logic 78 monitors safety alarms for incoming operational data. Instep 2254, thelighting control logic 78 receives incoming operational data from the safety alarms. Instep 2256, thelighting control logic 78 determines if a safety alarm has been triggered. If a negative determination is made, then the process returns to step 2252. If a positive determination is made, then the process proceeds to step 2258 where thelighting control logic 78 receives parameters of the user-selected light show or color. Instep 2116, thelighting control logic 78 retrieves a safety alarm lighting program from the memory. Instep 2260, thelighting control logic 78 transmits an instruction to the lighting system to display the safety alarm program, e.g., a flashing red light at maximum lumen output, and the process ends. -
FIG. 25Z is another flowchart illustrating processing logic of thelighting control logic 78 communicating with a lighting system. Instep 2262, thelighting control logic 78 determines the geographic location of the pool, e.g., based on IP address or configuration parameters. Instep 2264, thelighting control logic 78 receives regional sea turtle migratory and nesting data from the Internet/Web. Instep 2266, thelighting control logic 78 determines the proximity of the pool to sea turtle nesting areas. Instep 2268, thelighting control logic 78 determines if the pool is located in a sea turtle nesting area. If a negative determination is made, then the process returns to step 2264. If a positive determination is made, then the process proceeds to step 2270 where thelighting control logic 78 receives the current data. Insteps lighting control logic 78 determines if the current date is during the sea turtle nesting season. If a negative determination is made then the process returns to step 2270. If a positive determination is made, then the process proceeds to step 2276 where thelighting control logic 78 transmits an instruction to the lighting system to lock out all colors other than amber, and the process ends. -
FIG. 25AA is a flowchart illustrating processing logic of thelighting control logic 78 for controlling multiple light sources. Thelighting control logic 78 proceeds with four parallel routine sequences that respectively begin withsteps step 2278 where thelighting control logic 78 transmits an instruction to a first light source to display a color. Instep 2280, thelighting control logic 78 monitors a first motion sensor for incoming operational data. Instep 2282, thelighting control logic 78 receives incoming operational data from the first motion sensor. Instep 2284, thelighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2280. If a positive determination is made then the process proceeds to step 2286 where thelighting control logic 78 transmits an instruction to the first light source to change the color, and then returns to step 2284. - The second sequence begins in
step 2288 where thelighting control logic 78 transmits an instruction to a second light source to display a color. Instep 2290, thelighting control logic 78 monitors a second motion sensor for incoming operational data. Instep 2292, thelighting control logic 78 receives incoming operational data from the second motion sensor. Instep 2294, thelighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2290. If a positive determination is made then the process proceeds to step 2296 where thelighting control logic 78 transmits an instruction to the second light source to change the color, and then returns to step 2294. - The third sequence begins in
step 2298 where thelighting control logic 78 transmits an instruction to a third light source to display a color. Instep 2300, thelighting control logic 78 monitors a third motion sensor for incoming operational data. Instep 2302, thelighting control logic 78 receives incoming operational data from the third motion sensor. Instep 2304, thelighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2300. If a positive determination is made then the process proceeds to step 2306 where thelighting control logic 78 transmits an instruction to the third light source to change the color, and then returns to step 2304. - The nth sequence begins in
step 2308 where thelighting control logic 78 transmits an instruction to an nth light source to display a color. Instep 2310, thelighting control logic 78 monitors an nth motion sensor for incoming operational data. Instep 2312, thelighting control logic 78 receives incoming operational data from the nth motion sensor. Instep 2314, thelighting control logic 78 determines if motion has been detected. If a negative determination is made then the process returns to step 2310. If a positive determination is made then the process proceeds to step 2316 where thelighting control logic 78 transmits an instruction to the nth light source to change the color, and then returns to step 2314. -
FIG. 25AB is another flowchart illustrating processing steps of thelighting control logic 78 communicating with thelighting system 14 h. Instep 2318, thelighting control logic 78 receives water pressure operational data from external sensor(s) at a first time. Instep 2320, thelighting control logic 78 delays for x seconds, where “x” refers to any suitable integral value (e.g., 30, 60, 3600, 7200, etc.). Instep 2322, thelighting control logic 78 receives water pressure operational data from external sensor(s) at a second time. Instep 2324, thelighting control logic 78 determines the change (e.g., delta (A)) in water pressure. Instep 2326, thelighting control logic 78 retrieves setpoint data for the acceptable drop, or increase, in water pressure from the memory. Instep 2328, thelighting control logic 78 determines if the change in water pressure is acceptable (e.g., by comparing the actual change in water pressure to the acceptable change in water pressure). If a positive determination is made, then the process returns to step 2318. If a negative determination is made, then the process proceeds to step 2230 where thelighting control logic 78 retrieves a lighting program associated with a drop, or increase, in water pressure from the memory (e.g., red lights, red flashing lights, fast pulsing lights for pressure increase, slow pulsing lights for pressure decrease, etc.). Instep 2332, thelighting control logic 78 transmits instructions thelighting system 14 h to display the lighting program associated with the drop, or increase, in pressure. Optionally, instep 2334, thelighting control system 78 could also for example, transmit a “Backwash” message to the user/operator. Theprocessing control logic 78 then returns to step 2318. - The
lighting control logic 78 can also manage and/or control the brightness of a plurality of lights in response to noise or sound. An ambient noise or sound sensor can be used to detect a plurality of bathers ingress and egress from the swimming pool and even the bathers voices. For example, the ambient noise sensor can detect voice commands and/or noise levels and control the lights based such voice commands and noise levels. Furthermore, thelighting control logic 78 can modulate the plurality of lights color, tempo, etc. if the control logic senses music, games, voices, etc. Further, the noise sensor could also sense for games being played by bathers, for example, “Marco Polo,” and adjust output of the lights accordingly. - The
lighting control logic 78 can also receive input from a pressure sensor for effectively determining depth of the water above the sensor. This sensor can be located in a light or any other suitable location in a pool or spa environment. Thelighting control logic 78 can trigger an automatic water fill routine or draining routine to adjust the water level based on any set level in the system. -
FIG. 26 is a diagram 2400 illustrating poolcleaner control logic 76. Poolcleaner control logic 76 could incorporate a variety of types of data and/or data sources. More specifically, poolcleaner control logic 76 could incorporateuser input data 2402, pool cleaneroperational data 2404, poolcleaner factory specifications 2406, poolcleaner configuration parameters 2408,web data 2410,pool configuration parameters 2412, data fromrelated devices 2414,health monitoring data 2416, and/orexternal sensor data 2418. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a pool cover detection sensor has not been installed in a particular system, the user/operator can provide this information by first determining if the pool cover has been deployed (e.g., by visual inspection) and then entering the pool cover deployment status into the system via a user interface. -
User input data 2402 could include timers, schedules (e.g., on/off and what speed), cleaning patterns (e.g., orientation of cleaner), etc. Pool cleaneroperational data 2404 could include submersion (e.g., float switch and/or moisture sensor), debris level (e.g., collection bag), debris weight, power consumption, current draw, speed of motor (RPM), speed of turbine (RPM), speed of cleaner, orientation of cleaner, etc. In one example, the poolcleaner control logic 76 could make a determination as to whether energy can be supplied to the cleaner via an integral turbine. Poolcleaner factor specifications 2406 could include motor speed, power consumption, current draw, input voltage, life expectancy, etc. Poolcleaner configuration parameters 2408 could include IP address, GPS coordinates, zipcode, time and date, etc.Web data 2410 could include location (e.g., based on IP address), time and date, sunrise/sunset data, ambient light, season, etc.Pool configuration parameters 2412 could include connected pool devices, pool surface area, pool geometry, pool liner color, pool cover (e.g., yes or no), pool cover schedule, etc. Data fromrelated devices 2414 could include the pump, booster pump, changeover valve, valve actuator, vision system, pool cover, controller, power supply, etc.Health monitoring data 2416 could include line-to-line balance, grounding, bonding, leak current, runtime, operating temperature, power consumption, etc.External sensor data 2418 could include water circulation, water flow rate, water pressure water turbidity, power consumption, current draw, line voltage, valve actuation, ambient light, debris location, pool cover detection, etc. Using this data, the poolcleaner control logic 76 could optimize the operation of the pool cleaner. Examples include, anti-kink/hose un-tangle, adjust performance based on internal sensors, cleaner and/or cleaner circuit pressure sensing, time of day sensing, and send cleaner to dirty/high debris area of the pool. -
FIGS. 27A-27O are flowcharts illustrating processing steps of the poolcleaner control logic 76.FIG. 27A is a flowchart illustrating processing logic of the poolcleaner control logic 76 communicating with a pump. Instep 2420, the poolcleaner control logic 76 receives instruction to activate a pool cleaner. Instep 2422, the poolcleaner control logic 76 receives operation data from a pump. Instep 2424, the poolcleaner control logic 76 determines whether the pump is on. If a positive determination is made, the process proceeds to step 2426. If a negative determination is made, then instep 2425 the poolcleaner control logic 76 transmits instructions to the pump to activate, and then proceeds to step 2426. Instep 2426, the poolcleaner control logic 76 retrieves minimum flow rate setpoint data for the pool cleaner operation from a memory (e.g., gallons per minute. Instep 2428, the poolcleaner control logic 76 receives operationalflow rate data 2428. Instep 2430, the poolcleaner control logic 76 determines whether the flow rate is above a minimum setpoint. If a positive determination is made, then the process proceeds to step 2432, where the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends. If a negative determination is made instep 2430, then the process proceeds to step 2434, where the poolcleaner control logic 76 determines whether there are retries remaining. If a positive determination is made, then instep 2436, the poolcleaner control logic 76 transmits instructions to the pump to increase the flow rate (e.g., by 5%), and the process reverts back tostep 2428. If instead, a negative determination is made instep 2434, then instep 2438, the poolcleaner control logic 76 transmits an error condition, and the process ends. -
FIG. 27B is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a booster pump. Instep 2440, the poolcleaner control logic 76 receives instructions to activate the pool cleaner. Instep 2442, the poolcleaner control logic 76 retrieves pool configuration data from memory (e.g., connected pool devices). Instep 2444, the poolcleaner control logic 76 receives operational data from a pump. Instep 2446, the poolcleaner control logic 76 determines whether the pump is on. If a positive determination is made, the process proceeds to step 2448. If a negative determination is made, instep 2456, the poolcleaner control logic 76 transmits instructions to the pump to activate, and the proceeds to step 2448. Instep 2448, the poolcleaner control logic 76 determines whether there is a booster pump. If a positive determination is made, then instep 2450 the poolcleaner control logic 76 receives operational data from the booster pump. Instep 2452, the poolcleaner control logic 76 determines whether the booster pump is on. If a positive determination is made instep 2452, then instep 2454, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made instep 2452, then instep 2458 the poolcleaner control logic 76 transmits instructions to the booster pump to activate, and then proceeds to step 2454. If a negative determination is made instep 2448, then the process proceeds to step 2454 (as discussed above). -
FIG. 27C is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a valve actuator. Instep 2460, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2462, the poolcleaner control logic 76 receives operational data from a changeover valve actuator (e.g., orientation). Instep 2464, the poolcleaner control logic 76 determines whether the valve actuator is in the correct orientation (e.g., valve is open). If a positive determination is made, then the process proceeds to step 2466, where the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends. If a negative determination is made instep 2464, then the process proceeds to step 2468, where the poolcleaner control logic 76 determines whether there are retries remaining. If a positive determination is made, then instep 2470, the poolcleaner control logic 76 transmits instructions to the valve actuator to move to the correct orientation (e.g., open), and the process reverts to step 2462. If instead, a negative determination is made instep 2468, then instep 2472, the poolcleaner control logic 76 transmits an error condition (e.g., valve seized), and the process ends. -
FIG. 27D is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a pressure sensor. Instep 2474, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2476, the poolcleaner control logic 76 retrieves pressure setpoint data for pool cleaner operation from memory (e.g., minimum pressure). Instep 2478, the poolcleaner control logic 76 receives operational data from a pressure sensor. Instep 2480, the poolcleaner control logic 76 determines whether the pressure is sufficient. If a negative determination is made instep 2480, then instep 2490, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made instep 2490, then instep 2492, the poolcleaner control logic 76 transmits instructions to the pump to increase output (e.g., by 5%), and the process reverts back tostep 2478. If a negative determination is made instep 2490, then instep 2494, the poolcleaner control logic 76 transmits an error condition (e.g., leak), and the process ends. If a positive determination is made instep 2480, then instep 2482, the poolcleaner control logic 76 retrieves flow rate setpoint data for pool cleaner operation from a memory (e.g., minimum flow rate). Instep 2484, the poolcleaner control logic 76 receives operational data from a flow sensor. Instep 2486, the poolcleaner control logic 76 determines whether the flow rate is sufficient. If a positive determination is made instep 2486, then in step 2488, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate, and then the process ends. If a negative determination is made instep 2486, then instep 2496, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made, then instep 2498, the poolcleaner control logic 76 transmits instructions to the pump to increase output (e.g., by 5%), and the process reverts to step 2484. If instead, a negative determination is made instep 2496, then instep 2500, the poolcleaner control logic 76 transmits an error condition (e.g., blockage), and the process ends. It should be noted that the above process can apply to actuate valves to control the pool cleaner. The valve actuation algorithms are explained in greater detail below. -
FIG. 27E is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a valve. Instep 2502, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2504, the poolcleaner control logic 76 retrieves pressure setpoint data for a pool cleaner operation from a memory (e.g., minimum circuit pressure). Instep 2506, the poolcleaner control logic 76 receives operational data from a pressure sensor. Instep 2508, the poolcleaner control logic 76 determines whether the circuit pressure is sufficient. If a positive determination is made, then instep 2510, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate, and the process ends. If a negative determination is made instep 2508, then instep 2512, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made, then instep 2514, the poolcleaner control logic 76 receives operational data from an input valve (e.g., valve position). Instep 2516, the poolcleaner control logic 76 determines required valve actuation to achieve pressure setpoint (e.g., open 90%). Instep 2518, the poolcleaner control logic 76 transmits instructions to the valve to actuate by a determined amount. If a negative determination is made instep 2512, then instep 2520, the poolcleaner control logic 76 transmits an error condition (e.g., valve seized), and the process ends. -
FIG. 27F is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a pool cleaner submersion sensor. Instep 2522, the poolcleaner control logic 76 receives instruction to activate a pool cleaner. Instep 2524, the poolcleaner control logic 76 receives operational data from the pool cleaner submersion sensor (e.g., float switch or moisture sensor). Instep 2526, the poolcleaner control logic 76 determines whether the pool cleaner is submerged. If a positive determination is made, then instep 2528, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made instep 2526, then instep 2530, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made, then the process reverts to step 2524. If a negative determination is made, then the process proceeds to step 2532, where the poolcleaner control logic 76 transmits an error condition, and the process ends. -
FIG. 27G is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a debris sensor of the pool cleaner collection bag. Instep 2534, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2536, the poolcleaner control logic 76 receives operational data from a debris sensor for a collection bag. Instep 2538, the poolcleaner control logic 76 determines the debris level of the collection bag. Instep 2546, the poolcleaner control logic 76 could optionally transmit instruction to an HMI device to display the debris level of the collection bag. Instep 2540, the poolcleaner control logic 76 determines whether the collection bag is full. If a positive determination is made, then instep 2544, the poolcleaner control logic 76 transmits a message to the user to empty the collection bag, and the process reverts to step 2536. Optionally, in step 2541 thepool cleaner logic 76 could transmit an instruction to the pool cleaner to swim to a pool skimmer and purge the collection bag so that the debris from the collection bag is emptied without user intervention and quickly removed from the pool via the skimmer. If a negative determination is made instep 2540, then instep 2542, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate, and the process ends. -
FIG. 27H is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a pool cleaner regarding a motor speed threshold. Instep 2548, the poolcleaner control logic 76 retrieves factory specified pool cleaner motor speed data from memory. Instep 2550, the poolcleaner control logic 76 determines the motor speed threshold for a full collection bag (e.g., 95% of factory specified speed). Instep 2552, the poolcleaner control logic 76 receives operational data from the pool cleaner (e.g., motor speed). Instep 2554, the poolcleaner control logic 76 determines whether the motor speed is below a threshold. If a negative determination is made, the process reverts to step 2552. If a positive determination is made, the process proceeds to step 2556, where the poolcleaner control logic 76 transmits a message to the user to empty the collection bag, and the process reverts to step 2552. -
FIG. 27I is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating regarding line power operational data. Instep 2558, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2560, the poolcleaner control logic 76 retrieves data on factory specified power parameters from a memory (e.g., power consumption, current draw, and/or line voltage). Instep 2562, the poolcleaner control logic 76 receives line power operational data. Instep 2564, the poolcleaner control logic 76 determines whether the line power is within factory specifications. If a positive determination is made, then instep 2566, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made instep 2564, then instep 2568, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made instep 2568, then the process reverts to step 2562. If a negative determination is made instep 2570, then instep 2570, the poolcleaner control logic 76 transmits an error condition, and the process ends. -
FIG. 27J is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with an internal tachometer. Instep 2572, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2580, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate. Instep 2574, the poolcleaner control logic 76 retrieves turbine setpoint data for a pool cleaner operation from memory (e.g., minimum RPMs). Instep 2576, the poolcleaner control logic 76 receives operational data from an internal tachometer. Instep 2578, the poolcleaner control logic 76 determines whether the speed of the turbine is sufficient. If a positive determination is made instep 2578, the process reverts to step 2576. If a negative determination is made instep 2578, then instep 2582, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made instep 2582, then instep 2584, the poolcleaner control logic 76 transmits instructions to the pump to increase output (e.g., by 5%), and the process reverts to step 2576. If a negative determination is made instep 2582, then instep 2586, the poolcleaner control logic 76 transmits an error condition (e.g., obstruction), and the process ends. -
FIG. 27K is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with an internal tachometer. Instep 2588, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2596, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate. Instep 2590, the poolcleaner control logic 76 retrieves turbine setpoint data for a pool cleaner operation from a memory (e.g., minimum RPMs). Instep 2592, the poolcleaner control logic 76 receives operational data from an internal tachometer. Instep 2594, the poolcleaner control logic 76 determines whether the speed of the turbine is sufficient. If a positive determination is made, the process reverts to step 2592. If instep 2594, a negative determination is made, then instep 2598, the poolcleaner control logic 76 determines whether there are any retries remaining. If a positive determination is made instep 2598, then instep 2600, the poolcleaner control logic 76 receives operational data from a flow rate sensor. Instep 2602, the poolcleaner control logic 76 determines the required increase in flow rate to achieve the turbine speed setpoint. Instep 2604, the poolcleaner control logic 76 determines the required increase in pump speed to achieve a required flow rate. Instep 2606, the poolcleaner control logic 76 transmits the instruction to the pump to increase output by the determined amount, and the process reverts to step 2592. If a negative determination is made instep 2598, then instep 2608, the poolcleaner control logic 76 transmits an error condition (e.g., obstruction), and the process ends. -
FIG. 27L is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a pump. Instep 2610, the poolcleaner control logic 76 retrieves scheduling data for a pool cleaner operation from a memory (e.g., operating hours, duration, schedule, weather conditions, upcoming events at the site, etc.). Instep 2612, the poolcleaner control logic 76 receives time data from a clock (e.g., current time). Instep 2614, the poolcleaner control logic 76 determines whether the current time is within hours of operation. If a negative determination is made, then the process reverts to step 2612. If a positive determination is made, then instep 2616, the poolcleaner control logic 76 receives operational data from a pump. Instep 2618, the poolcleaner control logic 76 determines whether the pump is on. If a positive determination is made instep 2618, then instep 2620, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate. If a negative determination is made instep 2618, then instep 2622, the poolcleaner control logic 76 transmits instructions to the pump to activate, and the process proceeds to step 2620. -
FIG. 27M is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with an ambient light sensor. Instep 2624, the poolcleaner control logic 76 receives operational data from an ambient light sensor. Instep 2626, the poolcleaner control logic 76 determines the time of day (e.g., day, night, etc.). Instep 2628, the poolcleaner control logic 76 determines whether it is nighttime. If a negative determination is made, the process reverts to step 2624. If a positive determination is made, then instep 2630, the poolcleaner control logic 76 receives operational data from a pump. Instep 2632, the poolcleaner control logic 76 determines whether the pump is on. If a positive determination is made instep 2632, then instep 2634, the poolcleaner control logic 76 transmits instructions to the pool cleaner to activate, and the process ends. If a negative determination is made instep 2632, then instep 2636, the poolcleaner control logic 76 transmits instructions to the pump to activate, and the process proceeds to step 2634. -
FIG. 27N is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a vision system. Instep 2638, the poolcleaner control logic 76 receives instructions to activate a pool cleaner. Instep 2640, the poolcleaner control logic 76 receives operational data from a vision system (e.g., location of debris). Instep 2642, the poolcleaner control logic 76 determines the location of a high debris area. Instep 2644, the poolcleaner control logic 76 determines the location and orientation of the pool cleaner. Instep 2646, the poolcleaner control logic 76 transmits instructions to the pool cleaner to traverse the high debris area. The process then reverts to step 2640. -
FIG. 27O is a flowchart illustrating processing steps of the poolcleaner control logic 76 communicating with a software application. Instep 2639 the application displays a graphical representation or image of the pool on the device on which the software application is installed. Whilestep 2639 shows the software application installed on a smartphone, it is to be appreciated that the software application can be installed on various devices of thesystem 10, including but not limited to, thecomputer system 20 or the pool/spa control system 14 f. Instep 2641, the user indicates (e.g., by touching the smartphone screen in the appropriate location) where debris is observed in the pool. Instep 2643 the software application marks each spot that the user has indicated with a graphical overlay (e.g., a box is placed around each indicated debris area). Instep 2645 the software application transmits an instruction to the cleaner 14 g to navigate to the debris areas indicated by the user and clean the same. The process then ends. - It is noted that the pool cleaner control logic illustrated in
FIGS. 27A-27O and discussed above could be used to control a pool/spa cleaner that does not have on-board electronic controls, such as, for example, a conventional suction or pressure cleaner. In such instances, control of the cleaner could be implemented by way of a valve actuator that has an associated processor and network connectivity, such as the valve actuator discussed herein in connection withFIGS. 28-29I . The valve actuator would be in fluid communication with the cleaner, and the control logic discussed in connection withFIGS. 27A-27O would be applied to control the valve actuator to correspondingly control operation of the cleaner. -
FIG. 28 is a diagram 2700 illustrating valveactuator control logic 74. Valveactuator control logic 74 could incorporate a variety of types of data and/or data sources. More specifically, valveactuator control logic 76 could incorporateuser input data 2702, valve actuatoroperational data 2704, valveactuator factory specifications 2706, valveactuator configuration parameters 2708,web data 2710,pool configuration parameters 2712, data fromrelated devices 2714,health monitoring data 2716, and/orexternal sensor data 2718. -
User input data 2702 could include schedule information (e.g., on/off and what orientation, duration of power on/off for specific orientation, open/close), etc. Valve actuatoroperational data 2704 could include line voltage, operation (e.g., on, off, etc.), orientation (e.g., open, close, etc.), power duration, etc. Valveactuator factor specification 2706 could include source voltage, power consumption, current draw, etc. Valveactuator configuration parameters 2708 could include IP address, GPS coordinates, zipcode, time and date, etc.Web data 2710 could include location (e.g., based on IP address), time and date, sunrise/sunset data, temperature, ambient light, season, etc.Pool configuration parameters 2712 could include pool surface area, pool geometry, pool line color, pool cover (e.g., yes, no, etc.), pool cover schedule, etc. Data fromrelated devices 2714 could include additional valves, pump, heater (e.g., gas, heat pump, etc.), heat (e.g., solar), spa, UV ozone, cleaner, controller, chlorinator, water features, water slide, skimmer, filter, etc.Health monitoring data 2716 could include power consumption, current monitoring, source voltage, etc.External sensor data 2718 could include water flow rate, water pressure, etc. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a water pressure sensor has not been installed in a particular system, the user/operator can provide this information by first determining the water pressure (e.g., by visually inspecting an analog water pressure gauge) and then entering the water pressure information into the system via a user interface. -
FIGS. 29A-29I are flowcharts illustrating processing steps of the valveactuator control logic 74.FIG. 29A is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a valve actuator. Instep 2720, the valveactuator control logic 74 receives instructions to actuate a valve. Instep 2722, the valveactuator control logic 74 retrieves data on factory specified power parameters from a memory (e.g., line voltage). Instep 2724, the valveactuator control logic 74 receives line voltage operational data. Instep 2726, the valveactuator control logic 74 determines whether the line voltage is within the factory specifications. If a positive determination is made, then instep 2728, the valveactuator control logic 74 transmits instructions to the valve actuator to actuate. If a negative determination is made instep 2726, then instep 2730, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2730, then the process reverts to step 2724. If a negative determination is made instep 2730, then instep 2732, the valveactuator control logic 74 transmits an error condition (e.g., undervoltage, overvoltage, etc.), and the process ends. -
FIG. 29B is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a heater. Instep 2734, the valveactuator control logic 74 receives instructions to activate a heater. Instep 2736, the valveactuator control logic 74 receives operational data from a pump. Instep 2740, the valveactuator control logic 74 receives operational data from a heater valve actuator (e.g., orientation) 14 e. Instep 2742, the valveactuator control logic 74 determines whether theheater valve actuator 14 e is in the correct orientation (e.g., valve is open). If a positive determination is made instep 2742, then in step 2750 a determination is made as to whether thepump 14 a is on. If a positive determination is made instep 2750, instep 2744, the valveactuator control logic 74 transmits instructions to theheater 14 b to activate, and the process ends. If a negative determination is made instep 2750 the valveactuator control logic 74 transmits an instruction to thepump 14 a to activate and the process then proceeds to step 2744. If a negative determination is made instep 2742, then instep 2738, a determination is made as to whether thepump 14 a is on. If a positive determination is made instep 2738, the valveactuator control logic 74 transmits an instruction to thepump 14 a to deactivate. If a negative determination is made instep 2738, the process proceeds to step 2754. Instep 2752, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2752, then instep 2754, the valveactuator control logic 74 transmits instructions to theheater valve actuator 14 e to move to the correct orientation (e.g., open) and the process then reverts to step 2736. If a negative determination is made instep 2752, then instep 2756, the valveactuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends. -
FIG. 29C is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a heater. Instep 2758, the valveactuator control logic 74 receives instructions to activate a heater. Instep 2760, the valveactuator control logic 74 receives operational data from a pump. Instep 2762, the valveactuator control logic 74 determines whether the pump is active. If a negative determination is made instep 2762, then instep 2776, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2776, then the process reverts to step 2760. If a negative determination is made instep 2776, then instep 2778, the valveactuator control logic 74 transmits an error condition (e.g., interlock), and the process ends. If a positive determination is made instep 2762, then instep 2764, the valveactuator control logic 74 receives operational data from a heater valve actuator (e.g., orientation). Instep 2766, the valveactuator control logic 74 determines whether the heater valve actuator is in the correct orientation (e.g., valve is open). If a positive determination is made instep 2766, then instep 2768, the valveactuator control logic 74 transmits instructions to the heater to activate, and the process ends. If a negative determination is made instep 2766, then instep 2770, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2770, then instep 2772, the valveactuator control logic 74 transmits instructions to the heater valve actuator to move to the correct orientation (e.g., open). If a negative determination is made instep 2770, then instep 2774, the valveactuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends. -
FIG. 29D is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a water feature valve actuator. Instep 2780, the valveactuator control logic 74 receives instructions to increase the output of the water stream feature (e.g., new flow rate setpoint). Instep 2782, the valveactuator control logic 74 receives operational data from a water feature (e.g., flow rate). In step 2784, the valveactuator control logic 74 determines whether the water feature is active. If a positive determination is made in step 2784, then instep 2786, the valveactuator control logic 74 determines whether the flow rate is sufficient. If a positive determination is made instep 2786, then the process ends. If a negative determination is made instep 2786, then instep 2794, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2794, then instep 2796, the valveactuator control logic 74 transmits instructions to the water feature valve actuator to increase throughput (e.g., by 5%), and the process reverts to step 2782. If a negative determination is made instep 2794, then instep 2798, the valveactuator control logic 74 transmits an error condition (e.g., blockage), and the process ends. If a negative determination is made in step 2784, then instep 2788, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2788, then instep 2790, the valveactuator control logic 74 transmits instructions to the water feature valve actuator to open, and the process reverts to step 2782. If a negative determination is made instep 2788, then instep 2792, the valveactuator control logic 74 transmits an error condition (e.g., blockage), and the process ends. It is to be appreciated that while flow rate operational data is received from the water feature in the process described above, similar process steps could be followed should pressure, or other, operational data be received from the water feature. -
FIG. 29E is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a water feature valve actuator. Instep 2800, the valveactuator control logic 74 receives instructions to activate a water feature. Instep 2802, the valveactuator control logic 74 retrieves flow rate setpoint data for water feature operation from a memory (e.g., minimum flow rate). Instep 2804, the valveactuator control logic 74 receives operational data from a water feature (e.g., flow rate). Instep 2806, the valveactuator control logic 74 determines whether the water feature is active. If a positive determination is made instep 2806, then instep 2808, the valveactuator control logic 74 determines whether the flow rate is sufficient. If a positive determination is made instep 2808, then the process ends. If a negative determination is made instep 2808, then instep 2816, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2816, then instep 2818, the valveactuator control logic 74 transmits instructions to the water feature valve actuator to increase throughput (e.g., by 5%), and the process reverts to step 2804. If a negative determination is made instep 2816, then instep 2820 the valveactuator control logic 74 transmits an error condition (e.g., blockage), and the process ends. If a negative determination is made instep 2806, then instep 2810, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2810, then instep 2812, the valveactuator control logic 74 transmits instructions to the water feature valve actuator to open, and the process reverts to step 2802. If a negative determination is made instep 2810, then in step 2814, the valveactuator control logic 74 transmits an error condition (e.g., blockage), and the process ends. -
FIG. 29F is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a heater valve actuator. Instep 2822, the valveactuator control logic 74 receives instructions to activate the heater. Instep 2824, the valveactuator control logic 74 receives operational data from a heater valve actuator (e.g., orientation). Instep 2826, the valveactuator control logic 74 determines whether the heater valve actuator is in the correct orientation (e.g., valve is open). If a negative determination is made instep 2826, then instep 2834, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2834, then instep 2836, the valveactuator control logic 74 transmits instructions to the heater valve actuator to move to the correct orientation (e.g., open), and the process reverts to step 2824. If a negative determination is made instep 2834, then instep 2838, the valveactuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends. If a positive determination is made instep 2826, then instep 2828, the valveactuator control logic 74 receives operational data from a pump valve actuator (e.g., orientation). Instep 2830, the valveactuator control logic 74 determines whether the pump valve actuator is in the correct orientation (e.g., valve is open). If a positive determination is made instep 2830, then instep 2832, the valveactuator control logic 74 transmits instructions to the heater to activate. If a negative determination is made instep 2830, then instep 2840, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2840, then instep 2842, the valveactuator control logic 74 transmits instructions to the pump valve actuator to move to the correct orientation (e.g., open), and the process reverts to step 2828. If a negative determination is made instep 2840, then instep 2844, the valveactuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends. -
FIG. 29G is a flowchart illustrating processing steps of the valveactuator control logic 74. Instep 2846, the heater valve actuator receives instructions to open. Instep 2848, the heater valve actuator sends instructions to the pump valve actuator to open. Instep 2850, the heater valve actuator receives operating data from the pump valve actuator. Instep 2852, the heater valve actuator determines if the pump valve actuator is open. Instep 2854, the heater valve actuator moves to the open orientation. -
FIG. 29H is a flowchart illustrating processing steps of the valveactuator control logic 74. Instep 2856, the valveactuator control logic 74 receives instructions to actuate a valve. Instep 2858, the valveactuator control logic 74 receives an input from a timer for x seconds. Instep 2860, the valveactuator control logic 74 transmits instructions to the valve actuator to move to a desired orientation. -
FIG. 29I is a flowchart illustrating processing steps of the valveactuator control logic 74 communicating with a pump. Instep 2862, the valveactuator control logic 74 retrieves operational setpoint data on valve actuator orientation for a given pump speed (e.g., actuate valve at a given speed). Instep 2864, the valveactuator control logic 74 receives operational data from a pump (e.g., RPMs). Instep 2866, the valveactuator control logic 74 determines the correct valve actuator orientation for a speed of the pump. Instep 2868, the valveactuator control logic 74 receives operational data from a valve actuator (e.g., orientation). Instep 2870, the valveactuator control logic 74 determines whether the valve actuator is in the correct orientation. If a positive determination is made instep 2870, then the process reverts to step 2864. If a negative determination is made instep 2870, then instep 2872, the valveactuator control logic 74 determines whether there are any retries remaining. If a positive determination is made instep 2872, then instep 2874, the valveactuator control logic 74 transmits instructions to the valve actuator to move to the correct orientation, and the process reverts to step 2868. If a negative determination is made instep 2872, then instep 2876, the valveactuator control logic 74 transmits an error condition (e.g., valve seized), and the process ends. -
FIG. 30 is a diagram 2900 illustrating waterfeature control logic 72. Waterfeature control logic 72 could incorporate a variety of types of data and/or data sources. More specifically, waterfeature control logic 72 could incorporateuser input data 2902, water featureoperational data 2904, waterfeature factory specifications 2906, waterfeature configuration parameters 2908,web data 2910,pool configuration parameters 2912, data fromrelated devices 2914,health monitoring data 2916, and/orexternal sensor data 2918. -
User input data 2902, could include timers, schedules, feature parameters (e.g., how high, how much flow for effect), etc. Water featureoperational data 2904 could include pressure, water flow rate, debris sensing, actuator position, etc. Waterfeature configuration parameters 2908 could include IP address, GPS coordinates, zipcode, time and date, etc.Web data 2910 could include location (e.g., based on IP address), time and date, sunrise/sunset data, regional/local weather forecast, wind speed, wind direction, etc.Pool configuration parameters 2912 could include connected pool devices, pool surface area, pool geometry, pool line color, pool cover (e.g., yes, no, etc.), pool cover schedule, etc. Data fromrelated devices 2914 could include additional water features, pump, chemistry dispenser, heater (e.g., gas pump, heat pump, etc.), heat (e.g., solar), chiller, spa, UV sanitizer, pool cleaner, controller, chlorinator, water slide, skimmer, filter, voice recognition/activation system, etc.External sensor data 2918 could include debris sensor, water temperature, motion sensor, ambient noise, etc. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a water temperature sensor has not been installed in a particular system, the user/operator can provide this information by first determining the water temperature (e.g., by checking a thermometer, thermocouple, etc.) and then entering the water temperature into the system via a user interface. Using this data, the waterfeature control logic 76 could optimize the operation of the water features by, for example, determining if the feature has been degraded due to debris by receiving data from a pressure sensor in the unit, determining appropriate operation by receiving weather data (e.g., wind location, direction, and speed) and modifying operating parameters, not running the water feature or altering the operation thereof if users are present (e.g., auto-home, or auto-away), enhance turn-over and make pH adjustments, varying the height of water from a water feature by using a variable position actuator, self-leveling the water feature using an actuator and level sensor. -
FIGS. 31A-31F are flowcharts illustrating processing steps of the waterfeature control logic 72.FIG. 31A is a flowchart illustrating processing steps of the waterfeature control logic 72. Instep 2920, the waterfeature control logic 72 receives instructions to activate a water feature. Instep 2922, the waterfeature control logic 72 retrieves minimum flow rate setpoint data for water feature operation from a memory (e.g., gallons per minute). Instep 2924, the waterfeature control logic 72 receives operational flow rate data. Instep 2926, the waterfeature control logic 72 determines whether the flow rate is above a minimum setpoint. If a positive determination is made instep 2926, then instep 2928, the waterfeature control logic 72 transmits instructions to the water feature actuator valve to move to an open orientation, and the process ends. If a negative determination is made instep 2926, then instep 2930, the waterfeature control logic 72 determines whether there are any retries remaining. If a positive determination is made instep 2930, then instep 2932, the waterfeature control logic 72 transmits instructions to the pump to increase flow (e.g., by 5%), and the process reverts to step 2924. If a negative determination is made instep 2930, then instep 2934, the waterfeature control logic 72 transmits an error condition, and the process ends. -
FIG. 31B is a flowchart illustrating processing steps of the waterfeature control logic 72. Instep 2936, the waterfeature control logic 72 receives instructions to activate a water feature. Instep 2938, the waterfeature control logic 72 receives operational data from connected pool devices (e.g., additional water features). Instep 2940, the waterfeature control logic 72 determines whether there are additional water features. If a positive determination is made instep 2940, then instep 2942, the waterfeature control logic 72 determines whether additional water features are active. If a positive determination is made instep 2942, then instep 2944, the waterfeature control logic 72 transmits instructions to the water feature actuator valve to move to an open orientation, and the process ends. If a negative determination is made instep 2942, then instep 2946, the waterfeature control logic 72 transmits instruction to additional water feature actuator valves to move to the open orientation, and the process ends. If a negative determination is made instep 2940, then the process proceeds to step 2944 (as discussed above). -
FIG. 31C is a flowchart illustrating processing steps of the waterfeature control logic 72. Instep 2948, the waterfeature control logic 72 receives operational data from chemistry automation system. Instep 2950, the waterfeature control logic 72 determines if the chemistry automation system is active. If a negative determination is made instep 2950, then the process reverts to step 2948. If a positive determination is made instep 2950, then instep 2952, the waterfeature control logic 72 transmits instructions to the water feature actuation valve to move to the open orientation. -
FIG. 31D is a flowchart illustrating processing steps of the waterfeature control logic 72. Instep 2954, the waterfeature control logic 72 retrieves water temperature setpoint data from memory (e.g., desired pool temperature). Instep 2956, the waterfeature control logic 72 receives operational data from a temperature sensor. Instep 2958, the waterfeature control logic 72 determines whether the temperature is above a setpoint. If a positive determination is made instep 2958, then instep 2960, the waterfeature control logic 72 transmits instructions to the chiller to activate. Instep 2962, the waterfeature control logic 72 transmits instructions to the water feature actuation valve to move to the open orientation, and the process reverts to step 2956. If a negative determination is made instep 2958, then instep 2964, the waterfeature control logic 72 receives operational data from chiller and water feature. Instep 2966, the waterfeature control logic 72 determines whether the chiller and water feature are active. If a negative determination is made instep 2966, then the process reverts to step 2956. If a positive determination is made instep 2966, then instep 2968, the waterfeature control logic 72 transmits instruction to deactivate the chiller and water feature. -
FIG. 31E is a flowchart illustrating processing steps of the waterfeature control logic 72. Instep 2970, the waterfeature control logic 72 receives operational data from a motion sensor. Instep 2972, the waterfeature control logic 72 determines whether the motion sensor is triggered. If a positive determination is made instep 2972, then instep 2980, the waterfeature control logic 72 transmits instruction to the water feature valve actuator to move to the open position, and the process reverts to step 2970. If a negative determination is made instep 2972, then instep 2974, the waterfeature control logic 72 receives operational data from a water feature valve actuator (e.g., orientation). Instep 2976, the waterfeature control logic 72 determines whether the valve actuator is in the open orientation. If a negative determination is made instep 2976, the process reverts to step 2970. If a positive determination is made instep 2976, then instep 2978, the waterfeature control logic 72 transmits instruction to the water feature valve actuator to move to the closed position, and the process reverts to step 2970. -
FIG. 31F is a flowchart illustrating processing steps of the waterfeature control logic 72. Instep 2982, the waterfeature control logic 72 retrieves ambient noise setpoint data from memory (e.g., maximum ambient noise value). Instep 2984, the waterfeature control logic 72 receives operational data from an ambient noise sensor. Instep 2986, the waterfeature control logic 72 determines whether the ambient noise is above a maximum setpoint. If a positive determination is made instep 2986, then instep 2988, the waterfeature control logic 72 transmits instruction to water feature valve actuator to decrease throughput (e.g., by 5%), and the process reverts to step 2984. If a negative determination is made instep 2986, then instep 2990, the waterfeature control logic 72 transmits instruction to the water feature valve actuator to increase throughput (e.g., by 5%), and the process reverts to step 2984. - It is noted that the water feature control logic illustrated in
FIGS. 31A-31F and discussed above could be used to control a pool/spa water feature that does not have on-board electronic controls, such as, for example, a conventional water feature. In such instances, control of the water feature could be implemented by way of a valve actuator that has an associated processor and network connectivity, such as the valve actuator discussed herein in connection withFIGS. 28-29I . The valve actuator would be in fluid communication with the water feature, and the control logic discussed in connection withFIGS. 27A-27O would be applied to control the valve actuator to correspondingly control operation of the water feature. -
FIG. 32 is a diagram 3000 illustrating another embodiment ofpool control logic 70.Pool control logic 70 could incorporate a variety of types of data and/or data sources in addition to those discussed hereinabove. More specifically,pool control logic 70 could processuser input data 3002,operational data 3004,equipment factory specifications 3006,equipment configuration parameters 3008,web data 3010,pool configuration parameters 3012, data fromrelated devices 3014,health monitoring data 3016, and/orexternal sensor data 3018. -
User input data 3002, could include maximum sun exposure (e.g., UV, intensity, etc.), minimum sun exposure, device operation setpoints, preferred pool/spa area, contact means (e.g., SMS/text), user profiles, zip code, maximum wind speed setpoint, lighting programs, mode selection, override code, and desired actions (e.g., pump speed up, spa on, lights on, etc.). -
Operational data 3004 could include GPS coordinates, compass bearing, accelerometer information, image data, IP address, timers, energy usage, and video monitoring data.Equipment factory specifications 3006 could include device maximum wind speed, device operation setpoints, device power requirements, and device critical requirements (e.g., plumbing size, flow rate, clearance, etc.).Equipment configuration parameters 3008 could include IP address, GPS coordinates, ZIP code, time and date, lighting programs, etc.Web data 3010 could include location (based on IP address), time & date, sun position, maximum sun exposure, sunrise/sunset data, local lighting code, regional & local weather, forecast data, wind speed and direction, historic weather conditions, live weather maps, local noise ordinance, local traffic conditions, local energy providers, local energy costs, energy rebates and discounts, video monitoring data, device/equipment information, etc.Pool configuration parameters 3012 could include, pool surface area, pool geometry, pool cover (e.g., yes, no), etc. Related devices/systems 3014 could include smart devices, user interface devices, shading devices, skimmers, pumps, water features, fire features, pool covers, lighting systems, heaters or coolers, pool cleaners, sanitization systems, chemical dispensing systems, alarm systems, garage doors, interior (home) lights, maintenance system/application, etc.Health monitoring data 3016 could include ambient temperature, water temperature, wind speed, warranty countdown, maintenance schedule, past equipment issues, service history, etc.External sensor data 3018 could include motion sensors (e.g., bather detection), ambient temperature sensors, water temperature sensors, ambient noise sensors, light sensors (home/interior), video (home/interior), bar code scanners, etc. While it may be desirable for external sensors to monitor/provide data on as many system parameters as possible (thereby providing greater optimization, automation, and user/operator comfort), it is contemplated that some systems need not utilize an external sensor to monitor every system parameter. For example, if a temperature sensor has not been installed in a particular system, the user/operator can provide this information by first determining the temperature (e.g., by checking a thermometer, a thermocouple, a weather forecast, the internet, etc.) and then entering the temperature into the system via a user interface. -
FIGS. 33A-33AH are flowcharts illustrating additional processing steps of thepool control logic 70 carried out with respect to related devices, systems, and applications.FIG. 33A is a flowchart illustrating processing steps of thepool control logic 70 for determining locations of skimmers and/or the pool/spa to account for wind, sun, or other external factors. Instep 3100, thepool control logic 70 transmits an instruction to the user to traverse the perimeter of the pool while holding the smart device. Instep 3102, thepool control logic 70 receives positioning data (e.g., GPS coordinates, compass bearing, etc.) from the smart device as the user traverses the pool. Instep 3104, thepool control logic 70 transmits an instruction to the user to place the smart device at a skimmer location. Instep 3106, thepool control logic 70 receives positioning data (e.g., GPS coordinates, compass bearing, accelerometer information, etc.) from the smart device placed at the skimmer location. Optionally, to enable higher accuracy in locating the skimmer and/or pool/spa, instep 3108, thepool control logic 70 transmits an instruction to the user to photograph the skimmer and pool using the smart device and instep 3110, thepool control logic 70 receives image data from the smart device. Instep 3112, thepool control logic 70 determines the location of the skimmer relative to the pool (e.g., using GPS, compass, accelerometer information, and/or image data provided by the smart device). Instep 3114,pool control logic 70 saves the location of the skimmer to memory for later retrieval, described hereinbelow in connection withFIG. 33G . Optionally, instep 3116 pool control logic can also determine the location, geometry, and orientation of the pool/spa (e.g., using GPS, compass, accelerometer information, and/or image data from the smart device) and instep 3118,pool control logic 70 could save the location, geometry, and orientation of the pool/spa to memory for later retrieval, described hereinbelow in connection withFIG. 33L . -
FIG. 33B is a flowchart illustrating processing steps carried out by thepool control logic 70 for estimating sun exposure and alerting the user to the same. Instep 3120,pool control logic 70 transmits an instruction to the user to photograph the pool/spa using a smart device. Instep 3122,pool control logic 70 receives data from the smart device (e.g., GPS, compass, image, date and time data, etc.). Instep 3124,pool control logic 70 determines if additional photographs are needed (e.g., multiple photographs could be taken at various times during the day). If a positive determination is made,pool control logic 70 proceeds to step 3126, where the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3120. If a negative determination is made, the process proceeds to step 3128, wherepool control logic 70 receives data on sun position (e.g., from sun tracking application or web data) based on location data from the smart device. Instep 3130,pool control logic 70 receives current date and time data (e.g., from internal clock or as web data). Instep 3132, pool control logic estimates the current sun exposure (e.g., ultraviolet “UV” index) based on location, image, sun position, and date and time data. Instep 3134,pool control logic 70 retrieves a maximum UV exposure setpoint from the memory. The maximum UV exposure setpoint could be provided by the user, or retrieved as web data provided by a recognized health organization. Instep 3136,pool control logic 70 determines if the current sun exposure is above the maximum UV exposure setpoint. If a positive determination is made, the process proceeds to step 3138, wherepool control logic 70 transmits an alert to the user (e.g., “Caution—High UV Index”). If a negative determination is made, the process reverts to step 3130. -
FIG. 33C is a flowchart illustrating processing steps carried out by thepool control logic 70 for automatically deploying shading devices (e.g., umbrellas, awnings, shades, etc.) based on estimated sun exposure. Instep 3140,pool control logic 70 transmits an instruction to the user to photograph the pool/spa using a smart device. Instep 3142,pool control logic 70 receives data from the smart device (e.g., GPS, compass, image, date and time data, etc.). Instep 3144,pool control logic 70 determines if additional photographs are needed (e.g., multiple photographs could be taken at various times during the day). If a positive determination is made,pool control logic 70 proceeds to step 3146, where the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3140. If a negative determination is made, the process proceeds to step 3148, wherepool control logic 70 receives data on sun position (e.g., from sun tracking application or web data) based on location data from the smart device. Instep 3150,pool control logic 70 receives current date and time data (e.g., from internal clock or as web data). Instep 3152,pool control logic 70 estimates the current sun exposure (e.g., ultraviolet “UV” index, sun intensity, etc.) based on location, image, sun position, and date and time data. Instep 3154,pool control logic 70 retrieves a shading device setpoint from the memory. The shading device setpoint is a sun exposure value for triggering operation of the shading devices, and could be provided by the user, as a configuration parameter, or retrieved as web data. Instep 3156,pool control logic 70 determines if the current estimated sun exposure is above the shading device setpoint. If a positive determination is made, the process proceeds to step 3158, wherepool control logic 70 transmits an instruction to the shading devices to deploy and then reverts to step 3150. If a negative determination is made, the process proceeds to step 3160, wherepool control logic 70 determines if the shading devices are deployed. If a negative determination is made, the process reverts to step 3150. If a positive determination is made, the process proceeds to step 3162, wherepool control logic 70 transmits an instruction to the shading devices to retract and then reverts to step 3150. -
FIG. 33D is a flowchart illustrating processing steps carried out by thepool control logic 70 for notifying a user of sun conditions at a preferred area of the pool (e.g., lounging area). Instep 3164,pool control logic 70 transmits an instruction to the user to photograph the pool/spa using a smart device. Instep 3166,pool control logic 70 receives data from the smart device (e.g., GPS, compass, image, date and time data, etc.). Instep 3168,pool control logic 70 determines if additional photographs are needed (e.g., multiple photographs could be taken at various times during the day). If a positive determination is made,pool control logic 70 proceeds to step 3170, where the logic is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.), and the process then reverts to step 3164. If a negative determination is made, the process proceeds to step 3172, wherepool control logic 70 receives data on sun position (e.g., from sun tracking application or web data) based on location data from the smart device. Instep 3174,pool control logic 70 retrieves location data of a preferred area of the pool from the memory. The location data of the preferred area of the pool can be obtained by way of a similar process, as described herein, in connection withFIG. 33A (e.g., process for determining skimmer location). In some embodiments, multiple users could specify one or more preferred areas of the pool/spa area. Instep 3176, thepool control logic 70 receives current date and time data (e.g., from internal clock, or as web data). Instep 3178,pool control logic 70 estimates the current sun exposure at the preferred area (e.g., using GPS, compass, image, and sun positioning data). Instep 3180,pool control logic 70 retrieves a minimum sun exposure setpoint (e.g., minimum UV index or sun intensity) from the memory. Instep 3182,pool control logic 70 determines if the current estimated sun exposure is above the minimum sun exposure setpoint. If a negative determination is made, the process reverts to step 3176. If a positive determination is made, the process proceeds to step 3184, wherepool control logic 70 transmits an alert to the user (e.g., “Lounge Area is Sunny”). In some embodiments, multiple users can create profiles containing their preferred areas of the pool and a means for receiving alerts. For example, a user could create a profile with two preferred areas of the pool, name the preferred areas of the pool (e.g., “lounge area,” “spa area,” etc.) andpool control logic 70 could sent the user a SMS/text message when either of the preferred areas are sunny. It is also noted thatpool control logic 70 could collect historical usage data for each user and save the data (e.g., to the memory) to individual user profiles for later retrieval and use. -
FIG. 33E is a flowchart illustrating processing steps carried out by thepool control logic 70 for planning the optimal placement of a pool/spa prior to installation. Instep 3186,pool control logic 70 transmits an instruction to the user to photograph a desired pool/spa location using a smart device. Instep 3188,pool control logic 70 receives desired location data from the smart device (e.g., GPS coordinates, compass bearing, image data, etc.). Instep 3190,pool control logic 70 receives data on sun position (e.g., data from sun tracking application or as web data), based on the location data from the smart device. Instep 3192,pool control logic 70 determines the optimal location and orientation of the pool/spa for ideal sun exposure (e.g., using GPS, compass, and image data from smart device). Optionally, in step 3194,pool control logic 70 receives data on historic weather conditions (e.g., prevailing winds, speed, direction, etc.) based on the location data from the smart device and instep 3196,pool control logic 70 determines the optimal location of a skimmer (e.g., based on historic wind conditions/direction). Instep 3197,pool control logic 70 transmits the optimized location and orientation data to the user (e.g., in the form of architectural drawings, renderings, etc.). Instep 3198,pool control logic 70 saves the optimized location data to the memory for later retrieval. -
FIG. 33F is a flowchart illustrating processing steps carried out by thepool control logic 70 for determining current weather conditions. Instep 3200,pool control logic 70 receives an IP address from a smart device on a local network. Instep 3202,pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 3204,pool control logic 70 receives web data on current weather conditions (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). Current weather conditions can include, for example, temperature, precipitation, wind speed, wind direction, etc. Web data on current weather conditions could also include live 3rd party data, for example, live weather maps of precipitation and cloud cover. Instep 3206,pool control logic 70 saves the current weather conditions to the memory for later retrieval. Instep 3208,pool control logic 70 is delayed by X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and then the process returns to step 3200. Optionally, instep 3210,pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 3212,pool control logic 70 could receive the ZIP code data from the user interface device. Instep 3214,pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi. -
FIG. 33G is a flowchart illustrating processing steps carried out by thepool control logic 70 for selecting a skimmer based on current weather conditions. Instep 3216,pool control logic 70 retrieves current weather conditions (e.g., wind direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3218,pool control logic 70 retrieves skimmer location data from the memory. The skimmer location data can be obtained by way of the process described herein, in connection withFIG. 33A . Instep 3220,pool control logic 70 determines if there are multiple skimmers. If a negative determination is made, the process ends. If a positive determination is made, the process proceeds to step 3222, wherepool control logic 70 determines the most downwind skimmer (using the location data). Instep 3224,pool control logic 70 transmits an instruction to the most downwind skimmer to activate.Pool control logic 70 could also sent an instruction to all other skimmers to deactivate. The process then reverts to step 3216. In some embodiments,pool control logic 70 could transmit an instruction to increase the suction of an upwind skimmer to compensate for the wind conditions orpool control logic 70 could transmit an instruction to decrease the suction of a downwind skimmer to compensate for the increased debris flowing therethrough due to the wind condition. In further embodiments,pool control logic 70 could transmit an instruction to alter the skimmer suction relative to main drain suction. -
FIG. 33H is a flowchart illustrating processing steps carried out by thepool control logic 70 for automated operation of pool devices based on current weather conditions. Instep 3226,pool control logic 70 retrieves current weather conditions (e.g., wind speed, up-wind debris source direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3228,pool control logic 70 retrieves maximum wind speed setpoint data from memory. Instep 3230,pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3238, wherepool control logic 70 transmits an instruction to the pump to increase circulation. Optionally, instep 3240,pool control logic 70 could transmit an instruction to deactivate or reduce water features (e.g., fountains). Optionally, instep 3242,pool control logic 70 could transmit an instruction to deactivate or reduce fire features. Optionally, instep 3224,pool control logic 70 could transmit an instruction to retract shading devices (e.g., umbrellas, awnings, shades, etc.). Alternatively, in the event of pool devices that are not capable of being automated/receiving control signals/are not connected to thesystem 10, instep 3246,pool control logic 70 could transmit a message to the user (e.g., “Caution—High Winds”). The process then reverts to step 3226. If a negative determination is made instep 3230, the process proceeds to step 3232, wherepool control logic 70 determines if the operation of any pool devices has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3226. If a positive determination is made, the process proceeds to step 3234, wherepool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 3236,pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3226. The above process can also be used to configure the skimmer locations with respect to the up-wind debris direction. -
FIG. 33I is a flowchart illustrating processing steps carried out by thepool control logic 70 for automated operation of a pool cover based on current weather conditions. Instep 3248,pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3250,pool control logic 70 retrieves maximum wind speed setpoint data from memory. Instep 3252,pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3260, wherepool control logic 70 receives operational data from a pool motion sensor (e.g., bather detection, as described hereinabove). Instep 3262,pool control logic 70 determines if an active bather has been detected. If a positive determination is made, the process could optionally proceed to step 3264, wherepool control logic 70 transmits an instruction to the lighting system to display a weather alert program (e.g., flashing white lights) and the process then reverts to step 3248. If a negative determination is made, the process proceeds to step 3266, wherepool control logic 70 transmits an instruction to close the pool cover (e.g., 90% closed, allowing for safety egress). If a negative determination is made instep 3252, the process proceeds to step 3254, wherepool control logic 70 determines if the operation of any pool devices (e.g., pool cover, lighting system) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3248. If a positive determination is made, the process proceeds to step 3256, wherepool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 3258,pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3248. -
FIG. 33J is a flowchart illustrating processing steps carried out by thepool control logic 70 for compensating heat loss due to current weather conditions. Instep 3268,pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3270,pool control logic 70 retrieves maximum wind speed setpoint data from memory. Instep 3272,pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3280, wherepool control logic 70 retrieves pool configuration parameters from memory (e.g., pool surface area, geometry, volume, etc.). In step 3282,pool control logic 70 receives data on the ambient temperature (e.g., from sensor or web data). Instep 3284,pool control logic 70 receives operational data on water temperature (e.g., from sensor). Instep 3286,pool control logic 70 determines heat loss due to the current weather condition (e.g., prevailing winds). Instep 3288,pool control logic 70 transmits an instruction to the heater to increase output (e.g., compensating for the heat loss) and the process reverts to step 3268. If a negative determination is made instep 3272, the process proceeds to step 3274, wherepool control logic 70 determines if the operation of any pool devices (e.g., heater) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3268. If a positive determination is made, the process proceeds to step 3276, wherepool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 3278,pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3268. -
FIG. 33K is a flowchart illustrating processing steps carried out by thepool control logic 70 for determining if a freeze risk exists and if so, taking appropriate action. Instep 3290,pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3292,pool control logic 70 retrieves maximum wind speed setpoint data from memory. Instep 3294,pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3302, wherepool control logic 70 receives data on the ambient temperature (e.g., from sensor or web data). Instep 3304,pool control logic 70 determines heat loss due to the current weather condition (e.g., prevailing winds). Heat loss due to the weather conditions (e.g., wind) can be obtained by way of the process described herein, in connection withFIG. 33J . Instep 3306,pool control logic 70 determines if a freeze risk exists (e.g., due to ambient temperature, heat loss, wind chill, etc.). If a negative determination is made, the process reverts to step 3290. If a positive determination is made, the process proceeds to step 3308, wherepool control logic 70 transmits an instruction to the pump to increase speed. Optionally, instep 3310,pool control logic 70 could transmit an instruction to the heater to increase output, instep 3312,pool control logic 70 could transmit an instruction to the lighting system to display a freeze risk program (e.g., flashing blue lights), and instep 3314,pool control logic 70 could transmit a message to the user (e.g., “Freeze Risk”). The process then reverts to step 3290. If a negative determination is made instep 3294, the process proceeds to step 3296, wherepool control logic 70 determines if the operation of any pool devices (e.g., pump, heater, lighting system, etc.) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3290. If a positive determination is made, the process proceeds to step 3298, wherepool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 3300,pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3290. -
FIG. 33L is a flowchart illustrating processing steps carried out by thepool control logic 70 for cleaning a pool/spa in response to a weather condition (e.g., high winds). Instep 3316,pool control logic 70 retrieves current weather conditions (e.g., wind speed, direction) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3318,pool control logic 70 retrieves maximum wind speed setpoint data from memory. Instep 3320,pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3328, wherepool control logic 70 retrieves pool geometry and orientation data from the memory. The pool geometry and orientation data can be obtained by way of the process described herein, in connection withFIG. 33A . Instep 3330,pool control logic 70 determines the downwind area of the pool/spa. Instep 3332,pool control logic 70 transmits an instruction to a pool cleaner to traverse the downwind area of the pool and the process then reverts to step 3316. If a negative determination is made instep 3320, the process proceeds to step 3322, wherepool control logic 70 determines if the operation of any pool devices (e.g., pool cleaner) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3316. If a positive determination is made, the process proceeds to step 3324, wherepool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 3326,pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3316. -
FIG. 33M is a flowchart illustrating processing steps carried out by thepool control logic 70 for sanitizing a pool/spa in response to a weather condition (e.g., high winds). Instep 3334,pool control logic 70 retrieves current weather conditions (e.g., wind speed) data from the memory. The current weather conditions can be obtained by way of the process described herein, in connection withFIG. 33F . Instep 3336,pool control logic 70 retrieves maximum wind speed setpoint data from memory. Instep 3338,pool control logic 70 determines if the current wind speed is above the maximum wind speed setpoint. If a positive determination is made, the process proceeds to step 3346, wherepool control logic 70 retrieves pool configuration parameters (e.g., pool surface area, geometry, volume, etc.) from the memory. Instep 3348,pool control logic 70 determines the increased sanitization needs of the pool due to the weather condition (e.g., high winds causing increased debris in pool). Instep 3350,pool control logic 70 transmits an instruction to a sanitization system to increase operation by the determined amount and the process then reverts to step 3334. If a negative determination is made instep 3338, the process proceeds to step 3340, wherepool control logic 70 determines if the operation of any pool devices (e.g., sanitization system) has been altered due to the weather condition (e.g., high winds). If a negative determination is made, the process reverts to step 3334. If a positive determination is made, the process proceeds to step 3342, wherepool control logic 70 transmits an instruction to revert to regular operation of the pool device(s). Optionally, instep 3344,pool control logic 70 could transmit a message to the user (e.g., “Wind Has Subsided”). The process then reverts to step 3334. -
FIG. 33N is a flowchart illustrating processing steps carried out by thepool control logic 70 for operating pool devices based on timers triggered by sunrise/sunset times. Instep 3352,pool control logic 70 receives an IP address from a smart device on a local network. Instep 3354,pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 3356,pool control logic 70 receives web data on sunrise/sunset times (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). Instep 3358,pool control logic 70 receives time and date data (e.g., via an internal clock or as web data). Instep 3360,pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3358. If a positive determination is made, the process proceeds to step 3362, wherepool control logic 70 begins a timer for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.). Instep 3364,pool control logic 70 transmits an instruction to a pool device to activate/alter operation. For example,pool control logic 70 could transmit an instruction to thepump 14 a to increase speed upon sunrise, for a specified duration of time, orpool control logic 70 could transmit an instruction to display a countdown to sundown. Instep 3366,pool control logic 70 determines if the timer has reached zero (0) seconds. If a negative determination is made, the process repeatsstep 3366. If a positive determination is made, the process proceeds to step 3368, wherepool control logic 70 transmits an instruction to the pool device to deactivate/resume normal operation. The process then reverts to step 3352. Optionally, instep 3370,pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 3372,pool control logic 70 could receive the ZIP code data from the user interface device and then the process could proceed to step 3356. Instep 3374,pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi) and then the process could proceed to step 3356. -
FIG. 33O is a flowchart illustrating processing steps carried out by thepool control logic 70 for operating pool devices based on sunrise/sunset times (e.g., activate at sunrise, deactivate at sunset). For example, thepool control logic 70 could transmit an instruction to thepump 14 a to increase speed upon sunrise and decrease speed upon sunset, thepool control logic 70 could transmit an instruction to increase the filtration rate or hours based on sunlight hours, or thepool control logic 70 could transmit an instruction to thelighting system 14 h to activate upon sundown and deactivate upon sunrise. Instep 3376,pool control logic 70 receives an IP address from a smart device on a local network. Instep 3378,pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 3380,pool control logic 70 receives web data on sunrise/sunset times (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). Instep 3382,pool control logic 70 receives time and date data (e.g., via an internal clock or as web data). Instep 3384,pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3382. If a positive determination is made, the process proceeds to step 3386, wherepool control logic 70 transmits an instruction to a pool device to activate/alter operation. Instep 3388,pool control logic 70 receives time and date data (e.g., via an internal clock or as web data). Instep 3390,pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3388. If a positive determination is made, the process proceeds to step 3392, wherepool control logic 70 transmits an instruction to the pool device to deactivate/resume normal operation. The process then reverts to step 3376. Optionally, instep 3394,pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 3396,pool control logic 70 could receive the ZIP code data from the user interface device and then the process could proceed to step 3380. Instep 3398,pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi) and then the process could proceed to step 3380. -
FIG. 33P is a flowchart illustrating processing steps carried out by thepool control logic 70 for operating pool devices at different setpoints during the daytime and evening. For example,pool control logic 70 could operate a sanitization system at a first setpoint during the daytime and operate at a second setpoint during the evening. Instep 3400,pool control logic 70 receives web data on sunrise/sunset times. The web data on sunrise/sunset times can be obtained by way of the process described herein, in connection withFIG. 33N . Instep 3402,pool control logic 70 receives time and date data (e.g., via an internal clock or as web data). Instep 3404,pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3402. If a positive determination is made, the process proceeds to step 3406, wherepool control logic 70 retrieves setpoint data for a daylight sanitization rate from the memory. Instep 3408,pool control logic 70 transmits an instruction to a sanitization system to operate at the daylight sanitization rate. Instep 3410,pool control logic 70 receives time and date data (e.g., via an internal clock or as web data). Instep 3412,pool control logic 70 determines if the current time is the sunrise or sunset time. If a negative determination is made, the process reverts to step 3410. If a positive determination is made, the process proceeds to step 3414, wherepool control logic 70 retrieves setpoint data on an evening sanitization rate from the memory. Instep 3416,pool control logic 70 transmits an instruction to the sanitization system to operate at the evening sanitization rate. The process then reverts to step 3400. -
FIG. 33Q is a flowchart illustrating processing steps carried out by thepool control logic 70 for operating a sanitization system based on the current weather conditions. Instep 3418,pool control logic 70 retrieves current weather conditions data from the memory. Current weather conditions data can be obtained by way of the process described herein, in connection withFIG. 33F . Current weather conditions could include air temperature, humidity, heat/cold index, wind-chill, etc. Optionally, instep 3426,pool control logic 70 could receive water temperature operational data from a sensor. Instep 3420,pool control logic 70 retrieves pool configuration parameters from the memory. Instep 3422,pool control logic 70 determines the sanitization rate based on the current weather conditions. While the sanitization rate could be determined based on the current weather conditions, other chemical dispensing and/or production rates could be determined as well. Optionally, instep 3428,pool control logic 70 could determine the sanitization rate based on the water temperature. Instep 3424,pool control logic 70 transmits an instruction to the sanitization system to operate at the determined rate. The process then reverts to step 3418. -
FIG. 33R is a flowchart illustrating processing steps carried out by thepool control logic 70 for operating thesystem 10 based on maximum ambient noise. Instep 3430,pool control logic 70 receives web data on the local noise ordinance (e.g., maximum decibels at specified times allowed by code). The web data on the local noise ordinance can be obtained by way of a similar process as described herein, in connection withFIG. 33N (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3432,pool control logic 70 receives time and date data (e.g., internal clock or web data). Instep 3434,pool control logic 70 receives operational data from an ambient noise sensor. Instep 3436pool control logic 70 determines if the current ambient noise is above the maximum ambient noise (set by ordinance) at the current time. If a negative determination is made, the process reverts to step 3432. If a positive determination is made, the process proceeds to step 3438, wherepool control logic 70 transmits an instruction to a pool device (e.g., water feature, pump, heater, blower, etc.) to reduce operation by X %, wherein X is any suitable integer between one (1) and one hundred (100) (e.g., 1, 2, 5, 10, etc.). The process then reverts to step 3432. The above process can apply based on geo-positioning data. -
FIG. 33S is a flowchart illustrating processing steps carried out by thepool control logic 70 for compensating for ambient noise. Instep 3440,pool control logic 70 receives web data (e.g., Google maps) on local traffic conditions (e.g., number/density/speed of vehicles surrounding current location). The web data on the local traffic conditions can be obtained by way of a similar process as described herein, in connection withFIG. 33N (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3442,pool control logic 70 determines/estimates the noise intensity of the local traffic. Optionally, instep 3452,pool control logic 70 could receive operational data from an ambient noise sensor that is positioned to sense the noise produced by the local traffic. Instep 3444,pool control logic 70 determines the intensity of white noise needed to compensate for the noise intensity of the local traffic. Instep 3446,pool control logic 70 transmits an instruction to a pool device (e.g., water feature or other device capable of producing white noise) to increase output by X %, wherein X is any suitable integer (e.g., 5, 10, 50, etc.). Instep 3448,pool control logic 70 receives operational data from an ambient noise sensor (e.g., white noise sensor). Instep 3450,pool control logic 70 determines if the white noise being produced is sufficient to compensate for the noise being produced by the local traffic. If a negative determination is made, the process reverts to step 3446. If a positive determination is made, the process reverts to step 3440. -
FIG. 33T is a flowchart illustrating processing steps carried out by thepool control logic 70 for determining the local cost of energy. Instep 3454,pool control logic 70 receives an IP address from a smart device on a local network. Instep 3456,pool control logic 70 receives location data based on the IP address (e.g., web data/geolocation provider). Instep 3458,pool control logic 70 receives web data (e.g., a listing) of local energy providers (based on ZIP code, location/address, or GPS coordinates, discussed hereinbelow). Instep 3460,pool control logic 70 transmits an instruction to the user to select their local energy provider (e.g., from a list of local energy providers). The local energy providers/vendors can also be determined by way of the user entering, scanning, or selecting the vendor from a drop-down menu. Instep 3462,pool control logic 70 receives web data on local energy cost (e.g., as provided by the selected energy vendor). The local energy costs could include both current energy costs and/or forecasted energy costs. Optionally, instep 3474,pool control logic 70 could transmit a rebate/discount message to the user (e.g., government and/or power company energy and/or energy-based equipment rebates and discounts). Instep 3464,pool control logic 70 saves the local energy cost data to the memory for later retrieval. Instep 3466,pool control logic 70 is delayed for X seconds, wherein X is any suitable integer (e.g., 5, 10, 3600, etc.) and the process then reverts to step 3454. Optionally, instep 3468,pool control logic 70 could transmit an instruction to the user to enter a ZIP code via a user interface device and instep 3470,pool control logic 70 could receive the ZIP code data from the user interface device and then the process could proceed to step 3458. Instep 3472,pool control logic 70 could also/alternatively receive GPS data from a smart device on the local network (e.g., smart phone connected to home WiFi) and then the process could proceed to step 3458. -
FIG. 33U is a flowchart illustrating processing steps carried out by thepool control logic 70 for informing the user of the cost of a desired action. Instep 3476,pool control logic 70 retrieves local energy cost data from the memory. The web data on the local energy costs can be obtained by way of the process as described herein, in connection withFIG. 33T (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3478,pool control logic 70 receives user input on a desired action (e.g., pump speed up, spa on, lights on, etc.). The desired action could also include bringing a pool feature to a desired state, over time (e.g., bringing the pool water temperature to 80 degrees Fahrenheit by Friday at 5:00 pm and maintaining the temperature for a specified duration of time). Instep 3480,pool control logic 70 determines the predicted cost of the desired action. Instep 3482,pool control logic 70 transmits a message to the user (e.g., cost per minute, hour, day, etc.). -
FIG. 33V is a flowchart illustrating processing steps carried out by thepool control logic 70 for optimizing the operation of pool devices based on energy cost (peak and off-peak hours). Instep 3484,pool control logic 70 retrieves local energy cost data from the memory (e.g., peak/off-peak cost of electricity). The web data on the local energy costs can be obtained by way of the process as described herein, in connection withFIG. 33T (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3486,pool control logic 70 receives user input on pool device operating schedules (e.g., filtering, pool cleaning, etc.). Instep 3488,pool control logic 70 determines an optimized schedule for the lowest energy cost. For example, normal filtering and pool cleaner operation cycles could be adjusted based on the lowest cost of energy during off-peak hours. Instep 3490,pool control logic 70 transmits an instruction to the pool devices to operate according to the optimized schedule. In addition, energy-based commands could be capable of auto-overriding other system commands, and vice-versa, based on weather/environmental demands (e.g., optimized energy settings vs. weather vs. basic pool requirements—clean, sanitized, etc.). The process then returns to step 3484. -
FIG. 33W is a flowchart illustrating processing steps carried out by thepool control logic 70 for warning the user of pool device operation during peak energy cost hours. Instep 3492,pool control logic 70 retrieves local energy cost data from the memory (e.g., peak/off-peak cost of electricity). The web data on the local energy costs can be obtained by way of the process as described herein, in connection withFIG. 33T (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3494,pool control logic 70 retrieves user input on a desired action (e.g., pump speed up, spa on, lights on, etc.). Instep 3496,pool control logic 70 receives time and date data (e.g., internal clock, or as web data). Instep 3498,pool control logic 70 determines whether the current time corresponds to peak hours for electricity costs. If a positive determination is made, the process proceeds to step 3500, wherepool control logic 70 transmits a message to the user (e.g., “Warning—Peak hours. Do you wish to proceed?”). Instep 3502,pool control logic 70 receives user input (e.g., yes/no). Instep 3504,pool control logic 70 determines if the user wishes to proceed with the desired action. If a negative determination is made, the process ends. If a positive determination is made, the process proceeds to step 3506, wherepool control logic 70 transmits an instruction to the pool device to perform the desired action (e.g., pump speed up, spa on, lights on, etc.) and the process ends. If a negative determination is made atstep 3498, the process proceeds to step 3506. -
FIG. 33X is a flowchart illustrating processing steps carried out by thepool control logic 70 for preventing use of thesystem 10 during peak electrical cost hours. Instep 3508,pool control logic 70 retrieves local energy cost data from the memory (e.g., peak/off-peak cost of electricity). The web data on the local energy costs can be obtained by way of the process as described herein, in connection withFIG. 33T (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3510,pool control logic 70 retrieves user input on a desired action (e.g., pump speed up, spa on, lights on, etc.). Instep 3512,pool control logic 70 receives time and date data (e.g., internal clock, or as web data). Instep 3514,pool control logic 70 determines if it is currently peak hours for electricity costs. If a positive determination is made, the process proceeds to step 3516, wherepool control logic 70 transmits a message to the user (e.g., “Warning—Peak hours. Please enter Priority User override code.”). Instep 3518,pool control logic 70 receives user input (e.g., Priority User override code). Instep 3520,pool control logic 70 determines if the Priority User override code is correct. If a positive determination is made, the process proceeds to step 3522, wherepool control logic 70 transmits an instruction to the pool device to perform the desired action (e.g., pump speed up, spa on, lights on, etc.) and the process ends. If a negative determination is made, the process proceeds to step 3524, wherepool control logic 70 determines if there are retries remaining (e.g., remaining attempts to enter the correct code). If a negative determination is made atstep 3524, the process ends. If a positive determination is made atstep 3524, the process reverts to step 3518. If a negative determination is made atstep 3514, the process proceeds to step 3522. -
FIG. 33Y is a flowchart illustrating processing steps carried out by thepool control logic 70 for deactivating high-powered systems/devices/components to reduce electrical costs. Instep 3526,pool control logic 70 receives an instruction to activate “Energy Save Mode.” Instep 3528,pool control logic 70 identifies high-powered lighting devices in the lighting system. The high-powered lighting devices could be identified at the time of installation (e.g., manually or scanned) or by pool control logic 70 (e.g., macro or sensed). Instep 3530,pool control logic 70 transmits an instruction to the high-powered lighting to deactivate (e.g., deactivate non-LED lighting devices). While the “Energy Save Mode” has been described herein in connection with lighting devices, “Energy Save Mode” could also identify and deactivate any device using an amount power that exceeds a predefined setpoint. Additionally,pool control logic 70 could transmit an instruction to a device to reduce operation until the device is only consuming power at low, predefined setpoint. In addition to the examples discussed hereinabove, in connection withFIGS. 33T-33Y , web data (e.g., 3rd party Web advised conditions, energy cost, weather, environmental, etc.) could be used to prompt/trigger pool control logic 70 (e.g., pump control, valve control, lighting control, cleaner control, etc.) to adjust speed, flow, position, mode, performance, behavior, etc. of any piece of pool equipment or feature, or any other device in communication with thesystem 10, to reduce energy costs, or to return to a previous state. - The system of the present disclosure also provides systems for leveraging synergies between the
pool control logic 70 and other applications (e.g., connecting to and/or communicating with a common application and sharing a user interface, advising the user of various alerts/conditions, controlling pool functions and/or devices, reaction or synchronization to/with external devices connected through the cloud, etc.). For example,FIG. 33Z is a flowchart illustrating processing steps carried out by thepool control logic 70 for alerting the user to pool/spa area ingress and egress. Instep 3532,pool control logic 70 receives live or historical video of the pool/yard (e.g., from 3rd party application/source). Instep 3534,pool control logic 70 analyzes the video of the pool/yard for occupant ingress/egress. Instep 3536,pool control logic 70 determines if there has been an ingress/egress (e.g., unwanted intrusion, monitoring the whereabouts of children, etc.) in connection with a body of water. If a negative determination is made, the process reverts to step 3532. If a positive determination is made, the process proceeds to step 3538, wherepool control logic 70 transmits a message to the user (e.g., “Alert—pool ingress/egress”). The process then reverts to step 3532. Optionally, instep 3540,pool control logic 70 could transmit instructions to an alarm system to activate (e.g., 3rd party alarm system/security provider) and then revert to step 3532. Thepool control logic 70 could also communicate with 3rd party security systems (e.g., front-door systems with video, audio, door unlock/lock, etc.) and in-home lighting systems and receive data from 3rd party live satellite image/video feeds. -
FIG. 33AA is a flowchart illustrating processing steps carried out by thepool control logic 70 for leveraging video data from a 3rd party to maintain the cleanliness of a pool/spa. Instep 3542,pool control logic 70 receives live or historical video of the pool/yard (e.g., from 3rd party application/source). Instep 3544,pool control logic 70 analyzes the video of the pool/yard for debris (e.g., presence of debris in pool, debris movement in pool, debris concentration in pool, etc.). Instep 3546,pool control logic 70 determines if there is debris in the pool. If a negative determination is made, the process reverts to step 3542. If a positive determination is made, the process proceeds to step 3548, wherepool control logic 70 transmits an instruction to a pool device to activate (e.g., cleaner, skimmer, filter, etc.). The process then reverts to step 3542. Optionally, instep 3550,pool control logic 70 could transmit an instruction to a pool cleaner to traverse the area of the pool having the highest concentration of debris, and then revert to step 3542. -
FIG. 33AB is a flowchart illustrating processing steps carried out by thepool control logic 70 for operation of thelighting system 14 h based on operational data from an external source. Instep 3552,pool control logic 70 receives operational data from an external source (e.g., a signal that the garage door is opening). Optionally, instep 3562,pool control logic 70 could receive operational data from another external device (e.g., a signal that the indoor lighting devices are turned on). Instep 3554,pool control logic 70 receives web data on sunrise/sunset times (e.g., based on ZIP code, address, or GPS coordinates). The web data on the sunrise/sunset times can be obtained by way of the process as described herein, in connection withFIG. 33N (e.g., by determining the location of thesystem 10 and then receiving web data based on that location). Instep 3556,pool control logic 70 receives current time and date data (e.g., from an internal clock, or as web data). Instep 3558,pool control logic 70 determines if the current time is after sunset. If a negative determination is made, the process reverts to step 3552. If a positive determination is made, the process proceeds to step 3560, wherepool control logic 70 transmits an instruction to the lighting system to activate (e.g., a selection, pool zone, yard zone, or all outdoor lights). The process then reverts to step 3552. In addition to the foregoing,pool control logic 70 could also synchronize/trigger the outdoor/pool lighting system to an “all on” command for the indoor lights. This is particularly useful for emergency lighting scenarios. For example, the indoor lights could receive an “all on” command in response to a triggered smoke detector andpool control logic 70 could transmit an instruction to thelighting system 14 h to activate all lights at maximum intensity.Pool control logic 70 could determine that an “all on” command has been sent to the indoor lights directly, by receiving the same command (e.g., direct communication or network communication between the indoor lights and/or smoke detector and pool control logic 70), or indirectly, by monitoring the indoor lighting and/or smoke detector (e.g., light sensors or video monitoring for the indoor lighting, noise sensor for the smoke detector, etc.). -
FIG. 33AC is a flowchart illustrating processing steps carried out by thepool control logic 70 for matching or synchronizing the operation of thelighting system 14 h to interior mood lighting in a home. Instep 3564,pool control logic 70 receives operational data from an external device (e.g., mood/color lighting selected in a home). Alternatively,pool control logic 70 could receive operational data from a sensor positioned for sensing the lighting conditions (e.g., intensity or color) in the home, orpool control logic 70 could receive operational data from a third party application or video feed showing the lighting conditions in the house. Instep 3566,pool control logic 70 determines the RGB color spectrum of the mood lighting. Instep 3568,pool control logic 70 transmits an instruction to the lighting system to operate the lights at the determined RGB color spectrum (e.g., matching the mood lighting to a selection, pool zone, yard zone, or all outdoor lights). -
FIG. 33AD is a flowchart illustrating processing steps carried out by thepool control logic 70 for communicating with a smart device in the possession of a servicer/installer. Instep 3570 the smart device scans an equipment bar code (e.g., at time of service, installation, etc.). Optionally, instep 3585,pool control logic 70 could receive the equipment bar code data scanned by the smart device. Instep 3572, the smart device identifies the location of the scanned equipment (e.g., via GPS, geo-positioning application, etc.). Instep 3574, the smart device transmits the location of the equipment and the date of service/installation to the cloud. For example, the location of the equipment and date of service/installation could be used for warranty registration, as well as other purposes, as described hereinbelow. The cloud could be accessed bypool control logic 70, or a third party system (e.g., smart device/maintenance system used by servicer/installer). Optionally, instep 3582,pool control logic 70 could save the location of the equipment and the date of service/installation to the memory for later retrieval. Instep 3576,pool control logic 70 receives information on existing equipment installed at the same location/site (e.g., from the cloud or from the memory). Instep 3578,pool control logic 70 determines if it is at or near time to service/replace any of the existing installed equipment. If a positive determination is made, the process proceeds to step 3580, wherepool control logic 70 transmits a notification to the servicer/installer (e.g., “Device due for maintenance in X days”) and the process ends. Optionally, if a positive determination is made instep 3578, the process could proceed to step 3584, wherepool control logic 70 transmits information to the servicer/installer regarding past issues with the equipment at the location/site and the process ends. If a negative determination is made instep 3578, the process ends. This service information could also be accessed through the cloud and viewed by the servicer/installer, original equipment manufacturer, or authorized service center. The service information could also be provided to the servicer/installer before arrival at the site through a smart device and/or application utilizing geo-fencing and global positioning systems (e.g., a geo-fence is placed around the site and the service information is provided to the servicer/installer upon crossing the geo-fence threshold), discussed hereinbelow. -
FIG. 33AE is a flowchart illustrating processing steps carried out by thepool control logic 70 for communicating with an application used by a servicer/installer. Instep 3586, a smart device scans an equipment bar code (e.g., at the time of service, installation, etc.). Optionally, instep 3606,pool control logic 70 could receive the equipment bar code data scanned by the smart device. Instep 3588, an application on the smart device receives equipment information (e.g., web data from the equipment manufacturer). Instep 3590, the application displays critical equipment requirements (e.g., plumbing size, flow, clearance, etc.). Instep 3592, the application receives information on existing equipment at the same location/site (e.g., from the cloud or from memory). The application can receive information on existing equipment by way of a similar process as to that described herein, in connection withFIG. 33AD . Alternatively, in addition to scanning the equipment being scanned/installed, any preexisting equipment could be scanned, and data on the preexisting equipment could be received from the cloud or from memory. Instep 3594, the application analyzes the information for any potential adverse interactions with other equipment installed at the same location/site. Instep 3596, the application determines if there are any potential adverse interactions. If a positive determination is made, the process proceeds to step 3598, where the application displays a notification to the servicer/installer (e.g., “Caution—incompatible equipment”). If a negative determination is made, the process proceeds to step 3600, where the application receives known pool parameters (e.g., location, regional weather/environmental conditions, pool geometry, connected pool devices, energy costs, user preferences, etc.). In step 3602, the application determines optimal settings for the newly serviced/installed equipment. The application can recommend programming based on regional preferences, including seasonal programming (summer, winter, etc.). Further, the application can estimate energy costs based on location weather data and other locational factors. The price estimation can take into account local currency. Instep 3604, the application displays the optimal settings for the newly serviced/installed equipment. While the process described hereinabove, in connection withFIG. 33AE , makes reference to an application that could be used by a servicer/installer,pool control logic 70 could also accomplish these same steps. - It is noted that global positioning and geo-fencing systems could be utilized with the systems of the present disclosure to provide a servicer with service opportunities (e.g., time to service/replace existing equipment). For example, a smart device having a global positioning system could be used to alert the servicer of service opportunities when an application on the smart device recognizes that the current location of the smart device is within a specified range of a geo-fenced area around a site having equipment in need of servicing/replacement. In this regard,
FIG. 33AF is a flowchart illustrating processing steps carried out by notifying a servicer of servicing opportunities around his/her current location. Instep 3608, an application receives current location data (e.g., GPS coordinates) from a smart device. The application could run on the smart device, a laptop, a remote server having a web-accessible user interface, or any other suitable mobile device that can accompany the servicer/installer. Instep 3610, the application receives the location of equipment and date of service/installation from the cloud within a specified range (e.g., location and service/installation dates of equipment within 50 miles. Instep 3612, the application determines if any of the equipment within the specified range needs servicing/replacement. Instep 3614, the application places a geo-fence around sites with equipment needing servicing/replacement. Instep 3616, the application determines if the current location of the smart device (e.g., mobile device running application and carried by the servicer) is within a geo-fenced area. If a negative determination is made, the process reverts to step 3608. If a positive determination is made, the process proceeds to step 3618, where the application transmits a notification to the servicer/installer (e.g., location of site, equipment needing service/replacement, past issues, etc.) and the process reverts to step 3608. While the process described hereinabove, in connection withFIG. 33AE , makes reference to an application that could be used by a servicer/installer,pool control logic 70 could also accomplish/be used in connection with these same steps. For example,pool control logic 70 could transmit the location and service date of the equipment to the cloud or same the data to memory, where the data is later accessed by the application, orpool control logic 70 could determine if any of the equipment needs servicing/replacing and transmit a notification to the application regarding same. -
FIG. 33AG is a flowchart illustrating processing steps of a maintenance/targeted marketing system in accordance with the system of the present disclosure for notifying a pool/spa owner that equipment is in need of service. Instep 3620, the maintenance system receives (e.g., from pool control logic, cloud, servicer, etc.) data on the location of equipment and date of service/installation. Instep 3622, the maintenance system determines if any equipment needs servicing/replacement. Instep 3624, the maintenance system cross-references the location of the equipment needing servicing/replacement with a customer information database (e.g., house phone, cellular phone, home address, email address, etc.). Instep 3626, the maintenance system transmits a notifications to owners/users with equipment needing servicing/replacement (e.g., robo-calls, SMS messaging, letters, emails, etc.). -
FIG. 33AH is a flowchart illustrating processing steps carried out by thepool control logic 70 for limiting the operation of pool devices when the an adult is not present. Instep 3628,pool control logic 70 retrieves pool location, geometry, and orientation data from memory. The pool location, geometry, and orientation data can be obtained by way of the process described herein, in connection withFIG. 33A . Instep 3630,pool control logic 70 places a geo-fence around the pool/spa area. Instep 3632,pool control logic 70 receives operational data from a smart device of an adult/parent (e.g., GPS coordinates). Instep 3634,pool control logic 70 determines if the smart device is within the geo-fenced area. If a positive determination is made, the process proceeds to step 3636, wherepool control logic 70 transmits an instruction to the pool devices to operate in “Adult Mode” (e.g., parent, adult-only, features enabled) and the process reverts to step 3632. If a negative determination is made, the process proceeds to step 3638, wherepool control logic 70 transmits an instruction to the pool devices to operate in “Safe Mode” (e.g., parent, adult-only, features disabled) and the process reverts to step 3632. -
FIGS. 34A-34J are diagrams showing additional embodiments of the pool and/or spa control system of the present disclosure, indicated generally at 4610. More specifically,FIGS. 34A-34J illustratemodular relays 4670, awiring hub 4646, and acontrol module 4661 provided in accordance with the present disclosure. -
FIG. 34A is a diagram illustrating another embodiment of the system of the present disclosure, indicated generally at 4610. In this embodiment, network connectivity and remote monitoring/control is provided by way of awiring hub 4646 which can be easily mounted to a variety of surfaces (discussed hereinbelow in connection withFIGS. 34F-34I . Thewiring hub 4646 provides connections for various pool and spa equipment, such as avariable speed pump 4614 a, a single-speed pump 4613, and alegacy heater 4615, as well as other equipment. For example, thehub 4646 could communicate with and control asmart valve actuator 4614 e, and/orlighting system 4614 h. Optionalsmart control relays 4670 could also be in communication with thehub 4646, or could communicate with any other HUA (e.g., a unique addressing system, digital, analog or mechanical switches or dip switches) enabled pool/spa component capable of receiving or assigning a network address. - As can be seen, the
hub 4646 could be in communication (e.g., using any of the wired or wireless connections and associated communication protocols discussed hereinabove) with acontrol module 4661 having auser interface 4660. Theuser interface device 4660 could include physical keys, a digital display, and/or atouchscreen 4662, as shown inFIG. 34A . Any other suitable input technologies, or any combination thereof, could also be utilized, thereby enabling a user to interact with the pool and/orspa control system 10. Additionally, thecontrol module 4661 could provide a WiFi hotspot for allowing a service provider's cellular telephone, tablet computer, or othermobile computing device 4644 to communicate with thesystem 10, and to control the pool/spa equipment shown inFIG. 34A . Communication between the service provider's cellular telephone, tablet computer, or othermobile computing device 4644 and thesystem 10 could be established using the user interface 4660 (e.g., using physical keys, a digital display, and/or by touch) or by proximity to thecontrol module 4661, described in greater detail hereinbelow. Abreaker panel 4627 provides electrical power to the various devices shown inFIG. 34A .Breaker panel 4627 could also be a smart circuit breaker (e.g., a circuit breaker that can be controlled via wired or wireless communication) used to provide and/or to interrupt power to the devices disclosed herein. In some embodiments, photovoltaic (e.g., solar) cells and/or systems could provide electrical power to one or more of the various devices shown inFIG. 34A . Thehub 4646 could also communicate with the homeowner'sWiFi router 4622 via thecontrol module 4661, thereby providing an Internet connection to the pool/spa components in communication with thewiring hub 4646. A remote pool/spa server 4618 could communicate with therouter 4622 via the Internet, to provide remote monitoring and control of the pool/spa equipment, if desired. Additionally, theserver 4618 could communicate with one or moreremote computer systems 4620 such as a smart phone, a tablet computer, a remote computer system, home automation, etc., if desired. The pool/spa control logic discussed herein could be installed in theserver 4618, in one or more of theremote computers 4620, and/or in thecontrol module 4661, if desired. - As illustrated in
FIG. 34A , the system could include a control/UI/WiFi module 4661 which includes anexternal controlling unit 4660 having a user interface (“UI”)display 4662, a control board with processor and memory (not shown), and which is able to communicate with ahome router 4622 by way of a wired or wireless connection (e.g., integral WiFi/cellular/RF, wired Ethernet, and/or an external WiFi/cellular antenna). More specifically, the Control/UI/WiFi module 4661 could include a printed circuit board (not shown), a control module having a processor and memory, a graphical user interface display 4662 (e.g., LCD, LED, buttons, knobs, capacitive plastic, etc.), a WiFi module, ethernet jack, USB port, LEDs, a sealed enclosure, a mounting bracket (e.g., for mounting themodule 4661 to a wall, post, pole, plumbing, etc.), and a means for communication with awiring hub 4646. In other embodiments, thecontrol module 4661 could be mounted on or inside another piece of equipment such as, for example, a pump, heater, chlorinator, control, timeclock, etc.) Thecontrol module 4661 could communicate with thewiring hub 4646 by way of either wired (e.g., RS485, ethernet, USB, serial, etc.) or wireless (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.) communication protocols. - The
wiring hub 4646 includes an enclosure, provisions for wire routing (meeting or exceeding IPxx ingress protection standards), a printed circuit board, and a power cord “whip” (cable). The wiring hub could be provided with communication interfaces for receiving and transmitting data to one or more devices. For example, the wiring hub could communicate with, temperature sensors, external sensor, flow sensors, pressure sensors, chemical and physical property sensors, valve actuator ports, RS485 bus connections (for smart devices, smart relay(s), smart (firmware assisted) valves, smart sensors, and other smart devices) chlorination connections, lighting connections, power connectors, low voltage relays, etc. Additionally, the communication interfaces could also be used to expand the functionality of the wiring hub such as, for example, by being used to interface with wireless communication chips (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.), and additional communication modules. - The Control/UI/
WiFi module 4661 is used to monitor, activate, and operate installed pool equipment. Thecontrol module 4661 could operate the equipment as needed with people present or absent, in the pool or around the backyard, which may be year-round and/or all-day based on application (e.g. residential vs. commercial) or location. Thecontrol module 4661 also monitors, detects, informs, and initiates protective action through a heuristic capability (using one or more algorithms) by accumulating and analyzing raw sensor data and external data to automatically develop ‘normal’ and ‘abnormal’ operating ranges, then taking action or alerting operators when the algorithm detects that operation is out of normal or safe operating range. The heuristic algorithms can also learn from operator response to a condition, and therefore account for factors not anticipated or sensed by the equipment. Such algorithms could be implemented in any of the embodiments discussed in the present disclosure, and need not be limited to thecontrol module 4661. - The
control module 4661 provides for distributed (e.g., the control module can be moved throughout the pool/spa environment based on the particular needs of the pool/spa environment and needs/wants of the pool/spa user) control of pool equipment and conditions that can be moved according to the specific needs of a particular pool/spa environment and/or user. For example, thecontrol module 4661 could be moved away from the power switching or pool equipment to a remote location, closer to the wireless network, or closer to the home, or closer to wherever the user is (e.g., poolside). In addition, thecontrol module 4661 could also allow for full pool control capability to be moved, or transferred, to a remote location from the pool pad, such as for example, to acloud server 4618 or to a remote office. - The connection to the wiring hub can be extended or virtualized via communications protocol over other mediums. The
wiring hub 4646 could locally switch power or thewiring hub 4646 could command smart relays 4670 (discussed hereinbelow) to switch power or control signals. Thewiring hub 4646 could further be provided with “limp mode” behaviors (discussed in greater detail hereinbelow) if communication to the controller is severed or impaired. These behaviors could include, but are not limited to, maintaining interlocks between relays, schedules, or other special behaviors that are intended to keep the pool system functional at a reduced level until normal operation is restored. Thewiring hub 4646 could also integrate safety control functions needed for heating or other appliances, or thewiring hub 4646 could directly communicate with such safety controls. - The
control module 4661 andwiring hub 4646 could be mounted on a wall, on a post, on a stake (e.g., rebar), on a piece of plumbing, inside or on a piece of existing pool/spa equipment (e.g., pump, heater, chlorinator, existing automation, etc.). Further thecontrol module 4661 andwiring hub 4646 may be mounted together in a single location or mounted separately. - The
wiring hub 4646 could provide power to the control system by tapping existing power connections at the load end of the conduit coming from a sub panel, timeclock, control, junction box or other electrical connection to the powered equipment. After turning off the power atbreaker 4627, a pool installer or service professional could remove the power whip from the existing equipment, and then reconnect the power whip to the wiring hub, thereby providing power to the wiring hub andcontrol module 4661 without having to access the line voltage compartment of an electrical panel. Further, a new whip could then be connected to thewiring hub 4646 which could, in turn, deliver power from thewiring hub 4646 to additional powered equipment (seeFIGS. 34B and 34C ). For example, an existing power conduit from avariable speed pump 4614 a or asingle speed pump 4613 could be disconnected from thevariable speed pump 4614 a and then plugged back into, or otherwise connected to, thewiring hub 4646. A new power whip could then be used to connect thewiring hub 4646 to thevariable speed pump 4614 a. Further, a communication cable (e.g., RS485) could be connected between thewiring hub 4646 and the variable speed pump 4614 to provide communication therebetween. In another example, the installed power conduit from aheater 4615 could be disconnected from theheater 4615 and then plugged into, or otherwise connected to, thewiring hub 4646. A new power conduit could then be used to connect thewiring hub 4646 to theheater 4615 and a communication cable (e.g., RS485) could be connected between thewiring hub 4646 and theheater 4615 to provide communication therebetween. In a further example, the installed power conduit from a powered device (e.g., pump, heater, chlorinator, cleaner, transformer, etc.) is disconnected from the powered device and then reconnected to an input of thewiring hub 4646. A new power conduit cable is then used to connect thewiring hub 4646 to asmart relay 4670 and an additional power conduit cable is used to connect thesmart relay 4670 to the powered device (e.g., pump, heater, chlorinator, cleaner, transformer, etc.). As illustrated inFIG. 34F , thewiring hub 4646 and/or control/UI/WiFi module 4661 could also be powered directly from a 120V/240V NEMA style plug, thereby qualifying as a cord-connected appliance. Because safety codes allow for increased flexibility in the location and mounting of cord-connected appliances, the labor to install or retrofit the devices is reduced, and the accessibility to the user, installer, or site wiring technician is improved. The modular nature of thewiring hub 4646 andcontrol module 4661 provides for configurations thereof that are tailored for integration with the installed pool/spa equipment (e.g., such as a pump, heater, chlorinator, etc.) or that can remain in stand-alone configurations, thereby providing flexible communication to the controlled devices (e.g., via a wired or wireless connection). It is within the scope of the present disclosure that any and all of the pool control logic described herein could be located in and run from thewiring hub 4646 and/or thecontrol module 4661. - The modular relays of the present disclosure could be used in connection with both residential and some commercial applications. The modular relays provide control (e.g., activation and deactivation) of a piece of pool equipment based on a control signal received from a controller (e.g., control module 4661) or local manual input (discussed hereinbelow). For example, the
modular relay 4670 could be used to control a pump, cleaner booster, spa booster, heater, pool lights, spa lights, landscape lights, post lights, accent lights, other types of lights, fans, chlorinators, water feature pumps, pond pumps, and cleaners, as well as additional pieces of electrically powered/controlled pool/spa equipment and yard equipment/devices. Themodular relay 4670 could include a printed circuit board, a processor, an HUA (e.g., a unique addressing system, digital, analog or mechanical switches or dip switches), activation and/or deactivation button, status LEDs, a relay (s), an enclosure with multiple power entries, a power cord whip, and wired (e.g., RS485, USB, ethernet, etc.) and/or wireless communication (e.g., WiFi, Bluetooth, Bluetooth LE, ZWave, Zigbee, cellular, thread, mesh, etc.) interfaces for communicating with the controlling hardware. - The
modular relay 4670 can be controlled by a variety of controlling devices. For example, therelay 4670 could be controlled on schedule (e.g., existing timeclocks 4672), using an algorithm (e.g., controller/pool control logic 70), through user input (e.g., a button on the modular relay), from a web enabled device (e.g., through the cloud, the router or direct) or in stand-alone manual mode. The controlling devices could include, but are not limited to, a pump, a heater, a cleaner, a salt chlorinator, a lighting controller, a chemical automation system, a hub or an existing controller, a smart phone, tablet, computer, or smartwatch, or a voice enabled device (e.g., Amazon Echo). - The modular relay of the present disclosure could be capable of detecting when there is no communication from a controlling system/device, if the modular relay has not yet been configured, or if the modular relay has been improperly operated or installed, and in response, placing itself in stand-alone manual or ‘limp’ modes.
- In stand-alone mode (as well as service, manual, limp or other modes which are independent from commands from a controller), the relay can operate independently of the pool/spa control system. For example, in the event that communication with the control system could not be established, the modular relay could automatically enter standalone mode. In standalone mode, the modular relay could provide a visual indication (e.g., a flashing or steadily illuminated multicolor LED status indicator) that communication with the control system could not be established, or that communication has been severed. The modular relay could then implement a limp mode for the relay. In limp mode the modular relay could still be activated in response to timed events/schedules. The behaviors of the modular relay when in manual or limp modes could be defined by firmware or set by user preference, thus providing the ability to maintain a schedule, always turn off, always turn on, switch to a special schedule, or other actions intended to maintain the water body while the pool/spa control system is in a state of reduced functionality.
- The relay could also enter service mode in response to motion or other proximity detection (e.g., when a service provider is in close proximity to a piece of pool/spa equipment), geofencing (e.g., when a service provider enters the vicinity of the pool/spa area), voice command (e.g., in response to audible request to “enter service mode”) or a button press (e.g., a physical “service” button located on the relay). Service mode could also allow a technician to temporarily operate the relay and then pass control back (e.g., manually or via a timer) to the controller. The modular relay device could also allow local control (e.g., by touch or voice) at the smart relay without disabling remote control.
- In an exemplary embodiment the relay could enter service mode in response to a service provider being in close proximity to the relay. For example, an application running on the service provider's mobile device could communicate with the relay using any of the communication protocols heretofore described and grant the service provider access to configuration parameters for the relay and/or the
pool control system 10. In further embodiments, additional security measures could be implemented for preventing unauthorized access to the configuration parameters. For example, a password could be required for access to the configuration parameters. The password could be stored within the application so as to auto-populate and unlock the system parameters when the service provider is in close proximity to the relay. Alternatively, the service provider could be prompted for a password when in close proximity to the relay. Multiple passwords could be set so as to unlock various system parameters associated with individual passwords. For example, a service provider password could be used to unlock all of the system parameters, whereas a pool user password could only unlock a subset of the system parameters. - The modular relay could indicate the status of the modular relay through LEDs (e.g., integrated into the modular relay), text, graphics, or sound (e.g., provided on a user interface device), or directly to web, WiFi, Bluetooth, Zigbee enabled devices (e.g., smartphones and other mobile devices). For example the status indications could include, but are not limited to, power, Internet connection, communicating with the system, no communication with the system, WiFi connected, no WiFi, controlled mode, service mode, enabled or disabled, current, voltage, run-time history, actuation history, etc.
- The smart relay can identify itself to a controller (e.g., by providing a physical or network address, or by asking for an address to be provided by the controller automatically), thereby allowing the modular relay to communicate with, and be controlled by the controller. The modular relay could also be manually given a particular network address. The controller could control one or a plurality of relays independently, in a timed sequence, or simultaneously.
- As illustrated in
FIG. 34A discussed in greater detail hereinbelow, the modular relay device could be provided with its own proprietary/dedicated electrical/junction box (“enclosure”) for one (e.g., relay 4670) or a plurality of relays (e.g., wiring hub 4646), but could also be installed in an existing single gang, dual gang, timeclock, or non-traditional electrical/junction box. As shown inFIGS. 34G-34I , the proprietary/dedicated enclosure of the modular relay device could be provided with a multitude of means for mounting the enclosure to the pool pad. For example, the means for mounting the enclosure could include, but are not limited to, hose clamps, screw holes, rebar mounts, zip-tie holes, etc.FIG. 34F illustrates themodular relay 4670 with integral means for mounting to a plumbing pipe (e.g., rounded back).FIG. 34G illustrates themodular relay 4670 with integral means for mounting to a pole (e.g., rounded back).FIG. 34H illustrates themodular relay 4670 with integral means for mounting to a post or wall (e.g., screw bosses).FIG. 34I illustrates themodular relay 4670 with integral means for mounting to rebar inserts (e.g., rebar holders). A secondary structure could also be provided and could include one or more of the means for mounting the enclosure. - As illustrated in
FIG. 34B , the modular relay device could include an incoming (power) whip/connection (including conduit connection hardware) for conducting power from the supply (e.g., breaker panel). The connection could be built in, attached, supplied or purchased separately. According to the embodiment illustrated inFIG. 34B , incoming whip(s) could connect to an existing sub-panel, timeclock enclosure, or junction box with conductors connecting to existing equipment's power connection and the opposite end of the incoming whip(s) could connect to the relay connection in the modular relay system inside the enclosure. It is desirable to utilize the existing whip to connect thebreaker panel 4627 to thewiring hub 4646 or another intermediary piece of equipment (e.g., timeclock 4672) so as to avoid entering/accessing the “hot” section of thebreaker panel 4627 or subpanel. - Whips can enter and exit the enclosure from the same side (e.g., both entering and exiting the bottom of the enclosure as shown in
FIG. 34B ) or from opposite sides (e.g., from a side to the top or bottom, from the top or bottom to the side, or from the top to the bottom or bottom to the top, etc.). The whips could be coupled to the enclosure using straight connections, using 45 degree or 90 degree conduit connectors, or low profile connectors. Standard conduit connectors could be used or proprietary connections could be added to improve simplicity of connections. The threading of the conduit connectors could be male or female, or alternatively, the conduit connectors and the enclosure need not use threading at all. Additionally, there can be a conduit entry and/or exit in the cover of the relay or relay enclosure. All of the conduit entries/exits and conduit connectors discussed hereinabove could also have integral liquid tight cord entries for ease of installation. Accordingly, the modular relay device enclosure is designed such that it readily accepts incoming whips from existing equipment (e.g., sub-panel, timeclock or junction box, etc,) and exiting whips to the powered and controlled device. - The enclosure of the modular relay device could have relays that are detachable, that are integral, or that are integral and fully potted. Further, the relays could be permanently installed, mounted by way of screws, or could be mounted by way of a hinged connection (inside or outside) with one or more screws.
- The modular relay device could have a ground fault circuit interrupter (“GFCI”), arc fault, or other protective circuit built into the relay. The modular relay device could also measure load power, supply voltage, contact closure, contact resistance, or general contact health. In addition, the modular relay device could measure circuit or ambient temperature, or sense water flow or temperature via an attached sensor. The inclusion of GFCI or other safety functions could satisfy wiring requirements without needing an additional (and expensive) GFCI breaker.
- The relay could be encased/over molded into a line cord, thereby allowing a servicer/installer to remove the existing whip from the power supply (e.g., breaker panel) to the piece of equipment and replace it with a new line cord having an integral relay. It is desirable to utilize the existing whip to connect the breaker panel to the wiring hub so as to avoid entering/accessing the “hot” section of the breaker panel or subpanel, and use the new over molded line cord with integral relay to connect the wiring hub and piece of pool/spa equipment. However, the new over molded line cord with integral relay could be used to connect breaker panel and the wiring hub, and the existing whip could be used to connect the piece of pool/spa equipment and the wiring hub. The new line cord could further include a means to communicate with the controller (e.g., RS485, USB, Ethernet, Bluetooth, WiFi, Zigbee, Cellular, Thread, LE Bluetooth, any mesh type network, etc.).
- The relay could also include a number of additional smart relay capabilities that could allow for the addition of other circuitry, inputs, or external communication modules. For example, the modular relay device could accept sensor inputs (e.g., temp, light, wind, etc.) or external data (e.g., storm detection, web servers, GPS inputs for geo fencing, etc.). It is within the scope of the current disclosure that any and all of the pool control logic described herein could be locate in and run from the
relay 4670. -
FIG. 35 is a diagram illustrating another embodiment of the system of the present disclosure, wherein a wireless communication device, indicated generally at 4800, provides communication between pool/spa components or equipment, a home router, and the internet. Thewireless communication interface 4800 allows pool controlling devices (e.g., pump, heater, chlorinator, cleaner, hub, automation, etc.) to communicate with the home router and thereby communicate with the Internet. The wireless communication device could be located directly on the main (intelligence) printed circuit board (“PCB”), could be attached/plugged into the main PCB, could be provided as a modular upgrade to the main PCB or PCB enclosure, could be a modular upgrade to/external to the main PCB enclosure, or could be located remotely to the main PCB enclosure. As shown inFIG. 35 , an antenna could be mounted with (internal antenna 4804) or remote to (external antenna 4816) awireless transceiver module 4802 in the embodiments described herein. Thewireless communication interface 4800 could also allow pool controlling devices to directly communicate with web enabled devices (e.g., smartphones, tablets, thermostats, voice enabled devices, etc.) without the need to go through a home router. Additionally, thewireless communication interface 4800 could provide communication between the pool/spa components or equipment and the web/cloud server, thereby providing tools and indicators to assist a user in solving connectivity problems with the controller through the server/cloud and to the consumer and apps. - As shown in
FIG. 35 , thewireless communication interface 4800 includes aprotocol processor 4808, aradio circuit 4810, and anantenna 4804 and could be installed directly on the circuit board of the controlling equipment. In another embodiment, thewireless communication interface 4800 could have a secondaryexternal antenna 4816 that could be installed for better connectivity (e.g., signal strength) or for placement at a location closer to the home router. - The
wireless communication interface 4800 could also include a printed circuit board, aprotocol processor 4808, an HUA module 4812 (e.g., for providing a unique hardware address), aradio circuit 4810, anantenna 4804,status LEDs 4814, an ethernet/USB/RS485/Bluetooth connection 4806, and an enclosure that could be mounted using the enclosure itself or using a secondary mount. For example, a secondary mount could be provided for mounting thewireless communication interface 4800 without (or with) the use of tools (e.g., by snapping the antenna to the mount or other suitable methods). In addition to, or in place of, the ethernet/USB/RS485/Bluetooth connection 4806, thewireless communication interface 4800 could include any wired or wireless communication protocol disclosed herein for communicating with the controller hardware. - An antenna (
internal antenna 4802 or external antenna 4816) is used to communicate commands from remote web enabled devices (e.g., wireless devices) to a controller unit, which activate equipment as needed with people present or absent, in the pool or around the backyard, which may be year-round and/or all-day based on application (e.g. residential vs. commercial) or location. Additionally, thewireless communication interface 4800 could communicate with the controlling devices by way of RS485, USB, Bluetooth, ethernet, cellular, WiFi, Zigbee or other communication protocols. For example, theantenna 4802 could facilitate communication with the home router through WiFi, Cellular, Bluetooth, ethernet, or other communication protocols. - The
wireless communication interface 4800 could also be provided with a button to activate service/troubleshooting indicators (e.g., LEDs 4814) to provide information relating to the status/connectivity problems of thewireless communication interface 4800. For example, thewireless communication interface 4800 could be provided withLED indicators 4814 which could be illuminated in various colors (e.g., black, green, orange, red, etc.) and activation patterns (e.g., solid, blinking, etc.) based on the status of thewireless communication interface 4800. For example, a green LED could indicate normal operation, a yellow LED could indicate an issue that can be addressed by the user, and a red LED could indicate an issue that needs to be addressed by a service provider. The status LEDs could further include a power icon LED (indicating bad cable, no power, power ok, WPS activation), a router icon LED (indicating router not present, incorrect password, no IP address assigned, router DHCP error, incompatible router/black listed firmware or model), a web icon LED (indicating web not present, no UDP connection allowed, no remote server found, connected to web server), an Internet icon LED (indicating no internet/no google, high error rate, connected to the internet), a signal strength LED (indicating not configured, out of range, weak signal, 75% or greater signal), a quality of signal LED (indicating error rates via a bar graph, high error rate, strong connection/low error rate), and a connection speed LED (indicating reduced connection speed/sufficient connection speed). Additionally, the LEDs could indicate the status of the connection as illustrated in Table 1 below. -
TABLE 1 LED State Connection Status Power: Off No Power, USB/Wire Corruption Power: Off No SSID Password Router: Blinking No IP Address Internet: Off No Internet Access (No Google) Router: Blinking No DHCP Server Response (Static Only) Router Config: Blinking No IP Path −> Remote Server (Internet is OK) Router Config: Blinking No UDP to Remote Server (Firewall) Radio Link: Blinking High Error Rate (Break Out) No Network Connection Internet: Blinking Frequent Internet Response Delays Slow Flicker on High Trending Issue Past Issue Not Currently Happening Power: Slow Flicker Firmware Needs Update radio, host, optional, urgent Power: Slow Flicker WPS for Unknown Password - The connection status could also be communicated through the controller user interface (e.g., a status page) to help installers/users identify communication problems with the cloud and/or application using similar multicolor status indicators as described above. For example, all faults could be provided in a list with one color (e.g., green) or another color (e.g., red) indicators to identify a connection problem area. The status page could also provide a solution to a particular connection problem associated with a color. Further, the system could prompt the user to contact the manufacturer in the event that a problem is not known or that the problem is known to not be resolvable through a troubleshooting manual.
- The status page could be activated through a service button (e.g., provided on the control device, pool/spa equipment, or in an application) to allow a web-enabled device to obtain the status of the wireless communication interface via an application. For example, the application status page could provide all of the faults in a list with green or red indicators to easily identify problem areas, a description of the solutions to particular problems, a walk-through presentation on how to address/fix the problem, and/or a video illustrating how to address/fix the problem. The application could also provide a configuration walk-through page to instruct a user on how to configure the wireless communication interface. The configuration walk-through page could be activated through a service button. The application could also connect to a service to provide remote customer service via a web-enabled controller which could allow the service provider to remotely troubleshoot and fix the problem with minimum user interaction.
-
FIG. 41 is a flowchart illustrating installation steps, indicated generally at 6000, for installing the pool and/orspa control system 4610, as described above in connection withFIGS. 34A-34J of the present disclosure. Additionally,FIGS. 42A-42I are diagrams further illustrating the installation steps ofFIG. 41 . - As shown in
FIG. 41 , instep 6002, a pool or spa installer or service professional, hereinafter “installer,” could mount thewiring hub 4646, described hereinabove, in an existing pool or spa environment (e.g., at a pool equipment pad). For example, as shown inFIG. 42A , an existing pool or spa environment could include alighting system 4614 h having a switch 6028 (e.g., a single-gang light switch), a single-speed (e.g., booster)pump 4613, an existing filter pump (e.g., single or variable speed) 4614 a, aheater 4615, timers ortimeclocks 4672, and a power source 4627 (e.g., a breaker panel). Existing power conductors 6030 a-c could provide power to existing pool or spa devices directly from thepower source 4627 or via intermediary devices (e.g.,switch 6028 or timeclocks 4672). Accordingly, the power conductors 6030 a-c could include power cables, conduits, and the like. The existing pool or spa environment could also include any of the other pool or spa devices disclosed herein. Thewiring hub 4646 could be provided with any of the mounting means described above in connection with thesmart relay 4670 and shown inFIGS. 34G-34I . For example, the means for mounting thewiring hub 4646 could include, but are not limited to, hose clamps, screw holes, rebar mounts, zip-tie holes, etc. - Optionally, in
step 6014, the installer could also mount acontrol module 4661. Thecontrol module 4661 could be mounted at a location proximate to the wiring hub 4646 (seeFIG. 42B ), or could be removably affixed such that it can be moved according to the specific needs of a particular pool or spa environment and/or user. For example, thecontrol module 4661 could be removably affixed such that thecontrol module 4661 could be moved away from the pool pad to a location closer to a wireless network, a home, or to any convenient location for the user (e.g., poolside). The control module could also be provided with any of the mounting means described above in connection with thesmart relay 4670 and shown inFIGS. 34G-34I . Further, while thewiring hub 4646 andcontrol module 4661 could be provided as separate components, it is within the scope of the present disclosure that some, or all, of the functionality of thecontrol module 4661 could be integrated into thewiring hub 4646. Accordingly,wiring hub 4646 andcontrol module 4661 could be provided as a single, integral component, thereby eliminating the need to separately mountcontrol module 4661. - In
step 6004, the installer could disconnect an existing power conductor from an existing pool or spa device. For example, as shown inFIG. 42C , existingpower conductor 6030 a could be disconnected from existingfilter pump 4614 a. Instep 6006, the existing power conductor can be connected to the wiring hub. For example, as shown inFIG. 42D , the end of existingpower conductor 6030 a that was disconnected fromvariable speed pump 4614 a could be connected to an input ofwiring hub 4646, thereby electrically coupling thepower source 4627 to the wiring hub 4646 (e.g., via timeclock 4672) and providing power thereto. Instep 6008, a first end of a new power conductor can be connected to the wiring hub and then instep 6010, a second end of the new power conductor can be connected to the existing pool or spa device. For example, as shown inFIG. 42E , a first end ofnew power conductor 6032 a is connected towiring hub 4646 and a second end of thenew power conductor 6032 a is connected to the existingvariable speed pump 4614 a, thereby electrically coupling thepower source 4627 to the existingvariable speed pump 4614 a (via the wiring hub 4646) and providing power thereto. This installation method enables a service provider to install thewiring hub 4646 and provide power to one or more devices therefrom without having to access the line voltage compartment of an electrical panel. Importantly, as discussed above, thewiring hub 4646 can control operation of the existingvariable speed pump 4614 a by controlling the power provided thereto based on, for example, any of thecontrol logic 70 discussed in connection withcontrol system 10 of the present disclosure. - In
step 6012, communication is established between the wiring hub and the control system of the present disclosure. For example, as shown inFIG. 42E , acommunications cable 6034 could couple thewiring hub 4646 andcontroller 4661, providing two-way communication therebetween. As described above, thewiring hub 4646 could communicate with thecontrol system 4610 via thecontroller 4661, or the wiring hub could communicate with thecontrol system 4610 via an integral communications module. Optionally, instep 6026, thecontroller 4661 can be connected to a homeowner's WiFi network and the controller can be configured. - According to further optional aspects of the present disclosure, the wiring hub can provide communication between newly installed or existing smart pool or spa devices (e.g., devices having network communication capabilities) and the control system of the present disclosure. In
optional step 6016 ofFIG. 41 , an installer could replace an existing pool or spa device (having no network communications capabilities) with a smart pool or spa device. For example, as shown inFIG. 42F , the existingfilter pump 4614 a shown inFIGS. 42A-E has been removed and a smartvariable speed pump 4614 b has been installed in its place. - In
step 6018, a second end of the new power conductor can be connected to the new smart pool or spa device. For example, as shown inFIG. 42G , a first end ofnew power conductor 6032 a is connected towiring hub 4646 and a second end of thenew power conductor 6032 a is connected to the smartvariable speed pump 4614 b, thereby electrically coupling thepower source 4627 to the smartvariable speed pump 4614 b (via the wiring hub 4646) and providing power thereto. - In
step 6020, communication is established between the wiring hub and the smart pool or spa device. For example, as shown inFIG. 42I , acommunications cable 6034 could couple thewiring hub 4646 and smartvariable speed pump 4614 b, providing two-way communication therebetween. As described above, thewiring hub 4646 could communicate with thecontrol system 4610 via thecontroller 4661, or the wiring hub could communicate with thecontrol system 4610 via an integral communications module. Accordingly, communication between the control system of the present disclosure and the smartvariable speed pump 4614 b is provided by way ofwiring hub 4646. Importantly, as discussed above, thewiring hub 4646 can control operation of the smartvariable speed pump 4614 b based on, for example, any of thecontrol logic 70 discussed in connection withcontrol system 10 of the present disclosure. - According to further optional aspects of the present disclosure, the wiring hub can provide communication between additional newly installed or existing smart pool or spa devices and the control system of the present disclosure. For example, as shown in
FIG. 42H ,smart relays 4670 a-b could be installed to provide control of existing pool or spa devices (e.g.,lighting system 4614 h and single speed pump 4613) by the control system of the present disclosure. - In order to install a
smart relay 4670 a-b according to the present disclosure, an installer can first disconnect an existing power conductor from an existing pool or spa device as shown instep 6004 ofFIG. 41 . For example, as shown inFIG. 42H , a first end of existingpower conductor 6030 b could be disconnected from thesingle speed pump 4613. Instep 6021, an installer can mount a smart relay device as described above and shown inFIGS. 34G-34I . For example, the means for mounting asmart relay 4670 could include, but are not limited to, hose clamps, screw holes, rebar mounts, zip-tie holes, etc. Instep 6022, the installer then connects the existing power conductor to the smart relay. For example, as shown inFIG. 42H , the first end ofpower conductor 6030 b that was disconnected from thesingle speed pump 4613 is reconnected to an input of thesmart relay 4670 a. Instep 6024, an installer can connect a new power conductor to the smart relay and then instep 6010, the new power conductor is also connected to the existing pool or spa device. For example, as shown inFIG. 42H , a first end of anew power conductor 6032 a is coupled to the smart relay 4070 a and a second end of the new power conductor is coupled to the existingsingle speed pump 4613. - In
step 6025, communication is established between the smart relay and the wiring hub. For example, as shown inFIG. 42I , acommunications cable 6034 could couple thewiring hub 4646 andsmart relay 4670 a, providing two-way communication therebetween. As described above, thewiring hub 4646 could communicate with thecontrol system 4610 via thecontroller 4661, or the wiring hub could communicate with thecontrol system 4610 via an integral communications module. Accordingly, communication between the control system of the present disclosure and thesmart relay 4670 a could be provided by way ofwiring hub 4646. - According to further aspects of the present disclosure, a smart relay could be configured to replace a light (or other) switch, thereby providing for control of a lighting system (or other system or device controlled by a switch) by the control system of the present disclosure. For example, as shown in
FIG. 42H , an installer could remove a single-gang lighting switch 6028 (seeFIG. 42G ) and replace it with asmart relay 4670 b. As shown inFIG. 42I , acommunications cable 6034 could couple thewiring hub 4646 andsmart relay 4670 b, providing two-way communication therebetween and providing for control of the existinglighting system 4614 h by the control system of the present disclosure. Importantly, as discussed above, thewiring hub 4646 can control operation of thesmart relays 4670 based on, for example, any of thecontrol logic 70 discussed in connection withcontrol system 10 of the present disclosure. According to some aspects of the present disclosure, the smart relays could also communicate directly with thecontrol module 4661 or other controller of the control system by way of any wired (e.g., RS485, ethernet, USB, serial, etc.) or wireless (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.) communication protocols discussed herein. -
FIG. 42I illustrates additional aspects ofcontrol system 4610 of the present disclosure. In addition to the devices discussed above, thewiring hub 4646 could accept connections from and provide for control of additional pool or spa devices. For example, the wiring hub could provide power to and/or control asmart valve actuator 4614 e orheater 4615 and thewiring hub 4646 could be coupled to and receive information from a plurality ofsensors 4626, for example, air and water temperature sensors. Importantly, in addition to, or in place of, thecommunications cables 6034 shown inFIG. 42I , the pool or spa devices of could be communicatively coupled by way of any wired (e.g., RS485, ethernet, USB, serial, etc.) or wireless (e.g., WiFi, Bluetooth, Zigbee, ZWave, cellular, thread, etc.) communication protocols discussed herein. -
FIG. 43 is a system diagram which illustrates arecommendation system 6100 for recommending upgrades to pool/spa equipment. Thesystem 6100 can include a pool orspa equipment pad 6102 having at least one of a pump, filter, heater, chlorinator, controller, lights, or other pool or spa device (or any combination thereof). The present disclosure is not limited to any specific device within the pool or spa equipment pad. A servicer who services a customer's pool or spa can use his or hersmartphone 6104 to take a photograph of the pool orspa equipment pad 6102 using acamera 6106 on mounted and installed with thesmartphone 6104. The servicer can use the regular camera application included on thesmartphone 6104. Alternatively, the servicer can launch the camera functionality of thesmartphone 6104 using an application provided by the system of the present disclosure as will be discussed in greater detail below. In either scenario, the smartphone can provide “guides” to position and orientate the product in the camera application to aid in image capture and recognition. The data captured by the smartphone (e.g., in the photograph taken by the smartphone) can be a barcode or other image code on a pool device. The smartphone can also capture data labels on a product. Once the servicer takes a photograph of the pool orspa equipment pad 6102, thesmartphone 6104 can upload at least onedigital photo 6108 to a network 6110 (e.g., the Internet) for transfer to other computer systems as will be explained in greater detail below. Thedigital photo 6108 can be stored in a database and retrieved for future reference by a help desk or a service desk, if desired. - The digital photo(s) 6108 can be transmitted to and received by a computer
vision computer system 6112 for processing thedigital photo 6108 using suitable computer vision software to determine the make, model and manufacturer of all of the pool equipment on the pool orspa equipment pad 6102. Thecomputer vision system 6112 can process adigital photo 6108 having a picture of just one component of the pool orspa equipment pad 6102, or it can process a plurality of components on the pool orspa equipment pad 6102. The computervision computer system 6112 could include the IBM Watson or Google Lens systems which can process thedigital photos 6108. These computer vision systems can process to the photos to determine the make, model and manufacturer of the device. The digital photo can be of the pool itself and the computer vision system can process this photo to determine the size of the pool and the amount of gallons of water in the pool by using the camera lens parameters such as a the amount of feet the camera is from the ground and the amount of feet the camera is from the pool. The system can use this information to solve for the depth of the pool and the other dimensions and thereby determine the amount of gallons and pool size. The size and capacity of water of a pool can be used to make certain recommendations as will be explained in greater detail below. - The data relating to the equipment on the pool or
spa equipment pad 6102 can be sent to a poolanalytics computer system 6114. The poolanalytics computer system 6114 can use the data generated by the computervision computer systems 6112 to determine if there are upgrades or replacements products that may be of interest to an owner of the pool or spa. For example, if the computervision computer system 6112 determines that a pool orspa equipment pad 6102 has a variable speed pump that is two years old and a newer model has greater energy efficiency or more pumping speeds, the poolanalytics computer system 6114 can recommend to the servicer or the pool owner that it may be time to upgrade to newer model. Alternatively, with respect to chlorinators, the poolanalytics computer system 6114 can determine whether the pool or spa equipment pad has an older chlorinator and whether a newer model exists to provide additional benefits such as extending the life of chlorination cells, killing more bacteria, or reducing the overall chlorine demand. If such a determination is made, then the poolanalytics computer system 6114 can recommend an upgrade to the newer model and specifically identify a device which will provide the greater benefits. With respect to pool automation, the poolanalytics computer system 6114 can determine the make and model of a pool controller and determine whether a newer version exists that provides greater benefits such as more control over the pool or spa environment or a faster processor or better hardware in general. If this is the case, the poolanalytics computer system 6114 can make a recommendation to upgrade to a certain newer device. With respect to pool lights, the poolanalytics computer system 6114 can determine the make and model of lights being used anywhere in the pool or spa environment, and can determine if a newer version of lights exists that provide enhanced benefits such as more fixed colors, more light shows, less energy usage, and more brightness. If this is the case, the poolanalytics computer system 6114 can recommend an upgrade. The above examples are for illustration purposes only and can apply to any type of upgrade for any type of device in the pool or spa environment and does not necessarily have to be limited to components on a pool orspa equipment pad 6102. It should be noted that the computer vision services provided by the computer vision computer system(s) 6112 could also be performed on asmartphone 6104, if desired. - The pool
analytics computer system 6114 can be programmed and updated with information relating to new devices and new features that improve upon preexisting device to offer upgrades. The poolanalytics computer system 6114 can include a database with features associated with a make and model of a device. Those features can be compared with a plurality of newer models, and computer code can apply logic to determine whether the features of the new device offer improvements over the old versions. For example, if a certain variable speed drive is rated with a certain energy performance, and a newer model is rated with a better energy performance, then the system can make a positive determination that an upgrade can be recommended. Alternatively, the poolanalytics computer system 6114 can make suggestions for replacement equipment that may be better suited for a certain pool or spa environment than an existing device. For example, if a pool orspa equipment pad 6102 has a variable speed drive rated for a pool having a capacity of 15,000 gallons, but the pool actually has a capacity of 20,000 gallons, then the poolanalytics computer system 6114 can recommend a variable speed drive rated at 20,000 gallons and provide the reason for the recommendation. The system can determine the size of the pool by an input from the servicer, by a database search based on the home address of the owner, by automatically using a geolocation of thedigital photo 6108 as will be discussed in greater detail below, or by leveraging the photo of the pool as discussed above. - In an alternative embodiment, the
system 6100 does not need to have a separate computervision computer system 6112. Rather, the entire logic of the computervision computer system 6112 can be done by the poolanalytics computer system 6114. In this case, thedigital photos 6108 can be directly received by the poolanalytics computer system 6114 for processing to determine the make and model of the pool devices on the pool orspa equipment pad 6102. - The system can use the algorithms of the computer
vision computer system 6112 and the poolanalytics computer system 6114 to extract user data from the digital photos taken on the servicer's smartphone. For example, the data which can be determined includes model number and the data relating to the model number (power requirements, etc.). The data can also include serial number and date of manufacture. The data can also include the date the device was installed which can be obtained from the servicer phone. The data can also include geolocation/home address from the phone or cooperative application as will be discussed herein. The data can also include the installing company information and the installer's name which can be default parameters entered by a servicer. The data can also include a home owner's name which can be auto populated from address and geolocation information as discussed herein. This can be updated or overridden by the servicer or installer. The data can also include MSRP or price information of the devices, which the servicer can override and which the system can leverage the override information to provide better pricing information to the manufacturers of the devices. The data can also include cost of installation which can be provided by the installer and which can also be captured by the system to provide that information to the manufacturer so that the manufacturer can provide better price estimates for installation in the future. The data can also include information about one or more utility companies servicing the pool owner's home and the ability to select the one or more utility companies in the user interface as will be discussed below. The utility information can be captured by determining the geolocation information from the servicer smartphone and using a database based on the location to determine which utility or utilities service that area. Moreover, the data can include annual energy cost which can be determined by using the geolocation information to determine power costs at that location from the utility and a formula to make the calculation. - The system can use the algorithms of the computer
vision computer system 6112 and the poolanalytics computer system 6114 and the data gathered to provide auto-warranty registration and auto-rebate submissions. For example, the system can automatically register a product with the manufacturer by determining the information of the product and the pool owner information as discussed herein. Moreover the system can automatically apply for utility company rebates based on the information of the product and the pool owner information. Moreover the system can automatically apply for manufacturer rebates based on the information of the product and the pool owner information. As discussed herein, the system can automatically determine product information with computer vision systems and the pool owner information with geolocation. The system can automatically connect with a utility or merchant submit to automatically submit a rebate or the system can auto-populate a relevant form for the pool owner to allow for the owner's review and submission. These automatic procedures can be accomplished by using barcode information taken from the servicer's smartphone and geolocation information from the data capture as discussed herein. - Still with respect to
FIG. 43 , once the poolanalytics computer system 6114 generates a recommendation for upgrading or replacing the pool devices on the pool orspa equipment pad 6102, it can send a customized upgrade/replacement sales data 6116 over thenetwork 6110 back to theservicer smartphone 6104. Alternatively, this data can be also sent to ahome owner smartphone 6118. Alternatively, this data can be also sent only to thehome owner smartphone 6118. Thedata 6116 can be presented to the user in the form of a user interface screen as will be discussed in greater detail below. Once the servicer receives thedata 6116 on hissmartphone 6104, the servicer can share these details with the homeowner or owner of the pool, and can discuss the upgrades further. Alternatively, the servicer can share thedata 6116 with the homeowner by sending thedata 6116 over thenetwork 6110 to the homeowner'ssmartphone 6118. Alternatively, as mentioned above, the homeowner and servicer can receive thedata 6116 contemporaneously on each of their smartphones. -
FIG. 44 is a flowchart illustratingprocessing steps 6120 carried out by the system ofFIG. 43 . The process can begin withstep 6122, wherein the servicer captures a photo or a plurality of photos of the pool pad or any particular pool equipment with the servicer's smartphone. The process can then proceed to step 6124 where the photos taken instep 6122 are transmitted to a computer vision computer system. The process can then proceed to step 6126 where the photo(s) can be processed by computer vision algorithm(s) to identify pool/spa equipment types and model numbers. The process can be then proceed to step 6128 where pool and spa equipment types and model numbers are transmitted to a pool analytics computer system. As discussed above, the transmission and processing of the photos insteps - Optionally, as shown in
FIG. 44 , afterstep 6122, the process can proceed to step 6136 where geocoding information can be extracted from the photos taken by the servicer on his smartphone. Smartphone camera applications can provide geocoding/geolocation/geotag information with geocoding/geolocation/geotag information. Alternatively, this information can be extracted using the smartphone GPS data. The process can then proceed to step 6138 where the pool owner information is determined using geotag information extracted instep 6136. This can include a pool owner's home address. Once a home address is determined, a database of records can be searched to determine the pool equipment at that home. A computer vision algorithm does not need to process the photos because the geocoding/geolocation/geotag information can provide a means for determining the pool equipment by determining the pool owner's address and the pool equipment being used at the address through database searching. A home owner's email address can be extracted using the geocoding/geolocation/geotag data by determining a home address and cross references a database relating the home address or home owner personal identifying information. This information can be automatically populated in the user interface screens as will be discussed below. - With reference to
FIGS. 45-48 , the user interface screens generated by thesystem 6100 ofFIG. 43 and theprocess 6120 ofFIG. 44 will now be discussed in greater detail.FIG. 45 illustrates an initial user interface screen generated by the system. Auser profile portion 6200 is provided which can be populated with pool owner information such as owner name, street address, email, zip code, total gallons, months operating, whether there is a pool, a pool and spa, pool control, and comments with respect to customer hassles. As noted above, theuser profile portion 6200 can be automatically generated by the geocoding/geolocation/geotag information extracted from the servicer's smartphone which can use this information to retrieve an address and the address can be used with a database to populate the other fields. Alternatively, a servicer can manually enter a customer name which the system can take as an input and can automatically populate the rest of the fields based on an address book or database with fields related to a customer name. Alternatively, an incoming call from a customer can use the phone number from the caller ID to query a database having the rest of the information related to the phone number, which the application can use to auto-populate the remainder of the fields. If all of the information does not get populated, the system can alert the servicer and the servicer can request the information from the pool owner. Customer hassles can be automatically extracted by the system based on the types of pool and spa components detected in theequipment pad 6102 or can be manually entered by the servicer. The screen can also include top level menus for the pool and spa devices including, but not limited to, pumps, lights, heaters, cleaners, controllers, and chemical automation. A user of the application can choose any one of theproduct category buttons 6202 or can choose more than one. -
FIG. 46 is drawing of a user interface screen illustrating recommendations relating to upgrading pumps. This screen can include a poolowner profile portion 6200 which can include the pool owner's information as discussed above with respect toFIG. 45 . This screen can be displayed after the user selects one or more of theproduct category buttons 6202 as discussed above in connection toFIG. 45 . The screen can also include a plurality ofcolumns 6204. Column 6204 a can provide context to the rows. For example, column 6204 a can include at least one pump which can have a general description such as “circular pump # 1” or “pump # 2 spa or water feature.” Column 6204 a can also include a portion for specifying the upgrade number being suggested for each general pump, such as “upgrade 1,” “upgrade 2,” to “upgrade n.” The screen can also include the following columns:column 6204 b can include an existing product;column 6204 c can include a list of quantities to be recommended;column 6204 d can list the make and model of the replacement models if any, which can be populated automatically by the recommendation systems and methods discussed above in connection withFIGS. 43 and 44 ;column 6204 e can include a cost for the replacement devices;column 6204 f can include the estimated labor costs of the replacement models;column 6204 g can include consumer benefits for using the recommended upgrades over current devices;column 6204 h can include an amount of energy savings for each of the recommended products if applicable;column 6204 i can include an amount of energy savings per year for each of the recommended products if applicable;column 6204 j can include a list of rebates if applicable;column 6204 k can include comments with relating to the recommended products; and 6204 l can include timing information on when the recommended product should be installed. - As can be seen in
FIG. 46 ,fields FIGS. 43 and 44 . This auto-populate feature can happen in real-time upon the servicer taking a photograph of a pool or equipment pad, or the fields can auto-populated based on a previous photo from a previous visit by the servicer.Fields 6208 a, 6208 b, and 6208 c can be selected by a servicer by, for example, tapping the field which causes the system to display a color or pattern over the field. By doing so, the servicer can highlight his or her recommendation of which replacement product the pool owner should purchase out of a plurality of automatically recommended replacement products with respect to the current device in column 6204 a.Columns Columns - Once the servicer finishes making recommendations with respect to pumps as shown in
FIG. 46 , the servicer can select another device category in same screen and the system can repeat the process as discussed above in connection withFIG. 46 . The servicer can then select a recommended device among automatically generated recommendations within the new device category. The servicer can repeat this process for all relevant device categories that are available for a pool or spa. Alternatively, as mentioned above, the servicer can select more than one device category which can prompt the system to recommend products for all devices relating to the selected device categories. The pool owner can receive the automatically generated recommendations and the servicer's choice among them by an email, text, or link to an application on the owner's smartphone for retrieving the user interface screen of the system of the present disclosure. -
FIG. 47 illustrates the user interface screen ofFIG. 46 after the servicer has selected a replacement product. In particular, this user interface can include the same information as the user interface ofFIG. 46 such as pool owner profile information and replacement products along with the servicer recommendation. As can be seen, a pool owner can select a replacement on his/her own smartphone or on the servicer's smartphone or through any other means. Once this selection is made, the system can cause the replacement product details to be highlighted in a different color or pattern as shown in 6210 a-6210 b. As can be seen, the servicer recommended a replacement product infield 6208 a and the pool owner followed the recommendation by selecting the product as shown in 6210 a. Moreover, with respect to another device in the pool or spa environment, the servicer recommended a product among a plurality of automatically recommended products in field 6208 b but the pool owner selected another product recommended automatically by the system of the present disclosure as shown infield 6210 b. Still further, with respect to yet another device in the pool or spa environment, the system recommended a plurality of devices and the servicer chose one of them in field 6208 c, but the pool owner decided not to upgrade as no device was selected. By selecting and authorizing work to be done and a replacement product to be installed, the system can generate a work order and can generate a servicer or dealer invoice for the pool owner. The invoice can provide a summary sheet for future upgrade recommendations for remaining upgrade opportunities. -
FIG. 48 is a drawing illustrating another embodiment of the user interface screen of the present disclosure. The user interface screens can be modular and flexible and can be easily modified by a servicer or programmer to remove, swap, move, or modify the various columns. For example, additional columns can be included such asreplacement part number 6212a, VPL (ea) 6212 b, VPL (ext'd) 6212 c, est'd labor (ext'd) 6212 d, andutility rebate 6212 e. It should be noted that other types of equipment including, but not limited to, filters and cleaners can be included in the user interface screen. -
FIGS. 45-48 are merely example embodiments of a user interface screen generated by the system of the present disclosure. As noted above, the screens can be customizable to include any types of inputs or fields to display information helpful to a user. The system can also be programmed to generate a screen that can be customized by the servicer or the pool owner. The system can include a memory to store user screen preferences of the pool owner and servicer and can automatically display the preferred user interface layout for each user. The user interface screens can include recommendations for a plurality of devices or a single device as described above. The user interface screens can include any combination of devices in a pool or spa environment. For example, with respect toFIGS. 46-47 , only pumps are shown, but this can include all the other types of devices in a pool or any combination of those devices. - It should be noted that the disclosure with respect to recommending upgrades or replacement pool device with respect to
FIGS. 43-47 can be used in conjunction with the disclosure with respect toFIGS. 33AD and 33AE . - It should be noted that the databases that can be relied upon by the system of the present disclosure include a servicer database, a utilities database, a manufacturer database (having dealer, consumer, equipment pad, and product information), and an equipment pad profile database. These databases can be combined or separate.
-
FIG. 49 is a system diagram which illustrates a monitoring andcontrol system 7100 for monitoring and/or controlling pool/spa equipment 7102, according to the present disclosure. Thesystem 7100 is able to aggregate information from a variety of sources (e.g., operational data from connected devices, sensor data, web data, historical trends, etc.), process that information (e.g., via machine learning algorithms), and using the processed information, control the pool/spa equipment, preemptively address problems before they occur, and/or provide alerts if a problem does occur. Thesystem 7100 can further provide documentation of problems, provide suggested solutions to problems, identification of problems prior to a pool/spa service technician (“servicer”) arriving on-site, and identification of problem causation. Thesystem 7100 is able to provide the aforementioned benefits utilizing combinations of one or more of hardware (system controllers, smart/connected pool/spa equipment, sensors, etc.), applications (e.g., smartphone applications, servicer systems, etc.), and cloud integration (e.g., central management/control, data storage, machine learning/analytics, etc.). According to some aspects of the present disclosure, thesystem 7100 can identify an alert condition (e.g., decibel level from pump microphone/sensor is exceeding historical levels), determine if a problem exists (e.g., decibel levels from pump indicative of shaft bearing failure within 30 days), provide a solution to the problem (e.g., replace shaft bearing within 30 days), and generate a list of materials needed to implement to solution (e.g., one new shaft bearing, one new shaft seal, two O-rings, shaft grease, etc.). Thesystem 7100 can also determine where the materials can be located (e.g., in a servicer's monitored inventory, at a local distributor, online distributor, etc.), determine lead-times for the materials (e.g., in inventory, available to ship in 2 days, available for pickup at distributor, etc.), and order the materials if requested. - As shown if
FIG. 49 , the monitoring andcontrol system 7100 can include a pool/spa control system 7120 for controlling and communicating with the pool/spa equipment 7102, asensor hub 7122 in communication with a plurality ofsensors 7140, ananalytics system 7114, and a pool/spa servicer system 7124. The pool/spa equipment 7102 can include but is not limited to a heating/cooling system 7132, apump 7134, afilter 7136, and a pool/spa chemistry system 7138. The plurality of sensors can be configured to gather operational data related to theequipment 7102 as will be discussed in greater detail hereinbelow. - The
system 7100 is able to monitor and control smart and/or connected devices (e.g., devices which are capable of direct communication with thesystem 7100 via a data connection) as well as legacy devices (e.g., devices which not are capable of direct communication with thesystem 7100 via a data connection). For example, as shown inFIG. 49 , a connected device such aspump 7134 can provide operational data (e.g., pump speed, water pressure, etc.) directly to thesystem 7100, and can be controlled by thesystem 7100, by way of a data connection (e.g., RS485, WiFi, Bluetooth, ZWave, Zigbee, etc.). However, a legacy device such asheater 7132 may not include a communication bus, or may not otherwise be capable of communication with the system 7100 (e.g., incompatible communication protocols between theheater 7132 and system 7100). In this case,sensors 7140 are provided to monitor the operation of theheater 7132 and provide this information (e.g., water outlet temperature) to thesystem 7100 by way ofsensor hub 7122, discussed herein. Thesystem 7100 is able to control theheater 7132 via asmart relay 7148, discussed herein, which communicates with thesystem 7100 and regulates power provided to theheater 7132. Of course, thesystem 7100 can monitor and control additional legacy devices in a similar fashion. -
FIG. 50 is another diagram which illustrates additional aspects of thesensor hub 7122 andsensors 7140 of the monitoring andcontrol system 7100 of the present disclosure. As shown inFIG. 50 , and described below, data gathered bysensors 7140 andsensor hub 7122 is used by thesystem 7100 to monitor various characteristics of theequipment 7102 and/or the pool/spa environment. - For example, the heating/
cooling system 7132 could be provided with aflood sensor 7140 a to determine if the heat exchanger is leaking so that it can be replaced before heater is damaged. The heating/cooling system 7132 could also be provided with aheater pod 7140 b that can include multiple sensors (e.g., current clamping, vibration, flooding, thermostat voltage, etc.), as well as a thermostat relay, for determining if heat was called for but is not heating, heater power loss, igniter current cycling with re-tries, low gas pressure, ignition failure, blower fan failure, heat run time and energy cost calculation, acting as a remote thermostat and heat shutoff, and providing alerts (e.g., head usage rules are violated). The heating/cooling system 7132 could also be provided with anoutlet temperature sensor 7140 c, of an insulated wrap-on variety or similar, that can be used to determine heater efficiency loss due to moisture or a burner issue, that the heater is not firing, or an excessive output temperature caused by low flowrate, shortening the lifespan of the heater. - The
pump 7134 could be provided with avacuum sensor 7140 d in its drain plug, the operational data from thevacuum sensor 7140 d, being used by thesystem 7100 to determine whether a pump skimmer needs to be cleared and to detect low water below the skimmer. Thevacuum sensor 7140 d could also be used by thesystem 7100 to clear a loaded pool skimmer or main drain. Aflood sensor 7140 e can be provided, the operational data from theflood sensor 7140 e, being used by thesystem 7100 to determine shaft seal leakage, so that the seal can be replaced before the bearings are damaged, or to determine that there is a flooded pool pad, so that the pump can be shut off, thereby avoiding emptying of the pool (and potential displacement relative to the water table).Motor temperature sensor 7140 f andvibration sensor 7141 f can also be provided, the operational data from themotor temperature sensor 7140 f andvibration sensor 7141 f, being used by thesystem 7100 to determine if there is a blocked fan inlet (e.g., by leaves or improper installation), or a broken or fouled fan blade (e.g., via bearing noise). - A
combination sensor 7140 h including salinity, water temperature, and flow sensing can also be provided, the operational data from thecombination sensor 7140 h being used by thesystem 7100 to determine the inlet water temperature for remote heat control, low salinity for salt chlorination control, insufficient flow for heating control, whether backwashing is necessary, whether the pump is running dry, the pool turnover rate or filter schedule assessment, and whether there is an energy savings opportunity by converting a single-speed pump to a variable-speed pump (“VSP”). PH and oxidation reduction potential (“ORP”)sensors 7140 i can also be provided, the operational data from the PH andORP sensors 7140 i, being used by thesystem 7100 to manage pH and chlorine dose by the pool/spa chemistry system 7138. In addition to, or in place of, the pH andORP sensors 7140 i, thesystem 7100 can includewater sample mailers 7146. Thewater sample mailers 7146 contain sample vials of pool water which can be tested by a service provider. For example, the water samples can be provided with prepaid postage, can be pre-addressed, and can be bar-coded so that a pool owner can easily send a sample of pool water to a servicer if one is requested by the servicer, or if the pool owner required that the water be tested for another reason. Thesystem 7100 could further include smart test strips and thesystem 7100 could process the data from the smart test strips and suggest an appropriate water treatment. - Still with respect to
FIG. 50 , according to some aspects of the present disclosure, thesensor hub 7122 could be provided with integral rain, ambient light, humidity, andair temperature sensors 7140 j. According to further aspects of the present disclosure, thesensor hub 7122 could also be provided with an integratedjug feeder system 7142, including a peristaltic pump that draws from a container (e.g., jug) of acid, the integratedjug feeder system 7142 being used by thesystem 7100 to control the pH of the pool or spa water. As an alternative to, or in combination with, the integratedjug feeder system 7142, thesystem 7100 can include acid and/orchlorine feed tanks 7144 that include level sensing capabilities that provide additional operational data to the monitoring andcontrol system 7100, thereby further enhancing automation capabilities. According to still further aspects of the present disclosure, thesensor hub 7122 can include a memory, the memory being used for local storage of acid feeding, chemical dosing, and filtering schedules. The schedules can be manually updated locally, or automatically updated based on algorithms processed by theanalytics system 7114. - As discussed above, the
system 7100 is able to aggregate information from a variety of sources, process that information, and using the processed information, control the pool/spa equipment, preemptively address problems before they occur, and/or provide alerts if a problem does occur. For example, as shown inFIG. 51 , theanalytics system 7114 of thesystem 7100 can be in communication with and/or receive information from ahistorical database 7150, connecteddata sources 7152, andsensor hub data 7154. The historical database includes a comprehensive data set of historical information (e.g., power, noise, environmental data, water levels, size of plumbing, jets, measured head, failures, normal power draw for a pump, power consumption changes in the months preceding a failure, normal power draw for a chlorination cell, chlorination cell power draw preceding a failure, chlorination cell power draw preceding a cleaning, normal gas consumption of a heater, gas consumption of a heater preceding a failure, gas consumption of a heater preceding a service, etc.), including failures and the conditions preceding failures, which is analyzed (e.g., using machine learning) by thesystem 7100 to predict failures before they occur and suggest solutions. As the information contained historical database grows, the predictions become increasingly accurate. Thehistorical database 7150 can include historical data gathered from connected pool/spa devices 7102, data recorded bysensors 7140, as well as additional historical information gathered and recorded by thesystem 7100. In addition to the information collected from a single pool/spa environment (e.g., a pool/spa located at single residence), thehistorical database 7150 can also contain information related to a plurality of pool/spa environments (e.g., pool/spas located at a plurality of residences or commercial locations distributed across a wide geographic area). - The connected
data sources 7152 can include up-to-date information retrieved from the Internet, current operational data from one or more connected pool/spa devices 7102, as well as any other currently available information. For example, the connecteddata sources 7152 can include, but are not limited to, information related to the time and date, pool mode, pool/spa/spill, weather, air temperature, pool temperature, ORP level, pH level, salt level, water level, sunlight/UV index, approaching storms, wind direction, rainfall, utility costs, utility rebates, utility time of use rates, gas costs, and the like. In addition to being provided to theanalytics system 7114, information from the connecteddata sources 7152 can also be saved to thehistorical database 7150 for later retrieval and use by thesystem 7100. - The
sensor hub data 7154 can include current information that is received from thesensors 7140 in communication with thesensor hub 7122. For example, thesensor hub data 7154 can include, but is not limited to, information related to wind speed, wind direction, ambient light, water turbidity, chlorine level, liquid feed tank level, water hardness, water mix ratio, phosphate level, stray current, pool cover position (e.g., open or closed), candela and/or lumen levels (e.g., for lighting), pool chemistry (e.g., pH, TA, TH, CyA, CL2), and the like, as well as other information received from storm sensors, water sensors, water leak sensors, water fills sensing (e.g., leaks), evaporation sensing and algorithm, vibration sensors, heat sensors, power line sensors (e.g., power digital imprint), noise sensors, music sensors, rain sensors, humidity sensors, and motion sensors (both in and out of water). In addition to being provided to theanalytics system 7114, thesensor hub data 7154 can also be saved to thehistorical database 7150 for later retrieval and use by thesystem 7100. - The
analytics system 7114 processes the information from thehistorical database 7150, connecteddata sources 7152, andsensor hub data 7154 to determine information related to thesystem 7100 that may not be detectable, may be inconvenient, or may be cost-prohibitive utilizing traditional sensing means. For example, a sensor may not be commercially available to determine a shaft seal failure. Further, it could be beneficial to a pool owner or servicer to predict a shaft seal failure before it occurs. - Accordingly, the
system 7100 of the present disclosure can generate determined information for the pool/spa equipment 7102. For example, thesystem 7100 can determine information related to thepump 7134 such as, but not limited to, shaft seals, drive failures, communication failures, seal failures, motor failures, bearing failure/noise, basket level (e.g., low, med, high, etc.), skimmer level (e.g., low, med, high, etc.), filter status (e.g., pressure increasing, time to backwash, etc.), blocked air inlet, fan blade broken, impeller broken or damaged, pump running dry, pool turnover rate, pump run time and energy calculations, pump run time and turnover calculations and energy suggestions, inefficiencies in energy usage because of a problem, and the like. - The
system 7100 can determine information related to theheater 7132 such as, but not limited to, a board failure, communication failure, ignition failure, igniter cycling, heater power loss, whether the heater is calling for heat but not heating, blower fan failed, a gas leak, kinked line, combustion failure, low gas pressure, no gas available, a water leak, heater run time and energy calculation, heating expense that exceed the pool owner's historical heating trends, and the like. One example of the above is that a flood sensor can be used to identify that a heat exchanger is leaking. - The
system 7100 can determine information related to a lighting system (discussed herein) such as, but not limited to, a bulb that is about to burn out, a bulb that is burnt out, LEDs that have failed, that the LED lights are leaking, a low voltage (voltage drop) condition, that the LEDs are dimming from hours of operation, that the lights have been on too long, or the like. - The
system 7100 can determine information related to afilter system 7136 such as, but not limited to, that it is time to backwash or clean elements, the DE or sand is low, there is leak in the filter, a plug is not plugged in, a gasket seal is not correct, a belly band is not tight enough, there is a leak in an air valve, there is a crack in shell, and the like. - The
system 7100 can determine information related to thechemistry system 7136 such as, but not limited to, the salt level (e.g., salt needed or excess), board damage, the chlorinator cell is dirty, the chlorinator cell has calcification, the probe is dirty or broken, the probe is out of calibration, that it is time to replace the chlorinator cell, it is time to replace flow switch, the pool needs chlorine, the pool needs acid, the UV lamp brightness has decreased from its initial level, the UV lamp is damaged, the UV lamp needs to be replaced, the feed tank levels for acid or liquid chlorine, that too much acid or chlorine is being used based on historical trends; identification of phosphates, that the pool water is out of chemical balance, what chemicals are needed and how much of them is needed to restore balance, and the like. - The
system 7100 can determine information related to a pool/spa cleaner system such as, but not limited to, that it is time to empty debris, identification of debris (in or around) the pool/spa, that a drive is failing, that bearings need to be repaired, or the like. -
FIG. 52 is a flowchart illustrating processing steps carried out by thesystem 7100 of the present disclosure to preemptively address an equipment failure before it occurs. As discussed above thesystem 7100 could monitor a plurality of pumps 7134 (e.g., 100 pumps at various sites dispersed in a geographical region). The system can 7100 detect a deviation or change in bearing sound (e.g., increased decibels or altered sound profile) and/or a change in resistance of the pump motor (e.g., increased power draw) from historical trends. The altered sound and resistance data can be compared with information contained in thehistorical database 7150 to determine the cause of the deviation (e.g., a failing bearing) and a predicted timeline (e.g., the bearing will fail in 30 days). For example, instep 7300 thesystem 7100 receives operational data from the sensor hub controller (e.g., bearing sound data, motor resistance data, power draw data, etc.) and then proceeds to step 7302, where thesystem 7100 processes the operational data to determine the presence of an alert condition (e.g., the pump bearings will fail in 30 days). Thesystem 7100 then proceeds to step 7304, where a determination is made as to the presence of an alert condition. If a negative determination is made instep 7304, thesystem 7100 returns to step 7300. If thesystem 7100 determines that there is an alert condition, the owner/customer can be alerted (e.g., via email, SMS/text/iMessage, pop-up notification, etc.) to the condition (e.g., pump failure), a servicer can be alerted that his or her customer's pump is going to fail, and replacement parts can be automatically ordered and delivered to the servicer or directly to the customer location, all before any adverse condition occurs (e.g., pump failure). Thesystem 7100 could further include an application installed on a home owner's smart device (e.g., smartphone) 7118 and on a servicer's smart device 7104 (seeFIG. 49 ) and notifications/alerts can be transmitted via the application, discussed in greater detail below. For example, if a positive determination is made instep 7304, thesystem 7100 proceeds to step 7306 where a alert condition is transmitted to a servicer (e.g., Customer #1234 pump bearings will fail in 30 days). Instep 7308 the servicer addresses the alert condition (e.g., the bearings are replaced prior to failure/predicted failure) and thesystem 7100 returns to step 7300. Optionally, instep 7310, thesystem 7100 could transmit an alert condition to the homeowner (e.g., pump bearings will fail in 30 days) before proceeding to step 7308. In furtheroptional step 7312, thesystem 7100 could automatically order replacement parts (e.g., new bearings for pump arrive at customer's location prior to servicer arrival) before proceeding to step 7308. -
FIG. 53 is a flowchart illustrating processing steps carried out by thesystem 7100 of the present disclosure to alert a homeowner when current energy usage exceeds historical trends (e.g., the variable speed pump “VSP” has been running on high for 24 hours, the heater has been running for three days at 104 degrees Fahrenheit, etc.). Thesystem 7100 can transmit an alert to a homeowner (or servicer) when a parameter is not running within specification or a parameter is not consistent with historical trends (e.g., too much heating turnover, power consumption, chemical dispensing, water refilling, dropped packets, etc.). For example, instep 7314, thesystem 7100 receives operational data from the sensor hub (e.g., energy usage data, pump speed data, heater temperature and runtime data, etc.) and then proceeds to step 7316, where thesystem 7100 retrieves historical operational data from the memory (e.g., historical database 7150). Instep 7318, thesystem 7100 determines trends for the historical data and then in step 73120, thesystem 7100 compares the current operational data with the historical data trends. Instep 7322, thesystem 7100 determined whether the current operational data is consistent with the historical trends. If a positive determination is made instep 7322, the system returns to step 7314. If a negative determination is made instep 7322, the system proceeds to step 7324 where an alert condition (e.g., pump has been running at high speed for 24 hours) is transmitted to the homeowner (e.g., via an application running on smart device 7118). Thesystem 7100 then returns to step 7314. -
FIG. 54A is a graphical representation of a historical trend for a normal heat cycle forheater 7132,FIG. 54B is a graphical representation of a heat cycle that deviates for the historical trend shown inFIG. 54A , andFIG. 55 is a flowchart illustrating processing steps carried out by thesystem 7100 to restore the heat cycle to normal operation. As shown inFIG. 54A , when the heater initially fires, the output water temperature of the heater quickly rises while the input water temperature only gradually increases (e.g., lags behind) due to the large volume of the pool/spa. Both the output and input water temperatures of the heater continue to increase until the output temperature reaches a predetermined setpoint. At this point, the heater stops firing and the output temperature eventually reaches equilibrium with the input temperature. - As shown in
FIG. 54B . if the heater fails to fire, or the heater is continuously cycling (resulting in a reduced output), thesystem 7100 is able to determine that the heater is failing to fire or that it is cycling by comparing the current output water temperature to the historical trend discussed in connection withFIG. 54A and determining that the output water temperature is below the historical trend. Similarly, thesystem 7100 can determine if the heater has erroneously continued to fire by comparing the current output water temperature to the historical trend discussed in connection withFIG. 54A and determining that the output water temperature is above the historical trend. -
FIG. 55 is a flowchart illustrating processing steps carried out by thesystem 7100 in connection withFIGS. 55A and 55B . Instep 7326 thesystem 7100 is initialized, instep 7328 thesystem 7100 determines whether heating is desired, instep 7330 thesystem 7100 determines whether the thermostat voltage is acceptable, and instep 7332 the system determines if the water is cold. If a positive determination is made instep 7332, thesystem 7100 proceeds to step 7334 where thesystem 7100 determines if the water has been flowing for over a minute. If a positive determination is made instep 7334, the system proceeds to step 7336, where thesystem 7100 determines whether the water is flowing fast enough (e.g., operational data from a flow sensor is above a predetermined setpoint). If a positive determination is made instep 7336, thesystem 7100 transmits an instruction to start the heater instep 7338. Instep 7340, thesystem 7100 determines whether the heater is operating like it should (e.g., by comparing the current output water temperature to the historical trend discussed in connection withFIG. 55A ). If a positive determination is made instep 7340, thesystem 7100 proceeds to step 7342 where the a determination is made as to whether the water has reached a predetermined setpoint. If a positive determination is made instep 7342, thesystem 7100 returns to step 7332. If a negative determination is made instep 7342, thesystem 7100 proceeds to step 7344, where a determination is made as to whether the heater daily run time house rules have been exceeded. If a positive determination is made instep 7344, thesystem 7100 proceeds to step 7346, where the heater is disabled until the next day and a flag is saved to memory (e.g., historical database 7150). Once the next day begins (e.g., after midnight) thesystem 7100 proceeds to step 7348 where an instruction is transmitted to the heater to restore the heater setpoint to a minimum heater setpoint value and then thesystem 7100 returns to step 7332. If thesystem 7100 determines instep 7340 that the heater is cycling, thesystem 7100 proceeds to step 7350 where a heater limping cycling alarm is transmitted (e.g., to the homeowner or servicer). If thesystem 7100 determines instep 7340 that the heater is not running, thesystem 7100 proceeds to step 7352, where thesystem 7100 determines whether four attempts have occurred during an excessive restart alarm. If a positive determination is made instep 7352, the system proceeds to step 7354 where an alarm lockout is put in place (e.g., heater service required). If a negative determination is made instep 7352, thesystem 7100 proceeds to step 7356 where a heater excessive restart alarm is transmitted (e.g., no lockout is put in place, but the alarm must be cleared). Thesystem 7100 then proceeds to step 7358, where thesystem 7100 determines if the heater has restarted after five minutes of restarting. If a positive determination is made instep 7358, thesystem 7100 proceeds to step 7360, where the system initiates a timer (e.g., one hour) and after expiration of the timer, attempts to restart the heater. Thesystem 7100 then returns to step 7332. It is contemplated by the present disclosure that thesystem 7100 can be configured to only transmit an alert condition when a significant change from historical trends is detected. This can be accomplished using alert thresholds that are established using hysteresis modeling, thereby preventing erroneous alerts due to signal jitter or the like. -
FIG. 56 is a flowchart illustrating processing steps carried out by thesystem 7100 to automatically grant a servicer access to the system to perform authorized work. Thesystem 7100 can determine that a servicer is authorized to service a particular account. Thesystem 7100 could identify the servicer by way of the servicer'ssmart device 7104 that is registered to the account, by an individually coded key fob, a location pod, or other identification/authorization systems. In one example, the servicer can enter a pool/spa environment, thesystem 7100 can identify the servicer and that he or she is authorized to perform work and then thesystem 7100 initiates a servicer mode and alerts the homeowner that the servicer has arrived at the site. Once the servicer has completed the work, the servicer leaves the site and thesystem 7100 resumes normal operation. For example, as shown inFIG. 56 , instep 7362 the servicer arrives at the pool/spa location and instep 7364, thesystem 7100 identifies the servicer (e.g., by access code, RFID device, geolocation, etc.). Instep 7366, thesystem 7100 enters a service mode (e.g., transmits an instruction to the pool/spa devices to cease operation). In steep 7368, thesystem 7100 transmits an alert to the customer (e.g., “the servicer has arrived”). Instep 7370, the servicer performs authorized work (e.g., cleans the filter baskets) and leaves the pool/spa location. Instep 7372, thesystem 7100 recognizes that the servicer has left the pool/spa location (e.g., by access code, RFID device, geolocation, etc.). Finally, instep 7374, thesystem 7100 returns to normal operation mode (e.g., transmits an instruction to the pool/spa devices to resume normal operation). Optionally, instep 7386, thesystem 7100 can save the details of the service call (e.g., date and time of service, work performed, fees, etc.) to memory (e.g.,servicer database 7128 or servicer system 7124). - As discussed herein, geolocation services running on the servicer's
smart device 7104 can be utilized by thesystem 7100 to determine if the servicer is at the site and register his or her presence in an account history. The location services can also be utilized by thesystem 7100 to automatically update the application on the homeowner'ssmart device 7118 and notify the homeowner that the servicer is present, has left, performed the expected work, etc. Additionally, as discussed in greater detail below, the application can also display information such as water readings (if they were taken by the servicer) and those readings can also be stored to memory (e.g.,servicer database 7128,historical database 7150, or servicer system 7124). Further, the application can also provide real-time updates as the work is performed by the servicer, the reason for the work, and the costs. All of this information can be stored by thesystem 7100 as data points for future reference and analysis (e.g., machine learning) by thesystem 7100. - According to some aspects of the present disclosure, the
system 7100 can alert the servicer to alert conditions (that the servicer may not have been aware of before arrival) so that he or she can address the alert conditions while on-site. If there is a predicted failure with a piece of pool/spa equipment, the servicer can receive an alert via an application on the servicer'ssmart device 7104. The servicer can then choose to transmit that alert to the homeowner via a similar application on the homeowner'ssmart device 7118. The servicer can also request approval (e.g. with a countdown timer for the current service call or the next) to address the alert within the same application. Thesystem 7100 can also document that the servicer was on site, that an alert was present, that the homeowner was notified of the alert, and the homeowner's response to the request to address the alert (if one was given). For example, as shown inFIG. 56 , inoptional step 7376, thesystem 7100 determines if a new alert condition is present. If a negative determination is made instep 7376, thesystem 7100 proceeds to step 7366. If a positive determination is made instep 7376, thesystem 7100 proceeds to step 7378, where an alert condition is transmitted to the servicer (e.g., Customer #1234 pump bearings will fail in 30 days). Instep 7380, the servicer can choose to request authorization to address the alert condition. If the servicer chooses to request authorization to address the alert condition, instep 7382, thesystem 7100 transmits a work authorization request to the homeowner (e.g., via smartphone application, email, etc.) and instep 7384, thesystem 7100 saves the homeowner's response (or lack thereof) to memory (e.g.,servicer database 7128 or servicer system 7124). Thesystem 7100 then proceeds to step 7370. According to some embodiments, thesystem 7100 can also automatically generate a returned material authorization (“RMA”) and warranty claim submission based on the work performed by the servicer (e.g., pump replacement), information recorded by the servicer via application 7160 (e.g., detailed explanation of reason for RMA or failure mode of part) discussed herein, and/or information saved toservicer database 7128 or servicer system 7124 (e.g., customer information, time and date, etc.). -
FIG. 57 is a flowchart illustrating processing steps carried out by thesystem 7100 to automatically grant a servicer WiFi access to the system to perform authorized work. When a servicer arrives on-site, thesystem 7100 can enable a WiFi access point that grants the servicer direct access to thesystem 7100 without having to log in to the account, homeowner's WiFi, or the cloud. For example, instep 7386, the servicer arrives at the pool/spa location. Instep 7388, thesystem 7100 identifies the servicer (e.g., by access code, RFID device, geolocation, etc.). Instep 7390 thesystem 7100 activates a WiFi access point and instep 7392, thesystem 7100 establishes a WiFi connection with the servicer's smart device. instep 7394 the servicer performs the authorized work (e.g., modifying the controller) and then leaves the pool/spa location. Finally, instep 7396, thesystem 7100 deactivates the WiFi access point. -
FIGS. 58-67 illustrate user interface screens ofapplication 7160 that are generated by thesystem 7100. The application can be run on the homeowner'ssmart device 7118, the servicer'ssmart device 7104, theservicer system 7124, or any other device capable of displaying the application and accepting user input.FIG. 58 illustrates an initial user interface screen generated by thesystem 7100. As shown, the initial user interface screen can include aportion 7162 for displaying current weather conditions. Additionally, a user can click onportion 7162 to display an extended weather forecast. Aportion 7164 of the user interface can also be used to display current promotional offers to a user. Additional portions of the user interface can also be provided for information related to, and interaction with, one or more of the pool/spa devices discussed herein. For example,portion 7166 can display current heating settings. Ifportion 7166 is clicked, the user can modify the heater settings (e.g., on/off or variably via a GUI slider or wheel to increase or decrease the temperature). If maximum and minimum temperature setpoint values have been established by an administrator of thesystem 7100, a particular user can be prevented from exceeding these values via theapplication 7160. According to some aspects of the present disclosure,portion 7166 can also provide additional functionality passed on the number of times it is clicked. For example, a first click could provide access to heater on/off control and manual heat settings, a second click could access heating rules and alarm setup, a third click could access basic heat settings, smart heat settings (e.g., least costly heating option for a desired goal) and heating history, a fourth click could provide access to the head schedule settings, and a fifth click could cause thesystem 7100 to display a diagnostic screen. -
Portion 7168 can be used to display information related to a filtration schedule (e.g., showing a countdown to a next filtration event). According to some aspects of the present disclosure, as discussed herein, thesystem 7100 could store setpoints for a water turnover target, and periods when filtration is not desired (e.g., do not filter start and end times).Portion 7168 could display the status of the pump (e.g., on/off), the measured water turnovers from the previous 24-hour period, the next filter start or stop time, and provide a boost button. - The
application 7160 can also be used by thesystem 7100 to display alerts to a user. Forexample portion 7170 can display the health status of a pool filter (e.g., that a filter is clean or that a backwash is necessary). If an alert is present, service is needed, a response is required, or the like, theapplication 7160 can display any of the portions in a color which will draw the user's attention. For example, if the filter is clean and no action is necessary,portion 7170 can be displayed in a blue, or another color, whereas if the filter needs to be cleaned,portion 7170 can be displayed in yellow or another color that will draw the user's attention. - Similarly,
portion 7172 can be used to display information related to water quality and can be displayed in a first color (e.g., blue) if the water quality is good and displayed in a second color (e.g., yellow) if the water is unsafe, needs testing, or otherwise requires attention. If water quality is not being directly monitored by the system 7100 (e.g., via pH and ORP sensors) thesystem 7100 can determine when the water needs to be tested and can alert the user to provide photographs of smart test strips which can then be analyzed by a vision system (discussed herein) in communication with thesystem 7100 to determine the water quality and display the results. Alternatively,portion 7172 can provide access to a manual test entry screen. - According to some aspects of the present disclosure, certain user interface screens of the
application 7160 are only displayed based on who is using the application (e.g., homeowner versus servicer). For example, if a user is logged into theapplication 7160 as a servicer, clicking onportion 7172, will display a service call log user interface screen, shown inFIG. 59 . As shown, the service call log user interface screen can display scheduled maintenance intervals and fields for the servicer to record information such as water testing results and general notes related to the customer account. According to some aspects of the present disclosure, theapplication 7160 can respond to voice commands via voice assistance products (e.g., Amazon Alexa, Google Assistant, Microsoft Cortana, Apple's Ski, etc.), allowing servicers to access and perform work at customer sites without needing to physically manipulate a graphical user interface. - Returning to
FIG. 58 ,portion 7174 can display available upgrades and energy saving advice, discussed hereinabove with respect toFIGS. 43-48 . If a user clicks onportion 7174 thesystem 7100 generates a user interface screen displaying further information on the upgrades and/or energy savings advice, as shown inFIG. 60 . The user interface screen shown inFIG. 60 can include afirst portion 7186 that contains available upgrades and asecond portion 7188 that displays upgrades that the user has declined or is not interested in. Clicking on an item or upgrade displayed on the user interface screen ofFIG. 60 will cause thesystem 7100 to generates another user interface screen, shown inFIG. 61 , displaying additional information and resources related to the upgrade. For example, through the user interface screen ofFIG. 61 , a user can purchase the upgrade from a distributor or servicer (seeFIG. 62 ), move the upgrade to the user's shopping list (seeFIG. 64 ), request a quotation, request an in-person sales call, click on a link to visit a manufacturer's website (seeFIG. 63 ), set a reminder related to the upgrade, or indicate that he or she is not interested in the offer. - Alternatively, as shown in
FIG. 71 , if a user clicks onportion 7174 ofFIG. 58 , thesystem 7100 can generate another user interface screen displaying visual representations of pool/spa equipment that have already been upgraded as well as pool/spa equipment upgrades that are available for installation (e.g., as determined by thesystem 7100, discussed above). For example, the user interface screen shown inFIG. 71 can includeportions 7236 that include visual representations (e.g., an image or rendering of a variable speed pump, filter, smart valve, lighting system, etc.) of pool/spa equipment that have already been upgraded andportions 7238 that include visual representations (e.g., image or rendering of a control system, chlorination system, etc.) of available pool/spa equipment upgrades. Clicking on one of theportions application 7160 to display additional information related to the piece of pool/spa equipment associated with the visual representation. For example, clicking on aportion 7236 showing an image of an installed variable speed pump can cause theapplication 7160 to display the status of the variable speed pump or provide the option to alter parameters, whereas clicking on aportion 7238 can cause theapplication 7160 to display information such as component availability, component cost, and installation options (e.g., request a quotation from an installer). According to further aspects of the present disclosure, theportions FIG. 71 can be displayed in the form of a puzzle. Further, theportions FIG. 71 can together form a complete puzzle based on the number of available upgrades determined by thesystem 7100. For example, if thesystem 7100 determines that two upgrades are available and two upgrades were already installed, theapplication 7160 will display the puzzle as having four pieces. Similarly, if thesystem 7100 determines that two upgrades are available and three upgrades were already installed, theapplication 7160 will display the puzzle as having five pieces. Further still, theapplication 7160 can displayportions 7238 as faded images, visually signaling to the user that additional equipment upgrades are necessary to “complete” the puzzle. - Returning to
FIG. 58 ,portion 7176 can display a link to a user's shopping list. Clicking onportion 7176 causes thesystem 7100 to generate a user interface screen, as shown inFIG. 64 . The user interface screen shown inFIG. 64 can include afirst portion 7190 that contains a list of items already selected by the user for purchase, and asecond portion 7192 that includes a list of recently viewed or recommended items that the user may want to add to the list of items selected for purchase, displayed in thefirst portion 7190. According to some aspects of the present disclosure, the list of items in thefirst portion 7190 could include checkboxes that are filled and the list in thesecond portion 7192 could include check boxes that are not filled. Unchecking a checkbox in thefirst portion 7190 can move an item to thesecond portion 7192. Similarly, checking a checkbox of an item in thesecond portion 7192 can move the item to thefirst portion 7190. - Returning to
FIG. 58 ,portion 7178 can display a link to a learning and troubleshooting area, such as for example, a manufacturer's web-based support center (seeFIG. 66 ). Similarly,portion 7180 can display a link to a service and support area, such as for example, a designated pool servicer's portal (seeFIG. 65A ) where the user can schedule an appointment for service (seeFIG. 65B ) or initiate direct communication (e.g., instant messaging, email, voice, etc.) with the servicer.Portion 7182 of theapplication 7160 can display a link to a user interface screen that provides information related to a user's pool or spa installation, shown inFIG. 67 . For example, the user interface screen ofFIG. 67 can include photographs of the homeowner's pool/spa equipment (e.g., picture of a pump, heater nameplate, filter, booster pump, blower, lights, GVA, etc.). These photographs could be stored by thesystem 7100 or could be stored at another location (e.g., a photograph storage website such as Google Drive, iCloud, etc.) in communication with thesystem 7100. The photographs could be uploaded by the homeowner or the servicer and according to some aspects of the present disclosure, the servicer can be required to populate photographs to thesystem 7100 when performing maintenance or the like. According to some aspects of the present disclosure, a servicer can access the photos remotely, enabling the servicer to confirm that he or she has all required tools and equipment for a particular job prior to arrival on-site. Aportion 7184 could display a feedback link to a survey (e.g., survey monkey) where the user can review the servicer and the work performed. - The
application 7160 can provide linking and/or communication between homeowners and servicers. For example, theapplication 7160 can link a servicer to a particular homeowner as a servicer of record and rules of engagement and support (e.g., automatic approval up to a certain monetary value, or automatic approval for preventative maintenance) can be established and saved to a homeowner profile. Thesystem 7100 can generate a user interface screen including a list of available servicers (e.g., servicer systems 7124) from which the homeowner can select a servicer of record. The servicer of record could have access to all of the information from a particular site that is collected bysystem 7100, whereas a servicer that is not of record could only have access to a subset of that information. - The homeowner can schedule a service call through the
application 7160 or request a service call the next time a servicer is in the neighborhood (e.g., using geofencing surrounding the homeowner's location and geolocation services on the a servicer smart device or vehicle). For example, when a homeowner needs to refill pool/spa chemicals, the homeowner can request a refill the next time that the servicer of record is in the neighborhood, or the homeowner can request an immediate refill to all servicers in the area. The homeowner request can be transmitted tobroadcast system 7126 in communication with the system 7100 (seeFIG. 49 ). Thebroadcast system 7126 can further be in communication with one or more servicersmart devices 7104 orservicer systems 7124. Servicer can monitor thebroadcast system 7126 and can accept a service request using theapplication 7160. Once a servicer has accepted the homeowner's request, the request can be cleared from thebroadcast system 7126. - Alternatively, the
system 7100 can automatically request refills for the homeowner based on the current level of the chemicals (e.g., if sensors in communication with thesystem 7100 are utilized to monitor the levels) and/or based on historical trends (e.g., on average the homeowner requests a refill every X days, or X % of the chemicals are consumed per day). Theapplication 7160 can also generate a user interface screen that provides the homeowner with a map of a geographical area that includes the homeowner's position, one or more servicers' positions relative to the homeowner, and estimated time of arrival and route tracking if a service appointment has been requested by the homeowner and accepted by a servicer. - The
application 7160 can also provide a servicer with the ability to provide a quotation to a homeowner, request approval to complete the quoted work, view and record the response, and provide an invoice without leaving the confines of theapplication 7160. Further, thesystem 7100 can generate quotations for the servicer (that he or she can then directly submit to the homeowner for approval) for predicted or preventative maintenance of equipment (based on the installed pool/spa equipment and historical maintenance data) or for service in the event of a problem with a piece of equipment. For example, theapplication 7160 can include a user interface screen that presents a quotation or contract for the homeowner's approval, such as a contract to do simple or specific work without requiring a quote or prior approval. - The
application 7160 can also include dashboard, or summary screen. The summary screen can be manually generated by the servicer, automatically generated by thesystem 7100 on a periodic bases (e.g., monthly), or continuously updated by thesystem 7100 in real-time. For example, the summary screen can include energy usage, energy savings, energy savings suggestions, services to be reviewed or provided, periodic service summaries (e.g., weekly, monthly, seasonal, yearly, etc.), periodic alert summaries (e.g., weekly, monthly, seasonal, yearly, etc.), and services or energy costs. - As shown in
FIG. 72 , theapplication 7160 can also generate a series of user interface screens for providing customized alerts to a user based on activities specified by the user, current weather data, and forecasted weather data. For example, a firstuser interface screen 7240 can include aportion 7246 for displaying current weather conditions (e.g., temperature, cloud cover, wind speed, humidity, etc.), aportion 7248 for displaying a list of specified preferred activities (e.g., swimming, entertaining, sunbathing, gardening, walking, etc.), and aportion 7250 for displaying customized recommendations (e.g., “High winds tomorrow, take furniture in after dinner”). The list of specified preferred activities can include indicia for indicating whether the current weather conditions are appropriate for a specific activity. For example, if a the user specifies that swimming is appropriate between temperatures of 75 and 95 degrees and the current temperature is 86 degrees, theapplication 7160 will indicate that swimming is appropriate at present. - The
application 7160 can also display additional user interface screens based on forecasted weather conditions. For example, if a user swipes left onuser interface screen 7240, the application will advance touser interface screen 7242, which displays the forecasted weather conditions for the next day. It is contemplated by the present disclosure that theapplication 7160 can display any number of user interface screens for future dates, the only limiting factor being the availability of forecasted weather conditions (e.g., weather forecasts, almanacs, etc.). For example, if the current date is Friday, March 4, swiping left onuser interface screen 7240, will cause theapplication 7160 to displayuser interface screen 7242 including information for Saturday, March 5. Similar touser interface screen 7240,user interface screen 7242 can include aportion 7252 for displaying the date and forecasted weather conditions (e.g., temperature, cloud cover, wind speed, humidity, etc.), aportion 7254 for displaying a list of specified preferred activities (e.g., swimming, entertaining, sunbathing, gardening, walking, etc.), and aportion 7256 for displaying customized recommendations (e.g., “High winds tomorrow, take furniture in after dinner”). The list of specified preferred activities can include indicia for indicating whether the forecasted weather conditions will be appropriate for a specific activity. For example, if a the user specifies that swimming is appropriate between temperatures of 75 and 95 degrees and the forecasted temperature is 72 degrees, theapplication 7160 will indicate that swimming is not appropriate at present. - The
user interface screens FIG. 72 can also include aportion 7258 for providing the user access to a userinterface configuration screen 7244, for example by clicking thereon. As shown, theconfiguration screen 7244 can include aportion 7260 for displaying a list of common activities (e.g., swimming, entertaining, sunbathing, gardening, walking, sailing, geocaching, bungee jumping, clam digging, mushroom hunting, etc.) from which the user can select his or her preferred activities (e.g., swimming, entertaining, sunbathing, gardening, walking, etc.). Selecting a preferred activity can cause theapplication 7160 to display aportion 7262 for specifying appropriate conditions for the preferred activity. For example, if the user selects sunbathing as a preferred activity,portion 7262 can be used by the user to specify the air temperature (e.g., 70-95 degrees), water temperature (e.g., any/all), sun (e.g., full/no cloud cover), wind speed (e.g., moderate), and humidity (e.g., any/all) for which sunbathing is appropriate. Thesystem 7100 can compare the user specified conditions for each activity against the current or forecasted weather conditions to determine whether the preferred activities displayed inportions interface configuration screen 7244 can also include aportion 7264 for allowing the user to add an activity to the list of common activities displayed inportion 7260. For example, by clicking onportion 7264, the user could add “running” to the list of common activities and then accessportion 7264 to specify the desired conditions therefor. - As shown in
FIG. 68 , thesystem 7100 can also include aservicer dashboard 7200. Theservicer dashboard 7200 is an application including a graphical user interface generated by thesystem 7100 and can be installed on, for example, theservicer system 7124 or the servicer'ssmart device 7104. As shown inFIG. 68 , thedashboard 7200 can identify the servicer's accounts (e.g., where the servicer has previously performed work or is the servicer of record) 7208 within a specified geographical area,prospective accounts 7210, andlocations 7212 where homeowners have expressed no interest in pool/spa services. Thedashboard 7200 can include a graphicaluser interface portion 7202 for providing an overview of the status of each of the servicer's accounts (e.g., healthy pools, impaired pools (low chemicals, system check needed, replace component, etc.), pools that are down, pools experiencing problems with communications, past due invoices, etc.). For example, thedashboard 7200 can show that a particular system at a customer site is communicating with thedashboard 7200, that the system is up to date (firmware), the last time a servicer visited a site, and the health of a system by category (e.g., controls, chemistry, pump, heater, filter, lights, cleaner, etc.). -
User interface 7202 can also show requests from customers, messages from customers, forum posts made by customers, as well as additional information related to the servicer's accounts. Thedashboard 7200 can also include a graphicaluser interface portion 7204 showing prospective opportunities for a servicer. For example,portion 7204 can identify equipment needs at the servicer's accounts, or identify locations where thesystem 7100 has not been installed. Thedashboard 7200, as well as theapplication 7160, can also receive notifications (e.g., push, pop-up, etc.) when thesystem 7100 determines that a servicer is in close proximity to a prospective opportunity (e.g., a location where thesystem 7100 has not been installed, a location where equipment needs to be replaced, etc.) or a location where thesystem 7100 has determined that the homeowner can benefit from replacement of aging or inefficient equipment (e.g., as described herein in connection withFIGS. 43-48 ). - Additionally, the
dashboard 7200 can also include a graphicaluser interface portion 7206 including tools for the servicer, such as a route planner (e.g., service or sales) or a means for reordering supplies. For example, thedashboard 7200 can generate a daily route based on a determination of which particular sites require service on a given day and then direct the servicer to his or her appointments in the most efficient manner (e.g., shortest distance), based on the level of complexity (e.g., estimated time for completion), and/or based on revenue/profit maximization (e.g., estimated time for completion versus net profit margin). The daily route generated by thedashboard 7200 can include directions, route overview, materials needed for the service appointments, an estimated time for each service, and the like. For example, the dashboard can generate a list of all the materials (e.g., chemicals, motors, cables, logic boards, sensors, etc.) that a servicer needs for a particular day (or week), so that the servicer can verify that he or she has all of the materials needed to complete the service calls before beginning the daily route, thereby increasing efficiency by minimizing the number of trips a servicer must make to procure materials. - The
system 7100 can also include a secure service technician portal (“SSTP”). The SSTP can be displayed as a graphical user interface screen on theservicer system 7124 and can provide a servicer access to site parameters, name, address, turnovers, etc., the ability to specify recipients for alerts, etc. Thesystem 7100 can also include a secure administrative portal (“SAP”) that can be displayed as a graphical user interface screen on a manufacturer's system and can provide the ability to set global parameters, PID coefficients, enter promotional offers, etc. Both the SSTP and the SAP can communicate with and access a configuration database. The configuration database can store configuration parameters and the current status of various pieces of equipment, an alarm dispatch history, a dashboard browsing history, etc. -
FIG. 69 is a flowchart illustrating processing steps carried out by thesystem 7100 to determine that a servicer's vehicle is stocked with all the materials, discussed above, that a servicer needs for a particular day (or week). Instep 7398, thesystem 7100 determines the ideal inventory for a servicer's vehicle. Instep 7400, thesystem 7100 determines the current inventory of the servicer's vehicle. Instep 7402, thesystem 7100 compares the ideal inventory with the current inventory of the servicer's vehicle. Instep 7404 the system determines whether the inventory of the servicer's vehicle needs to be replenished. If a negative determination is made instep 7404, thesystem 7100 returns to step 7398. If a positive determination is made instep 7404, thesystem 7100 proceeds to step 7406 where a list of the required inventory items are transmitted to a distributor (for pick-up or delivery to the servicer). Thesystem 7100 then returns to step 7398. For example, a servicer's vehicle can be outfitted with a barcode system, RFID system, or vision system (such as that described above) in communication with thesystem 7100 for determining the exact inventory of the servicer's vehicle in real-time. As inventory items are removed from the vehicle, thesystem 7100 can add those items to a list to be transmitted to a distributor so that they can be restocked. The inventory of the vehicle can then be compared with the list of materials needed for the day (or week). According to some aspects of the present disclosure, thesystem 7100 can utilize machine learning to analyze data received by the system 7100 (e.g., number of pool/spa locations, age of equipment, historical service requests, etc.) and determine the required inventory list for the servicer's vehicle. For example, thesystem 7100 could determine that three sensors, two power cables, two seals, one logic board, twenty bags of salt, and twenty gallons of liquid chlorine should be on the servicer's vehicle at the beginning of the week. -
FIG. 70 is a block diagram of thesensor hub 7122. As described above, thesystem 7100 can includesensor hub 7122 in for monitoring operational parameters of legacy pool/spa devices (e.g., devices which are not are capable of direct communication with thesystem 7100 via a data connection). The sensor hub monitors the operational parameters of the legacy devices by way of a plurality ofsensors 7140 that are disposed on, or around, the pool/spa devices and that are in communication with thesensor hub 7122. Eachsensor 7140 can monitor one or more operational parameters of a legacy pool/spa device or provide thesystem 7100 with additional monitoring capabilities for connected pool/spa devices. For example, as shown inFIG. 70 , thesensor hub 7122 can include a printed circuit board (“PCB”) 7214 havingsensor inputs 7216 for a receiving operational data from one or more sensors, such as a line current sensor 7140 k, a water temperature sensor 71401, a combination water flow and temperature sensor 7140 m, an ambient temperature sensor 7140 n, and a pH and ORP sensing kit 7140p. As shown, thePCB 7214 can include both digital and analog inputs. As described above, thesensor hub 7122 monitors the operational parameters of the legacy pool/spa devices and transmits operational data from thesensors 7140 to thesystem 7100 via anetwork 7110. Thesensor hub 7122 can communicate with thesystem 7100 via any wired or wireless communications protocol (e.g., RS485, WiFi, Bluetooth, ZWave, Zigbee, cellular, etc.). Accordingly,sensor hub 7122 can include anLTE module 7218, aWiFi transceiver 7220, or any other network communication bus suitable for providing communication with thesystem 7100. - The
sensor hub 7122 can also include a line power input 7222 for receiving power from a power source. According to some aspects of the present disclosure, thesensor hub 7122 can also include relays 7224 (both high-voltage and low-voltage) for controlling one or more pool/spa devices. For example, the sensor hub could includerelays 7224 for controlling anacid feeder 7226, a chlorine feeder orsalt chlorinator 7228, a variable-speed pump 7230, and a single-speed pump 7232. Thesensor hub 7122 can also include ahousing 7234 enclosing thePCB 7214,LTE module 7218, andWiFi module 7220, and providing access tosensor inputs 7216, line power input 7222, and relays 7224. According to some aspects of the present disclosure, thesensor hub 7122 can be modular, allowing for expansion to monitor additional pool/spa devices or to provide additional diagnostic capabilities. For example, an expansion module could be added to thesensor hub 7122 to provide more advanced machine learning. Expansion modules can also be added to provide enhanced monitoring and control capabilities for acid feeders, chlorine feeders, salt chlorinators, variable speed pumps, single speed pumps, and the like. The expansion module can be provided in the form of an input card on thePCB 7214 or as a separate unit that communicates with thesensor hub 7122 through a communication bus such as RS485 or WiFi. - The pool “hub” disclosed herein, as well as the various embodiments disclosed herein, allows for wired and wireless communication (e.g., wireless methods 802.11 protocols, Zigbee, ZWave), with pool pad components. Communication could include product status, product health, energy use (e.g., individual and/or system), errors, preventative maintenance, etc. The hub could incorporate all of the types of communication to the hub and from the hub to the home router. The pool hub could be upgraded through the web, push updates to connected equipment at the pad, etc. The hub could be fully configured (e.g., through an app), which includes schedules, names, temperatures, possible chemical dosage, percentage output, etc. The hub could have web based cloud connectivity to other cloud based devices or systems to allow for enhanced communication and/or enhanced external inputs. The hub could have a communication antenna for RF mesh (e.g., ZWave, Zigbee, Thread, Weave), BlueTooth, etc to connect to pool and non-pool equipment. The connectivity could be done at the pool pad, the processing could be done on the cloud (e.g., with one app built based on activated features). The hub could connect thermal imaging to relay pool, pad, spa, and/or weather information to the hub. The hub could enable virtual interlocks between devices based on predetermined rules and relationships.
- The system of the present disclosure is modular and can grow with the addition and/or replacement of equipment. More specifically, the system consolidates all products as they are added (e.g., pump, heater, chemistry automation systems), and could only show the ones currently installed. App updates (e.g., for accessing the system from a local device) could come from new compiled code and/or a profile held in the device and transferred to the app. The system could store the operating profile and/or environment of the devices captured by the hub or in the devices and relayed to the hub (which could support the predictive failure ability as well as supports warranty analysis claims). The system could store standard profiles for heater/pump (e.g., Northeast region by zipcode) and/or heater/pump/lights (e.g., Southwest region by zipcode) for easy configuration (e.g., start with standard configurations based on the geography).
- The system could monitor a variety of types of plug in and/or wireless sensors (e.g., air, pool, spa, solar, temperature, etc.) for a variety of types of measurements (e.g., presence of flow, measurement of flow, line pressure, water levels, UV levels, wind speeds, light presence, etc.). Other types of sensors that could be used include turbidity sensors, bacteria sensors, alkalinity sensors, hardness sensors, RF sensors, sound wave sensors, different light spectrum sensors, reflectors, magnetic sensors, radar, infrared, humidity, evaporation, moisture, motion, galvanic corrosion, chemical corrosion, electrolysis, electrical storm sensors, etc. The sensors could analyze and/or process raw data (e.g., locally sensed parameters, from a third party source, etc.) with an integrated processor or communicate the raw data (e.g., locally sensed parameters, from a third party source, etc.) for processing in a co-located or remote processor. The sensor analysis could incorporate trigger points, trend monitoring, manual correlation analysis, automatic correlation analysis, etc. The sensors could be individual or grouped (e.g., for more efficient connection and/or pairing).
- The hub could function as a router for data, relay for data, or analyze the data. The hub could have one or many different electrical and protocol data communication interfaces to support connection to legacy and future protocols and devices. The hub could have built in Ethernet (e.g., wired, WiFi, cellular, and/or other), as well as communication with home router and/or direct to cloud (e.g., cellular). The hub could connect through wired (e.g., RS485) and/or wireless communication (e.g., WiFi, Bluetooth, ZWave, Zigbee, etc.) with a pump (e.g., for full variable speed pump (“VSP”) capabilities), heater or heat pump (e.g., for heat control), etc. (i.e., low voltage and/or high voltage applications). The hub could have one or more modular relays or relay banks (e.g., four relays or relay banks). The hub could connect to the relay bank for relay control through wired (e.g., RS485) and/or wireless communication. The relays could be used to control any electrical devices (e.g., high or low voltage), such as pumps, lights, etc. The hub could control wired or wireless valves with transformation at plug or 120V (e.g., to provide power to valve based on hub architecture). The hub could connect to a light controller through wired and/or wireless (e.g., Bluetooth and/or RF mesh such as ZWave, Zigbee, Thread, Weave, etc.) communication, such as to give relay control to a pool, spa, backyard lighting, etc.
- The system can perform a variety of types of analytics. For example, the system could analyze electrical, gas, and/or propane usage for one or more pool devices, sites, and/or geographies (e.g., based on data from the hub or device). The system could analyze consolidated site information to facilitate creation of algorithms (e.g., to increase efficiency for all users). The system could use historical data trends to predict future trends, future costs, utility budgets, warnings, efficiency change, as well as to offer preventative maintenance, predictive failure, and/or potential downtime risks. The system could communicate with utilities via a web-based API or some other suitable mechanism. The system could use data trends and/or external data to minimize energy usage and/or facilitate energy consumption decisions. The system could analyze data to predict a budget for requested outcomes to give consumers better visibility in their choices. The system could use external web based data to automate decisions based on learned or imputed data or trends. The system could use historical and/or external data to predict outcomes heating or filtering events to increase autonomy and reduce energy usage for these outcomes. The system could use failures, predictive failures or preventative maintenance alerts to automatically assign or request service from a customer or partner. The system could use external data from partners to increase the efficiency, potential decisions, functionality of the hub in the IoT world. The system could use data to adjust automated decisions based on sensors, decision information, inputs from other devices, etc. The system could use flow, pool temperature, air temperature, wind data, etc. to automatically adjust the pool turnover and optimize (e.g., fastest, most efficient) the pool pump for amount of turnover, speed, etc., and/or to automatically adjust the chemical dispensing and/or production to maximize life of cells. The system could use data communicated to the hub from a water leveling sensor to predict leaks and/or water bills, and/or to automatically alert leak repair company that customer has an issue with his or her pool. The system could use web based data (e.g., time of year, sunrise and sunset, time, etc.) to predict light availability and automate changes in device schedules. The system could use consolidated site information to help notify the user of a devices operation through the actions of an alternate device. The system could provide an installer with a step by step interface for product installation when a product is selected.
- While various forms of web data have been described above in connection with
FIGS. 1-33AH , web data can also include, but is not limited to: environmental conditions such as ambient temperature, humidity, wind speed and direction, rain, lightning, snow, cloud coverage, forecasts (e.g., 5 day, 10 day, etc.), pollen, visibility, fog, pollution, smog, road conditions, travel delays, UV index, location, zip code, GPS coordinates, IP address, sunrise, sunset, sun location, wind chill, public water costs, public water availability, public water quality, drought or flood alerts, average chemical costs (e.g., internet costs of chlorine, etc.), tornado/hurricane alerts, etc.; local energy data such as electricity costs, fuel costs, peak hours and cost fluctuation, sun location, available energy rebates, etc.; personal data produced in conjunction with web or web enabled device (e.g., nest, phone, hub, etc.) such as location (e.g., home, away, on the way home, etc.), data usage, amount of web enabled devices used or connected (e.g., five downloaded apps could represent a family of five), energy used (e.g., fuel, electricity, etc.), data speed (e.g., upload/download rate (mbps), ping), etc.; and product data (e.g., in conjunction with registration) such as warranty, age, recalls, tech bulletins, replacement parts, specs, tech support, tutorials (e.g., instructional videos), specials (e.g., coupons, promotions, etc.), local support (e.g., authorized service center), firmware updates, new product releases, pool industry news, safety alerts, safety suggestions, etc. - It is contemplated that all of the systems disclosed herein could interface with one or more dedicated/proprietary or 3rd party voice interaction devices (e.g., Apple's Siri, Amazon Echo, etc.).
Pool control logic 70 could interface with the voice interaction devices directly (e.g., Bluetooth), locally (e.g., through network router or mesh network), or via the cloud. The user commands, inputs, actions, etc., described herein, could be provided topool control logic 70 via the voice interaction device and notifications, messages, alerts, etc., described herein, could be transmitted to the user via the voice interaction device (e.g., verbal notification, messages, alerts, etc.). For example, to activate thelighting system 14 h, a user could simply say, “Alexa, turn on the pool lights.” - It is contemplated that that the various devices in the embodiments described herein could also communicate by way of power line carrier (e.g., power-line digital subscriber line (PDSL), mains communication, power-line telecommunications, or power-line networking (PLN)) to allow the various interconnected components to communicate with one another via electrical wiring.
- It is also contemplated that site data could be replaced with cloud data, or data at the site could be combined with data in the cloud, and the system could intelligently combine disparate data from different cloud servers.
- Also contemplated is capturing specific equipment data (e.g., bar codes) by a smartphone camera at the site at the time of installation and connecting to an application. This can, at the same time, capture GPS coordinates for the address and date of installation for warranty registration, and automatically load the location of the pool into the pool control logic with cloud support for sunrise/sunset, real time and forecasted weather data. Similarly, by standing by the pool and taking photo of the pool, one can record North-South-East-West (e.g., phone compass) and load similar data into the pool control logic with cloud support for using wind direction as well. If photos are taken multiple times in the day, compass and date information could be used to extrapolate the pool's sun exposure for pool heating and other calculations.
- In addition to receiving operational data from locally installed pool/spa equipment, remote data (e.g., an off-site or cloud server) and web data, described hereinabove, it is also contemplated that
pool control logic 70 could receive operational data from one or more pieces of pool equipment having enhanced sensing capabilities. For example, thesystem 10 could includelighting system 14 h (see, e.g.,FIG. 1 ) having a smart light 5014 h. More specifically, as shown inFIG. 36 , smart light 5014 h could include temperature sensor 5000 (e.g., for temperature sensing of air, water, etc.),microphone 5001, chemistry sensor 5002 (e.g., for sensing salinity, pH, ORP, TDS, chlorine, etc.), light output sensor 5004 (e.g. for sensing lumen, lux, CCT, CIE, etc.), occupancy sensor 5006 (e.g., IR, sound/audio detection, radar, etc.),water clarity sensor 5008, water level sensor, 5010,water pressure sensor 5012,flow sensor 5014,turbidity sensor 5016, user input module 5018 (e.g., touch panel, physical buttons, etc.) and network communication andlocal control subsystem 12 h (see, e.g.,FIGS. 1-2 ). The smart light 5014 h could further include the ability to measure for stray current. The user input module could include touch-based inputs (e.g., capacitive, inductive, fear field RF, etc.). The smart light 5014 h could further include adisplay 5019 provided as a separate component or integrally provided withuser input module 5018. The smart light 5014 h could accordingly be used to display an error message for a fault condition or warning message regarding pool chemistry, or could be used to display any other kind of visual media. Although previously discussed, it is noted that the network communication andlocal control subsystem 12 h could communicate withpool control logic 70, located in one or more of the pool/spa components discussed herein, using any of the communication protocols discussed herein, including but not limited to, power line carrier, ethernet, RF, Bluetooth, WiFi, and Zigbee. Smart light 5014 h could also record hours of operation, light output, voltage, and current as well as corresponding operating and environmental conditions during use. It is further noted thattemperature sensor 5000,microphone 5001,chemistry sensor 5002,light output sensor 5004,occupancy sensor 5006,water clarity sensor 5008, water level sensor, 5010,water pressure sensor 5012,flow sensor 5014,turbidity sensor 5016,user input module 5018, and network communication andlocal control subsystem 12 h could be incorporated into the a lighting device, or could be provided as an additional attachment to the lighting device body. Further, as discussed above,pool control logic 70 could reside or be run within the smart light 5014 h, in another piece of pool/spa equipment, remotely, or distributed amongst one or more of these locations. -
FIG. 37 is a flowchart illustrating processing steps of thepool control logic 70 for controlling a heater based on operational data received from thesmart lights 5014 h described above. More specifically, multiple smart lights provided in and around the pool/spa could act as a mesh array of temperature sensor inputs for determining the average temperature of the pool/spa and controlling the heater accordingly. Instep 5020, thepool control logic 70 receives operational data, e.g., temperature, from a first smart light. Instep 5022, thepool control logic 70 receives operational data, e.g., temperature, from a second smart light. Instep 5024, thepool control logic 70 receives operational data, e.g., temperature, from the nth smart light. That is, thepool control logic 70 receives operational data for all smart lights in addition to the first and second smart lights discussed in connection withsteps step 5026, thepool control logic 70 determines the average temperature off the pool/spa based on the operational data received from the smart lights. Instep 5028, thepool control logic 70 retrieves temperature setpoint data from memory. Instep 5030, thepool control logic 70 determines if the average temperature (determined in step 5026) is below the temperature setpoint. If a positive determination is made, e.g., the average temperature is below the temperature setpoint, then the process proceeds to step 5032, where thepool control logic 70 transmits an instruction to activate a heater and the process reverts to step 5020. If a negative determination is made, e.g., the average temperature is greater than the temperature setpoint, then the process proceeds to step 5034, where thepool control logic 70 transmits an instruction to deactivate a heater and the process reverts to step 5020. It is also contemplated that instead of determining the average temperature of the pool/spa,pool control logic 70 could determine the warmest or coolest area of the pool/spa and control the heater accordingly (e.g., warming the coolest area of the pool to a temperature setpoint, or cease warming of the pool when the warmest area of the pool reaches a temperature setpoint). -
FIG. 38 is a flowchart illustrating processing steps of thepool control logic 70 for controlling a heater by determining a predicted temperature setpoint based on previous user specified temperature setpoints. Instep 5036, thepool control logic 70 receives an instruction to activate a heater. Instep 5038, thepool control logic 70 retrieves a first previous user temperature setpoint from memory. Instep 5040, thepool control logic 70 retrieves a second previous user temperature setpoint from memory. Instep 5042, thepool control logic 70 retrieves the nth previous user temperature setpoint from memory. That is, instep 5042 thepool control logic 70 retrieves all other previous user temperature setpoints from memory that are desired. For example, the system can be set-up so that the three (3), four (4), five (5), ten (10), or twenty (20), etc., most recent previous user temperature setpoints are utilized in this process. Instep 5044, thepool control logic 70 determines a predicted user temperature setpoint based on the previous user temperature setpoints retrieved from memory insteps step 5046, thepool control logic 70 transmits an instruction to a heater to operate, e.g., until the predicted setpoint determined instep 5044 is reached. -
FIG. 39 is a flowchart illustrating processing steps of thepool control logic 70 for controlling the pool/spa water chemistry by operating sanitization equipment based on operational data received from water chemistry sensors in one or moresmart lights 5014 h. Instep 5048, thepool control logic 70 receives water chemistry setpoints, e.g., relating to salinity, pH, ORP, TDS, chlorine levels, etc., from memory. Instep 5050, thepool control logic 70 receives water chemistry operational data, e.g., salinity, pH, ORP, TDS, chlorine levels, etc., from smart light sensors. Instep 5052, thepool control logic 70 determines if the water chemistry operational data (determined in step 5050) is within specific levels, e.g., which are based on the setpoints retrieved instep 5048. If a positive determination is made, then the process returns to step 5050, where thepool control logic 70 continues to receive water chemistry operational data from the smart light sensors. If a negative determination is made, then the process proceeds to step 5054, where thepool control logic 70 determines an action to correct the water chemistry, e.g., increase chlorination rate by X %. Instep 5056, the pool control logic transmits an instruction to the chemistry automation system to take corrective action in accordance with the action determined instep 5054, e.g., increase the chlorination rate by X %, and the process reverts to step 5050. - In accordance with additional embodiments of the present disclosure, using similar processing steps as described in connection with
FIG. 39 ,pool control logic 70 could also use operational data received from the smart light 5014 h sensors to control a robotic cleaner based on operational data received fromwater clarity sensor 5008 oroccupancy sensor 5006, activate the pump and/or filter based on operational data received from water clarity sensor 5009, activate water features, actuate valves, or activate the pump based on operational data received fromflow sensor 5014, trigger a house alarm (if armed) based on operational data received fromoccupancy sensor 5006, activate the lighting system based on operational data received from occupancy sensor 5006 (e.g., turn on the lights, increase the intensity of the lights, switch light color based on an unplanned occupancy or turn lights on based on time of day, automatically turn off after a period of time if no occupant detected, “follow the swimmer” by only activating the light when an occupant is detected proximate thereto), adjust the water temperature based on operational data received fromoccupancy sensor 5006, adjust light output based on operational data received fromambient light sensor 5004, and adjust CCT based on operational data received from ambientair temperature sensor 5000. -
FIG. 40 is a flowchart illustrating processing steps of thepool control logic 70 for predictively displaying the most popular light show based on previously selected light shows. Instep 5058, thepool control logic 70 receives an instruction to activate a light show. Instep 5060, thepool control logic 70 retrieves a first previously selected light show from memory. Instep 5062, thepool control logic 70 retrieves a second previously selected light show from memory. Instep 5064, thepool control logic 70 retrieves the nth previously selected light show from memory. That is, instep 5064 thepool control logic 70 retrieves all other previously selected light shows from memory. For example, the system can be set-up so that the three (3), four (4), five (5), ten (10), or twenty (20), etc., most recent previously selected light shows are utilized in this process. Instep 5066, thepool control logic 70 determines the most common light show based on the previously selected light shows retrieved from memory insteps step 5068, thepool control logic 70 transmits an instruction to a lighting system to display the most common light show as determined instep 5066. It is further contemplated that rather than receiving all of the previously selected light shows from the memory,pool control logic 70 could instead retrieve a set number of most recent light shows (e.g., most recent 10 light shows), orpool control logic 70 could retrieve light shows that were selected within a specified period of time (e.g., light shows selected within the last year). In addition to displaying light shows, it is also contemplated that the smart light 5014 h could communicate with music and speaker systems to provide a coordinated music and lighting show (e.g., lights change color and intensity, pulse, move, etc. based on a particular musical selection). - It is further contemplated smart light 5014 h could provide for user interaction with the pool/
spa control system 10 andpool control logic 70. As discussed above, the smart light could include auser input module 5018 having touch-based inputs and adisplay 5019. For example, the user could use the touch-based controls to adjust the water temperature at the smart light 5014 h, or to modify or change a light show or light color. Similarly, the touch-based controls anddisplay 5019 could be used to virtually configure custom light shows. Additionally, the user could interact with the pool/spa control system 10 using the microphone 5001 (e.g., using voice commands either above or below water). - In accordance with embodiments of the disclosure, the
pool control logic 70 could receive operational data from a plurality ofsmart lights 5014 h disposed about a pool/spa. More specifically,pool control logic 70 could receive operational data fromoccupancy sensors 5006 in the plurality ofsmart lights 5014 h. Using the plurality oflights 5014 h andsensors 5006 as nodes in a mesh array,pool control logic 70 could determine the location of the occupant in the pool/spa. - In accordance with embodiments of the present disclosure, the smart light 5014 h could further perform an optical comparison with a camera to identify when the pool is dirty or contains debris or other particulate.
- In accordance with embodiments of the present disclosure, a plurality of
smart lights 5014 h could be used as an array to provide directional input for a robotic cleaner. For example, as discussed above,pool control logic 70 could determine areas of the pool having high concentrations of dirt or debris. Further, a plurality ofsmart lights 5014 h could be disposed about a pool/spa.Pool control logic 70 could then determine the smart light 5014 h in closest proximity to the debris and send an instruction to activate the smart light 5014 h. The pool cleaner would then detect the light from thesmart light 5014, proceed towards the same, and accordingly proceed towards the area having a high concentration of debris. Alternatively,smart lights 5014 h could independently illuminate if they determine they are proximate to an area of high debris. The pool cleaner could then proceed to each area of high debris, in turn. - In accordance with embodiments of the present disclosure,
smart lights 5014 h could be used to provide light catalyzed chemistry for sanitization by adjusting their light output wavelength. For example,pool control logic 70 could receive an instruction to sanitize the pool/spa.Pool control logic 70 could then retrieve light wavelength sanitization setpoint data from the memory (e.g., sanitization wavelength is 254 nm).Pool control logic 70 could then transmit an instruction to thelighting system 14 h and/or smart light 5014 h to operate at the sanitization setpoint (e.g., 254 nm). -
FIGS. 73-85 illustrate components of embodiments of the heating/cooling system 14 b ofFIG. 1 and processing steps carried out by the embodiments of the heating/cooling system 14 b.FIG. 73 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b ofFIG. 1 for measuring venting system exhaust pressure, venting system temperature, and detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b. - A pool heater of a heating/cooling system that is installed in a building or indoor space utilizes a venting system comprising a vent and vent pipes to safely exhaust the products of combustion outdoors. A blockage in the vent and/or vent pipes can result in poisonous exhaust gases (e.g., carbon monoxide) being released into the building or indoor space. Further, a blockage in the vent and/or vent pipes can reduce air flow and increase exhaust gas recirculation, both of which can cause carbon monoxide production to increase. As discussed above in relation to
FIGS. 23C and 23J , design safety standards for pool heaters (e.g., ANSI Z21.56), require tests that demonstrate that a heater of the heating/cooling system will detect a vent and/or vent pipe blockage and deactivate before the carbon monoxide concentration in the exhaust gas reaches a predetermined level. - Pool heater manufacturers can detect a vent and/or vent pipe blockage via at least one pressure switch that detects the venting system exhaust pressure generated by the blockage. However, a pressure switch is susceptible to failure. For example, the tubing between the pressure switch and the vent and/or vent pipes can be disconnected or broken or the pressure switch can be improperly wired (i.e., “jumpered”) thereby rendering the pressure switch ineffective.
- As shown in
FIG. 73 , the heating/cooling system 14 b could include aheater 7400 having awater inlet pipe 7404 a, awater outlet pipe 7404 b, aheat exchanger 7402, avent 7406, ventpipes 7408, afan 7410 having afan motor 7412, adifferential pressure sensor 7414 and a network communication andlocal control subsystem 12 b (“control subsystem 12 b”) including, but not limited to, aprocessor 22 and amemory 23. Alternatively, thecontrol subsystem 12 b could be a hardware processor including a controller in communication with thememory 23 and thedifferential pressure sensor 7414. According to some embodiments of the present disclosure, the heating/cooling system 14 b can include one ormore temperature sensors 7415 that can monitor the temperature of one or more of thevent pipes 7408,water inlet 7404 a, andwater outlet 7404 b, which can be monitored by theprocessor 22 and used to generate a temperature profile for the heating/cooling system 14 b. - The
water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means. The water passes through theheater 7400 and into theheat exchanger 7402. Thewater outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa. Thedifferential pressure sensor 7414 measures the exhaust pressure in thevent 7406 and/or ventpipes 7408 and cannot be “jumpered” like a pressure switch which makes it more effective. As shown, thedifferential pressure sensor 7414 can measure the pressure differential between thevent 7406 and one or more of thevent pipes 7408 in order to determine the presence of a blockage therein. The heating/cooling system 14 b provides for detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b by defining a plurality of predetermined venting system exhaust pressure thresholds as described in further detail below. - Referring to
FIGS. 1 and 2 , thecontrol subsystem 12 b could include aprocessor 22 in communication with amemory 23 including at least one of a random-access memory 24 and anon-volatile memory 30. Theprocessor 22 provides local processing capability for thecontrol subsystem 12 b. Thenon-volatile memory 30 can store one or morelocal control programs 30 for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. Theprocessor 22 is in communication with thedifferential pressure sensor 7414 of theheater 7400. It is noted that a pressure sensor may also be referred to as a pressure transducer, a pressure transmitter, a pressure indicator, a piezometer and a manometer and could be one of an absolute pressure sensor, a gauge pressure sensor, a vacuum pressure sensor, a differential pressure sensor, a sealed pressure sensor or any other type of pressure sensing device. Thedifferential pressure sensor 7414 can be connected to and in communication with the heating/cooling system 14 b and thecontrol subsystem 12 b via a wired or a wireless connection. - The
processor 22 may detect changes and/or problems in the performance of the venting of the heating/cooling system 14 b and control the operation of the heating/cooling system 14 b based on (1) a measurement of the venting system exhaust pressure relative to a plurality of predetermined pressure thresholds and (2) a calculated difference between the measurement of the venting system exhaust pressure and a last recorded measurement of the venting system exhaust pressure relative to a plurality of predetermined pressure thresholds. It is noted that thecontrol subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b. The components of thecontrol subsystem 12 b are discussed in more detail above in regards toFIG. 2 . -
FIGS. 74A-B are flowcharts illustrating processing steps carried out by the heating/cooling system 14 b ofFIG. 73 for detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b, indicated generally atmethod 7450. - In
step 7452, thesystem 14 b receives a command to heat the water in the pool or spa and ignites and fires theheater 7400. A user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 ofFIG. 1 ) or via a display of the heating/cooling system 14 b to instruct theheating system 14 b to heat the water in the pool or spa. Alternatively, thesystem 14 b may transmit the command due to a predetermined condition. For example, a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature. Those skilled in the art would understand that, in a heating/cooling system or a cooling system, the activation command can also be a command to cool the water in a pool or spa. - In
step 7454, thesystem 14 b receives a command to activate thefan 7410. Then, instep 7456, thesystem 14 b determines whether the fan is operational. If thefan 7410 is not operational (i.e., thefan motor 7412 is inoperative), then instep 7458, thesystem 14 b determines whether any retries remain for transmitting an activation command to thefan 7410. If no retries remain, then instep 7462, thesystem 14 b transmits an error message and the process ends. If at least one retry remains, then thesystem 14 b transmits a command to activate thefan 7410 instep 7460. If thefan 7410 is operational (i.e., thefan motor 7412 is operative), then thesystem 14 b measures the venting system exhaust pressure via thedifferential pressure sensor 7414 instep 7464. - In
step 7466, thesystem 14 b determines whether the measured venting system differential exhaust pressure is greater than a predetermined minimum pressure threshold. A minimum venting system differential exhaust pressure should be present when thefan 7410 is operational. For example, if thefan 7410 is operational but the measured venting system differential exhaust pressure is less than a predetermined minimum pressure threshold, then thevent 7406 or thevent pipes 7408 may be damaged and/or disconnected. - In
step 7468, thesystem 14 b transmits a diagnostic message indicative of a problem with the venting of thesystem 14 b when the measured venting system differential exhaust pressure is not greater than the predetermined minimum pressure threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g.,vent 7406 and/or ventpipes 7408 disconnected), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7470, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or the increase of exhaust gas within theheater 7400 and the process ends. Alternatively, if thesystem 14 b determines that the measured venting system differential exhaust pressure is greater than the predetermined minimum pressure threshold, the process proceeds to step 7472. - In
step 7472, thesystem 14 b determines whether the measured venting system differential exhaust pressure is less than a predetermined maximum pressure threshold. A venting system differential exhaust pressure maximum threshold can be used to detect a blockage of thevent 7406 and/or thevent pipes 7408. - In
step 7474, thesystem 14 b transmits a diagnostic message indicative of a problem with the venting of thesystem 14 b when thesystem 14 b determines that the measured venting system differential exhaust pressure is not less than the predetermined maximum pressure threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g.,vent 7406 and/or ventpipes 7408 blocked), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7476, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or the increase of exhaust gas within theheater 7400 and the process ends. Alternatively, if thesystem 14 b determines that the measured venting system differential exhaust pressure is less than the predetermined minimum pressure threshold, the process proceeds to step 7478. - In
step 7478, thesystem 14 b retrieves the last recorded measured venting system differential exhaust pressure and instep 7480, thesystem 14 b calculates a difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure. The last recorded measured venting system differential exhaust pressure can be stored in thememory 23 or the cloud. An increase in the venting system differential exhaust pressure over time can be indicative of a blockage forming (e.g., an animal nest) within thevent 7406 and/or thevent pipes 7408. - Therefore, in
step 7482, thesystem 14 b determines whether the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure is less than the last recorded calculated difference. If the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure is less than the last recorded calculated difference, then instep 7484, thesystem 14 b records the measured venting system differential exhaust pressure as the last recorded measured venting system differential exhaust pressure. Additionally, instep 7486, thesystem 14 b records the calculated difference as the last recorded calculated difference. Then, instep 7488, thesystem 14 b continues the operation of theheater 7400. - Alternatively, if the
system 14 b determines that the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure is not less than the last recorded calculated difference, then the process proceeds to step 7490. Instep 7490, thesystem 14 b determines whether the calculated difference exceeds the last recorded calculated difference by a predetermined threshold. In particular, thesystem 14 b determines whether the calculated difference between the measured venting system differential exhaust pressure and the last recorded measured venting system differential exhaust pressure exceeds the last recorded calculated difference by a predetermined “high” pressure threshold. - In
step 7492, thesystem 14 b transmits a diagnostic message indicative of a problem with the venting of thesystem 14 b when the calculated difference exceeds the last recorded calculated difference by the predetermined “high” pressure threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g., unsafe pressure level), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7496, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or the increase of exhaust gas within theheater 7400 and the process ends. Alternatively, thesystem 14 b continues the operation of theheater 7400 instep 7496 when the calculated difference does not exceed the last recorded calculated difference by the predetermined “high” pressure threshold. -
FIGS. 74C-74D are flowcharts illustrating processing steps carried out by the heating/cooling system 14 b ofFIG. 73 for detecting changes and/or problems in the performance of the venting of the heating/cooling system 14 b, indicated generally atmethod 7451. More specifically, the heating/cooling system 14 b can detect changes and/or problems in the performance of the venting of the heating/cooling system 14 b by using the one ormore temperature sensors 7415 shown inFIG. 73 to monitor the temperature profile of thewater inlet 7404 a,water outlet 7404 b, and ventpipe 7408. The system can detect changes and/or problems in the performance of the venting of the heating/cooling system 14 b using steps similar to those discussed in connection withmethod 7450, except for the distinctions noted herein. According to some embodiments of the present disclosure, the foregoing processing steps can also be executed by the heating/cooling system 14 b in connection with the “economy” and/or “adaptive” modes of the system described herein. - In
step 7453, thesystem 14 b receives a command to heat the water in the pool or spa and ignites and fires theheater 7400. A user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 ofFIG. 1 ) or via a display of the heating/cooling system 14 b to instruct theheating system 14 b to heat the water in the pool or spa. Alternatively, thesystem 14 b may transmit the command due to a predetermined condition. For example, a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature. Those skilled in the art would understand that, in a heating/cooling system or a cooling system, the activation command can also be a command to cool the water in a pool or spa. - In
step 7455, thesystem 14 b receives a command to activate thefan 7410. Then, instep 7457, thesystem 14 b determines whether the fan is operational. If thefan 7410 is not operational (i.e., thefan motor 7412 is inoperative), then instep 7459, thesystem 14 b determines whether any retries remain for transmitting an activation command to thefan 7410. If no retries remain, then instep 7463, thesystem 14 b transmits an error message and the process ends. If at least one retry remains, then thesystem 14 b transmits a command to activate thefan 7410 instep 7461. If thefan 7410 is operational (i.e., thefan motor 7412 is operative), then thesystem 14 b measures the temperature profile of the heating/cooling system 14 b via the one ormore temperature sensors 7415 instep 7465. - In
step 7467, thesystem 14 b determines whether the measured temperature profile is greater than a predetermined minimum temperature profile threshold. A minimum temperature profile should be present when thefan 7410 is operational. For example, if thefan 7410 is operational but the measured temperature profile is less than a predetermined minimum temperature profile, then thevent 7406 or thevent pipes 7408 may be damaged and/or disconnected. - In
step 7469, thesystem 14 b transmits a diagnostic message indicative of a problem with thesystem 14 b when the measured temperature profile is not greater than the predetermined minimum temperature profile threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g.,vent 7406 and/or ventpipes 7408 disconnected), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7471, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or the increase of temperature within theheater 7400 and the process ends. Alternatively, if thesystem 14 b determines that the measured temperature profile is greater than the predetermined minimum temperature profile threshold, the process proceeds to step 7473. - In
step 7473, thesystem 14 b determines whether the measured temperature profile is less than a predetermined maximum temperature profile threshold. A temperature profile maximum threshold can be used to detect a blockage of thevent 7406 and/or thevent pipes 7408. - In
step 7475, thesystem 14 b transmits a diagnostic message indicative of a problem with the venting of thesystem 14 b when thesystem 14 b determines that the measured temperature profile is not less than the predetermined maximum temperature profile threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g.,vent 7406 and/or ventpipes 7408 blocked), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7477, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or the increase of temperature within theheater 7400 and the process ends. Alternatively, if thesystem 14 b determines that the measured temperature profile is less than the predetermined minimum temperature profile threshold, the process proceeds to step 7479. - In
step 7479, thesystem 14 b retrieves the last recorded measured temperature profile and instep 7481, thesystem 14 b calculates a difference between the measured temperature profile and the last recorded measured temperature profile. The last recorded measured temperature profile can be stored in thememory 23 or the cloud. An increase in the temperature profile over time can be indicative of a blockage forming (e.g., an animal nest) within thevent 7406 and/or thevent pipes 7408. - Therefore, in
step 7483, thesystem 14 b determines whether the calculated difference between the measured temperature profile and the last recorded measured temperature profile is less than the last recorded calculated difference. If the calculated difference between the measured temperature profile and the last recorded measured temperature profile is less than the last recorded calculated difference, then instep 7485, thesystem 14 b records the measured temperature profile as the last recorded measured temperature profile. Additionally, instep 7487, thesystem 14 b records the calculated difference as the last recorded calculated difference. Then, instep 7489, thesystem 14 b continues the operation of theheater 7400. - Alternatively, if the
system 14 b determines that the calculated difference between the measured temperature profile and the last recorded measured temperature profile is not less than the last recorded calculated difference, then the process proceeds to step 7491. Instep 7491, thesystem 14 b determines whether the calculated difference exceeds the last recorded calculated difference by a predetermined threshold. In particular, thesystem 14 b determines whether the calculated difference between the measured temperature profile and the last recorded measured temperature profile exceeds the last recorded calculated difference by a predetermined “high” temperature profile threshold. - In
step 7493, thesystem 14 b transmits a diagnostic message indicative of a problem with the venting of thesystem 14 b when the calculated difference exceeds the last recorded calculated difference by the predetermined “high” temperature profile threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g., unsafe temperature level), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7495, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or the increase of temperature within theheater 7400 and the process ends. Alternatively, thesystem 14 b continues the operation of theheater 7400 instep 7497 when the calculated difference does not exceed the last recorded calculated difference by the predetermined “high” temperature profile threshold. -
FIG. 75 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b ofFIG. 1 for detecting the proper function of a fan motor of the heating/cooling system 14 b based on a measurement of the electric current of the fan motor. - A pool heater of a heating/cooling system comprises a fan driven by an electric motor to move air through the heating/cooling system. For example, in a gas-fired pool heater, air is moved through the burner and combustion system by a centrifugal fan (i.e., a blower) whereas in a heat pump pool heater, air is moved through the heat exchanger by an axial fan. The electric current flowing to the motors of these fans can be used to detect and diagnose a problem with the pool heater. Typically, in a gas-fired pool heater, a pressure switch can confirm whether the blower is functioning before the gas valve is opened and ignition is started by measuring the small vacuum generated by the blower.
- The heating/
cooling system 14 b provides for detecting the proper function of a fan motor of the heating/cooling system 14 b based on a measurement of the electric current of the fan motor at a given speed (e.g., RPM) via a current sensor and thereby obviating a need for a pressure switch. As shown inFIG. 75 , the heating/cooling system 14 b could include aheater 7400 having awater inlet pipe 7404 a, awater outlet pipe 7404 b, aheat exchanger 7402, avent 7406, ventpipes 7408, afan 7410 having afan motor 7412, acurrent sensor 7416 and a network communication andlocal control subsystem 12 b (“control subsystem 12 b”) including, but not limited to, aprocessor 22 and amemory 23. Alternatively, thecontrol subsystem 12 b could be a hardware processor including a controller in communication with thememory 23 and thecurrent sensor 7416. - The
water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means. The water passes through theheater 7400 and into theheat exchanger 7402. Thewater outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa. Thecurrent sensor 7416 measures the electric current of thefan motor 7412. The speed (e.g., RPM) of the fan motor can be provided to theprocessor 22, either directly (e.g., by way of a communication channel, or the like, therebetween), or via an intermediate rotational speed sensor (not shown), for example, coupled to the output shaft of themotor 7412. The heating/cooling system 14 b provides for detecting the proper function of thefan motor 7412 of the heating/cooling system 14 b based on a measurement of the electric current of thefan motor 7412 at a given speed (e.g., RPM), via thecurrent sensor 7416, and by defining a plurality of predetermined current thresholds. - Referring to
FIGS. 1 and 2 , thecontrol subsystem 12 b could include aprocessor 22 in communication with amemory 23 including at least one of a random-access memory 24 and anon-volatile memory 30. Theprocessor 22 provides local processing capability for thecontrol subsystem 12 b. Thenon-volatile memory 30 can store one or morelocal control programs 30 for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. Theprocessor 22 is in communication with thecurrent sensor 7416 of theheater 7400. It is noted that thecurrent sensor 7416 could sense an alternating current input or a direct current input. Thecurrent sensor 7416 can be connected to and in communication with the heating/cooling system 14 b and thecontrol subsystem 12 b via a wired or a wireless connection. - The
processor 22 may detect changes and/or problems in the performance of thefan motor 7412 and control the operation of the heating/cooling system 14 b based on a measurement of the current of themotor 7412 relative to a plurality of predetermined current thresholds. It is noted that thecontrol subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b. The components of thecontrol subsystem 12 b are discussed in more detail above in regards toFIG. 2 . -
FIG. 76 is a flowchart illustrating processing steps carried out by the heating/cooling system 14 b ofFIG. 75 for detecting the proper function of thefan motor 7412 of the heating/cooling system 14 b based on the measurement of the electric current of thefan motor 7412 via thecurrent sensor 7416, indicated generally atmethod 7500. - In
step 7502, thesystem 14 b receives a command to heat the water in the pool or spa and ignites and fires theheater 7400. A user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 ofFIG. 1 ) or via a display of the heating/cooling system 14 b to instruct theheating system 14 b to heat the water in the pool or spa. Alternatively, thesystem 14 b may transmit the command due to a predetermined condition. For example, a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature. Those skilled in the art would understand that, in a heating/cooling system or a cooling system, the activation command can also be a command to cool the water in a pool or spa. - In
step 7504, thesystem 14 b receives a command to activate thefan 7410. Then, instep 7506, thesystem 14 b determines whether the fan is operational. If thefan 7410 is not operational (i.e., thefan motor 7412 is inoperative), then instep 7508, thesystem 14 b determines whether any retries remain for transmitting an activation command to thefan 7410. If no retries remain, then instep 7510, thesystem 14 b transmits an error message and the process ends. If at least one retry remains, then thesystem 14 b transmits a command to activate thefan 7410 instep 7510. If thefan 7410 is operational (i.e., thefan motor 7412 is operative), then instep 7514, thesystem 14 b measures the current of thefan motor 7412 via thecurrent sensor 7416. Optionally, instep 7515, thesystem 14 b can measure the speed (e.g., RPM) of thefan motor 7412. Instep 7516, thesystem 14 b determines whether the measured fan motor current is greater than a predetermined minimum current threshold. According to some embodiments of the present disclosure, thesystem 14 b can determine whether the measured fan motor current is greater than a predetermined minimum current threshold at a given speed of the fan motor. For example, the current of the fan motor can vary, depending on the speed at which the fan motor is operating. As such, thesystem 14 b can account for variations in operating speed when determining if the fan motor current is operating within current thresholds. A minimum fan motor current should be present when thefan 7410 andfan motor 7412 are operative. For example, if thesystem 14 b receives a command to activate thefan 7410 but the measured fan motor current is not greater than the predetermined minimum current threshold, then thefan motor 7412 may be improperly wired. Instep 7518, thesystem 14 b transmits a diagnostic message indicative of a problem with thefan motor 7412 when the measured fan motor current is not greater than the predetermined minimum current threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g., fan motor open circuit), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7520, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and the process ends. Alternatively, if thesystem 14 b determines that the measured fan motor current is greater than the predetermined minimum current threshold, the process proceeds to step 7522. - In
step 7522, thesystem 14 b determines whether the measured fan motor current is less than a predetermined maximum current threshold. A fan motor maximum current threshold can detect whether thefan motor 7412 is damaged. - In
step 7526, thesystem 14 b transmits a diagnostic message indicative of a problem with thefan motor 7412 of thesystem 14 b when thesystem 14 b determines that the measured fan motor current is not less than the predetermined maximum current threshold. The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g.,fan motor 7412 damaged), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7528, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and/or further damage to thefan motor 7412 and the process ends. Alternatively, if thesystem 14 b determines that the measured fan motor current is less than the predetermined maximum current threshold, thesystem 14 b continues the operation of theheater 7400 instep 7524. -
FIG. 77 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b ofFIG. 1 for ensuring sufficient water flow for proper function of a pool heater by measuring water flow rate via a flow sensor embedded within the pool heater. - A pool heater of a heating/cooling system commonly utilizes a pressure switch to measure the water flow rate and detect if a filter pump is operative. As such, the pool heater can be protected from damage incurred by heating water when the water flow rate is too low. However, pressure switches do not measure water flow rate directly and as such, can incorrectly indicate the water flow rate resulting in damage to the pool heater. The ability to accurately measure the water flow rate via a flow sensor allows for the advanced functionality of and enhanced diagnostics regarding the operation of pool heater and/or a heating/cooling system. As such, the heating/
cooling system 14 b provides for ensuring sufficient water flow for proper function of a pool heater by measuring water flow rate via a flow sensor embedded within the pool heater. Specifically, the heating/cooling system 14 can define at least one predetermined water flow rate threshold which allows for protecting a pool heater from the damage incurred by heating water when the water flow rate is too low. Additionally, the heating/cooling system 14 b provides a user with enhanced diagnostics regarding the operation of a pool heater and/or a heating/cooling system. - As shown in
FIG. 77 , the heating/cooling system 14 b could include aheater 7400 having awater inlet pipe 7404 a, awater outlet pipe 7404 b, aheat exchanger 7402, aflow sensor 7418, apressure sensor 7419, and a network communication andlocal control subsystem 12 b (“control subsystem 12 b”) including, but not limited to, aprocessor 22 and amemory 23. Alternatively, thecontrol subsystem 12 b could be a hardware processor including a controller in communication with thememory 23, theflow sensor 7418, and/or thepressure sensor 7419. - The
water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means. The water passes through theheater 7400 and into theheat exchanger 7402. Thewater outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa. Theflow sensor 7418 measures the water flow rate of the water within theinlet pipe 7404 a. Alternatively, or in addition to theflow sensor 7418, apressure sensor 7419 can measure a pressure differential between thewater inlet pipe 7404 a and thewater outlet pipe 7404 b. The heating/cooling system 14 b provides for defining at least one predetermined minimum water flow rate, or pressure differential, threshold which allows for protecting theheater 7400 from the damage incurred by heating water when the water flow rate, or pressure, is too low. - Referring to
FIGS. 1 and 2 , thecontrol subsystem 12 b could include aprocessor 22 in communication with amemory 23 including at least one of a random-access memory 24 and anon-volatile memory 30. Theprocessor 22 provides local processing capability for thecontrol subsystem 12 b. Thenon-volatile memory 30 can store one or morelocal control programs 30 for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. Theprocessor 22 is in communication with theflow sensor 7418 and/orpressure sensor 7419 of theheater 7400. It is noted that theflow sensor 7418 can be a paddle-wheel flow sensor wherein water flow causes the rotation of a paddle wheel which generates an electrical pulse signal whose frequency is proportional to the water flow rate. Theflow sensor 7418 can also be of a type other than a paddle-wheel and can be a combination device comprising a flow sensor and a water temperature sensor. Theflow sensor 7418 can be connected to and in communication with the heating/cooling system 14 b and thecontrol subsystem 12 b via a wired or a wireless connection. - The
processor 22 may detect changes and/or problems in the performance of theheater 7400 and control the operation of the heating/cooling system 14 b based on a measured water flow rate via theflow sensor 7418 relative to at least one predetermined minimum flow rate threshold. Theprocessor 22 can also detect changes and/or problems in the performance of theheater 7400 and control the operation of the heating/cooling system 14 b based on a measured pressure differential between thewater inlet 7404 a and thewater outlet 7404 b via thepressure sensor 7419 relative to at least one predetermined maximum pressure differential threshold. It is noted that thecontrol subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b. The components of thecontrol subsystem 12 b are discussed in more detail above in regards toFIG. 2 . -
FIG. 78 is a flowchart illustrating the processing steps carried out by the heating/cooling system 14 b ofFIG. 77 for ensuring sufficient water flow for proper function of theheater 7400 by measuring the water flow rate via theflow sensor 7418 embedded within theheater 7400, indicated generally atmethod 7550. Instep 7552, thesystem 14 b receives a command to heat the water in the pool or spa and ignites and fires theheater 7400. A user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 ofFIG. 1 ) or via a display of the heating/cooling system 14 b to instruct theheating system 14 b to heat the water in the pool or spa. Alternatively, thesystem 14 b may transmit the command due to a predetermined condition. For example, a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature. Those skilled in the art would understand that, in a heating/cooling system or a cooling system, the activation command can also be a command to cool the water in a pool or spa. - In
step 7554, thesystem 14 b retrieves the minimum flow rate setpoint data for operation of theheater 7400. The setpoint data can be stored in thememory 23 of the heating/cooling system 14 b or in the cloud. Instep 7556, thesystem 14 b measures the flow rate of the water within thewater inlet pipe 7404 a via theflow sensor 7418. Then, instep 7558, thesystem 14 b determines whether the measured flow rate is greater than the minimum flow rate setpoint data threshold. If the system determines that the measured flow rate is greater than the minimum flow rate setpoint data threshold, then thesystem 14 b continues operation of theheater 7400 instep 7560. This allows smaller BTU heaters to function at lower water flow rates while still requiring larger BTU heaters to have higher water flow rates. - Alternatively, if the system determines that the measured flow rate is not greater than the minimum flow rate setpoint data threshold, the process proceeds to step 7562. In
step 7562, thesystem 14 b determines whether any retries remain for transmitting a command to measure the flow rate via theflow sensor 7418. If at least one retry remains, thesystem 14 b transmits a command to measure the flow rate of the water within thewater inlet pipe 7404 a via theflow sensor 7418. However, if no retries remain, then instep 7564, thesystem 14 b transmits a diagnostic message indicating insufficient water flow for proper function of theheater 7400. - The heating/
cooling system 14 b provides a user with enhanced diagnostic messages regarding the operation of theheater 7400 and/or the heating/cooling system 14 b based on the measured flow rate via theflow sensor 7418. For example, theflow sensor 7418 provides the ability to distinguish the difference between a water flow rate that is zero (e.g., a water flow rate indicating that the filter pump is OFF) and a water flow rate that is low (e.g., a water flow rate indicating that the filter pump in ON but that the water flow is too low). As such, the heating/cooling system 14 b can transmit messages to other network connected pool or spa equipment such as “more flow needed” or “turn pump on so water temperature can be checked” to ensure sufficient water flow for proper function theheater 7400. Additionally, thesystem 14 b can transmit the measured water flow rate to other network connected equipment such as a pool or spa automation system. - The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/
cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g., insufficient water flow rate), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7566, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and the process ends. - According to some embodiments of the present disclosure, the heating/
cooling system 14 b can ensure sufficient water flow for proper function of theheater 7400 by measuring the water flow rate via thedifferential pressure sensor 7419 embedded within theheater 7400. For example, instep 7555, the system can retrieve a maximum differential pressure setpoint for heater operation. Instep 7557, the system measures the differential pressure between the water inlet and outlet pipes. Instep 7559, the system determines if the measured differential pressure is greater than the maximum differential pressure setpoint. If a positive determination is made instep 7559, the system proceeds to step 7562, as described herein. If a negative determination is made instep 7559, the system proceeds to step 7560 and continues operation of the heater. -
FIG. 79 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b ofFIG. 1 for ensuring sufficient gas pressure for proper function of a heater by measuring gas pressure via a pressure sensor embedded within the heater. - A gas-fired pool heater requires a minimum gas pressure supplied by a gas utility to function properly. If the pool heater has insufficient gas pressure, then the pool heater can fail to ignite, ignite harshly or exhibit a buildup of soot in the pool heater due to improper fuel/air mixture. Therefore, a pool heater of a heating/cooling system is commonly equipped with a test port that a technician can use to connect a pressure gauge and test for gas pressure. However, gas pressure can vary over time and as such, a point measurement made by a technician may not be representative of the gas pressure at the time of an ignition failure. Therefore, diagnosing a problem with the pool heater pertaining to insufficient gas pressure can be difficult.
- The ability to accurately measure gas pressure via a pressure sensor allows for advanced functionality of and enhanced diagnostics regarding the operation of a pool heater and/or a heating/cooling system. For example, the heating/
cooling system 14 b can accurately diagnose a failed ignition due to low gas pressure and can also prevent harsh ignitions and the buildup of soot by monitoring gas pressure. In addition, the heating/cooling system 14 b can provide a user with enhanced diagnostic messages regarding the operation of a pool heater and/or the heating/cooling system 14 b. - As shown in
FIG. 79 , the heating/cooling system 14 b could include aheater 7400 having awater inlet pipe 7404 a, awater outlet pipe 7404 b, aheat exchanger 7402, anorifice 7420, avalve 7422, agas line 7424, apressure sensor 7426 and a network communication andlocal control subsystem 12 b (“control subsystem 12 b”) including, but not limited to, aprocessor 22 and amemory 23. Alternatively, thecontrol subsystem 12 b could be a hardware processor including a controller in communication with thememory 23 and thepressure sensor 7426. - The
water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means. The water passes through theheater 7400 and into theheat exchanger 7402. Thewater outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa. Thepressure sensor 7426 measures the gas pressure within thegas line 7424. Gas enters theheater 7400 via thegas line 7424 andvalve 7422. The gas is ignited and provides heat through theorifice 7420. The heating/cooling system 14 b provides for ensuring sufficient gas pressure for proper function of theheater 7400 by measuring gas pressure within thegas line 7424 via thepressure sensor 7424. Additionally, theheating cooling system 14 b provides a user with enhanced diagnostic messages regarding the operation of theheater 7400 and/or the heating/cooling system 14 b. - Referring to
FIGS. 1 and 2 , thecontrol subsystem 12 b could include aprocessor 22 in communication with amemory 23 including at least one of a random-access memory 24 and anon-volatile memory 30. Theprocessor 22 provides local processing capability for thecontrol subsystem 12 b. Thenon-volatile memory 30 can store one or morelocal control programs 30 for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. Theprocessor 22 is in communication with thepressure sensor 7426 of theheater 7400. It is noted that thepressure sensor 7426 may also be referred to as a pressure transducer, a pressure transmitter, a pressure indicator, a piezometer and a manometer and could be one of an absolute pressure sensor, a gauge pressure sensor, a vacuum pressure sensor, a differential pressure sensor, a sealed pressure sensor or any other type of pressure sensing device. Thepressure sensor 7426 can be connected to and in communication with the heating/cooling system 14 b and thecontrol subsystem 12 b via a wired or a wireless connection. - The
processor 22 may detect changes and/or problems in the performance of theheater 7400 and control the operation of the heating/cooling system 14 b based on a measured gas pressure within thegas line 7424 via thepressure sensor 7426 relative to at least one predetermined minimum gas pressure threshold. It is noted that thecontrol subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b. The components of thecontrol subsystem 12 b are discussed in more detail above in regards toFIG. 2 . -
FIG. 80 is a flowchart illustrating the processing steps carried out by the heating/cooling system 14 b ofFIG. 79 for ensuring sufficient gas pressure for proper function of theheater 7400 by measuring gas pressure within thegas line 7424 via thepressure sensor 7424 embedded within theheater 7400, indicated generally atmethod 7570. - In
step 7572, thesystem 14 b receives a command to heat the water in the pool or spa and ignites and fires theheater 7400. A user may transmit the command via a remote device or terminal (e.g., smart phone/computer system 20 ofFIG. 1 ) or via a display of the heating/cooling system 14 b to instruct theheating system 14 b to heat the water in the pool or spa. Alternatively, thesystem 14 b may transmit the command due to a predetermined condition. For example, a user can set a condition for commanding the heating/cooling system 14 b to activate the heater 7400 (e.g., engage heating functions) at a predetermined time and/or at a predetermined temperature. Those skilled in the art would understand that, in a heating/cooling system or a cooling system, the activation command can also be a command to cool the water in a pool or spa. - In
step 7574, thesystem 14 b retrieves the minimum gas pressure setpoint data for the operation of theheater 7400. The data can be stored in thememory 23 of the heating/cooling system 14 b or in the cloud. Instep 7576, thesystem 14 b measures the gas pressure of the gas within thegas line 7424 via thepressure sensor 7426. Then, instep 7578, thesystem 14 b determines whether the measured gas pressure is greater than the minimum gas pressure setpoint data threshold. If the system determines that the measured gas pressure is greater than the minimum gas pressure setpoint data threshold, then thesystem 14 b continues operation of theheater 7400 instep 7580. - Alternatively, if the system determines that the measured gas pressure is not greater than the minimum gas pressure setpoint data threshold, then the process proceeds to step 7582.
- In
step 7582, thesystem 14 b determines whether any retries remain for transmitting a command to measure the gas pressure within thegas line 7424 via thepressure sensor 7426. If at least one retry remains, then thesystem 14 b transmits a command to measure the gas pressure within thegas line 7424 via thepressure sensor 7426. However, if no retries remain, then instep 7584, thesystem 14 b transmits a diagnostic message indicating insufficient gas pressure for the proper function of theheater 7400. - Additionally, the heating/
cooling system 14 b provides a user with enhanced diagnostic messages regarding the operation of theheater 7400 and/or the heating/cooling system 14 b based on the measured gas pressure within thegas line 7424 via thepressure sensor 7426. For example, thepressure sensor 7426 provides the ability to distinguish the difference between a gas pressure that is zero (e.g., a gas pressure indicating that the gas line is CLOSED) and a gas pressure that is low (e.g., a gas pressure indicating that the gas line is OPEN but that the gas pressure is too low). - The diagnostic message can be a report, an alert, etc. The diagnostic message can be transmitted to and displayed by the heating/
cooling system 14 b display or a remote device such as the smart phone/computer system 20. The diagnostic message can include, but is not limited to, a summary of the problem (e.g., insufficient gas pressure), instructions detailing how to troubleshoot the problem, an option to schedule a repair specialist to fix the problem and an override command. Then instep 7586, thesystem 14 b stops the operation of theheater 7400 to prevent potential damage to theheater 7400 and the process ends. -
FIG. 81 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b ofFIG. 1 for setting various threshold limits with respect to energy consumption via a graphic user interface of the heating/cooling system 14 b and receiving alerts when energy consumption exceeds the set various threshold limits. - A heater generally consumes a large amount of energy to heat a pool and/or spa. Therefore, a user of a pool and/or spa may only heat the pool and/or spa when necessary. However, a user may inadvertently forget to turn the heater off after using the pool and/or spa or a third party (e.g., a house guest) may heat the pool and/or spa when the user is away from the pool and/or spa resulting in unexpectedly high energy consumption and utility bills. The ability to configure a heater of a heating/cooling system to set various threshold limits with respect to energy consumption via a graphic user interface and to receive alerts when energy consumption exceeds the set various threshold limits allows for responsible use of the heater and minimizing the operation costs thereof.
- As shown in
FIG. 81 , the heating/cooling system 14 b could include aheater 7400 having awater inlet pipe 7404 a, awater outlet pipe 7404 b, aheat exchanger 7402, agraphic user interface 7428, atiming circuit 7430 and a network communication andlocal control subsystem 12 b (“control subsystem 12 b”) including, but not limited to, aprocessor 22 and amemory 23. Alternatively, thecontrol subsystem 12 b could be a hardware processor including a controller in communication with thememory 23, thegraphic user interface 7428 and thetiming circuit 7430. - The
water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means. The water passes through theheater 7400 and into theheat exchanger 7402. Thewater outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa. Thegraphic user interface 7428 allows a user to configure theheater 7400 of the heating/cooling system 14 b by setting various threshold limits with respect to energy consumption. The heating/cooling system 14 b controls an operation of theheater 7400 based on the inputs to thegraphic user interface 7428 and thetiming circuit 7430 logic. Additionally, the heating/cooling system 14 b provides the user with alerts when energy consumption exceeds the set various threshold limits. - Referring to
FIGS. 1 and 2 , thecontrol subsystem 12 b could include aprocessor 22 in communication with amemory 23 including at least one of a random-access memory 24 and anon-volatile memory 30. Theprocessor 22 provides local processing capability for thecontrol subsystem 12 b. Thenon-volatile memory 30 can store one or morelocal control programs 30 for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. Theprocessor 22 is in communication with thegraphic user interface 7428 and thetiming circuit 7430 of theheater 7400. It is noted that thecontrol subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b. The components of thecontrol subsystem 12 b are discussed in more detail above in regards toFIG. 2 . -
FIGS. 82-83 areuser interface screens cooling system 14 b ofFIG. 81 . Referring toFIG. 82 , theinterface screen 7600 allows a user to configure the settings of theheater 7400. For example,input fields input fields cooling system 14 b can also allow the user to restrict the function of theheater 7400 under certain conditions. According to some embodiments of the present disclosure, the heating/cooling system 14 b can include one or more “adaptive” or “economy” modes, which the user can select, configure, and/or enable using one or more interface screens (not shown) generated by the heating/cooling system 14 b and displayed on thegraphical user interface 7428. For example, the “adaptive” or “economy” modes can minimize energy consumption while maintaining user comfort by automatically lowering the temperature setpoint of the pool or spa (thereby reducing energy demand on theheater 14 b) when the ambient outdoor temperature is warmer and by automatically raising the temperature setpoint of the pool or spa when the ambient outdoor temperature is colder. The temperature setpoint can be modified continuously based on a current temperature differential (e.g., the difference between the current ambient temperature and a user specified water temperature) or the temperature setpoint can be modified once the current ambient temperature crosses one or more predetermined thresholds. When enabled by the user, the “adaptive” or “economy” modes can increase the efficiency of theheater 14 b by 2% or more. Referring toFIG. 83 , theinterface screen 7630 allows a user to configure theheater 7400 to receive an alert when energy consumption exceeds set threshold limits under certain conditions. For example,input field 7632 allows the user to receive an alert when a gas heater runs for more than a set number of total hours in a day. Additionally,input fields - Similarly,
input fields input field 7642 allows the user to receive an alert when the heat pump runs for more than a set number of total hours in a day. Additionally,input fields - The alert can be a notification and can be transmitted to and displayed by the heating/
cooling system 14 b display or a remote device such as the smart phone/computer system 20. The alert can include, but is not limited to, an energy consumption report, an estimated utility bill and/or an override command. -
FIG. 84 is a block diagram 7770 illustrating a component schematic capable of being implemented in an embodiment of the heating/cooling system 14 b ofFIG. 1 for detecting electrical short circuits and resetting circuit protection. - Generally, a pool heater utilizes various switching devices to detect the proper function thereof. For example, a pool heater can use a bimetal switch to protect against over-temperature conditions, an air pressure switch to ensure a fan is functioning properly, a water pressure switch to ensure a water pump is functioning properly, etc. Typically, a control system of the pool heater passes an amount of current through these switches to check their operational state (i.e., the control system polls a status of the switches). However, polling the status of these switches in this manner is problematic because a ground short on the wires thereof can damage the control system, a transformer and/or a fuse of the pool heater.
- Therefore, an embodiment of the heating/
cooling system 14 b implements a method of polling the status of switching and/or sensing devices to detect electrical shorts and reset circuit protection by using at least one polymeric positive temperature coefficient (PPTC) embedding within a heater. A PPTC device is a resettable fuse and is positioned between a control module (e.g., a processor) and a switching or sensing device. For example, as shown inFIG. 84 , thePPTC 7434 a is positioned between theprocessor 22 and anair pressure switch 7436 and thePPTC device 7434 b is positioned between theprocessor 22 and awater pressure switch 7438. ThePPTC devices processor 22 or indirectly coupled to theprocessor 22 via aVbus 7432. As such, the heating/cooling system 14 b can accurately detect a problem causing high current while simultaneously protecting itself from damage. Once the detected electrical short is removed or the defective switching or sensing device is removed, normal operation of the heating/cooling system 14 b can resume. -
FIG. 85 is a block diagram illustrating components of an embodiment of the heating/cooling system 14 b ofFIG. 1 for enabling the simplified setup of replacement components via a removable memory module storing configuration data of a heater of the heating/cooling system 14 b. - Pool heater control systems have advanced such that it is necessary to incorporate more setting and configuration data and values into the control system to ensure the proper function of the pool heater. Settings such as the pool heater model number, the serial number, the BTU output, the minimum ambient temperature, the minimum water flow rate, etc. are set by the manufacturer when the pool heater is manufactured. In contrast, other settings such as a user's favorite temperature settings, preset run durations, temperature unit, maximum allowed temperature settings, pool size, etc. are set in the field when the pool heater is installed. All of these settings must be manually re-entered if it becomes necessary to replace a faulty circuit board of the pool heater. For example, a memory module in a service replacement circuit board is specially coded to indicate that it has never been configured for a specific pool heater. Therefore, after being powered ON for the first time, a user is prompted to enter the setting and configuration data and values for the pool heater to ensure that the pool heater functions properly.
- As such, the heating/
cooling system 14 b enables the simplified setup of a replacement circuit board via a removable memory module storing configuration data of a heater of the heating/cooling system 14 b. As shown inFIG. 85 , the heating/cooling system 14 b could include aheater 7400 having awater inlet pipe 7404 a, awater outlet pipe 7404 b, aheat exchanger 7402, aportable memory module 7440 and a network communication andlocal control subsystem 12 b (“control subsystem 12 b”) including, but not limited to, aprocessor 22 and amemory 23. Alternatively, thecontrol subsystem 12 b could be a hardware processor including a controller in communication with thememory 23 and theportable memory module 7440. - The
water inlet pipe 7404 a transports water from the pool/spa into the heating/cooling system 14 b via, for example, a pump or via other means. The water passes through theheater 7400 and into theheat exchanger 7402. Thewater outlet pipe 7404 b transports water out from the heating/cooling system 14 b to, for example, the pool or spa. Theportable memory module 7440 plugs into a circuit board of the heating/cooling system 14 b (not shown) and stores the configuration data of theheater 7400 of the heating/cooling system 14 b. - Referring to
FIGS. 1 and 2 , thecontrol subsystem 12 b could include aprocessor 22 in communication with amemory 23 including at least one of a random-access memory 24 and anon-volatile memory 30. Theprocessor 22 provides local processing capability for thecontrol subsystem 12 b. Thenon-volatile memory 30 can store one or morelocal control programs 30 for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. Theprocessor 22 is in communication with theportable memory module 7440 of theheater 7400. Theportable memory module 7440 can be connected to and in communication with the heating/cooling system 14 b and thecontrol subsystem 12 b via a wired or a wireless connection. When a replacement circuit board is installed, theportable memory module 7440 can instantly configure the replacement circuit board by being removed from the circuit board and plugged into the replacement circuit board. Additionally, the portable memory module 7740 can be used to store diagnostic event history, enabling the history to stay with theheater 7400 when the replacement circuit board is installed. - It is noted that the
control subsystem 12 b may be affixed to, installed within or installed remotely from the heating/cooling system 14 b. The components of thecontrol subsystem 12 b are discussed in more detail above in regards toFIG. 2 . - As discussed above,
FIGS. 73-85 illustrate components of embodiments of the heating/cooling system 14 b ofFIG. 1 and processing steps carried out by the embodiments of the heating/cooling system 14 b.FIG. 1 illustrates the overall system of the present disclosure, indicated generally at 10. Thesystem 10 includes, but is not limited to, a plurality of network communication andlocal control subsystems 12 a-h which could be installed in or connected to a plurality of pool and spa equipment 14 a-h, so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a-h. The pool and spa equipment could include, but is not limited to, apump 14 a, the heating/cooling system 14 b, asanitization system 14 c, a water feature/miscellaneous subsystem 14 d, a valve actuator/valve position 14 e, a pool/spa control system 14 f, a cleaner 14 g and alighting system 14 h. - The
control subsystems 12 a-12 h could communicate with each other over anetwork 16, which could include, but is not limited to, the Internet. Thecontrol subsystems 12 a-12 h provide “Internet-of-Things” functionality for the plurality of pool and spa equipment 14 a-14 h. It is noted thatcontrol subsystems 12 a-12 h could further include a “big data” subsystem, subsystems for receiving input from manufacturers/factories, subsystems for receiving external data/input (e.g., data from the Internet), and subsystems for receiving input from customers. Additionally and as discussed above, thecontrol subsystems 12 a-12 h could include control logic for allowing each of the pool and spa equipment 14 a-14 h to interact with each other (e.g., to exchange data and commands for controlling each other), as well as to be remotely controlled by another system such as a remote server, a “cloud” based control system, a remote computer system, a smart device (e.g., smart phone, smart speaker, smart chip embedded in the body), etc., and combinations thereof. It is noted that, as described herein, the heating/cooling system 14 b may also describe, or be described as, a heater, a cooling system, cooler, or any combination thereof. Each of the pool and spa equipment 14 a-14 h can further include a display, such as a touchscreen, a screen with a touchpad, etc. - Additionally, as can be seen in
FIG. 1 , thecontrol subsystems 12 a-12 h could also communicate with one ormore servers 18, and/or with one or more smart devices 20 (e.g., a phone, a tablet, a computer system, etc.), via thenetwork 16. Still further, an on-site control processor 19 could be in communication with the various systems shown inFIG. 1 . The on-site control processor 19 could be a pool/spa control system installed at the location of a pool or spa, a reduced-functionality pool/spa control system, or another type of control system. - As discussed below in connection with
FIGS. 86-91 , the systems and methods are discussed with reference to a swimming pool and/or a spa. However, it should be understood that systems and methods of the present disclosure can be used with any body of liquid, including but not limited to, bathtubs, water tanks, etc. It should further be noted that the system and methods will be discussed below with reference to a heating system. However, it should be understood that the systems and methods of the present disclosure can also be used with a cooling system or a heating/cooling system. As such, examples and embodiments for cooling systems will also be described below. -
FIG. 86 is a diagram illustrating components of theheating system 14 b ofFIG. 1 of the present disclosure. Theheating system 14 b includes aninlet pipe 7812, anoutlet pipe 7814, aninlet temperature sensor 7816, an outlet temperature sensor 7818, a network communication andlocal control subsystem 12 b (“control subsystem 12 b”), described in connection withFIGS. 1 and 2 , and aheater 7822. Theinlet pipe 7812 transports water from the pool/spa into theheating system 14 b via, for example, a water pump or other means. Theinlet temperature sensor 7816 measures the temperature of the water before the water enters theheater 7822. Theoutlet pipe 7814 transports water out from theheater 7822 to, for example, the pool or spa. The outlet temperature sensor 7818 measures the temperature of the water after the water leaves theheater 7822. Theinlet temperature sensor 7816 and the outlet temperature sensor 7818 can be one or more of a negative temperature coefficient thermistor, a resistance temperature detector, a thermocouple, a semiconductor-based sensor, a thermometer, or any other type of temperature sensing device. Theinlet temperature sensor 7816 and the outlet temperature sensor 7818 can be connected to and in communication with theheater 7822 and thecontrol subsystem 12 b via a wired or a wireless connection. It should be understood that theinlet temperature sensor 7816 can be positioned anywhere along theinlet pipe 7812, theheater 7822, a pump, or along other inlet components. Further, it should be understood that the outlet temperature sensor 7818 can be positioned anywhere along theoutlet pipe 7814, theheater 7822 or along other outlet components. - As described in connection with
FIGS. 1 and 2 , thecontrol subsystem 12 b could include a processor in communication with a memory including at least one of a random-access memory and a non-volatile memory. The processor provides local processing capability for thecontrol subsystem 12 b. The non-volatile memory can store one or more local control programs for providing local control of the pool and spa equipment in which thecontrol subsystem 12 b is installed. The processor is in communication with theinlet temperature sensor 7816, outlet temperature sensor 7818, and theheater 7822. - The processor can detect changes in the performance of the
heating system 14 b and control the operation of theheating system 14 b based on a calculated difference between temperature measurements taken by theinlet temperature sensor 7816 and the outlet temperature sensor 7818. It is noted that thecontrol subsystem 12 b can be affixed to, installed within, or located remotely from theheater 7822. The components of thecontrol subsystem 12 b are discussed in more detail in regards toFIGS. 1 and 2 . - The
heating system 14 b can further include a display, such as a touchscreen, a screen with a touchpad, etc. The display can be affixed to, installed within or installed remotely from theheater 7822. The display can receive user input via, for example, the touch screen, a keyboard, a remote or wireless signal, etc. The display can further show diagnostic issues, messages, instructions, etc. -
FIG. 87 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting an improperly installed heating system, indicated generally atmethod 7830. Instep 7832, the system receives a temperature command. The temperature command can be an instruction to heat the water in the pool or spa. In a first example, a user sends the temperature command by using a smart device (e.g., smart phone), or using a display and/or control buttons on theheating system 14 b to instruct theheater 7822 to heat the pool. In a second example, the system transmits the temperature command due to a predetermined condition. For example, the user can set a condition instructing theheater 7822 to activate (e.g., engage heating functions) at a predetermined time, at a predetermined temperature, etc. Those skilled in the art would understand that, in a heating/cooling system or a cooling system, the temperature command can also be an instruction to cool the water in the pool or spa. - In
step 7834, the system measures the inlet water temperature and the outlet water temperature via theinlet temperature sensor 7816 and the outlet temperature sensor 7818, respectively. In a first example, the system measures the inlet water temperature and the outlet water temperature upon receiving the temperature command. In a second example, the system measures the inlet water temperature and the outlet water temperature upon a predetermined amount of time after receiving the temperature command. The predetermined amount of time can allow for theheating system 14 b to enter a proper operational state, such as a heat exchanger of theheater 7822 heating to an optimal level. - In
step 7836, the system determines whether the inlet water temperature is greater than the outlet water temperature. When the inlet temperature is greater than the outlet temperature, the system proceeds to step 7838 and generates and transmits a diagnostic report. The diagnostic report can be a report, a message, an alert, etc. In an example, the diagnostic report is transmitted to and displayed by the display of theheating system 14 b or the smart device. The diagnostic report can include a report of the issue (e.g., incorrect piping installation), instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc. When the inlet temperature is not greater than the outlet temperature, the system proceeds to step 7840 and executes the temperature command (e.g., activates theheating system 14 b). - Those skilled in the art would understand that in a heating/cooling system or a cooling-only system, when the temperature command is an instruction to cool the water,
step 7836 can include the system determining whether the inlet water temperature is less than the outlet water temperature. When the inlet temperature is less than the outlet temperature in view of an instruction to cool the system, instep 7838, transmits a diagnostic report. Otherwise, when the inlet temperature is not less than the outlet temperature in view of an instruction to cool, the system executes the temperature command (e.g., activates the cooling system) instep 7840. -
FIG. 88 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting a low water flow rate through theheating system 14 b based on measurements of inlet and outlet water temperatures, indicated generally atmethod 7850. Instep 7852, the system determines that theheater 7822 is activated. Instep 7854, the system waits a predetermined amount of time. For example, the system can wait 15 seconds. This waiting period allows theheater 7822 to achieve a suitable flow stabilization. Those skilled in the art would understand that other time periods can also be used and that different heating systems can require different durations to achieve the suitable flow stabilization. Instep 7856, the system calculates a temperature rise. For example, thecontrol system 12 b performs a first temperature measurement at theinlet pipe 7812, a second temperature measurement at theoutlet pipe 7814, and subtracts the inlet temperature from the outlet temperature to determine the temperature rise. - In
step 7858, the system determines a maximum allowed temperature value for theheating system 14 b. In an example, the system can use a lookup table. The lookup table can include heating system types, BTU/joule size, piping sizes, capacity, a maximum allowed temperature rise value for each type/size, etc. The lookup table can be stored in the system, on the Internet (in the cloud), on a remote server, etc. Instep 7860, the system determines whether the value of the measured temperature rise is greater than the value of the maximum allowed temperature rise. When the value of the measured temperature rise is greater than the value of the maximum allowed temperature rise, the system proceeds to step 7862, and generates and transmits a diagnostic report, and shuts down the heater. Again, the diagnostic report can include a report of the issue (e.g., low flow rate), instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc. Those skilled in the art would understand thatmethod 7860 can be similarly applied to a cooling system, where a temperature drop value is calculated and compared to a lookup table including a maximum allowed temperature drop. - Importantly, the processing steps discussed above in connection with
FIGS. 87-88 could be carried out remote from the heater, e.g., in one or more of the devices shown inFIG. 1 . As shown inFIG. 1 , thesystem 10 includes, but is not limited to, a plurality of network communication andlocal control subsystems 12 a-12 h (including thecontrol subsystem 12 b) which could be installed in or connected to a plurality of pool and spa equipment 14 a-14 h (including theheating system 14 b), so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a-14 h. Thesubsystems 12 a-12 h (including thecontrol subsystem 12 b) are described in greater detail in connection withFIG. 2 . Thesubsystems 12 a-12 h could communicate with each other over thenetwork 16, which could include, but is not limited to, the Internet. Thesubsystems 12 a-12 h provide “Internet-of-Things” functionality for the plurality of pool and spa equipment 14 a-14 h. It is noted thatsubsystems 12 a-12 h could further include a “big data” subsystem, subsystems for receiving input from manufacturers/factories, subsystems for receiving external data/input (e.g., data from the Internet), and subsystems for receiving input from customers. As discussed above, thesubsystems 12 a-12 h could include control logic for allowing each of the devices 14 a-14 h to interact with each other (e.g., to exchange data and commands for controlling each other), as well as to be remotely controlled by another system such as a remote server, a “cloud” based control system, a remote computer system, a smart device (e.g., smart phone, smart speaker, smart chip embedded in the body), etc., and combinations thereof as will be discussed in greater detail below. For example, thesubsystems 12 a-12 h could be programmed to carry out the processes discussed above in connection withFIGS. 87 and 88 . - Also referring back to
FIG. 3 , which is a diagram illustrating various types of control logic in accordance with the present disclosure, for controlling various types of pool and spa equipment, it is noted that the control logic, indicated generally aspool control logic 70, could include the process steps discussed herein in connection withFIGS. 87 and 88 . Thecontrol logic 70 could be embodied as programmed instructions (software code) stored on a non-transitory computer-readable medium, and could includepump control logic 84 andheater control logic 80, which could also include the process steps discussed herein in connection withFIGS. 87 and 88 . Such logic could be installed locally (e.g., in one or more of thesubsystems 12 a-12 h), on a remote server or computer system (e.g., in theserver 18 or the smart phone/computer system 20), in the “cloud,” or in any combination of such systems shown inFIG. 1 . -
FIG. 89 is a diagram illustrating components of anotherheater system 7914 b of the present disclosure. Thesystem 7914 b includes aninlet pipe 8012, anoutlet pipe 8014, aninlet temperature sensor 8016, an outlet temperature sensor 8018, a network communication andlocal control subsystem 7912 b (“control subsystem 7912 b”), aheater 8022, an ambientair temperature sensor 8024, and arefrigerant temperature sensor 8026. Theinlet pipe 8012 transports water from the pool/spa into theheating system 7914 b via, for example, a water pump or other means. Theinlet temperature sensor 8016 measures the temperature of the water before the water enters theheater 8022. Theoutlet pipe 8014 transports water out from theheater 8022 to, for example, the pool or spa. The outlet temperature sensor 8018 measures the temperature of the water after the water leaves theheater 8022. Theinlet temperature sensor 8016, the outlet temperature sensor 8018, the ambientair temperature sensor 8024, and therefrigerant temperature sensor 8026 can be one of a negative temperature coefficient thermistor, a resistance temperature detector, a thermocouple, a semiconductor-based sensor, a thermometer, or any other type of temperature sensing device. Thetemperature sensors heater 8022 and thecontrol subsystem 7912 b via a wired or a wireless connection. It should be understood that thetemperature sensors inlet pipe 8012, theoutlet pipe 8014, theheater 8022, a pump, or along other components. - The
control subsystem 7912 b can be similar tocontrol subsystem 12 b described herein and could include a processor in communication with a memory including at least one of a random-access memory and a non-volatile memory. The processor provides local processing capability for thecontrol subsystem 7912 b. The non-volatile memory can store one or more local control programs for providing local control of the pool and spa equipment in which thecontrol subsystem 7912 b is installed. The processor is in communication with thetemperature sensors heater 8022. - The processor can detect changes in the performance of the
heating system 7914 b and control the operation of theheating system 7914 b based on a calculated difference between a temperature measurement of theinlet temperature sensor 8016 and the outlet temperature sensor 8018, a comparison of a temperature measurement of the ambientair temperature sensor 8024 and a threshold value, and a comparison of a temperature measurement of therefrigerant temperature sensor 8026 and a threshold value. It is noted that thecontrol subsystem 7912 b can be affixed to, installed within or installed remotely from theheater 8022. The components of thecontrol subsystem 7912 b, as part of thesubsystems 12 a-12 h, are discussed in more detail above in regards toFIG. 2 . - The
heating system 7914 b can further include a display, such as a touchscreen, a screen with a touchpad, etc. The display can be affixed to, installed within or installed remotely from theheater 8022. The display can receive user input via, for example, the touch screen, a keyboard, a remote or wireless signal, etc. The display can further show diagnostic issues, messages, instructions, etc. -
FIG. 90 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting frosting conditions in theheater 8022, indicated generally atmethod 8030. Instep 8032, the system determines an ambient air temperature. For example, the system uses the ambientair temperature sensor 224 to measure the ambient air temperature. Instep 8034, thesystem 7914 b determines a refrigerant temperature. For example, the system uses therefrigerant temperature sensor 8026 to measure the refrigerant temperature. - In
step 8036, the system determines whether the refrigerant temperature is less than a refrigerant temperature threshold. The refrigerant temperature threshold can be preset by a manufacture, a supplier, a user, or any other party. The refrigerant temperature threshold can be modified, either remotely or locally. For example, the refrigerant temperature threshold can be modified via wireless software update (e.g., remotely) or the user can modify the refrigerant temperature threshold using the display of theheating system 7914 b (e.g., locally). Those skilled in the art would understand that the refrigerant temperature threshold can be modified in response to, refrigerant pressure, refrigerant type, or any other factors affecting the refrigerant. When the refrigerant temperature is not less than the refrigerant temperature threshold, themethod 8030 ends. - When the refrigerant temperature is less than the refrigerant temperature threshold, the system proceeds to step 8038 and determines whether the ambient temperature is less than an ambient temperature threshold. The ambient temperature threshold can also be preset by the manufacture, the supplier, the user, or any other party, and can also be modified, either remotely or locally. Those skilled in the art would understand that the ambient temperature threshold can be modified in response to, atmospheric pressure, sea level, humidity, or any other factors.
- When the ambient temperature is less than the refrigerant temperature threshold, in
step 8040, the system executes a defrost cycle. In an example, the defrost cycle can include either deactivating the heating system 200 and allowing a heat exchanger of theheater 8022 to thaw out due to ambient air temperatures, secondary heaters, etc., or engaging a refrigerant reversing valve to heat a heat exchanger surface to thaw out the heat exchanger. The system can further send an alert or notification indicating that theheating system 7914 b has been deactivated and the defrost cycle has been activated. The alert or notification can be set to a user's smart device, to the display of theheating system 7914 b, etc. - When the ambient temperature is not less than the refrigerant temperature threshold, the system proceeds to step 8042, deactivates the heating system, and transmits a diagnostic report. The diagnostic report can be a report, a message, an alert, etc. The diagnostic report can include a report of the issue, instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc.
-
FIG. 91 is a flowchart illustrating process steps carried out by an embodiment of the system of the present disclosure for detecting and correcting a stuck reversing valve in a refrigeration system of theheating system 7914 b, indicated generally atmethod 8050. Instep 8052, the system determines whether theheating system 7914 b is in a heating mode or in a cooling mode. Instep 8054, the system measures the inlet water temperature and the outlet water temperature via theinlet temperature sensor 8016 and the outlet temperature sensor 8018, respectively. Instep 8056, the system determines whether the reversing valve is stuck. In a first embodiment, where theheating system 7914 b is in the heating mode, the system determines whether the reversing valve is stuck when the outlet water temperature is lower than the inlet water temperature. In a second embodiment, where theheating system 7914 b is in the cooling mode, the system determines whether the reversing valve is stuck when the outlet water temperature is greater than the inlet water temperature. If the system determines that the reversing valve is not stuck, themethod 8050 ends. - When the system determines that the reversing valve is stuck, the system proceeds to step 8058 and cycles the reversing valve for a predetermined period of time. The predetermined period of time can be set by a manufacture, a supplier, the user, or any other party, and can also be modified, either remotely or locally. In an embodiment, the system can disable the
heating system 7914 b prior to cycling the reversing valve for the predetermined amount of time. This is because, as understood by those skilled in the art, cycling the reversing valve can be more effective when the compressor of theheating system 7914 b is not running. In another embodiment, the system can cycle the reversing valve for a first predetermined amount of time, determine whether the reversing valve is still stuck (using, for example, the method described in step 8056), and when it is determined that the reversing value is still stuck, deactivate theheating system 7914 b and cycle the reversing valve for a second predetermined period of time. The first predetermined period of time and the second predetermined period of time can be the same or different values. - In
step 8060, the system again determines whether the reversing valve is stuck, using, for example, the method described instep 8056. It should be understood that, if theheating system 7914 b was deactivated to cycle the reversing valve, as described instep 8058, theheating system 7914 b can have to be reactivated to determine whether the reversing valve is stuck. If the system determines that the reversing valve is unstuck, themethod 8050 ends. If the system determines that the reversing valve is still stuck, the system proceeds to step 8062, transmits a diagnostic report, and deactivates theheating system 7914 b. Again, the diagnostic report can include a report of the issue (e.g., stuck reversing valve), instructions detailing how to fix the issue, an option to schedule a repair specialist, an override command, etc. - It is noted that the
system 7914 b could be implemented in the networked pool/spa system, indicated generally at 10, ofFIG. 1 . Importantly, the processing steps discussed above in connection withFIGS. 90 and 91 could be carried out remote from the heater, e.g., in one or more of the devices shown inFIG. 1 . Thesystem 10 could include the plurality of network communication andlocal control subsystems 12 a-12 h (including thecontrol subsystem 7912 b) which could be installed in or connected to a plurality of pool and spa equipment 14 a-14 h (including theheating system 7914 b), so as to provide network connectivity and remote monitoring and control of the pool and spa equipment 14 a-14 h. Additionally, thesubsystems 12 a-12 h could communicate with each other over anetwork 16, which could include, but is not limited to, the Internet. - It is also noted that the control logic, indicated generally as
pool control logic 70 ofFIG. 3 could include the process steps discussed herein in connection withFIGS. 90 and 91 , and could be embodied as programmed instructions (software code) stored on a non-transitory computer-readable medium, and could includepump control logic 84 andheater control logic 80. Such logic could be installed locally (e.g., in one or more of thesubsystems 12 a-12 h), on a remote server or computer system (e.g., in theserver 18 or the smart phone/computer system 20), in the “cloud,” or in any combination of such systems. - Having thus described the disclosure in detail, it is to be understood that the foregoing description is not intended to limit the spirit or scope thereof. What is desired to be protected by Letters Patent is set forth in the appended claims.
Claims (27)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/086,902 US20230131356A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
Applications Claiming Priority (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662286272P | 2016-01-22 | 2016-01-22 | |
US201662310510P | 2016-03-18 | 2016-03-18 | |
US201662381903P | 2016-08-31 | 2016-08-31 | |
US201662412504P | 2016-10-25 | 2016-10-25 | |
US201662414545P | 2016-10-28 | 2016-10-28 | |
US15/413,199 US20170212484A1 (en) | 2016-01-22 | 2017-01-23 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US15/886,576 US20180174207A1 (en) | 2016-01-22 | 2018-02-01 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US15/886,171 US20180224822A1 (en) | 2017-01-23 | 2018-02-01 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US15/957,482 US20180240322A1 (en) | 2016-01-22 | 2018-04-19 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US201962862982P | 2019-06-18 | 2019-06-18 | |
US16/905,661 US11720085B2 (en) | 2016-01-22 | 2020-06-18 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US18/086,902 US20230131356A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/905,661 Continuation US11720085B2 (en) | 2016-01-22 | 2020-06-18 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230131356A1 true US20230131356A1 (en) | 2023-04-27 |
Family
ID=72663103
Family Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/905,661 Active US11720085B2 (en) | 2016-01-22 | 2020-06-18 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US18/086,893 Pending US20230147296A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,880 Pending US20230146187A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,902 Pending US20230131356A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,889 Pending US20230142059A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,876 Pending US20230145734A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,904 Pending US20230145381A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,887 Pending US20230142306A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/905,661 Active US11720085B2 (en) | 2016-01-22 | 2020-06-18 | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US18/086,893 Pending US20230147296A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,880 Pending US20230146187A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/086,889 Pending US20230142059A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,876 Pending US20230145734A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,904 Pending US20230145381A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
US18/086,887 Pending US20230142306A1 (en) | 2016-01-22 | 2022-12-22 | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment |
Country Status (1)
Country | Link |
---|---|
US (8) | US11720085B2 (en) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110168832B (en) * | 2016-12-21 | 2024-01-12 | 日立能源有限公司 | Communication network for communication between power electronics and control module |
US11145203B2 (en) * | 2017-09-12 | 2021-10-12 | Google Llc | Systems and methods of hands-free assistant-requested communication |
KR102363367B1 (en) * | 2018-01-08 | 2022-02-16 | 삼성전자주식회사 | A method and an electronic device providing accessibility features |
KR102535063B1 (en) * | 2018-04-06 | 2023-05-22 | 엘지전자 주식회사 | Device and cloud server providing safty service by distinguishing electrothermic device |
FR3099014B1 (en) * | 2019-07-15 | 2021-07-09 | Somfy Activites Sa | Method of configuring the communication between at least one actuator and a remote control |
FR3098971B1 (en) * | 2019-07-15 | 2021-07-09 | Somfy Activites Sa | Wireless control method and device for actuators coupled to a wired network. |
CA3174117A1 (en) * | 2020-04-02 | 2021-10-07 | Safety Tubs Company, Llc | Bathing control system |
US11215175B2 (en) | 2020-04-17 | 2022-01-04 | Poolside Tech, LLC | Systems and methods for maintaining pool systems |
US11999633B2 (en) | 2020-04-21 | 2024-06-04 | Truox Inc. | Method and system for the remediation of aquatic facilities |
US12037263B2 (en) * | 2020-04-21 | 2024-07-16 | Truox, Inc. | Method and system for the remediation of aquatic facilities |
US11208822B2 (en) | 2020-05-01 | 2021-12-28 | Poolside Tech, LLC | Systems and methods for maintaining pool systems |
US11307600B2 (en) * | 2020-05-01 | 2022-04-19 | Poolside Tech, LLC | Systems and methods for regulating temperatures of pool systems |
US11523968B2 (en) * | 2020-10-27 | 2022-12-13 | Poolside Tech, LLC | Methods for determining fluidic flow configurations in a pool system |
US11221637B1 (en) | 2021-01-14 | 2022-01-11 | Poolside Tech, LLC | Intelligent control of simple actuators |
WO2022208361A1 (en) * | 2021-03-29 | 2022-10-06 | Fluidra Group Australia Pty Ltd. | Concepts and methods for pool system communication between connectable devices |
US20220390924A1 (en) * | 2021-06-03 | 2022-12-08 | Hayward Industries, Inc. | Modulating Pool or Spa Heater Systems and Associated Methods |
US11976491B2 (en) * | 2021-10-21 | 2024-05-07 | Rheem Manufacturing Company | Heat pump pool water heater systems and methods thereto |
AU2023205044A1 (en) * | 2022-01-06 | 2024-06-13 | Zodiac Pool Systems Llc | Hybrid heater for pools and spas |
WO2023141105A1 (en) * | 2022-01-19 | 2023-07-27 | Zodiac Pool Systems Llc | Systems and methods for pre-heating swimming pools or spas |
CO2022007146A1 (en) * | 2022-05-26 | 2023-11-30 | Awua Sas | Modular system and device for remote measurement and monitoring of distribution networks and connections |
US20230419815A1 (en) * | 2022-05-26 | 2023-12-28 | Sundance Spas, Inc. | Cover detection system for spas |
US20240012374A1 (en) * | 2022-07-06 | 2024-01-11 | Zodiac Pool Systems Llc | Managing digital connections of connected equipment and devices to pool automation systems |
WO2024026370A1 (en) * | 2022-07-26 | 2024-02-01 | Pentair, Inc. | Aquatic equipment monitoring system and method |
WO2024112817A1 (en) * | 2022-11-23 | 2024-05-30 | Hayward Industries, Inc. | Modulating pool or spa heater systems and associated methods |
WO2024130216A1 (en) * | 2022-12-16 | 2024-06-20 | Hayward Industries, Inc. | Systems and methods for smart valve control of pool and spa components and operations |
EP4418178A1 (en) * | 2023-02-16 | 2024-08-21 | Zavepower Innovative Technology AB | Device and method for energy control of a bathing system |
Family Cites Families (879)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2603234A (en) | 1952-07-15 | Relief valve operating and control | ||
US1874513A (en) | 1929-06-18 | 1932-08-30 | Gen Electric | Traffic signal controller |
US1991775A (en) | 1932-01-08 | 1935-02-19 | Raytheon Mfg Co | Variable color luminous device |
US2057186A (en) | 1934-02-07 | 1936-10-13 | Eagle Signal Corp | Signaling system and mechanism therefor |
US2096595A (en) | 1936-08-10 | 1937-10-19 | Jack C Sanford | Automatic relief valve for suction pipes |
US2250021A (en) | 1938-02-25 | 1941-07-22 | David L Hofer | Relief valve control |
US2355607A (en) | 1940-03-25 | 1944-08-15 | Shepherd Judson O'd | Control system |
US2323793A (en) | 1941-04-16 | 1943-07-06 | Charles W Clark | Traffic signaling mechanism |
US2509031A (en) | 1946-03-01 | 1950-05-23 | Bockmeyer Eldon | Apparatus for cooling fluids |
US2498818A (en) | 1947-10-03 | 1950-02-28 | Theodore Lawrence | Evaporative air cooler and conditioner |
US2572263A (en) | 1949-05-02 | 1951-10-23 | David L Hofer | Suction dredge relief valve system |
US2644400A (en) | 1950-06-24 | 1953-07-07 | David L Hofer | Control circuit for emergency relief valve of a dredge |
US2680168A (en) | 1952-07-07 | 1954-06-01 | Frank W Murphy | Safety switch |
US2767277A (en) | 1952-12-04 | 1956-10-16 | James F Wirth | Control system for power operated fluid pumps |
US2903674A (en) | 1954-08-30 | 1959-09-08 | North American Aviation Inc | Remote emergency traffic control system |
US2881409A (en) | 1955-09-07 | 1959-04-07 | Em Tec Inc | Signalling system |
US2889779A (en) | 1957-06-24 | 1959-06-09 | Hofer David Louis | Relief valve system for suction dredges |
US3020522A (en) | 1959-05-22 | 1962-02-06 | Rad O Lite Inc | Remote control system |
US3086715A (en) | 1960-10-31 | 1963-04-23 | Paul J Mineau | Aerator pump |
US3145724A (en) | 1960-11-14 | 1964-08-25 | Harry Karp | Vacuum breaking device |
US3255433A (en) | 1962-01-03 | 1966-06-07 | Rad O Lite Inc | Traffic light controller |
US3114127A (en) | 1962-03-05 | 1963-12-10 | Electronic Traffic Control Inc | Traffic light controller |
GB984968A (en) | 1962-05-04 | 1965-03-03 | Ilford Ltd | Photographic printing |
US3195556A (en) | 1962-12-26 | 1965-07-20 | Britt Tech Corp | Pressure relief valve for controlling pump |
US3257641A (en) | 1963-05-31 | 1966-06-21 | Chrys Camp Controller Inc | Emergency traffic control system |
US3252479A (en) | 1963-06-14 | 1966-05-24 | Socony Mobil Oil Co Inc | Apparatus for automatically shutting down a fluid distribution system |
US3271734A (en) | 1964-03-16 | 1966-09-06 | Tamar Electronics Ind Inc | Traffic signal controller |
US3809116A (en) | 1965-05-18 | 1974-05-07 | Santron Corp | Fluid flow control systems |
US3435213A (en) | 1965-07-19 | 1969-03-25 | Bell Telephone Labor Inc | Light modulator using light choppers |
US3320160A (en) | 1965-08-24 | 1967-05-16 | Welles Products Inc | Method and apparatus for aerating a body of liquid |
US3416729A (en) | 1966-08-12 | 1968-12-17 | Richards Of Rockford Inc | Liquid aerator |
US3528548A (en) | 1967-04-26 | 1970-09-15 | K & L Electronics Inc | Electrical circuit for temperature control of swimming pool water |
US3424090A (en) | 1967-06-26 | 1969-01-28 | Flomatcher Co Inc | Pneumatic control system and vent valve therefor |
US3572658A (en) | 1968-01-15 | 1971-03-30 | Richards Of Rockford Inc | Floating aerator |
US3594720A (en) | 1968-01-31 | 1971-07-20 | Marbelite Co | Solid-state traffic controller |
US3515375A (en) | 1968-05-22 | 1970-06-02 | Bird Machine Co | Aeration apparatus |
US3524629A (en) | 1968-07-29 | 1970-08-18 | Don A Culwell | Apparatus for and method of aerating liquids |
US3584261A (en) | 1968-08-16 | 1971-06-08 | Texas Instruments Inc | Remote control circuit breaker |
US3497185A (en) | 1968-11-20 | 1970-02-24 | Sydnor Hydrodynamics Inc | Aerating and cooling apparatus |
US3735926A (en) | 1971-05-27 | 1973-05-29 | Richards Of Rockford Inc | Liquid spray device with fixed and rotatable diffusers |
US3739986A (en) | 1971-08-17 | 1973-06-19 | Richards Of Rockford Inc | Axial flow liquid aerator |
US3781925A (en) | 1971-11-26 | 1974-01-01 | G Curtis | Pool water temperature control |
US3823767A (en) | 1972-02-29 | 1974-07-16 | Economic Development Corp | Process for treating water |
US3771724A (en) | 1972-07-19 | 1973-11-13 | Richards Of Rockford Inc | Apparatus and process for spraying liquids |
US3953551A (en) | 1973-01-22 | 1976-04-27 | Dorall Arthur G | Air cooling apparatus |
US3804049A (en) | 1973-02-12 | 1974-04-16 | R Greer | Wave force absorbing device |
US3844299A (en) | 1973-04-05 | 1974-10-29 | Hobart Mfg Co | Control circuit for dishwasher |
US3837016A (en) | 1973-04-11 | 1974-09-24 | Mms Ltd | Plural temperature level fluid heating system |
DE2355966A1 (en) | 1973-11-09 | 1975-05-22 | Medac Klinische Spezialpraep | PUMP ARRANGEMENT, ESPECIALLY FOR BLOOD PUMPS |
US4053758A (en) | 1974-06-06 | 1977-10-11 | Swan Recreational Products Limited | Underwater swimming pool illumination systems |
US3926008A (en) | 1974-08-15 | 1975-12-16 | Robert C Webber | Building cooling and pool heating system |
US3957395A (en) | 1974-11-25 | 1976-05-18 | Cla-Val Co. | Method and apparatus for controlling a pump |
US3970069A (en) | 1975-02-24 | 1976-07-20 | John Pickett | Solar heater/cooler assembly |
US4421643A (en) | 1975-10-30 | 1983-12-20 | International Telephone And Telegraph Corporation | Swimming pool filtering system |
US4153955A (en) | 1976-04-01 | 1979-05-15 | Henry Hinterberger | Solar energy converter |
US4107492A (en) | 1976-05-05 | 1978-08-15 | Robertshaw Controls Company | Pneumatic operated switch having movable flag, switch actuator mounted thereon, and switch in chamber displaced from measured flow path |
US4135144A (en) | 1977-03-07 | 1979-01-16 | David L. Kirk | Traffic light radio control system |
US4115878A (en) | 1977-03-14 | 1978-09-26 | South Pacific Industries | Spa safety drain |
US4116577A (en) | 1977-03-21 | 1978-09-26 | National Machine Company, Inc. | Flow sensing auxiliary pump by-pass valve |
US4180374A (en) | 1978-03-07 | 1979-12-25 | Bristow Elliott R | Well pump protection system |
US4404697A (en) | 1978-08-14 | 1983-09-20 | Intermatic Incorporated | Remote control system for spas |
US4189791A (en) | 1979-01-05 | 1980-02-26 | Dundas Gifford W | Swimming pool heating and cooling system |
US4233694A (en) | 1979-01-22 | 1980-11-18 | Jacuzzi Whirlpool Bath, Inc. | Spa construction and isolated controls therefor |
US4621613A (en) | 1979-01-25 | 1986-11-11 | Krumhansl Mark U | Pool and spa heating and cooling |
US4286303A (en) | 1979-03-19 | 1981-08-25 | Franklin Electric Co., Inc. | Protection system for an electric motor |
US4278403A (en) | 1979-09-06 | 1981-07-14 | Shafer Jon L | Control for hydraulic accumulator system |
US4226815A (en) | 1979-11-19 | 1980-10-07 | Cockman Haggie I | Cooling apparatus |
US4298868A (en) | 1980-04-11 | 1981-11-03 | Spurgeon John R | Electronic display apparatus |
US4329120A (en) | 1980-04-24 | 1982-05-11 | William Walters | Pump protector apparatus |
DE3026519C2 (en) | 1980-07-12 | 1984-05-30 | WSW Planungsgesellschaft mbH, 4355 Waltrop | Facility for the regeneration of silted water |
US4322297A (en) | 1980-08-18 | 1982-03-30 | Peter Bajka | Controller and control method for a pool system |
US4444546A (en) | 1980-09-19 | 1984-04-24 | Oximetrix, Inc. | Occlusion detection apparatus and method |
US4381031A (en) | 1980-10-27 | 1983-04-26 | Whitaker Larry D | Spa-domestic hot water heat exchanger |
US4456432A (en) | 1980-10-27 | 1984-06-26 | Jennings Pump Company | Emergency sump pump and alarm warning system |
US4467183A (en) | 1980-12-19 | 1984-08-21 | Ricoh Company, Ltd. | Liquid temperature control apparatus comprising initial temperature dependent high power heater drive |
US4368549A (en) | 1980-12-29 | 1983-01-18 | Teledyne Industries, Inc. | Swimming pool heater temperature control system |
US4393527A (en) | 1980-12-29 | 1983-07-19 | Teledyne Industries, Inc. | Method of controlling non-solar swimming pool heater |
US4392187A (en) | 1981-03-02 | 1983-07-05 | Vari-Lite, Ltd. | Computer controlled lighting system having automatically variable position, color, intensity and beam divergence |
US4385724A (en) | 1981-04-09 | 1983-05-31 | Ramco Manufacturing, Inc. | Apparatus for controlling the water temperature of a spa |
US4636036A (en) | 1981-09-17 | 1987-01-13 | Sasib S.P.A. | Multi-color traffic signal |
US4424438A (en) | 1981-11-05 | 1984-01-03 | Stanmar Technology | Remote actuator system |
US4402094A (en) | 1982-03-18 | 1983-09-06 | Sanders John T | Safety circulation system |
FR2530001B1 (en) | 1982-07-09 | 1988-01-08 | Raffinage Cie Francaise | PUMPING AND REGULATION GROUP FOR SOLAR HEATING SYSTEM OF A WATER TANK, ESPECIALLY A POOL |
JPS5931404A (en) | 1982-08-16 | 1984-02-20 | Hitachi Ltd | Pressure sensor circuit |
US4409694A (en) | 1982-09-30 | 1983-10-18 | John P. Barrett, Sr. | Electronic control device for liquids |
JPS5961736A (en) | 1982-10-01 | 1984-04-09 | Hitachi Ltd | Integrated pressor sensor |
JPS5967826A (en) | 1982-10-06 | 1984-04-17 | 株式会社椿本チエイン | Overload/light load protecting device for motor driven mach-ine |
JPS5991486U (en) | 1982-12-10 | 1984-06-21 | 三菱電機株式会社 | pump control device |
US4676914A (en) | 1983-03-18 | 1987-06-30 | North Coast Systems, Inc. | Microprocessor based pump controller for backwashable filter |
US4505643A (en) | 1983-03-18 | 1985-03-19 | North Coast Systems, Inc. | Liquid pump control |
US4742456A (en) | 1983-03-18 | 1988-05-03 | American Standard Inc. | Sound responsive tube control circuit |
GB8315154D0 (en) | 1983-06-02 | 1983-07-06 | Ideal Standard | Pump protection system |
US4563780A (en) | 1983-06-29 | 1986-01-14 | Pollack Simcha Z | Automated bathroom |
US4593177A (en) | 1984-05-18 | 1986-06-03 | Purex Pool Products, Inc. | Reduced differential, high limit thermostat system |
US4616215A (en) | 1984-07-31 | 1986-10-07 | Maddalena's, Inc. | Vacuum monitoring and signaling apparatus |
US4799048A (en) | 1984-09-28 | 1989-01-17 | Nippondenso Co., Ltd. | Accumulator |
US4564141A (en) | 1984-11-05 | 1986-01-14 | Doleer Electronics, Inc. | Apparatus and method for domestic hot water control |
US5076763A (en) | 1984-12-31 | 1991-12-31 | Rule Industries, Inc. | Pump control responsive to timer, delay circuit and motor current |
US4647825A (en) | 1985-02-25 | 1987-03-03 | Square D Company | Up-to-speed enable for jam under load and phase loss |
US4659235A (en) | 1985-04-16 | 1987-04-21 | Borg-Warner Automotive, Inc. | Fluid pressure sensor with temperature indication |
US4749377A (en) | 1985-05-08 | 1988-06-07 | Mendizabal Federico M | Eardrum pressure equalizer |
US4663613A (en) | 1985-07-22 | 1987-05-05 | Teledyne Industries, Inc. | Protective system for hot tub water and power supply |
US4686439A (en) | 1985-09-10 | 1987-08-11 | A. T. Hunn Company | Multiple speed pump electronic control system |
IT1200742B (en) | 1985-09-17 | 1989-01-27 | Teuco Guzzini Srl | BATHTUB WITH PERFECTED HYDROMASSAGE SYSTEM |
US4724074A (en) | 1985-10-07 | 1988-02-09 | Parker Hannifin Corporation | Self-venting drain assembly |
US4602391A (en) | 1985-10-17 | 1986-07-29 | Pearl Baths Inc. | Dynamically balanced suction relief for hydrotherapy tubs and spas |
US4703387A (en) | 1986-05-22 | 1987-10-27 | Franklin Electric Co., Inc. | Electric motor underload protection system |
US4781536A (en) | 1986-09-10 | 1988-11-01 | Hicks Russell R | Low-flow pump-off control |
US4890208A (en) | 1986-09-19 | 1989-12-26 | Lehigh University | Stage lighting apparatus |
US4780917A (en) | 1987-01-05 | 1988-11-01 | Hancock James W | Spa construction with integrated spa side and inside control system |
US5550753A (en) | 1987-05-27 | 1996-08-27 | Irving C. Siegel | Microcomputer SPA control system |
US6965815B1 (en) | 1987-05-27 | 2005-11-15 | Bilboa Instruments, Inc. | Spa control system |
US5361215A (en) | 1987-05-27 | 1994-11-01 | Siege Industries, Inc. | Spa control system |
US4732712A (en) * | 1987-05-28 | 1988-03-22 | Leslie Controls, Inc. | Steam injection water heater |
US5006044A (en) | 1987-08-19 | 1991-04-09 | Walker Sr Frank J | Method and system for controlling a mechanical pump to monitor and optimize both reservoir and equipment performance |
US4913625A (en) | 1987-12-18 | 1990-04-03 | Westinghouse Electric Corp. | Automatic pump protection system |
US4814800A (en) | 1988-03-16 | 1989-03-21 | Joshua F. Lavinsky | Light show projector |
USRE36790E (en) | 1988-08-01 | 2000-07-25 | Jincks; Danny C. | Multicolor emergency vehicle light |
US4867645A (en) | 1988-09-12 | 1989-09-19 | Foster Bailey G | Double diaphragm pressure switch for a well water system |
US6022195A (en) | 1988-09-13 | 2000-02-08 | Helix Technology Corporation | Electronically controlled vacuum pump with control module |
US4861231A (en) | 1988-11-10 | 1989-08-29 | Howard Herbert H | Liquid level sensing device |
US4936506A (en) | 1988-11-14 | 1990-06-26 | Ryan James E | Swimming pool fountain |
US4920465A (en) | 1988-11-15 | 1990-04-24 | Alopex Industries, Inc. | Floating fountain device |
US5086385A (en) | 1989-01-31 | 1992-02-04 | Custom Command Systems | Expandable home automation system |
US4930229A (en) | 1989-02-23 | 1990-06-05 | Sentry Technologies, Inc. | Method and apparatus for aeration of stored grain with proactive cooling |
GB2231138A (en) | 1989-04-26 | 1990-11-07 | Full Spectrum Lighting Inc | Computer controlled light with continuously variable colour temperature, colour, focus, magnification, and position |
US4974133A (en) | 1989-08-25 | 1990-11-27 | Iskra Industry Co., Ltd. | Lighting apparatus |
US5245221A (en) | 1989-10-23 | 1993-09-14 | American Standard Inc. | System for jetted tubs and apparatus therefor |
GB2239306B (en) | 1989-12-01 | 1993-04-28 | George Alan Limpkin | Solid state display light |
DE4010049C1 (en) | 1990-03-29 | 1991-10-10 | Grundfos International A/S, Bjerringbro, Dk | Pump unit for heating or cooling circuit - uses frequency regulator to reduce rotation of pump motor upon detected overheating |
DK164832C (en) | 1990-06-01 | 1993-01-11 | Emil Aarestrup Soerensen | VACUUM VALVE FOR USE IN A SECURITY PLANT TO REDUCE THE DANGER OF EMISSIONS FROM DAMAGE UNDER THE WATER LINE ON TANK SHIPS |
US5347664A (en) | 1990-06-20 | 1994-09-20 | Kdi American Products, Inc. | Suction fitting with pump control device |
US5167041A (en) | 1990-06-20 | 1992-12-01 | Kdi American Products, Inc. | Suction fitting with pump control device |
US5076761A (en) | 1990-06-26 | 1991-12-31 | Graco Inc. | Safety drive circuit for pump motor |
CA2051986C (en) | 1990-10-04 | 1998-06-30 | Joseph F. Bader | Programmable emergency signalling device and system |
US5117233A (en) | 1990-10-18 | 1992-05-26 | Teledyne Industries, Inc. | Spa and swimming pool remote control systems |
US5064347A (en) | 1990-11-26 | 1991-11-12 | Lavalley Sr Ronnie L | Pressure responsive fluid pump shut off and alarm system |
US5560210A (en) | 1990-12-31 | 1996-10-01 | Ormat Turbines (1965) Ltd. | Rankine cycle power plant utilizing an organ fluid and method for using the same |
US5184472A (en) | 1991-01-08 | 1993-02-09 | Pierre Guilbault | Add on heat pump swimming pool heater control |
WO1992013195A1 (en) | 1991-01-22 | 1992-08-06 | Jedray Pty. Ltd. | Safety device |
EP0500064B1 (en) | 1991-02-22 | 1996-11-06 | Smc Kabushiki Kaisha | Method of processing vacuum pressure information in a vacuum unit to provide a failure precognition signal |
JPH0526201A (en) | 1991-07-19 | 1993-02-02 | Zexel Corp | Hydraulic power unit |
US5120198A (en) | 1991-07-22 | 1992-06-09 | Clark Fayette M | Pump motor control responsive to conductive flow switch and dual timers |
US5190442A (en) | 1991-09-06 | 1993-03-02 | Jorritsma Johannes N | Electronic pumpcontrol system |
DK167891D0 (en) | 1991-10-01 | 1991-10-01 | Krueger I Systems As | PROCEDURE FOR MANAGING WASTEWATER WASTE PLANTS USING MUTIBLE CONTROL FUNCTIONS |
IT1251968B (en) | 1991-10-21 | 1995-05-27 | Watertech Srl | APPARATUS TO CONTROL THE STARTING AND STOPPING OF A WATER DISTRIBUTION NETWORK PUMP. |
US5146943A (en) | 1992-01-27 | 1992-09-15 | Mobil Oil Corporation | Apparatus for controlling the flow of a process fluid into a process vessel |
US5256948A (en) | 1992-04-03 | 1993-10-26 | Boldin Charles D | Tri-color flasher for strings of dual polarity light emitting diodes |
US5220464A (en) | 1992-05-22 | 1993-06-15 | Bob Lin | Color filter assembly driver for scanners |
DE4225072C2 (en) | 1992-07-29 | 1996-08-29 | Wagner Gmbh J | Method for protecting and stopping a motor-driven pressure generator pump for a coating device and device for carrying out the method |
US5221189A (en) | 1992-08-10 | 1993-06-22 | Firetrol, Inc. | Soft start fire pump controller |
US5244351A (en) | 1992-09-30 | 1993-09-14 | Textron Inc. | System for protecting a liquid pump |
US5410150A (en) | 1993-01-21 | 1995-04-25 | A. J. Leisure Group Ltd. | Fiber optic controller with an interface having an emitting diode and a photodetector |
US5422014A (en) | 1993-03-18 | 1995-06-06 | Allen; Ross R. | Automatic chemical monitor and control system |
US5893626A (en) | 1993-04-05 | 1999-04-13 | Poling; Thurman Quentin | Safety light with colorful rotating illumination pattern |
ITLU930005A1 (en) | 1993-04-28 | 1994-10-28 | Ugo Ciurlo | ELECTRO-MECHANICAL DEVICE FOR THE AUTOMATIC CONTROL OF WATER SYSTEMS IN GENERAL |
US5435031A (en) | 1993-07-09 | 1995-07-25 | H-Tech, Inc. | Automatic pool cleaning apparatus |
US6902378B2 (en) | 1993-07-16 | 2005-06-07 | Helix Technology Corporation | Electronically controlled vacuum pump |
US5408222A (en) | 1993-09-10 | 1995-04-18 | Yaffe; Yacob | Device for warning when a person is submerged beneath water |
US5585025A (en) | 1993-09-13 | 1996-12-17 | Softub, Inc. | SPA control circuit |
US5545012A (en) | 1993-10-04 | 1996-08-13 | Rule Industries, Inc. | Soft-start pump control system |
US5450334A (en) | 1993-11-01 | 1995-09-12 | Pulizzi Engineering, Inc. | One time programmable switched-output controller |
US5464327A (en) | 1993-12-01 | 1995-11-07 | Itt Corporation | Water pressure control system |
US5415221A (en) | 1993-12-09 | 1995-05-16 | Zakryk; John M. | Auto switching swimming pool/spa heater system |
US5809796A (en) | 1994-03-15 | 1998-09-22 | Zakryk; John M. | Self regulating pool heater unit |
US6109050A (en) | 1994-03-15 | 2000-08-29 | Zakryk; John M. | Self regulating pool heater unit |
JP2973076B2 (en) | 1994-03-16 | 1999-11-08 | 本田技研工業株式会社 | Electric pump control device |
US5477111A (en) | 1994-03-28 | 1995-12-19 | The Whitaker Corporation | Triac drive for lighting and for inductive load control |
US5624237A (en) | 1994-03-29 | 1997-04-29 | Prescott; Russell E. | Pump overload control assembly |
AUPM493394A0 (en) | 1994-04-08 | 1994-05-05 | Kienko Pty Ltd | Solar hot water heating system |
CA2183075A1 (en) | 1994-05-31 | 1995-12-07 | Robert Leslie Smith | Compact swimming pool for restrained swimming |
US6080927A (en) | 1994-09-15 | 2000-06-27 | Johnson; Colin Francis | Solar concentrator for heat and electricity |
JPH0886433A (en) | 1994-09-20 | 1996-04-02 | Osaka Gas Co Ltd | Gas discharging device for combustion equipment |
US5540555A (en) | 1994-10-04 | 1996-07-30 | Unosource Controls, Inc. | Real time remote sensing pressure control system using periodically sampled remote sensors |
US5580221A (en) | 1994-10-05 | 1996-12-03 | Franklin Electric Co., Inc. | Motor drive circuit for pressure control of a pumping system |
US6574581B1 (en) | 1994-10-25 | 2003-06-03 | Honeywell International Inc. | Profile based method for deriving a temperature setpoint using a ‘delta’ based on cross-indexing a received price-point level signal |
CA2160303C (en) | 1994-10-26 | 2000-02-01 | Patrick John Keegan | Optical data receiver employing a solar cell resonant circuit and method for remote optical data communication |
US5624394A (en) | 1994-10-28 | 1997-04-29 | Iolab Corporation | Vacuum system and a method of operating a vacuum system |
US5570481A (en) | 1994-11-09 | 1996-11-05 | Vico Products Manufacturing Co., Inc. | Suction-actuated control system for whirlpool bath/spa installations |
US5499406A (en) | 1994-12-12 | 1996-03-19 | Hydrabaths, Inc. | Safety suction assembly for use in whirlpool baths and the like |
DE4447270A1 (en) | 1994-12-30 | 1996-07-04 | Bosch Siemens Hausgeraete | Method for controlling drying processes in household clothes dryers |
US5572438A (en) | 1995-01-05 | 1996-11-05 | Teco Energy Management Services | Engery management and building automation system |
US5706191A (en) | 1995-01-19 | 1998-01-06 | Gas Research Institute | Appliance interface apparatus and automated residence management system |
US5616239A (en) | 1995-03-10 | 1997-04-01 | Wendell; Kenneth | Swimming pool control system having central processing unit and remote communication |
US5846056A (en) | 1995-04-07 | 1998-12-08 | Dhindsa; Jasbir S. | Reciprocating pump system and method for operating same |
US5707211A (en) | 1995-04-25 | 1998-01-13 | Metropolitan Industries, Inc. | Variable speed pump system with a hydropneumatic buffer/pressure tank |
US5526538A (en) | 1995-05-04 | 1996-06-18 | Hurrican Products Incorporated | Water circulation and heating system for spas |
US6090484A (en) | 1995-05-19 | 2000-07-18 | The Bergquist Company | Thermally conductive filled polymer composites for mounting electronic devices and method of application |
US5682624A (en) | 1995-06-07 | 1997-11-04 | Ciochetti; Michael James | Vacuum relief safety valve for a swimming pool filter pump system |
US5672050A (en) | 1995-08-04 | 1997-09-30 | Lynx Electronics, Inc. | Apparatus and method for monitoring a sump pump |
JP3281516B2 (en) | 1995-08-07 | 2002-05-13 | 確太郎 福田 | Aquarium purifier |
US5582509A (en) | 1995-08-17 | 1996-12-10 | Bio-Rad Laboratories, Inc. | Circulating aspirator with improved temperature control |
WO1997011448A1 (en) | 1995-09-18 | 1997-03-27 | Intellinet | User interface for home automation system |
US5842771A (en) | 1995-11-03 | 1998-12-01 | American Products, Inc. | Submersible light fixture |
US5828200A (en) | 1995-11-21 | 1998-10-27 | Phase Iii | Motor control system for variable speed induction motors |
US6059536A (en) | 1996-01-22 | 2000-05-09 | O.I.A. Llc | Emergency shutdown system for a water-circulating pump |
US5601413A (en) | 1996-02-23 | 1997-02-11 | Great Plains Industries, Inc. | Automatic low fluid shut-off method for a pumping system |
US5772403A (en) | 1996-03-27 | 1998-06-30 | Butterworth Jetting Systems, Inc. | Programmable pump monitoring and shutdown system |
US5649242A (en) | 1996-05-02 | 1997-07-15 | Eastman Kodak Company | Multi-lamp flash wheel and camera |
US5730861A (en) | 1996-05-06 | 1998-03-24 | Sterghos; Peter M. | Swimming pool control system |
KR20000015873A (en) | 1996-05-22 | 2000-03-15 | 로날드 지. 헬러 | Method for detecting the occurrence of surge in a centrifugal compressor |
US5708548A (en) | 1996-05-24 | 1998-01-13 | Cascade Systems Inc. | Protection device for a spa pack |
US7146408B1 (en) | 1996-05-30 | 2006-12-05 | Schneider Automation Inc. | Method and system for monitoring a controller and displaying data from the controller in a format provided by the controller |
DE19630614A1 (en) | 1996-07-29 | 1998-02-05 | Siemens Ag | Switchgear |
US6140987A (en) | 1996-09-18 | 2000-10-31 | Intellinet, Inc. | User interface for home automation system |
US6783328B2 (en) | 1996-09-30 | 2004-08-31 | Terumo Cardiovascular Systems Corporation | Method and apparatus for controlling fluid pumps |
US6192282B1 (en) | 1996-10-01 | 2001-02-20 | Intelihome, Inc. | Method and apparatus for improved building automation |
US5895565A (en) | 1996-10-04 | 1999-04-20 | Santa Barbara Control Systems | Integrated water treatment control system with probe failure detection |
US6657546B2 (en) | 1996-10-04 | 2003-12-02 | Pablo F. Navarro | Integrated water treatment control system with probe failure detection |
GB9621061D0 (en) | 1996-10-09 | 1996-11-27 | Frontline Display Limited | Image display apparatus |
US5725359A (en) | 1996-10-16 | 1998-03-10 | B&S Plastics, Inc. | Pool pump controller |
US5889684A (en) | 1996-10-18 | 1999-03-30 | Waterlogic International Ltd. | Computer-controlled heated and/or cooled liquid dispenser |
US5690476A (en) | 1996-10-25 | 1997-11-25 | Miller; Bernard J. | Safety device for avoiding entrapment at a water reservoir drain |
US5759414A (en) | 1996-11-07 | 1998-06-02 | Essef Corporation | Swimming pool main drain assembly |
US6295662B1 (en) | 1996-11-22 | 2001-10-02 | Softub, Inc. | Porous solenoid structure |
US6139177A (en) | 1996-12-03 | 2000-10-31 | Hewlett Packard Company | Device access and control using embedded web access functionality |
US6259978B1 (en) | 1996-12-06 | 2001-07-10 | Union Switch & Signal, Inc. | Programmable relay driver |
IT1295577B1 (en) | 1997-02-13 | 1999-05-13 | Hydroservice S R L | DEVICE FOR CONTROL OF A HYDRAULIC PUMP, WITH SELF-ADJUSTING COMPUTER PROPORTIONAL CONTROL |
US5894609A (en) | 1997-03-05 | 1999-04-20 | Barnett; Ralph L. | Safety system for multiple drain pools |
ATE261041T1 (en) | 1997-03-05 | 2004-03-15 | Plasteral Sa | OPERATION MONITORING SYSTEM OF A PUMP |
US5822807A (en) | 1997-03-24 | 1998-10-20 | Gallagher; Patrick J. | Suction relief apparatus |
GB9801877D0 (en) | 1998-01-30 | 1998-03-25 | Flucon Pumps Limited | Aerators |
US5947689A (en) | 1997-05-07 | 1999-09-07 | Scilog, Inc. | Automated, quantitative, system for filtration of liquids having a pump controller |
US6188933B1 (en) | 1997-05-12 | 2001-02-13 | Light & Sound Design Ltd. | Electronically controlled stage lighting system |
TR199700528A3 (en) | 1997-06-20 | 1999-10-21 | Arcelik A.S. | Electronic control method for drain pumps used in electrical appliances. |
WO1998059284A2 (en) | 1997-06-25 | 1998-12-30 | Samsung Electronics Co., Ltd. | Method and apparatus for creating home network macros |
US8073921B2 (en) | 1997-07-01 | 2011-12-06 | Advanced Technology Company, LLC | Methods for remote monitoring and control of appliances over a computer network |
US5984513A (en) | 1997-07-03 | 1999-11-16 | Hubbell Incorporated | Very low current microcontroller operated motion sensor |
US5947700A (en) | 1997-07-28 | 1999-09-07 | Mckain; Paul C. | Fluid vacuum safety device for fluid transfer systems in swimming pools |
US6468052B2 (en) | 1997-07-28 | 2002-10-22 | Robert M. Downey | Vacuum relief device for fluid transfer and circulation systems |
US6171073B1 (en) | 1997-07-28 | 2001-01-09 | Mckain Paul C. | Fluid vacuum safety device for fluid transfer and circulation systems |
US5991939A (en) | 1997-08-21 | 1999-11-30 | Vac-Alert Industries, Inc. | Pool safety valve |
US6053193A (en) | 1997-08-25 | 2000-04-25 | Baker, Jr.; G. Paul | Cycling, self checking pressure sensing system |
US20040052076A1 (en) | 1997-08-26 | 2004-03-18 | Mueller George G. | Controlled lighting methods and apparatus |
US7385359B2 (en) | 1997-08-26 | 2008-06-10 | Philips Solid-State Lighting Solutions, Inc. | Information systems |
US6016038A (en) | 1997-08-26 | 2000-01-18 | Color Kinetics, Inc. | Multicolored LED lighting method and apparatus |
US7352339B2 (en) | 1997-08-26 | 2008-04-01 | Philips Solid-State Lighting Solutions | Diffuse illumination systems and methods |
US7139617B1 (en) | 1999-07-14 | 2006-11-21 | Color Kinetics Incorporated | Systems and methods for authoring lighting sequences |
US6777891B2 (en) | 1997-08-26 | 2004-08-17 | Color Kinetics, Incorporated | Methods and apparatus for controlling devices in a networked lighting system |
US6975079B2 (en) | 1997-08-26 | 2005-12-13 | Color Kinetics Incorporated | Systems and methods for controlling illumination sources |
US6528954B1 (en) | 1997-08-26 | 2003-03-04 | Color Kinetics Incorporated | Smart light bulb |
US6967448B2 (en) | 1997-08-26 | 2005-11-22 | Color Kinetics, Incorporated | Methods and apparatus for controlling illumination |
US6965205B2 (en) | 1997-08-26 | 2005-11-15 | Color Kinetics Incorporated | Light emitting diode based products |
AU1924199A (en) | 1997-12-17 | 1999-07-05 | Color Kinetics Incorporated | Digitally controlled illumination methods and systems |
US7038398B1 (en) | 1997-08-26 | 2006-05-02 | Color Kinetics, Incorporated | Kinetic illumination system and methods |
US7231060B2 (en) | 1997-08-26 | 2007-06-12 | Color Kinetics Incorporated | Systems and methods of generating control signals |
US6897624B2 (en) | 1997-08-26 | 2005-05-24 | Color Kinetics, Incorporated | Packaged information systems |
US6888322B2 (en) | 1997-08-26 | 2005-05-03 | Color Kinetics Incorporated | Systems and methods for color changing device and enclosure |
US20020043938A1 (en) | 2000-08-07 | 2002-04-18 | Lys Ihor A. | Automatic configuration systems and methods for lighting and other applications |
US6717376B2 (en) | 1997-08-26 | 2004-04-06 | Color Kinetics, Incorporated | Automotive information systems |
US6774584B2 (en) | 1997-08-26 | 2004-08-10 | Color Kinetics, Incorporated | Methods and apparatus for sensor responsive illumination of liquids |
US7427840B2 (en) | 1997-08-26 | 2008-09-23 | Philips Solid-State Lighting Solutions, Inc. | Methods and apparatus for controlling illumination |
US20020074559A1 (en) | 1997-08-26 | 2002-06-20 | Dowling Kevin J. | Ultraviolet light emitting diode systems and methods |
US6292901B1 (en) | 1997-08-26 | 2001-09-18 | Color Kinetics Incorporated | Power/data protocol |
US6936978B2 (en) | 1997-08-26 | 2005-08-30 | Color Kinetics Incorporated | Methods and apparatus for remotely controlled illumination of liquids |
US7186003B2 (en) | 1997-08-26 | 2007-03-06 | Color Kinetics Incorporated | Light-emitting diode based products |
US6548967B1 (en) | 1997-08-26 | 2003-04-15 | Color Kinetics, Inc. | Universal lighting network methods and systems |
US6624597B2 (en) | 1997-08-26 | 2003-09-23 | Color Kinetics, Inc. | Systems and methods for providing illumination in machine vision systems |
US7113541B1 (en) | 1997-08-26 | 2006-09-26 | Color Kinetics Incorporated | Method for software driven generation of multiple simultaneous high speed pulse width modulated signals |
US7242152B2 (en) | 1997-08-26 | 2007-07-10 | Color Kinetics Incorporated | Systems and methods of controlling light systems |
US7764026B2 (en) | 1997-12-17 | 2010-07-27 | Philips Solid-State Lighting Solutions, Inc. | Systems and methods for digital entertainment |
US7353071B2 (en) | 1999-07-14 | 2008-04-01 | Philips Solid-State Lighting Solutions, Inc. | Method and apparatus for authoring and playing back lighting sequences |
US7014336B1 (en) | 1999-11-18 | 2006-03-21 | Color Kinetics Incorporated | Systems and methods for generating and modulating illumination conditions |
US6459919B1 (en) | 1997-08-26 | 2002-10-01 | Color Kinetics, Incorporated | Precision illumination methods and systems |
US6608453B2 (en) | 1997-08-26 | 2003-08-19 | Color Kinetics Incorporated | Methods and apparatus for controlling devices in a networked lighting system |
US7482764B2 (en) | 1997-08-26 | 2009-01-27 | Philips Solid-State Lighting Solutions, Inc. | Light sources for illumination of liquids |
US6806659B1 (en) | 1997-08-26 | 2004-10-19 | Color Kinetics, Incorporated | Multicolored LED lighting method and apparatus |
US7064498B2 (en) | 1997-08-26 | 2006-06-20 | Color Kinetics Incorporated | Light-emitting diode based products |
US20020113555A1 (en) | 1997-08-26 | 2002-08-22 | Color Kinetics, Inc. | Lighting entertainment system |
US6869204B2 (en) | 1997-08-26 | 2005-03-22 | Color Kinetics Incorporated | Light fixtures for illumination of liquids |
US6781329B2 (en) | 1997-08-26 | 2004-08-24 | Color Kinetics Incorporated | Methods and apparatus for illumination of liquids |
US6211626B1 (en) | 1997-08-26 | 2001-04-03 | Color Kinetics, Incorporated | Illumination components |
US20030133292A1 (en) | 1999-11-18 | 2003-07-17 | Mueller George G. | Methods and apparatus for generating and modulating white light illumination conditions |
US6720745B2 (en) | 1997-08-26 | 2004-04-13 | Color Kinetics, Incorporated | Data delivery track |
IT1296329B1 (en) | 1997-09-25 | 1999-06-25 | Domino Spa | SUCTION NOZZLE FOR WHIRLPOOL BATHS OR SIMILAR |
US6038712A (en) | 1997-10-08 | 2000-03-21 | Hydrabaths, Inc. | Safety suction assembly for use in whirlpool baths and the like |
US5898958A (en) | 1997-10-27 | 1999-05-04 | Quad Cities Automatic Pools, Inc. | Control circuit for delivering water and air to outlet jets in a water-filled pool |
US6003165A (en) | 1997-11-10 | 1999-12-21 | Loyd; Casey | Portable spa with safety suction shut-off |
US5985155A (en) | 1997-11-14 | 1999-11-16 | Autopilot Systems, Inc. | Method and apparatus for automatic adjustment of halogen production in a water treatment system |
US7132804B2 (en) | 1997-12-17 | 2006-11-07 | Color Kinetics Incorporated | Data delivery track |
US6260004B1 (en) | 1997-12-31 | 2001-07-10 | Innovation Management Group, Inc. | Method and apparatus for diagnosing a pump system |
US5932127A (en) | 1998-01-15 | 1999-08-03 | Maddox; Harold D. | Heater control for spa |
US6079950A (en) | 1998-01-25 | 2000-06-27 | Seneff; William | Pool recirculation control system |
US6123510A (en) | 1998-01-30 | 2000-09-26 | Ingersoll-Rand Company | Method for controlling fluid flow through a compressed fluid system |
US6145139A (en) | 1998-01-31 | 2000-11-14 | Bonn; Stephen P. | Supplementary water heater system for swimming pools and spa |
US5865601A (en) | 1998-02-06 | 1999-02-02 | Miller; Bernard J. | Safety device for avoiding entrapment at a water reservoir drain having a secondary blowing pump |
US6342841B1 (en) | 1998-04-10 | 2002-01-29 | O.I.A. Llc | Influent blockage detection system |
US6039543A (en) | 1998-05-14 | 2000-03-21 | Littleton; Jerry W. | Pump shut off system |
US6002216A (en) | 1998-06-26 | 1999-12-14 | Cedars-Sinai Medical Center | Pool lighting system, illuminator, and method therefore |
EP1090459A2 (en) | 1998-06-26 | 2001-04-11 | Color Kinetics Incorporated | Method for software driven generation of multiple simultaneous high speed pulse width modulated signals |
US6041801A (en) | 1998-07-01 | 2000-03-28 | Deka Products Limited Partnership | System and method for measuring when fluid has stopped flowing within a line |
US6050550A (en) | 1998-07-09 | 2000-04-18 | Burgess; Harry L. | Apparatus for aeration and bottom agitation for aqua-culture systems |
US6277303B1 (en) * | 1998-07-10 | 2001-08-21 | Pirelli Cable Corporation | Conductive polymer composite materials and methods of making same |
US7831930B2 (en) | 2001-11-20 | 2010-11-09 | Universal Electronics Inc. | System and method for displaying a user interface for a remote control application |
US6044901A (en) | 1998-07-31 | 2000-04-04 | Basala; Donald C. | Live well temperature management apparatus |
US6081191A (en) | 1998-07-31 | 2000-06-27 | Code 3, Inc. | Light bar having multiple levels and multiple rows of lights and having end extensions |
US6003164A (en) | 1998-07-31 | 1999-12-21 | Leaders; Homer G. | Pool monitor and controller |
US6045331A (en) | 1998-08-10 | 2000-04-04 | Gehm; William | Fluid pump speed controller |
US6099264A (en) | 1998-08-27 | 2000-08-08 | Itt Manufacturing Enterprises, Inc. | Pump controller |
US6253121B1 (en) | 1998-09-03 | 2001-06-26 | Balboa Instruments, Inc. | Control system for bathers with ground continuity and ground fault detection |
US6282370B1 (en) | 1998-09-03 | 2001-08-28 | Balboa Instruments, Inc. | Control system for bathers |
US6081944A (en) | 1998-09-09 | 2000-07-04 | Edwards; Hugh A. | Swimming pool screen enclosure supported water misting and cooling apparatus |
US6251285B1 (en) | 1998-09-17 | 2001-06-26 | Michael James Ciochetti | Method for preventing an obstruction from being trapped by suction to an inlet of a pool filter pump system, and lint trap cover therefor |
US6152577A (en) | 1998-10-05 | 2000-11-28 | Physical Optics Corporation | Remote illumination system having a light output modifying apparatus |
BR9915829A (en) | 1998-11-02 | 2001-11-13 | Code 3 Inc | Warning light for a vehicle equipped with a dichroic element |
US6954701B2 (en) | 1998-12-17 | 2005-10-11 | Watereye, Inc. | Method for remote monitoring of water treatment systems |
US6332110B1 (en) | 1998-12-17 | 2001-12-18 | Perlorica, Inc. | Method for monitoring advanced separation and/or ion exchange processes |
US6560543B2 (en) | 1998-12-17 | 2003-05-06 | Perlorica, Inc. | Method for monitoring a public water treatment system |
US6853867B1 (en) | 1998-12-30 | 2005-02-08 | Schneider Automation Inc. | Interface to a programmable logic controller |
US6098654A (en) | 1999-01-22 | 2000-08-08 | Fail-Safe, Llc | Flow blockage suction interrupt valve |
US6901439B1 (en) | 1999-01-22 | 2005-05-31 | Leviton Manufacturing Co., Inc. | Method of adding a device to a network |
DE19903404A1 (en) | 1999-01-29 | 2000-08-03 | Roemheld A Gmbh & Co Kg | Hydraulic unit |
US6186167B1 (en) | 1999-03-04 | 2001-02-13 | Fisher Controls International Inc. | Emergency shutdown test system |
US6125481A (en) | 1999-03-11 | 2000-10-03 | Sicilano; Edward N. | Swimming pool management system |
US6116040A (en) | 1999-03-15 | 2000-09-12 | Carrier Corporation | Apparatus for cooling the power electronics of a refrigeration compressor drive |
US6464464B2 (en) | 1999-03-24 | 2002-10-15 | Itt Manufacturing Enterprises, Inc. | Apparatus and method for controlling a pump system |
US6285140B1 (en) | 1999-04-21 | 2001-09-04 | Pharos Innovations Inc. | Variable-effect lighting system |
US6367541B2 (en) | 1999-05-06 | 2002-04-09 | Cool Options, Inc. | Conforming heat sink assembly |
US6084218A (en) | 1999-05-25 | 2000-07-04 | Itt Manufacturing Enterprises, Inc. | Spa heater temperature control circuit |
JP2001014911A (en) | 1999-06-28 | 2001-01-19 | Minolta Co Ltd | Lighting system |
US7233831B2 (en) | 1999-07-14 | 2007-06-19 | Color Kinetics Incorporated | Systems and methods for controlling programmable lighting systems |
ES2361969T3 (en) | 1999-07-14 | 2011-06-24 | Philips Solid-State Lighting Solutions, Inc. | SYSTEMS AND PROCEDURES TO CREATE LIGHTING SEQUENCES. |
US6227808B1 (en) | 1999-07-15 | 2001-05-08 | Hydroair A Unit Of Itt Industries | Spa pressure sensing system capable of entrapment detection |
US6241362B1 (en) | 1999-07-19 | 2001-06-05 | David J. Morrison | Lighted display emitting variable colors |
US6249435B1 (en) | 1999-08-16 | 2001-06-19 | General Electric Company | Thermally efficient motor controller assembly |
US6351079B1 (en) | 1999-08-19 | 2002-02-26 | Schott Fibre Optics (Uk) Limited | Lighting control device |
US6261065B1 (en) | 1999-09-03 | 2001-07-17 | Baxter International Inc. | System and methods for control of pumps employing electrical field sensing |
JP2001073576A (en) | 1999-09-06 | 2001-03-21 | Nichigi Engineering Co Ltd | Danger preventive system at drain outlet of pool |
US6874909B2 (en) | 2003-01-13 | 2005-04-05 | Carl R. Vanderschuit | Mood-enhancing illumination apparatus |
US6157093A (en) | 1999-09-27 | 2000-12-05 | Philips Electronics North America Corporation | Modular master-slave power supply controller |
EP1224843A1 (en) | 1999-09-29 | 2002-07-24 | Color Kinetics Incorporated | Systems and methods for calibrating light output by light-emitting diodes |
US6269493B2 (en) | 1999-10-12 | 2001-08-07 | Edwin C. Sorensen | Breakaway drain cover |
US6481973B1 (en) | 1999-10-27 | 2002-11-19 | Little Giant Pump Company | Method of operating variable-speed submersible pump unit |
US6377868B1 (en) | 1999-10-28 | 2002-04-23 | Ecolab Inc. | Data processing system for managing chemical product usage |
JP4422832B2 (en) | 1999-11-05 | 2010-02-24 | アビックス株式会社 | LED light |
US6341387B1 (en) | 1999-11-12 | 2002-01-29 | Leif Alexander Zars | Safety device and method for swimming pool drain protection |
US20020176259A1 (en) | 1999-11-18 | 2002-11-28 | Ducharme Alfred D. | Systems and methods for converting illumination |
PT1610593E (en) | 1999-11-18 | 2015-10-23 | Philips Lighting North America Corp | Generation of white light with light emitting diodes having different spectrum |
US20050174473A1 (en) | 1999-11-18 | 2005-08-11 | Color Kinetics, Inc. | Photography methods and systems |
US6676382B2 (en) | 1999-11-19 | 2004-01-13 | Campbell Hausfeld/Scott Fetzer Company | Sump pump monitoring and control system |
US6435691B1 (en) | 1999-11-29 | 2002-08-20 | Watkins Manufacturing Corporation | Lighting apparatus for portable spas and the like |
US6407469B1 (en) | 1999-11-30 | 2002-06-18 | Balboa Instruments, Inc. | Controller system for pool and/or spa |
US6184628B1 (en) | 1999-11-30 | 2001-02-06 | Douglas Ruthenberg | Multicolor led lamp bulb for underwater pool lights |
US6196471B1 (en) | 1999-11-30 | 2001-03-06 | Douglas Ruthenberg | Apparatus for creating a multi-colored illuminated waterfall or water fountain |
AU2050901A (en) | 1999-12-01 | 2001-06-12 | Chip Coolers, Inc | Thermally conductive electronic device case |
US6357889B1 (en) | 1999-12-01 | 2002-03-19 | General Electric Company | Color tunable light source |
US6616291B1 (en) | 1999-12-23 | 2003-09-09 | Rosstech Signals, Inc. | Underwater lighting assembly |
US20010032777A1 (en) | 1999-12-30 | 2001-10-25 | Finch Marshall A. | Air-gap slide switch |
DE10006755A1 (en) | 2000-02-15 | 2001-08-16 | Conducta Endress & Hauser | Measuring device used for determining physical and/or chemical properties of gases, liquids and/or solids comprises an arithmetic unit coupled to a sensor of a technical apparatus via a communication medium |
US6831679B1 (en) | 2000-02-17 | 2004-12-14 | Deepsea Power & Light Company | Video camera head with thermal feedback lighting control |
CN1223152C (en) | 2000-02-28 | 2005-10-12 | 永泰锋国际有限公司 | Intelligent home control bus |
US6973794B2 (en) | 2000-03-14 | 2005-12-13 | Hussmann Corporation | Refrigeration system and method of operating the same |
US20010047539A1 (en) | 2000-03-16 | 2001-12-06 | Lynn John M | Method and apparatus to either heat or cool a pool |
US6485465B2 (en) | 2000-03-29 | 2002-11-26 | Medtronic Minimed, Inc. | Methods, apparatuses, and uses for infusion pump fluid pressure and force detection |
US6379025B1 (en) | 2000-03-31 | 2002-04-30 | Pacfab, Inc. | Submersible lighting fixture with color wheel |
US6295661B1 (en) | 2000-04-21 | 2001-10-02 | Arthur J. Bromley | Automatic shut-off valve |
PT1422975E (en) | 2000-04-24 | 2010-07-09 | Philips Solid State Lighting | Light-emitting diode based product |
US7550935B2 (en) | 2000-04-24 | 2009-06-23 | Philips Solid-State Lighting Solutions, Inc | Methods and apparatus for downloading lighting programs |
US6636808B1 (en) | 2000-04-28 | 2003-10-21 | International Business Machines Corporation | Managing an environment via a universally accessible server system |
US6622115B1 (en) | 2000-04-28 | 2003-09-16 | International Business Machines Corporation | Managing an environment according to environmental preferences retrieved from a personal storage device |
US6570493B1 (en) | 2000-05-03 | 2003-05-27 | Eliahu Lames | Method and apparatus for operating an electrical device |
US6718213B1 (en) | 2000-06-19 | 2004-04-06 | Electric City Corporation | Variable base load energy management system and method |
US7202613B2 (en) | 2001-05-30 | 2007-04-10 | Color Kinetics Incorporated | Controlled lighting methods and apparatus |
JP4773673B2 (en) | 2000-06-21 | 2011-09-14 | フィリップス ソリッド−ステート ライティング ソリューションズ インコーポレイテッド | Method and apparatus for controlling a lighting system in response to audio input |
US6896204B1 (en) | 2000-06-29 | 2005-05-24 | The United States Of America As Represented By The Secretary Of The Navy | Water pressured destruct enhancer |
US7057140B2 (en) | 2000-06-30 | 2006-06-06 | Balboa Instruments, Inc. | Water heater |
US6943325B2 (en) | 2000-06-30 | 2005-09-13 | Balboa Instruments, Inc. | Water heater |
WO2002011497A1 (en) | 2000-07-27 | 2002-02-07 | Color Kinetics Incorporated | Lighting control using speech recognition |
AU2001273694A1 (en) | 2000-07-28 | 2002-02-13 | Color Kinetics Incorporated | Method for changing color |
US6374854B1 (en) | 2000-07-29 | 2002-04-23 | Enrique Acosta | Device for preventing permanent entrapment |
JP2004508162A (en) | 2000-08-04 | 2004-03-18 | カラー・キネティックス・インコーポレーテッド | Ultraviolet light emitting diode system and method |
US6851869B2 (en) | 2000-08-04 | 2005-02-08 | Cool Options, Inc. | Highly thermally conductive electronic connector |
US7161556B2 (en) | 2000-08-07 | 2007-01-09 | Color Kinetics Incorporated | Systems and methods for programming illumination devices |
EP1315929A4 (en) | 2000-08-31 | 2005-03-30 | Poolstore Internat Pty Ltd | Vacuum release valve and method |
AU2001288659A1 (en) | 2000-09-01 | 2002-03-13 | Color Kinetics Incorporated | Systems and methods for providing illumination in machine vision systems |
US20020069460A1 (en) | 2000-09-01 | 2002-06-13 | Ranco Incorporated Of Delaware | Flexible spa control system and method of using same |
US7292898B2 (en) | 2000-09-18 | 2007-11-06 | Balboa Instruments, Inc. | Method and apparatus for remotely monitoring and controlling a pool or spa |
JP2002094543A (en) | 2000-09-18 | 2002-03-29 | Sony Corp | Mobile information device, mobile information device access device, home network system, and access method to the home network |
US6354573B1 (en) | 2000-09-25 | 2002-03-12 | Jorge A. Morando | Swimming pool high velocity heating system |
US7303300B2 (en) | 2000-09-27 | 2007-12-04 | Color Kinetics Incorporated | Methods and systems for illuminating household products |
US6488408B1 (en) | 2000-10-06 | 2002-12-03 | Gecko Electronique, Inc. | Temperature probe mounting device for hot tub spa |
AU2002239470A1 (en) | 2000-10-23 | 2002-05-27 | Color Kinetics Incorporated | Systems and methods for digital entertainement |
EP1337784B1 (en) | 2000-10-25 | 2009-06-17 | Philips Solid-State Lighting Solutions, Inc. | Methods and apparatus for illumination of liquids |
US7489986B1 (en) | 2000-11-07 | 2009-02-10 | Gecko Alliance Group Inc. | Spa controller computer interface for spas |
US6782309B2 (en) | 2000-11-07 | 2004-08-24 | 9090-3493 Quebec, Inc. | SPA controller computer interface |
PT3168625T (en) | 2000-11-20 | 2020-04-21 | Signify North America Corp | Vehicle lighting systems |
JP2002171205A (en) | 2000-11-30 | 2002-06-14 | Matsushita Electric Works Ltd | System setting method for power line carrier terminal and device for setting power line carrier terminal |
JP3807930B2 (en) | 2000-12-01 | 2006-08-09 | 株式会社デンソー | Water heater |
US6441558B1 (en) | 2000-12-07 | 2002-08-27 | Koninklijke Philips Electronics N.V. | White LED luminary light control system |
US6497554B2 (en) | 2000-12-20 | 2002-12-24 | Carrier Corporation | Fail safe electronic pressure switch for compressor motor |
US20020135476A1 (en) | 2001-01-31 | 2002-09-26 | Mckinney Edward C. | Sound and motion activated light controller |
US6444129B1 (en) | 2001-02-09 | 2002-09-03 | Softub, Inc. | Timing of spa water treatment |
US6631309B2 (en) | 2001-02-20 | 2003-10-07 | International Business Machines Corporation | System and method to monitor datamining power usage |
AU2002238113A1 (en) | 2001-02-21 | 2002-09-12 | Color Kinetics Incorporated | Systems and methods for programming illumination devices |
US6568416B2 (en) | 2001-02-28 | 2003-05-27 | Brian L. Andersen | Fluid flow control system, fluid delivery and control system for a fluid delivery line, and method for controlling pressure oscillations within fluid of a fluid delivery line |
US6663349B1 (en) | 2001-03-02 | 2003-12-16 | Reliance Electric Technologies, Llc | System and method for controlling pump cavitation and blockage |
US6591863B2 (en) | 2001-03-12 | 2003-07-15 | Vac-Alert Ip Holdings, Llc | Adjustable pool safety valve |
US6801003B2 (en) | 2001-03-13 | 2004-10-05 | Color Kinetics, Incorporated | Systems and methods for synchronizing lighting effects |
US7038399B2 (en) | 2001-03-13 | 2006-05-02 | Color Kinetics Incorporated | Methods and apparatus for providing power to lighting devices |
WO2002077519A1 (en) | 2001-03-21 | 2002-10-03 | Supervision International, Inc. | Flexible circuit board with led lighting |
US6615594B2 (en) | 2001-03-27 | 2003-09-09 | Copeland Corporation | Compressor diagnostic system |
US6883929B2 (en) | 2001-04-04 | 2005-04-26 | Color Kinetics, Inc. | Indication systems and methods |
DE10120206A1 (en) | 2001-04-24 | 2002-10-31 | Wabco Gmbh & Co Ohg | Method for controlling a compressor |
WO2002091805A2 (en) | 2001-05-10 | 2002-11-14 | Color Kinetics Incorporated | Systems and methods for synchronizing lighting effects |
AU9344101A (en) | 2001-05-14 | 2002-11-21 | Caretaker Systems, Inc. | Cleaning system for swimming pools and the like |
US6808283B2 (en) | 2001-05-16 | 2004-10-26 | Frank Wen-Chung Tsao | Sensitive lighting fixture for construction junction box |
US7598681B2 (en) | 2001-05-30 | 2009-10-06 | Philips Solid-State Lighting Solutions, Inc. | Methods and apparatus for controlling devices in a networked lighting system |
WO2002098182A2 (en) | 2001-05-30 | 2002-12-05 | Color Kinetics Incorporated | Methods and apparatus for controlling devices in a networked lighting system |
US20080039977A1 (en) | 2001-06-01 | 2008-02-14 | Tim Clark | Method and apparatus for remotely monitoring and controlling a pool or spa |
WO2002099780A2 (en) | 2001-06-06 | 2002-12-12 | Color Kinetics Incorporated | System and methods of generating control signals |
JP2004534356A (en) | 2001-06-13 | 2004-11-11 | カラー・キネティックス・インコーポレーテッド | System and method for controlling a light system |
US20030006891A1 (en) | 2001-07-03 | 2003-01-09 | Ernst Wild | Method, computer program and device for monitoring a vacuum device |
US20090210081A1 (en) | 2001-08-10 | 2009-08-20 | Rockwell Automation Technologies, Inc. | System and method for dynamic multi-objective optimization of machine selection, integration and utilization |
US6847854B2 (en) | 2001-08-10 | 2005-01-25 | Rockwell Automation Technologies, Inc. | System and method for dynamic multi-objective optimization of machine selection, integration and utilization |
US6676831B2 (en) | 2001-08-17 | 2004-01-13 | Michael Lawrence Wolfe | Modular integrated multifunction pool safety controller (MIMPSC) |
US6886625B1 (en) | 2001-08-23 | 2005-05-03 | Cool Options, Inc. | Elastomeric heat sink with a pressure sensitive adhesive backing |
US6547529B2 (en) | 2001-08-24 | 2003-04-15 | Donald Gross | Dry tank shutdown system for pumps |
US7204602B2 (en) | 2001-09-07 | 2007-04-17 | Super Vision International, Inc. | Light emitting diode pool assembly |
US7358929B2 (en) | 2001-09-17 | 2008-04-15 | Philips Solid-State Lighting Solutions, Inc. | Tile lighting methods and systems |
WO2003024269A1 (en) | 2001-09-17 | 2003-03-27 | Color Kinetics Incorporated | Methods and apparatus for generating and modulating white light illumination conditions |
ES2390215T3 (en) | 2001-09-17 | 2012-11-07 | Philips Solid-State Lighting Solutions, Inc. | Products based on light emitting diodes |
BRPI0212667B1 (en) | 2001-09-20 | 2016-06-14 | Baker Hughes Inc | drilling system and method for drilling a wellbore |
US6798154B1 (en) | 2001-09-24 | 2004-09-28 | Challen Sullivan | Digital pool light |
JP3917835B2 (en) | 2001-09-28 | 2007-05-23 | 横河電機株式会社 | Pressurized water pump system |
US6779205B2 (en) | 2001-10-18 | 2004-08-24 | Kevin Mulvey | Vacuum surge suppressor for pool safety valve |
US6896045B2 (en) | 2001-10-24 | 2005-05-24 | Cool Shield, Inc. | Structure and method of attaching a heat transfer part having a compressible interface |
US6623245B2 (en) | 2001-11-26 | 2003-09-23 | Shurflo Pump Manufacturing Company, Inc. | Pump and pump control circuit apparatus and method |
US8337166B2 (en) | 2001-11-26 | 2012-12-25 | Shurflo, Llc | Pump and pump control circuit apparatus and method |
JP2003172301A (en) | 2001-12-04 | 2003-06-20 | Nhk Spring Co Ltd | Accumulator |
US6950725B2 (en) | 2001-12-07 | 2005-09-27 | General Electric Company | Home latch-key web based automation system |
US20030106147A1 (en) | 2001-12-10 | 2003-06-12 | Cohen Joseph D. | Propulsion-Release Safety Vacuum Release System |
US20030063900A1 (en) | 2001-12-13 | 2003-04-03 | Carter Group, Inc. | Linear electric motor controller and system for providing linear speed control |
JP2005528733A (en) | 2001-12-19 | 2005-09-22 | カラー・キネティックス・インコーポレーテッド | Method and apparatus for controlled light emission |
JP2005514715A (en) | 2002-01-08 | 2005-05-19 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Simultaneous control of application devices |
US20030171111A1 (en) | 2002-01-29 | 2003-09-11 | Tim Clark | Cellular telephone interface apparatus and methods |
ZA200200955B (en) | 2002-02-04 | 2002-08-28 | Riccardo Arthur De Wet | Management arrangement. |
EP1474633A2 (en) | 2002-02-06 | 2004-11-10 | Color Kinetics Incorporated | Controlled lighting methods and apparatus |
US20030150394A1 (en) | 2002-02-12 | 2003-08-14 | Jared Wolfe | Self-contained tropical rainforest vivarium system |
US6900742B2 (en) | 2002-02-19 | 2005-05-31 | Little Circuits, Inc. | Light control module for aviation obstruction marking |
US7132635B2 (en) | 2002-02-19 | 2006-11-07 | Color Kinetics Incorporated | Methods and apparatus for camouflaging objects |
US6837688B2 (en) | 2002-02-28 | 2005-01-04 | Standex International Corp. | Overheat protection for fluid pump |
US20030168516A1 (en) | 2002-03-06 | 2003-09-11 | Cline David J. | Integrated pool heater control system |
US6782294B2 (en) | 2002-03-22 | 2004-08-24 | Arecont Intellectual Property Holdings, Llc | Internet based distributed control system |
US7110832B2 (en) | 2002-03-22 | 2006-09-19 | Whirlpool Corporation | Energy management system for an appliance |
CA2480551A1 (en) | 2002-03-28 | 2003-10-09 | Robertshaw Controls Company | Energy management system and method |
US6957742B1 (en) | 2002-04-04 | 2005-10-25 | Pillart Paul T | Vented trap |
US7168833B2 (en) | 2002-04-05 | 2007-01-30 | General Electric Company | Automotive headlamps with improved beam chromaticity |
US6670584B1 (en) | 2002-04-10 | 2003-12-30 | Kareem I. Azizeh | Spa electric heater system using multiple spa heaters |
US20030196942A1 (en) | 2002-04-18 | 2003-10-23 | Jones Larry Wayne | Energy reduction process and interface for open or closed loop fluid systems with or without filters |
US7364488B2 (en) | 2002-04-26 | 2008-04-29 | Philips Solid State Lighting Solutions, Inc. | Methods and apparatus for enhancing inflatable devices |
US7358679B2 (en) | 2002-05-09 | 2008-04-15 | Philips Solid-State Lighting Solutions, Inc. | Dimmable LED-based MR16 lighting apparatus and methods |
JP4347794B2 (en) | 2002-05-09 | 2009-10-21 | フィリップス ソリッド−ステート ライティング ソリューションズ インコーポレイテッド | LED dimming controller |
WO2003099705A2 (en) | 2002-05-28 | 2003-12-04 | Giacaman Miguel S | Multi-device control and data communication system for fuel dispensing equipment |
US20030222782A1 (en) | 2002-06-04 | 2003-12-04 | Sylvain Gaudreau | Method and apparatus for pool alarm system |
US6672386B2 (en) | 2002-06-06 | 2004-01-06 | Baker Hughes Incorporated | Method for in-situ analysis of formation parameters |
US20040017158A1 (en) | 2002-07-26 | 2004-01-29 | Svt Technologies Private Limited, | Smart dimmer switch for maintaining constant luminance in a lighting environment |
US6772753B2 (en) * | 2002-08-05 | 2004-08-10 | Durr Industries, Inc. | Adjustable orifice plate for exhaust ducts |
ATE455451T1 (en) | 2002-08-28 | 2010-01-15 | Philips Solid State Lighting | METHODS AND SYSTEMS FOR LIGHTING ENVIRONMENTS |
AU2003268540A1 (en) | 2002-09-05 | 2004-03-29 | Color Kinetics, Inc. | Methods and systems for illuminating household products |
US20070222295A1 (en) | 2002-09-05 | 2007-09-27 | Paul Wareham | System and method for power load management |
US7244037B2 (en) | 2002-09-09 | 2007-07-17 | Nexxus Lighting, Inc. | Detachable pool light |
US7266983B2 (en) | 2002-09-12 | 2007-09-11 | Baker Hughes Incorporated | Methods to detect formation pressure |
US20060168611A1 (en) | 2002-09-23 | 2006-07-27 | Fima R G | Systems and methods for monitoring and controlling water consumption |
AU2003279157A1 (en) | 2002-10-03 | 2004-04-23 | Color Kinetics Incorporated | Methods and apparatus for illuminating environments |
US7300192B2 (en) | 2002-10-03 | 2007-11-27 | Color Kinetics Incorporated | Methods and apparatus for illuminating environments |
US7030343B2 (en) | 2002-10-03 | 2006-04-18 | Balboa Instruments, Inc. | Controller system for bathing installation |
US7257465B2 (en) | 2002-10-15 | 2007-08-14 | Rain Bird Corporation | Open architecture modularity for irrigation controllers |
US6796776B2 (en) | 2002-10-23 | 2004-09-28 | Dimension One Spas | Pumping system and method with improved screen |
US6744223B2 (en) | 2002-10-30 | 2004-06-01 | Quebec, Inc. | Multicolor lamp system |
US6827464B2 (en) | 2002-10-31 | 2004-12-07 | Supervision International, Inc. | Pool light controller |
US7632004B2 (en) | 2004-07-06 | 2009-12-15 | Tseng-Lu Chien | LED night light with more than 1 optics means |
US7740367B2 (en) | 2002-11-12 | 2010-06-22 | Nexxus Lighting, Inc. | Detachable pool light |
US20040141321A1 (en) | 2002-11-20 | 2004-07-22 | Color Kinetics, Incorporated | Lighting and other perceivable effects for toys and other consumer products |
US7356011B1 (en) | 2002-12-18 | 2008-04-08 | Mayfield Xi | Simplified configuration and security for networked wireless devices |
US7043341B2 (en) | 2002-12-31 | 2006-05-09 | Measure, Monitor And Control, Llc | Swimming pool and spa heater control system and method |
US20050072850A1 (en) | 2003-01-09 | 2005-04-07 | Cornwall Michael Anthony | Automatic water temperature control system and method |
WO2004072485A1 (en) | 2003-02-05 | 2004-08-26 | Engineered Support Systems, Inc. | Digital pressure controller for pump assembly |
US6943654B2 (en) | 2003-02-28 | 2005-09-13 | Eaton Corporation | Method and apparatus to control modular asynchronous contactors |
US6875961B1 (en) | 2003-03-06 | 2005-04-05 | Thornbury Investments, Inc. | Method and means for controlling electrical distribution |
RU2349751C2 (en) | 2003-03-10 | 2009-03-20 | Бейкер Хьюз Инкорпорейтед | Method and device for control over quality of fluid pumping-out by means of analysis of rate of fluid inflow from rock |
WO2004080291A2 (en) | 2003-03-12 | 2004-09-23 | Color Kinetics Incorporated | Methods and systems for medical lighting |
US7216188B2 (en) | 2003-03-29 | 2007-05-08 | Emc Corporation | Techniques for accessing devices through a set of serial buses automatically setting unique enclosure addresses and detecting non-unique enclosure addresses upon initialization |
US6918692B2 (en) | 2003-03-31 | 2005-07-19 | Chao Tai Electron Co., Ltd. | Decorative optical fiber artificial plant |
US7047092B2 (en) | 2003-04-08 | 2006-05-16 | Coraccess Systems | Home automation contextual user interface |
DK3419388T3 (en) | 2003-04-21 | 2020-08-24 | Signify North America Corp | TILE LIGHTING PROCEDURES AND SYSTEMS |
ES2934308T3 (en) | 2003-05-05 | 2023-02-21 | Signify North America Corp | lighting unit |
EP1623602B1 (en) | 2003-05-07 | 2007-03-07 | Koninklijke Philips Electronics N.V. | User interface for controlling light emitting diodes |
US7542251B2 (en) | 2003-05-09 | 2009-06-02 | Carter Group, Inc. | Auto-protected power modules and methods |
EP1627556A1 (en) | 2003-05-19 | 2006-02-22 | Sloanled, Inc. | Multiple led control apparatus and method |
CN2634785Y (en) | 2003-06-07 | 2004-08-18 | 金以城 | Intelligent light regulator |
US7010363B2 (en) | 2003-06-13 | 2006-03-07 | Battelle Memorial Institute | Electrical appliance energy consumption control methods and electrical energy consumption systems |
US7076813B2 (en) | 2003-07-02 | 2006-07-18 | Stetson Michael A | Pool skimmer |
US7132954B2 (en) | 2003-07-07 | 2006-11-07 | Automatic Pool Covers, Inc. | Self monitoring pool cover system |
WO2005012997A2 (en) | 2003-07-25 | 2005-02-10 | Color Kinetics, Inc. | Photography methods and systems |
US7178392B2 (en) | 2003-08-20 | 2007-02-20 | Schlumberger Technology Corporation | Determining the pressure of formation fluid in earth formations surrounding a borehole |
JP3842257B2 (en) | 2003-08-28 | 2006-11-08 | Tdk株式会社 | Lighting device |
GB0325731D0 (en) | 2003-09-09 | 2003-12-10 | Sentec Ltd | Controller circuit |
TWI329724B (en) | 2003-09-09 | 2010-09-01 | Koninkl Philips Electronics Nv | Integrated lamp with feedback and wireless control |
US7370375B2 (en) | 2003-09-25 | 2008-05-13 | Phillips Keith A | System and method of heating swimming pools and spas with steam |
US20050066433A1 (en) | 2003-09-25 | 2005-03-31 | Phillips Keith A. | System and method of heating swimming pools and spas with steam |
US7520628B1 (en) | 2003-10-23 | 2009-04-21 | Sloanled, Inc. | High flux led lamp |
AU2004222860B2 (en) | 2003-10-28 | 2010-02-18 | Pentair Pool Products, Inc. | Microprocessor controlled time domain switching of color-changing lights |
US6929516B2 (en) | 2003-10-28 | 2005-08-16 | 9090-3493 Québec Inc. | Bathing unit controller and connector system therefore |
US7719549B2 (en) | 2003-10-28 | 2010-05-18 | Pentair Water Pool And Spa, Inc. | Color changing image with backlighting |
ATE466309T1 (en) | 2003-11-20 | 2010-05-15 | Philips Solid State Lighting | LIGHTING SYSTEM MANAGER |
US7317264B2 (en) | 2003-11-25 | 2008-01-08 | Eaton Corporation | Method and apparatus to independently control contactors in a multiple contactor configuration |
US7393450B2 (en) | 2003-11-26 | 2008-07-01 | Silveri Michael A | System for maintaining pH and sanitizing agent levels of water in a water feature |
US7124819B2 (en) | 2003-12-01 | 2006-10-24 | Schlumberger Technology Corporation | Downhole fluid pumping apparatus and method |
US8540493B2 (en) | 2003-12-08 | 2013-09-24 | Sta-Rite Industries, Llc | Pump control system and method |
WO2005060309A2 (en) | 2003-12-11 | 2005-06-30 | Color Kinetics Incorporated | Thermal management methods and apparatus for lighting devices |
US7289343B2 (en) | 2003-12-17 | 2007-10-30 | Siemens Vdo Automotive Corporation | Architecture for power modules such as power inverters |
US7844367B2 (en) | 2003-12-23 | 2010-11-30 | Rain Bird Corporation | Code replacement for irrigation controllers |
US7309216B1 (en) | 2004-01-23 | 2007-12-18 | Spadola Jr Joseph | Pump control and management system |
US7327275B2 (en) | 2004-02-02 | 2008-02-05 | Gecko Alliance Group Inc. | Bathing system controller having abnormal operational condition identification capabilities |
US7112768B2 (en) | 2004-02-02 | 2006-09-26 | 9090-3493 Quebec Inc. | Temperature control system for a bathing unit |
US7176635B2 (en) | 2004-02-24 | 2007-02-13 | Musco Corporation | Apparatus and method for compensating for reduced light output of a light source having a lumen depreciation characteristic over its operational life |
US20050191184A1 (en) | 2004-03-01 | 2005-09-01 | Vinson James W.Jr. | Process flow control circuit |
US20050193485A1 (en) | 2004-03-02 | 2005-09-08 | Wolfe Michael L. | Machine for anticipatory sensing and intervention to avoid swimmer entrapment |
WO2005084339A2 (en) | 2004-03-02 | 2005-09-15 | Color Kinetics Incorporated | Entertainment lighting system |
WO2005089293A2 (en) | 2004-03-15 | 2005-09-29 | Color Kinetics Incorporated | Methods and systems for providing lighting systems |
AU2005222987B9 (en) | 2004-03-15 | 2009-10-22 | Signify North America Corporation | Power control methods and apparatus |
AU2005223267B2 (en) | 2004-03-16 | 2010-12-09 | Icontrol Networks, Inc. | Premises management system |
US7158909B2 (en) | 2004-03-31 | 2007-01-02 | Balboa Instruments, Inc. | Method and system for testing spas |
FR2868861B3 (en) | 2004-04-07 | 2007-07-27 | Azur Integration Sarl | DEVICE FOR DETECTING THE FALL OF A BODY IN A SWIMMING POOL |
US6993415B2 (en) | 2004-04-08 | 2006-01-31 | Kohler Co. | Distributed control system for a whirlpool tub |
US20110002792A1 (en) | 2004-04-09 | 2011-01-06 | Bartos Ronald P | Controller for a motor and a method of controlling the motor |
EP1585205B1 (en) | 2004-04-09 | 2017-12-06 | Regal Beloit America, Inc. | Pumping apparatus and method of detecting an entrapment in a pumping apparatus |
US8133034B2 (en) | 2004-04-09 | 2012-03-13 | Regal Beloit Epc Inc. | Controller for a motor and a method of controlling the motor |
US20080095639A1 (en) | 2006-10-13 | 2008-04-24 | A.O. Smith Corporation | Controller for a motor and a method of controlling the motor |
JP2005310571A (en) | 2004-04-22 | 2005-11-04 | Nec Saitama Ltd | Portable electronic equipment with camera function |
US20050236594A1 (en) | 2004-04-23 | 2005-10-27 | Lilly David J | Wireless remotely-operable utility flow-control valve and method |
GB2413840B (en) | 2004-05-07 | 2006-06-14 | Savage Marine Ltd | Underwater lighting |
US7484938B2 (en) | 2004-05-21 | 2009-02-03 | Stephen D Allen | Electronic control for pool pump |
DE102004026468A1 (en) | 2004-05-29 | 2005-12-22 | Daimlerchrysler Ag | Data transmission on power supply lines |
WO2006023149A2 (en) | 2004-07-08 | 2006-03-02 | Color Kinetics Incorporated | Led package methods and systems |
US7030565B2 (en) | 2004-07-27 | 2006-04-18 | Jerrell Penn Hollaway | Lamp control circuit with selectable color signals |
US7327930B2 (en) | 2004-07-29 | 2008-02-05 | Nexxus Lighting, Inc. | Modular light-emitting diode lighting system |
US7847486B2 (en) | 2004-08-04 | 2010-12-07 | Dr. LED (Holdings), Inc | LED lighting system |
US8469675B2 (en) | 2004-08-26 | 2013-06-25 | Pentair Water Pool And Spa, Inc. | Priming protection |
US7686589B2 (en) | 2004-08-26 | 2010-03-30 | Pentair Water Pool And Spa, Inc. | Pumping system with power optimization |
US8480373B2 (en) | 2004-08-26 | 2013-07-09 | Pentair Water Pool And Spa, Inc. | Filter loading |
US7845913B2 (en) | 2004-08-26 | 2010-12-07 | Pentair Water Pool And Spa, Inc. | Flow control |
US8019479B2 (en) | 2004-08-26 | 2011-09-13 | Pentair Water Pool And Spa, Inc. | Control algorithm of variable speed pumping system |
US8602745B2 (en) | 2004-08-26 | 2013-12-10 | Pentair Water Pool And Spa, Inc. | Anti-entrapment and anti-dead head function |
US7874808B2 (en) | 2004-08-26 | 2011-01-25 | Pentair Water Pool And Spa, Inc. | Variable speed pumping system and method |
US8043070B2 (en) | 2004-08-26 | 2011-10-25 | Pentair Water Pool And Spa, Inc. | Speed control |
US20060045751A1 (en) | 2004-08-30 | 2006-03-02 | Powermate Corporation | Air compressor with variable speed motor |
BRPI0514848A (en) | 2004-09-03 | 2008-06-24 | Everest International Ltd | device, apparatus, system and method for producing water and apparatus for condensing water from the air |
CA2803757C (en) | 2004-09-03 | 2015-10-20 | Watlow Electric Manufacturing Company | Power control system |
WO2006031810A2 (en) | 2004-09-10 | 2006-03-23 | Color Kinetics Incorporated | Power control methods and apparatus for variable loads |
US20060076908A1 (en) | 2004-09-10 | 2006-04-13 | Color Kinetics Incorporated | Lighting zone control methods and apparatus |
US8007653B2 (en) | 2004-09-15 | 2011-08-30 | Aquatron, Inc. | Method and appartus for operation of pool cleaner with integral chlorine generator |
US7471051B1 (en) | 2004-09-24 | 2008-12-30 | Avatar Systems Llc | Advanced low voltage lighting system |
US7167087B2 (en) | 2004-10-20 | 2007-01-23 | Balboa Instruments, Inc. | Remote SPA monitor |
EP1653255A3 (en) | 2004-10-29 | 2006-06-21 | Pentair Water Pool and Spa, Inc. | Selectable beam lens for underwater light |
US8281425B2 (en) | 2004-11-01 | 2012-10-09 | Cohen Joseph D | Load sensor safety vacuum release system |
US6990335B1 (en) | 2004-11-18 | 2006-01-24 | Charles G. Shamoon | Ubiquitous connectivity and control system for remote locations |
US20060112480A1 (en) | 2004-11-29 | 2006-06-01 | Masco Corporation | Vacuum relief valve |
US7332093B2 (en) | 2004-11-29 | 2008-02-19 | Kruger Off-Shore A/S | Method for water purification |
US7440820B2 (en) | 2004-11-30 | 2008-10-21 | Gecko Alliance Group Inc. | Water flow detection system for a bathing unit |
US7236692B2 (en) | 2004-12-01 | 2007-06-26 | Balboa Instruments, Inc. | Spa heater system and methods for controlling |
JP2006160874A (en) | 2004-12-07 | 2006-06-22 | Daicel Degussa Ltd | Method for producing resin particle |
US7390399B2 (en) | 2004-12-21 | 2008-06-24 | Siemens Water Technologies Holding Corp. | Water treatment control systems and methods of use |
EP1834510A2 (en) | 2005-01-06 | 2007-09-19 | S.C. Johnson & Son, Inc. | Method and apparatus for storing and defining light shows |
US7357525B2 (en) | 2005-02-22 | 2008-04-15 | Kevin Doyle | LED pool or spa light having unitary lens body |
WO2006093889A2 (en) | 2005-02-28 | 2006-09-08 | Color Kinetics Incorporated | Configurations and methods for embedding electronics or light emitters in manufactured materials |
WO2006094346A1 (en) | 2005-03-08 | 2006-09-14 | Grant Harold Amor | Led lighting apparatus in a plastic housing |
US7584897B2 (en) | 2005-03-31 | 2009-09-08 | Honeywell International Inc. | Controller system user interface |
US7417834B2 (en) | 2005-04-22 | 2008-08-26 | Balboa Instruments, Inc. | Shutoff system for pool or spa |
JP4442503B2 (en) | 2005-04-25 | 2010-03-31 | パナソニック電工株式会社 | Operation switch wiring device and handle member used therefor |
US7569150B2 (en) | 2005-06-20 | 2009-08-04 | Ecolab Inc. | Dual generator single power source for tandem pool and spa |
US7619181B2 (en) | 2005-07-12 | 2009-11-17 | Gecko Alliance Group Inc. | Heating system for bathing unit |
US7283884B2 (en) | 2005-07-27 | 2007-10-16 | Pool Power Llc | Methods providing for remote system design of retrofit circulation system for a pool |
WO2007018971A1 (en) | 2005-08-02 | 2007-02-15 | Henkin-Laby, Llc | Method and apparatus for improving performance of suction powered pool cleaning systems |
WO2007030470A2 (en) | 2005-09-07 | 2007-03-15 | Comverge, Inc. | Local power consumption load control |
US20070094784A1 (en) | 2005-09-07 | 2007-05-03 | Trong Tran | Spa air system |
WO2007047827A1 (en) | 2005-10-18 | 2007-04-26 | Aquatron Inc. | Customized programmable pool cleaner method and apparatus |
NZ571827A (en) | 2005-10-26 | 2010-03-26 | Pentair Water Pool & Spa Inc | LED pool and spa light |
US7705240B2 (en) | 2005-10-27 | 2010-04-27 | Pentair Water Pool And Spa, Inc. | Cord seal for swimming pool and spa light niches |
US7910943B2 (en) | 2005-11-01 | 2011-03-22 | Nexxus Lighting, Inc. | Light emitting diode fixture and heat sink |
US7303301B2 (en) | 2005-11-01 | 2007-12-04 | Nexxus Lighting, Inc. | Submersible LED light fixture |
US7398138B2 (en) | 2005-11-10 | 2008-07-08 | Zodiac Pool Care, Inc. | Swimming pool and spa controller systems and equipment |
US7514652B2 (en) | 2005-11-16 | 2009-04-07 | Elnar Joseph G | Spa with circuit for detecting excessive ground current |
KR20070062669A (en) | 2005-12-13 | 2007-06-18 | 이성재 | An electric lamp socket with remote controlled illumination function |
US8645149B2 (en) | 2006-01-23 | 2014-02-04 | Balboa Water Group, Inc. | Testing method and system |
US7225058B1 (en) | 2006-01-25 | 2007-05-29 | Hunter Industries, Inc. | Modular irrigation controller with indirectly powered station modules |
ES2548757T3 (en) | 2006-02-09 | 2015-10-20 | Hayward Industries, Inc. | Programmable temperature control system for pools and spas |
US7837344B2 (en) | 2006-03-17 | 2010-11-23 | Lutron Electronics Co., Inc. | Traditional-opening dimmer switch having a multi-functional button |
CN1829404A (en) | 2006-03-24 | 2006-09-06 | 谭建文 | Color-changing rainbow lamp |
US20070251461A1 (en) | 2006-04-28 | 2007-11-01 | Biomatix Systems | Remote Aquatic Environment Control And Monitoring Systems, Processes, and Methods of Use Thereof |
US7631110B2 (en) | 2006-05-03 | 2009-12-08 | Standard Microsystems Corporation | Address assignment through device ID broadcast |
US7872423B2 (en) | 2008-02-19 | 2011-01-18 | Lutron Electronics Co., Inc. | Smart load control device having a rotary actuator |
US20070299562A1 (en) | 2006-06-26 | 2007-12-27 | Lawrence Kates | Method and apparatus for temperature-based load management metering in an electric power system |
US7931447B2 (en) | 2006-06-29 | 2011-04-26 | Hayward Industries, Inc. | Drain safety and pump control device |
US20090038696A1 (en) | 2006-06-29 | 2009-02-12 | Levin Alan R | Drain Safety and Pump Control Device with Verification |
US7294026B1 (en) | 2006-07-20 | 2007-11-13 | Panduit Corp. | RS-485 connector plug and housing |
US7745959B2 (en) | 2006-09-22 | 2010-06-29 | Siemens Industry, Inc. | Integrated lighting control panel with analog inputs/outputs |
US20080082661A1 (en) | 2006-10-02 | 2008-04-03 | Siemens Medical Solutions Usa, Inc. | Method and Apparatus for Network Monitoring of Communications Networks |
US20080251602A1 (en) | 2006-10-10 | 2008-10-16 | Curtis Stephen Leggett | Wireless Irrigation and Trespasser Deterrent Control System (WITDCS) |
US20080095638A1 (en) | 2006-10-13 | 2008-04-24 | A.O. Smith Corporation | Controller for a motor and a method of controlling the motor |
US7690897B2 (en) | 2006-10-13 | 2010-04-06 | A.O. Smith Corporation | Controller for a motor and a method of controlling the motor |
WO2008066619A1 (en) | 2006-10-19 | 2008-06-05 | Travis Sparks | Pool light with safety alarm and sensor array |
US7756556B2 (en) | 2006-11-14 | 2010-07-13 | Leviton Manufacturing Company, Inc. | RF antenna integrated into a control device installed into a wall switch box |
US7553040B2 (en) | 2006-11-14 | 2009-06-30 | Pentair Water Pool And Spa, Inc. | Underwater pool light |
WO2008067402A2 (en) | 2006-11-28 | 2008-06-05 | Hayward Industries, Inc. | Programmable underwater lighting system |
AU2013270529B2 (en) | 2006-11-28 | 2015-05-07 | Hayward Industries, Inc. | Programmable underwater lighting system |
AU2012244365B2 (en) | 2006-12-11 | 2015-11-26 | Danfoss Low Power Drives | Speed control |
US7826502B2 (en) | 2006-12-14 | 2010-11-02 | Jds Uniphase Corporation | Circuit and method for lessening noise in a laser system having a frequency converting element |
WO2008086114A2 (en) | 2007-01-03 | 2008-07-17 | Gridpoint, Inc. | Utility console for controlling energy resources |
US20080167931A1 (en) | 2007-01-04 | 2008-07-10 | Richard Allen Gerstemeier | Community resource management systems and methods |
US8104110B2 (en) | 2007-01-12 | 2012-01-31 | Gecko Alliance Group Inc. | Spa system with flow control feature |
US8364846B2 (en) | 2007-02-02 | 2013-01-29 | Silver Spring Networks, Inc. | Method and system of providing IP-based packet communications with in-premisis devices in a utility network |
US8306051B2 (en) | 2007-02-08 | 2012-11-06 | Lutron Electronics Co., Inc. | Communication protocol for a lighting control system |
US8190301B2 (en) | 2008-02-19 | 2012-05-29 | Genea Energy Partners, Inc. | Building optimization system and lighting switch with adaptive blind, window and air quality controls |
CA2579949C (en) | 2007-02-26 | 2015-02-24 | Groupe Gecko Alliance Inc. | Bathing unit control unit with multimedia functionality and docking module for use in connection with same |
WO2008104056A1 (en) | 2007-02-26 | 2008-09-04 | Groupe Gecko Alliance Inc. | A method, device and system for use in configuring a bathing unit controller |
US8080905B2 (en) | 2007-02-27 | 2011-12-20 | Delta Systems, Inc. | Control system |
US7653443B2 (en) | 2007-03-01 | 2010-01-26 | Daniel Flohr | Methods, systems, circuits and computer program products for electrical service demand management |
US7983795B2 (en) | 2007-03-08 | 2011-07-19 | Kurt Josephson | Networked electrical interface |
US9013322B2 (en) | 2007-04-09 | 2015-04-21 | Lufkin Industries, Llc | Real-time onsite internet communication with well manager for constant well optimization |
US7948190B2 (en) | 2007-04-10 | 2011-05-24 | Nexxus Lighting, Inc. | Apparatus and methods for the thermal regulation of light emitting diodes in signage |
US7991513B2 (en) | 2007-05-08 | 2011-08-02 | Ecodog, Inc. | Electric energy bill reduction in dynamic pricing environments |
US7632402B2 (en) | 2007-05-13 | 2009-12-15 | King Technology, Inc. | Control system |
US8774972B2 (en) | 2007-05-14 | 2014-07-08 | Flowserve Management Company | Intelligent pump system |
US20080297068A1 (en) | 2007-06-01 | 2008-12-04 | Nexxus Lighting, Inc. | Method and System for Lighting Control |
US20080311898A1 (en) | 2007-06-13 | 2008-12-18 | Benco David S | Network support for swimming pool monitoring and control |
US20090016901A1 (en) | 2007-07-11 | 2009-01-15 | Morris Iii Harry E | Self-priming electronic metering pump and priming methodology |
US7702421B2 (en) | 2007-08-27 | 2010-04-20 | Honeywell International Inc. | Remote HVAC control with building floor plan tool |
US8805552B2 (en) | 2007-08-28 | 2014-08-12 | Causam Energy, Inc. | Method and apparatus for actively managing consumption of electric power over an electric power grid |
US7838803B1 (en) | 2007-09-07 | 2010-11-23 | Howard Rosen | Electric baseboard heater control |
US8112164B2 (en) | 2007-09-27 | 2012-02-07 | Balboa Instruments, Inc. | Low maintenance spa control system |
US8160752B2 (en) | 2008-09-30 | 2012-04-17 | Zome Networks, Inc. | Managing energy usage |
US20090094173A1 (en) | 2007-10-05 | 2009-04-09 | Adaptive Logic Control, Llc | Intelligent Power Unit, and Applications Thereof |
US20090138131A1 (en) | 2007-10-22 | 2009-05-28 | Zodiac Pool Systems, Inc. | Residential Environmental Management control System with Sprinkler Control Module |
US20090143917A1 (en) | 2007-10-22 | 2009-06-04 | Zodiac Pool Systems, Inc. | Residential Environmental Management Control System Interlink |
EP2212617B1 (en) | 2007-10-25 | 2014-10-01 | Nexxus Lighting, Inc. | Apparatus and methods for thermal management of electronic devices |
CN101919303B (en) | 2007-10-25 | 2013-11-06 | 思达伦特网络有限责任公司 | Interworking gateway for mobile nodes |
EP2212879B1 (en) | 2007-10-29 | 2019-08-21 | Pentair Water Pool and Spa, Inc. | Led light controller system and method |
US9320105B2 (en) | 2007-10-29 | 2016-04-19 | Pentair Water Pool And Spa, Inc. | LED light controller system and method |
AU2008326432B2 (en) | 2007-11-19 | 2013-03-21 | Nexxus Lighting, Inc. | Apparatus and methods for thermal management of light emitting diodes |
WO2009067558A2 (en) | 2007-11-19 | 2009-05-28 | Nexxus Lighting, Inc. | Apparatus and method for thermal dissipation in a light |
EP2215550A1 (en) | 2007-11-25 | 2010-08-11 | Trilliant Networks, Inc. | Energy use control system and method |
US8468165B2 (en) | 2007-12-02 | 2013-06-18 | Leviton Manufacturing Company, Inc. | Method for discovering network of home or building control devices |
US20090151801A1 (en) | 2007-12-12 | 2009-06-18 | John Gorman | Method, system and apparatus for an efficient design and operation of a pump motor |
US8145357B2 (en) | 2007-12-20 | 2012-03-27 | Zodiac Pool Systems, Inc. | Residential environmental management control system with automatic adjustment |
WO2009092031A1 (en) | 2008-01-16 | 2009-07-23 | Lights, Camera, Action Llc | Submersible high illumination led light source |
US8255090B2 (en) | 2008-02-01 | 2012-08-28 | Energyhub | System and method for home energy monitor and control |
US20090200245A1 (en) | 2008-02-08 | 2009-08-13 | Steinbrueck Brett D | System for Controlling Water in an Aquatic Facility |
CA2653249C (en) | 2008-02-08 | 2017-11-28 | Chris Love | Pool temperature controller |
US8552843B2 (en) | 2008-02-12 | 2013-10-08 | Smk Manufacturing | Universal remote controller having home automation function |
US8014902B2 (en) | 2008-02-22 | 2011-09-06 | Lawrence Kates | Method and apparatus for energy-efficient temperature-based systems management |
US8823277B2 (en) | 2008-04-14 | 2014-09-02 | Digital Lumens Incorporated | Methods, systems, and apparatus for mapping a network of lighting fixtures with light module identification |
US8239073B2 (en) | 2008-04-17 | 2012-08-07 | Asoka Usa Corporation | Systems and methods for controlling energy consumption |
US8731689B2 (en) | 2008-05-06 | 2014-05-20 | Abl Ip Holding, Llc | Networked, wireless lighting control system with distributed intelligence |
EP3249893A1 (en) | 2008-06-03 | 2017-11-29 | Whirlpool Corporation | Appliance development toolkit |
CN101615104B (en) | 2008-06-25 | 2012-05-30 | 鸿富锦精密工业(深圳)有限公司 | System for switching hard disks and switching method |
US8143811B2 (en) | 2008-06-25 | 2012-03-27 | Lumetric, Inc. | Lighting control system and method |
US8121737B2 (en) | 2008-07-07 | 2012-02-21 | Control4 Corporation | Systems and methods for presenting saving opportunities for electronic edvices |
US8226374B2 (en) | 2008-07-24 | 2012-07-24 | Nidec Motor Corporation | Variable motor drive system for a reservoir with circulating fluid |
US20100025483A1 (en) | 2008-07-31 | 2010-02-04 | Michael Hoeynck | Sensor-Based Occupancy and Behavior Prediction Method for Intelligently Controlling Energy Consumption Within a Building |
DE102008035756A1 (en) | 2008-07-31 | 2010-02-04 | Robert Bosch Gmbh | Apparatus and method for reducing the energy consumption of a machine or plant |
US8396678B2 (en) | 2008-08-11 | 2013-03-12 | Edward L. Davis | Peakpower energy management and control system method and apparatus |
JP5029536B2 (en) | 2008-08-20 | 2012-09-19 | アンデン株式会社 | Relay device |
US8228002B2 (en) | 2008-09-05 | 2012-07-24 | Lutron Electronics Co., Inc. | Hybrid light source |
US7953518B2 (en) | 2008-09-08 | 2011-05-31 | Microsoft Corporation | Energy cost reduction and ad delivery |
US9107273B2 (en) | 2008-09-11 | 2015-08-11 | Switch Bulb Company, Inc. | End-of-life bulb circuitry |
AU2009302593B2 (en) | 2008-10-06 | 2015-05-28 | Danfoss Low Power Drives | Method of operating a safety vacuum release system |
US8523372B2 (en) | 2008-11-07 | 2013-09-03 | Idd Aerospace Corporation | Lighting systems |
US20100138007A1 (en) | 2008-11-21 | 2010-06-03 | Qwebl, Inc. | Apparatus and method for integration and setup of home automation |
TWI359650B (en) | 2008-12-24 | 2012-03-11 | Dartpoint Tech Co Ltd | Massage bathtub automatic control system and metho |
US20100157599A1 (en) | 2008-12-24 | 2010-06-24 | Hayward Industries, Inc. | Method and Apparatus for Forming a Thermal Interface for an Electronic Assembly |
WO2010083334A1 (en) | 2009-01-14 | 2010-07-22 | Integral Analytics, Inc. | Optimization of microgrid energy use and distribution |
US8706650B2 (en) | 2009-01-14 | 2014-04-22 | Integral Analytics, Inc. | Optimization of microgrid energy use and distribution |
US20100185972A1 (en) | 2009-01-21 | 2010-07-22 | Sherwood Ii Trevor | Portable device for pool operation management |
EP2389618A2 (en) | 2009-01-23 | 2011-11-30 | Acro Associates | Fluid control platform, fluid control systems, intelligent fluid control components and optical aperture sensors |
US10006214B2 (en) | 2009-01-28 | 2018-06-26 | Pentair Water Pool And Spa, Inc. | pH balancing dispenser and system with piercing opener |
US8393550B2 (en) | 2009-01-30 | 2013-03-12 | Tim Simon, Inc. | Thermostat assembly with removable communication module and method |
US20100211509A1 (en) | 2009-02-17 | 2010-08-19 | Jacobs Richard B | Resource monitoring device |
CA2693930C (en) | 2009-02-23 | 2016-04-19 | Panasonic Electric Works Co., Ltd. | Monitoring and control device |
JP4703736B2 (en) | 2009-03-02 | 2011-06-15 | 株式会社東芝 | Energy management system and method |
US8246189B2 (en) | 2009-03-26 | 2012-08-21 | Whitemike, Llc | Underwater light system |
DE112010003256T5 (en) | 2009-04-09 | 2013-01-31 | E3 Greentech Enterprises, Inc. | System and method for energy consumption management |
US8200373B2 (en) | 2009-04-23 | 2012-06-12 | Pentair Water Pool And Spa, Inc. | Energy production and consumption matching system |
US8190697B2 (en) | 2009-05-20 | 2012-05-29 | Square D Company | Automated configuration of device communication settings |
US20100294751A1 (en) | 2009-05-22 | 2010-11-25 | Innovative Engineering & Product Development, Inc. | Variable frequency heating controller |
WO2010141497A1 (en) | 2009-06-01 | 2010-12-09 | Richard Deverse | Automated system for monitoring and maintenance of fluid level in swimming pools and other contained bodies of water |
US9556874B2 (en) | 2009-06-09 | 2017-01-31 | Pentair Flow Technologies, Llc | Method of controlling a pump and motor |
US8178997B2 (en) | 2009-06-15 | 2012-05-15 | Google Inc. | Supplying grid ancillary services using controllable loads |
US8259456B2 (en) | 2009-06-23 | 2012-09-04 | Balboa Water Group, Inc. | Environmentally sealed inductive sensor assembly |
US20100328314A1 (en) | 2009-06-26 | 2010-12-30 | Donald B. Ellingham | Methods, apparatus and system for energy conservation |
US8618717B2 (en) | 2009-07-02 | 2013-12-31 | Sierra Wireless, Inc. | System and method for connection to a wireless network |
US20120158336A1 (en) | 2009-07-10 | 2012-06-21 | KIereo | Management of a number of swimming pools |
US20110015797A1 (en) | 2009-07-14 | 2011-01-20 | Daniel Gilstrap | Method and apparatus for home automation and energy conservation |
EP2454201B1 (en) | 2009-07-16 | 2018-07-18 | Watkins Manufacturing Corporation | Method of purifying water in a spa |
US8509954B2 (en) | 2009-08-21 | 2013-08-13 | Allure Energy, Inc. | Energy management system and method |
US8367007B2 (en) | 2009-07-31 | 2013-02-05 | Otero Edward R | Feedback stabilized ozone generator circuit |
US8406933B2 (en) | 2009-08-18 | 2013-03-26 | Control4 Corporation | Systems and methods for estimating the effects of a request to change power usage |
ES2575219T3 (en) | 2009-09-30 | 2016-06-27 | Fu, Guilan | Automatic cleaning machine with a combination of impeller and clutch of hydraulic drive jaw |
US20110082599A1 (en) | 2009-10-06 | 2011-04-07 | Makarand Shinde | Optimizing Utility Usage by Smart Monitoring |
US20110093099A1 (en) | 2009-10-16 | 2011-04-21 | Newport Controls | Controller system adapted for spa |
EP2494104A4 (en) | 2009-10-26 | 2014-05-07 | Lg Electronics Inc | Device and method for controlling electric product |
CN102598580A (en) | 2009-10-26 | 2012-07-18 | Lg电子株式会社 | Network system and method of controlling the same |
US8334656B2 (en) | 2009-11-03 | 2012-12-18 | Msi, Llc | Replaceable lighting unit with adjustable output intensity and optional capability for reporting usage information, and method of operating same |
CA2730873A1 (en) | 2010-02-05 | 2011-08-05 | James Keirstead | Wireless control system for a spa |
US8489779B2 (en) | 2010-02-09 | 2013-07-16 | Honeywell International Inc. | Systems and methods for auto addressing in a control network |
GB2477776A (en) | 2010-02-12 | 2011-08-17 | Haven Ltd | Valve with leak detector |
US20110202293A1 (en) | 2010-02-15 | 2011-08-18 | General Electric Company | Diagnostics using sub-metering device |
EP2526299A1 (en) | 2010-02-25 | 2012-11-28 | Hayward Industries, Inc. | Pump controller with external device control capability |
AU2010101532A4 (en) | 2010-03-04 | 2016-01-28 | Astral Pool Australia Pty Ltd | Underwater lamp |
US8953117B2 (en) | 2010-03-19 | 2015-02-10 | Balboa Water Group, Inc. | Vented waterproof touch screen panel |
US9069201B2 (en) | 2010-03-19 | 2015-06-30 | Balboa Wter Group, Inc. | Waterproof user interface display panels |
US9173267B2 (en) | 2010-04-01 | 2015-10-27 | Michael L. Picco | Modular centralized lighting control system for buildings |
US20130024306A1 (en) | 2010-04-07 | 2013-01-24 | Silver Spring Networks, Inc. | Systems and methods for charging electric vehicles |
US20110267834A1 (en) | 2010-04-28 | 2011-11-03 | Hayward Industries, Inc. | Underwater Light Having A Sealed Polymer Housing and Method of Manufacture Therefor |
WO2011143736A1 (en) | 2010-05-21 | 2011-11-24 | Gecko Alliance Group Inc. | Method and system for sanitizing water in a bathing unit providing diagnostic capabilities and control interface for use in connection with same |
WO2011143735A1 (en) | 2010-05-21 | 2011-11-24 | Gecko Alliance Group Inc. | Method and apparatus for sanitizing water in a bathing unit and control interface for use in connection with same |
US20110253638A1 (en) | 2010-06-24 | 2011-10-20 | Breakpoint Commercial Pool Systems Inc. | Systems and methods for reducing electric power by optimizing water turbidity, suspended solids, circulation and filtration in pools, spas, water features, and other closed bodies of water |
US9007186B1 (en) | 2010-07-03 | 2015-04-14 | Best Energy Reduction Technologies, Llc | Method and apparatus for controlling power to a device |
US8636899B2 (en) | 2010-07-08 | 2014-01-28 | Frank Tesauro | Vented alarm apparatus for use with a pool skimmer basket |
US8111388B2 (en) | 2010-08-04 | 2012-02-07 | Oldenburg Group Incorporated | Luminous flux depreciation notification system for light fixtures incorporating light emitting diode sources |
EP2612484B1 (en) | 2010-08-30 | 2015-09-16 | Watkins Manufacturing Corporation | Apparatus for monitoring a spa |
US9025951B2 (en) | 2010-10-18 | 2015-05-05 | Calix, Inc. | Provisioning network devices in Ethernet-based access networks |
US8612061B2 (en) | 2010-10-22 | 2013-12-17 | Gecko Alliance Group Inc. | Method and system for controlling a bathing system in accordance with an energy savings mode |
US20120106149A1 (en) | 2010-11-02 | 2012-05-03 | Fusion Pool Products Inc. | Underwater and landscape lighting system |
US9256230B2 (en) | 2010-11-19 | 2016-02-09 | Google Inc. | HVAC schedule establishment in an intelligent, network-connected thermostat |
EP2649697B1 (en) | 2010-12-10 | 2019-08-14 | Hayward Industries, Inc. | Power supplies for pool and spa equipment |
US20120065798A1 (en) | 2010-12-29 | 2012-03-15 | General Electric Company | Demand response of devices when different devices are being signaled to shed load |
US8467908B2 (en) | 2011-01-06 | 2013-06-18 | General Electric Company | Home energy management system incorporating a pool pump |
US8489242B2 (en) | 2011-01-06 | 2013-07-16 | General Electric Company | Home energy management system incorporating a pool pump |
US20120185571A1 (en) | 2011-01-18 | 2012-07-19 | Dindo Uy | Remotely controlling aspects of pools and spas |
US20170364100A9 (en) | 2011-01-18 | 2017-12-21 | Zodiac Pool Systems, Inc. | Controlling aspects of pools and spas |
US20140064139A1 (en) | 2012-08-31 | 2014-03-06 | E. Keith Mcqueen | Remotely controlling aspects of pools and spas |
US8600566B1 (en) | 2011-02-04 | 2013-12-03 | The United States Of America As Represented By The Secretary Of The Navy | Thermal management smart valve with rupture detection and isolation |
US20120219428A1 (en) | 2011-02-25 | 2012-08-30 | Christopher Cantolino | Pool timer |
US8443110B2 (en) | 2011-02-28 | 2013-05-14 | Honeywell International Inc. | Approach for discovering devices on a common bus without direct communication |
US8209794B1 (en) | 2011-03-15 | 2012-07-03 | Charles Harrison | Automatic pool level |
EP2503763B1 (en) | 2011-03-18 | 2019-07-24 | ebm-papst Mulfingen GmbH & Co. KG | Method for allocating network addresses for ventilators |
US20130088152A1 (en) | 2011-03-31 | 2013-04-11 | B-K Lighting, Inc. | Dimming apparatus for solid state lighting fixtures |
FR2973860A1 (en) | 2011-04-06 | 2012-10-12 | Bright In Res & Devolopment | METHOD AND DEVICE FOR LIGHTING WITH PROGRAMMABLE LEDS |
SG185845A1 (en) | 2011-05-16 | 2012-12-28 | Schneider Electric South East Asia Hq Pte Ltd | A socket, a plug and an assembly |
WO2012162169A1 (en) | 2011-05-20 | 2012-11-29 | Ecolab Usa Inc. | Controller enclosure, mounting and orientation of same |
US20120323385A1 (en) | 2011-06-17 | 2012-12-20 | Honeywell International Inc. | Providing energy management recommendations with an energy management device |
WO2013003804A2 (en) | 2011-06-30 | 2013-01-03 | Lutron Electronics Co., Inc. | Method for programming a load control device using a smart phone |
US9386666B2 (en) | 2011-06-30 | 2016-07-05 | Lutron Electronics Co., Inc. | Method of optically transmitting digital information from a smart phone to a control device |
US10271407B2 (en) | 2011-06-30 | 2019-04-23 | Lutron Electronics Co., Inc. | Load control device having Internet connectivity |
US9639506B2 (en) | 2011-07-07 | 2017-05-02 | Honeywell International Inc. | Interface for home energy manager |
EP2736848A4 (en) | 2011-07-29 | 2016-03-16 | Hayward Ind Inc | Systems and methods for controlling chlorinators |
CN102902609A (en) | 2011-07-29 | 2013-01-30 | 鸿富锦精密工业(深圳)有限公司 | Test circuit of main board alarm system |
US8746548B2 (en) | 2011-09-15 | 2014-06-10 | Dell Products L.P. | Dynamic multidimensional barcodes for information handling system service information |
EP2573403B1 (en) | 2011-09-20 | 2017-12-06 | Grundfos Holding A/S | Pump |
WO2013052692A2 (en) | 2011-10-04 | 2013-04-11 | Advanergy, Inc. | Data server system and method |
EP4180981A1 (en) | 2011-10-05 | 2023-05-17 | Analog Devices, Inc. | Two-wire communication system for high-speed data and power distribution |
US8538595B2 (en) | 2011-10-15 | 2013-09-17 | Philip Scott Lyren | Home appliance that can operate in a time range |
FR2981970B1 (en) | 2011-10-27 | 2013-11-29 | Zodiac Pool Care Europe | IMMEREDE SURFACE CLEANER APPARATUS WITH SEMI-AUTOMATIC RETURN CONTROL |
MX368556B (en) | 2011-11-01 | 2019-10-07 | Pentair Water Pool & Spa Inc | Flow locking system and method. |
US8736193B2 (en) | 2011-12-22 | 2014-05-27 | Leviton Manufacturing Company, Inc. | Threshold-based zero-crossing detection in an electrical dimmer |
US20130166965A1 (en) | 2011-12-23 | 2013-06-27 | Christian Brochu | Method and system for providing remote monitoring and control of a bathing system |
EP2798786B1 (en) * | 2011-12-28 | 2018-02-28 | Lutron Electronics Company, Inc. | Load control system having a broadcast controller with a diverse wireless communication system |
WO2013110987A2 (en) | 2012-01-05 | 2013-08-01 | Breau Kenneth William | Powered apparatus for fluid applications |
US20130201316A1 (en) | 2012-01-09 | 2013-08-08 | May Patents Ltd. | System and method for server based control |
US10354345B2 (en) | 2012-01-23 | 2019-07-16 | Whisker Labs, Inc. | Optimizing and controlling the energy consumption of a building |
US20140343734A1 (en) | 2012-01-26 | 2014-11-20 | Timothy Meyer | Substance control system |
US9213998B2 (en) * | 2012-01-26 | 2015-12-15 | General Electric Company | Monitoring hot water usage in a gas water heater |
US20130215394A1 (en) | 2012-02-18 | 2013-08-22 | Rakesh Reddy | Underwater Image Projection Display System and Lighting Control System And Device |
AU2013100126B4 (en) | 2012-03-19 | 2013-06-13 | Fluidra Group Australia Pty Ltd | Chlorination |
US8725202B2 (en) | 2012-05-29 | 2014-05-13 | Newport Media, Inc. | Single transceiver for wireless peer-to-peer connections |
US9259130B2 (en) | 2012-06-04 | 2016-02-16 | Pentair Water Prool and Spa, Inc. | Pool cleaner light module |
US9068669B2 (en) | 2012-06-05 | 2015-06-30 | Dresser, Inc. | Process fluid actuated pilot operated control valve |
US9071453B2 (en) | 2012-06-11 | 2015-06-30 | Apple Inc. | Location-based device automation |
US9388595B2 (en) | 2012-07-10 | 2016-07-12 | Aqua Products, Inc. | Pool cleaning system and method to automatically clean surfaces of a pool using images from a camera |
US20140224350A1 (en) | 2012-08-13 | 2014-08-14 | Jitendra Patel | Water Shut Off Device |
IL221729A (en) | 2012-08-30 | 2013-06-27 | Stanislav Podlisker | Pool alarm system |
AU2015100298A4 (en) | 2012-08-31 | 2015-04-09 | Zodiac Pool Systems, Inc. | Methods for remotely controlling pools and spas and modifying water contained therein |
US9960929B2 (en) | 2012-09-21 | 2018-05-01 | Google Llc | Environmental sensing with a doorbell at a smart-home |
US8769030B2 (en) | 2012-09-28 | 2014-07-01 | Google Inc. | Device event notification registration through direct interaction with mobile device |
US20140130878A1 (en) | 2012-10-11 | 2014-05-15 | Luis Marinez | Intelligent valve network |
US9203307B2 (en) | 2012-10-31 | 2015-12-01 | Cree, Inc. | Power converter with bias voltage regulation circuit |
CN202954952U (en) | 2012-12-04 | 2013-05-29 | 苏州捷奥瑞康物联科技有限公司 | Remote water pump monitoring and anti-theft system |
US8649909B1 (en) | 2012-12-07 | 2014-02-11 | Amplisine Labs, LLC | Remote control of fluid-handling devices |
US10244086B2 (en) | 2012-12-21 | 2019-03-26 | Lutron Electronics Co., Inc. | Multiple network access load control devices |
US9413171B2 (en) | 2012-12-21 | 2016-08-09 | Lutron Electronics Co., Inc. | Network access coordination of load control devices |
US10019047B2 (en) | 2012-12-21 | 2018-07-10 | Lutron Electronics Co., Inc. | Operational coordination of load control devices for control of electrical loads |
US20170138612A1 (en) * | 2013-01-30 | 2017-05-18 | Commercial Energy Saving Plus, LLC | Heat and energy recovery and regeneration assembly, system and method |
US9345091B2 (en) | 2013-02-08 | 2016-05-17 | Cree, Inc. | Light emitting device (LED) light fixture control systems and related methods |
AU2014200963A1 (en) | 2013-02-22 | 2014-12-18 | Wangra Pty Ltd | Remote Control System |
AU2014248819B2 (en) | 2013-03-13 | 2018-03-01 | Zodiac Pool Systems, Inc. | Methods, systems, and devices for providing communications capabilities to equipment of swimming pools and spas |
US10492268B2 (en) | 2013-03-13 | 2019-11-26 | Hayward Industries, Inc. | Local feature controller for pool and spa equipment |
US9386665B2 (en) | 2013-03-14 | 2016-07-05 | Honeywell International Inc. | System for integrated lighting control, configuration, and metric tracking from multiple locations |
CN105074344B (en) | 2013-03-15 | 2018-02-23 | 艾默生电气公司 | HVAC system remotely monitoring and diagnosis |
US20140262998A1 (en) | 2013-03-15 | 2014-09-18 | Chris Wagner | Water System |
EP3620149B1 (en) | 2013-03-15 | 2021-10-06 | Hayward Industries, Inc. | Modular pool/spa control system |
US20140265842A1 (en) | 2013-03-15 | 2014-09-18 | Hayward Industries, Inc. | Underwater Lighting System With Bather Detection Circuitry |
US20140264111A1 (en) | 2013-03-15 | 2014-09-18 | Designport, Inc. | Automatic valve actuator systems |
EP2974555A4 (en) | 2013-03-15 | 2016-11-30 | Hayward Ind Inc | Underwater led light with replacement indicator |
WO2014144445A1 (en) | 2013-03-15 | 2014-09-18 | Hayward Industries, Inc. | System and method for dynamic device discovery and address assignment |
US20140268678A1 (en) | 2013-03-15 | 2014-09-18 | Hayward Industries, Inc. | Underwater Lighting System With Bather Detection Circuitry |
EP2781824B1 (en) | 2013-03-18 | 2018-05-09 | Helvar Oy Ab | A driver for a light source |
WO2014168918A1 (en) | 2013-04-08 | 2014-10-16 | Zodiac Pool Systems, Inc. | Systems and methods for wirelessly communicating with automatic swimming pool cleaners |
US20140314062A1 (en) | 2013-04-19 | 2014-10-23 | Dennis Loebs | Aquatic-Based Automation Systems |
US10254318B2 (en) * | 2013-05-29 | 2019-04-09 | Nidec Motor Corporation | Systems and methods for estimating input power of an electric motor |
CN103292421A (en) | 2013-06-17 | 2013-09-11 | 南京天加空调设备有限公司 | Multi-split refrigeration operation outer draught fan rotating speed control method |
FR3009612B1 (en) | 2013-08-09 | 2018-12-07 | Zodiac Pool Care Europe | SYSTEM AND METHOD FOR CONTROLLING HEAT PUMP FOR SWIMMING POOL |
US9216654B2 (en) | 2013-08-12 | 2015-12-22 | Siemens Industry, Inc. | Electric vehicle charging station with reconfigurable electrical installation options and methods |
WO2015023622A1 (en) | 2013-08-16 | 2015-02-19 | Zodiac Pool Systems, Inc. | Remotely controlling aspects of pools and spas |
NZ710952A (en) | 2013-08-30 | 2015-09-25 | Astral Pool Australia Pty Ltd | Swimming pool operation |
US9424521B2 (en) | 2013-09-27 | 2016-08-23 | Transvoyant, Inc. | Computer-implemented systems and methods of analyzing spatial, temporal and contextual elements of data for predictive decision-making |
US9459630B2 (en) | 2013-10-22 | 2016-10-04 | Fisher Controls International Llc | System and method for controlling a remote valve |
WO2015116035A1 (en) | 2014-01-28 | 2015-08-06 | Hayward Industries, Inc. | Systems and methods for interrelated control of chlorinators and pumps |
JP2017511463A (en) | 2014-04-17 | 2017-04-20 | ヴィクトリア・リンク・リミティド | Cryogenic fluid circuit design that effectively cools an elongated thermally conductive structure extending from a component cooled to a very low temperature |
US10102585B1 (en) | 2014-04-25 | 2018-10-16 | State Farm Mutual Automobile Insurance Company | Systems and methods for automatically mitigating risk of property damage |
US20150370272A1 (en) | 2014-06-23 | 2015-12-24 | Google Inc. | Intelligent configuration of a smart environment based on arrival time |
US20160002942A1 (en) | 2014-07-07 | 2016-01-07 | Paul Harvey Orlando | Pump Controller |
US20160069048A1 (en) | 2014-09-10 | 2016-03-10 | Michael J. Colbert | Water flow control and supply system |
US20160077530A1 (en) | 2014-09-12 | 2016-03-17 | Michael T. Moran | Smart valve for controlling a plumbing fixture |
CN104302015A (en) | 2014-09-15 | 2015-01-21 | 浙江生辉照明有限公司 | Adaptive WI-FI network connection method and system with hidden SSID |
BR112017006052B1 (en) | 2014-09-23 | 2022-03-22 | Maytronics Ltd | Method for determining the values of a multiplicity of kinetic parameters in swimming pool fluid, method for detecting algae concentration and turbidity levels in swimming pool fluid containing chlorine as a disinfecting agent, method for detecting kinetic values of hypochlorous acid concentration levels ( hocl) and free chlorine in swimming pool fluid containing chlorine as a disinfecting agent, system for determining the values of a multiplicity of kinetic parameters in a swimming pool fluid and system for determining the algae concentration and turbidity level in a swimming pool fluid |
WO2016074749A1 (en) | 2014-11-14 | 2016-05-19 | Fluidra S.A. | Controlling water installations by a remote server through a network access point |
US20160143115A1 (en) | 2014-11-17 | 2016-05-19 | Kanghong Zhang | Power supply double switch controller |
US20160335272A1 (en) | 2014-12-13 | 2016-11-17 | Velvet Ropes, Inc. | Methods and systems for rating celebrities for generating a digital celebrity map tour guide |
EP3237977B1 (en) | 2014-12-23 | 2020-10-21 | Fluidra S.A. | Controlling a water installation device |
AU2014415266A1 (en) | 2014-12-23 | 2017-07-27 | Fluidra, S.A. | Updating software packets in water installation controlling apparatus |
ES2812624T3 (en) | 2014-12-31 | 2021-03-17 | Fluidra S A | Control devices of a water installation |
US20160227981A1 (en) | 2015-02-09 | 2016-08-11 | Electrolux Home Products, Inc. | Motor control based on vibration sensing |
US9739840B2 (en) | 2015-02-12 | 2017-08-22 | Tri-Tec Manufacturing, LLC | Power detection system for valve actuators |
EP3262252B1 (en) | 2015-02-24 | 2022-05-18 | Hayward Industries, Inc. | Pool cleaner with optical out-of-water and debris detection |
US10985939B2 (en) | 2015-03-10 | 2021-04-20 | Zodiac Pool Systems Llc | Automatic addressing scheme for pool system controllers and compatible remote devices |
US20160275633A1 (en) | 2015-03-20 | 2016-09-22 | Bki Software Solutions | Utility monitoring and database correlation system, including user interface generation for utility assessment |
US10527043B2 (en) | 2015-03-27 | 2020-01-07 | Regal Beloit America, Inc. | Motor, controller and associated method |
US9911318B2 (en) | 2015-03-27 | 2018-03-06 | Google Llc | Configuring a smart home controller |
AU2016202400A1 (en) | 2015-04-15 | 2016-11-03 | Appycentre Pty Ltd | Interactive display system with swimming pools |
KR20160125117A (en) | 2015-04-21 | 2016-10-31 | 엘지전자 주식회사 | Smart faucet valve system and controlling the same |
AU2016290898B2 (en) | 2015-07-09 | 2021-11-04 | Kortek Industries Pty Ltd | Configurable wireless power control and management |
US20170017315A1 (en) | 2015-07-14 | 2017-01-19 | Gecko Alliance Group Inc. | Topside control panel for bathing unit system |
BG66892B1 (en) | 2015-07-29 | 2019-05-31 | „Смту“ Ад | Adaptive dosing system |
US20170053360A1 (en) | 2015-08-18 | 2017-02-23 | Michael R. Loeb | System and method to dynamically allocate water savings amounts for remote water devices |
US10159624B2 (en) | 2015-09-11 | 2018-12-25 | Gecko Alliance Group Inc. | Method for facilitating control of a bathing unit system and control panel implementing same |
US9858792B2 (en) | 2015-09-28 | 2018-01-02 | Cec, Sa | Smart swimming pool or hot tub monitor |
US9971348B1 (en) | 2015-09-29 | 2018-05-15 | Amazon Technologies, Inc. | Passenger profiles for autonomous vehicles |
US9900162B2 (en) | 2015-11-11 | 2018-02-20 | At&T Mobility Ii Llc | System and method for wireless network management |
US9860360B2 (en) | 2015-11-17 | 2018-01-02 | Olibra Llc | System, device, and method of wirelessly controlling electronic devices and appliances |
US9996066B2 (en) * | 2015-11-25 | 2018-06-12 | Echostar Technologies International Corporation | System and method for HVAC health monitoring using a television receiver |
US9807855B2 (en) | 2015-12-07 | 2017-10-31 | Pentair Water Pool And Spa, Inc. | Systems and methods for controlling aquatic lighting using power line communication |
CN107028524A (en) | 2015-12-08 | 2017-08-11 | 太琦科技股份有限公司 | voice control type bathing system and operation method thereof |
US10789335B2 (en) | 2015-12-08 | 2020-09-29 | Dartpoint Tech. Co., Ltd. | Remote diagnosis management system and method for operating the same |
CN106856499A (en) | 2015-12-08 | 2017-06-16 | 太琦科技股份有限公司 | Remote diagnosis system and operation method thereof |
US20170170979A1 (en) | 2015-12-15 | 2017-06-15 | Pentair Flow Technologies, Llc | Systems and Methods for Wireless Control and Monitoring of Residential Devices |
US10711788B2 (en) | 2015-12-17 | 2020-07-14 | Wayne/Scott Fetzer Company | Integrated sump pump controller with status notifications |
US20180174207A1 (en) | 2016-01-22 | 2018-06-21 | Hayward Industries, Inc. | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US20180224822A1 (en) | 2017-01-23 | 2018-08-09 | Hayward Industries, Inc. | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US11000449B2 (en) | 2016-01-22 | 2021-05-11 | Hayward Industries, Inc. | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US20180240322A1 (en) | 2016-01-22 | 2018-08-23 | Hayward Industries, Inc. | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment |
US10657199B2 (en) | 2016-02-25 | 2020-05-19 | Honeywell International Inc. | Calibration technique for rules used with asset monitoring in industrial process control and automation systems |
US9834451B2 (en) | 2016-03-18 | 2017-12-05 | ConnectedYard, Inc. | Chemical monitoring devices and methods |
ES2880959T3 (en) | 2016-04-06 | 2021-11-26 | Fluidra S A | Operation of proteic water installation devices |
US20170346688A1 (en) | 2016-05-26 | 2017-11-30 | Pentair Water Pool And Spa, Inc. | Installation Devices for Connecting Pool or Spa Devices to a Local Area Network |
WO2017207634A1 (en) * | 2016-06-03 | 2017-12-07 | Belimo Holding Ag | Method and computer system for monitoring an hvac system |
US10942990B2 (en) | 2016-06-15 | 2021-03-09 | James Duane Bennett | Safety monitoring system with in-water and above water monitoring devices |
US20170364924A1 (en) | 2016-06-15 | 2017-12-21 | James Duane Bennett | Mobile units for furnishing, repairing and refurbishing residences |
US10248092B2 (en) * | 2016-06-20 | 2019-04-02 | Google Llc | Architecture for thermostat control during peak intervals |
WO2018058044A1 (en) | 2016-09-23 | 2018-03-29 | Aon Benfield Inc. | Platform, systems, and methods for identifying property characteristics and property feature maintenance through aerial imagery analysis |
US20180143057A1 (en) | 2016-11-22 | 2018-05-24 | Wint Wi Ltd | Aggregated demographic data |
EP3637006B1 (en) * | 2017-06-08 | 2024-01-03 | Mitsubishi Electric Corporation | Heat source system |
US20190206048A1 (en) | 2017-12-30 | 2019-07-04 | Galen Crabtree | Method and system for analysis of residential pool condition to evaluate quality of ownership of a swimming facility |
US10764235B2 (en) | 2018-03-21 | 2020-09-01 | Huawei Technologies Co., Ltd. | Method and system for network access discovery |
US20190314243A1 (en) | 2018-04-17 | 2019-10-17 | Pentair Water Pool And Spa, Inc. | Systems and Methods for Controlling Pool/Spa Devices |
CN108870529B (en) * | 2018-07-18 | 2024-05-14 | 山东国辰实业集团有限公司 | Data analysis system and method based on heat exchange station |
US20200150633A1 (en) | 2018-11-12 | 2020-05-14 | Zodiac Pool Systems Llc | Sensor systems principally for swimming pools and spas |
WO2020120977A2 (en) | 2018-12-12 | 2020-06-18 | Pentair Plc | Residential device feedback system and method |
WO2020120975A2 (en) | 2018-12-12 | 2020-06-18 | Pentair Plc | Systems and methods for optimization of connected water devices |
WO2020120974A2 (en) | 2018-12-12 | 2020-06-18 | Pentair Plc | Water characteristic selection system and method |
WO2020120973A2 (en) | 2018-12-12 | 2020-06-18 | Pentair Plc | Predictive and preventative maintenance systems for connected water devices |
CN112706657B (en) * | 2018-12-29 | 2022-12-23 | 宁德时代新能源科技股份有限公司 | Control method, battery management module, motor controller and medium |
US11724945B2 (en) | 2019-02-13 | 2023-08-15 | Pentair Residential Filtration, Llc | Systems and methods for water softener salt level detection using smart sensor |
US20200271312A1 (en) * | 2019-02-21 | 2020-08-27 | Anthony LITKA | Boiler combustor side blockage detection system and method |
US11136773B2 (en) | 2019-08-16 | 2021-10-05 | Rheem Manufacturing Company | Systems and methods for managing bodies of water |
US11215175B2 (en) | 2020-04-17 | 2022-01-04 | Poolside Tech, LLC | Systems and methods for maintaining pool systems |
US11307600B2 (en) | 2020-05-01 | 2022-04-19 | Poolside Tech, LLC | Systems and methods for regulating temperatures of pool systems |
US11208822B2 (en) | 2020-05-01 | 2021-12-28 | Poolside Tech, LLC | Systems and methods for maintaining pool systems |
US20210388627A1 (en) | 2020-06-15 | 2021-12-16 | Pentair Water Pool And Spa, Inc. | Monitoring and controlling connected pool devices |
-
2020
- 2020-06-18 US US16/905,661 patent/US11720085B2/en active Active
-
2022
- 2022-12-22 US US18/086,893 patent/US20230147296A1/en active Pending
- 2022-12-22 US US18/086,880 patent/US20230146187A1/en active Pending
- 2022-12-22 US US18/086,902 patent/US20230131356A1/en active Pending
- 2022-12-22 US US18/086,889 patent/US20230142059A1/en active Pending
- 2022-12-22 US US18/086,876 patent/US20230145734A1/en active Pending
- 2022-12-22 US US18/086,904 patent/US20230145381A1/en active Pending
- 2022-12-22 US US18/086,887 patent/US20230142306A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230142059A1 (en) | 2023-05-11 |
US20230145381A1 (en) | 2023-05-11 |
US11720085B2 (en) | 2023-08-08 |
US20230145734A1 (en) | 2023-05-11 |
US20200319621A1 (en) | 2020-10-08 |
US20230142306A1 (en) | 2023-05-11 |
US20230147296A1 (en) | 2023-05-11 |
US20230146187A1 (en) | 2023-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11720085B2 (en) | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment | |
AU2019215036B2 (en) | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment | |
US20180240322A1 (en) | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment | |
US10219975B2 (en) | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment | |
US20180174207A1 (en) | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment | |
US20180224822A1 (en) | Systems and methods for providing network connectivity and remote monitoring, optimization, and control of pool/spa equipment | |
US20230144546A1 (en) | Systems and Methods for Providing Network Connectivity and Remote Monitoring, Optimization, and Control of Pool/Spa Equipment | |
US11187223B2 (en) | Home flood prevention appliance system | |
US20100132803A1 (en) | System and Method for Preventing Water From Freezing in a Conduit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, NORTH CAROLINA Free format text: ABL PATENT SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:HAYWARD INDUSTRIES, INC.;REEL/FRAME:065022/0404 Effective date: 20230228 Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, NORTH CAROLINA Free format text: FIRST LIEN PATENT SECURITY AGREEMENT SUPPLEMENT;ASSIGNOR:HAYWARD INDUSTRIES, INC.;REEL/FRAME:065022/0332 Effective date: 20230228 |