Разрешите переходы уровня

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

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

  • (Черное) время непрерывной выборки и самый быстрый дискретный уровень (красный) никогда, не имеет переход уровня, если вы используете решатель фиксированного шага.

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

Можно разрешить переходы уровня вручную путем вставки блоков перехода уровня и при помощи двух диагностических инструментов. Для однозадачного режима выполнения Единственная диагностика перехода уровня задачи позволяет вам устанавливать уровень сообщений перехода уровня Simulink®. Многозадачная диагностика перехода уровня выполняет ту же функцию для многозадачного режима выполнения. Эти режимы выполнения непосредственно относятся к типу решателя в использовании: решатели переменного шага всегда являются однозадачностью; решатели фиксированного шага могут быть явным образом установлены как однозадачность или многозадачность.

Автоматический переход уровня

Simulink может обнаружить переходы уровня, которым не соответствуют, в многозадачной модели во время схемы обновления и автоматически вставить блоки Перехода Уровня, чтобы обработать их. Чтобы включить это, в панели Решателя образцовых параметров конфигурации, выбирают переход уровня указателя Automatically для передачи данных. Настройка по умолчанию для этой опции выключена. Когда вы выбираете эту опцию:

  • Simulink обрабатывает переходы между периодическими частотами дискретизации и асинхронными задачами.

  • Simulink вставляет скрытые блоки Перехода Уровня в блок-схему.

  • Автоматически вставленные блоки Перехода Уровня действуют в защищенном режиме для периодических задач и асинхронных задач. Вы не можете изменить это поведение. Для периодических задач автоматически вставленные блоки Перехода Уровня действуют с уровнем детерминизма, заданного Детерминированным параметром передачи данных в панели Решателя. Настройкой по умолчанию является Whenever possible, который включает детерминизм для передач данных между периодическими частотами дискретизации, которые связаны целым числом несколько. Для получения дополнительной информации смотрите Детерминированную передачу данных. Чтобы использовать другие режимы, необходимо вставить блоки Перехода Уровня и установить их режимы вручную.

Визуализируйте вставленные блоки перехода уровня

Когда вы выбираете переход уровня указателя Automatically для опции передачи данных, Simulink вставляет блоки Перехода Уровня в пути, которые не соответствовали уровням перехода. Эти блоки скрыты по умолчанию. Чтобы визуализировать вставленные блоки, обновите схему. Метки значка появляются в модели и указывают, где Simulink вставил блоки Перехода Уровня во время фазы компиляции. Например, в этой модели, три блока Перехода Уровня были вставлены между двумя блоками Синусоиды и Мультиплексором и Интегратором, когда модель скомпилировала. ZOH и метки значка DbBuf указывают на эти блоки.

Можно показать или скрыть метки значка с помощью установки Display> Signals и Ports> Hidden Rate Transition Block Indicators.

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

Когда вы делаете скрытые блоки Перехода Уровня видимыми:

  • Вы видите тип вставленного блока Rate Transition, а также местоположение в модель.

  • Можно установить Начальные Условия этих блоков.

  • Можно изменить передачу данных и блочные параметры частоты дискретизации.

Подтвердите изменения в своей модели путем обновления схемы.

Отображение вставленных блоков Перехода Уровня не совместимо с:

  • Среда параллельного выполнения

  • Модели экспорта функций

Чтобы узнать больше о типах блоков Перехода Уровня, смотрите Переход Уровня.

Примечание

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

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

Больше о

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