朱靜威
吳恩來(lái)
鐘 威
氣象觀測(cè)業(yè)務(wù)中,最為重要的一項(xiàng)任務(wù)是每小時(shí)的整點(diǎn)和半點(diǎn)進(jìn)行氣象觀測(cè),然后將相關(guān)的氣象信息編輯成報(bào)文格式,發(fā)送給相關(guān)單位,參加全球氣象信息交換?,F(xiàn)在使用的發(fā)報(bào)系統(tǒng)是由國(guó)外廠家開(kāi)發(fā),隨自動(dòng)氣象觀測(cè)系統(tǒng)(以下簡(jiǎn)稱(chēng)自觀系統(tǒng))自帶的軟件,其部分內(nèi)容與國(guó)內(nèi)的觀測(cè)規(guī)范不符。而且國(guó)內(nèi)觀測(cè)規(guī)范根據(jù)業(yè)務(wù)與發(fā)展的需要會(huì)定期修訂,需要軟件進(jìn)行相應(yīng)的升級(jí)以滿(mǎn)足新規(guī)范,但是,國(guó)外軟件升級(jí)的費(fèi)用十分昂貴且流程繁瑣。
隨著民航事業(yè)的發(fā)展,及時(shí)有效的氣象情報(bào)對(duì)管制的指揮、飛行計(jì)劃的制定起到了越來(lái)越重要的作用,對(duì)報(bào)文編發(fā)系統(tǒng)功能的需求也逐漸增加,而且隨著規(guī)范體系的建設(shè),靈活性也變得越來(lái)越重要,為此開(kāi)發(fā)了中文發(fā)報(bào)系統(tǒng),系統(tǒng)采用C/S模式,設(shè)計(jì)了通訊服務(wù)程序、氣象數(shù)據(jù)顯示界面、觀測(cè)編發(fā)報(bào)軟件、趨勢(shì)預(yù)報(bào)編發(fā)報(bào)軟件等模塊,使用MIDAS IV自動(dòng)氣象觀測(cè)系統(tǒng)輸出的實(shí)時(shí)氣象數(shù)據(jù)作為數(shù)據(jù)源,實(shí)現(xiàn)觀測(cè)員、預(yù)報(bào)員編發(fā)本場(chǎng)觀測(cè)報(bào)告及趨勢(shì)預(yù)報(bào)的功能。
技術(shù)分析
C/S模式
中文發(fā)報(bào)系統(tǒng)主要采用C/S模式進(jìn)行開(kāi)發(fā)。C/S模式更適合專(zhuān)用網(wǎng)絡(luò),在響應(yīng)速度、用戶(hù)界面、數(shù)據(jù)安全等方面,優(yōu)于B/S模式。該模式分為客戶(hù)機(jī)和服務(wù)器兩層:第一層是在客戶(hù)機(jī)系統(tǒng)上結(jié)合了表示與業(yè)務(wù)邏輯,如界面顯示、收發(fā)報(bào)文模塊;第二層是通過(guò)網(wǎng)絡(luò)結(jié)合了數(shù)據(jù)庫(kù)的服務(wù)器,包括發(fā)報(bào)軟件的數(shù)據(jù)庫(kù)設(shè)計(jì)和數(shù)據(jù)解析等部分。
HTML、Css、JavaScript
氣象要素顯示界面主要采用HTML技術(shù),對(duì)實(shí)時(shí)氣象數(shù)據(jù)進(jìn)行呈現(xiàn),采用HTML技術(shù),可以使用戶(hù)方便的對(duì)界面布局進(jìn)行更改,而不需要修改代碼。一個(gè)網(wǎng)頁(yè)由HTML、Css和JavaScript組成。HTML是主體,裝載各種dom元素;Css用來(lái)裝飾dom元素;JavaScript控制dom元素。
C++
系統(tǒng)服務(wù)器以及網(wǎng)頁(yè)后臺(tái)使用C++語(yǔ)言編寫(xiě),C++是在C語(yǔ)言的基礎(chǔ)上開(kāi)發(fā)的一種面向?qū)ο缶幊陶Z(yǔ)言,應(yīng)用非常廣泛。常用于系統(tǒng)開(kāi)發(fā)、引擎開(kāi)發(fā)等應(yīng)用領(lǐng)域,支持類(lèi)、封裝、繼承、多態(tài)等特性。C++語(yǔ)言靈活,運(yùn)算符的數(shù)據(jù)結(jié)構(gòu)豐富,具有結(jié)構(gòu)化控制語(yǔ)句,而且同時(shí)具有高級(jí)語(yǔ)言與匯編語(yǔ)言的優(yōu)點(diǎn),程序執(zhí)行效率是目前其他語(yǔ)言無(wú)法比
擬的。
C#
該系統(tǒng)觀測(cè)編發(fā)報(bào)軟件以及趨勢(shì)預(yù)報(bào)編發(fā)報(bào)軟件使用C#語(yǔ)言編寫(xiě),C#是面向?qū)ο蟮木幊陶Z(yǔ)言。它使得程序員可以快速地編寫(xiě)各種基于MICROSOFT.NET平臺(tái)的應(yīng)用程序,MICROSOFT.NET提供了一系列的工具和服務(wù)來(lái)最大程度地開(kāi)發(fā)利用計(jì)算與通訊領(lǐng)域。
SQL Server2008
該系統(tǒng)數(shù)據(jù)庫(kù)使用SQL Server商用數(shù)據(jù)庫(kù),SQL Server系列軟件是Microsoft公司推出的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。2008年10月,SQL Server2008簡(jiǎn)體中文版在中國(guó)正式上市,SQL Server2008版本可以將結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化文檔的數(shù)據(jù)直接存儲(chǔ)到數(shù)據(jù)庫(kù)中??梢詫?duì)數(shù)據(jù)進(jìn)行查詢(xún)、搜索、同步、報(bào)告和分析等操作。數(shù)據(jù)可以存儲(chǔ)在各種設(shè)備上,從數(shù)據(jù)中心最大的服務(wù)器一直到桌面計(jì)算機(jī)和移動(dòng)設(shè)備,它都可以直接控制任何存儲(chǔ)位置胡數(shù)據(jù)。
總體設(shè)計(jì)
軟件結(jié)構(gòu)(如圖1所示)
圖1 軟件結(jié)構(gòu)
數(shù)據(jù)解析
數(shù)據(jù)解析模塊為中文發(fā)報(bào)系統(tǒng)的數(shù)據(jù)服務(wù)器,負(fù)責(zé)與Vaisala自觀系統(tǒng)通訊,解析MIDAS發(fā)出的實(shí)時(shí)氣象數(shù)據(jù)并翻譯成標(biāo)準(zhǔn)航標(biāo)數(shù)據(jù)進(jìn)行組地址播發(fā),同時(shí)需要計(jì)算出日最高、最低溫度、2分鐘陣風(fēng)、10分鐘陣風(fēng),并對(duì)輸出數(shù)據(jù)做真北轉(zhuǎn)換等業(yè)務(wù)終端需要MIDAS自觀系統(tǒng)又沒(méi)有向外輸出的氣象要素的功能。
負(fù)責(zé)與顯示模塊、觀測(cè)編發(fā)報(bào)模塊通訊,接收顯示模塊當(dāng)前跑道在用端設(shè)置信息,并使用航標(biāo)數(shù)據(jù)對(duì)外分發(fā),使用UDP多播技術(shù),發(fā)送解析后的所有實(shí)時(shí)數(shù)據(jù),發(fā)送從顯示模塊接收的燈光級(jí)數(shù)和跑道在用端數(shù)據(jù),發(fā)送從觀測(cè)模塊接收的人工天氣現(xiàn)象數(shù)據(jù)。
數(shù)據(jù)庫(kù)設(shè)計(jì)
觀測(cè)簿采用Sql Express 2008存儲(chǔ),按年(自然年,截止到年末最后一天夜間北京時(shí)間24點(diǎn)整)存儲(chǔ),每年(自然年)建立一個(gè)數(shù)據(jù)庫(kù),命名方式為“年份_觀測(cè)簿”,例如“2017_觀測(cè)簿”,每個(gè)數(shù)據(jù)庫(kù)中建兩個(gè)表:“觀測(cè)數(shù)據(jù)”(存儲(chǔ)常電碼報(bào)數(shù)據(jù))和“每日摘要”(存儲(chǔ)每日摘要信息)。如表1、表2所示。
功能模塊
數(shù)據(jù)顯示
展示氣象信息,方便機(jī)場(chǎng)管制員、觀測(cè)員及其他用戶(hù)查看。采用C++語(yǔ)言編寫(xiě),QT框架進(jìn)行軟件架構(gòu),性能穩(wěn)定,效率??蓪?duì)顯示內(nèi)容進(jìn)行定制,并且提供白天、夜間兩套風(fēng)格顯示;可自動(dòng)、手動(dòng)切換;而且數(shù)據(jù)實(shí)時(shí)更新;反應(yīng)時(shí)間1秒以?xún)?nèi);中文顯示;通俗易懂。
顯示內(nèi)容包括:2分鐘平均風(fēng)速、風(fēng)向風(fēng)速盤(pán)、2分鐘風(fēng)分解、溫度濕度、跑道視程、云高、天氣現(xiàn)象、人工觀測(cè)數(shù)據(jù)、跑道在用端、報(bào)文等內(nèi)容,如圖2所示。
觀測(cè)編發(fā)報(bào)模塊
觀測(cè)模塊運(yùn)行于機(jī)場(chǎng)自動(dòng)觀測(cè)系統(tǒng)中的觀測(cè)終端,用于輔助觀測(cè)人員進(jìn)行觀測(cè)和發(fā)報(bào)業(yè)務(wù)。主要功能包括觀測(cè)事件提醒,觀測(cè)數(shù)據(jù)采集、錄入、校驗(yàn)和存儲(chǔ),趨勢(shì)報(bào)請(qǐng)求、報(bào)文編寫(xiě)、發(fā)送、歷史數(shù)據(jù)查詢(xún)等功能。
例行觀測(cè)界面由觀測(cè)薄、人工觀測(cè)參數(shù)、報(bào)文等區(qū)域組成,如圖3所示。界面的左面為觀測(cè)簿,主要采集的是基準(zhǔn)點(diǎn)數(shù)據(jù),右為趨勢(shì)報(bào)內(nèi)容,左下方為人工觀測(cè)參數(shù)、中間部分為各跑道的數(shù)據(jù)與編寫(xiě)電碼報(bào)和明語(yǔ)報(bào)的區(qū)域。界面右下面為輸入規(guī)則欄,用鼠標(biāo)左鍵單擊數(shù)據(jù)界面觀測(cè)簿內(nèi)的編輯欄在輸入規(guī)則欄內(nèi)會(huì)顯示相應(yīng)編輯欄的輸入例子。界面左下方提示欄為特殊天氣報(bào)警的內(nèi)容。
趨勢(shì)預(yù)報(bào)編發(fā)報(bào)模塊
該模塊運(yùn)行于機(jī)場(chǎng)自動(dòng)觀測(cè)系統(tǒng)中的預(yù)報(bào)終端,主要功能包括:預(yù)測(cè)請(qǐng)求接收、趨勢(shì)報(bào)編寫(xiě)與發(fā)送、報(bào)文校驗(yàn)等功能。如圖4所示,由觀測(cè)報(bào)文、上份趨勢(shì)報(bào)、當(dāng)前趨勢(shì)報(bào)3個(gè)模塊。觀測(cè)報(bào)文顯示當(dāng)前擬發(fā)或上份觀測(cè)報(bào)告。上份趨勢(shì)報(bào)顯示上次編發(fā)的趨勢(shì)預(yù)報(bào),以便參考。當(dāng)前趨勢(shì)報(bào)為當(dāng)前需要編發(fā)的趨勢(shì)報(bào)文,需要預(yù)報(bào)員輸入,同時(shí)有NOSIG等快速編發(fā)
按鈕。
結(jié)論
自動(dòng)氣象觀測(cè)中文發(fā)報(bào)系統(tǒng)實(shí)現(xiàn)了項(xiàng)目研發(fā)初期的全部功能,可以編發(fā)METAR/SPECI、MET REPORT/SPECIAL、趨勢(shì)預(yù)報(bào)。并且對(duì)報(bào)文進(jìn)行邏輯判斷,當(dāng)報(bào)文不符合觀測(cè)規(guī)范時(shí)及時(shí)進(jìn)行錯(cuò)誤提示。而且相比系統(tǒng)自帶的存儲(chǔ)系統(tǒng),可以更加方便查閱歷史資料。同時(shí),不存在升級(jí)更新功能程序復(fù)雜、費(fèi)用昂貴等缺點(diǎn),當(dāng)航標(biāo)、規(guī)范的修訂時(shí),可以方便快捷地對(duì)發(fā)報(bào)軟件做相應(yīng)的
修改。
(作者簡(jiǎn)介:朱靜威,吳恩來(lái),鐘威,中國(guó)民用航空華北地區(qū)空中交通管理局。)endprint