~ / projects / cabin-scheduling
Real-time scheduling for aircraft cabin monitoring
A cabin pressure and oxygen monitor for an aircraft, where missing a deadline is not an option. We scheduled it with Rate Monotonic analysis.
- Year
- 2026
- Context
- SEPP course, University of Twente
- Team
- Group project
- Topic
- Real-time scheduling
The system
Sensors measure the cabin pressure and the oxygen level. If the cabin loses pressure, the system has to notice it and deploy the oxygen masks within a hard deadline. We split the work into five tasks: reading pressure, reading oxygen, deciding whether there is a decompression, a sensor self-test, and deploying the masks.
How we scheduled it
Rate Monotonic gives every task a fixed priority: the shorter its period, the higher its priority. We set each task’s period, deadline and worst-case execution time, checked that the whole task set is schedulable and drew the schedule as Gantt charts. Then we built the logic that deploys the masks.
The interesting part
The safety-critical task ended up with the lowest priority. Mask deployment is rare, so it has the longest period, and Rate Monotonic ranks it last. That looks wrong for the most important task in the system, so we had to analyse it properly instead of ignoring it.
If the task set is schedulable, every task still meets its deadline, including the one at the bottom. It just gets preempted on the way, which is what the sketch shows.
Why it matters to me
It’s the clearest example in my degree so far of the kind of work I want to do professionally.
Try it
Rate Monotonic
Make mask deployment take longer and see when the task set stops being schedulable.
Made-up periods: pressure 4 ms, oxygen 5 ms, decide 10 ms, masks 20 ms.