Non-contact water flow detection on the cheap

A colleague of mine was asking about cheap ways to measure water flow via non-invasive methods in a pipe. The ultimate goal was to see if water flow into a house could be detected. He was concerned about small water leaks, and thought there might be a way to find them. There are plenty of non-invasive systems (using ultrasonics), but they are a bit costly.

Our thought was to use temperature; by measuring the temperature of water into a house just at the entrance, and at some other point, some signal could be found to detect flow.

The experimental setup is here:


We measured the ambient air temperature, the surface temperature of the copper water main, and the surface temperature of a dummy copper water pipe. We used both thermistors, and the one wire DS18B20 sensors. DS18B20 sensors are great if you need to measure many temperatures on a processor that doesn’t have a lot of analog inputs, or if you want noise isolation.

The data was collected using a simple Arduino/SD card setup; the code is available here: logger_temperature_20140708. The same thermistor-resistor pair used in the Thermistorcator was used.

This system was only run for a short while, but our first data showed some pretty interesting results. Turning on the tap, or flushing a toilet really makes a significant difference in the temperature; you can even see when the toilet stops filling. The thermistors and DS18B20 sensors track pretty well (the spikes in the temperature were caused by putting a warm hand on the sensor, for test purposes).


This data was from the summer; we are now trying it for the winter. For the summer, seeing the thermal pulse is pretty easy; cold water rushes in to a warm space, and the temperature of the pipe will change significantly. At other times of the year, however, the ambient temperature might be just at the temperature of the incoming water, so the signal might be difficult to see. A few options might be to put more temperature sensors in place, or to put a small heater near one of the temperature sensors, so that any amount of flowing water (which would cool the pipe) would change the temperature reliably enough to be detected.

This entry was posted in articles. Bookmark the permalink.