http://www.robotgroup.net/mark/Centipede_concept.gif

The Centipeded is a segmented insect-like robot. The segments are constructed such that they are removable and "stackable". That is, the robot can be made almost any length you like.

I have been encountering some problems in the design definition stage. The big problem is that of knowing the turn angle. I would like to use a pot for it but all the ones I have looked at have a high friction on the wiper. The robot is light weight so this is unacceptable. If you know of a small, low-friction potentiometer, please drop me a line.

Failing that, I decided that a flex sensor (http://www.spectrasymbol.com/bend.html) would be a good choice. They only sense flexing in one direction so I would need two of them back to back. I figure they would have to be about one inch long.

I plan on using the Motorola Nitron series of HC08 microcontrollers. I am eyeing the [http://e-www.motorola.com/webapp/sps/site/prod_summary.jsp?code=68HC908QT2&nodeId=01624684498634 68HC908QT2] or the [http://e-www.motorola.com/webapp/sps/site/prod_summary.jsp?code=68HC908QT4&nodeId=01624684498634 68HC908QT4]. The difference between the parts is the size of the code space: the QT2 has about 1.5KB and the QT4 has about 4KB. The devices are based on Flash technology, have a four channel eight-bit ADC, six I/O pins (some are muxed with the ADC), are eight pin packages, and have an internal clock.

The pins are assigned thusly (assuming using flex sensors):
{{{Left motor control
Right motor control
Left turn angle sensor
Right turn angle sensor
GPI for "all stop"
Vss
Vdd
spare}}}

Assuming I can find a good potentiometer:
{{{Left motor control
Right motor control
Reverse motor control
Turn angle sensor
GPI for "all stop"
GPI for "reverse"
Vss
Vdd
spare}}}

I am considering making the brain of the Centipede using a Cypress [http://www.cypress.com/cfuploads/img/products/CY8C26443.pdf PSoC]. I became aquainted with this part when I was at Dell and it is capable of some very complex processing. It has analog and digital blocks. As a general-purpose processor, it does not work so well, but for embedded applications, it is terrific!
