CS460 Project 3
Due: In class demo: Tuesday Nov 27th with project
report turned in the following Thursday November29th. One report per group.
Overview and Objective:
You will design and program a robot which will navigate a random 3
dimensional environment with both walls and obsticles. The robot's goal is
to find a light which will be somewhere in the environment. Your robot
will start in one corner of the enclosure and then have to search for
the light, stopping and playing a tune when the robot is near the light
with no barriers between the light and the robot.
Materials:
You will have the same robot kits as before. You will have
- A handyboard (with charger and interface board and cables)
- ET sensors (2)
- Top Hat sensors(2)
- Touch Sensors (several and varied)
- Light sensors (2)
- Breakbeam encoder
- Lamp and maze (shared with all groups in the class)
- 2 handyboard to lego motor wires
The maze:
The maze is constructed of foamboard. There are two large pieces of the
maze near the cabinet. Each consists of a side and end of the maze with
a hinge made of tape holding them together. These form the outer edge
of the maze. Setup the maze so that these two peices form rectangle.
Then use the remaining peices of foam board placed randomly as
obsticles inside the maze itself. See the photos below for two
examples. Somewhere in the maze, place the light. In final test runs,
the light will always be shielded from easy view as it is in the
examples below. In addition to the reconfigurable walls, large objects
in the maze. the walls are all about 25 cm high. The debris will
never be less than 15cm high. I will try to setup the maze in a
perminant spot, however, there is another class in here and we may not
be able to keep it out all the time.
Your Task:
You are to create a robot that can find a light in an arbitrary maze
with obsticles in it. For more information about the maze construction,
see the section on the maze above. Your robot will start in one of the
four corners of the maze (chosen by the instructor on demo day) and
will have to find the light. When the robot finds the light, it should
stop no more than 12-13 cm (about 5 inches) from the light and play a
tune for about 4 seconds. Once you start the robot in its corner, you
cannot touch it again until it either runs out of time or claims to
have found the light and stopped. Your robot has five minutes to
perform this task. You will be penalized for moving any part of the
enviroment. (the walls of the maze can be easily moved - the obsticles
will be less movable.)
The software environment:
For this lab we will be using the Interactive C environment as before.
A few useful notes
- Don't forget to charge your robot. If you ever start to see wierd behavior running the
same program that used to work, try recharging the handyboard.
- All of the issues that you learned about in your last lab still apply including
- sometimes the same powerlevel produces different speeds in different motors
- sometimes the same stimulus will produce different output from two different sensors.
- Check to see if your sensors are working. I've replaced at least
once sensor that stopped working. I don't have many more spares so
check them early.
The Project report
The project report is a report of what you tried to do, what you did,
what you learned and what you accomplished. To make my correcting
easier, let me give you guidlines on what I'd like to see in it. Make
sure you use section headings to make each section easy to find.
- Introduction
- this is where you explain the problem you wer trying to solve and why it is relevent
- Robot design
- Here tell me what sort of robot you designed (in hardware).
Tell me what worked and what did not work. Discuss what you learned
based on what worked and what did not.
- Software design
- Here discuss what sort of control program you built. Again tell
me what worked and what did not. Discuss what you learned about robot
control software from your experience. Discuss your approach and its
relevence to both the current task at hand and the general problem of
robots acting in the world.
- Evaluate your robot
- Fro both design robot and software design, consider the four
standards we are using to evaluate a robotic architecture and consider
how your robot meets each of them. For niche targetability, include
your robot's actual performance in the demo.
- Concuding discussion
- Summarize what you learned. Consider the following target
audience: next year's robotics students. In this section, summarize
from the preceding sections all of the worthwhile dos and don'ts that
you discovered in doing this lab. It is not really relevent that your
robot did really great unless you tell the reader why. Think about what
you would have liked to know when you first saw this lab, and if you
have any insights after doing the lab, share them here.