makeVariant

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

Описание

пример

[variantComp,choices] = makeVariant(component) преобразует component в компонент выбора варианта и возвращает родительский компонент варианта и доступные компоненты выбора варианта.

[variantComp,choices] = makeVariant(component,Name,Value) преобразует component в компонент выбора варианта с дополнительными опциями и возвращает родительский компонент варианта и доступные компоненты выбора варианта.

Примеры

свернуть все

Создайте два компонента с двумя портами каждый.

Создайте модель архитектуры верхнего уровня.

modelName = 'archModel';
arch = systemcomposer.createModel(modelName,true);
rootArch = get(arch,'Architecture');                  

Создайте новый компонент.

newComponent = addComponent(rootArch,'Component');

Добавьте порты к компонентам.

inPort = addPort(newComponent.Architecture,'testSig','in');
outPort = addPort(newComponent.Architecture,'testSig','out');

Преобразование компонента в компонент варианта.

[variantComp,choices] = makeVariant(newComponent)
variantComp = 

  VariantComponent with properties:

           Architecture: [1×1 systemcomposer.arch.Architecture]
                   Name: 'Component'
                 Parent: [1×1 systemcomposer.arch.Architecture]
                  Ports: [1×2 systemcomposer.arch.ComponentPort]
             OwnedPorts: [1×2 systemcomposer.arch.ComponentPort]
      OwnedArchitecture: [1×1 systemcomposer.arch.Architecture]
               Position: [15 13 65 81]
                  Model: [1×1 systemcomposer.arch.Model]
         SimulinkHandle: 69.0001
    SimulinkModelHandle: 1.2207e-04
                   UUID: 'ee705b8f-b383-4230-a1a2-3c69fb081cc5'
            ExternalUID: ''


choices = 

  Component with properties:

     IsAdapterComponent: 0
           Architecture: [1×1 systemcomposer.arch.Architecture]
                   Name: 'Component'
                 Parent: [1×1 systemcomposer.arch.Architecture]
                  Ports: [1×2 systemcomposer.arch.ComponentPort]
             OwnedPorts: [1×2 systemcomposer.arch.ComponentPort]
      OwnedArchitecture: [1×1 systemcomposer.arch.Architecture]
               Position: [50 20 100 76]
                  Model: [1×1 systemcomposer.arch.Model]
         SimulinkHandle: 62.0001
    SimulinkModelHandle: 1.2207e-04
                   UUID: '5ad838ca-f993-4349-aac9-2efca6d2066e'
            ExternalUID: ''

Откройте систему и расположите ее. Сохраните модель.

open(arch)
Simulink.BlockDiagram.arrangeSystem('archModel');
save(arch)

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

свернуть все

Компонент архитектуры, который будет преобразован в компонент варианта выбора, заданный как systemcomposer.arch.Component объект.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: [variantComp,choices] = makeVariant(newComponent,'Name','NewVariantComponent','Label','NewVariantChoice','Choices',{'NewVariantChoiceA','NewVariantChoiceB','NewVariantChoiceC'},'ChoiceLabels',{'Choice A','Choice B','Choice C'})

Имя компонента варианта, заданное как разделенная разделенными запятой парами, состоящая из 'Name' и вектор символов.

Пример: [variantComp,choices] = makeVariant(newComponent,'Name','NewVariantComponent')

Метка варианта выбора из преобразованного компонента, заданная как разделенная разделенными запятой парами, состоящая из 'Label' и вектор символов.

Пример: [variantComp,choices] = makeVariant(newComponent,'Name','NewVariantComponent','Label','NewVariantChoice')

Имена вариантов, заданные как разделенная разделенными запятой парами, состоящая из 'Choices' и массив ячеек из векторов символов. Дополнительные варианты также добавляются к новому компоненту варианта наряду с активным выбором из преобразованного компонента.

Пример: [variantComp,choices] = makeVariant(newComponent,'Choices',{'NewVariantChoiceA','NewVariantChoiceB','NewVariantChoiceC'})

Метки вариантов, заданные как разделенная разделенными запятой парами, состоящая из 'ChoiceLabels' и массив ячеек из векторов символов.

Пример: [variantComp,choices] = makeVariant(newComponent,'Choices',{'NewVariantChoiceA','NewVariantChoiceB','NewVariantChoiceC'},'ChoiceLabels',{'Choice A','Choice B','Choice C'})

Выходные аргументы

свернуть все

Компонент варианта, возвращенный как systemcomposer.arch.VariantComponent объект.

Варианты выбора, возвращенные как массив systemcomposer.arch.Component объекты.

Типы данных: char

Подробнее о

свернуть все

Определения

ТерминОпределениеПриложениеДополнительная информация
архитектураАрхитектура System Composer™ представляет систему компонентов и то, как они взаимодействуют друг с другом структурно и поведенчески. Представлять определенные архитектуры можно с помощью альтернативных представлений.

Различные типы архитектур описывают различные аспекты систем:

  • Функциональная архитектура описывает поток данных в системе.

  • Логическая архитектура описывает предполагаемую операцию системы.

  • Физическая архитектура описывает платформу или оборудование в системе.

Составьте архитектуру визуально
модельМодель System Composer является файлом, содержащим архитектурную информацию, включая компоненты, порты, соединители, интерфейсы и поведение.

Выполните операции над моделью:

  • Извлеките архитектуру корневого уровня, содержащуюся в модели.

  • Применить профили.

  • Соедините словари данных интерфейса.

  • Сгенерируйте образцы из архитектуры модели.

Модели System Composer хранятся как .slx файлы.

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

Существуют различные типы портов:

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

  • Архитектуры порты являются портами на контур системы, будь то контур внутри компонента или общая модель архитектуры.

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

ТерминОпределениеПриложениеДополнительная информация
вариантВариант является одним из многих структурных или поведенческих вариантов в компоненте варианта.Используйте варианты, чтобы быстро заменить различные архитектурные проекты для компонента при выполнении анализа.Создание вариантов
управление вариантомУправление вариантом является строкой, которая управляет выбором активного варианта.Установите управление вариантом, чтобы программно контролировать, какой вариант является активным.Установите условие

Введенный в R2019a