So, guard the kits carefully and make sure you don't drop the box with the kit in it on the subway.
The kits contains an assortment of parts some or all of which you can use to build your robot. There is no restriction on what you can build except that it can only be constructed with the parts you have been given.
If you want to use additional parts (for instance because you need an extra three grommets to build the robot of your dreams), come and see me, and we can discuss if you can have some extra components. (I will only agree if the parts you want are essential.)
You will need to download the current version of Not Quite C (NQC) (version 2.4 r2 or higher) for the platform you intend to use.
I will supply you with hardcopies of the User Manual and Programmer's Guide for Not Quite C, so there is no need to print these (but you may find an electronic version handy).
You might also be interested in the Bricx Command Center which is an integrated development environment for NQC (I prefer to use the old-fashioned combination of text editor and compiler).
I have some material giving robot designs and sample code; let me know if you want copies. I can also spend some time telling you how to use NQC along with the robot kits. Email me to set up an appointment if you want to do this.
Finally, Aaron Gibbs has put together a LEGO Mindstorms page which include information on how to get started, how to use NQC, and has a bunch of sample programs that you might like to look at.
Using the Lego Mindstorms kit, you will have to build a robot which follows a line (which includes going up and down gradients), detects obstacles (and backs up when it hits an obstacle) and can detect and head towards infra-red light.
A course which incorporates these elements will be provided for you to practice on with the robots.
At the end of the project these robots will compete over this kind of course; the aim is to complete the course in the minimum time.
The robot control programs should be written in the "stimulus-response" style we discussed in Lecture 3.
They describe the procedure that will be followed during the competition.
To set up the course you position a light source (I have one which you can borrow when I am in the office for practice purposes) on the small black cross.
Do not turn the light on.
Place the robot at the end of the black line on the other side of the dividing wall from the black cross.
Let the robot start line-following and start timing.
At some point between the start and the ramp, place a heavyish object (the course textbook for example) in front of the robot.
When the robot touches the object, it should stop and back up slightly.
As soon as the robot backs up, remove the object.
Once the robot has climbed the ramp and successfully gone down the side nearest the light, turn the light on.
Stop the clock when the robot reaches the light.
Each report should be 4-5 pages long (standard letter paper, 10-12pt type, single spaced), and should describe the design of the robot and the design of the code which controls the robot.
You must not only describe the design choices made, but also justify them.
In addition to the 4-5 pages of report, you must submit two other items:
Note that there is no need to use sensors to do this.