劉高平 葉金印
摘 要:針對縣級氣象臺業(yè)務(wù)集約化水平低的現(xiàn)狀,利用C#、WPF、WCF以及SQL等技術(shù),設(shè)計研發(fā)基于分布式架構(gòu)的縣級氣象業(yè)務(wù)系統(tǒng),實現(xiàn)了氣象信息集成顯示、預(yù)報預(yù)警、氣象服務(wù)產(chǎn)品制作發(fā)布、業(yè)務(wù)流程監(jiān)控等四大業(yè)務(wù)功能的集約化。業(yè)務(wù)應(yīng)用表明,該系統(tǒng)可提高縣級氣象臺預(yù)報預(yù)警業(yè)務(wù)效率和氣象服務(wù)能力。
關(guān)鍵詞:分布式;縣級氣象業(yè)務(wù);業(yè)務(wù)系統(tǒng)
中圖分類號:P409 文獻標識碼:A
Abstract:In order to improve business intensive level at county level meteorological observatories,County Level Meteorological Operational System was designed and developed based on distributed structure with the help of C#,WPF,WCF,SQL,etc.technique.Four major operational functions including:meteorological information integrated display,forecasting and early warning,production and publishing of meteorological service products,operation process monitoring were integrated.Operational application proved that the system can improve meteorological service ability as well as the efficiency of forecasting and warning.
Keywords:distributed structure;county level meteorological service;operational system
1 引言(Introduction)
隨著我國經(jīng)濟社會快速發(fā)展,自然災(zāi)害問題日益突出[1]。其中因氣象災(zāi)害造成的經(jīng)濟損失和人員傷亡,引起了政府部門和社會各界越來越廣泛的關(guān)注[2]。縣級氣象臺是面向公眾和面向領(lǐng)導(dǎo)決策的氣象防災(zāi)減災(zāi)重要業(yè)務(wù)主體,其業(yè)務(wù)服務(wù)水平已經(jīng)成為全國氣象現(xiàn)代化水平的重要標志[3],建設(shè)集約化的縣級綜合氣象業(yè)務(wù)系統(tǒng)是提升氣象防災(zāi)減災(zāi)能力的重要手段[4]。
隨著氣象業(yè)務(wù)的拓展和計算機技術(shù)在氣象行業(yè)的應(yīng)用,為解決具體業(yè)務(wù)應(yīng)用的軟件越來越多,這些業(yè)務(wù)應(yīng)用軟件功能單一,對數(shù)據(jù)和運行環(huán)境的要求也不盡相同[5]。雖然這些業(yè)務(wù)軟件在一定的階段發(fā)揮了積極的作用,但是其業(yè)務(wù)自動化和集約化水平越來越不能適應(yīng)社會經(jīng)濟發(fā)展對氣象服務(wù)能力的需求[3-5]。氣象信息集成顯示、預(yù)報預(yù)警、氣象服務(wù)產(chǎn)品制作發(fā)布、業(yè)務(wù)流程監(jiān)控等四個方面是縣級氣象臺主要業(yè)務(wù)工作,也是我國氣象部門業(yè)務(wù)能力建設(shè)的重要內(nèi)容[6]。本文以安徽省氣象部門研發(fā)的基于分布式架構(gòu)的縣級氣象業(yè)務(wù)系統(tǒng)為例,介紹了系統(tǒng)的總體設(shè)計方案、功能實現(xiàn)以及關(guān)鍵技術(shù)集成應(yīng)用等技術(shù)思路和方法。
2 系統(tǒng)總體設(shè)計方案(General designing plan of
this system)
安徽縣級氣象綜合業(yè)務(wù)系統(tǒng)采用分布式三層架構(gòu)。數(shù)據(jù)層為多個SQL Server數(shù)據(jù)庫組成的數(shù)據(jù)庫集群;業(yè)務(wù)邏輯層是利用WCF技術(shù)建立的多個具有數(shù)據(jù)加工處理、信息傳達和業(yè)務(wù)管理功能的SOA應(yīng)用服務(wù)器;表現(xiàn)層是利用.NET框架下的C#編程技術(shù)和WPF界面技術(shù)建立的客戶端,負責氣象信息顯示和人機交互。系統(tǒng)的拓撲結(jié)構(gòu)如圖1所示。
3 系統(tǒng)功能及實現(xiàn)方法(Functions andimplementation)
3.1 氣象信息綜合集成顯示
利用C#編程與WPF技術(shù)自行研發(fā)了具有GIS功能的MeteoMap控件,實現(xiàn)種類繁多的氣象信息分層疊加和集成顯示。MeteoMap控件具有天氣符號等矢量圖形繪制、衛(wèi)星圖像繪制、雷達圖像繪制[7]、等值線繪制填色[8]等基礎(chǔ)功能,且支持地圖漫游、縮放以及投影轉(zhuǎn)換。
氣象數(shù)據(jù)的集成疊加顯示是使用MeteoMap控件中的圖層類來實現(xiàn)??丶械腁bLayer類是所有圖層的抽象基類,該類擁有添加圖元(AddFeatures)抽象方法,在其派生類的該方法下可添加點、線、面類型的圖元,每個圖元則包括定坐標定位信息和繪制自我(DrawMe)函數(shù),圖元在DrawMe函數(shù)中利用控件的DrawingContext(WPF的圖形繪制類)對象進行繪制。圖層分為上、中和下三層,按照從下至上的順序進行疊加。上層為用戶交互、地理信息及氣象數(shù)據(jù)類型顯示圖層;中層為等值線類型顯示圖層;下層為衛(wèi)星雷達等遙感圖像顯示圖層。
客戶端通過SOA層調(diào)取自動氣象站、衛(wèi)星、雷達、主觀預(yù)報、客觀預(yù)報等數(shù)據(jù),利用MeteoMap控件分層疊加和集成顯示。
3.2 氣象預(yù)報及服務(wù)產(chǎn)品制作
(1)圖形產(chǎn)品制作
通過建立MeteoMap控件圖元移動修改工具(ImageMetaTool),針對預(yù)報數(shù)據(jù)的修訂和不同行政區(qū)域、地圖元素(如圖例、標題等)的交互式操作,實現(xiàn)交互式的氣象預(yù)報及服務(wù)圖形化產(chǎn)品制作功能。
修改預(yù)報數(shù)據(jù)時,ImageMetaTool通過MeteoMap控件鼠標MouseRightButtonDown事件獲得鼠標位置,根據(jù)設(shè)定的距離選取雨量數(shù)據(jù),并彈出對話框交互修改降雨數(shù)據(jù)。
移動地圖元素(如圖例、標題等)時,ImageMetaTool工具監(jiān)測MeteoMap控件的MouseLeftButtonDown、MouseMove事件,按下鼠標左鍵選取一個圖元,按住鼠標移動時在圖元初始位置坐標加上鼠標的移動向量實現(xiàn)坐標改變。通過調(diào)用MeteoMap控件的繪制圖層方法(DrawLayers)實現(xiàn)刷新。將圖元的操作(修改屬性、移動、刪除圖元、增加圖元)封裝成類,對這些類的對象進行執(zhí)行和撤銷,實現(xiàn)交互操作的執(zhí)行(重做)和撤銷。
(2)文字材料制作
TeX作為一種優(yōu)秀的排版系統(tǒng)[9],可以方便地制作高質(zhì)量的DVI文件,并生成PDF文件。本系統(tǒng)定制了多個氣象服務(wù)文字材料TeX模板,并通過SOA層從相應(yīng)的服務(wù)器中獲取數(shù)據(jù),替換TeX模板中的關(guān)鍵變量,最終利用TeX形成PDF文檔。
3.3 氣象災(zāi)害預(yù)警信號發(fā)布
氣象預(yù)警信號發(fā)布的關(guān)鍵環(huán)節(jié)是氣象災(zāi)害預(yù)警區(qū)域的確定。系統(tǒng)通過在MeteoMap上建立用戶交互圖層(InteractiveLayer)用于確定預(yù)警發(fā)布區(qū)域;通過建立接收預(yù)警設(shè)備圖層(DevicesLayer)用于顯示預(yù)警信息接收設(shè)備。系統(tǒng)利用點與面的位置關(guān)系,判別和確定預(yù)警接收設(shè)備(如鄉(xiāng)村預(yù)警大喇叭、電子顯示屏、手機短信、微博等),通過SOA層對外發(fā)布。
3.4 業(yè)務(wù)流程監(jiān)控
氣象業(yè)務(wù)流程具有嚴格的時間規(guī)定,系統(tǒng)根據(jù)定時任務(wù)以列表的形式顯示業(yè)務(wù)流程狀態(tài)。系統(tǒng)通過自行設(shè)計開發(fā)的任務(wù)類(Task)來實現(xiàn)業(yè)務(wù)流程狀態(tài)實時監(jiān)控。
Task類設(shè)定“開始時間”“報警時間”“結(jié)束時間”等三個時間屬性,以及任務(wù)“已完成”“未完成”兩個任務(wù)標志屬性。通過三個時間屬性和兩個任務(wù)標志屬性組合,形成“未開始”“已完成”“進入任務(wù)時間”“任務(wù)即將延誤”“任務(wù)已延誤”五種狀態(tài)。
利用WPF模板技術(shù),將Task實例集合綁定至ListBox控件,實現(xiàn)ListBoxItem以灰色、綠色、黃色、橙色、紅色五種顏色表示任務(wù)的五種狀態(tài)。流程進入后兩種狀態(tài)時,系統(tǒng)還將以聲音報警和發(fā)送手機短信的方式提醒業(yè)務(wù)值班人員。
4 關(guān)鍵業(yè)務(wù)技術(shù)(Key technologies of service)
4.1 氣象要素空間插值方法
4.2 變權(quán)重系數(shù)天氣預(yù)報集成方法
4.3 氣象預(yù)警信號發(fā)布條件判別方法
5 結(jié)論(Conclusion)
利用C#、WPF、WCF以及SQL等技術(shù)設(shè)計研發(fā)的基于分布式架構(gòu)的縣級氣象業(yè)務(wù)系統(tǒng)分整合了多種氣象業(yè)務(wù)資源,實現(xiàn)了氣象信息集成顯示、預(yù)報預(yù)警、氣象服務(wù)產(chǎn)品制作發(fā)布、業(yè)務(wù)流程監(jiān)控等四大業(yè)務(wù)功能的集約化。
(1)系統(tǒng)客戶端集成了氣象信息綜合顯示、預(yù)報預(yù)警、氣象服務(wù)產(chǎn)品制作發(fā)布、業(yè)務(wù)流程監(jiān)控四大業(yè)務(wù)操作界面,優(yōu)化了縣級氣象臺業(yè)務(wù)流程,有助于提高氣象業(yè)務(wù)集約化水平。
(2)系統(tǒng)采用氣象要素空間插值方法和變權(quán)重天氣預(yù)報集成方法,有助于提供氣象資料的分析水平和氣象預(yù)報準確率。氣象預(yù)警信號發(fā)布條件判別方法改進了氣象預(yù)警信號發(fā)布效率,有效提升了氣象預(yù)警服務(wù)能力。系統(tǒng)提供的多種交互式、自動化功能(如圖形產(chǎn)品制作、文字材料制作等)提高了業(yè)務(wù)人員工作效率。
(3)系統(tǒng)于2014年6月在安徽省氣象部門縣級氣象臺投入業(yè)務(wù)應(yīng)用,取得了較好的業(yè)務(wù)效果。今后還需要根據(jù)縣級氣象臺的業(yè)務(wù)需求對其進行改進和完善。
參考文獻(References)
[1] 劉彤,等.我國主要的氣象災(zāi)害及經(jīng)濟損失[J].自然災(zāi)害學(xué)報,2011,20(2):90-95.
[2] 祝燕德,等.氣象災(zāi)害預(yù)警機制與社會相應(yīng)的思考[J].自然災(zāi)害學(xué)報,2010,19(4):191-194.
[3] 劉煜,盧美偉,馮振家.加強縣級公共氣象服務(wù)能力建設(shè)的思考[J].氣象研究與應(yīng)用,2011,32(2):32-34.
[4] 孫寶利,等.縣級氣象綜合業(yè)務(wù)工作平臺本地化[J].氣象與環(huán)境學(xué)報,2008,24(3):46-50.
[5] 曲文政.現(xiàn)代氣象預(yù)報系統(tǒng)平臺設(shè)計與實現(xiàn)[D].吉林大學(xué),2011.
[6] 矯梅燕.天氣業(yè)務(wù)的現(xiàn)代化發(fā)展[J].氣象,2010,36(7):1-4.
[7] 李榮忠,等.基于查找表的激光雷達圖像快速繪制算法[J].地理空間信息,2009,7(5):54-56.
[8] 李強,李超,甘建紅.基于三角網(wǎng)的等值線填充算法研究[J].計算機工程與應(yīng)用,2013,49(5):185-189.
[9] 李德泉,等.北京奧運氣象服務(wù)產(chǎn)品制作系統(tǒng)設(shè)計與實現(xiàn)[J].應(yīng)用氣象學(xué)報,2010,21(3):372-377.
[10] 孟慶香,等.基于GIS的黃土高原氣象要素空間插值方法[J].水土保持研究.2010,17(1):10-14.
[11] 吳昌廣,等.三峽庫區(qū)降水量的空間插值方法及時空分布[J].長江流域資源與環(huán)境.2010,19(7):752-758.
[12] 陳淑佳,等.氣象要素柵格化方法比較——以福建省月平均氣溫為例[J].亞熱帶資源與環(huán)境學(xué)報.2010,5(4):43-51.
[13] 張冰,等.轉(zhuǎn)折性天氣降水預(yù)報檢驗方法及應(yīng)用[J].氣象科技.2012,40(3):411-416.
[14] 石春娥,等.MM5與MM5-PAFOG模式區(qū)域霧預(yù)報效果評估比較[J].高原氣象,2013,32(5):1349-1359.
[15] 顧潤源,等.內(nèi)蒙古數(shù)值天氣預(yù)報集成方法初探[J].成都信息工程學(xué)院學(xué)報.2011,26(4):451-454.
[16] 孫健,等.我國氣象預(yù)警信息覆蓋率的初步分析[J].氣象科技進展,2013,3(5),19-23.
作者簡介:
劉高平(1982-),男,本科,工程師.研究領(lǐng)域:計算機技術(shù)在氣象業(yè)務(wù)中的應(yīng)用.
葉金?。?968-),男,博士,正研級高工.研究領(lǐng)域:水文氣象.