基于模型的卫星系统功能架构设计综述

2019-07-13 09:39张贺魏强陈余军林骁雄
科技创新导报 2019年8期

张贺 魏强 陈余军 林骁雄

摘 要:本文首先论述了功能架构的必要性,然后对功能架构的建模和分析过程进行了总结。通过对MBSE 方法论、功能建模语言和功能建模工具的分析,确定了卫星各级系统功能架构设计流程,探讨了基于模型的卫星系统功能架构实现途径。

关键词:功能架构 基于模型的系统工程 流程设计 卫星系统

中图分类号:N945 文献标识码:A 文章编号:1674-098X(2019)03(b)-0015-05

Abstract:In this paper, the necessity of functional architecture is discussed,and the process of modeling and analysis is summarized. After the review of the related MBSE (Model-Based Systems Engineering) methodology, the functional modeling language and tools, the functional architecture design process of satellite systems is determined, and the realization approach of model-based functional architecture of satellite systems is discussed.

Key Words: Functional architecture; MBSE; Process design; Satellite system

基于模型的系统工程(Model-Based Systems Engineering,MBSE)是适应航天器未来研制发展的有效解决方案。MBSE是系统工程领域的一个重要方向,它通过形式化的建模手段,从概念设计阶段开始就能够支持系统需求、设计、分析、验证和确认等活动,并持续贯穿整个开发过程和后续的生命周期阶段[1]。MBSE作为一种新的范式,NASA、美国国防部、欧空局等组织和相关承包商积极在项目中探索和应用[2],國内MBSE的应用也在研究和探索阶段[3-4],利用系统工程的思维方式,建立基于模型的系统正向设计流程与设计方法是未来航空航天领域发展的重要方向。

MBSE遵循系统工程V模型,贯穿产品的全生命周期,狭义的MBSE侧重于产品的前端系统设计阶段,分析用户需求、分解系统功能、定义系统架构直到实现系统物理设计。在这一过程中,利用图形化、结构化的方式将系统需求、功能架构、逻辑架构等描述为需求模型、功能架构模型、逻辑架构模型等。其中,功能架构模型是连接顶层需求、约束和后续详细系统开发和实施的桥梁,有助于理清系统间的关系、完善复杂系统的需求,还可以通过前期功能模型的仿真,验证需求的满足性和可追溯性。

功能架构描述的是系统详细的功能、接口和时序特征,覆盖系统级、分系统级和单机各层级的功能实现、性能分析、内在关联与接口分析,是完成既定任务目标所需要的全部功能集合,对应于系统级、分系统级、产品级,甚至更小单元的功能、性能和相互间的逻辑关系,对系统的理解和交流具有重要意义,为保证功能和接口的准确,功能架构随着系统需求的演进而被进一步定义[5]。

1 主流的MBSE方法论及其功能架构建模过程

1.1 OOSEM

面向对象的系统工程方法(Object-Oriented Systems Engineering Method,OOSEM)是一种自顶向下、场景驱动建模过程的方法,并通过一系列的视图来保证系统描述的一致性,用于支撑系统的分析、定义、设计和验证[6]。OOSEM功能架构通过分析系统的用例、确定系统的任务目标、详细系统的任务场景、确定系统内部功能活动之间的关系、分析系统内部功能活动之间的时序关系以及系统状态切换等一系列活动确定。

国际系统工程学会(International Council on Systems Engineering,INCOSE)在2011年开始的CubeSat项目中利用OOSEM方法论开发了一般CubeSat的功能架构模型,并建造了一个集建模工具、分析/仿真工具以及模型库一体的模型环境,使得功能架构模型可执行,以达到描述系统动态行为、分析和优化系统性能的目的[7-9]。

1.2 Harmony-SE

