Моделируйте иерархии модели

Моделирование модели, которая использует модель - ссылку, отличается до некоторой степени от моделирования автономной модели, которая не использует модель - ссылку.

Существуют некоторые ограничения для иерархий имитационной модели. Для получения дополнительной информации смотрите Требования Моделирования и Ограничения и Требования Сигнала и Ограничения.

Моделируйте топ-модель

Топ-модель в иерархии модели выполняет тот же способ, которым выполняются модели без моделей - ссылок. Топ-модель поддерживает все режимы моделирования Simulink®. Чтобы ускорить казнь топ-модели в иерархии модели, можно использовать акселератор Simulink или быстрый режим Accelerator. Для получения информации о режиме Accelerator смотрите Ускорение. Для получения информации о быстром режиме Accelerator смотрите, Ускоряют, Совершенствовали, и Тестовая Гибридная Динамическая система на Хосте - компьютере при помощи Системного Конечного файла RSim (Simulink Coder).

Когда вы выполняете топ-модель в акселераторе или быстром режиме Accelerator, все модели, на которые ссылаются, выполняются в режиме Accelerator.

Образцовое моделирование, на которое ссылаются,

Можно моделировать модель, на которую ссылаются, в одном из этих режимов:

  • Нормальный

  • Акселератор

  • Программное обеспечение в цикле (SIL)

  • Процессор в цикле (PIL)

Для получения дополнительной информации об использовании этих режимов моделирования для моделей, на которые ссылаются смотрите Сравнение Режимов Моделирования для Моделей, на которые Ссылаются.

Режимы моделирования, используемые для моделей, на которые ссылаются, зависят от режима моделирования родительской модели. Для получения дополнительной информации смотрите Родительские и Образцовые Режимы Моделирования, на которые Ссылаются.

Задайте режим моделирования для моделей, на которые ссылаются,

Блок модели для каждого экземпляра модели, на которую ссылаются, управляет режимом моделирования экземпляра. Установить или изменить режим моделирования для модели, на которую ссылаются:

  1. Доступ к блочному диалоговому окну параметра для Блока модели.

  2. Установите параметр режима Simulation.

  3. Нажмите ОК или применяйтесь.

Сравнение режимов моделирования для моделей, на которые ссылаются,

Можно использовать быстрый режим Accelerator для топ-модели в иерархии модели, но не для Блоков модели. Можно установить модели, на которые ссылаются, на быстрый режим Accelerator, но режим моделирования топ-модели, блока родительской модели, или сослался на образцовые переопределения Блока модели образцовый режим моделирования, на который ссылаются.

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

Совет

Выполнение режима Accelerator модели, на которую ссылаются, отличается от:

Для получения дополнительной информации о выполнении Режима Accelerator модели, на которую ссылаются, смотрите Цели Моделирования Модели - ссылки.

Режим моделированияОписаниеКогда использовать
НормальныйВыполняет модель, на которую ссылаются, interpretively.

По сравнению с другими режимами моделирования, режимом normal mode:

  • Выполняется медленнее.

  • Не требует никакой задержки генерации кода или компиляции.

  • Работы с большим количеством Simulink и инструментами Stateflow®, поддерживая инструменты, такие как:

    • Осциллографы, отображение значения порта и другие выходные инструменты просмотра.

    • Анализ покрытия модели.

    • Stateflow, отлаживающий и анимация.

  • Обеспечивает более точный анализ линеаризации.

  • Поддержки больше S-функций, чем режим Accelerator.

Когда вы моделируете несколько экземпляров модели, на которую ссылаются, в режиме normal mode, результатах отображений программного обеспечения Simulink для только одного из экземпляров режима normal mode. Для получения дополнительной информации смотрите, Моделируют Несколько Образцовых Экземпляров, на которые Ссылаются, в Режиме normal mode.

Акселератор

Выполняет модель, на которую ссылаются, путем создания файла MEX (цель моделирования) для модели, на которую ссылаются, затем выполнения файла MEX.

Для получения дополнительной информации смотрите Цели Моделирования Модели - ссылки.

  • Выполняется быстрее, чем режим normal mode.

  • Занимает время для компиляции кода и генерации кода.

  • Не полностью поддерживает некоторые инструменты Simulink, такие как Покрытие модели и Отладчик Simulink.

  • Блоки Осциллографа поддержек, но требует использования менеджера Signal & Scope и добавления тестовых точек к сигналам. Добавление или удаление тестовой точки требуют восстановления цели SIM для модели.

СИЛ

Выполняет модель, на которую ссылаются, путем генерации производственного кода. Этот код компилируется для и выполняется на, серверная платформа.

