С ним может быть связан один или множеством различных настроек модели варианта. Используя Диспетчер вариантов, можно создать строения вариантов. Каждое строение варианта содержит набор значений переменных управления вариантом, который активирует варианты выбора в модели. Каждый вариант строения может использоваться, чтобы создать определенную реализацию модели. Количество строений варианта может быть высоким в зависимости от количества переменных управления вариантом, используемых в модели. Из-за большого количества строений вариантов может быть трудно убедиться, что все варианты были активированы хотя бы один раз, и что модель полностью покрыта для симуляции и генерации кода. Также трудно гарантировать, что активная, реализованная модель отличается между различными строениями варианта. Можно использовать инструмент Анализ конфигурации варианта (Variant Configuration Analysis) в Диспетчере вариантов (Variant Manager), чтобы сравнить различные строения варианта для модели. Кроме того, можно получить информацию о зависимых моделях и библиотеках, используемых для конкретного строения варианта.
Инструмент Строения анализа вариантов также помогает вам определить, какие блоки используются в различных строениях исполнения. Можно определить, какие блоки не используются, а какие находятся внутри области варианта и всегда используются. Неиспользованные блоки подсвечиваются красным цветом, который представляет непроверенные и непокрытые части модели. Вид тепловой карты помогает вам определить сходства и различия в активной, реализованной модели между различными строениями варианта. Результаты анализа могут использоваться, чтобы уточнить строения вариантов и обновить модель, чтобы обеспечить полное покрытие симуляции во всех строениях вариантов.
Откройте модель, содержащую варианты блоков. Для примера, Анализ Строения вариантов.
Эта модель содержит различные источники поставщиков для датчиков и различные реализации контроллера, основанные на входе датчика. Выбор датчиков поставщика моделируется блоками Variant Source и Variant Sink. Различные варианты контроллера моделируются с помощью вариантных подсистем.
Щелкните правой кнопкой значок варианта и выберите Open in Variant Manager. Откроется Диспетчер вариантов и отобразит предопределённые строения. Также выберите блок варианта, а затем на вкладке Variant панели инструментов выберите Variant Manager.
Нажмите Analyze. Откроется диалоговое окно Анализ строение варианта.
В Analysis mode выберите необходимую опцию.
Specify variant configurations: Выберите требуемые строения варианта или выберите Named configurations, чтобы выбрать все строения.
Specify variant control values: Если вы выбираете эту опцию, можно создать несколько групп переменных, которые соответствуют различным строениям. Чтобы создать новую группу переменных, щелкните New variable group и установите значения для переменных управления вариантом. Можно либо задать вариант управляющего значения, либо выбрать Ignored
из раскрывающегося списка. Если вы выбираете Ignored
, затем эта переменная управления вариантом не рассматривается при анализе модели.
Нажмите Analyze. Откроется отчет для анализируемых строений вариантов.
Примечание
В этом примере опция Specify variant configurations выбрана в Analysis mode.
В отчете отображается представление древовидной таблицы иерархии модели и все проанализированные строения вариантов. Каждая строка в таблице соответствует блоку в модели, и каждый столбец представляет вариантное строение. Флажок указывает, что соответствующий блок активен в соответствующих строениях варианта. Значения, выделенные красным цветом, указывают, что блок неактивен для этого конкретного строения варианта. Например, в приведенном выше изображении блок Vendor A активен в вариантных строениях VendorACtrlLinear, VendorACtrlFuzzy и VendorACtrlNonLinear и неактивен в вариантных строениях VendorBCtrlFuzzy, VendorBCtrlLinear, VendorBCtrlSecondOrder и VendorBCtrlNonLinear.
Аннотации в отчете («c: #») соответствуют вариантному условию. Условия исполнения зависят от того, какое строение варианта является активной. На изображении показано отображение между аннотацией и условием. Условия исполнения помогают вам понять, почему блок активен для данного строения варианта (условие варианта оценивается на основе значений переменной управления, определенных в строении).
Элементы управления в Variant Configuration Analysis окне позволяют вам выполнить следующие действия:
Поисковые блоки.
Фильтрация результатов для выборочного отображения блоков.
Выборочно отображать анализируемые блоки.
Выборочно отображать блоки в Variant Analysis окне по:
Выбор Variant для отображения только исполнительных блоков в модели.
Выбор Hierarchical для отображения всех иерархических блоков (для блоков примера, Подсистемы или Model) в модели. Это представление позволяет исследовать подсистемы или модели-ссылки один за другим вместо просмотра полной модели.
Выбор All blocks для отображения всех блоков в модели.
Выборочно отображать блоки по их активности в Variant Configuration Analysis окне по:
Выбор Always Active для отображения блоков, которые всегда активны в модели.
Выбор Partially Active для отображения блоков, активных в некоторых строениях и неактивных в других из выбранных строений.
Выбор Never Active для отображения блоков, которые никогда не являются активными в модели. Эти блоки дополнительно подсвечиваются красным цветом, чтобы указать, что они являются неиспользованными частями модели и требуют фиксации.
Например, на изображении ниже показана модель с несколькими неиспользованными блоками. Never Active опция используется для просмотра неиспользуемых блоков.
Блоки в контроллере Second order внутри Linear_Control и F1_Unsat фильтра не используются. Чтобы сделать эти неиспользованные блоки частью активной модели по крайней мере в одном из строений вариантов, измените модель или обновите строения варианта.
На изображении ниже показана модель с двумя идентичными строениями варианта. Partially Active получения этого результата выбрана опция.
Вариант строений VendorBCtrlLinear и VendorBCtrlSecondOrder не имеют различий между ними. Это указывает, что полученная активная модель для обоих этих строений будет одинаковой. Чтобы решить эту проблему, обновите строения вариантов или обновите модель соответствующим образом.
Аннотации в таблице соответствуют условию варианта. Условия варианта зависят от активного строения варианта. Условия варианта помогают вам понять, является ли блок активным для данного строения варианта. Условие варианта оценивается на основе значений переменной управления, определенных в строении.
Щелкните необходимую аннотацию, чтобы просмотреть блок с выбранной аннотацией.