Harmony-SE是IBM公司一种大型的集成系统和软件开发流程Harmony的一个子集,在MBSE的需求分析、系统功能分析以及设计综合三个阶段迭代循环。Harmony-SE功能分析通过功能分解输出用例模型、系统与外界交互的逻辑和接口规范,同时将分析得到的功能与需求进行匹配,确保每一项需求都有功能与之对应追溯,并对需求进行更新和补充。

Harmony-SE方法论结合IBM Rhapsody工具在系统设计以及嵌入式开发上有很大优势,因此我国航空航天展开其对控制系统的实践和应用,如在飞控系统设计中,通过方法论设计验证控制逻辑,最后通过Rhapsody实现软件代码自动生成,提高软件系统的可靠性,并提升了开发效率。

1.3 SYSMOD

SYSMOD(Systems Modeling Process)是构建需求、功能和物理架构很实用的方法,包括描述项目环境、总结需求、系统环境建模、系统用例及过程建模、系统结构及状态建模和总结领域知识等。SYSMOD方法从产品、方法和角色三个特征展开复杂系统的设计,其中方法包括分析流程和架构流程[10]。

SYSMOD的功能分析活动是基于FAS(Functional Architecture for Systems)方法来进行。FAS从用例入手,通过使用启发式方法对功能分组,生成功能架构,但FAS的局限在于它更适用在较高的系统层级上,在低层级系统中,系统功能可能有复杂的交互,系统行为难以把握。

1.4 MagicGrid

MagicGrid方法源于No Magic公司在软件工程和系统工程领域的应用实践,基于矩阵式的结构流程,将功能架构建模过程从行为和参数两个角度分为问题域和解决域两个层次进行,其中问题域功能架构模型在需求模型的基础上,通过系统功能分解得到;解决域功能架构模型则是在逻辑架构模型基础上,通过系统功能分配得到。

2 支持功能架构建模的语言及相关建模工具

2.1 FFBDs

功能流图(Functional Flow Block Diagrams,FFBDs)提供了一种直观的图形方法来表示复杂层次系统的行为,FFBD由标记的功能块组成,如图1所示,功能块由定义功能执行顺序的单向箭头连接,FFBDs本质上是一个表示控制流的功能架构,描述了功能、功能的执行顺序以及可选的执行路径。支持FFBDs工具有RDD-100和CORE等[11]。FFBDs可以在图的层次结构中分层,沿着层次结构向下时,这些图提供了对单个系统行为更详细的描述,使系统和每个功能更容易理解。但FFBDs不能捕获系统功能之间的数据流,而系统功能的完整描述应同时需要数据流和控制流的信息,因此一些系统工程师在FFBDs基础上直接用箭頭和注释来表示数据流,进而逐渐演化为EFFBDs(Enhanced FFBDs)[12]。

FFBDs是功能建模的一种传统手段,在航天领域很流行,如在NASA J-2X液体推力器上的应用[13]。J-2X计划使用新的材料和制造技术将阿波罗时代的J-2发动机升级到更高的功率级别,工程师们对发动机进行了功能分析,建立了功能架构,定义了一个与系统模型逼真度一致的功能引擎示意图,最后得到J-2X分解到组件并映射到所有功能需求的FFBDs。

2.2 SysML

SysML是INCOSE和OMG(Object Management Group,对象管理组织)为支持MBSE方法而推出的一种标准化系统建模语言[14],如图2所示。SysML是一种图形化的语言,通过维护九种视图的一致性实现对各种复杂系统的详细说明、分析、设计、验证和确认。

SysML建立的功能架构模型可分为结构模型、需求模型、行为模型和参数模型,如图3所示,其中结构模型通过包图(package diagram,pkg)、模块定义图(block definition diagram,bdd)和内部模块图(internal block diagram,ibd)反映系统功能的层级关系;需求模型通过需求图(requirement diagram,req)描述功能与需求的追溯关系;行为模型通过活动图(activity diagram,act)、序列图(sequence diagram,sd)、状态机图(state machine diagram,stm)和用例图(use case diagram,uc)突出功能之间的数据流和控制流信息以及功能接口;参数模型通过参数图(parametric diagram,par)体现功能参数及其约束关系。

基于SysML开发了多种支持MBSE方法的软件,如EA、Rhapsody、CSM等,都支持建模、仿真、文档生成、程序开发、测试和管理,就目前在航空航天应用而言,Rhapsody多用在航空领域[15],CSM多用于航天领域。

2.3 OPM

复杂系统功能架构的描述包含着巨量的信息,其信息量远远超过了人的理解能力。目前主要有两种办法展示这些信息:一种是维护一个集成的模型,并根据需要对其进行投射;另一种是在模型中维护多个视图。前者如对象过程方法(Object Process Methodology,OPM),采用集成模型把形式、功能、实体和关系有关的信息全都融入同一个模型中,通过实体的不断分解来建立复杂系统的层次模型并管理系统复杂性;后者即如SysML语言,采用不同的视图描述系统的不同视角,建立复杂系统在各个视图的模型,并保证这些信息的一致,综合涌现描述[16]。

OPM主要的建模元素是实体和连接关系,实体包括状态、对象和过程的总称,如图4所示,其中对象描述系统中以物理或信息形式存在的事物,并具有过程可改变的状态;过程描述系统动态层面,能够产生、消耗对象并通过改变状态影响对象;状态描述系统静态层面,是对象在特定时间点可能处于的情形,是隶属于对象的实体。连接包含结构性连接和过程性连接:结构性连接表示对象之间或过程之间静态的持续关系;过程性连接表示对象和过程之间的关系,描述系统的动态行为。对象过程实例工具(OPCAT)[17]是支持使用OPM进行系统开发的软件环境。

3 卫星系统功能架构设计

卫星总体设计涉及任务轨道设计、工作模式与飞行程序设计、系统设计以及姿轨控、供配电、推进等分系统设计,其设计要素不仅涉及多专业、多领域,又相互耦合关联。因此,需要根据项目需求在不同的设计阶段使用不同的方法、语言、工具进行建模和分析,对不同系统的功能架构模型进行综合,实现产品的快速方案验证。

3.1 卫星系统功能架构设计流程

卫星系统功能架构设计是一个分解与综合的迭代过程,以任务目标为输入,对整个任务过程的飞行事件进行梳理,将任务需求转化为功能活动,进行任务级功能架构设计,进而识别出卫星系统的设计要求和性能指标,具体设计流程如图5所示。低层级系统功能架构设计是高层级系统功能架构的详细化过程,通过架构综合和功能仿真,验证高层级系统功能架构的接口、功能关系、性能指标,确保其功能性能满足需求。

3.2 基于模型的卫星系统功能架构设计

基于卫星系统功能架构设计流程,以及根据对功能架构建模方法、语言、工具的分析,探索了基于模型的卫星系统功能架构设计方案(如图6所示)。设计方案以SysML视图建立的功能架构为主体,融合各分系统的FFBDs模型、OPM模型以及仿真模型,通过SysML模型维护数据的一致性,实现功能到需求的闭环验证,最终形成分析报告,明确可实现性和基本的实现途径,形成覆盖所有层级和场景的功能体系结构。

4 启示与建议

基于模型的卫星设计模式是未来航天器研制模型转型的必然趋势,需要借助研制需求来牵引MBSE在卫星研制中应用实施发展。未来航天器产品将面临市场需求越来越旺盛、功能越来越复杂、性能要求越来越高等挑战,需要采取基于模型的正向设计手段,在系统设计的早期阶段,通过模型的建立能够清晰明确地表达系统的功能,理清系统间的关系,完善复杂系统的需求,并通过系统层级的递进,实现产品的系统设计。现阶段的卫星研制过程对功能架构重视程度不高、需求追溯性不完善,建议加强对功能架构的研究。研究方向可以从以下几个方面开展:

