一种射频识别二次预分配时隙标签防碰撞方法与流程

文档序号:12272128阅读:353来源:国知局
一种射频识别二次预分配时隙标签防碰撞方法与流程

本发明属于射频识别技术领域,具体涉及一种射频识别二次预分配时隙标签防碰撞方法。



背景技术:

随着射频识别(RFID)技术在各种工商业领域的使用,EPCglobal的UHF Class1 Gen2标准在供应链管理、农产品质量跟踪、血液追溯管理中得到了业界的认可和广泛应用,该标准工作在860MHz~960MHz。

从实际应用效果看,快速移动环境下标签漏读率过高,达不到实用化的要求,是阻碍RFID技术大规模推广使用的最大障碍。究其原因,除了物理层通信可靠性不高以外,标签碰撞是导致标签漏读的重要原因。

需要采用高效可靠的标签防碰撞方法,以提高RFID技术的识别效率。

RFID标签防碰撞算法有ALOHA算法、基于二进制树的算法和混合算法等三种,在RFID的大多数应用领域,尤其在供应链管理、农产品质量跟踪、血液追溯管理这样的大规模标签应用领域,采用ALOHA算法较为适合。

该算法由标签驱动,每个标签随机地选择一个时间点进行传输,这种算法实现简单,成本低。

AOHA算法分为纯ALOHA(PA,Pure ALOHA)、时序ALOHA(SA,Slot ALOHA)、帧时序ALOHA(FSA,Frame Slot ALOHA)等,FSA又分为基本帧时序ALOHA(BFSA,Basic Frame Slot ALOHA)和动态帧时序ALOHA(DFSA,Dynamic Frame Slot ALOHA)。

EPC_C1 G2标准采用DFSA方法防标签碰撞。

EPC_C1 G2标准采用的DFSA标签碰撞方法中采用了Q算法实现帧长度的动态调整。该算法根据当前帧的识别时隙数、空时隙数和碰撞时隙数决定是否终止当前帧,开启新的帧识别,显著降低了空时隙数和碰撞时隙数,提高识别效率。

然而,这种方法并没有完全杜绝空时隙的产生,浪费了宝贵的时序资源。这在实时性要求高,标签数量大的应用环境下,尤其不能接受。



技术实现要素:

为了克服现有技术的不足,本发明的目的是提供一种射频识别二次预分配时隙标签防碰撞方法,该方法将标签识别分为预分配时隙和标签识别两个阶段,时隙预分配阶段发送的预分配码长度远小于标签身份码长度,可以显著减少碰撞时隙占用的时间长度,提高识别效率。其中预分配时隙阶段采用两次预分配时隙的方法,可以进一步提高识别效率。

为了实现上述目的,本发明采用的技术方案是:

一种射频识别二次预分配时隙标签防碰撞方法,包括以下步骤:

1)将将标签识别分为预分配时隙和标签识别两个阶段;

2)预分配时隙阶段,阅读器安排一定数量的预分配短时隙,并向覆盖范围内的所有标签发送带有Q参数的预分配ReAss命令;

3)标签接收到ReAss命令,利用随机数产生器产生一个介于0~2Q之间的随机数r作为本标签的分配时隙,用同样方法产生一个长度为l的预分配码RCk(k=1,2,….n,其中n为阅读器覆盖范围内的标签总数),并在时隙r内向阅读器回传预分配码RCl

4)阅读器按照接收到的预分配码设置预分配队列,第i个时隙如果成功接收到单一标签发送的预分配码RCl,则该时隙为识别时隙,置SMi=1;如果i个时隙没有标签发送预分配码,则该时隙为空时隙SMi=0,空时隙在标签识别阶段并不分配时隙;如果第i个时隙有多个标签同时发送了预分配码,从而产生了预分配码碰撞,则SMi=2,同时,碰撞时隙计数器CoCount进行加1计数;

5)预分配时隙阶段采用两次预分配时隙的方法,当第一次预分配完成以后,为了在预分配时隙阶段尽可能多的分配识别时隙,以保证标签识别阶段尽可能多地正确识别标签,将第一次预分配存在冲突的时隙再进行一次预分配;

6)阅读器利用碰撞计数器作为参数,向碰撞标签发送二次预分配命令ReAss2,碰撞标签接到二次预分配命令后进行与第一次分配类似的操作,阅读器根据收到的二次预分配码更新SM队列;

