We developed three general designs that met our requirements:
- The netbook robot
- The beagleboard robot
- The cellphone robot
Each robot consists of three fundamental parts:
- The brains - a mobile computing device that gives the robot autonomy, and may incorporate its sensors
- The interconnection hardware (the spine) - hardware that lets the brains communicate with the hardware
- The mobility platform (the muscles) - the hardware that gives the robot mobility
The netbook robot uses a netbook for the robot's brains, a Phidgets motor controler for the interconnection hardware (the spine), and, in this case, the treads from a RC tank for the mobility platform. The netbook robot is probably the simplest design to build and program, although all of the robots are quite simple. The netbook is connected to the Phidgets motor controller via a USB cord, and the motors are controlled via library functions supplied by Phidgets. (Libararies are available in a number of langauges, including C/C++, Java, C#, and Matlab.) Programming is done directly on the netbook and code can use all available devices, e.g. the webcam, for sensing and navigation.
The beagleboard robot uses a Beagleboard as the brain, a low current Phidgets motor controller to connect to the platform which is DFRobots tracked tank. The cheap relatively cheap and very small yet powerful beagleboard makes it possible to build a cheap and compact size robot. This robot runs Linux Angstrom and so is open to most of the libraries and IDEs that linux has. Relaying on vision, The robot is able to navigate and avoid obstacles. It can also detect balls of several colors.
The cellphone robot uses a HTC Nexus One to control a DFRobots DFRduino Romeo board via bluetooth. A bluetooth adapter had to be purchased for the board. The program for the phone only supports manual navigation as of right now, but once the team gets OpenCV working on Android, the robot will be atonomous. Programming was done in Eclipse SDK. Due to the nature of the Android platform, only Android 2.1+ devices are supported. The program is uplaoded to the phone via a USB cable, but upon completion, the program may be released to the Android Market free of charge.