用于定位的低功耗有源RFID標簽設(shè)計方案
該方案在硬件上采用了MSP430F2012($0.9563)單片機和nRF24L01($1.4544)射頻芯片的低功耗組合;軟件上則結(jié)合了RFID定位的特點,有別于一般以識別為主要目的的標簽的設(shè)計方法,并分析了其軟件設(shè)計流程以及簡單的防沖突能力。通過良好匹配的天線,本設(shè)計方案有效讀取距離可達幾十米,足以應(yīng)付一般空間內(nèi)定位的需求。
本文引用地址:http://butianyuan.cn/article/201710/367224.htm1.引言
射頻識別(RFID)技術(shù)是采用無線射頻的方式實現(xiàn)雙向數(shù)據(jù)交換并識別身份,RFID定位正是利用了這一識別特性,利用閱讀器和標簽之間的通信信號強度等參數(shù)進行空間的定位。RFID標簽按供電方式分為有源和無源2種,無源標簽通過捕獲閱讀器發(fā)射的電磁波獲取能量,具有成本低、尺寸小的優(yōu)勢;有源標簽通常采用電池供電,具有通信距離遠、讀取速度快、可靠性好等優(yōu)點,但需要考慮低功耗設(shè)計以增強電池的續(xù)航能力。本文從有源標簽的設(shè)計理念出發(fā),針對小范圍空間RFID定位的需求,根據(jù)低功耗、高效率的原則進行RFID標簽的設(shè)計,并闡述了其硬件組成、軟件流程和防沖突能力。
2.系統(tǒng)硬件設(shè)計
2.1 系統(tǒng)結(jié)構(gòu)
有源標簽在設(shè)計中除了需要考慮低成本、小型化之外,最重要的是要采取低功耗設(shè)計。RFID標簽從整體結(jié)構(gòu)上看,通常包括2個部分:控制端和射頻端,因此在選擇控制芯片和射頻芯片時需要優(yōu)先考慮其低功耗性能。本文在此基礎(chǔ)上選擇了MSP430($2.0250)F2012 控制芯片和nRF24L01射頻芯片;天線則選用了Nordic公司的PCB單端天線;標簽采用3V-500mAh紐扣電池供電。系統(tǒng)工作在2.4GHz 全球ISM頻段。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
2.2 芯片選擇及低功耗設(shè)計
TI推出的MSP430系列單片機是16位Flash型RISC指令集單片機,以超低功耗聞名業(yè)界。MSP430F2012芯片工作電壓僅為1.8~3.6V,掉電工作模式下消耗電流為0.1μA,等待工作模式下消耗電流僅為0.5μA[4]。本設(shè)計中,MSP430F2012被長時間置于等待工作模式,通過中斷喚醒的方式使其短暫進入工作狀態(tài),以節(jié)省電能。MSP430F2012具有3組獨立的時鐘源:
片內(nèi)V L O(超低功耗振蕩器)、片外晶振、DCO(數(shù)字控制振蕩器)。其中,片外時鐘基于外部晶振;DCO由片內(nèi)產(chǎn)生,且頻率可調(diào)。顯然,主系統(tǒng)時鐘頻率的高低決定著系統(tǒng)的功耗,尤其是選擇了高速片外晶振的情況下,因此,MSP430F2012提供了在不同時鐘源間進行切換的功能。
在實際設(shè)計中,通過實時重新配置基礎(chǔ)時鐘控制寄存器以實現(xiàn)主系統(tǒng)時鐘和輔助系統(tǒng)時鐘間的切換,既不失性能,又節(jié)約了能耗。
MSP430F2012具有LPM0~LPM4五種低功耗模式,合理的利用這五種預(yù)設(shè)的模式是降低 MCU功耗的關(guān)鍵,本設(shè)計中,MSP430F2012在上電配置完畢后將直接進入LPM3模式,同時開啟中斷,等待外部中斷信號。此外,由于 MSP430F2012是一款多功能通用單片機,片內(nèi)集成了較多功能模塊,在上電配置時即停止所有不使用的功能模塊也能起到降低系統(tǒng)功耗的目的。
由于R F I D標簽消耗能量的近2 / 3用于無線收發(fā), 因此選擇一款超低功耗的無線收發(fā)芯片就顯得至關(guān)重要。
nRF24L01是Nordic公司開發(fā)的2.4GHz超低功耗單片無線收發(fā)芯片,芯片有125個頻點,可實現(xiàn)點對點和點對多點的無線通信,最大傳輸速率可達2 M b p s,工作電壓為1.9~3.6V.為了凸顯其低功耗性能,芯片預(yù)置了兩種待機模式和一種掉電模式。更值得一提的是nRF24L01的 ShockBurstTM模式及增強型ShockBurstTM模式,S h o c k B u r s t T M模式真正實現(xiàn)了低速進高速出,即M C U將數(shù)據(jù)低速送入nRF24L01片內(nèi)FIFO,卻以1Mbps或2Mbps高速發(fā)射出去。本設(shè)計正是利用了增強型ShockBurstTM模式,使得 MSP430F2012即便在32768Hz低速晶振下也能通過射頻端高速的將數(shù)據(jù)發(fā)射出去,既降低了功耗,又提高了效率,增強了系統(tǒng)防沖突和應(yīng)付移動目標能力。
2.3 電路設(shè)計
本系統(tǒng)主要運用于RFID定位方面,除了簡單的識別外,重點在于閱讀器對標簽信號強度的測量,因此閱讀器與標簽間不會有大數(shù)據(jù)量頻繁的讀寫操作,在電路設(shè)計時可省略片外EEPROM.同時還可以省去穩(wěn)壓電路以節(jié)省靜態(tài)電流消耗。硬件原理圖如圖2所示。
3.系統(tǒng)軟件設(shè)計
系統(tǒng)軟件設(shè)計選用了IAR EmbeddedWorkbench V4.11B平臺下的C語言編程環(huán)境,設(shè)計中綜合考慮了M S P 4 3 0 F 2 0 1 2和nRF24L01芯片的低功耗性能、穩(wěn)定性和程序執(zhí)行效率。
3.1 軟件流程
本系統(tǒng)屬于雙向通信系統(tǒng),標簽在發(fā)送數(shù)據(jù)前處于監(jiān)聽狀態(tài),nRF24L01的接收功能被打開,同時MSP430F2012處于LPM3模式,直至接收到閱讀器廣播的“開始”.
指令,并通過中斷將MSP430F2012喚醒。
MSP430F2012被中斷喚醒后開始判斷指令是否正確,如果正確則進入正常發(fā)送周期,否則返回LPM3模式。
考慮到實時定位的需要,系統(tǒng)不能像一般的RFID標簽?zāi)菢觾H僅進行有限次驗證,本系統(tǒng)采用等間隔持續(xù)發(fā)送的模式,便于閱讀器實時監(jiān)測目標位置,系統(tǒng)設(shè)定的正常發(fā)送周期為500ms,由MSP430F2012的Timer_A定時,500ms定時開始后,標簽ID通過SPI發(fā)送到FIFO,nRF24L01采用了增強型ShockBurstTM模式,發(fā)送失敗則會繼續(xù)重發(fā),標簽ID發(fā)送完畢后,MSP430F2012判斷定時器是否超時,一旦超時則進入下個發(fā)送周期,否則處于等待狀態(tài)直至超時。當閱讀器停止廣播“開始”指令,MSP430F2012重新進入LPM3模式以降低功耗。系統(tǒng)完整流程如圖3所示。
3.2 防沖突設(shè)計
nRF24L01自帶載波檢測功能,在發(fā)送數(shù)據(jù)前先轉(zhuǎn)入接收模式進行監(jiān)聽,確認要傳輸?shù)念l率通道未被占用才發(fā)送數(shù)據(jù),利用此功能可實現(xiàn)簡單的硬件防沖突。
考慮到本系統(tǒng)采用了500ms的統(tǒng)一發(fā)送間隔,在被定位目標眾多的場合有可能發(fā)生識別沖突,因此需要在程序中合理的增加防沖突算法。ALOHA算法主要用于有源標簽,其原理就是,一旦信源發(fā)生數(shù)據(jù)包碰撞,就讓信源隨機延時后再次發(fā)送數(shù)據(jù)??紤]到程序的復(fù)雜性勢必引起處理時間的增加,也會帶來額外的能耗,本系統(tǒng)采用了較為簡單的純ALOHA算法,即在每個500ms計時周期內(nèi)隨機發(fā)送標簽ID,這就需要在程序中插入一個隨機延時,延時時長的選擇通過一個隨機值函數(shù)來實現(xiàn),隨機延時范圍為0~300ms.這種簡單的防沖突算法既簡化了指令,又能大幅降低沖突概率。
另外,nRF24L01傳輸速率為1Mbps或2Mbps,單次發(fā)送一個數(shù)據(jù)包,單個數(shù)據(jù)包最大 32bytes,假設(shè)標簽ID為32bytes,以2Mbps速率發(fā)送一次ID的信號寬度(傳輸時間)約為100~150μs,相對于500ms的整個定時周期而言微乎其微,但仍有可能出現(xiàn)發(fā)送飽和的狀態(tài),這時可以適當?shù)难娱L計時周期以增加信道容量。較快的傳輸速率有助于移動目標的識別和定位,而較短的數(shù)據(jù)長度也能顯著提高標簽基于隨機延時的防沖突能力,因此盡可能將標簽ID的長度限制在32bytes以內(nèi)。
3.3 部分程序代碼
3.3.1 單字節(jié)SPI發(fā)送/接收函數(shù)
3.3.2 根據(jù)命令字讀/寫接收(發(fā)送)數(shù)據(jù)包
4.測試結(jié)果
對于R F I D系統(tǒng)而言,最重要的參數(shù)就是讀取距離[7]和有效讀取率。本次實驗測試設(shè)備為標簽3枚,閱讀器一臺,PC一臺,閱讀器基于MSP430F149($5.2425)和 nRF24L01芯片設(shè)計,并通過RS232($780.5000)串口與PC進行通信。測試中,分別將3枚標簽置于距離閱讀器1 5 m、3 0 m、4 5 m處,便簽I D分別為AABBCCDDFFFFFF01、AABBCCDDFFFFFF02、AABBCCDDFFFFFF03,每枚標簽進行一小時(約7200次)連續(xù)讀取測試。測試界面如圖4所示。
從表1所示測試結(jié)果看,3 0 m以內(nèi)為標簽正常讀取距離,可滿足一般的室內(nèi)應(yīng)用,距離為45m時讀取率則顯著下降。由于天線的設(shè)計對系統(tǒng)性能有較大影響,通過改進標簽的天線以獲取較大輸出功率,改進閱讀器端天線接收靈敏度也能顯著提高系統(tǒng)性能。
5.結(jié)束語
本文對基于MSP430F2012和nRF24L01的有源RFID標簽的設(shè)計進行了詳細的介紹。對2款芯片的低功耗性能進行了分析并提出了自己的低功耗設(shè)計方案;結(jié)合了RFID定位的特點,介紹了有別于一般以識別為主要目的的標簽的設(shè)計方案,分析了其軟件設(shè)計流程;針對一般空間內(nèi)被識別目標眾多且常處于移動狀態(tài)的特點,介紹了系統(tǒng)的防沖突能力。整個方案的設(shè)計體現(xiàn)出了電路簡單,尺寸小,功耗低,通過良好匹配的天線通信距離可達幾十米,如需進行遠距離RFID測量或定位,可在硬件上增加數(shù)字功放電路,通信距離可達500米以上??梢詽M足多種行業(yè)對于一般小范圍空間內(nèi)的定位需求。
評論