LaunchBot - By Eric Gregori
LaunchBot is controlled by a TI MSP430G2231
16 bit computer on a chip (micrcontroller). The MSP430 value line of microcontrollers have up to 16K of flash, 512 Bytes of RAM, run directly from 2AA batteries, and cost less then $2.00 in single quantities from Digikey.
The internal oscillator, power supply range, and built-in debugger make the TI MSP430 really easy for a DIY'er to work with. You can basically deadbug a MSP430G2231 to a project using just 2 AA batteries and no other external parts.
The TI LaunchPad (red board on top of the robot ) is a $4.30 DIY'ers dream. For $4.30 you get a FULL development system including professional IDE, C compiler, real-time debugger with breakpoints, and a flash programmer. I have been in the semiconductor industry a long time, and I don't know of anything that comes close to this in terms of price and utility. An important additional "feature" is the IDE used for the LaunchPad is TI's Code Composer Studio (CCS). CCS and the MSP430 are professional tools used by engineering companies around the world. The time you spend mastering CCS and using the MSP430, can be applied to your resume as experience.
If the TI LaunchPad is the mind, the robot kit to the left is the body. This low-cost robot kit is called R3D3 by KitsUsa, which is selling it for only $10.00. The kit is apparently made by Elenco, part #21-890. Be aware of who your order the kit from, we have found that some on-line retailers are charging a HUGE shipping and handling fee. The twin motor gearbox used in R3D3 is also available separately from Elenco (part# 21-131). The kit is really easy to build, I was able to assemble and solder the kit in less then a hour, and I am mechanically declined!
This kit comes in two flavors; solder, and non-solder. This of-course pertains to the circuit board provided with the kit. The board has two IR pairs pointed down for line following, a simple transistor drive for each motor, and two red LED's for eyes. The robot uses differential drive for locomotion. Each wheel is controlled by a separate motor/gear train. The simple transistor drive either turns a motor on or off. A ball bearing is used as one caster, with plastic nubs being used as the other caster. In the picture on the left, you can see the IR pairs, the two individually controllable wheels, and the ball bearing.
The wheels have rubber donuts around them so they get good traction.
In this top view of the robot (picture right) you can see the twin motor gear box in the center, the 2 AA battery holder, and the circuit board. The red LED's on the circuit board are used as the robots eyes. The robot is approximately 5 inches tall and 3 inches in diameter. The smoke plastic ring in the center is clear, so you can see the circuits inside.
The circuit board shown above is the original board that came with the R3D3 robot kit, modified to work with the TI LaunchPad. I had the solder version of the kit, so I did not completely populate the board. Notice, Q1, Q4, Q7, Q8, R4, R8, EC1, EC2, R4, R8, R11, R12, R13, R14 are removed. This is required to allow the TI Launchpad to control the motors, and read the IR receiver. In all, there are eight wires between this board and the TI LaunchPad. Two for power/ground, two for left/right motor control, two for Left/right IR receivers, and finally two to control the LED eyes.
In the following pictures, P1.x and P2.x are header pin labels on the TI Launchpad.
Above, original R3D3 schematic below, mods to interface to LaunchPad.
TI Launchpad R3D3
Vcc Battery + (Vcc)
P1.0 Right Motor
P1.4 Left IR
P1.5 Right IR
P1.6 Left Motor
P2.6 Left Eye
P2.7 Right Eye
GND Battery - (GND)
Notice that not all the pins on the Launchpad are required to control the robot. The TI LaunchPad includes a USB to serial converter, for connecting to a computer. P1.1 and P1.2 are used for TX and RX communications back to a PC. This would allow you to control the robot or reads its sensor from a PC (or possibly wirelessly). P1.3 is connected to a pushbutton on the Launchpad. I am using this as a "learn" button. P1.7 can be used as a analog or digital in to communicate with additional sensors, or as a digital out.
Programming the TI Launchpad is easy, simply install Code Composer Studio(CCS), and plug in the Launchpad. CCS automatically recognizes it. Look in the comments below for CCS projects. I will upload various projects with full source code to get people started programming the robot. The TI Launchpad is VERY well supported with a robust WiKi, many great pieces of example code, and easy to read documentation.
Once the part is programmed, it can be removed from the Launchpad and used directly. I simply integrated the Launchpad into the robot. Make sure you do NOT poser the Launchpad with battery and USB at the same time. There is a VCC jumper on the Launchpad J3 that can be removed so that you can debug under robot batter power. I simply debug under USB power, and disconnect the VCC connection between the robot and Launchpad during debugging. When your program is ready, disconnect USB, plug in robot VCC, and your robot is moving along all by itself.
This robot has gained a lot of excitement from members of Chibots (a Chicago robot club), keep an eye on www.buildsmartrobots.com to see what these robot experts will be able to do with a $15.00 robot, I am guessing it is going to be extremely cool!!!