With the current plan to make this robot project come alive when finished I decided to use a central
embedded controller that is both processing powerful and yet simple enough to fit inside the Robot to allow both autonomous
operation and remote control. To do this I decided to use smaller cheaper sub-processors at a number of locations that
could benefit from this plan. One of these functions is the brain lights.
The brain light sub-processor can control up to 32 individual lights, be it 12 volt incandescent or
5 volt LED. The processor can run independent of control from the main processor
or in a normal operational mode, take commands from the main processor to control the light sequences.
The outputs are driven by Darlington pairs, 24 bits of which are high side switched as will be used
for the LEDs and SS Lasers in the brain. The final 8 bits are low side switched as needed for the 7 finger lights as they
have a common ground which is the Brain Base. I use 2 5-volt, 1-Amp regulators to power the brain and the finger
lights. At first I used 2.47 volt bulbs but found that the normal light sequence needed over 1-Amp which was too much
for the regulator, so I decided to mont High Intensity Red LEDs into the bulbs. A little skill, a lot of luck and a Dremmel
tool and I was able to cut open the back side of the bulbs and insert the LED. I am impressed on how well they work
and how little power thay take.
I have added a number of Light Sequences that will be used for different phases of the robot operation. There are currently 5 sequences; Wake-UP, Normal, Power Down, Sleeping and Anger. Ohter sequence tables are easy to add but I could not think of any others that I want right
now.
The microcontroller for the light sequencer is a Zilog Z86E08, 8-Bit processor running at 12Mhz. It has 14 bits of programmable IO, 6 programmable hardware interrupts and 2 counter/timers. I implemented a simple output mux to give 4 ports of 8 bits each.
I have decided upon a simple 5 byte Serial control sequence that
allows for addressing and full duplex communications with the main controller.
The firmware is now working
and the controller fully supports the 5 different light patterns:
1. Power-Up = Short power up sequence followed
by normal operating pattern
2. Normal Mode
3. Power Down = Sequences from normal sequence
to powering down to off
4. Sleep = Fewer lights used and shorter
on times
5. Angry = A Scanning sequence to make the
robot look angry
Click Here to Return to the main B9 Page