Course Program
Real-time systems are characterized by the fact that it is not only the result of the calculation that is of importance but also the time when the result is available. A computer used for controlling a process is a good example of a real-time system. It must operate in a time-scale that is determined by the time scale of the process. At the same time, it should be reactive to external events, often with time constraints on the reaction time. Two classes of computer control systems are generic industrial control systems and embedded control systems found in, e.g., aerospace applications, industrial robots, or autonomous vehicles.
Staff
- Karl-Erik Årzén, Course Responsible and Lecturer, karl-erik.arzen@control.lth.se, 046-2228782
- Martina Maggio, Course Responsible and Lecturer, martina.maggio@control.lth.se
- Mika Nishimura, LADOK Administrator, mika.nishimura@control.lth.se, 046-2228785
- Claudio Mandrioli, Teaching Assistant, claudio.mandrioli@control.lth.se
- Gautham Nayak Seetanadi, Teaching Assistant, gautham.nayak_seetanadi@control.lth.se
- Marcus Thelander Andrén, Teaching Assistant, marcus.thelander_andren@control.lth.se
Lectures
Slides are handed out at the lectures, and available online on the Lectures page.
Lecture | Date | Time | Room | Topic | Lecturer |
---|---|---|---|---|---|
L1 | 2019-01-22 | 10-12 | M:B | Introduction | Karl-Erik and Martina |
LX | 2019-01-23 | 15-17 | M:LAB A | Extra: Introduction to Java | Martina |
L2 | 2019-01-24 | 10-12 | MA:5 | Concurrent programming | Martina |
L3 | 2019-01-25 | 08-10 | E:C | Process Communication #1 | Martina |
L4 | 2019-01-29 | 10-12 | M:B | Process Communication #2 | Martina |
L5 | 2019-01-31 | 10-12 | M:B |
Interrupts and Time | Martina |
L6 | 2019-02-01 | 08-10 | M:E | Sampling of Linear Systems | Anton Cervin |
L7 | 2019-02-05 | 10-12 | M:B | Input-Output Models | Karl-Erik |
L8 | 2019-02-07 | 10-12 | M:E | Approximation of Analog Controllers, PID | Karl-Erik |
L9 | 2019-02-12 | 10-12 | M:B | State Feedback and Observers | Karl-Erik |
L10 | 2019-02-14 | 10-12 | M:E | Feedforward Design | Karl-Erik |
L11 | 2019-02-19 | 10-12 | M:B | Implementation Aspects | Karl-Erik |
L12 | 2019-02-21 | 10-12 | M:E | Scheduling Theory | Karl-Erik |
L13 | 2019-02-26 | 10-12 | M:B | Project Specifications | Karl-Erik |
L14 | 2019-02-28 | 10-12 | M:E | Discrete-Event Control | Karl-Erik |
L15 | 2019-03-07 | 10-12 | M:E | Real-Time Networks | Karl-Erik |
L16 | 2019-03-12 | 10-12 | M:E | Hot Research Topics | Karl-Erik |
LY | 2019-03-28 | 15-17 | M:E | Extra: Repetition Lecture | Karl-Erik |
L17 | 2019-05-27 | 15-17 | M:E | Project Demos and Oral Presentations | Karl-Erik |
Exercises
There are two parallel exercise tracks: five computer exercises (C), starting in study week 2, and six problem-solving exercises (P), starting in study week 3. All exercises are held during study period 3 except the two last problem-solving exercises which are held at the beginning of study period 4. In addition, there are two extra exercises: one on basic Java programming and one basic Matlab exercise. Instructions and files for the computer exercises are found on the Exercises page.
For the ordinary computer exercises, there are three exercise groups. Similarly, there are three or two exercise groups for the problem-solving exercises. In order for us to balance the load in the exercise groups, you must pre-register for the exercise groups. The link for doing this will be made available at the course start and announced on the website. All exercises are held in Automatic Control Lab A on the first floor of the M-building.
Computer Exercises Responsibility
- Marcus Thelander Andrén: exercise sessions on Tuesdays 15-17.
- Gautham Nayak Seetanadi: exercise sessions on Wednesdays 10-12.
- Claudio Mandrioli: exercise sessions on Wednesdays 13-15.
Problem Solving Exercises Responsibility
- Gautham Nayak Seetanadi: exercise sessions on Wednesdays 8-10.
- Marcus Thelander Andrén: exercise sessions on Thursdays 8-10.
- Claudio Mandrioli: exercise sessions on Fridays 10-12.
Exercise | Date | Topic |
---|---|---|
C0 | 2019-01-23, 17-19 | Extra: Introduction to Java |
C1 | 2019-01-29, 15-17; 2019-01-30, 10-12 and 13-15 | Threads |
C2 | 2019-02-05, 15-17; 2019-02-06, 10-12 and 13-15 | Synchronization |
C3 | 2019-02-12, 15-17; 2019-02-13, 10-12 and 13-15 | Controller Implementation |
C4 | 2019-02-19, 15-17; 2019-02-20, 10-12 and 13-15 | Graphical User Interface |
C5 | 2019-02-26, 15-17; 2019-02-27, 10-12 and 13-15 | Preparation for Laboratory #1 |
Exercise | Date | Topic |
P0 | 2019-01-30, 08-10; 2019-01-31, 08-10; 2019-02-01, 10-12 | Extra: Introduction to Matlab |
P1 | 2019-02-06, 08-10; 2019-02-07, 08-10; 2019-02-08, 10-12 | Sampling of Systems |
P2 | 2019-02-13, 08-10; 2019-02-14, 08-10; 2019-02-15, 10-12 | Input-Output Models |
P3 | 2019-02-20, 08-10; 2019-02-21, 08-10; 2019-02-22, 10-12 | State Feedback and Observers |
P4 | 2019-02-27, 08-10; 2019-02-28, 08-10; 2019-03-01, 10-12 | Discrete Approximation, PID |
P5 | 2019-03-26, 10-12; 2019-03-28, 08-10 | Fixed-Point Implementation |
P6 | 2019-04-02, 10-12; 2019-04-04, 08-10 | Scheduling Theory |
Laboratory Sessions
The course contains three 4-hour laboratory sessions. Lab 1 will take place during weeks 6 and 7 of study period 3. Labs 2 and 3 will take place during weeks 8 of study period 3 and weeks 1 and 2 of study period 4. Electronic sign-up lists will be posted approximately two weeks before each lab starts. Instructions and sign-up lists are found on the Laboratory Sessions page.
Lab | Dates | Topic | Sign-up | Responsible |
---|---|---|---|---|
Lab1 | March (beginning) | Control of Ball-and-Beam | Febraury (beginning) | Marcus Thelander Andrén |
Lab2 | March (mid) | Sequence Control of Bead-Sorter | Febraury (mid) | Gautham Nayak Seetanadi |
Lab3 | March (end) | Embedded Control of Rotating DC Servo | Febraury (end) | Claudio Mandrioli |
Project
The projects are performed as team-work with the size of four persons per team (in special cases it is OK with smaller project teams). Constraints on hardware, processes, and supervisors require synchronization among the projects. If you are following the Predictive Control course it will be possible to do a joint project between the courses.
Important Dates
- 2019-02-26: Presentation of available projects (L13)
- 2019-03-XX: Deadline for team composition and project selection
- 2019-03-XX: Deadline for the suggested solution document
- 2019-05-XX: Deadline for the project report
- 2019-05-27: Project demos and oral presentations (L17, mandatory)
Literature
The reading material is sold by KF-Sigma. The 2014 versions of the books are very similar and also possible to use.
- K.-E. Årzén, "Real-Time Control Systems" (2015 edition)
- B. Wittenmark, K.J. Åström, K.-E. Årzén, "Computer Control: An Overview", Educational Version 2016
- Exercises with solutions (2015 Version)
Examination
Mandatory parts: Three laboratory sessions, project, written exam (5 hours). Lectures 2–16 and the exercise sessions are not mandatory.
The exam consists of 25 points and gives the grade Fail, 3, 4, or 5.
Accepted aid: The textbooks Real-Time Control Systems and Computer Control: An Overview - Educational Version; standard mathematical tables, authorized "Real-Time Systems Formula Sheet”, authorized "Reglerteknik AK Formelsamling"; pocket calculator. Slides copies are not allowed.
Upcoming exam dates:
- 2019-05-03, 8-13: Victoriastadion 1A, 1B
(responsible person: Marcus Thelander Andrén) - There will also be an exam in the May/June exam period
(responsible person: Gautham Nayak Seetanadi) - 2019-08-29, 8-13: Sparta:D
(responsible person: Claudio Mandrioli)