莫崢嶸,陳子原,齊天一
(中國人民解放軍海軍工程大學(xué) 電子工程學(xué)院 二大隊5 隊,湖北 武漢 430000)
能量效率和能量供應(yīng)能力是無線傳感網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs)的熱點(diǎn)議題[1]?;谀芰啃实腗AC 協(xié)議,設(shè)計有效的路由是建立能量采集策略的關(guān)鍵。路由協(xié)議的基本目的,不僅是向目的節(jié)點(diǎn)傳輸數(shù)據(jù),還需提高能量效率,進(jìn)而提高WSNs 的網(wǎng)絡(luò)壽命[2-3]。
面向傳統(tǒng)的同構(gòu)WSNs,研究人員提出許多路由協(xié)議。在同構(gòu)WSNs 中,傳感節(jié)點(diǎn)具有相同的通信能力[4]、功率和處理數(shù)據(jù)能力。最近,基于異構(gòu)WSN 框架的物聯(lián)網(wǎng)(Internet-of-Things,IoT)應(yīng)用受到廣泛關(guān)注?;谶@個應(yīng)用,必須考慮WSN 的異構(gòu)性和能量采集能力。實(shí)際上,基于傳統(tǒng)的同構(gòu)WSNs 的路由協(xié)議難以直接應(yīng)用于復(fù)雜的異構(gòu)網(wǎng)絡(luò)。因此,針對基于異構(gòu)WSNs 的IoT 應(yīng)用,提出新的路由協(xié)議是非常必要的。
能量采集(Energy Harvesting,EH)是部署基于WSNs的IoT 應(yīng)用的關(guān)鍵技術(shù)[5]。利用EH 技術(shù),傳感節(jié)點(diǎn)能夠從可再生能源(如太陽、機(jī)械振動或無線頻率(RF)輻射)獲取能量。先進(jìn)的EH 技術(shù)的出現(xiàn)給基于EH-WSN 的路由協(xié)議的發(fā)展提供了基礎(chǔ)。在能量采集感知的路由協(xié)議中,能量采集率是發(fā)展路由成本函數(shù)的重要指標(biāo)。文獻(xiàn)[6]提出能量-機(jī)會權(quán)重最小能量算法,其通過可用節(jié)點(diǎn)能量和能量采集率計算每個節(jié)點(diǎn)成本。文獻(xiàn)[7]提出基于隨機(jī)化最小路徑恢復(fù)時間(Randomized Minimum Path Recovery Time,R-MPRT)算法,R-MPRT 給每個鏈路計算成本。文獻(xiàn)[8]提出分布式能量采集感知路由算法(DEHAR),DEHAR 算法利用可用節(jié)點(diǎn)能量和跳數(shù),計算離信宿的最短路徑。而文獻(xiàn)[9]提出能量采集感知的自組按需距離矢量路由(AODV-EHA)。AODV-EHA算法充分利用現(xiàn)存的AODV 在處理WSN 的自組特性的優(yōu)勢,再利用節(jié)點(diǎn)的能量采集能力去決定具有最少傳輸成本的路由。
盡管上述路由算法降低了能量消耗,擴(kuò)延了傳感節(jié)點(diǎn)的壽命,但它們?nèi)源嬖谝欢ǖ木窒扌浴@?,文獻(xiàn)[6]和文獻(xiàn)[10]并沒有考慮在采集區(qū)間所采集的能量數(shù)量。而文獻(xiàn)[10-11]對網(wǎng)絡(luò)內(nèi)所有傳感節(jié)點(diǎn)采用固定的更新率,因此,它們無法處理周圍能量源的統(tǒng)計特性。 此外,文獻(xiàn)[6-7]依據(jù)全局網(wǎng)絡(luò)信息建立路由表,進(jìn)而轉(zhuǎn)發(fā)數(shù)據(jù)包。然而,在異構(gòu)WSNs 中的獲取全局信息是非常困難的。
為此,本文提出能量-采集-感知算法(Energy-Harvesting-Aware Routing Algorithm,EHARA)。EHARA 算法強(qiáng)調(diào)了能量效率、服務(wù)質(zhì)量(QoS)和網(wǎng)絡(luò)壽命。EHARA 路由依據(jù)節(jié)點(diǎn)所消耗的能量、所采集的能量和剩余能量信息,計算路由成本,進(jìn)而選擇最佳路由。實(shí)驗(yàn)數(shù)據(jù)表明,EHARA 算法有效地提高了路由性能和能量效率。
考慮異構(gòu)多跳WSNs,其由多個傳感節(jié)點(diǎn)和一個信宿組成,如圖1所示。傳感節(jié)點(diǎn)具有無線連通及能從周圍環(huán)境采集能量的能力,而信宿不受能量限制。
圖1 網(wǎng)絡(luò)模型Fig.1 Network model
節(jié)點(diǎn)可能是傳感節(jié)點(diǎn),也可作為路由器,這兩者均稱為節(jié)點(diǎn)。作為傳感節(jié)點(diǎn),它感測環(huán)境數(shù)據(jù),并將此數(shù)據(jù)包傳輸至信宿;作為路由器,它能夠通過鏈路將數(shù)據(jù)傳輸至信宿。
本文考慮三類典型的可再生能量源,如太陽、振動(移動車輛)和RF 輻射。所有節(jié)點(diǎn)能夠以不同的能量采集率從這三個能量源中任意一個收集能量。如圖1所示,紅色、紫色和綠色節(jié)點(diǎn)分別表示由基于太陽能的EH、基于移動車輛的EH 和基于RF 的EH。
圖2顯示了所有傳感節(jié)點(diǎn)和路由器的內(nèi)部模塊。每個節(jié)點(diǎn)由用于數(shù)據(jù)處理的低功耗微型控制器、基于IEEE 802.15.4 的低功耗的RF 發(fā)射器、功率管理單元和能量采集器以及能量存儲設(shè)備(如電池)組成。為了管理所采集的能量,本文考慮基于存儲能量協(xié)議,允許節(jié)點(diǎn)存儲電子能量。如果所采集的能量大于能量消耗,則可將多余能量存儲,供后期使用。
圖2 節(jié)點(diǎn)模型Fig.2 Node model
為了設(shè)計有效的路由協(xié)議,考慮每個節(jié)點(diǎn)傳輸一個數(shù)據(jù)包所消耗的能量是非常必要的。這些能耗由傳輸、接收或轉(zhuǎn)發(fā)數(shù)據(jù)包所發(fā)生的能耗組成。此外,節(jié)點(diǎn)在監(jiān)聽到達(dá)的數(shù)據(jù)包或等待下一個突好事件時,需要消耗能量。
式中,幀序號BO 和超幀序號SO 分別表示幀間隔(Bea-con Interval,BI)和超幀時長[11]。
如果節(jié)點(diǎn)i為源節(jié)點(diǎn)(Tx),則而如果節(jié)點(diǎn)i為目的節(jié)點(diǎn)(Rx),則
節(jié)點(diǎn)i的剩余能量則可表述為:
由于周圍能量源的隨機(jī)性,可將能量采集活動作為統(tǒng)計過程。假定采集能量的過程與傳輸、接收、空閑監(jiān)聽和休眠四個階段獨(dú)立。為了提高采集過程中能量采集率,引用能量預(yù)測模型是非常必要的。
為此,EHARA 引用基于標(biāo)準(zhǔn) Kalman 濾波 KF[12]的預(yù)測模型,通過KF 估算能量采集率。
為了更充分使用節(jié)點(diǎn)能量,首先對節(jié)點(diǎn)當(dāng)前剩余能量進(jìn)行等級劃分。如果節(jié)點(diǎn)的當(dāng)前剩余能量仍能維持基本操作,就只利用節(jié)點(diǎn)休眠時間采集能量;若節(jié)點(diǎn)的當(dāng)前剩余能量過低(小于預(yù)定的門限值),就拓延退僻時間,加大節(jié)點(diǎn)采集能量時間。
具體而言,首先考慮傳感節(jié)點(diǎn)的能量級別,將節(jié)點(diǎn)能量劃分三個等級,如圖3所示。Level 3 表示傳感節(jié)點(diǎn)維持以上操作的最小能量等級。依據(jù)節(jié)點(diǎn)i的剩余能量考慮以下兩種情況:
節(jié)點(diǎn)i將在休眠時期收集能量。因此,節(jié)點(diǎn)i所收集的能量按式(6)計算:
圖3 傳感節(jié)點(diǎn)的剩余能量Fig.3 Remaining energy of sensing nodes
在這種情況下,節(jié)點(diǎn)i可能沒有足夠的能量去維持正常操作。因此,在這種情況下,節(jié)點(diǎn)必須暫時性關(guān)掉發(fā)射器,進(jìn)入休眠狀態(tài),從而保存能量,直到電池能量恢復(fù)高于Level 3。通過這種策略,傳感節(jié)點(diǎn)能夠減少能耗,維持網(wǎng)絡(luò)壽命。為了拓延能量采集時間,加大退避時間,即通過新參數(shù)extrabackoff 產(chǎn)生新的額外退避過程,目的在于延長傳統(tǒng)的IEEE 802.15.4 CSMA/CA 協(xié)議的退避時間。通過延長退避時間,使得節(jié)點(diǎn)能夠有更多時間等待和從周圍能量源中采集能量。延長退避時間的策略如算法1所示。每B個Beacon 間隔(BIs)執(zhí)行一次算法 1。在每B個 BIs 后,節(jié)點(diǎn)就計算在當(dāng)前B個 BIs 中的所消耗的能量然后,再計算在下一個B個 BIs 的extrabackoff所需要時間:
1)AfterBcurrent BIs
2)DetermineEic,cur,λih,pre,andpipe3)CompareEirand Level3
4)Calculatetibousing 式(7)
5)CalculatetihandEihusing 式(8)
節(jié)點(diǎn)i的能量收集時間及所收集的能量數(shù)可定義為:
數(shù)據(jù)傳輸?shù)年P(guān)鍵在于鏈路的選擇。EHARA 算法選用成本最高的鏈路作為數(shù)據(jù)傳輸通道,為此,依據(jù)extrabackoff的執(zhí)行過程,鏈路成本的定義如下:
式中:Ci,j表示由節(jié)點(diǎn)i至節(jié)點(diǎn)j的鏈路表示目標(biāo)節(jié)點(diǎn)j的能量消耗表示源節(jié)點(diǎn)i的剩余能量;參數(shù)au 為單位退避時期。從式(11)可知,具有高Ci,j鏈路的連通時間更長;計算鏈路成本是依據(jù)節(jié)點(diǎn)和鏈路的局部信息。因此,它能夠很容易融入傳統(tǒng)距離矢量路由。此外,從式(7)~式(10)可知,引用長的退避時間,在傳輸前,節(jié)點(diǎn)需等待更長時間。通過更長的時間,節(jié)點(diǎn)能量收集更多能量。除了增加能量采集數(shù)量之除,EHARA路由必須滿足以下QoS:
式中:pl,th 分別表示信宿的數(shù)據(jù)包丟失率和吞吐量;而相應(yīng)的數(shù)據(jù)包丟失率的門限值PLmax和吞吐量的門限值(THmin,THmax)可依據(jù)不同應(yīng)用設(shè)定。
利用Matlab 建立仿真平臺。將V個異構(gòu)傳感節(jié)點(diǎn)隨機(jī)分布于100 m×100 m。在仿真過程中引用基于IEEE 802.15.4 CSMA 的MAC 協(xié)議,具體的仿真參數(shù)如表1所示。此外,為了更好地分析EHARA 性能,選用文獻(xiàn)[9]的 R-MPRT 和 AODV-EHA 算法作為參照。
表1 仿真參數(shù)Table 1 Simulation parameters
本次實(shí)驗(yàn)分析平均每個數(shù)據(jù)包所消耗的能量和總體剩余能量。實(shí)驗(yàn)數(shù)據(jù)如圖4、圖5所示。
圖4 平均每個數(shù)據(jù)包所消耗的能量Fig.4 Average energy consumption of data packets of different algorithms
圖5 網(wǎng)絡(luò)剩余能量Fig.5 Remaining energy of network of different algorithms
從圖5可知,R-MPRT 算法消耗了更多能量,而提出的EHARA 算法能量消耗最少。原因在于,EHARA 算法減少了每個節(jié)點(diǎn)的平均能耗。
圖5顯示了在8 000 s 仿真期間,各算法的剩余能量數(shù)據(jù),剩余能量隨時間推移逐漸下降。在仿真時間結(jié)束時,EHARA 算法和AODV-EHA 算法的分別消耗了50%,92.5%能量,分別剩余12.5 J 和2.5 J(網(wǎng)絡(luò)總能量為 25 J)。對于 R-MPRT 算法,它在運(yùn)行了 5 000 s 后,所有傳感節(jié)點(diǎn)的能量已耗盡。這些數(shù)據(jù)表明,相比于AODV-EHA 算法和 R-MPRT 算法,EHARA 算法的網(wǎng)絡(luò)壽命提高了40%和50%。
本次實(shí)驗(yàn)分析EHARA 算法的QoS 性能,包括數(shù)據(jù)包丟失率、吞吐量,實(shí)際數(shù)據(jù)如圖6、圖7所示。從圖6可知,數(shù)據(jù)包丟失率隨節(jié)點(diǎn)數(shù)的增加呈上升趨勢。相比于 R-MPRT 和 AODV-EHA 算法,EHARA 算法的數(shù)據(jù)包丟失率得到有效控制。當(dāng)V=100 時,EHARA 算法比AODV-EHA 算法的數(shù)據(jù)包丟失率下降了60%。原因在于,EHARA 算法通過維持更多的活動節(jié)點(diǎn),提高了路由的穩(wěn)定性和可靠性。
圖6 數(shù)據(jù)包丟失率Fig.6 Loss ratio of data packet of different algorithms
圖7 吞吐量Fig.7 Throughput of different algorithms
最后,分析了信宿的吞吐量。從圖7可知,節(jié)點(diǎn)數(shù)的增加,提高了算法的吞吐量。相比于AODV-EHA 和RMPRT,EHARA 算法的吞吐量得到有效提高。例如,當(dāng)源節(jié)點(diǎn)V=100 時,AODV-EHA 算法吞吐量最低,EHARA算法比AODV-EHA 算法的吞吐量提高了41%。
本文針對基于WSN 的物聯(lián)網(wǎng)應(yīng)用,提出能量采集感知路由EHARA。EHARA 路由充分考慮了物聯(lián)網(wǎng)應(yīng)用的特點(diǎn),利用節(jié)點(diǎn)采集能量,彌補(bǔ)傳感節(jié)點(diǎn)的能量不足。同時,定義鏈路成本,再選擇最佳的鏈路轉(zhuǎn)發(fā)數(shù)據(jù)包。實(shí)驗(yàn)數(shù)據(jù)表明,提出的EHARA 路由能夠有效地保存能量,最終實(shí)現(xiàn)延長網(wǎng)絡(luò)壽命的目的。