專利名稱:電子標(biāo)簽識別方法、射頻識別系統(tǒng)和電子標(biāo)簽的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通訊技術(shù)領(lǐng)域,具體涉及一種電子標(biāo)簽識別方法、射頻識 別系統(tǒng)和電子標(biāo)簽。
背景技術(shù):
RFID (射頻識別)有著十分廣泛的應(yīng)用前景,RFID不但可以替換目前的 條形碼,還可以應(yīng)用于物流倉儲中的倉庫管理、身份識別、交通運(yùn)輸、食品醫(yī) 療、動物管理、門禁防盜以及工業(yè)軍事等多種應(yīng)用場景,而且,RFID可以適用 于環(huán)境條件特別惡劣的應(yīng)用場景。目前,典型的RFID系統(tǒng)一般由兩部分組成,即電子標(biāo)簽(應(yīng)答器,Tag) 和閱讀器(讀寫器,Reader)。電子標(biāo)簽是RFID系統(tǒng)的數(shù)據(jù)載體,每個電子標(biāo) 簽具有唯一的標(biāo)識信息,電子標(biāo)簽可以附著在目標(biāo)對象上,以標(biāo)識目標(biāo)對象。 閱讀器的主要任務(wù)是向電子標(biāo)簽發(fā)射讀取命令信號、接收標(biāo)簽返回的應(yīng)答,并 解碼,然后,將解碼后的信息傳輸至后臺主機(jī),以供后臺主機(jī)進(jìn)行處理。在一個Reader (閱讀器)需要閱讀多個Tag (電子標(biāo)簽)的模式下,由于 Tag是在Reader控制下被動工作、且所有Tag工作在同一頻段,因此,如何避免 Tag識別過程中的數(shù)據(jù)碰撞、并快速識別所有Tag,成為RFID系統(tǒng)的關(guān)鍵技術(shù)。目前,釆用Binary Tree算法來避免數(shù)據(jù)碰撞、并完成Tag識別的具體實(shí)現(xiàn)過 程如附圖l所示。圖l中,步驟l、 Reader發(fā)送初始化命令,接收到初始化命令的Tag進(jìn)入標(biāo)識 信息識別狀態(tài),下述步驟均在Tag處于標(biāo)識信息識別狀態(tài)下執(zhí)行。步驟2、接收到初始化命令的Tag將其內(nèi)部設(shè)置的計數(shù)器counter置零。 步驟3、 counter為零的Tag向Reader應(yīng)答,即向Reader回復(fù)標(biāo)識信息等數(shù)據(jù)。 步驟4、 Reader判斷在一定時間范圍內(nèi)Tag回復(fù)邀:據(jù)的情況,如果判斷出Tag 回復(fù)數(shù)據(jù)發(fā)生碰撞,則表示回復(fù)數(shù)據(jù)的Tag超過l個,到步驟5a;如果判斷出在 一定時間范圍內(nèi)沒有接收到Tag回復(fù)的數(shù)據(jù),則到步驟6;如果判斷出在一定時 間范圍內(nèi)沒有發(fā)生碰撞,即只有一個Tag回復(fù)了數(shù)據(jù),表示識別成功,到步驟7。 步驟5a、 Reader發(fā)送A命令要求counter為O的Tag隨機(jī)產(chǎn)生O和l,到步驟5b。 步驟5b、產(chǎn)生O的Tag將counter置為O,產(chǎn)生l的Tag將counter置為1, counter 不為0的Tag將自己的counter值加1,到步驟3 。步驟6、 Reader發(fā)送B命令,要求所有的Tag的counter值都減l,到步驟3。 需要說明的是,counter值為0時,減l后的counter值依然為零。步驟7 、該Tag由標(biāo)識信息識別狀態(tài)進(jìn)入data exchange (數(shù)據(jù)交換)狀態(tài), 同時執(zhí)行步驟6。重復(fù)上述步驟3至步驟7,直至所有Tag識別完成。 在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題 Reader發(fā)送的A命令和B命令會使大量Tag內(nèi)部的counter反復(fù)進(jìn)行加l、減l 的運(yùn)算,從而使counter的運(yùn)算量很大。由于Tag與Reader之間通過耦合元件實(shí)現(xiàn) 射頻信號的空間耦合,在耦合通道內(nèi),根據(jù)時序關(guān)系來實(shí)現(xiàn)能量傳遞和數(shù)據(jù)交 換,因此,大量的運(yùn)算會造成電子標(biāo)簽消耗巨大的能量。發(fā)明內(nèi)容本發(fā)明實(shí)施方式提供一種電子標(biāo)簽識別方法、射頻識別系統(tǒng)和電子標(biāo)簽, 可降低電子標(biāo)簽中的運(yùn)算量,從而減少了電子標(biāo)簽的能量消耗。 本發(fā)明實(shí)施方式提供的一種電子標(biāo)簽識別方法,包括 在電子標(biāo)簽識別過程中,計數(shù)器的計數(shù)值為0的電子標(biāo)簽向閱讀器回復(fù)數(shù)據(jù);接收到閱讀器發(fā)送的隨機(jī)產(chǎn)生數(shù)據(jù)的命令的電子標(biāo)簽隨機(jī)產(chǎn)生0或1 ,隨機(jī) 產(chǎn)生l的電子標(biāo)簽將其計數(shù)器設(shè)置為大于l的預(yù)定數(shù)值;接收到閱讀器發(fā)送的計數(shù)值更新命令的電子標(biāo)簽將其計數(shù)器的計數(shù)值減1。本發(fā)明實(shí)施方式還4是供一種電子標(biāo)簽識別方法,該方法包括 在電子標(biāo)簽識別過程中,計數(shù)器的計數(shù)值為第一預(yù)定值的電子標(biāo)簽向閱讀 器回復(fù)數(shù)據(jù);接收到閱讀器發(fā)送的隨機(jī)產(chǎn)生數(shù)據(jù)的命令的電子標(biāo)簽隨機(jī)產(chǎn)生數(shù)值,隨機(jī) 產(chǎn)生第二預(yù)定值的電子標(biāo)簽將其計數(shù)器設(shè)置為非第一預(yù)定值且非第二預(yù)定值 的數(shù)值;接收到閱讀器發(fā)送的計數(shù)值更新命令的電子標(biāo)簽根據(jù)預(yù)定步長、向逼近第 一預(yù)定值的方向更新計數(shù)器的計數(shù)值。本發(fā)明實(shí)施方式還提供一種射頻識別系統(tǒng),包括閱讀器和電子標(biāo)簽; 閱讀器,用于接收電子標(biāo)簽回復(fù)的數(shù)據(jù),并判斷是否發(fā)生數(shù)據(jù)碰撞;在判 斷出發(fā)生數(shù)據(jù)碰撞時,發(fā)送隨機(jī)產(chǎn)生數(shù)據(jù)的命令;在判斷出沒有發(fā)生數(shù)據(jù)碰撞、 且存在回復(fù)數(shù)據(jù)時,閱讀器識別回復(fù)數(shù)據(jù)的電子標(biāo)簽,并發(fā)送計數(shù)值更新命令; 在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且不存在回復(fù)數(shù)據(jù)時,發(fā)送所述計數(shù)值更新命令; 所述電子標(biāo)簽中包括計數(shù)器、回復(fù)模塊和設(shè)置計數(shù)值模塊; 回復(fù)模塊,用于在電子標(biāo)簽識別過程中,在其所在電子標(biāo)簽的計數(shù)器的計 數(shù)值為第一預(yù)定值時,向閱讀器回復(fù)數(shù)據(jù);設(shè)置計數(shù)值模塊,用于在其所在的電子標(biāo)簽接收到隨機(jī)產(chǎn)生數(shù)據(jù)的命令、 且隨機(jī)產(chǎn)生數(shù)值后,判斷隨機(jī)產(chǎn)生數(shù)值是否為第二預(yù)定值,如果是,則將其所 在電子標(biāo)簽的計數(shù)器的計數(shù)值設(shè)置為非第一預(yù)定值、非第二預(yù)定值的數(shù)值,否 則,將所述計數(shù)器的計數(shù)值設(shè)置為第一預(yù)定值;計數(shù)器,用于在其所在的電子標(biāo)簽接收到計數(shù)值更新命令后,根據(jù)預(yù)定步 長、向逼近第一預(yù)定值的方向更新計數(shù)值。本發(fā)明實(shí)施方式還提供一種電子標(biāo)簽,所述電子標(biāo)簽包括回復(fù)模塊用于在電子標(biāo)簽識別過程中,在其所在電子標(biāo)簽的計數(shù)器的計 數(shù)值為第一預(yù)定值時,向閱讀器回復(fù)數(shù)據(jù);設(shè)置計數(shù)值模塊用于在其所在的電子標(biāo)簽接收到隨機(jī)產(chǎn)生數(shù)據(jù)的命令、 且隨機(jī)產(chǎn)生數(shù)值后,判斷隨機(jī)產(chǎn)生數(shù)值是否為第二預(yù)定值,如果是,則將其所 在電子標(biāo)簽的計數(shù)器的計數(shù)值設(shè)置為非第一預(yù)定值、非第二預(yù)定值的數(shù)值,否 則,將所述計數(shù)器的計數(shù)值設(shè)置為第一預(yù)定值;計數(shù)器用于在其所在的電子標(biāo)簽接收到計數(shù)值更新命令后,根據(jù)預(yù)定步 長、向逼近第一預(yù)定值的方向更新計數(shù)值。通過上述技術(shù)方案的描述可知,通過將隨機(jī)產(chǎn)生第二預(yù)定值的電子標(biāo)簽的 計數(shù)器設(shè)置為非第一預(yù)定值且非第二預(yù)定值的數(shù)值,避免了電子標(biāo)簽內(nèi)部的計 數(shù)器反復(fù)進(jìn)行加法運(yùn)算、減法運(yùn)算的現(xiàn)象,降低了電子標(biāo)簽中的運(yùn)算量,從而 減少了電子標(biāo)簽的能量消耗。
圖l是現(xiàn)有^^術(shù)中的電子標(biāo)簽識別方法流程示意圖; 圖2是現(xiàn)有技術(shù)中的Tag的counter計數(shù)值變化示意圖; 圖3是本發(fā)明實(shí)施方式的電子標(biāo)簽識別方法流程示意圖; 圖4是本發(fā)明實(shí)施方式的Tag的counter計數(shù)值變化示意圖; 圖5是本發(fā)明實(shí)施方式的射頻識別系統(tǒng)示意圖。
具體實(shí)施方式
在本發(fā)明實(shí)施方式中,計數(shù)器的計數(shù)值為第 一預(yù)定值的電子標(biāo)簽向閱讀器回復(fù)數(shù)據(jù)。例如,當(dāng)?shù)谝活A(yù)定值為o時,計數(shù)器的計數(shù)值為o的電子標(biāo)簽向閱讀 器回復(fù)數(shù)據(jù)。這里的第一預(yù)定值也可以為其它數(shù)值,本發(fā)明實(shí)施方式不限制第 一預(yù)定值的具體取值。閱讀器接收電子標(biāo)簽回復(fù)的數(shù)據(jù),并判斷電子標(biāo)簽回復(fù)凝:據(jù)是否發(fā)生了數(shù) 據(jù)碰撞現(xiàn)象。閱讀器可以采用現(xiàn)有的各種方法來判斷回復(fù)數(shù)據(jù)是否發(fā)生數(shù)據(jù)碰 撞現(xiàn)象。本發(fā)明實(shí)施方式不限制閱讀器判斷回復(fù)數(shù)據(jù)是否發(fā)生數(shù)據(jù)碰撞現(xiàn)象的 具體實(shí)現(xiàn)過程。閱讀器在判斷出發(fā)生數(shù)據(jù)碰撞后,發(fā)送隨機(jī)產(chǎn)生數(shù)據(jù)的命令,例如發(fā)送Fail 命令。接收到閱讀器發(fā)送的隨機(jī)產(chǎn)生數(shù)據(jù)的命令的電子標(biāo)簽根據(jù)該命令隨機(jī)產(chǎn) 生一個數(shù)值。電子標(biāo)簽可以利用其內(nèi)部設(shè)置的隨機(jī)數(shù)發(fā)生器來隨機(jī)產(chǎn)生數(shù)值。電子標(biāo)簽判斷其隨^l產(chǎn)生的數(shù)值是否為第二預(yù)定值,電子標(biāo)簽在判斷出其 隨機(jī)產(chǎn)生的數(shù)值為第二預(yù)定值時,電子標(biāo)簽將其計數(shù)器的計數(shù)值設(shè)置為非第一 預(yù)定值且非第二預(yù)定值的數(shù)值;當(dāng)電子標(biāo)簽將其計數(shù)器的計數(shù)值更新為非第一 預(yù)定值且非第二預(yù)定值的數(shù)值時,電子標(biāo)簽在其計數(shù)器的計數(shù)值更新完成后, 不需要向閱讀器回復(fù)數(shù)據(jù)。舉例來說,設(shè)定第二預(yù)定值為1,如果電子標(biāo)簽隨 機(jī)產(chǎn)生的數(shù)值只有0和1兩種情況、且電子標(biāo)簽在其計數(shù)器的計數(shù)值為0時向 閱讀器回復(fù)數(shù)據(jù),則電子標(biāo)簽在其隨機(jī)產(chǎn)生的數(shù)值為1時,可以將其計數(shù)器的 計數(shù)值設(shè)置為大于1的數(shù)值,例如從2到2n-1之間的任一數(shù)值,其中,n為 大于1的整數(shù)、且n不超過分支樹的分支次數(shù),例如,n可以為分支樹的分支 次數(shù)。這里的從2到2D-1之間的任一數(shù)值包括端值,即包括2和211-1。如果 電子標(biāo)簽將其計數(shù)器的計數(shù)值設(shè)置為大于等于2且小于2n - 1的預(yù)定設(shè)置時, 計數(shù)器的計數(shù)值為大于等于預(yù)定數(shù)值的電子標(biāo)簽將其計數(shù)器的計數(shù)值加1。如 果電子標(biāo)簽隨機(jī)產(chǎn)生的數(shù)值為包括0在內(nèi)的多種情況、且電子標(biāo)簽在其計數(shù)器 的計數(shù)值為0時向閱讀器回復(fù)凝:據(jù),則電子標(biāo)簽在其隨^L產(chǎn)生的數(shù)值為不為0的任一數(shù)值時,電子標(biāo)簽可以將其計數(shù)器的計數(shù)值設(shè)置為大于1的凄t值。這里 的第二預(yù)定值也可以為其它數(shù)值,本發(fā)明實(shí)施方式不限制第二預(yù)定值的具體取值。上述描述中的非第一預(yù)定值且非第二預(yù)定值的數(shù)值、大于l的數(shù)值,可以 是靜態(tài)配置在電子標(biāo)簽中的,也可以是電子標(biāo)簽動態(tài)獲得的。電子標(biāo)簽動態(tài)獲 得的方式例如,閱讀器將非第一預(yù)定值且非第二預(yù)定值的lt值攜帶在隨^L產(chǎn)生 數(shù)據(jù)的命令中,并向電子標(biāo)簽發(fā)送。這樣,電子標(biāo)簽可以從其接收到的隨機(jī)產(chǎn) 生數(shù)據(jù)的命令中獲得該數(shù)值。本發(fā)明實(shí)施方式不限制電子標(biāo)簽獲得非第一預(yù)定 值且非第二預(yù)定值的具體實(shí)現(xiàn)過程。電子標(biāo)簽在判斷出其隨機(jī)產(chǎn)生的數(shù)值為第 一預(yù)定值時,由于此時電子標(biāo)簽 的計數(shù)器的計數(shù)值為第一預(yù)定值,因此,電子標(biāo)簽可以不更新其計數(shù)器的計數(shù) 值,也可以將其計數(shù)器的計數(shù)值重新設(shè)置為第一預(yù)定值。如果電子標(biāo)簽隨機(jī)產(chǎn) 生的數(shù)值為第 一預(yù)定值,則該電子標(biāo)簽需要向閱讀器回復(fù)數(shù)據(jù)。閱讀器在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且接收到電子標(biāo)簽回復(fù)的數(shù)據(jù)時,閱 讀器成功識別回復(fù)數(shù)據(jù)的電子標(biāo)簽,該回復(fù)數(shù)據(jù)的電子標(biāo)簽從標(biāo)識識別狀態(tài)進(jìn)入數(shù)據(jù)交換狀態(tài),同時,閱讀器發(fā)送計數(shù)值更新命令,例如發(fā)送success命令。 接收到計數(shù)值更新命令的電子標(biāo)簽更新其計數(shù)器的計數(shù)值,即電子標(biāo)簽根據(jù)預(yù) 定步長、向逼近第一預(yù)定值的方向更新其計數(shù)器的計數(shù)值。電子標(biāo)簽在更新計 數(shù)器的計數(shù)值后,該電子標(biāo)簽需要判斷其計數(shù)器的計數(shù)值是否為第一預(yù)定值, 如果判斷出其計數(shù)器的計數(shù)值為第一預(yù)定值,則該電子標(biāo)簽需要向閱讀器回復(fù) 數(shù)據(jù)。如果判斷出其計數(shù)器的計數(shù)值不為第一預(yù)定值,則該電子標(biāo)簽不需要進(jìn) 行回復(fù)數(shù)據(jù)的操作。舉例來說,設(shè)定第一預(yù)定值為0、第二預(yù)定值為l、預(yù)定步 長為l,則接收到計數(shù)值更新命令的電子標(biāo)簽將其計數(shù)器的計數(shù)值減l,然后, 計數(shù)器的計數(shù)值為O的電子標(biāo)簽向閱讀器回復(fù)數(shù)據(jù)。這里的預(yù)定步長可以根據(jù) 實(shí)際情況來設(shè)置,例如,當(dāng)?shù)谝活A(yù)定值為偶數(shù)、且電子標(biāo)簽中的計數(shù)器的計翁:值僅為偶數(shù)時,則預(yù)定步長可以為2。閱讀器在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且沒有接收到電子標(biāo)簽回復(fù)的數(shù)據(jù) 時,閱讀器發(fā)送計數(shù)值更新命令。接收到計數(shù)值更新命令的電子標(biāo)簽更新其計 數(shù)器的計數(shù)值,即電子標(biāo)簽根據(jù)預(yù)定步長、向逼近第一預(yù)定值的方向更新其計 數(shù)器的計數(shù)值。電子標(biāo)簽在更新計數(shù)器的計數(shù)值后,該電子標(biāo)簽需要判斷其計 數(shù)器的計數(shù)值是否為第一預(yù)定值,如果判斷出其計數(shù)器的計數(shù)值為第一預(yù)定 值,則該電子標(biāo)簽需要向閱讀器回復(fù)數(shù)據(jù)。如果判斷出其計數(shù)器的計數(shù)值不為 第一預(yù)定值,則該電子標(biāo)簽不需要進(jìn)行回復(fù)數(shù)據(jù)的操作。重復(fù)上述描述的內(nèi)容,直到所有的電子標(biāo)簽被識別完成。本發(fā)明實(shí)施方式 的閱讀器可以采用現(xiàn)有的各種方法來判斷是否所有的電子標(biāo)簽均被識別完成。 例如,閱讀器在發(fā)送了預(yù)定次數(shù)的計數(shù)值更新命令、且均沒有接收到電子標(biāo)簽 回復(fù)的數(shù)據(jù)時,閱讀器可以確定出所有的電子標(biāo)簽均被識別完成。這里的預(yù)定 次數(shù)可以根據(jù)實(shí)際需要設(shè)置。本發(fā)明實(shí)施方式不限制閱讀器判斷所有的電子標(biāo) 簽均被識別完成的具體實(shí)現(xiàn)方式。方案中,也可以適用于在Binary Tree算法基礎(chǔ)上進(jìn)行優(yōu)化的改進(jìn)Binary Tree算形的Binary Tree算法技術(shù)方案中。下面結(jié)合附圖3來說明應(yīng)用了本發(fā)明實(shí)施方式提供的技術(shù)方案的改進(jìn)的 Binary Tree算法。圖3中,步驟1 、 Reader發(fā)送初始化命令,接收到初始化命令的Tag進(jìn)入標(biāo)識 信息識別狀態(tài),下述步驟均在Tag處于標(biāo)識信息識別狀態(tài)下執(zhí)行,到步驟2。 步驟2、接收到初始化命令的Tag將其內(nèi)部設(shè)置的計數(shù)器counter置零,到步驟3。步驟3、 counter為零的Tag向Reader應(yīng)答,即向Reader回復(fù)標(biāo)識信息等數(shù)據(jù)。步驟4、 Reader判斷在一定時間范圍內(nèi)Tag回復(fù)數(shù)據(jù)的情況,如果判斷出Tag 回復(fù)數(shù)據(jù)發(fā)生碰撞,則表示回復(fù)數(shù)據(jù)的Tag超過l個,到步驟5a;如果判斷出在 一定時間范圍內(nèi)沒有接收到Tag回復(fù)的數(shù)據(jù),則到步驟6;如果判斷出在一定時 間范圍內(nèi)沒有發(fā)生碰撞,即只有一個Tag回復(fù)了數(shù)據(jù),表示識別成功,到步驟7。步驟5a、 Reader發(fā)送A命令要求counter為O的Tag隨機(jī)產(chǎn)生O和l,到步驟5b。 這里的A命令即隨機(jī)產(chǎn)生數(shù)據(jù)的命令。步驟5b、產(chǎn)生O的Tag將counter置為O,產(chǎn)生l的Tag將counter置為大于l的數(shù) 值,例如211- 1,到步驟3。步驟6、 Reader發(fā)送B命令,要求所有的Tag的counter值都減l,到步驟3。 需要說明的是,counter值為0時,減l后的counter值依然為零。這里的B命令即 計數(shù)值更新命令。步驟7、該Tag由標(biāo)識信息識別狀態(tài)進(jìn)入data exchange狀態(tài),Reader成功識 別該Tag,同時執(zhí)行步驟6。重復(fù)上述步驟3至步驟7,直至所有Tag識別完成。在上述描述中,2n - l中的n可以根據(jù)BinaryTree算法中分支樹的分支次數(shù) 來確定,例如,當(dāng)BinaryTree算法中分支樹的分支次數(shù)為3,則n可以設(shè)置為3。 當(dāng)分支樹的分支次數(shù)為3時,分支樹的分支數(shù)目為8。這里的分支樹的分支數(shù)目 是指Tag的組數(shù),這里的組是根據(jù)Tag中的counter的計數(shù)值來劃分的。例如,將 counter的計lt值為0的Tag劃分為Tag0組,將counter的計H值為1的Tag劃分為在上述描述中,產(chǎn)生1的1&§可以將其0011加6^丈置為從2到211- l之間的任一 數(shù)值,作為最佳實(shí)施方式之一,產(chǎn)生l的Tag可以將其counteri殳置為各Tag中的 counter計數(shù)值的最大值。當(dāng)產(chǎn)生1的Tag將其counteri殳置為各Tag中的counter計 數(shù)值的最大值時,能夠最大程度的減少Tag中的加減法運(yùn)算量。本發(fā)明實(shí)施方式可以釆用現(xiàn)有的各種方法來獲得各Tag中的counter計數(shù)值的最大值,本發(fā)明 實(shí)施方式不限制獲取各Tag中的counter計數(shù)值的最大值的具體實(shí)現(xiàn)過程。下面以一個具體的例子、結(jié)合附圖2、附圖4來說明本發(fā)明實(shí)施方式提供的 技術(shù)方案是如何減少電子標(biāo)簽中的運(yùn)算量的。設(shè)定n的取值與Binary Tree算法中的分支樹的分支次數(shù)有關(guān),分支樹的分支 數(shù)目為211,分支樹的分支數(shù)目表示需要識別的Tag組。如果設(shè)定n等于3,則閱讀 器需要識別的Tag被劃分為8個Tag組,這8個Tag組分別為Tag0組、Tagl組…… Tag7組。這里的Tag組是根據(jù)Tag中的counter的計數(shù)值劃分的,即TagO組至Tag7 組中的counter的計數(shù)值分別為O、 1、 2、 3、 4、 5、 6、 7,也就是說,counter計 數(shù)值為O的Tag被劃分在TagO組中,counter計數(shù)值為1的Tag被劃分在Tagl組中, 依此類推,counter計數(shù)值為7的Tag被劃分在Tag7組中。圖2、圖4中的每一個方 格代表一個Tag組,方格中的數(shù)字代表該Tag組中counter的計數(shù)值。在采用圖l所示的流程后,Tag的counter計數(shù)值的變化情況如附圖2所示。圖2中,由于TagO組中的各Tag的counter計數(shù)值為O,因此,閱讀器首先進(jìn) 行對TagO組中的Tag的識別。設(shè)定TagO組中的Tag沒有發(fā)生數(shù)據(jù)碰撞或者在TagO ,組中沒有Tag,則閱讀器發(fā)送B命令,要求所有的Tag的counter值都減l。此后, Tagl組至Tag7組中的各Tag的counter計數(shù)值分別更新為0、 1、 2、 3、 4、 5、 6, 即Tagl組中各Tag的counter計數(shù)值均更新為O,依此類推,Tag7組中各Tag的 counter計數(shù)值均更新為6。此時,如果Tagl組中的Tag的數(shù)目大于l,則閱讀器 在對Tagl組中的Tag進(jìn)行識別時,會發(fā)生數(shù)據(jù)碰撞。由于發(fā)生了數(shù)據(jù)碰撞,因 此,閱讀器發(fā)送A命令要求counter值為O的Tag隨機(jī)產(chǎn)生O和l。 Tagl組中的各Tag 接收到A命令后,均隨機(jī)產(chǎn)生O或l,且隨機(jī)產(chǎn)生O的Tag將其counter計數(shù)值置為O, 產(chǎn)生1的Tag將其counter計數(shù)值置為1 。由于Tag2組至Tag7組中的各Tag的counter 計數(shù)值均大于O,因此,Tag2組至Tag7組中的各Tag在接收到A命令后,均將其 counter計數(shù)值更新為counter + 1,即Tag2組中的各Tag的counter計數(shù)值由1更新為2,依此類推,Tag7組中的各Tag的counter計數(shù)值由6更新為7。從圖2、以及上述針對圖2的描述中可以看出,在閱讀器對Tagl組中的各Tag 進(jìn)行識別、且發(fā)生碰撞時,Tag2組至Tag7組中的所有Tag均需要進(jìn)行加法運(yùn)算, 而這些加法運(yùn)算會帶來與加法運(yùn)算的運(yùn)算量相同的減法運(yùn)算。上述描述只是針 對Tagl組中的各Tag進(jìn)行識別、且發(fā)生數(shù)據(jù)碰撞的情況,如果在后續(xù)的識別過 程中,仍然存在數(shù)據(jù)碰撞的現(xiàn)象,則每次數(shù)據(jù)碰撞現(xiàn)象均會引起大量電子標(biāo)簽 的力口減法運(yùn)算。在采用圖3所示的流程后,Tag的counteri十?dāng)?shù)值的變化情況如附圖4所示。 圖4中,由于TagO組中的各Tag的counter計數(shù)值為O,因此,閱讀器首先進(jìn) 行對TagO組中的Tag的識別。設(shè)定TagO組中的Tag沒有發(fā)生數(shù)據(jù)碰撞或者在TagO 組中沒有Tag,則閱讀器發(fā)送B命令,要求所有的Tag的counter值都減l。此后, Tagl組至Tag7組中的各Tag的counter的計數(shù)值分別更新為0、 1、 2、 3、 4、 5、 6, 即Tagl組中各Tag的counter的計數(shù)值均更新為O,依此類推,Tag7組中各Tag的 counter計數(shù)值均更新為6。此時,如果Tagl組中的Tag的數(shù)目大于l,則閱讀器 在對Tagl組中的Tag進(jìn)行識別時,會發(fā)生數(shù)據(jù)碰撞。由于發(fā)生了數(shù)據(jù)碰撞,因 此,閱讀器發(fā)送A命令要求counter值為O的Tag隨機(jī)產(chǎn)生O和l。 Tagl組中的各Tag 接收到A命令后,均隨機(jī)產(chǎn)生O或l,且隨機(jī)產(chǎn)生O的Tag將其counter計數(shù)值置為O, 隨機(jī)產(chǎn)生1的Tag將其counter計數(shù)值置為211 - 1即7。此時,Tag2組至Tag7組中的 各Tag在接收到A命令后,均不需要對其counter計數(shù)值進(jìn)行更新。從圖4、以及上述針對圖4的描述中可以看出,在閱讀器對Tagl組中的各Tag 進(jìn)行識別、且發(fā)生碰撞時,Tag2組至Tag7組中的所有Tag均不需要進(jìn)行加法運(yùn) 算,而且,也避免了這些加法運(yùn)算帶來的與加法運(yùn)算的運(yùn)算量相同的減法運(yùn)算。 上述描述只是針對Tagl組中的各Tag進(jìn)行識別、且發(fā)生數(shù)據(jù)碰撞的情況,如果 在后續(xù)的識別過程中,仍然存在有數(shù)據(jù)碰撞,則本發(fā)明實(shí)施方式仍然能夠避免 大量的加減法運(yùn)算。因此,本發(fā)明實(shí)施方式大大減少了射頻識別過程中電子標(biāo)簽的運(yùn)算量。在上述針對圖4的描述中,是以211-l為例進(jìn)行說明的,但是上述描述中的 2n-l也可以替換為2、 3、 4、 5、 6中的任意一個數(shù)值。在將211-l替換為2、 3、 4、 5、 6中的任意一個數(shù)值時,同樣也能夠減少射頻識別過程中的電子標(biāo)簽的 加減法運(yùn)算量。例如,在211-l替換為5的情況下,如果Tagl組中隨機(jī)產(chǎn)生l的 Tag將其counter計數(shù)值置為5,對于大于5的Tag組,即Tag6、 Tag7組中的各Tag 在接收到A命令后,均將其counter計數(shù)值更新為counter + 1 ,即Tag6組中的各Tag 的counter計數(shù)值由5更新為6, Tag7組中的各Tag的counter計邀:值由6更新為7。 此時,Tag2組至Tag5組中的各Tag均不需要進(jìn)行加法運(yùn)算,TagZ至TagS中的 counter計數(shù)值仍然保持為l、 2、 3、 4。由于不需要進(jìn)行加法運(yùn)算,也就避免了 進(jìn)4亍加法運(yùn)算而帶來的減法運(yùn)算。由此可以得出,當(dāng)隨^L產(chǎn)生1的電子標(biāo)簽將 其計數(shù)器設(shè)置為大于l的數(shù)值時,能夠減少射頻識別過程中的電子標(biāo)簽的運(yùn)算 量。需要說明的是,上述針對圖2、圖4的描述中,如果將需要識別的Tag劃分 為8個Tag組,但是,如果8個Tag組中counter計數(shù)值的最大值為6,即Tag6組、 Tag7組中沒有Tag,則隨機(jī)產(chǎn)生1的電子標(biāo)簽可以將其計數(shù)器設(shè)置為最大值6, 當(dāng)然,也可以設(shè)置為2至7中的任一數(shù)值。其中,最大值6是一個最佳值。對比圖2和圖4可以看出,在采用了本發(fā)明實(shí)施方式提供的電子標(biāo)簽識別技 術(shù)方案后,大大減少了Tag中的加減法運(yùn)算量,從而優(yōu)化了Binary Tree算法,最 終減少了電子標(biāo)簽的運(yùn)算量,從而減少了電子標(biāo)簽的能量消耗。上述針對圖2、圖4的描述中,是以n為3為例進(jìn)行說明的,如果設(shè)置n為4, 即分支樹的分支數(shù)目為16時,則大于1的數(shù)值可以為2至15中的任一數(shù)值。大于 l的最佳數(shù)值可以為各電子標(biāo)簽計數(shù)器的計數(shù)值的最大值。在大于l的數(shù)值為最 佳數(shù)值時,能夠最大程度的減少電子標(biāo)簽的加減法運(yùn)算量。但是,在大于l的 凄t值為非最佳數(shù)值時,同樣也能夠減少射頻識別過程中的電子標(biāo)簽的加減法運(yùn)舉說明。在上述實(shí)施方式的各舉例說明中,第一預(yù)定值為0,第二預(yù)定值為1,本 發(fā)明實(shí)施方式中的第一預(yù)定值、第二預(yù)定值也可以為其它數(shù)值,本發(fā)明實(shí)施方式不限制第一預(yù)定值、第二預(yù)定值的具體取值。第一預(yù)定值為0、第二預(yù)定值為l是一種較為通常的應(yīng)用方式,第一預(yù)定值和第二預(yù)定值為其它數(shù)值時,本 發(fā)明實(shí)施方式的具體實(shí)現(xiàn)過程如上述描述的實(shí)現(xiàn)過程基本相同,在此不再—— 舉例i兌明。下面結(jié)合附圖5對本發(fā)明實(shí)施方式提供的射頻識別系統(tǒng)進(jìn)行說明。 圖5中,本發(fā)明實(shí)施方式提供的射頻識別系統(tǒng)包括閱讀器和電子標(biāo)簽。 電子標(biāo)簽中設(shè)置有計數(shù)器、回復(fù)模塊和設(shè)置計數(shù)值模塊。這里的電子標(biāo)簽還可 以包括隨機(jī)數(shù)發(fā)生器等。閱讀器主要用于接收電子標(biāo)簽回復(fù)的數(shù)據(jù),并判斷是否發(fā)生數(shù)據(jù)碰撞;在 判斷出發(fā)生數(shù)據(jù)碰撞時,發(fā)送隨機(jī)產(chǎn)生數(shù)據(jù)的命令即上述A命令;在判斷出沒 有發(fā)生數(shù)據(jù)碰撞、且存在回復(fù)數(shù)據(jù)時,閱讀器識別回復(fù)數(shù)據(jù)的電子標(biāo)簽,并發(fā) 送計數(shù)值更新命令即上述B命令;在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且不存在回復(fù) 數(shù)據(jù)時,發(fā)送計數(shù)值更新命令即上述B命令。閱讀器判斷是否發(fā)生數(shù)據(jù)碰撞的 過程、以及閱讀器識別回復(fù)數(shù)據(jù)的電子標(biāo)簽的過程等等如上述方法實(shí)施方式中 的描述?;貜?fù)模塊主要用于在其所在電子標(biāo)簽的計數(shù)器的計數(shù)值為第一預(yù)定值時, 向閱讀器回復(fù)數(shù)據(jù)。例如當(dāng)?shù)谝活A(yù)定值為0,回復(fù)模塊在判斷出其所在電子標(biāo) 簽的counter計數(shù)值為O時,向閱讀器回復(fù)數(shù)據(jù)。這里的第一預(yù)定值也可以為其 它數(shù)值。回復(fù)^^莫塊可以采用現(xiàn)有的方法向閱讀器回復(fù)數(shù)據(jù),本發(fā)明實(shí)施方式不 限制回復(fù)模塊向閱讀器回復(fù)數(shù)據(jù)的具體實(shí)現(xiàn)過程。隨機(jī)數(shù)發(fā)生器主要用于在其所在的電子標(biāo)簽接收到隨機(jī)產(chǎn)生數(shù)據(jù)的命令 即上述B命令后,隨機(jī)產(chǎn)生一個數(shù)值,例如,隨機(jī)產(chǎn)生0或者1。設(shè)置計數(shù)值模塊主要用于在其所在的電子標(biāo)簽接收到隨機(jī)產(chǎn)生數(shù)據(jù)的命 令即上述B命令、且隨機(jī)數(shù)發(fā)生器隨機(jī)產(chǎn)生數(shù)值后,判斷隨機(jī)數(shù)發(fā)生器隨機(jī)產(chǎn) 生的數(shù)值是否為第二預(yù)定值,如果是,則將其所在電子標(biāo)簽的計數(shù)器的計數(shù)值 設(shè)置為非第一預(yù)定值且非第二預(yù)定值的數(shù)值,否則,將其所在電子標(biāo)簽的計數(shù)器的計數(shù)值設(shè)置為第一預(yù)定值。例如,當(dāng)?shù)谝活A(yù)定值為O,第二預(yù)定值為l,電 子標(biāo)簽在接收到B命令后,隨機(jī)數(shù)發(fā)生器隨機(jī)產(chǎn)生數(shù)值,設(shè)置計數(shù)值模塊判斷 隨機(jī)數(shù)發(fā)生器隨機(jī)產(chǎn)生的數(shù)值是否為l,如果為l,則設(shè)置計數(shù)值模塊將其所在 電子標(biāo)簽的counter計數(shù)值設(shè)置為大于l的數(shù)值;如果隨機(jī)產(chǎn)生的數(shù)值為O,則設(shè) 置計數(shù)值模塊可以不對其所在電子標(biāo)簽的counter計數(shù)值進(jìn)行設(shè)置,或者將其所 在電子標(biāo)簽的counter計數(shù)值重新設(shè)置為0。這里的非第一預(yù)定值且非第二預(yù)定 值的數(shù)值、以及大于l的數(shù)值的具體取值情況有多種方式,具體如上述方法實(shí) 施方式中的描述,在此不再重復(fù)說明。計數(shù)器主要用于在其所在的電子標(biāo)簽接收到計數(shù)值更新命令后,根據(jù)預(yù)定 步長、向逼近第一預(yù)定值的方向更新計數(shù)值。例如,電子標(biāo)簽接收到計數(shù)值更 新命令即上述B命令,則該電子標(biāo)簽中的計數(shù)器將其計數(shù)值更新為當(dāng)前計數(shù)值 減l。計數(shù)器的計數(shù)值還可以根據(jù)設(shè)置計數(shù)值模塊的控制更新。這里的第一預(yù) 定值可以為0、預(yù)定步長可以為l,當(dāng)然,第一預(yù)定值、預(yù)定步長也可以存在其 它取值情況,具體如上述方法實(shí)施方式中的描述,在此不再重復(fù)說明。本發(fā)明實(shí)施方式還提供一種電子標(biāo)簽,該電子標(biāo)簽包括計數(shù)器、回復(fù)模塊、 設(shè)置計數(shù)值模塊和隨機(jī)數(shù)發(fā)生器等。計數(shù)器、回復(fù)模塊、設(shè)置計數(shù)值模塊和隨 機(jī)數(shù)發(fā)生器如上述射頻識別系統(tǒng)中的描述,在此不再重復(fù)說明。雖然通過實(shí)施例描繪了本發(fā)明,本領(lǐng)域普通技術(shù)人員知道,本發(fā)明有許多 變形和變化而不脫離本發(fā)明的精神,本發(fā)明的申請文件的權(quán)利要求包括這些變 形和變化。
權(quán)利要求
1、一種電子標(biāo)簽識別方法,其特征在于,該方法包括在電子標(biāo)簽識別過程中,計數(shù)器的計數(shù)值為0的電子標(biāo)簽向閱讀器回復(fù)數(shù)據(jù);接收到閱讀器發(fā)送的隨機(jī)產(chǎn)生數(shù)據(jù)的命令的電子標(biāo)簽隨機(jī)產(chǎn)生0或1,隨機(jī)產(chǎn)生1的電子標(biāo)簽將其計數(shù)器設(shè)置為大于1的預(yù)定數(shù)值;接收到閱讀器發(fā)送的計數(shù)值更新命令的電子標(biāo)簽將其計數(shù)器的計數(shù)值減1。
2、 如權(quán)利要求1所述的方法,其特征在于,所述隨機(jī)產(chǎn)生1的電子標(biāo)簽 將其計數(shù)器設(shè)置為大于i的預(yù)定數(shù)值的步驟還包括計數(shù)器的計數(shù)值大于等于所述預(yù)定數(shù)值的電子標(biāo)簽將其計數(shù)器的計數(shù)值 加1。
3、 如權(quán)利要求l所述的方法,其特征在于,所述大于1的預(yù)定數(shù)值為從2 到2n-1中的任一數(shù)值,其中n為大于1的整數(shù)、且n不超過分支樹的分支 次數(shù)。
4、 如權(quán)利要求1所述的方法,其特征在于,所述大于1的預(yù)定數(shù)值為各 電子標(biāo)簽中計數(shù)器的最大計數(shù)值。
5、 一種電子標(biāo)簽識別方法,其特征在于,該方法包括 在電子標(biāo)簽識別過程中,計數(shù)器的計數(shù)值為第一預(yù)定值的電子標(biāo)簽向閱讀器回復(fù)數(shù)據(jù);接收到閱讀器發(fā)送的隨機(jī)產(chǎn)生數(shù)據(jù)的命令的電子標(biāo)簽隨機(jī)產(chǎn)生數(shù)值,隨機(jī) 產(chǎn)生第二預(yù)定值的電子標(biāo)簽將其計數(shù)器設(shè)置為非第一預(yù)定值且非第二預(yù)定值 的數(shù)值;接收到閱讀器發(fā)送的計數(shù)值更新命令的電子標(biāo)簽根據(jù)預(yù)定步長、向逼近第一預(yù)定值的方向更新計數(shù)器的計數(shù)值。
6、 如權(quán)利要求5所述的方法,其特征在于,所述第一預(yù)定值為0、第二預(yù) 定值為1、所述非第一預(yù)定值且非第二預(yù)定值的數(shù)值為從2到2n-1中的任一 數(shù)值,其中n為大于l的整數(shù)、且n不超過分支樹的分支次數(shù)。
7、 如權(quán)利要求5所述的方法,其特征在于,所述非第一預(yù)定值且非第二 預(yù)定值的數(shù)值為各電子標(biāo)簽中計數(shù)器的最大計數(shù)值。
8、 一種射頻識別系統(tǒng),包括閱讀器和電子標(biāo)簽,其特征在于, 閱讀器,用于接收電子標(biāo)簽回復(fù)的數(shù)據(jù),并判斷是否發(fā)生數(shù)據(jù)碰撞;在判斷出發(fā)生數(shù)據(jù)碰撞時,發(fā)送隨機(jī)產(chǎn)生數(shù)據(jù)的命令;在判斷出沒有發(fā)生數(shù)據(jù)碰撞、 且存在回復(fù)數(shù)據(jù)時,閱讀器識別回復(fù)數(shù)據(jù)的電子標(biāo)簽,并發(fā)送計數(shù)值更新命令; 在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且不存在回復(fù)數(shù)據(jù)時,發(fā)送所述計數(shù)值更新命令;所述電子標(biāo)簽中包括計數(shù)器、回復(fù)模塊和設(shè)置計數(shù)值模塊;回復(fù)模塊,用于在電子標(biāo)簽識別過程中,在其所在電子標(biāo)簽的計數(shù)器的計 數(shù)值為第一預(yù)定值時,向閱讀器回復(fù)數(shù)據(jù);設(shè)置計數(shù)值模塊,用于在其所在的電子標(biāo)簽接收到隨機(jī)產(chǎn)生數(shù)據(jù)的命令、 且隨機(jī)產(chǎn)生數(shù)值后,判斷隨機(jī)產(chǎn)生數(shù)值是否為第二預(yù)定值,如果是,則將其所 在電子標(biāo)簽的計數(shù)器的計數(shù)值設(shè)置為非第一預(yù)定值、非第二預(yù)定值的數(shù)值,否 則,將所述計數(shù)器的計數(shù)值設(shè)置為第一預(yù)定值;計數(shù)器,用于在其所在的電子標(biāo)簽接收到計數(shù)值更新命令后,根據(jù)預(yù)定步 長、向逼近第一預(yù)定值的方向更新計數(shù)值。
9、 如權(quán)利要求8所述的系統(tǒng),其特征在于,所述第一預(yù)定值為0、第二預(yù) 定值為1,設(shè)置計數(shù)值模塊在判斷出所述隨機(jī)產(chǎn)生的數(shù)值為1時,將計數(shù)器的 計數(shù)值設(shè)置為從2到211-1中的任一數(shù)值,其中n為大于l的整數(shù)、且n不超 過分支樹的分支次數(shù)。
10、 一種電子標(biāo)簽,其特征在于,所述電子標(biāo)簽包括回復(fù)^^塊用于在電子標(biāo)簽識別過程中,在其所在電子標(biāo)簽的計數(shù)器的計 數(shù)值為第一預(yù)定值時,向閱讀器回復(fù)數(shù)據(jù);設(shè)置計數(shù)值模塊用于在其所在的電子標(biāo)簽接收到隨機(jī)產(chǎn)生數(shù)據(jù)的命令、 且隨機(jī)產(chǎn)生數(shù)值后,判斷隨機(jī)產(chǎn)生數(shù)值是否為第二預(yù)定值,如果是,則將其所 在電子標(biāo)簽的計數(shù)器的計數(shù)值設(shè)置為非第一預(yù)定值、非第二預(yù)定值的數(shù)值,否 則,將所述計數(shù)器的計數(shù)值設(shè)置為第一預(yù)定值;計數(shù)器用于在其所在的電子標(biāo)簽接收到計數(shù)值更新命令后,根據(jù)預(yù)定步 長、向逼近第一預(yù)定值的方向更新計數(shù)值。
11、 如權(quán)利要求IO所述的電子標(biāo)簽,其特征在于,所述第一預(yù)定值為0、 第二預(yù)定值為1,設(shè)置計數(shù)值模塊在判斷出所述隨機(jī)產(chǎn)生的數(shù)值為1時,將計 數(shù)器的計數(shù)值設(shè)置為從2到211-1中的任一數(shù)值,其中n為大于l的整數(shù)、且 n不超過分支樹的分支次數(shù)。
全文摘要
一種電子標(biāo)簽識別方法、射頻識別系統(tǒng)、以及電子標(biāo)簽。該方法包括計數(shù)器的計數(shù)值為0的電子標(biāo)簽向閱讀器回復(fù)數(shù)據(jù),閱讀器判斷電子標(biāo)簽回復(fù)數(shù)據(jù)是否發(fā)生數(shù)據(jù)碰撞;在判斷出發(fā)生數(shù)據(jù)碰撞時,閱讀器發(fā)送隨機(jī)產(chǎn)生數(shù)據(jù)的命令,接收到所述命令的電子標(biāo)簽隨機(jī)產(chǎn)生0或1,隨機(jī)產(chǎn)生1的電子標(biāo)簽將其計數(shù)器設(shè)置為大于1的數(shù)值;在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且存在回復(fù)數(shù)據(jù)時,閱讀器識別回復(fù)數(shù)據(jù)的電子標(biāo)簽,并到計數(shù)值更新步驟;在判斷出沒有發(fā)生數(shù)據(jù)碰撞、且不存在回復(fù)數(shù)據(jù)時,到計數(shù)值更新步驟;計數(shù)值更新步驟閱讀器發(fā)送計數(shù)值更新命令,接收到所述計數(shù)值更新命令的電子標(biāo)簽將其計數(shù)器的計數(shù)值減1;重復(fù)上述各步驟,直到各電子標(biāo)簽識別完成。
文檔編號G06K7/00GK101324915SQ20071011899
公開日2008年12月17日 申請日期2007年6月15日 優(yōu)先權(quán)日2007年6月15日
發(fā)明者培 劉, 張興煒 申請人:華為技術(shù)有限公司