新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 低功耗無線傳感器網絡系統實現

        低功耗無線傳感器網絡系統實現

        作者: 時間:2011-12-10 來源:網絡 收藏

         為了支持應用,CC1110芯片除正常的Active模式外還支持四種省電模式,即PM0、PM1、PM2和PM3。在本網絡協議中,傳感采集節點存在以下三種工作狀態:數據采集、數據傳輸及睡眠狀態。其中,數據采集和數據傳輸均對應于CC1110的Active模式,在這兩種狀態下,節點工作于13 MHz內部時鐘或外部高頻時鐘。不同的是,在數據采集狀態下,節點將使能傳感器電源從而讀取傳感器數據;而在數據傳輸狀態下,節點打開射頻接口進行數據傳輸,此時可關閉傳感器電源以節約能源;睡眠狀態對應于芯片的PM2省電模式,CPU將停止工作而僅有內部睡眠定時器仍然處于工作狀態,睡眠時鐘可選擇內部34 kHz低頻時鐘或外部32.768 kHz輸入,芯片可借助內部睡眠時鐘實現喚醒,在該狀態下,由于所有外部接口均處于關閉狀態,因此,系統電流可維持在10 μA以內。借助于Sensor-Push傳感器網絡協議,節點將在大部分時間內保持在睡眠狀態,從而保證了網絡的
        網關節點可采取與傳感采集節點相類似的硬件設計,但有以下同之處:
         (1)網關節點除了與傳感采集節點相通信外,還需要裝備相應的無線或有線主干網絡連接設備,本設計采用串口轉以太網模塊連接無線網橋實現遠程通信;
         (2)網關節點一般沒有嚴格的體積限制,因此可裝備大容量鋰電池、蓄電池或者直接連接外部電源;
         (3)網關節點一般不需要裝備傳感器模塊;
         (4)網關節點一般對內存空間有一定要求,需要能夠緩存一定時間的節點傳感信息。
        2 Sensor-Push傳感器網絡協議
         一個健壯、低功耗的網絡協議是系統運行的關鍵,本系統采取了自主研發的低功耗Sensor-Push傳感器網絡協議。該協議針對的典型周期性數據采集應用進行深度優化,具有實現簡單、自組織、低功耗、高可靠性、可擴展等特點。
        2.1 傳感器網絡周期性數據采集應用的特點
         在眾多應用中,周期性的數據采集最為典型。該類型的應用一般要求網絡內的傳感采集節點以一定的采樣周期對感興趣的環境數據進行采樣,并在指定時間內將該采樣數據傳輸至遠程終端。一般情況下,其對數據延時并不敏感,節點只要能保證在下一個采樣來臨前將數據成功上傳即可。傳感采集節點通常只需和網關節點通信,而無需相互通信,如圖1所示。
         可根據該應用的數據特征對網絡協議進行充分優化,從而更好地達到低功耗、高可靠性的設計要求。本文的Sensor-Push協議即在此背景下研究而成,協議中采集節點將主動向網關節點推入采樣數據而無需網關節點進行控制或輪詢,大大簡化了上層應用的編寫,提升了用戶體驗。
        2.2 Sensor-Push協議詳述
         Sensor-Push協議是一個融合了傳統意義上的媒體訪問接入層及應用層的綜合協議。該協議的主要創新點在于實現了低復雜度的時分媒體訪問,并與推入方式為主的應用相結合,從而達到了系統層面的優化。該協議對物理層除要求使用無線射頻技術外不做特殊要求,但推薦使用頻移鍵控(FSK)或高斯頻移鍵控(GFSK)方式的射頻模塊,并最好能夠支持多個頻點,以便在不同子網內配置不同的頻點,在最大程度上防止子網間沖突,但這并非強制要求。
         與其他協議一樣,Sensor-Push協議同樣要求網絡內的節點擁有唯一的節點地址。協議中的節點地址由子網ID與網內ID拼接組成,其具體位長由網絡設計要求決定。例如,假定網絡所要求支持的最大子網數目為4,每個子網內支持的節點數目為64,那么節點地址可選擇為1 B,其中高2 bit表示節點所處的子網編號,而低6 bit則表示了節點在相應子網內的序列號。在具體實現中,節點地址可事先燒錄或通過焊接不同上下拉電阻改變外部IO管腳電平的方式為每個節點分配唯一的地址,當然實現方法也并不局限于此。為區別傳感采集節點及網關節點,本設計限定網關節點的網內ID為全0。
         Sensor-Push協議從媒體介入角度上看,屬于時分接入協議,與常用的CSMA協議相比,時分協議能更加有效地防止沖突且具有更高的能源利用率,這在節點密度較高的傳感器網絡應用中尤為突出。根據周期性數據采集的特點,協議將時間分為長度以Tp為采樣間隔的各個傳輸周期,在每個傳輸周期內再分割為以Tl為間隔的n個時隙,如圖4所示。

         時鐘同步及時隙分配是時分協議的兩個研究重點,在這里,為敘述方便,假定時鐘同步已經完成,首先對時隙分配進行介紹:Sensor-Push協議規定傳感采集節點根據自身的網內ID確定其所擁有的時隙,并在該時隙內進行采樣數據傳輸。例如,網內ID為2的節點將在時隙2內發送采樣數據。需要說明的是,為保證節點分配的時隙不重疊,實現中應設定單周期內時隙數目n≥子網內的所允許的最大節點數目。
         由于數據流主要從傳感采集節點發送至網關節點,因此協議中并未給網關節點分配時隙。由于網關節點供電狀態較好且對能源利用率要求相對較低,為簡化實現,網關節點將一直處于接收狀態以接收任何可能的數據包。與網關節點不同,傳感采集節點將僅在其所擁有的時隙內向網關節點發送包含傳感信息的數據包。為提高數據傳輸的可靠性,傳感采集節點在發送完數據包后還將等待網關節點發回的應答包(ACK數據包)以確定數據的正確接收。在此過程中,傳感節點可設置一定的超時時間Tack,如在該時間內仍然未接收到應答包,傳感節點可選擇進行重發直至到達最大重發上限Nretry。應答包是網關節點向傳感采集節點發送的主要數據包,它除了進行數據包確認外,另一個重要功能就是嵌入網關節點需要發送給傳感采集節點的信息。
        實現時鐘同步的核心在于確保網關節點能夠周期性地向傳感采集節點廣播參考時鐘。在Sensor-Push協議中,將時間戳嵌入應答包中,傳感節點在確定傳感數據被正確接收的同時,能夠獲得網關節點發來的參考時鐘信息。在獲得參考時鐘后,傳感節點可采用一定的同步算法[2-4]進行時鐘調整,從而實現與參考時鐘的同步。同步算法的選擇可根據應用所要求的同步精度以及節點處理能力而定。若傳感網絡應用本身對采樣時間精度沒有特殊要求,那么協議的時鐘同步的精度無需太高,僅需保證能夠正常運行該時分協議即可,因而建議采用最簡單的延時估計TTP算法[2]以降低實現的復雜度。
         應答包除了嵌入時鐘信息外,甚至還可以嵌入用戶發送給網絡的控制命令及動態參數等,如網絡的采樣周期Tp、時隙寬度Tl等。因此,用戶可以在遠程直接對網絡參數進行調整和優化,從而具有更強的靈活度和可擴展性。時隙寬度Tl的最小值受到時鐘精度、采樣數據包和應答包的傳輸時間的限制,一般要求Tl大于正常情況下的時鐘最大誤差與Nretry個采樣數據包以及應答包的傳輸時間之和。
        Sensor-Push的時分機制有效地防止了節點間數據傳輸的沖突,消除了由于沖撞而導致的數據丟失或重發,因此通常情況下,傳感采集節點僅需在每個采樣周期進行一次傳感數據采集、一次傳感數據包發送以及一次應答包的接收即可,而在其余時間內均可處于能耗極低的睡眠模式,具有低功耗的特性。為進一步消除由于信道環境變化所導致的少量丟包,Sensor-Push協議使用了重發機制,因而能夠具有更高的可靠性。
        3 應用實例的設計參數及實現
         本系統的實例應用環境為某林園內1 000 m2范圍內的溫濕度監測,采樣間隔為30 min,最大支持的傳感采集節點數目為32,采樣數據需傳輸至位于1 km外的遠端服務器。在系統設計中,使用了TI公司的CC1110芯片,將傳輸頻點定為433 MHz,采用1.2 Kb/s Machester編碼及GFSK調制以獲得最遠的傳輸距離及最低的誤碼率。在本應用中,由于監測范圍不大,所有節點均可與網關節點直接通信,因而網絡中僅存在一個子網。網關節點通過串口轉以太網模塊連接無線網橋與1 km外的另一個無線網橋進行直接通信。在Sensor-Push協議實現上,將采樣周期Tp設定為30 min、時隙寬度Tl設定為5 s、超時時間為500 ms、最大重傳次數Nretry為3、傳感信息的數據包為15 B、應答包亦為15 B。應用中采樣的溫濕度傳感器需要開啟1 s后才能獲得準確的數據,因而數據采集將持續1 s時間。
         在上述條件下,傳感采集節點的平均消耗電流Iavg約為15 μA,其計算如下:
         Iavg=(5 mA×1 s+33 mA×0.1 s+20 mA×0.1 s)/30×60 s+10 μA=15 μA
        其中,5 mA為數據采集狀態下的系統所消耗的電流;1 s為節點處于數據采集狀態下的時間;33 mA為節點發送傳感數據包時的工作電流;0.1 s為數據包的發送時間或應答包的接收時間;20 mA為節點接收應答包時的工作電流;10 μA為傳感節點處于睡眠狀態下系統消耗電流。根據以上計算,在配備400 mAh鋰電池的情況下,傳感采集節點可持續工作3年。
        參考文獻
        [1] AKYILDIZ I F, SU W, SANKARASUBRAMANIAM Y, et al. A survey on sensor networks[J]. IEEE Communications Magazine, 2002,40(8):102-114.
        [2] ARVIND K. Probabilistic clock synchronization in distributed systems[J]. IEEE Transactions on Parallel and Distributed Systems,1994,5(5):474-487.
        [3] ELSON J, GIROD L, ESTRIN D. Fine-grained network time synchronization using reference broadcasts[A]. Proceedings of Fifth Symposium on Operating Systems Design and Implementation (OSDI0 2002) [C]. 2002: 147-163.
        [4] Su Ping. Delay measurement time synchronization for wireless sensor networks. IRB-TR-03, Intel Research,june 2003.


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 荔波县| 盘锦市| 凌源市| 兴化市| 开阳县| 牟定县| 灵丘县| 北票市| 芜湖县| 长寿区| 札达县| 榆树市| 类乌齐县| 惠州市| 平远县| 华亭县| 桑日县| 株洲县| 烟台市| 北票市| 姚安县| 黄山市| 贵南县| 建阳市| 精河县| 东平县| 新疆| 临西县| 吴堡县| 石楼县| 江川县| 彩票| 闽清县| 都兰县| 融水| 开原市| 河北区| 府谷县| 田东县| 郁南县| 怀化市|