樂建煒
(中國鐵路信息科技集團有限公司,北京 100844)
鐵路各級數(shù)據(jù)中心是推動我國鐵路信息化進程的重要技術(shù)支撐,是實現(xiàn)鐵路信息化總體規(guī)劃、推動鐵路智能化發(fā)展的關(guān)鍵抓手?;谌斯ぶ悄堋⑽锫?lián)網(wǎng)等技術(shù)的數(shù)據(jù)中心智能運營維護(簡稱:運維)體系,作為重要的技術(shù)安全防護手段,可為鐵路數(shù)據(jù)中心日常運營提供安全保障。
近年來,使用室內(nèi)定位技術(shù)來監(jiān)控數(shù)據(jù)中心機房內(nèi)人員和設(shè)備實時位置及狀態(tài)的需求俞發(fā)迫切,主要表現(xiàn)在兩個方面。(1)數(shù)據(jù)中心運維工作的需求:出于安全考慮,多數(shù)鐵路數(shù)據(jù)中心機房內(nèi)不允許架設(shè)無線網(wǎng)絡(luò),甚至須屏蔽移動網(wǎng)絡(luò)信號,造成運維人員進入機房后處于“失聯(lián)”狀態(tài),無法確定其在機房的位置,也無法進行無線通信,給運維工作造成不便,影響突發(fā)事件處置效率,增加了未來數(shù)據(jù)中心安裝巡檢機器人等自動化運維設(shè)備的實施難度;(2)數(shù)據(jù)中心外來人員管理與監(jiān)控的需求:鐵路數(shù)據(jù)中心對外來人員大多仍采用人工登記管理的方式,效率低,不便于統(tǒng)計分析,無法實時掌握外來人員的位置和狀態(tài),使數(shù)據(jù)中心的運營存在安全隱患。
我國關(guān)于室內(nèi)定位技術(shù)的研究已取得多項成果,蔣頌等人[1]設(shè)計了基于圖數(shù)據(jù)庫的室內(nèi)地圖系統(tǒng);孫瑜等人[2]提出了基于誤差多級處理的數(shù)據(jù)融合定位方法;趙銳等人[3]指出了室內(nèi)定位技術(shù)的發(fā)展方向;阮陵等人[4]將國內(nèi)外室內(nèi)定位技術(shù)研究現(xiàn)狀進行了分析總結(jié);李威等人[5]設(shè)計了超寬帶(UWB,Ultra Wideband)智能定位系統(tǒng)基站標(biāo)簽一體化嵌入式硬件平臺;杜超等人[6]分析了各類國際前沿的室內(nèi)定位技術(shù)所用的定位算法和數(shù)據(jù)樣本類型,總結(jié)出不同定位算法的優(yōu)勢與局限性;張媛等人[7]分析適合用于室內(nèi)定位的基于UWB 測距技術(shù)的算法;李明等人[8]提出利用UWB 技術(shù)和到達時間差(TDOA,Time Differences of Arrival)定位算法來實現(xiàn)人員和物體在室內(nèi)空間的高精度位置監(jiān)控。
基于上述研究,本文設(shè)計了基于Neo4j 圖數(shù)據(jù)庫和UWB 技術(shù)的智能定位系統(tǒng),對進入數(shù)據(jù)中心的人員和移動裝備實時定位,并在監(jiān)控平臺實時展示。通過對數(shù)據(jù)中心內(nèi)人員和設(shè)備實時位置的全面掌握,在應(yīng)對突發(fā)事件時,監(jiān)控中心可及時引領(lǐng)相關(guān)人員到達指定地點,提升數(shù)據(jù)中心運維作業(yè)安全水平和應(yīng)急響應(yīng)速度,保障數(shù)據(jù)中心運維工作安全、高效推進,確保鐵路關(guān)鍵信息系統(tǒng)的穩(wěn)定運行。
Neo4j 圖數(shù)據(jù)庫是基于圖論實現(xiàn)的新型NoSQL數(shù)據(jù)庫,其數(shù)據(jù)庫存儲結(jié)構(gòu)和數(shù)據(jù)的查詢方式都以圖論為基礎(chǔ),將結(jié)構(gòu)化數(shù)據(jù)存儲在網(wǎng)格結(jié)構(gòu)中。圖論中圖的基本元素為節(jié)點和邊,在圖數(shù)據(jù)庫中對應(yīng)的就是節(jié)點和關(guān)系。
數(shù)據(jù)中心中的每個實體與周圍的其他實體都相互關(guān)聯(lián),這些關(guān)系中包含大量的潛在信息。傳統(tǒng)的關(guān)系型數(shù)據(jù)庫更加注重實體內(nèi)部的屬性,實體間的關(guān)系主要通過外鍵來實現(xiàn),執(zhí)行大規(guī)模查詢操作時比較耗時。隨著數(shù)據(jù)中心設(shè)備的不斷擴充,關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)量急劇增加,大量表操作帶來的復(fù)雜運算,導(dǎo)致數(shù)據(jù)庫逐漸難以滿足查詢海量數(shù)據(jù)深層次關(guān)系的需求。
圖數(shù)據(jù)庫使用圖、點、邊來存儲數(shù)據(jù),圖是一組點和邊的集合,點表示實體,邊表示實體間的關(guān)系,這種特殊的結(jié)構(gòu),在處理網(wǎng)格狀信息方面有著優(yōu)秀的表現(xiàn),可為數(shù)據(jù)中心的建模工作提供充分的支持。與傳統(tǒng)關(guān)系型數(shù)據(jù)庫相比,圖數(shù)據(jù)庫更重視實體間關(guān)系的展現(xiàn),其數(shù)據(jù)結(jié)構(gòu)和基于圖的算法,在圖遍歷、復(fù)雜數(shù)據(jù)模型的關(guān)系查詢方面有著天然的優(yōu)勢。本文基于Neo4j 圖數(shù)據(jù)庫,對鐵路數(shù)據(jù)中心的樓層、機房、機柜、設(shè)備等進行了建模,將各類對象屬性存儲在節(jié)點里,對象間的關(guān)系存儲在邊里,基于Neo4j 圖數(shù)據(jù)庫的數(shù)據(jù)中心模型示例如圖1所示。圖中,不同顏色代表了不同類型的對象,黃色為樓層、綠色為機房、淺藍色為機柜、深藍色為設(shè)備。
圖1 基于Neo4j 圖數(shù)據(jù)庫的數(shù)據(jù)中心模型示例
場景對象是數(shù)據(jù)中心的各類場景(如園區(qū)、樓層、機房、機柜等),場景對象在Neo4j 圖數(shù)據(jù)庫節(jié)點中存儲的內(nèi)容包括:場景對象的基本屬性(如場景名、時間信息、空間范圍等),場景對象的基本描述和場景類型(如樓層、機房、靜態(tài)、動態(tài)等)。
實體對象是指數(shù)據(jù)中心中包含的各種實體元素(如服務(wù)器、交換機、路由器、防火墻等)。它們在Neo4j 圖數(shù)據(jù)庫中節(jié)點存儲的內(nèi)容包括實體對象的名稱、描述、類型和其他屬性。
事件對象包括數(shù)據(jù)中心的業(yè)務(wù)流程名稱(巡檢、預(yù)警、報警)和狀態(tài)(起火、透水、溫度超標(biāo)等)。事件對象還包含嵌套結(jié)構(gòu),一個父事件可能由若干個子事件組成,各個子事件對其父事件有一定的影響。事件也受其他事件的影響,事件對象的發(fā)生一般需要實體對象的參與。綜上,事件對象在Neo4j 圖數(shù)據(jù)庫節(jié)點中存儲的內(nèi)容包括事件屬性、描述、事件類型、參與實體集和參與事件集。
相比通過表結(jié)構(gòu)和外鍵來存儲關(guān)系的關(guān)系型數(shù)據(jù)庫,圖數(shù)據(jù)庫擁有獨立的關(guān)系的概念,可以由實體節(jié)點通過關(guān)系直接到達其他端點,在計算數(shù)據(jù)中心大門到某機房、某機柜、某臺設(shè)備的最優(yōu)路徑這類問題時,操作性能更高,建模的復(fù)雜度更低。本文基于Neo4j 圖數(shù)據(jù)庫和A*算法計算數(shù)據(jù)中心最優(yōu)路徑。
A*算法是一種在靜態(tài)路網(wǎng)中求解最優(yōu)路徑的直接搜索方法,使用函數(shù)f(n)=g(n)+h(n)來進行路徑選擇。其中,f(n)是節(jié)點n的估價函數(shù);g(n)是實際狀態(tài)空間中從初始節(jié)點到n節(jié)點的實際代價;h(n)是從n節(jié)點到目標(biāo)節(jié)點最佳路徑的估計代價。用A*算法計算數(shù)據(jù)中心大門到指定機柜的步驟如下。
(1)設(shè)定一個open list 和close list 用來存放節(jié)點。
(2)把起始節(jié)點加入open list,同時,將起始節(jié)點可達的節(jié)點也放入open list。
(3)遍歷open list ,查找f值最小的節(jié)點s,把它作為當(dāng)前要處理的節(jié)點,將其移至close list。
(4)對于s的相鄰節(jié)點,若不可通行或已經(jīng)在close list 中,則忽略;若可以通行,且不在open list中,則添加至open list 中,并把s作為當(dāng)前節(jié)點的父節(jié)點,重新計算它的g和f值;若s的相鄰節(jié)點已經(jīng)在open list 中,計算從當(dāng)前節(jié)點移動到該相鄰節(jié)點是否能使其得到更小的g值,如果能,則把該相鄰節(jié)點的父節(jié)點重設(shè)為當(dāng)前節(jié)點,并更新其g和f值。
(5)重復(fù)操作直至把終點加入open list,此時已找到最優(yōu)路徑;如果查找終點失敗,并且open list是空的,此時沒有路徑。
(6)保存路徑,從終點開始,每個節(jié)點沿著父節(jié)點移動直至起點,便是找到的路徑。
本文在中國鐵路主數(shù)據(jù)中心搭建了測試環(huán)境,使用A*算法計算從數(shù)據(jù)中心大門到某機房C01-02 機柜的最優(yōu)路徑,具體實現(xiàn)方法為
match p=shortestpath((m:Park{name:'數(shù)據(jù)中心'})-[*]->(n:Device{name:'C01-02'}))return p
該方法在進行海量節(jié)點的最優(yōu)路徑計算中有明顯的效率優(yōu)勢,計算出的最優(yōu)路徑如圖2紅色路徑所示。
圖2 基于Neo4j 圖數(shù)據(jù)庫的數(shù)據(jù)中心最優(yōu)路徑
基于到達時間(TOA ,Time of Arrival)的測距算法的原理是:測量信號在基站和定位標(biāo)簽間的TOA,并用測距方程將TOA 轉(zhuǎn)換為距離,從而得到定位標(biāo)簽與基站間的相對定位。
TOA 測距算法在二維坐標(biāo)上至少需要3 個基站才能計算出目標(biāo)點的位置,如圖3所示。假設(shè)3 個基站與目標(biāo)點的距離分別為r1、r2、r3,以各自基站為圓心、測量距離為半徑,繪制3 個圓,其交點即為目標(biāo)點的位置。
圖3 TOA 測距算法示意
當(dāng)圖3中的3 個基站都是視距(LOS,Line of Sight)基站時,根據(jù)最小二乘(LS,Least Squares)定位算法可進一步計算目標(biāo)點的精確位置。假設(shè)目標(biāo)點的位置坐標(biāo)為 (x,y) ,第i個基站的位置坐標(biāo)為(xi,yi) ,則它們之間滿足的關(guān)系為
(xi-x)2+(y-yi)2=r2i(i=1,2,···,N)
其中,N代表基站數(shù)量。將公式展開,化簡得到
x2i+y2i+x2+y2-2xix-2yiy=r2i
令Ki=x2i+y2i,R=x2+y2,則有
r2i-Ki=-2xix-2yiy+R
按照矢量表示形式的方程組為
這個方程組的矩陣表示形式是:Y = AX
利用LS 法,可得目標(biāo)點的位置坐標(biāo)矩陣X,即X=(ATA)-1ATY。
目前,常見的室內(nèi)無線定位技術(shù)包括Wi-Fi、藍牙、紅外線、UWB、射頻識別(RFID,Radio Frequency Identification)、ZigBee、超聲波等。在眾多定位技術(shù)中,UWB 定位技術(shù)具有明顯的優(yōu)勢,它采用納秒級的窄脈沖進行通信,不需要載波信號進行調(diào)制,這種獨特的通信機制,使得其定位精度可達到厘米級,該技術(shù)的優(yōu)點包括:(1)傳輸速率高、信道容量大;(2)多徑分辨力強,定位精度高;(3)系統(tǒng)結(jié)構(gòu)簡單、功耗低、成本低;(4)抗干擾能力強、傳輸速率高;(5)安全性高、穿透能力和抗干擾能力強。
本系統(tǒng)采用UWB 技術(shù),使用TOA 測距算法和LS 算法,實現(xiàn)了數(shù)據(jù)中心的室內(nèi)高精度定位。
智能定位系統(tǒng)架構(gòu)如圖4所示,由硬件層、傳輸層、應(yīng)用層3 部分組成。
圖4 智能定位系統(tǒng)架構(gòu)
(1)硬件層:由定位基站、定位標(biāo)簽組成,定位標(biāo)簽包括資產(chǎn)標(biāo)簽、人員標(biāo)簽和設(shè)備標(biāo)簽。系統(tǒng)運行時,定位標(biāo)簽與定位基站間采用非對稱雙邊雙向測距。主基站收集各從基站的測距信息,完成位置解算,計算出定位標(biāo)簽的位置。
(2)傳輸層:由POE (Power Over Ethernet)交換機和匯聚交換機組成。定位基站將定位信息通過有線網(wǎng)上傳至每個機房內(nèi)的POE 交換機,進而匯聚到每層機房的匯聚交換機。
(3)應(yīng)用層:由服務(wù)器、終端機和顯示設(shè)備(大屏幕)組成。定位標(biāo)簽的定位信息經(jīng)匯聚交換機傳輸?shù)讲渴鹪诒O(jiān)控中心的服務(wù)器。智能定位系統(tǒng)軟件部署在服務(wù)器上,通過終端機和大屏幕向用戶提供智能定位服務(wù)。
智能定位系統(tǒng)功能架構(gòu)如圖5所示。
圖5 智能定位系統(tǒng)功能架構(gòu)
4.2.1 實時定位
該功能將人員位置實時顯示在地圖上,掌握人員實時動態(tài)分布情況。通過可調(diào)的刷新速率,確保位置實時更新,并可在后臺電子地圖中全局化顯示和查詢區(qū)域內(nèi)所有目標(biāo)位置;接收定位標(biāo)簽發(fā)送的實時定位數(shù)據(jù),并將其分別顯示在二維地圖和三維模型上。二維展示和三維展示的功能界面如圖6所示。
圖6 實時定位功能展示
4.2.2 軌跡回放
該功能可記錄定位人員的運動軌跡。用戶可根據(jù)標(biāo)簽編號和時間查詢定位標(biāo)簽在歷史時刻或某時間段內(nèi)的位置、軌跡、停留時間等信息。二維展示和三維展示的功能界面如圖7所示。
圖7 軌跡回放功能展示
4.2.3 分類追蹤
該功能可對不同類型、職務(wù)或工種的人員使用不同的圖標(biāo)在地圖上顯示,并實現(xiàn)對地圖內(nèi)容和圖標(biāo)屬性的編輯。
4.2.4 電子圍欄
用戶可在二維或三維的地圖上選擇某個區(qū)域,將其指定為電子圍欄,以此來劃分人員可活動的范圍,當(dāng)人員的定位標(biāo)簽進入電子圍欄內(nèi)時,系統(tǒng)立即發(fā)出報警提示。該系統(tǒng)支持繪制圓形和矩形的電子圍欄,同時,支持對圍欄的參數(shù)進行修改,如圖8所示。
圖8 電子圍欄功能示意
4.2.5 一鍵求救
人員佩戴的定位標(biāo)簽具有SOS 報警功能,通過一鍵報警,可將求救人員位置信息呈現(xiàn)在地圖上。
4.2.6 靜止報警
如果人員進入機房后靜止達一定時長(默認(rèn)設(shè)置為持續(xù)1 h),將會觸發(fā)長時間靜止報警,人員可能暈倒或者發(fā)生事故,須及時查明。
4.2.7 自動考勤
自動考勤功能可自動記錄人員進出機房或樓層的時間,統(tǒng)計人員在工作中停留的時長并產(chǎn)生統(tǒng)計報表。
4.2.8 智能分析
系統(tǒng)將通過智能算法計算的最優(yōu)路徑與人員(或機器人)行走的實際路徑進行比對,對人工巡檢路線提出建議,對機器人自動巡檢路線進行優(yōu)化。
本文分析了鐵路數(shù)據(jù)中心運維工作對室內(nèi)定位功能的需求,研究基于Neo4j 圖數(shù)據(jù)庫和UWB 技術(shù)的智能定位系統(tǒng)。使用Neo4j 圖數(shù)據(jù)庫對數(shù)據(jù)中心進行建模,通過UWB 技術(shù)實現(xiàn)了數(shù)據(jù)中心室內(nèi)高精度定位,以及最優(yōu)路徑與實際路徑的智能對比。系統(tǒng)具有智能化路徑分析、定位精度高、抗干擾能力強等特點,能夠全面掌握和跟蹤各類人員的實時位置和狀態(tài),實現(xiàn)了對數(shù)據(jù)中心安全區(qū)域和人員的監(jiān)控,在應(yīng)對突發(fā)事件時,可及時引領(lǐng)有關(guān)人員到達作業(yè)地點協(xié)同作業(yè),提升機房作業(yè)效率和應(yīng)急響應(yīng)速度。