As I mentioned in last month's article, I'd decided to turn my robot into a fire-fighting
robot. Because of scheduling conflicts, I couldn't attend the international contest in CT,
but I was able to compete in our club's local contest. Unfortunately, because of short time
constraints I didn't do so hot, but you can be sure I'll be providing some real competition
next year!
As I mentioned in last month's article, I'd decided to turn my robot into a fire-fighting
robot. Because of scheduling conflicts, I couldn't attend the international contest in CT,
but I was able to compete in our club's local contest. Unfortunately, because of short time
constraints I didn't do so hot, but you can be sure I'll be providing some real competition
next year!
Science-Fair Update
As I said in previous aticles, I competed in a local science-fair contest and won first place.
I then went on to compete at the regional level. There I also palced first place. After competing
there I was then allowed to compete at the state level. Much to my shock, I won first place
there also. It seems that the mere sight of a robot amazes the judges. For winning the
regional contest I received $25 and a digital multi-meter. I got a plaque for winning state.
So, if you ever want to enter a science-fair, I'd highly suggest involving robotics.
The Fire-Fighting Contest
(click for full picture)
The annual Fire-Fighting contest, held in Hartford Connecticut, is fast becoming a amateur
robotics craze. The entire principle behind this contest is to have a robot find a candle
inside of an 8'x8' maze then extinguish that candle. While this may sound easy in theory,
in actuality it is quite difficult to accomplish.
The 8x8 foot "house" is divided into
four different rooms of varying sizes and shapes. When the robot starts its run the lit
candle is placed at random in a number of random locations within the rooms. The candle
has to been at least 1ft from the entrance to the room. Across the doors of all the rooms
is a 1 inch white line. This is used to signal a room entrance. Also, there is a 1 ft in radius
white circle surrounding the candle. The physical dimensions of the robot cannot exceed a
1 ft cube. The walls of the maze are 18 in high and the corridors are 18 in wide. Every time
the robot touches the wall it gets a 5 second penalty. The lower the score the better.
There are a number of different modes the robot can run in to lower its overall score.
If you start your robot with a buzzer you get a 5% score reduction. If your robot returns
to the start circle then it gets a 40% reduction in score. If your robot can start from any
random position inside the maze then you get a whopping 80% score reduction. It is an
absolute must to read all the rules from top to bottom. Preferably multiple times.
In this contest the KISS principle (Keep It Simple Stupid) is usually the best way to go.
If you go for an advanced robot then you'd better plan on spending at least 1 year working on
it. That bring me to my next tip -
start early!. That is probably the most
important thing to remember. A well planned, slowly built robot will most always beat
a hastily built robot. Besides you'll preserve your sanity that way. Round bases are a better
choice than square ones. You should always put bumper switches on your robot to keep it from
running into walls. Make sure you have a way of finding the 4th room, since it is an "island."
You should also plan to bring some sort of computer to the competition
and/or provided some way of adjustment for different light levels, etc. You might also
consider coming to a contest before your compete to get a feel for it.
My Fire-Fighting Robot
I thought long and hard about the best way to turn my existing base into a decent fire-fighting robot.
Since the motors, wheel encoders, and processor were already constructed, all I had to put on it was
a line detector, a sound detector, a candle detector and some way to follow the walls.
To allow the robot to follow walls I constructed a rotating sensor beam that hung down from the
top platfrom of the robot. The sensor boom rotated on a servo mounted at the center of the robot.
On either end of the boom are mounted two Sharp GPDU12 Digital Infrared Rangefinders. This allowed
me to follow either the left or right wall using triangulation. I can also turn the boom full forward
and detect the distance to the wall in front of me.
Both my sound, light, and line sensors were constructed around a core aplifier/comparitor circuit.
I mounted the line sensor directly underneath the front of the robot and illuminated it using a red LED.
During testing I had quite a bit of trouble with the ambient light giving false triggers. I had to
place a paper shield around the sensor to give reliable readings.
The candle sensor was the same setup. Per the recomendation of
a friend, I created a light baffle with three gradually smaller partitions. This
allows only light that is directly ahead to come into the sensor. Built into the circuit is a
potentiometer to adjust the trigger levels for the candle.
To handle the power requirements
of all the electronics I had to build a special power driver board. The board takes in 10v and
regulates 5v for all the circuitry, 8v for both motors, and 10v for the fan driver. The control
the fan I hooked it up to a high current darlington transistor from Radio Shack. This can be
driven directly from the OOPic I/O pin.
Before a slight .... er ... mishap the wheels were
modified servos, but I had to convert these to plain gear motors. I'm driving these from a
standard TI H-Bridge chip. This allows much more precise motor control using PWM.
When programming the 'bot I tried to keep it as simple as possible. I wrote a number of generic
routines such as 'turn_left_90', 'turn_right_90', 'forward_till_distance_from_wall',
'follow_left_wall','follow_right_wall', 'search_for_candle', etc. I then ran throught the maze in
my mind and put all the subroutine pieces together to complete the maze. For instance, 'follow_
left_wall', 'turn_left_90', 'turn_left_90', and them I'm in the first room. After this I can then
continue on. For next years competition I plan on adding a full range of bump sensors, and improving
upon my code and testing. See you in Trinity!