Lots of work is going into the software, and the robot has broken the surly bonds of my bench supply. Here are a few new pictures with an Apple IIgs shown for scale.
The bottom deck includes the motors, motor driver, and the power distribution board, shown here removed. The power distribution board contains the battery holders, a main power switch, two separate fused circuits for logic and motor power, an external power connection useful for testing on the bench, and an emergency kill switch. The kill switch is simple and reliable: a wire in series with the motor power supply protrudes from the back. Pull the wire out, and the motors stop. Logic retains power for testing and diagnostics.
The final photo shows the LCD on top of the micro-controller board. There is an XBee for wireless programming, debugging, and telemetry. Also, note the GPS, a small board for 3.3 VDC power distribution, and a level converter board. The unconnected yellow wires are for hardware flow control to the XBee, but the XBee operates adequately without flow control. I also have space on the top deck reserved for a Vector V2xe magnetic compass.
Not obvious in these photographs, I’ve added a remote kill switch. Send a “CTRL-C” character over the wireless link, and the software disables the motor driver. The interrupt handler for the serial communications interface checks for and handles this control character, so the robot should respond to the remote kill even if the most of the software has gone haywire.
I’ve switched over to interrupt driven serial I/O from polled I/O. This change should improve software performance and make the rest of the software easier to write.
I’ve replaced the plated metal standoffs with 2″ Nylon standoffs. They’re lighter and should help magnetic compass accuracy.
I’ve finished software to parse NMEA data from the GPS and software for basic tele-operation.
The software needs a lot of work still, but most of the low-level infrastructure is in place and working well. Also, I’m dissatisfied with motor torque. The robot works well on flat ground but grinds to a halt on bumps.