Please advise me how to build a puddle-detecting robot (for a school project)

I want to build a small autonomous robot able to detect different acid or basis puddles and to neutralize them.

Firstly, please recommend me some good Arduino sensors for humidity (I already have one for Ph, but if you have an idea I don't mind if you post it below). I don't now whether a sensor for air humidity is suitable for detecting a puddle; if it isn't, please tell me if there is a sensor for detecting puddles too or I need to find a clever way of detecting it with just an air humidity sensor.

Secondly, I need to determine the volume of a puddle, using a robot able just to move and detect puddles. I don't need the exact volume, I can approximate it with a fairly generous margin of error. Please note that this is supposed to be happening in a chemistry lab; the floor should be fairly flat.
Are there any sensors for detecting the small depth of a liquid and to determine the area of a puddle (I can mount a little camera, but I need the software to recognize the area I want to scan).
Do you have in mind any clever tricks of determining this?

Of course these are not all the issues I'll have building the robot, but this is a topic for another time.

Thank you for your help! :slight_smile:

I have this question too. Can an IR LED sensor be of any use?

A humidity sensor will tell you the relative humidity in the air. A puddle nearby will not affect the humidity to any noticeable degree.

How big/deep a puddle are you trying to detect?

Secondly, I need to determine the volume of a puddle, using a robot able just to move and detect puddles.

The image of a large black housefly, walking around on the floor, putting down a proboscis at regular intervals comes to mind.

From the depth readings, combined with wetness and pH sensor readings from the tip of the proboscis, all interesting quantities could be determined.

What types of acids and bases are you hoping to find on the floor? If there are puddles in the lab and there's not someone taking care of it the second it happens then you've got bigger problems than your robot can fix. What types of acids and bases are you using for neutralization? Do you know all the chemistry involved? Some of those reactions can be quite violent. The bot should probably do something to clear the area before he starts anything.

@PaulS

about 500 mL max

@Delta_G

Anything, really, from H2SO4 to H3PO4 in any concentration (probably less than 98%). Same goes for bases.

The robot will neutralise them, thats not the main concern.

I was thinking of using an 8x8 thermovision camera from adafruit, but i dont know if that resolution is very reliable (they say it can detect a human from 7m). The liquid that evaporates should cool the area, and then the robot should go and investigate.

Hmmm, an amateur developing a robot to discover and neutralize concentrated sulfuric acid spills, using a camera.

Sounds like a recipe for a compound disaster.

"Sounds like a recipe for a compound disaster"

I am very aware of the risks of acids, bases, whatever concentration or pH they have.
Please note that this is a robot meant for a contest, not real life usage. It means that it needs to demonstrate its purpose in a controlled environment.

It means that it needs to demonstrate its purpose in a controlled environment.

What IS it's purpose? To find a spill before it runs into it? To map out a spill? To clean up a spill?

Any of them assume that a spill is detected as soon as it happens, and that the spilled material doesn't spread. That latter assumption is the least likely to prove to be a valid assumption.

The purpose is to find puddles (if any) on the floor. However, it will have it own pre-established course. I need it to be able to detect a puddle if its about 1m away from the front or the sides, while maintaining that course.

DanielValahul:
The purpose is to find puddles (if any) on the floor. However, it will have it own pre-established course. I need it to be able to detect a puddle if its about 1m away from the front or the sides, while maintaining that course.

The base of the robot may need to stay a meter away from the edge of the spill, but you are going to need something more than a meter out in front of the robot, carrying some kind of sensor or camera, that can detect the spill BEFORE the rest of the robot gets to it.

@DanielValahul: do not hijack threads or double post

Sorry, me and andrei1234 are in the same team. Anyway, i think i should've made that clear in the first post. Sorry if i broke any rule of the forum, im new here

DanielValahul:
I am very aware of the risks of acids, bases, whatever concentration or pH they have.

DanielValahul:
The robot will neutralise them, thats not the main concern.

How you neutralize it is very important and depends on the type and concentration of acid. They're not all the same. You can easily turn a small puddle of acid into an atmosphere full of acidic vapors and kill all your friends. Or you could cause it to splatter all over your bot and start melting things. Wouldn't that be fun!

BTW: Professional Chemist here.

@Delta_G

Baking soda and vinegar, really. (should result in water, CO2, CH3COONa)
We'll use less than 20g of vinegar, just enough for the robot to detect. And by neutralising, it will pour the baking soda solution on the puddle of vinegar.

If you have any less toxic examples that could still trigger a pH sensor , it could really help us. For neutralisation we'll try to bring the pH into the [6.5;8.5] range. As i have mentioned, the purpose of the robot is to demonstrate its functionality, and again, if you still think this is too dangerous, then we'll simply leave out the neutralisation part and leave just the detection of puddles (using plain water)

Safety the primary concern. Thank you for your concern, and any advice is welcome!

If you are just demonstrating the ability of the robot to stop and do something if it detects a puddle, and the puddle consists of some material that a moisture sensor can SAFELY detect, and the puddle is on a non-conductive surface, then all your robot needs to do is carry a moisture sensor around, far enough out in front so that it can travel at a reasonable speed but still stop in time to not run into the puddle, and measure the moisture level as close to "continuously" as possible.

I'm assuming that detecting a puddle of liquid will cause the robot to stop and then use other tools to analyze the liquid to determine how to treat the spill, instead of just slinging some "neutralize anything" compound far and wide.

If that assumption is wrong, please ignore this whole post.

So now it's vinegar. That will just make a mess. Earlier you were talking about concentrated sulfuric and phosphoric acids. You don't just throw baking soda at puddles of those. The reaction would be very violent and spray acid everywhere.

Again, no such acids will ever be used. Those were extreme examples.

And it will make a mess. Thats not the point. The point is, the acid (from the vinegar) will be neutralised and the purpose was fulfilled. I have demonstrated that it works with a very basic example.

Forget the sulfuric or phosphoric acids, i will never use them, or anything close to them.