7)标签识别阶段,在这个阶段阅读器根据预分配队列发送识别命令;首先指针复位为i=0,判断指针当前所指队列位置,如果当前队列为1则发送带当前时隙号的标签识别命令,标签接收到识别命令将时隙号i与本标签保存的预约号r进行比对,如果相等则响应阅读器,回传本标签ID号,完成识别,并进行灭活处理,在后续识别过程中不再参与识别过程;

进一步,如果多个标签选择了同一时隙,并且预分配码也相同,由于阅读器和标签之间的通信采用ASK调制方式,此时信号得到加强,阅读器可以正确解调预分配码,导致预分配冲突,这种冲突在预分配阶段无法感知,只有到后续标签识别阶段才会被检测到,所以这种预分配冲突无法避免。

进一步,将识别效率定义为平均识别标签数与占用时隙数之比,假设待识别标签数为n,预分配时隙长度为2Q,则k个标签选择发送到同一个时隙的概率Pk服从二项分布,由二项分布公式(1)表示,

假设预分配码长为l,则k个标签为一个预分配时隙生成同一个预分配码的概率Pck由式(2)表示,

由于在一个预分配时隙内有多个标签生成相同预分配码时,在预分配阶段无法感知到标签冲突,而在标签识别阶段会发生冲突,所以冲突的概率由式(3)表示,

在整个标签读取阶段碰撞时隙的期望值由式(4)表示,

假设标签ID长为m,据此,得识别效率由式(5)表示,

本发明的有益效果是:

通过将标签识别分为预分配时隙和标签识别两个阶段,时隙预分配阶段发送的预分配码长度远小于标签身份码长度,可以显著减少碰撞时隙占用的时间长度,提高识别效率。其中预分配时隙阶段采用两次预分配时隙的方法,可以进一步提高识别效率。

附图说明

图1为本发明的工作流程图。

图2为本发明所述方法中建立的防碰撞算法模型实例。

图3为本发明所述Adjust命令调整帧长度的Q算法。

图4为本发明的试验仿真结果图。

具体实施方式

以下结合实施例对本发明进一步叙述。

如图1所示,一种射频识别二次预分配时隙标签防碰撞方法,其特征在于,包括以下步骤:

1)将将标签识别分为预分配时隙和标签识别两个阶段;

2)预分配时隙阶段,阅读器安排一定数量的预分配短时隙,并向覆盖范围内的所有标签发送带有Q参数的预分配ReAss命令;

3)标签接收到ReAss命令,利用随机数产生器产生一个介于0~2Q之间的随机数r作为本标签的分配时隙,用同样方法产生一个长度为l的预分配码RCk(k=1,2,….n,其中n为阅读器覆盖范围内的标签总数),并在时隙r内向阅读器回传预分配码RCl

4)阅读器按照接收到的预分配码设置预分配队列,第i个时隙如果成功接收到单一标签发送的预分配码RCl,则该时隙为识别时隙,置SMi=1;如果i个时隙没有标签发送预分配码,则该时隙为空时隙SMi=0,空时隙在标签识别阶段并不分配时隙;如果第i个时隙有多个标签同时发送了预分配码,从而产生了预分配码碰撞,则SMi=2,同时,碰撞时隙计数器CoCount进行加1计数;

5)预分配时隙阶段采用两次预分配时隙的方法,当第一次预分配完成以后,为了在预分配时隙阶段尽可能多的分配识别时隙,以保证标签识别阶段尽可能多地正确识别标签,将第一次预分配存在冲突的时隙再进行一次预分配;

6)阅读器利用碰撞计数器作为参数,向碰撞标签发送二次预分配命令ReAss2,碰撞标签接到二次预分配命令后进行与第一次分配类似的操作,阅读器根据收到的二次预分配码更新SM队列;

7)标签识别阶段,在这个阶段阅读器根据预分配队列发送识别命令;首先指针复位为i=0,判断指针当前所指队列位置,如果当前队列为1则发送带当前时隙号的标签识别命令,标签接收到识别命令将时隙号i与本标签保存的预约号r进行比对,如果相等则响应阅读器,回传本标签ID号,完成识别,并进行灭活处理,在后续识别过程中不再参与识别过程;

进一步,如果多个标签选择了同一时隙,并且预分配码也相同,由于阅读器和标签之间的通信采用ASK调制方式,此时信号得到加强,阅读器可以正确解调预分配码,导致预分配冲突,这种冲突在预分配阶段无法感知,只有到后续标签识别阶段才会被检测到,所以这种预分配冲突无法避免。

