基于關(guān)聯(lián)id的rfid碰撞避免方法
【專利摘要】基于關(guān)聯(lián)ID的RFID碰撞避免方法。RFID技術(shù)是物聯(lián)網(wǎng)感知層需要研究的關(guān)鍵技術(shù)之一,是現(xiàn)實(shí)生活中物體的“身份證”,是實(shí)現(xiàn)物聯(lián)網(wǎng)的核心基礎(chǔ)環(huán)節(jié)。RFID標(biāo)簽以調(diào)制二進(jìn)制脈沖的方式向讀寫器發(fā)送數(shù)據(jù),在以往的RFID標(biāo)簽識(shí)別方法中,都要靠讀寫器發(fā)送識(shí)別命令來主動(dòng)尋找標(biāo)簽,一般每個(gè)標(biāo)簽都會(huì)占用N個(gè)平均識(shí)別次數(shù),N大于1。本發(fā)明提出的基于關(guān)聯(lián)ID的防碰撞新方法,該方法增加標(biāo)簽之間的關(guān)聯(lián)關(guān)系,使標(biāo)簽在一定的觸發(fā)條件下可以主動(dòng)發(fā)送自己的ID。將該方法應(yīng)用于基于多叉搜索樹的確定性防碰撞情況中,可以在單次通信中識(shí)別多個(gè)標(biāo)簽,極大的提高了識(shí)別效率,避免了標(biāo)簽碰撞。
【專利說明】基于關(guān)聯(lián)ID的RFID碰撞避免方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)應(yīng)用與物聯(lián)網(wǎng)結(jié)合的【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]物聯(lián)網(wǎng)要實(shí)現(xiàn)物與物,物與人之間進(jìn)行對(duì)話的交互,物就跟人一樣需要一個(gè)合法的身份,要實(shí)現(xiàn)物理世界物身份的合法化,RFID (即射頻識(shí)別)技術(shù)是關(guān)鍵,其射頻標(biāo)簽具有唯一的電子產(chǎn)品編碼,可作為現(xiàn)實(shí)生活中物體的“身份證”來對(duì)物體進(jìn)行區(qū)分識(shí)別。
[0003]RFID (Radio Frequency Identification),即射頻識(shí)別,是 20 世紀(jì) 90 年代興起的一種非接觸式的自動(dòng)識(shí)別技術(shù),識(shí)別過程無需人工干預(yù),利用射頻信號(hào)通過空間耦合實(shí)現(xiàn)信息的無接觸傳遞,并通過所傳遞信息達(dá)到識(shí)別的目的。一個(gè)完整的RFID系統(tǒng)主要包括以下三部分:標(biāo)簽(Tag),讀寫器(Reader)以及應(yīng)用控制系統(tǒng),應(yīng)用控制系統(tǒng)通常為計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)。讀寫器發(fā)出一定頻率的射頻信號(hào),當(dāng)電子標(biāo)簽進(jìn)入讀寫器工作區(qū)域的磁場(chǎng)時(shí),被讀寫器激活以射頻信號(hào)的形式將自身所攜帶的編碼信息發(fā)送出,讀寫器接收到信息并傳送給計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng),計(jì)算機(jī)系統(tǒng)根據(jù)一定的運(yùn)算規(guī)則判斷該信息的合法性等,根據(jù)所攜帶的信息作出相應(yīng)的判斷和控制,從而完成一次識(shí)別的全過程。
[0004]RFID電子標(biāo)簽(Tag)通常由微小的標(biāo)簽芯片和天線構(gòu)成,具有智能讀寫和加密通信的功能,Tag通常附著在物體上作為物體的標(biāo)識(shí),因?yàn)門ag具有唯一的電子編碼(Electronic Product Code),該編碼可作為識(shí)別該標(biāo)簽的唯一的身份證ID號(hào)。與以往的條形碼相比較,RFID電子標(biāo)簽具有不怕灰塵,潮濕,粉屑,高溫等性質(zhì),不受環(huán)境影響,壽命較長(zhǎng)。
[0005]RFID讀寫器(Reader),是讀取(又是可寫入)標(biāo)簽信息的設(shè)備,一個(gè)典型的讀寫器通常由控制系統(tǒng),高頻模塊(發(fā)送器,接收器),天線,接口等組成,可以設(shè)計(jì)成手持式或者固定式。讀寫器將RFID標(biāo)簽的數(shù)據(jù)讀取或者寫入,并且能夠做到很好的加密。
[0006]RFID系統(tǒng)工作時(shí),讀寫器通過天線發(fā)射一定頻率的射頻信號(hào),當(dāng)無源(或被動(dòng))標(biāo)簽(Passive Tag)進(jìn)入讀寫器工作區(qū)域時(shí)由于產(chǎn)生感應(yīng)電流而被激活,憑借感應(yīng)電流獲得的能量將存儲(chǔ)在標(biāo)簽中的產(chǎn)品信息通過標(biāo)簽內(nèi)置的天線發(fā)送出去,而有源(或主動(dòng))標(biāo)簽(Active Tag),則始終處于激活、主動(dòng)工作狀態(tài),主動(dòng)發(fā)送出某一頻率的射頻信號(hào),讀寫器接收射頻信號(hào),讀取信息并解碼后,將信息送至計(jì)算機(jī)系統(tǒng),計(jì)算機(jī)系統(tǒng)根據(jù)一定的邏輯運(yùn)算判斷該射頻標(biāo)簽的合法性,針對(duì)不同的設(shè)定做出相應(yīng)的處理和控制。
[0007]RFID系統(tǒng)有以下三種基本工作方式:全雙工(Full Duplex)和半雙工(HalfDuplex)系統(tǒng)以及時(shí)序(SEQ)系統(tǒng)。全雙工RFID系統(tǒng)中,電子標(biāo)簽與讀寫器在同一時(shí)刻可以相互傳送信息,半雙工RFID系統(tǒng)電子標(biāo)簽和讀寫器也可雙向傳送信息,但同一時(shí)刻只能一個(gè)方向傳,這兩種工作方式都是讀寫器發(fā)射電磁波,電子標(biāo)簽做出一定回應(yīng)。時(shí)序工作方法則是讀寫器輻射出的電磁場(chǎng)短時(shí)間、周期性的斷開,電子標(biāo)簽識(shí)別這段間隔,利用這些間隔實(shí)現(xiàn)電子標(biāo)簽與讀寫器之間的數(shù)據(jù)傳輸,是一種典型的雷達(dá)工作方式。
[0008]RFID的防碰撞問題主要分為兩類,一類是讀寫器的碰撞,一類是標(biāo)簽的碰撞。所謂標(biāo)簽的碰撞,即讀寫器在工作的時(shí)候,同一時(shí)刻,通常會(huì)有大規(guī)模的標(biāo)簽存在于讀寫器的讀寫作用范圍內(nèi),當(dāng)讀寫器作用范圍內(nèi)有多個(gè)未識(shí)別的標(biāo)簽時(shí),每個(gè)標(biāo)簽都會(huì)響應(yīng)讀寫器的查詢命令,發(fā)送信息給讀寫器,而讀寫器同一時(shí)間只能與一個(gè)標(biāo)簽進(jìn)行實(shí)時(shí)通信,當(dāng)多個(gè)標(biāo)簽同時(shí)向讀寫器發(fā)送命令時(shí),讀寫器無法識(shí)別任何一個(gè)標(biāo)簽,即產(chǎn)生碰撞。
[0009]讀寫器的碰撞主要有三種類型:
(I)頻率的干擾。讀寫器工作時(shí),會(huì)以讀寫器為中心,向外輻射電磁波,當(dāng)兩個(gè)或兩個(gè)以上讀寫器距離太近或者兩個(gè)讀寫器的工作頻率相近時(shí),讀寫器向標(biāo)簽發(fā)射的電磁信號(hào)之間會(huì)相互產(chǎn)生干擾,導(dǎo)致標(biāo)簽無法成功識(shí)別,這種現(xiàn)象稱為讀寫器頻率的干擾。
[0010](2)標(biāo)簽的干擾。當(dāng)標(biāo)簽同時(shí)位于兩個(gè)或兩個(gè)以上讀寫器的作用范圍內(nèi)時(shí),不同的讀寫器都會(huì)向標(biāo)簽發(fā)送讀寫信號(hào),這時(shí)不同的讀寫器發(fā)送的信號(hào)在標(biāo)簽接收時(shí)會(huì)發(fā)生信號(hào)的重疊,導(dǎo)致標(biāo)簽不能正確接收其中一個(gè)讀寫器的讀寫命令,不能發(fā)送出正確的應(yīng)答信號(hào),這時(shí)這個(gè)標(biāo)簽就會(huì)被漏讀,這就是不同的讀寫器對(duì)標(biāo)簽的干擾問題。
[0011](3)隱藏終端的干擾。在實(shí)際的RFID系統(tǒng)中,由于讀寫器與標(biāo)簽之間通信距離的局限性,通常在有限的范圍內(nèi),需要大規(guī)模的部署讀寫器,這都加大了讀寫器的碰撞問題,因而在部署RFID應(yīng)用系統(tǒng)時(shí),讀寫器的碰撞問題也是必須考慮的因素。
[0012]RFID讀寫器與標(biāo)簽之間進(jìn)行的是短距離無線通信,解決其標(biāo)簽之間的碰撞問題主要有基于FDMA,CDMA, SDMA以及TDMA的防碰撞算法,由于RFID標(biāo)簽尤其是無源標(biāo)簽功率和功能的限制,采用FDMA,CDMA,SDMA思想設(shè)計(jì)的防碰撞算法會(huì)使讀寫器的硬件設(shè)計(jì)復(fù)雜,增加成本,因而通常采用的是基于TDMA思想設(shè)計(jì)的防碰撞算法,目前,基于TDMA的標(biāo)簽防碰撞算法大致可分為兩類:一種是基于ALOHA協(xié)議的隨機(jī)算法,另一種是基于搜索樹的確定算法?;贏LOHA協(xié)議的隨機(jī)算法主要有三大類=ALOHA算法,幀時(shí)隙ALOHA算法,動(dòng)態(tài)幀時(shí)隙ALOHA算法;基于搜索樹的確定算法主要有二進(jìn)制算法,詢問樹算法,隨機(jī)樹生成算法等。
[0013]基于ALOHA類的算法會(huì)產(chǎn)生標(biāo)簽“餓死”的現(xiàn)象,即在讀寫器識(shí)別范圍內(nèi)有的標(biāo)簽沒有被讀寫器成功識(shí)別,出現(xiàn)漏讀現(xiàn)象,因此基于ALOHA類的算法主要適用于小范圍的標(biāo)簽數(shù)目較少的應(yīng)用場(chǎng)合。而基于搜索樹類的算法是確定性的算法,能夠保證讀寫器作用范圍內(nèi)的全部標(biāo)簽都能夠被全部識(shí)別,但是對(duì)讀寫器的要求較高。
【發(fā)明內(nèi)容】
[0014]本發(fā)明目的是減少標(biāo)簽的碰撞問題,提高系統(tǒng)的識(shí)別效率。本發(fā)明在了解了 RFID關(guān)鍵技術(shù)的基礎(chǔ)上重點(diǎn)研究了 RFID標(biāo)簽的防碰撞算法,提出基于關(guān)聯(lián)ID的RFID碰撞避免新方法,可以應(yīng)用在不同頻段的RFID技術(shù),如物流倉儲(chǔ),圖書管理,軍事管理等各種領(lǐng)域,能夠有效的避免標(biāo)簽碰撞并提聞系統(tǒng)識(shí)別率。
[0015]本發(fā)明提供的基于關(guān)聯(lián)ID的RFID碰撞避免方法,主要包括如下關(guān)鍵步驟:
第1、增加標(biāo)簽之間的關(guān)聯(lián)關(guān)系,即:建立標(biāo)簽之間的某種父、子映射關(guān)系,當(dāng)父標(biāo)簽被查找到時(shí),子標(biāo)簽就會(huì)被觸發(fā)來發(fā)送自己的ID ;
第1.1、讀寫器發(fā)送第一條指令:“GET_IDUNIT”,所有的標(biāo)簽收到指令后要將容Parmn與自身ID相對(duì)比,若相同,則將Iew/所對(duì)應(yīng)的轉(zhuǎn)換為二進(jìn)制脈沖發(fā)送給讀寫器;
第1.2、讀寫器接收標(biāo)簽發(fā)出的脈沖,并將脈沖對(duì)應(yīng)的值分別入棧,入棧順序由大至小,同樣的值只入棧一次;
第1.3、讀寫器將棧頂單元出棧,并加入指令參數(shù)gParam中,參數(shù)level更新為當(dāng)前新的棧頂單元的nlevel值,bconf Iict=O,依次識(shí)別出部分標(biāo)簽;
第2、所有已識(shí)別的標(biāo)簽檢測(cè)是否有父標(biāo)簽,若有,則在其對(duì)應(yīng)的父標(biāo)簽脈沖位上置1,并發(fā)送該二進(jìn)制脈沖,稱該脈沖為子標(biāo)簽識(shí)別脈沖;
第2.1、讀寫器接收到該子標(biāo)簽識(shí)別脈沖后,便能判斷出哪些標(biāo)簽存在子標(biāo)簽,同時(shí)讀寫器將該子標(biāo)簽識(shí)別脈沖發(fā)送給標(biāo)簽,
第2.2、所有子標(biāo)簽判斷本輪有哪些可讀出的子標(biāo)簽,并根據(jù)所有子標(biāo)簽在脈沖序列中的位置,設(shè)置對(duì)應(yīng)的延時(shí)依次來發(fā)送自己的ID ;
第2.3、讀寫器依次接收子標(biāo)簽ID,直到參數(shù)棧為空,所有標(biāo)簽完成識(shí)別。
[0016]假設(shè)現(xiàn)有ID_0至ID_8共9個(gè)標(biāo)簽,則在所介紹的算法中,ID的識(shí)別過程如圖1所
/Jn ο
[0017]圖1中虛線代表了算法的識(shí)別路徑。從圖中不難看出,多叉樹算法中,所有標(biāo)簽都被包含在識(shí)別路徑上,假設(shè)成功識(shí)別完該9個(gè)標(biāo)簽需要的通信次數(shù)力飛
[0018]在多叉樹算法中引入標(biāo)簽之間的關(guān)聯(lián)映射關(guān)系,為保證算法設(shè)計(jì)分析的可靠性,仍然采用圖1中所用到的9個(gè)ID,所有標(biāo)簽的映射關(guān)系采用隨機(jī)方式生成。假設(shè)其中ID的映射關(guān)系以及識(shí)別路徑如圖2所示。
[0019]圖中Fat標(biāo)明了父標(biāo)簽所在位置。如上圖所示,ID_4、ID_5分別以ID_1、ID_2為父標(biāo)簽,在ID_1、ID_2被識(shí)別的同時(shí)也被識(shí)別。因此識(shí)別次數(shù)減少了 I次,識(shí)別路徑也變短了。
[0020]圖2中,父標(biāo)簽與子標(biāo)簽的映射關(guān)系為隨機(jī)映射,從圖2可以看出,父標(biāo)簽ID_7在子標(biāo)簽ID_3之后被識(shí)別,因此,兩標(biāo)簽之間的映射關(guān)系并未起到作用。下面針對(duì)進(jìn)一步優(yōu)化標(biāo)簽之間的映射關(guān)系做討論。
[0021]不難想象,若要將所有的映射關(guān)系盡可能的使用,那么要保證父標(biāo)簽要出現(xiàn)在子標(biāo)簽之前。下面的模擬過程對(duì)映射關(guān)系加以約束,即:要求所有隨機(jī)生成的映射關(guān)系要保證除第一個(gè)標(biāo)簽以外的所有標(biāo)簽的父標(biāo)簽ID都要小于標(biāo)簽本身的ID。選取的標(biāo)簽ID與圖2中完全相同,按上述約束重新規(guī)劃映射關(guān)系,標(biāo)簽的識(shí)別過程如圖3所示。
[0022]ID_3.1D_4.1D_5都能夠被提前識(shí)別到,因此在讀寫器訪問第②號(hào)分支時(shí),所有標(biāo)簽都不會(huì)應(yīng)答,因此相對(duì)于圖1所示的原始多叉樹算法,通信次數(shù)總共減少了 4次,對(duì)比圖2所示的改進(jìn)多叉樹算法,識(shí)別次數(shù)減少了 3次,效率必然會(huì)得到更大的提高。
[0023]本發(fā)明的優(yōu)點(diǎn)和積極效果
本發(fā)明提供的基于關(guān)聯(lián)ID的碰撞避免新方法可有效的解決標(biāo)簽碰撞問題,提聞系統(tǒng)識(shí)別效率。
[0024]將該方法應(yīng)用于基于多叉搜索樹的確定性防碰撞情況中,其好處是單次通信可以同時(shí)識(shí)別多個(gè)標(biāo)簽,極大的提高了識(shí)別效率,避免了標(biāo)簽碰撞;將該方法應(yīng)用于不確定性的ALOHA防碰撞情況中,讀寫器可以依據(jù)脈沖的位置判斷出空時(shí)隙的位置,從而在讀取時(shí)隙時(shí),可以避免由于讀取空時(shí)隙而造成的標(biāo)簽碰撞問題。理論以及實(shí)驗(yàn)表明,該方法不受ID長(zhǎng)度限制,并且具有較高的識(shí)別效率,在標(biāo)簽數(shù)量較少或多標(biāo)簽的情形下,識(shí)別效率均在85%以上,當(dāng)標(biāo)簽數(shù)較多時(shí),效率可超過90%,有效的避免了標(biāo)簽的碰撞問題。[0025]本碰撞避免新方法發(fā)明可應(yīng)用于多個(gè)RFID技術(shù)應(yīng)用領(lǐng)域,例如,物流倉儲(chǔ),商業(yè)零售,工業(yè)制造,服裝行業(yè),醫(yī)療管理,交通管理,食品安全,動(dòng)物識(shí)別,圖書管理,航空管理,軍事管理,煤礦安全等。
[0026]【【專利附圖】
【附圖說明】】
圖1是多叉樹算法中ID的識(shí)別順序。
[0027]圖2是引入映射關(guān)系后的多叉樹算法識(shí)別路徑及映射關(guān)系圖。
[0028]圖3是對(duì)映射關(guān)系填加約束后的識(shí)別路徑及映射關(guān)系圖。
[0029]圖4是多叉樹防碰撞方法讀寫器工作流程圖。
[0030]圖5是多叉樹防碰撞方法標(biāo)簽工作流程圖。
[0031 ] 圖6是標(biāo)簽ID配置圖。
[0032]【【具體實(shí)施方式】】
本發(fā)明設(shè)計(jì)方法中,讀寫器工作流程如圖4所示,標(biāo)簽工作流程如圖5所示。
[0033]所有標(biāo)簽要檢測(cè)識(shí)別到的標(biāo)簽中,是否包含父標(biāo)簽,若有,則在父標(biāo)簽對(duì)應(yīng)的脈沖上置1,并發(fā)送該二進(jìn)制脈沖,稱該脈沖為子標(biāo)簽識(shí)別脈沖。讀寫器接收到該子標(biāo)簽識(shí)別脈沖后,便能判斷出哪些標(biāo)簽存在子標(biāo)簽,同時(shí)讀寫器還要將該子標(biāo)簽識(shí)別脈沖發(fā)送給標(biāo)簽,所有子標(biāo)簽也能夠判斷出本輪有哪些可讀出的子標(biāo)簽,并且根據(jù)所有子標(biāo)簽在脈沖序列中的位置,設(shè)置對(duì)應(yīng)的延時(shí)依次來發(fā)送自己的ID。
[0034]本發(fā)明具體識(shí)別過程:
我們以10個(gè)標(biāo)簽的識(shí)別為例來詳細(xì)說明設(shè)計(jì)算法的識(shí)別過程。假設(shè)標(biāo)簽ZD長(zhǎng)度為16bit,每4bit構(gòu)成一個(gè)UNIT,則共有4個(gè)UNFT,分成4個(gè): O - 3 ,因此流程圖中U值為4,設(shè)有如圖6所示標(biāo)簽ID配置。
[0035](I)讀寫器發(fā)送第一條指令:“GET_IDUNIT”,其中指令參數(shù):Ievd =0, gParam=NULL ;所有的標(biāo)簽收到指令后要將講#.與自身ZD相對(duì)比,其中相當(dāng)于££)的前綴,若相同,則將&胃1所對(duì)就的轉(zhuǎn)換為二進(jìn)制脈沖發(fā)送給讀寫器,本條指令中,因level值為O,即要求/£)發(fā)迭LFL0 , LFL0之前沒有前綴,因此gfkm?為空,所有/£)均返回LVL0。
[0036](2)讀寫器收到的標(biāo)簽回復(fù)結(jié)果全部入棧。
[0037](3)讀寫器將結(jié)果棧的棧頂單元內(nèi)容出棧,加入到指令參數(shù)中,有l(wèi)evel=0+l=l,gParam為當(dāng)前nIDUNITValue值為I,由于level〈M-l=4_l=3,因此下一條指令仍然為:“GET_IDUNIT”,其中指令參數(shù)為:ievd =1,gParam =1 ;所有RFID標(biāo)簽將gPar艦與自身
ID對(duì)比后,只有ID_3有與gf'amm相同,因此/£)將=1所指明的LVL1 =9發(fā)送出來。
[0038](4)讀寫器接收完后,將棧頂單元出棧,把該單元的nIDUNITValue加入到指令參數(shù) gParam 中,有 level=l+l=2, gParam 為 1_9,由于 level〈M-l=4_l=3,因此下一條指令仍然為:“GET_IDUNIT”,其中指令參數(shù)為-Jevd =2,gParam =1_9 ;所有 RFID 標(biāo)簽將
與自身iD對(duì)比后,只有ID_3有與?Pdsra?3相同,因此/£)將=2所指明的LFL2 =12發(fā)送出來。[0039](5)讀寫器接收完后,將棧頂單元出棧,把該單元的nIDUNITValue加入到指令參數(shù)gParam中,有l(wèi)evel=2+l=3, gParam為1_9_12,當(dāng)前Iewi +1后值為3,等于M,即取
RFID中/£)的最后一個(gè)ΜΛ?,即,得到LVL3以后,即可根據(jù)與發(fā)出該指令后仍回復(fù)的數(shù)據(jù)得出完整的標(biāo)簽ZD。指令類型為:“GET_ID”,指令參數(shù)為:=3,gParam=1_9_12 ;所有ID做對(duì)比后ID_3的前綴與gPamw完全相同,因此ID_3返回LVL3,完成了一次ID識(shí)別。
[0040]ID_3成功識(shí)別后,因ID_5中映射的父標(biāo)簽為ID_3,因此,在ID_3發(fā)送完自身ID后,在延時(shí)T結(jié)束后,ID_5被觸發(fā),也發(fā)送其自身ID,完成了標(biāo)簽的“自動(dòng)發(fā)送功能”。ID_5成功識(shí)別。
[0041] 剩余標(biāo)簽的識(shí)別過程與上述過程基本相同,直到完成所有標(biāo)簽的識(shí)別。
【權(quán)利要求】
1.基于關(guān)聯(lián)ID的RFID碰撞避免方法,其特征在于該方法主要包括如下關(guān)鍵步驟: 第1、增加標(biāo)簽之間的關(guān)聯(lián)關(guān)系,即:建立標(biāo)簽之間的某種父、子映射關(guān)系,當(dāng)父標(biāo)簽被查找到時(shí),子標(biāo)簽就會(huì)被觸發(fā)來發(fā)送自己的ID ; 第1.1、讀寫器發(fā)送指令:“GET_IDUNIT”,所有的標(biāo)簽收到指令后要將gParam與自身ID相對(duì)比,若相同,則將所對(duì)應(yīng)的
【文檔編號(hào)】G06K7/00GK103942514SQ201410112553
【公開日】2014年7月23日 申請(qǐng)日期:2014年3月25日 優(yōu)先權(quán)日:2014年3月25日
【發(fā)明者】張德干, 宋孝東, 張曉丹, 梁彥嬪 申請(qǐng)人:天津理工大學(xué)