(Created 2011-09-01.)

REAL-TIME SYSTEMS | FRTN01 |

**Aim**

The aim of the course is that the student should learn how to design and implement computer-based control systems.

*Knowledge and understanding*

For a passing grade the student must

- be able to define the basic concepts of real-time systems
- understand the advantages and disadvantages of different implementation techniques for real-time systems
- understand how communication and synchronization is realized using semaphores, monitors, and messages
- be able to describe the structure and workings of a real-time kernel
- be able to design a computer-based control system using discretization of a continuous-time design and using sampling
- be able to calculate the relations between discrete-time models on difference-equation form, transient responses, and pulse transfer functions
- be able to calculate computer-based controllers on state-space form and PID form
- understand how time-delays and jitter affect control performance
- be familiar with how Grafcet, Petri nets, and state machines can be used in the analysis and implementation of event-based control systems
- understand the problems associated with control over networks

*Skills and abilities*

For a passing grade the student must

- be able to implement a computer-based control systems using concurrent programming techniques
- be able to apply basic schedulability analysis for real-time systems
- be able to develop a real-time systems within an area of relevance to the course, in project form
- be able to present project results and experiences in oral and written form

*Judgement and approach*

For a passing grade the student must

- understand the importance of formal methods in the design of safety-critical real-time systems
- master teamwork and collaboration in the project and laboratory exercises

**Contents**

A real-time system is characterized by the fact that it is not only the result of the calculation that matters, but also when the result is produced. Computers that are used for feedback control are good examples of real-time systems, since they must operate periodically in a time-scale that is dependent on the dynamics of the controlled process, while at the same time they must be able to respond to external events, often within a given time interval. Two types of examples are industrial control systems used in, e.g., process automation, and embedded control systems for, e.g. avionics, autonomous vehicles and robotics. The aim of the course is to study methods for design and implementation of real-time systems for control applications. The implementation part of the course is performed as a project.

Introduction, Real-time programming, Synchronization and mutual exclusion, Real-time kernels and operating systems, Periodic controller tasks, Computer implementation of control algorithms, Discretization of continuous-time controllers, Sampling of continuous-time systems, Input-output models of discrete-time systems, Sequence control using Grafcet, Scheduling theory, Integrated Control and Scheduling, Implementation aspects, Control over networks

**Literature**

Årzén K-E: Real-Time Control Systems (latest edition) och Wittenmark, B, K.J. Åström och K.-E- Årzén: Computer Control: An Overview" (latest edition). Provided by the department + additional material.