Составьте архитектуру визуально

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

Создайте модель Архитектуры

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

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

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

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

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

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

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

Архитектурная модель включает архитектуру верхнего уровня, которая содержит композицию системы. Эта архитектура верхнего уровня также позволяет определять интерфейсы этой системы с другими системами. Используйте один из следующих методов для создания модели архитектуры:

  • В командной строке введите

    systemcomposer

    Выберите Architecture Model.

    Simulink new selection menu specifying a system composer architecture model create model selection.

  • Из Simulink® модель или модель архитектуры System Composer. На вкладке Simulation выберите New, modelа затем Architecture.

    New System Composer model.

  • В MATLAB® командная строка, введите:

    archModel = new_system('ModelName','Architecture');
    open_system(archModel)

    где ModelName - имя новой модели.

Сохраните модель архитектуры. На вкладке Simulation выберите Save All. Модель архитектуры сохранена как .slx файл.

Архитектурная модель включает архитектуру верхнего уровня, которая содержит композицию системы. Эта архитектура верхнего уровня также позволяет определять интерфейсы этой системы с другими системами. Композиция представляет структурированный список деталей - иерархию компонентов с их интерфейсами и соединениями. Отредактируйте композицию в редакторе композиций.

System Composer display on Simulink with labels for the Toolstrip on top, the Model browser on the left, the Element palette directly to the left of the model Composition in the center, and the Interface Editor at the bottom.

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

Компоненты

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

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

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

Добавление компонентов

Используйте один из следующих методов для добавления компонентов к архитектуре:

  • Нарисуйте компонент - В холсте щелкните левой кнопкой мыши и перетащите мышь, чтобы создать прямоугольник. Отпустите кнопку мыши, чтобы увидеть контур компонента. Выберите опцию Component блока для фиксации.

  • Создать один компонент из палитры -

    Clicking and dragging a component and then committing it.

  • Создать несколько компонентов из палитры -

    Committing a second component.

Назовите компонент

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

A component with the name Sensor.

The Sensor component after selecting the name to edit it.

Перемещение компонента

Переместить компонент можно просто нажав и перетащив его. Голубые инструкции могут помочь выровнять компонент с другими компонентами.

Click and drag a component named Component1 to move it and it lines up with other components.

Изменение размера компонента

Измените размер компонента путем перетаскивания углов.

  1. Наведите указатель мыши на угол, чтобы увидеть двойную стрелу.

    Pointer is on the bottom right of Component1.

  2. Щелкните влево и перетащите мышью, удерживая нажатой кнопку мыши вниз. Если необходимо изменить размер компонента пропорционально, также удерживайте кнопку Shift.

    Clicking and dragging the bottom right of Component1 to resize it.

  3. Отпустите кнопку мыши, когда компонент достигнет требуемого размера.

Удаление компонента

Щелкните компонент и нажмите Delete, чтобы удалить его. Чтобы удалить несколько компонентов, выделите их, удерживая нажатой клавишу Shift вниз, затем нажмите Delete или щелкните правой кнопкой мыши и выберите Delete из контекстного меню.

Порты

port является узлом компонента или архитектуры, который представляет точку взаимодействия с его окружением. Порт разрешает поток информации к другим компонентам или системам и из них.

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

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

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

Для примера датчик может иметь порты данных для связи с двигателем и контроллером. Его вход порт забирает данные от двигателя, а выход порт доставляет данные контроллеру. Можно задать свойства данных путем определения интерфейса, как описано в Define Interfaces.

Добавление порта компонента

Представление связи между компонентами путем определения портов направленного интерфейса. Можно организовать схему путем позиционирования портов на любом ребре компонента в любом положении.

  1. Пауза на стороне компонента. Появляются знак + и контур порта.

    Adding a component port to the right side of the Sensor component. The port displays as a light blue outline until you commit to it.

  2. Щелкните контур порта. Компонент затенен синим цветом, и появляется стрела к порту.

    The port before committing it.

  3. Щелкните стрелой, чтобы зафиксировать порт. Вы также можете назвать порт в этой точке.

    The port named OutBus after committing the port.

