Dual water depth sensor system

I have a stream in the garden, which has a grid that is designed to stop large objects getting drawn into a pipe. The problem I want to try and get around is that there are times when too much rubbish builds up on the grid, causing a back up of flow. What I would like to do is set up 2 sensors, mounted looking into a 3 or 4" diameter plastic pipe that can then read the distance of the water below the sensor, and then compare with the other sensor, and if there is either a difference of more than X between the 2 (X is not yet decided) or if the level is above a trigger height, the processor will then activate a relay or whatever that will trigger a warning device inside the house, via a cable that's already in place. One sensor would be before the grid, the other after it, so under normal operations, there will be no significant difference between the 2, as rubbish builds up, there will be a difference, possibly as much as 500mm, depending on what's got caught on the grid, and the flow rate.

THe key issues are a suitable sensor that will give a reasonably accurate distance to the water level (Maximum of 1.5 metres, minimum of about 300mm, with a reasonable level of accuracy, and if library code to drive the sensors exists. Beyond that, I'm prepared to do some experimenting, as using the Arduino will be a step towards some other projects that I'm looking at that are also Arduino based.

Longer term, I may well look at using a WiFi connect or similar to send the depths on a regular basis to a PC indoors for logging, but for now, the dual sensor concept will give me a sensor that can warn me if there's a significant build up of debris, or equally, a significant flow rate that is approaching the danger level.

As far as the sensing tubes are concerned, if a more reliable return will be obtained by using a float of some sort inside the tube, that's not an issue, as it can be made captive. The tops of the tubes can be closed (apart from a breather access to allow the water to rise) if needed, or open , it makes no difference operationally. I was thinking along the lines of either ultrasonic or infra red sensor units, the main issue is that I want to try and make sure that I don't get false reflections from the tube walls that will distort the return, or make it inaccurate.

Hope that's enough detail for what I'm trying to do.

Thanks

Steve

Hello Steve,

Just thinking out loud here. How complex does it need to be? Would one sensor work? Without seeing the setup, it seems to me that it would be sufficient just to check for a certain water level upstream of the grid. When it reaches a certain "too high" level, then raise the alarm.

Downstream of the grid, under normal conditions, it would seem the water level should be more or less a constant anyway, or it may actually decrease as the grid gets blocked. Be that as it may, is the downstream level really useful information?

I'm assuming this is a man-made stream and that steady-state conditions are fairly constant. If it is a natural stream, then some additional thinking is probably warranted to account for seasonal variations and short-term variations caused by rain, etc.

Can't you just use a simple float to tell when the level is too high. Then it would just close a switch and set one of the inputs of the Arduino to high.

OK, a few clarifications. It's a natural stream in a blockwork channel, and the depth can vary from next to nothing at times of no rain recently to 100 Cm if the channel is full, and it can go to 30 or more cm above the walkway if things get really bad, and I need to know about it if it's getting to anything above 100 Cm, as above the walkway level, it represents a flood risk to the house. There is a wall between the stream and the house, and the drains from the garden have one way valves on them, but we've been flooded before, and this is part of the upgrade of the warnings to make sure that it doesn't catch us by surprise again.

The reason for the dual sensing is that debris can become lodged on the grid at any water depth, and if it's below a certain level, it's not a major issue, but after a while, it can become one. The reason for looking at 2 sensors is to make sure that I know if the high level is due to blockage on the grid, which will usually give me a different level between the sensors, or just high flow levels, which I can do nothing about, so while I need to keep an eye on it, I can't do anything to change the level, whereas if a black sack of rubbish arrives on the grid, (and they do) that can have a significant and quite quick effect on levels, and will require me to be aware of it, and take action.

I have used a float switch in the past to monitor the "critical" level, but that gives me no trend, which longer term I'm going to go towards, so that I can see a better picture of "cause and effect", I've already got a small weather station in use, so I should be able to cross reference rainfall to stream rise, and allow for the time factor, which will mean I have advance warning in the longer term.

A float switch can work, but it's not going to give me the accuracy that I'd like, and a float has to be carefully protected so that it's not damaged by either debris in the flow (which can be up to 2 Mtr/sec) or little gurriers that are passing through, even though the garden is private property. A passive sensor inside a large permanently fixed piece of pipe, either plastic sewer pipe, or galavanised black iron if the sensor can work with that small a diameter, is less likely to have reliability issues.

Been browsing, and it's looking like ultrasonic is not going to work, they don't have the range, reading the newping library, they're not good for more than 40 Cm, which is not enough for what I need, so unless there's another device out there, I may be in trouble.

Hope that clarifies the issues.

Cheers

Steve

Here's a pretty interesting approach:
http://www.practicalarduino.com/projects/water-tank-depth-sensor

Or something like this, maybe it could just be mounted in an open-ended pipe:

Another idea, I wonder if a marine depth sensor could be adapted to work. I'm thinking they need to be basically at the surface level of the water, so that might be difficult to arrange.

Now this is getting interesting indeed.

The first option looks attractive, in that it's only going to need a small bore pipe from the bottom of the channel to the differential sensor, so easier to inplement, I shall take a very close look at that.

The second tank sensor might work, I'd be concerned that debris or things like alagal growth might cause the float to stick, which is why I'm trying to go with a non motion sensor that won't give issues with movement failure.

Thanks,

Steve

Indeed there is a lot to be said for no moving parts! Let us know how it works out!