Создание архитектурных представлений программно

Можно создать представление архитектуры программно. Этот раздел ограничивает два примера для создания представлений программно от createArchitectureViews.m скрипта MATLAB.

  1. Импортируйте пакет, где запросы так, вы не должны всегда использовать systemcomposer.query.

    import systemcomposer.query.*;
  2. Откройте файл проекта Simulink.

    scKeylessEntrySystem
  3. Загрузите модель в качестве примера в Simulink.

    zcModel = systemcomposer.loadModel('KeylessEntryArchitecture');

Пример 1: состояние анализа аппаратного компонента

Создайте отфильтрованное представление, которое выбирает все аппаратные компоненты в модели архитектуры и группирует их использующий ReviewStatus свойство.

  1. Создайте запрос, чтобы выбрать все аппаратные компоненты.

    hwCompQuery = HasStereotype(IsStereotypeDerivedFrom("AutoProfile.HardwareComponent"))
    
    hwCompQuery = 
    
      HasStereotype with properties:
    
        AllowedParentConstraints: {[1×1 meta.class]}
                   SubConstraint: [1×1 systemcomposer.query.IsStereotypeDerivedFrom]
                  SkipValidation: 0
  2. Используйте запрос, чтобы создать представление.

    zcModel.createViewArchitecture("Hardware Component Review Status", ...
        hwCompQuery, ... % The query to use for the selection
        "AutoProfile.BaseComponent.ReviewStatus", ... % The stereotype property to qualify by
        "IncludeReferenceModels", true, ... % Include components in referenced models
        "Color", "purple");
    
    zcModel.openViews;

Пример 2: системное представление поставщика локатора FOB

Этот пример показывает горячий, чтобы создать представление свободной формы, которое вручную вытягивает компоненты от системы Локатора FOB и затем группирует их использующий существующие и новые компоненты представления в поставщиках.

  1. Создайте архитектуру представления.

    fobSupplierView = zcModel.createViewArchitecture("FOB Locator System Supplier Breakdown", ...
        "Color", "lightblue");
  2. Создайте новый компонент представления для поставщика Д и добавьте модуль Локатора FOB в него.

    supplierD = fobSupplierView.createViewComponent("Supplier D", fobSupplierView);
    supplierD.Architecture.addComponent("KeylessEntryArchitecture/FOB Locator System/FOB Locator Module", fobSupplierView);
    
  3. Создайте новый компонент представления для поставщика А.

    supplierA = fobSupplierView.createViewComponent("Supplier A", fobSupplierView);
  4. Добавьте каждый из получателей FOB, чтобы просмотреть компонент.

    FOBLocatorSystem = zcModel.lookup("Path", "KeylessEntryArchitecture/FOB Locator System");
    receiverCompPaths = zcModel.find( ...
        contains(systemcomposer.query.Property("Name"), "Receiver"), ... % Find all the components which contain the name "Receiver"
        FOBLocatorSystem.Architecture);
    
    for i = 1:numel(receiverCompPaths)
        % Add each of the components to supplier A
        supplierA.Architecture.addComponent(receiverCompPaths{i}, fobSupplierView);
    end
  5. Откройте редактор представлений.

    zcModel.openViews;

  6. Закройте модель.

    zcModel.close('Force');

Нахождение элементов в модели System Composer Используя запросы

В этом примере показано, как найти компоненты в системной модели компоновщика использующими запросами.

  1. Откройте скрипт MATLAB.

    open('scExampleModelFind')
  2. Рассмотрите 6 запросов в качестве примера.

Для просмотра документации необходимо авторизоваться на сайте