Порт выхода отображается со значком, а порт входа со значком. По умолчанию порт, созданный в верхней или левый край части компонента, является входом портом, а порт, созданный в нижнем или правом ребре, является выходом портом. Чтобы обозначить направление порта при создании, после щелчка по ребру, остановитесь над контуром со стрелой, чтобы увидеть опции направления. Выберите Input или Output перед фиксацией порта.

Direction options for a port on a component.

После создания можно переместить любой порт на любое ребро компонента.

Добавление порта архитектуры

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

Model with a connection between Sensor and Component1 and an InBus on the Motor component.

Назовите порт

Каждый порт создается с именем. Чтобы изменить имя, щелкните его и измените.

A selected port name ready to be edited.

Порты компонента должны иметь уникальные имена.

Перемещение порта

Можно переместить порт на любую сторону компонента. Выберите порт и используйте клавиши со стрелами.

СтрелаИсходный порт РебраДвижение порта
ВверхСлева или справаЕсли ниже других портов на том же ребре, двигайтесь вверх, если нет, перемещайтесь к верхнему краю
Сверху или снизуНикаких действий
ПравильноСверху или снизуЕсли слева от других портов на том же ребре, переместите вправо, если нет, переместите на правое ребро
Слева или справаНикаких действий
ВнизСлева или справаЕсли над другими портами на том же ребре, переместите вниз, если нет, переместите к нижнему ребру
Сверху или снизуНикаких действий
ЛевыйСверху или снизуЕсли справа от других портов на том же ребре, переместите влево, если нет, переместите на левый край
Слева или справаНикаких действий

Интервалы между портами на одной стороне автоматические. На одном и том же ребре может быть комбинация входа и выходных портов.

Удаление порта

Удалите порт, выбрав его и нажав кнопку Delete.

Связи

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

Связи являются визуальными представлениями потока данных от порта выхода к порту входа. Для примера соединение от двигателя к датчику несет позиционную информацию.

Соедините существующие порты

Соедините два порта путем перетаскивания линии:

  1. Щелкните один из портов.

  2. Удерживайте кнопку мыши вниз при перетаскивании линии к другому порту.

  3. Отпустите кнопку мыши в порту назначения. Черная линия указывает, что подключение завершено. Если соединение является неполным, появляется красная пунктирная линия.

The process of connecting two ports.

Можно сделать эти шаги в обоих направлениях - входной порт к выходному порту или выходной порт к входному порту. Вы не можете соединить порты с тем же направлением.

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

The Motor component is connected to the architecture.

Соедините компоненты без портов

Чтобы быстро создать порты и соединения одновременно, перетащите линию от одного ребра компонента к другому. Направление этого соединения зависит от того, какие ребра компонентов используются - левый и верхние края считаются входами, правые и нижние ребра считаются выходами. Можно также выполнить эту операцию от существующего порта до ребра компонента.

Creating a port upon connecting a port to a component without ports.

Можно создать соединение между ребром, которое принято как вход только с ребром, которое принято как выход. Для примера вы не можете соединить верхний край, который принят как вход, с другим верхним краем, если один из них уже не имеет выхода порта.

Соединения ветвей

Соедините выход порт с несколькими портами входа путем ветвления соединения. Для перехода щелкните правой кнопкой мыши существующее соединение и перетащите мышью порт входа, удерживая кнопку мыши вниз. Отпустите кнопку, чтобы зафиксировать новое подключение.

Right-clicking on a connection to branch it.

Создание новых компонентов через соединения

Если вы запускаете соединение с выходом порта и отпускаете кнопку мыши без порта назначения, то предварительно появляется новый компонент. Примите новый компонент, щелкнув по нему мышью.

Attempt to make a new connection and a suggested component appears in light blue to be accepted by clicking on it.

Импорт архитектур

Путем объединения программных API System Composer с поддержкой MATLAB для загрузки и анализа многих различных форматов файлов и баз данных, можно импортировать описания внешней архитектуры в System Composer. Для получения дополнительной информации см. Импорт и экспорт архитектурных моделей.

Можно заранее настроить профиль со стереотипами, чтобы захватить свойства архитектуры, представленные в таких описаниях. Для получения дополнительной информации смотрите Задать профили и стереотипы.

Впоследствии можно использовать программирование MATLAB для создания и настройки различных архитектурных элементов через набор программных API. Для получения дополнительной информации смотрите Создать архитектурную модель из командной строки.

См. также

Функции

Блоки

Похожие темы