黃紅兵++徐瀟
摘 要:本文主要介紹哈爾濱太平國際機場相似預報系統的軟件研發技術設計和技術措施,包括軟件功能結構、功能指標的主要技術設計,以及實現信息網絡監控、數據讀取分析、相似計算預報、綜合輔助功能等的主要技術措施。
關鍵詞:預報系統 軟件 技術設計 技術措施
中圖分類號:TP311 文獻標識碼:A 文章編號:1674-098X(2017)11(a)-0013-03
2016年底,筆者攜科研組完成了中國民航局空管局下達的科研項目《哈爾濱太平國際機場相似預報系統》(以下簡稱預報系統)的研發工作,并于2017年1月通過驗收。文獻[1]詳細介紹了預報系統的研發技術資料,包括預報模式設計、預報系統研發、試運行效果等。本文主要從軟件程序編寫的角度,介紹預報系統軟件的主要技術設計和主要技術措施。
1 主要技術設計
1.1 硬件配置簡介
為滿足實現科研攻關技術目標,預報系統研發充分利用了哈爾濱機場現有的氣象信息網和氣象觀測設備,其中硬件配置設計充分考慮了以下條件:
(1)能夠實現訪問氣象信息網的地方氣象信息,以便讀取國家氣象局發布的T639數值預報格點場數據。
(2)能夠訪問氣象信息網數據庫,以便讀取區域歷史數據。
(3)能夠訪問氣象信息網的觀測終端的自動氣象觀測系統,以便讀取機場觀測數據。
(4)同時配置音響和打印機,以備告警、提醒和預報產品輸出之用。
1.2 軟件結構設計
預報系統軟件采用結構化設計,依據每個獨立工作環節設立若干運行模塊,包括網絡監控告警模塊、數據讀取分析模塊、相似計算預報模塊、綜合技術功能模塊,各運行模塊都由主窗體總控模塊控制,詳見圖1。
1.3 技術指標設計
依據科研任務要求,設計并最終實現的主要技術指標包括如下幾項。
(1)具有標準的Windows人機界面:相似預報系統實現簡體中文顯示,具有標準美觀、友好便捷和可視化的人機互動功能;操作方法簡便易懂,具有較強的業內推廣價值。
(2)具有完備的網絡和數據監控、告警功能:自動、連續監控需要訪問的氣象信息網和有關終端,定時監控T639數值預報和機場觀測的數據,如果網絡正常、數據齊全、數據格式合格則發出可以讀取數據的信息,否則就以屏顯和音頻告警方式發出告警信息。
(3)具有自動讀取、分析綜合數據的功能:當監控單元發出網絡和數據正常、可以讀取數據的信息時,數據單元將按照預置時間段,依據“一主、二備、三應急”的方式,讀取、分析所需各類數據,并發出可以制作預報的信息。
(4)具有自動制作、發布并輸出全方位相似預報產品的功能:當數據單元發可以制作預報的信息時,預報單元隨即啟動自動發布預報的程序,完成之后自動音頻提醒、打印輸出。
(5)具有的其他綜合功能:包括由綜合單元隨時提供的參數設置、打印輸出、查詢相似分析數據和預報產品、查看對比相似圖形、提供幫助信息等。
2 主要技術措施
2.1 研發過程簡述
預報系統軟件設計在Windows XP及以上環境下運行,編程工具使用可視化集成開發語言VB6.0[2]、Delphi[3],支持平臺主要有Oracle、Excel。軟件編寫工作始于2014年秋,2015年6月聯網調試,7月投入試用,各項工作最后完成于2015年12月,2016年1月投入試運行。期間先后推出HAFS1.01~1.06共6個版本,其中最初的4個版本屬測試版本,1.05為采用靜態相似分析方法的初級應用版本,1.06為目前采用的動態相似分析方法的最新應用版本。
2.2 整體控制措施
預報系統主窗體設有獨立的控制模塊,該模塊參照神經元控制的方法,采用統攬式、前后臺式的邏輯控制技術,控制多個模塊同時、有序地工作。其基本控制思路如下。
(1)隨時響應監控模塊返回的監控信息:如果網絡監控正常,即同時關注數據文件;如數據文件正常,隨即同時關注數據格式;監控都正常,立即返回監控正常信息。
(2)網絡監控正常、數據監控正常,隨即通知可以啟動數據采集讀取模塊。在預定的時間段內,按照“一主、二備、三應急”方式,讀取、分析所需各類數據,并返回完成信息。
(3)網絡和數據讀取正常,隨即啟動相似預報的計算、分析和發布,之后通知打印機打印。
2.3 監控技術措施
預報系統軟件主要監控對象:氣象網及地方信息終端、機場觀測終端、數據庫終端等,T639數值預報數據、機場自動觀測數據、區域歷史數據等。采取的主要技術措施如下:
(1)對氣象網和終端的監控,要充分考慮并盡量減少對氣象網及其終端的干預,以免影響其正常工作,因此軟件采用了被動式的監控方法,主要措施是在預報系統軟件程序中設置On Error捕獲錯誤陷阱,當不能映顯監控對象時,隨即分析返回的錯誤信息,并發出告警,以達到監控的目的。
(2)對相關數據的監控,相對較簡單,主要監控兩個方面,一是監控數據的時效性,是否按時入網、數據入網是否存在時刻錯誤等,二是監控數據的數據格式有效性,因為預報系統使用的是網絡數據,這些數據有些可能會隨時調整數據范圍、分辨率等格式,甚至會出現錯誤的數據信息,需要進行分辨。
(3)監控告警:對氣象網絡及其相關終端、相關數據的監控,其監控并輸出的非正常情況可歸納為17種,其中有6種為需要及時處理的,其他為暫緩處理的。如監控出現異常,將通過屏幕顯示和音頻方式發出告警信息。
2.4 數據讀取措施
主要有3種類型的數據讀取。
(1)網絡數據,指當前T639數據,須從國家氣象局相關網絡獲取,按照雙方相關數據訪問協議,通過氣象網遠程讀取,其源數據為文本文件的數據格式,訪問網絡成功后直接讀取。endprint
(2)區域歷史數據、機場當前觀測數據,在本地局域網內,直接讀取。其中,區域歷史數據屬文本文件數據,直接訪問讀取;機場當前觀測數據,通過訪問氣象網數據庫讀取。訪問數據庫讀取數據以調用API函數來實現,其定義可表示如下:
Private Declare Function DuQuShuJu Lib "DQSJ.DLL" (ByVal PathX As String, ByVal X1 As String, ByVal X2 As String, ByVal X3 As String) As Single
(3)機場歷史數據,因其以Excel月總簿方式儲存,因此需要調用Excel來讀取。訪問并讀取和寫入Excel月總簿的基本方法如下。
①首先定義一個Excel對象、一個Excel工作簿、定義一個Excel工作表。
②其次創建一個Excel對象、打開一個工作簿、設置將要操作的工作表。
③然后進行讀取、寫入、存儲等操作。
④完成預定工作后,關閉工作薄、釋放已經打開的Excel對象。
2.5 相似計算預報
相似計算和預報的過程相對較為復雜,期間須訪問和讀取約7000個數據文件,數據總量達到3G以上。由于數據文件量和數據量較為龐大,為確保計算運行過程的準確性,科研組采用了模塊化的設計和編程方式,這樣就能保證編寫思路清晰,更容易調試和糾正問題。相似計算預報的流程見圖2。
2.6 綜合輔助功能
(1)參數管理:預報系統參數包括“工作狀態、采用要素、數據路徑、數據取值、相關信息”共5類,其中,“工作狀態”控制預報系統的運行方式、網絡監控、打印方式、音響效果;“數據路徑”控制數據讀取;“采用要素、數據取值、相關信息”控制相似分析預報的關鍵環節。
(2)查詢、打印操作:查詢當前數據資料分析、850~ 500hPa、海平面氣壓場等的單項相似分析數據、多元相似分析數據、相似預報結論等,這些都可以打印輸出。
(3)圖像操作:預報系統本身沒有圖像功能,而是通過調用國家氣象局Micaps系統圖像功能來實現查看當前天氣圖和歷史天氣圖的。通過操作預報系統,自動確認需要訪問的圖像種類、圖像時間,然后確定圖像文件、圖像路徑等,然后自動轉向Micaps圖像顯示狀態。調用外部軟件的功能采用Shell命令來實現。
3 結語
預報系統軟件于2016年1月投入試運行,2017年1月驗收后正式投入運行。試運行1年、正式運行大半年以來,預報系統運行穩定,各項技術指標達到預期目的,在哈爾濱太平國際機場日常飛行氣象服務工作中發揮了積極作用。
當然,目前雖取得一定效果,但也發現預報系統存在一些問題,除了預報模式有待進一步升級完善外,系統軟件也有待進一步提高,尤其是在預報信息的自動發送、圖像功能的自我實現等方面還有許多工作需要去做。
參考文獻
[1] 黃紅兵.哈爾濱太平國際機場相似預報系統[A].中國航空學會百年學術論壇黑龍江、遼寧、江西、四川省分論壇暨飛行力學飛行試驗學術交流會[C].2003.
[2] 楊本倫.Visual Basic 6.0開發技術大全[M].北京:清華大學出版社,2010.
[3] 黃文鈺.Delphi程序設計經典[M].北京:科學出版社, 2005.endprint