《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于RFID的室內(nèi)定位系統(tǒng)設(shè)計
基于RFID的室內(nèi)定位系統(tǒng)設(shè)計
Icbuy
Icbuy
摘要: RFID讀寫器和標(biāo)簽系統(tǒng)均采用低功耗MCU芯片PIC16F877A作為核心控制單元,,以低功耗無線射頻收發(fā)器芯片CC2500為核心配合外圍濾波器和天線等構(gòu)成系統(tǒng)的通信單元,。在讀寫器與標(biāo)簽進(jìn)行數(shù)據(jù)通信的過程中,通過獲取RSSI(ReceivedSignalStrengthIndicator,,接收信號強度指示)信號推測出讀寫器與標(biāo)簽之間的距離,,在獲得來自于多個具有固定位置信息的標(biāo)簽的RSSI信號后,,可以實現(xiàn)對讀寫器的無線定位,。實驗結(jié)果表明,,該系統(tǒng)在室內(nèi)環(huán)境中能夠?qū)崿F(xiàn)較高精度的無線區(qū)域定位。
Abstract:
Key words :
  RFID讀寫器和標(biāo)簽系統(tǒng)均采用低功耗MCU芯片PIC16F877A作為核心控制單元,,以低功耗無線射頻收發(fā)器芯片CC2500為核心配合外圍濾波器和天線等構(gòu)成系統(tǒng)的通信單元,。在讀寫器與標(biāo)簽進(jìn)行數(shù)據(jù)通信的過程中,通過獲取RSSI(ReceivedSignalStrengthIndicator,,接收信號強度指示)信號推測出讀寫器與標(biāo)簽之間的距離,在獲得來自于多個具有固定位置信息的標(biāo)簽的RSSI信號后,,可以實現(xiàn)對讀寫器的無線定位,。實驗結(jié)果表明,該系統(tǒng)在室內(nèi)環(huán)境中能夠?qū)崿F(xiàn)較高精度的無線區(qū)域定位,。

  隨著科技的進(jìn)步和社會經(jīng)濟(jì)的發(fā)展,,人們對定位服務(wù)的要求越來越高,傳統(tǒng)的定位系統(tǒng)已經(jīng)不能滿足室內(nèi)定位的需求,。GPS在戶外環(huán)境的定位中應(yīng)用廣泛,,但是由于混凝土等障礙物對電磁波的阻擋,它在室內(nèi)環(huán)境中是完全失效的,。筆者基于有源RFID技術(shù),,采用PIC系列單片機(jī)PIC16F877A和TI公司的射頻收發(fā)器芯片CC2500,設(shè)計出了一種低成本,、低功耗,,可以適用于室內(nèi)環(huán)境的無線定位系統(tǒng)。

  1總體設(shè)計

  RFID室內(nèi)定位系統(tǒng)由讀寫器和標(biāo)簽組成,。其中讀寫器按照功能劃分可以分為4個模塊,,如圖1所示。分別是控制模塊,、射頻通信模塊,、定位信息顯示模塊,、電源模塊??刂颇K負(fù)責(zé)控制系統(tǒng)的運行,,包括對各種外設(shè)的控制,以及完成定位算法的運行等,。射頻通信模塊負(fù)責(zé)數(shù)據(jù)的收發(fā),,采用ASK調(diào)制方式,實現(xiàn)讀寫器和標(biāo)簽之間的數(shù)據(jù)傳輸,。定位信息顯示模塊主要是顯示定位目標(biāo)的信息,。電源模塊用來給系統(tǒng)的各個單元提供工作電源。另外,,與上位機(jī)連接的讀寫器通過RS-232串口與上位機(jī)進(jìn)行通信,,所以部分讀寫器還帶有串口通信模塊。

圖1讀寫器系統(tǒng)結(jié)構(gòu)

  標(biāo)簽主要由控制模塊,、射頻通信模塊,、電源模塊組成,如圖2所示,。

圖2標(biāo)簽系統(tǒng)結(jié)構(gòu)

  控制模塊中的微控制器通過SPI接口與射頻收發(fā)器通信,,在控制模塊的統(tǒng)一調(diào)度下,讀寫器與標(biāo)簽節(jié)點之間通過無線射頻通信交換信息,。在讀寫器的無線信號覆蓋區(qū)域內(nèi),,標(biāo)簽節(jié)點收到來自讀寫器的廣播信號后會處于激活狀態(tài),處于激活狀態(tài)的標(biāo)簽節(jié)點會將自己的ID號發(fā)送給讀寫器,,然后接收讀寫器的請求命令,,將存儲于節(jié)點中的信息傳送給讀寫器;或者接收讀寫器的寫命令,,將來自讀寫器的信息寫入自己的存儲器中,。

  2系統(tǒng)硬件設(shè)計

  2.1控制器部分

  在系統(tǒng)設(shè)計中,考慮到系統(tǒng)的功耗,、成本及性能等要求,,選擇Microchip公司的PIC16F877A作為系統(tǒng)的微控制器

  PIC16F877A是一款具有RISC結(jié)構(gòu)的16位高性能單片機(jī),,內(nèi)部集成了一個在線調(diào)試器(In-CircuitDebugger),,可以實現(xiàn)在線調(diào)試和在線編程。擁有35條單字指令,,8k×14個字節(jié)的FLASH程序存儲器,,368×8字節(jié)的RAM,8級硬件堆棧,,內(nèi)部看門狗定時器,,低功耗休眠模式,,高達(dá)25mA的吸入/拉出電流,外部具有3個定時器模塊,,擁有10位多通道A/D轉(zhuǎn)換器,,通用同步異步接收/發(fā)送器等功能模塊。它具有功耗低,、驅(qū)動能力強,、外接電路簡潔等特點,同時具有哈佛總線結(jié)構(gòu),、尋址簡單,、指令條數(shù)少等優(yōu)點。

  微控制器模塊主要由PIC16F877A單片機(jī)及其外圍電路組成,。其電路原理圖如圖3所示,。在讀寫器系統(tǒng)在中,PIC16F877A的RB0~RB3及RC7,,RD4~RD7用作向顯示模塊發(fā)送顯示數(shù)據(jù)的通信接口,;OSC1和OSC2擴(kuò)展外部時鐘電路;PIC16F877A單片機(jī)通過SPI接口設(shè)置CC2500的工作參數(shù)并與CC2500交換數(shù)據(jù),。

圖3單片機(jī)外圍電路原理圖

  2.2射頻通信模塊

  考慮到功耗,、接收靈敏度、傳輸速率和芯片成本等因素,,系統(tǒng)采用了TI公司的無線射頻收發(fā)芯片CC2500作為無線通信模塊控制器,。CC2500是TI公司推出的一款低成本、低功耗,、體積小的2.4GHz無線通信頻段的收發(fā)器,,工作頻率波段為2400~2483.5MHz,。RF收發(fā)器集成了一個數(shù)據(jù)傳輸率可達(dá)500kbit/s的高度,,可配置的調(diào)制解調(diào)器和一個64位傳輸/接收FIFO(先進(jìn)先出堆棧)。CC2500的寄存器配置可通過SPI接口控制,。它具有載波監(jiān)聽和休眠模式,,非常適合低功耗應(yīng)用。

  射頻通信模塊主要由CC2500收發(fā)器,、傳輸與接收天線及其外圍濾波,、匹配網(wǎng)絡(luò)組成,其中天線采用了Rainsun公司的貼片天線,,系統(tǒng)電路原理圖如圖4所示,。

