Lab 6 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 range sensors, ultrasonic range sensor, and IR sensors to the 9S12,

                       • 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.


                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 4 feet by 8 feet arena. Your robot is free to move anywhere within the arena during the 180 second competition. There are 9 balls on the table, and you score points by hitting a ball over the fence such that it strikes your opponent's back wall. 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 4 feet by 8 feet, and is separated by a 2 inch fence. The walls are about 4 inches high. Black stripes can be used for orientation.


The Beginning and End

                Two robots compete against each other, and the starting sides will be chosen 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 students will have 60 seconds to place their machines into the arena from the time the TA-referee calls them to set up. Your robot must be touching your end wall at the start, but its lateral position and orientation are up to you. When the two teams are ready, the TA-referee will randomly place seven balls in the arena, three on each side and one on the net. Next, the TA-referee says, “Go”, and each team will push its start button to activate its software. If a robot fails to start as expected, the TA-referee will award one false start, and the round will be repeated. 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 180 seconds. Your robot must stop all moving functions at the end of 180 seconds, and any robot that continues to move after 180 seconds will lose two points. The TA-referee will terminate a game early if neither robot appears to be making any progress. The TA-referee will terminate a game immediately if a robot presents physical danger to spectators, itself or the opposing robot.


The Scoring

Your robot scores two points if your robot causes a ball to go over the net and touch the end wall on your opponent’s side of the arena. If your robot shoots the ball over the net, and it hits the end wall multiple times, only one two-point score will be awarded. No points are awarded for balls that hit the end wall that were not launched over the net. In other words, if you cause a ball to hit your own end wall, no points are awarded. If one moving ball hits a second ball, and the second ball hits the end wall, no points are awarded. If your robot shoots a ball over the net, and the ball comes to a stop, the possibility for a 2-point award is ended. No points are awarded if your robot causes the ball to leave the arena, even if it hits the end wall. If the score is tied at the end of the 180-second competition, the win goes to the robot with the fewest balls on their side. The balls are not to be touched by students. After your robot makes a +2 point score, the TA-referee will place the ball in the middle your arena. If your robot causes a ball to leave the arena, even if it bounces over an opponent’s wall or off the opponent itself, the TA-referee will place the ball in your back corner. If you design your robot in such manner that it deflects a rolling ball over the wall, your robot will be considered to have “caused” the ball to leave the arena. At the end of the 180-second competition, your robot must stop all moving parts. After 180 seconds, the game ends, and no more points are awarded. Balls that hit the wall or fly over a wall after the 180-second competition do not result in points. The robot with the most points wins.

+2 points if your robot shoots the ball over the net and the ball hits your opponent’s end wall

-1 point if you cause the ball to leave the arena (ball placed in your back corner)

-2 points if your robot does not stop moving all functions after the 180-second competition.


The Placement of the Balls

                At the beginning of the game, you first place your robot into the arena, touching your end wall. Next, the TA-referee places the balls in such a manner that no robot has a clear advantage over the other. Sometimes the weather is windy and sometimes the tables not perfectly balanced. In these cases, the TA-referee will attempt to make the competition as fair as possible. The TA-referees will decide their own method of initial ball placement. He could toss the balls one at a time into the arena in a manner that causes it to hit at least two walls before stopping. The TA-referee may simply place the balls on the table using a random, but fair pattern. You will not know the initial pattern of the balls, except there will be one on the net itself. If your robot causes a ball to leave the arena, then the TA-referee will place the ball on your side at a place difficult for you to find (e.g., back corner).


The Strategy and Sportsmanship

The basic goal is to locate the balls and send them over the net to the other side of the arena. The robot is supposed to move in an intelligent manner. Your TA will not allow unintelligent robots to compete. If you are not sure what intelligent means, run your strategy by your TA. Robots designed to cause the ball to leave the arena will be disqualified. Bouncing that occurs after the ball hits a wall or an opponent is not penalized. Robots must move and react to the ball. No pieces may be intentionally dropped by your robot. The balls, the opponent’s robot, and the arena may not be altered in any way. Pieces unintentionally dropped by your robot will be removed by the TA-referee. Good strategy, skillful ball handling, knowledge of your position/orientation, 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 sensor data. Your robot is allowed to squat, scoop, shoot, push, and kick the ball during the game. During the qualifying and preliminary rounds, the judges may declare a double loss, a double win, or no result, as appropriate. Good sportsmanship must be followed.


The Ball

                The hard plastic “Whiffle Softballs” have a diameter of about 9 cm. This ball was designed for soft-toss softball batting practice. The balls can be reliably seen at distances from 10 to 50 cm (in a 9-cm wide rectangle) using the IR range sensor (GP2Y0A21YK). Because of the hard plastic and curved shape, it is difficult for the ultrasonic sensor to see the ball. The color of the ball may vary from match to match, but the IR range sensor seems to work similarly for the different color balls. The ball will roll and will bounce off the walls reasonably well. The ball may not be punctured, altered, or modified in any way. 


The Robot

                Each team will choose a name for its robot. Please limit your name to 20 characters including spaces. Robots will be constructed using materials from the robot kit. Input devices include one ultrasonic ranging sensor, three IR range sensors, four tactile touch sensors, and four reflective IR optical sensors. Motors include one servo, four geared DC motors, two high-RPM low-torque DC motors, two stepper motors and one solenoid. The bounding box is defined as the smallest 3-D box with 90 degree angles that could contain all the hard components of your robot. Any object with a well-defined volume is defined as hard, including grabbers, sensors, kickers, flippers and wheels. The footprint of your robot is defined as the floor of its bounding box, as shown in Figure 6.2. The footprint must be less than or equal to 9.5 inch by 9.5 inch at all times during the competition. Soft components of your robot such as rubber bands, string, and piano wire (whiskers) may extend 2 inches beyond the footprint.  The maximum wheel diameter is 3.25 inches (to limit torque to the motors). The maximum height of the bounding box is 12 inches at all times during the competition. In other words, your robot can not unfold so that is becomes larger than the maximums of 9.5 inch wide, 9.5 inch long, and 12 inch high. It is acceptable if two inches of your robot extend into your opponent’s half of the arena. Your wheels must be on the ground at all times. You can not go over the net during the competition.



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 May 1, your robot must "beat the brick" —win a game played against an inert 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 5/4 6:30-8pm. 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 points scored during the preliminary rounds will be used as a tie-breaker in the seedings. The final competition will take place just outside the front door of ENS on Wednesday 5/6 and continue on Friday 5/8 10-11am. The final competition will be double-elimination, and the exact pairings will depend on the number of qualifying robots. During the finals, the TA-referee 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 6.3.
















Winners: Ho Cheung, Kyle Hutchens, Michael Covington, Andrew Dye




What do you think?