CS460 Project 3

New:There was
discussion yesterday about the nest and floor colors being too similar.
I ran some tests with the help of one of the students groups and found
that the nest and the floor gave considerably different values when
read using the reflectance/tophat sensor. Please note that a good
distance to take these readings is about 2 lego bricks and a lego plate
in height off of the surface that you are reading. If you get too close
you get uniform reading for pretty much everything. However, the two
nests, though differeent, were not different enough. Small error
factors made them all but indistinguishable. Therefore I am replacing
the yellow nest with a blue one. This has already been done.
Due: In class demo: Thursday May 4th with project report turned
by 5pm the following Tuesday May 9th. One report per group once again.
At the time that your report is handed in, your group must have
disassembled your robot and rebaged all of its sensors. Failure to do
so will result in a 40% loss of credit for this labfor each group member.

Overview and Objective:

You will design a robot which will try to move desirable (blue) plastic
eggs to its own nest while keeping the undesirable plastic eggs
(painted black) out of its nest. You will be competing with another
robot who will be trying to collect eggs itself. This lab is adapted
from one used a several other colleges including UMass Lowel where the
inventor of our handyboard robot controller teaches a course in
robotics.

Materials:

You have the same materials to work with as in project 2. If you wish
to bring in your own legos you are more than welcome to do so. If your
design needs a few extra parts, you may ask your instructor for them.

Your Task:

Your task is to build a robot that will collect eggs from the game
world and deposit them in the appropriate nest. There will be blue
painted eggs that look like this

The blue eggs are worth one point to which ever robot gets one in its nest.

There are also black painted eggs. These look like this

The black eggs are worth -4 (minus four) points to which ever
robot gets one in its nest. In the final demo competition, there will
be 24 blue eggs and 6 black eggs. Therefore, if you manage to put all
of the eggs in your own nest, you will have a total score of 0.

The Game board

The board or game world is setup as shown in the image below

The outer edge of the board is 1 1/4" white PVC pipe. The bottom of the
board is a slightly off white surface made of posterboard and masking
tape. The two nests, shown in color above, are of colored posterboard.
There is a yellow nest and a bright red-orange nest. Teams will be
randomly assigned a nest for each of their trials. The team assigned to
the yellow nest will start at the position shown above by a yellow X
(It will be black in the actual map). The team assigned to the bright
red-orange nest will start at the position shown above by a red-orange
X (once again it will be black in the actual map)

Egg distribution

Eggs will be distributed randomly accross the white part of the board.
Before the two teams are randomly assigned a nest, each team will have
the opportunity to protest the arraingement. If either team does so,
the eggs will be recollected and randomly distributed again. Each team
can protest only two egg layouts in the entire contest. Eggs must be
entirely inside the nest to be considered in the nest.

Autonomous Robots

Your robot must work atonomously through each heat of the contest. Your
team will be able to callibrate your robot on its own nest after nest
assignments are made, then you must put your robot on your start X.
When the instructor begins the heat, you can press one button to begin
your robots autonomous mode, then you must let your robot compete
unaided for the two minutes of the heat.

The Heats

Each heat will be two minutes long. Two robots will compete in the
heat. Your robot will try to put black eggs in the opponants nest
and/or blue eggs in its own nest during that time. The robot with the
highest score at the end of the two minutes (even if that score is
negative) wins. In the event of a tie, if both teams have a score of 0
or less, both are considered to have lost. If both teams have a
positive score, the robots will be reset for a sudden death round. The
first time there is a score change, the one with the highest score wins
the heat. When a robot loses any two heats, it is eliminated from the
contest.

Robot specification and behavior

Your robot may put eggs in either nest. All eggs in your nest count for
you (or against you as the case may be) even if placed their by the
opposing team. Your robot may not try to damage the other robot.
However, you should build your robot to be strong enough to survive
being run into by accident. (The instructor will be the final abitrator
of what is and is not acceptable). You are working in a multi robot
environment and must understand that this changes how your robot will
interact with the world. Your robot may not leave the gameboard at any
time during the heat (it can't jump the PVC boundry and then come
back). Your robot may play a negative game so long as it doesn't try to
harm the opposing robot. For example, it might collect three black
eggs, deposit them into the opposing nest, and then sit in front of the
next, blocking the nest to prevent the robot from putting any more blue
eggs in the nest (or from expelling the black ones.). Robots may be no
larger than on cubic foot at the start of a heat. Robots may "open up"
after the heat starts if needed.

Grading

As always, grading will be a mixture of

Your robot's performance in the demo

The in-demo interview.

Your project reports.

For the demo part of your grade, the grading will be done using the
following scheme (thanks to the CMU undergrad robotics program for this
idea)