The LEGOBOT team:
Rajeev Goel, Jonathan Kua, John Knapowski, Nathan Myers, Matt Merten,
A. Douglas Gerwitz, Dennis Culley
OBJECTIVES:
The goal of this project is to gain experience with embedded real-time
control systems, integrating software and hardware, and simple algorithms
for autonomous decision-making.
READING:
Additional handouts will contain detailed information concerning the
programming of the microcontroller.
With a team of two other ECE 291 students you will learn about these
systems by designing and building a robot that will successfully perform
the task outlined below. The robots will be constructed from LEGO parts,
motors, sensors, and an Intel 8088-based microcontroller. Various sensors
are available that acquire information about the robot's environment.
The microcontroller has access to environmental information through the
hardware input ports which are directly connected to the sensors.
Based solely on this input, a software program stored in the
microcontroller's memory will determine the robot's actions.
These actions are executed by sending signals from the microcontroller
to the robot's motors via hardware output ports. Since the motors require
high-current and non-TTL level voltages, the microcontroller is unable to
power the motors directly. Therefore, a custom-built board has been
provided to drive the motors. Details about this board's operation will
appear in additional handouts.
In this contest, robots are completely autonomous. Robots gather
information from their sensors and control programs use this information
exclusively when determining a course of action. Therefore, once the
contest begins. nobody is allowed to touch the robots or send signals to
it via a remote control, serial cable, or by any other means.
THE BASKETBALL GAME
The objective in LEGOBOT Basketball is simply to score more points than
the opponent. The scoring system is described in Table 1. The contest is
a series of single elimination rounds. Each round is a battle between
exactly two robots. A round begins with the flip of a coin. If a team
calls the coin correctly they will shoot towards basket #1 during the
first half and basket #2 during the second half. A DIP switch will be
provided on the microcontroller so that this information can be set before
the round begins. The team must ensure that their robot is fully capable
of playing either basket.
Table 1: Scoring System
Color
"lay-up"
"dunk"
"three-pointer"
white
1
3
5
orange
3
9
15
Each robot is placed on the court so that it is on the same half as its
opponent's basket. Any initial orientation is acceptable. The only
restriction is that the robot may not be placed inside of the jump circle.
Both teams must place the robots at the same time so that neither team
has an positional advantage.
Play will begin when the starting gun (a toy cap-gun) is fired. Teams will
be provided with a microphone capable of detecting this signal. The first
half lasts for two minutes. Since placing the robot on the court might
cause the microphone to register a start signal, it might be a good idea
to have a DIP switch on the robot that enables/disables the microphone.
The referee signals when the each half is over by blowing a whistle.
Balls that are still touching the robot when the whistle is blown can not
count for points. However, "buzzer-beaters" are allowed. Balls that are
no longer touching any part of the robot when the whistle sounds but
eventually enter the basket (without external intervention) do count.
At half-time, teams are allowed to pick up their robots. Modifications are
not permitted on the robot during half-time. Teams are only allowed to
change DIP switch settings during half-time. During the second half each
robot will shoot towards the opposite basket. The robots are then placed
again on the table (opposite the basket they are shooting at and outside
the jump circle) and await the cap-gun that starts the second half.
Half-time will last exactly one minute.
Approximately 20% of the balls dispensed are orange "bonus" balls.
When sunk, these balls count 3 times the value of a white ball.
Scoring Explanation:
Balls that are sunk into your opponent's basket count for your opponent.
A "lay-up" occurs when a Ping-Pong enters the hole beneath a basket
without traveling through the rim. A "dunk" occurs when a robot is inside
the three-point arc and the PingPong ball travels through the rim the
rim is 6" above the hole and the hole is at table level.)
"Three-pointers" occur when all pans of the robot are behind the three
point arc and the Ping-Pong ball travels through the rim.
THE BASKETBALL COURT
The robots play on a "basketball court" 4' wide by 8' long
(see Figure 2).
As in basketball, there are two baskets located on opposite sides of the
court. The rims are 8" in diameter and 5" above the surface of the court
below each basket. There is a hole in the court that balls can fall through.
Backboards extend 6" above the rim. The interior of the three-point arcs
are painted black and are located 12" from the center of the rim.
The walls surrounding the court will be 2" high.
Each basket has a light source behind it so that robots can find it more
easily. In front of each basket's light source there will be a polarizer.
When light shines through two polarizing films it will be transmitted if
the two films are aligned in the same direction. If their alignments are
perpendicular no light is transmitted. This property of polarizing films
can be used to differentiate between the baskets.
Basket #1 will have a light source that is polarized 45 degrees clockwise
(with respect to the vertical). Basket #2 will have a light source that
is polarized 45 degrees counter-clockwise. Each team will be given two
photo-sensors and two polarizing films.
In the center of the court there will be a "basketball dispenser".
This is where both robots will find the "basketballs" used in the contest.
Basketballs in the contest will be simulated by white Ping-Pong balls.
The ball dispenser is a tube with a gap just large enough for a
Ping-Pong ball. The end of the tube is located about 1 Ping-Pong ball
length above the table. When a robot takes a ball a new ball will drop
down in the first ball's place. Infra a-Red (IR) beacons reside on the
lowermost portion of the funnel just above the spot where Ping-Pong balls
can be collected. IR sensors are available to help find the beacon.
Additional Rules and Regulations:
In order to have a fair and fun contest and to preserve the life of the
robot kits, the teams must adhere to the following restrictions when
constructing their robots:
1) Tape, glue, or any other forms of adhesive may not be used in
the construction of your robot.
2) Robots may be no taller than 16".
3) Only the parts given in the kit may be used to construct
the robot. Use of additional parts requires prior approval
from the contest judges. The sum of the costs of all
additional pans may not exceed $10. Save all your receipts
the judges may request to see them.
4) LEGO parts may not be broken or damaged in any way.
5) LEGO parts may not be removed from the motors and sensors to
which they have been glued.
6) Any form of intentional permanent damage to the court, the balls,
or any of the teams kits or robots will not be permitted.
7) Do not leave your kit unattended in any location which is
accessible to more than a few people. The parts in the kits
are expensive and cam be stolen easily.