飞行训练模拟器教学控制系统的设计与实现

(整期优先)网络出版时间:2024-04-17
/ 3

飞行训练模拟器教学控制系统的设计与实现

王建军、惠佳鹏

(中航西安飞机工业集团股份有限公司 , 陕西西安710089)

摘 要:飞行模拟训练已从基本驾驶训练转向复杂任务、多机联网训练的使用模式,为满足飞行训练模拟器使用模式的转变,需设计满足需求的教学控制系统。教学控制系统是训练模拟器的重要组成部分,主要用于控制和监视飞行训练过程。本文基于教学控制系统满足复杂任务、联网训练的功能需求,对教学控制系统功能进行分析,确定教学控制系统主要功能包括模拟器系统管理模块、任务管理模块、联网管理模块。其中模拟器系统管理模块采用MVVM架构,保证数据、逻辑、UI界面分离,便于功能升级扩展;任务管理模块基于用户使用需求,以数字地图为基础开展设计,提升实用性效果;联网管理模块提供联网服务中间件,负责联网协议管理;经过实际应用,该教学控制系统能够满足复杂任务、联网训练的训练需求。

关键词飞行训练模拟器;教学控制系统;任务管理;联网管理;MVVM

中图分类号:TP 文献标志码: A

0引言

飞行训练模拟器是典型的人在回路仿真系统,能够真实复现空中飞行环境。随着航空仿真技术的发展,飞行模拟训练已由基本驾驶术发展到各种接近实战的任务训练,由单兵作战向联网作战,进而向体系作战方向发展[1]。因此,飞行训练模拟器不仅需要准确、全面的系统模型;同时需要提供更加灵活、丰富的教学控制系统,可以实现本机实时控制,也可以接受联网任务、指令,实现模拟器联网训练功能。联网训练将会极大提升飞行训练模拟器的战术训练效能。

教学控制系统(IOS)是飞行训练模拟器的重要组成部分,是控制和监视飞行仿真过程的主体[2,3]。因此,研制架构合理、易扩展,面向任务、联网训练的教学控制系统尤为重要。

1功能需求分析

针对模拟器任务需求,确定飞行训练模拟器教学控制系统的功能需求如下:

1)提供模拟器本身系统硬件、软件管理功能;

2)提供训练任务要素(综合环境、飞行任务、武器配置、红方兵力、蓝方兵力等)配置、加载功能;

3)支持联网训练功能。

按照功能需求,对教学控制系统功能进行模块划分,如图1所示。

图1 教学控制系统功能模块划分

模拟器系统管理模块完成训练管理、档案管理、系统管理等功能;

任务管理模块完成任务规划、任务加载、任务编辑等功能;

联网管理模块负责联网控制、数据处理。

1.1模拟器系统管理模块

a)训练管理

训练管理实现如下功能:

1)初始训练参数设置,包括(燃油装载、初始位置等信息;提供起降机场选择,提供机场标高、场压、场面气温、磁差、停机初始位置、电台频率、导航台频率、下滑台、塔康等);初始任务参数数据加载、下发等功能;

2)即时参数设定,包括气象环境设定、故障及特殊情况设定;

3)实时控制功能,完成模拟器运行、停止、冻结/解冻;以及重定位等功能;

4)训练过程监视和记录功能,能够通过曲线或者二维、三维图像监视飞机飞行过程中的参数变化,包括飞行轨迹、姿态,飞机燃油、武器、舵面、操纵、座舱仪表的状态,气象环境的实时参数、战场态势的变化等,能够实时记录仿真参数,用于辅助评定和讲评;

b)档案管理

档案管理实现如下功能:

1)训练人员管理,实现对教员、学员、维护人员等人员管理以及相关人员的权限管理;

2)训练过程参数管理,实现对训练过程学员飞行参数的记录及管理,包括训练时长、训练课目、训练成绩、训练数据的记录以及导出管理;

3)训练日志管理,实现对模拟器运行时间、故障处理时间、故障原因的管理,用于统计和评估模拟器可靠性参数;

c)系统管理

1)模拟器硬件系统管理,实现对模拟器硬件的监视和控制,包括计算机、投影机、电源系统的开/关机控制,实现对操纵负荷系统力的加载/卸载,运动系统的运行/冻结控制,座舱设备的加电/运行控制;实现对上述系统状态的实时监控;提供硬件自检测功能,完成模拟器硬件设备的快速故障定位;

2)模拟器软件管理,实现模拟器所有软件的启动/关闭、运行监控;实现对模拟器软件的版本管理以及软件升级管理功能。

1.2任务管理模块

a)任务规划

任务规划实现功能为:

1)战场环境设定,可以根据训练任务、训练场景等训练要素,完成战场态势布置,包括红、蓝方兵力等部署;

2)飞行计划设定,可根据训练任务、训练场景等训练要素,设定航路点;也可以根据蓝方兵力部署,进行航路点设定;

3)可视化交互方式设定,能够使用人机界面完成飞行计划设定、战场环境设定;

b)任务加载

任务加载实现联网任务、本地任务的解析、转换,处理为模拟器可接受的控制参数,下发到模拟器执行。

c)任务编辑

任务编辑完成本地任务、联网任务的发布、删除、查询、编辑功能。

1.3联网管理模块

a)联网控制

联网控制功能负责联网协议管理,提供联网服务中间件;实现联网服务器创建或者作为客服端连接到服务器。

b)数据处理

数据处理实现联网协议数据解析,完成模拟器与外部联网系统的数据交互。

2总体设计

通过对模拟器教学控制系统功能分解,采用模块化的设计理念将教学控制系统划分为三个具备独立运行功能的软件,模拟器系统管理软件、任务管理软件、联网管理软件,通过数据共享的形式,实现三个软件之间的数据交互。

模拟器系统管理软件是传统意义的教员控制台软件,能够独立完成模拟器飞行训练设置;

任务管理软件,用于实施本机战术训练、战法演练的管理软件。任务管理软件不影响模拟器系统管理软件的运行。

联网管理软件,用于模拟器本地、异地联网控制,用于联网数据、指令交互,作为联网训练的支持软件。

模拟器系统管理软件、联网管理软件与任务管理软件数据通过网络数据库进行任务数据交互。为了保证联网训练任务的实时性,模拟器系统管理软件与联网管理软件采用高速通信总线的方式实现。三者之间,数据交互方式如图2所示。

图2 软件数据交互方式

交互流程:联网管理软件通过连接网络数据库获取任务列表信息,包括任务ID、任务名称、任务概览信息,用于构建联网服务器,发布联网任务。联网管理软件通过高速数据总线向模拟器系统管理软件下发联网任务ID,下发网络内部其他系统或者其他模拟器的任务参数、任务执行指令。

模拟器系统管理软件接收联网管理软件下发的任务ID、任务执行指令以及任务实时参数,控制模拟器加载任务初始参数、执行任务,同时上报模拟器当前飞行参数以及任务参数给联网管理软件。

任务管理软件负责联网任务的创建、编辑并上传至网络数据库。

3软件设计

3.1模拟器系统管理软件

软件采用三层架构,底层为数据通信服务层,提供通信连接中间件,支持TCP、UDP、反射内存网络通信、FC、串口、CAN总线、分布式网络数据库等通信协议;提供数据库连接接口,支持MySQl、SQL Server等网络数据库连接;提供地图服务接口,用于加载本地地图服务;支持Web页面地图服务接口,可用于共享服务器地图。

中间层为数据逻辑处理层,实现控制逻辑处理,完成数据打包、解包工作。

上层为用户交互层,提供UI显示界面和用户操作支持,能够根据用户操作习惯,配置为触控版或者桌面版。

基于模拟器系统管理软件架构,模拟器系统管理软件采用MVVM(Model-View-ViewModel)框架,实现数据、逻辑、UI界面分离,便于模拟器系统管理软件后续升级扩展[4]。模拟器系统管理软件界面基于QML语言开发。中间层、底层采用C++语言,基于QT开发环境开发。

QML(Qt Meta-Object Language)是一种简单易学的轻量级标记性语言,用来描述程序用户界面和行为。QML文件结构类似于HTML文档式,语法类似于CSS,但又支持JavaScript形式的解释性脚本语言。

QML可以与C++代码无缝集成,支持动态创建和组合不同的QML控件,基于UI组件模板,采用可拖拽式设计,提高了QML编程的便捷性。

模拟器系统管理软件需支持触摸点击、滑动缩放等手势操作,还需要支持动态更新UI界面,因此采用QML与C++混合编程,该方式可以充分利用C++处理复杂数据的优点,以及QML在数据显示、人机交互简洁方面的优势,提高了开发效率和软件效果,可充分实现模拟器系统管理软件功能开发。

下面以QML实现一个按钮为例,实现过程如下;

QML代码如下:

Text {

id: iconClimate

x: 31

text: "\ue804"

anchors.verticalCenter:parent.verticalCenter

font.pointSize: 18

font.family: "weather"

color: globalDaymode? "#5D5C60" : "#9A989C"

}

Text {

id: climate

x: 79

text:"天气"

anchors.verticalCenter: parent.verticalCenter

font.pixelSize: 20

font.family: "Open Sans"

font.styleName: "Bold"

color: globalDaymode? "#5D5C60" : "#9A989C"

}

实现效果如图3。

图3 QML按钮实现效果

QML语言可读性强,同时支持QT Designer图像化界面进行可视化开发,极大便利美工人员进行UI界面设计,可极大加快软件开发进度。

3.2任务管理软件

任务管理软件围绕数字地图进行开发,通过合理的地图层级,给用户呈现直观、准确的宏观场景。用户借助软件提供的地图服务,进行地图选点、划线,完成模拟器飞行航路点设定、起始点设定等任务规划;同时提供弹出对话框进行手动输入,实现精确设定。任务兵力设置通过选择模型库对应兵力模型完成兵力部署。任务管理软件用户界面如图4所示。

图4 任务管理软件界面

3.3联网管理软件

联网管理软件主要为模拟器提供联网服务,完成模拟器与网络系统之间的数据交互,并需要保证数据实时、可靠、准确。将联网管理软件与模拟器系统管理软件部署在一台计算机内部,两者之间数据通信采用UDP协议实现,可以保证数据通信速率,以及数据的可靠性。联网管理软件与外部系统通信采用反射内存卡通信,满足大量数据交互时数据实时同步。联网管理软件工作流程如下图5所示。

图5 联网管理软件运行流程

4结论

本文从飞行训练模拟器体系作战训练任务出发,对教学控制系统应具备的功能进行了分析,确定了教学控制系统的三个功能模块,并开展了三个功能软件的设计。经过飞行训练模拟器实际应用,能够满足飞行训练模拟器联网训练的需求。同时,也存在一定的不足,比如联网协议方面未能考虑通用化以及开展LVC训练方面的要求,后续会根据实际需求进行完善。

参考文献:

[1] 朱江,林皓,赵鹏轩.大型运输机飞行训练模拟器设计技术研究[C],第二十届中国系统仿真技术及其应用学术年会论文集,2019

[2] 胡文婷,邢祎,王志乐.飞行模拟器教学控制系统管理系统设计研究[J],中国航务周刊,2021,36:66-67

[3] 朱涛,来淼,万鹏程,赵保明.航空兵分队模拟训练系统教学控制系统设计与实现[J].指挥控制与仿真,2020424):137-140.

[4]杨宛璐,韩立,王建普,邓铸洲.基于MVVM架构的飞行模拟器教学控制系统系统的设计和实现[J],教练机,2022(2):30-33