Различная подсистема, различная модель

Шаблонная подсистема, содержащая блоки Subsystem или блоки Model как Варианты

  • Библиотека:
  • Simulink / Ports & Subsystems

    HDL Coder / Ports & Subsystems

Описание

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

Различный блок Subsystem может содержать смесь Подсистемы и блоков Model как Вариантные системы. Это может также включать Inport, Выходной порт и блоки Порта подключения. В Различных блоках Subsystem нет никаких проведенных связей.

Различный блок Subsystem с блоками Model как выбор, называется Различным блоком Model.

Каждая Вариантная система сопоставлена с Различным управлением, которое создается в глобальной рабочей области. Различное управление определяет, какая Вариантная система активна. Различное управление может быть выражением условия, объект Simulink.Variant, задающий выражение условия или Вариант по умолчанию. Различное управление, которое оценивает к true, определяет активный Вариант.

Когда вы выбираете опцию Specify output when source is unconnected в блоке Outport, который находится в Различном блоке Subsystem, можно задать неназемное значение как его вывод.

Примечание

Необходимо задать правильный тип данных в разделе Signal Attributes диалогового окна блока Outport.

Порты

Во время симуляции Simulink® отключает неактивные порты в Различном блоке Subsystem.

Входной параметр

развернуть все

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

Вывод

развернуть все

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

Параметры

развернуть все

Чтобы выбрать активный Вариант на основе оценки Различных условий, используйте режим Expression, еще выбирают режим Label. Когда вы выбираете Variant control mode как Label, опция Label mode active choice доступна. В режиме Label Различное управление не должно быть создано в глобальной рабочей области. Можно выбрать активный Вариант из опций Label mode active choice.

Когда вы выбираете режим Label, Различный значок указывает на изменение.

Примечание

Когда вы продвигаете параметр Label mode active choice маску, Variant control mode отключен. При продвижении параметра Label mode active choice маску во вложенной модели гарантируйте, что вы продвигаете параметр Label mode active choice маску блока Subsystem Варианта непосредственного родителя.

  • Если блок находится в режиме Expression при продвижении параметра Label mode active choice маску, можно изменить Variant control mode на Label путем изменения продвинутого параметра Label mode active choice от диалогового окна Mask.

  • Если блок находится в режиме Label при продвижении параметра Label mode active choice маску, вы не можете изменить Variant control mode на режим Expression.

Для получения информации о продвижении параметров к маске смотрите, Продвигают Параметр Маску.

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

Можно использовать кнопки слева от таблицы Variant choices, чтобы изменить элементы в таблице.

К...Щелкнуть...
Create and add a new subsystem choice: Поместите новый Вариант Подсистемы в таблицу и создайте блок Subsystem в Различной схеме блока Subsystem.
Create and add a new model variant choice: Поместите новый Образцовый Вариант в таблицу и создайте блок Model в Различном блоке Subsystem.
Create/Edit selected variant object: Создайте объект Simulink.Variant в глобальной рабочей области и откройте диалоговое окно параметра объекта Simulink.Variant, чтобы задать Вариант Condition.
Open selected variant choice block: Откройте схему блока Subsystem для выбранной строки в таблице Variant choices.
Refresh dialog information from Variant Subsystem contents: Обновите таблицу Variant choices согласно Вариантной системе и значениям Различного управления в глобальной рабочей области.

Это поле только для чтения основано на имени Вариантной системы. Чтобы добавить Вариант Подсистемы, щелкнуть. Чтобы добавить Образцовый Вариант, щелкнуть.

Чтобы ввести Различное имя, дважды кликните ячейку Variant control в новой строке и тип в Различном выражении управления.

Чтобы ввести нечисловые Различные значения управления, используйте перечисленные данные. Для получения информации об использовании перечислимых данных смотрите Использование Перечислимые Данные в Моделях Simulink

Программируемое использование

Поле Structure: Представленный полем variant.Name только для чтения в структуре параметра Variant
Ввод: символьный вектор
Значение: Различное управление, которое сопоставлено с Вариантом
Значение по умолчанию: 'variant'

Это поле только для чтения основано на условии для связанного Различного управления в глобальной рабочей области. Создайте или измените Различное условие в диалоговом окне параметра Simulink.Variant или в глобальной рабочей области.

Когда вы выбираете Variant control mode to Label, the Label mode active choice опция доступно. Можно выбрать активный Вариант из опций Label mode active choice. Можно также щелкнуть правой кнопкой по значку по Различному блоку Subsystem и выбрать Label Mode Active Choice.

Для опции Label mode active choice Различное управление не должно быть выражением булева условия или объектом Simulink.Variant. Проигнорированы различные средства управления, которые запускаются с символа %.

Примечание

Опция Label mode active choice не доступна в режиме Expression.

Зависимости

Чтобы включить этот параметр, выберите опцию Label из параметра Variant control mode.

Программируемое использование

Параметр: LabelModeActivechoice
Ввод: символьный вектор
Значение: если никакой режим Label, активный выбор задан, значение, не пуст. Если режим Label, активный выбор задан, значение, является именем режима Label активный выбор.
Значение по умолчанию: ''

Чтобы моделировать модель (содержащий Вариантную систему) без активного Варианта, выберите опцию Allow zero active variant controls. Когда вы выбираете эту опцию и если нет никакого активного Варианта, Simulink отключает все блоки, соединенные с потоком ввода и вывода Различного блока Subsystem. Отключенные блоки проигнорированы из схемы обновления или симуляции.

Если вы не выбираете эту опцию, Simulink генерирует ошибку, когда нет никакого активного Варианта.

Зависимости

  • Опция (по умолчанию) Варианта не выбрана

  • Опция Expression от Variant control mode выбрана.

Программируемое использование

Параметр: AllowZeroVariantControls
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

При генерации кода для цели ERT этот параметр определяет, заключены ли Варианты в условных операторах препроцессора C (#if).

Когда вы выбираете эту опцию, Simulink анализирует все Варианты во время схемы обновления или симуляции. Этот анализ обеспечивает раннюю валидацию готовности генерации кода всех Вариантов.

Когда вы выбираете эту опцию, Различные изменения значка.

Зависимости

  • Флажок доступен для генерации только целей ERT.

  • Опция Expression от Variant control mode выбрана.

Программируемое использование

Параметр: GeneratePreprocessorConditionals
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Когда вы выбираете эту опцию, Simulink распространяет Различные условия за пределами Различного блока Subsystem, чтобы определить, какие компоненты модели активны во время симуляции.

Когда вы выбираете эту опцию, Различный значок указывает на изменение.

Программируемое использование

Параметр: PropagateVariantConditions
Ввод: символьный вектор
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Образцовые примеры

Характеристики блока

Типы данных

Boolean[a] | bus[a] | double[a] | enumerated[a] | fixed point[a] | integer[a] | single[a] | string[a]

Прямое сквозное соединение

no

Многомерные сигналы

limited[a]

Сигналы переменного размера

limited[a]

Обнаружение пересечения нулем

no

[a]  Фактическая поддержка типа данных или возможности зависит от реализации блока.

Расширенные возможности

Представленный в R2010b