实施例1

如图2所示,按照本发明所建立的防碰撞算法模型实例,包括4个标签,帧长度为4个时隙。首先阅读器通过广播命令选择标签。阅读器覆盖范围内的所有标签一旦感知到阅读器即进入准备状态,等待阅读器命令。

阅读器经过一定时间延迟后发送包含帧长Qfp参数的Query命令,标签通过随机数产生器产生一个在范围内的随机数,并将此随机数存入计数器。如果随机数为0,则立即发送RN16随机数。

如果只有一个标签在该时隙发送RN16,例如图2中slot1时隙中只有tag2标签发送数据,则阅读器能够正确接收RN16。

正确接收RN16的前提下阅读器向标签发送带有该RN16的ACK确认信息,标签收到此信息即建立了一对一通信链路,可以进行标签数据的读取操作,例如图2中tag2标签,向阅读器发送EPC(电子产品编码)。

完成一个完整的标签识别后,阅读器向该电子标签发送灭活指令,此后该标签进入静默状态不再参与后续标签识别过程。随机数大于0 的标签进入ARBITRATE状态等待后续Rep命令或者Adjust命令。

完成一个时隙处理后,阅读器发送Rep命令,开启一个新的时隙。

所有存活标签收到Rep命令后将计数器减1, 如果标签随机数为0,立即发送RN16,否则进入ARBITRATE状态。

如果在一个时隙内有多于一个标签发送RN16,则产生碰撞,如图2中slot2时隙有标签tag1和teg3同时向阅读器发送RN16。

阅读器利用曼彻斯特编码能检测到标签碰撞的原理感知到碰撞发生,便向在该时隙中发送RN16的两个标签(tag1和teg3)发送NAK信息,指出该时隙发生碰撞,并向所有存活标签发送Rep命令开启一个新的slot。

发生碰撞的标签收到NAK信息后,将时隙计数器设置为7FFF,并进入ARBITRATE状态等待Adjust命令参与新一帧的识别。如果阅读器在一个时隙中未收到任何标签的回应,则该时隙为空时隙。

完成本帧所有时隙,或者阅读器根据空时隙、碰撞时隙数量确定调整Q参数后,开启一个新帧继续对未识别的标签进行识别,直到完成全部标签识别,结束标签识别处理。Adjust命令的调整算法采用如图3所示的Q算法。

实施例2

将识别效率定义为平均识别标签数与占用时隙数之比。假设待识别标签数为n,预分配时隙长度为2Q,则k个标签选择发送到同一个时隙的概率Pk服从二项分布,由二项分布公式得

假设预分配码长为l,则k个标签为一个预分配时隙生成同一个预分配码的概率为

由于在一个预分配时隙内有多个标签生成相同预分配码时,在预分配阶段无法感知到标签冲突,而在标签识别阶段会发生冲突,所以冲突的概率为

进一步,在整个标签读取阶段碰撞时隙的期望值为

假设标签ID长为m,据此,得识别效率为

在如血液管理应用中标签数往往要求大于60个,识别距离一般不超过1米,并且要求在标签快速移动中能够准确识别。由于EPC_C1 G2标准在这一领域得到广泛应用,本文仿真将标签ID长度设为256,并设阅读器覆盖范围内标签数为100,预分配码长度为l=1到16,Q作为控制参数,依次取值从3到10共8个值,数值仿真结果如图4所示。

由图4可知,识别效率随着Q值的增加增加,当Q=3时,无论预分配码长l为多少(1~16)识别效率均为0。这是由于此时可预分配的时隙数仅为8,待识别标签数为100,相差太大,所以识别效率太低,近似为0。

另一方面,当Q值大于等于8时,再加大Q值对识别效率的改善已不显著,Q等于8、9、10三条曲线在l大于4以后几乎重合。这是由于当Q大于等于8时,可预分配时隙数大于等于256,是待识别标签数100的2.5倍以上,由于当帧长等于待识别节点数时,识别效率达到最优,因此,过大的Q值对识别效率不再有明显改善作用,反而带来通信资源的过度开销导致系统综合性能下降。

考查预分配码长度对识别性能的影响,综合所有有效的7条Q值曲线(除Q=3外),l取值存在最优值,大概在3到4之间,实际工程设计中可取为4。此时,除Q=3和4之外,其余四条曲线识别率均高于80%,对于最高的三条曲线甚至达到90%。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1