張 鈞, 王 斌, 蔣文偉, 譚元峰, 鄒 武
(1.廣西北海市氣象局,廣西南寧 536000;2.山西晉中市氣象局,山西晉中 030600)
廣西全區現有自動氣象站1200多個,其中北部灣地區有數百個,近幾年仍在不斷地增加。自動氣象站的建成對進一步做好氣象災害預防工作,提高中小尺度災害天氣的監測水平,有效利用水資源,改進災害性天氣預警能力具有重要意義,對指導農牧業生產和防災減災具有積極作用。隨著社會經濟的快速發展,各級政府和社會公眾對突發性災害天氣監測的預警、發布提出了更高的要求,更加高度重視中小尺度甚至微尺度的災害性天氣災害問題;頻繁發生的中小尺度災害性天氣系統,對人民生產和生活造成了極大影響,迫切需要建立有效的城市中小尺度災害性天氣預警系統。
系統在廣西北部灣地區各市氣象部門經過一年多的實際試運行,其穩定性、實時性、可靠性、準確性等方面都非常好。
圖1是自動氣象站實時數據應急響應系統(以下也稱系統)結構原理實例圖,目前使用單位有廣西北海市、防城港市 、欽洲市、玉林市氣象局。
在工作主機上運行主控軟件,系統完成各個初始化數據的讀取后,全幕顯示主控程序用戶交互界面如圖2所示,點擊啟動按鈕,系統開始工作。

圖1 地市級實況數據處理顯示、報警系統結構圖

圖2 主控界面(廣西欽洲市)
首先,主控程序檢查本機文件資料臨時文件夾是否存在合法的自動氣象站原始資料標準文本文件,如果不存在,系統將在規定時間段內調用FTP文件收發進程,對省級中小尺度文件服務器的原始數據文件進行過濾,下載合適文件供本地區使用;如果存在,主控程序將在2秒鐘內循環對臨時文件夾的第一個文件的數據進行分析、過濾、截取、入庫、比較、判斷、顯示、移位等處理方法,如果在此過程發現截取數據段的某一基本氣象要素(如雨量)超過系統設置的臨界值,主控程序立刻調用報警進程和短信息發送進程,及時對有關人員提示。由于第一個文件已經被上一循環移除,所以避免了新循環讀取的文件對象和上一個文件對象的重復。
值得注意的是,由于涉及大量數據的讀寫操作,系統一般都要求某一地區必須配置一臺服務器總線結構的計算機,否則會嚴重影響數據的讀寫速度。
系統以實用、可靠、先進、標準、開放為開發原則。實用性原則要求認真分析用戶對地面觀測自動站數據上的一般需求和特殊需求,設計出形象、直觀、富于啟發性的人機交互界面,同時完善數據庫和模型庫等底層設計,采用最符合地面氣象數據分析的算法,得出符合客觀實際的計算結果。系統設計中采用以GIS地理信息系統為基礎、建立在CS/和BS/多層框架結構上的VC++的MFC架構語言編程、以meatdata數據格式建立的SQLServer數據庫為應用核心、以Access、UDP和TFP協議數據分發與共享,使系統的使用效率得以充分發揮,系統標準化保證了系統的開放性。標準化原則體現在系統符合行業標準和程序設計標準化兩方面。數據庫、系統參數設置系統和資料查詢系統應用氣象、水利、農林的專業術語和行業規范,用客戶熟悉的專業術語設計用戶界面,保證用戶和計算機的良好交互。系統編程采用集成的思想,設計不同的功能模塊,模塊之間的調用依靠系統內部接口進行,改動系統功能時,只要改動相應模塊和模塊間的接口,而不必改變整個程序。
系統具有良好的用戶交互界面、易于使用、便于管理維護、數據更新快捷,具有優化的系統結構和完善的數據庫系統,具有與其他系統數據共享、協同工作的能力。
(1)提高重大災害性天氣的預警響應速度,由于系統對自動站進行24小時全天候實時監控,通過編程方式解決了短信息發送和接收的技術難關,本部門或相關部門領導、技術專業人員可以在任何地方第一時間知道各自動站點主要氣象要素達到或超過警告值的實況信息,為重大災害性天氣預報決策提供可靠的基礎數據。
(2)使用客戶端程序界面方式,設置氣象要素顯示欄和地圖信息顯示欄及歷史數據分析、查詢菜單。由于該方式對網絡環境要求比較低,一般只要求網絡的物理環境暢通,同時該方式安全性能非常好,減少了本機或網絡滋生病毒的次數,業務人員通過該界面直觀了解自動站地理分布情況以及自動站各種基礎氣象要素的實際變化情況,通過界面提供的菜單選項對歷史氣象要素進行分析、判斷、統計等等。從而進一步保證全區專用氣象數據網安全,提高查詢速度,大幅度減少手工操作,充分顯示出氣象現代化的特征,提高自動氣象站數據的使用率。
(3)在新一代雷達投入使用后,通過自動讀取雷達最新云圖數據結果,可以對即將發生的天氣過程及時進行準確地判斷和預警。
系統使用VC++的MFC架構作為主要的編程工具環境,在制作過程中,首先解決自動氣象站原始資料標準文本文件在網絡上的有效合理傳送及精確數據解讀、過濾、截取。其次解決數據入庫的過濾、數據表處理字段空值的方法,SQL常規表達式提供的模式匹配功能是否比通過TSQL查詢語言中的LIKE運算符可用的模式匹配功能多,考慮到主要使用C++代碼進行編程實現,使用 System.Text.RegularExpressions命名空間中的 RegEx類進行了一個簡單包裝,另外自制了一個時間轉換類對自動氣象站原始資料標準文本文件的時間字符串進行特定算法,自制列表擴展類改善列表控件的顯示方式。還要考慮標準數據接口API編程技術如何才能節省占用的CPU資源,數據表各字段標準命名,以便為下一步可持續開發打下堅實的基礎。然后,解決發送短信息需要使用UCS2、7-bit、8-bit、16-bit等PDU編碼格式的合理化,AT指令對TCL35集成模塊的觸發等。最后考慮各個進程的協調工作問題。

