EECE 485 : Digital Instrumentation for Mechanical Systems

Instructor
Lectures and Tutorials
Teaching Assistants
Labs
Assignments
Text
References
Web Page
Mailing Lists
Evaluation
Prerequisites
Intended Audience
Objectives
Course Outline

Instructor

Ed Casas. You can contact me by e-mail (edc@ece.ubc.ca) or at my office in MCLD 451 (822-2592). Most questions about the course should be posted to the course mailing list.

Lectures and Tutorials

Monday, Wednesday and Friday, 8:30 to 9:30 AM in in MacMillan (MCML) room 160. Tutorials cover new and important material and attendance is required.

Teaching Assistants

Ata Saravi (atasaravi@hotmail.com) will demonstrate labs 1 and 2. Mehran Azimi (mehran@ece.ubc.ca) will demonstrate labs 3 and 4. Priyantha DeSilva (priya@ece.ubc.ca) will demonstrate Lab 5 and mark the assignments.

Labs

The labs are an integral part of the course and all labs must be completed to pass the course. Each lab requires you to write a computer program and/or wire up a circuit.

Lab Schedule

Two 1.5-hour lab sessions are scheduled for each lab and TAs will be available in the labs during the scheduled lab times.

However, you may need more than 3 hours to complete some labs. You may use the lab whenever it is not in use by another course (when there are no TAs in the room) although the TAs will only be available to help or mark during your scheduled lab time. Room 112 is open 24 hours a day but the building is locked outside normal working hours.

Each student should try to prepare a unique solution before the lab. Each student must submit their own lab report. However, due to a shortage of lab equipment it is likely that you will have to work in pairs (groups of 2 students) during the labs and develop a joint solution.

Please leave promptly at the end of your lab session if another group is scheduled (sections L1C and L1D).

The lab schedule is as follows:

Lab   Topic                              Starts    Report Due

 1  A Simple C Program                   Sep 19	     Oct  3
 2  Programming a Keypad and Display     Oct  3      Oct 17
 3  Washing Machine Controller           Oct 17      Oct 31
 4  Microcontroller                      Oct 31      Nov 14
 5  PAL-based Game                       Nov 14	     Nov 28

Lab Marking

You must print your program and demonstrate it to the TA before the end of your second lab session. The TA will then ask each student one or two questions about the program to make sure they understand the material. If did your own work you shouldn't have any problems answering the question(s).

A short lab report must be handed in to the EECE 485 assignment box (see below) before 12:30 PM on the due dates shown above. This report should include a brief description of your program or circuit, source code listings and/or schematics, and answers to any questions posed in the lab notes.

Each lab will be marked out of 5 as follows:

	correct program/circuit         3
	answers after demo              1
	accurate and complete report    1 

The equipment available in the lab changes during the term and it may be difficult to complete or demonstrate your lab after the scheduled dates. Therefore:

If a lab is not demonstrated on time you will receive a mark of zero for that lab (0/3). If the report is not handed in on time you will receive zero for the report (0/1).

However, remember that you must demonstrate all labs, even if late, to pass the course. A few lab sessions will be scheduled near the end of the course to demonstrate late labs.

Students are encouraged to seek help from classmates but copying is not allowed. Possible penalties for plagiarism include a mark of zero for all labs. If you developed your solution with a classmate, please indicate their name on your lab report.

Lab Hints

Study the lab instructions and write your program and/or design your circuit before the start of your first lab session.

The labs will take longer than expected. Do not wait until the last few days to start the labs. The TAs will give priority to marking during the second lab session and may not have much time to help you.

Ken Madore (MCLD 112A) is the staff member in charge of the lab. He may be available in the lab during the day and will provide you with a user ID and a password at the start of the course. He may also be able to help you with problems in the labs if you cannot find of one of the TAs and he is not busy with other duties.

Assignments

Assignments will be given out periodically and will be due one week later. Your solutions should be placed in the box labelled ``EECE 485'' outside the lab (MCLD 112). Solutions will be handed out for all questions but not all questions will be marked. Late assignments will be given a mark of zero.

Assignments are to be done individually. Students are encouraged to seek help from classmates but copying is not allowed. Possible penalties for plagiarism include a mark of zero for all assignments.

Text

There is no text for this course. Detailed notes will be distributed before the relevant lecture. The notes will often contain exercises or sections to be completed during the lecture.

Please wait until the end of the lecture before taking extra copies. You can always print copies from the course's Web page (see below).

Other References

The book Real--Time Microcomputer System Design: An Introduction, by Peter Laurence and Konrad Mauch, McGraw-Hill, 1987 was used for this course for many years although much of the material is now outdated.

The C Programming Language second edition, by Brian W. Kernighan and Dennis M. Ritchie, Prentice Hall, 1988, is the standard textbook on C.

The Art of Electronics, second edition, by Paul Horowitz and Winfield Hill, Cambridge University Press, 1989, is a good practical reference book on most aspects of electronics although some of the material is dated.

Web Page

Students should check the course Web page (http://www.ece.ubc.ca/~edc/485/) regularly for announcements about the course. These web pages can be read with any browser. Copies of the lecture notes, assignments, exams, and solutions will be available in various formats.

Mailing Lists

The lecturer will post important announcements about the course on the eece485-announce mailing list. All students in the course should subscribe to this mailing list.

Students should post questions or answers about the course material to the eece485 mailing list.

Instructions on subscribing are available on the course Web page.

The mailing lists can also be accessed through the eece485-announce and eece485 archives.

Evaluation

There will be a 50-minute mid-term examination in late February (date TBD) and a final exam in April. The final mark will be calculated as follows:
	final exam  		49%
	midterm exam 		20%
	assignments 		10%
	labs			20%
	participation		 1%
The participation mark will be awarded (at the end of the course) to students that asked or answered a non-trivial question on the course mailing list. Please include an approximation of your real name (but not your student number) when posting to the mailing list.

Changes to the marking scheme will require the agreement of the instructor and all of the students.

On October 27 the class unanimously agreed to change the course marking scheme so that the final exam mark will be substituted for the mid-term mark if the final exam mark is higher.

Please note: \begin{itemize} \item All labs must be completed to pass the course. \item Late labs and assignments will receive a mark of zero. \end{itemize}

Prerequisites

Student should have some experience programming in a procedural language such as C or FORTRAN (e.g. CPSC 152). Students should be able to analyze basic electrical circuits (e.g. ELEC 256).

Intended Audience

Students interested in using (rather than designing) microcomputers for control (rather than computational) applications.

Objectives

By the end of the course the student should be able to:
  • identify a control system's inputs and outputs
  • design and describe (in tabular and diagram formats) a state machine that implements a given control function
  • convert between number systems and apply basic logical and arithmetic operations to numbers
  • write a computer program that implements a given algorithm using the subset of C taught in the course
  • describe the result of executing a given C program written in the course's subset of C
  • describe the function and operation of a microprocessor's address, data and control buses when executing certain basic machine-language instructions
  • give the levels appearing on various signal lines during the exchange of data over simple parallel (printer) and serial (RS-232) interfaces
  • select an appropriate type of sensor for a given application
  • describe the principles of operation of three basic types of A/D converters (flash, successive-approximation and dual-slope)
  • draw schematics and compute steady-state voltages, currents and power dissipation of simple BJT, FET, SCR and Triac switching circuits
  • select a particular type of electric motor for a given application
  • identify possible safety and reliability concerns for a given control application
Detailed objectives will be provided in the introduction to each set of lecture notes.

Course Outline

The following is the approximate order of the topics to be covered:
  • microcomputers for control applications
  • programming in C
  • state machines
  • boolean logic, number systems, logic circuits
  • microcomputer system architecture
  • parallel and serial interfaces
  • mid-term exam
  • sensors and analog-to-digital converters
  • electromechanical actuators and power electronics
  • safety and reliability

EECE 485 Home Page