Со свойствами, заданными на элементах модели, можно использовать MATLAB® выполнить анализ и вычислить общую стоимость на все элементы в рамках проекта. Можно затем создать дополнительные выведенные требования для разработчиков отдельных компонентов в системе, таких как Trajectory Planning
или Sensors
.
Выполните статические анализы на основе свойств элемента выполнить управляемые данными торговые исследования и проверить системные требования. Рассмотрите модель архитектуры робота, где общая стоимость является фактором. Для этого примера вы будете использовать мобильную модель архитектуры робота со свойствами выполнить статический анализ.
Этот пример показывает, что мобильная модель архитектуры робота со стереотипами применилась к компонентам и заданным свойствам.
Анализируйте общую стоимость на все компоненты в модели робота. Эта процедура использует модель ex_RobotArch_props.slx
.
Перейдите к Modeling> Views> Analysis Model, чтобы открыть Инстанцировать диалоговое окно Модели Архитектуры.
Добавьте аналитическую функцию. В поле Analysis function введите имя функции ex_RobotArch_analysis
без расширения, и затем нажимают кнопку. Файл функции MATLAB создается и сохранен с именем ex_RobotArch_analysis.m
.
Аналитическая функция включает построения, которые получают свойства от элементов модели, данных как шаблон. Измените этот шаблон, чтобы добавить стоимость отдельных элементов и получить общую стоимость на их родительскую архитектуру. Эта функция вычисляет стоимость для одного элемента модели как общее количество его собственной стоимости и стоимости всех его дочерних компонентов. Скопируйте и вставьте функцию ниже в вашу аналитическую функцию.
function ex_RobotArch_analysis(instance,varargin) if instance.isComponent() if instance.hasValue("sysComponent.unitPrice") % Check if price is defined sysComponent_unitPrice = instance.getValue("sysComponent.unitPrice"); for child = instance.Components % Iterate through all components if child.hasValue("sysComponent.unitPrice") comp_price = child.getValue("sysComponent.unitPrice"); sysComponent_unitPrice = sysComponent_unitPrice + comp_price; end end for child = instance.Connectors % Connectors are priced by length if child.hasValue("sysConnector.unitPrice") unitPrice = child.getValue("sysConnector.unitPrice"); length = child.getValue("sysConnector.length"); sysComponent_unitPrice = unitPrice*length + sysComponent_unitPrice; end end instance.setValue("sysComponent.unitPrice",sysComponent_unitPrice) % Set totals end end
Возвратитесь к экрану Instantiate Architecture Model и нажмите Instantiate. Аналитическое Средство просмотра открывает и показывает свойства каждого элемента модели. Значения по умолчанию для запуска анализа взяты из значений свойств, которые вы ввели, когда вы присоединили стереотип к модели и отредактировали их значения.
В разделе Analysis выберите BottomUp
как метод итерации, затем нажмите Analyze.
Стоимость каждого элемента добавляется вверх дном, чтобы найти стоимость системы. Результат записан в аналитический экземпляр и отображается в Аналитическом Средстве просмотра.
Общая стоимость подсвечена в желтом как вычисленное значение на верхней строке, представляющей ex_RobotArch_props
архитектура.