陳靜杰,肖冠平
(中國民航大學(xué) 航空自動(dòng)化學(xué)院,天津300300)
當(dāng)前,利用飛機(jī)快速存儲(chǔ)記錄裝置QAR 數(shù)據(jù)重建飛機(jī)油耗模型、分析和估計(jì)燃油效率得到眾多學(xué)者的關(guān)注。QAR 數(shù)據(jù)包含了大量與飛機(jī)油耗密切相關(guān)的高度、速度、起飛重量、發(fā)動(dòng)機(jī)工作狀態(tài)等參數(shù),每個(gè)參數(shù)又有大量的數(shù)據(jù),這些數(shù)據(jù)為飛機(jī)油耗模型分析提供了良好的基礎(chǔ)[1-3]。
現(xiàn)有QAR 數(shù)據(jù)應(yīng)用系統(tǒng)主要用于飛機(jī)故障預(yù)測(cè)[4]、超限事件評(píng)估[5]和發(fā)動(dòng)機(jī)監(jiān)控[6]方面,在飛機(jī)油耗分析方面的應(yīng)用相對(duì)較少。針對(duì)這種需求,經(jīng)過深入分析和優(yōu)選,本文提出利用QAR 數(shù)據(jù)基于Matlab GUI設(shè)計(jì)并實(shí)現(xiàn)飛機(jī)油耗分析工具。該工具可以為飛機(jī)油耗分析提供人機(jī)交互的操作環(huán)境,并實(shí)現(xiàn)QAR 數(shù)據(jù)的保存和管理。文章最后通過實(shí)例概要闡明了分析工具的使用步驟。
在利用QAR 數(shù)據(jù)進(jìn)行飛機(jī)油耗分析時(shí)往往要對(duì)一定規(guī)模的QAR 數(shù)據(jù)進(jìn)行處理,因此有必要設(shè)計(jì)與建立QAR 數(shù)據(jù)倉庫。只有建立了QAR 數(shù)據(jù)倉庫,才能方便的根據(jù)分析需求對(duì)QAR 數(shù)據(jù)進(jìn)行不同條件的查詢和篩選,以便對(duì)不同條件下的飛行油耗進(jìn)行統(tǒng)計(jì)回歸分析以及為建立油耗模型提供數(shù)據(jù)來源的樣本篩選。
在進(jìn)行QAR 數(shù)據(jù)倉庫設(shè)計(jì)前,首先要根據(jù)分析需求考慮油耗分析中用到的各項(xiàng)參數(shù),以及數(shù)據(jù)倉庫的設(shè)計(jì)對(duì)以后分析工具功能擴(kuò)展是否方便等因素,然后再進(jìn)行數(shù)據(jù)倉庫建模。
數(shù)據(jù)倉庫數(shù)據(jù)來源于QAR 文件 (以CSV 格式存儲(chǔ))。文件的讀取應(yīng)能實(shí)現(xiàn)單個(gè)或批量讀取。QAR 文件讀取后根據(jù)分析需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,比如從QAR 文件中提取航段信息、起飛重量、起飛日期、起飛時(shí)間等參數(shù),以及對(duì)飛行階段劃分為上升、巡航和下降3個(gè)階段,然后分別計(jì)算3個(gè)階段的飛行距離和油耗,并且計(jì)算全程的飛行距離和油耗等。
考慮到數(shù)據(jù)存儲(chǔ)的完整性和可靠性,還必須進(jìn)行用戶權(quán)限設(shè)計(jì),賦予不同用戶類型不同的使用權(quán)限。同時(shí),工具設(shè)計(jì)還應(yīng)該考慮遠(yuǎn)程計(jì)算機(jī)終端可以通過網(wǎng)絡(luò)對(duì)數(shù)據(jù)進(jìn)行訪問。
因此,系統(tǒng)功能主要包括:①文件的讀取和處理;②QAR 數(shù)據(jù)的存儲(chǔ)和管理;③油耗分析和油耗建模樣本篩選。此外還包括用戶權(quán)限管理和遠(yuǎn)程訪問機(jī)制。
根據(jù)飛機(jī)油耗分析工具的功能需求,系統(tǒng)框架結(jié)構(gòu)可以分為:數(shù)據(jù)管理模塊、輸入/輸出模塊、油耗分析模塊和權(quán)限管理模塊,系統(tǒng)框架如圖1所示。
圖1 系統(tǒng)框架結(jié)構(gòu)
數(shù)據(jù)管理模塊用于QAR 歷史數(shù)據(jù)庫的管理、數(shù)據(jù)的查詢和篩選。輸入模塊主要完成QAR 文件的讀取,讀取過程中自動(dòng)校驗(yàn)文件的完整性,剔除錯(cuò)誤文件,讀取完成后進(jìn)行飛行階段劃分、油耗和距離計(jì)算等數(shù)據(jù)預(yù)處理。油耗分析模塊用于計(jì)算并估計(jì)在某個(gè)顯著水平條件下固定機(jī)型固定航段油耗標(biāo)準(zhǔn)、置信區(qū)間和其它統(tǒng)計(jì)回歸分析,進(jìn)行多航班的參數(shù)曲線對(duì)比。
輸出模塊主要用于展示各類飛行參數(shù)曲線,顯示數(shù)值計(jì)算結(jié)果,以及分析報(bào)告和油耗建模所需樣本參數(shù)的導(dǎo)出。權(quán)限管理模塊通過不同的用戶類型實(shí)現(xiàn)對(duì)各模塊功能的使用限制,保證數(shù)據(jù)的可靠性和完整性。
飛機(jī)油耗分析工具在Matlab GUI開發(fā)環(huán)境下設(shè)計(jì)實(shí)現(xiàn)。QAR 數(shù)據(jù)中油耗和距離等參數(shù)的處理分析需要運(yùn)用大量的矩陣運(yùn)算,借鑒Matlab內(nèi)置函數(shù)進(jìn)行算法設(shè)計(jì)大大加快了工具的開發(fā)速度[7]。此外,Matlab GUI開發(fā)環(huán)境可以便捷地創(chuàng)建各種圖形句柄對(duì)象,建立分析工具友好的用戶界面。
在進(jìn)行飛機(jī)油耗建模分析時(shí)需要對(duì)飛行階段進(jìn)行上升段、巡航段和下降段3個(gè)階段的識(shí)別,以便有針對(duì)性的計(jì)算各個(gè)飛行階段的距離和燃油消耗以及對(duì)各個(gè)階段進(jìn)行油耗模型分析。為此,對(duì)飛行階段的劃分進(jìn)行了算法設(shè)計(jì),利用QAR 數(shù)據(jù)中飛行高度參數(shù)alt、馬赫數(shù)mach 和垂直速度ivv 這3個(gè)參數(shù)的相關(guān)判斷對(duì)飛行中的3個(gè)階段進(jìn)行識(shí)別:
侗族,1985年生于廣西三江侗族自治縣。2009年畢業(yè)于廣西藝術(shù)學(xué)院油畫第一工作室。結(jié)業(yè)于中國美術(shù)家協(xié)會(huì)、中央民族大學(xué)第四屆西部少數(shù)民族青年美術(shù)家創(chuàng)作高研班,第五屆西部少數(shù)民族青年美術(shù)家創(chuàng)作精品班,第六屆全國青年美展創(chuàng)作班。中國美術(shù)家協(xié)會(huì)會(huì)員、廣西美術(shù)家協(xié)會(huì)會(huì)員。2015年受聘為國家民族畫院畫家。獲2016年國家藝術(shù)基金資助青年藝術(shù)人才、2018年國家藝術(shù)基金優(yōu)秀項(xiàng)目滾動(dòng)資助作品。多次參加省級(jí)、國家級(jí)展覽并獲獎(jiǎng),作品被中國美術(shù)館、國家藝術(shù)基金、廣西壯族自治區(qū)政府、吳冠中藝術(shù)館、江蘇美術(shù)館、蘇州美術(shù)館、陜西美術(shù)博物館、武狄天成藝術(shù)館、中國—東盟榜樣美術(shù)館等機(jī)構(gòu)收藏。
步驟1 從飛行高度參數(shù)alt 中尋找最大高度數(shù)值altmax,再從alt中選取超過(altmax-h(huán))數(shù)值的所有數(shù)據(jù)點(diǎn)altsel(h根據(jù)altmax的不同視情選取,通常取2000~3000英尺),同時(shí)依據(jù)altsel的起點(diǎn)和終點(diǎn)對(duì)應(yīng)從馬赫數(shù)mach 參數(shù)和垂直速度ivv 參數(shù)中選取machsel、ivvsel。
步驟2 由于飛機(jī)在巡航階段飛行馬赫數(shù)會(huì)穩(wěn)定在某個(gè)范圍內(nèi),從machsel中選取超過MACH 的所有數(shù)據(jù)點(diǎn)machsel1(MACH 根據(jù)不同的altmax和實(shí)際經(jīng)驗(yàn)進(jìn)行選?。?,同時(shí)依據(jù)machsel1的起點(diǎn)和終點(diǎn)對(duì)應(yīng)從垂直速度ivvsel中選取ivvsel1。
步驟3 飛機(jī)在巡航階段垂直速度ivv 參數(shù)將在ivvl~ivvh范圍內(nèi)波動(dòng) (通常為 [-100,+100]英尺/分鐘),依據(jù)這個(gè)從垂直速度ivvsel1數(shù)據(jù)點(diǎn)中確定進(jìn)入巡航段的起點(diǎn)begin_point和離開巡航段的終點(diǎn)end_point。
飛機(jī)油耗計(jì)算利用QAR 數(shù)據(jù)中發(fā)動(dòng)機(jī)的燃油流量參數(shù)ff(fuel flow),單位為PPH (磅/小時(shí))。發(fā)動(dòng)機(jī)燃油流量采樣以秒為間隔,對(duì)燃油流量按時(shí)間t進(jìn)行積分運(yùn)算,即可算出航段油耗[8]。計(jì)算公式為
式中:tf——發(fā)動(dòng)機(jī)從啟動(dòng)到關(guān)機(jī)的時(shí)間,ff1、ff2——雙發(fā)飛機(jī)左右發(fā)動(dòng)機(jī)的燃油流量。利用飛行階段劃分算法中求出的巡航段起點(diǎn)和終點(diǎn)分別對(duì)各個(gè)飛行階段進(jìn)行燃油流量積分運(yùn)算,從而求出上升段、巡航段和下降段3個(gè)飛行階段的油耗。
飛行距離的計(jì)算是通過WGS-84坐標(biāo)系下的大圓距離算法實(shí)現(xiàn)的。地面上任意兩點(diǎn)與地球球心確定唯一的大圓,這個(gè)大圓上連接這兩點(diǎn)的劣弧長度就是大圓距離。計(jì)算大圓距離的方式是利用地面上任意兩點(diǎn)的經(jīng)緯度,將經(jīng)緯度數(shù)據(jù)轉(zhuǎn)化為球面坐標(biāo)系坐標(biāo),求出兩點(diǎn)間的直線距離,然后利用地球半徑求出兩點(diǎn)連接地球球心的夾角,進(jìn)而求出劣弧長度即大圓距離。
實(shí)際飛行距離的計(jì)算則是利用QAR 數(shù)據(jù)中經(jīng)緯度參數(shù),求出每秒間大圓距離,然后進(jìn)行累加。各個(gè)階段的飛行距離利用飛行階段劃分算法中求出的巡航段起點(diǎn)和終點(diǎn)分別計(jì)算得到。
設(shè)計(jì)思路是通過用戶登錄界面進(jìn)行分析工具的登錄操作,將用戶輸入的用戶名、密碼與用戶表中存儲(chǔ)的用戶信息進(jìn)行比較,輸入的用戶名和密碼檢驗(yàn)一致后,根據(jù)用戶的類型對(duì)工具中涉及到數(shù)據(jù)管理的某些功能進(jìn)行開放或屏蔽,這樣就保證了數(shù)據(jù)的安全和完整。
用戶信息的比對(duì)是通過訪問數(shù)據(jù)倉庫中的用戶信息實(shí)現(xiàn)的,但遠(yuǎn)程計(jì)算機(jī)有可能因網(wǎng)絡(luò)故障無法連接數(shù)據(jù)倉庫,這時(shí)需要設(shè)計(jì)一個(gè)本地賬號(hào)用于登錄分析工具。本地賬號(hào)只能在網(wǎng)絡(luò)無法連接的情況下使用。本地賬號(hào)所能使用的軟件功能是最受限的。
分析工具的用戶界面通過Matlab GUI界面編輯器設(shè)計(jì),利用界面編輯器可以快速、便捷地繪制所見即所得的用戶界面[9]。通過在界面編輯器上點(diǎn)擊面板、按鈕、坐標(biāo)軸、文本框、滑動(dòng)條等基本控件并將這些控件拖拽到布局區(qū)域,界面布局完成后運(yùn)行界面編輯器,將會(huì)自動(dòng)生成包含MATLAB函數(shù)用于控制界面運(yùn)行的可編程m 文件。該m 文件提供界面初始化所需的代碼以及控件回調(diào)函數(shù)callbacks框架,通過在控件的回調(diào)函數(shù)中編寫代碼實(shí)現(xiàn)界面所要執(zhí)行的功能。
QAR 數(shù)據(jù)倉庫建模是構(gòu)建數(shù)據(jù)倉庫的重要組成部分,是數(shù)據(jù)倉庫構(gòu)造開始的第一步[10]。通過深入分析QAR 數(shù)據(jù)特點(diǎn),根據(jù)飛機(jī)油耗分析方面所關(guān)心的問題,考慮到提高查詢性能以及便于實(shí)現(xiàn)不同條件的查詢,來進(jìn)行QAR 數(shù)據(jù)倉庫建模。
一個(gè)航段對(duì)應(yīng)多個(gè)QAR 文件,對(duì)于QAR 文件,其記錄的飛機(jī)注冊(cè)號(hào)可能不同,飛行日期可能不同,但航段信息都是一致的,因此航段信息應(yīng)單獨(dú)建立一個(gè)表,設(shè)計(jì)見表1。
表1 航段信息
距離信息表和油耗信息表用于存儲(chǔ)QAR 數(shù)據(jù)預(yù)處理后的距離和油耗信息,距離信息表和油耗信息表的唯一標(biāo)識(shí)碼是文件名,設(shè)計(jì)見表2、表3。
表2 距離信息
表3 油耗信息
除此之外建立航班信息表用于存儲(chǔ)起飛日期、起飛重量等信息,設(shè)計(jì)見表4。
表4 航班信息
QAR 文件有多個(gè)參數(shù),每個(gè)參數(shù)都有數(shù)千到數(shù)萬個(gè)數(shù)據(jù),通過將數(shù)據(jù)文件存儲(chǔ)表拆分為多個(gè),能提高數(shù)據(jù)倉庫的訪問效率,設(shè)計(jì)見表5。
表5 QAR 文件信息
為了進(jìn)行用戶權(quán)限管理,存儲(chǔ)用戶信息,還要建立用戶表。
分析人員使用管理員提供的帳號(hào)登錄飛機(jī)油耗分析工具軟件,用戶登錄界面如圖2所示。
登錄后看到的是QAR 文件處理界面,如圖3所示,該界面處理的是QAR 文件。此界面主要功能區(qū)域有菜單區(qū)、數(shù)據(jù)處理區(qū)、信息顯示區(qū)、距離計(jì)算區(qū)、油耗計(jì)算區(qū)和繪制曲線區(qū)。用戶通過 “導(dǎo)入QAR 文件”按鈕導(dǎo)入QAR 文件,導(dǎo)入完成后會(huì)在各功能區(qū)域上顯示文件名、飛機(jī)注冊(cè)號(hào)、航段、起飛機(jī)場、到達(dá)機(jī)場、飛行距離以及燃油消耗等信息,還可進(jìn)行QAR 數(shù)據(jù)部分參數(shù)曲線圖形繪制。點(diǎn)擊“保存計(jì)算結(jié)果”按鈕可以將計(jì)算結(jié)果保存到文件或數(shù)據(jù)倉庫。
圖2 用戶登錄界面
圖3 QAR 文件處理界面
圖4 油耗分析界面
點(diǎn)擊菜單區(qū)的 “工作方式”菜單選擇 “油耗分析”菜單項(xiàng),進(jìn)入油耗分析界面,如圖4所示,該界面處理的是來自QAR 數(shù)據(jù)倉庫的數(shù)據(jù)。此界面的主要功能區(qū)域有菜單區(qū)、數(shù)據(jù)查詢區(qū)、文件列表區(qū)、信息查看區(qū)、繪圖分析區(qū)、統(tǒng)計(jì)特性區(qū)、數(shù)據(jù)導(dǎo)出區(qū)以及航段管理和用戶管理功能區(qū)域。在此界面下可進(jìn)行QAR 數(shù)據(jù)的查詢和管理,參數(shù)曲線分析、油耗統(tǒng)計(jì)回歸分析、油耗建模樣本參數(shù)導(dǎo)出、航段管理和用戶管理等操作。
航段管理界面如圖5所示,分析人員可以查看QAR 數(shù)據(jù)倉庫中的所有航段信息。
圖5 航段管理界面
本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)利用QAR 數(shù)據(jù)進(jìn)行飛機(jī)油耗分析的工具軟件。本文首先分析了該工具軟件的功能需求并根據(jù)功能需求闡述了其系統(tǒng)框架結(jié)構(gòu)設(shè)計(jì)。文中著重介紹了飛行階段劃分算法設(shè)計(jì)、飛行油耗和距離算法設(shè)計(jì)、用戶權(quán)限管理設(shè)計(jì)和界面設(shè)計(jì)的開發(fā)思路。該工具軟件具有良好的實(shí)用性和交互性,在課題項(xiàng)目的實(shí)際應(yīng)用中,為利用QAR 數(shù)據(jù)進(jìn)行飛機(jī)油耗分析提供了有力的幫助。在今后的工作中,將進(jìn)一步增強(qiáng)分析工具油耗模型的構(gòu)建能力,并通過分析自動(dòng)給出相關(guān)節(jié)油策略。
[1]Kim BY,F(xiàn)leming GG,Lee JJ,et al.System for assessing aviation’s global emissions (SAGE),Part 1:Model description and inventory results [J].Transportation Research Part D:Transport and Environment,2007,12 (5):325-346.
[2]Egenhofer C.The making of the EU emissions trading scheme:Status,prospects and implications for business[J].European Management Journal,2007,25 (6):453-463.
[3]LIU Jing.The aircraft fuel estimation model based on flight data analysis [D].Nanjing:Nanjing University of Aeronautics and Astronautics,2010 (in Chinese). [劉婧.基于飛行數(shù)據(jù)分析的飛機(jī)燃油估計(jì)模型 [D].南京:南京航空航天大學(xué),2010.]
[4]QING Liyong.Research on airplane fault prognosis and diagnosis system based on flight data[D].Nanjing:Nanjing University of Aeronautics and Astronautics,2007 (in Chinese).[卿立勇.基于飛行數(shù)據(jù)的飛機(jī)故障預(yù)測(cè)與故障診斷系統(tǒng)研究[D].南京:南京航空航天大學(xué),2007.]
[5]WANG Tianming.Research of flight safety model based on QAR [D].Tianjin:Civil Aviation University of China,2008(in Chinese).[王天明.基于QAR 數(shù)據(jù)的飛行安全模型研究[D].天津:中國民航大學(xué),2008.]
[6]ZHOU Baizheng.Design and implementation of qar data processing system [D].Tianjin:Civil Aviation University of China,2009 (in Chinese).[周百政.QAR 數(shù)據(jù)處理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [D].天津:中國民航大學(xué),2009.]
[7]CAO Yuru,ZHENG Jiming.Image compression and its completed based on toolbox of Matlab [J].Computer Engineering and Design,2009,30 (12):2998-3000 (in Chinese).[曹玉茹,鄭戟明.基于Matlab的圖像壓縮實(shí)現(xiàn) [J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30 (12):2998-3000.]
[8]CHEN Jingjie,ZOU Yinghuan.Simulation for significant impact parameter extraction method in fuel consumption estimation[J].Computer Simulation,2013,30 (6):55-58 (in Chinese).[陳靜杰,鄒迎歡.油耗預(yù)測(cè)中顯著影響參數(shù)提取方法的仿真 [J].計(jì)算機(jī)仿真,2013,30 (6):55-58.]
[9]WANG Yulin,GE Lei,LI Yanbin.New-style interface development tool: MATLAB/GUI [J].Radio Communication Technology,2008,34 (6):50-52 (in Chinese). [王玉林,葛蕾,李艷斌.新型界面開發(fā)工具:MATLAB/GUI[J].無線電通信技術(shù),2008,34 (6):50-52.]
[10]DOU Hongxia,YANG Hui,LIANG Lingjun.Realization of the QAR data warehouse based on SQL server[J].Aviation Maintenance and Engineering,2013 (2):64-67 (in Chinese).[竇紅霞,楊慧,梁領(lǐng)軍.基于SQLServer的QAR 數(shù)據(jù)倉庫實(shí)現(xiàn) [J].航空維修與工程,2013 (2):64-67.]