Lab
30 The Robot Competition
This laboratory assignment
accompanies the book, Embedded Microcomputer Systems: Real Time Interfacing,
by Jonathan W. Valvano, published by Thomsen Publishing, copyright © 2006. The
robot materials were funded by a grant from Tivioli.
Goals
• Design a
robot that can move forward/backward, turn left/right, and collect/deposit
balls,
• Interface
motors, IR beacon, and sensors to the 6812,
• Implement
pulse-width modulation, input capture and output compare,
• Write
low-level device drivers for the motors and sensors,
• Develop a
high-level control system,
• Use
communication skills to work effectively as team.
Champions Bracket Final Battle Movie
Ideas for next
year's competition
To win this competition, your
team must combine mechanical, electrical and computer skills. To begin, you
will place your robot wherever you would like within the end zone on your side
of the 3 feet by 8 feet arena. Your robot is free to move anywhere within the
arena during the 120 second competition. There are 11 balls on the table, and
at the end of the competition, you receive one point for every ball located in
your end zone. The robot with the most points wins, so you should collect balls
into your end zone while preventing your opponent from collecting balls or
stealing your balls. Good strategy, skillful ball handling, knowledge of your
position/orientation, awareness of your opponent, and reliability will be
important. Because sensors can be unreliable, an effective solution will be
robust, so that the robot acts in an appropriate manner even when presented
with inaccurate input data. Good sportsmanship must be followed.
The Field of Battle
The arena is 3 feet by 8 feet,
and flat. The goal lines, 1-foot lines, 2-foot lines, and center line are ¾
inch wide. The floor and the lines have contrasting colors, so the lines can be
used as navigation markers. The walls are about 4 inches high. The end zone is
about 1 foot by 3 feet in size, and the goal line itself is considered part of
the end zone.
The (bad) Balls
The golf balls are wrapped in
aluminum foil, so they will be optically reflective (it turned out the foil
on the balls collected electrostatic charge, and the new wheels I bought
provided a huge insulating barrier. So, when the ball touched the metal frame of
the robot, the static discharge caused the microcontroller to reset). The balls
will roll and bounce reasonably well. All balls are inert and have similar
optical and mechanical properties. All balls have equivalent status for each
robot. The balls may not be punctured, altered, or modified in any way. Balls that leave the arena will be returned
to the center line as determined by the TA-referee.
The Robot
Each team will choose a name for its robot (limit 20
characters.) Robots will be
constructed using materials from the robot kit. Sensors include ultrasonic
ranging, tactile touch, IR beacon, and reflective optical. Motors include one
servo, two geared DC motors, 2 stepper motors and one solenoid. The bounding box is defined as the smallest
3-D box with 90 degree angles that could contain your robot. The footprint
of your robot is defined as the floor of its bounding box. The footprint must
be less than or equal to 9 inch by 12 inch at all times during the competition.
The maximum wheel diameter is 4.25 inches (to limit torque to the motors).
The Game
There will two robots competing
against each other, and the starting sides will be chosen at random by the
TA-referee. This information will be announced during the previous game so
teams may prepare their robots. The starting position of a robot defines its
side of the arena for scoring purposes. The contestants will have 60 seconds to
place their machines into the arena from the time the TA-referee calls them to
set up. Your robot’s footprint must be completely within your end zone at the
start. When both teams are ready, and/or the preparation time is over, the
TA-referee says, “Go”, and you may push a button on your robot to activate your
software. A robot that fails to start as expected will be awarded a False Start, and the round will be
repeated immediately. Two False Starts
constitute a loss, and the faulty robot will be removed from the arena and
placed in a position of shame. The remaining robot will be allowed to play
without opposition. The powered portion of a competition will last 120 seconds.
Your robot must stop all moving functions at the end of 120 seconds, and any
robot that continues to move after 120 seconds will lose the game. The game
ends when both robots and all balls come to rest. The TA-referee will propose to
terminate a game early if neither robot appears to be making any progress. At
the end of the game, the robot with the most points wins.
Scoring
The center of the golf ball must
be inside the end zone area at the end of the game to be counted. At the end of
the game, when points are being awarded, it does not count if a ball is inside
your bounding box. You are allowed to
squat, scoop, shoot, push, kick, and pick up balls during the game, but in the
end, balls must be outside your bounding
box and in your end zone to be counted. During the qualifying and
preliminary rounds, the judges may declare a double loss, a double win, or no
result, as appropriate.
Three Laws of EE345M Robotics:
The Judges Rule
The Competition Format
The contest is a three phase
competition, which are qualifying, preliminary, and finals. During the
qualifying round, which will demonstrated to any TA or instructor during any
regularly scheduled lab on or before Friday 12/1, your robot must "beat
the brick" —win a game played against an inert opponent (or no opponent)—
in order to qualify for the next round. Qualified machines will then play three
or four preliminary competitions, arranged at random. Preliminary competitions
occur in the second floor lab on Monday 12/4 7:30-9pm. The results (+1 for a
win, 0 for a tie, and -1 for a loss) of these preliminary games will be
recorded and used only for seeding into the final competition. The total number
of balls scored during the preliminary rounds will be used as a tie-breaker in
the seedings. The final competition will take place in the ENS first floor
lobby on Wednesday 12/6 and continue on Friday 12/8 1-2pm. The final
competition will be double elimination, and the exact pairings will depend on
the number of qualifying robots. During the finals, the judge will award
exactly one winner and one loser for each round. Depending on the number of
qualifying robots, some robots with a high seeding may be awarded a bye for the
first set of games, as shown in Figure 30.3.
On Friday the top 6 robots battled for supremacy
Second Place
Russell Friesenhahn, Steven McSpadden, Joseph Procido, and David Rodriguez
The final round el Chupacabra versus Major
Scoring bunches for the other team
Jeffrey Shih, Trevor Pounds, Robert Des Rosier, and
Alex Lee (not pictured)
Anil Kottam, John Poterfield (TAs)
Ideas for next year's competition
1) Place a 2 inch high dividing fence, creating two separate arenas, to prevent the tangling of robots and grinding of my gears.
2) Remove aluminum foil, preventing the static discharge problem
3) Place 10 regular white golf balls at random on each side
4) +1 point for every ball on your opponent's side at the end of the 120 seconds, +1 point for every ball that you make go over the dividing fence and land on your opponent's side (without bouncing out). -1 point for every ball that you make leave the arena, plus that ball is returned to your side (as far away from your robot as possible).
What do you think? valvano@mail.utexas.edu