圖3 名稱表的結構設計
圖3是地市級自動氣象站基礎表的結構設計。從這個基礎表可以一目了然地明白其中的站名稱、代碼、區域,可以唯一的定義某地區某個自動氣象站及其基本信息,由于該表需要存放的數據記錄不是很多,一般最多是300條記錄,所以使用ACCESS數據模型建立。對于需要大量歷史數據的數據表,使用SQL SERVER數據模型建立。系統以減少連接操作、減少關系大小及數據量、節省存儲空間作為優化關系數據庫的標準。
系統統一定義兩個ODBC用戶數據源:一個是存放大量自動氣象站基礎數據SQL 2000數據模型的數據源,數據源驅動程序是SQL SERVER;另一個是ACCESS數據模型的數據源,數據源驅動程序是Micsoft Access Driver(*.mdb)。定義數據源有利于用戶使用不同的主機時,可以根據需要將數據庫安裝在本機合適的分區里,只需要定義相同名稱、類型的數據源就可以了。

FTP進程模塊示例代碼(節選)是供主控程序軟件進程模塊控制調用的程序代碼,是在執行一系列合法省級中小尺度文件服務器的程序代碼后,按自上到下的執行過程。首先得到省級中小尺度文件服務器第一個文件的文件名稱,取文件名稱的字符和名稱表進行合法比較,如果合法,則下載到本機的固定目錄 D:/數據庫/NOWZDZS后移除,供主控程序軟件進程模塊使用,如果不合法,則移除。
以自動發送短信息的方式提示有關業務員和各級用戶第一時間了解本地區各個地段發生超過臨界值的氣象要素,比如雨量、風、溫度等等,可以使各個工種的工作人員在任何地方任何時間及時了解特別天氣的變化情況,為災害性天氣的應急響應贏得寶貴的時間,短信息進程模塊是系統的一個重要組成部分。
SMS是由ESTI(Europen Telcommuncation Sdandards Institute,歐洲電信標準協會)制定的一個規范,系統根據現代移動通信發展的特點和硬件組合的實際需要出發,使用通過計算機串口連接GSM MODEM的方式發送地區自動氣象站實時數據應急響應預警短信息,SMS短信息進程模塊使用VC++編制,是實現進程的具體方法。
PDU模式現在已經成為公認的手機短信息發送和接收的基本編碼方式,用專門的函數將文本轉換為PDU格式,下面對發送“你好”到13977999403手機的PDU實例格式進行分析說明,發送內容實際形成的發送串是:


08 91 683108709705F0 11 00 0D 91 683179979904F3 00 08 00 04 4F60597D短信息服務中心地址長度,8個字節短信息服務中心號碼的類型短信息服務中心號碼文件頭字節信息參考被叫號碼長度被叫號碼類型發送號碼協議標準編碼方式有效期用戶數據長度用戶數據代表“你好”
主控程序界面實時數據如圖4所示,使用單位:廣西北海市氣象局,實際時間:2009年6月6日08時。
報警界面,如圖5所示,使用單位:廣西防城港市氣象局,發生時間:2009年5月30日02時。
圖5所示的第1編輯控件數字5表示該正點后15分鐘前的某分鐘05秒發現防城港市范圍的自動氣象站指定站點(具體內容在主控程序實時數據顯示界面可以直接看到)發現警情而進行報警,第2編輯控件數字是計時器,報警運行35秒后自動結束,圖5界面自動消失,報警聲音停止播放。
手機接收短信息界面如圖6所示。
使用單位:廣西北海市氣象局,發生時間:2008年6月29日03時,接收手機:13977999403,發送手機:13768093648,發生時間:2008年6月29日03時,警情地點:廣西北海市竹林鎮,警情類型:雨。

圖4 2009年6月6日08時,北海市范圍26個站點,大風警值2米/秒

圖5 報警界面

圖6 手機接收短信息界面
系統根據中尺度災害性天氣的地面氣象要素觀測需求特點,結合目前地區臺站的實際情況,提出并建立一個基于中尺度自動氣象站標準數據文件的資料收集處理系統,系統經過近一年的試用運行,穩定性、可靠性都非常好,系統重點解決了以下問題:
(1)以客戶端界面方式,實時監控各種要素的自動氣象站標準數據文件的實時數據和標準數據文件標準數據連接API接口的實現。
(2)雨量、溫度、風力等氣象要素超過臨界值的應急響應方式有效途徑。
[1] 陳禮生,宋遠清,朱小萍.廣東省自動氣象站數據庫建設與應用[J].氣象,2003,29(2):12-16.
[2] 周新,郭世浩.深圳市中小尺度自動站網絡系統[J].廣東氣象,1998,2:34-36.