廖桉樺
(寧波市鄞州區氣象局,浙江寧波315100)
隨著新一代天氣觀測網絡的投入使用,雷達衛星等資料開始廣泛地應用,中尺度自動氣象站分布越來越廣泛,間隔為5~10 km,對小尺度的天氣現象有了更清楚直觀的認識。當前氣象災害頻發,氣象局承擔著政府決策氣象服務、公共氣象服務和為農氣象服務3個方面的職責,在遇到突發災害性天氣情況時,如何讓民眾及時收到氣象信息并有效地做好防范措施,實現氣象資料最后一公里的傳輸,是一個值得關注的問題。隨著科技的發展和人民生活水平的日益提高,手機的使用越來越普遍,因此當前最簡單易行的方式是通過手機短信發送,實現極端、突發性、災害性天氣預警信息的自動發送。
地理信息系統(GIS)由軟件系統、地理數據和用戶構成,通過對地理數據的集成、存儲、檢索、操作和分析,生成并輸出各種地理信息,從而為土地利用、資源管理、環境監測、交通運輸、經濟建設、城市規劃以及政府部門行政管理提供新的知識,為工程設計和規劃、管理決策服務的計算機系統[1]。其本質為由計算機程序和地理數據組織而成的地理空間信息模型[2-4]。把用戶的需求集成到地理信息系統中,日常工作中就能提供更有針對性的公共氣象服務。基于GIS平臺進行二次開發,借助其強大的地理信息、空間分析功能,其優勢不言而喻,基于這個理念,筆者設計了基于GIS的氣象預警短信系統,實現了氣象預警短信的分區自動發送。
由于下墊面的差異,各類氣象要素在時空分布上存在著較大的不連續性,就溫度而言,夏季陸面溫度要高于水體溫度,而冬季陸面溫度則低于水體溫度,山區與平原也存在很大差異;對于風速,沿海、山地風速要明顯大于內陸平原;而對于日常最容易產生氣象災害的降水,“東邊日出西邊雨”的情況在目前的高密度的氣象觀測中更是越來越多地被觀測到,尤其是夏季的局地強對流天氣,寧波市曾經出現30 km范圍內,部分地區3 h降水180 mm,而附近卻幾乎沒有降水的情況。由于局地強降雨時間集中、強度大,對人民的生命財產有較大的影響。此外,不同的用戶對于氣象消息的需求不同,例如漁民出海最關心風力的大小,葡萄種植戶最關心引起落果的高溫。因此在氣象信息的發送上,有必要根據需求將不同的短信發送到不同的用戶手上。由于降水相對氣溫、風速等局地性和突發性更為明顯,且更容易致災,因此主要以短時強降水為例,介紹暴雨等氣象預警短信自動發送系統的實現。
本系統是在充分利用現有移動代理服務器以及氣象資料觀測網絡的前提下進行的二次開發。硬件主要由氣象信息服務器、信息處理服務器以及移動代理服務器3部分組成(圖1)。其中氣象信息服務器用于實時收集和儲存氣象信息數據;信息處理服務器用于儲存地理信息資料和用戶,同時對氣象信息進行分析和處理,生成氣象預警短信;移動代理服務器用于發送手機短信,通過開放接口與信息處理服務器對接。
移動代理服務器(MAS)是針對集團客戶設計開發的產品,其將軟硬件一體化封裝,只需要有穩定的電源及網絡便能正常工作,在同一網絡中其他PC機可通過瀏覽器訪問MAS。由于其接口開放,其他程序可方便地通過MAS進行短信發送等操作。

圖1 系統的硬件構成
系統運行在信息處理服務器上,主要由氣象預警信息生成子系統以及短信發送子系統組成。氣象預警信息生成子系統負責監控實時氣象實況資料以及雷達外推等預報資料,根據設定的閾值并生成帶有地理信息的預警信息。短信發送子系統負責將帶有地理信息的預警信息與用戶資料數據庫聯合分析,生成手機短信,通過開放接口提交到移動代理服務器,最終發送到用戶手上。
氣象觀測網絡上建有氣象信息服務器,氣象觀測資料存儲在Microsoft SQL Server數據庫內。移動代理服務器內部使用MySQL數據庫,支持通過數據庫接口或API接口等方式提交短信發送請求,本系統直接使用數據庫接口。為了方便后期維護和二次開發,系統采用C#作為開發語言。由于Microsoft.NET Framework本身已經集成了Microsoft SQL Server操作類,因此只需把MySQL的動態鏈接庫包含在內即能正常運行(圖2)。

