Browse
Real-Time Embedded Systems
Why robotics software has hard timing deadlines that general-purpose software doesn't, and how real-time systems guarantee them.
What it is
Real-time embedded systems must complete certain computations within a strict deadline — a control loop that runs late isn't just slow, it can mean an unstable or unsafe robot — a fundamentally different constraint than typical software's "as fast as reasonably possible."
Key points
- Hard vs. soft real-time: a hard real-time deadline miss is a system failure (e.g. a safety-critical control loop); a soft real-time deadline miss is a degraded but tolerable outcome (e.g. a slightly late sensor display update) — the distinction drives very different design decisions.
- Determinism over raw speed: real-time systems prioritize predictable, bounded execution time over average-case fast performance — a real-time OS deliberately trades away some throughput to guarantee worst-case timing.
- Real-time operating systems (RTOS): provide deterministic task scheduling with priority-based preemption, unlike a general-purpose OS which optimizes for overall throughput and fairness rather than any single task's deadline.
- This is why robotics software is often split into a real-time control layer (running on an RTOS or microcontroller, tight timing guarantees) and a higher-level, non-real-time planning/perception layer running on general-purpose hardware.
