燕 云,盧 山,劉天龍,趙 雷,羅 斐
(遼寧省地震局,遼寧 沈陽 110034)
近年來,在國家政策的支持下,地震觀測系統正經歷著數字化、網絡化、規模化的歷史性跨越,地震觀測儀器已成為了具有重要科學價值和戰略價值的“國家科學觀測設施”。因此,對地震學科中的各種數據,進行現代化、高質量、系統化的質量監控與管理,便成為了一個亟待解決的問題。
遼寧地震前兆臺網觀測臺站包括國家級臺站、省級臺站和市縣臺站,觀測類型包括“十五”觀測、“九五”觀測、人工與模擬觀測等,涉及形變、重力、地磁、地電和地下流體五個學科多個專業領域和多種觀測手段。觀測采樣方式為數字化采樣、模擬采樣和人工采樣并存。2017年遼寧區域臺網向國家中心報數臺站總數49個,其中國家級臺站9個,省級臺站17個,市縣級臺站23個,目前在運行儀器171臺套,測項分量466個。“十五”類型儀器數量為103套、“九五”類型儀器為10套、“人工”類型儀器為40套、“模擬”類型儀器為18套。我省在全國各省級地震前兆臺網中屬于儀器數量較多的省份[1]。
因此有必要針對遼寧省地震前兆監控數據的監控、整合和展示開發一套系統平臺,方便更多的地震專業人員更充分地使用已有數據資源,減少資料收集、查詢、保管等工作,提高了技術人員使用數據、分析數據的工作效率。
建設分為兩個主要部分:硬件建設和軟件開發。
地震前兆臺網中心:由6臺65寸液晶電視機組成的大屏幕、及配套的工作站主機、操作臺及4臺臺式機(其中新更換2臺)、服務器1臺、音頻系統1套。

圖1 地震前兆臺網中心硬件系統結構Fig.1 Hardware system structure of Liaoning Earthquake Precursor Network Center
儀器維修中心:由2臺65寸液晶電視機組成的大屏幕、操作臺及2臺臺式機。
軟件開發主要包括,基于C/S(客戶端/服務器端)模式開發的可執行程序——遼寧地震前兆臺網運維監控系統,和基于B/S(瀏覽器端/服務器端)模式網絡版的——遼寧省地震局前兆監控系統,共用同一套數據庫和服務器,從而形成一套完整的監控體系。
按當前流行的程序設計方法,可將數據應用程序分為兩類,一類是兩層結構的數據應用程序,另一類是三層結構的數據應用程序。遼寧省地震前兆監控與數據處理平臺結合遼寧地震前兆臺網運維監控系統的用戶特點,為了提高系統效率,采用了經典的兩層結構的系統架構,兩層結構的特點是數據庫服務器管理數據,而客戶端顯示、訪問和處理數據。這種架構的特點是客戶端負荷比較大,但有效地減輕了服務器端的壓力。由于用戶監控管理的客戶端是專用的,可以滿足這種需求[5]。
遼寧省地震局前兆監控系統采用的是三層結構的系統架構,包含展示層、業務層和持久層。提高了系統的靈活性、可移植性和穩定性,符合不同部門工作人員的需求,便于后期維護和軟件升級。

圖2 三層結構模型Fig.2 Three-tier architecture model
該平臺研發了一套適合于遼寧省地震局地震前兆臺網中心日常工作的綜合性平臺,并且已經投入使用,實現了對遼寧省地震前兆臺網所有儀器設備的全面監控和管理,對收集的信息進行統計分析,并通過大屏幕來進行集中監視。主要包括以下七個功能。
與有網絡攝像頭的臺站進行視頻連接,將視頻接到綜合監控平臺上,在1個屏幕上進行集中監視。具備一些常用的視頻監視功能[3-4]。
實現了遼寧地震前兆臺網所有(地震前兆)臺站的空間分布的可視化、可縮放,點擊某臺站時,以窗口方式顯示該臺站的簡要基礎信息,可將某臺站放大至顯示臺站內部的測點分布。定期連通儀器,巡查儀器的運行狀態,在1個屏幕上以空間分布圖的方式進行集中監視。運行狀態分為正常、故障兩種。可按多種條件篩選儀器,如學科名稱、型號。
實現了多個臺項的觀測數據曲線的顯示,可定時自動從數據庫更新曲線。在這個屏幕上也可切換為顯示實時曲線(短時間顯示)。可按多種條件篩選儀器,如學科手段、測項。
包括兩種情況,一是遼寧地震前兆臺網中心,二是東北片區儀器維修中心。地震前兆臺網中心是實現了儀器信息的列表顯示,可按多種條件篩選儀器,如按時間段(當年、當月、任意時間段)、學科手段、測項。可顯示儀器生命周期的各種統計信息,儀器類型統計信息、儀器故障統計信息等;東北片區儀器維修中心是在片區維修中心,顯示片區儀器維修情況,包括接收的儀器總套數、已修復的儀器套數、報廢的儀器套數、在修的儀器套數等,可按多種條件篩選儀器,如時間段(當年、當月、任意時間段)、省、學科手段、測項。
實現了顯示信息節點臺站的地震前兆數據庫空間使用情況,對剩余空間小于一定比例的臺站以高亮顯示。
實現了對臺站每日日常工作的流程化管理,每完成一項工作,就點個按鈕,在監控大屏上,集中展示每個臺站日常工作完成情況。
儀器的狀態信息是本項目要監控和管理的重要信息,因此,需要完善目前地震前兆臺網儀器的管理,實現對每臺儀器整個生命周期的運行情況進行全程跟蹤管理,形成儀器完整檔案。這個功能是管理模塊,主要用于全面采集儀器的各種狀態信息,并進行統計分析,產出統計分析報告。
由于C/S模型——遼寧省地震前兆臺網運維監控系統與B/S模型——遼寧省地震局前兆監控系統采用兩種不同語言進行編譯,先分別對兩個模型的關鍵技術進行介紹。
該系統采用.NET平臺進行開發。采用C#開發,與后臺數據庫的連接通過Oracle客戶端進行。由于本系統的開發和部署環境及節點范圍與“前兆臺網數據處理系統”相同,因此為了簡化部署,將本系統集成在“前兆臺網數據處理系統”中,通過更新“前兆臺網數據處理系統”的可執行文件QZPROCESS.EXE文件直接部署[5]。

圖3 .NET平臺編譯過程Fig.3 Compilation process of.NET platform
.NET框架由兩個主要部分組成:公共語言運行時庫 (Common Language Runtime,CLR)和.NET框架類庫,它與操作平臺以及Visual Studio.NET的關系如下圖所示。
公共語言運行時庫(CLR)管理著編譯過的.NET程序的執行情況,CLR的角色類似于Java虛擬機,CLR是所有.NET語言的運行時庫,它的功能是執行和管理以任何能夠用于.NET平臺的語言編寫的所有代碼,還可處理和管理程序運行過程中的其他一些方面,如:類型、版本以及其他相關信息、垃圾收集、代碼檢查、代碼訪問的安全性等。在執行代碼的過程中,CLR使用另一種編譯器將IL語言編譯為特定于程序運行平臺的機器代碼[5]。
B/S模式(網頁)采用了最先進的MVC架構,用JAVA和JS編寫,部署在專門的服務器上,服務器操作系統為最新的Linux系統,Web服務器采用開源的Apache Tomcat,前臺頁面主要用HTML語言及CSS語言實現,利用百度地圖 API、Jquery、Echarts、Fusionchart等插件實現了數據的可視化地圖和圖表展示[2]。

圖4 MVC模型的關系和功能Fig.4 Relationships and functions of MVC model
本節將對該平臺的建設完成后的實際運行情況進行展示,并且針對較為典型的儀器運行監控和數據曲線監控進行操作顯示[2]。

圖5 監控平臺整體效果圖Fig.5 The overall effect map of monitoring platform
“儀器運行監控”功能用于對儀器運行進行監視。它以一定時間間隔定期連接儀器、獲取儀器狀態信息并進行分析來判斷儀器運行是否正常,當儀器運行不正常時通過聲音發出警報。

圖6 儀器運行監控界面Fig.6 The monitoring interface of the instrument operation
圖6可分為以下幾部分:
(1)左上是省局所有儀器的列表,用于從中選擇要監視的儀器。
(2)左下是用戶選擇要監視的儀器列表。從左上的儀器列表中點擊某儀器后,點擊“添加監視”按鈕可將該儀器添加到要監視的儀器列表中。點擊“全部添加”可將所有儀器添加到要監視的儀器列表中。
(3)點擊本列表框中的某儀器或連續選擇多臺儀器,再點擊“刪除監視”按鈕,可將這些儀器從刪除列表中刪除。
(4)設置監視參數
①“刷新間隔(分)”:啟動監視后,軟件將每隔一定時間間隔對監視的儀器進行巡查一次。這里設置的就是巡查的間隔時間,以分鐘為單位,缺省為60分鐘。建議間隔不要小于5分鐘,以免太密集的儀器巡查會對儀器的正常觀測產生影響。
②“允許時鐘差(秒)”:巡查儀器時會檢查儀器的時鐘與運行軟件的計算機的時鐘進行對比,兩種相差超過這個值時,就會被作為一項異常,顯示在右邊的窗口中。
③“聲音報警”:設置在巡查儀器發現異常時,是否通過聲音報警。
(5)點擊“啟動監視”按鈕,將對要監視的儀器列表框中的儀器啟動監視,它對所有要監視的儀器逐臺進行連接、登錄,登錄成功后獲取儀器狀態信息并進行分析來判斷儀器運行是否正常。
(6)點擊“停止監視”按鈕,將停止對所有儀器的監視。在需要時,可再次點擊“啟動監視”按鈕啟動監視。
(7)點擊“數據監視”按鈕,從儀器調取當天0時開始的數據,在單獨的窗體中繪圖顯示,并按上面設置的時間間隔刷新數據。這個功能顯示的是一個準實時的數據曲線。這個按鈕點擊啟動了數據監視之后,就會變為“停止數據監視”,此時點擊后,就停止準實時的數據曲線刷新。
(8)右下角是一個餅圖,顯示的是正常與異常儀器的數量。
(9)窗體右下底部有兩個功能按鈕:
①“查看前XX天數據”:從儀器調取前XX天數據,并繪圖顯示。天數可從下列列表中選擇,其值從1~14天。
②“查看前XX天日志”:從儀器調取前XX天運行日志,并列表顯示。天數可從下列列表中選擇,其值從1~14天。
“數據監控”功能通過數據曲線圖對數據進行監視。這個功能與上面“儀器運行監控”中的數據監視不同之處在于,這個功能是從數據庫中讀取數據并繪圖顯示,而“儀器運行監控”中的數據監視是從儀器直接讀取數據并繪圖顯示[2]。

圖7 數據曲線監控主界面Fig.7 The main monitoring interface of data curve
窗體左邊是選項,用于過濾臺項列表框中的臺項。選項包括區域、采樣率、數據類型、測項等。
窗體右邊是臺項列表框,它以樹的形式列出臺項。每個臺項前都有一個復選框,打勾表示選中。
點擊“開始”按鈕,將對所有選中的臺項開始進行監視。本模塊將按指定時間間隔,從數據庫中讀取最新數據,刷新曲線圖。

圖8 數據曲線波形顯示界面Fig.8 The display monitoring interface of data curve waveform
地震前兆應急監控與數據處理項目是遼寧地震前兆臺網運維監控平臺建設,它的目標是本著統一規劃、逐步實施的原則,實現對遼寧省地震前兆臺網所有儀器設備的全面監控和管理,對收集的信息進行統計分析,并通過大屏幕系統進行集中監視,清除管理死角,提高工作效率。