雷 鳴 魏峻巖
(武漢數(shù)字工程研究所 武漢 430205)
面向三峽升船機監(jiān)控傳感網(wǎng)絡(luò)的復(fù)合事件檢測研究*
雷鳴魏峻巖
(武漢數(shù)字工程研究所武漢430205)
摘要在三峽升船機監(jiān)控傳感網(wǎng)絡(luò)中,數(shù)據(jù)的高速傳輸和有效解析對運行監(jiān)控是非常重要的。然而,傳統(tǒng)數(shù)據(jù)庫在數(shù)據(jù)處理方面存在許多不足。論文針對這些不足,在充分考慮傳感器數(shù)據(jù)的基礎(chǔ)上探討了一種科學有效的升船機傳感監(jiān)控網(wǎng)絡(luò)模型,并提出了升船機監(jiān)控的復(fù)合事件檢測方法,旨在初步探討傳感器網(wǎng)絡(luò)和復(fù)合事件檢測方法在升船機監(jiān)控系統(tǒng)的實用性,最后以船舶上行過程檢測和監(jiān)控性能實驗證明了其數(shù)據(jù)處理的優(yōu)越性。
關(guān)鍵詞三峽; 升船機; 監(jiān)控傳感網(wǎng)絡(luò); 復(fù)合事件檢測; 數(shù)據(jù)處理
Class NumberU642
1引言
三峽升船機是客貨輪和特種船舶快速過壩的通道,與雙線五級船閘聯(lián)合運行,加大樞紐的航運通過能力和保障樞紐通航質(zhì)量,是打造長江“黃金水道”的標志性工程。
但是,在升船機的安裝和維護過程中,隨時都可能遭遇各種危險情況。比如鋼絲繩拉力過大,水位偏差過大,油泵溫度過高等故障都有可能引發(fā)災(zāi)難性的后果。升船機是大壩通航主體設(shè)備,安全運行成為了其首要目標,尋找一種科學、精準的監(jiān)控手段顯得尤為重要。
傳統(tǒng)的升船機監(jiān)控系統(tǒng)通常需要鋪設(shè)大量的傳輸介質(zhì),耗時長,人工成本高。并且硬件線路易于老化,容易導(dǎo)致通信異常,后期更換和維護成本更高。特別是升船機各設(shè)備緊密相聯(lián),牽一發(fā)而動全身,運行過程出不得半點差錯。因此,對危險事故的預(yù)測以及監(jiān)控顯得尤為重要。
無線傳感器網(wǎng)絡(luò)是由大量隨機布設(shè)的,無數(shù)有無線通信和計算能力的微型傳感器以多跳通信的方式構(gòu)成的自組織網(wǎng)絡(luò)系統(tǒng),并可以實施全天候?qū)嵤┚珳实谋O(jiān)控。它的如下特點可以很好解決上述問題:1)靈活性強。非常適合一些急、險、偏的應(yīng)用場合。2)經(jīng)濟性好。無線傳感器網(wǎng)絡(luò)利用無線通信技術(shù)降低了系統(tǒng)成本。3)精細度高。可以獲取非常高的信息告知精度,從而發(fā)現(xiàn)危險發(fā)生的潛在因素。
但是大量的傳感器會產(chǎn)生大量的數(shù)據(jù),并且會對上層的監(jiān)控網(wǎng)絡(luò)造成負荷,這些數(shù)據(jù)并不能有效預(yù)測危險事故。因此需要一種機制實時處理大量數(shù)據(jù),并挖掘數(shù)據(jù)之間的潛在關(guān)系,提高系統(tǒng)對危險事故的相應(yīng)處理能力。那么,如何挖掘傳感器數(shù)據(jù)之間的潛在關(guān)系和有用信息成為傳感器數(shù)據(jù)處理研究的焦點。復(fù)合事件檢測方法是一種有效的數(shù)據(jù)處理方法,其基本思想是從大量紛繁復(fù)雜的數(shù)據(jù)中挖掘數(shù)據(jù)之間的時間、空間等關(guān)系,并提取出有用的信息。
升船機監(jiān)控傳感網(wǎng)絡(luò)的研究在國內(nèi)外尚屬空白,但是在工業(yè)控制系統(tǒng)已經(jīng)開展了廣泛的研究。H. Guo[2]等利用無線傳感網(wǎng)絡(luò)實現(xiàn)對油氣設(shè)備的安全監(jiān)控。Kunicina[3]等為電力系統(tǒng)的遠程監(jiān)控設(shè)計了無線傳感器網(wǎng)絡(luò)的解決方案。Eagle[4]等則探討了工業(yè)無線傳感器網(wǎng)絡(luò)的安全協(xié)議。Nagarajan[5]等為自動化系統(tǒng)的無線傳感器網(wǎng)絡(luò)的電力供應(yīng)作了優(yōu)化。A. El Kouche[7]等探討了無線傳感器網(wǎng)絡(luò)在油氣開采的嚴酷環(huán)境的應(yīng)用。C. Salvatore[8]等研究了工業(yè)監(jiān)控系統(tǒng)中的無線傳感器和RFID的聯(lián)合應(yīng)用。K. Mikhaylov[9]等在真實的工業(yè)環(huán)境中研究了無線傳感器網(wǎng)絡(luò)在各頻段的通信狀況。M. Bertocco[10]等人提出工業(yè)傳感器網(wǎng)絡(luò)的的實驗參數(shù),以提高傳感器網(wǎng)絡(luò)在工業(yè)中的實用性。
本文提出了基于無線傳感器網(wǎng)絡(luò)的三峽升船機監(jiān)控系統(tǒng)架構(gòu),結(jié)合復(fù)合事件檢測技術(shù)實現(xiàn)對升船機監(jiān)控數(shù)據(jù)的有效抽取,并通過實驗驗證了復(fù)合事件檢測方法在傳感監(jiān)控網(wǎng)絡(luò)中的適用性。
2三峽升船機監(jiān)控傳感網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)
傳統(tǒng)的三峽升船機計算機監(jiān)控系統(tǒng)分為下層網(wǎng)和上層網(wǎng)。下層網(wǎng)采用光纖雙環(huán)網(wǎng)連接各種機構(gòu)設(shè)備和傳感器,采集數(shù)據(jù)和控制設(shè)備動作。上層網(wǎng)絡(luò)的兩臺IO服務(wù)器位于下層環(huán)網(wǎng)中,集中控制設(shè)備,并收集各種設(shè)備的數(shù)據(jù)。上層網(wǎng)除了兩臺IO服務(wù)器,還有各種工作站,為用戶提供終端服務(wù)。構(gòu)建這樣一個網(wǎng)絡(luò),耗時長,工作量巨大。并且為了保障控制的高效性,網(wǎng)絡(luò)中不允許有大量的數(shù)據(jù)流量,以防止網(wǎng)絡(luò)擁塞。
本文在無線傳感器網(wǎng)絡(luò)的基礎(chǔ)上提出了三峽升船機傳感監(jiān)控網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)。該網(wǎng)絡(luò)主要用于采集底層設(shè)備的數(shù)據(jù),并不發(fā)布控制命令,以彌補現(xiàn)有系統(tǒng)的不足。監(jiān)控傳感網(wǎng)絡(luò)系統(tǒng)與原有的傳統(tǒng)系統(tǒng)互為獨立系統(tǒng)。傳統(tǒng)的系統(tǒng)只發(fā)布控制命令,而無線傳感器網(wǎng)絡(luò)則主要分布式采集數(shù)據(jù),互不干擾。該系統(tǒng)可作為無線傳感器網(wǎng)絡(luò)在升船機自動化控制系統(tǒng)的一種嘗試。如下圖1所示。
圖1 升船機無線傳感器網(wǎng)絡(luò)監(jiān)控系統(tǒng)結(jié)構(gòu)
升船機無線傳感器網(wǎng)絡(luò)監(jiān)控系統(tǒng)三層體系結(jié)構(gòu),詳細描述如下:
?物理層:由隨機布設(shè)的傳感器構(gòu)成。傳感器隨機布設(shè)在升船機各個區(qū)域,收集水位、溫度、壓力等各種監(jiān)控數(shù)據(jù)。一定范圍的傳感器構(gòu)成傳感器簇,范圍內(nèi)的核心傳感器作為簇頭,接收該范圍的各種傳感器的采集數(shù)據(jù)。
?網(wǎng)絡(luò)層:由各個傳感器簇的簇頭構(gòu)成。簇頭之間采用多跳的路由協(xié)議傳輸數(shù)據(jù),距離基站較遠的簇頭會經(jīng)由其他簇頭的傳輸數(shù)據(jù)至基站。
?應(yīng)用層:由客戶端與數(shù)據(jù)服務(wù)器構(gòu)成的局域網(wǎng)。數(shù)據(jù)服務(wù)器接受來自通信基站的數(shù)據(jù),然后再將數(shù)據(jù)分發(fā)給各個終端,或者由終端訂閱查詢。
3升船機傳感監(jiān)控網(wǎng)絡(luò)復(fù)合事件檢測方法
3.1原子事件和復(fù)合事件的表示方式
傳感器底層的傳感器數(shù)量眾多,由于其多變、靈活的網(wǎng)絡(luò)體系結(jié)構(gòu),往往會造成數(shù)據(jù)冗余,部分數(shù)據(jù)丟失,所以為了保證傳感數(shù)據(jù)精準和高效性,本文結(jié)合RCEDA[1]算法提出了適用于升船機一種復(fù)合事件檢測方法,用于過濾、聚合底層的傳感器網(wǎng)絡(luò)數(shù)據(jù)。
升船機傳感監(jiān)控網(wǎng)絡(luò)復(fù)合事件由原則事件按照一定的規(guī)則組成。而規(guī)則是由構(gòu)建事件組成的。事件構(gòu)建器主要分為時間和非時間的。非時間構(gòu)造符主要是構(gòu)建因果、空間等關(guān)系,時間構(gòu)造符主要是構(gòu)造時間先后順序發(fā)生的事件。
原子事件通常來源于傳感器的原始數(shù)據(jù)值。原子事件根據(jù)數(shù)據(jù)類型和來源不同可以分成許多類型。原子事件有如下屬性:
group(sensorid):采集相同目標數(shù)據(jù)的一組傳感器。
type(state):根據(jù)傳感器類型的不同,可以定義不同的原子事件類型。比如type(‘50m’)=’waterlevel’,type(‘9F65FG23’)=’laptop’。
那么,原子事件的表示方法:
E=Observation(id,s,t),group(id)=‘g1‘ ,type(s)=’temperature’。
上面的含義表示傳感器組g1在時間t采集某一范圍內(nèi)的溫度數(shù)據(jù)。
除了原子事件以外,構(gòu)成復(fù)合事件還需要事件構(gòu)建器有機聯(lián)結(jié)各個原子事件。時間構(gòu)建器用符號表示主要有以下幾種。
?OR(∨):事件E1和E2的或運算,當E1和E2兩者至少有一個發(fā)生時,(E1∨E2)發(fā)生。
?AND(∧):事件E1和E2的且運算,當E1和E2兩者都發(fā)生時,(E1∧E2)發(fā)生。
?NOT(¬):事件E的否運算,如果事件E的實例在一定時間范圍內(nèi)發(fā)生,(¬E)發(fā)生。主要用于偽事件的檢測。
?SEQ(;):事件E1和E2的序列。當E1先發(fā)生,E2后發(fā)生時,(E1;E2)發(fā)生。
?TSEQ(:):兩個事件E1和E2的間隔約束序列。當E1已經(jīng)發(fā)生,并且E1和E2發(fā)生的時間間隔為[Tl,Tu]。
?SEQ+(;+):SEQ(;)的周期性運算,表示一個事件類型E的多次發(fā)生。
?TSEQ+(;+):TSEQ+(E,Tl,Tu)的周期性元素。表示在時間間隔在[Tl,Tu]內(nèi),檢測到事件E多次發(fā)生。
復(fù)合事件由原子事件和構(gòu)建器組成。原子事件存在著空間、時間等聯(lián)系,那么復(fù)合事件表示方法為事件和事件關(guān)系的集合,描述如下:
E=(E1,E2,E3,E4,…,En,M)
M為構(gòu)建器。
3.2復(fù)合事件的檢測方法
在復(fù)合事件的檢測方法研究中,ECA規(guī)則和Snoop系統(tǒng)[6]最為常見。Fusheng[1]等在此基礎(chǔ)上研究的RCEDA檢測方法及算法只適用于RFID應(yīng)用,具有一定的局限性。本文根據(jù)升船機監(jiān)控傳感網(wǎng)絡(luò)的特點,改進了RCEDA檢測算法,使之適合升船機復(fù)合事件的檢測。
原子事件和事件構(gòu)建器,以及復(fù)合事件可以很方便用二叉樹描述。原子事件和構(gòu)建器表示葉子節(jié)點,時間約束表示父節(jié)點。從二叉樹至底向上遍歷,即可完成對復(fù)合事件的檢測。圖2是事件的二叉樹表示。
圖2 事件的圖形描述
在大量的原子事件中,主要是通過事件約束和特定規(guī)則解析出更高語義的數(shù)據(jù),復(fù)合事件檢測方法詳細描述如下:
第一步:構(gòu)建每個復(fù)合事件的事件圖形。事件的圖形表示為Ti,葉子節(jié)點代表原子事件,內(nèi)部節(jié)點代表規(guī)則或者時間約束。
第二步:傳遞時間約束。對于每個事件圖形,因為父節(jié)點的時間約束總比子節(jié)點的時間約束復(fù)雜的多,所以時間約束從子節(jié)點往父節(jié)點傳遞。
最后,合并子二叉樹,形成集合以構(gòu)成森林G,可以有效避免重復(fù)多次檢測事件。
3.3升船機復(fù)合事件檢測算法
在應(yīng)用層,用戶的需求是多種多樣的,普通的復(fù)合事件算法是很難適于用升船機復(fù)合事件的檢測。本文針對船舶上行流程設(shè)計了特定的復(fù)合事件的檢測算法,以此證明復(fù)合事件檢測方法在升船機的可用性。
目前的船舶進入船廂事件是使用傳感器檢測遮擋物來探測的,探測結(jié)果是很不準確,并且只能檢測到船舶進入到船廂。同時不準確的結(jié)果導(dǎo)致了整個上行流程的中斷,甚至常常需要人工肉眼去判斷,耗時耗力。
如圖3所示,在船廂與上游的銜接閘室,簡稱為上閘室,也可稱為上游航道。船舶正在開往船廂,傳感器A會檢測到船舶,并記錄下時間和船舶信息。隨后,當船舶完全進入船廂后,會被傳感器B讀檢測到。那么,船舶進廂事件可用到上文描述的方法作如下表示:
TSEQ(TSEQ+(E1,tl1,tl2);E2,tl2,tu2)
E1=observation(rA,O1,t1),group(rA)=’rA’E2=observation(rB,o2,t2),group(rB)=’rB’
圖3中上游航道有兩艘船舶正在駛向船廂,接著船舶就會進入船廂。很顯然,前面一艘船舶會先進入船廂,提升至高程水位。剩下的船舶將等待下次進船廂。在傳統(tǒng)的數(shù)據(jù)庫中,只能記錄多個探頭探測到船舶的時間,而無法解析出船舶通過升船機的整個流程以及更加有意義的數(shù)據(jù)。
在傳統(tǒng)的事件檢測中是采用自底向上的檢測方式,但是在傳感器應(yīng)用中,這種方式是不合適的。因為在實際的升船機應(yīng)用中,很多事件并不是自發(fā)能檢測到的,需要通過精確的查詢才能完成。對于自發(fā)事件,一旦有了啟動因子,則可以直接檢測到。那么對于非自發(fā)事件,除非精確查詢,是很難發(fā)現(xiàn)的。所以本文沿用了Fusheng[1]提出的偽事件查詢。
在偽事件的基礎(chǔ)上,根據(jù)升船機的實際情況,設(shè)計了升船機船舶上行事件的算法,以下簡稱為SCEDA(Ship-lifting complex event detection algorithm)。如下所示:
1DeclareE=E1^E2
2DeclareE3=¬E2
3Foreachincominge1
4If(type(e1) =’ship’)
5SendOrder(’open’)
6Thenif(E3)
7THEN
8GENERATE_PSEUDO_NODE(E2)
9SendOrder(’close’)
10LetE2bethetargeteventofe3
11Lettime_startbethecreationtimeofe3
12Lettime_endbethecreationtimeofe3
13EList←QUERY_INTERVAL_NODE(e2,Lettime_start,Lettime_start)
14ThenInsertintoship_table(time,ship_id,ship)- - -(3)
15If(type(e2)=’ship’)
16SendOrder(’open’)
17ThenSendOrder(’open’)
18While(E)detectionisover
4實驗分析
實驗從SCEDA算法的處理性能和語義解析能力兩方面分析,分別說明復(fù)合事件檢測技術(shù)在處理升船機海量數(shù)據(jù)的高效性能和適用性
4.1性能實驗
在實際升船機應(yīng)用中監(jiān)控點數(shù)多達上萬個,傳統(tǒng)的數(shù)據(jù)采集服務(wù)器和存儲服務(wù)器往往不堪重負。并且,監(jiān)控范圍之廣,監(jiān)控精度之高非當前服務(wù)器可以承受。該實驗?zāi)M了升船機監(jiān)控的巨大數(shù)據(jù)流,對比評估SCEDA算法和傳統(tǒng)的SQL查詢效率。
實驗在HP ProLiant DL388p Gen8服務(wù)器上運行,服務(wù)器cpu型號為 Xeon E5-2603,共兩顆,內(nèi)存為16G。
圖4 實驗結(jié)果
圖4表明SCEDA算法具有良好的處理性能。當事件數(shù)量較少時,SQL和SCEDA時,復(fù)合事件檢測方法并沒有明顯優(yōu)勢。事件數(shù)量達到10000條后,SCEDA的高效處理性能開始凸顯,SQL的處理性能開始明顯下降。很明顯,SCEDA算法在大量數(shù)據(jù)的高效處理上有著明顯優(yōu)勢。
4.2語義解析實驗
該實驗將船舶過升船機模擬為以下幾個過程。水位最低出的航道為下游部位。船舶先進入下游航道,隨后即將進入船廂。船廂分為船廂底部、船廂中部、船廂頂部。船舶在船廂上行過程中先后經(jīng)過船廂底部、船廂中部、船廂頂部。最后,船舶進入上游航道,完成整個上行過程。
圖5 上行過程示意圖
實驗在Java環(huán)境中運行,我們利用Java Swing的對象來表示如圖5所示的位置布局和物體。當船舶移動到不同位置,運行在后臺的事件檢測算法即可檢測到不同的事件發(fā)生。
經(jīng)過事件檢測算法處理后,實驗得到如圖6的事件信息。
圖6 語義解析結(jié)果
實驗的結(jié)果充分體現(xiàn)了事件檢測的語義解析功能。通過使船在不同的部位之間移動,記錄船舶在每個位置的時間,最后通過復(fù)合事件算法檢測出更復(fù)雜的語義事件存入數(shù)據(jù)庫,得到的結(jié)果更加直觀明了,而且大大節(jié)約了存儲空間。
5結(jié)論
本文充分結(jié)合了傳感器網(wǎng)絡(luò)提出了三峽升船機的傳感監(jiān)控網(wǎng)絡(luò)結(jié)構(gòu),以及復(fù)合事件檢測方法,并設(shè)計了SCEDA算法。實驗證明了復(fù)合事件檢測技術(shù)的大數(shù)據(jù)高效處理能力和良好的語義解析功能,并驗證了復(fù)合事件檢測方法在升船機監(jiān)控傳感網(wǎng)絡(luò)的應(yīng)用優(yōu)勢。然而,目前的實驗原型系統(tǒng)處理數(shù)據(jù)較少,信息量不大,信息融合度不夠高,在實際的生產(chǎn)環(huán)境中還無法應(yīng)用。以后的研究將會致力于傳感器監(jiān)控系統(tǒng)的設(shè)計,以及多源傳感器的數(shù)據(jù)融合,提高當前系統(tǒng)的實用性。
參 考 文 獻
[1] Fusheng W, Shaorong L,Peiya L. Complex RFID event processing[J]. The VLDB Journal,2009(18):913-931.
[2] H. Guo , Z. Sun. Channel and Energy Modeling for Self-Contained Wireless Sensor Networks in Oil Reservoirs [J]. IEEE Transactions on Wireless Communications,2014,13(4):2258-2269.
[3] Kunicina N, Zabasta A, Kondratjevs K. Sensor networking for improving of reliability indicator by electric Power Utilities[C]//56th International Scientific Conference on. Riga: IEEE,2015:1-4.
[4] Eagle S.J, Hancke G.P, Silva B.J. Wireless sensor networks for safety protocols in the industry [C]// IEEE AFRICON 2015. Addis Ababa: IEEE,2015:1-9.
[5] Nagarajan R, Dhanasekaran R. Optimization of power in Wireless Industrial Automation Networks [C]//Communications and Signal Processing (ICCSP),Melmaruvathur:IEEE,2015:680-684.
[6] Chakravarthy S, Mishra D. Snoop: an expressive event specification language for active databases[J]. Data & Knowledge Engineering,1993,(14):1-36.
[7] A. El Kouche, L. Al-Awami. WSN application in the harsh industrial environment of the oil sands[C]//Wireless Communications and Mobile Computing Conference (IWCMC),Istanbul:IEEE,2011:613-618.
[8] C. Salvatore, S. Bocchino. WSN and RFID integrated solution for advanced safety systems in industrial plants[C]//Software, Telecommunications and Computer Networks,Split:IEEE,2012:1-5.
[9] K. Mikhaylov ,J. Tervonen. Wireless Sensor Networks in industrial environment: Real-life evaluation results [C]//Future Internet Communications,Vilnius:IEEE,2012:1-7.
[10] M. Bertocco, G. Gamba. Experimental Characterization of Wireless Sensor Networks for Industrial Applications[J].IEEE Transactions on Instrumentation and Measurement,2008,57(8):1537-1546.
Complex Event Detection Scheme for Ship-lifting Surveillance Sensor Networks of the Three Gorges Project
LEI MingWEI Junyan
(Wuhan Digital Engineering Institute, Wuhan430205)
AbstractThe efficiency of data-processing play a very important role in ship-lifting surveillance sensor networks of the Three Gorges Project. However, there are many problems in database. On the characteristic of sensor data and these problems, a model of complex event detection for ship-board surveillance sensor networks is presented in this paper .A complex event detection scheme is discussed, whose applicability for ship-lifting surveillance sensor networks is discussed. In the end, a case study for the proposed model and algorithm is discussed in detail, which proves the superiority of data processing.
Key Wordsthe three gorges project, ship-lifting, surveillance sensor networks, complex event detection, data processing
*收稿日期:2015年12月17日,修回日期:2016年1月27日
作者簡介:雷鳴,男,碩士,研究方向:通航設(shè)備控制系統(tǒng)數(shù)據(jù)處理研究。魏峻巖,男,高級工程師,研究方向:通航設(shè)備計算機監(jiān)控系統(tǒng)。
中圖分類號U642
DOI:10.3969/j.issn.1672-9730.2016.06.030