Course: Real Time Systems

« Back
Course title Real Time Systems
Course code MTI/SRC
Organizational form of instruction Lecture + Lesson
Level of course Bachelor
Year of study not specified
Semester Winter
Number of ECTS credits 5
Language of instruction Czech
Status of course Compulsory-optional
Form of instruction Face-to-face
Work placements Course does not contain work placement
Recommended optional programme components None
Lecturer(s)
  • Hlava Jaroslav, doc. Dr. Ing.
Course content
1. Real-time systems: definitions, soft and hard real-time systems, real-time control systems, and examples of applications. 2. Commonly used approaches to scheduling in real-time systems. Priority-based scheduling of periodic tasks, maximum schedulable utilisation, and hyperbolic upper bound. 3. Time demand analysis and response time analysis. Software tools for schedulability analysis. 4. Scheduling of aperiodic and sporadic tasks and servers for their execution. 5. Control of access to shared resources, synchronisation mechanisms (critical sections, semaphores, mutexes), priority inversion and deadlock problems. Protocols for controlling the priority inversion. 6. STM32 Arm Cortex M4 processors, use of the most important peripherals (AD and DA converters, hardware timers, interrupt system) and corresponding HAL layer functions. 7. Characteristic features of real-time operating systems. Free RTOS operating system, Free RTOS native API and CMSIS-OS API v2.x 8. Tasks in FreeRTOS, state diagram, task scheduling, communication and synchronisation using queues. 9. Semaphores and mutexes in Free RTOS and their use, software timers 10. Basic principles of automatic control, feedback control loop, on-off and PID controllers. 11. Digital PID controllers and their software implementation. 12. Memory management in Free RTOS, events and notifications, customising Free RTOS behaviour using hooks 13. Support for low-power modes in FreeRTOS 14. Basic overview of other major real-time operating systems.

Learning activities and teaching methods
Monological explanation (lecture, presentation,briefing), Laboratory work
  • Class attendance - 56 hours per semester
Learning outcomes
The objective of this course is to provide the students with a good understanding of the basics of real time systems design. The course includes basic principles of real time programming: processes, synchronisation, communication and scheduling in real time systems and functions of real time operating systems. Since real time control represents one of the most important areas where the real time systems are applied, the course includes also an introduction into digital control, computer implementation of control algorithms and distributed control systems.
Students will understand the basic principles of analysis and design of real-time software systems, both on a general level and specifically using the Free RTOS operating system, with support from which they will be able to program real-time applications. They will also gain a basic overview of the most commonly used methods of digital control. Hence, they will be able to apply their knowledge to the programming of digital control systems.
Prerequisites
Condition of registration: none

Assessment methods and criteria
Combined examination

Requirements for getting the credit prior to the exam are activity at the practicals /seminars and successful completion of all assignments. Because of the significant focus on practical real-time programming, it is often not possible to distinguish between lectures and seminars. For this reason, attendance at all lessons is compulsory regardless of whether they are marked as lectures or seminars. The examination includes a written test on real-time system theory, a practical programming assignment and an oral exam.
Recommended literature
  • Liu, J. W. Real Time Systems. Prentice Hall, Upper Saddle River, N.J., 2000.
  • Wittenmark, B., Aström, K. J., Arzén K. E. Computer Control: An Overview. 2002.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester