Симуляция модели на основе скорости тестирования с использованием генераторов вызова функции

В этой теме описывается, как ссылаться на модель на основе скорости в экспериментальной модели, а затем добавлять периодические порты событий вызова функции к экспериментальной модели для симуляции. Чтобы открыть завершенную модель тестовой обвязки, см. ex_model_test_harness_with_subsystems.

Создайте экспериментальную модель, которая ссылается на основанную на скорости модель

Тестирование модели на основе скорости включает ссылки на модель из блока Model в тестовой модели, добавление периодических портов событий вызова функции к блоку Model и затем соединение вызовов функции к портам.

  1. Создайте новый Simulink® модель.

  2. Добавьте Model блок и откройте диалоговое окно параметров блоков.

  3. В Model name поле введите имя файла для модели на основе скорости.

  4. Установите флажок Schedule rates.

    Периодические порты событий вызова функции добавляются к блоку Model с Sample times, заданной для блоков Inport, подключенных к блокам Subsystem.

  5. Задайте скорость выполнения, используя инициаторы вызова функции (блоки Function-Call Generator или Stateflow® чарты. События вызова функции и планирования событий расположены вне Model блока, ссылающегося на основанную на скорости модель.

    В этом примере добавьте Function-Call Generator блоков. Откройте диалоговое окно блока для блоков и задайте Sample time.

    Подсистемы или модели-ссылки в модели на основе скорости с тем же шагом расчета должны иметь общий инициатор скорости. Это требование включает периодические запланированные подсистемы и событийно-управляемые блоки Function-Call Subsystem с той же скоростью.

  6. Используйте решатель с фиксированным шагом для симуляции. Установите параметры конфигурации Type равными Fixed-step, Solver к auto, и Fixed-step size к auto.

Симулируйте модель, основанную на скорости

Симулируйте поведение модели на основе скорости из экспериментальной модели.

  1. Запустите симуляцию. Некоторые общие компиляции и ошибки времени выполнения вызваны:

    • Порт периодического события, который не соединяется с инициатором вызова функции с тем же заданным шагом расчета.

    • Запланированный Inport блок (Sample time параметр установлен на значение) в модели компонента-ссылки, который не задает одну из периодических частот событий вызова функции (значения шагов расчета, указанные в таблице Port discrete rates).

  2. Наблюдайте за поведением модели компонента. Откройте Scope блок.