Задайте, сконфигурируйте и активируйте варианты

Представляйте различный выбор

Различным выбором являются две или больше настройки компонента в вашей модели. Этот пример показывает, как представлять различный выбор в блоке Variant Subsystem в вашей модели. Для других способов представлять варианты дизайна, см. Опции для Представления Вариантов в Simulink.

  1. Добавьте блок Variant Subsystem к своей модели и назовите ее.

    Этот блок служит контейнером для различного выбора.

  2. Дважды кликните блок Variant Subsystem. Добавьте импорт и блоки выходного порта так, чтобы они совпадали с входными параметрами в и выходными параметрами от этого блока.

    Примечание

    Можно добавить только Inport, Выходной порт, Подсистему и Блоки модели в блоке Variant Subsystem. Можно передать управляющие сигналы через порты данных.

  3. Щелкните правой кнопкой по значку по блоку Variant Subsystem и выберите Block Parameters (Subsystem).

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

    Simulink® создает пустые блоки Подсистемы в блоке Variant Subsystem. Новые блоки имеют то же количество импорта и выходных портов как содержание блока Variant Subsystem.

    Совет

    (Если ваш различный выбор имеет различные количества импорта и выходных портов, смотрите Отображение Inports и Выходные порты Различного Выбора.)

  5. Откройте каждый блок Subsystem и создайте модель, которая представляет различный выбор.

  6. Когда вы моделируете варианты, можно создать пустые блоки Подсистемы без вводов или выводов в блоке Variant Subsystem. Пустая подсистема воссоздает ситуацию, в которой подсистема неактивна без потребности в том, чтобы полностью смоделировать вариант. Для пустого различного выбора, или задать различное условие активации или комментируют различное условие путем размещения символа % перед условием.

    Если пустой различный выбор активен во время компиляции, Simulink игнорирует его.

Включайте модель Simulink как различный выбор

Можно включать модель Simulink как различный выбор в блоке Variant Subsystem.

  1. Создайте модель, которую вы хотите включать как различный выбор. Убедитесь, что это имеет то же количество импорта и выходных портов как содержание блока Variant Subsystem.

    Примечание

    Если ваша модель имеет различные количества импорта и выходных портов, смотрите Отображение Inports и Выходные порты Различного Выбора.

  2. В вашей модели щелкните правой кнопкой по блоку Variant Subsystem, который содержит различный выбор, и выберите Block Parameters (Subsystem).

  3. В блочном диалоговом окне параметров нажмите кнопку, чтобы добавить Блок модели как различный выбор.

    Simulink создает неразрешенный блок модели - ссылки в блоке Variant Subsystem.

  4. Дважды кликните неразрешенный блок модели. В поле Имени модели введите имя модели, которую вы хотите использовать в качестве образцового различного выбора и нажать ОК.

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

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

  1. В командной строке MATLAB® задайте контрольные переменные, которые создают условие активации, когда объединено.

    mode = 3;
    version = 2;

  2. Щелкните правой кнопкой по блоку Variant Subsystem, который является контейнером для различного выбора в вашей модели, и выберите Block Parameters (Subsystem).

  3. В блочном диалоговом окне параметров, в Различном столбце управления, выбирают (default) рядом с одним из выбора.

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

  4. Задайте различное условие каждый другой выбор. При использовании пустой различный выбор, задаете различное условие для выбора. Можно также прокомментировать существующее условие активации путем добавления префикса его символ %.

  5. Нажмите Apply; в противном случае ваши изменения не сохранены.

Преобразуйте в варианты

В Редакторе Simulink можно преобразовать эти блоки в блок Variant Subsystem:

  • Блок Subsystem

  • Блок модели

  • Различный Блок модели (для моделей, созданных в версиях ранее, чем R2017b)

  • Условно выполняемые подсистемы

Для этого щелкните правой кнопкой по блоку, затем в контекстном меню, нажмите Subsystem & Model Reference> Convert к> Различная Подсистема.

Можно также преобразовать, они блокируются к блоку Variant Subsystem программно. Для этого используйте любой из этих синтаксисов:

Например,

open_system('sldemo_variant_subsystems');
Simulink.VariantManager.convertToVariant('sldemo_variant_subsystems/Controller');

Если вы преобразовываете различные модели в различную подсистему, обратите внимание, что поведение параметра Блока модели Генерирует условные выражения препроцессора, отличается, чем параметр блока Variant Subsystem Анализирует весь выбор во время обновления, схематически изображают и генерируют условные выражения препроцессора. Для различных моделей, включая параметр заставляет схему моделирования и обновления компилировать активный вариант только. Для различной подсистемы, включая параметр компилирует все варианты, которые могут сделать моделирование и обновляют медленнее.

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

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

Больше о

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