浅析利用Python语言实现起飞着陆分析批量运算

(整期优先)网络出版时间:2022-05-12
/ 2


浅析利用 Python语言实现起飞着陆分析批量运算

张尧 1,包雨卓 2,王岳 3

( 1,3中国民航大学 ,飞行分校,天津市, 300300

2中国国际航空公司,运控中心,成都市,610207)

摘要:大型的航空公司为了保持竞争力,每年都在逐步引进新飞机,新增机型都需要重新计算机场分析手册。大量的人力浪费在点击计算、更新机场分析手册中,而且每年随着厂商、机型、机场的增加,人为差错也不断增加。本文讨论的是以最为复杂的空客(AIRBUS)机型为例如何将不同厂商、不同机型的机场分析,整合到一个平台中,采用MYSQL数据库分别搭建了机型数据库、机场数据库,通过PYTHON编程语言,解读飞机制造厂商的性能软件底层原理,批量生成相关计算文件,最终达到批量生成起飞、着陆机场分析手册。同时展望未来,通过搭建多服务器,实现更快速的并行、独立计算,还可将平台运用在电子飞行包(EFB)中。

关键字:机场分析手册 批量计算 性能工程师

一、起飞着陆分析批量计算程序的需求

根据CCAR25部中对关键发动机不工作时飞行适航性能的要求,及121部提出的运行性能要求,包括速度、跑道、爬升越障和外部因素(气象和机场情况)等,需要对飞机的起飞和着陆性能进行分析计算,起飞性能包括该飞机各种条件下的最佳襟翼、最大允许的起飞重量和起飞速度等数据;着陆性能包括该飞机的最大允许着陆重量、所需着陆距离、实际着陆距离等。

目前多采用人工单点计算的模式,以空客A320NEO机型为例,需要制作起飞着陆分析的机场约300个,不同的机场受机场标高、跑道长度、障碍物等限制因素的影响,需要为每一个机场设置不同的计算模板;对于高原、高高原或其他特殊机场,需要设置多个模板,以满足不同条件下的起降需求。在完成单点计算后,再将起飞着陆分析分别整理成册,并印刷或提供电子版供机组使用。

对于大型航空承运人而言,随着机队规模的不断扩大,机型构型也日益复杂。同时,不同的厂商的计算软件也不尽相同,每个软件的界面、设置、核心算法、输出格式都不相同,容易混淆及和出差错。搭建通用的起飞着陆分析批量计算平台可以实现机型、机场的统一调用与计算,批量计算提高工作效率。

综上所述,本文所探讨的就是通过一个简易的平台将不同厂商的软件合二为一,最终实现机场分析手册(起飞、着陆)的批量计算。由于波音、商飞的实现比较容易,本文以较为复杂的空客机型为例来展示该平台的实现。

二、空客公司性能工程师计算软件核心算法解析

空客提供的性能工程师计算软件名为Performance Engineer’s Program,简称PEP,其主要计算模块为OCTOPUS,计算标准格式为IATA(国际航空运输协会)规定的SCAP(飞机性能标准计算)格式。[1]

在使用PEP软件进行起飞性能分析时,软件会在临时存储目录中生成xx.pep 和 xx.top 两个文件,在进行着陆性能分析时,软件会生成xx.pep和xx.lop 两个文件。

xx.lop文件同xx.top文件结构雷同,以xx.top文件为例,解析如下:

xx.top文件中一共包含19个块级内容,其中第3-7、9-16块分别是飞机基本参数(结构限制重量、重心范围等)、起落架、扰流板等参数,为机型固定参数,无需进行更改;第18、19项为计算的指定参数。

第8块为机场跑道数据,可以直接关联机场数据库,也可以人为进行设置,需要关联机场数据库的变量有:跑道机场名、跑道号、机场四字、三字码、跑道长度、PCN值。从需求倒推数据库的构造,在机场数据库中需要建立如上的字段,以方便计算的使用。[2]

第17块的表格数据主要由修订参数表、构型参数表、风速表、温度表、及追加其他补充说明飞机状态信息等表格组成。第17块数据晦涩难懂,有无数个小表格集成,同时表格中以数字代码来代表具体的内容意思,表格数据的代码需要反复使用PEP性能计算软件结合winmerg软件进行反复对比。[3]

根据上述对空客机场手册软件生成的研究,计算所需要的数据库共有三个:机型相关数据库、机场相关数据库和计算政策数据库,然后根据不同的机型机场跑道批量生成不同的.top/.lop文件了,接下来的问题就是如何运行已经生成的文件。

通过对PEP性能软件每次计算,都会调用TaskManager.exe,经过测试发现,只需要将生成的x.pep和x.top/.lop文件拖放进TaskManager.exe窗口中,就能自动进行计算,然后将计算成功的文件,通过ADOBE ACROBAT软件合成,加上页码就能生成相关机型的机场分析手册。:

三、起降批量计算软件的制作

该软件通过简单易学、多平台的PYTHON 语言来编写,GUI通过PYTHON自带的TKINTER来生成。

难点在于对数据库的搭建,数据库搭建通过MYSQL,以机场数据库为例,需要3张数据表,第一个表格为机场基础信息表,需要包含机场的四字码、三字码、中文名、英文名、标高;第二个表格为跑道信息表,跑道信息表根据机场四字码、三字码与机场基础信息表关联;第三个表格为障碍物数据表,障碍物数据库表根据机场四字码、三字码、跑道号与跑道信息表关联。[4]

通过TKINTER对Python编写的软件进行封装如图1:利用python自带的open函数,通过读取MYSQL数据库参照上文所描述的相关固定格式来进行对.pep/.top/.lop的写入生成。

627c6decdc362_html_b93b9f1bbdea8df3.png

1 批量计算平台计算展示

最后通过加载PYTHON第三方库PYWINAUTO使用WIN32库来达到在WINDOWS平台下,将生成的.pep/.top/.lop文件拖拽到TASKMANAGER.EXE中,这样机场分析手册就生成了,通过循环加载机型、机场数据,就可以批量生成机场分析手册。

四、未来的展望

批量计算机场分析手册,只是解决了对于机场分析手册模板的快速准确创立,但是在计算速度上并没有提高。在真正的公司运行中,可以通过云服务器建立多个平台,每个服务器都安装相关性能软件,这样可以做到服务器的独立、并行的计算,效率就可以极大地提高。

自主编程实现起降分析的批量计算除了可以使航空公司运行的效率、安全更上一个台阶,保证了飞行的稳定、节油,同时极大地解放了飞行性能工程师投入在机械化无意义的点击时间,用更多的时间投入到单发应急程序设计等更能增加公司安全、效益的工作中去。


参考文献:

[1] 空中客车 掌握飞机性能[M] 空中客车 2008

[2] 黄太平 飞机性能工程[M] 科学出版社 2005 P29-P69

[3] 刘晓明,苏彬,孙宏 飞机性能与计划[M] 西南交通大学出版社 2003 P18-P71

[4] 余江 高原/复杂地形运作的飞机性能分析[M] 西南交通大学出版社 2006 P44-P90

作者简介:

第一作者 张尧(2000-),男(汉族),河南人,本科生,主要研究领域为飞行运行控制、飞行技术。

第二作者 包雨卓(1990-),男(汉族),成都人,飞机性能工程师,硕士研究生,主要研究领域为飞机性能、飞行安全、软件开发、数据库编程。

第三作者 王岳(1983-),男(汉族),天津市人,讲师,博士研究生,主要研究领域为飞行性能、飞行计划、飞行安全。

致谢:基金项目:天津市大学生创新创业项目(202110059123)




基金项目:天津市大学生创新创业项目(202110059123)