We have been using submersible pressure transducers for water level measurements for many years, but some of our installations are in areas with very shallow water that might freeze during the winter. Most pressure transducers will be damaged if they are in water that freezes, so we’ve been experimenting with an ultrasonic rangefinder that will allow us to measure the water level from above. The ultrasonic sensor is Maxbotix MB7389. Maxbotix makes a variety of different models, but this one is specifically made for outdoor water level measurements. The sensor has TTL serial output so it is very easy to integrate it with one of our Arduino-based loggers. It has a resolution of 1 millimeter, internal temperature compensation, and can measure anything between 30 centimeters and 5 meters.
For testing, I mounted one sensor in a plastic enclosure with a clear lid. Inside the enclosure is a battery, Arduino Fio board, and a small LCD display to show the live data. I can easily add an Xbee radio to the Fio if I also wanted to transmit the data. With this testing device, I was able to try the sensor in a variety of locations and aiming at different targets, and I determined that the senor performed as expected.
Then I mounted another sensor inside the plastic end-cap that is used with 4-inch PVC perforated drain tile pipe. The pipe can be found at hardware stores for around $10 for 10 feet. It has lots of holes in it to allow water in and out, and when the pipe mounted vertically in a stream, it acts as a stilling well to make the surface of the flowing water smoother. It also keeps leaves, grass, and other debris from interrupting the path between the sensor and the water surface. I mounted the lid of a waterproof electrical conduit box to the top of the PVC cap by drilling a hole big enough for the sensor, which gets secured with a standard 3/4″ NPT nut. Inside the box there’s a Seeduino Stalker datalogger board with Xbee radio and a LiPo battery. On the top of the box I mounted a weatherproof 6v solar panel, which is routed into the box through a cable gland to keep the battery charged. So the entire assembly is weatherproof and can be simply slipped on and off the top of the stilling well pipe.
The solar panel keeps the battery charged, so the batteries will never need to be replaced. The datalogger can store the data on a microSD card and/or transmit it via Xbee radio or 3G cellular module. I tested the sensor in different water conditions and compared it to manual measurements made with a metric ruler and automated measurements made with digital-output pressure transducers, and the measurements are very accurate. I’ll share more details about the data in an upcoming post.
I am very interested to see the results of your tests with the ultrasonic sensor vs a pressure transducer.
When you post your results, can you please identify the range accuracy and output of the pressure transducers??
Do you have a good pressure transducer recommendation by chance?
We’ve had really good results with the Decagon CTD sensor. It provides water depth, temperature, and conductivity, all for less than $500. It has a depth range of up to 10 meters and has a resolution of 1 millimeter. It provides data output in either SDI-12 or serial output, both of which can interface nicely with our loggers.
I’m wondering if you have an opinion about the minimum depth a CTD reliably works in. I need to measure depth in a small custom made flume and the water depth is rarely above 1 cm. I’ve used CTDs in bigger streams. Thanks.
@Shannon Hicks Could you post a bigger image of the test/installed site? And perhaps some sample data? Also info on how the sensors are doing through the winter, would be helpful.
I think I want to build and deploy a couple to test for potential use in community driven local flood monitoring and forecasting in the lower Snoqualmie Valley (outside Seattle).
That photo was from a temporary test setup, so I don’t have more pictures. I moved the PVC pipe to a more secure mounting to survive higher flows. The ultrasonic sensors, along with all of our other sensors and logger circuitry, are performing perfectly this winter, even with air temperatures below 0 degrees C a few times. I’m still running a few experiments with various ultrasonic setups, so I’ll share that data when I’m able to make a conclusion.
We’re going to try to build a water level sensor (ultrasound) using your design. But we’re going to need some help. For example, when I Google the Seeduino logger board kit, it says discontinued. And when I try Arduino FIO, I get a whole bunch of different products.
Any chance you could post a list of materials including where we purchase each and a product number? For the off-the-shelf stuff like the sealed plastic j-box, the size would be a great help.
Then a close -up picture of the box with all the components labeled.
Lastly some sort of block diagram showing the connections between components?
If these are already posted somewhere within the website, just point me in the right direction.
@sollins Looks like Seeed has revised their Seeeduino Stalker design since the v2 shown in @Shannon Hicks build.
I have dozens of Seeeduino Stalker v2.3 boards, and we have been using them for a few years now. But they were discontinued last fall and replaced with the new v3.0 model. We will not be using the v3.0 version, for a variety of reasons, so we are currently testing and evaluating other board options. The Fio is only handy because it has an Xbee socket, but it has no RTC, solar charger, or memory card slot. We haven’t developed a tutorial for how to build a stalker 2.3 based logger since those boards are nearly impossible to find now.
I am curious as to why you will be staying away from the v3.0 Stalker boards. What disadvantages do you see compared to previous versions?
Sam, that’s a really good question, ask it over in the “Dataloggers” forum and I’ll answer it there so other people can find these discussions more easily.
@Shannon Hicks Thanks for the update. Please keep us posted on what you are setups you’re experimenting with. Based on your earlier posts I think I am going to also start development on similar setup.
Since I’m a amature radio oprator [KE4HET] and looking to potentially do an open public deployment in the Lower Snoqualmie, think I am going to focus on different RF interfaces (xBee [on 2.4GHz & 900MHz], WiFi, WiMax, Bluetooth, 400MHz ISM, APRS, GSM, etc.). I think I will also look to integrate a GPS module (like https://www.adafruit.com/products/746) to provide accurate time and location references for publicly posted data. My ultimate goal would be to crowd source real time flood data for our valley in much the same way that backyard weather stations are being used to crowd source hyper local real time weather data. (http://www.wunderground.com/personal-weather-station/dashboard?ID=KWAFALLC9#history)
This should work out great if you continue to post your development on the sensor side.
Again any photos and part lists you can post would be helpful, even if those aren’t your finial “recommended” solutions.
Okay, I ordered a MB7040 I2CXL-MaxSonar-WR sensor [I like the i2c interface and don’t need mm resolution] and wrote up a bit of a concept paper for what I’m hoping to do.
That sensor may not be the best option for you, head over to the Sensor forum, start a thread there and I’ll elaborate.
Really cool stuff that is going on here with the DIY Utrasonic Water Depth sensor. I see how being able to construct something like this on a tight budget is extremely important for increasing stream gauging data.
OnSet makes the HOBO U20L pressure transducer/datalogger combo
for about $300 (another $200 for the software and PC connection hardware). Besides the fact that the utrasonic water depth sensor can be mounted above the water surface for collecting stage data, are there any other advantages that it has over something like the U20L, such as cost or accuracy?
This is a good topic for the Q&A forums. Start a thread over there and we can continue the discussion there.
I am interested in constructing several of these depth sensors and deploying them in runoff detention ponds at cattle feeding facilities. I was wondering if you had a recommendation for a different board that has the same capabilities as the Seeeduino Stalker v2.3?
Thanks is advance,
I am thinking of doing something similar but for garbage monitoring. I have some banner ultrasonic sensors (T30UXUCQ-78542). Have you any experience on connecting these type of sensors? Also, are you able to share the code on the arduino
Thanks in advance
Been working on my prototype using an Particle.io Photon and a and have been posting about it over in the Particle.io community forums.
I’m a high school intern and my company wants me to create one of these. Could you post some schematics so I can see how you did this.
The board we used in the photos (Seeeduino Stalker 3.2) isn’t available anymore. I have a colleague who was going to post a full writeup tutorial for this ultrasonic logger build, but since no one can replicate it due to the obsolete hardware, it got put on hold. Once the new Mayfly board is available (very, very soon), we can do a tutorial of how to interface it with the ultrasonic sensor. Stay tuned!
I have ordered an Seeduino v2.3, Maxbotix 7389 and a gprsBee rev. 6. Then I found this page ,-)
Nice to see, that these three parts are already in use together …
Steve, could you please provide some more information about your setup and software?
PS: The stalker v2.3 was still available somewhere in china with the solar cell, battery and waterproof housing…
I’ve been lurking here for sometime, but have just had to sign up! I’m based in the UK and am looking into creating a similar water depth sensor here – I can’t buy the Mayfly as Amazon.com won’t ship it to the UK and its not available on .co.uk unfortuntely 🙁
I just wanted to know though, are you working on the writeup for the Mayfly board?
We have been field-testing various configurations of the ultrasonic station and wanted to be sure we had the best design before publishing the instructions. Some colleagues and I are having a build session later this week where we will be assembling several Mayfly ultrasonic sensor stations, and our goal is to make a tutorial out of the photos and notes they take, so something should be posted soon after that.
Since the Seeeduino is discontinued and the Mayfly is not available in Estonia, do you happen have any recommendations on a replacement that is available in Europe. What was the approximate running time of your setup? How long would your battery setup last in northern temperate zone with winter temperatures down to -20 C. If you would dump the communications? Would using the Arduino mini pro make a difference? Do you have any experience?
If you still have it, could you please share the code that you used for this project?? I have a spare Seeeduino Stalker laying around and it would be great to put it to use, but I am not the most talented with coding. Thanks
I would have thought that the beam width of the sensor is too wide to put in a pipe. How long is the pipe you are using and did you have problems with longer lengths? Nice work and thanks for posting this.
No, the beam width is very narrow on the models we use, so it doesn’t have a problem in pipes that are 4 or 6 inches in diameter. I experimented a lot with different diameters of pipes and different lengths until I found the right combination that worked for us. Later Maxbotix published this page which nicely summarizes the same findings I got. https://www.maxbotix.com/Tutorials/124.htm
Basically, use a continuous piece, no corrugations, seams, or obstructions along the sides (like condensation and spider webs).