敬告广大MBSE建模设计师及同行:
经过杭州华望系统科技有限公司研发团队的不懈努力与攻关,国内首个基于SysML v2语言的系统建模与仿真平台M-Design v2(V 0.0.0.1-alpha),现已完成相关的设计和研发工作,即将对同行开放邀测试用。
M-Design v2在设计开发过程中一直秉持高规格、高质量的要求,全面支持最新的SysML v2标准,在产品设计、关键特性、底层算法等诸多方面与上一代平台相比进行了充分的迭代优化,实现了建模效率与模型分析效率的大幅度提升。
M-Design v2支持需求视图、结构视图、活动视图、三维视图、矩阵视图等多个SysML v2标准下的视图,也支持基于语义模型库的模型扩展、文本语言的展示与编辑以及模型的参数化建模,能较好满足广大MBSE设计师的业务需要。
以下对M-Design v2 平台的优势功能进行详细的介绍:
一、基于语义模型库的系统建模能力
语义模型库是SysML v2语言的一个重要组成部分,它由一系列库模型组合而成并提供一套标准的语义定义,供用户在建模过程中创建具有不同含义的模型对象。
M-Design v2提供了基于语义模型库的系统建模能力,设计师不仅能在M-Design v2上创建标准化的SysML v2模型,还可以针对不同领域的业务需要创建对应的语义模型库,进而实现模型的语义拓展。
M-Design v2可依据模型的功能从而提供基于不同视图的建模能力,各个视图将在系统工程建模的全流程中发挥不同的作用且具有追溯关系。
1.1 Requirement View建模能力
Requirement View用于向利益相关者传达系统需求所涉及的各个方面的信息。M-Design v2中Requirement View支持SysML v2的需求建模功能,主要包括:
1、支持创建Requirement Definition、Requirement Usage、Allocation Usage、Derivation、Concern Definition、Concern Usage等SysML v2的全量需求模型元素;
2、支持需求间的依赖(Dependency)关系,并能有效表达元素之间的抽象关系;
3、支持创建拓展的需求语义模型库模型,如需求验证、需求派生、需求满足、需求追踪,需求复制、需求精化、需求利益相关者、执行者等;
4、支持设置需求主题(Subject),确保需求定义总是具有一个满足的对象(Subject);
5、支持对需求主题进行约束,以便于在需求的假定约束的形式化表达式中可使用主题定义的特征;
6、支持SysML v2规范的需求建模方式,包括Requirement Definition和Requirement Usage建模方式;
7、支持SysML v2需求分解以便于对需求进行细化;
8、支持多层级嵌套的需求图元的展示方式。
1.2 Definition and Usage View建模能力
Definition and Usage View主要用于对系统的结构组成和组成元素间的关系进行描述以及对系统验证与分析的案例进行构建。M-Design v2中该视图支持SysML v2的结构建模功能,主要包括:
1、支持创建Part Definition、Part Usage、Attribute Definition、Attribute Usage等SysML v2的结构化模型元素;
2、支持创建拓展的结构语义模型库模型,如项目定义特征、项目使用特征等;
3、支持SysML v2的部件组合、部件聚合、部件分解等功能;
4、支持Attribute Definition、Attribute Usage等属性模型默认值的快捷设置;
5、支持SysML v2规范的结构建模方式,即Part Definition和Part Usage建模方式;
6、支持在部件中执行(perform)动作,同时也可以展现(exhibit)状态;
7、支持在结构化模型图元中直接显示其内部的结构视图。
此外,M-Design v2中Definition and Usage View同样也支持SysML v2的分析验证建模功能,主要包括:
1、支持创建VerificationCase Definition、VerificationCase Usage等SysML v2的验证模型元素;
2、支持创建AnalysisCase Definition、AnalysisCase Usage等SysML v2的分析模型元素;
3、支持创建拓展的分析与验证语义模型库模型,如案例执行者定义、案例使用执行者等;
4、支持SysML v2规范的分析建模方式,即AnalysisCase Definition和AnalysisCase Usage方式;
5、支持SysML v2规范的验证建模方式,即VerificationCase Definition和Verification Case Usage方式;
6、支持SysML v2规范的分析与验证执行步骤,包括数据收集、数据分析、结果评估;
7、支持在用例模型图元上直接显示其分析与验证的活动过程,保证用例分析过程的完整性。
1.3 Interconnection View建模能力
Interconnection View主要用于描述指定的单个部件的内部结构。M-Design v2中该视图具有支持快速创建部件内部结构的功能,主要包括:
1、支持创建Port Definition、Port Usage等SysML v2的端口模型元素;
2、支持创建Item Definition、Item Usage等SysML v2的条目模型元素;
3、支持创建共轭端口、代理端口、流端口等SysML v2的功能性端口模型元素;
4、支持用于表示两个端口之间物质、能量或信息传递的项流机制;
5、支持类型和特征间的特征从属关系;
6、支持特征间的共轭、互斥、合并、交叉和差异化等关系;
7、支持SysML v2规范的数据连接、数据交互方式;
8、支持便捷式的值模型定义、数据类型定义。
1.4 State Transition View建模能力
State Transition View描述了一个对象在其生命周期内所经历的各种状态,以及引起对象状态变化的原因。M-Design v2中该视图支持SysML v2对象的状态定义及状态转移的功能,主要包括:
1、支持创建State Usage、State Definition、ExhibitState Usage、Transition Usage等SysML v2的状态行为模型元素;
2、支持SysML v2规范的状态转移建模方式,即State Definition和State Usage建模方式;
3、支持状态分解以及创建状态使用的层级结构;
4、支持SysML v2中状态间的引用、特化、子集构造和重定义,具备在特定上下文中修改状态层级结构的灵活性;
5、支持通过转换使用(Transition Usage)进行状态转换;
6、支持并行状态(Parallel state):并行状态的子状态是并发执行的,该状态下的子状态之间不允许存在转换。相反,如果一个非并行状态存在子状态,则动作完成后,在包含该状态的整个生命周期中的任意时间内只能正好有一个子状态是活动的。
7、支持在状态模型图元上显示其内部状态转移的视图,从而提高层次化的状态转移视图的可读性。
1.5 Action Flow View建模能力
Action Flow View是一种专门用于承载行为图形的视图,以展示系统内不同动作之间的联系。M-Design v2中该视图支持SysML v2的层次化行为建模功能,主要包括:
1、支持创建Action Usage、Action Definition、Item Usage、AcceptAction Usage、IfAction Usage、SendAction Usage、PerformAction Usage、Start Node、Join Node、Fork Node、Done Node等SysML v2的活动行为模型元素;
2、 支持SysML v2规范的行为建模方式,即Action Definition和Action Usage建模方式;
3、支持动作分解以及创建SysML v2的动作树;
4、支持SysML v2中动作间的引用、特化、子集构造和重定义,为修改Action Usage的动作树提供了更大的灵活性以方便于适应不同的上下文;
5、支持快速设置守卫、转移步骤等上下文属;
6、支持通过控制节点从而控制动作使用的执行顺序:
7、支持动作之间的绑定和流;
8、支持用于改变目标动作引用特征的赋值动作;
9、支持在动作模型图元上显示其内部活动视图以提高层次化的行为建模过程的可读性。
1.6 Package View建模能力
Package View通常用于组织包之间的关联和结构。M-Design v2中该视图支持SysML v2的层次化的包定义和结构组织功能,主要包括:
1、支持创建SysML v2 的Package、Library Package、Element Filter Membership模型元素;
2、支持层次化的包结构组织;
3、支持通过条件表达式对包进行过滤和筛选;
4、支持SysML v2 的包引入(Package Import)功能,允许从其他包中引入所有或特定的元素到当前的命名空间;
5、支持修改SysML v2 包的可见性和访问控制;
6、支持创建SysML v2 包间的依赖关系,有助于理解系统的架构和技术依赖性;
7、支持在包模型图元中显示一般视图,以便于查看包内部的模型结构。
二、与模型双向联动的代码生成与编辑
SysML v2在原有的图形交互功能之外引入了文本语言这一全新的特性,通过形式化的文本语言能够将模型中的信息进行清晰的表达,该特性的加入使得用户拥有更多的机会和条件完成与模型相关的操作,实现对模型更为精确的定性与定量描述。M-Design v2实现了对文本语言功能的支持,拥有统一环境下的模型驱动代码生成、基于文本解析的模型代码双向联动、嵌入式代码集成与多功能统一等多个关键能力。
2.1 模型驱动的代码生成能力
SysML v2的文本代码具有复杂性、唯一性、可追溯性、一致性等优越特性。M-Design v2基于EBNF范式生成符合官方规范的SysMLv2文本代码,支持管理模型元素之间的依赖、实现、泛化等关系,从而确保模型具有可追溯性。此外,支持定义和管理追溯链以确保需求、设计和实现之间的关联性与一致性。
1、支持层级描述:通过大括号将子元素囊括,否则直接通过“ ; ”标识符结束;
2、支持类型描述:所有模型文本数据都会以一个关键字开头,例如“部件”的关键字“part”,“包”的关键字“package”;
3、支持泛化描述:所有模型都会有一条指向模型库数据的泛化关系,例如“部件”会有一条指向模型库中“parts”的泛化关系。在SysMLv2中泛化关系通过subsetting进行描述,文本数据中则通过subsets描述泛化对象;
4、支持属性描述:模型的局部属性信息也会出现在文本数据中,例如端口的方向(Direction)属性在端口文本的最初位置进行描述,又如“in part 光线”描述的是光线端口的方向属性为“in”。
2.2 模型与代码的双向联动能力
M-Design v2具备模型与文本的双向联动能力,可实现基于多范式的高性能要求、数据一致要求、符合规范要求、约束要求、精准追溯要求等基本要求。
1、高性能要求:对于体积大、模型复杂的项目,实现毫秒级的数据同步;
2、数据一致要求:实现模型树、视图、文本三者之间的属性一致与结构一致;
3、符合规范要求:基于EBNF范式解析SysMLv2规范,实现模型到文本的准确映射;
4、约束要求:根据SysMLv2规范以确定属性依赖关系和限定模型构建边界;
5、精准追溯要求:建立底层追溯数据库,通过存储模型和代码之间的追溯关系支持查询和导航。
2.3 代码的应用价值
基于SysMLv2文本代码的规范,并结合M-Design v1使用中遇到的痛点和不足,M-Design v2拓展了文本语言的相关功能,可实现便捷式的协同交付与模型构建以及多学科混合式建模等诸多功能:
1、支持统一文本的集成与交付:利用文本语言作为交付格式,提供文本的集成功能与模型数据的统一格式;
2、支持表达式的模型推导:通过解析表达式的数据,支持变量数据推导、模型关系推导、模型维度推导;
3、支持混合式建模:无需切换模型与代码的表现形式即可实现视图与画布之间的交替建模。
三、模型驱动的计算能力
3.1 内联表达式的支持
M-Design v2引入了革新性的内联表达式支持模式,使得设计师能够直接在系统模型中嵌入数学公式、逻辑条件等各种形式的计算规则。该功能极大增强了M-Design v2的参数化建模能力,设计师无需将计算逻辑与系统模型进行分离,可在同一个环境中定义和应用计算规则。
例如,在进行滑翔炸弹的成本计算时,设计师直接在“断言约束”中输入成本核算公式,总成本由各子系统的成本构成。当其中一个成本进行更改时,系统可自动计算并展示新的总成本。相较于M-Design v1需要进行参数仿真才能完成上述功能,M-Design v2可方便地使设计师快速得到计算结果。
此外,设计师同样可以利用模块化引用的功能,将型号设计过程中已建好的表达式进行模版化,实现一次定义表达式可在多个科室、多个型号中重复使用,不仅能提高设计的效率,也能保证在不同产品型号设计中的逻辑一致性,有利于大型复杂项目的成果共享。
3.2 强大的算数和逻辑运算能力
SysML v2提供了内置的算数和逻辑运算能力,可精确描述系统的动态行为和参数之间的逻辑关系,包括算数运算、矩阵运算、三角运算、集合运算、逻辑运算以及逻辑控制。SysML v2提供的上述能力意味着设计师可利用其模拟物理现象、控制算法、决策过程等场景。
例如,在设计滑翔炸弹时,可以定义初始速度、高度、角度、空气动力学系数等滑翔炸弹的各种关键参数,可以通过逻辑运算公式模拟滑翔炸弹在不同飞行状况和环境下翼面应该调整的角度以及模拟滑翔炸弹在飞行过程中系统状态的变化情况。
3.3 参数驱动的设计优化
参数驱动的设计优化(Parameter-Drived Design Optimization, PDDO)是一种基于参数化建模和计算的方法,它利用数学模型和算法工具,允许设计师快速迭代并评估多种设计方案从而找到最优解。
通过M-Design v2提供的参数化表示工具,设计师可以定义一系列可变参数并利用优化算法(如梯度下降法、帕累托前沿分析等)进行参数的优化和调整。
例如,对上述滑翔炸弹的设计流程进行全面优化。首先,设计师识别翼展和投放高度等影响射程的关键参数,建立详细的空气动力学和结构力学模型,并进行广泛的敏感性分析。随后,应用响应面方法构建高效的近似模型,采用多目标优化算法探索多种可能的设计方案,最终确定一组可在射程、重量和精度之间取得良好平衡的参数组合。通过一系列严格的实验验证,证明优化迭代后的设计显著提升了滑翔炸弹的综合性能。
四、案例介绍
滑翔炸弹,也称为滑翔制导炸弹或增程制导武器,是一种结合传统航空炸弹和滑翔技术的精确制导武器。通过搭载在飞机上,由飞机投放后利用其自身的空气动力学设计滑翔至目标,从而实现远距离攻击。这类武器能够显著增加打击范围,同时减少载机暴露于敌方防空火力的风险。以滑翔炸弹为例,展示M-Design v2的建模流程:
4.1 需求分析
M-Design v2 的需求建模流程如图 9所示。滑翔炸弹的飞行需求为“描述滑翔炸弹飞行方式及控制方法”,并根据具体情况进行分解需求(制导系统、通信接口、引爆机制、材料耐久性、无动力滑翔等)。
4.2 结构化建模
定义Part Definition为滑翔炸弹(如图 10所示)。根据具体情况将滑翔炸弹进行分解而获得若干个子结构(弹体、导引头、折叠翼、制导尾仓)。
4.3 内部结构设计
如图11所示为引导头的内部设计,包含一个光学子系统和一个探测器,而光学子系统则由分光镜、反射镜、透视镜组成。导引头的内部结构中存在许多物质的传输。例如,在引导头和分光镜上依次拖动一个Port Usage,使用连接器连接两个Port Usage,同时将其交互特征指定为外部光线,则外部光线可以在导引头与分光镜之间进行传输。
4.4 行为建模
对滑翔炸弹的数据传输状态、稳定飞行活动等行为进行建模(如图12所示)。滑翔炸弹的数据传输过程以Start Node为起点、Done Node为终点,中间状态包括等待、存储数据、暂停传输、读取数据、解密数据、异常处理等。每一个状态必须在状态激活后才可执行。Action Flow View中定义滑翔炸弹的稳定飞行活动(如图13所示),飞行过程以Start Node为起点、Done Node为终点。整个活动经历的动作包括保持稳定飞行、舵面位置更新、判断舵面零位、调整舵面、调整弹位过载、展开折叠翼,其中含有两个控制节点,可通过守卫判断是否进入下一个动作。
五、结语
华望系统科技始终坚持自主研发,聚焦MBSE工业软件的开发及应用,以行业应用需求为指引,不断在工程实践中对产品进行迭代与优化,努力成为国产MBSE软件开发的佼佼者,为国家战略领域的高端制造提供优异的国产替代方案。我们诚挚地欢迎广大同行积极参与M-Design v2 平台的邀测试用,您的宝贵意见是华望进步的动力之源。
END
*本文为原创,最终解释权归杭州华望系统科技所有。未经授权,严禁复制或转载。
*关注【杭州华望MBSE】将推送更多精彩有趣的文章,期待与你同行!