Course syllabus
Course-PM
EEN090 Embedded control systems lp4 VT24 (7.5 hp)
The course is offered by the Department of Electrical Engineering
Contact details
Examiner
Bengt Lennartson, phone: 031-772 3722, bengt.lennartson@chalmers.se
Lecturer
Sabino Roselli, rsabino@chalmers.se
Teaching Assistant
Wenhao Lu, wenhaol@chalmers.se
Exam Office
Room EDIT 3342, studadm.e2@chalmers.se
Course purpose:
The aim of the course is to introduce modeling, specification, and analysis of embedded control systems, covering both theoretical foundations and practical implementation. Students will learn about the integration of control algorithms with embedded hardware, real-time constraints, and communication protocols. Topics include microcontroller architecture, real-time operating systems (RTOS), sensor interfacing, digital control techniques, and software development for embedded applications. Hands-on laboratory exercises and projects will reinforce theoretical concepts.
The following concepts will be described at different levels in the course: embedded systems architecture, task scheduling and priorities, synchronization, deadlock detection and avoidance, fault detection and digital signal processing.
Lectures and Exercises Program
Week | Lecture/Exercise Session | Date | Time | Room |
W13 | L1 Ch1-3 Intro 1 | 25-mar | 10:15-12:00 | Jupiter243 |
L3 Ch4-5 Memory Allocation | 26-mar | 13:15-15:00 | Jupiter243 | |
L3 Ch6 Multithreading | 27-mar | 13:15-15:00 | Jupiter122 | |
E1 Multithreading | 28-mar | 10:15-12:00 | Jupiter122 | |
W14 | L4 Ch7 Scheduling | 31-mar | 13.15-15:00 | Jupiter122 |
L5 Ch8 WCET + Interrupt | 1-apr | 10:15-12:00 | Jupiter122 | |
E2 Scheduling | 2-apr | 13:15-15:00 | Jupiter122 | |
W15 | E3 Q&A Assignment 1 | 8-apr | 8:15-10.00 | Jupiter121 |
L6 Ch9 Synchronization | 10-apr | 10:15-12:00 | Jupiter122 | |
L7 Ch10 Resource Management | 11-Apr | 10:15-12:00 | Svea130 | |
W17 | E4 Petri Net modelling | 23-Apr | 10:15-12:00 | Jupiter122 |
E5 Q&A Assignment 2 | 24-Apr | 10:15-12:00 |
Svea130 |
|
W18 | L8 Optimization | 28-Apr | 13:15-15:00 | Svea118 |
L9 Ch11 Deadlock | 29-Apr | 8:15-10:00 | Jupiter122 | |
W19 | L10 Ch14 Operating systems (FreeRTOS) | 6-May | 8:15-10:00 | Jupiter121 |
E6 Deadlocks Verification | 7-May | 15:15-17:00 | Gamma | |
L11 C12-13 Communication and Fault Tollerance | 8-May | 10:15-12:00 | Delta | |
W20 | L12 Ch20 Digital Signal Processing | 12-May | 10:15-12:00 | Jupiter121 |
L13 Guest Lecture (Mandatory Attendance) | 14-May | 13:15-15:00 | Svea118 | |
E7 Q&A Assignment 3 | 15-May | 13:15-15:00 | Jupiter121 | |
W21 | L14 Summary | 20-May | 8:15-10:00 | Jupiter121 |
E8 Old exam | 20-May | 10:15-12:00 | Jupiter121 | |
W22 | L15 Q&A | 28-May | 15:15-17:00 | Jupiter121 |
Home Assignments
Release Date | Submission date | Content | |
Assignment 1 |
Friday 28/3 |
Friday11/4 |
Scheduling and WCET |
Assignment 2 |
Monday 14/4 |
Tuesday 29/4 |
Multithreading |
Assignment 3 |
Friday 02/5 |
Friday 16/5 |
FreeRTOS |
Course literature
- D.W. Harder, J. Zarnett, V. Montaghami, and A. Giannikouris. A practical introduction to real-time systems for undergraduate engineering (RTS), see Files Literature.
- Jan Lundgren, Mikael Rönnqvist, Peter Värbrand. Optimization;
- Richard Barry, the FreeRTOS Team. Mastering the FreeRTOS Real Time Kernel;
Changes made since the last occasion
Topics related to optimal scheduling have been downsized in favor of Communication, Fault Tolerance, and Digital Signal Processing
Learning objectives and syllabus
- Understand Embedded Systems Fundamentals and architecture;
- Develop Embedded C code for Control Systems:
- Explain concepts related real-time systems, including concurrency, multi-tasking, and resource management;
- Describe challenges in real-time systems including deadlock and starvation, and how to tackle such challenges;
- Explain communication protocols for embedded systems;
- Characterize faults in embedded systems and how they can be avoided or addressed;
- Use real-time operating systems to manage the resources of an embedded system.
Link to the syllabus on Studieportalen Study plan
Examination form
The students are evaluated through a final written exam (4.5 hec) and compulsory laboratory assignments (3.0 hec).
The final grade, according to the scale Fail (U) or Pass (3, 4, 5), is given based on the individual grades for the written exam.
There are three individual assignments in the course. Additional information regarding these assignments will later be found on the Assignment page.
Course representatives
The following students have been elected by the student administration to be course representatives in the course evaluation:
TIMEL adamabu@student.chalmers.se Adam Abunaj
TIMEL johanssonnicholas@icloud.com Nicholas Choufleur Johansson
TIMEL Ludwig.harisuo@gmail.com Ludwig Harisuo
TIMEL alexandercuchi@hotmail.com Alexander Olofsson
TIMEL michaely@student.chalmers.se Michael Yasso
To be a study representative means that you will be involved in the course evaluation process. See more details at https://www.chalmers.se/en/education/your-studies/plan-and-conduct-your-studies/course-evaluation