Main Content

Schedule Model Components

Create export-function, rate-based models, and partitions to schedule model for code generation

Scheduling model components for simulation or integration with an external scheduler requires the algorithms to exist in atomic Subsystem or Model blocks. The execution rate is specified as either periodic (scheduled subsystem) or nonperiodic (function-call subsystem).

Partitions are components of a model that execute independently as atomic tasks. In multitasking models, partitions are created from model components. With partitions, you can separate parts of the model that you can explicitly control in the Schedule Editor tool.

The Schedule Editor is a scheduling tool that represents the components in the model known as partitions, the data connections between them, and the ordering of those partitions. The Schedule Editor can only be used on existing components, such as atomic subsystems, export functions, and model blocks. The Schedule Editor is an interactive tool that provides an easy way to view and edit the schedule of the model components.

Blocks

expand all

Function-Call SubsystemSubsystem whose execution is controlled by external function-call input
Function-Call GeneratorProvide function-call events to control execution of subsystem or model
Function-Call SplitProvide junction for splitting function-call line
Function-Call Feedback LatchBreak feedback loop involving data signals between function-call blocks
TriggerAdd trigger or function port to subsystem or model
SubsystemGroup blocks to create model hierarchy
InportCreate input port for subsystem or external input

Tools

Schedule EditorView and edit the schedule of model components (partitions) (Since R2019a)

Objects

simulink.schedule.OrderedScheduleCreates an OrderedSchedule object containing priority order of the partitions of a model (Since R2020a)
simulink.event.InputWriteTrigger event when input port value updates (Since R2022b)
simulink.event.InputWriteTimeoutTrigger event when input port value does not update within specified time (Since R2022b)
simulink.event.InputWriteLostTrigger event when input port value update overwrites unprocessed data (Since R2022b)

Functions

Simulink.BlockDiagram.getExecutionOrderOpen Execution Order pane (Since R2022b)
simulink.schedule.createScheduleCreate a new schedule using provided schedule and ordering (Since R2020a)

Topics

Export-Function Models

Rate-Based Models

Execution Order

Partitions with the Schedule Editor