Программное обеспечение Requires Embedded Coder®. Для получения дополнительной информации см. SIL и Ограничения PIL (Embedded Coder) и Числовая Эквивалентность, Тестирующая (Embedded Coder).

  • Проверяет сгенерированный исходный код, не изменяя исходную модель.

  • Поддерживает повторное использование тестовых обвязок для исходной модели со сгенерированным исходным кодом.

Режим SIL обеспечивает удобную альтернативу моделированию PIL, когда целевой компьютер не доступен.

PIL

Выполняет модель, на которую ссылаются, путем генерации производственного кода. Этот код кросс-компилируется для и выполняется на, целевой процессор или эквивалентный симулятор процессора.

Программное обеспечение Requires Embedded Coder. Для получения дополнительной информации см. SIL и Ограничения PIL (Embedded Coder) и Числовая Эквивалентность, Тестирующая (Embedded Coder).

  • Проверяет объектный код развертывания на целевых процессорах, не изменяя исходную модель.

  • Поддерживает повторное использование тестовых обвязок для исходной модели со сгенерированным исходным кодом.

Примечание

Результаты симуляции для данной модели почти идентичны в нормальном и режимах Accelerator. Тривиальные различия могут произойти, в зависимости от различий в оптимизации и библиотеках, которыми вы пользуетесь.

Требования установки параметра конфигурации и поведение могут отличаться в зависимости от режима моделирования. Для получения дополнительной информации смотрите Ускоренное Моделирование, и Генерация кода Изменяет Настройки и Диагностику, Которые Проигнорированы в Режиме Accelerator.

Диагностические Параметры конфигурации, Проигнорированные в Режиме Accelerator.  Для моделей, на которые ссылаются в режиме Accelerator, Simulink игнорирует значения этих настроек параметра конфигурации, если вы устанавливаете их на значение кроме None:

  • Границы массивов превысили (ArrayBoundsChecking)

  • Блок Inf или NaN вывел (SignalInfNanChecking)

  • Проверка диапазона моделирования (SignalRangeChecking)

  • Деление сингулярной матрицей (CheckMatrixSingularityMsg)

  • Перенеситесь на переполнении (IntegerOverflowMsg)

Кроме того, для моделей, на которые ссылаются в режиме Accelerator, Simulink игнорирует эти параметры конфигурации, когда вы устанавливаете их на значение кроме Disable all. Для получения дополнительной информации смотрите Диагностику Хранилища данных.

  • Обнаружьте чтение перед записью (ReadBeforeWriteMsg)

  • Обнаружьте запись после чтения (WriteAfterReadMsg)

  • Обнаружьте запись после записи (WriteAfterWriteMsg)

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

  1. В Редакторе Simulink выберите Analysis> Model Advisor.

  2. Выберите By Task.

  3. Запустите настройки диагностики Проверки, проигнорированные во время ускоренной проверки моделирования модели - ссылки.

Чтобы видеть результаты выполнения идентифицированной диагностики с настройками, чтобы произвести предупреждения или ошибки, моделируйте модель в режиме normal mode. Осмотрите диагностические предупреждения и затем моделируйте в режиме Accelerator.

Родительские и образцовые режимы моделирования, на которые ссылаются,

Режимы моделирования, которые можно использовать для модели, на которую ссылаются, зависят от режима моделирования его родительской модели.

Режим моделирования родительской моделиОбразцовые режимы моделирования, на которые ссылаются,
Нормальный
  • Модели, на которые ссылаются, могут использовать нормальный, акселератор, SIL или режим PIL.

  • Если каждая модель, которая превосходит модель, на которую ссылаются, в иерархии модели также, выполняется в режиме normal mode, который модель, на которую ссылаются, может выполнить в режиме normal mode.

Акселератор
  • Все зависимые модели должны также выполниться в режиме Accelerator.

  • Когда модель режима normal mode зависима от модели режима Accelerator, Simulink возвращает предупреждение и временно заменяет спецификацию режима normal mode.

  • Когда модель SIL-режима или PIL-режима зависима от модели режима Accelerator, которая не является топ-моделью, ошибка происходит.

СИЛ
  • Если их режимы моделирования нормальны, акселератор или SIL, все зависимые модели также выполняются в режиме SIL. В противном случае ошибка происходит. Смотрите Поведение Переопределения Режима Моделирования в Иерархии Модели - ссылки (Embedded Coder).

  • Блоки Многоуровневой модели, запускающиеся наверху иерархии модели, могут выполниться в режиме SIL. Однако, если профилирование покрытия кода или выполнения кода включено, только один Блок модели может выполниться за один раз в режиме SIL.

PIL
  • Если их режимы моделирования нормальны, акселератор или PIL, все зависимые модели также выполняются в режиме PIL. В противном случае ошибка происходит. Смотрите Поведение Переопределения Режима Моделирования в Иерархии Модели - ссылки (Embedded Coder).

  • Блоки Многоуровневой модели, запускающиеся наверху иерархии модели, могут выполниться в режиме PIL. Однако, если профилирование покрытия кода или выполнения кода включено, только один Блок модели может выполниться за один раз в режиме PIL.

