Geoffrey the Giraffe Robot
 
february 2010
objective: design and build a mobile robot that follows instructions from a command generator
 
Meet Geoffrey

In the wild, giraffes must learn to walk within 10 minutes of being born or else they risk being devoured by lions.  Since our task was to quickly build a mobile platform, we naturally built Geoffrey the giraffe.

Our approach to designing the mobile platform was to have multiple layers so that the circuit boards and the E128 microcontroller could be easily mounted and removed for debugging purposes. These layers and the giraffe outline were designed in Solid Works and made from laser-cut masonite.  The wheels and E128 board were attached to a base platform. Our breadboard got a comfortable ride on Geoffrey’s back, while the IR sensor and circuitry were mounted near his head.  A tape sensor was placed underneath the base at the front end of the platform, with an approximate clearance from the ground of ¼ inches.
 
CAD models
 
Final mechancial hardware design
For the mechanical design of Geoffrey, we focused on building him for easy circuit accessibility and simple removal and replacement of individual components. This resulted in a two tiered structure with the E128 screwed into the base and the other circuit board constrained upon Geoffrey’s back between his tail, flanks, and neck.
For our motors, we cut out two rectangular pieces of masonite and screwed them to the base to securely cradle our motors to the base.
Our tape sensor was attached to a screw so that we could easily adjust the distance from the tape.
To support Geoffry as a tripod, we added a slider to the back.
Our beacon sensor is located between Geoffry’s necks and uses an individual protoboard located above the other circuitry with minimal wires to minimize noise. We added blinders to our beacon sensing photo transistor to focus its sensing in one direction.
In four days, Geoffrey successfully hit the ground running. He read in commands from a command generator and accurately executed them until he reached his final destination.
 
Electrical hardware
E128
Debugging LEDs Calculation: (5V – 0.8V) / 660 Ohms = 6.4 mAmps, which is less than the 10mA sourcing capability of the E128 (see datasheet diagram above).
Command generator

Check the electrical characteristics between the two devices:
JP2 – 5 Pin Device
We are assuming a device powered by Vdd5 = 5V.
Requires 3.25V min for Vih cmmd generator Voh: Vdd-.7 = 4.3V (adequate)
Requires 1.75V max for Vil cmmd generator Vol: 0.6V (adequate)
Requires Iin of +/-.25 uA cmmd generator Ioh / Iol is -3mA / 8mA (adequate)

For the Command Generator Device
Requires 2V min for Vih. JP2 Voh is Vdd – 0.8 = 4.2V (adequate)
Requires 0.8 max for Vil. JP2 Vol is 0.8 max (barely adequate)
Requires +/-1uA max for Iih / Iil JP2 Ioh / Iol = up to +/- 10mA (adequate)

IR sensor
For the phototransistor circuit we set the corner frequency of the high pass filter to be 1 / (2πRC) = 1 / (2π * 0.10µF * 10kΩ) = 106.1 Hz which is far less than our signal of interest (1250 Hz). In the transresistive part of the beacon season circuit we added a 10 pF capacitor in parallel with the 3.6MΩ feedback resistor to filter out any high frequency noise. The phototransistor was biased at Vbe of 3V, and the gain was determined for long range use, although we acknowledge that at closer ranges the opamp does reach saturation and therefore may have a slower response time.

Tape sensor

The emitter was set at a forward voltage of 5V – 3.5V = 1.5V as it had a maximum spec for forward voltage of 1.7V. At this level we could expect a current of greater than 10mA to be generated when in the presence of a reflecting object, and on the scale of 100 nA when not sensing (dark current). A negative feedback of 10K was used to amplify this gain to the input of our E128.

Motor

Current limit for the motors and 1A limit from the L293B.
The resistance of the motors is 8.2 Ohms.
In the worst case scenario, there will be 5V across the motors (in reality there is a slight voltage drop across the transistors)
5v / 8.2Ohms = 0.61A, which is less than the 1Amp / channel that the L293B can source.
Power = 1.8V * .61 Amp = 1.1W per channel.
The total power dissipation would be 1.1W * 2 = 2.2W because this power is dissipated through two motor channels, which is less than the maximum power dissipation (5W) that the L293 can handle.
Check the electrical characteristics between the two devices:
L293B Device receiving voltage and current from the E128
We are assuming a device powered by Vdd5 = 5V.
Requires 2.3V min for Vih E128 Voh is Vdd – 0.8 = 4.2V (adequate)
Requires 1.5V max for Vil E128 Vol is 0.8 max (adequate)
Requires Iin of +100/-10uA E128 Ioh / Iol = up to +/- 10mA (adequate)
 
State chart
Pseduocode
Code
 
 

 

Copyright © Nina Joshi 2010. Last updated 3.25.10.