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