Рабочий процесс разработки базовых систем в System Composer™ включает создание системы архитектуры, определение требований, добавление метаданных, выполнение исследований и представление архитектуры посредством представлений. После выполнения этих шагов ваша разработка системы ближе к удовлетворению целям заинтересованной стороны и потребительским потребностям.
Можно также теперь начать проектировать фактические компоненты системы с помощью Simulink®, Stateflow®, и Simscape™. Можно полностью задать, протестировать и анализировать поведение компонента с помощью процесса модельно-ориентированного проектирования.
В этом примере вы выполните эти шаги на модели архитектуры манипулятора.
Откройте модель архитектуры манипулятора, который состоит из датчиков, приводов движения и алгоритма планирования. Можно использовать System Composer, чтобы просмотреть интерфейсы и управлять требованиями для этой модели.
Когда компонент не требует дальнейшего архитектурного разложения, можно включить симуляцию модели и сквозной рабочий процесс. Чтобы включить симуляцию модели, реализуйте поведения Simulink для компонентов. Можно сопоставить модель Simulink с компонентом или ссылкой на существующую модель Simulink.
Щелкните правой кнопкой по Motion
компонент и выбирает Create Simulink Behavior
. В качестве альтернативы перейдите к Modeling> Component> Create Simulink Behavior.
Из списка Type выберите Model Reference
. Предоставьте имени модели MotionSimulink
. Имя по умолчанию является именем компонента.
Новая модель Simulink с обеспеченным именем создана и соединена с компонентом в модели архитектуры.
Можно также соединиться с существующей моделью поведения Simulink от компонента System Composer, при условии, что компонент уже не соединяется с эталонной архитектурой. Щелкните правой кнопкой по компоненту и выберите Link to Model. Можно ввести или просмотреть имя модели Simulink.
Можно также добавить поведение Подсистемы Simulink в компонент. Новый компонент подсистемы является частью родительской модели архитектуры System Composer. Из списка Type выберите Subsystem
.
Компоненты подсистемы требуются, чтобы автор поведения компонента Simscape с физическими портами, связями и блоками.
Чтобы реализовать основанное на событии моделирование с машиной состояний, добавьте поведение диаграммы Stateflow в компонент. Диаграммы состояний состоят из конечного множества состояний с переходами между ними, чтобы получить режимы работы для компонента. Эта функциональность требует лицензии Stateflow.
Компонент System Composer со стереотипами, интерфейсами, ссылками требования, и портами, сохраняется, когда вы добавляете Stateflow Chart (Stateflow) поведение.
Щелкните правой кнопкой по Sensor
компонент и выбирает Create Stateflow Chart Behavior
. В качестве альтернативы перейдите к Modeling> Component> Create Stateflow Chart Behavior.
Дважды кликните Sensor
, который имеет значок Stateflow. В меню Modeling выберите Design Data, затем нажмите Symbols Pane, чтобы просмотреть символы Stateflow. Входной порт Encoder
появляется как входные данные в панели символов и выходном порту SensorData
появляется как выходные данные.
Выберите SensorData
выведите и просмотрите интерфейс в Property Inspector. Можно получить доступ к интерфейсу как сигнал шины Simulink.
Чтобы спроектировать программную архитектуру, задайте функциональный порядок выполнения, симулируйте, и сгенерируйте код, создайте программную архитектуру из компонента System Composer.
Переименуйте Trajectory Planning
компонент к TrajectoryPlanning
так, чтобы это было допустимое имя переменной C.
Щелкните правой кнопкой по TrajectoryPlanning
компонент и выбирает Create Software Architecture Model
, или, перейдите к Modeling> Component> Create Software Architecture Model.
Задайте имя программной архитектуры как TrajectorySoftware
. Нажмите OK.
Модель TrajectorySoftware.slx
программной архитектуры ссылается от
TrajectoryPlanning
компонент.
Дважды кликните TrajectoryPlanning
компонент, чтобы взаимодействовать с TrajectorySoftware
компонент программного обеспечения.
Чтобы представлять взаимодействие между структурными элементами архитектуры как последовательность обменов сообщениями, используйте диаграмму последовательности в галерее Architecture Views.
Наблюдайте модель архитектуры манипулятора, состоящую из компонентов, портов, связей и поведений. Результаты симуляции модели должны совпадать со взаимодействиями в рамках диаграмм последовательности.
Создайте новую диаграмму последовательности путем навигации к Modeling> Views> Architecture Views. Галерея Architecture Views открывается. Чтобы создать новую диаграмму последовательности, нажмите New> Sequence Diagram.
Новая диаграмма последовательности под названием SequenceDiagram1
создается в Браузере Представления, и вкладка Sequence Diagram становится активной. Под Element Properties переименуйте диаграмму последовательности RobotArmSequence
.
Выберите Component> Add Lifeline , чтобы добавить путь выживания. Новый путь выживания без имени создается и обозначается пунктирной линией.
Кликните по стрелке вниз и выберите Sensor
. Добавьте второй путь выживания под названием Motion
.
Выберите вертикальную пунктирную линию для Sensor
путь выживания. Перетащите к Motion
путь выживания. В поле To начните вводить Sensordata
и выберите SensorData
из выпадающего меню. Сообщение создается из SensorData
порт на Sensor
компонент к SensorData
порт на Motion
компонент.
Нажмите на сообщение, чтобы видеть, куда поместить условие сообщения. Введите триггерное условие сообщения в форму:
rising(SensorData.distance1-1)
Имя сигнала является элементом данных в интерфейсе данных. Сообщение будет распознано в событии пересечения нулем когда значение SensorData.distance1
повышения к 1.