Ultrasound Tank Level Meter

Need to monitor the fluid level in a large diameter well, a tank, or an open container? This guide will show you how to make a sonar non-contact fluid level meter using cheap electronics!
The sketch above shows an overview of what we aimed for with this project. Our summer cottage has a large-diameter well to supply drinking water for use in the house. One day, my brother and I talked about how our grandfather used to measure the water level manually in order to keep track of the water consumption and influx throughout the summer to avoid overdraft. We thought that with modern electronics we should be able to revive the tradition, but with less manual labour involved. With a few programming tricks, we managed to use an Arduino with a sonar module to measure the distance down to the water surface (l) with reasonable reliability and an accuracy of a few millimetre. This meant that we could estimate the remaining volume V, using the known diameter D and depth L, with about 1 litre accuracy.
Because the well is located about 25m from the house and we wanted the display indoors, we opted for using two Arduinos with a data link in between. You can easily modify the project to use just one Arduino if this is not the case for you. Why not use wireless data transfer? Partly due to simplicity and robustness (the wire is less likely to be damaged by moisture) and partly because we wanted to avoid using batteries on the sensor side. With a wire, we could route both data transfer and power through the same cable.
1) Arduino module in the houseThis is the main Arduino module. It will send a trigger signal to the Arduino in the well, receive the measured distance and display the calculated remaining water volume on a display.
2) Well side Arduino and sonar moduleThe purpose of this Arduino is simply to receive a trigger signal from the house, perform a measurement and send back the distance from the sonar module to the water level. The electronics are built into a (relatively airtight) box, with a plastic pipe attached to the receiving side of the sonar module. The purpose of the pipe is to reduce measurement errors by reducing the field of view so that only the water surface is “seen” by the receiver. “