Control of the Mad Monster Robot

Home Design Links Sponsors Diary          
Stress! Comms Control Legs Frame Controllers Batteries Motors Armour Challenges

Control

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.

Special Notes on OSMC-3 Control

The Open Source Motor Controller is worth a special mention, because it is so unbelievably adaptable. The MOB - Modular On-Board Brain has the following features: