中国商飞上海飞机设计研究院 乔文峰 李正强 黄 帅 姚志超
在当今全球化竞争背景下,飞机研制面临着前所未有的挑战。大型商用飞机在研制过程全球化、更多优秀供应商参与的背景下,为了满足用户的需求,需要在更短的周期开发出效益更高、性能更优越、功能更齐全的民机,许多方面表现出了在其他项目中见不到的复杂性。大型民机项目不仅需要技术创新,攻克众多的技术难关,更需要运用高效的集成研发技术手段,排除过程中的各种风险。
商用飞机是一个复杂系统,表现在项目规模庞大,涉及的子系统众多,应用的技术标准庞杂,强制性的必须满足适航当局的规章和技术标准覆盖了全机的设计、制造和运营[1],专业领域则涉及材料、环境、软硬件开发和研制条件技术保障。针对不同等级层次的需求和对象,集成的目标对象也是不同的,包括产品集成、系统间集成等。图1描述了不同等级和层次集成的关系。
系统工程是用于系统设计、实现、技术管理、运行使用和退役的专业学科方法论。系统工程中,集成是指系统/设备中的各元件能够协同运作并使若干分离功能集成到单个实施过程中的行为。从集成的定义可以得出,集成就是把系统各类要素有机结合形成一个整体,使系统具备大于各要素功能之和的整体新功能的过程,集成本身就是系统工程最重要的方法。传统应用集成技术已经逐渐不能适应信息化的需要,由于其自身的局限性和互操作性问题,难以适应开发复杂大系统下的应用集成的发展需求[2]。为了有效克服传统技术的种种弊端,提出了基于模型驱动思想的集成方案。
系统复杂性和运营安全性是民用飞机的两大基本特征,决定了民用飞机设计开发与制造的技术难度,要求项目从全生命周期考虑包括管理和技术的系统工程方法。随着产品全生命周期概念的形成和内涵的不断丰富,以及产品全生命周期开发模型(如Royce瀑布模型、Boehm螺旋模型和Moog V字形模型)在复杂系统开发项目中的广泛应用,现代系统工程理论和方法得到快速发展,在工业界形成系统工程标准,得到了多国政府主管部门的认可[2]。如美国联邦航空管理局于2011年9月发布咨询通告AC20-174,认可SAE ARP4754A为大型飞机系统开发保障过程的一个可接受方法。目前,我国在民用飞机系统集成方面尚未形成成熟和健全的系统工程思想,更缺少能提供高质量民用飞机系统需求的捕获方法和工具。为了适应和满足民机研发过程的复杂性和民机设计安全性要求的特点,基于模型的飞机系统集成构架设计,是应对民用飞机复杂性设计集成的有效手段。
本文在研究基于模型的飞机集成研发方法发展历程的基础上,结合民机开发集成的主流设计方法与新技术,研究了基于模型驱动系统工程的设计技术。深入分析基于模型驱动系统工程的相关基础理论和实际应用,进而推动集成研发技术的进一步发展,对于逐步实现飞机集成研发过程的完整性和系统性具有重要意义。
基于文件的系统工程自20世纪40年代提出以来,对民用飞机产品的系统设计作出了重要贡献,有力支持了产品的系统设计。然而,随着民用飞机系统复杂性的不断增加,尤其是异地分布式设计的出现,基于文件的系统工程已越来越无法满足要求,模型驱动的系统设计(Model-Driven Systems Design, MDSD) ,或称基于模型的系统工程(Model-Based Systems Engineering,MBSE)正逐步成为民用飞机产品系统设计的基础,它从需求阶段开始即通过模型(而非文档)的不断演化、迭代递增而实现产品的系统设计,具有显著优势。通过模型的形式化定义可以清晰地刻画产品设计初期结构、功能与行为等各方面的需求;基于模型可以尽早通过模拟分析发现大量不合理的设计方案;同时模型还为各方提供了一个公共通用的、无二义性的设计信息交流工具,这一点对复杂产品异地分布的系统设计尤其重要[3-4]。
图1 商用飞机分层次的系统集成关系网络
当前,国内外对于基于模型的飞机系统集成研发设计的研究尚处于探索阶段,很多研究机构也都在开展相关和类似的研究工作。但是,相当一部分工作并不是基于模型的飞机系统集成研发设计(或类似系统的数字化设计),只是与基于模型的飞机系统集成研发设计相似或存在一定的关联。而且,这些研究工作大都集中于航空航天、武器系统等国防军工领域范围,由于技术封锁等原因,无法获取详细技术资料,只能从一些报道中简单了解。
MBSE的实现取决于具有良好定义和工具支持并且能够满足系统工程层次设计建模需要的图形化建模语言,因此,系统工程层次图形化建模语言就是MBSE发展的重要标志。到目前为止,系统工程层次图形化建模语言的发展经历了以STATEMATE、UML为代表的两个阶段,目前开始步入以SysML为代表的第三个阶段。
美国国家航空航天局NASA从1998年开始研究一个称为智能化综合工程设计环境(Intelligent Synthesis Environment,ISE)的集成开发平台。它通过把近年来产生的诸如高性能计算机、人工智能、基于知识的设计与工程技术(Knowledge-Based Design and Knowledge-Based Engineering)、产品数据管理(Product Data Management, PDM)等新技术结合起来,得到一个跨地域的虚拟协同环境,在此平台上可进行航天产品的综合设计、试验和样机制造,实现不同地域、不同学科的设计人员在同一平台下进行产品的协同设计、仿真及制造[5]。NASA先进工程环境(Advanced Engineering Environment,AEE)是NASA开发的另一个分布式集成开发环境,主要用于支持可重复使用运载器的分析与设计。该环境以PDM软件为核心,通过Model Center软件集成各种分析计算工具,实现可重复运载器的系统级分析、设计、仿真、可视化及学科优化等。该环境允许NASA下属的6个分布式部门之间进行协同设计[6-7]。
国内相关院所在应用模型的系统工程方面也进行了探索。中航工业成都飞机设计研究所在分析未来航空电子系统发展趋势,以及新一代航空电子系统设计和软件开发特点的基础上,提出了用UML语言的用况图、结构图、顺序图、状态图以及活动图等描述航空电子系统的方法并给出了具体系统的详细设计过程。同时为了配合该方法,基于商用货架产品(Commercial off-the-shelf,COTS)技术提出并建立了一个面向未来航空电子系统设计与软件开发的快速原型框架,图2列出了该环境所用工具集及其承担的任务。其中,VAPS用于设计飞行员飞机接口(PVI),Rhapsody与STATEMATE用于航电系统设计,Open GVS用于实现快速原型外景仿真,FLSIM用于建模快速原型仿真中的飞机,STAGE用于仿真快速原型战场想定。通过该环境,设计人员可完成航空电子系统、作战飞行软件和座舱显示系统的快速原型控制,实现航空电子系统、作战飞行软件和座舱显示控制的一体化设计,从而大大缩短开发周期,提高软件重用性。
中航工业无线电电子研究所针对未来航空电子系统设计面临的挑战和航空电子系统设计的特点,在参考螺旋式软件开发方法的基础上提出了基于原型仿真的航空电子系统螺旋式开发方法,以克服传统瀑布式开发方法存在的各种缺陷[7-8]。该方法模型由概念开发环、系统原型开发环和工程开发环3个工作循环组成,如图3所示。这3个环中的每个循环都开始于需求部分,但每个环的需求在层次上是不同的,即初步设计的需求是经过概念设计环循环迭代验证,满足用户要求的需求。而详细设计的需求是经过原型仿真开发环循环迭代、测试评估后冻结的需求[9-10]。在3个不同的循环中,分别采用不同的工具完成系统设计,如在概念开发环中,选择STATEMATE、MATRIXx、Matlab/Simulink、VAPS等进行系统模型设计。
STATEMATE推出后,国内很多机构纷纷引进STATEMATE并开展相关研究。中航工业成都飞机设计研究所研究了基于STATEMATE的航电系统功能和对象设计;中航工业无线电电子研究所研究了使用STATEMATE的航空电子系统概念设计;南航开展了“无人机飞控系统虚拟原型及物理验证平台”的研究,探索飞行控制系统一体化综合设计的具体方法与有效途径;西北工业大学基于STATEMATE平台进行了无人作战飞机(Unmanned Combat Aerial Vehicle,UCAV)任务管理系统(Mission Management System,MMS)的仿真研究。
目前,模型驱动的复杂产品系统建模方法大多以图4所示的经典系统建模方法V模型为基础展开[10]。
图3 航电系统螺旋式开发模型
基于模型驱动的复杂产品通用系统建模方法,将面向对象技术与传统自顶向下系统建模方法结合的过程中,添加了几种有效的新建模技术,主要有需求变动分析、因果分析、系统/逻辑分解等,从而支持需求变更、系统层的重用和设计演化,其建模流程也发生了一定的变化,如图5所示[11-12]。提出了系统逻辑架构的定义与设计,通过将系统分解为相互关联的逻辑构件以达到逻辑构件整体满足系统功能的要求。
在模型驱动的系统开发过程中,每一个阶段都有一个模型与开发活动相对应。对需求捕获与分析阶段的需求辅助模型(Use Case Model)、系统分析与设计阶段的架构模型(Architectural Model)和功能模型(Functional Model)、软/硬件设计和实现阶段的执行模型(Implementation Model),开发人员可以依据本阶段的开发任务,对上一阶段传递下来的模型进行扩充,同时进行仿真、验证,直到该模型满足这一阶段的开发要求,然后将模型传入下一阶段,继续进行下一阶段的开发,如图6所示[13-14]。
模型驱动的系统设计方法使设计复杂嵌入式系统的工程师在规范阶段就可以对整个系统的行为方式、功能要求、控制方式等进行可视化的调试、验证,发现和纠正规范文档中相应的模糊、冗长、错误的地方,从而避免在产品的物理原形阶段或测试阶段才发现上述问题。
图4 系统工程的V模型
图5 面向对象的复杂系统建模流程图
图6 模型驱动的数字化设计流程
民用飞机飞行控制系统用于实现飞机在空中的纵向、横向及航向控制和配平,提供飞机起飞和着陆时的升阻控制、空中减速控制以及飞机接地后或中止起飞时的控制。典型的民用飞机飞控系统研发设计流程如图7所示。
基于模型的设计方法很好地适应了上述流程图开发的需要,能够在系统设计初期和试验验证后期进行充分确认和验证。基于模型的飞控系统设计一般需经过以下阶段:模型需求定义;设计飞控系统架构、控制律与逻辑;模型自动生成代码;建立飞机非线性模型等机载系统模型库;系统构架仿真与分析;非线性控制律设计仿真分析;飞控系统软硬件实现与集成测试;人(飞行员)在回路实时仿真验证和飞控系统机上地面试验和飞行试验(图8)。
2.1 模型需求
基于模型的设计流程很重要的一点是根据设计对象的特点,确定建立什么样的模型。因此,正确的模型需求的提出至关重要。模型需求需根据飞机级、系统级和适航等要求分解出来,一般从仿真要求、功能要求和性能要求等几个方面进行定义。
图7 典型民用飞机飞控系统集成研发流程
图8 基于模型的民用飞机飞控系统研发设计流程
仿真要求主要包括模型的接口规范、开发软件及版本、模型运行频率、模型对硬件运行环境的要求等;功能要求一般包括要模拟的系统正常运行时和故障条件下的功能要求;性能要求主要从模型的精度、延迟及模型的初始状态等进行定义;还要对模型的接口、测试及构型管理等方面提出要求。
2.2 建模设计
(1)对飞控系统的功能进行建模。构建飞控系统的整体框架,实现功能的分解,并定义功能之间的接口关系。按照系统中要实现的功能要求划分出若干子系统,每个子系统又可以根据子功能继续向下分解,是可一直分解到底层的行为驱动方式。
飞控系统设计仿真所涉及的模型主要有飞机本体气动、动力学模型,质量模型,大气环境模型,风模型,控制律模型,发动机模型,传感器模型,作动器模型和航电显示等模型,按照其表征的功能进行建模。
(2)对飞控系统行为进行建模。飞控系统在执行过程设计了多模态飞行控制律的切换逻辑,根据逻辑指令,相应执行不同的控制模式。在建模时,考虑模块化建模思想,尽可能表征功能结构和逻辑结构到物理机构层级描述为独立的模块,建立单独的模型。根据所研制飞控系统的先验知识,按照物理原理或者采取系统辨识的方法,结合多物理领域混合建模的方法确定模型的类型、结构及参数力图,准确描述系统的行为。根据数学模型的形式、计算机类型,采用ADAMS、AMESim、GT-Power和Matlab等仿真工具进行建模。
(3)模型集成与管理。模型集成主要是建立各个独立模块之间的通信关系。由于在一个系统工程开发时,往往是分阶段实施的,也需要根据各个设计、试验阶段的需要分步骤建立模型,因此,模型会出现多个版本,这就需要对各个阶段的模型进行构型管理,涉及的内容包括模型的版本、模型命名、模型版本描述、模型修改、模型批准发放等相关内容,在应用基于模型驱动的设计过程中能够很好地统一管理。
2.3 软硬件实现
对系统功能进行划分并建立系统的架构模型后,确定是采用硬件还是软件来实现。
模块指定用软件实现,可自动生成最终飞控软件代码,同时根据实际需要建立的功能模型适度扩充,便可建立系统的架构模型。这样简化了传统的繁琐的手工代码编写与调试工作。产品级嵌入式代码生成技术则能够节约70%的时间,极大地提高了工作效率。任何一个环节发现错误,只需修改模型即可。模型以独立模块形式驻留在库模型,后续若需修改或设计模型时,只需要修改库模型,则调用、使用的所有模型就完成了修改。
2.4 仿真计算分析
在建立了飞控系统的需求模型、功能模型、架构模型后,可以对模型进行仿真验证。采用半实物的实时仿真和半物理系统仿真方法进行人在回路的仿真试验,进行系统评估,在仿真过程中不断发现并解决系统模型中的漏洞和错误,最终得到一个满足用户需求的设计,避免在开发后期才发现系统描述的错误而造成巨大损失。
模型驱动的复杂产品系统设计建模已经在建模语言与建模方法等方面取得了很大的进展。同时在飞机系统集成研发过程中逐步受到设计研发人员的广泛关注,也在部分系统的设计过程中悄然开始探索。然而,还存在许多问题需深入研究,主要表现在以下方面:
(1)基于模型驱动的系统设计在工程实现中表现出局限性。
设计复杂系统需要考虑的一个重要要素是其多变性,复杂系统使用环境、用户需求、所使用的技术均可能是复杂多变的,这就要求能适应一定范围内的任务或需求的修改,具有一定的可扩展能力。目前,该方法针对需求可变性建模的支持应当进一步深入研究。
(2)模型驱动的集成设计建模缺少对连续系统尤其是连续系统动力学问题设计建模的支持。
设计者在关心其功能的同时,对其性能同样也十分关注,而其性能大多数情况下是以系统动力学方程来表示的。
因此,如何有效、方便地表示诸如飞机系统涉及动力学性能方面的问题,将是模型驱动设计建模必须考虑的另一个问题。
(3)模型驱动的建模对模型仿真分析的支持还有待大幅度提高,建模工具的功能很有限。
目前,大多数建模工具中提供了需求建模、结构建模、行为建模与参数建模等功能,能较好地完成上述建模过程的详细说明、设计与功能分析。然而,要实现复杂产品的设计确认与验证,目前还只能由系统设计人员基于静态的行为模型凭经验来分析是否满足要求,甚至要基于物理样机来进行验证。
综上所述,面向民用飞机集成研发工程领域的研究和探索急需深入开展。面向民用飞机这样的复杂系统,如何突破传统的设计模式,发挥数字模型在飞机设计集成过程中的优势,大幅度减少设计集成确认环节,节省时间和经费,使设计人员迅速了解其设计方案的变更,是每一个工程设计人员急需得到明确回答的问题。同时,开展模型驱动的系统工程研究、基于民用飞机的多学科一体化设计、多物理域和连续动态行为建模设计以及基于功能结构和逻辑结构向物理机构层级实现的应用等关键技术研究,将对我国面向复杂大系统工程研究以及创新大型民用飞机集成研发工程实现,具有重大现实指导意义。
[1] 刘兴堂,梁炳成,刘力,等.复杂系统建模理论、方法与技术.北京:科学出版社,2008.
[2] Cecilia H. Systems engingering handbook a guide for system life cycle processes and activities. International Council on System Engineering, 2011.
[3] Tim W. Systems engineering with SysML/UML:Modeling,Analysis, 2008: 1-320.
[4] Holt J,Perry S. SysML for systems engineering.UK:IET,2007:1-352.
[5] Mourad D,Fawzi H,Yosr J.Verification and validation in systems engineering. Assessing uml/sysml design models.2010:1-270.
[6] Banerjee A,Ray S,Dasqupta P. et al.A dynamic assertion-based verification platform for UML statecharts over Rhapsody.IEEE region 10 conference,2008:1-6.
[7] Crane M L,Dingel J. UML vs.classical vs.rhapsody statecharts:Not all models are created equal. Software and Systems Modeling,2007,6(4):415-435.
[8] IEEE Std 1516-2000,IEEE Standard for Modeling and Simulation(M&S)High Level. Architecture(HLA)—Framework and Rules,USA:IEEE,2000.
[9] 刘兴华,曹云峰,沈春林.模型驱动的复杂反应式系统顶层设计与验证.系统仿真学报, 2009(14): 82-87.
[10] 项云伟,王耀南.复杂工业过程的智能控制和智能管理系统集成.湖南大学学报, 2000(1): 62-67.
[11] 孟祥慧,蒋祖华.面向复杂机械产品分解式设计的系统集成平台方法.机械科学与技术, 2006(3): 284-287.
[12] Sanford F,Alan M,Rick S. A practical guide to sysML: The systems modeling language. San Francisco:Morgan Kaufmann,2009:1-576.
[13] 刘玉生,蒋玉芹,高曙明.模型驱动的复杂产品系统设计建模综述.中国机械工程, 2010(10): 841-749.
[14] 郭晶,袁坚,王剑山,等.基于双耦合驱动模型的时空混沌流密码系统.清华大学学报, 2009,49(8): 1180-1173.