李遠(yuǎn)芳 白毅平
(1、國(guó)家海洋局南海預(yù)報(bào)中心,廣東 廣州 510300 2、中國(guó)海洋大學(xué)環(huán)境科學(xué)與工程學(xué)院,山東 青島 266003)
南海區(qū)域,地處廣闊,又是我國(guó)經(jīng)濟(jì)發(fā)展的前沿,因此該區(qū)域海洋預(yù)報(bào)尤為受到社會(huì)各界關(guān)注,日本,香港,臺(tái)灣及澳門地區(qū)都特別關(guān)注南海地區(qū)的海洋預(yù)報(bào),這里由于受地理位置和地形條件的影響,極易受到大風(fēng)、巨浪、臺(tái)風(fēng)以及風(fēng)暴潮等災(zāi)害的影響。隨著我國(guó)對(duì)南海區(qū)域維權(quán)的開展,漁業(yè)等生產(chǎn)活動(dòng)的不斷擴(kuò)大,為了長(zhǎng)期系統(tǒng)的對(duì)南海沿岸進(jìn)行海洋環(huán)境監(jiān)測(cè),南海區(qū)域中心每天接收分布在南海29個(gè)海洋監(jiān)測(cè)站的監(jiān)測(cè)資料,通過專線傳輸已經(jīng)形成了南海海洋環(huán)境實(shí)時(shí)監(jiān)測(cè)系統(tǒng),并在此基礎(chǔ)上開發(fā)了一個(gè)對(duì)資料控制、數(shù)據(jù)顯示、統(tǒng)計(jì)下載、容災(zāi)備份、自動(dòng)報(bào)警的web應(yīng)用平臺(tái),監(jiān)視海洋水文氣象變化,為南海區(qū)域海洋預(yù)報(bào)及防汛指揮部門提供實(shí)況數(shù)據(jù),同時(shí)積累了豐富的海洋氣象觀測(cè)資料,使之成為氣象決策服務(wù)的重要依據(jù),為防災(zāi)抗災(zāi)發(fā)揮積極作用。
2.1 南海海洋環(huán)境監(jiān)測(cè)系統(tǒng)組成
南海海洋環(huán)境監(jiān)測(cè)系統(tǒng)主要由南海海洋環(huán)境監(jiān)測(cè)站、中心數(shù)據(jù)庫(kù)、業(yè)務(wù)化數(shù)據(jù)應(yīng)用平臺(tái)三部分組成。安裝在南海區(qū)域沿岸及平臺(tái)上的海洋環(huán)境監(jiān)測(cè)站,并設(shè)立顯示和數(shù)據(jù)采集、接收、保存的計(jì)算機(jī)終端,實(shí)時(shí)監(jiān)測(cè)海洋環(huán)境觀測(cè)數(shù)據(jù),通過海洋岸站與南海區(qū)域中心之間的數(shù)據(jù)專線或GPRS無線傳輸網(wǎng)絡(luò)將數(shù)據(jù)發(fā)送到南海區(qū)域中心數(shù)據(jù)庫(kù),不同用戶通過web瀏覽器可以交互查詢調(diào)閱單個(gè)或多個(gè)、實(shí)況或歷史各類監(jiān)測(cè)資料以及統(tǒng)計(jì)下載數(shù)據(jù),管理人員還可以通過其應(yīng)用平臺(tái)進(jìn)行設(shè)備監(jiān)控和授權(quán)管理。
2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)
中心數(shù)據(jù)庫(kù)采用SQLServer2003,是典型的關(guān)系型數(shù)據(jù)庫(kù),具有簡(jiǎn)單、方便、易用、管理功能強(qiáng)等特點(diǎn),特別是其應(yīng)用開發(fā)接口簡(jiǎn)單。主要數(shù)據(jù)庫(kù)表包括站點(diǎn)信息表、運(yùn)行日志表、原始記錄表、觀測(cè)要素資料表、日資料統(tǒng)計(jì)表等。站點(diǎn)信息表保存南海區(qū)域各個(gè)海洋監(jiān)測(cè)站的序號(hào)、地理位置、監(jiān)測(cè)項(xiàng)目、風(fēng)速風(fēng)向儀高度、維護(hù)人員聯(lián)系電話等資料數(shù)據(jù)。運(yùn)行日志表主要是記錄保存系統(tǒng)運(yùn)行狀態(tài),包括站點(diǎn)序號(hào)、開始時(shí)間、結(jié)束時(shí)間、維修維護(hù)項(xiàng)目描述等由子站程序和主站程序在遇到特殊事件時(shí)填寫。原始記錄表保存海洋環(huán)境監(jiān)測(cè)站的實(shí)時(shí)定時(shí)數(shù)據(jù),包括全部各類海洋水文及氣象要素,根據(jù)各個(gè)站點(diǎn)的觀測(cè)項(xiàng)目選擇使用,將所有自動(dòng)站整合在一個(gè)數(shù)據(jù)庫(kù)表中,用時(shí)間和站點(diǎn)代號(hào)及數(shù)據(jù)類型作為主鍵。
記錄大風(fēng)數(shù)據(jù),起止時(shí)間及風(fēng)向風(fēng)速。
日資料統(tǒng)計(jì)表記錄當(dāng)天(20時(shí)~20時(shí))的高潮時(shí)間、低潮時(shí)間、水位、平均風(fēng)速、天氣性質(zhì)、浪高、波高、增減水等。
2.3 數(shù)據(jù)保存及通訊程序
通過對(duì)海洋環(huán)境監(jiān)測(cè)站數(shù)據(jù)采集接收軟件進(jìn)行修改,使之能輸出實(shí)時(shí)資料。實(shí)時(shí)資料文件采用固定名稱,時(shí)間在文件內(nèi)部指定。子站通過基于TCP/IP協(xié)議的ODBC數(shù)據(jù)源接口,使用Microsoft ActiveX數(shù)據(jù)對(duì)象(ADO)來快速建立與助戰(zhàn)數(shù)據(jù)庫(kù)連接,將數(shù)據(jù)添加到中心數(shù)據(jù)庫(kù)。
海洋環(huán)境監(jiān)測(cè)站資料傳輸主要有兩個(gè)功能模塊組成:備份和入庫(kù)。根據(jù)備份和入庫(kù)程序具有時(shí)間性和重復(fù)性的特定,采用通過Windows系統(tǒng)自帶的定時(shí)任務(wù)功能,調(diào)度各模塊運(yùn)行,并監(jiān)視其運(yùn)行狀況。針對(duì)不同模塊設(shè)置不同參數(shù),如啟動(dòng)時(shí)間、時(shí)間間隔、最大運(yùn)行時(shí)間等。
由于南海海洋環(huán)境監(jiān)測(cè)系統(tǒng)涉及整個(gè)南海區(qū)域的海岸線觀測(cè)、涉及四個(gè)海洋環(huán)境中心站、多個(gè)生產(chǎn)單位、百萬漁民、資料應(yīng)用范圍廣,而且用戶需求也不一樣,這就要求資料平臺(tái)具有多用戶、操作簡(jiǎn)單快捷、數(shù)據(jù)顯示直觀的特點(diǎn)。采用ASP及ASP.NET動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行數(shù)據(jù)發(fā)布既滿足范圍廣用戶多的需求,也滿足用戶圖象話瀏覽的要求,且操作簡(jiǎn)單。
3.1 功能簡(jiǎn)介
3.1.1 查詢功能
水文氣象海洋監(jiān)測(cè)數(shù)據(jù)顯示主要有兩種方式:文本和圖象。
文本數(shù)據(jù)查詢。文本數(shù)據(jù)是直接可以讀出的要素?cái)?shù)值,如實(shí)時(shí)資料和定時(shí)資料。這類資料用戶關(guān)心的瞬時(shí)狀態(tài),需要精確的數(shù)值,且要素全面,一般采用表格形式。主要有多站實(shí)時(shí)、單站實(shí)時(shí)、單站定時(shí)等頁(yè)面,用戶可以通過頁(yè)面的向前向后一月、一周、一天導(dǎo)航鏈接進(jìn)行查詢,也可以通過快速日歷(公歷或農(nóng)歷)進(jìn)行直接定位,可以直接切換到圖形查詢方式。
動(dòng)態(tài)圖象查詢。對(duì)于時(shí)間序列資料,如潮位、風(fēng)力、氣溫、氣壓等,用戶需要了解某一時(shí)間段內(nèi)的變化趨勢(shì),以尋找其規(guī)律性,這時(shí)采用文本資料列表往往不夠直接明了。另外,對(duì)于某些非專業(yè)用戶,對(duì)于精確的數(shù)據(jù)往往不能全面了解,如風(fēng)向的方位等,通過圖示的方法就較容易理解。圖象資料顯示同樣通過時(shí)間進(jìn)行導(dǎo)航,可以任意指定起止時(shí)間,根據(jù)需要選擇時(shí)間長(zhǎng)度。
3.1.2 監(jiān)控功能
監(jiān)控功能包括設(shè)備運(yùn)行狀況和沿岸海況的監(jiān)視。設(shè)備運(yùn)行狀況的監(jiān)視是通過查詢運(yùn)行日志表實(shí)現(xiàn),對(duì)于設(shè)備故障可以直接發(fā)現(xiàn),如果沒有最新運(yùn)行日志記錄則表明網(wǎng)絡(luò)故障。沿岸海況監(jiān)視是定時(shí)根據(jù)預(yù)先設(shè)定的報(bào)警條件對(duì)原始記錄表進(jìn)行檢查。監(jiān)控功能運(yùn)行在預(yù)報(bào)平臺(tái)后臺(tái)運(yùn)行,只在需要報(bào)警時(shí)彈出窗口。
3.1.3 統(tǒng)計(jì)功能
一般常規(guī)統(tǒng)計(jì)資料可以直接查詢?nèi)召Y料統(tǒng)計(jì)表,對(duì)于特殊需要可以統(tǒng)計(jì)頁(yè)面實(shí)現(xiàn)。通過與用戶交互,可以指定資料類型、站點(diǎn)名稱、要素名稱及范圍、時(shí)間標(biāo)記以及返回類型(最大、最小、平均、合計(jì)、出現(xiàn)次數(shù))等等。
3.1.4 下載功能
由于原始資料以數(shù)據(jù)庫(kù)的形式進(jìn)行保存,為了方便用戶將資料用于研究等用途,應(yīng)用平臺(tái)還特意編制了資料下載頁(yè)面。用戶可以選擇單個(gè)站,也可選擇多個(gè)站,分別進(jìn)行小時(shí)資料和日資料下載,平臺(tái)會(huì)將下載的資料保存保存在剔除了所有裝飾頁(yè)面中,通過瀏覽器另存為本地文本文件。
3.2 主要技術(shù)方法
ASP動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)。ASP(Active Server Pages)是在服務(wù)器端嵌入腳本語言實(shí)現(xiàn)動(dòng)態(tài)可交互的網(wǎng)頁(yè)制作技術(shù)。利用服務(wù)器端腳本可以建立數(shù)據(jù)庫(kù)連接,并將根據(jù)特定條件從數(shù)據(jù)庫(kù)中檢索得到的數(shù)據(jù)結(jié)果放到普通的HTML代碼中,且這些服務(wù)器端腳本不依賴于任何瀏覽器和用戶使用的平臺(tái)。
ASP.NET動(dòng)態(tài)網(wǎng)頁(yè)圖象技術(shù)。網(wǎng)頁(yè)上的圖象一般是靜態(tài)的,以文件形式存在,對(duì)于潮位曲線等根據(jù)數(shù)據(jù)動(dòng)態(tài)生成的圖象無法事先生成文件,即使按給定時(shí)間段生成圖象,不但查詢不方便,而且隨著數(shù)據(jù)增加,圖片文件數(shù)量不斷增加,進(jìn)而影響系統(tǒng)整體性能。
首先在Microsoft Developer Studio開發(fā)環(huán)境下建立一個(gè)Visual C#下的ASP.NET WEB應(yīng)用程序項(xiàng)目,將頁(yè)面改名保存為云圖頁(yè)面tideline.aspx,該頁(yè)面負(fù)責(zé)根據(jù)時(shí)間及站點(diǎn)序號(hào)從數(shù)據(jù)庫(kù)中導(dǎo)出潮位數(shù)據(jù),再利用GDI+類庫(kù)中的Bitmap子類初始化函數(shù)生成Bitmap子類的實(shí)例,根據(jù)潮位數(shù)據(jù)進(jìn)行繪制潮位曲線,最后調(diào)用Bitmap子類的Save方法把圖象字節(jié)流傳遞給與Page關(guān)聯(lián)的HttpResponse對(duì)象,進(jìn)而實(shí)現(xiàn)潮位數(shù)據(jù)圖象的瀏瀏覽器查閱。
用戶管理。用戶管理采用IP和用戶名+密碼兩種論證方式。當(dāng)用戶開始瀏覽時(shí),首先檢查終端計(jì)算機(jī)ip地址是否已經(jīng)注冊(cè)成為擁護(hù),并根據(jù)注冊(cè)信息顯示相應(yīng)站點(diǎn)、種類數(shù)據(jù);如果沒有注冊(cè),進(jìn)入登陸也面,登陸成功后,再根據(jù)用戶信息顯示相應(yīng)數(shù)據(jù);如果登陸不成功,也可以進(jìn)行資料查詢,只能查詢當(dāng)前水文氣象實(shí)況,無權(quán)查詢歷史及水文氣象數(shù)據(jù),對(duì)于注冊(cè)用戶根據(jù)其級(jí)別只能再預(yù)先設(shè)定范圍內(nèi)查詢資料。
南海海洋環(huán)境監(jiān)測(cè)數(shù)據(jù)庫(kù)及WEB應(yīng)用平臺(tái)自2008年投入使用以來,以其友好明了的界面、簡(jiǎn)單通用的操作、全面豐富的數(shù)據(jù)、特別是動(dòng)態(tài)潮汐、風(fēng)況等要素演變曲線,極大方便預(yù)報(bào)員的日常預(yù)報(bào)及工程設(shè)計(jì)管理人員使用,不但拓寬了資料應(yīng)用范圍,而且實(shí)現(xiàn)多站數(shù)據(jù)集中發(fā)布,多單位共享,滿足了用戶不同需求,在海洋環(huán)境預(yù)報(bào),及防災(zāi)減災(zāi)等方面發(fā)揮了重要作用。
[1]蔡新國(guó)。通用環(huán)境監(jiān)測(cè)數(shù)據(jù)庫(kù)軟件 EDS[J].江蘇環(huán)境科技,1993.
[2]海洋監(jiān)測(cè)質(zhì)量保證手冊(cè)[M].北京:海洋出版社,2000.
[3]asp3程序員參考手冊(cè)(英)Richard Anderson,機(jī)械工業(yè)出版社,2001.
[4]VISUAL C#案例教程。北京希望電子出版社,2002.