Let's Make Robots!


Measure water depths in lakes
Bilde.jpg881.9 KB
MarkII_LOG_microSD.zip2.73 KB
MarkII_NAV_microSD.zip5.11 KB
DELFTship_linesplan.pdf159.55 KB
Mark_II_versjon_1a_mod.zip9.02 KB

This is Mark II of the Whirligig project http://letsmakerobots.com/node/16995 code name SEA RENDERING (it’s not actually a code name, just an anagram for my name :-) )

The purpose of this robot is to have it log water depths along a predefined set of waypoints. It stores its data on memory sticks or on SD cards. The estimated runtime is about 24 hours and with a top speed of 3km/h it will travel roughly 72km. With a log entry for every 10m this would give us over 700 depth measurements   with full GPS reference.

Most of the control system has been moved from the original Whirligig to save cost and time.

The hull was designed in the free version of DELFTship http://www.delftship.net/ and built this winter. With the split mould I can produce a second hull in matter of days.

The original plan was two hulls working in pairs as a catamaran with a solar panel on top. This can still be done but two robots working independently we can cover a larger lake on shorter time.

Some images from the hull build

Adding fiberglass to one half of the mould

Mould completed

The first casting

Here are some pictures from the complete robot


Polymorph beddings for the batteries

Control system

Some electronics in the lid

The waypoints are entered using my adaptation of the Ardupilot tool. A great application that lets you interactively add waypoints to your list. This list is then copied onto the SD card and the robot is ready to run.

I run this routing 3 times and this is a GPS visualization of the log. The green markers are the waypoints.
(one of the log files are attached)

My brother (a professor at the University of Oslo) that will be using this robot, then run these 3 logs in something called  "Thin plate spline" http://en.wikipedia.org/wiki/Thin_plate_spline to see if the depths we logged made sense. And this is what he came up with.

All in all this project seems very promising.

Update 28/6-2010

After having had some problems with the VDIP1 USB interface I decided to go for the microSD shield from Sprakfun http://www.sparkfun.com/commerce/product_info.php?products_id=9802 .
Now the whole thing looks much cleaner and is probably more robust.



Update 11/7-2010

This weekend my brother and I went to the lake ‘Riskedalsvatnet’ to do a full scale test. The full waypoint routing had 337 waypoints and a total length of 18,1km.

The traveling speed of the boat is about 3km/h so the mission should have been completed in about 6 hours. As this was the first full scale test and we had some uncertainties on where the shore line actually where, we decided to split the trip into 3.
This is the first segment of the mission.

This is how the boat run

And this is an Dr.Depth rendering of the depths we got.

After all segments where completed this map was generated in Dr.Depth

A full size map in b/w is attached


UPDATE 14/7-2010

Added the Arduino sketch if anyone want to have a look.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Can you explain what each microcontroller's specific job is? I am guessing one is a master and 2 are slaves but what does each one do?

One Arduino is programmed to reformat and log information from the transducer and GPS. The only connection to the second Arduino is a line pulled high when logging is confirmed and we are ready to run the routing. The second Arduino handles navigation and logs each waypoint as we pass them. On calm water the accuracy is very good; most of the waypoints are passed in a distance of 1m or less.

This might seem as a waist of Arduino’s but it makes the programming and debugging much simpler. The plan is also to use the boat on other tasks, then it is easy to leave the navigation system in and change the logging Arduino to do something else or have a completely different system installed.

The PICAXE (poor thing) sits in the lid. Its only task is to measure ambient light an flash the lantern at intervals when it gets dark.  

Ok so they are just about completely independent of each other. (I thought that was a lantern light on top) I have one other question. I see what appears to be the EM406-a GPS but do you have a compass module? I would think the GPS would get bad heading data when turning to the next waypoint. 

There is no compass module onboard and we rely on the GPS courses.  I can see that a compass would probably optimize the waypoint turn but for now I’m very satisfied with the way it handles.
It isn’t critical that the line between the waypoints is not completely straight as long as we get enough depth and GPS readings for the mapping.

A simple addition to its program could turn it into a line follower. Following an isobath while recording lat/long coordinates.

I’m not sure I follow you on this one.
The reason for mapping the lake is to build the map as none exists….

I mean, only partly in jest, that the Sea Rendering could be programmed to search for a specific depth, say 50 m. And then stay with that depth-line (isobath). As it follows the isobath, a contour line would be produced. To be added to the map.

My guess is that such a strategy might be more efficient (for some mapping expeditions) than the scanning a grid strategy.

Very interesting project! Can you tell something more about the sensor to measure the water depth?



The sensor is an Airmar DST800 http://www.gpsmart.ca/item7002.htm 
That gives you standard NMEA 0183 sentences over a serial line.

Interesting project, Geir. I am planing to making something similar to measure the water quality