A general overview of the project expectations.
Groups
The project will be done in pairs. If you are having trouble finding a partner, please use this space to post there. You can provide your contact info and indicate that you need a partner for the project, perhaps a general idea of your project interests. You can partner up with a student from a different lab session, but you will need to agree on which session to attend during the demo week.
Overview
-
The project you come up with will make effective use of Grove and Arduino components from your kit. You can borrow external components that are available in the lab if you are interested!
-
The project should use at least two input sensors and at least two output devices. The output must be manipulated by the input in some way (eg. it is not sufficient to have your LCD screen or console say "Hello" the entire time, but you can use it to print the input of a sensor or user, the result of a decision, the value of a variable, etc.).
-
You are expected to include most or all of the concepts covered in the lectures and labs
-
Your project can help solve an identified problem OR help introduce a novel idea or innovation. It can be a full solution or a proof of concept - a small-scale demonstration of the feasibility of a larger-scale idea.
-
Projects can borrow from ideas, algorithms, and designs developed for Labs 1 - 6, but must be larger in scale and design than any of Labs 1 - 6.
Deliverables
-
Proposal (1%)
The first step in most Engineering projects is to propose (and gain approval for) what you actually want to do.
Your proposal should be 1 - 2 pages and include three sections:
-
Section 1 - Summary of Proposed Project: Describe the project you intend to design and implement. To do this, you can answer the following questions:
-
What will this software do?
-
What problem will it address and/or what innovation will it have?
-
What are the “base” features and functionalities that you will implement?
-
What features and functionalities could you add given time and extra equipment?
-
-
Section 2 - Hardware Components: inputs and outputs:
-
What are the inputs and outputs of your system?
-
How will they be used?
-
-
Section 3 - Linking to Key Concepts in Project: Explain how each key concept in the course may be used in the project, and why they are chosen for this purpose. This requires some thought about the design. The concepts include:
-
Expressions and operators
-
Variables
-
Flow control
-
Iterations
-
Strings
-
Lists
-
Function Definitions
-
Modules
-
-
-
Project Report (2%)
The project report is divided into two key submissions to ensure progress tracking and better understanding of project development.
-
Project Planning & Feature Breakdown (0.5%)
-
List of planned features
-
List of modules to be used in the project
-
A timeline of when you plan to complete different parts of the project (reflecting on the project features)
-
-
Implementation & Testing (1.5%)
-
Section 1: Implementation
-
Final design in pseudocode format, as well as breif description of the algorithm
-
List any changes to the original plan (features that were modified, added, or removed). Explain any features that failed to be completed and why
-
-
Section 2: Testing
-
Test results and analysis, covering all the key aspects of individual algorithms as well as the system as a whole in details
-
Provide input/output examples and discuss whether the results matched expectations
-
Summary of logical problems encountered
-
-
-
-
Demonstration (3%)
-
To instructors and TAs
-
The demo should be planned for about five minutes long and include:
-
An introduction to the project goals and purpose
-
A demonstration of the key features of the project
-
Time to answers questions from the markers (instructors and/or TAs)
-
-
Available Components
The Arduino beginner kit has many sensors which we used in our labs for different purposes. These and more are available for use in your project. Please note that certain items have limited availability so in the event that a specific component is not available, feel free to ask about alternative options!
Here is the list of components available in our lab to borrow:
-
Servo motors: rotate between 0 and 180 degrees (like a windshield wiper).
-
RGB LCD: can be used to print information, and display different colors.
-
Touch sensor: works like a button but with a capacitive surface.
-
Distance sensors: can be used to detect objects up to 3m away (works more reliably in closer range).
-
Joysticks: can provide direction of motion.
-
Relay switches: with the appropriate supprting circuitry, can control powered devices (like a lightbulb).
-
Slide potentiometer: a user-friendly input device similar to the dial. You can move the slider from side to side to control your signal.
-
Dual button: includes 2 buttons, enables you control two signal channel with one grove module.
-
PIR motion sensor: a digital sensor that allows you to sense motion, usually human movement in its range.
-
Moisture sensor: can be used for detecting the moisture of soil or judge if there is water around the sensor.
Sample Work
Tentative Timeline
Task | Due Date |
---|---|
Identify partner & submit proposal |
February 27 |
Submit part I of the project report |
March 17 |
Project demonstration |
Week of March 31 |
Submit part II final report & supporting documents |
April 10 |