Final Contest Summary

Robot Project for ECE 4437 – Fall 2013
1. Contest Rules:
a. Command Interpreter. The robot should respond to valid commands transmitted
wirelessly from the PC. Commands are valid at different times:

Start Contest: Valid only when stopped.

Stop Contest: Valid any time.

Various functions to test the motors and sensors and other hardware: Valid
only when stopped.
b. There are four rooms. The rooms are circular, 8” in diameter, each at the end of one
leg of an H.
c. Rooms: The rooms are designated by a circle created by black electrical ¾” wide.
They are numbered and colored 1 (Red), 2 (Green), 3 (Blue), and 4 (Yellow), in
clockwise order, starting at upper left.
d. Vertical sides of the H: The vertical sides of the H are black lines also made using
black electrical tape.
e. Horizontal connector of the H: Tape is not used to form the horizontal connector.
Instead, two walls 6” high made of foam board are 10” apart, taped to the white
board using white tape, forming a corridor between the two vertical sides. The walls
come within 6” of the vertical sides of the H. There is no mark on the vertical sides
indicating where the corridor is; the robot should use a shaft encoder to determine
when it has gone the correct distance from the room. When the robot is traveling
through the corridor, it MUST be using a PID control algorithm based on the distance
from one of the walls.
f.
Navigation: On each side of the H the robot can use the black tape lines for
navigation. When traveling from one side of the H to the other, the robot must go via
the corridor.
g. Start on the black line, a few inches from and facing Room 1. Wait for a wireless
command from the PC following the verbal “Go” command from the Instructor.
h. When the robot gets to the room, it must find the colored soda can somewhere in the
room, and detect its color.
i.
The robot must then proceed to the next room (via the black lines and corridor)
whose color was that indicated by the previously detected can color.
j.
In this fashion, the robot should continue until one of the following conditions is true:

SUCCESS: It has visited all four rooms in the order specified by the can
colors, OR

An ERROR is detected: The can color detected matches the color of the
room where the can is, or a room is to be visited for the second time.
k. When SUCCESS is achieved, the robot stops and sends a message to the PC.
l.
When an ERROR condition is detected, send an appropriate error message back to
the PC indicating what the nature of the error was.
m. The winning team is the one that visits all four rooms correctly in the shortest time.
n. Scoring:

First Round: All robots run with the same can configuration. Run time is
recorded.

Second Round: All robots run with a new can configuration. Run time is
recorded.

Final Round: Up to five robots who successfully completed both runs, with
the shortest overall run times, compete with a new can configuration.
Shortest successful completion time wins the contest. If no robot
successfully completes the round, we will try a “Second Final Round”. If
still no robot successfully completes, there is no winner!

“Successful Completion” means correctly visiting all rooms in the order
called for by the can configuration, stopping at the correct time.
2. Demonstration Contest. The demonstration contest for this project will be held during class
times during the last week of class. Remember that all members of the team must be present
and participate in the competition. In addition, each team will be able to sign up for a time for
the oral exam portion of the Final Exam, which will take place in the days following the
contest. At that meeting, bring a hard copy source code printout of the main program and
any C functions source and header files (that you wrote) new for this lab.
Changes:
2. You have already demonstrated a command function that caused the robot to
implement PD control between the walls. Since using PD with the differential
steering of the robot is difficult, for the final contest you will not be required to use
PD. You can use bang-bang between the walls if you wish, without penalty, so
please do not feel you need to spend more time tuning the PD. Completion of
the entire course is the primary concern now.
3. Recall also that I said you can implement a work-around on the color sensor if
you cannot get reliable color detection. You can write a command function that
accepts the room color sequence, for example, "GRBY", and then have the state
machine "pretend" to get those values in that sequence from the color
detection. Of course, this approach cannot win the contest if there are teams
that do indeed detect the colors correctly.
Some Procedures for Final Contest:
1. Robots will be divided into two groups: those detecting can colors (Group A),
and those hard-coding the can colors (Group B). Group A runs first, then Group
B. The winner of Group A wins the contest. If there is no winner in Group A, the
winner of Group B wins the contest. Robots that try, but fail, at detecting colors
can switch to Group B.
2. A run ends when the robot gets to the last room; it need not detect color there.
3. Teams may place the cans in the rooms where they want them, but may not
touch them after the robot starts its run.
4. Have your batteries charged; have the robot ready to run.