基于ZigBee的低功耗無線傳感節(jié)點設計與實現(xiàn)
摘要:以CC2430芯片為核心設計一種用于溫濕度測量的無線傳感節(jié)點,為了降低節(jié)點功耗,在ZigBee協(xié)議棧的基礎上進行改進,為傳感節(jié)點設計了空閑、觸發(fā)和主動等3種工作模式,使節(jié)點能夠按照實際需求控制采樣的時機和速率,以減少傳感節(jié)點用于無線通信的能量開銷,從而滿足無線傳感器網絡對節(jié)點低功耗的設計要求,同時根據(jù)已知參數(shù)預測傳感節(jié)點壽命,并通過實驗進行了驗證。
關鍵詞:ZigBee;傳感節(jié)點;低功耗;工作壽命
0 引言
無線傳感器網絡(Wireless Sensor Networks,WSN)是由部署在監(jiān)測區(qū)域內大量廉價微型傳感器節(jié)點組成,以無線通信方式形成的一個多跳自組織網絡系統(tǒng),其目的是協(xié)作地感知、采集和處理網絡覆蓋區(qū)域內感知對象的信息,并發(fā)送給觀察者。無線傳感器網絡有助于人們更好地感知客觀世界,極大擴展現(xiàn)有網絡的功能和人類認識世界的能力,具有廣闊的應用前景。
無線傳感器網絡中的節(jié)點一般采用電池供電,可以使用的電量非常有限,而對于有成千上萬節(jié)點的無線傳感器網絡來說,對電池的更換是非常困難,甚至是不可能的。但是無線傳感器網絡的生存時聞卻要求長達數(shù)月甚至數(shù)年。因此,如何在不影響功能的前提下,盡可能節(jié)約無線傳感器網絡的電池能量成為無線傳感器網絡軟硬件設計中的核心問題,也是當前國內外研究機構關注的焦點。
傳感器節(jié)點由處理器模塊、通信模塊、傳感器模塊和能量供應模塊4部分組成。其中,前3個模塊消耗能量,由于傳感器模塊消耗能量相對較低,目前研究的重點主要集中在處理器模塊和通信模塊上。處理器模塊節(jié)能策略通常有動態(tài)電壓調節(jié)(Dynamic Voltage Scaling,DVS)和動態(tài)功率管理(Dynamic Power Management,DPM)。前者的工作原理是當計算負載較低時,通過降低微處理器的工作電壓和頻率,從而降低處理能力,可以節(jié)約微處理器的能耗;后者是利用當節(jié)點周圍沒有感興趣的事件發(fā)生時,部分模塊處于空閑狀態(tài),把這些組件關掉或調到更低能耗的狀態(tài),以延長節(jié)點壽命。通信模塊消耗能量是最多的,故為其制定有效的節(jié)能策略尤為重要,主要包括控制節(jié)點通信流量,合理安排工作休眠時間以及采用多跳通信方式等。
本文通過對硬件的選擇配置和軟件的靈活設計,采用3種備選工作模式,使節(jié)點能根據(jù)實際情況進行參數(shù)設置,減少節(jié)點用于無線通信的能量開銷,實現(xiàn)無線傳感器網絡節(jié)點的低功耗目標,同時完成相關測試對該設計方案進行驗證。
1 節(jié)點硬件設計
ZigBee技術是一種近距離、低功耗、低數(shù)據(jù)速率、低復雜度的雙向無線通信技術,適用于無線傳感器網絡。目前,多家公司均有自己的主流ZigBee芯片,如表1所示。經綜合比較,該設計選用CC2430芯片,該芯片是Chipcon公司提供的全球首款支持ZigBee協(xié)議的SoC解決方案,它在單個芯片上整合了ZigBee射頻前端、內存和微控制器,最大27 mA的工作流耗及在休眠模式下0.9μA的流耗使之非常適合無線傳感節(jié)點對低功耗的要求。
在此采用深圳金圖旭昂有限公司的TSZ-CC2430開發(fā)系統(tǒng),移植美國密西西比大學的精簡ZigBee協(xié)議棧,以CC2430芯片為核心設計一種用于環(huán)境監(jiān)測的溫濕度傳感節(jié)點,通過軟硬件設計方法實現(xiàn)傳感節(jié)點的低功耗目標。
硬件連接如圖1所示,射頻芯片CC2430集成了處理器模塊和無線通信模塊,大大簡化了射頻電路的設計。
溫濕度傳感器SHT10的工作電壓為2.4~5.5 V,測濕精度為±4.5%RH,25℃時測溫精度為±0.5℃。SHT10采用兩條串行線與處理器進行數(shù)據(jù)通信,串行時鐘線SCK負責兩者通信同步,數(shù)據(jù)線DATA用于數(shù)據(jù)的讀取。DATA在SCK下降沿之后改變狀態(tài),并僅在SCK時鐘上升沿有效。數(shù)據(jù)傳輸期間,在SCK時鐘高電平時,DATA必須保持穩(wěn)定。為避免信號沖突,微處理器應驅動DATA在低電平,故DATA線采用10 kΩ的上拉電阻。
對于供電模塊,最初設計時考慮節(jié)點體積因素,擬采用鈕扣電池。但在后來測試中發(fā)現(xiàn),容量為210 mAh的CR2032型鈕扣鋰電在節(jié)點啟動瞬間,電池電壓立即由3.0V下降到2.4V,難以驅動傳感節(jié)點正常工作。分析原因是CC2430射頻工作時流耗超出電池的帶負載能力,故采用2節(jié)普通7號電池提供3.3V電源。
2 節(jié)點軟件設計
節(jié)點程序主流程如圖2所示,主要包括數(shù)據(jù)采集和無線通信兩個部分。出于傳感節(jié)點低功耗的考慮,軟件設計重點放在工作模式的處理上。
節(jié)點能耗絕大部分消耗在無線通信部分,傳感節(jié)點使用無線方式傳輸1 b到100 m遠所消耗的能量可供執(zhí)行3 000條指令??梢姡绾斡行鬏敂?shù)據(jù),合理安排工作休眠時間對于節(jié)約傳感節(jié)點能耗有著直接影響,這也是軟件設計應重點考慮的問題。
為了實現(xiàn)傳感節(jié)點的低功耗以及更優(yōu)的測量性能,設計時采用工作模式的選擇,通過無線配置傳感節(jié)點的工作參數(shù),使節(jié)點能夠按照實際需要控制采集的時機和速率,從而降低能耗,以延長節(jié)點壽命。節(jié)點工作分空閑模式、觸發(fā)模式、主動模式3種。其中,空閑模式下的節(jié)點大部分時間處于休眠狀態(tài),只是周期性的喚醒檢查有無來自服務器的控制命令,以更好地節(jié)約能耗;觸發(fā)模式下RF關閉,只有當傳感器測量值達到設定門限后才觸發(fā)RF進行無線數(shù)據(jù)收發(fā),同時可以根據(jù)不同的門限選擇相應的采樣率,適用于如森林火災等突發(fā)情況的監(jiān)測和預警;主動模式下傳感節(jié)點按配置的采樣率進行數(shù)據(jù)采集發(fā)送,周期性轉入休眠并自動喚醒。模式選擇及相應參數(shù)配置均來自傳感器網絡服務器。對傳感節(jié)點而言,該項工作是在無線接收過程中完成的。
3 低功耗測試
鑒于功耗測試特點,傳感節(jié)點工作模式設置為主動模式,即節(jié)點周期性地進行采集、發(fā)送、休眠,獲取不同階段的工作參數(shù),依據(jù)一定方法進行壽命預測和驗證。
通過測試獲取節(jié)點工作參數(shù)如表2所示,工作電壓為3.3 V??芍?,節(jié)點工作時流耗大,在休眠狀態(tài)則小得多。因此,為保證在供電電量有限的情況下獲得更長的工作壽命,有必要將節(jié)點設置為間歇式工作模式,即工作休眠周期性交替進行。下式為節(jié)點壽命預測公式:
式中:Td為節(jié)點可工作天數(shù);Qb為可用電池容量;tw為每周期內工作時長;ts為每周期內休眠時長;Iw為工作電流;Is為休眠電流。根據(jù)預潮公式及假定電池可用容量為1 000 mAh,可以預測在不同休眠時長下的工作天數(shù)如表3所示。對特定的傳感節(jié)點,其單周期內數(shù)據(jù)采集、處理、發(fā)送所占用的工作時長是一定的,可變的就是休眠時長,通過控制傳感節(jié)點不同的休眠時長來獲取其相應的工作壽命特性。由表3可知,隨著休眠時長的增加,節(jié)點工作壽命隨之延長,當休眠時長為60s,即1 min進行1次數(shù)據(jù)采集發(fā)送時,傳感器節(jié)點能夠連續(xù)使用約1年時間。
在實際測試過程中,采用孚安特鋰電ER14250H和普通7號南孚堿性電池進行比對實驗,前者電池容量為1 200 mAh,后者無容量標識,但根據(jù)其官方網站測試說明,估計亦在1 200 mAh左右??紤]長時間測試中電池自放電效應,其實際可用容量必定要小些,仍采用1 000 mAh假定值的預測結果進行比較。實驗得到節(jié)點實際可工作天數(shù)如表3所示,測試結果與預測趨勢大體上是一致的,傳感節(jié)點可工作天數(shù)與其在一個工作周期內的休眠時長相關。所以,為延長傳感節(jié)點壽命,有必要根據(jù)實際情況確定節(jié)點的工作休眠時間,在保證網絡穩(wěn)定性、數(shù)據(jù)可靠性的前提下盡量安排更多的休眠時間。另外,在組網測試中,傳感節(jié)點單跳距離約60 m,自組織特性良好,傳感節(jié)點可以選擇較優(yōu)路由入網,服務器對終端傳感節(jié)點的數(shù)據(jù)獲取、監(jiān)測、控制功能均正常。該設計實現(xiàn)的溫濕度傳感節(jié)點如圖3所示,電路由CC2430射頻板和傳感器底板組成,兩者通過12 pin×2接口連接,方便安裝使用。
4 結語
本文介紹了一種基于ZigBee技術的無線傳感器網絡節(jié)點的設計與實現(xiàn),并進行了測試。實驗結果表明,傳感節(jié)點具備低功耗特性,能夠通過無線實施靈活的測量和控制,滿足無線傳感器網絡要求。同時,節(jié)點設計方法有一定參照價值,便于移植和改進,可用于其他參量的測量與控制。誠然,降低功耗可以延長無線傳感器網絡節(jié)點的使用壽命,如果能夠利用諸如光照、風力、震動等外界能量,從而使傳感節(jié)點有效地自我補給,這對于野外部署的無線傳感器網絡將有著積極意義。