賀方圓,宮曉瑋,祝玉超,靳昊玥,王文清
1. 中國礦業(yè)大學(北京) 機電與信息工程學院,北京 100083;2. 北京工業(yè)職業(yè)技術(shù)學院,北京 100042
無線傳感器網(wǎng)絡(Wireless Sensor Networks,WSN)定位技術(shù)[1]是由布置在定位區(qū)域內(nèi)的大量參考節(jié)點通過無線通信方式自然組成的一個多跳自組織網(wǎng)絡技術(shù),用于感知、采集和處理覆蓋區(qū)域內(nèi)被感知對象的信息。WSN節(jié)點具有體積小、成本低、電池供電低功耗、可隨意布置的優(yōu)點,且每個節(jié)點都具有感知和通信功能。因此,WSN技術(shù)常用于公共網(wǎng)絡信號無法覆蓋或不使用公共網(wǎng)絡而需建立獨立定位通信網(wǎng)絡的場合。煤礦井下沒有GPS等公網(wǎng)信號,生產(chǎn)作業(yè)環(huán)境相對狹小復雜,人員活動區(qū)域受到限制,WSN更適用于煤礦井下目標定位。
在WSN礦井目標定位系統(tǒng)中,基于節(jié)點布置的定位方法是WSN定位的技術(shù)支撐,此類方法大多通過改進定位算法提高定位精度。如文獻[2]提出了一種基于卡爾曼濾波的礦井移動節(jié)點定位算法,該方法利用卡爾曼濾波器對RSSI信號強度進行濾波和測距預估,并對移動節(jié)點進行校正,提高定位精度;文獻[3]基于已布置的節(jié)點,提出無線傳感器網(wǎng)絡三階段定位方法,該方法通過融合三個階段的定位信息,實現(xiàn)礦井目標的精確定位。上述方法沒有考慮節(jié)點數(shù)量和功耗,無法從根源上解決節(jié)點功耗大、目標定位精度低的問題。
在WSN非礦井目標定位方法中,一種基于壓縮感知(Compressed Sensing,CS)算法[4-6]的WSN定位方法得到了廣泛關(guān)注,此類方法利用CS算法通過信號少量稀疏采樣可高概率重構(gòu)這一特性,降低目標定位的工作量,提高定位精度。如文獻[7]基于CS算法及目標的稀疏性和能量衰減特性,將目標定位問題建模為基于CS的稀疏信號恢復問題,設計了一種滿足RIP性質(zhì)的觀測矩陣實現(xiàn)單目標和多類別目標的精確定位;文獻[8]基于CS的傳感器目標定位方法將目標所在區(qū)域劃分為多個網(wǎng)格,根據(jù)錨節(jié)點以及通信半徑建立觀測矩陣,采用CS算法得到目標的粗略定位,再根據(jù)信號指標強度實現(xiàn)目標的精確定位。上述方法沒有考慮WSN中數(shù)據(jù)收集的可靠性、通信半徑的測量誤差以及網(wǎng)格的劃分密度,定位精度受到影響。
筆者基于CS算法提出一種新的礦井WSN目標定位方法。該方法提出兩階段定位方案:離線階段和在線監(jiān)測階段。離線階段通過建立信號強度稀疏矩陣構(gòu)建離線指紋庫;在線監(jiān)測階段通過測量少量參考節(jié)點的位置信息和實時監(jiān)測目標節(jié)點信號強度值構(gòu)建觀測矩陣和測量值向量,并結(jié)合離線階段建立的稀疏矩陣重構(gòu)目標節(jié)點位置信號。該方法在目標定位時,僅需布置少量參考節(jié)點,并采集節(jié)點小部分信息進行數(shù)據(jù)處理,通過重構(gòu)方法精確恢復目標位置信號,降低大規(guī)模布置參考節(jié)點和采集多余信息的工作量,降低節(jié)點功耗,同時防止過多參考節(jié)點間通信交叉干擾,減少信息采集誤差,提高定位精度和定位效率。
基于WSN的礦井目標定位系統(tǒng)將參考節(jié)點獲得的信號信息轉(zhuǎn)化為節(jié)點與目標間的距離信息,根據(jù)相應定位算法確定目標位置。傳統(tǒng)的定位算法常采用測距的三邊測量解算定位算法(簡稱三邊法)[9]和指紋定位算法(簡稱指紋法)[10-11]。
三邊法是已知3個參考節(jié)點坐標,利用電磁波傳輸獲得各參考節(jié)點與目標節(jié)點間的測量距離,并通過解算測量距離聯(lián)立的方程組求得目標節(jié)點的位置。該方法對信號時鐘同步、信號衰減模型、信號傳播環(huán)境等要求較高,目標定位誤差較大,因此近年來指紋法成為礦井目標定位的研究熱點。
指紋法包括離線測量階段和在線定位階段。離線測量階段對信號的傳輸距離與接收強度特征值進行測量,將信號強度測量值和對應測量點的位置標識信息作為指紋信息存儲形成離線指紋庫,指紋庫中信號強度與位置信息一一對應。指紋庫建立時,理論上礦井目標的位置坐標是連續(xù)的,但從工程上,任意坐標點的信號強度是不能連續(xù)測量和存儲的。因此,提出將定位區(qū)域網(wǎng)格化并進行排序標號,再將目標節(jié)點分別布置在每個網(wǎng)格并發(fā)射信號,測量并記錄布置在其他各個網(wǎng)格的參考節(jié)點接收到的信號強度值存儲在矩陣中,即指紋庫中存儲的是所有網(wǎng)格位置和網(wǎng)格信號強度值的矩陣。在線定位階段,通過實時測量信號強度值比對指紋庫指紋信息,確定目標位置。但在線定位階段不可能在每個網(wǎng)格處都放置參考節(jié)點,只能布設少量參考節(jié)點,而參考節(jié)點接收的目標信號強度值通過比對指紋信息可能會確定多個位置坐標。因此,指紋法定位會導致較大的定位誤差。
CS原理[12]是選擇少量包含足夠大信息量的采樣值,通過求解一個最優(yōu)化問題大概率地重構(gòu)原始信號,將少量參考節(jié)點得到的信號強度值看作CS算法的信號稀疏采樣,在離線指紋庫的基礎(chǔ)上,通過CS重構(gòu)算法得到目標節(jié)點的位置,即將目標定位問題轉(zhuǎn)化為信號的恢復問題。由此本文提出基于CS算法的WSN礦井目標定位方法,即通過兩階段定位重構(gòu)目標信號位置。第一階段是離線指紋庫建立階段,對煤礦井下定位區(qū)域進行N個網(wǎng)格劃分,N個參考節(jié)點和待定位目標按序分配在定位區(qū)域內(nèi),測量每個網(wǎng)格參考節(jié)點接收的N個目標信號強度值,得到信號強度值矩陣,連同各個網(wǎng)格的位置坐標一起存入指紋庫,構(gòu)建完備的離線指紋庫;第二階段是在線監(jiān)測定位階段,根據(jù)礦井巷道結(jié)構(gòu)和無線傳感器網(wǎng)絡節(jié)點的通信距離等情況,構(gòu)建少量參考節(jié)點的無線傳感器網(wǎng)絡,參考節(jié)點通過在線監(jiān)測目標節(jié)點信號強度值構(gòu)建測量值向量,再根據(jù)各個參考節(jié)點的位置信息構(gòu)建觀測矩陣,導入離線指紋庫建立階段構(gòu)建的冗余字典,在觀測矩陣和字典滿足不相關(guān)的條件下,可以由少量的信號強度測量值向量通過CS重構(gòu)算法恢復目標節(jié)點位置。定位系統(tǒng)模型如圖1所示。
圖1 礦井巷道定位系統(tǒng)示意圖Fig.1 Schematic diagram of mine roadway positioning system
為對煤礦井下目標節(jié)點位置數(shù)據(jù)進行采集和處理,將整個礦井巷道定位區(qū)域拆分成若干個局部定位區(qū)域,在每個定位區(qū)域中心處放置一個網(wǎng)關(guān),負責采集和管理本區(qū)域內(nèi)目標節(jié)點和參考節(jié)點的信息,目標節(jié)點、參考節(jié)點和網(wǎng)關(guān)之間組成一個以網(wǎng)關(guān)為匯聚中心的無線傳感器網(wǎng)絡,如圖2所示。由圖2可知,每個參考節(jié)點都可以接收到各個目標節(jié)點周期性發(fā)出的信號,網(wǎng)關(guān)將參考節(jié)點監(jiān)測到的目標節(jié)點信號強度等信息發(fā)送給定位計算機,定位計算機根據(jù)CS算法確定目標節(jié)點的位置。
圖2 礦井巷道局部定位區(qū)域布置示意圖Fig.2 Schematic diagram of location area in mine roadway
CS算法的目的是從少量采樣信號y恢復原始信號X,其數(shù)學模型[13]為
y=ФX
(1)
X∈RN×1,y∈RM×1,Φ∈RM×N
式中,y為測量值向量,即采樣信號;Ф為觀測矩陣;X為原始稀疏信號。
CS算法的實現(xiàn)包含3個必要因素:信號的稀疏表示、觀測矩陣的構(gòu)建和信號的非線性優(yōu)化重構(gòu)(在已知y、Ф的情況下利用重構(gòu)算法恢復原始稀疏信號X)。CS算法框架如圖3所示。
圖3 CS算法框架Fig.3 Framework of compressed sensing
CS算法模型要求原始信號X是稀疏的,而一般的時域信號都不是稀疏的,不能直接套用式(1),此時需要在稀疏基矩陣Ψ下將X進行稀疏表示。稀疏表示模型為
X=Ψθ
(2)
式中,Ψ為稀疏基矩陣;θ為稀疏系數(shù)矩陣。
將式(2)代入式(1)可得
y=ΦX=ΦΨθ
(3)
其中,若θ中僅有K個分量取值很大(K< 考慮測量噪聲干擾時,y可以表示[14]為 y=ΦΨθ+η (4) η=[η1,η2,…,ηM]T 其中,為服從高斯分布的測量噪聲序列。 由式(3)可知,觀測矩陣Φ∈RM×N(M< M=O(Klog(N/K)),M< (5) 觀測矩陣Φ在構(gòu)建時需滿足約束等距性條件(Restricted Isometry Property,RIP),即對于任意K-稀疏信號X和常數(shù)δK∈(0,1),滿足[15]: (6) 式中,δK為約束等距常數(shù)(Restricted Isometry Constant,RIC)。 實際上,在處理非稀疏信號X時,式(1)中觀測矩陣Φ滿足RIP特性和式(3)中觀測矩陣Φ與稀疏基矩陣Ψ滿足不相干特性是等價的。因此相干系數(shù)定義[16]為 (7) CS理論指出[12]:若原始信號X是稀疏的或可以進行稀疏表示,并且觀測矩陣Φ與稀疏基矩陣Ψ不相干,那么原始信號X可由測量值向量y求解l0范數(shù)下的最優(yōu)化問題,從而以最大概率得到無損重構(gòu)。l0范數(shù)的數(shù)學意義是表示θ中所有非零項元素的個數(shù)。重構(gòu)過程[20]如下: (8) (9) 基于CS算法的礦井WSN目標定位方法,將礦井目標定位問題構(gòu)建為CS算法稀疏信號重構(gòu)問題。待定位目標是從測量值向量y中估計出位置信息向量θ,由式(3)中已知Ψ、Φ、y求取θ,所以該方法的關(guān)鍵問題在于Φ、Ψ和y的合理設計。 稀疏基矩陣Ψ的構(gòu)建是在指紋法的離線階段完成的。由文獻[18]可知,稀疏基矩陣Ψ的元素取決于信號傳播模型,而信號傳播模型取決于井下電磁環(huán)境,針對某具體定位環(huán)境時,Ψ是相對固定的。 將礦井定位區(qū)域劃分為N個網(wǎng)格并按序從1到N進行標號,定義Ψ為一個N×N維的稀疏矩陣,目標節(jié)點和參考節(jié)點按序放置在定位區(qū)域的網(wǎng)格內(nèi),參考節(jié)點需要對每一個網(wǎng)格內(nèi)目標節(jié)點的接收信號強度值(RSSI)進行測量采樣,網(wǎng)絡模型如圖4所示。 圖4 目標定位網(wǎng)絡模型Fig.4 Target localization network model 為更加準確地描述RSSI向量與空間位置的關(guān)系,構(gòu)建完備的離線指紋庫,每次假設參考節(jié)點位于1到N的每個網(wǎng)格內(nèi),N個參考節(jié)點對多個方向的目標節(jié)點分布進行測量,每個參考節(jié)點每次采集N個目標節(jié)點的RSSI值,每個RSSI值向量視為一個指紋,共采集N×N次,將每次采集到的RSSI值保存在矩陣Ψ中構(gòu)建稀疏基矩陣,形成指紋庫。Ψ中的行標為參考節(jié)點標號,列標為與之對應的網(wǎng)格序號。Ψ中的每個元素都是參考節(jié)點采集到的RSSI值向量,由此可得稀疏基矩陣Ψ[12]: (10) 觀測矩陣Φ的構(gòu)建是在在線監(jiān)測階段采用實時填寫方式完成的,構(gòu)建方法通常有3種:第1種方法根據(jù)實際接收到的信號強度值測量結(jié)果生成;第2種方法根據(jù)參考節(jié)點位置生成;第3種方法采用信號衰減模型生成。前兩種方法更為簡便實用,被廣泛采用,本文采用第2種構(gòu)建方法。 在離線指紋庫建立階段,為了構(gòu)建完備的稀疏基矩陣Ψ,每個參考節(jié)點都會采集N個RSSI測量值,共N個參考節(jié)點,在線監(jiān)測階段則不需要煩瑣的步驟,僅需M[M=O(Klog(N/K)]個參考節(jié)點隨機布置在N個網(wǎng)格中,M< *—所在網(wǎng)格為參考節(jié)點的位置圖5 定位區(qū)域參考節(jié)點布置Fig.5 Reference node layout of localization area 當?shù)趇個參考節(jié)點位于第j個網(wǎng)格內(nèi)時,Φij=1;否則,Φij=0。因為有M個參考節(jié)點,所以Φ中共有M個非零值,每一行只有一個非零值。參考節(jié)點布置完成后,其位置相應確定,布置完成的網(wǎng)絡觀測矩陣Φ也確定,定義觀測矩陣Φ為 (11) 由于觀測矩陣Φ的元素值是非0即1的,故觀測矩陣Φ和稀疏基矩陣Ψ相干。文獻[22]指出,可對矩陣Φ、Ψ做正交化處理來滿足RIP條件。 K個目標節(jié)點隨機分布在不同網(wǎng)格內(nèi)。由K< 其中,θ為N×1維向量,θ中元素的序號k對應網(wǎng)格的序號,求取目標位置,即為利用CS算法重構(gòu)稀疏向量θ,確定θ中的非0元素的位置序號。 為驗證本文所提出的CS算法應用在礦井WSN目標定位系統(tǒng)中的性能,本文實驗采集的數(shù)據(jù)在Matlab 2013a軟件上進行仿真。仿真計算機型號為戴爾Vostro 3667-R2848,CPU為I5-6400,顯卡為NVIDIA GeForce 710 2GB,內(nèi)存8 GB,硬盤1 TB,Windows10操作系統(tǒng)。 當參考節(jié)點數(shù)量M=20、目標節(jié)點數(shù)量K=10、網(wǎng)格數(shù)量N=1 000時,采用本文算法獲得的定位結(jié)果如圖6所示。由圖6可知,CS算法重構(gòu)出的目標位置與目標實際位置幾乎完全重合,定位精度很高。實際應用中,定位精度與定位區(qū)域的網(wǎng)格劃分面積有直接關(guān)系,網(wǎng)格劃分的面積受礦井巷道長寬的影響。 圖6 基于CS算法的礦井目標定位結(jié)果Fig.6 Localization results of mine target based on compressed sensing 將本文的CS算法與兩種傳統(tǒng)算法的定位誤差比較,結(jié)果如圖7所示。當參考節(jié)點數(shù)量M=20、目標節(jié)點數(shù)量K=10、網(wǎng)格數(shù)量N=1 000時,本文算法的定位誤差可控制在0.8 m以內(nèi),比傳統(tǒng)的指紋法定位誤差(約1.17 m)提高了約33%,比基于TOA測距的三邊法定位誤差(約0.95 m)提高了約17.7%。由此可見,本文所采用的基于CS算法的礦井WSN目標定位方法,只要在線監(jiān)測階段實測信號強度測量值向量y包含目標位置信號足夠的信息量,就可高概率恢復目標節(jié)點位置信號。 圖7 定位誤差對比Fig.7 Comparison of localization errors 當定位區(qū)域、參考節(jié)點數(shù)量M=20、目標節(jié)點數(shù)量K=10時,通過改變網(wǎng)格數(shù)量測試其對定位誤差的影響。實驗中將定位區(qū)域分別劃分為N=100,200,…,1 000個網(wǎng)格,本文算法與兩種傳統(tǒng)算法的定位誤差對比如圖8所示。由圖8可知,不論何種算法,只要定位區(qū)域、參考節(jié)點數(shù)量和目標節(jié)點數(shù)量不變,定位誤差隨著網(wǎng)格數(shù)量增多而減少,劃分的網(wǎng)格數(shù)量越多,單個網(wǎng)格的面積就越小,定位精度就越高,定位誤差就越小。當網(wǎng)格數(shù)達到1 000,即網(wǎng)格邊長為1 m時,本文算法的定位誤差趨于0.8 m,在3種算法中定位精度較高。 當定位區(qū)域、網(wǎng)格數(shù)量N=1 000、目標節(jié)點數(shù)量K=10時,通過改變參考節(jié)點數(shù)量測試其對定位誤差的影響。實驗中將參考節(jié)點數(shù)量分別布置為M=5,10,…,30,本文算法與兩種傳統(tǒng)算法的定位誤差對比如圖9所示。由圖9可知,不論何種算法,只要定位區(qū)域、網(wǎng)格數(shù)量和目標節(jié)點數(shù)量不變,布置參考節(jié)點數(shù)量越多,接收到的有效信息越多,定位精度也就越高;但當參考節(jié)點達到一定數(shù)量時,定位誤差反而出現(xiàn)增大趨勢。這是因為布置過多的參考節(jié)點會增加定位復雜度,參考節(jié)點間的信號容易產(chǎn)生電磁波交叉干擾,導致接到的信息誤差增大,不利于定位精度的提高。本文算法的參考節(jié)點數(shù)量必須滿足式(5)的要求,在M=20時定位誤差最小。 圖9 參考節(jié)點數(shù)量對定位誤差的影響Fig.9 Influence of reference node number on localization error (1) 本文將CS算法應用于礦井WSN目標定位系統(tǒng)中,建立兩階段定位方法:離線指紋庫建立階段和在線監(jiān)測階段。該方法僅通過少量參考節(jié)點測量目標節(jié)點信號強度值,便可通過重構(gòu)算法恢復目標節(jié)點位置信號,求出目標節(jié)點位置。該方法減少了布置參考節(jié)點的工作量,降低系統(tǒng)的節(jié)點功耗和維護成本,證明本方法在煤礦井下目標定位的適用性。 (2) 本文算法的兩階段定位方法定位精度可控制在0.8 m以內(nèi),滿足了定位需求。相比傳統(tǒng)的定位算法,本文算法的定位誤差最低,且定位誤差隨著網(wǎng)格數(shù)量參考節(jié)點數(shù)量的增加而降低;在其他條件不變的情況下,參考節(jié)點滿足一定數(shù)量時,定位誤差可達到最小,證明本文算法在煤礦井下目標定位的可行性。2.2 觀測矩陣構(gòu)建
2.3 信號非線性化重構(gòu)
3 基于CS算法的礦井WSN目標定位
3.1 稀疏基矩陣Ψ
3.2 觀測矩陣Φ
3.3 測量值向量y
3.4 目標位置信息稀疏向量θ
4 目標定位結(jié)果仿真分析
4.1 基于CS算法的定位誤差
4.2 不同算法的定位誤差對比
4.3 網(wǎng)格數(shù)量對定位誤差的影響
4.4 參考節(jié)點數(shù)量對定位誤差的影響
5 結(jié) 論