圖2 系統的原理
將現有氣象服務通訊錄進行需求劃分,添加鄉鎮信息,同時將鄉鎮內氣象站與鄉鎮進行關聯。例如三防部門承擔著全市的防汛抗旱任務,對氣象信息要求較高,因此將三防部門人員設置為所有氣象站信息均發送;各鄉鎮農業鎮長對所管轄區域的氣象信息較為敏感,遇突發狀況時及時指揮鄉鎮人員作出相關應急措施,所以只發送相對應鄉鎮的氣象信息;各大戶也是僅發送所在地的氣象信息。
氣象觀測數據均為定時生成,例如中尺度自動站為10 min上傳1次數據。實時資料采集、統計、入庫,后臺定時對資料進行及時處理,實現實時資料的迅速獲取,氣象預警信息生成子系統采用定時查詢的方式,在沒有人工干預的情況下,每5 min查詢1次數據庫,統計轄區內各個自動站的1,3,6和12 h雨量等數據。
綜合實際應用情況以及日常對于小雨、中雨、大雨、暴雨的量值劃分,選取閾值范圍為1 h降水16 mm,2 h降水30 mm,3 h降水50 mm,6 h降水50 mm,12 h降水100 mm,閾值優先情況示表1。

表1 氣象預警的閾值等級
優先等級從表1上到下、從左到右逐漸增加,實際執行時將實況值按照從下到上,從左到右與閾值比較,達到閾值范圍時自動生成預警信息。生成預警信息時會根據相應的經緯度,通過查詢地理信息系統中的行政邊界資料,計算出超過閾值的數據出現在哪個鄉鎮甚至是哪個村。最后將帶有區域信息的預警信息提交到短信發送子系統中。發送短信時標注發送時間,如果超過前1次預警短信時效,或本次閾值優先級更高,則考慮再次發送。
用戶資料數據庫中每個用戶均包含了區域信息,包含縣市區、鄉鎮、村社區三級,因此短信發送子系統在氣象預警信息生成子系統提交預警信息后,可以根據用戶資料數據庫自動分析出預警信息指定區域內的用戶。同時為了進一步優化服務,用戶資料數據庫還包含了警報類型信息,如大風、高溫、降水等,可以指定用戶接收其中的一種信息或者多種信息。在確定了接收用戶和內容后,短信發送子系統會將用戶號碼和手機短信內容提交到移動代理服務器上,實現方法為將短信號碼和內容寫入到數據庫對應的發送隊列表中。
傳統的短信發送采取人工方式,需要人工監控氣象資料,根據資料編寫短信內容,選擇接收用戶,這個過程耗時長,而且容易輸入錯誤數據或者選錯發送對象,在使用新系統后能有效解決上述問題。
由于本地緊急異常短信服務用戶數超過3 000個,如果某次發送選擇了發送到全部用戶,盡管提交到移動代理服務器的速度較快,但是通過測試發現,全部發送到用戶手上需要30 min,在連續發送多條短信時,隊列后面的短信發出時間相應累加,導致部分短信失去時效性。在使用此系統后,因為明確了某個鎮、村(社區)以及相關部門發送對象,該組短信服務用戶數在200個以內,能有效縮短短信發送時間。
在充分利用現有平臺并且不影響原有業務的基礎上,搭建起了基于GIS的氣象預警短信系統。采取機器自動分析發送,有效地解決了暴雨等氣象預警信息漏發誤發的問題,同時由于集成了地理信息系統,能夠提高氣象預警短信發送的針對性,同時提高了氣象預警短信的時效性。目前基于GIS的氣象預警短信自動發送系統,已經投入實際業務應用,通過幾次大的降水過程,檢驗發現,運行效率較好,符合日常業務的需要。
[1]陳鵬述.地理信息導論[M].北京:科學出版社,1999:12-24.
[2]沈鵬.基于GIS的110短信報警系統[D].吉林:吉林大學,2007.
[3]張勇,楊邦榮,蔣覺先.基于GSM/GIS的火災自動報警系統[J].計算機工程,2006,32(2):243-247.
[4]Mary Kirtland.基于組件的應用程序設計[M].北京:北京大學出版社,1999:12-16.