ESE 680: Networked and Embedded Control Systems

Spring 2011


Course Info

Schedule: Monday, Wednesday, 9.00am - 10.30am, room: Moore 212
Instructor: Jerome Le Ny
Postdoctoral Researcher
Levine 465, email: j e r o m e l [a t] s e a s . u p e n n . e d u
Office Hours:W 12-1pm, Levine 465, and by appointment.

Announcements

  • 02/09: One paragraph proposal for your planned presentation due (include some references).
  • 01/19: Stop by OH so that we start thinking about the topic of your presentation (mandatory also for auditors!)


Course Description

Almost all modern control systems, such as those found in automobiles, aircraft, robots, or industrial processing plants, are implemented on digital platforms, and many of them are embedded systems. Unfortunately, the well-rounded theory of digital control has not kept pace with the multitude of complex system integration issues raised by this trend. Many of the aspects that could formerly be qualified by the control engineer as "implementation issues" play today a crucial role in determining the viability of the overall system, with respect to performance, cost, reliability, maintainability, etc.
Control system design now involves a good understanding not only of the physical process of interest but also of the technological aspects such as overall system architecture, number of computing units, communication networks and protocols between the units, task scheduling in real-time operating systems, etc. All these elements can impact significantly the performance of the closed-loop system. The result is a convergence between the fields of control, communication, embedded system design and software verification, which is still in its infancy.
The goal of this course is to introduce the students to some important aspects of the design of Networked and Embedded Control Systems, and to bring them up-to-date on this currently very active research field. A tentative list of topics includes: fundamentals of digital control; quantization effects; imperfect sampling; control under computation and communication constraints, including real-time scheduling; fundamentals of hybrid systems; system verification: model checking and deductive methods; decentralized control; Model-Driven Engineering.


Course Philosophy, Prerequisites, and Grading

This is a topics course that I plan to run partly as a formal course and partly as a seminar. The content might be adjusted based on the interest of the participants. Emphasis is on the theory during the lectures, but the students are strongly encouraged to explore more practical issues (e.g. software, implementation experiments on physical platforms) during the project.
In contrast to other courses offered at Penn on the broader topic of Cyber-Physical Systems (CPS), this course has a strong emphasis on control systems, and previous exposure to control theory is a prerequisite. For example, students should have taken a linear systems course and know about Lyapunov analysis. It would be good to have some previous exposure to stochastic models and Kalman filtering for certain parts of the course. Basic knowledge of computer science concepts (automata theory, logic) is a plus but not a strict prerequisite.
It is likely that there will be some overlap with the hybrid systems course offered occasionally by George Pappas, but I expect a significant amount of new material. We might revisit topics you have already seen if you have taken CIS 540 (Principles of Embedded Computation) or CIS 541 (CPS), but again in the context of control systems.

Grading: class presentation (40%), project (40-50%), participation (10%), homework (TBD) (0-10%).
The problem sets are mainly used to make sure you are not lost. Students will also be responsible for teaching a lecture, on a topic determined with the instructor, which includes the preparation of lecture notes (this will be adjusted based on the number of participants).
The project constitutes a significant part of the course, and can be done alone or in pairs (recommended). It can be either: 1) the design of a digital control system, with the goal of being as realistic as possible, i.e. including as many implementation effects in your simulations and design as possible, possibly physically implementing your controller it if you have access to hardware (physical implementation is not required; note that the course does not discuss embedded systems programming); or 2) a serious attempt at a novel contribution to the field of NECS. No literature review is accepted for the project, this being the object of the class presentation already.
Auditors: Auditors are welcome in the class. It is likely that student auditors will be required to give a class presentation as well.

(very tentative schedule, with dates subject to change: please revisit regularly during the term.
Also, the notes are pretty rough and not proofread, they should just guide your study).
References for the notes.
Date Topic Reading + Some References Assignments
W. Jan. 12 Introduction slides
M. Jan. 17 MLK Day
W. Jan. 19 Modeling of Continuous and Discrete Signals and Systems Notes. Transition Systems
M. Jan. 24 Modeling of Continuous and Discrete Signals and Systems Notes. Hybrid Systems I, II
W. Jan. 26 Sampling and Sampled-Data Systems Notes, [AW96], [CF96], [GYAC10], [A70]
M. Jan. 31 Sampling and Sampled-Data Systems Notes, [AW96], [CF96], [GYAC10], [A70]
W. Feb. 2 More about step-invariant discretization, issues with DT control Notes I, Notes II. [AW96], [CF96]
M. Feb. 7 Discretization of CT controllers, bilinear transformation, setup for optimal discretization [CF96]
W. Feb. 9 Stochastic noise, H2 norm interpretation, Sampling stochastic differential Equations,
Class discussion about [LSM10]
Misc Presentation Proposal Due
M. Feb. 14 NECS: implementation issues Slides. RT Scheduling I, II
W. Feb. 16 NECS: implementation issues, modeling discussion
M. Feb. 21 NECS: discretization at sampling times, Lyapunov analysis for stability [ZBP01], [CHW+10]
W. Feb. 23 NECS: Lyapunov techniques [ZBP01], [CHW+10]
M. Feb. 28 Class canceled (traveling)
W. March 2 Time-Triggered Implementation of Controllers (Truong Nghiem) Project Proposal Due
March 5-13 Spring Term Break
M. March 14 Wrap-up Lyapunov techniques and LMIs
W. March 16 Kalman filtering with Intermittent Observations (Yash) [SSF+04]
M. March 21 Class canceled (traveling)
W. March 23 Class canceled (traveling)
M. March 28 Control over Wireless Networks (Konstantinos)
W. March 30 Control and Real-Time Scheduling (Philip)
M. April 4 Quantization Effects (Chris)
W. April 6 Review of input-output analysis: small-gain
M. April 11 (CPS Week) Switched Systems (Zack)
W. April 13 (CPS Week) Lifting and small-gain applied to NECS [M07]
M. April 18 AADL (Oleg Sokolsky)
W. April 20 Event-Triggered Sampling in Control (Miroslav)
M. April 25 Passivity and wave-variables for NECS Final Project Report due
Examples of Topics for Additional Student Lectures
Distributed control (decentralized fixed modes, quadratic invariance, ...)
Distributed Estimation (distributed LMS, RLS, and Kalman filtering, ...)
Switched Systems
Model Predictive Control with Logic Constraints
Barrier Certificates and Sum-of-Squares
Event-based sampling for control


