隋 濤, 陳浩然, 劉秀芝, 劉國棟
(山東科技大學(xué)電氣與自動化工程學(xué)院, 青島 266590)
面對全球常規(guī)能源的逐漸枯竭和環(huán)境污染,為了響應(yīng)可持續(xù)發(fā)展的口號,風(fēng)能和太陽能等可再生能源已廣泛用于微電網(wǎng)[1]。微電網(wǎng)作為智能電網(wǎng)中的一項重要技術(shù),由于各系統(tǒng)分布不規(guī)則,沒有一種固定的分布模式,傳統(tǒng)的電網(wǎng)監(jiān)測系統(tǒng)不能滿足對微電網(wǎng)的監(jiān)測需求。在微電網(wǎng)監(jiān)測系統(tǒng)中引入邊緣計算技術(shù)可以優(yōu)化數(shù)據(jù)傳輸。
無線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)常用于微電網(wǎng)監(jiān)測系統(tǒng)中。由于各種不確定性,在WSN中可能產(chǎn)生數(shù)據(jù)包丟失問題。如果WSN的節(jié)點無法正確定位,則網(wǎng)絡(luò)節(jié)點定位誤差過大,導(dǎo)致網(wǎng)絡(luò)無法連接,甚至使網(wǎng)絡(luò)崩潰,出現(xiàn)丟包問題[2]。常見的WSN定位算法可分為基于測距和非測距的方法,基于測距的定位算法具有定位精度高,成本開銷大,對環(huán)境要求高的特點,常應(yīng)用于室內(nèi)精準定位的場景。而基于非測距定位的算法定位誤差高,實現(xiàn)簡單成本低,對環(huán)境的要求也不高,應(yīng)用比較廣泛且在大多數(shù)實際應(yīng)用中非測距定位算法的粗精度也能滿足實際需求。在WSN的定位中,需要考慮網(wǎng)絡(luò)的定位精密度、節(jié)點的通信半徑、能量耗損等許多因素。DV-Hop算法是一種非測距定位算法,常被應(yīng)用于WSN定位中。該算法主要利用節(jié)點間相互通信,借助平均每跳跨距與未知節(jié)點到錨節(jié)點之間跳數(shù)的乘積,計算未知節(jié)點到錨節(jié)點的距離[3]。隨后基于經(jīng)典DV-hop算法,肖美華等[4]提出了一種平均加權(quán)(average weighting,AW)方法;程遠國等[5]設(shè)計了跳數(shù)加權(quán)(hop weighting,HW)方法;程超等[6]提出了一種誤差加權(quán)(error weighting,EW)方法;張安安等[7]提出了一種融合無線傳感器網(wǎng)絡(luò)(wireless sensor network, WSN)和射頻識別(radio frequency identification, RFID)技術(shù)的輸電線路桿塔狀態(tài)監(jiān)測網(wǎng)絡(luò);史進等[8]提出了一種基于病毒體投射機制的移動無線傳感網(wǎng)節(jié)點定位算法。這些改進在不同水平上增進了DV-hop算法的精度,減小了定位誤差。但是若要滿足微電網(wǎng)中的信息傳輸,定位算法不宜過于復(fù)雜,否則會影響電網(wǎng)正常運行。
為此,在應(yīng)用邊緣計算技術(shù)的基礎(chǔ)上改進了微電網(wǎng)監(jiān)測系統(tǒng)的結(jié)構(gòu),并在此結(jié)構(gòu)下針對DV-Hop算法[9]進行了一定改進,希望能進一步減小DV-Hop算法的定位誤差。
微電網(wǎng)作為智能電網(wǎng)領(lǐng)域的重要一環(huán),部署了各種分布式電源,其結(jié)構(gòu)復(fù)雜。例如珠海某海島微電網(wǎng)就包含光伏發(fā)電設(shè)備、光伏并網(wǎng)柜、風(fēng)電并網(wǎng)柜、柴油發(fā)電機、多項變流控制器、風(fēng)力發(fā)電設(shè)備等設(shè)備,需要在使用大量的監(jiān)測設(shè)備對微電網(wǎng)各部分運轉(zhuǎn)狀態(tài)進行監(jiān)測。
傳統(tǒng)的微電網(wǎng)分布式電源模塊監(jiān)控系統(tǒng)如圖1所示。微網(wǎng)設(shè)備信號由無線傳感器采集并傳遞給網(wǎng)關(guān),隨后控制中心通過處理匯聚節(jié)點收到的故障信號,由此可分析該節(jié)點發(fā)生故障的具體位置和類型[10]。
圖1 微電網(wǎng)中某區(qū)域分布式電源模塊監(jiān)控系統(tǒng)Fig.1 Monitoring system of distributed generation module in microgrid
在微電網(wǎng)監(jiān)控系統(tǒng)中,將全部監(jiān)測的節(jié)點構(gòu)成一個無線傳感器網(wǎng)絡(luò),會給匯聚節(jié)點帶來巨大的壓力。若其中部分節(jié)點發(fā)生故障,不能被正確定位,可能會危及整個網(wǎng)絡(luò),從而影響整個微電網(wǎng)監(jiān)控系統(tǒng)。在微電網(wǎng)中運用邊緣計算技術(shù)可以緩解微電網(wǎng)運行時信息擁堵的問題。邊緣計算作為在網(wǎng)絡(luò)邊緣執(zhí)行計算的一種模式,用于應(yīng)對大量物聯(lián)網(wǎng)終端設(shè)備的使用所帶來的對帶寬負載、網(wǎng)絡(luò)穩(wěn)定性的挑戰(zhàn)[11]。
將微電網(wǎng)的監(jiān)測區(qū)域按照地理位置或運行結(jié)構(gòu)分割成多個監(jiān)測區(qū)域,每個監(jiān)測區(qū)域的無線傳感器節(jié)點將采集到的信號上傳至邊緣服務(wù)器,再由邊緣服務(wù)器進行初步信號處理后傳輸至云端服務(wù)器。基于邊緣計算的分布式電源模塊監(jiān)控系統(tǒng)如圖2所示。
面對監(jiān)測數(shù)據(jù)過多,云計算中央服務(wù)器處理性能有限等,通過對采集信號進行基于邊緣計算的預(yù)處理,芟除采集信號的冗余信息或錯誤信息,將一些采集信號分析技術(shù)下沉到邊緣處,以此減少對云中心的計算、存儲和網(wǎng)絡(luò)帶寬需求,提高數(shù)據(jù)分析的效率。
通過對監(jiān)控區(qū)域分割,各個區(qū)域相對獨立,減小了匯聚節(jié)點的工作量,降低了數(shù)據(jù)傳輸時網(wǎng)絡(luò)堵塞的可能性。在圖2的監(jiān)測區(qū)域中,一些傳感器設(shè)備上加裝了GPS定位系統(tǒng),可以將這些設(shè)備看做無線傳感器網(wǎng)絡(luò)中的錨節(jié)點。因此,圖2中的監(jiān)測區(qū)域可以抽象為圖3的仿真場景[10]。
圖2 基于邊緣計算的分布式電源模塊監(jiān)控系統(tǒng)Fig.2 Distributed power module monitoring system based on edge computing
圖3 監(jiān)測區(qū)域網(wǎng)絡(luò)仿真場景Fig.3 Simulation scenario of monitoring area network
由于加裝全球定位系統(tǒng)(global positioning system, GPS)后會使傳感器節(jié)點能耗增加從而縮短節(jié)點壽命,同時為了節(jié)省成本,在分布式發(fā)電過程中,只有少數(shù)設(shè)備配備了GPS傳感器節(jié)點,而大量設(shè)備的位置未知。錨節(jié)點的位置已知,所提出的定位算法是一種以少量已知位置的設(shè)備來定位位置不確定的設(shè)備的算法。在監(jiān)控過程中,每個設(shè)備的節(jié)點都通過無線鏈路向監(jiān)控中心傳輸諸如電壓、電流等數(shù)據(jù)。當(dāng)監(jiān)控中心發(fā)現(xiàn)某設(shè)備損壞,需要及時獲知損壞設(shè)備位置,否則會引發(fā)嚴重后果。
DV-Hop算法靠錨節(jié)點(anchor node,AN)和未知節(jié)點(unknown node,UN)的平均跳距和跳數(shù)之積得到UN到AN的距離。
算法流程如圖4所示。錨節(jié)點標(biāo)識設(shè)為i,錨節(jié)點位置坐標(biāo)記為ANi。ANi的平均每跳距離(average hop distance, AHD)記為AHDi,其計算公式為
圖4 DV-Hop算法流程圖Fig.4 DV hop algorithm flow chart
(1)
式(1)中:N為AN的總數(shù);(xi,yi)、(xj,yj)分別為ANi和ANj的坐標(biāo);hij為從ANi到ANj的最小跳數(shù)。
設(shè)di為UN到ANi的估計距離,其計算公式為
di=AHDhopi
(2)
式(2)中:hopi為從UN到ANi的最小跳數(shù);AHD為UN保存的平均每跳距離。
從定位過程來看,影響DV-Hop算法精度的主要因素有:計算節(jié)點位置的方法、節(jié)點間的預(yù)計距離、最低跳數(shù)以及平均每跳距離[12]。
DV-Hop算法中,當(dāng)傳感器節(jié)點記錄到相同的最小跳數(shù),但間距不同或是跳數(shù)不相等,間距相同時會產(chǎn)生最小跳數(shù)誤差。如圖5(a)所示,節(jié)點C的最大通信半徑記為R,節(jié)點A至節(jié)點C的距離與節(jié)點G至節(jié)點C的距離相似,但節(jié)點C至節(jié)點A的最小跳數(shù)記為2,到節(jié)點G的最小跳數(shù)為1。節(jié)點C到節(jié)點B、節(jié)點D、節(jié)點G的最小跳數(shù)均為1,而節(jié)點C到節(jié)點B、D、G的距離不相等。
同理,如圖5(b)所示,節(jié)點A到節(jié)點J的實際間距為R,節(jié)點A到節(jié)點D的實際間距為R,但是這兩者的跳數(shù)卻并不相同。圖5(c)中,節(jié)點A到節(jié)點B跳數(shù)為1跳,節(jié)點A到節(jié)點F跳數(shù)也為1跳,但是其距離并不相同。所以此種最小跳數(shù)的計數(shù)方法會帶來較大的誤差。
平均每跳距離AHD的誤差受WSN中節(jié)點分布不均勻的影響,如圖5(a)所示,假設(shè)節(jié)點A、節(jié)點C、節(jié)點G為3個錨節(jié)點。由圖5可知,錨節(jié)點C和錨節(jié)點G的AHDCG計算公式為
圖5 傳感器節(jié)點分布示意圖Fig.5 Sensor node distribution diagram
AHDCG=(R-ε)/1
(3)
式(3)中:ε為距離測量誤差。
錨節(jié)點C和錨節(jié)點A之間的AHDCA計算公式為
AHDCA=(R+ε)/2
(4)
計算UN和AN的間距將參考附近的錨節(jié)點AHD,但AN間的平均跳距也會有較大的誤差。最近錨節(jié)點的單個AHD幾乎不能反映UN周圍的網(wǎng)絡(luò)特性,這可能會導(dǎo)致較大定位誤差[13-14]。
DV-Hop算法的長處是簡單易實現(xiàn),缺點是較低的定位精度。為了減小錨節(jié)點間平均跳距引起的誤差,錨節(jié)點提供的信息被大量使用可以提升估計的UN的AHD的精度[13]。文獻[4]提出了AW方法,利用多個錨節(jié)點的AHD,取平均值來代替?zhèn)鹘y(tǒng)算法中未知節(jié)點的AHD,可表示為
(5)
式(5)中:AHDu為n個錨節(jié)點AHD的平均值;n為UN從中獲取信息的錨節(jié)點的數(shù)目,n≤N。每個AN具有相同的權(quán)重值。
錨節(jié)點距離未知節(jié)點越近,其網(wǎng)絡(luò)位置信息與未知節(jié)點越相近。基于上述假設(shè),文獻[5]設(shè)計了HW方法。
(6)
(7)
式中:ωi為跳數(shù)權(quán)重值;hui為UNu到ANi的最小跳數(shù)。
令錨節(jié)點的AHD準確度提高的一種方法是減小錨節(jié)點的距離誤差。文獻[6]提出了EW方法,權(quán)重值ω計算公式為
(8)
(9)
式(9)中:εi為ANi的平均每跳距離誤差;εj為ANj的平均每跳距離誤差;ω為基于平均每跳距離誤差的權(quán)重值;hij為從ANi到ANj的最小跳數(shù);dij為從ANi到ANj的估計距離;Dij為實際距離;N為WSN中所有錨節(jié)點的數(shù)量。
當(dāng)錨節(jié)點部署在網(wǎng)絡(luò)邊沿時,大多數(shù)未知節(jié)點可被定位。當(dāng)錨節(jié)點分布在網(wǎng)絡(luò)中心時,遠離中心的節(jié)點累積定位誤差較大,導(dǎo)致總體定位精密度減小[4]。對文獻[4]實驗結(jié)果分析可知:當(dāng)錨節(jié)點在網(wǎng)絡(luò)邊緣布置時,定位精度最好。當(dāng)錨節(jié)點分布在監(jiān)測區(qū)域邊沿時,平均加權(quán)方法效果最優(yōu)秀。文獻[5]用網(wǎng)絡(luò)的拓撲關(guān)系估計出的空間直線距離替代節(jié)點間的跳距關(guān)系進行運算,在錨節(jié)點所占比例較低時,網(wǎng)絡(luò)能夠確定連通的區(qū)域內(nèi)的所有未知節(jié)點位置[5]。
應(yīng)用了跳數(shù)加權(quán)的DV-hop算法在一般情況下可以取得較好效果。由于在應(yīng)用了邊緣計算技術(shù)的微電網(wǎng)監(jiān)測區(qū)域中,每一個區(qū)域面積較小,因此錨節(jié)點更容易部署在區(qū)域邊緣。因此將適用于錨節(jié)點分布于監(jiān)測區(qū)域邊緣的平均加權(quán)方法應(yīng)用到跳數(shù)加權(quán)方法上可以取得更好的效果。在AW方法與HW基礎(chǔ)上進行適當(dāng)?shù)母倪M,可表示為
(10)
(11)
AHD=AHDu+|ω1-ω2|
(12)
式中:ω1為基于平均加權(quán)方法的改進權(quán)重值;ω2為基于跳數(shù)加權(quán)方法的改進權(quán)重值。
基于MATLAB2016a軟件,在內(nèi)存為8 G,CPU為Intel Core i7處理器,操作系統(tǒng)為Windows 10的計算機上進行。針對圖2各個小范圍監(jiān)測區(qū)域,模擬了一個200 m×200 m的正方形監(jiān)測區(qū)域。設(shè)備總數(shù)設(shè)為200,即有200個無線傳感器節(jié)點。參考實際戶外微電網(wǎng)運行狀況,GPS定位誤差設(shè)置為 5 m。從經(jīng)濟方面以及網(wǎng)絡(luò)正常運行方面考慮,錨節(jié)點覆蓋率取20%,通信半徑為30 m。由于微電網(wǎng)架構(gòu)靈活多變,因此對各傳感器位置進行隨機設(shè)置,仿真多次,取平均值。每次實驗的相對定位誤差計算公式為
(13)
式(13)中:未知節(jié)點的估計坐標(biāo)由(xest,yest)表示;未知節(jié)點實際坐標(biāo)由(xtrue,ytrue)表示;傳感器節(jié)點的最大通信半徑為R;Nnum為未知節(jié)點數(shù)目。
平均定位誤差的計算公式為
(14)
式(14)中:ξi為每次實驗的相對定位誤差;Ttime為實驗次數(shù)。
本次實驗分為兩組對照實驗,一組為普通DV-hop算法、應(yīng)用了平均加權(quán)方法的DV-hop算法、應(yīng)用了平均加權(quán)與跳數(shù)加權(quán)的DV-hop算法(本文方法)這3種DV-hop算法進行對比,按照多個算法步驟分別進行,選出性能較優(yōu)的算法;二組為接收信號的強度指示(received signal strength indication,RSSI)方法(未知節(jié)點利用鄰居錨節(jié)點進行定位,沒有鄰居錨節(jié)點的未知節(jié)點無法定位)、RSSI改進方法(有鄰居錨節(jié)點的未知節(jié)點只利用鄰居錨節(jié)點進行定位,沒有鄰居錨節(jié)點的未知節(jié)點才利用已經(jīng)定位了的鄰居未知節(jié)點進行定位)、Centroid方法與一組選出的較優(yōu)DV-hop算法進行對照實驗,同樣按照多個算法步驟分別進行100~500次,間隔次數(shù)為100的實驗。一組對照實驗結(jié)果如圖6所示,一組對照實驗平均誤差如表1所示,二組對照實驗結(jié)果如圖7所示,二組對照實驗平均誤差如表2所示。各算法優(yōu)缺點如表3所示,各算法不能被定位的節(jié)點數(shù)如表4所示。
表2 應(yīng)用了平均加權(quán)與跳數(shù)加權(quán)的DV-hop、RSSI、 改進的RSSI、Centroid算法平均誤差
表3 各算法優(yōu)缺點比較
圖7 應(yīng)用了平均加權(quán)與跳數(shù)加權(quán)的DV-hop、RSSI、 改進的RSSI、Centroid算法仿真結(jié)果圖Fig.7 Simulation results of average weighted and hop weighted DV-hop, RSSI, improved RSSI and Centroid algorithms
表1 DV-hop、應(yīng)用了平均加權(quán)的DV-hop、應(yīng)用了 平均加權(quán)與跳數(shù)加權(quán)的DV-hop算法平均誤差
圖6 DV-hop、應(yīng)用了平均加權(quán)的DV-hop、應(yīng)用了 平均加權(quán)與跳數(shù)加權(quán)的DV-hop算法仿真結(jié)果Fig.6 Simulation results of DV-hop, DV hop with average weighting and DV hop with average weighting and hop number weighting
在本次實驗設(shè)定的微電網(wǎng)場景中,由于每個監(jiān)測區(qū)域較小且節(jié)點較多,運用DV-hop算法與Centroid算法可以得到較小的平均誤差,而RSSI算法則會產(chǎn)生較大定位誤差,不適用于此場景。DV-hop與Centroid算法對比,雖然Centroid算法的平均誤差較小,但是其運行時間比起DV-hop算法來說特別長,不能滿足微電網(wǎng)實際運行時的需要,而且運用該算法會有不能被定位的未知節(jié)點,可靠性會下降。因此DV-hop算法從定位精度,定位可靠性與實時性上來說優(yōu)于其他兩種算法。本次實驗的3種DV-hop算法,所提出的平均加權(quán)與跳數(shù)加權(quán)的DV-hop對比普通DV-hop算法精度提高了6.88%,對比平均加權(quán)方法的DV-hop算法精度提高了5.12%,通過運用本文方法可以取得較小的平均誤差。
針對每個監(jiān)測區(qū)域較小且節(jié)點較多的特點,在引入平均加權(quán)方法的改進DV-Hop算法基礎(chǔ)上,提出了基于平均與跳數(shù)加權(quán)的DV-hop算法。該改進算法對比已有算法減小了定位誤差,且不會增加運算時間,可以適應(yīng)基于邊緣計算的微電網(wǎng)無線傳感器網(wǎng)絡(luò)定位場景。邊緣計算技術(shù)引入微電網(wǎng)監(jiān)測系統(tǒng),提高了信息傳遞效率,改進了微電網(wǎng)監(jiān)測系統(tǒng)結(jié)構(gòu)。改進的無線傳感器定位算法可以提高定位精度,在微電網(wǎng)監(jiān)測中具有廣闊的應(yīng)用前景。