Raspberry Pi Control for Pool Temperature and Motor

Owners of swimming pools often have no idea of the temperature of the water in the pool relative to the surrounding air. They also are unable to control the pump schedules unless they put up a mains timer. However, using a single board computer such as the Raspberry Pi (RBPi) makes it easy to display the temperature on a webpage, while it switches the pump automatically on or off based on a preset schedule.

The pool monitoring system does not need a full version of the RBPi, as the RBPiZW, the Zero W version, will be adequate. For instance, the designer, Matt, designed the pool monitoring system for his summer escapes pool that holds 4100 liters of water. Matt designed the RBPiZW system to measure the water and air temperature and log the measurements to a cloud on the Internet. This allows the system to display temperatures on a web page he is able to access from a mobile phone, while allowing him to switch the pump on or off. The system can also place the pump on an automatic mode to follow a specific schedule.

Pool pumps are usually mains powered and contain a filter. Traditionally, users control this with a mains timer, but that precludes the possibility of switching it on when the solar panel supplies free power. For instance, the user may want to replenish the water at the end of the day after heavy use, and this is not possible without tinkering with the timer unit.

Matt housed his RBPiZW monitoring system in a weatherproof box. It offered room to include a 4-way extension block and has a 10 m mains cable running to it from the house. The box houses the RBPiZW and its 5 V power supply. The sensor wiring enters the box through rubberized slots.

According to Matt, the finished system comprises, apart from the pool and pump, a weather-proof box, a 10 m mains extension cable, an RBPiZW, a 5 V charger, a 4-GB micro SD card, two water-proof temperature sensors (DS18B20) each with 3 m cable, bias resistor for the temperature sensors, an Energenie Socket, and an Energenie Pi-mote as add-on.

The Energenie socket is a remote control socket. Additionally, when combined with the Pi-mote, it allows controlling the socket with Python scripts. Being easy to set up, this combination offered an easy hardware for controlling the pump. Matt had only to plug in the Pi-mote into the GPIO header of the RBPiZW.

The DS18B20 waterproof temperature sensors are single-wire interface and many of them can be connected to the GPIO pins. The waterproof sensors come with all cables attached. Although somewhat more expensive than the regular standard sensors, Matt only needed to solder the three wires from each sensor to the appropriate GPIP pins on the back of the Pi-mote to make them work.

Matt placed one of the sensors in a hedge near the pool for measuring the air temperature, while he dipped the other into the pool water to measure the temperature of the water. Each sensor has a 3 m cable length.