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

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

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

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

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

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

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

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

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