(1)原有基于文档的接口传递方式已经不能满足信息量增长等要求,亟需完善MBSE在卫星产品设计上的方法论,并确定功能架构建模的一系列工具。为了避免异构模型集成中出现的种种问题,最好选用一种兼容XML数据交换(XMI)规范的建模工具。

(2)充分利用新型航天器研制契机,完善卫星系统功能架构设计流程。首先基于保真度较低的模型验证功能架构或者系统架构各模块的输入输出、需求的可追溯性;随着设计的深入迭代,这些低保真度的模型可以被更加详细的模型替代,而无需更改已验证过的功能架构以及追溯关系。同时建立各层级系统的功能模型库,提高模型的重用性,实现新产品的快速方案设计。

(3)针对全新的卫星产品设计,有必要将功能架构和设计结构矩阵(Design Structure Metrics,DSM)结合,明確约束目标,对系统功能架构进行优化。

参考文献

[1] 韩凤宇,林益明,范海涛.基于模型的系统工程在航天器研制中的研究与实践[J].航天器工程,2014,23(3):119-125.

[2] 王崑声,袁建华,陈红涛,等.国外基于模型的系统工程方法研究与实践[J].中国航天,2012(11):52-57.

[3] 贾晨曦,王林峰.国内基于模型的系统工程面临的挑战及发展建议[J].系统科学学报,2016,24(4):100-104.

[4] 张有山,杨雷,王平,等.基于模型的系统工程方法在载人航天任务中的应用探讨[J].航天器工程,2014,23(5):121-128.

[5] Lamm, J. G. and Weilkiens, T., Funktionale Architekturen in SysML. In M. Maurer and S.-O. Schulze (eds.), Tagdes Systems Engineering 2010, pp. 109–118. Carl Hanser Verlag, München, Germany, November 2010. English translation by J. Lamm.

[6] Friedenthal S, Moore A, Steiner R. A Practical Guide to SysML: The Systems Modeling Language[M]. Morgan Kaufmann, 2015.

[7] Spangelo S C, Kaslow D, Delp C, et al. Applying Model Based Systems Engineering (MBSE) to a standard CubeSat[C]// Aerospace Conference. IEEE, 2012:1-20.

[8] Spangelo S C, Cutler J, Anderson L, et al. Model based systems engineering (MBSE) applied to Radio Aurora Explorer (RAX) CubeSat mission operational scenarios[C]// Aerospace Conference. IEEE, 2013:1-18.

[9] Kaslow D, Anderson L, Asundi S, et al. Developing a CubeSat Model-Based System Engineering (MBSE) Reference Model - interim status[C]// Aerospace Conference. IEEE, 2015:1-16.

[10]Tim Weilkiens. SYSMOD - The Systems Modeling Toolbox - Pragmatic MBSE with SysML[M]. MBSE4U, 2016.

[11]Seidner C , Roux O H. Formal Methods for Systems Engineering Behavior Models[J]. IEEE Transactions on Industrial Informatics, 2008,4(4):280-291.

[12]Mcinnes A I , Eames B K , Grover R . Formalizing Functional Flow Block Diagrams Using Process Algebra and Metamodels[J]. IEEE Transactions on Systems, Man and Cybernetics, Part A (Systems and Humans), 2011, 41(1):34-49.

[13]White, Thomas, Stoller, et al. Development of the Functional Flow Block Diagram for the J-2X Rocket Engine System[R]. NASA,2007.

[14]Delligatti L. SysML Distilled: A Brief Guide to the Systems Modeling Language[M]. 2013.

[15]迟玥,单栋,阎振鑫,等.基于模型的仿真设计在某飞控系统中的应用[J]. 系统仿真学报,2017,29(10):2556-2566.

[16]Crawley E, Cameron B, Selva D. System Architecture: Strategy and Product Development for Complex Systems[M]. Prentice Hall Press, 2015.

[17]Dori D, Reinhartz-Berger I, Sturm A. Developing Complex Systems with Object-Process Methodology Using OPCAT[J]. Lecture Notes in Computer Science,2003(2813):570-572.