CN103577783A - 一种高效rfid自适应型防碰撞跟踪树算法 - Google Patents
一种高效rfid自适应型防碰撞跟踪树算法 Download PDFInfo
- Publication number
- CN103577783A CN103577783A CN201310606630.9A CN201310606630A CN103577783A CN 103577783 A CN103577783 A CN 103577783A CN 201310606630 A CN201310606630 A CN 201310606630A CN 103577783 A CN103577783 A CN 103577783A
- Authority
- CN
- China
- Prior art keywords
- label
- collision
- identification
- string
- write line
- 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.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种高效RFID自适应型防碰撞跟踪树算法,可有效解决由于多标签共享同一信道而导致的传输时延。该算法首先利用读写器与标签保存的读写器唯一标识码及识别帧号,消除了新到标签与滞留标签之间的碰撞,减少了碰撞延迟;同时,通过对标签唯一标识码进行进制转换,利用提出的三叉树编码方式对其碰撞位的碰撞情况进行检测,然后自适应调整使用二叉树或三叉树对标签碰撞集进行***,在完全消除空闲时隙延迟基础上,降低了二叉搜索树的整体深度;最后,根据上一帧识别的标签自适应调整质询队列,实现单个质询串对多个滞留标签的识别。本发明算法结构设计精巧,分而治之的对标签进行识别,降低了识别耗能,完全消除了空闲时隙,缩短了识别时间。
Description
技术领域
本发明涉及一种高效RFID自适应型防碰撞跟踪树(HACT)算法,属于物联网架构下RFID射频识别领域。
背景技术
与条形码技术相比,RFID(无线射频识别)技术具有远距离识别、批量读取、可适用于恶劣环境、可读写等诸多优点,可广泛应用于物流管理、交通运输、航空等重要领域。读写器***由后台数据库、读写器、标签组成。读写器通过对贴附在物体上的标签唯一标识(ID)识别进而利用后台数据库实现对物体信息的获取。RFID***使用单双工方式利用共用通信信道实现对其大量标签的识别,多标签同时在共享无线信道中发送信号必然导致信号的混叠,导致读写器不能正确识别标签。如何快速、精确的识别标签是影响其整体***效能的关键制约因素。同时,目前使用的大部分标签为被动式标签,具有造价低廉、计算能力弱、存储量小等特点。因此,设计吞吐量高、标签耗能小的有效防碰撞算法提高读写器对标签的识别效率十分必要。
目前,RFID防碰撞算法主要分为两类:一类是基于ALOHA类的算法,该类算法具有操作简单等优点,但是算法性能受标签估算精度影响较大,普遍吞吐率较低。识别帧包含时隙数与标签数越为接近,算法的吞吐量越大。因此,针对该算法目前的主要研究热点为利用上一帧或者上几帧的空闲时隙、成功识别时隙及碰撞时隙数进而推导当前帧长。然而,受标签估算算法复杂度和精度的影响,大部分估算算法仍然未投入实际使用。同时,ALOHA类算法存在严重的“标签饥饿”现象(部分标签长时间得不到识别),饥饿标签长时间处于碰撞状态,由此导致浪费了大量时隙及标签漏检的问题;另一类算法为树型算法,主要包括前缀质询类(QT)算法和二叉树搜索算法(BS)两大类,树型算法主要通过制定分类规则进而不断将相同特征的标签归为一个集合,而具有不同特征的标签划归为另一个集合,直到集合中仅仅包含一个标签,从而实现了标签唯一性识别的目标,该类算法具有识别精度高的优点,解决了ALOHA类算法的漏检问题。然而,目前的大部分树型算法存在识别时间较长的问题。
发明内容
本发明旨在提供一种高效RFID自适应型防碰撞跟踪树(HACT)算法。该算法针对实际应用环境下在上一帧识别完毕后在下一帧识别过程中仍然可能有大量在上一帧中已经识别的标签滞留在其读写器的识别范围内的情况,采用分而治之的方式,在充分利用滞留标签的信息的基础上,对滞留标签和新到标签采用不同的方法进行识别。具有算法简单、识别效率高、 对标签要求小能特点。
本发明通过以下技术手段进行实现:
HACT算法包括两个阶段:对新到标签的识别和对滞留标签的识别。对新到标签的识别采用三叉树碰撞跟踪位算法;对滞留标签的识别通过利用合并质询前缀,利用一个质询前缀对多个滞留标签进行识别,滞留标签仅需回应单位字节,表明其存在性即可,因而,节省了大量传输耗能、提高了***效率。
本发明设计了一种高效RFID自适应型防碰撞跟踪树(HACT)算法,适应于大量的实际应用环境,其算法执行伪码如图1、图2、图3、图4所示。
伪代码中的符号定义如下:
CurID:保存当前帧所有识别标签的标识码
PrevID:对上一帧已识别标签利用函数Sort_Query(CurID)进行排序后的队列
CurF:读写器当前识别帧号
NextF:读写器下一帧识别帧号
TF:标签当前识别帧号
RID:读写器唯一标识码
Q:用来保存滞留标签质询串队列
Query-Result:对滞留标签的识别情况
foresee-array:若滞留标签同时存在的情况下,其预见识别情况
tagresponsesarray:对滞留标签识别的情况下,其信道中存在标签的反馈信号
Establish_Query(CurID):根据当前帧中所有识别的标签标识码建立滞留标签质询队列
Sort_Query(CurID):按照当前帧中所有识别的标签标识码对其进行排序
QT:阶段二情况下,读写器质询前缀队列
||:联接
*1:信道当中标签传输信号某位发生0、1、2碰撞
*&:信道当中标签传输信号某位发生0、1碰撞
01:信道当中标签传输信号某位发生0、2碰撞
11:信道当中标签传输信号某位发生1、2碰撞
Q1:当一帧接受后利用CurID建立相应的滞留标签查询串时,中间计算结果,代表读写 器在碰撞时隙时的质询串。
Q2:当一帧接受后利用CurID建立相应的滞留标签查询串时,中间计算结果,代表读写器在碰撞时隙时的信道中标签的反馈信号。
⊙:同或运算
本发明的特点在于:
1.利用三叉数编码方式实现了对转化为三进制后的标签标识码进行信道中的碰撞识别,从而,使得新到标签的识别算法自适应的选择二叉树或者三叉树对标签碰撞集进行分割,同时,其识别算法仅仅在碰撞位处进行分割,因此,全面消除了其空闲时隙。
2.利用读写器和标签保存并比对其读写器唯一识别码和识别帧号的方式,从而,使得该算法可以对标签进行分而治之的方式进行识别,对新到标签和滞留标签采用不同的识别方法进行识别。
3.对滞留标签的识别采用合并前缀的思想,节省了传统QT算法读写器多次发送比对前缀位而导致的冗余位,同时,仅仅需要标签发送单位比特以证明自己存在于该读写器的识别范围内。
附图说明
图1为本发明的读写器算法执行流程伪代码
图2为本发明的读写器阶段二对新到标签识别的算法流程伪代码
图3为本发明的标签算法执行流程伪代码
图4是本发明的标签阶段二标签执行算法伪代码
图5为三叉树编码方式
图6为三叉树编码方式对应的碰撞检测及相应的表示
图7为示例识别视图
图8为滞留标签质询串构造
图9为示例质询串构造过程
图10为示例所有质询串,从而构成了示例的质询队列Q
图11为最坏情况下,一个质询串可识别标签情况
图12为二进制转化为三进制的映射表
图13为示例新到标签识别过程
具体实施方式
该算法包括两个阶段:对新到标签的识别和对滞留标签的识别。对新到标签的识别采用三叉树碰撞跟踪位算法;对滞留标签的识别通过利用合并质询前缀,利用一个质询前缀对多个滞留标签进行识别,滞留标签仅需回应单位字节,表明其存在性即可,因而,节省了大量传输耗能、提高了***效率。以下进行具体阐述:
RFID读写器以“帧”作为识别标签时间结点,即RFID***以“帧”为单位对其识别范围内的标签进行识别进而对其标签的归属物体进行物流管理和跟踪等。定义βr,i为第i帧读写器r信号覆盖范围内的标签集,Cs,Ca,Cl分别为第i帧相对于第i+1帧的滞留标签、新到标签、离开标签,由此可知下式:
Cs=βr,i+1∩βr,i
Ca=βr,i+1-βr,i
Cl=βr,i-βr,i+1
一、HACT算法执行流程
其执行流程如图1、图2、图3、图4所示:
(1)如图1,在每帧的初始阶段,将队列CurID置空,用于接收新一帧识别的标签标识码,读写器发送第一阶段命令及自身唯一标识(RID)、当前的质询帧号(CurF)
(2)标签收到该命令后,如图2所示,与标签保存的上一帧质询阅读器唯一标识(RID)、下一帧号(TF)进行对比,若相同,标签判定自身为滞留标签,否则为新到标签。由此,算法对新到标签和滞留标签做了相应的划分。
(3)如图1,若滞留标签质询队列为非空时,读写器发送质询前缀,并结合其接受到的信道中标签的应答信号对滞留标签进行识别;若滞留标签质询队列为空时,则执行阶段二读写器算法流程。
3.1)若Q为NULL,则读写器发送第二阶段命令,执行第二阶段程序,读写器执行流程如图2所示,标签算法执行流程如图4所示,即新到标签识别。以下进行具体说明。
对新到标签的识别基于三叉树碰撞位跟踪防碰撞方法,算法根据标签集信号反馈自适应调整其质询叉数。同时,在读写器检测到碰撞以后,及时发送终止标签传输位命令,终止标签继续传输唯一标识码信号。以下进行具体阐述。
标签首先将其标识由二进制转化为三进制,其转化映射图如图12所示,设标签的标识为b1....bk-1bk,bi∈{0,1},转化后的唯一标识为a1...am-1am,aj∈{0,1,2},其转化公式如下:
bi*22+bi+1*2+bi+2*20=aj*3+aj+1*30
将其标签唯一标识码转化为三进制后,利用三叉树编码方式进行碰撞检测。三叉树编码方式如图5所示,就单Bit位而言,若标识位为1,则其在单Bit传输时段的前1/3采用正电平,后2/3时间段采用负电平,因此,1/3时刻产生一次高到低电平的跳变;若标识位为0,则其在单Bit传输时段的前1/3采用负电平,中间2/3时间段采用正电平,后1/3时刻为负电平,因此,产生两次电平跳变;若标识位为2,则其在单Bit传输时段的前2/3采用负电平,后1/3时刻为负电平,产生一次由低到高的电平跳变。
利用新的编码方式可准确判断碰撞位的碰撞情况,实现步骤如下:假设有三个标签A\B\C,其转化后的三进制标识为:10201201,11101200,12121200,如图6所示,信道中出现不同的碰撞情况和识别情况读写器所解码到的信号不同,因此可以判断其碰撞情况。
当碰撞位包含“0,1,2”时为识别情况1,1/3时刻、2/3时刻正负跳变抵消,整个Bit传输时间内读写器端接收到的都为副载波信号,由此可以断定该位发生了“0,1,2”碰撞。同样可知“1,2”和“0,2”碰撞分别对应于碰撞情况2和3以及单一标签可识别状态分别对应于识别情况1、2和3。其碰撞和识别情况表示方式如图6中所示。由图6可见,每种情况下读写器接受到的信道信号唯一,因此,读写器可以有效检测到标签在某一位的碰撞情况或识别情况。
阅读器根据接收到的信道信号判断碰撞位情况,如图2伪代码6到25行。有两种情况出现:一种是阅读器成功的识别了标签,成功识别的情况下,保存标签ID到CurID;一种是阅读器检测到了碰撞信息,如同算法2伪代码6到23行所示,根据不同的碰撞位情况进而压不同的质询串到质询队列QT当中,识别过程循环执行图2流程,直到每个标签集中仅有一个标签。
其标签执行流程如图4所示,接受到读写器的质询串为q,逐位比对其质询串与自身ID信息,若完全一样,则传输其除质询前缀后的标识码,直到发送完全部的标识码或者检测到读写器的停止传输信号则停止发送其标识码。
阅读器对28个具有15位二进制唯一标识的标签(经过转化后变为10位三进制标识)进行识别的交互消息如图13所示,阅读器根据接收到的信号对具有不同碰撞位碰撞集进行逐次***,其识别过程如图7所示。
3.2)若Q为非NULL,则读写器发送第一阶段命令,执行第一阶段程序,读写器执行流 程如图1所示,标签算法执行流程如图3所示,即滞留标签识别。以下进行具体说明。
当读写器对自身范围内标签开始执行识别操作时,若质询队列Q为非空时,则执行第一阶段算法流程,直到其质询队列为空。
以下假设质询队列Q为非空,即执行第一阶段算法流程。伪代码如图1所示。
算法在上一帧结束后利用函数Establish_Query(CurID)建立滞留标签质询队列Q,其中CurID为上一帧所有识别标签的标识码,质询串构造如图8所示。第一个前缀表示子树的公共前缀,层数表示子树高度(0表示高度为1,以此类推1和2),“***”表示0层即高度为1时,下面三个节点的碰撞和识别情况(0表示空闲时隙,1标识可识别时隙,2表示碰撞时隙);若0层有碰撞节点则对应的下一层需要对该节点下面的三个标签进行说明,1层前缀为对应的补加前缀后,下一位即为碰撞位,进而说明该位的碰撞或识别情况“***”,若有碰撞则需要***其2层补加前缀,定位到其下一个碰撞位,以此类推可以构造该子树的质询串,以从右到左,从下到上的顺序,以此构造其质询串,从而构成质询队列。
读写器在内部构造滞留标签质询串,以图13为fi-1帧识别的标签为例进行具体说明Establish_Query(CurID)。首先读写器建立如图7的三叉树,建立过程如图2,因为此时读写器知道所有滞留标签信息,因此,节省了信道链路传输时间,其运算时间极短。进而可以获得Q1,Q2,其分别代表内部已识别标签在碰撞时隙下读写器质询前缀、碰撞时隙下信道中标签的应答信号。
利用Q1和Q2建立其滞留标签质询串,首先从Q1的最后一个碰撞质询串开始,在Q1查找该碰撞节点的父节点,父节点继续在Q1中查找自身父节点,依次查找,该碰撞节点最多找自身前三代父节点。利用找到的该子树的最老的父节点结合其对应的Q2队列中碰撞情况,对该子树进行恢复,将其找到最老的父节点作为该子树的0层,往下依次为1层,2层,由此可知,0层的节点除碰撞节点为该子树的共有前缀,以此类推1层,2层的节点也是各自下面标签节点的共有前缀,因此,可以对其该子树的质询前缀进行合并,0层的前缀为所有层的质询前缀,1层的质询前缀为2层以下所有标签的质询前缀,以此类推,因此可以合并其质询前缀。并在质询串内中说明每层节点的碰撞和识别情况,并在0层说明该子树的层数。
质询队列中的第一个质询串构造过程如图9所示:首先利用Q1中的最后一个碰撞质询前缀20212查找到上一层质询前缀202,继而查找再上一层碰撞质询前缀2,在Q1中找出所有首 位为2的碰撞质询前缀。同时,结合其标签反应Q2构造滞留标签质询串,利用质询前缀2和相对应的标签反馈信号0*1,可知“20”为子树下标签共有前缀,而下一位发生了碰撞,由此可以构造“202122”,其中20表示共有前缀,而2表示该子树的层数,122说明0层的三个节点(以20为前缀,0,1,2为下一位的标签集)分别对应为可识别时隙,碰撞时隙,碰撞时隙。接着构造第二层质询前缀与识别情况,首先对应于“201”下的时隙为碰撞时隙,因而,根据Q1与Q2的一一对应关系,以“201”为前缀的标签在第一层识别需要加补的前缀为“011”,而且其分支下的三个时隙为可识别实习,因而识别情况为“111”,相应的其以“202”为前缀的标签在一层需要补前缀“1”,其分支下的三个时隙对应为“122”,为了进一步对标签分支情况进行明确,需要加补前缀“21”和“011”。因此可以构造出质询串“202122||011111||1122||21||011||”,其中“||”代表空位,即在该位不发送信号便于标签对数据段进行相应的分段识别,对于1层而言,“||”倒数三位为对应于“0层前缀+‘由碰撞决定的0或1或2’+1层补前缀”+“0或1或2”下的时隙情况,0对应于空闲时隙,即在该前缀下不存在标签,1对应于识别时隙,2对应于碰撞时隙,依据子碰撞树“从上到下,自左而右”的原则,读写器可以依据其质询前缀对具有特殊前缀的标签进行排序后放入PerID队列当中,其对应于图1中的函数Sort_Query(CurID),图7对应构成的所有质询串如图10所示。
发送该质询串后,标签可以判定其自身在其子树上的位置,进而计算出在哪个时隙发送单位bit(1)。若标签全部存在的情况下,可以预见标签的反馈信号为foresee-array={11111111111},标签若存在的情况下反馈信号“1”,标签若不存在则信道当中没有信号,读写器将其记为“0”,进而可知标签反馈信号为Query-array={0,1}length(foresee-array),这里的0表示为信道中没有信号在该标签需要发送比特位的时间段内,在质询串中对0层1层标签碰撞情况进行了说明,而对2层中对质询时隙情况没有进行说明,由此,若对应于原来不存在的标签则在预见数组foresee-array当中以“0”进行表示。在收到Query-array后首先剔除foresee-array[i]=0的位,其后,读写器认为第i个标签存在的情况为Query-array[i]⊙foresee-array[i]为1。在下一帧质询过程中若在规定的时间段内标签没有做出回馈位“1”,则读写器认为标签不存在,在排序好的PurID中将其剔除。
标签接收到质询串后对其在子碰撞树上自身位置进行判断以确定发送单位比特的时隙,其执行流程如图3所示:若接受到的为第一阶段命令且保存的RID与接受到的RID相等,帧 数对等,则将其标志位isResponsible置1,若其中有一个不满足则将其标志位isResponsible置0,并将标签保存RID置为接受到的RID,并将TF置为接受到的CurF+1,之后开始执行第二阶段算法流程。
若isResponsible为1,则根据质询信号判断其在分支树上的位置,在规定时间段内发送单位比特进而表明自己的存在。
以第一个质询串为例进行说明,标签在第一个没有收到信号位的情况下,即“202122||011111||1122||21||011||”中“202122||”截取后四位判断其子树层数及其0层的碰撞情况,而20作为比对前缀,“122”为碰撞情况。因此,以“200”为前缀的标签可以确定自身为可识别时隙下标签,为第一时间段发生单位比特标签;而“201”,“202”为碰撞时隙,进而以“201”为前缀的标签利用下一个“011111||”后三位为碰撞情况,“011”为补加前缀,即2011011为前缀的标签其碰撞情况为三个可识别时隙,该三个标签即以“2011011”为前缀的标签下一位为“0,1,2”的分别在第二、三、四时间段发送单位比特。以202为前缀的标签以“1122||”判断其补加前缀为“1”而其“122”判断其三个分支情况,即“20210”为前缀的标签和以“20211”为前缀的标签为碰撞集,由此,标签继续跟踪其加补前缀“21||”“011||”即以“2021121”为前缀的标签,其具有相同前缀且下一位为“0,1,2”的标签分别确定其发送单位比特的时间为第六、七、八时间段,相应的以“20211011”为前缀的标签可以判断发送单位比特的时间为第9,10,11时间段,具体时间段长度为单位比特从标签到阅读器所需要的时间。
进而读写器接受到信道中标签的反馈信号后,读写器利用Query-array进一步判断其标签的存在情况,若存在则将其对应的标签标识码压进对应的CurID队列中,而将其从PrevID中弹出。
结束其对滞留标签的识别后,进而发送其第二阶段命令,开始对新到标签的识别,其在3.1中进行了具体说明。
二、HACT算法性能分析
以下HACT算法性能进行分析,对新到标签的识别是建立是三叉碰撞位跟踪防碰撞的基础上的。因此,首先对其新到标签的识别算法性能进行分析:
(1)新到标签算法性能分析
防碰撞算法的性能主要是由碰撞时隙、空闲时隙、识别时隙的数量以及***的***吞吐量来进行衡量的。
假设RFID读写器范围内有n个新到标签,标签的标识均匀分布,根据新到标签算法的描述可知,在碰撞位处,根据碰撞的检测结果,自适应的采用二叉树分割或者三叉树分割,碰撞树当中叶子节点对应可识别的时隙,其数量为n,内部节点对应于碰撞时隙,以下分完整三叉树和完整二叉树两种情况进行讨论。
设T1(n)、T1avg(n)和E1(n)、T2(n)、T2avg(n)和E2(n)为完整三叉树和完整二叉树的节点总和、识别一个标签所用的平均时隙数和***吞吐率,T(n)、Tavg(n)和E(n)为三叉碰撞位跟踪算法的节点总和、识别一个标签所用的平均时隙数和***吞吐率。对于时隙的总和,首先以完整三叉树和完整二叉树分别进行推导。
结论1:完整三叉树,即每个碰撞节点包括三个分支节点的情况下,在标签数为n时,总时隙数为T1(n)=(3n-1)/2
证明:以数学归纳法对其进行证明:
当碰撞节点为1时,对应的总时隙为4,标签数为3,由此可知,T1(3)=(3*3-1)/2=4,碰撞节点数为(n-1)/2=1
当碰撞节点数为k时,命题成立的话,则标签数n=2k+1,T1 k(n)=(3*(2k+1)-1)/2。
当碰撞节点数为k+1时,相当于将碰撞节点数k中的某个节点替换为三个可识别的标签,因此,总时隙数为碰撞节点数k的基础上增加了3个时隙,而可识别标签数增加了2个,由此可知,标签数为n=2k+3,T1 k+1(n)={(3*(2k+1)-1)/2}+3,
从而,T1 k+1(n)={(3*(2k+3)-1)/2},也即T1 k+1(n)=(3n-1)/2,由此结论1成立。
进一步可知:
结论2:完整二叉树,即每个碰撞节点包括二个分支节点的情况下,在标签数为n时,总时隙数为T1(n)=2n-1。
证明过程如同完整三叉树证明,同理可知:
由上可知:
1.5≤Tavg(n)≤2
50%≤Eavg(n)≤66%
结论3:标签数量越大,三叉树相对于二叉树的比例越来越大。
证明:假设标签标识具有m位,P(1)为n个标签中任意一位不发生碰撞的概率,P(2)为任意一位(0,1,2中任意两个)碰撞的概率,则:
其中z为n个标签中任意一位为(0,1,2)其中一个的标签数。由此可知,所有标签中任意一位同时包含0,1,2的概率为:
由此可知:
便于简化分析,以奇数个标签情况为例进行分析,由以上公式可知,当n→∞,P(3)→1,令:
当n=4时,f1(n)≈0。同时,对f1(n)求导数可知n≥3时,f′1(n)>0,因此,可以得出当标签的数量较大时,标签标识的每位发生(0,1,2)同时碰撞的概率远远大于P(2),P(1),所以,标签数逐渐增加的过程中,其三叉分支的数量比重逐渐增加。其碰撞时隙相比于可识别时隙的比例越来越小。标签数量越大,其碰撞时隙与可识别时隙的比值越小,趋近于1比2,得 证。
(2)HACT识别算法性能分析
在对新到标签算法性能分析的前提下,继而对HACT的算法性能进行分析:
在HACT中,第一阶段利用读写器构造的质询串对其滞留标签进行识别,在大量标签的情况下,质询串构造中层数基本上都为3层,只有最后少数质询串的层数少于3层,简化分析,这里将所有的质询串层数统一为3层进行分析。在最坏情况下,如图11所示,针对滞留标签,Q质询队列中每个质询串可以对4个标签进行识别。在最好的情况下,可以对27个标签识别,该种情况下分支树为完全三叉数。由此可知,若定义NHACT(Ti+1|Ti)为在fi帧滞留到fi+1帧|Ti|个标签的情况下,设|Ti|=n,在fi+1帧识别|Ti+1|个标签所用的总时隙,则结合结论1、2、3可知:
由此可见,滞留标签的识别过程可以极大的节省标签传输位,从而节省了滞留标签大量的传输耗能及其传输耗时。同时,读写器合并了多个标签的前缀,节省了读写器传输位,从而节省了读写器对滞留标签识别过程当中的耗时和耗能。
Claims (8)
1.一种高效RFID自适应型防碰撞跟踪树(HACT)算法,其特征在于包含以下实现步骤:
(1)利用发送识别帧号和上一帧识别读写器唯一标识码对滞留标签和新到标签进行分类。
(2)分类后,对滞留标签的识别,采用合并前缀法,实现了一个质询串对多个标签的识别。
(3)对新到标签的识别,采用三叉树碰撞位跟踪法自适应的跟踪碰撞位碰撞情况,进而采用二叉树或三叉树对其碰撞集进行***。
(4)当一帧结束后,利用函数Establish_Query(CurID),建立下一帧滞留标签质询队列。并对应的利用Sort_Query(CurID)对当前帧识别的标签进行排序。
2.如权利要求1所述的一种高效RFID自适应型防碰撞跟踪树(HACT)算法,其特征在于:
所述步骤(1)中利用发送识别帧号和上一帧识别读写器唯一标识码对滞留标签和新到标签进行分类的具体实现方法如下:
1.1)读写器第一阶段(1-Phase)命令,自身的唯一标识码RID及该帧的识别帧号CurID
1.2)标签接受到上个消息后,若其非终止帧命令,则验证其是否非第一阶段命令、验证接受到的RID是否等于自身保存的RID,标签的识别帧号TF是否与读写器发送的CurF相等,若全部相等的情况下,置标志位isResponsible为1,表明其自己为滞留标签,接受第一阶段识别算法。否则,置标志位isResponsible为0,表明其自己为新到标签,接受第二阶段识别算法。
3.如权利要求1所述的一种高效RFID自适应型防碰撞跟踪树(HACT)算法,其特征在于:
所述步骤(4)中当一帧结束后,利用Establish_Query(CurID)构造了滞留标签质询队列并保存于队列Q中,并利用Sort_Query(CurID)相应的对滞留标签的唯一标识码进行排序并保存。其实现方法如下:
4.1)读写器内部模拟新到标签的识别方法,利用队列CurID建立的三叉碰撞跟踪树。进而保存其碰撞时隙的质询队列Q1,及其碰撞时隙内的信道中接受到的碰撞队列Q2,该步没有实际信号位在信道链路上的传输耗用时间,因此,该步骤耗时极短。
4.2)利用Q1和Q2建立其滞留标签质询串,首先从Q1的最后一个碰撞质询串开始,在Q1查找该碰撞节点的父节点,父节点继续在Q1中查找自身父节点,依次查找。该碰撞节点最多找 自身前三代父节点。利用找到的该子树的级别最高的父节点结合其对应的Q2队列中碰撞情况,对该子树进行恢复,将其找到的级别最高的父节点作为该子树的0层,往下依次为1层,2层,由此可知,0层的节点除碰撞节点为该子树的共有前缀,以此类推1层,2层的节点也是各自下面标签节点的共有前缀,因此,可以对其该子树的质询前缀进行合并,0层的前缀为所有层的质询前缀,1层的质询前缀为2层以下所有标签的质询前缀,以此类推,因此可以合并其质询前缀。并在质询串内中说明每层节点的碰撞和识别情况,并在0层说明该子树的层数。
4.3)依据该子树上可识别节点从上到下、从左到右的次序对其识别节点对应的标签进行排序,利用Sort_Query(CurID)依次将其压入队列PrevID。
4.4)当建立了第一个质询串后,将其该子树在Q1和Q2中该子树对应的质询串和碰撞反应串删除,相应的查找到该子树0层节点的父节点,对该父节点对应Q2中的碰撞反应串进行修改,以删除其该子树分支。
4.5)当建立第一个子树质询串,再次从Q1的最后一个碰撞质询串开始,建立第二个子树质询串,进而依据从下到上,从右到左的规则,依次建立所有子树的质询串,从而形成其所有滞留标签的质询队列Q,和其对应的PrevID。
4.如权利要求1所述的一种高效RFID自适应型防碰撞跟踪树(HACT)算法,其特征在于:
所述步骤(3)对新到标签的识别,采用三叉树碰撞位跟踪法自适应的跟踪碰撞位碰撞情况,其实现步骤如下:
3.1)对标签的唯一标识码由二进制转化为三进制,其转化公式如下:
设标签的标识为b1....bk-1bk,bi∈{0,1},转化后的唯一标识为a1...am-1am,aj∈{0,1,2},其转化公式如下:
bi*22+bi+1*2+bi+2*20=aj*3+aj+1*30
3.2)读写器从质询队列QT中取出质询串发送给标签,标签比对质询前缀后,若完全相等的情况下,标签应答其除与质询串完全相同的标签唯一标识码剩余部分,其利用三叉树编码方式进行编码,读写器根据接受到的信道中的标签应答信号进而判断其碰撞情况,进而压 相应的质询串到质询队列QT中。
3.3)当检测到首位碰撞位后,立马发送其终止传输位信号给标签,进而节省了标签的传输耗能和识别耗时。
5.如权利要求4所述的新到标签识别算法,其特征在于:
1)三叉树编码方式:
就单Bit传输位而言,若标识位为1,则其在单Bit传输时段的前1/3采用正电平,后2/3时间段采用负电平,因此,1/3时刻产生一次高到低电平的跳变;若标识位为0,则其在单Bit传输时段的前1/3采用负电平,中间2/3时间段采用正电平,后1/3时刻为负电平,因此,产生两次电平跳变;若标识位为2,则其在单Bit传输时段的前2/3采用负电平,后1/3时刻为负电平,产生一次由低到高的电平跳变。
2)根据三叉树编码方式,对应于碰撞位,在信道当中检测到的信号不尽然相同,当碰撞位具有“0,1,2”碰撞时,1/3和2/3时刻都对应的正负跳变抵消,因而,真个传输位检测到的都是正电平信号;对应的若“0,2”碰撞,则后2/3传输位都为正电平,前1/3的传输位为负电平;依次类推,其对应不同的碰撞情况和识别情况,信道中接受到的信号不同,因而,读写器根据不同的碰撞情况,压不同的质询串到质询队列QT中。因此,读写器可以自适应的对碰撞标签集进行三叉树或二叉树分割。
6.如权利1和3对滞留标签的识别,其特征在于:
所述步骤(2)中对滞留标签的识别,采用合并前缀法,实现了一个质询串对多个标签的识别。其具体识别步骤如下:
2.1)若标签都存在的情况下,同时考虑其在建立2层质询前缀时没有在质询串中对子树最底层的标签进行说明,建立其数组foresee-array。若标签存在,则在foresee-array中对应的位为1。
2.2)读写器利用Establish_Query(CurID)建立的滞留标签质询队列,逐次发送质询队列,标签根据其质询串计算自身发送单位比特的时隙,进而表明其自己的存在,若不存在的情况下,信道中在某时隙检测不到任何信号,读写器将其标记为0。读写器根据接受到标签发送的信道信号,进而建立其数组tagresponsesarray。
2.3)令Query-Result=foresee-array⊙tagresponsesarray,在Query-Result与foresee-array都为1时,则对应于该节点的标签存在,进而将其PrevID中压进CurID中。否则若Query-Result等 于1,但tagresponsesarray为0的情况下,删除PrevID中的标签唯一标识码;若Query-Result等于1但foresee-array为0的情况下,读写器直接跳过该位。
2.4)逐次利用Q中的质询串对滞留标签进行识别,当Q为空时,则执行阶段二新到标签的识别。
7.如权利1和权利3所述的一种高效RFID自适应型防碰撞跟踪树(HACT)算法,其特征在于:
在完成整个识别帧后,利用Establish_Query(CurID)建立下一帧读写器质询队列Q,并依据质询队列Q对应的利用Sort_Query(CurID)建立排序后的滞留标签队列PrevID。当新的识别帧开始时,读写器修改其帧号CurID。同时,当上一识别帧对某一标签的识别结束后,标签对应的修改其帧号TF,及其标签内部保存的读写器唯一标识符RID。
8.在上述一种高效RFID自适应型防碰撞跟踪树(HACT)算法中涉及到的变量、定义及运算符号分别说明如下:
CurID:保存当前帧所有识别标签的标识码
PrevID:对上一帧已识别标签利用函数Sort_Query(CurID)进行排序后的队列
CurF:标签当前识别帧号
TF:标签当前识别帧号
RID:读写器唯一标识码
Q:用来保存滞留标签质询串队列
Query-Result:对滞留标签的识别情况
foresee-array:若滞留标签同时存在的情况下,其预见识别情况
tagresponsesarray:对滞留标签识别的情况下,其信道中存在标签的反馈信号
Establish_Query(CurID):根据当前帧中所有识别的标签标识码建立滞留标签质询队列
Sort_Query(CurID):按照当前帧中所有识别的标签标识码对其进行排序
QT:阶段二情况下,读写器质询前缀队列
Q1:当一帧接受后利用CurID建立相应的滞留标签查询串时,中间计算结果,代表读写器在碰撞时隙时的质询串。
Q2:当一帧接受后利用CurID建立相应的滞留标签查询串时,中间计算结果,代表读写器在碰撞时隙时的信道中标签的反馈信号。
⊙:同或运算 。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310606630.9A CN103577783A (zh) | 2013-11-25 | 2013-11-25 | 一种高效rfid自适应型防碰撞跟踪树算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310606630.9A CN103577783A (zh) | 2013-11-25 | 2013-11-25 | 一种高效rfid自适应型防碰撞跟踪树算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103577783A true CN103577783A (zh) | 2014-02-12 |
Family
ID=50049540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310606630.9A Pending CN103577783A (zh) | 2013-11-25 | 2013-11-25 | 一种高效rfid自适应型防碰撞跟踪树算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103577783A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104200246A (zh) * | 2014-08-13 | 2014-12-10 | 北京邮电大学 | 分组n叉跟踪树型rfid防碰撞算法 |
CN104766034A (zh) * | 2015-04-16 | 2015-07-08 | 安徽农业大学 | 适用于rfid***的精简ipa防碰撞算法 |
CN106156681A (zh) * | 2016-07-06 | 2016-11-23 | 西北工业大学 | 移动rfid***中基于自适应三进制查询***的标签防碰撞方法 |
CN108537079A (zh) * | 2018-03-12 | 2018-09-14 | 吉林大学 | 一种基于碰撞因子的自适应分叉查询树多标签防碰撞方法 |
CN108898037A (zh) * | 2018-06-08 | 2018-11-27 | 东南大学 | 一种能量节约型自适应后退锁位式防碰撞方法 |
CN108989708A (zh) * | 2018-07-25 | 2018-12-11 | 长芯盛(武汉)科技有限公司 | 通用多媒体接口的低速信号光电转换模块 |
CN109241802A (zh) * | 2018-09-25 | 2019-01-18 | 西南科技大学 | 一种用于移动rfid***的多标签识别方法 |
CN110348246A (zh) * | 2018-04-08 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种验证信息的生成方法、装置、终端设备和介质 |
CN114186572A (zh) * | 2021-11-08 | 2022-03-15 | 南京信息工程大学 | 一种基于冲突时隙协调的未知标签识别方法及*** |
WO2023174346A1 (zh) * | 2022-03-16 | 2023-09-21 | 中兴通讯股份有限公司 | 碰撞检测方法、电子设备、计算机可读介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060158312A1 (en) * | 2005-01-12 | 2006-07-20 | Samsung Electro-Mechanics Co., Ltd. | Anti-collision method and system using optimized binary search tree |
CN101499121A (zh) * | 2008-02-03 | 2009-08-05 | 中兴通讯股份有限公司 | 一种用于射频识别的防碰撞方法 |
US20100182128A1 (en) * | 2008-01-04 | 2010-07-22 | Chung-Ang University Industry-Academic Cooperation Foundation | Tag identification method, tag anticollision method, rfid tag |
CN101840489A (zh) * | 2010-06-02 | 2010-09-22 | 西南交通大学 | 一种基于碰撞树的多标签识别防碰撞方法 |
CN102013002A (zh) * | 2010-12-13 | 2011-04-13 | 中国人民解放军国防科学技术大学 | 基于混合树的多标签防碰撞方法 |
CN102663333A (zh) * | 2011-12-18 | 2012-09-12 | 西北工业大学 | 一种rfid***中基于自适应混合查询树的标签防碰撞方法 |
-
2013
- 2013-11-25 CN CN201310606630.9A patent/CN103577783A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060158312A1 (en) * | 2005-01-12 | 2006-07-20 | Samsung Electro-Mechanics Co., Ltd. | Anti-collision method and system using optimized binary search tree |
US20100182128A1 (en) * | 2008-01-04 | 2010-07-22 | Chung-Ang University Industry-Academic Cooperation Foundation | Tag identification method, tag anticollision method, rfid tag |
CN101499121A (zh) * | 2008-02-03 | 2009-08-05 | 中兴通讯股份有限公司 | 一种用于射频识别的防碰撞方法 |
CN101840489A (zh) * | 2010-06-02 | 2010-09-22 | 西南交通大学 | 一种基于碰撞树的多标签识别防碰撞方法 |
CN102013002A (zh) * | 2010-12-13 | 2011-04-13 | 中国人民解放军国防科学技术大学 | 基于混合树的多标签防碰撞方法 |
CN102663333A (zh) * | 2011-12-18 | 2012-09-12 | 西北工业大学 | 一种rfid***中基于自适应混合查询树的标签防碰撞方法 |
Non-Patent Citations (2)
Title |
---|
滕培俊 等: "一种基于二进制树的RFID防冲突算法研究", 《通信技术》 * |
王新锋 等: "无源射频识别***中前缀分段匹配二进制防碰撞算法", 《兵工学报》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104200246B (zh) * | 2014-08-13 | 2017-10-17 | 北京邮电大学 | 分组n叉跟踪树型rfid防碰撞算法 |
CN104200246A (zh) * | 2014-08-13 | 2014-12-10 | 北京邮电大学 | 分组n叉跟踪树型rfid防碰撞算法 |
CN104766034A (zh) * | 2015-04-16 | 2015-07-08 | 安徽农业大学 | 适用于rfid***的精简ipa防碰撞算法 |
CN106156681B (zh) * | 2016-07-06 | 2018-12-14 | 西北工业大学 | 移动rfid***中基于自适应三进制查询***的标签防碰撞方法 |
CN106156681A (zh) * | 2016-07-06 | 2016-11-23 | 西北工业大学 | 移动rfid***中基于自适应三进制查询***的标签防碰撞方法 |
CN108537079A (zh) * | 2018-03-12 | 2018-09-14 | 吉林大学 | 一种基于碰撞因子的自适应分叉查询树多标签防碰撞方法 |
CN110348246A (zh) * | 2018-04-08 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种验证信息的生成方法、装置、终端设备和介质 |
CN110348246B (zh) * | 2018-04-08 | 2022-08-30 | 腾讯科技(深圳)有限公司 | 一种验证信息的生成方法、装置、终端设备和介质 |
CN108898037A (zh) * | 2018-06-08 | 2018-11-27 | 东南大学 | 一种能量节约型自适应后退锁位式防碰撞方法 |
CN108898037B (zh) * | 2018-06-08 | 2021-03-19 | 东南大学 | 一种能量节约型自适应后退锁位式防碰撞方法 |
CN108989708A (zh) * | 2018-07-25 | 2018-12-11 | 长芯盛(武汉)科技有限公司 | 通用多媒体接口的低速信号光电转换模块 |
CN108989708B (zh) * | 2018-07-25 | 2021-01-08 | 长芯盛(武汉)科技有限公司 | 通用多媒体接口的低速控制信号光电转换模块 |
CN109241802A (zh) * | 2018-09-25 | 2019-01-18 | 西南科技大学 | 一种用于移动rfid***的多标签识别方法 |
CN114186572A (zh) * | 2021-11-08 | 2022-03-15 | 南京信息工程大学 | 一种基于冲突时隙协调的未知标签识别方法及*** |
WO2023174346A1 (zh) * | 2022-03-16 | 2023-09-21 | 中兴通讯股份有限公司 | 碰撞检测方法、电子设备、计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103577783A (zh) | 一种高效rfid自适应型防碰撞跟踪树算法 | |
Myung et al. | An adaptive memoryless protocol for RFID tag collision arbitration | |
CN103020568B (zh) | 基于标签id预处理的rfid防碰撞方法 | |
Zhang et al. | Assigned tree slotted aloha RFID tag anti-collision protocols | |
CN103473524A (zh) | Rfid多标签识别方法、阅读器和标签 | |
CN103020569A (zh) | 一种射频识别多标签防碰撞方法 | |
CN103955657A (zh) | 一种基于盲分离的帧时隙超高频rfid***防碰撞方法 | |
Chen et al. | An enhanced anti-collision algorithm in RFID based on counter and stack | |
CN104573593B (zh) | 一种基于帧时隙的欠定盲分离rfid防碰撞方法 | |
He et al. | A fast RFID tag identification algorithm based on counter and stack | |
Kim et al. | Improved 4-ary query tree algorithm for anti-collision in RFID system | |
CN104166867B (zh) | 一种多hash函数多帧耦合型rfid防碰撞算法(mhmfg) | |
CN102479316A (zh) | Rfid电子标签序列号的二进制防冲突识别方法 | |
CN100592321C (zh) | 一种融合数据库的查询树射频标签反碰撞识别方法 | |
Yan et al. | A memoryless binary query tree based successive scheme for passive RFID tag collision resolution | |
CN104933178A (zh) | 官方网站确定方法及*** | |
CN103971077A (zh) | 一种基于crc码分组的超高频rfid***aloha防碰撞方法 | |
Zhu et al. | Dynamic grouping in RFID systems | |
CN115221135B (zh) | 一种工业互联网数据的共享方法及*** | |
Quan et al. | Performance analysis of tag anti-collision algorithms for RFID systems | |
CN110210266A (zh) | 一种五叉树搜索rfid防碰撞方法 | |
Yeh et al. | A novel RFID tag identification protocol: adaptive n-resolution and k-collision arbitration | |
Hu et al. | A novel anti-collision algorithm for RFID system | |
Jianbin et al. | Anti-collision algorithm based on counting mechanism and multi-state binary | |
Lee et al. | QT-CBP: A new RFID tag anti-collision algorithm using collision bit positioning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140212 |