Feedback to the Mad Monster Robot

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

SpiderBall Rotational position

CSM Design Ltd specialise in Radio Control models, and they have some mini gyroscopes (they're tiny!) that are typically used in model helicopters, but have also recently been included in some of the top successful Robot Wars competitors.

Gyroscopes can be used to measure angular velocity [i.e. how fast something is spinning]. For simplicity in manufacturing, the Gyros CSM Design Ltd sources only measure angular velocity in one direction. Typically, in a helicopter or a "tank"-style robot control, this is all that is needed. In a tank-style robot, changes in angular velocity are fed back into the dual motor control to make corrections, as any difference in the motors or even the individual surface under each wheel will result in the robot rapidly spinning out of control, far too fast for all but skilled drivers to correct.

In a helicopter, the changes in angular velocity are fed back to a single motor, which keeps it on a steady course against changes in wind-speed.

SpiderBall will be rotating through absolutely any angle, onto any face. Three gyros or positional sensors will be needed. The output from the gyros is a voltage indicating angular velocity. Conversion to angular position can be done either in hardware (op-amp) or in software (polling and then using the classic O-level physics equation, "v^2 = u^2 + 2.a.s", in software, to give relative angular position, oh and of course, you get the angular velocity too). The disadvantage of using gyros is that the resultant position information is, of course, relative. It will therefore be necessary to judge what the current position is, by extending legs and wiggling them like a dying fly, and if, by moving them about, SpiderBall doesn't giggle about too much, well then they must be in the air: move the legs in the *opposite* direction, and see if you hit ground. If that doesn't work either, then well you're either in the air [go into panic / protect mode] or some horrible sadistic person has pulled all your legs off.

The alternative to gyros: US Digital has some absolute positional devices, which can even be connected up on a [proprietary] serial bus in up to 15 devices, up to a distance of 4 kilometres. They even have a converter from their bus to an RS-232 interface. Cost per device: an unrealistic $USD 290.

So, finding the rotational position of SpiderBall becomes a matter of price/performance trade-off. Is it possible to use an analogue voltage from a gyro indicating angular velocity to find angular position? yes. Is it possible to press a button to say which way up SpiderBall is, at the start? yes. GOOD.

SpiderBall Leg extension

Tricky! This one's really tricky! Again, US Digital has devices that would do the job, however their prices are, again, totally unrealistic. I'm sure that for what they are, and what they do, to unprecedented levels and degrees of accuracy, the costs are justifiable. In quantities of 6 (for leg position) or 12 (for motor rotation plus 6-of differential calculating device), the prices are simply too much.

Problem Statement

The position of the six legs must be known at all times. The motors drive the leg to both spin and move. Attaching things to the legs is unrealistic as they will be hammered beyond belief.

Motor / gear rotational sensors

This seems like the most realistic option, although it only calculates relative position. The gear arrangement on the leg, through the double-helix, is differential. Therefore, by subtracting the RPMs of the gears, you end up at a figure by which the speed of the leg - in either direction - may be obtained.

US Digital has a device that can be used to subtract or add the inputs from two optical sensors, and output the result as if there was just one optical sensor. This is just _so_ cool, until you look at the price and multiply by six. And then of course you need six converters as well, to sum up the sensor outputs into relative leg position.

Chris, from Robot-Power recommended using 74HCT or 4xxx counter chips, or sourcing just usdigital's counter / encoder chips.