Zonnestroompanelen in Nederland

duurzaamheid achter de meter

(20) How hot is my shower? – Measuring and logging shower water temperature with an Arduino

by Floris Wouterlood – Leiden – the Netherlands – March 8, 2018


In this article the basic question is: what is the temperature of water exiting a shower head and how much and how fast does that water cool during its descent to the floor of the shower cabin. With two Dallas DS18B20 temperature probes, an Arduino and a RTC-SD card shield logger this kind of temperature data can be collected, and the question answered.

With a shower we wash our body whilst at the same time we enjoy the comfort of the warm water. No doubt about that. The amount and the temperature of the hot water that makes us feel comfortable differs from person to person. A discussion has been going on for some time in circles of energy saving aficionados about an optimal distance: how far away to position the shower head from your body. The shower head can be way off, with hot water losing some heat before it hits the skin, or we might throw away less hot water if we position the shower head closer to the body. It seems obvious that in the second scenario there is less decrease in water temperature in between leaving the shower head and hitting the skin. That would save energy. This wonderful discussion needs underpinning with facts: how much does water actually cool in between exiting the shower head and splashing on the body, and how fast and how much does water decrease in temperature on its path from the shower head to the floor of the shower cabin. I conducted a series of experiments to investigate this issue.

figure 1. Spray angle and other fixed parameters in this study

