Monitoring Water Quality Using Lots Of Sensors And Machine Learning

[ad_1]

Despite great progress over the past century, more than a billion people still don’t have access to clean drinking water today. Much of the water on Earth’s surface is polluted, but it’s not always easy to tell a dirty stream from a clean one. Professional kit for water analysis can be expensive, which is why [kutluhan_aktar] decided to design a portable, internet-connected water pollution monitor.

A bowl of water with several sensors immersed in it, and a blue box connected to them
Calibrating the system using a bowl of clean water.

There is no single parameter that determines the quality of a water sample, so the pollution monitor has no less than five different sensors. These can determine the oxidation-reduction potential (a chemical indicator), the pH (acidity), total dissolved solids (mainly salts), turbidity (suspended particles) and temperature. To combine all these numbers into a simple “yes/maybe/no” indicator, [kutluhan] trained a neural network with data gathered from a large number of places around his hometown.

This neural network runs on an Arduino MKR GSM 1400 module. While not a typical platform for AI applications, the neural network runs just fine on it thanks to the Neuton framework, a software plaform designed to run machine learning applications on microcontroller systems like the Arduino. It also has a GSM/3G modem, allowing it to report the measured water quality to a central database.

All of this is housed in a 3D-printed enclosure that makes the whole setup easy to carry and operate in any location. Collecting data across a wide area should help to locate sources of pollution, and hopefully contribute to an improvement in water quality for everyone. Here at Hackaday we love citizen science initiatives like this: previously we’ve featured projects to measure things as varied as air quality and ocean waves.

[ad_2]

Source link