如何利用RFID和ZigBee技術(shù)實(shí)現(xiàn)室內(nèi)定位系統(tǒng)?
掃描二維碼
隨時(shí)隨地手機(jī)看文章
隨著物聯(lián)網(wǎng)的研究和無線傳感網(wǎng)絡(luò)技術(shù)迅速發(fā)展,ZigBee技術(shù)作為一種新興的低成本、低功耗、低速率短距離的無線傳感網(wǎng)絡(luò)技術(shù),它是基于IEEE802.15.4標(biāo)準(zhǔn)開發(fā)的無線協(xié)議。IEEE802.15.4負(fù)責(zé)物理層和MAC層,而ZigBee聯(lián)盟負(fù)責(zé)制定網(wǎng)絡(luò)層和應(yīng)用層。利用ZigBee技術(shù)實(shí)現(xiàn)定位具有低成本、低功耗的優(yōu)點(diǎn),且信號(hào)傳輸不受視距的影響,被廣泛的應(yīng)用于環(huán)境監(jiān)測(cè)、工業(yè)現(xiàn)場(chǎng)采集、智能家居和醫(yī)療護(hù)理等領(lǐng)域。
RFID(Radio Frequency IdenTIficaTIon,射頻識(shí)別)是利用射頻信號(hào)通過空間融合(交變磁場(chǎng)或電磁場(chǎng))實(shí)現(xiàn)無接觸信息傳遞并通過所傳遞的信息到達(dá)自動(dòng)識(shí)別目的的技術(shù)。射頻識(shí)別卡的優(yōu)點(diǎn)就在于它的非接觸性,因此它在完成識(shí)別工作時(shí)無須人工干預(yù),適于實(shí)現(xiàn)自動(dòng)化、可識(shí)別高速運(yùn)動(dòng)物體并可同時(shí)識(shí)別多個(gè)射頻卡,操作快捷方便。RFID技術(shù)是一個(gè)嶄新的技術(shù)應(yīng)用領(lǐng)域,它小僅涵蓋了射頻技術(shù),還包含了射頻技術(shù)、密碼學(xué)、通信原理和半導(dǎo)體集成電路技術(shù),是一個(gè)多學(xué)科綜合的新興學(xué)科。因此,對(duì)RFID技術(shù)的認(rèn)識(shí)和研究具有深遠(yuǎn)的理論意義。
目前實(shí)現(xiàn)室內(nèi)定位主要有基于測(cè)距技術(shù)和非測(cè)距技術(shù),基于測(cè)距的定位算法有AOA、TOA、TDOA、RSSI;基于非測(cè)距技術(shù)的定位算法主要有:DV-Hop定位算法、質(zhì)心算法、凸規(guī)劃定位算法等?;跍y(cè)距的定位機(jī)制定位精度相對(duì)較高,在低功率無線設(shè)備組成的高密度網(wǎng)中,由于各設(shè)備之間的同步無法實(shí)現(xiàn),利用AOA、TDOA估計(jì)具體難以實(shí)現(xiàn)。盡管可以通過測(cè)量TOA來估計(jì)距離,但是多徑和噪聲,以及參考時(shí)鐘的不精確性,都將使距離估計(jì)的效果變差;基于非測(cè)距的定位算法無需測(cè)量節(jié)點(diǎn)間的絕地信息和角度信息,是利用網(wǎng)絡(luò)連通性計(jì)算節(jié)點(diǎn)的位置,但是定位精度低。而基于RSSI的距離估計(jì),可以由傳感器節(jié)點(diǎn)自身測(cè)量得到,不需要額外的硬什支持。與單純利用連通信息的算法相比,RSSI增添了額外的有價(jià)值的信息。所以基于RSSI的測(cè)距是無線傳感網(wǎng)絡(luò)較常用的方法。本人通過基于RSSI的測(cè)距技術(shù),采用RFID和ZigBee技術(shù)相融合的室內(nèi)定位系統(tǒng)設(shè)計(jì),有效的提高了室內(nèi)的定位精度,以及實(shí)現(xiàn)了房間級(jí)的定位。
1 定位系統(tǒng)的整體設(shè)計(jì)
本系統(tǒng)的設(shè)計(jì)有5個(gè)部分組成,包括上位機(jī)、網(wǎng)關(guān)、基站、電子標(biāo)簽、參考節(jié)點(diǎn)。上位機(jī)的功能是監(jiān)控和管理整個(gè)系統(tǒng)。定位系統(tǒng)的結(jié)構(gòu)框圖如圖1所示。
網(wǎng)關(guān)的功能是由協(xié)調(diào)器來充當(dāng),它在整個(gè)系統(tǒng)中起著至關(guān)重要的左右,首先它要響應(yīng)上位機(jī)發(fā)出的命令,開啟網(wǎng)絡(luò),等待其他類型的節(jié)點(diǎn)入網(wǎng),其實(shí)還要接收各節(jié)點(diǎn)的上傳的數(shù)據(jù)并傳送給上位機(jī)軟件處理。基站是由ZigBee模塊和RFIDReader模塊組成,它們之間通過RX/TX進(jìn)行數(shù)據(jù)的傳輸,基站的功能是在定位過程中接收上位機(jī)發(fā)送過來的消息,以調(diào)制的方式形成射頻信號(hào),通過天線不斷的向外發(fā)送射頻信號(hào);其中的ZigBee模塊也可以作為參考節(jié)點(diǎn)的作用,能夠?qū)⒆陨淼淖鴺?biāo)信息和RSSI值發(fā)送給盲節(jié)點(diǎn)。電子標(biāo)簽是由ZigBee模塊和RFID Tag模塊組成,它們直接是通過SPI接口連接起來的。其功能是接收基站發(fā)送過來的射頻信號(hào),經(jīng)過解調(diào)和解碼后,將數(shù)據(jù)通過SPI方式傳送給ZigBee模塊,ZigBee模塊冉通過尤線的方式發(fā)送到網(wǎng)關(guān)。ZigBee模塊還有另外一個(gè)作用,就是作為盲節(jié)點(diǎn),可在參考節(jié)點(diǎn)包圍的區(qū)域內(nèi)任意移動(dòng)。它與參考節(jié)點(diǎn)、網(wǎng)關(guān)構(gòu)成一個(gè)定位系統(tǒng)。參考節(jié)點(diǎn)僅只有一個(gè)ZigBee模塊組成,它是一類靜止的、已知自身位置坐標(biāo)信息的節(jié)點(diǎn),其功能是將自身的RSSI值和位置坐標(biāo)信息發(fā)送給盲節(jié)點(diǎn)。
2 定位系統(tǒng)的硬件設(shè)計(jì)
2.1 網(wǎng)關(guān)
網(wǎng)關(guān)的設(shè)計(jì)包括2個(gè)部分,即無線通信模塊和輔助功能模塊。其中無線通信模塊是這個(gè)網(wǎng)關(guān)的核心部分,負(fù)責(zé)跟基站、電子標(biāo)簽以及參考節(jié)點(diǎn)等之間進(jìn)行通信。輔助功能模塊是完成定位串口通信、狀態(tài)指示、LCD的顯示、供電等輔助功能。網(wǎng)關(guān)的結(jié)構(gòu)框圖如圖2所示。
2.2 基站
基站的設(shè)計(jì)包括2個(gè)部分,RFID Reader模塊和ZigBee模塊。其中RFID Reader模塊主要是由PIC16F887的微控制器和匹配電路組成。RFID Reader模塊和ZigBee模塊兩者之間通過RX/TX進(jìn)行數(shù)據(jù)傳輸。基站的結(jié)構(gòu)框圖如圖3所示。
上位機(jī)發(fā)送命令,網(wǎng)關(guān)將激勵(lì)器ID等信息無線發(fā)送給基站中的ZigBee模塊,ZigBee模塊通過RX/TX將激勵(lì)器ID等信息發(fā)送給微控制芯片PIC16F887處理,微控制芯片通過輸出PWM信號(hào),產(chǎn)生頻率125 kHz的載波,并將激勵(lì)器ID等信息以O(shè)OK調(diào)制方式調(diào)制在125 kHz載波上形成激勵(lì)信號(hào),其中的數(shù)據(jù)編碼是通過曼徹斯特編碼,然后經(jīng)過驅(qū)動(dòng)器TC4422的功率放大作用,通過天線不斷的向外發(fā)送125 kHz的激勵(lì)信號(hào)。當(dāng)有RFID Tag模塊接近該區(qū)域時(shí)即被喚醒,微擰制器通過控制片選信號(hào)CS,將數(shù)據(jù)通過曼徹斯特碼的形式發(fā)送給RFID Tag模塊。ZigBee模塊既可以與RFID Reader進(jìn)行數(shù)據(jù)傳輸,還可以作為參考節(jié)點(diǎn),將自己的坐標(biāo)信息和RSSI值發(fā)送給電子標(biāo)簽中的盲節(jié)點(diǎn)。
2.3 電子標(biāo)簽
電子標(biāo)簽的設(shè)計(jì)包括RFID Tag模塊和zigBee模塊。其中RFID Tag模塊主要是由AS3933前端模擬芯片和匹配電路組成,ZigBee模塊是由射頻芯片CC2530和匹配電路組成。它們之間通過SPI接口進(jìn)行數(shù)據(jù)傳輸。CC2530通過SPI接口配置AS3933,詳細(xì)的引腳連接如圖4所示。
RFID Tag模塊接收基站發(fā)送過來的125 k的激勵(lì)信號(hào),再通過AS3933芯片對(duì)激勵(lì)信號(hào)解調(diào),并對(duì)曼徹斯特碼進(jìn)行解碼后,通過配置SPI總線的相關(guān)寄存器,當(dāng)WAKE的電平為“1”時(shí),說明有數(shù)據(jù)到來,ZigBee模塊中的CC2530將數(shù)據(jù)從AS3933中的DATA中讀出,并打包后,通過天線將數(shù)據(jù)包無線發(fā)送給網(wǎng)關(guān),最后送到上位機(jī)機(jī)進(jìn)行處理,上位機(jī)根據(jù)激勵(lì)器ID和電子標(biāo)簽ID判斷,可以知道電子標(biāo)簽在某個(gè)激勵(lì)器所在位置,ZigBee模塊既與RFID Tag模塊進(jìn)行數(shù)據(jù)傳輸,還可以作為盲節(jié)點(diǎn),不斷的向參考節(jié)點(diǎn)發(fā)送定位請(qǐng)求,從而,獲取參考節(jié)點(diǎn)的坐標(biāo)信息和RSSI值,再通過調(diào)用定位算法,計(jì)算出自己的坐標(biāo)信息和RSSI值,無線發(fā)送給網(wǎng)關(guān),最后將數(shù)據(jù)發(fā)送給上位機(jī),根據(jù)坐標(biāo)信息可以知道電子標(biāo)簽的位置。通過RFID Tag模塊與ZigBee模塊相互配合,能夠?qū)崿F(xiàn)更精確的區(qū)域定位和房間級(jí)定位。
2.4 參考節(jié)點(diǎn)
在該設(shè)計(jì)中,有單獨(dú)的參考節(jié)點(diǎn)模塊以及基站上的ZigBee模塊也可以作為參考節(jié)點(diǎn)。參考節(jié)點(diǎn)的設(shè)計(jì)包括2個(gè)部分,分別為無線通信模塊和輔助功能模塊。參考節(jié)點(diǎn)中的尢線通信模塊接收網(wǎng)關(guān)發(fā)送過來的參數(shù)配置:收集盲節(jié)點(diǎn)通信時(shí)的RSSI值,并計(jì)算其平均值;能夠發(fā)送自身的坐標(biāo)信息和RSSI的平均值。輔助功能模塊包含3個(gè)部分,分別是指示模塊、按鍵模塊、供電模塊。指示模塊是完成定位狀態(tài)的指示;按鍵模塊是加入和綁定網(wǎng)絡(luò);供電模塊是負(fù)責(zé)對(duì)整個(gè)參考節(jié)點(diǎn)的供電。參考節(jié)點(diǎn)的結(jié)構(gòu)框圖如圖5所示。
3 定位系統(tǒng)的定位流程
定位系統(tǒng)的基本思想就是系統(tǒng)對(duì)網(wǎng)絡(luò)內(nèi)的參考節(jié)點(diǎn)和盲節(jié)點(diǎn)節(jié)點(diǎn)進(jìn)行參數(shù)配置之后,盲節(jié)點(diǎn)等待網(wǎng)關(guān)發(fā)送定位請(qǐng)求,當(dāng)盲節(jié)點(diǎn)接收到網(wǎng)關(guān)發(fā)送來的定位請(qǐng)求后,就開始發(fā)送一系列的RSSI Blast信息進(jìn)行廣播,參考節(jié)點(diǎn)接收到盲節(jié)點(diǎn)發(fā)送過來的RSSI Blast數(shù)據(jù),并保存其RSSI值。等待盲節(jié)點(diǎn)已配置完成規(guī)定的時(shí)間間隔后,盲節(jié)點(diǎn)向參考節(jié)點(diǎn)發(fā)送XY—RSSI請(qǐng)求廣播,每個(gè)接收到RSSI Blast信息廣播的參考節(jié)點(diǎn)將計(jì)算接收到的RSSI值,并根據(jù)該請(qǐng)求的RSSI值和之前的RSSI Blast的RSSI值計(jì)算出平均值,發(fā)送XY—RSSI響應(yīng)給盲節(jié)點(diǎn),盲節(jié)點(diǎn)接收XY—RSSI響應(yīng)后,參考節(jié)點(diǎn)將向盲節(jié)點(diǎn)發(fā)送自己的坐標(biāo)信息和RSSI值。盲節(jié)點(diǎn)收到這些參數(shù)后,根據(jù)定位算法計(jì)算出自己的坐標(biāo)信息,最后將計(jì)算得到的坐標(biāo)信息發(fā)送給網(wǎng)關(guān),網(wǎng)關(guān)再通過串口將數(shù)據(jù)發(fā)送到PC機(jī)上。定位系統(tǒng)的定位時(shí)序如圖6所示。
4 實(shí)驗(yàn)結(jié)果分析
定位軟件設(shè)計(jì)后,搭建硬件平臺(tái),采用810的實(shí)驗(yàn)室房間進(jìn)行定位。紅色的圓形點(diǎn)代表固定的參考節(jié)點(diǎn)位置,黃色正方形點(diǎn)代表電子標(biāo)簽的實(shí)際位置,粉色的長(zhǎng)方形代表放置在基站,藍(lán)色色三角形代表使用上位機(jī)監(jiān)控軟件監(jiān)測(cè)到的位置。我們?cè)诜块g內(nèi)放置四個(gè)參考節(jié)點(diǎn),坐標(biāo)分別為(0,0)、(0,5)、(5,0)和(5,5),圍成一個(gè)55的區(qū)域,并記錄電子標(biāo)簽的坐標(biāo)位置;定位圖像如圖7(a)所示。保持電子標(biāo)簽點(diǎn)不動(dòng),再增加一個(gè)參考節(jié)點(diǎn),再次記錄坐標(biāo);定位圖像如圖7(b)所示。繼續(xù)保持電子標(biāo)簽不動(dòng),在房間的門口增加一個(gè)基站。最后記錄其坐標(biāo)。定位圖像如圖7(c)所示。
在沒有增加基站的條件下,通過觀察圖7(a)、7(b)的定位圖像,可以發(fā)現(xiàn)隨著參考節(jié)點(diǎn)的增加,上位機(jī)監(jiān)測(cè)到的測(cè)量值越來越接近實(shí)際值,所以在一定的范圍內(nèi),隨著參考節(jié)點(diǎn)的增加會(huì)提高定位的精度。在相同參考節(jié)點(diǎn)下,在房間的門口增加一個(gè)基站,觀察圖7(c)的定位圖像,發(fā)現(xiàn)上位機(jī)監(jiān)測(cè)到的測(cè)量值要比圖7(b)中監(jiān)測(cè)到的測(cè)量值更接近于實(shí)際值。由于基站上既有RFID Reader,還有參考節(jié)點(diǎn)。所以不僅能提高定位精度,而且還能確定電子標(biāo)簽的具體位置。這說明通過RFID與ZigBee兩者很好的結(jié)合,可以很好的提高房間區(qū)域的定位精度,而且實(shí)現(xiàn)了房間級(jí)的定位。
5 結(jié)束語(yǔ)
文中主要從硬件設(shè)計(jì)介紹了一種基于RFID和ZigBee技術(shù)相融合的室內(nèi)定位系統(tǒng)的設(shè)計(jì)方案,對(duì)定位系統(tǒng)的硬件各個(gè)功能模塊進(jìn)行詳細(xì)的介紹,并對(duì)定位系統(tǒng)軟件流程進(jìn)行了分析。通過合理布設(shè)參考節(jié)點(diǎn)和基站,在室內(nèi)環(huán)境中進(jìn)行了實(shí)測(cè),在定位模塊通信范圍內(nèi),通過增加參考節(jié)點(diǎn)的數(shù)量以及增加基站等有效方式,可以有效的提高定位的精度。通過實(shí)驗(yàn)證明,通過RFID和ZigBee技術(shù)相融合的設(shè)計(jì)方案,不僅可以達(dá)到1m之內(nèi)的定位精度,還實(shí)現(xiàn)了室內(nèi)房間級(jí)的定化。該方案的硬件設(shè)備要求低、定位精度高的特點(diǎn),很好地滿足了市場(chǎng)需求。采用基于Zig Bee和RFID的室內(nèi)定位系統(tǒng)的設(shè)計(jì)方案可以很好的應(yīng)用在智能樓字、地下車庫(kù)、醫(yī)療護(hù)理等方面。