ECE 4760: Laboratory 4
Design project.
Introduction.
For this exercise, we want you to pick a project, then design and build it.
During this period there will be no other assignments, so we expect you to
spend all of your time for this course on the project. As a rough estimate,
this means a minimum of 12 hours/week in lab. You will be expected to be in
lab at the usual times every week and to show significant progress each week of the project.
When choosing a project you will need to consider availability of hardware,
time available, a monetary budget, and your programming skill. You may want
to look at several of the links on the 4760 home page for project ideas.
Grading:
- Grades will be assigned by rank-ordering all projects in all sections, thus you will be competing against everyone in the class for this grade.
- 20% of your project grade depends upon being prepared each week and on the quality, quantity and character of the work done during each week. Each week in lab a one-page progress report may be due.
- 30% depends on the project demonstration before or on your last scheduled lab period.
- 50% will be based on your project writeup. the writeup will be a web page that will be handed in on the specified university due date, consistent with University policy. In Fall 2019 the due date is 12/18/19 at 1130 (11:30 AM).
- The members
of a group may be graded differentially if it becomes obvious to the staff that
team members are not contributing equally.
- There will be a bonus for finishing early. The
bonus=round(2.7*(floor(days).^0.5))
.
(Table) Note that fractions of days early are
eliminated by this function. Early days are counted from your last regularly scheduled lab period. This bonus is designed to reduce lab congestion
during the last week and to reward good design in a real-world fashion.
Web pages and social media
- You must write a web page due at the date specified by Cornell.
This page will be your final report that you must hand in the day of the scheduled final project submission for this class.
In Fall 2019 the day is 12/18/19 at 1130 (11:30 AM).
This web page must be portable in html format and not linked to a propietary server.
(for example http://www.wix.com/ is unacceptable).
- You must submit your web page for grading (see below).
Failure to follow the submission procedure may result in a lower grade.
- You may optionally opt-in for inclusion of your project on
the course page.
This a new CORNELL requirement!
You will automatically lose 5 points on your project if you do not include this!
In the final report, Appendix A
One of two sentences!
Either: "The group approves this report for inclusion on the course website."
Or:
"The group does not approve this report for inclusion on the course website."
If you will ever be asking me for a recommendation, I suggest that you opt-in your project.
The project web pages help me remember the details of a project and person. However, if you intend to
pursue intellectual property rights to this work, do not put it on the web.
- I will submit student videos to YouTube for inclusion on the ece4760 channel, if you opt-in.
This a new CORNELL requirement!
You will automatically lose 5 points on your project if you do not include this!
In the final report, Appendix A
One of two sentences!
Either: "The group approves the video for inclusion on the course youtube channel."
Or:
"The group does not approve the video for inclusion on the course youtube channel."
- You might consider submitting your projects to hackaday, hackedgadgets, or other blog sites.
I will also do this, only if you approve the project for web inclusion.
- I will help any group to try publishing their project in a print magazine.
See ece4920 description.
About 70 student projects have gotten into print, often in Circuit Cellar Magazine.
A few have gotten into the peer-reviewed literature, usually with more work as an independent study.
Procedure:
- Depends on what you will build. You should talk often to your lab instructor.
- All projects will use a PIC32 architecture.
- You should consider:
- Testability: Can you easily test the device you want to build.
- For instance, testing a flying device is almost impossible in the lab.
NO flying device of any kind will be allowed.
- GPS does not work inside Phillips Hall and barely works in the Duffield atrium.
- Certain devices may be challanging to test for technical reasons, such as galvanic isolation.
- Solar powered devices are very difficult to test in Nov/Dec in Ithaca.
Percent of complete overcast
at end of NOV is 63% (weatherspark)
Percent of complete clear sky at end of NOV is 11% and mostly clear (includes clear) sky 20%.
- Ease of demonstration:
- Demoing a device which requires a large outdoor area is difficult in December.
- A motor vehicle device may be difficult or impossible to test in a timely fashion.
- If you require the instructor to come to a location outside lab for the demo,
then you must schedule a one_hour demo window to use the optional extension days.
- Cost: See Budget section below.
Special project restrictions:
- No projectile devices or weapons of any kind will be allowed as projects.
- No flying vehicles of any kind will be allowed as projects.
(Possible exception for ground-effect machines.
)
- No drug or alcohol related projects will be allowed.
(except perhaps a breathalyzer or similar device, with appropriate restrictions and carefully detailed test procedure).
- Video games will be allowed only if there is significant hardware involved in development.
You MUST obtain explicit permission from the instructor.
- A project which involves measurement of human physiology in any way must be explicitly approved by the instructor
and conform to safety and HIPPA standards.
Budget considerations:
Your budget will include MCU(s), boards you build,
power supplies, parts you order, and everything else you buy. Details below.
Only parts actually in the final prototype count towart the budget.
Hardware you already own is included in the budget.
Budget exceptions:
- Vendor samples are not inlcuded in the budget. Good places to find samples:
- Hardware you can scrounge is not included in the budget. Be prepared to explain where it came from.
- Projects which involve research groups or design projects outside the course will be considered on a one-by-one basis for budget exceptions.
This is to encourage collaboration with ongoing projects at Cornell. You must get this exception approved by the instructor.
- Shipping costs are not included in the budget.
The instructor will order
parts from the following vendors once/week, on Monday at 0800.
- To order a
part, you need to email the instructor the EXACT part number as given at the
vendor's site
(the vendor's part number, not the manufacturer part number),
the vendor name and the price.
- The format should be plain text in the body of the mail:
(quantity n) part_number, vendor,
optionally a link
- Parts with typos in the part number will not
be ordered.
- Parts which are backordered will not be ordered.
- Parts with a total (for
the whole project) value/group exceeding $20 will not be ordered.
IF some parts can be ordered, the priority will be top down order in the mail file.
- Parts requests
arriving after 0800 Monday will be delayed one week.
- digikey.com Very good inventory and parts
search capability. Has linked data sheets.
- allelectronics.com Surplus displays,
motors, switches, LEDs
- adafruit.com display modules, connectors, breakout boards for SMD, much more
- sparkfun.com displays, prototyping, RF, sensors, and more
Budget Details:
- The total budget this year will be $125 per group including the amount you spend, the amount I spend,
and the following rental fees for the following lab hardware.
- Penality for being overbudget: deduct
points=((cost-125)*0.316)2 If cost>$125
- Costs: Please note that these costs are for budget calculations only.
No money changes hands.
- MicroStickII $1
- Big Board $10
- Small Board $4
- white board $6
-- solder board (6 inch) with the same layout as a white board
$2.50
-- small solder board (2 inch) $1.00
- each power supply $5, each 9 volt battery $2, each 1.5 volt battery $0.50
The batteries we stock will be budgeted at $1 per set, including the ones used in testing.
- PIC32MX250F128B $5 Always use a socket for the MCU
- I/O expander $5 Always use a socket for the expander
- TFT LCD $10 Do not not solder this to your project!
- Keypad $6 Do not not solder this to your project!
- LCD TV free
- Lab speakers $2
- jumper cables $0.10 each
- sip or header socket/plug $0.05 PER PIN
- SOIC/SOT23 carriers $1.00
Student observations:
A group
in 2002 added the following thoughts.
Here are the top 10 things you can do to survive EE 476 Final Project Month:
1. If you use a chip other than the one you've been using in class all semester,
read the documentation thoroughly, subtle differences are going to kill you.
It's just a matter of for how long they kill you.
2. If you feel heat from your board, or smell burning: THERE IS A SHORT. Don't
look for the short first. TURN OFF THE POWER!
3. If the voltages look right, and the wiring looks right, but nothing's happening,
it is possible that your chip is fried, don't be afraid to ask for another chip.
This would've saved me a week of pain, and a bad hit to morale.
4. If you're stuck on something, ask Bruce or the TA's. Make a reasonable attempt
to solve it yourself, but don't sit there for three hours just because you cannot
remember which port of the opamp is correct. Remember, we all look like we're
working, so Bruce's spider sense won't kick in. You must call him, he can't
call you.
5. Order parts early. Order duplicates if you can afford it.
6. If you're going to solder onto a perf board, you don't have to rip apart
your breadboard. Just make another copy of the circuit.
7. You will not finish if you don't start early.
8. You probably won't finish if you don't take advantage of extended lab hours.
9. Do what you can do out of lab out of lab.
10. Seriously, pick a project you'll enjoy. These four weeks can be pain, or
the most fulfilling of your Cornell Career.
A group in 2003
added this:
Know your limits. As much as we'd all love to have a final project whose bells
and whistles rival Las Vegas slot machines, realize that a month is a very short
time, and that dealing with the disappointment of having to scale back your
project as you progress along is much better than coming to the same realization
on the day of your demonstration.
Assignment
You will be graded on several aspects of the project:
- Appropriate level of hardware/software complexity.
- Appropriate use of microcontroller. Does the project make embedded system sense.
At least 50% of work must be done on PIC32MX series chips.
- A project which works according to specification (which you will write).
- Level of effort and organization shown in lab.
- Ability to say within budget.
- A demonstration of the final project to Bruce during the last regular scheduled lab period of the semester.
- Completeness and understandability of the final report.
- The final report is a web page which must
be handed in on the day and time specified for a final project in this course by the University.
The report must be emailed as described (see bottom of page).
- The final report web page will consist of one folder with exactly one html file with the file name
index.html
.
In the folder there may be c-source files, images, mpegs, or other supporting documents linked to the one html file.
- In the final report, Appendix A
One of two sentences!
Either: "The group approves this report for inclusion on the course website."
Or:
"The group does not approve this report for inclusion on the course website."
and
One of two sentences!
Either: "The group approves the video for inclusion on the course youtube channel."
Or: "The group does not approve the video for inclusion on the course youtube channel."
Documentation
must include all the major sections.
You may omit specific subsections not relevant to your project.
All appendices must be included.
Final report outline:
- Near the top of the first page:
- project title
- student names (and optionally netids)
You would be surprised at how often this is omitted.
- Introduction
- One sentence "sound bite" that describes your project.
- A summary of what you did and why.
- High level design:
- rationale and sources of your project idea
- background math
- logical structure
- hardware/software tradeoffs
- Relationship of your design to available IEEE, ISO, ANSI, DIN, and other
standards.
- Discuss existing patents, copyrights, and trademarks which are relevant
to your project.
- Program/hardware design:
- program details. Could someone else build this based on what you
have written?
- hardware details. Could someone else build this based on what you
have written?
- Be sure to specifically reference any design or code you used from
someone else.
- Things you tried which did not work can be useful for the next people to use your techniques.
- Results of the design:
This is the section which is most often lacking in student projects. Be specific!
If you took calibration data, then show it!
If you have images or video, include it.
Show:
- speed of execution (hesitation, filcker, interactiveness, concurrency)
Be quantitative. Show graphs!
- accuracy (numeric, music frequencies, video signal timing, etc)
Be quantitative. Show graphs!
- how you enforced safety in the design.
- interference with other people's designs (e.g. cpu noise, RF interference).
- usability by you and other people (perhaps with special needs).
- Conclusions:
- Analyse your design in terms of how the results met your expectations.
What might you do differently next time?
- How did your design conform to the applicable standards?
- Intellectual property considerations.
- Did you reuse code or someone else's design?
- Did you use code in the public domain?
- Are you reverse-engineering a design? How did you deal with
patent/trademark issues.
- Did you have to sign non-disclosure to get a sample part?
- Are there patent opportunites for your project?
- Are there publishing opportunities for your project?
- Ethical considerations. Refering to the IEEE
Code of Ethics, specifically explain how decisions you made or
actions you took in this project were consistent with this Code of
Ethics.
- Safety considerations. Were there parts of the design that could hurt anyone.
Specific examples might be isolation for bio-recordings, or laser-light shielding.
- Legal considerations. For example:
- If you use a transmitter, you must discuss
the appropriate FCC Part 15 rules.
- If you are connecting wires to yourself, you must discuss
the appropriate FDA sections.
- If you are attaching to a automobile, you must discuss the appropriate state and Federal Motor Vehicle Standards.
- Appendix A
One of two sentences!
Either: "The group approves this report for inclusion on the course website."
Or:
"The group does not approve this report for inclusion on the course website."
One of two sentences!
Either: "The group approves the video for inclusion on the course youtube channel."
Or: "The group does not approve the video for inclusion on the course youtube channel."
- Appendix with commented program listing
- Appendix with schematics (you can download free software from expresspcb.com
to draw schematics)
A block diagram is not a schematic.
- Appendix with cost details with all part numbers, vendors, and their price. This
cost will include components as described in the Budget Considerations section.
- Appendix with a list of the specific tasks in the project carried
out by each team member.
- References you used:
- Data sheets
- Vendor sites
- Code/designs borrowed from others
- Background sites/paper
The web page final report must be submitted as desribed here.
Failure to follow this submission procedure may result in a lower grade.
Unless
you optionally opt-in for inclusion on the class web page, your report will not appear on the projects page.
If you will ever be asking me for a recommendation, I suggest that you opt-in your project.
The project web pages help me remember the details of a project.
To submit your report:
- Put all of your web page files in one directory.
- Name this directory with the concantented netids of all the group members, e.g.,
brl4_bfg88
Since the pages will be on a UNIX server, you must:
- Make sure the cases (upper/lower) of all filenames agree with their
hyperlinks.
For instance: JPG != jpg
in a file name
NOTE that some picture editors CHANGE the case of the extension when they store an iamge.
- Separate folders in a path using foreslashes (/) not backslashes.
- Use only alphanumeric characters and underscores in filenames (NO SPACES, no punctuation).
- Check all your links to make sure they are relative to your main page.
- Use a directory name consisting of the group's concantenated netids.
- ZIP the directory.
- Send it to yourself, unzip on a different computer, and test the site.
- email it to BRL4@cornell.edu.
OR if it is too big use dropbox.cornell.edu
Copyright Cornell University
November 1, 2019