My first Robot -or- How to give a stupid 20€ cleaning robot a nerd-soul

The base-hardware is known as Cleanstar 2030-Robostar, Supportplus SP-ROBO-01 or TCM Reinungsroboter and is available for next to nothing on eBay. And it's very stupid: If you turn it on it beeps a melody and starts cleaning, using a very simple amebic algorithm (if you hit something, turn in a random direction and start over). Plus it has no docking station, you have to plug it in yourself.

The current version of my robot is able to distiquish doors from the rest of the room (thanks to the laser and the camera), makes an educated guess what the current position and room is, and where to find the docking station. In 7/10 tries (working on that) the robot is able to drive into the docking station (which has a infrared beacon) to recharge. Thanks to a completely rewritten navigation docking now works 99% of the time.

Some Fotos / Videos

drFloyd on my workdesk, ready to receive new updates.

Trying out better collision avoidance and navigation routines (it knew those are not doors, niiice)

drFloyd about to dock in it's (improvised) dockingstation.

I don't know how it got stuck so firmly, but it was anxiously beeping (and assert()ing) for help.

This is how it's known world looks like, circa (the known-world-radius currently equals to the transmission radius of the camera)

The new navigation. Robust as hell, the spinning is only to see if the computed world is still in balance with the real world.

This is what it's POV looks like (with debugging-overlay). Left: computer vision, right: raw video stream.

What did i change?

What's left to do? (This is work in progress)

Created on 24.12.2008 | Tags [ ]