Запланируйте подсистему многократно на одном шаге

С шаблоном разработки планировщика цикла можно запланировать одну подсистему Simulink®, чтобы выполниться многократно в одном временном шаге. Модель sf_loop_scheduler иллюстрирует этот шаблон разработки.

График Планировщика Цикличного выполнения содержит следующую логику:

Ключевые поведения планировщика цикла

Ключевые поведения планировщика цикла:

Вызов функции Выходное событие инициировал подсистему многократно

В данном временном шаге график Stateflow® широковещательно передает вызов функции выходное событие, чтобы инициировать выполнение подсистемы вызова функций A1 многократно в модели Simulink. Вот последовательность действий во время каждого временного шага:

  1. Модель Simulink активирует Ребро диаграммы Stateflow, чтобы Функционировать в возрастающем ребре импульсного генератора с 1 миллисекундой.

  2. Ребро, чтобы Функционировать график широковещательно передает вызов функции выходное событие call, чтобы активировать Планировщик Цикличного выполнения диаграммы Stateflow.

  3. График Планировщика Цикличного выполнения широковещательно передает вызов функции выходное событие от цикла for, чтобы инициировать подсистему вызова функций A1 многократно (см. Цикл for Реализаций Блок-схемы).

Блок-схема реализует цикл for

График Планировщика Цикличного выполнения использует возможности составления блок-схем Stateflow реализовать цикл for для широковещательной передачи события многократно в одном временном шаге. График содержит блок-схему Stateflow, которая использует локальную переменную данных i, чтобы управлять циклом. В каждой итерации график обновляет вывод y и выпускает действие send, чтобы широковещательно передать вызов функции выходное событие, которое выполняет подсистему A1. Подсистема A1 использует значение y, чтобы повторно вычислить его вывод и передать значение обратно в график Планировщика Цикличного выполнения.

Запустите планировщик цикла

  1. Откройте модель sf_loop_scheduler.

  2. Откройте блок Scope.

  3. Запустите симуляцию.

    Осциллограф отображает значение y на каждом временном шаге.

В этом примере график Планировщика Цикличного выполнения выполняет цикл for 10 раз в каждом временном шаге. Во время каждой итерации:

  1. График постепенно увеличивает y 1 (постоянное значение входа u1).

  2. График широковещательно передает вызов функции выходное событие, которое выполняет подсистему A1.

  3. Подсистема A1 умножает y на усиление 1.

  4. Управляйте возвращается к графику.