Событийно-управляемая задача

Этот пример показывает, как использовать блок диспетчера задач для простой системы, где данные из источника UDP обрабатываются асинхронно каждый раз, когда пакет данных прибывает. Блок диспетчера задач

Диспетчер задач и модель программного обеспечения

Следующая модель моделирует программное обеспечение, работающее на процессоре ARM. Блок Task Manager планирует выполнение Асинхронной Подсистемы в блоке Software Application Model Reference. Блок IO Data Source моделирует сетевую передачу пакетов UDP.

Программное обеспечение содержит Асинхронную Подсистему Задачи, Подсистему вызова функций, которая выполняется каждый раз, когда триггер события происходит. Блок Asynchronous Task Specification задает приоритет Задачи UDP совпадать с приоритетным набором в блоке Task Manager. Блок Rate Adaptor позволяет выбирать выходного сигнала Асинхронной Подсистемы Задачи в то время шаг Simulink (c) модель.

Асинхронная Подсистема Задачи, Подсистема вызова функций, читает значение данных из блока UDP Read и применяет Алгоритм каждый раз, когда новое значение данных UDP прибывает. В этой модели алгоритм выводит отрицательное скалярное значение, полученное от блока UDP Read. Следующая модель показывает блок UDP и подсистему Алгоритма, содержавшуюся в подсистеме вызова функций.

Асинхронная симуляция и результаты

Щелкните по кнопке Run, чтобы создать и запустить модель. Когда модель закончит запускаться, откройте отображение SDI, чтобы видеть результаты симуляции. Выберите ReadUDP, исходные данные и обработанные сигналы данных видеть эффект асинхронного выполнения задачи.

Как показано в отображении SDI, Время выполнения ReadUDP отличается в каждом экземпляре получения пакета данных о UDP. В некоторых случаях предыдущее выполнение задачи задерживает запуск следующего выполнения задачи. В то время как в этом примере пакеты UDP прибывают в фиксированную процентную ставку относительно шага расчета Simulink, запуск выполнения задачи не непосредственно зависит от шага расчета. Обработанные данные от задачи выходные параметры в завершение выполнения задачи, приводящего к наблюдаемой задержке обработанных Данных по сравнению с исходными данными.