References

(will be updated during the term)

Textbooks and Tutorials
[GPW97] G. F. Franklin, J. D. Powell and M. L. Workman, "Digital Control of Dynamic Systems", 3rd edition, Prentice Hall, 1997.
[AW96] K. J. Astrom and B. Wittenmark, "Computer-Controlled Systems: Theory and Design", 3rd edition, Prentice Hall, 1996.
[A70] K. J. Astrom, "Introduction to Stochastic Control Theory", Academic Press, 1970 (republished by Dover in 2006).
[CF96] T. Chen and B. A. Francis, "Optimal Sampled-Data Control Systems", Springer, 1996.
[FG96] A. Feuer and G. C. Goodwin, "Sampling in Digital Signal Processing and Control", Birkhäuser, 1996.
[WAA02] B. Wittenmark, K. J. Astrom and K.-E. Arzen, "Computer Control: An Overview", IFAC Professional Brief, 2002.
[Wes00] T. Wescott, "PID Without a PhD" Embedded Systems Programming, October 2000.
[Liu00] J. W. S. Liu, "Real-Time Systems", Prentice Hall, 2000.
[CL08] C. G. Cassandras and S. Lafortune, "Introduction to Discrete Event Systems", 2nd edition, Springer, 2008.
[Tab09] P. Tabuada, "Verification and Control of Hybrid Systems: A Symbolic Approach", Springer, 2009.
[Pla10] A. Platzer, "Logical Analysis of Hybrid Systems", Springer, 2010.
[BK08] C. Baier and J.-P. Katoen, "Principles of Model Checking", The MIT Press, 2008.
[Sch10] K. Schneider, "Verification of Reactive Systems: Formal Methods and Algorithms", Springer, 2003.

Research Monographs and Technical Papers
[Wil78] A. S. Willsky, "Relationships Between Digital Signal Processing and Control and Estimation Theory", Proceedings of the IEEE, vol. 66, no. 9, pp. 996-1017, September 1978.
[GYAC10] G. C. Goodwin, J. I. Yuz, J. C. Agüero, M. Cea, "Sampling and Sampled-Data Models", Proceedings of the American Control Conference, pp. 1-20, 2010.
[NCS] Networked Control Systems Repository
[Al+05] R. Alur, K.-E. Arzen, J. Baillieul, T.A. Henzinger, D. Hristu-Varsakelis, W. S. Levine, Editors, "Handbook of Networked and Embedded Control Systems", Birkhauser, 2005.
[ZBP01] W. Zhang and M.S. Branicky and S.M. Philips, "Stability of Networked Control Systems", IEEE Control Systems Magazine, vol. 21(1), pp. 84-99, Feb 2001.
[CHW+10] M.B.G. Cloosterman, L. Hetel, N. van de Wouw, W.P.M.H. Heemels, J. Daafouz and H. Nijmeijer, "Controller Synthesis for Networked Control Systems", Automatica , Volume 46, pp. 1584-1594, 2010.
[LSM10] J. Lavaei, S. Somayeh and R. M. Murray, "Delay-Based Controller Design for Continuous-Time and Hybrid Applications", Caltech Technical Report, 2010.
[SSF+04] B. Sinopoli, L. Schenato, M. Franceschetti, K. Poola, M.I. Jordan, S.S. Sastry, "Kalman Filtering with Intermittent Observations", IEEE Transactions on Automatic Control, Vol. 49 (9), pp. 1453-1464, Sept. 2004.
[M07] L. Mirkin, "Some Remarks on the Use of Time-Varying Delay to Model Sample-and-Hold Circuits", IEEE Transactions on Automatic Control, Vol. 52 (6), pp. 1109-1112, June 2007.
[DO178] DO-178B and the future DO-178C: Software Considerations in Airborne Systems and Equipment Certification
[ARINC653] ARINC 653: Avionics Application Standard Software Interface
[AFDS] Avionics Full-Duplex Switched Ethernet (AFDX)

Related Courses


Tools
Hybrid System Tools Repository
TrueTime @ Lund
Pessoa @ UCLA
SPIN: model checker
UPPAAL, KRONOS: model checker for timed automata
KeYmaera: Theorem Prover for Hybrid Systems
PVS, Coq, Isabelle/HOL: general purpose proof assistants / theorem provers
Verimag Synchrone Tools: in particular, link to LUSTRE
AADL: Architecture Analysis and Design Language
SysML: Systems Modeling Language
SystemC: system design and verification