For my measurements I used several fixed parameters (see figure 1): a conventional shower head positioned 195 cm from the cabin’s floor. Increments for measuring temperatures were 15 cm (= dimension of the tiles in the shower cabin, makes it easier to position the dynamic probe. Shower head angle with horizontal plane (α; 10 degrees) fixed. Through this the spray angle is co-fixed at 10 degrees as this angle is identical to the angle the shower head makes with the horizontal plane. The air temperature in the bathroom is usually 18 oC but increases when the shower is used. And of course the humidity increases which has a effect on the perception of temperature by the occupant of the bathroom. These two factors were not taken into account.

Two temperature probes
In the experiments I applied two identical waterproof temperature probes. These devices consist of a stainless steel tubular casing with a rounded head, attached at the end of a sealed wire (fig. 2) thus providing a waterproof piece of equipment. Inside the steel casing is a Dallas DS18B20 temperature sensor. The manufacturer of the waterproof probes only lists that there is a DS18B20 sensor inside the casing, but does not provide information about exactly where inside (e.g., at the very tip or just halfway), and whether or not the sensor is surrounded by air or embedded in some heat transfer medium. I assume air because these probes respond much slower to temperature changes than ‘bare’ DS18B20 sensors.
Probe #1, further called the reference probe, was attached with a piece of duct tape to the shower head such that the probe tip was in immediate contact with the water leaving the shower head (figure 2). This probe is necessary because the shower used in the experiments does not have a thermostatic shower mixer, just an ordinary manual mixing tap. I know from experience that the temperature of the water leaving the shower head fluctuates and sometimes dips. There is a solar thermal heater upstairs that supplies hot tap water to the shower. The temperature inside the hot water storage tank depends on the amount of sunlight received during daytime, and ranges between 15 and 80 oC. If the outlet temperature of the storage tank dips below a preset value of about 40 oC the gas fired central heating hot water supply unit pops in. This process is accompanied with a dip in shower head water temperature and typically occurs during the fall and spring.
Probe #2, further called the dynamic probe, was attached to a plastic rod. This rod was moveable along a 195 cm long plastic tube (electric installation tube) that carried marks every 15 cm.

figure 2. Left: Waterproof DS18B20 probe. Right: Reference probe attached with a piece of duct tape to the shower head. The stainless steel casing of the probe contains the sensor, but there is no manufacturer’s documentation whether the sensor sits at the tip of the casing or in some other position. Anyway, there must be heat transfer from the stainless steel via a medium inside the casing (air? heat transfer gel?) to the sensor. This heat transfer causes the sensor to respond slowly when the temperature changes, in the order of several seconds. A ‘bare’ DS18B20 sensor would respond much quicker but cannot be used in this wet shower condition.

Electronic hardware
On paper the construction of the measuring device is quite simple: an Arduino Uno equipped with a logging shield that also keeps track of time, with two temperature sensors, a LCD display and some control leds (figure 3). The DS18B20 is a one-wire sensor which means that only one pin of the Arduino is necessary for collecting data from multiple DS18B20s. In my design, pin D8 is used for data collection.
I added a 20×4 LCD display and two leds: red and green, to have visual feedback during my experiment. The LCD display was connected to the Arduino via an I2C expander. The expander requires two data wires to the Arduino (SDA and SCL) in addition to 5V and GND.
It was extremely important to shield all electronics from water. A shower and unprotected electronics is not a favorable combination. Because of safety considerations a 230 ACV to 9 DCV power supply in a bathroom with a working shower is completely taboo. For power supply I relied on a USB power bank with 2,000 mAh of power storage at 5V, i.e., sufficient to power the electronics for hours.

The Field Unit
The Arduino board, shield, power bank and its auxiliary devices were mounted together as the ‘field unit’ on a piece of perforated hard board that was attached to the outside of the shower cabin, with the wires leading to the probes overhead the shower head and as much as possible away from the cone of falling water.

figure 3. Wiring scheme. Pin D8 on the SD shield receives data from the two DS18B20 sensors (reference probe attached to the shower head; dynamic probe moveable). For convenience, data are displayed on the LCD display. The display receives four wires: 5V, GND, SDA and SCL. A I2C expansion pack converts the SDA-SCL signals (I2C protocol) to the parallel signals driving the LCD display. The red and green leds are signal leds. They lit up when data is recorded (red led) or when data is written to the SD card (green led). Note the 4.7 kΩ pullup resistor between the DS18B20 data wire and 5V.

figure 4. Field Unit, conveniently mounted on a piece of perforated hard board: an Arduino Uno carrying the RTC-SD shield. A USB power bank supplies 5V DC power to the Arduino, shield, sensor, display and auxiliary devices. The field unit is attached with hooks on the outside of the shower cabin to protect the electronics from spray water. The wires to the reference and dynamic probes lead over the upper edge of the cabin wall.

Electronics and supplies needed
Arduino Uno microcontroller board, SD shield with real time clock (RTC), SD card (FAT32 formatted), 2 x breadboard, 1 x 4.7 kΩ resistor, 1x red led, 1x green led, 2 x 220Ω resistor, LCD I2C expansion pack, 1x 20×4 LCD display, 2x Dallas DS18B20 watertight probe, power bank (it is for safety reasons definitely NOT recommended to use a 230V AC power supply ! – Never use grid power in a bathroom, shower cabin or other wet environment).

The success of the current project stands or falls with the accuracy of the probes. They must provide similar readings when measuring a calibration temperature, and also the response time must be identical. To test these features, a calibration experiment was run several times. Both probes were, as a pair, submerged in a bowl filled with hot water, then transferred to a bowl with cold water, and back. This ‘dipping’ was repeated several times.

figure 5. Calibration run. Both probes immersed in, alternatively, warm water (initially 45 oC) and cold water (18 oC). Readings were practically identical (in the order of 0.1 oC difference).

The probes gave nearly identical results (difference 0.1 oC or less; figure 5). The dynamic probe lagged a little bit when the probes were immersed in the warm water bowl. Differences were so small compared with those in the real experiments that data corrections in the analysis of the final set of experiments were not necessary.

Field test run
To determine what actually happens in the shower cabin a test run was conducted, with the reference probe in position on the shower head and with the dynamic probe lying on the floor of the shower cabin, next to the drain (the drain is close to the center of the cone of shower water). The field unit was powered on and the hot water tap opened. The doors of the shower cabin remained open.
The temperature graphs (figure 6) recorded during this test run are interesting. The floor of the shower cabin (consisting of ceramic tiles) is cold (17 oC) while the air temperature in the bathroom is 21 oC. As expected the temperature at the shower head increases rapidly to working temperature of around 37 oC after opening the hot water tap, with a little bit of mixing with cold water at the end of this initial phase. The dynamic probe follows immediately, however with lower readings as shower water loses heat on its way to the floor warms up the floor. There is no time lag. The temperature on the floor of the shower cabin increases to approximately 30 oC. The temperature decline of the shower water from the moment that it is ejected from the shower head until it hits the floor is in the order of magnitude of 7 oC.
After the taps had been closed the probes returned slowly to room temperature. The heat released by the water had caused an increase of the bathroom temperature of approximately 4 oC.

figure 6. Testing the probes. Dynamic probe on the floor of the shower cabin. There are three phases: A, Warming up: warm water replaces cold water as it starts arriving from the solar thermal hot water storage tank upstairs. B, Further adjustment of water temperature by mixing with cold water. This is the period in which an actual shower may be taken. C, Hot water tap further opened a few seconds and then closed. X-axis units are time points (one point every 5 seconds). Total time between taps open and taps closed is 30 units (2 minutes, 30 seconds).

The actual field experiment
I ran the field experiment four times, on different days. During the entire experiment the doors of the shower cabin remained open.

The experimental procedure was as follows:

1. Start the Field Unit by connecting the power bank with the Arduino (plug the USB cable into the socket of the Arduino)
2. Allow to accommodate for one minute, then open the warm water tap.
3. When the temperature of the water at the shower head is stable at approximately 40 degrees, bring the dynamic probe into its upper position ( = at the shower head).
4. Lower the dynamic probe one mark (= 15 cm) every 25 seconds (5 flashes of the red led – the red led is programmed to light every 5 seconds).
5. Continue this until the dynamic probe is at a position 30 cm from the shower cabin floor.
6. Place the dynamic probe on the floor of the shower cabin for one minute.
7. Close the hot water tap and open the cold water tap if necessary, in order to let cold water flow over the reference probe.
8. Check the LCD display. Temperature readings should fall until stable at cold water temperature.
9. After half a minute under this condition, stop the experiment by disconnecting the power bank.

figure 7. The field experiment. After warming up and attaining work temperature the experiment was started (‘experiment window’). Every 25 seconds the reference probe was positioned 15 cm lower until the level of the floor of the shower cabin. The water loses progressively heat during descent. The inset graph illustrates the temperature difference between the dynamic probe and the reference probe. X-axis units = time points (one point every 5 seconds)

The field experiment (figure 7) revealed that the shower water temperature does not change much in the first four increments (to a level 60 cm below the shower head). Below that level the temperature of the shower water progressively decreases. Just above the floor of the shower cabin the difference in temperature is about 5 oC. This experiment was repeated another three times. In the experiments with higher temperatures at the shower head (higher than 40 oC the temperature difference between the shower head and the dynamic probe at floor level of the shower cabin increased to 10 oC.

The main conclusion of the experiments is that the temperature of shower water decreases in my shower cabin under normal working conditions approximately 5 oC in temperature between the shower head and the floor. The most comfortable shower temperature was 37 oC, but this ‘comfort temperature’ is highly subjective. The hotter the shower head temperature, the bigger the difference between shower head temperature and the temperature of the water on the floor, up to 10 oC. The shower water temperature not does change much in the first 60 cm down from the shower head. Only then it starts to lose heat slightly progressively. This may be the result of the dispersion of the water in the shower cone, making it occupying a bigger air volume that provides a increasingly larger exchange surface for water drops to release heat.
One can design many more experiments with the field equipment. For instance, I measured that the drop in shower water temperature is bigger when the shower head temperature is set higher. A higher drop in temperature may be expected when the room temperature at the beginning of the experiments is lower. Finally, by experience one knows that closing the doors of a shower cabin significantly reduces the loss of heat. Therefore I assume that running the field experiment with closed shower cabin doors will have a damping effect on temperature loss inside the shower water cone.

Thus, for energy saving aficionados it does not seem to make much sense to position a shower immediately above their heads. The graph in figure 6 indicates that the shower cabin’s floor heats up considerably by the shower water. It makes sense therefore to install equipment to recuperate heat from the water that flows into the drain. One may consider also reducing the amount of time spent under the shower.

Sketch: shower_uno_i2c_display_sd_shield.ino (zip file)