圖4CC2500外圍電路原理圖

  CC2500通過4線SPI兼容接口(SI,SO,,SCLK和CSN)與PIC16F877A相連,,這個接口用作寫入和讀取數(shù)據(jù),。SI為數(shù)據(jù)輸入線,SO為數(shù)據(jù)輸出線,,SCLK為時鐘線,,CSN為片選信號線,低電平有效,。SPI接口的狀態(tài)控制線還包含一個讀/寫信號控制線,。CC2500的狀態(tài)寄存器里指示一些系統(tǒng)的工作狀態(tài)信息。

  2.3電源模塊

  RFID室內(nèi)定位系統(tǒng)一般主要布置在樓宇,、倉儲建筑物等的內(nèi)部,,有些具有移動性,所以節(jié)點大多數(shù)需要采用電池供電,,在元器件的選取中,,盡量選擇低功耗器件以降低系統(tǒng)功耗,2.4~3.6V的電壓可以使系統(tǒng)中所有的器件和模塊正常工作,。因此,,實際中采用與之電壓匹配的高能紐扣鋰電池作為供電電源。

  2.4電磁兼容與抗干擾設(shè)計

  在設(shè)計2.45GHz的RFID系統(tǒng)時要考慮電磁兼容性(EMC),,以保證讀寫器和標(biāo)簽在設(shè)定的電磁環(huán)境和規(guī)定的安全界限內(nèi)運行,。在系統(tǒng)設(shè)計中,元件的選擇和電路設(shè)計是影響電磁兼容的重要因素,,對于射頻通信模塊需要去耦電容來去除元件狀態(tài)轉(zhuǎn)換引起的噪聲電壓,,并且要注意信號源和信號終端的阻抗匹配。PCB上的導(dǎo)線同樣具有阻抗,、電感,、電容特性,因此在PCB布局和布線也考慮了電磁兼容性等問題,。布局是按照信號流程放置元件,,盡量縮短元件之間的連接,CC2500底部通過多個過孔與地層連接,。濾波電容盡量靠近器件放置,,同時,為了抗電磁干擾,,把數(shù)字電源和模擬電源,、數(shù)字地和模擬地隔離開來。RFID定位系統(tǒng)節(jié)點的布設(shè)位置應(yīng)盡量避開高大障礙物,,以減少對電磁波的阻隔,,影響傳輸性能。

  3系統(tǒng)軟件設(shè)計

  3.1定位算法的選擇

  本RFID定位系統(tǒng)采用LANDMARC定位原理。LANDMARC定位算法適用于有源RFID室內(nèi)定位,。它將具有固定位置信息的標(biāo)簽作為定位系統(tǒng)中的坐標(biāo)參考點,,通過參考點標(biāo)簽與移動讀寫器之間的通信,獲取兩者之間的無線射頻信號強度值RSSI,,繼而獲取讀寫器與多個參考標(biāo)簽之間的RSSI值,,根據(jù)RSSI與通信距離之間的對應(yīng)關(guān)系,獲取讀寫器與多個參考標(biāo)簽之間的距離關(guān)系,。LANDMARC算法可以通過比較讀寫器與參考標(biāo)簽之間RSSI值的大小來獲得離讀寫器距離最近的幾個參考標(biāo)簽,,然后根據(jù)這幾個最鄰近參考標(biāo)簽的坐標(biāo),并結(jié)合它們的權(quán)重,,可計算出讀寫器的坐標(biāo),。

  3.2RFID定位算法

  無線信號的接收信號強度和信號傳輸距離的關(guān)系可以用式(1)來表示,其中RSSI是接收信號強度,,d是收發(fā)節(jié)點之間的距離,,n是信號傳播因子。

  由式(1)中可以看出,,常數(shù)A和n的值決定了接收信號強度和信號傳輸距離的關(guān)系,。射頻參數(shù)A和n用于描述網(wǎng)絡(luò)操作環(huán)境。射頻參數(shù)A被定義為用dBm表示的距發(fā)射器1m時接收到信號平均能量的絕對值,。如平均接收能量為-40dBm,,那么參數(shù)A被定為40。射頻參數(shù)n指出了信號能量隨著距收發(fā)器距離增加而衰減的速率,,其數(shù)值的大小取決于無線信號傳播的環(huán)境,。

  RSSI值受周圍環(huán)境的影響較大,具有時變特性,,有時會偏離式(1)的描述,,根據(jù)接收信號強度估計出的距離d就會有較大誤差。通過大量數(shù)據(jù)分析,,采用了-個噪聲模型,,即環(huán)境衰減因素模型,可有效補償環(huán)境影響帶來的誤差,,如式(2)所示,。

  上式中EAF(dBm)為環(huán)境影響因素,,它的值取決于室內(nèi)環(huán)境,,是靠大量的數(shù)據(jù)累積的經(jīng)驗值。EAF(dBm)是一個隨機(jī)變量,,但為了增強實用性,,將其固定為-個值。通過大量比較實驗環(huán)境下測得的RSSI值與理想狀態(tài)下的RSSI值,得到試驗環(huán)境EAF(dBm)大概為11dBm,,A取值45,,n取值3.5。

  在采集到RSSI值后,,依據(jù)式(2)就可以得到讀寫器到標(biāo)簽的距離,,通過LANDMARC三邊測量定位算法就可以定位出讀寫器的位置。如圖5所示,。

圖5三邊測量定位示意圖

  假設(shè)標(biāo)簽1的坐標(biāo)為p1(x1,,y1),標(biāo)簽2的坐標(biāo)為p2(x2,,y2),,標(biāo)簽3的坐標(biāo)為p3(x3,y3),,讀寫器坐標(biāo)為p(x,,y)。則讀寫器坐標(biāo)計算公式為:

  由式(2)可以計算出讀寫器的坐標(biāo)位置為:

  3.3RFID定位系統(tǒng)的工作流程

  定位算法以MPLABIDE7.4為開發(fā)平臺,,采用C語言編寫,,經(jīng)過編譯、連接后生成機(jī)器代碼,,下載到讀寫器程序存儲器中,。RFID定位系統(tǒng)軟件流程圖如圖6所示。

圖6定位系統(tǒng)流程圖

  4結(jié)束語,。

  筆者介紹了一種基于PIC16F877A和CC2500的有源RFID讀寫器和標(biāo)簽的硬件系統(tǒng)設(shè)計及室內(nèi)RFID定位方法,,對讀寫器和標(biāo)簽系統(tǒng)的各個模塊及運行于讀寫器中的定位算法及其工作流程進(jìn)行了詳細(xì)介紹。該有源RFID定位系統(tǒng)在小規(guī)模的室內(nèi)實驗中表現(xiàn)出較好的定位精度,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。