首页> 中国专利> 移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法

移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法

摘要

本发明公开了一种移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法,用于解决现有方法标签识别能力差的技术问题。技术方案是根据标签ID序列的二进制表示与三进制表示之间的关系,给出相应的转换公式,构建三叉查询树,优化树型识别方案的性能,解决了三进制查询分裂的应用问题。根据三叉查询树中查询命令的三进制分裂特性,提出三进制解决方案,来快速识别读写区域内的原有停留标签,减少查询命令的数目;并利用三叉查询树方案识别新加入的标签,缩减查询命令的长度,有效解决了标签识别能力差的技术问题。利用分块技术,分别处理原有停留标签与新加入标签的信息碰撞问题,并在此基础上,设计新型标签识别的通信流程。

著录项

  • 公开/公告号CN106156681A

    专利类型发明专利

  • 公开/公告日2016-11-23

    原文格式PDF

  • 申请/专利权人 西北工业大学;

    申请/专利号CN201610531707.4

  • 发明设计人 蒋毅;张若南;程伟;李彬;

    申请日2016-07-06

  • 分类号G06K7/10(20060101);

  • 代理机构61204 西北工业大学专利中心;

  • 代理人王鲜凯

  • 地址 710072 陕西省西安市友谊西路127号

  • 入库时间 2023-06-19 00:57:41

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-14

    授权

    授权

  • 2016-12-21

    实质审查的生效 IPC(主分类):G06K7/10 申请日:20160706

    实质审查的生效

  • 2016-11-23

    公开

    公开

说明书

技术领域

本发明属于射频识别RFID通信领域,特别涉及一种移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法。

背景技术

无线射频识别技术(Radio Frequency Identification,RFID)是一种非接触式的自动识别系统,被广泛应用于物流、运输、安全、目标跟踪等多种场合。一般情况下,RFID系统由多个阅读器和大规模无源标签组成,阅读器与标签之间的通信基于共享的无线数据信道。当多个标签同时响应一个阅读器的查询命令时,将产生标签碰撞问题,影响标签的正常识别,延长识别时间,是急需解决的关键问题。在移动RFID环境中,标签具有可移动性,即可以进入或离开阅读器的读写范围,也可以停留在原读写区域内。标签的当前状态可分为三类:停留标签、离开标签和加入标签,其中,在上一帧已经被识别,而在当前帧仍然停留在原阅读器读写区域内的标签被称为停留标签;在上一帧已经被识别,在当前帧离开原阅读器读写区域的标签被称为离开标签;新进入阅读器读写区域,且在当前帧需要被识别的标签称为加入标签。为了适用于目标跟踪、定位及监控等应用,阅读器将会不断重复识别停留在其读写区域内的相同标签,这将消耗大量的资源,并增加新的碰撞问题。

文献“一种基于标签分裂的RFID标签防碰撞协议,IEEE平行与分布系统,2007,vol.18(6),p.763-775,”公开了两种标签防碰撞协议,其中自适应查询分裂协议AQS基于查询树QT,而自适应二进制分裂协议ABS基于二叉树BT,为了减少碰撞、缩短识别时间,两个协议都利用了上轮识别过程中得到的相应信息,但不能解决新加入标签与原有标签之间的碰撞问题,因而识别延时有待改善。文献“两种基于自适应二进制分裂的分块标签识别方案,IEEE计算机网络,2009,vol.17(3),p.962-975,”公开了两种标签防碰撞算法:基于单独解决方案的分块ABS算法(SRB)和基于成对解决方案的分块ABS算法(PRB),两种算法均利用分块技术分别处理原有标签和新加入标签的识别,因而可以有效解决它们之间的碰撞问题;PRB利用成对解决方案可一次识别两个时隙的内容,因而对原有标签的识别时间减半。文献“两种基于自适应查询分裂的分块标签识别方案,IEEE移动计算,2012,vol.11(10),P.1450-1463,”还公开了两种基于AQS的算法:基于成对解决方案的分块算法CRB和其改进算法ECRB。CRB采用成对解决方案,一次发送两个ID前缀来识别两个标签,而ECRB仅发送一个ID前缀就可达到同样的效果。运用两种算法对于原有停留标签的识别时延将减半,并在相同的情况下,ECRB发送信息的比特数将少于CRB算法。以上四种算法均没有考虑三进制查询树的结构,已有文献表明三叉树在树状结构中具有较优的性能,因而其整体性能有待改善。

发明内容

为了克服现有方法标签识别能力差的不足,本发明提供一种移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法。该方法根据标签ID序列的二进制表示与三进制表示之间的关系,给出相应的转换公式,构建三叉查询树,优化树型识别方案的性能,解决了三进制查询分裂的应用问题。根据三叉查询树中查询命令的三进制分裂特性,提出三进制解决方案,来快速识别读写区域内的原有停留标签,减少查询命令的数目;并利用三叉查询树方案识别新加入的标签,缩减查询命令的长度,有效解决了标签识别能力差的技术问题。利用分块技术,分别处理原有停留标签与新加入标签的信息碰撞问题,并在此基础上,设计新型标签识别的通信流程,进一步规划标签与阅读器的处理流程,并通过实例展示其在不同情况下的处理方式。理论性能分析和仿真结果表明,本方法在停留率、加入率及标签数目等参数的变化下,其识别时延优于背景技术方法。

本发明解决其技术问题所采用的技术方案:一种移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法,其特点是包括以下步骤:

步骤一、针对标签ID序列从二进制向三进制转换的问题,构造转换方法,并建立三叉查询树,用于后续的三进制解决方案,在标签识别时有效减少查询命令的数目和长度;

根据标签ID序列的长度分为以下两种情况:

1、二进制完全转化为三进制;

当l/3=L/2时,标签ID序列从二进制向三进制转换的公式1为:

ai×22+ai+1×21+ai+2×20=bj×31+bj+1×30>

其中,l为标签ID序列二进制表示时的长度;L为标签ID序列三进制表示时的长度;标签ID序列的二进制表示为:{a1a2a3…al},al∈{0,1};标签ID序列的三进制表示为:{b1b2b3...bL},bL∈{0,1,2};i∈{1,4,7...l},j∈{1,3,5...L}。

此时依据公式,二叉查询树完全转化为三叉查询树。

2、二进制部分转化为三进制;

当l不能被3整除时,只将标签ID二进制序列中能够被3整除的部分转化为三进制,而剩余部分不变,其中包含1个或2个二进制bit,并构造同时包含三叉查询树和二叉查询树的混合查询树。

步骤二、当各标签ID已根据步骤一合理转换后,则标签识别处理流程如下:

1、阅读器端的处理流程。

阅读器把其读写区域内标签的识别时间划分为多个帧,并存储上一帧中已识别的标签ID,利用函数queue_con()生成能够成功识别的查询命令集合Q,其中queue_con()的计算方法依据三叉查询树的生成规律构建,利用三进制查询分裂,选取具有相同前缀的标签ID中下一个不相同的前缀作为查询命令。在每帧的开始,阅读器向其读写区域内的所有标签发送起始消息,包括其自身ID号IDRi,和当前帧号FCi

三进制查询分裂为:一个查询命令的响应信息若产生碰撞,依据三叉查询树结构,原查询命令最多分裂为三个不同查询命令进行识别。

阅读器分别处理原有停留标签和新加入标签的识别,处理流程如下:

(1)对于原有停留标签的识别处理;

当Q不为空时,此阶段将进行原有停留标签的识别处理,阅读器从Q中提取第一个识别请求序列Q1={q1q2q3...qx,qx∈{0,1,2}},并判断Q中是否存在和Q1拥有相同前缀q1q2q3...qx-1仅qx不同的其他序列,若有,则将这些序列的数目存储于变量flag_qx中,并将Q1new={q1q2q3...qx-1}作为新的查询命令序列发送给其读写范围里的标签;否则,维持原查询命令序列不变,并向外发送。

当查询命令发送后,会收到标签的响应信息,根据不同的响应情况,处理过程如下:

