趙鐵鎖 張 暉 趙艷紅
(中國內(nèi)蒙古自治區(qū)010010呼和浩特地震臺)
單臺測震數(shù)據(jù)斷記監(jiān)測軟件設(shè)計
趙鐵鎖 張 暉 趙艷紅
(中國內(nèi)蒙古自治區(qū)010010呼和浩特地震臺)
為保障Jopens系統(tǒng)數(shù)字地震臺站測震數(shù)據(jù)連續(xù)性和完整性,減少記錄中斷未被及時發(fā)現(xiàn)造成的數(shù)據(jù)丟失,利用VB開發(fā)一款監(jiān)測Jopens數(shù)據(jù)庫數(shù)據(jù)信息變化軟件,能夠定時監(jiān)視地震波形數(shù)據(jù)庫信息變化,針對系統(tǒng)因網(wǎng)絡(luò)中斷、記錄軟件死機等原因造成的實時數(shù)據(jù)斷記,彈出告警提示,播放報警音樂,并產(chǎn)出斷記日志。
單臺;停記;監(jiān)控軟件
隨著科技水平的提高和計算機的普遍應(yīng)用,社會生產(chǎn)向自動化和數(shù)字化穩(wěn)步發(fā)展。中國“十五”數(shù)字地震觀測網(wǎng)絡(luò)項目測震分項目完成后,測震觀測統(tǒng)一使用廣東省智源工程抗震科技公司開發(fā)的Jopens系統(tǒng),核心數(shù)據(jù)庫是基于Mysql的Jopens數(shù)據(jù)庫(孫學(xué)軍等,2009)。該軟件的臺站版隨著觀測技術(shù)不斷改進,功能不斷完善,廣泛應(yīng)用于全國地震臺地震數(shù)字化觀測。
在地震數(shù)據(jù)實時記錄存儲中,數(shù)據(jù)完整性是考查數(shù)據(jù)質(zhì)量的重要指標(biāo),也是地震數(shù)據(jù)研究的基本要求。而數(shù)據(jù)缺失、斷記給地震監(jiān)測和地震相關(guān)研究帶來不可彌補的損失。計算機故障、網(wǎng)絡(luò)故障等以及數(shù)字地震觀測系統(tǒng)兼容性不良、數(shù)字化實時記錄軟件運行錯誤等,常造成地震實時記錄斷記平均斷記4—5小時后才被發(fā)現(xiàn)(張念等,2007)。由于斷記時間的不確定性和突然性,數(shù)據(jù)出現(xiàn)斷記時往往不能及時發(fā)現(xiàn),得不到及時處理,影響數(shù)據(jù)使用。目前,只有針對地震臺網(wǎng)系統(tǒng)數(shù)據(jù)的監(jiān)控軟件,沒有針對單臺系統(tǒng)數(shù)據(jù)監(jiān)控的軟件。因此,研發(fā)一款單臺測震數(shù)據(jù)斷記監(jiān)測軟件,用于單臺Jopens數(shù)字化系統(tǒng),地震數(shù)據(jù)出現(xiàn)斷記時自動報警,提示值班人員及時處理,避免造成嚴重的數(shù)據(jù)丟失。
為了解決單臺地震觀測數(shù)據(jù)記錄中斷主要依靠人工監(jiān)視的現(xiàn)狀,2005年黑龍江省牡丹江地震臺馬寶君研發(fā)一款監(jiān)視計算機死機的報警軟件,功能單一(馬寶軍等,2006)。2008年河北省紅山地震臺王利兵等(2008)也開發(fā)一款監(jiān)視地震輸出文件的報警軟件,界面化設(shè)計,易操作,只針對地震記錄產(chǎn)出的文件進行監(jiān)測,而非針對數(shù)據(jù)庫,功能較單一。以上兩款軟件監(jiān)測對象的局限性,導(dǎo)致其適用范圍有限,已不能適應(yīng)當(dāng)前地震觀測需求。
地震觀測系統(tǒng)經(jīng)“十五”改造進入數(shù)據(jù)庫時代,數(shù)據(jù)存儲和讀取通過數(shù)據(jù)庫操作實現(xiàn)。Jopens系統(tǒng)基于Mysql數(shù)據(jù)庫,按照“十五”期間《中國數(shù)字地震觀測網(wǎng)絡(luò)》項目測震軟件CZ-01包的需求分析開發(fā)(吳永權(quán)等,2010),臺網(wǎng)版具有數(shù)據(jù)斷記監(jiān)測功能,而臺站版無此功能。目前,沒有研究人員開發(fā)出適用于單臺Jopens數(shù)字化系統(tǒng)的斷記監(jiān)測軟件,設(shè)計單臺測震數(shù)據(jù)斷記監(jiān)測軟件以適應(yīng)當(dāng)前臺站所震。
對數(shù)字化地震觀測系統(tǒng)的監(jiān)視可分為對信號傳輸過程中的電壓監(jiān)視和數(shù)據(jù)存儲文件內(nèi)容監(jiān)視(王利兵等,2008)。單臺測震數(shù)據(jù)斷記監(jiān)測軟件采用后者,即以記錄系統(tǒng)的最終產(chǎn)物(數(shù)據(jù)庫數(shù)據(jù))作為監(jiān)視對象,通過監(jiān)測數(shù)據(jù)庫存儲數(shù)據(jù)的變化及數(shù)值異常來判斷系統(tǒng)的工作狀態(tài)。
數(shù)字地震臺站單臺數(shù)據(jù)處理軟件seismic mix實時將地震數(shù)據(jù)寫入Mysql數(shù)據(jù)庫,正常情況下數(shù)據(jù)庫數(shù)據(jù)信息隨時間不斷變化。假如把某一時刻連續(xù)波形數(shù)據(jù)庫的數(shù)據(jù)信息作為一個標(biāo)準(zhǔn)存入1個變量,每隔一段固定時間(本文為1min)檢查數(shù)據(jù)庫信息并與前一時間點的標(biāo)準(zhǔn)對比,數(shù)據(jù)庫信息有所變化則說明連續(xù)波形數(shù)據(jù)已經(jīng)存入,系統(tǒng)運行正常;反之,如果數(shù)據(jù)庫信息與前一時間點相比沒有發(fā)生變化,說明在此期間沒有數(shù)據(jù)入庫,表明系統(tǒng)運行異常,立即報警,提示值班工作人員數(shù)據(jù)出現(xiàn)斷記,及時進行檢查和處理。系統(tǒng)整體結(jié)構(gòu)采用分層設(shè)計(胡星星等,2008),軟件流程見圖1。
圖1 軟件流程Fig.1 The flow chart of the software
Jopens系統(tǒng)是基于Mysql數(shù)據(jù)庫編寫的地震處理軟件,數(shù)據(jù)調(diào)用和存儲都要對數(shù)據(jù)庫進行一系列操作。數(shù)據(jù)庫操作復(fù)雜,不僅要熟悉數(shù)據(jù)庫、表的結(jié)構(gòu)內(nèi)容和屬性,還要懂得運用恰當(dāng)?shù)拿钆c數(shù)據(jù)庫溝通。單臺測震數(shù)據(jù)斷記監(jiān)測軟件實現(xiàn)了與Jopens數(shù)據(jù)庫的結(jié)合,實現(xiàn)對地震觀測數(shù)據(jù)庫地定時跟蹤和監(jiān)測,對斷記、系統(tǒng)服務(wù)停止、死機等情況的報警。
網(wǎng)絡(luò)故障也是造成數(shù)據(jù)斷記的重要原因,而網(wǎng)絡(luò)中斷是網(wǎng)絡(luò)故障的主要原因,因此本軟件增加網(wǎng)絡(luò)監(jiān)測功能。應(yīng)用VB編程設(shè)計的定時器,定時對數(shù)采發(fā)送1組信息,接收到返回信息表明網(wǎng)絡(luò)通訊正常,否則表明通訊中斷。發(fā)生網(wǎng)絡(luò)中斷,軟件及時彈出提示窗口,通知維護人員進行故障處理。
為了對今后地震數(shù)據(jù)斷記的整理、核查及故障原因進行總結(jié),軟件增設(shè)斷記日志生成,包括斷記開始時間、數(shù)據(jù)記錄恢復(fù)時間及斷記原因,對于斷記開始時間,軟件自動填入Jopens數(shù)據(jù)庫停止存儲時間。
地震觀測數(shù)據(jù)中斷原因較多,包括網(wǎng)絡(luò)故障、計算機死機等。為了幫助維護人員盡快查明故障原因,恢復(fù)記錄,附加斷記原因的簡單判斷。本軟件運用VB編程的網(wǎng)絡(luò)監(jiān)測和后臺運行軟件的監(jiān)控功能,對數(shù)采網(wǎng)絡(luò)和記錄軟件運行狀態(tài)進行判斷識別。如果是
其中之一原因造成的,則在關(guān)閉警報后彈出提示窗口,第一時間提醒工作人員,盡快修復(fù),為查找原因節(jié)省時間。
網(wǎng)絡(luò)中斷后可能非臺站網(wǎng)絡(luò)故障,而是遠程通信線路故障造成。本軟件為此增設(shè)網(wǎng)絡(luò)恢復(fù)監(jiān)測功能,對中斷網(wǎng)絡(luò)進行跟蹤監(jiān)測,恢復(fù)通信發(fā)出警報和提示信息。
軟件實現(xiàn)本地對遠程無人值守臺地震數(shù)據(jù)記錄系統(tǒng)的監(jiān)視。本地監(jiān)控和遠程監(jiān)控的區(qū)別在于,被監(jiān)測對象的數(shù)據(jù)位置不同,本地監(jiān)測對象在本計算機上,可以隨時訪問,而遠程監(jiān)測對象則在局域網(wǎng)內(nèi)任何一臺電腦上,無法及時查看。通過本地計算機訪問遠程計算機的Jopens數(shù)據(jù)庫,對數(shù)據(jù)庫的變化定時跟蹤比較,數(shù)據(jù)一旦停止變化,即在本地計算機上發(fā)出數(shù)據(jù)斷記警報,以便及時進行故障處理,盡快恢復(fù)數(shù)據(jù)記錄。
VB提供了在Microsoft Windows操作系統(tǒng)下開發(fā)功能強大應(yīng)用程序迅速、容易的途徑 (Steven J,2005)。利用VB6.0提供的網(wǎng)絡(luò)編程技術(shù)(崔彥鋒等,2002)、多媒體編程(林永,2002)和VB錯誤處理技術(shù)(編程高手工作室,2001),編寫可視化界面的數(shù)據(jù)斷記報警軟件,實現(xiàn)VB6.0與Mysql數(shù)據(jù)庫鏈接,其主程序界面見圖2。
這個時侯,為什么總是這個時候?他記得上一次也是這個時候,華燈初上的時候,小涵突然來電話。她在電話里問他在哪里,為什么這么安靜?她說孩子病了,正在醫(yī)院打點滴。也就是通知他一聲,讓他開完會早點回來。她第二天要出差。那天他放下電話,腦門上微微出了汗。小涵從不在他外出的時候打電話來,他們有約定。除非有急事。浴室的水聲突然停止了,她在里面叫他。他看了一眼飄動在中央空調(diào)上的紅色絲帶,猶豫了一下就解了衣服。走進浴室的時候,她提醒說,小心滑,我剛才差點滑倒了。他轉(zhuǎn)身關(guān)掉了浴燈,腦子里孩子生病的臉龐也被關(guān)掉了。
(1)選擇監(jiān)測數(shù)據(jù)庫文件(ibdata1)。Mysql在儲存INNODB類型數(shù)據(jù)狀態(tài)下,存儲地震實時數(shù)據(jù)。
(2)選擇報警音樂。本軟件提供3首聲音響亮的警報音樂,以提高值班人員的警覺。此外,用戶可自行選擇報警音樂。點擊“自定義”選項,即可選擇報警音樂。
(3)選擇監(jiān)測時間。監(jiān)測時間指軟件重復(fù)監(jiān)測數(shù)據(jù)庫的間隔時間,數(shù)字越小,監(jiān)測頻率越高,占用CPU資源越多,經(jīng)反復(fù)測試和對比發(fā)現(xiàn),1 min是不影響系統(tǒng)流暢運行及日常辦公的最小時間間隔,故間隔時間最小設(shè)為1 min。
(4)斷記日志。為了記錄數(shù)據(jù)斷記情況,便于今后的查詢和核對,軟件生成一個文本格式簡單日志文件。
圖2 報警軟件主界面Fig.2 The main interface of the alarm software
單臺測震數(shù)據(jù)斷記監(jiān)測軟件是一款免安裝軟件,在Win XP、win7環(huán)境下,需將壓縮包解壓即可運行。
軟件運行前必須安裝數(shù)據(jù)庫驅(qū)動程序“odbc 5.1”,數(shù)據(jù)庫存儲文件(ibdata1)必須在本地計算機上。軟件運行后即可以連續(xù)實時監(jiān)控數(shù)據(jù)庫、系統(tǒng)、網(wǎng)絡(luò)的運行狀態(tài)。
2015年6月單臺測震數(shù)據(jù)斷記監(jiān)測軟件在呼和浩特地震臺投入運行,對呼和浩特和阿古拉地震臺連續(xù)波形數(shù)據(jù)進行有效監(jiān)測,特別是阿古拉臺數(shù)據(jù)屬于遠程連接,網(wǎng)絡(luò)不穩(wěn)定和斷網(wǎng)時有發(fā)生,造成多次斷記。在2個臺20多次數(shù)據(jù)斷記中,軟件能準(zhǔn)確無誤地發(fā)出報警,未發(fā)生漏報和誤報現(xiàn)象。
本軟件應(yīng)用后減輕了臺站工作人員的勞動強度,使臺站地震實時數(shù)據(jù)斷記時間得到大幅下降。2011—2015年呼和浩特基準(zhǔn)地震臺斷記統(tǒng)計見表1。
表1 2011—2015年呼和浩特基準(zhǔn)地震臺斷記統(tǒng)計(單位:s)Table 1 Statistics of seismograph record breaking at Hohhot Reference Station during 2011 to 2015
從表1可知,在2015年6月地震臺站使用本軟件后,數(shù)據(jù)斷記得到控制,可見縮短發(fā)現(xiàn)和處理斷記的時間,減少了臺站數(shù)據(jù)斷記時間。
單臺測震數(shù)據(jù)斷記監(jiān)測軟件在呼和浩特地震臺經(jīng)過半年的試運行,其間經(jīng)多次完善和改進,具備本地和遠程數(shù)據(jù)監(jiān)測能力。簡單的操作性和靈敏的斷記監(jiān)控能力得到工作人員一致好評。該軟件的應(yīng)用不僅實現(xiàn)臺站數(shù)據(jù)斷記監(jiān)測自動化,而且為縮短斷記發(fā)現(xiàn)和處理時間、提供連續(xù)可靠的地震觀測數(shù)據(jù)增加技術(shù)保障。
該監(jiān)測軟件在監(jiān)測斷記上效果良好,但運行環(huán)境的局限性,報警提示途徑的單一性,不能適應(yīng)更復(fù)雜的監(jiān)測環(huán)境,今后需加以改進。
臺站斷記影響因素諸多,本軟件的使用僅起到監(jiān)控作用,今后工作中還應(yīng)設(shè)制主動防御功能,深入研究整個供電系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、軟硬件系統(tǒng)工作狀態(tài)主動監(jiān)控,探索對臺站技術(shù)系統(tǒng)積極有效的預(yù)防監(jiān)控方案。
編高手工作室.V isual Basic編程高手[M].北京:希望電子出版社,2001:135-147.
崔彥鋒,許小榮.VB網(wǎng)絡(luò)與過程控制編程實例教程[M].希望電子出版社,2002.
胡星星,藤云田,王喜珍,等.地震波形數(shù)據(jù)實時監(jiān)控軟件的實現(xiàn)[J].地震地磁觀測與研究,2008,29(1):104-108.
林永.Visual Basic程序員Windows API編程手冊[M].北京:人民郵電出版社,2012:734-744.
馬寶君,趙誼,崔東源.CDSN臺站地震監(jiān)測系統(tǒng)實時監(jiān)視軟件[J].地震地磁觀測與研究,2006,27(2):89-92.
孫學(xué)軍,姚宏.“十五”測震臺網(wǎng)數(shù)據(jù)庫的應(yīng)用程序開發(fā)[J].地震地磁觀測與研究,2009,30(3):109-113.
王利兵,閆俊崗,于春頌,等.數(shù)字地震臺斷記報警軟件的設(shè)計與應(yīng)用[J].華北地震科學(xué),2008,26(1):56-58.
吳永權(quán),黃文輝.數(shù)據(jù)處理系統(tǒng)軟件JOPENS的架構(gòu)設(shè)計與實現(xiàn) [J].地震地磁觀測與研究,2010,31(6):59-63.
張念,印蘇文.數(shù)字地震儀斷記報警軟件[J].大地測量與地球動力學(xué),2007,27(Z1):142-143.
Steven J.Visual Basic 6.0編程寶典[M].北京:電子工業(yè)出版社,2005:2-13.
The design and application of the monitoring software for record breaking in seismic data of individual station
Zhao Tiesuo,Zhang Hui and Zhao Yanhong
(Hohhot Seismic Station,Inner Mongolia Autonomous 010010,China)
In order to ensure the continuity and integrity of the seismic data of Jopens system,and reduce the loss caused by the interruption of the data,I develop a software package to monitor the changes of Jopens database.It is able to monitor the changes of seismic waveform database information,set alarm with music in real time as the interruption of the network or the fails of record software,and produce a log of record breaking.
individual station,record breaking,monitoring software
10.3969/j.issn.1003-3246.2016.05.027
趙鐵鎖(1980—),男,工程師,主要從事地震監(jiān)測工作
中國地震局三結(jié)合項目(編號:150504)
本文收到日期:2015-08-18