概要文件包含一组具有自定义属性的模型元素原型。原型可以适用于组件、端口、连接、接口和架构,或者它只能适用于特定的元素类型,比如组件。当模型元素有一个应用于它的原型时,您可以指定属性值作为其架构定义的一部分。除了允许您在体系结构模型中管理与系统规范相关的属性之外,构造型和相关属性还有助于体系结构模型的分析。
每个概要文件包含一组原型,每个原型包含一组属性。
本例的目标是根据系统组成部分的成本计算系统的总成本。示例概要文件仅限于此目标。
加载一个概要文件,使原型对模型元素可用。
开始系统的作曲家。输入systemcomposer
在MATLAB命令行。
在建模选项卡上,选择进口然后从下拉菜单中选择进口.
浏览到examples文件夹。< matlabroot > \工具箱\ systemcomposer \例子
.
选择simpleProfile
.
从工具条中,单击进口并选择编辑打开概要文件编辑器。
在侧写中,观察这些刻板印象。
刻板印象 | 应用程序 | 属性 |
---|---|---|
sysGeneral |
组件、港口、连接器 |
|
|
||
sysComponent |
组件 |
|
|
||
sysConnector |
连接器 |
|
|
||
|
导入概要文件使原型对其适用的元素可用。
sysGeneral
是否有一个通用的构造型,适用于所有的元素类型,允许添加泛型属性,例如请注意
,项目成员可以使用它来跟踪元素的任何问题。
sysComponent
仅适用于组件,并包括重量和成本等属性,这些属性构成了机器人系统的总重量和成本规格。
sysConnector
Stereotype适用于连接器,并包括每米长度定义的价格和重量属性(假设一个物理连接器如电线)。在这个特定的例子中,这些属性有助于计算设计的总重量和成本。
sysPort
构造型应用于端口,不包括任何属性。
请注意
您可以向所有组件级构造型中添加构造型图标。以下是你的选择:
通过应用加载的概要文件中的原型,向模型元素添加自定义属性。这个过程使用了模型ex_RobotArch
.
open_system (“ex_RobotArch”)
在建模选项卡上,选择进口然后从下拉菜单中选择进口.
选择simpleProfile
.
打开传感器
组件。
在建模选项卡上,选择应用的刻板印象.
在“应用原型”对话框中,从应用构造型(s)列表中,选择所有的元素
.从范围列表中,选择这一层
.
在可用原型的列表中,选择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”)
分析机器人模型中所有部件的总成本。
在建模选项卡,在的观点部分中,选择分析模型,然后从下拉列表中选择分析模型.
增加分析功能。在“分析”功能框中输入函数名称ex_RobotArch_analysis
没有扩展,然后单击按钮。创建一个MATLAB函数文件,并使用名称保存ex_RobotArch_analysis.m
.
分析函数包括从模型元素(作为模板给出)获取属性的构造。修改此模板以添加单个元素的成本,以获得其父体系结构的总成本。该函数将一个模型元素的成本作为其自身成本及其所有子组件成本的总和来计算。
函数变长度输入宗量ex_RobotArch_analysis(实例)如果instance.isComponent ()如果instance.hasValue (“sysComponent.unitPrice”sysComponent_unitPrice = instance.getValue(“sysComponent.unitPrice”);为孩子=实例。组件如果child.hasValue (“sysComponent.unitPrice”) comp_price = child.getValue(“sysComponent.unitPrice”);sysComponent_unitPrice = sysComponent_unitPrice + comp_price;结束结束为孩子=实例。连接器如果child.hasValue (“sysConnector.unitPrice”) unitPrice = child.getValue(“sysConnector.unitPrice”);长度= child.getValue (“sysConnector.length”);sysComponent_unitPrice = unitPrice*length + sysComponent_unitPrice;结束结束instance.setValue (“sysComponent.unitPrice”sysComponent_unitPrice)结束结束
返回到Instantiate Architecture Model屏幕并单击实例化.Analysis Viewer显示了每个模型元素的属性。分析开始的默认值取自您在将原型附加到模型并编辑它们的值时输入的属性值。
在分析部分中,选择BottomUp
作为迭代方法并点击分析.
以自下而上的方式添加每个元素的成本,得出系统的成本。结果被写入分析实例,并且在分析观众.
applyProfile
|applyStereotype
|getValue
|hasValue
|实例化
|迭代
|setProperty
|setValue