Simulating execution time variations in Matlab/Simulink
Andreas Naderlinger · 2017
Software-induced delays have a significant impact on real-time control system performance. While in extreme cases, jitter caused by execution time variations or start-time delays may compromise stability, such effects are often ignored in model-based approaches and simulations. We address this issue and discuss a Simulink block with a fundamentally new semantics that is used to encapsulate control functions as software tasks. It is particularly suited to model and observe software delays in complex control functions within software-in-the-loop (SIL) simulations. For this purpose, the controller source code is associated with platform-specific execution time information, which we assume to be available. We detail a synchronization mechanism between Simulink and such time-annotated task blocks implementing the control laws. It allows us to perform SIL simulations where controllers execute for a finite amount of simulation time and span multiple simulation steps at which they may interact with other controllers or the plant.