Моделируйте условные модели, на которые ссылаются,

Можно запустить автономное моделирование условного выражения модель, на которую ссылаются. Автономное моделирование полезно для модульного тестирования, потому что это обеспечивает сопоставимые данные через моделирования с точки зрения типа данных, размерности и частоты дискретизации. Используйте нормальный, акселератор или быстрый режим Accelerator, чтобы моделировать условную модель.

Инициированные, Enabled, и инициированные и Enabled модели

Инициированные, активированные, и инициированные и включенные модели требуют, чтобы внешний входной параметр управлял Триггером или Включил блоки. В панели Атрибутов Сигнала диалогового окна блока Trigger или Enable задайте значения для типа данных сигнала, размерности и частоты дискретизации.

Чтобы запустить автономное моделирование, задайте входные параметры с помощью Входного параметра. Для получения дополнительной информации о том, как задать входной параметр, смотрите Сравнение Методов Загрузки Сигнала. Следующие условия применяются, когда вы используете Входной параметр для триггера и включаете блочные входные параметры:

  • Используйте последний ввод данных для триггера или включите входной параметр. Для инициированной и активированной модели используйте последний ввод данных для триггерного входного параметра.

  • Если вы не обеспечиваете входных значений, нуль использования моделирования как значения по умолчанию.

Вы можете данные логов, чтобы определить, какой сигнал заставил модель запускаться. Для блока Trigger или Enable, в основной панели диалогового окна Block Parameters, выбирают выходной порт Show.

Модели вызова функции

Когда вы моделируете модель вызова функции, она моделирует как будто вызов функции на самом быстром уровне для системных дисков блок вызова функции. Можно также сконфигурировать модель, чтобы вычислить вывод в определенные времена с помощью решателя переменного шага (см. Выборки к Экспорту для Решателей Переменного Шага).

Регистрируйте сигналы в моделях, на которые ссылаются,

В модели, на которую ссылаются можно регистрировать любой сигнал, сконфигурированный для журналирования сигнала. Используйте Селектор Журналирования Сигнала, чтобы выбрать подмножество или все сигналы, сконфигурированные для сигнала, входящего в систему иерархия модели. Для получения дополнительной информации смотрите Модели с Образцовой Ссылкой: Переопределение Журналирования Сигнала Настроек.

Можно использовать Моделирование, Data Inspector, чтобы просмотреть и анализировать сигналы вошел в систему модели, на которые ссылаются. Можно просмотреть сигналы на нескольких графиках, изменении масштаба, и использовать Data Cursor, чтобы понять и оценить данные. Кроме того, можно сравнить данные сигнала от нескольких моделирований. Для примера просмотра сигналов с моделями, на которые ссылаются смотрите Сигналы Просмотра в Экземплярах Модели - ссылки.

Установите диагностику и отладьте иерархии модели

Можно включить или подавить предупреждающие сообщения о несоответствиях между Блоком модели и его моделью, на которую ссылаются, путем установки диагностики на Панели Диагностики: Образцовая Ссылка.

Работая с Отладчиком Simulink в родительской модели, можно установить точки останова на контурах Блока модели. Установка точек останова позволяет вам смотреть на значения ввода и вывода Блока модели. Однако вы не можете установить точку останова в модели что ссылки Блока модели. См. Отладчик Simulink для получения дополнительной информации.

Индексируйте информационное распространение

В двух случаях Simulink не распространяет информацию об индексации на основе 1 или на основе 0 к образцовым портам корневого уровня, на которые ссылаются, соединенным с блоками что:

  • Примите индексы (такие как блок Assignment)

  • Произведите индексы (такие как блок For Iterator)

Примером блока, который принимает индексы, является блок Assignment. Примером блока, который производит индексы, является блок For Iterator.

Эти два случая приводят к отсутствию распространения, которое может заставить Simulink не удаваться обнаружить несовместимые индексные связи. Эти два случая:

  • Если входной порт корневого уровня модели, на которую ссылаются, соединяется с индексными входными параметрами в модели, которые имеют различные настройки индексации на основе 1 или на основе 0, Simulink не устанавливает свойство индексации на основе 1 или на основе 0 блока Inport корневого уровня.

  • Если выходной порт корневого уровня модели, на которую ссылаются, соединяется, чтобы индексировать выходные параметры в модели, которые имеют различные настройки индексации на основе 1 или на основе 0, Simulink не устанавливает свойство индексации на основе 1 или на основе 0 блока Outport корневого уровня.

Похожие темы

Была ли эта тема полезной?