It's time to build a robot!
I plan to make a robot using a Beagleboard for high-level functions:
- image processing
- artificial intelligence
- speech synthesis
- voice recognition
- internet connectivity
And an Arduino for low-level functions:
After a break from robotics development, I'm back, but with something a bit different. The Nao robot form Aldebaran Robotics is one of the most advanced commercially available humanoid robots. While used mainly in academic research (including the Robocup robot soccer competition), Aldebaran is looking to expand their market, and are now seeking developers to come up with new applications for the technology.
Nao is 58cm tall, with 25 degrees of freedom including hands that can grasp small objects. His brain is an x86 500Mhz AMD Geode running Linux, with standard programming support of C/C++, Python, Urbi and Aldebaran's own visual NaoQui system.
Thanks to the folks at beagleboard.org, my shiny new Beagleboard has arrived! This is from the "Beagleboard Sponsored Projects Program" at http://beagleboard.org/contest. If you have an idea for a good project involving the Beagleboard, you can submit the details. Each week, two projects will be selected for a free board!
It's useful to have a physical way to control software running on the Bealgeboard, though without a normal keyboard this can be difficult.
A robot with a webcam needs to be able to look around to survey its surroundings, and this can be accomplished using a pan / tilt mechanism to move the camera. The first step in construction is to disassemble the Playstation Eye webcam to remove the heavy metal base and unnecessary extra bits of plastic.
I decided to try the PlayStation Eye (PS3 Eye) webcam on the Beagleboard after reading an article on Create Digital Motion explaining how useful it is for computer vision and augmented reality applications.
The PlayStation Eye webcam is designed to be connected to a Sony PlayStation 3 (PS3) to provide interactive games, however it has a number of features that make it ideal for hacking into computer vision applications:
After battling with cross-compiling C++ code for the Beagleboard using Eclipse on a Linux box, I've found a much easier way with the NetBeans IDE. You can edit and debug code on your computer of choice (I've tested with Mac and Windows) while the code compiles and runs on the Beagleboard itself: