CN112445459A - 一种飞行管理系统的设计方法 - Google Patents
一种飞行管理系统的设计方法 Download PDFInfo
- Publication number
- CN112445459A CN112445459A CN201910806049.9A CN201910806049A CN112445459A CN 112445459 A CN112445459 A CN 112445459A CN 201910806049 A CN201910806049 A CN 201910806049A CN 112445459 A CN112445459 A CN 112445459A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- navigation
- flight
- management system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013461 design Methods 0.000 title claims abstract description 17
- 238000007726 management method Methods 0.000 claims description 50
- 230000006870 function Effects 0.000 claims description 39
- 230000008569 process Effects 0.000 claims description 16
- 238000000883 frequency modulation spectroscopy Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000013523 data management Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 238000013524 data verification Methods 0.000 claims description 4
- 238000013459 approach Methods 0.000 claims description 3
- 239000010763 heavy fuel oil Substances 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 9
- 230000003287 optical effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 9
- 239000013598 vector Substances 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 239000004231 Riboflavin-5-Sodium Phosphate Substances 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000000446 fuel Substances 0.000 description 3
- 230000009194 climbing Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000004230 Fast Yellow AB Substances 0.000 description 1
- 239000004235 Orange GGN Substances 0.000 description 1
- 239000004234 Yellow 2G Substances 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000004148 curcumin Substances 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013502 data validation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 239000004172 quinoline yellow Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 239000002151 riboflavin Substances 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000004173 sunset yellow FCF Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000004149 tartrazine Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000009941 weaving Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
Abstract
本发明适用于航空技术领域,提供了一种飞行管理系统的设计方法,飞行管理系统采用面向对象OOP及面向切面AOP相结合的方法来设计;基于面向对象OOP的设计是指:按业务逻辑进行功能模块的划分;基于面向切面AOP的设计是指:提取跨越至少一个功能模块的横向切片;功能模块在运行过程中,基于需求切入不同的横向切片。基于面向对象编程(OOP)和面向切面编程(AOP)相结合策略来设计飞行管理系统(FMS),用于满足通用航空机载航电系统中飞行管理系统的开发需求,提高了开发高可靠性、高安全性和高可维护性。
Description
技术领域
本发明属于航空技术领域,提供了一种飞行管理系统的设计方法。
背景技术
随着低空域的逐步开放,中国通用航空(简称通航)及其相关产业进入快速成长期。但是,目前我国自主研制的通用飞机还处于起步阶段,机载航电系统较为复杂,因此自主研发较慢,绝大部分安装了国外机载航电系统。国内部分单位也在参考国外同类产品进行参考研发,但是这类航电系统的设计与开发较为普遍的是采用OOP的策略进行开发,必然产生代码纠缠、代码分散的问题,尤其是对于一些运行在不同模块之间的统一处理逻辑没有给出很好的解决方案,在程序的重用性、开发效率和降低业务逻辑各部分之间的耦合性方面有很大的不足。
发明内容
本发明实施例提供了一种飞行管理系统的设计方法,基于面向对象编程(OOP)和面向切面编程(AOP)相结合策略的来设计飞行管理系统(FMS),用于满足通用航空机载航电系统中飞行管理系统的开发需求,提高了开发高可靠性、高安全性和高可维护性。
本发明是这样实现的,一种飞行管理系统的设计方法,所述系统采用面向对象OOP及面向切面AOP相结合的方法来设计;
面向对象OOP方法是指:按业务逻辑进行功能模块的划分;
面向切面AOP方法是指:提取跨越至少一个功能模块的横向切片;
功能模块在运行过程中,基于需求切入不同功能的横向切片。
进一步的,所述基于面向对象编程(OOP)将飞行管理系统划分成如下功能模块:
整体控制模块、数据链操作模块、图表接口模块、地图接口模块、预测和计算模块、制导模块、导航模块、航路管理模块、冗余管理模块、导航数据管理模块,其中,
整体控制模块,用于发布FMS数据、控制雷达导航模式、控制OBS模式、切换主导航源、确定推荐的助航设备、确定FSD、发送与FMS相关的警报、制导、路线预测功能;
数据链操作模块,用于METAR航空例行天气报告、高处风、高处温度和TAF终端机场天气预报天气的发布;
图表接口模块,用于请求特定的机场或机场关联程序的航空图表,跳转显示航空图表的图像界面,航空图表包括:标准离场程序、标准机场程序和进近程序以及机场图表;
地图接口模块,用于定期提取地图所需路线中每个航路段的信息,发布到地图接口,在显示屏上准确描述航路段;
预测和计算模块,根据飞机预设的相关参数计算飞机中下一航段的航向、距离和统计数据,统计数据包括剩余燃油、预计到达时间、预计飞行时间;
制导模块,分为横向制导和纵向制导,引导飞机在水平方向和垂直方向上飞行;
导航模块,根据GPS信号提供当前飞机的位置和速度数据;
航路管理模块,对航路段列表进行管理,包括航段长度、飞行航段的预估时间、到达航段终点的时间、飞行路径;
冗余管理模块,用于对同一系统中的多个FMS之间的数据同步、循环确定FMS运行状态、令牌管理;
导航数据管理模块,负责为FMS提供对导航数据库的访问。
进一步的,横向切片包括:
数据验证,验证输入数据的合法性及有效性;
计时,通过定时器对切入对象进行定时;
数据库有效验证,用于对各种访问导航数据库的请求链接进行数据有效性验证;
token管理,用于限制对FMS数据修改的权限;
告警,用于告警信息的判断和发布。
本发明提供的一种基于面向对象编程OOP和面向切面编程AOP相结合策略来设计飞行管理系统,在飞行管理系统程序的设计上一方面基于OOP自上而下的纵向结构考虑,注重核心功能,从业务逻辑出发,按需求将系统划分成不同的功能模块,另一方面采用AOP思想,关注到分散到不同模块的公共行为,将这些横跨不同功能模块的共同动作进行统一管理,降低业务逻辑各模块之间的耦合,有效控制的代码的修改范围,提高开发效率,提高了软件质量。本发明结合了面向对象OOP和面向切面AOP的优点,两者互相补充和完善。
附图说明
图1为本发明实施例提供的飞行管理系统控制结构图;
图2为本发明实施例提供的FMS页面关系示意图;
图3为本发明实施例提供的FM页面控制类结构示意图;
图4为本发明实施例提供的预测和计算功能的接口演示图;
图5为本发明实施例提供的航路结构示意图。
图6为本发明实施例提供的航路点控制示意图;
图7为本发明实施例提供的航路点显示类关联图;
图8为本发明实施例提供的数据链信息处理过程图;
图9为本发明实施例提供的预测和计算功能流程图;
图10本发明实施例提供的导航服务类数据更新流程图。
图11本发明实施例提供的AOP思想实施原理图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明中的飞行管理系统是一种在飞行中使用的导航系统,一架飞机的飞行设施中至少设置一套飞行管理系统FMS,基于全球定位系统GPS信号或卫星的增强系统SBAS信号进行导航,采用面向对象OOP及面向切面AOP相结合的思想来设计飞行管理系统,面向对象OOP的思想设计是指:按业务逻辑进行功能模块的划分,面向切面AOP的思想设计是指:提取跨越至少一个功能模块的横向切片,功能模块在运行过程中,基于需求切入不同的横向切片。
图1为本发明实施例提供的飞行管理系统的结构示意图,为了便于说明,仅示出与本发明实施例相关的部分。
本发明提供的飞行管理系统的功能具体如下:1.向自动驾驶仪提供制导数据,2.进近辅助功能,3.向地图服务器提供航迹、飞行计划等数据,4.向水平位置指示器提供飞行姿态等数据,5.飞行计划的输入、编辑、存储功能,6.预设飞行路线和预估燃油、到达时间、飞行时间等数据,7.向航向位置指示器提供水平和垂直航线偏差数据。
面向对象编程OOP:针对业务处理过程中的实体及其属性和行为进行抽象封装,以获得更加清晰高效的逻辑单元划分。按照OOP思想进行功能模块的划分,飞行管理系统包括十个功能模块,分别是整体控制模块、数据链操作模块、图表接口模块、地图接口模块、预测和计算模块、制导模块、导航模块、航路管理模块、冗余管理模块及导航数据管理模块,其中,
整体控制模块,用于对各功能模块进行管控,主要包括页面的控制及功能的管理。图1是飞行管理系统控制结构图,涵盖了FMS页面的控制和管理功能。
页面的控制:包括页面的内容显示以及边框按键、键盘按键、旋钮等人机交互事件的处理,FMS共分为五个页面,如图2所示,分别为飞行计划页A101、主要信息页A102、航路线页A103、航路点页A104、最近地区页A105。
图3为FMS页面控制结构图。主要分为三层结构,第一层为控制类A106,是基本类,提供初始化、输入、输出基本功能函数;第二层为Ui控制类A107,继承自控制类,提供FMS页面控制需要的令牌管理、定期更新、两边的边框按键功能函数、旋钮按键函数、键盘函数、清除页面函数等;第三层为各FMS显示页面类A108:飞行计划控制类、信息页控制类、存储路线控制类、航路点控制类、邻近页面控制类。这些均继承自Ui控制类,根据当前页面的功能具体实现本页面需要的功能,不相关的功能不实现。其中控制类和Ui控制类中的函数都是虚函数,真正的实现是在具体的五个页面类中完成。
功能的管理:包括发布FMS数据、控制矢量导航模式、控制OBS模式、切换导航源、确定助航设备、确定FSD(满刻度偏转值)、发送与FMS相关的警报、飞行制导、路线预测功能,图1中的警报107、制导109、预设值110、数据链天气数据106、导航数据处理104、飞行器数据处理105都包含其中。
数据链操作模块,包含FMS请求、接收和使用数据链路数据的功能。数据链的数据包含很多信息,FMS主要使用METAR航空例行天气报告、高处风、高处温度和TAF终端机场天气预报数据的发布;该模块的设计主要分为三个部分,分别为数据缓存、数据有效期、请求类型。
数据缓存:如图8所示,使用数据时,FMS控制类A100发出一个请求,将其传递给系统中的数据链操作模块D102,该模块向数据链代理服务器D101提出相关请求,如果天气数据有效并可用服务器会返回数据给数据链操作模块D102,D102将其放入本地缓存D103,缓存的大小是固定的,一旦有数据被取出使用,会发送一个新的请求,再次从数据链代理服务器获取该数据,以保证数据的及时更新和有效性。各个页面从缓存中读取和使用天气数据。通过界面控制接口D104决定在相应页面上发布天气报道D105。如果系统中存在其他FMS系统,则各显示页面103通过界面核查功能D107输出相应界面的天气报道D108。数据有效期:数据的期限是动态的,必须反复的检查,以便保持最新的数据。每次使用数据时,都需要从缓存中检索读取,防止数据过期。请求类型:有三种查询数据链数据的类型,分别为经度和纬度的组合,相邻设施及固定点标识符的方式查询。经度和纬度的组合方式会查找距离该经度、纬度最近的固定点,并以此反馈数据,相邻设施方式会以当前查询的固定点为基准,半径50海里的范围内搜索数据,固定点标识符方式会返回精确的固定点匹配项数据。
图表接口模块,图表由专门的图表服务器负责,FMS在飞行计划页A101、信息页A102和最近地区页A105提供“图表按钮”,可以请求特定机场或机场关联程序的图表,选择按钮后,将跳转到图表页面。航空图表包括:标准离场程序、标准机场程序和进近程序以及机场图表。所有的图表请求,都保存在本地进行缓存。本地缓存保存在共享内存中,各FMS都可访问共享内存中缓存的图表缓存包,缓存包含图表标志和数据,其中数据包含机场导航参考、程序导航参考和图表类型。
地图接口模块,定期提取地图路线中每个航路段的信息,发布到地图接口,以便地图服务器在显示屏上准确描述航路段。地图由专门的地图服务器负责绘制,地图服务器依赖于来自FMS中的信息(如路线、横向制导数据等)来驱动地图上显示的内容,所述信息包括上一段航路、当前飞行航路和下一段航路的信息,横向制导数据,包括战术行动中的矢量飞行和OBS模式的数据。
预测和计算模块,根据飞机预设的相关参数计算飞机中下一航段的航向、距离和统计数据,包括剩余燃油、预计到达时间、预计飞行时间;这些计算数据依据飞机性能特征参数、当前飞机地面速度和空中燃油流量等信息。飞机在整个航行过程分为五个阶段,即起飞前、爬升、巡航、下降和着陆后。预测和计算模块根据输入的飞行计划和飞机数据库105(飞机性能和特征数据库),详细计算飞机在航行过程的每个阶段的数据,从而预测出预期的飞行计划。预测的数据是航路数据的一部分,包含静态数据(即飞行计划航段)和动态数据(即各航段的预测值、爬升顶点和下降起点等)。图4为预测和计算功能的接口演示图,FMS控制类A100从Blackboard接口E111上获取发布的飞行计划,然后结合导航数据库信息的信息,通过预测和计算模块E113计算出预测的飞行计划,发布到共享内存E112中,FMS控制类再从共享内存中获取预测的飞行计划数据。图9为飞行计划预测流程图。具体如下:程序开始后,首先进行初始化飞机模型E100步骤,再判断是否是需要预测的航路段E101,如果是那么为当前航迹计算巡航高度E102,计算路径E105,结束后判断是否是复飞点或者是终点E106,如果不是那么进行激活下一个航路段E104使之返回到E102-E106的循环。直到E106判断为是,将飞机模型向后移动并计算下降顶点E110,下一步将飞机移动到预测起始处E109,然后一段的飞行并计算每个航段的相关数据(时间、燃油耗量等)E108,一直到预测结束点。全部预测结束后,移动飞机模型到下一个预测的开始点E107,然后判断是否需要继续预测,不需要结束,需要就继续刚才的循环。
制导模块,分为横向制导和纵向制导,数据发布给自动驾驶仪,以便于引导飞机在水平方向和垂直方向上飞行;该模块功能实现由两个组成部分,第一部分是飞行制导系统,其中包含了路径生成逻辑和制导控制逻辑。它负责根据当前飞行的阶段、状态等信息,计算FMS需要发布的路径和轨迹数据、飞行滚转指令等导航数据。该系统的功能主要依赖内部数学计算库(矢量缩放、数学运算、弧度角度转换、单位符号转换等)和导航计算库(不同参照系坐标转换、各种速度的计算、倾斜角度计算、各种路径计算、地面投影、航向偏差等)实现。第二部分是飞行制导系统的接口包装器,提供FMS和飞行制导系统的数据通信的接口、四种导航模式的信息(正常制导、矢量制导、OBS航向制导、PPOS当前位置等待制导)。整个飞行路线将以图形方式表示为一系列直线和圆弧。飞行员以图形方式查看飞行轨迹,并在整个飞行过程中保持飞机处于“在线”状态。如果飞机偏离航线,地图将显示飞机偏离航线,仪器偏差将指示交叉航迹误差的大小和方向。
导航模块,提供当前飞机的位置和速度数据,该数据是飞机进行飞行制导等功能的重要参数。功能实现分为三个部分。第一是GPS接收机的选择和数据的存储。根据飞行员设置、接收器状态(数据是否有效)、有效HFOM值决定GPS选择器,并将从选择的GPS接收器获取的数据存储到标准数据结构中;第二是GPS数据的更新。综合考虑信号时间延迟、风向量的干扰的因素,将计算出的接收到GPS时刻的位置和速度数据更新到相应的时间上;第三根据最后一次GPS更新的位置和速度数据计算出当前时刻的位置和速度数据并发布,如果GPS信号丢失(超时未收到有效信号)则使用航位推算法根据从大气数据传感器得到的真实空速、垂直速度和磁航向传感器得到的航向来估算位置、速度并发布。图10为导航模块数据更新流程图。程序开始先经过取ACR时间F100步骤获取到当前ACR的准确时间,然后进行GPS接收机的选择F101步骤,根据确定的GPS接收机判断所选接收机的GPS数据是否更新F102步骤,如果选择的GPS接收器的GPS数据进行了更新,就估算时间延迟和风速矢量F103,将系统中的飞机当前位置和速度进行数据更新F104。更新发布流程结束。如果选择的GPS接收器的GPS数据没有更新,那么判断传播的数据是否超时F105。如果选择的GPS接收器的GPS数据没有更新,并且没有超时,那么将当前系统的飞机位置和速度进行传播F107。如果选择的GPS接收器的GPS数据没有更新,但是超时了,那么用真空速和当前航向估算飞机位置F106。更新发布流程结束。
航路管理模块,对航路段列表进行管理。航路列表包含现有有效存储航路的列表,最多可以存储100飞行计划。从领域的角度来看,将飞机从起点移动到终点的路径定义成航路,航路中每个航路段都是一组数据,可以看成是两点之间的路径,包括航段长度、飞行航段的预估时间、到达航段终点的时间、飞行路径。每个点由经度、纬度和高度三维空间位置构成。航路限定最多200个航路段。模块提供在结构层之间和结构层内进行遍历功能。图5为航路结构概念图。航路B133航路结构的顶层结构,第二层由标准离场程序SID(B114)、直飞程序Direct(B116)、航线程序Airway(B117)、标准进场程序START(B118)组成,第三层是组成上一层各种程序的航路段(B115)组成,第四层由组成上一层各种航路段的位置点(B119)组成。航路管理器是该模块的核心类,为需要访问存储航路的应用程序提供用户界面,用于加载、添加、更新、删除和清除存储的航路。它还负责更新航路列表,访问文件I/O服务以执行文件I/O,并与其余FMS协调航路编辑。飞行计划可以存储在存储航路101中以便于航线页面B112通过存储航线列表B103调用,而不必在每次飞行时重新输入。每个航路都保存为一个单独的文件,添加新文件或修改现有存储航路时,会保存航路文件。为减少耗时,航路的列表信息存储在一个单独的文件中,系统初始化时加载。航线页面可以通过标准下拉列表B101选择航路点、复制航路点下拉列表B102选择航路点建立航路,也可以通过存储航线列表B103、航线列表B104、航线数据链B106来选择航线,输入航线名称B105从而生成本次航线,发布到FMS界面B107和在总线总发布航线B108,同时发布更新的存储航线B109和航线列表B110。另外,航线页面调用显示模块B111在界面上显示相应航线。用户通过航路点页A104创建用户航路点。创建用户航路点有三种方式,一是利用用户航路点经纬度C106的办法,输入用户航路点的经度和纬度,确定一个点为用户航路点;二是用户航路点输入C107的办法,输入与已知用户航路点的距离和方位的办法,来确定一个点;三是用户航路点当前位置C108,用当前位置作为一个点,来确定一个用户航路点。一些列的用户航路点形成了用户航路点列表C105。航路点页A104可以通过下拉列表C104的方式选择航路点,也可以在用户航路点表C105中选择航路点,如果是直达的情况会弹出直达弹出框C102进行选择。
冗余管理模块,用于对同一系统中多个FMS之间的数据同步、循环确定FMS运行状态、令牌管理。飞机上可能存在同时安装多套FMS的情况,需要将同步的信息发布到blackboard上,供专门的代理服务器提取和同步。FMS需要同步的信息包括飞行计划、航路、航路点、运行状态、导航数据库的有效性和标识符。多个FMS情况下,模块需要循环确定每个FMS的运行状态,并确定主运行FMS模块。为避免多个FMS修改数据可能造成的冲突,冗余管理提供令牌机制,确保一次只有一个FMS拥有可以修改数据的权限。
导航数据管理模块,负责为FMS内的所有子系统提供对导航数据库的访问。本模块设计了一个“表”的内部数据结构,表与导航数据库文件直接一一对应。加载导航数据库文件时,会将其数据加载到表中,表使用共享内存实现,可以在进程之间共享。只有一个进程负责加载,其余进程都只有读访问权。设计NavDb类作为各个进程与数据库存储记录表对接的主要功能类。
面向切片编程AOP:是针对业务处理过程中的切面进行提取,面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。图11是AOP代理方法实现的原理图。程序运行过程中,AOP框架基于目标类会动态生成一个对象,即目标类的代理类,该对象包含了目标对象的全部功能方法,可以作为目标对象使用,但是代理中的方法与目标方法又存在差异。AOP方法在特定的切入点(即功能切片涉及的功能点)添加了增强处理(即织入到目标类连接点上的一段程序代码),并回调了目标对象的方法。从而实现在核心功能模块运行过程中,自动的在需要执行公共行为的之处,执行公共行为的动作的目的。
实现AOP的方式有很多,从技术上分为静态织入和动态织入。本系统结合实际项目具体情况,采用动态织入的方式,即采用GoF代理设计模式,在运行期间对函数进行拦截,将切面动态织入函数体。
本系统按照AOP思想所划分的功能切片包括数据验证、计时、数据库有效验证、token管理、告警,其中,
数据验证:在整个系统应用中经常使用几种类型的数据,包括纬度、经度、海拔、距离、经过时间等。在使用这些数据之前需要对数据的合法性进行验证,比如验证数据是否对应当前单位类型,是否已有意义等等。数据验证方面数据使用之前切入对象中行验证。
计时:系统设置中,某些功能需要在设定时长后执行任务。需要使用定时器对切入对象进行定时。
数据库有效验证:很多模块都需要从数据库中读取相应的数据,但在调用数据库数据之前必须对数据有效性进行验证,包括数据库标识符、有效性、周期和到期日期等信息,需要使用数据库数据前切入对象进行数据有效性验证操作。
token管理:为避免有多个FMS同时编辑引起冲突,系统引入token管理,FMS需要先请求锁定token令牌,成功后锁定token,此时其他FMS不能编辑数据,请求提交成功后解锁token。token方面可以在请求(包括编辑或提交)前切入对象,根据当前FMS对象的状态以及当前token的状态进行相应操作。
告警:FMS在很多情况下会发出告警,例如转弯告警、空域告警、航路偏移告警等。告警切片可以在可能发出告警的模块中告警数据采集处切入告警功能,以便根据当时状态进行响应的操作。
本发明提供的一种基于面向对象编程OOP和面向切面编程AOP相结合策略的飞行管理系统,在飞行管理系统程序的设计上一方面基于OOP自上而下的纵向结构考虑,注重核心功能,从业务逻辑出发,按需求将系统划分成不同的功能模块,另一方面采用AOP思想,关注到分散到不同模块的公共行为,将这些横跨不同功能模块的共同动作进行统一管理,降低业务逻辑各模块之间的耦合,有效控制的代码的修改范围,提高开发效率,提高了软件质量。本发明结合了面向对象OOP和面向切面AOP的优点,两者互相补充和完善。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种飞行管理系统的设计方法,飞行管理系统是基于全球定位系统GPS信号在飞行中使用的导航系统,其特征在于,所述飞行管理系统采用面向对象OOP及面向切面AOP相结合的方法来设计;
面向对象OOP是指:按业务逻辑进行功能模块的划分;
面向切面AOP是指:提取跨越至少一个功能模块的横向切片;
功能模块在运行过程中,基于需求自动切入不同功能的横向切片。
2.如权利要求1所述飞行管理系统的设计方法,其特征在于,基于面向对象OOP将飞行管理系统划分成如下功能模块:
整体控制模块、数据链操作模块、图表接口模块、地图接口模块、预测和计算模块、制导模块、导航模块、航路管理模块、冗余管理模块、导航数据管理模块,其中,
整体控制模块,用于发布FMS数据、控制雷达导航模式、控制OBS模式、切换主导航源、确定推荐的助航设备、确定FSD、发送与FMS相关的警报、制导、路线预测功能;
数据链操作模块,用于METAR航空例行天气报告、高处风、高处温度和TAF终端机场天气预报天气的发布;
图表接口模块,用于请求特定的机场或机场关联程序的航空图表,跳转显示航空图表的图像界面,航空图表包括:标准离场程序、标准机场程序和进近程序以及机场图表;
地图接口模块,用于定期提取地图所需路线中每个航路段的信息,发布到地图接口,在显示屏上准确描述航路段;
预测和计算模块,根据飞机预设的相关参数计算飞机中下一航段的航向、距离和统计数据,统计数据包括剩余燃油、预计到达时间、预计飞行时间;
制导模块,分为横向制导和纵向制导,引导飞机在水平方向和垂直方向上飞行;
导航模块,根据GPS信号提供当前飞机的位置和速度数据;
航路管理模块,对航路段列表进行管理,包括航段长度、飞行航段的预估时间、到达航段终点的时间、飞行路径;
冗余管理模块,用于对同一系统中的多个FMS之间的数据同步、循环确定FMS运行状态、令牌管理;
导航数据管理模块,负责为FMS提供对导航数据库的访问。
3.如权利要求1所述飞行管理系统的设计方法,其特征在于,横向切片包括:
数据验证,验证输入数据的合法性及有效性;
计时,通过定时器对切入对象进行定时;
数据库有效验证,用于对各种访问导航数据库的请求链接进行数据有效性验证;
token管理,用于限制对FMS数据修改的权限;
告警,用于告警信息的判断和发布。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910806049.9A CN112445459A (zh) | 2019-08-28 | 2019-08-28 | 一种飞行管理系统的设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910806049.9A CN112445459A (zh) | 2019-08-28 | 2019-08-28 | 一种飞行管理系统的设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112445459A true CN112445459A (zh) | 2021-03-05 |
Family
ID=74741216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910806049.9A Pending CN112445459A (zh) | 2019-08-28 | 2019-08-28 | 一种飞行管理系统的设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112445459A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113094205A (zh) * | 2021-04-08 | 2021-07-09 | 民航数据通信有限责任公司 | 基于数据链的进离场增强型展示装置 |
CN114218324A (zh) * | 2021-11-19 | 2022-03-22 | 中国直升机设计研究所 | 一种直升机飞管数据库操作同步方法 |
CN116449997A (zh) * | 2023-06-15 | 2023-07-18 | 北京世冠金洋科技发展有限公司 | 一种飞机飞行参数配置方法、装置、设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101403898A (zh) * | 2008-10-31 | 2009-04-08 | 中国航空无线电电子研究所 | 民用飞机驾驶舱电子系统的输入法及其装置 |
US7698025B1 (en) * | 2006-09-14 | 2010-04-13 | The Boeing Company | Integrating communication and surveillance |
CN104332072A (zh) * | 2014-10-22 | 2015-02-04 | 北京航空航天大学 | 通用航空飞行计划管理系统 |
EP2894623A1 (en) * | 2014-01-14 | 2015-07-15 | Austin Digital Inc | Methods for matching flight data |
CN105528678A (zh) * | 2015-12-10 | 2016-04-27 | 中国航空工业集团公司西安航空计算技术研究所 | 一种通用飞机的机载飞行计划管理系统 |
CN108731686A (zh) * | 2018-05-30 | 2018-11-02 | 淮阴工学院 | 一种基于大数据分析的无人机导航控制方法及系统 |
CN109557572A (zh) * | 2018-12-14 | 2019-04-02 | 西安索格亚航空科技有限公司 | 一种基于北斗的飞行导航系统和方法 |
-
2019
- 2019-08-28 CN CN201910806049.9A patent/CN112445459A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7698025B1 (en) * | 2006-09-14 | 2010-04-13 | The Boeing Company | Integrating communication and surveillance |
CN101403898A (zh) * | 2008-10-31 | 2009-04-08 | 中国航空无线电电子研究所 | 民用飞机驾驶舱电子系统的输入法及其装置 |
EP2894623A1 (en) * | 2014-01-14 | 2015-07-15 | Austin Digital Inc | Methods for matching flight data |
CN104332072A (zh) * | 2014-10-22 | 2015-02-04 | 北京航空航天大学 | 通用航空飞行计划管理系统 |
CN105528678A (zh) * | 2015-12-10 | 2016-04-27 | 中国航空工业集团公司西安航空计算技术研究所 | 一种通用飞机的机载飞行计划管理系统 |
CN108731686A (zh) * | 2018-05-30 | 2018-11-02 | 淮阴工学院 | 一种基于大数据分析的无人机导航控制方法及系统 |
CN109557572A (zh) * | 2018-12-14 | 2019-04-02 | 西安索格亚航空科技有限公司 | 一种基于北斗的飞行导航系统和方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113094205A (zh) * | 2021-04-08 | 2021-07-09 | 民航数据通信有限责任公司 | 基于数据链的进离场增强型展示装置 |
CN114218324A (zh) * | 2021-11-19 | 2022-03-22 | 中国直升机设计研究所 | 一种直升机飞管数据库操作同步方法 |
CN116449997A (zh) * | 2023-06-15 | 2023-07-18 | 北京世冠金洋科技发展有限公司 | 一种飞机飞行参数配置方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11353886B2 (en) | Aircraft descent phase management | |
US5121325A (en) | Required time of arrival (RTA) control system | |
US11257382B2 (en) | System and method for optimizing a cruise vertical profile subject to a time-of-arrival constraint | |
US6317659B1 (en) | Layered subsystem architecture for a flight management system | |
US8386097B2 (en) | Method and device to assist in the guidance of an airplane | |
US7904213B2 (en) | Method of assisting in the navigation of an aircraft with an updating of the flight plan | |
US8565944B1 (en) | Alternate diversion airport planner | |
US8396615B2 (en) | Method for changing the path followed by an aircraft, the aircraft initially following a predefined path, the method allowing a possible return of the aircraft to the predefined path | |
CN112445459A (zh) | 一种飞行管理系统的设计方法 | |
US20080300737A1 (en) | Method and device for calculating a flight plan | |
US9963247B2 (en) | Method and system for automatic determination of an optimized descent and approach profile for an aircraft | |
CN105425813A (zh) | 用于规划轨道的实时计算、组合任务的方法及用于管理这样的轨道的系统 | |
US9875658B2 (en) | Method of computing aircraft trajectory subject to lateral and vertical constraints | |
US8594863B2 (en) | Method and device for aiding the management of an aircraft flight receiving a control clearance | |
US8825230B2 (en) | Multi core vehicle management unified user interface system and method | |
US10026327B2 (en) | Managing the trajectory of an aircraft in case of engine outage | |
JP2019051924A (ja) | 性能表のデータリンク機能を有するフライトマネジメントシステム | |
US9410807B2 (en) | Method for determining an offset lateral trajectory for an aircraft | |
KR102058510B1 (ko) | 무인비행체의 안전 운영을 위한 장애물 정보를 제공하는 방법 및 이를 위한 지도 서버, 그리고 이를 포함하는 무선통신망 기반의 무인비행체 자동운항 운영 시스템 | |
US20220068148A1 (en) | Device and method for managing aircraft systems | |
JP2020184316A (ja) | 都市航空ビークルの航法性能 | |
CN111240361A (zh) | 一种基于四维数据的飞行控制方法、装置、设备及存储介质 | |
US8880339B1 (en) | Schematic display for vertical navigation | |
Paielli | Trajectory specification applied to terminal airspace | |
US20220084514A1 (en) | System and method for smart validation of pre-conditions in executing pilot voice commands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |