陸游,禹素萍,姜華,吳波
(1.東華大學信息科學與技術學院,上海 201620;2.中國科學院上海高等研究院,上海 201210)
一種能量可計算的星型無線傳感器網絡協議
陸游1,禹素萍1,姜華2,吳波2
(1.東華大學信息科學與技術學院,上海 201620;2.中國科學院上海高等研究院,上海 201210)
提出一種基于雙向通信的無線傳感器網絡的超低功耗協議.通過分析協議的防碰撞原理,給出了網絡參數的設計原則,以及傳感器節點功耗與傳感器網絡壽命的關聯算法,并通過OMNeT++網絡仿真軟件對協議進行了仿真驗證.結果表明:該方法通過降低協議的復雜度,控制網絡的工作流程,有效降低了整個無線傳感器網絡的能耗,延長了網絡的使用壽命,并實現了預測無線傳感器網路的壽命.
無線傳感器;星形拓樸網絡;超低功耗;防碰撞;壽命預測;OMNeT++
無線傳感器網絡(wireless sensor network,WSN)的應用范圍相當廣泛,已成功地應用到環境監測、農業和醫療衛生行業等.不同應用環境的要求差異也很大,需根據具體情況設計合適的網絡協議.其中,網絡拓撲結構主要描述的是網絡節點間的連接方式,基本類型有:總線型、環型、樹型、ad hoc型以及星型[1].目前無線傳感器網絡協議基本都是根據具體情況進行研究設計,而降低功耗、提升無線傳感器網絡的使用壽命一直是當下的一個研究熱點.但是到目前為止還沒有一種通信協議能夠滿足所有無線傳感器網絡的應用要求,在有些特殊情況下這些協議下的傳感器節點不能滿足低功耗的要求,即無線傳感器網絡的使用壽命不能達到要求.星型拓撲網絡是各種網絡的組網基礎,它具有控制簡單、便于管理、建網容易等特點,在傳輸距離較近、環境干擾大、時間要求高、數據量大等工業現場應用較為廣泛[2].使用星型拓撲建立無線傳感器網絡可以降低通信協議的復雜度,有效地降低整個網絡的能耗.本文選擇星型無線傳感器網絡,討論一種基于雙通道的無線傳感器網絡通信協議,降低了協議復雜度,實現星型無線傳感器網絡的超低功耗以及傳感器節點的功耗可計算、無線傳感器網絡的壽命可預測,并使用OMNeT++網絡仿真軟件對所設計的協議進行仿真驗證.
星型無線傳感器網絡的拓撲結構如圖1所示,包括若干個傳感器節點(Sensor)和一個基站節點(Sink).

圖1 星型無線傳感器網絡拓撲結構Fig.1 Star wireless sensor network topology
每個基站節點Sink可以管轄n個傳感器節點Sensor 1、Sensor 2,…,Sensor n,它們隨機地分布在基站節點可接收到信號的距離范圍之內,與基站節點直接通信構成星型拓撲網絡.基站節點協調整個網絡的運行,從所管轄的傳感器節點端接受數據,并通過其他方式傳送至服務器端或主干網絡上,所以基站節點需提供充足的能量.
無線傳感器節點(Sensor)具有感知、計算和通信能力,通常是一個嵌入式系統,但是受到體積、電源、功耗等因素的限制,其數據處理能力、存儲能力以及通信能力都相對較弱.傳感器節點硬件結構如圖2所示,由傳感器部分、微處理器、存儲部分、通信部分和電源部分組成.

圖2 傳感器節點系統結構圖Fig.2 Sensor node′s system structure diagram
本設計中微處理器選用的是Microchip公司推出的一款8位超低功耗單片機PIC16LF1828,其工作電壓為1.8~3.6 V,并且采用了nanoWatt XLP的超低功耗管理,休眠模式時電流可低至20 nA,看門狗定時器電流為500 nA,實時時鐘為32 kHz時的電流也只有600 nA,與常用的TI公司的MSP430以及Atmel公司的ATmegal28等相比具有明顯優勢[3-4].
通信部分的射頻模塊選用Nordic公司的低功耗、高速2 Mbps工業級嵌入式2.4 GHz無線收發芯片nRF24L01,它具有增強型的ShockBurst功能,共5種工作模式:RX、TX、StandbyⅠ、StandbyⅡ、Power Down模式,在3 V電壓下各種模式的工作電流情況如表1所示.其中PowerDown模式的工作電流只有900 nA,因此對于長時間工作在Power Down模式下的系統來說功耗是非常低的.并且該芯片具有兩個無線通道,每個通道都可通過編程在上述5種工作模式中進行切換.

表1 nRF24L01 5種工作模式下的工作電流Tab.1 nRF24L01′s working currents in five different work modes
本協議采用最早期的無線計算機通信協議Aloha的設計思想,是最基礎的星型拓撲網絡.由末端傳感器節點Sensor產生數據后主動將數據發送給Sink節點,并且Sensor節點定時采集數據,其余時間處于休眠狀態.
3.1 工作原理
(1)nRF24L01具有兩個無線通道,可以同時工作,并且具有跳頻功能,最多可支持126個不同頻段. Sink節點的通道1保持對固定工作頻率f1的監聽狀態,隨時接收Sensor節點發送的數據.
(2)一個Sink節點下連接多個Sensor節點,每個Sensor節點隨機入網,入網后使用通道1以工作頻率f1主動向Sink節點發送數據包.數據包內包含跳頻信息f2,f2是nRF24L01自動從126個頻道內隨機產生的.然后將通道2切換至f2頻段開始監聽,監聽時間t1可設置,一般為數據發射時間的3倍.接收到Sink節點的應答報文后直接進入休眠模式;若沒有接收到應答報文且超時定時器計時超時,則Sensor節點也切換至休眠模式.休眠時間t2可以設置,時間到達后產生外部中斷,節點自動喚醒,開始采集數據重復之前的操作.Sensor節點的休眠自動喚醒工作流程如圖3所示.
(3)Sink節點的通道1一直處于對f1頻段的監聽狀態,接收到Sensor發送的數據后提取跳頻信息f2,打開通道2切換至f2頻段,并使其工作在發送模式.通道1繼續保持對f1頻段的監聽.Sink標定Sensor節點的地址,并判斷是否有命令需要向Sensor節點發送,如果有則發送命令幀;如果沒有則發送確認幀.關閉通道2,使其工作在休眠模式.Sink節點接收數據發送命令包的工作流程如圖4所示.

圖3 Sensor節點工作流程圖Fig.3 Work flowchart of Sensor node
3.2 防碰撞原理分析
協議采用的是類似最早期的無線計算機通信Aloha協議的星型拓撲結構,由Sensor節點主動向Sink節點發送數據.Sensor入網時間隨機,由其本身決定.為了更好地降低Sensor的功耗,這里沒有使用Aloha的碰撞后重傳來保證通信的可靠性.而是通過給同一個Sink下的Sensor設定相同的發送數據的時間間隔,這樣只要節點入網時不發生數據碰撞,那么整個網絡的通信就是可靠的.而節點的入網時間又是隨機的,所以數據發生碰撞的概率只與節點的工作周期、發送數據的時間和一個Sink下接入的Sensor的個數有關,本文通過控制這些參數來降低數據碰撞的概率,使其滿足通信需求.
3.2.1 兩個Sensor節點發生數據碰撞的概率
設Sensor節點的工作周期為T,節點的數據發送時間為ts,休眠時間為tw,兩個節點分別為S1和S2,它們的發送時間點處于不同位置時的工作狀況如圖5所示.圖5中,S21、S22、S23、S24分別表示節點S24個不同的發送時間的狀態,T為工作周期.

圖4 Sink節點工作流程圖Fig4 Work flowchart of Sink node

圖5 兩個Sensor節點不同發送時間點處的工作狀況Fig.5Working conditions of two Sensor nodes at different sending times
由圖5可以看出,S2在t1之前t4之后發送數據將不會與S1發生碰撞,只有在t1~t4之間發送數據才會與S1發生碰撞,使得Sink接收到錯誤數據幀.這個時間長度為節點發送數據時間的2倍,即2ts.
在Sensor節點的一個工作周期時長內,設2個節點發生數據碰撞的概率為P(2),根據上述分析,S2在t1~t4時間內啟動開始發生數據會與S1發生碰撞,可以得到2個節點隨機啟動發生數據碰撞的概率為:

3.2.2 n個Sensor節點發生數據碰撞的概率
將上述分析推廣到n個Sensor節點的情況,設其中有i個節點同時碰撞的概率為Pi,則有:

設n個Sensor節點與Sink節點進行通信時發生數據碰撞的概率為P(n),則有:


所以可認為,碰撞概率隨Sensor節點個數的增加近似線性增大.
假設發生碰撞的概率P(n)≤Pmin=1%,在實際系統就認為不會發生碰撞,所以可得到一個Sink節點下連接的Sensor節點的個數

本協議設計的數據幀長度為32 Byte,發送速率為2 Mbps,故ts=128 μs,假設工作周期T=60 s,經計算得n≤2 344.即在Sensor節點數據發送時間為128 μs、工作周期為60 s的情況下,一個Sink節點下最多可連接2 344個Sensor節點.
故在設計網絡參數時,只需控制Sensor節點的個數(n)、工作周期(T)和每次數據發送的時間(ts),確保發生碰撞的概率P(n)≤1%即可保證通信可靠.

圖6 Sensor節點工作時序圖Fig.6 Working time diagram of Sensor node
3.3 Sensor 節點功耗計算
無線傳感器節點的能量消耗是無線傳感器網絡的常用指標之一.Sensor節點的總功耗等于該節點單片機、傳感器和無線射頻模塊的功耗之和.本設計使用的PIC16LF1828單片機具有看門狗定時器,工作電流為500 nA,將此模式作為單片機的休眠模式;將HFINTOSC時鐘源分頻至8 MHz作為MCU喚醒后的系統時鐘;優化工作時序.傳感器使用SHT11數字溫濕度傳感器,其數據采集時間為80 ms.nRF24L01無線射頻模塊采用先睡眠后喚醒的工作時序,進一步降低功耗.Sensor節點的工作時序如圖6所示.
由圖6可以看出,Sensor節點的工作周期為T,其中PIC16LF1828單片機的工作模式有正常工作模式以及休眠模式,工作電流分別為Iw和Is.
溫濕度傳感器SHT11的工作流程如下:先經過2個時鐘周期從休眠模式啟動,再經過8個時鐘周期寫入1個字節的命令,接著等待tm=80 ms的測量數據時間,然后經過16個時鐘周期將數據讀出.單片機的工作頻率f=8 MHz,故1個時鐘周期的時間t0=1/f s= 125 μs.所以傳感器的工作時間為:

休眠時間為(T-T1).SHT11的測量電流Im= 0.55 mA,休眠電流Is=0.3 μA,故在Sensor節點的一個工作周期內溫濕度傳感器SHT11的功耗為:



設nRF24L01在TX模式時的工作電流為IT,RX模式時的工作電流為IR,StandbyⅠ和StandbyⅡ模式的工作電流分別為I1、I2,Power Down模式時的工作電流為IP.故在Sensor節點的一個工作周期內無線射頻模塊nRF24L01的功耗為:

由上述工作時序可以看出,單片機的工作時間為傳感器SHT11和無線射頻模塊nRF24L01的工作時間之后,即:

所以在Sensor節點的一個工作周期內PIC16LF1828單片機的功耗為:



3.4 協議的功耗對比
Zigbee協議是目前使用比較廣泛的一種無線傳感器網絡通信協議,然而由于Zigbee協議棧的標準性,在對基于Zigbee的無線傳感器網絡進行低功耗設計時只能從硬件上設計實現.但是其路由發現、路由維護、組建網絡等一系列復雜功能使節點在低功耗上很難有大的突破.一些在硬件上做了低功耗設計的Zigbee節點在使用兩節5號干電池的情況下,節點壽命也只有1~2 a時間[5].
LEACH協議是一種低功耗自適應分簇算法,以“輪”作為工作周期,通過每輪建立新簇、選擇新簇頭來平衡整個網絡的功耗.雖然簇頭的選擇是根據相等概率的隨機機制選取的,但還是會存在簇頭節點能量耗盡的情形而影響網絡壽命.在對LEACH協議進行改進的研究中,讓剩余能量高的節點更有機會當選為簇頭來延長整個網絡的壽命[6].然而這樣的改進最多使網絡壽命延長1~2倍,建立簇本身也在消耗著能量,因此難以達到更理想的效果.
盡管網狀網拓撲結構的魯棒性比較強,但是由于需要清楚地了解各個傳感器節點的位置信息,同時路由開銷比較大,使得節點構造和網絡實現比較復雜,節點和整個網絡的能耗也因此增加.所以在傳輸距離較近、環境干擾大的工業現場協議復雜的網狀網并不是非常的適用,可以選擇使用星型拓撲網絡.
本文所設計的超低功耗協議,在選取容量為500 mAh的鋰電池為Sensor節點供電,節點理論壽命可達到13年左右,且網絡中不用為建立與維護路由表產生額外的能量開銷.由此可見,本文所設計的星型無線傳感器網絡協議在超低功耗上與現有的Zigbee、LEACH協議相比具有明顯的優勢.
本文使用OMNeT++網絡仿真軟件對所設計的協議進行仿真分析.OMNeT++是一款開源的基于組件的模塊化開放網絡仿真平臺,其作為離散事件仿真器,具備強大完善的圖形界面接口和可嵌入式仿真內核.同NS2、OPNET和JavaSim等仿真平臺相比,OMNeT++可運行于多個操作系統平臺,可以簡便定義網絡拓撲結構,具備編程、調試和跟蹤支持等功能[7~8].其中Sensor節點的仿真模型如圖7所示.

