Real-Time Systems - Course Program 2018
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.
The aim of the course is to study methods for design and implementation of computer control systems with a focus on the application classes mentioned. The implementation part of the course is done in project form.
After the course, the students should have sufficient knowledge to, on their own, implement smaller dedicated control systems and a thorough understanding of the system aspects of large industrial control systems.
Staff
Name | Role | Phone | |
Karl-Erik Årzén | Course responsible & lecturer | karl-erik.arzen@control.lth.se | 046-2228782 |
Martina Maggio | Course responsible & lecturer | martina.maggio@control.lth.se | 046-2228777 |
Mika Nishimura | LADOK administrator | mika.nishimura@control.lth.se | 046-2228785 |
Tommi Nylander | Teaching assistant | tommi.nylander@control.lth.se | |
Marcus Thelander Andrén | Teaching assistant | marcus.thelander_andren@control.lth.se | |
Victor Millnert | Teaching assistant | victor.millnert@control.lth.se |
Lectures
Lecture | Date | Time | Room | Topic | Lecturer |
L1 | Jan 16 | 10-12 | M:B | Introduction | Both |
LX | Jan 17 | 15-17 | M:2112b | Extra: Introduction to Java | Martina |
L2 | Jan 18 | 10-12 | M:D | Concurrent programming | Martina |
L3 | Jan 19 | 10-12 | M:D | Process communication 1 | Martina |
L4 | Jan 23 | 10-12 | M:D | Process communication 2 | Martina |
L5 | Jan 24 | 10-12 | M:D | Interrupts and time | Martina |
L6 | Jan 26 | 10-12 | M:D | Sampling of linear systems | Karl-Erik |
L7 | Jan 30 | 10-12 | M:D | Input-output models | Karl-Erik |
L8 | Feb 1 | 10-12 | M:D | Approx. of analog controllers, PID | Anton |
L9 | Feb 6 | 10-12 | M:D | State feedback and observers | Karl-Erik |
L10 | Feb 8 | 10-12 | M:D | Feedforward design | Karl-Erik |
L11 | Feb 13 | 10-12 | M:D | Implementation aspects | Martina |
L12 | Feb 15 | 10-12 | M:D | Scheduling theory | Martina |
L13 | Feb 20 | 10-12 | M:D | Project Specifications | Both |
L14 | Mar 1 | 10-12 | M:B | Discrete-event control | Karl-Erik |
L15 | Mar 22 | 15-17 | M:E | Real-Time Networks | Karl-Erik |
LY | Mar 28 | 15-17 | M2112B | Extra: Repetition lecture | Both |
L16 | Mar 29 | 15-17 | M:E | Hot research topics | Both |
L17 | May 14 | 15-17 | M:E | Project demos & oral presentations | - |
Slides are available on the Lectures page and are also handed out at the lectures.
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 on Jan 19, 15-17 and one basic Matlab exercise on Jan 26, 15-17.
For the ordinary computer exercises, there are three exercise groups on Tuesdays 13-15, and 15-17 and Wednesdays 10-12. Similarly, there are three exercise groups for the problem-solving exercises, held in study period 3 on Wednesdays 8-10, Thursday 8-10, and Friday 10-12. 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 on Friday, Jan 18 and announced on the website. All exercises are held in Automatic Control Lab A on the first floor of the M-building.
Exercise | Dates | Topic |
C0 | Jan 19, 15-17 | Extra: Introduction to Java |
C1 | Jan 23, 13-15, 15-17 - Jan 24, 8-10 | Threads |
P0 | Jan 26, 15-17 | Extra: Introduction to Matlab |
C2 | Jan 30, 13-15, 15-17 - Jan 31, 10-12 | Synchronization |
P1 | Jan 31, 8-10 - Feb 1, 8-10 - Feb 2, 10-12 | Sampling of systems |
C3 | Feb 6, 13-15, 15-17 - Feb 7, 10-12 | Controller implementation |
P2 | Feb 7, 8-10 - Feb 8, 8-10 - Feb 9, 10-12 | Input-output models |
C4 | Feb 13, 13-15, 15-17 - Feb 14, 10-12 | Graphical user interface |
P3 | Feb 14, 8-10 - Feb 15, 8-10 - Feb 16, 10-12 | State feedback and observers |
C5 | Feb 20, 13-15, 15-17 - Feb 21, 10-12 | Prepare Lab 1 |
P4 | Feb 21, 8-10 - Feb 22, 8-10 - Feb 23, 8-10 | Discrete approximation, PID |
P5 | Mar 20, 10-12 - Mar 22, 8-10 | Fixed-point implementation |
P6 | Mar 27, 10-12 - Mar 29, 8-10 | Scheduling theory |
The Problem-Solving Exercises are in the book sold at KF-Sigma. The Computer Exercises and related material are available on the Exercises page.
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 approximatively two weeks before each lab starts.
Lab | Approx. dates | Topic | Sign-up opens | Responsible |
1 | Feb 21-Mar 2 | Control of the ball and beam process | Jan 30 | Victor Millnert |
2 | Mar 5-9 | Sequence control of a bead sorter process | Feb 19 | Marcus Thelander Andrén |
3 | Mar 19-30 | Embedded control of a rotating DC servo | TBD | Tommi Nylander |
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:
- Feb 20, at Lecture 13: Presentation of available projects
- Feb 27: Deadline for team formation and project selection
- Mar 23: Deadline for the suggested solution
- May 11: Deadline for project report
- May 14: Project demos (mandatory)
- May 14: Oral presentations (mandatory)
Literature
- 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)
All material is sold by KF-Sigma. The 2014 versions of the books are very similar and also possible to use.
Examination
Mandatory parts: Three laboratory sessions, project, written exam (5 hours).
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.
The coming exams are
- Wednesday, April 11, 8:00 -13:00, Victoriastadion 1A-1B
- Thursday, May 31. 8:00 - 13:00, Sparta D
- Saturday, September 1, 8:00 - 13:00, Sparta C
(Lectures 2–17 and the exercise sessions are not mandatory.)