概要文件包含一组具有自定义属性的模型元素原型。原型可以适用于组件、端口、连接、接口和体系结构,也可以只适用于特定的元素类型,比如组件。当模型元素应用了原型时,您可以将属性值指定为其体系结构定义的一部分。除了允许您在体系结构模型中管理与系统规范相关的属性外,构造型和相关属性还有助于体系结构模型的分析。
每个概要文件包含一组原型,每个原型包含一组属性。
本例的目标是根据系统组成部分的成本计算系统的总成本。示例概要文件仅限于此目标。
加载概要文件以使原型可用于模型元素。
启动系统编写器。输入systemcomposer
在MATLAB命令行。
在建模选项卡上,选择进口然后从下拉菜单中选择进口.
浏览到示例文件夹。< matlabroot > \工具箱\ systemcomposer \例子
.
选择simpleProfile
.
从工具条中单击进口并选择编辑打开配置文件编辑器。
在概要文件中,观察这些原型。
刻板印象 | 应用程序 | 属性 |
---|---|---|
sysGeneral |
组件、端口、连接器 |
|
|
||
sysComponent |
组件 |
|
|
||
sysConnector |
连接器 |
|
|
||
|
导入概要文件可以使原型对其适用的元素可用。
sysGeneral
是否有一个适用于所有元素类型的通用构造型,允许添加泛型属性,如请注意
,项目成员可以使用它来跟踪元素的任何问题。
sysComponent
仅适用于组件,包括构成机器人系统总重量和成本规格的重量和成本等属性。
sysConnector
Stereotype应用于连接器,并包括每米长度定义的价格和重量属性(假设一个物理连接器,如电线)。在这个特殊的例子中,这些属性有助于计算设计的总重量和成本。
sysPort
原型应用于端口,不包括任何属性。
请注意
您可以将原型图标添加到所有组件级原型中。以下是你的选择:
通过应用来自已加载概要文件的原型,向模型元素添加自定义属性。这个过程使用模型ex_RobotArch
.
open_system (“ex_RobotArch”)
在建模选项卡上,选择进口然后从下拉菜单中选择进口.
选择simpleProfile
.
打开传感器
组件。
在建模选项卡上,选择应用的刻板印象.
在“应用构造型”对话框中应用构造型到列表中,选择所有的元素
.从范围列表中,选择这一层
.
在可用原型的列表中,选择simpleProfile.sysGeneral
.
点击应用并关闭窗口退出对话框。
选择全球定位系统(GPS)
组件。右键单击并选择应用原型.选择simpleProfile.sysComponent
刻板印象。
请注意
的sysComponent
原型用于管理物理属性和成本。
重复此操作。GyroData
而且DataProcessing
组件。
导航到模型的顶部。应用sysComponent
刻板印象传感器
而且轨迹规划
组件和顶层体系结构模型。右键单击顶层中的每个组件或空格,然后选择应用原型以确保simpleProfile.sysComponent
被选中。
应用sysConnector
类中的所有连接器都应用了原型传感器
层,轨迹规划
层,和顶层模型层。按住不放转变选择多个连接器。右键单击所选内容,单击应用原型,并选择sysConnector
刻板印象。
设置属性值以启用成本分析。遵循此示例全球定位系统(GPS)
模块。
在传感器
组件,选择全球定位系统(GPS)
组件。
打开属性检查器。中的下拉菜单设计部分,然后选择属性检查器.
扩大sysComponent
构造型以查看属性。
集unitPrice
来5
并按输入.
选择GPSData
端口连接器。检查长度
设置为0.05
而且unitPrice
来0.1
.
使用本表中的值完成模型。如果某个属性不在表中,您可以将其留空,因为它对分析没有影响。将属性检查器固定在编辑器上,使其在此操作期间永久可见。
层 | 元素 | 财产 | 价值 |
---|---|---|---|
顶层 | 编码器 连接器 |
长度 | 0.5 |
unitPrice | 0.1 | ||
SensorData 连接器 |
长度 | 0.6 | |
unitPrice | 0.2 | ||
MotionCommand 连接器 |
长度 | 0.5 | |
unitPrice | 0.2 | ||
传感器 组件 |
unitPrice | 5 | |
轨迹规划 组件 |
unitPrice | 500 | |
运动 组件 |
unitPrice | 750 | |
传感器层 | GyroData 组件 |
unitPrice | 50 |
DataProcessing 组件 |
unitPrice | 500 | |
全球定位系统(GPS) 组件 |
unitPrice | One hundred. | |
GPSData 连接器 |
长度 | 0.05 | |
unitPrice | 0.1 | ||
MotionData 连接器 |
长度 | 0.05 | |
unitPrice | 0.1 | ||
RawData 连接器 |
长度 | 0.05 | |
unitPrice | 0.1 |
属性已经设置好了ex_RobotArch_props.slx
.打开模型以执行分析。
open_system (“ex_RobotArch_props”)
分析机器人模型中所有组件的总成本。
在建模TAB,在的观点部分中,选择分析模型,然后从下拉列表中选择分析模型.
添加分析功能。2 .在“分析”功能框中输入功能名称ex_RobotArch_analysis
没有扩展,然后点击按钮。创建并保存一个MATLAB函数文件
ex_RobotArch_analysis.m
.
分析函数包括从模型元素中获取属性的构造,以模板形式给出。修改此模板以添加单个元素的成本,以获得其父体系结构的总成本。这个函数将一个模型元素的成本计算为它自己的成本和它所有子组件的成本之和。
函数变长度输入宗量ex_RobotArch_analysis(实例)如果instance.isComponent ()如果instance.hasValue (“sysComponent.unitPrice”sysComponent_unitPrice = instance.getValue(“sysComponent.unitPrice”);为Child = instance。组件如果child.hasValue (“sysComponent.unitPrice”comp_price = child.getValue(“sysComponent.unitPrice”);sysComponent_unitPrice = sysComponent_unitPrice + comp_price;结束结束为Child = instance。连接器如果child.hasValue (“sysConnector.unitPrice”unitPrice = child.getValue(“sysConnector.unitPrice”);长度= child.getValue(“sysConnector.length”);sysComponent_unitPrice = unitPrice*长度+ sysComponent_unitPrice;结束结束instance.setValue (“sysComponent.unitPrice”sysComponent_unitPrice)结束结束
返回到Instantiate Architecture Model屏幕并单击实例化.Analysis Viewer显示每个模型元素的属性。Analysis开始的默认值来自您在将原型附加到模型并编辑它们的值时输入的属性值。
在分析部分中,选择BottomUp
作为迭代方法并单击分析.
将每个元素的成本以自底向上的方式相加,得到系统的成本。结果被写入分析实例,并且在分析观众.
applyProfile
|applyStereotype
|getValue
|hasValue
|实例化
|迭代
|setProperty
|setValue