Assignments and projects will be announced here, at least two weeks before the deadline.



Assignment 1 (5%) PDF, SOL_PDF 10:10 a.m., Oct 22 2013
Assignment 2 (5%) PDF, SOL_PDF 10:10 a.m., Nov 12 2013

Assignment 3 (5%) PDF, SOL_PDF

10:10 a.m., Nov 19 2013

Assignment 4 (5%) PDF, SOL_PDF

10:10 a.m., Dec 24 2013

Assignment 5 (5%) PDF, SOL_PDF

10:10 a.m., Dec 31 2013

Assignment 6 (5%) PDF, SOL_PDF

10:10 a.m., Jan 2 2014

Assignment 7 (5%) PDF, SOL_PDF

10:10 a.m., Jan 7 2014
Programming Project 1 (10%) PDF 10:10 a.m., Nov 12 2013  Nov 19 2013 (extended)
Programming Project 2 (10%) PDF 10:10 a.m., Dec 24 2013
Programming Project 3 (10%) PDF 10:10 a.m., Jan 16 2014
Midterm Exam (20%)
Final Exam (20%)

Tentative Projects

 Name Description Equipment
Indoor Localization System In this project, the students will implement an indoor localization system using Bluetooth RSSI received by the NXT controller. The goal is to estimate the location of NXT in an indoor environment, where GPS   signal is not available. Students may use Labview or any other NXT-compatible languages. More importantly, students are expected to find and implement RSSI-based indoor localization algorithms in the literature. NXT basic car, Bluetooth transmitters (may reuse Android smartphones), laptop computers, Labview and other programming tools.
Wii+ Remote Car The students will learn how to use accelerometers and gyroscopes in a Wii+ controller to control their NXT basic car. The objective of this project is to model the behavior of sensors, filter out noise, and estimate their accuracy. Both Wii+ controller and NXT controller come with Bluetooth interface and they can communicate via a Bluetooth-enabled laptop acting as a bridge. NXT basic car, Wii+ controller, laptop computers, Labview and other programming tools.
Actuator Modeling In this project, the students will learn how to model actuators using discrete system model. They will model the behavior of a NXT motor in different configurations. They will also learn how to handle control errors and evaluate limitations in accuracy. NXT controller, NXT motors, laptop computers, Labview.
Model-based Vehicle Control Students will simulate the vehicle control programming task using LabView. They will first create a Labview model and run simulations in LabView. They will then put the Labview model to a NXT basic car and evaluate it in actual setup. Last, the students will implement traffic. The final goal is to navigate the NXT car on a miniature map with traffic lights at individual intersections. NXT basic car, laptop computers, Labview.
Soccer Tournament We will hold a competition of 3 versus 3 soccer games among students. The NXT cars in the same teams communicate over Bluetooth for coordination. All the techniques learned in the course can be used in the term project. NXT cars, laptop computers, Labview and other programming tools.


Policy, please read carefully:

  • Discussion: Students are encouraged to discuss the assignments and programming projects with each other. However, each student must write his/her own assignment and code.
  • Honesty: Copying any part of assignments and source codes either from peers or other sources (such as the Internet) is cheating. This includes rephrasing, reformatting, and reparagraphing from the original copies. That is, your must write your own solutions. Copying even a small part of assignments or source codes automatically leads to zero point. No exception will be made.
  • Grading programming projects: After emailing the instructor your source code, no code change is allowed. So, please test your project several times before submission. The code must compile without errors on our machines, or you get no credits. Make sure you structure your source code well and include enough comments. We do take the readability and overall structure into consideration when grading your programming projects.
  • Late submissions: Please check the Schedule page for the guideline of late penalty.