Skip to content

Latest commit

 

History

History
75 lines (43 loc) · 4.84 KB

project.rst

File metadata and controls

75 lines (43 loc) · 4.84 KB

Project Planning

Overview

The group project you'll be doing will span three weeks, and you'll be working in a team of two people. A project of this size requires proper planning to make sure that you achieve your goals and don't get behind schedule.

You can share your reports and other files with the instructors and the rest of the group in this Google Drive folder.

Choosing a Project

Since you don't yet have experience with constructing and programming Mindstorms robots, it might feel difficult to tell what a project with the right size is. In order to engage the size and complexity of robot building projects, search YouTube for EV3 (or for the older version, NXT), and check out the example projects below. Searching YouTube is also a good way to come up with project ideas.

Project suggestions:

  1. Measure the gravitational acceleration g.
  2. Climb the stairs.
  3. Follow a line as fast as possible.
  4. Build a weight-measuring scale.

Feel free to discuss your ideas and the project suggestions with the instructors.

Finally, a tip: make sure both of you find the project exciting - that will help you concentrate throughout the course and fight the obstacles you'll encounter.

As you're making a decision, discuss your ideas with the instructors to make sure that you're choosing a project of the right complexity. Finally, get your project idea signed off by the instructors.

Project Milestones

When planning a project, it is impossible to predict exactly how much one can achieve in the given time frame. In order to deal with this uncertainty, we will work with milestones in this course.

Imagine that your project is to measure the gravitational acceleration g. This is a single goal, and because of the uncertainty of the many components required to build this project, you might not be able to complete the project on time, or the opposite, you might finish a week too early.

Thus, instead of setting a single goal, we will set several milestones that you can work towards. For the gravitational acceleration project, example milestones might be:

  1. Build a robot to drop a ball.
  2. Add sensors that register when the ball passes them.
  3. Compute the gravitational acceleration from a single measurement.
  4. Compute the gravitational acceleration from several manual measurements.
  5. Build a construct that automatically performs several measurements.

These milestones are great because:

  • the first milestone is easy to achieve, so you can make sure you will definitely have built something by the end of the course;
  • the middle milestones are substantial and interesting projects;
  • the last milestones are extensions that make your project even more advanced.

As part of your project plan, set some milestones. Also include an estimate of when you plan to be ready with each milestone. (Don't worry, we'll revisit the time estimates each week.) Make sure that you submit and get your milestones signed off by the instructors.

Note that the primary purpose of plans is not to follow them word by word, but rather to give you a mental model of how you're doing with your project. In this spirit, you should regularly revisit your milestones to understand whether you're project is tracking and to see where you should alter your plan.

Final Report and Presentation

You will finish the course by preparing a final project report and presenting your work to the rest of the class. You will be graded based on attendance, your report, and your presentation.

The format of the final report is not specified, but at a minimum, it should include the following:

  • Your original plan and what you achieved of it

  • Documentation of your final construct (the construct architecture and the working of the MATLAB program)

  • The challenges you encountered and the design decisions you made; the evolution of your construct and program

    • This is a really important part of the report: it shows that you thought about your decisions and you learnt from what you observed. Did you have a construct that didn't work the first time, that was inaccurate the second time, but worked the third time? Did you have some code which returned noisy signal the first time but a transformation has fixed it? Write about it: the learning process is the most interesting part.

Upload your report to this shared Google Drive folder.

The presentation will consist of 3 minutes of presentation (including a demo) and 2 minutes of Q&A.