News
First lecture: Thursday at 10:15 n E1 3, HS002Written on 07.04.26 (last change on 22.04.26) by Martina Maggio Hello everybody and welcome to the course. The first lecture of the course will take place on Thursday 09.04, starting at 10:15, in E1 3, HS002. Looking forward to seeing many of you. |
Cyber-Physical Systems
This course was previously called Embedded Systems. If you have taken a previous instance of Embedded Systems, you cannot take this course for credits.
What are cyber-physical systems? These are integrated systems that bridge the digital (cyber) and physical worlds. They monitor and control physical processes through computational algorithms, embedded within mechanical and electrical systems. Cyber-physical systems are essential to modern technology, from autonomous vehicles and robotics to smart buildings and medical devices. They constantly interact with their environments, adjusting their behavior to meet design specifications and performance goals.
Syllabus: The course is divided into three parts, that build on one another: (1) Modeling, (2) Control Design, and (3) Implementation.
- In the modeling part of the course we will start with prerequisites (linear algebra concepts) and continue discussing different types of models (linear and non-linear systems). We will then talk about linearization and focus on linear systems, clarifying the difference between autonomous and input-driven systems. We will then talk about discretization and obtain linear time-invariant dynamical models. We will then formally prove properties of these models (stability, observability, reconstructability, controllability, reachability, and properties of the transient behavior). Then we will introduce data-driven models and switching models.
- In the control design part, we will focus on how to achieve these properties using the input signal and how to design a controller. We will discuss pole placement, Proportional Integral and Derivative controllers, the design of observers, and of controllers based on the optimization of a cost function. We will then discuss how robust these controllers are with respect to unmodeled dynamics and disturbances.
- In the implementation part, we will take the controllers designed in the second part and study how to implement them. We will discuss periodic tasks and scheduling theory, how to make the code execute as predictably as possible, and how and when to exploit some structural properties of the implementation. We will then talk about non-ideal behavior, such as computation with finite precision, quantization effects, and limit cycles. Finally, we will briefly discuss fault tolerance aspects such as communication unreliability and the possibility of undesired computational overruns.
Calendar
Lectures: Lectures are generally held on
- Tuesdays 16-18 (c.t.); E1 3, HS002
- Thursdays 10-12 (c.t.); E1 3, HS002
with some exceptions due to holidays and scheduled breaks. Please check the timetable page for detailed information.
Tutorials: We offer two tutorial slots.
| Tutorial 1 has the following times and rooms: | Tutorial 2 has the following times and rooms: |
|
|
Assignments: There are two mandatory assignments that should be passed to gain admission to the exam.
- The first assignment will be released on 11.05 at 00:01 and is due on 17.05 at 23:59.
- The second assignment will be released on 06.06 at 00:01 and is due on 12.06 at 23:59.
Exam: The course is examined via an in-person, closed-book, written exam (no material can be brought into the exam room except for indelible pens and a calculator).
| End-term exam: | July 28th, 9:00-12:00 | |
| End-term re-take exam: | August 18th, 9:00-12:00 |
Resources
For a refresher on Linear Algebra, I recommend watching the "essence of linear algebra" playlist.
In case something is unclear, you can check out two books:
