《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > 基于nRF24L01的超低功耗無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)

基于nRF24L01的超低功耗無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)

2009-01-06
作者:曾 勇,楊 濤,馮月暉

??? 摘 要: 基于低功耗nRF24L01無(wú)線收發(fā)器和MSP430F449單片機(jī),采用短時(shí)突發(fā)式無(wú)線發(fā)射技術(shù)和低功耗休眠機(jī)制,設(shè)計(jì)一種超低功耗傳感器節(jié)點(diǎn)。測(cè)量結(jié)果表明,在電源電壓為3.3V、平均數(shù)據(jù)率為1kb/s、發(fā)送功率為0dBmW、傳輸距離為10m、誤幀率為0.12%時(shí),本系統(tǒng)平均功耗約42μW,可以應(yīng)用于光照、振動(dòng)、熱和氣流等環(huán)境能量供電的無(wú)線傳感器網(wǎng)絡(luò)。
??? 關(guān)鍵詞: 無(wú)線傳感器網(wǎng)絡(luò);低功耗;nRF24L01;MSP430F449

?

??? 無(wú)線傳感器網(wǎng)絡(luò)作為信息技術(shù)領(lǐng)域的一項(xiàng)新技術(shù),在軍事監(jiān)控、地震與氣候預(yù)測(cè)、數(shù)字農(nóng)業(yè)、醫(yī)療監(jiān)控等領(lǐng)域得到廣泛應(yīng)用[1]。其中加州大學(xué)伯克利分校研制的MOTE[2]傳感器節(jié)點(diǎn),如MICA2、MICAZ、TELOS等,是無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的典型結(jié)構(gòu)。無(wú)線傳感節(jié)點(diǎn)一般采用電池供電,對(duì)于節(jié)點(diǎn)數(shù)目龐大的傳感器網(wǎng)絡(luò),電池更換非常困難,所以降低節(jié)點(diǎn)功耗可以延長(zhǎng)節(jié)點(diǎn)的壽命。
??? 在保證整個(gè)無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)性能的前提下,設(shè)計(jì)一種超低功耗的無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn),采用超低功耗短時(shí)突發(fā)式無(wú)線發(fā)射技術(shù)、低功耗休眠機(jī)制等,使節(jié)點(diǎn)功耗最小,一方面可以延長(zhǎng)電池的使用壽命,另一方面還可以采用光照、振動(dòng)、熱和氣流等環(huán)境能量供電。
1 傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的體系結(jié)構(gòu)
??? 傳感器網(wǎng)絡(luò)節(jié)點(diǎn),一般由數(shù)據(jù)采集(由傳感器和模數(shù)轉(zhuǎn)換功能模塊組成)、數(shù)據(jù)處理(由嵌入式系統(tǒng)構(gòu)成,包括處理器、存儲(chǔ)器、嵌入式操作系統(tǒng)等)、數(shù)據(jù)傳輸(由無(wú)線通信模塊組成)和電源四部分組成。本系統(tǒng)中,信息處理和控制單元采用內(nèi)置A/D轉(zhuǎn)換器的超低功耗微控制器MSP430F449;數(shù)據(jù)傳輸模塊采用超低功耗的nRF24L01射頻收發(fā)模塊;數(shù)據(jù)采集模塊采用低功耗數(shù)字式溫濕度傳感器SHT11,可根據(jù)被監(jiān)測(cè)的物理信號(hào)要求選擇其他類型的低功耗傳感器。
2 無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)低功耗設(shè)計(jì)
2.1 微處理器模塊

??? 基于CMOS工藝的微處理器的功耗基本滿足:
??? P=CV2f????????????????????????????????????????????? (1)
其中,C為系統(tǒng)的負(fù)載電容,V為電源電壓,f為系統(tǒng)的工作頻率。系統(tǒng)的負(fù)載電容一般是不變的,所以在不影響系統(tǒng)工作性能的情況下,選用較低的工作電壓和工作頻率可以有效降低系統(tǒng)的功耗。
??? 本設(shè)計(jì)選用了TI公司推出的一款16位超低功耗單片機(jī)MSP430F449[3],其工作電壓范圍為1.8V~3.6V,并且采用三套獨(dú)立的時(shí)鐘源,包括高速的主時(shí)鐘、低頻時(shí)鐘(如32.768kHz)以及DCO片內(nèi)時(shí)鐘,可在滿足功能需要的情況下按一定比例降低MCU主時(shí)鐘頻率,以降低功耗。
??? 如圖1所示,MSP430F449具有五種節(jié)能模式:LPM0、LPM1、LPM2、LPM3和LPM4,為其功耗管理提供了極好的性能保證[4]。系統(tǒng)復(fù)位時(shí),MSP430F449先進(jìn)入AM(Active Mode)模式,然后可經(jīng)AM模式轉(zhuǎn)入任何一種低功耗模式,并通過(guò)中斷方式使CPU退出低功耗模式,返回AM模式。MSP430F449可以在整個(gè)過(guò)程中長(zhǎng)時(shí)間保持睡眠狀態(tài),只有產(chǎn)生中斷時(shí)才激活,中斷響應(yīng)時(shí)間不超過(guò)6μs,可以在突發(fā)模式下快速處理中斷事件。

