CS460 Project 1

Due: Thursday October 4th with in class demo.  Project report will be due the following Tuesday. 

Overview: This is the traditional line following lab with a couple of twists. You will design and program a robot to search through a maze (essentially a line following lab). Use any method you like to program the robot.


This is your first project and your objective is to integrate sensor input and motor output to perform a simple line following task. You will have the opportunity to get used to some of the quirks of the robots and the fairly inexpensive commodity parts by using them in a straightforward introductory task. Your robot will need to continuously monitor sensors and act accordingly in real time with no external input from you.


Your materials are in a green Lego bin in the cabinet in the front of the lab. The drawers of the cabinet and the bin themselves have been labeled according to groups. Use only the materials assigned to your own group.

You will have an augmented Lego educational set including A handyboard robot, two motors, and a set of sensors including two top hat sensors. Each bin has been supplemented with additional Legos to give you more choice when building your robots. You may find that you have a great idea but just need a couple more legos to make it real. I have a few spare Legos from other kits that I can give out on a  first proposal that shows the needs gets the legos basis. (don't come just asking for lots of extra parts, rather, come with a nearly finished robot and tell me what you need to finish it.

Use any computer except the one over and around the corner which serves as a server.

Lab Availability:

For those of you who have card access setup (it should be all of you by now), you have access of the lab whenever Moakley is open and the other class isn't meeting. 

Your Task:

Your group will build a handyboard based robot that will navigate a maze. Your maze will consist of a colored line on a contrasting background. Two sample mazes will be provided in the lab to practice on. One will be a silver line on a black background while the other is a black line on a white background. You should design your robot to navigate the maze as quickly as possible without skipping any of the maze or getting lost and running off of the maze.

On October 4th each of the 6 groups will demo their robot in class on a new maze that I will bring in at that time. Dead reckoning will not be an acceptable method of solving this task. You will need to use the  sensors ( light sensors) to navigate the maze.

The software environment:

For this lab we will be using the interactive C environment. I will give a brief lecture preparing you on the day the lab is assigned.

Sensor Calibration:

You are not guaranteed a particular color for the line or the background in the final demo, you are only guaranteed that there will be a contrast as significant as that in the test maze. You should write your program so that you are calibrating the sensors before beginning the maze. Your group will be given a couple minutes to calibrate your robot's sensors before beginning the demo.


Each handyboard has a builtin battery pack which starts out run down. (I've not charged any of them in more than a year. Plug your electrical adaptor plug into the serial communication board. On the board there is a switch to switch between trickle charge mode and zap charge mode

  • Adapter plugged into the Serial Interface/Battery Charger board; HB connected via telephone wire; ``NORMAL CHARGE'' mode selected. The yellow ``CHARGE'' LED on the interface board will light. This is a trickle-charge mode, which means that (1) the Handy Board will fully charge in about 12 to 14 hours, and (2) the HB may be left in this mode indefinitely.
  • Adapter plugged into the Serial Interface/Battery Charger board; HB connected via telephone wire; ``ZAP CHARGE'' mode selected. The yellow ``CHARGE'' LED on the interface board will not light. The ZAP CHARGE will fully charge the HB's battery in just 3 hours, after which time the battery will become warm and it should be removed from charge or placed into the  trickle-charge mode.
  • So if you are zap charging, you need to monitor the handyboard, but if not, you should charge the board for 12-14 hours (overnight or so) to get it up to full charge.

    Do not leave the handyboard changing in zap charge mode while you are gone!

    When you leave the lab for the day:

    Remember that this lab is shared with other classes, so when you leave the lab for the day, you must return all of your materials to the cabinet. Make sure that the sample maze is back near the cabinet (but still visible to other groups who might come in later.) Make sure  that your robot and parts kit is in your designated drawer. You are responsible if your group leaves your robot out on the table and it gets broken. If you need to charge your handyboard in trickle charge mode while at class, you can leave the handyboard and its cables and plugs at a station on one of the off network computers for a few hours. Do not leave these more than 24 hours as the lab is shared space and others may need to use the are.

    Have fun:

    Have fun and I look forward to seeing your finished projects in class at the beginning of next Month.