Диспетчер вариантов является центральным инструментом, который позволяет управлять различными точками изменения, которые моделируются с помощью вариантов блоков в системной модели или переходов вариантов в Stateflow® график.
Иерархия модели может содержать несколько вариантов блоков, каждый из которых имеет много вариантов выбора, комбинации которых соответствуют конкретным строениям системы. Переключение между вариантами выбора и их валидация вручную могут быть сложными и ошибочными.
Используйте Диспетчер вариантов, чтобы создать предопределённые строения для модели и использовать модель в любой из строений. Можно создать строения комбинациями различных вариантов по иерархии модели.
Используя Диспетчер вариантов, можно:
Определите, проверьте и визуализируйте строения варианта.
Определите и проверьте ограничения для модели.
Задайте активное строение по умолчанию.
Установите для переменных управления целое число, значения перечисления или Simulink.Parameter
объекты.
Ассоциируйте Simulink.VariantConfigurationData
объект с моделью.
Проверьте строение или модель варианта без обновления модели.
Уменьшите модель, чтобы сохранить подмножество строений вариантов.
Анализируйте варианты строений.
Для получения информации об анализе строений вариантов из Диспетчера вариантов смотрите Анализ строений вариантов в моделях, содержащих блоки вариантов. Для получения информации об анализе строений вариантов из командной строки смотрите Simulink.VariantConfigurationAnalysis
.
Рассмотрим модель Управление вариантами. Чтобы открыть Диспетчер вариантов, можно:
Щелкните правой кнопкой значок варианта и выберите Open in Variant Manager.
Щелкните правой кнопкой мыши блок варианта и выберите Variant > Open in Variant Manager.
Выберите блок варианта, например Variant Subsystem блок, а затем на вкладке Variant Subsystem панели инструментов выберите Variant Manager.
На Modeling вкладке панели инструментов откройте Design раздел, нажмите Variant Manager.
Щелкните Open block in Variant Manager доступной в диалоговом окне Block Parameter блока варианта.
Окно Variant Manager разделено на три панели:
Панель Данные конфигурации варианта (Variant Configuration Data), которая позволяет вам задавать строения варианта и ограничения и экспортировать их в объект данных строения варианта.
Панель иерархия модели, которая позволяет вам визуализировать иерархию вариантов.
Панель Журнал, на которой отображаются сведения об источнике переменных системы управления и ошибках валидации.
Используйте эту панель, чтобы создать строения, задать переменные управления, связать ссылочные строения модели и задать ограничения. Строения и связанные данные хранятся в варианте строения объекта данных.
После добавления строения варианта введите имя для объекта строения варианта в поле Variant configuration object. Можно использовать раскрывающееся меню, чтобы загрузить объект строения варианта из файла или обновить загруженный объект строения варианта. Можно загрузить объект строения варианта либо из MAT
файл или скрипт MATLAB (.m
файл). Чтобы сохранить объект строения варианта в модели, глобальной рабочей области и связать его с моделью, нажмите Export.
Чтобы сохранить объект строения варианта в папке по вашему выбору или как MAT-файл или скрипт MATLAB (
.m
файл), нажмите Save As из выпадающего меню кнопки Export.
Вкладка Configurations разделена на верхнюю и нижнюю панели. Можно использовать верхнюю панель для добавления, удаления или копирования строения варианта. Можно также задать строение по умолчанию. Когда вы устанавливаете строение как строение по умолчанию, валидация или обновление модели активирует выбор варианта, заданный в строение по умолчанию.
Верхняя панель имеет эти кнопки для управления строения варианта.
Кнопка | Описание |
---|---|
Добавьте строения варианта | |
Удалите вариант строения | |
Повторяющееся строение варианта | |
Установите/Очистите активное строение по умолчанию |
После добавления строения варианта можно использовать нижнюю панель на вкладке Configurations, чтобы добавить описание, переменные управления и строения подмодели для нее. Можно добавить управляющие переменные и экспортировать их в глобальную рабочую область, даже если строение варианта не добавлено. Нижняя панель содержит следующие вкладки:
Description - Предоставьте описание для выбранного строения варианта.
Control Variables - Добавляйте, удаляйте, копируйте или импортируйте управляющие переменные. Включите тип данных и импортируйте переменные управления из рабочей области. Показать, скрыть использование выбранных переменных элемента управления.
Кнопка | Описание |
---|---|
Добавьте переменную управления | |
Удалите выбранную переменную управления | |
Создайте копию выбранной переменной управления | |
Переключение типа переменной управления Управляющая переменная может быть либо простым переменным MATLAB, либо | |
Редактирование Примечание Чтобы задать | |
Импортируйте переменные управления из всей иерархии модели-ссылки Примечание Управляйте переменными из блоков в | |
Показать использование выбранных переменных элемента управления | |
Скрыть использование выбранных переменных управления |
Использование переменных управления вычисляется на базис по запросу, где можно выбрать отображение или скрытие использования переменной управления в таблице иерархии модели Диспетчера вариантов.
Для этого в окне Variant Manager щелкните правой кнопкой мыши необходимую переменную управления и выберите Show usage или Hide usage. Пример снимка экрана показан на рисунке.
Submodel Configurations - задайте строение варианта для ссылочной модели.
Добавьте или удалите ссылку на строение модели.
Чтобы обновить и активировать модель варианта для строения, выберите строение из списка Configurations и нажмите Activate. Если вы нажимаете кнопку Activate, не выбирая никакого строения, значения для Control Variables выбираются из глобальной рабочей области. В таких случаях Control Variables, определенные в Диспетчере вариантов, переопределяют соответствующие значения в глобальной рабочей области, если не задано строение по умолчанию. Если задано строение варианта по умолчанию, применяются соответствующие переменные управления.
Когда вы открываете Диспетчер вариантов для родительской модели, которая содержит ссылочные модели (подмодели), проверяется только родительская модель. Ссылочные модели (подмодели) проверяются только при активации или расширении (нажатие кнопки +
) образцы модели.
Используйте вкладку Constraints, чтобы добавить или удалить ограничения уровня модели. Подобно вкладке Configurations, вкладка Constraints также содержит верхнюю и нижнюю панели.
На верхней панели отображаются имя и условие ограничений, а на нижней - описание. Выражение условия ограничения должно удовлетворяться всеми строениями варианта в модели.
Можно визуализировать и исследовать иерархию вариантов модели и отредактировать свойства исполнительных блоков, вариантов выбора и объектов вариантов из панели Model hierarchy. На этой панели отображаются Name, Submodel Configuration, Variant Control и связанные Conditions объектов варианта, используемых в качестве элементов управления вариантом.
Просмотрите иерархию с помощью значков навигации. Элементы управления на панели Model hierarchy позволяют вам выполнить следующие действия:
Обновите и проверьте иерархию.
Отображать только блоки вариантов.
Перемещайтесь между использованием переменной, активными вариантами, недопустимыми вариантами и переопределенными вариантами.
Выборочно отображать блоки в иерархии вариантов:
Выберите all variant, чтобы отобразить все варианты блоков.
Выберите label mode, чтобы отобразить варианты блоков в Label
mode и другие блоки Model. Варианты блоков в Expression
mode, который содержит блоки в Label
также отображается режим в пределах их иерархии.
Выберите expression mode, чтобы отобразить варианты блоков в Expression
mode и другие блоки Model. Варианты блоков в Label
mode, который содержит блоки в Expression
также отображается режим в пределах их иерархии.
Выберите hierarchical, чтобы отобразить все иерархические блоки (для примера, Подсистемы, Блоков Model) в модели.
Выберите sim codegen switching mode, чтобы отобразить варианты блоков в sim codegen switching
режим.
Перемещайтесь между использованием переменных, активными вариантами, недопустимыми вариантами и переопределенными вариантами:
Variable usage - выбирает предыдущие/следующие строки в модели, где используется выбранная переменная управления.
Active choices - выбирает предыдущие/следующие строки в модели, имеющие активные варианты выбора.
Invalid choices - выбирает предыдущие/следующие строки в модели, имеющие недопустимые варианты выбора.
Иерархия модели отображается в дереве с каждым блоком, представляющим узел в иерархии. Иерархия отображает активные, неактивные, переопределенные и недопустимые варианты. Можно редактировать ссылочные строения модели, элементы управления варианта и условия исполнения. Разверните узлы, чтобы просмотреть базовые блоки.
Примечание
Защищенные образцы модели нельзя просмотреть в иерархии.
Таблица иерархии состоит из следующих столбцов:
Name - Имя модели или блока.
Submodel Configuration - Строения, используемые ссылочными моделями. Можно редактировать Submodel Configuration только для строк, которые отображают модели, на которые ссылается верхняя часть.
Variant Control - Параметр управления вариантом выбора. Этот столбец идентичен столбцу Variant Control диалогового окна параметра вариантов блоков. Этот столбец можно отредактировать для вариантов по всей иерархии.
Condition - Отображает и позволяет вам редактировать условие для Simulink.Variant
объект, когда он используется в качестве варианта управления. Этот столбец можно отредактировать для вариантов по всей иерархии вариантов.
В таблице иерархии можно щелкнуть правой кнопкой мыши блок и при необходимости использовать одну из следующих опций из контекстного меню:
Open and Highlight Block: Подсвечивает выбранный блок в модели при отображении выбранного местоположения блока из верхней модели.
Open Model: Открывает выбранную модель с отображением выбранного местоположения модели из верхней модели. Эта опция доступна только при выборе модели из таблицы иерархии.
Open Block Parameters: Открывает диалоговое окно параметров блоков для выбранного блока. Можно принять решение изменить значения параметров.
Open Parent Block Parameters: Открывает диалоговое окно параметров блоков для родительского блока выбранного блока. Можно принять решение изменить значения параметров.
Set as Label Mode Active Choice: Устанавливает выбранный элемент для выбора Variant Subsystem, или Variant Sink, или блоков Variant Source как активный выбор. Эта опция доступна только для блоков Variant Subsystem, Variant Sink или Variant Source в режиме метки.
В разделе иерархии модели каждый блок представлен со значком. В следующей таблице отображаются значки и соответствующее имя блока.
Значок | Имя блока |
---|---|
Моделируйте блок | |
Блок встроенных вариантов (Variant Source и Variant Sink) | |
Variant Subsystem блок | |
Subsystem блок | |
Variant Model блок | |
Subsystem Reference блок | |
Simulink® Функциональный блок | |
Trigger Port блок | |
Stateflow блок на графике | |
Variant Sink выходной порт | |
Variant Source входной порт | |
Variant Subsystem блок с Propagate conditions outside of variant subsystem опцией. | |
Variant Subsystem блок с Variant activation time установленным на | |
Variant Subsystem блок с Variant activation time установленным на | |
Variant Subsystem блок с Variant activation time установленным на | |
Variant Subsystem блок с Allow zero active variant controls и Variant activation time в | |
Variant Subsystem блок с Allow zero active variant controls и Variant activation time в | |
Variant Subsystem блок с Allow zero active variant controls и Variant activation time в | |
Variant Subsystem блок с | |
Variant Subsystem блок с Propagate conditions outside of variant subsystem и Variant activation time в | |
Variant Subsystem блок с Propagate conditions outside of variant subsystem и Variant activation time в | |
Variant Subsystem блок с Propagate conditions outside of variant subsystem и Variant activation time в | |
Variant Subsystem блок с Propagate conditions outside of variant subsystem опцией. Кроме того, | |
Встроенные варианты блока (Variant Source и Variant Sink) с Allow zero active variant control опцией. | |
Линейные варианты блока (Variant Source и Variant Sink) с | |
Линейные варианты блока (Variant Source и Variant Sink) с Variant activation time установленным значением | |
Линейные варианты блока (Variant Source и Variant Sink) с Variant activation time установленным значением | |
Линейные варианты блока (Variant Source и Variant Sink) с Variant activation time установленным значением | |
Линейные варианты блока (Variant Source и Variant Sink) с Allow zero active variant control и Variant activation time, установленными на | |
Линейные варианты блока (Variant Source и Variant Sink) с Allow zero active variant control и Variant activation time, установленными на | |
Линейные варианты блока (Variant Source и Variant Sink) с Allow zero active variant control и Variant activation time, установленными на | |
Initialize Function блок | |
Event Listener блок Initialize Function блока | |
Reset Function блок | |
Event Listener блок Rest Function блока | |
Terminate Function блок | |
Event Listener блок Terminate Function блока | |
Диаграмма Stateflow с Generate preprocessor conditionals выбранной опцией. | |
Переход Stateflow с Treat as Variant Transition опцией. |
На панели Журнал отображаются сведения и результаты валидации источника переменных системы управления для моделей в иерархии.
Для примера, если строение вариантов используется для ссылочной модели, имя модели-ссылки отображается в строке вместе с именем варианта строения объекта данных и строением варианта. На панели также отображаются ошибки, возникшие во время валидации строения варианта.