Software Eng. 4AO3 - Design of Real-Time
Systems and Computerized Control Systems
INSTRUCTOR:
Dr. Mark Lawford
Office: ITB/160
E-mail: lawford@mcmaster.ca
Office Hours: Friday 14:30-16:30 |
Teaching Assistants:
Cen Song & TBA
Email: songc3@cas.mcmaster.ca
Offices: ITB/224
|
LECTURES:
- Location: ABB/136
- Time: Mon, Thurs 12:30-13:20,
Tues 13:30-14:20 |
LAB:
- Location: ITB/238&239
- Time: Mon 14:30-17:20
|
MISSION:
The mission of this course is to teach students how to build computer systems that can be trusted in
situations where the system’s response to external events must be both timely and accurate. An important
class of such systems are systems intended to control physical processes. Students will be taught how
conventional (analog) control systems can be implemented (simulated) by software running
on digital computers. They will also be taught how finite state controllers can be used to
control systems with discrete states or operating modes. Students must understand how analog
and digital systems can interact and cooperate. They must also understand how to design
systems for use in safety-critical situations, especially how to design systems that fail safe . This
course assumes that the students understand the basics of conventional (analog) control system
and teaches them how the newer digital technology that can extend the capability of such
systems.
GRADING:
Two marking schemes are provided. In order to have your assignments count in your final mark (Scheme
A), you must pass (obtain > 50%) on the combination of your midterm and final (Scheme
B). Provided you pass by Scheme B *AND* you completed all of the labs, your final mark
will be the max(Scheme A, Scheme B). Otherwise your mark will be min(Scheme A, Scheme
B).
Scheme A
|
|
|
|
|
Midterm exam (2 hours) | 25% |
Assignments/Labs | 25% |
Final exam (3 hours) | 50% |
|
|
|
or Scheme B
|
|
|
|
|
Midterm exam (2 hours) | 30% |
Assignments/Labs | 0% |
Final exam (3 hours) | 70% |
|
|
|
NOTE: In order to pass the course you must pass the combination of the midterm and final.
TEXTS:
- Phillip A. Laplante, Real-Time Systems Design and Analysis (3rd Edition), John Wiley &
Sons Inc., 2004. ISBN 0-471-22855-9
- SFWR ENG 4A03 Course Pack (Available at the bookstore).
ADDITIONAL REFERENCES:
- Course Webpage: http://www.cas.mcmaster.ca/~lawford/4A03/
- A. Shaw, Real-Time Systems and Software, John Wiley & Sons Inc., 2001. ISBN 0-471-35490-2
- G.F. Franklin, J.D. Powell and M. Workman, Digital Control of Dynamic Systems (3rd
Edition), Addison Wesley Longman, 1998.
- N.S. Nise, Control Systems Engineering (3rd Edition), John Wiley & Sons Inc., 2000. ISBN
0-471-36601-3
DETAILED COURSE OUTLINE:
-
Introduction:
- (slides: intro.pdf)
- What constitutes a real-time system? (hard vs. soft real-time)
- How real-time system development differs from traditional application development.
- Overview of course organization
-
Digital Control Theory:
-
- Review of continuous control (slides: review.pdf)
- Review of digital control (slides: digital1.pdf)
- Discrete transfer functions and the Z transform
- Sampled-data systems analysis and design by:
- (i) discrete equivalent
- (ii) direct design
-
Data Acquisition Details:
-
- analog-digital conversion
- Quantization effects - analysis of round-off error due to quantization and parameter
round-off
- The Sampling Theorem and its limits
- Sample rate selection
- Measurement noise and anti-aliasing filters
- D/A conversion and Pulse Width Modulation
-
Design & Implementation of Digital Control Systems:
- (slides: implement.pdf)
- When it is appropriate to implement real-time behaviour by: (a) faking it by being fast,
(b) using a stand-alone (single loop) program or interrupts, (c) using an existing real-time
operating system, (d) writing a real-time kernel
- Hardware for real-time control systems
- Design decomposition of digital control software
-
Real-time Operating Systems:
-
- Properties of real-time operating systems
- Example RTOSes and their use
-
Specification & Design of Real-Time Systems:
-
- Modeling of real-time systems dynamics (discrete, continuous)
- The 4-variable model
- States, modes, mode classes
- Data Flow Diagrams (DFD)
- Specification of timing requirements
-
Concurrent Systems: The Task Model
-
- Periodic vs. aperiodic tasks
- Task switching overhead
- Classification of safety-critical tasks and their priorities
- Interrupts: handling, latency, masking, priorities
- Resource allocation and mutual exclusion
- Avoiding priority inversion
- Interdependent tasks - synchronization & communication
- I/O: synchronization & timing
-
Scheduling of Tasks:
-
- Run-time vs. pre-run-time scheduling
- Priority vs. deadline based scheduling
- Round robin, Rate Monotonic (RM) and Earliest Deadline First (EDF) scheduling
- Example: Implementation of a scheduler
-
Fault Tolerant and Fail-Safe Design:
-
- Designing for reliability and safety
- Fail-safe design: redundancy, voting, error detection
-
Performance Evaluation of Real-Time Systems:
-
- Overview
- Performance measures for real-time systems
- Estimating program run times
- I/O: overhead, processing limitations
-
Introduction to State Space Methods:
-
- State Space Representation and relation to Transfer function representation
- Controllability and Observability
- Controller Design, Estimator Design and the Separation Principle
- Multivariable and Decentralized Control
- Supervisory Control Theory and other generalizations of Controllability and
Observability
NOTES:
Discrimination
“The Faculty of Engineering is concerned with ensuring an environment that is free of all adverse
discrimination. If there is a problem that cannot be resolved by discussion among the persons concerned
individuals are reminded that they should contact there Chair, the Sexual Harassment Office or the
Human Rights Consultant, as soon as possible.”
Academic Dishonesty
“Academic dishonesty consists of misrepresentation by deception or by other fraudulent
means and can result in serious consequences, e.g. the grade of zero on an assignment, loss of
credit with a notation on the transcript (notation reads: ‘Grade of F assigned for academic
dishonesty’), and/or suspension or expulsion from the university. It is your responsibility to
understand what constitutes academic dishonesty. For information on the various kinds of
academic dishonesty please refer to the Academic Integrity Policy, specifically Appendix 3, located
at
http://www.mcmaster.ca/senate/academic/ac\_integrity.htm
The following illustrates only three forms of academic dishonesty:
- Plagiarism, e.g. the submission of work that is not one’s own or for which other credit has
been obtained. An example is copying all or part of someone’s assignment and handing it in
as your own.
- Improper collaboration in group work.
- Copying or using unauthorized aids in tests and examinations.”
Bonus Marks
At the discretion of the instructor, a student will receive 1 to 2 “bonus marks” on their latest
assignment for being the first person to point out a technical error in the lecture slides or other course
related handout.