a)若收到超过一个标签的响应信息,即产生碰撞时隙,通过分析Q1new、上一帧已识别标签ID的集合Ti(pre)和flag_qx,阅读器判断对应此次查询命令的标签是原有停留标签还是离开标签。若收到响应数目小于flag_qx,则发送响应的标签为原有停留标签,对比Ti(pre),将其ID存储于当前帧的已识别标签ID集合Ti(cur)中,拥有相同前缀的剩余标签为离开标签;若收到响应数目等于flag_qx,则发送响应的标签全部为原有停留标签,对比Ti(pre),将其ID存储于当前帧的已识别标签ID集合Ti(cur)中,此时没有离开标签。

b)若只收到一个标签的响应信息,即为可读时隙,阅读器直接识别标签,将其ID存储于当前帧的已识别标签ID集合Ti(cur)中,则离开标签的数目为flagqx-1,从Q1new和Ti(pre)中对比得到其ID值。

c)若没有收到标签的响应信息,即为空闲时隙,离开标签的数目为flagqx,阅读器从Q1new和Ti(pre)中对比得到其ID值。

在第一个识别请求序列发送并识别结束后,从Q中提取第二个序列继续识别,直到Q为空。上述处理过程称为三进制解决方案,利用存储在阅读器内的上一帧已识别标签的ID,对原有停留标签进行快速识别。

(2)对于新加入标签的识别处理;

当Q为空时,此阶段将进行新加入标签的识别处理,这表明在上一帧中没有已识别的标签存在或原停留标签在当前帧已识别完毕。根据上一帧新加入标签的数目A_ar,来构建三叉查询树。阅读器每识别一个标签,都将更新变量A_arcur=A_arcur+1,并将识别标签的ID存储于Ti(cur)中。其中,A_arcur表示当前帧新加入标签的数目。

如果在读写区域内的标签都已识别完毕,阅读器将发送终止命令,结束识别。阅读器将更新当前帧号FCi=FCi+1,分别拷贝Ti(cur)和A_arcur给Ti(pre)和A_ar,并将Ti(cur)和A_arcur置位为0。最后利用Ti(pre)和函数queue_con()生成新的集合Q,用于下一帧的识别。

2、标签端的处理流程。

标签在变量IDTRi和Fi中分别存储了上一帧所属的阅读器ID号和下一帧的帧号,当标签收到阅读器的起始消息后,对比IDRi和IDTRi,以及FCi和Fi的值,若都相等,则标签在当前帧对于阅读器而言为原有停留标签;若任意一个不相等,则标签为新加入标签。

若标签收到属于自己状态的识别请求,则检查自身的ID号前缀是否与收到的查询命令相等,如果相等,则向阅读器发送自己的ID,并更新IDTRi和Fi的值;否则,标签将忽略查询命令。

本发明的有益效果是:该方法根据标签ID序列的二进制表示与三进制表示之间的关系,给出相应的转换公式,构建三叉查询树,优化树型识别方案的性能,解决了三进制查询分裂的应用问题。根据三叉查询树中查询命令的三进制分裂特性,提出三进制解决方案,来快速识别读写区域内的原有停留标签,减少查询命令的数目;并利用三叉查询树方案识别新加入的标签,缩减查询命令的长度,有效解决了标签识别能力差的技术问题。利用分块技术,分别处理原有停留标签与新加入标签的信息碰撞问题,并在此基础上,设计新型标签识别的通信流程,进一步规划标签与阅读器的处理流程,并通过实例展示其在不同情况下的处理方式。理论性能分析和仿真结果表明,本方法在停留率、加入率及标签数目等参数的变化下,其识别时延优于背景技术方法。

下面结合附图和具体实施方式对本发明作详细说明。

附图说明

图1为本发明方法处理流程的伪代码;

图1(a)为阅读器端的处理流程;

图1(b)为标签端的处理流程;

图2为标签ID完全三进制转换的情况下本发明方法的实施例图;

图2(a)三叉查询树的结构图;

图2(b)标签识别的流程;

图3为标签ID部分三进制转换的情况下本发明方法的实施例图;

图3(a)混合查询树的结构图;

图3(b)标签识别的流程;

图4为验证本发明方法性能的仿真结果图;

图4(a)为识别所需的总时隙数目与停留率的关系图;

图4(b)为识别所需的总时隙数目与加入率的关系图;

图4(c)为识别所需的总时隙数目与标签数目的关系图。

具体实施方式

参照图1-4。本发明移动RFID系统中基于自适应三进制查询分裂的标签防碰撞方法具体步骤如下:

1、针对标签ID序列从二进制向三进制转换的问题,构造转换方法,并建立三叉查询树,用于后续的三进制解决方案,在标签识别时有效减少查询命令的数目和长度;

根据标签ID序列的长度分为以下两种情况:

(1)二进制完全转化为三进制;

当l/3=L/2时,标签ID序列从二进制向三进制转换的公式1为:

ai×22+ai+1×21+ai+2×20=bj×31+bj+1×30>

其中,l为标签ID序列二进制表示时的长度;L为标签ID序列三进制表示时的长度;标签ID序列的二进制表示为:{a1a2a3…al},al∈{0,1};标签ID序列的三进制表示为:{b1b2b3...bL},bL∈{0,1,2};i∈{1,4,7...l},j∈{1,3,5...L}。

此时依据公式,二叉查询树完全转化为三叉查询树。

如果标签ID序列的长度可以被3整除,则二叉树可以完全转换为三叉树。假设在上一帧的标签识别任务已经完成,在Ti(pre)中,已读标签ID的二进制表示为:{000,001,010,110,111},设标签110离开了阅读器的读写范围,标签100和101为新加入的标签。

根据转换公式(1),标签ID的二进制表示可完全转换为三进制,经过转换后,上一帧已识别标签的ID为:{00,01,02,20,21},由此可根据函数queue_con()生成查询命令序列的集合Qcon={00,01,02,20,21}。利用三进制解决方案,从Qcon中提取相同前缀构成新的查询命令序列的集合Qcon(new)={0,2},这将意味着仅需要两个时隙就可以识别原有停留标签。从图2(b)可以看出,本方法的查询次数与查询命令序列的长度均小于成对解决方案。

根据公式(1)可得,标签20离开了阅读器的读写范围,标签11和12是新加入的标签。在每帧的开始,标签通过比较起始消息中IDRi和FCi的值,来确定自身的当前状态,选择是否响应查询命令。在本例中,阅读器首先向所有标签发送查询命令序列0,标签响应发生了碰撞,此时flagqx=3,根据Ti(pre),阅读器可以判断有3个标签{00,01,02}同时响应了查询命令。通过使用本方法,可以使用一个时隙来同时识别最多3个标签,因而本方法可以有效地减少标签识别的总时隙数。在下一个时隙中,阅读器向所有标签发送查询命令序列2,此时仅有标签21响应,此时flagqx=2,根据Ti(pre),阅读器可以判断标签20已经离开了读写区域。当Q为空后,阅读器开始进行新加入标签的识别,根据上一帧新加入标签的数目A_ar,建立三叉查询树。在本例中,阅读器使用查询命令序列{11,12}来读取加入标签,最后阅读器将更新各参数,将已读标签的ID记录于Ti(pre)中。

(2)二进制部分转化为三进制;

当l不能被3整除时,只将标签ID二进制序列中可以被3整除的部分转化为三进制,而剩余部分不变,其中包含1个或2个二进制bit,并构造同时包含三叉查询树和二叉查询树的混合查询树。

如果标签ID序列的长度不能被3整除,则将能整除部分转换为三进制,而剩余部分不变,查询树将由二叉树和三叉树混合构成。识别处理流程依然可使用三进制解决方案,必要时剩余部分可使用成对解决方案来处理。

假设上一帧的标签识别任务已经完成,在Ti(pre)中,已读标签ID的二进制表示为:{0000,0011,0100,1000,1010,1101},设标签1010离开了阅读器的读写范围,标签0101和0110为新加入的标签。

根据转换公式(1),标签ID的二进制表示只能部分转换为三进制,经过转换后,上一帧已识别标签的ID为:{000,011,020,110,120,201},由此可根据函数queue_con()生成查询命令序列的集合Qcon={00,01,02,11,12,2}。利用三进制解决方案,从Qcon中提取相同前缀构成新的查询命令序列的集合Qcon(new)={0,1,2},这将意味着仅需要三个时隙就可以识别原有的停留标签。从图3(b)可以看出,本方法的查询次数与查询命令序列的长度均小于成对解决方案。

根据公式(1)可得,标签120离开了阅读器的读写范围,标签021和100是新加入的标签。在每帧的开始,标签通过比较起始消息中IDRi和FCi的值,来确定自身的当前状态,选择是否响应查询命令。在本例中,阅读器首先向所有标签发送查询命令序列0,标签响应发生了碰撞,此时flagqx=3,根据Ti(pre),阅读器可以判断有3个标签{000,010,020}同时响应了查询命令。通过使用本方法,可以在一个时隙使用一个查询命令就可以同时识别最多3个标签,因而本方法可以有效地减少标签识别的总时隙数。在下一个时隙中,阅读器向所有标签发送查询命令序列1,此时仅有标签110响应,此时flagqx=2,根据Ti(pre),阅读器可以判断标签120已经离开了读写区域。阅读器继续向所有标签发送查询命令序列2,仅有201响应,此时flagqx=1,表明没有标签离开。当Q为空后,阅读器开始进行新加入标签的识别,根据上一帧新加入标签的数目A_ar,建立混合查询树。在本例中,阅读器使用查询命令序列{0,1}来读取加入标签。最后阅读器将更新各参数,将已读标签的ID记录于Ti(pre)中。

2、ATQS的理论性能分析。

此处主要分析在阅读器读写范围内标签的总识别时延,可用识别标签所需的时隙数目来定义总时延。假设在第i个帧内,阅读器读写范围内标签的集合为Ti,其数目为n,SATQS(Ti)为使用ATQS方法识别Ti所需的时隙数目,CATQS(Ti)为在查询过程中碰撞时隙的数目,narr(i)和nlea(i)分别为加入和离开的标签数目。

若上一帧中没有停留标签,则Ti中仅包含新加入的标签,可由公式(2)获得SATQS(Ti)。在本方法中,使用的是三叉查询树,对于一个完整的三叉树,每个中间节点都有3个孩子节点,中间节点即为一个碰撞时隙。

SATQS(Ti)=3(CATQS(Ti)+1)>

设任意标签ID为b比特,两个标签ID最多有b-1个比特是重复的,从而可以根据公式(3)提取碰撞时隙的最大数目,其中k为拥有n个标签的查询树的深度。

CATQS(k,n)=3k(0<klog3n-1)n/3(log3n-1<k<b)---(3)

根据公式(3),n个标签的碰撞时隙总数可由公式(4)表示:

CATQS(Ti)Σk=1b-1CATQS(k,n)=Σk=1log3n-13k+Σlog3nb-1n3=n3(b+12-log3n)-32---(4)

从公式(2)和公式(4),可得公式(5):

SATQS(Ti)=3(CATQS(Ti)+1)n·(b+12-log3n)-32---(5)

当上一帧中存在已识别的标签,在第i+1个帧中,加入标签的数目为narr(i+1),则用于查询的总时隙数为SATQS(Ti+1|Ti)可由公式(6)表示。

SATQS(Ti+1|Ti)n3+narr(i+1)·(b+12-log3narr(i+1))-32---(6)

在本方法中,停留标签的识别过程独立于加入标签的识别过程,若上一帧读写区域内的标签数目为n,基于三进制解决方案的最大查询时隙数目为n/3;而加入标签则由构造的新三叉查询树来识别。在当前帧的识别过程中,阅读器不知道离开标签的数目nlea(i),因而其查询时隙的数目SATQS(Ti+1-nlea(i)|Ti)与SATQS(Ti+1|Ti)相同。

以上分析是基于n可以被3整除的,若n不能被3整除,则剩余部分r可以是1或2个比特的二进制数。若r为1个比特,则CATQS(k,n)为:

CATQS(k,n)=3k0<k<log3(n/2)-1n/3k=log3(n/2)n/2log3(n/2)<k<b---(7)

整个的查询时隙数目SATQS(Ti)为:

SATQS(Ti)3·(Σk=1log3(n2)-13k+n3+1)+2·Σk=log2(n2)b-1n2=n·(b+34-log3(n2))-32---(8)

当k≤log3(n/2)时,所造成的树为三叉树,因而识别过程与(2)~(6)是一致的,当log3(n/2)<k<b,构造的树为二叉树,标签识别的处理过程利用成对解决方案。若r为2个比特,则CATQS(k,n)为:

CATQS(k,n)=3k0<k<(log3n/4)-1n/3k=log3(n/4)n/2log3(n/4)<k<b---(9)

整个的查询时隙数目SATQS(Ti)为:

SATQS(Ti)3·(Σk=1log3(n4)-13k+n3+1)+2·Σk=log2(n4)b-1n2=n·(b+38-log3(n4))-32---(10)

当所构造树的最后两层均为二叉树,可用成对解决方案来处理标签的识别过程。

3、ATQS的仿真及性能比较。

本节通过仿真,主要比较ATQS方法与已有AQS与ECRB算法在参数变化时的性能,其中识别标签的总时延是主要考虑的性能,可用识别标签所需的时隙数目nts来代替,其包括碰撞时隙的数目、空闲时间的数目和可识别时隙的数目。

下面主要讨论以下参数的影响:停留率、加入率及标签数目。其中当前帧的停留率rs定义为:停留标签数目与Ti数目n的比率;加入率ra定义为:新加入标签的数目与N-n的比率,其中N为整个场景内标签的总数目。

(1)停留率变化的影响。

当ra=0.5,rs的变化范围为[0,1],N=1000,n=500,只有一个阅读器位于仿真区域的中心。从图4(a)中可以看出,AQS的nts随着停留标签数目的增加而增长,这是因为其从离开标签上得不到足够的空闲时隙来解决加入标签带来的碰撞问题;ECRB与ATQS可以忽略rs的变化,其nts可基本保持不变,并且ATQS的性能优于ECRB,这是因为他们都从上一帧的已识别标签中获得了查询命令的集合,这与标签是否离开无关;采用三进制解决方案,本方法仅需要n/3个时隙来识别停留标签,因而其性能优于使用成对解决方案的ECRB方法。

(2)加入率变化的影响。

当rs=0.5,ra的变化范围为[0,1],N=1000,n=500,只有一个阅读器位于仿真区域的中心。从图4(b)中可以看出,所有方法随着加入标签数目的增加其总时隙数都呈上升趋势,这是因为加入标签越多,就有越多的碰撞需要处理。AQS不能解决停留标签与加入标签之间的碰撞问题,因而曲线高于ECRB和ATQS方法。ECRB和ATQS方法对于停留标签和加入标签有不同的处理流程,因而可以避免碰撞的发生。在相同的停留标签数目下,ATQS的nts数目小于ECRB,这是因为ATQS使用三进制解决方案,一个查询命令可同时识别最多3个标签,而ECRB利用成对解决方案最多只能识别2个标签。另外,在ATQS中使用三叉查询树来识别加入标签,可有效减少查询序列的数目和长度,所以本方法的曲线最低。随着加入标签数目的增多,本方法的优势将会更加明显。

(3)标签数目变化的影响。

假设标签的ID为96比特,可以完全转化为三进制表示形式,标签的移动速度v=2m/s,所有标签随机分布在10m×10m的区域内,标签的移动方向是随机的,阅读器的读写半径为3m,标签的固定率PS=0.5,每次仿真包含106个帧。图4(c)中可以看出,随着标签数目的增加,各种类型的时隙数目都将增加。因为使用了三进制解决方案,因而本方法的性能将优于ECRB和AQS算法。ECRB使用了成对解决方案,其曲线居中,AQS不能解决停留标签与加入标签碰撞的问题,性能最差。

由此可见本方法ATQS相比于ECRB和AQS,随着停留率、加入率以及标签数目等参数的变化,在识别标签时消耗的总时延方面具有较好的性能。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号