基于SysML v2的逻辑架构建模

摘要

SysML v2作为OMG官方提出的一种新型系统工程建模语言,在功能和模型概念等方面与SysML v1存在较大的差别。本文基于SysML v2语言,以“柴油发动机”为案例,实现逻辑架构的建模,从而展示其在系统设计和分析中的有效性。通过实际应用中SysML v2与SysML v1建模方式的对比,阐述两者的不同之处以及使用SysML v2的优势。


一、基于Part Usage的逻辑架构设计   

1.1 建模方法

SysML v2不再沿用SysML v1中的Block、Part Property和Association等概念,而是使用Part Usage和Part Definition等新的建模元素。在SysML v2中,Part Definition用于定义一组具有相同特征的Part Usage模板,同时也可被视为一组具有通用属性和行为的Part Usage类型,其属性和行为可被具体的Part Usage所继承,方便于设计人员使用各个Part Usage进行系统工程建模。

在系统间的结构关系上,Part Usage之间可以通过Composite Feature Membership和Non Composite Feature Membership分别建立组合和聚合关系。聚合关系表示父Part Usage对子Part Usage进行引用,组合关系表示子Part Usage是父Part Usage必不可少的组成部分,设计人员可以使用这两种关系建立Part Usage之间的分解关系。此外,Part Usage也可以使用一个子Item Usage来表示其拥有的组成结构。

设计人员在逻辑架构中可用Part Usage建立主系统,通过Composite Feature Membership分解获得多个由Part Usage表示的子系统;通过Non Composite Feature Membership引用多个由Part Usage表示的外部子系统;子系统可以通过Composite Feature Membership分解产生由Item Usage表示的子结构。

对于系统的性能度量指标(MOP),SysML v2不再沿用SysML v1中Value Property的概念,而是引入Attribute Usage元素来体现属性特征。在建模过程中,Part Definition下能建立多个Attribute Usage,每个Attribute Usage代表一个属性信息。Part Usage将该Part Definition设定为类型后则会将其所有的属性进行继承,同时还可以根据需求自行修改该部分的属性内容而不会影响其对应的Part Definition。因此,该建模方式极大地减少了模型之间的耦合性。

1.2 案例介绍

在“柴油发动机”中,首先定义主系统的Part Definition为“柴油发动机系统”,通过Attribute Usage来设置属性信息,并将Part Usage设置为“柴油发动机”类型。根据具体情况,随后通过Feature Membership关系对Part Usage进行分解而获得若干个子系统(起动子系统、润滑子系统、冷却子系统、燃油子系统、进排气子系统、做功与传动子系统)。同时,根据实际子系统情况,设置通用Part Definition为“分系统定义”,再由各个子系统之间的差异来设定各个不同的Part Definition。柴油发动机结构定义案例如图1所示。

图1 柴油发动机结构定义图

1.3 SysML v2相较于v1的优势

(1) 模型表达更精简:Part能够直接进行分解,且分解关系是直接从Part到Part,从而呈现出十分清晰的上下级关系和更为精简的模型整体,易于设计人员理解。

(2) 关系定义更精简:采用Feature Membership统一表征以往的组合、聚合、引用等关系以及Part到Part的分解,模型整体的组织结构更清晰,可读性更强。

(3) 不同层级架构的映射关系更清晰:应用Part和Part Def能很好地表征在正向设计建模的过程中,由粗到细的不同层级架构模型在映射关系上清晰度。

二、基于Connection Usage的连接关系设计

2.1 建模方法

在SysML v2中,Connection Usage用来建立系统中不同Usage之间的连接关系,它定义了多个Usage之间存在的数据流动的结构,以支持复杂的系统交互。例如,在分系统之间建立一个Connection Usage,用以表示分系统之间的数据交互情况,并指定对应的Connection Definition。与上述的Part Definition类似,Connection Definition下可创建多个Attribute Usage用以表示连接属性,而Connection Usage中对该属性值进行修改也同样不会影响到原有的Connection Definition。

此外,Connection Usage允许两个以上的末端存在,这意味着在SysML v2中只需要通过一个Connection Usage就能确立多个模型之间的数据交互情况。

2.2 案例介绍

在本案例中,三个分系统(起动子系统、润滑子系统、冷却子系统)之间均存在数据交互。首先,创建Connection Definition为“连接定义”,并为其设置Attribute Usage为“控制信号”。之后,创建Connection Usage为“控制信号通道”,并指定Connection Definition为“连接定义”。最后,设置Connection Usage“控制信号通道”的末端为三个子系统。数据传输关系案例如图2所示。

图2 柴油发动机子系统连接关系

2.3 SysML v2相较于v1的优势

(1) 表达能力更强:Connection Usage除了传统的连接两端元素的功能之外,也具备了定义其中传递的物质和数据结构的能力。通过Attribute Usage,可以定义其中传递的物质或者数据的关键参数,从而可详实表达其流动的对象。

(2) 连接能力更灵活:Connection Usage具备多端连接的能力。在SysML v2的术语中,该能力被称为n-ary connection,意味着可以同时连接多个Usage对象。这种具有共性的连接使用一个Connection Usage进行表达的方式,有助于建模人员简化建模步骤、提高建模效率。

三、结构模型库构建      

3.1 建模方法

基于Definition和Usage的使用范式,可以在系统建模工具中开发定义模型库的功能。设计人员可将不同系统实例中的共性特征抽取出来并抽象化为一个新的Part Definition元素,并将该元素添加到模型库中。例如,将上述的名为”柴油发动机系统”的Part Definition元素添加到模型库中。

在进行新项目的建模时,可以直接将结构模型库中的Part Definition作为新建Part Usage的定义对象,也可以利用模型库中已有的Part Definition元素,特化出一个新的Part Definition元素并基于此建模。

以上建立的Part Usage元素可以继承其关联的Part Definition元素的特征,但不会对Definition元素产生影响。如果希望更改继承下来的某种特征,可以利用ReDefinition关系对该特征进行重定义。

3.2 案例介绍

在本案例中,Part Usage“柴油发动机”可以利用结构模型库中的“柴油发动机系统”作为其定义,前者的属性会被后者的属性所继承。例如,当需要更改“质量”属性的单位时,可创建Redefinition进行重定义,从而保证此更改不会影响模型库中的元素。

图3 定义库案例 

3.3 SysML v2相较于v1的优势

(1) 模板内容划分更清晰:模型库承载的元素分类更加明确,即将Definition作为模型库的承载对象,从而避免模型库定义混乱、结构不清等弊端。

(2) 模型库和建模元素的耦合更松散:使用Definition元素和Usage元素的范式设计,可以为模型库和工程项目中的元素耦合松绑。建模元素的变更不会影响模型库中元素的定义,彻底划分了模型库元素和工程项目元素之间的界限。然而,模型库Definition元素的更改仍然会影响到所有以此元素为定义的Usage元素。

-END-

*本文为原创,最终解释权归杭州华望系统科技所有。未经授权,严禁复制或转载。

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