RTL-201 · Real-Time Systems · Advanced
Motion Control Systems — full syllabus
Applying real-time Linux to closed-loop control, with the architecture patterns that work in production.
Who this course is for
Controls and software engineers putting real-time Linux in the path of a closed-loop system — who need architecture patterns that hold up in production, not a demo.
Prerequisites
- Control systems fundamentals: sampling, loop period, stability
- C programming and the Linux process/thread model
- RTL-101 or equivalent PREEMPT_RT knowledge
Course outline
Day 1 — The control loop on Linux
- Timing requirements and jitter budgets: how much jitter a loop actually tolerates
- Periodic activation with clock_nanosleep and absolute deadlines
- Structuring the RT application: SCHED_FIFO threads, memory locking, no allocation in the loop
- Keeping non-RT work off the critical path: logging, networking, UI
- Measuring loop jitter from inside the application
Day 2 — Fieldbus integration and safety architecture
- EtherCAT and fieldbus integration on RT Linux: master placement and cycle alignment
- Distributed clocks and synchronising the control loop to the bus cycle
- Safety architecture: separating safety-rated and non-safety functions
- Watchdogs, deadline monitoring and detecting a missed cycle in production
- Case study: dissecting where a real system lost its determinism
Hands-on labs
- Lab: Implement a periodic control loop with clock_nanosleep and absolute deadlines; instrument its own jitter
- Lab: Break the loop deliberately — a page fault, an allocation, a mutex inversion — and identify each failure from the jitter trace
- Lab: Drive a simulated fieldbus cycle and align the control loop phase to the bus
- Lab: Add a deadline monitor and watchdog to the loop; prove it catches injected overruns and degrades safely
Capstone project
Build a two-axis simulated motion controller on PREEMPT_RT: a hard-deadline servo loop with in-loop jitter instrumentation, a fieldbus-cycle-aligned execution phase, a non-RT path for telemetry and commands, and a supervisor that detects missed deadlines and forces a defined safe state — delivered with jitter distributions under load and a written safety-separation argument for the architecture.
What you leave with
- A production-shaped RT application skeleton: periodic loop, memory discipline, supervisor
- Jitter instrumentation built into the application, not bolted on after
- Fieldbus cycle alignment and distributed-clock basics
- A safety-separation pattern for mixing RT and non-RT work on one Linux system
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 11 Oct – 12 Oct 20262 full days | RiyadhIn person · KAFD Conference Centre | 5 of 14 | — | SAR 6,000 | |
| 11 Oct – 12 Oct 20262 full days | Kuwait CityIn person · Al Hamra Tower | 10 of 14 | — | KWD 500 | |
| 18 Oct – 19 Oct 20262 full days | MuscatIn person · Knowledge Oasis Muscat | 5 of 14 | — | OMR 620 | |
| 25 Oct – 28 Oct 20264 half-days | Gulf bandLive online · 09:00–13:00 GMT+3 | 3 of 20 | — | US$1,150 | |
| 26 Oct – 27 Oct 20262 full days | OttawaIn person · Kanata North Tech Park | 10 of 14 | — | CAD 2,180 | |
| 26 Oct – 27 Oct 20262 full days | TorontoIn person · MaRS Discovery District | 5 of 14 | — | CAD 2,180 | |
| 26 Oct – 29 Oct 20264 half-days | Europe bandLive online · 09:00–13:00 CET | 8 of 20 | — | US$1,150 | |
| 2 Nov – 3 Nov 20262 full days | LondonIn person · Shoreditch Works | 10 of 14 | — | GBP 1,250 | |
| 2 Nov – 5 Nov 20264 half-days | Americas bandLive online · 13:00–17:00 ET | 13 of 20 | — | US$1,150 | |
| 9 Nov – 10 Nov 20262 full days | BerlinIn person · Factory Görlitzer Park | 5 of 14 | EUR 1,320until 10 Oct |
Book a seat, or bring this course to your team
Seats can be reserved online; private delivery runs on-site or live online, adapted to your stack.
Questions about fit or prerequisites? Email hello@kernelsystems.academy. To save this syllabus, print this page to PDF from your browser.