陸賽杰,李云驥,彭 力*
(江南大學(xué)物聯(lián)網(wǎng)應(yīng)用技術(shù)教育部工程中心,江蘇 無錫 214122)
無線傳感器網(wǎng)絡(luò)是最近數(shù)年研究的一個熱點,其在軍事、環(huán)境監(jiān)測和預(yù)報、健康護理、智能家居、建筑物狀態(tài)監(jiān)控、復(fù)雜機械監(jiān)控、城市交通、空間探索、大型車間和倉庫管理,以及機場、大型工業(yè)園區(qū)的安全監(jiān)測等領(lǐng)域應(yīng)用十分廣泛。傳感器節(jié)點受制于體積,通常采用鋰電池進行供電,相比于外部供電的方式,傳感器本身攜帶的能量十分的有限[1]。在一些環(huán)境比較惡劣的環(huán)境下,電池的更換十分困難,如果一個節(jié)點發(fā)生故障,那么很有可能會對整個網(wǎng)絡(luò)的穩(wěn)定性造成影響,在一些特殊的情況下甚至?xí)斐烧麄€網(wǎng)絡(luò)的癱瘓。這是制約無線傳感網(wǎng)絡(luò)設(shè)計的一個瓶頸。
根據(jù)傳感器數(shù)據(jù)傳輸?shù)念l率,可以將其分為兩類:周期性(也稱為時間驅(qū)動型)和非周期性(也稱為事件驅(qū)動型)數(shù)據(jù)傳輸[2],在時間驅(qū)動型的傳輸中,每一個節(jié)點周期性的將數(shù)據(jù)傳輸?shù)较乱粋€節(jié)點或者傳輸?shù)浇K端設(shè)備,而在事件驅(qū)動型的網(wǎng)絡(luò)中,數(shù)據(jù)在滿足一定的條件下才會發(fā)送,所以在事件驅(qū)動型的數(shù)據(jù)傳輸中的,傳感器節(jié)點不是每個周期進行數(shù)據(jù)傳輸,在不傳輸?shù)那闆r下,傳感器節(jié)點可以進行休眠,以達到一定的節(jié)能作用。最近幾年,事件驅(qū)動傳輸?shù)目刂坪凸烙嬕呀?jīng)受到了國內(nèi)外學(xué)者的廣泛關(guān)注[3-8]。例如,文獻[9]設(shè)計了自適應(yīng)事件驅(qū)動下馬爾科夫跳變系統(tǒng)的狀態(tài)估計器,文獻[10]研究了在網(wǎng)絡(luò)丟包下的可靠傳輸策略,并將其策略應(yīng)用在一類化工過程的遠程監(jiān)測中。文獻[11]又利用隨機事件驅(qū)動策略同時對網(wǎng)絡(luò)化系統(tǒng)進行最優(yōu)估計和狀態(tài)反饋控制。
盡管考慮事件驅(qū)動傳輸?shù)目刂坪凸烙嬕呀?jīng)取得一系列進展,現(xiàn)有的研究一般考慮單跳網(wǎng)絡(luò)的數(shù)據(jù)傳輸,即遠程估計器能夠完全接收到傳感器所發(fā)送到的數(shù)據(jù)。然而,傳感器節(jié)點傳輸?shù)木嚯x是有限的,一旦超過了節(jié)點所要求的傳輸距離,就很有可能造成大范圍的丟包,甚至無法正常工作,此外,使用添加天線的方案來提高傳輸距離的方法將極大地增加能量的消耗和設(shè)備的安裝。本文考慮一類遠程監(jiān)測系統(tǒng)如圖1所示,由于傳感器節(jié)點傳輸距離有限,需要通過一組多跳節(jié)點將數(shù)據(jù)傳輸?shù)竭h程端,傳感器節(jié)點和中繼節(jié)點通過鋰電池供電,其節(jié)點電池能量也是有限的,利用所設(shè)計的事件驅(qū)動的傳輸策略,減少中繼節(jié)點的電池消耗,并使遠程估計器能魯棒地監(jiān)測本地的信息。此外,由于網(wǎng)絡(luò)不穩(wěn)定現(xiàn)象的發(fā)生,中繼節(jié)點所傳輸?shù)臄?shù)據(jù)有可能在傳輸過程中丟失,這一類問題也將在本文中被解決。所以考慮在網(wǎng)絡(luò)數(shù)據(jù)丟包情況下基于遠程狀態(tài)估計的事件驅(qū)動傳輸策略具有一定的實際意義。
本文主要工作總結(jié)如下:
①提出了適用于含中繼節(jié)點的遠程狀態(tài)估計器,通過求解一類近似二次性能指標(biāo)的上界推導(dǎo)了基于新息驅(qū)動的中繼節(jié)點傳輸策略,以保證遠程估計精度和節(jié)點的電池能耗獲得最優(yōu)的平衡;
②利用所設(shè)計的傳輸策略有效地解決了含中繼節(jié)點的無線網(wǎng)絡(luò)發(fā)生丟包、數(shù)據(jù)無法傳輸?shù)那闆r;
③從工程角度出發(fā),完整地設(shè)計了包含硬件、軟件的中繼節(jié)點模塊,并通過觀測一組鋰電池電壓放電過程的實驗對所提出的算法進行了估計性能和節(jié)能效果的驗證。
傳統(tǒng)上,標(biāo)準(zhǔn)卡爾曼濾波器需要知道每個k時刻傳感器收集的測量數(shù)據(jù)。然而,為了使得中繼節(jié)點可以延長生命周期并盡可能的節(jié)省能源,可以采取減少節(jié)點與節(jié)點之間的傳輸次數(shù)的方案。在這種情況下,測量值無法立刻在每一個時間節(jié)點獲得;因此,估計值也就無法通過標(biāo)準(zhǔn)的卡爾曼濾波計算得到。在這里我們將為每一個傳輸節(jié)點設(shè)計一種新息驅(qū)動的數(shù)據(jù)轉(zhuǎn)發(fā)方案。
圖1 系統(tǒng)傳輸模型
由圖1可知,整個系統(tǒng)是一個離散的線性系統(tǒng):
xk+1=Axk+wk
(1)
這里k是一個離散的時間指標(biāo),xk∈Rn是一個狀態(tài)向量,wk∈Rn是一個零均值的高斯噪聲,并且wk的方差滿足:
(2)
測量值yk滿足下面的方程:
yk=Cxk+vk
(3)
式中:yk∈Rm,vk∈Rm,并且vk滿足如下的方程:
(4)
傳統(tǒng)上,標(biāo)準(zhǔn)卡爾曼濾波器需要知道每個時刻k傳感器收集的測量數(shù)據(jù)。然而,為了使中繼節(jié)點可以延長生命周期并盡可能的節(jié)省能源,可以采取減少節(jié)點與節(jié)點之間的傳輸次數(shù)的方案。然而在這種情況下,測量值無法立刻在每一個時刻獲得;因此,估計值也就無法通過標(biāo)準(zhǔn)的卡爾曼濾波計算得到。在這里我們將介紹一種適用于含中繼節(jié)點的狀態(tài)估計器。
對于節(jié)點i一個事件驅(qū)動的估計器滿足如下:
(5)
式中:
(6)
(7)
(8)
(9)
假定:
(10)
同時假設(shè)測量誤差Δi有統(tǒng)一的分布,Δi的均值和方差如下:
(11)
在(11)中,φi滿足minλQw(i,i)>φi,minλ(·)指矩陣的最小特征值。
圖2 基于新息驅(qū)動的數(shù)據(jù)傳輸示意圖
考慮一類性能指標(biāo)J在文獻[12]中被提出:
(12)
式中:誤差權(quán)重Q>0,傳輸權(quán)重λ>0。
引理1[13]假如存在一個馬爾科夫鏈z0,z1,…,滿足狀態(tài)空間
X,f:X→R,b:X→R
定義:
(13)
如果存在c∈R滿足對任意的x∈X,
h(x)≥c
(14)
則
(15)
接下來我們將利用式(13)來設(shè)計新息驅(qū)動的決策規(guī)則以此權(quán)衡估計性能和電池能耗,為了推導(dǎo)的方便,先定義一些變量:
(16)
(17)
(18)
(19)
定理1考慮節(jié)點i的性能上界Ji,給定矩陣Qi>0,系數(shù)λi>0,如果存在Hi>0,那么:
(20)
其約束條件:
(21)
并且
(22)
此外,新息驅(qū)動的決策規(guī)則如下所示
(23)
式中:
(24)
(25)
(26)
(27)
定義函數(shù)f的形式為:
(28)
進一步可以得到:
(29)
(30)
因為
(31)
所以有:
(32)
所以通過上邊的等式可以得到:
(33)
(34)
(35)
(36)
(37)
因此,式(28)可以進一步化簡成:
(38)
化簡得:
(39)
(40)
(41)
式(35)可以化簡成下面的形式:
(42)
因為
(43)
因此
(44)
進一步可以得到:
(45)
在網(wǎng)絡(luò)發(fā)生丟包的情況下,網(wǎng)絡(luò)中的節(jié)點將無法完成數(shù)據(jù)傳輸?shù)娜蝿?wù),本章節(jié)將利用所設(shè)計的新息驅(qū)動策略有效地解決了含中繼節(jié)點的無線網(wǎng)絡(luò)發(fā)生丟包、數(shù)據(jù)無法傳輸?shù)那闆r。
算法1詳細說明了網(wǎng)絡(luò)丟包下的數(shù)據(jù)傳輸方案。
算法1
如圖3所示,本文通過估計一組鋰電池放電電壓的過程來驗證上述理論算法的可行性和實用性,該實驗平臺由一組鋰電池,3個中繼節(jié)點和一遠程計算機組成。其中,中繼節(jié)點選用STM32F407[14]作為計算模塊,該芯片集成了FPU和DSP指令,具有192 kbyte的SRAM、1 024 kbyte的FLASH、12個16位定時器、14個定時器、3個SPI、6個串口、3個12位的ADC,適合計算上述所提到的理論算法。
圖3 系統(tǒng)框圖
圖5是中繼節(jié)點工作流程圖,節(jié)點1在傳輸數(shù)據(jù)之前需要給節(jié)點2一個喚醒信號,等節(jié)點2喚醒之后再往節(jié)點2發(fā)送數(shù)據(jù),節(jié)點2到節(jié)點3之間的數(shù)據(jù)與節(jié)點1到節(jié)點2一樣,因此我們必須在各個節(jié)點之間加上一個用于發(fā)送喚醒信號的模塊。這里選用nRF24L01[15]芯片來實現(xiàn)這個功能。每一個模塊都工作在不同的地址,所以互不干擾。作用是產(chǎn)生一個喚醒信號,實驗中的數(shù)據(jù)傳輸通過USR-C210 WIFI模塊實現(xiàn),該模塊有3種工作模式:STA、AP、AP+STA,AP模式表示的是一個無線網(wǎng)絡(luò)中的中心節(jié)點,本實驗中總共有3個節(jié)點,節(jié)點2作為整個網(wǎng)絡(luò)的中心節(jié)點其上掛載的WIFI模塊設(shè)置為AP模式,可以通過AT指令來進行設(shè)置。同時,模塊支持低功耗模式,在正常狀態(tài)下,如果UART接口持續(xù)一定時間沒有接收數(shù)據(jù)那么模塊就可以進入低功耗模式。最后,圖6是本實驗所設(shè)計的中繼節(jié)點的PCB電路圖。
圖5 中繼節(jié)點工作流程圖
圖6 中繼節(jié)點的PCB電路圖
實驗對象利用了一個由3節(jié)電池組成的鋰電池組,參數(shù)如表1所示。
表1 ANR26650電池規(guī)格表
觀測其放電電壓的過程,此鋰電池組線性模型借用文獻[16-17],如下所示:
式中:
將連續(xù)系統(tǒng)離散化并且設(shè)定采樣時間為1 s,系統(tǒng)方程重寫為:
xk+1=Axk+Buk
yk=Cxk>
式中:
實驗的步長設(shè)置為100次,丟包率假設(shè)為10%。通過STM32F407單片機實時采集上傳數(shù)據(jù)顯示當(dāng)前的測量值以及估計值,用于比較跟隨效果。圖7~圖9繪制了遠程端系統(tǒng)的狀態(tài)、周期性傳輸?shù)倪h程狀態(tài)估計以及基于事件驅(qū)動傳輸機制的遠程狀態(tài)估計的對比曲線,從圖中可以看出,采用了事件驅(qū)動傳輸機制的遠程狀態(tài)估計和系統(tǒng)狀態(tài)以及周期性傳輸?shù)倪h程狀態(tài)估計之間的偏差很小,即系統(tǒng)性能并未受到很大的影響.在整個過程中,傳感器節(jié)點發(fā)送了64次數(shù)據(jù),通過事件驅(qū)動機制減少發(fā)送次數(shù)為36,即相對于周期性傳輸機制,減少資源使用約30%。
圖9 第3節(jié)電池電壓曲線
圖7 第1節(jié)電池電壓曲線
圖8 第2節(jié)電池電壓曲線
為了更加清晰地驗證遠程估計器的估計性能,實驗2通過考慮節(jié)點3的均方誤差,將本文所設(shè)計的事件驅(qū)動的估計、周期性傳輸?shù)墓烙嫼屠脮r間驅(qū)動的學(xué)習(xí)觀測器[17]的估計進行比較。圖10繪制了其蒙托卡羅100次的均方誤差的對比曲線,根據(jù)對比曲線可知,相較于周期性傳輸機制,基于事件驅(qū)動的傳輸機制的蒙托卡羅均方根誤差沒有明顯的增大,此外,相應(yīng)的傳輸模態(tài)在圖11中進行繪制。
圖10 遠程估計誤差曲線
圖11 傳輸模態(tài)軌跡
從圖10和圖11可以看出,所提出的算法在節(jié)約資源的同時,遠程估計器的性能沒有明顯的下降。
實驗3選取80mAh的鋰電池,每隔5 min采集一次電池的剩余電壓節(jié)點1、節(jié)點2、節(jié)點3的剩余電量對比如表2~表4所示,為了方便描述,周期性傳輸?shù)碾妷涸O(shè)置為U1,事件驅(qū)動傳輸?shù)碾妷涸O(shè)置為U2。
表2 節(jié)點1電壓對照表
表3 節(jié)點2電壓對照表
表4 節(jié)點3電壓對照表
本文提出了一種在丟包的多跳網(wǎng)絡(luò)環(huán)境下的新息驅(qū)動傳輸策略,利用增加中繼節(jié)點延長數(shù)據(jù)傳輸?shù)木嚯x,通過所設(shè)計的傳輸策略來控制傳感器節(jié)點和中繼節(jié)點何時發(fā)送數(shù)據(jù),降低整個無線網(wǎng)絡(luò)的平均功耗,并延長了傳感器數(shù)據(jù)傳輸?shù)木嚯x。另外,利用所設(shè)計的傳輸策略解決了無線網(wǎng)絡(luò)發(fā)生丟包、數(shù)據(jù)無法傳輸?shù)那闆r。最后將這套傳輸策略應(yīng)用到一個鋰電池電量檢測的實際系統(tǒng)中,并且完成了整套系統(tǒng)的軟硬件設(shè)計,驗證了事件驅(qū)動算法的有效性。
參考文獻:
[1] 黃慧燕. 事件驅(qū)動型無線傳感網(wǎng)絡(luò)功耗分析及節(jié)能協(xié)議設(shè)計[D]. 電子科技大學(xué),2013.
[2] 汪泉弟,孔衛(wèi),李彬,等. 事件驅(qū)動型無線傳感器網(wǎng)絡(luò)生存期分析[J]. 重慶大學(xué)學(xué)報,2007,30(6):30-34.
[3] Quevedo D E,Ahlén A,?stergaard J. Energy Efficient State Estimation with Wireless Sensors through the Use of Predictive Power Control and Coding[J]. Electrical Engineering,2010,58(9):4811-4823.
[4] 王弟. 基于事件驅(qū)動的網(wǎng)絡(luò)化預(yù)測控制器設(shè)計及實現(xiàn)[D]. 北京:北京理工大學(xué),2015.
[5] 侯鑫,張東文,鐘鳴. 基于事件驅(qū)動和神經(jīng)網(wǎng)絡(luò)的無線傳感器網(wǎng)絡(luò)數(shù)據(jù)融合算法研究[J]. 傳感技術(shù)學(xué)報,2014,27(1):142-148.
[6] Durand S. Event-Based Stabilization of Linear System with Communication Delays in the Measurements[C]//American Control Conference. 2013:152-157.
[7] 高潔,吳延紅,白建俠,等. 無線傳感器網(wǎng)絡(luò)最小覆蓋能量優(yōu)化算法[J]. 傳感技術(shù)學(xué)報,2016,29(9):1435-1440.
[8] Forni F,Galeani S,Dragan,et al. Event-Triggered Transmission for Linear Control over Communication Channels[J]. Automatica,2013,50(2):490-498.
[9] 祁瓊. 自適應(yīng)事件驅(qū)動下馬爾科夫跳變系統(tǒng)的狀態(tài)估計[J]. 湖北理工學(xué)院學(xué)報,2016,32(2):42-49.
[10] Li Y,Li P,Chen W. An Energy-Efficient Data Transmission Scheme for Remote State Estimation and Applications to a Water-Tank System[J]. Isa Transactions,2017,70:494-501.
[11] 祝超群,楊彬,魯春燕,等. 隨機事件驅(qū)動通信的網(wǎng)絡(luò)化系統(tǒng)最優(yōu)估計與狀態(tài)反饋控制[J]. 信息與控制,2015,44(6):654-659.
[12] Arapostathis A,Borkar V S,Ndez-Gaucherand E,et al. Discrete-Time Controlled Markov Processes with Average Cost Criterion:A Survey[J]. SIAM Journal on Control and Optimization,1993,31(2):282-344.
[13] Cogill R,Lall S. Suboptimality Bounds in Stochastic Control:A Queueing Example[C]//American Control Conference. IEEE,2006:1642-1647.
[14] 李志明,檀永,徐石明,等. STM32嵌入式系統(tǒng)開發(fā)實戰(zhàn)指南[M]. 機械工業(yè)出版社,2013.
[15] 時志云,蓋建平,王代華,等. 新型高速無線射頻器件nRF24L01及其應(yīng)用[J]. 電子設(shè)計工程,2007(8):42-44.
[16] Chen W,Chen W T,Saif M,et al. Simultaneous Fault Isolation and Estimation of Lithium-Ion Batteries via Synthesized Design of Luenberger and Learning Observers[J]. IEEE Transactions on Control Systems Technology,2013,22(1):290-298.
[17] 張利,朱雅俊,劉征宇. 鋰離子電池SOC與模型參數(shù)聯(lián)合估算研究[J]. 電子測量與儀器學(xué)報,2012,26(4):320-324.