?


??? 除MSP430F449本身的功耗外,所有從電源到地的回路都會(huì)有功率損耗。MSP430F449必需的外圍電路包括復(fù)位電路、JTAG仿真口、電源濾波電路以及無(wú)源晶振,其中復(fù)位電路直接與電源連接,會(huì)有幾微瓦的功耗。因MSP430F449內(nèi)部采用CMOS電路,I/O口懸空可能產(chǎn)生狀態(tài)翻轉(zhuǎn),造成功率損耗,所以最好把閑置的I/O口上拉到電源。
2.2 數(shù)據(jù)傳輸模塊
??? 數(shù)據(jù)傳輸模塊負(fù)責(zé)與其他節(jié)點(diǎn)進(jìn)行無(wú)線通信,交換控制消息和收發(fā)采集數(shù)據(jù)。無(wú)線通信消耗的能量占了整個(gè)無(wú)線傳感器網(wǎng)絡(luò)能耗的絕大部分,因此對(duì)這一模塊的選取和設(shè)計(jì)事關(guān)低功耗設(shè)計(jì)的全局。除了考慮功耗因素外,還應(yīng)兼顧數(shù)據(jù)傳輸模塊的靈敏度、誤幀率以及傳輸距離等綜合性能。
??? 本設(shè)計(jì)選用NORDIC公司近期推出的融合了高速、低功耗、低成本的2Mb/s工業(yè)級(jí)嵌入式2.4GHz無(wú)線收發(fā)芯片nRF24L01[5],它具有增強(qiáng)型的ShockBurst功能,集成了雙向通信所需要的鏈路層,這通常需要一個(gè)高速的MCU和較大的RAM。
??? nRF24L01有五種工作模式:RX、TX、StandbyⅡ、StandbyⅠ、PowerDown模式,在3V電壓下五種工作模式的工作電流情況如表1所示。其中PowerDown模式的工作電流最小,僅900nA,因此應(yīng)盡量在PowerDown模式下工作,當(dāng)需要傳輸數(shù)據(jù)時(shí)才轉(zhuǎn)入TX或RX模式。在各種模式間轉(zhuǎn)換過(guò)程也會(huì)產(chǎn)生功耗,模式間切換的延時(shí)主要由晶振起振的穩(wěn)定時(shí)間決定,選擇起振快、負(fù)載電容小的晶振可以減小延時(shí)。nRF24L01與MCU進(jìn)行數(shù)據(jù)傳輸?shù)臅r(shí)間,也是需要考慮的。數(shù)據(jù)傳輸率低會(huì)使數(shù)據(jù)傳輸模塊功耗升高,nRF24L0內(nèi)置高速的SPI口(速率高達(dá)8Mb/s),很好地解決了nRF24L01與MCU數(shù)據(jù)傳輸率問(wèn)題。

?


?? ?nRF24L01的控制流程如圖2所示。采用低功耗的工作模式完成nRF24L01所必需的工作步驟,去掉不必要的輔助功能,例如自動(dòng)應(yīng)答和自動(dòng)重發(fā)等。nRF24L01具有自動(dòng)應(yīng)答和自動(dòng)重發(fā)功能,使數(shù)據(jù)傳輸模塊的功耗大大增加,采用W_TX_PAYLOAD_NOACK指令使發(fā)送的數(shù)據(jù)包不帶應(yīng)答信息,去除了自動(dòng)應(yīng)答和自動(dòng)重發(fā)功能。

?


??? nRF24L01采用鞭形PCB天線,天線的頻率和阻抗必須與射頻芯片匹配,以獲取最大的傳輸功率,減少無(wú)效的功率損耗。通常情況下,天線阻抗與射頻芯片不匹配,因此在nRF24L01的外圍電路接入了的L1、L2、L3、C7和C10等電容和電感,作為匹配網(wǎng)絡(luò),并抑制高頻噪聲,如圖3所示。

?


2.3 傳感器模塊
??? 采用低功耗的數(shù)字式溫濕度傳感器SHT11,完成傳感器節(jié)點(diǎn)的數(shù)據(jù)采集工作,在測(cè)量和傳輸完成后,SHT11自動(dòng)轉(zhuǎn)入休眠模式,等待下次命令的開(kāi)始,這樣可以降低傳感器模塊的功耗。SHT11是瑞士Sensirion公司推出的一種高度集成的溫濕度傳感器,將溫濕度傳感器、信號(hào)放大調(diào)理、A/D轉(zhuǎn)換、I2C總線接口全部集成在一塊芯片上,具有極高的可靠性與長(zhǎng)期穩(wěn)定性。片內(nèi)裝載的校準(zhǔn)系數(shù)可保證互換性;電流極低,休眠時(shí)為3μA,平均為28μA。
2.4 軟件設(shè)計(jì)
??? 本設(shè)計(jì)采用低功耗的軟件設(shè)計(jì)方法:優(yōu)化系統(tǒng)時(shí)鐘、優(yōu)化工作時(shí)序和精簡(jiǎn)冗余指令等,實(shí)現(xiàn)了節(jié)點(diǎn)的低功耗。優(yōu)化系統(tǒng)時(shí)鐘,采用輔助時(shí)鐘ACLK(32768Hz)作為MCU休眠(LPM3模式)的時(shí)鐘源,將ACLK倍頻至1MHz作為MCU喚醒后的系統(tǒng)時(shí)鐘;優(yōu)化工作時(shí)序,nRF24L01的TX/RX模式的功耗遠(yuǎn)大于MSP430F449的AM模式,基于nRF24L01掉電讀寫(xiě)控制寄存器的功能,采用nRF24L01先睡眠后喚醒的工作時(shí)序,可以使節(jié)點(diǎn)的功耗進(jìn)一步降低;精簡(jiǎn)冗余指令,簡(jiǎn)化中斷服務(wù)程序,中斷服務(wù)程序僅完成MSP430F449退出睡眠的任務(wù)。
??? 傳感器節(jié)點(diǎn)的主程序流程圖如圖4所示。首先,初始化MSP430F449的時(shí)鐘、定時(shí)器和SPI口等,采用定時(shí)中斷方法實(shí)現(xiàn)節(jié)點(diǎn)按一定的周期完成數(shù)據(jù)的采集和發(fā)送,在休眠狀態(tài)下實(shí)現(xiàn)定時(shí)器定時(shí)Ts=0.2s;在nRF24L01的 PowerDown模式下,初始化速率、發(fā)射功率、頻段、地址和校驗(yàn)等配置,完成后MCU打開(kāi)全局中斷;MCU通過(guò)SPI口把有效數(shù)據(jù)(設(shè)為16B)寫(xiě)入nRF24L01的TX_FIFO緩存。MCU的SPI速率由于受到系統(tǒng)時(shí)鐘頻率的限制僅為500kb/s,裝載數(shù)據(jù)的通信時(shí)延TUL=(16B×8)/500kb/s=0.256ms;PWR_UP=1,且MCU控制引腳CE置高大于10μs后,經(jīng)130μs的晶振穩(wěn)定時(shí)間,nRF24L01進(jìn)入TX模式開(kāi)始發(fā)送數(shù)據(jù)幀(幀格式如圖5所示);控制位TX_DS置位,引腳IRQ產(chǎn)生中斷信號(hào),完成一次數(shù)據(jù)發(fā)送,此時(shí)應(yīng)立即使nRF24L01進(jìn)入PowerDown,以節(jié)省能量。

?

?


??? 傳感器節(jié)點(diǎn)工作時(shí)序如圖6所示。其中TAIFG為定時(shí)中斷寄存器,Ts為定時(shí)時(shí)間,TUL為nRF24L01裝載數(shù)據(jù)的時(shí)間,TOA為數(shù)據(jù)幀在空中的傳輸時(shí)間,TIRQ為nRF24L01的中斷響應(yīng)時(shí)間。

?


3 性能測(cè)試
3.1 節(jié)點(diǎn)功耗測(cè)試

