With my background as a software developer, I know the value of setting requirements before you start working on something. If you don’t, you end up aimlessly adding features or tweaking functionality until you aren’t really sure what you were trying to do in the first place. So I am going to lay out my requirements for my new robot (whose parts I just ordered last night). This first robot is meant to be a proof-of-concept. My long-term plan is to use the knowledge I gained here to create a second, larger, stronger, more functional robot. To that end, I broke down my requirements into stages, in the likely (but not mandatory) order of completion.
Stage 1: Robot is assembled, microcontroller is sucessfully interfacing with motors, robot can move autonomously through pre-programmed instructions (no sensor input)
Stage 2: Robot can communicate what it is doing (for debugging and entertainment purposes) through buzzers, LEDs and LCDs
Stage 3: Robot can sucessfully navigate around a room using its sensors.
Stage 4: Robot efficiently navigate around a room (can differentiate between objects it can climb over and those it can’t, won’t brush against walls, won’t get trapped under chairs, etc).
Stage 5: Robot can identify small objects on the floor that it is strong enough to manipulate (either by simply pushing or by using a pincer)
Stage 6: Robot can identify when its battery is low, and recharge itself at a docking station.
Stage 7: Robot can manipulate small objects in a intelligent way (put shoes on the floor against the wall, put pens and pencils into a pile, etc)
I think doing these things will get me on a good start to creating a robot that does something useful, such as straightening up the apartment or fetching me beers from the fridge during Penn State games. It may not even be reasonable or possible to do this, but it will be fun to try.
Very ambitious!
As a Year 12 student of Software Design and Development, I can relate to your logic here.
Stages 5 to 7 are ambitious and make your proposed robot fully autonomous, which is just awesome. I particularly like the docking concept. Do you have any plans for what you will use to dock the robot?
Yeah, 5 and 7 will be tough,
Yeah, 5 and 7 will be tough, I think it is going to require a lot more than my current IR and Ultrasonic sensors.
For the dock, I plan on using an IR beacon, something similar to what is described here: http://www.botmag.com/articles/scribbler.shtm