圖7 Sensor節點模型Fig.7 Model of Sensor node
模型由appl模塊(用于實現數據采集),nic模塊(實現與Sink節點的無線通信)、battery模塊(用于節點的能量監控)以及黑板模塊(blackboard)組成.節點模型的具體參數如表2所示.

表2 Sensor節點主要參數Tab.2 Main parameters of Sensor node
設置節點個數為300進行仿真,電池容量與仿真時間的關系如圖8所示.

圖8 Sensor節點剩余電池容量Fig.8 Sensor nodes′battery capacity remaining
由圖8可知,本系統中Sensor節點的電池容量線性下降,下降速度與節點的工作周期相關.所以工作周期確定后,多個節點的電池容量情況在圖中基本重合.在600 s仿真時間內節點能量的消耗微乎其微.
圖9所示為不同Sensor節點數量以及工作周期下發生碰撞概率的情況.

圖9 Sensor節點數量、工作周期與碰撞概率關系圖Fig.9 Correlation between number of nodes,working cycle and probability of collision
由圖9可以看出,在工作周期相同的情況下,節點數量的增加會導致碰撞概率的增大;在相同節點數量下,縮短節點的工作周期也會增大碰撞的概率.從整體來看碰撞發生的概率均小于1%.
本文針對已有無線傳感器網絡整體功耗較高且網絡壽命不長的現狀,提出了一種具有雙通道的無線傳感器網絡超低功耗通信協議,給出了傳感器節點的硬件方案以及和基站節點的工作流程圖,并分析了網絡防碰撞原理、網絡參數設計原則,對本文中所設計的傳感器節點功耗和壽命進行了計算.與現有的無線傳感器網絡通信協議Zigbee協議、Leach協議等相比,本文所提出的通信協議具有明顯優勢.最后使用OMNeT++網絡仿真軟件對協議進行了仿真驗證,保證了協議的可靠性,可將該協議運用于對低功耗要求嚴格,更換電池和設備困難較大的環境中.
[1]萬時光,馬小鐵,李凱.星型無線傳感器網絡的應用研究[J].通信技術,2009,42(3):173-176.
[2]高原,文瑞松,王土央.無線傳感器網絡環境監測采集節點的設計[J].實驗技術與管理,2012,29:127-131.
[3]曾勇,楊濤,馮月暉.基于nRF24L01的超低功耗無線傳感器網絡節點設計[J].嵌入式技術,2008(7):45-48.
[4]PHILIPPE Le-Huy,SéBASTIEN Roy.Low-power wake-up radio for wireless sensor networks[J].Mobile Networks and Applications,2010,15(2):226-236.
[5]呂宏,黃釘勁.基于Zigbee技術低功耗無線溫度數據采集及傳輸[J].研究與開發,2012,31(2):58-60.
[6]周沖,余震虹,卜凡云,等.WSN中低功耗路由協議LEACH的一種改進方法[J].科學技術與工程,2011,11(21):5070-5074.
[7]段世紅,王沁,于彥偉.基于低能耗WSN的石油站監控系統設計[J].計算機工程,2011,37:17-19.
[8]楊光旭,劉方愛,趙學成.OMNeT++平臺上無線傳感器網絡仿真系統的研究[J].計算機應用研究,2011,28(9):3443-3446.
An energy-calculable star wireless sensor network protocol
LU You1,YU Su-ping1,JIANG Hua2,WU Bo2
(1.Information Science and Technology College,Donghua University,Shanghai 201620,China;2.Shanghai Advanced Research Institute,Chinese Academy of Science,Shanghai 201210,China)
An ultra-low-power protocol is proposed for wireless sensor network based on two-channel communication.By analyzing the anti-collision theory of the protocol,the design principles of the network parameters are given.It shows the association algorithm between power consumption of the sensor node and the lifetime of sensor network,and this algorithm is validated by the network simulation software named OMNeT++.The result shows that by reducing the complexity of the protocol and controlling the working process of the network,it can reduce the energy consumption,extend the life of the entire wireless sensor network,and forecast the lifetime of wireless sensor network.
wireless sensor network;star network topology;ultra-low-power;anti-collision;lifetime forecast;OMNeT++
TN919.3
A
1671-024X(2013)04-0060-06
2013-02-22
:上海市科委專項課題基金資助項目(09DZ1502100)
陸游(1989—),男,碩士研究生.
禹素萍(1977—),女,博士,副教授,碩士生導師.E-mail:yusuping@dhu.edu.cn