The course has two main objectives:
- Introducing the most important concepts and methodologies used to develop a real-time embedded system, including fundamentals of real-time scheduling, control and distributed systems;
- Showing how to apply these concepts to develop simple real-time control applications using an embedded platform specifically developed for education.
The course is developed in five days, each dedicated to a specific topic:
- The first day introduces the basic principles of real-time computing and illustrates the most significant results on real-time scheduling.
- The second day is devoted to the embedded platform and the kernel, to enable participants to quickly write a simple real-time demo, using the methodologies they learnt in the previous day.
- The third day is focused on real-time control and explains how to design control applications taking timing constraints into account, and how to use control techniques to make real-time systems more adaptive to dynamic changes.
- The fourth day is dedicated to real-time networks and addresses the problems of synchronization and medium access control that are encountered in distributed embedded systems, together with an analysis of end-to-end latencies.
- The fifth day is dedicated to practical experience and implementation. The participants can interact with the teachers to propose a real-time control application, preferably distributed, either in a simulated environment or for controlling one of the platforms that will be provided by the teachers.