作者: 深圳市知恒智能科技有限公司發(fā)表時(shí)間:2019-09-20 18:11:43瀏覽量:3385【小中大】
隨著社會(huì)的發(fā)展,定位技術(shù)越來(lái)越受到關(guān)注?,F(xiàn)有的定位技術(shù)如GPS定位,紅外定位等,考慮到精度,成本,可行性等方面,都有一定的局限性,尤其是在一些屏蔽物遮擋的局域定位的場(chǎng)合。射頻識(shí)別(RFID)定位技術(shù)以其非接觸、高靈敏度和低成本等優(yōu)點(diǎn),在這種場(chǎng)合下成為一種重要技術(shù)選擇,受到人們?cè)絹?lái)越多的關(guān)注。
在多標(biāo)簽定位系統(tǒng)中必然會(huì)出現(xiàn)多個(gè)標(biāo)簽同時(shí)與讀寫器通信產(chǎn)生信號(hào)碰撞的情況。目前RFID多標(biāo)簽防碰撞算法有多種:多址技術(shù)、ALOHA防碰撞算法、二進(jìn)制防碰撞算法等。多址防碰撞算法是以增加系統(tǒng)的復(fù)雜性和提高成本為代價(jià),且有無(wú)法克服的缺陷;ALOHA防碰撞算法有時(shí)會(huì)導(dǎo)致讀寫器出現(xiàn)錯(cuò)誤判斷,對(duì)某個(gè)標(biāo)簽是否在讀寫范圍內(nèi)產(chǎn)生誤判,同時(shí)還存在沖突概率較大的問(wèn)題;簡(jiǎn)單的二進(jìn)制防碰撞算法有時(shí)并不能夠取得很好的避碰效果。文中采用基于序列號(hào)對(duì)時(shí)隙數(shù)運(yùn)算的排序算法,該算法可以克服上述誤判的問(wèn)題,并且易于實(shí)現(xiàn)、效率高、軟件編寫簡(jiǎn)單,可以不受標(biāo)簽數(shù)量的限制,是一種穩(wěn)定可靠、實(shí)用性強(qiáng)的防碰撞算法。RFID定位算法有:LANDMARC、基于信號(hào)達(dá)到角度的定位法(AOA)等,這里采用圓周定位算法,該方法簡(jiǎn)單可靠,易于在線實(shí)施,且具有一定定位精度。
得接收信號(hào)強(qiáng)度指示(RSSI)值,這是對(duì)待定位標(biāo)簽進(jìn)行位置計(jì)算的重要參數(shù)。微控制器PIC16F877A控制CC2500射頻收發(fā)模塊的數(shù)據(jù)發(fā)送與接收。讀寫器網(wǎng)關(guān)節(jié)點(diǎn)可通過(guò)RS232接口與上位機(jī)相連。
讀寫器與標(biāo)簽的控制模塊均采用Microchip公司的8位高性能、低功耗微控制器PIC16F877A作為主控芯片,它在架構(gòu)上采用哈佛總線結(jié)構(gòu),數(shù)據(jù)總線和指令總線分離,便于實(shí)現(xiàn)全部指令的單字節(jié)化,單周期化,從而有利于提高CPU執(zhí)行指令的速度。此外,片上數(shù)據(jù)存貯空間比較大,充足的存儲(chǔ)空間,可以方便通信協(xié)議棧的設(shè)計(jì)與實(shí)現(xiàn)。
射頻收發(fā)器選用CC2500作為控制芯片,CC2500集成了一個(gè)數(shù)據(jù)傳輸可達(dá)500 kbps的高度可配置的調(diào)制解調(diào)器,大大加強(qiáng)了數(shù)據(jù)傳輸?shù)男阅?,同時(shí)通過(guò)開(kāi)啟集成在調(diào)制解調(diào)器上的前向誤差校正選項(xiàng),使性能得到大幅度提升。MCU通過(guò)SPI接口向CC2500發(fā)送操作命令,配置其調(diào)制方式、工作頻率等參數(shù),通過(guò)指令將其配置為接收狀態(tài)、發(fā)送狀態(tài)、空閑狀態(tài)或休眠狀態(tài)。CC2500的引腳SO和SI分別為數(shù)據(jù)傳輸?shù)妮敵龊洼斎胄盘?hào)線,CSN為片選信號(hào)引腳,SCLK為時(shí)鐘信號(hào)引腳。當(dāng)其接收到一個(gè)數(shù)據(jù)或發(fā)送完一個(gè)數(shù)據(jù),都會(huì)通過(guò)引腳GD00和GD02輸出相應(yīng)的狀態(tài)脈沖,MCU據(jù)此來(lái)判斷CC2500的狀態(tài),從而決定對(duì)CC2500的下一步操控。
定位系統(tǒng)涉及多個(gè)標(biāo)簽與讀寫器之間的實(shí)時(shí)通信,需要解決多標(biāo)簽識(shí)別信號(hào)碰撞問(wèn)題?;谛蛄刑?hào)對(duì)時(shí)隙數(shù)運(yùn)算的排序算法具有算法易于實(shí)現(xiàn)、響應(yīng)速度快、執(zhí)行效率高等特點(diǎn),是時(shí)分復(fù)用方法的一種。利用微控制器PIC16F877A通過(guò)SPI接口來(lái)控制CC2500數(shù)據(jù)的發(fā)送時(shí)隙,將標(biāo)簽作為應(yīng)答器,基于序列號(hào)對(duì)時(shí)隙數(shù)運(yùn)算的排序算法的實(shí)現(xiàn)流程如下: