首页/文章/ 详情

基于GCAir&GCKontrol的飞行模拟器

2年前浏览6455
摘要:随着系统仿真技术的发展,飞行模拟器已成为飞机研发过程中不可或缺的仿真试验设备。在飞机研发过程中可用于新机型的方案研究、设计和试验以及已有机型的改进。本文将介绍使用GCKontrol模型封装成FMU后在GCAir的平台上集成仿真,并建立完整的飞行模拟器系统,模拟发动机运行和飞机的操控,以及与第三方软件联合仿真,在视觉上增加飞行模拟器的逼真度。

一、飞行模拟器在环架构
飞行模拟器以其高保真和实时性的优势广泛应用于飞机研发中,在设计研发阶段,建立交互式设计环境,支持虚拟测试验证和人在环体验。在运维训练阶段,因为具备强大的故障设计、故障注入能力,可以训练飞行员和地勤人员应对故障的操作。同时,还可以通过与场景环境和其他飞行器模型的集成,来支持任务仿真。飞行模拟器的仿真平台需具备如下功能:
  • 具备开放的模型集成能力,支持C/C /Fortran/Simulink/Modelica等;

  • 具备建模和实时模型开发环境,能够建模各种子系统的逻辑和特性;

  • 具备六自由度的飞行动力学模型;

  • 具备实时仿真能力;

  • 支持分布式仿真,能同步多个仿真节点;

  • 具备开放的硬件接口,能处理模拟量,数字量,航电数据总线,实现半物理仿真;

  • 具备对接视景软件丰富的接口,实时驱动视景。

GCAir能够提供一个带有飞机模板模型的、标准的、开放的虚拟集成仿真环境,基于FMI标准,可实现多源异构模型的集成仿真。系统的总体架构设计如下:
图1 系统架构图

1.1 GCAir集成平台
GCAir具备开放的模型集成能力,支持GCKontrol模型以及第三方仿真软件模型集成,例如C/C /Fortran/Simulink/Modelica等。GCKontrol模型与其他第三方仿真工具集成的模型一样,需要生成符合国际标准的FMU后导入到GCAir集成平台上。GCAir多源异构的集成能力让不同的FMU在本平台实现系统建模集成,帮助用户创建复杂架构系统进行系统仿真、试验。
GCAir支持用户创建能够复用的“元模型”库。这些“元模型”可以帮助用户定义系统组成和子系统端口,元模型中加载不同的FMU,可使复杂系统仿真工程的创建和管理更加简单。系统建模界面清晰简洁,采用模块化构建系统可大大简化操作流程,用户可使用GCAir软件对各类FMU进行封装、定义接口,并连接为系统。系统内各模块逻辑清晰,可实时显示调试数据,为搭建者及管理者提供了最大的便利。
通过GCKontrol封装的FMU模块时支持生成代码及源文件,可以根据代码快速构建数学模型,完成外部FMU或其他子系统的唤醒并通过ICD连接控制其运行。
GCAir集成模型不需要大量的工作,GCAir平台调度的FMI API符合国际标准,所有的仿真模块(FMI、Python、TCPComponent、硬件设备)都有类似的API。GCAir强大的仿真引擎负责模型调度和数据交互,支持多核、多线程复杂场景,可以保证仿真模型的同步性。
为满足在半实物仿真系统中对硬件IO数据接口的高实时性要求,开发了实时仿真引擎(RealTime SimulationEngine),其操作系统是基于PREEMPT_RT和Xenomai技术进行定制的实时Linux系统。实时仿真引擎对系统实时模型进行调度与仿真运算,显著提高了仿真控制的实时性。
实时仿真引擎具备1ms的实时精度,支持A429、1553B、CAN、485/422等总线接口。外部接口和模块底部总线均采用EtherCAT工业以太网总线。通过远程的IO接口,实时仿真引擎能处理模拟量,数字量,航电数据总线,实现半物理仿真,这为用户的高效数据采集、系统配置和功率驱动优化、现场配线简化以及系统可靠性提供了多种选择。
图2 功能模型调度

1.2 飞行动力学模型

由于需要全飞行过程,系统采用六自由度模型,如下图所示。


图3 六自由度模型

GCAir平台提供现有的飞行动力学模型,用户可以直接在XML里配置飞机的参数信息,例如:气动特性、质量和惯量、动力系统、起落架和飞控执行机构等。可将配置好的XML文件加载到飞行动力学FMU模型中,可直接应用于仿真。飞行动力学模型参数依据通用参数和总体性能参数逆向计算,不使用具体翼型数据或者风洞数据进行插值。


图4 配置XML加载到FMU中


经过大量的测试比对验证,上述的飞机模型可以精准的算出升阻比,以A320为例,得出的配平表如下:

表1 配平结果表
序号    
A320 气动参数 (巡航配平)    
GCAir 6DOF    
1
   
升力系数    
0.461    
2    
零升阻力    
0.01881    
3    
诱导阻力    
0.00853    
4    
压缩阻力    
0.00091    
5    
修正系数    
0.000039    
6    
升阻比    
16.08    

除了上述方式外,也可以使用GCKontrol模型、Simulink模型,以及任何通过C/C 进行编译的模块,GCAir平台同样支持将此类FMU模型导入,并进行仿真。


1.3 模拟器视景
GCAir平台支持连接不同的视景软件,例如开源的FlightGear、商业的X-plane和DCS World。GCAir配置导出的FMU可以通过TCP协议实现与视景软件的联合仿真。联合仿真有2种应用场景:单机联合仿真和分布式联合仿真。下面将介绍GCAir与X-plane和DCS World软件的联合仿真。
1.3.1GCAir与DCS world软件联合仿真
数字战斗模拟世界(Digital Combat Simulator World(DCS World))是一款数字战场模拟环境平台。它可为用户提供最真实的军用航空器、坦克、地面载具以及舰船的仿真。
图5 DCS World软件

世冠科技自行开发Python脚本数据解析模块,将接收到的DCS World字符串数据进行解析,并将解析后的数据发送给仿真模型。
用户可用过DCS World设计战斗模拟场景,将模拟场景的数据发给GCAir集成的仿真模型(如雷达、电子战等)进行联合仿真。
图6 GCAir与DCS World联合仿真原理

  • 案例:

DCS Word在我方对2个敌方目标相向飞行场景中,我方飞机视景如下图:
图7 DCS World敌方飞机视景

DCS World敌我双方飞行轨迹地形视图如下图所示。
图8 DCS World敌我双方飞机场景视图

通过UDP协议,GCAir中的Python数据接收与解析模块可接收DCS World软件仿真场景数据,包括我方飞行信息和敌方飞行信息等数据,如时标、经纬度、运动速度、坐标位置、俯仰角、偏航角、滚转角等,如下图所示。
图9 GCAir接收的DCS World软件数据

上述接收到的DCS World仿真数据可以作为GCAir仿真模型模型的输入,实现GCAir与DCS World软件的联合仿真。

1.3.2 GCAir与Xplane软件联合仿真
X-Plane提供了真实的飞行模型模拟能力,能够以极高的精度预测固定翼和旋翼飞机的飞行质量。X-Plane可以预测所有飞机的性能和操作特性,飞行员能够利用这一个工具在类似真实飞机的模拟器中保持飞行水平;工程师们可以用它预测一架新设计的飞机如何飞行。
X-Plane具有丰富的飞机模型库,如:喷气式飞机、单引擎与多引擎飞机,以及滑翔机、直升机和垂直起降机。X-Plane提供全球地形显示,提供通用纹理和卫星地形纹理,提供国内和国外主要机场模型,提供对机场灯光、环境灯光和飞机外部灯光的模拟,支持对四季变化的模拟、支持24小时光照变化的模拟、提供对主要的气象条件包括云、雨、风、雾的模拟,支持能见度设置。
在GCAir软件平台中,用户可通过三维视景接口TCP模块将模型仿真数据发送到X-Plane软件,对当前仿真状态的相关信息进行三维视景展示,方便用户从视觉上对当前的仿真有一个更加直观的了解。
图10 GCAir与Xplane联合仿真原理

对三维视景接口模块进行设置,可以将GCAir模型仿真数据发送到X-Plane软件视景显示,如下图所示:
图11 GCAir与Xplane通信的三维视景接口模块设置

GCAir软件平台中的飞行动力学等FMU仿真模型计算出的飞行的经纬度、高度、飞行姿态、起落架收放、气动面作动等信息通过三维视景接口模块发送到X-Plane软件,用于对当前仿真状态的相关信息在X-Plane软件中进行三维视景展示,如下图所示:
图12 GCAir仿真模型
图13 Xplane三维视景显示

上面X-Plane三维动态视景是由GCAir模型仿真数据作为输入来驱动显示的,并且支持切换各种视角,如下:

1.3.3 模拟器操作硬件
飞行模拟器的模拟座舱系统为开放式,部分主要操纵设备采用实物仿真件,其他控制面板采用触摸屏和软件的形式模拟。飞行模拟器提供基本的飞机仿真模型软件,采用商用视景引擎,通过拼接曲面大屏方式显示三通道视景,可对主要环境声音、告警音进行模拟。参考实物图如下:
图14 飞行模拟器实物图1

图15 飞行模拟器实物图2

  • 系统组成

飞行模拟器包括模拟座舱系统、飞机仿真系统、航电仿真系统、视景系统和声音系统。
  • 模拟座舱

模拟座舱系统采用开放式座舱,主要操纵部件如驾驶杆(或侧杆)、脚蹬、油门台、起落架、减速板手柄、襟/缝翼手柄、转弯手轮、飞行方式控制板、显示控制板及遮光罩、其他告警指示等面板采用物理仿真件;其他面板采用软件的形式模拟,包括顶部板、前仪表板面板和中央操纵台面板。
航电仿真系统提供主要的航电显示仿真软件,包括主飞行显示(PFD)、辅助页面显示(AUX)、多功能显示(MFD)、飞行管理系统(FMS)、集成备份仪表(ISI)、等模块组成,其中MFD包括导航显示(ND)、系统显示(SYN)、发动机及机组指示和机组告警系统(EICAS),提供对上述航电显示软件的主要功能的模拟通过GCAir的2D面板控件实现。
GCAir的2D面板中含有组合控件,组合控件是软件提供的常用的一些组合控件,用户可直接拖拽后使用,也可设置组合控件的属性,内置组合控件包括:襟翼面板、起落架收放手柄、扰流板面板、停机刹车旋钮、主飞行显示器、飞控系统简页图、综合显示简页图等。如下图是国产大飞机C919的控制面板图,运用了上述部分内置组合控件,在每个控件配置好对应的参数信息,即可运行仿真,非常灵活方便。
图16 控制面板

  • 飞机仿真系统

飞机仿真系统包括飞机仿真模型软件和实时仿真计算机。飞机仿真软件采用GCAir/GCKontrol进行建模,包括飞行动力学模型、空气动力学模型、动力系统模型、质量特性模型、起落架模型、自动飞行控制模型、导航系统模型等主要飞机系统模型和标准大气模型、风模型、地磁模型等环境模型。飞机仿真软件运行在实时仿真计算机上,仿真周期不大于10ms。
  • 声音系统

声音系统由声音软件组成,无专门硬件,声音软件实现对常规飞机发动机声音、气动噪声、雷声、雨声、起落架收放声音、近地告警声音及其他各系统主要告警声音进行模拟。

二、基于DDS的分布式仿真
DDS(Data Distribution Service,数据分发服务)作为网络数据通讯的核心技术,能可靠实时地交换分配群体数据,其传输能力比通常的战术数据链高几个数量级。DDS必须确保在极少的时间和不限制网络中的报告数据容量的条件下,高度可靠地传输数据。DDS使用Object Management Group(OMG)定义的“界面描述语言(IDL)”进行消息定义和序列化。DDS满足“数据分发服务”的标准,定义了一个基于UDP/TCP/IP的协议,以确保在“发布者/订阅者”之间快速、高效的数据分发,并实现了不同DDS之间的兼容性。
DDS采用的通信模式是多对多的单向数据交换,其中生成数据的应用程序将其发布到属于消耗数据的应用程序的订阅者本地缓存中。信息流受负责数据交换的实体之间建立的服务质量(QoS)政策的监管。
在GCAir平台内定义一条DDS仿真总线,配置DDS的主题信息,用于接受报文,配置节点信息,用于确定DDS的发布者/订阅者,并与第三方计算机通信,如下图所示:
图17 DDS通讯

定义好DDS的主题和节点信息后,需要配置执行顺序分组,GCAir会生成多个线程进行计算,用户可以按个数平均分配部署或是按仿真模型消耗计算资源的大小,按需分配部署到n个仿真引擎节点。
通过DDS的信息传递,仿真引擎之间可以实时获取不同模型的时间信息、控制信息和数据信息等内容。整体架构图如下:

图18 基于DDS的分布式仿真架构图

如上图所示,通过DDS数据总线,进行10ms一次的收发数据,每一个执行顺序分组在一个仿真引擎中执行,并通过不同的通讯方式,将数据信息传输至3D视景或硬件上。
除此之外,其他使用DDS通讯服务的第三方软件或用户组件也可以作为上位机向GCAir的仿真引擎节点发送信息,并应用到视景或软件上。
气动噪声系统仿真通用航空电子通信SimulinkDCS控制试验气象曲面
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-09-29
最近编辑:2年前
世冠科技
国内领先的系统仿真工业软件和数...
获赞 15粉丝 16文章 139课程 1
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