CN103473524B - Rfid多标签识别方法、阅读器和标签 - Google Patents
Rfid多标签识别方法、阅读器和标签 Download PDFInfo
- Publication number
- CN103473524B CN103473524B CN201310455138.6A CN201310455138A CN103473524B CN 103473524 B CN103473524 B CN 103473524B CN 201310455138 A CN201310455138 A CN 201310455138A CN 103473524 B CN103473524 B CN 103473524B
- Authority
- CN
- China
- Prior art keywords
- prefix
- label
- reader
- cycle
- numbering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Near-Field Transmission Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供RFID多标签识别方法、阅读器和标签,主要应用于RFID多标签识别系统,解决标签碰撞问题。本发明将阅读器与标签的识别和信息交互过程,划分为多个周期,包括:一个供阅读器发生查询命令进行标签搜索的查询周期,两个供标签响应阅读器查询请求的响应周期。两组标签可以在不同的响应周期,分别对阅读器的同一个命令产生响应。阅读器的一次查询请求,可以得到两组标签的响应,大大降低了多标签识别过程中阅读器的查询次数,减少了标签识别过程中阅读器和标签的通信量,节省了系统能耗。本发明简单直接,易于实施,性能稳定,属于非记忆防碰撞方法,可适用于无源被动式RFID多标签识别系统等,各种RFID多标签识别应用场合。
Description
技术领域
本发明涉及RFID系统,具体涉及RFID多标签识别方法、阅读器和标签。
背景技术
射频识别(Radio Frequency Identification,RFID)技术,是一种具有实时、快速、准确采集等特点的自动识别技术。RFID系统采用射频信号通过空间耦合(交变磁场或电磁场)实现无接触信息传递,并通过所传递的信息达到识别目标对象的目的。阅读器与标签通过无线信道中进行通信,当多个附着标签的物体进入阅读器的识别范围时,多个标签同时与阅读器同时进行通信,信号之间相互干扰,就会发生碰撞,导致标签识别和数据传送失败。因此,就需要建立有效的防碰撞机制,来协调阅读器与标签之间的通信,以实现多个标签的同时识别。在RFID系统中,用于解决多标签识别中的碰撞问题的方法或机制,称之为防碰撞算法或防碰撞协议。
在RFID应用系统中,碰撞通常被分为两类:标签碰撞和阅读器碰撞。解决标签碰撞的实质就是多标签识别问题。目前,已经提出的多标签识别防碰撞算法可以分为两个大类:一类是基于ALOHA的时隙类防碰撞算法,另一类是基于树形搜索的防碰撞算法。
ALOHA类算法的基本特征是,系统将标签响应的信道按时间划分为若干间隔(该间隔称为时隙)。在操作中,阅读器通过指令给每一个标签发送概率(或可选时隙的范围),标签根据收到的时隙范围,随机的选择一个时隙并响应阅读器的请求;若发生碰撞,再重新选择时隙进行数据传送,直到完成所有标签的识别。基于ALOHA的防碰撞算法主要包括:时隙ALOHA方法(S-ALOHA)、帧时隙ALOHA方法(FSA)、动态帧时隙ALOHA算法(DFSA),等。
树型搜索算法主要包括:查询树算法(QT)、二进制树算法(BT),二进制搜索算法(BS),等。查询树算法(QT)的基本特征是,阅读器从查询前缀池中选择一个前缀prefix作为参数进行查询,初始时前缀池中包括1和0,所有标签均将收到的前缀与自己的标签编号(ID)的起始部分进行比较,如果比较结果相同则以自己的标签编号进行响应,如果比较结果不同,则标签不予理睬。如果没有碰撞,则成功识别到一个标签,阅读器从前缀池中选取新的前缀继续查询;如果发生碰撞,则阅读器将将刚刚发送的前缀增加一位1或0,即prefix+“1”和prefix+“0”并放入前缀池,等待后续查询使用;如果没有得到响应,阅读器从前缀池中选取新的前缀继续查询;如此循环,直到前缀池为空,即完成所有标签的识别。
二进制树算法(BT)的基本特征是,每个标签有一个随机数发生器,生成0或1;每个标签有一个计数器,当计数器的值为0时,标签响应。初始时,由阅读器发送指令使所有标签开始响应,标签收到指令后,首先由随机数发生器生成0或1,这样将待识别的标签分为两个子集;随机数为0的标签立即响应,随机数为1的标签将计数器值设为1;若阅读器收到的响应信号没有碰撞,则阅读器识别到一个标签,并发送指令确认,同时,使其它标签将计数器值减1;若没有返回信息,阅读器发送指令确认,并使所有标签计数器值均减1,直到阅读器收到标签的返回信息;若标签碰撞,阅读器发送指令,使碰撞标签产生随机数进行分裂,其它标签计数器值加1;如此循环,直到完成所有标签的识别。
二进制搜索算法(BS),通过对标签编号进行按位搜索,来完成对标签的逐个识别。阅读器以二进制序号(serial number)为参数向标签发送请求命令(Request)。序号长度与标签编号长度一致,且其初始值由可能的最大标签编号构成。收到命令的标签将序号与自己的编号ID进行比较。编号小于或等于该序号的标签,将自己的编号ID作为响应,发送给阅读器。阅读器根据曼切斯特编码(Manchester coding)对标签的响应进行逐位识别。遇到碰撞位时,阅读器根据碰撞位减小序号,然后继续搜索。如果没有发生碰撞,则阅读器成功识别到一个标签,并以初始序号为参数,重新开始搜索。
ALOHA算法以时隙为基础对标签进行分组识别,算法复杂度较低,但该算法存在两个主要的问题:一是,由于时隙编号由标签随机产生,可能致使部分标签始终无法被识别,即标签饥饿现象;二是,由于时隙数目的限制,当标签数目的增加,算法的性能急剧下降。动态帧时隙ALOHA算法(DFSA)通过动态调整帧的大小,改进了算法性能,但需要通过计算估计待识别标签的数量,算法较为复杂。
查询树算法(QT)、二进制树算法(BT)、二进制搜索算法(BS)等树型算法,确保了标签的完全识别,但是也增加了算法的识别延时。ALOHA算法和树形算法都不可避免的存在空时隙或空搜索的情况,即存在某些时隙或搜索状态下没有任何标签响应的情况,因此识别算法的性能和效率受到很大的影响。同时,树型算法的性能还受到标签编号分布情况的影响。目前很多的改进算法,如回退算法,修剪枝算法,倒置搜索,估值算法等很多方法,虽然在一定程度上减少了空时隙或空搜索的情况,但同时增加了算法本身的复杂度,也增加了算法实现的困难程度。
由此可见,上述现有的RFID多标签识别方法在使用上,显然仍存在有不便与缺陷,而亟待加以进一步改进。本设计人积极加以研究创新,以期创设一种新型的RFID多标签识别方法、阅读器和标签,使其更具有实用性。
发明内容
本发明的主要目的在于,提供一种RFID多标签识别方法、阅读器和标签,所要解决的技术问题是降低RFID多标签识别过程中阅读器的查询次数,减少标签识别过程中阅读器和标签的通信量,节省系统能耗,从而更加适于实用。
本发明的目的及解决其技术问题是采用以下技术方案来实现的。依据本发明提出的一种RFID多标签识别方法,用于在RFID系统中通过阅读器识别多个标签,所述多个标签均具有二进制的编号,包括:步骤11,所述阅读器设置前缀池,在所述前缀池中加入至少一个二进制串作为前缀;步骤12,所述阅读器依次设定阅读器查询周期、第一标签响应周期和第二标签响应周期;步骤13,所述阅读器在所述阅读器查询周期中,从所述前缀池中取出一个前缀,并使用取出的前缀发出查询命令;步骤14,所述阅读器在所述第一标签响应周期和所述第二标签响应周期中接收数据信息,并判断所述数据信息中是否产生碰撞,如果所述数据信息中产生碰撞则进入步骤15,如果所述数据信息中未产生碰撞进入步骤16;所述步骤15,所述阅读器生成一个新的前缀并加入所述前缀池;所述步骤16,所述阅读器则将所述前缀与所述数据信息组合,作为发送所述数据信息的标签的编号;步骤17,所述阅读器判断所述前缀池是否为空,在所述前缀池非空返回所述步骤12,在所述前缀池为空时结束操作。
优选的,前述的RFID多标签识别方法,所述步骤11包括:所述阅读器在所述前缀池中加入空串作为前缀。
优选的,前述的RFID多标签识别方法,所述步骤15包括:所述阅读器将所述前缀与所述数据信息中发生碰撞之前的部分组合生成新的前缀。
本发明的目的及解决其技术问题还是采用以下技术方案来实现的。依据本发明提出的一种阅读器,用于在RFID系统中识别多个标签,所述多个标签均具有二进制的编号,包括:前缀管理模块,设置前缀池,在所述前缀池中加入至少一个二进制串作为前缀;周期设定模块,依次设定阅读器查询周期、第一标签响应周期和第二标签响应周期;查询模块,在所述阅读器查询周期中,从所述前缀池中取出一个前缀,并使用取出的前缀发出查询命令;数据信息处理模块,在所述第一标签响应周期和所述第二标签响应周期中接收数据信息,并判断所述数据信息中是否产生碰撞;所述前缀生成模块,如果所述数据信息中产生碰撞,生成一个新的前缀并加入所述前缀池;标签识别模块,如果所述数据信息中未产生碰撞,则将所述前缀与所述数据信息组合,作为发送所述数据信息的标签的编号;循环控制模块,判断所述前缀池是否为空,若所述前缀池非空,通知所述查询模块再次进行查询。
优选的,前述的阅读器,所述前缀管理模块在所述前缀池中加入空串作为前缀。
优选的,前述的阅读器,所述前缀生成模块将所述前缀与所述数据信息中发生碰撞之前的部分组合生成新的前缀。
本发明的目的及解决其技术问题还是采用以下技术方案来实现的。依据本发明提出的一种RFID多标签识别方法,用于在RFID系统中标签响应阅读器的识别,所述标签具有二进制的编号,包括:步骤31,所述标签接收所述阅读器的查询命令;步骤32,所述标签按接收时间确定所述阅读器设定的阅读器查询周期、第一标签响应周期和第二标签响应周期;步骤33,所述标签获取所述查询命令中包含的前缀,并判断所述标签的编号的最前端是否与所述前缀匹配,如果所述标签的编号的最前端与所述前缀不匹配,则结束操作,如果所述标签的编号的最前端与所述前缀匹配,进入步骤34;所述步骤34,所述标签将其编号中与所述前缀相匹配的部分的后一位作为标志位,并判断所述标志位是否为特定值,如果所述标志位为所述特定值,则进入步骤35,如果所述标志位不是所述特定值,则进入步骤36,所述特定值为0或1;所述步骤35,所述标签在所述第一标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器;所述步骤36,所述标签在所述第二标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器。
优选的,前述的RFID多标签识别方法,所述步骤33包括:在所述前缀为空串时,所述标签确定其编号的最前端与所述前缀相匹配;所述步骤34包括:在所述前缀为空串时,所述标签将其编号的首位作为所述标志位。
优选的,前述的RFID多标签识别方法,所述标签的编号为曼切斯特编码。
本发明的目的及解决其技术问题还是采用以下技术方案来实现的。依据本发明提出的一种标签,用于在RFID系统中响应阅读器的识别,所述标签具有二进制的编号,包括:查询接收模块,接收所述阅读器的查询命令;周期分析模块,按接收时间确定所述阅读器设定的阅读器查询周期、第一标签响应周期和第二标签响应周期;前缀匹配模块,获取所述查询命令中包含的前缀,并判断所述标签的编号的最前端是否与所述前缀匹配,如果所述标签的编号的最前端与所述前缀不匹配,则结束操作;标志位确定模块,如果所述标签的编号的最前端与所述前缀匹配,所述标签将其编号中与所述前缀相匹配的部分的后一位作为标志位,并判断所述标志位是否为特定值,所述特定值为0或1;第一发送模块,如果所述标志位为所述特定值,则在所述第一标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器;第二发送模块,如果所述标志位不是所述特定值,在所述第二标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器。
优选的,前述的标签,所述前缀匹配模块在所述前缀为空串时,确定其编号的最前端与所述前缀相匹配;所述标志位确定模块在所述前缀为空串时,将其编号的首位作为所述标志位。
优选的,前述的标签,所述标签的编号为曼切斯特编码。
借由上述技术方案,本发明的RFID多标签识别方法、阅读器和标签至少具有下列优点:
(1)本发明的技术方案将RFID标签识别中阅读器与标签之间的通信过程,划分为三个周期,使阅读器通过一次查询,能够同时获得两组标签的响应,进而可以在一次查询中,完成两个标签的识别。同时,在标签响应过程中,只需要传送与前缀匹配之后的剩余编号部分。
(2)本发明的技术方案在RFID标签识别过程中,如果发生碰撞,阅读器只需要生成一个新的搜索前缀,而且新前缀由当前前缀与接收到的正确数据联合构成,阅读器不需要对发生碰撞的位进行直接处理。所以,本发明的技术方案减少了阅读器在多标签识别过程中的存储空间和处理时间,有利于提高RFID系统性能。
(3)本发明的技术方案在RFID标签识别过程中,标签将收到的前缀与自己的编号进行对比,如果结果相匹配,则标签以匹配后紧接的一位二进制位(0或1)作为标志位,并据此选择响应周期(T0或T1)响应阅读器的查询,而无需重新生成随机数作为周期选择的判定位。因此,本发明的技术方案简化了标签的设计,提高了标签的响应速度,也有利于提高RFID系统的整体性能。
(4)基于上述创新和优势,本发明的技术方案在RFID多标签识别过程中,显著提高了阅读器的查询效率,同时,减少了阅读器和标签之间的数据传输量,降低了系统能耗。与QT、BT等防碰撞算法相比,本发明的技术方案能够将阅读器查询次数减少一半,将RFID多标签识别效率提高到100%以上。
(5)本发明的技术方案对阅读器和标签设计没有附加设备要求,标签响应只与当前收到的前缀有关,而与过往的识别历史记录无关,因此,本发明的技术方案属于无记忆防碰撞方法,可以适用于无源被动标签等各种RFID应用系统。
(6)本发明的技术方案以碰撞位为处理分界,识别性能只与待识别标签数量有关,而与标签编号分布形式等因素无关,所以本发明的技术方案性能稳定,能够适用于各种标签编号分布系统,解决标签碰撞问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
图1是根据本发明的一个实施例的RFID多标签识别方法的流程图;
图2是根据本发明的一个实施例的阅读器的框图;
图3是根据本发明的一个实施例的RFID多标签识别方法的流程图;
图4是根据本发明的一个实施例的标签的流程图;
图5是根据本发明的一个实施例的RFID多标签识别方法的编码示意图;
图6是根据本发明的一个实施例的RFID多标签识别方法的周期示意图;
图7A是根据本发明的一个实施例的RFID多标签识别方法中的阅读器工作流程图;
图7B是根据本发明的一个实施例的RFID多标签识别方法中的标签工作流程图;
图8是根据本发明的一个实施例的RFID多标签识别方法的实例示意图;
图9是根据本发明的一个实施例的RFID多标签识别方法的时间复杂度性能比较图;
图10是根据本发明的一个实施例的RFID多标签识别方法的通信复杂度性能比较图;
图11是根据本发明的一个实施例的RFID多标签识别方法的识别效率性能比较图。
具体实施方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的RFID多标签识别方法、阅读器和标签其具体实施方式、结构、特征及其功效,详细说明如后。在下述说明中,不同的“一个实施例”或“实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。
如图1所示,本发明的一个实施例一种RFID多标签识别方法,用于在RFID系统中通过阅读器识别多个标签,多个标签均具有二进制的编号,包括:步骤11,阅读器设置前缀池,在前缀池中加入至少一个二进制串作为前缀;步骤12,阅读器依次设定阅读器查询周期TQ、第一标签响应周期T0和第二标签响应周期T1;步骤13,阅读器在阅读器查询周期TQ中,从前缀池中取出一个前缀,并使用取出的前缀发出查询命令;步骤14,阅读器在第一标签响应周期T0和第二标签响应周期T1中接收数据信息,并判断数据信息中是否产生碰撞,如果数据信息中产生碰撞则进入步骤15,如果数据信息中未产生碰撞进入步骤16;步骤15,阅读器生成一个新的前缀并加入前缀池;步骤16,阅读器则将前缀与数据信息组合,作为发送数据信息的标签的编号;步骤17,阅读器判断前缀池是否为空,若前缀池非空,返回步骤12,在前缀池为空时结束操作,本实施例将RFID标签识别中阅读器与标签之间的通信过程,划分为三个周期,使阅读器通过一次查询,能够同时获得两组标签的响应,进而可以在一次查询中,完成两个标签的识别,极大提高了效率,节省了时间。
本发明的另一个实施例还提出一种RFID多标签识别方法,本实施例的RFID多标签识别方法,步骤11包括:阅读器在前缀池中加入空串作为前缀,所有标签对空串响应,有利于减少查询过程中的空时隙或空搜索的情况。
本发明的另一个实施例还提出一种RFID多标签识别方法,本实施例的RFID多标签识别方法,步骤15包括:阅读器将前缀与数据信息中发生碰撞之前的部分组合生成新的前缀,本实施例中阅读器不需要对发生碰撞的位进行直接处理就可以生成新的前缀,减少了阅读器在多标签识别过程中的存储空间和处理时间,有利于提高RFID系统性能。
如图2所示,本发明的一个实施例提出的一种阅读器,用于在RFID系统中识别多个标签,多个标签均具有二进制的编号,包括:前缀管理模块21,设置前缀池,在前缀池中加入至少一个二进制串作为前缀;周期设定模块22,依次设定阅读器查询周期TQ、第一标签响应周期T0和第二标签响应周期T1;查询模块23,在阅读器查询周期TQ中,从前缀池中取出一个前缀,并使用取出的前缀发出查询命令;数据信息处理模块24,在第一标签响应周期T0和第二标签响应周期T1中接收数据信息,并判断数据信息中是否产生碰撞;前缀生成模块25,如果数据信息中产生碰撞,成新的前缀并加入前缀池;标签识别模块26,如果数据信息中未产生碰撞,则将前缀与数据信息组合,作为发送数据信息的标签的编号;循环控制模块27,判断前缀池是否为空,若前缀池非空,通知查询模块再次进行查询,本实施例将RFID标签识别中阅读器与标签之间的通信过程,划分为三个周期,使阅读器通过一次查询,能够同时获得两组标签的响应,进而可以在一次查询中,完成两个标签的识别,极大提高了效率,节省了时间。
本发明的另一个实施例还提出一种阅读器,本实施例的阅读器,前缀管理模块21在前缀池中加入空串作为前缀,所有标签对空串响应,有利于减少查询过程中的空时隙或空搜索的情况。
本发明的另一个实施例还提出一种阅读器,本实施例的阅读器,前缀生成模块25将前缀与数据信息中发生碰撞之前的部分组合生成新的前缀,本实施例中阅读器不需要对发生碰撞的位进行直接处理就可以生成新的前缀,减少了阅读器在多标签识别过程中的存储空间和处理时间,有利于提高RFID系统性能。
如图3所示,本发明的一个实施例提出的一种RFID多标签识别方法,用于在RFID系统中标签响应阅读器的识别,标签具有二进制的编号,包括:步骤31,标签接收阅读器的查询命令;步骤32,标签按接收时间确定阅读器设定的阅读器查询周期TQ、第一标签响应周期T0和第二标签响应周期T1;步骤33,标签获取查询命令中包含的前缀,并判断标签的编号的最前端是否与前缀匹配,如果标签的编号的最前端与前缀不匹配,则结束操作,如果标签的编号的最前端与前缀匹配,进入步骤34;步骤34,标签将其编号中与前缀相匹配的部分的后一位作为标志位,并判断标志位是否为0,如果标志位为0,则进入步骤35,如果标志位为1,则进入步骤36;步骤35,标签在第一标签响应周期T0,将其编号中与前缀相匹配的部分之后的部分,发送给阅读器;步骤36,标签在第二标签响应周期T1,将其编号中与前缀相匹配的部分之后的部分,发送给阅读器,本实施例的标签响应过程中,只需要传送与前缀匹配之后的剩余编号部分,减少了通信过程中的数据量,在本实施例中的另一实现方式下,可选择如果标志位为1,进入步骤35,如果标志位为0,进入步骤36。
本发明的另一个实施例还提出一种RFID多标签识别方法,本实施例的RFID多标签识别方法,步骤33包括:在前缀为空串时,标签确定其编号的最前端与前缀相匹配;步骤34包括:在前缀为空串时,标签将其编号的首位作为标志位,本实施例中标签可以对空串前缀做出正确的响应。
本发明的另一个实施例还提出一种RFID多标签识别方法,本实施例的RFID多标签识别方法,标签的编号为曼切斯特编码,采用曼切斯特编码能够在信号传输过程中跟踪到特定的二进制位,并获取正确的数据位和碰撞位的信息。
如图4所示,本发明的一个实施例提出的一种标签,用于在RFID系统中响应阅读器的识别,标签具有二进制的编号,包括:查询接收模块41,接收阅读器的查询命令;周期分析模块42,按接收时间确定阅读器设定的阅读器查询周期TQ、第一标签响应周期T0和第二标签响应周期T1;前缀匹配模块43,获取查询命令中包含的前缀,并判断标签的编号的最前端是否与前缀匹配,如果标签的编号的最前端与前缀不匹配,则结束操作;标志位确定模块44,如果标签的编号的最前端与前缀匹配,标签将其编号中与前缀相匹配的部分的后一位作为标志位,并判断标志位是否为0;第一发送模块45,如果标志位为0,则在第一标签响应周期T0,将其编号中与前缀相匹配的部分之后的部分,发送给阅读器;第二发送模块46,如果标志位为1,在第二标签响应周期T1,将其编号中与前缀相匹配的部分之后的部分,发送给阅读器,本实施例的标签响应过程中,只需要传送与前缀匹配之后的剩余编号部分,减少了通信过程中的数据量,在本实施例中的另一实现方式下,可选择所述第一发送模块45在标志位为1时,在第一标签响应周期T0完成发送,所述第二发送模块46在标志位为0时,在第二标签响应周期T1完成发送。
本发明的另一个实施例还提出一种标签,本实施例的标签,前缀匹配模块43在前缀为空串时,确定其编号的最前端与前缀相匹配;标志位确定模块44在前缀为空串时,将其编号的首位作为标志位,本实施例中标签可以对空串前缀做出正确的响应。
本发明的另一个实施例还提出一种标签,本实施例的标签,标签的编号为曼切斯特编码,采用曼切斯特编码能够在信号传输过程中跟踪到特定的二进制位,并获取正确的数据位和碰撞位的信息。
以下实施例中,综合阅读器和标签两端的工作流程,详细说明本发明的RFID多标签识别方法的工作原理。
首先,本实施例中采用曼切斯特编码(Manchester code)作为标签向阅读器传送数据的编码方式。曼切斯特编码采用相位的翻转来表示二进制“0”和“1”,相位正向翻转时表示“0”,相位负向翻转时表示“1”。当两个或多个不同的信号在信道中传输时,不同信号中的“0”和“1”的相位翻转相互抵消,就会出现没有相位翻转的状态。这种状态在曼切斯特编码中是不允许存在的,因此就该位信号发生错误,在RFID多标签识别中,该位就被认定为碰撞位(collided bit),如图5所示,标签1和标签2的部分位发生抵消,出现碰撞位X。基于此,采用曼切斯特编码能够在信号传输过程中跟踪到特定的二进制位,并获取正确的数据位和碰撞位的信息。
本实施例的核心思想是:将RFID标签识别周期划分为三个周期:阅读器查询周期TQ,标签响应周期T0和T1,如图6所示。在查询周期TQ,阅读器以前缀串prefix为参数,发送查询命令Query(prefix),对其识别范围内待识别标签进行查询。在响应周期T0,标签编号与前缀串prefix相匹配且标志位为“0”的待识别标签,响应阅读器的请求。在响应周期T1,标签编号与前缀串prefix相匹配且标志位为“1”的待识别标签,响应阅读器的请求。响应过程中,如果没有发生碰撞,则阅读器成功识别到标签;如果发生碰撞,则阅读器生成一个新前缀。阅读器不断重复上述查询识别过程,直到完成全部标签识别。
本实施例中,阅读器与标签的工作过程,分别如图7A和7B所示。
(1)初始时,将前缀池置一空串,识别标签编号置空。
(2)从前缀池获取搜索前缀prefix,并以取得的前缀为参数,在查询周期TQ,发送查询命令query(prefix),对识别域中的标签进行查询,并等待标签的响应。如果前缀池为空,则完成标签识别,结束识别过程。
(3)识别域中的标签,收到阅读器发送的前缀,将前缀与各自的标签编号ID进行比较。如果编号ID的与prefix相匹配,则标签根据标志位的值选择响应周期,对阅读器进行响应。
其中,标志位是标签编号ID中与prefix匹配后,紧邻的一位二进制位。如:前缀为p1p2Λpk,标签编号为q1q2Λqkqk+1Λqm,两者相匹配,即p1p2Λpk=q1q2Λqk,则qk+1为标志位。
(4)标志位为“0”的标签,在响应周期T0响应阅读器的查询,将标签编号中与前缀prefix相匹配的之外的后续编号部分发送给阅读器,即将qk+1Λqm发送给阅读器。
(5)标志位为“1”的标签,在响应周期T1响应阅读器的查询,将标签编号中与前缀prefix相匹配的之外的后续编号部分发送给阅读器,即将qk+1Λqm发送给阅读器。
(6)阅读器分别在T0周期和T1周期接收标签的响应,如果收到响应中没有发生碰撞,则阅读器成功识别到一个标签,且该标签的编号由前缀prefix与刚刚收到的响应串合并构成。如果收到响应中发生了碰撞,则阅读器将收到的碰撞之前的正确位与前缀prefix合并,形成一个新前缀,并置入前缀池。
(7)重复上述过程(2)到(6)步骤,直到前缀池为空,即完成所有标签的识别。
结合本实施例技术方案的基本原理和工作过程,图8给出了本发明方法的一个多标签识别实例,来完成标签组{111001,001010,110001,011100,110010,110011,001001,000110,010101,111010}中标签识别的基本过程。下表给出了该识别实例中,标签与阅读器之间的通信过程,以及识别期间前缀池等的变化情况。
上表中“x”表示该位发生碰撞,“---”标签无新前缀生成,“NULL”表示空
从图8和上表可以看出,本发明方法经过9次查询,即可完成这10个标签的识别。其中,阅读器有4次查询,在两个响应周期识别到两个标签;2次查询,在响应周期R0中识别到1个标签;其余响应周期发生了碰撞,未识别到标签。每次查询,两组标签进行响应,如果没有发生碰撞,则成功识别标签,如果发生碰撞,则生成一个新前缀。
结合图8和上表的算法实例,下面给出本实施例的技术方案的一种具体实施方式和工作过程:
第1次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“ε”为参数,发查询命令query(ε),等待并处理标签的响应。此处,“ε”代表空串。
(2)响应周期T0:满足响应条件的标签{001010,011100,001001,000110,010101}响应,发送各自的编号,阅读器收到数据信息“0xxxxx”,其中“x”表示该位发生碰撞,阅读器生成新前缀“0”,放入前缀池。
(3)响应周期T1:满足响应条件的标签{111001,110001,110010,110011,111010}响应,发送各自的编号,阅读器收到数据信息“11xxxx”,发生碰撞,阅读器生成新前缀“11”,放入前缀池。
第2次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“11”为参数,发查询命令query(11),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{110001,110010,110011}响应,发送各自的编号的后续部分,阅读器收到数据信息“00xx”,发生碰撞,阅读器生成新前缀“1100”,放入前缀池。
(3)响应周期T1:满足响应条件的标签{111001,111010}响应,发送各自的编号的后续部分,阅读器收到数据信息“10xx”,发生碰撞,阅读器生成新前缀“1110”,放入前缀池。
第3次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“1110”为参数,发查询命令query(1110),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{111001}响应,发送各自编号的后续部分,阅读器收到数据信息“01”,未发生碰撞,阅读器识别到标签“111001”。
(3)响应周期T1:满足响应条件的标签{111010}响应,发送各自的编号的后续部分,阅读器收到数据信息“10”,未发生碰撞,阅读器识别到标签“111010”。
第4次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“1100”为参数,发查询命令query(1100),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{110001}响应,发送各自编号的后续部分,阅读器收到数据信息“01”,未发生碰撞,阅读器识别到标签“110001”。
(3)响应周期T1:满足响应条件的标签{110010,110011}响应,发送各自的编号的后续部分,阅读器收到数据信息“1x”,发生碰撞,阅读器生成新前缀“11001”,放入前缀池。
第5次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“11001”为参数,发查询命令query(11001),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{110010}响应,发送各自编号的后续部分,阅读器收到数据信息“0”,未发生碰撞,阅读器识别到标签“110010”。
(3)响应周期T1:满足响应条件的标签{110011}响应,发送各自的编号的后续部分,阅读器收到数据信息“1”,未发生碰撞,阅读器识别到标签“110011”。
第6次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“0”为参数,发查询命令query(0),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{001010,001001,000110}响应,发送各自的编号的后续部分,阅读器收到数据信息“0xxxx”,发生碰撞,阅读器生成新前缀“00”,放入前缀池。
(3)响应周期T1:满足响应条件的标签{011100,010101}响应,发送各自的编号的后续部分,阅读器收到数据信息“1x10x”,发生碰撞,阅读器生成新前缀“01”,放入前缀池。
第7次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“01”为参数,发查询命令query(0),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{010101}响应,发送各自的编号的后续部分,阅读器收到数据信息“0101”,未发生碰撞,阅读器识别到标签“010101”。
(3)响应周期T1:满足响应条件的标签{011100}响应,发送各自的编号的后续部分,阅读器收到数据信息“1100”,未发生碰撞,阅读器识别到标签“011100”。
第8次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“00”为参数,发查询命令query(00),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{000110}响应,发送各自的编号的后续部分,阅读器收到数据信息“0110”,未发生碰撞,阅读器识别到标签“000110”。
(3)响应周期T1:满足响应条件的标签{001010,001001}响应,发送各自的编号的后续部分,阅读器收到数据信息“10xx”,发生碰撞,阅读器生成新前缀“0010”,放入前缀池。
第9次识别查询:
(1)查询周期TQ:阅读器从前缀池中取前缀“0010”为参数,发查询命令query(00),等待并处理标签的响应。
(2)响应周期T0:满足响应条件的标签{001001}响应,发送各自的编号的后续部分,阅读器收到数据信息“01”,未发生碰撞,阅读器识别到标签“001001”。
(3)响应周期T1:满足响应条件的标签{001010}响应,发送各自的编号的后续部分,阅读器收到数据信息“10”,未发生碰撞,阅读器识别到标签“001010”。
最后,前缀池为空NULL,阅读器经过9次查询,完成了全部10个标签的识别。
综上,本实施例提供了一种高性能的RFID多标签识别方法,克服标签碰撞的问题。主要特征是将标签识别周期划分为多个周期,使两组标签能够分时响应阅读器的同一查询请求,因此,本实施例的方法可被称为多周期防碰撞算法(Multiple Cycles Anti-collision Algorithm),记为MCA算法。该方法以较低的复杂度,消除经典防碰撞算法,包括ALOHA算法和树型算法,中可能存在的空周期,减少阅读的查询次数,在降低RFID阅读器和标签的通信量和系统能耗的同时,将RFID多标签识别效率提高到100%以上。而且,该方法不受标签编号分布的影响,属于无记忆防碰撞算法,能够适用于各种RFID多标签识别场合。
为了清楚本实施例的方法(MCA算法)的比较优势,图9、图10、图11分别给出了MCA、QT、BT、BS、FSA、NEAA等RFID多标签识别经典防碰撞算法,在相同环境下的时间复杂度、通信复杂度和识别效率性能曲线。
从图8、图9、图10中,可以看出,不管是时间复杂度(平均识别一个标签,所需要的查询次数),还是通信复杂度(平均识别一个标签,阅读器和标签传送的二进制位数),以及识别效率(识别标签数量与所需要的识别周期数的比率),本发明方法(MCA算法)都具有明显的优势,性能远远超过了目前行业使用的经典防碰撞算法。理论和实验结果均表明,本发明方法能将RFID多标签识别效率提高到100%以上。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (8)
1.一种RFID多标签识别方法,用于在RFID系统中通过阅读器识别多个标签,所述多个标签均具有二进制的编号,其特征在于,包括:
步骤11,所述阅读器设置前缀池,在所述前缀池中加入一个空串作为初始搜索前缀;
步骤12,所述阅读器依次设定阅读器查询周期、第一标签响应周期和第二标签响应周期;
步骤13,所述阅读器在所述阅读器查询周期中,从所述前缀池中取出一个前缀,并使用取出的前缀发出查询命令;
步骤14,所述阅读器在所述第一标签响应周期和所述第二标签响应周期中接收数据信息,并判断所述数据信息中是否产生碰撞,如果所述数据信息中产生碰撞则进入步骤15,如果所述数据信息中未产生碰撞进入步骤16;
所述步骤15,所述阅读器生成一个新的前缀并加入所述前缀池;
所述步骤16,所述阅读器则将所述前缀与所述数据信息组合,作为发送所述数据信息的标签的编号;
步骤17,所述阅读器判断所述前缀池是否为空,若所述前缀池非空,返回所述步骤12,在所述前缀池为空时结束操作。
2.根据权利要求1所述RFID多标签识别方法,其特征在于,
所述步骤15包括:所述阅读器将所述前缀与所述数据信息中发生碰撞之前的部分组合生成新的前缀。
3.一种阅读器,用于在RFID系统中识别多个标签,所述多个标签均具有二进制的编号,其特征在于,包括:
前缀管理模块,设置前缀池,在所述前缀池中加入一个空串作为初始搜索前缀;
周期设定模块,依次设定阅读器查询周期、第一标签响应周期和第二标签响应周期;
查询模块,在所述阅读器查询周期中,从所述前缀池中取出一个前缀,并使用取出的前缀发出查询命令;
数据信息处理模块,在所述第一标签响应周期和所述第二标签响应周期中接收数据信息,并判断所述数据信息中是否产生碰撞;
前缀生成模块,如果所述数据信息中产生碰撞,生成一个新的前缀并加入所述前缀池;
标签识别模块,如果所述数据信息中未产生碰撞,则将所述前缀与所述数据信息组合,作为发送所述数据信息的标签的编号;
循环控制模块,判断所述前缀池是否为空,若所述前缀池非空,通知所述查询模块再次进行查询。
4.根据权利要求3所述的阅读器,其特征在于,
所述前缀生成模块将所述前缀与所述数据信息中发生碰撞之前的部分组合生成新的前缀。
5.一种RFID多标签识别方法,用于在RFID系统中标签响应阅读器的识别,所述标签具有二进制的编号,其特征在于,包括:
步骤31,所述标签接收所述阅读器的查询命令;
步骤32,所述标签按接收时间确定所述阅读器设定的阅读器查询周期、第一标签响应周期和第二标签响应周期;
步骤33,所述标签获取所述查询命令中包含的前缀,并判断所述标签的编号的最前端是否与所述前缀匹配,如果所述标签的编号的最前端与所述前缀不匹配,则结束操作,如果所述标签的编号的最前端与所述前缀匹配,进入步骤34;
所述步骤34,所述标签将其编号中与所述前缀相匹配的部分的后一位作为标志位,并判断所述标志位是否为特定值,如果所述标志位为所述特定值,则进入步骤35,如果所述标志位不是所述特定值,则进入步骤36,所述特定值为0或1;
所述步骤35,所述标签在所述第一标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器;
所述步骤36,所述标签在所述第二标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器。
6.根据权利要求5所述的RFID多标签识别方法,其特征在于,
所述步骤33包括:在所述前缀为空串时,所述标签确定其编号的最前端与所述前缀相匹配;
所述步骤34包括:在所述前缀为空串时,所述标签将其编号的首位作为所述标志位。
7.一种标签,用于在RFID系统中响应阅读器的识别,所述标签具有二进制的编号,其特征在于,包括:
查询接收模块,接收所述阅读器的查询命令;
周期分析模块,按接收时间确定所述阅读器设定的阅读器查询周期、第一标签响应周期和第二标签响应周期;
前缀匹配模块,获取所述查询命令中包含的前缀,并判断所述标签的编号的最前端是否与所述前缀匹配,如果所述标签的编号的最前端与所述前缀不匹配,则结束操作;
标志位确定模块,如果所述标签的编号的最前端与所述前缀匹配,所述标签将其编号中与所述前缀相匹配的部分的后一位作为标志位,并判断所述标志位是否为特定值,所述特定值为0或1;
第一发送模块,如果所述标志位为所述特定值,则在所述第一标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器;
第二发送模块,如果所述标志位不是所述特定值,在所述第二标签响应周期,将其编号中与所述前缀相匹配的部分之后的部分,发送给所述阅读器。
8.根据权利要求7所述的标签,其特征在于,
所述前缀匹配模块在所述前缀为空串时,确定其编号的最前端与所述前缀相匹配;
所述标志位确定模块在所述前缀为空串时,将其编号的首位作为所述标志位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310455138.6A CN103473524B (zh) | 2013-09-29 | 2013-09-29 | Rfid多标签识别方法、阅读器和标签 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310455138.6A CN103473524B (zh) | 2013-09-29 | 2013-09-29 | Rfid多标签识别方法、阅读器和标签 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103473524A CN103473524A (zh) | 2013-12-25 |
CN103473524B true CN103473524B (zh) | 2017-02-08 |
Family
ID=49798369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310455138.6A Expired - Fee Related CN103473524B (zh) | 2013-09-29 | 2013-09-29 | Rfid多标签识别方法、阅读器和标签 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103473524B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104517087B (zh) * | 2014-12-31 | 2017-05-17 | 西南科技大学 | 一种rfid多标签识别防碰撞方法 |
CN106468559B (zh) * | 2015-08-20 | 2019-10-22 | 高德信息技术有限公司 | 一种导航语音播报方法及装置 |
CN107273964A (zh) * | 2016-04-06 | 2017-10-20 | 东芝泰格有限公司 | 无线标签装置、无线标签通信装置及无线标签通信系统 |
CN106650536B (zh) * | 2016-12-21 | 2019-04-09 | 西南科技大学 | 一种抗捕获rfid多标签识别方法 |
CN107590408B (zh) * | 2017-08-01 | 2020-05-12 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 基于二进制散列的aloha防碰撞方法 |
CN108090386A (zh) * | 2017-12-23 | 2018-05-29 | 北京邮电大学 | 一种基于二叉树分解的多周期rfid防碰撞算法 |
CN109145664A (zh) * | 2018-08-20 | 2019-01-04 | 成都九洲电子信息系统股份有限公司 | 一种提高uhf读写器多标签识读能力的方法 |
CN110751248B (zh) * | 2019-10-28 | 2021-05-11 | 吉林大学 | 一种基于双向分段查询的rfid防碰撞方法 |
CN111401093B (zh) * | 2020-03-23 | 2023-05-02 | 浪潮通用软件有限公司 | Rfid标签识别方法、装置、计算机设备及和存储介质 |
CN116418371A (zh) * | 2021-12-29 | 2023-07-11 | 华为技术有限公司 | 一种识别方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1804852A (zh) * | 2005-01-12 | 2006-07-19 | 三星电机株式会社 | 使用最佳二叉搜索树的反冲突方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100848354B1 (ko) * | 2006-12-21 | 2008-07-25 | 성균관대학교산학협력단 | 태그의 수 추정 및 충돌 방지 시스템과 그 추정 및 충돌방지 방법 |
-
2013
- 2013-09-29 CN CN201310455138.6A patent/CN103473524B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1804852A (zh) * | 2005-01-12 | 2006-07-19 | 三星电机株式会社 | 使用最佳二叉搜索树的反冲突方法和系统 |
Non-Patent Citations (1)
Title |
---|
An improved anti-collision protocol for radio frequency identification tag;XiaoLin Jia等;《INTERNATIONAL JOURNAL OF COMMUNICATION SYSTEMS》;20130809;第401-413页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103473524A (zh) | 2013-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103473524B (zh) | Rfid多标签识别方法、阅读器和标签 | |
Chen et al. | A novel anti-collision algorithm in RFID systems for identifying passive tags | |
CN104517087B (zh) | 一种rfid多标签识别防碰撞方法 | |
CN101866413B (zh) | 基于分组机制和跳跃动态二进制识别的多标签防碰撞方法 | |
CN103020568B (zh) | 基于标签id预处理的rfid防碰撞方法 | |
CN102004895B (zh) | 基于碰撞预检的时隙扫描防碰撞方法 | |
CN103902941B (zh) | 一种基于连续碰撞位映射的多标签防碰撞方法 | |
Bhandari et al. | Intelligent query tree (IQT) protocol to improve RFID tag read efficiency | |
CN103020569B (zh) | 一种射频识别多标签防碰撞方法 | |
CN103065112A (zh) | 基于模运算标签分类的rfid标签防碰撞识别方法 | |
CN107609611A (zh) | 一种基于大规模射频识别系统的多类信息收集方法 | |
Liu et al. | An adaptive tag anti-collision protocol in RFID wireless systems | |
CN104331679B (zh) | 一种基于物理层网络编码的射频识别标签防冲突方法 | |
CN108959993A (zh) | 一种适用于智能羊群养殖的rfid标签混合防碰撞算法 | |
CN105654010B (zh) | 一种基于自适应搜索策略的rfid标签防碰撞方法 | |
CN108491741A (zh) | 一种基于四叉树的位仲裁查询树防碰撞方法 | |
CN105046181B (zh) | 一种基于查询树方法的多前缀匹配的确定性防碰撞算法 | |
CN107895130A (zh) | 一种基于碰撞树的自适应多叉树防碰撞方法 | |
CN103679092B (zh) | 基于反馈机制的rfid防碰撞算法 | |
CN103218635B (zh) | 一种基于混合多叉树搜索的rfid防碰撞方法 | |
CN108090386A (zh) | 一种基于二叉树分解的多周期rfid防碰撞算法 | |
CN103927506A (zh) | 基于动态时隙冲突跟踪树的rifd防碰撞方法 | |
CN108460302A (zh) | 一种rfid标签响应识别方法及其控制装置 | |
CN101324917A (zh) | 一种rfid标签反碰撞控制方法 | |
CN103971077A (zh) | 一种基于crc码分组的超高频rfid系统aloha防碰撞方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170208 Termination date: 20200929 |