?? ?節(jié)點(diǎn)的總功耗可根據(jù)總電流乘以電源電壓計(jì)算,總電流又可通過(guò)串入采樣電阻實(shí)現(xiàn)電流/電壓轉(zhuǎn)換來(lái)測(cè)量。電阻大小的選取原則為:引入的壓降可忽略,產(chǎn)生的電壓易于測(cè)量。本設(shè)計(jì)中采樣電阻取精度為1‰、阻值為1Ω的電阻。
??? 節(jié)點(diǎn)工作電壓為3.3V、工作周期為0.2s、數(shù)據(jù)幀長(zhǎng)度為25B、發(fā)送速率為2Mb/s、發(fā)射功率為0dBm的情況下,采用泰克公司的TDS1012B數(shù)字存儲(chǔ)示波器測(cè)得的采樣電阻的電壓波形如圖7所示,此時(shí)節(jié)點(diǎn)的平均數(shù)據(jù)率為1kb/s。
??? 圖7(a)為傳感器節(jié)點(diǎn)連續(xù)工作的脈沖波形,脈沖的幅值約為12mV(即工作電流為12mA),與手冊(cè)上公布的節(jié)點(diǎn)工作在TX模式下的電流11.3mA基本吻合。
??? 圖7(b)為單個(gè)脈沖放大的電壓波形。第一階段,節(jié)點(diǎn)被喚醒,MCU晶振開(kāi)始起振到完成數(shù)據(jù)幀組裝約300μs,工作電流約為1mA;第二階段節(jié)點(diǎn)進(jìn)入TX模式準(zhǔn)備發(fā)送約130μs,為射頻晶振的穩(wěn)定時(shí)間,這個(gè)階段的平均工作電流約為8mA;第三階段,節(jié)點(diǎn)發(fā)送數(shù)據(jù)約100μs,此時(shí),工作電流約為12mA;最后節(jié)點(diǎn)進(jìn)入睡眠。

?


??? 由圖7所測(cè)試的實(shí)際波形,可以計(jì)算得出節(jié)點(diǎn)的平均功耗約為:
???
3.2 誤幀率測(cè)試
??? 誤幀率是衡量通信線路指標(biāo)的常用參數(shù),是表征接收質(zhì)量的重要參數(shù)。誤幀率的測(cè)試是將發(fā)射機(jī)的數(shù)據(jù)源不斷地發(fā)送到接收端,接收端同步接收該數(shù)據(jù)流后再檢查收到的數(shù)據(jù)流中是否有傳錯(cuò)的數(shù)據(jù)。測(cè)試誤幀率的方法:發(fā)送端每200ms發(fā)出一個(gè)數(shù)據(jù)包(約25B),接收端用一個(gè)“誤幀計(jì)數(shù)器”來(lái)統(tǒng)計(jì)發(fā)錯(cuò)或丟失的數(shù)據(jù)幀數(shù)目。
??? 在室內(nèi)環(huán)境中,當(dāng)發(fā)送速率為2Mb/s、輸出功率為0dB、數(shù)據(jù)幀長(zhǎng)度為25B時(shí),本設(shè)計(jì)節(jié)點(diǎn)誤幀率測(cè)試結(jié)果如表2所示。

?


??? 本系統(tǒng)的綜合性能如表3所示。采用低功耗電路設(shè)計(jì)方法、低功耗器件選取方法和低功耗休眠機(jī)制,實(shí)現(xiàn)了傳感器節(jié)點(diǎn)的低功耗設(shè)計(jì)。對(duì)于使用電池供電無(wú)線傳感器網(wǎng)絡(luò),可以延長(zhǎng)其使用壽命;對(duì)于光照、振動(dòng)、熱和氣流等環(huán)境能量供電的無(wú)線傳感器網(wǎng)絡(luò),實(shí)現(xiàn)其自供電也具有重要意義[5]。

?


參考文獻(xiàn)
[1] AKYILDIZ I F,SU W,CAYIRCI E.Wireless Sensor Networks:A Survey[J].Computer Networks,2002,38(3):393-422.
[2] BERKELEY,POLASTRE J,SZEWCZYK R,et al.The mote revolution low power wireless sensor network[f].http://webs.cs.berkeley.edu/papers.2004.
[3] Texas Instruments.MSP430x43x,MSP430x44x Mixed signal microcontroller[f].www.ti.com,2002/2003.
[4] SEMICONDUCTOR N.Single chip 2.4GHz Transceiver?nRF24L01[f].www.nordicsemi.no,2007,7
[5] PARADISO J A,STARNER T.Energy Scavenging for?Mobile and Wireless Electronics[J].IEEE Pervasive Computing,2005:19-26.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。