I'm planning of building a small Arduino-based robot, but it seems there is a lot for me to learn. I'd be grateful of comments from more experienced and knowledgeable people. I consider myself an absolute beginner on electronics front, though I do know some of the basic electrical components and connections. I'll start with some questions.
Arduino runs on 5V, but accepts power input from 7 to 12V, some circuits on the other hand run on 3.3V. Some examples use different power sources e.g. different power source for motors, but some examples simply use the same power. Fundamentally, when constructing a arduino-based robot with several devices and circuits, is it possible to withdraw all of the different voltages from the same battery if using some sort of voltage conversion? Is it possible to connect the devices/circuits running on different voltages in paraller? It seems to me that most of the connections are in series - only two wires (plus and minus) to arduino board, but e.g. stronger motors might require more power than basic Arduino (what I've read should be on 5V, something like 500mA to 1A). So.. One or several rechargable battery units?
My plans so far:
Phase 1; learning the basics
- Autonomous movement and object avoidance
This is where I'd start from, making a robot very similar to Start Here -robot by Fritsi. I'd use Arduino platform instead, because of possibilities with multiple Arduino Shields later on. Not to mention I have more useful experience from C++.
Phase 2; creating a soul
- mp3 playback; I'd accomplish this by installing mp3 shield. Hopefully possible to control playback via code.
The idea behind this is to make the robot play emotional sounds. First phase would be probably something like R2D2 bleeping and playing some happy tunes if lots of activity on the infrared sensor.
- very_crude_emotional_AI
This would be controlled by some variables (e.g. happiness (1 to 100), boredness (1 to 100), humans_around (yes, maybe or no), daytime(night or day) and so on). Actions of the robot would be then affected by these simple emotional states.
Phase 3; extended brain
- XBee connection to computer
Accomplished by installing Xbee Shield. Used to communicate with computer, and then hopefully I could use the desktop computer to act as an extended brain for the robot. Some more complex tasks later on would probably require this.
Phase 4; this is what i dream of
- simple robot gripper hand; something to pick up and manipulate objects
- visual sight (camera, simple object or symbol recognition)
- hear (low grade microphone)
- small display, able to draw an emotional face
Useful gripper hand seems like a tough thing to build and code. Optimally it would be a hand that could grab onto or pick up suitable objects, possibly even help in more advanced motor tasks such as lifting one side of the robot itself. This would be something fun to work on (for a long time). (Ultimate fantasy would of course be the beer bringing robot, but lets not get ahead of ourselves)
Sight would probably be mostly used for understanding shapes and special symbols (e.g. reading barcodes). Possibly motion detection to affect humans_around -variable. Hear might be used for same purposes.
Display would be used for whatever comes to mind. Showing debug info, news from internet, emotional smiley face.