Шаги расчета модели, на которые ссылаются,

Как работы наследования шага расчета для блоков Model

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

Помещать блок Model в инициированном, вызове функции или подсистеме итератора использует способность наследовать шаги расчета. Кроме того, разрешение блока Model наследовать шаг расчета максимизирует свой потенциал повторного использования. Например, модель может зафиксировать типы данных и размерности всех ее сигналов ввода и вывода. Вы могли снова использовать модель с различными шагами расчета (например, дискретный в 0,1 или дискретный в 0,2, инициированный).

Условия для наследования шагов расчета

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

  • Не имеет никаких непрерывных состояний

  • Задает решатель фиксированного шага, и Fixed-step size является auto

  • Не содержит блоков, которые задают шаги расчета (кроме наследованного или постоянного)

  • Не содержит S-функций, которые используют их определенный шаг расчета внутренне

  • Имеет только один шаг расчета (не считающий постоянный и инициированный шаг расчета) после распространения шага расчета

  • Не содержит блоков, включая графики Stateflow®, то использование абсолютное время, как перечислено в Блоках, Которые Зависят от Абсолютного Времени

  • Не содержит блоков, выходные параметры которых зависят от наследованного шага расчета, как перечислено в Блоках, Выходные параметры Которых Зависят от Наследованного Шага расчета.

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

Примечание

Время непрерывной выборки не может быть распространено с блоком Model, который является независимым шагом расчета.

Для получения дополнительной информации смотрите Блоки, Выходные параметры Которых Зависят от Наследованного Шага расчета.

Определение шага расчета модели, на которую ссылаются,

Чтобы определить, может ли модель, на которую ссылаются, наследовать свой шаг расчета, установите параметр конфигурации Periodic sample time constraint на Ensure sample time independent. Если модель не может наследовать шаги расчета, эта установка заставляет Simulink® отображать сообщение об ошибке при создавании модели. Смотрите Периодическое ограничение шага расчета для больше об этой опции.

Определить внутренний шаг расчета модели, на которую ссылаются или самый быстрый внутренний шаг расчета для многоскоростных моделей, на которые ссылаются:

  1. Обновите модель, это ссылается на модель

  2. Выберите блок Model в родительской модели

  3. Введите следующее в командной строке MATLAB®:

    get_param(gcb, 'CompiledSampleTime')

Блоки, которые зависят от абсолютного времени

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

Некоторые блоки кроме блоков Simulink зависят от абсолютного времени. См. документацию для blocksets, который вы используете.

Блоки, Выходные параметры Которых зависят от наследованного шага расчета

Используя блок, выход которого зависит от наследованного шага расчета в модели, на которую ссылаются, может заставить симуляцию приводить к неожиданным или ошибочным результатам. При создавании модели, на которую ссылаются, для которой не нужны заданный уровень, Simulink Check для блоков, выходные параметры которых являются функциями наследованного шага расчета. Эта проверка включает исследование блоки S-Function. Если Simulink находит какие-либо такие блоки, он задает шаг расчета по умолчанию. Если вы установили Configuration Parameters> Solver> Periodic sample time constraint к Ensure sample time independent, Simulink отображает ошибку. Смотрите Периодическое ограничение шага расчета для больше об этой опции.

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

Simulink принимает, что выход S-функции не зависит от наследованного шага расчета, если S-функция явным образом не объявляет обратное. Смотрите Задают Шаги расчета S-функции для получения информации о том, как создать S-функции, которые объявляют, зависит ли их выход от их наследованного шага расчета.

В моделях, на которые ссылаются, которые наследовали их шаг расчета, избегайте S-функций в моделях, на которые ссылаются, которым не удается объявить, зависит ли выведенный от наследованного шага расчета. Исключая те виды S-функций помогает избежать ошибок симуляции. По умолчанию Simulink предупреждает вас, если ваша модель содержит такие блоки, когда вы обновляете или симулируете модель. Смотрите Незаданный inheritability шага расчета для деталей.

Непротиворечивость шага расчета

Используйте сопоставимые уровни шага расчета, чтобы способствовать надежному использованию модели, на которую ссылается другая модель. Сделайте уровни корневого Inport и блоков Outport в модели, на которую ссылаются, сопоставимыми с уровнями блоков, читающих из и пишущих в те блоки. Simulink генерирует ошибку, когда существуют несоответствия шага расчета между:

  • Шаги расчета корневого Inport блокируются и шаги расчета блоков, с которыми блок Inport вводит.

  • Шаги расчета корневого Outport блокируются и шаги расчета блоков, которые вводят с блоком Outport.

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

Inport верхнего уровня или шаг расчета блока OutportВозможное решение

Отличающийся от всех блоков, до которых это соединяется, и те блоки, у всех есть тот же шаг расчета друг как друг

Установите шаг расчета блока Inport или Outport так, чтобы это совпадало с шагом расчета блока, с которым это соединяется.

Отличающийся от одного или нескольких блоков и того же самого как один или несколько блоков

Для блоков, которые не совпадают с блоком Inport или Outport, вставьте блоки Rate Transition на сигнале, который соединяется с блоком Inport или Outport.

Частоты дискретизации и решатели

Решатель топ-модели управляет всеми временами непрерывной выборки в иерархии модели. Например, для решателя фиксированного шага, всех непрерывных уровней в моделях, на которые ссылаются, запущенных в размере фиксированного шага топ-модели. Для получения информации о том, как шаги расчета влияют на решатели, видят Типы Шага расчета.

Связанные примеры

Больше о