Axis Developer Board
The Etrax-100, to be found at developer.axis.com,
is a 100Mhz embedded processor, runs Linux 2.0.36 and Linux 2.4 Kernels by default,
has 2 RS-232 ports, 2 Parallel Ports, 1 RS-422/485 half-duplex, 1 10/100 Ethernet
connection, and their latest version also does Bluetooth. Embedded. Cool.
Size: 3in x 4in x 0.5in high.
I was lucky enough to have been given one of the earlier models (without the
Virtual Memory support). Hey, I'm not complaining!
By connecting the RS-422/485 to a radio modem, one of the serial ports to a
12-channel Analogue Output board, and one of the other ports to a Digital
Input / at least 6-channel Analogue-Input board, plus connecting 3 Gyroscopes
in just for fun, too, the Etrax developer board is capable of controlling
and monitoring SpiderBall's movement.
It's almost a pity that there might not be enough space or weight left
to put further nasty attachments on the outer casing; the Etrax could
definitely handle it.
I may also consider putting on some ultrasound or infrared sensors to detect
nasty robots sneaking up on exposed legs. Theoretically, it would be possible
to get SpiderBall to retract / jump out of the way if something approached
it at a speed known to be beyond the limits that the legs could withstand,
at impact.
Sony Vaio running Linux
A laptop computer running Linux 2.5.1 Kernel, with two Thrustmaster Pro joysticks,
OpenGL software simulation modelling the SpiderBall. Also connected to
a radio modem, this time RS-232 (or USB?), the real-time control software can
communicate with the Etrax Developer board, obtain information on the
positions of the legs, and the rotational position of SpiderBall from the
Gyros, and decide what to do, based on user-input from the joysticks.
Why *two* Thrustmaster 4-axis joysticks? The Thrustmasters can be broken
down into 4 2-axis controls:
- one of the 2-axis controls will be used for rolling motion (drop legs
on one side and push legs on the other)
- another will be used to lean and tilt.
- one of the axes will be used to specify the height of the legs.
- buttons will select individual legs, defaulting to those legs
currently not being used for motion.
- one of the 2-axis controls will be used to control the extension
and spin respectively of individually-selected legs.
- one of the axes is currently spare, but i doubt that it will
stay that way for very long.
- plenty of spare buttons, for pressing at random in emergencies.