APP下载

一种UHF RFID多标签处理算法的改进

2018-05-15齐国强吕天剑刘凯

物联网技术 2018年4期

齐国强 吕天剑 刘凯

摘 要:为解决UHF RFID读写器在大量标签场景中快速识别效率低下的问题,分析了ISO/IEC18000-6C标准中的标签单化识别过程,并对当前的固定时隙算法与动态调整时隙算法进行了深入研究。在此基础上提出了自己的改进算法,并通过大量实验测试进行推导求解,形成新的计算公式,据此实现Q值的动态调整。测试结果显示,改进后的算法提高了标签的识别效率,表现出良好的性能,具有一定的研究价值。

关键词:UHF RFID ;Q值;动态时隙算法;识别效率

中图分类号:TP301.6 文献标识码:A 文章编号:2095-1302(2018)04-00-02

0 引 言

无源RFID(无线射频识别技术)是一种非接触式自动识别技术,根据频段可分为LF RFID(125 kHz),HF RFID(13.56MHz)和UHF RFID(840~960 MHz)。其中,UHF RFID由于标签读取距离远、存储容量大、无需电池、多标签处理能力强等优点,在物联网信息识别系统方面的应用日益广泛。

在物流及仓储等应用中,由于标签数据数量大、存放密度高,很容易引起多标签响应冲突,导致阅读器无法有效识别标签数据。为了有效解决该问题,需要在读写器的软件设计中使用多标签防冲突算法,而防冲突算法的好坏将直接影响系统对多标签数据的处理效率。

目前,UHF RFID国际标准分为ISO18000-6A/B/C三类,其中,ISO18000-6C协议应用最为广泛。本文对ISO18000-6C协议中的标签防冲突算法进行了研究,并在此基础上做出改进,以提高UHF RFID读写器对多标签的识别处理能力。

1 UHF RFID多标签算法

ISO18000-6C协议中的防冲突算法采用基于时隙Aloha协议的防冲突算法。标签根据读写器盘点命令的参数Q值划分时隙,可随机在某一个时隙进行数据上报,当有多个标签选择同一个时隙上报数据导致读写器无法正常解析数据时即发生冲突,为解决该现象,在读写器端使用多标签防冲突算法。目前,读写器端主流的防冲突算法主要包括固定时隙算法和动态时隙调节算法。

1.1 固定时隙算法

固定时隙算法处理标签的原理相对比较简单,大致分为以下几个步骤:

(1)读写器根据事先人为设置的标签数量N计算出参数Q值,一般需满足条件:2Q≤N<2Q+1,通过Q值计算得到标签需划分的时隙数Slots=2Q,然后将Slots值通过Query命令下发至标签;

(2)标签在收到Query命令中的Slots参数后,从[0,2Q-1]中随机选择一个整数载入其时隙计数器SC,如果SC中的时隙数为0,则标签立即产生一个随机数RN16返回应答;

(3)读写器正确解析标签返回的RN16后,向标签发出包含该RN16值的确认应答ACK;

(4)标签收到ACK后返回包含标签EPC数据在内的应答帧;

(5)读写器收到标签返回的数据帧后发送QueryRep命令通知该标签改变识别标志位不再参与识别过程,其他标签的时隙计数器SC中的数值减1;

(6)当有标签的时隙计数器SC数据为0时,返回应答RN16,并重复(3)的操作;

(7)读写器根据标签识别情况或者预设时间参数判断是否结束标签识别过程。

1.2 动态时隙调节算法

固定时隙算法在事先预知标签数量并且标签数量不变的情况下可取得较好的效果,但在使用过程中,较多场合事先无法准确获悉标签数量或某些场合的标签数量一直处于动态变化中,因此需要在识别过程中大致估算实时标签数量并动态调节时隙参数,从而保证读写器可快速有效地识别标签。

目前,动态时隙调节算法的主要思路是在固定时隙算法的基础上记录标签的应答与冲突情况,并结合此时的参数Q值与调节的门限阈值进行对比,当计算结果大于阈值时,对当前Q值进行调整并通知标签根据新的时隙进行识别。具体过程如下:

(1)在一轮识别过程周期内,将通过Q值计算得到的Slots值与该轮识别过程中得到的标签量T进行对比,同时取门限阈值为X;

(2)当T

(3)当T>Slots/X时,表明时隙数量相对于当前的标签数量过小,需增大Q值;

(4)当Slots/(2X)≤T≤Slots/X时,表明时隙数量相对于当前的标签数量处于合理区间内,无需调节。

(5)根据上述步骤的判断结果及Q值调整下一轮Query命令参数中的时隙数量。

1.3 动态时隙算法的优化

动态时隙算法在标签数量未知及数量不固定的场合下能够根据标签数量动態调节时隙数量,减少标签识别冲突,提高标签识别效率。从实际应用情况来看,该算法还存在一些问题,主要原因在于在一些标签识别冲突严重的场合,算法对标签量的估值存在较大偏差,导致算法判断错误,因此时隙数与实际标签量存在较大差异,虽然可通过多轮识别收集标签量来接近真实的标签情况,但该方法识别效率低下,且不适用标签量动态变化较快的情况。

本文提出了一种基于动态时隙算法的优化算法,通过读写器收集识别过程中各阶段的状态值,形成多层判断条件,通过各状态值的变化情况综合判断当前时隙数量与标签量是否相符,调整Q值,从而在短时间内迅速提高多标签处理能力。

通过实验测试在一定量标签时如何选取Q值时隙数。设置三组标签场景,使其标签量分别为100,300,500,记录每组实验在不同Q值下30 s内读到的标签数量,为避免实验误差,每个Q值测试10次,最后取平均值。经统计分析可知,当Q值对应的时隙数约等于当前标签量(即N≈Slots)时,读写器的多标签处理能力最佳,同等时间内读取的标签量最多。

在此基础上进一步分析,记录每组标签单化过程中的状态值,包括无应答时隙数S1,有应答时隙数S2与标签成功识别数S3,建立公式Ns=a×S1+b×S2+c×S3。将多次统计记录数据代入公式,其中Ns为每次实验的标签总数,据此计算求出a,b,c三个系数均值。

修改之前的Q值调整算法,过程如下:

(1)收集上一轮识别过程中的状态值S1,S2和S3,根据公式Ns=a×S1+b×S2+c×S3求出当前标签预估量Ns。

(2)將Ns与当前Q值对应的Slots值进行比较,将调整阈值X设为0.8,根据测试情况进行调整。

(3) 当Ns>2X×Slots时,认为当前Q值过小,需增加Q值。

(4)当Ns

(5)当X×Slots≤Ns≤2X×Slots时,表明时隙数量相对于当前的标签数量处于合理区间内,无需调整。

2 结 语

本文对基于ISO/IEC18000-6C协议的标签单化过程进行了分析,对当前的多标签固定时隙算法与动态时隙调整算法进行了研究讨论,并在此基础上进行标签分组测试,统计了大量测试数据,记录后提出了新的多标签处理算法,已通过实验测试对算法进行了验证。实验结果表明,相对于以前的多标签处理算法,新算法可较为准确地预估当前标签量,并在此基础上对Q值进行动态分析调整,提高了标签的识别效率,减少了同等标签量情况下标签的识别时间,对解决RFID系统中经常遇到的大量标签防碰撞问题具有一定的参考价值。

参考文献

[1]颜元,武岳山.多标签快速识别算法研究与改进[J].电子技术应用,2012(1):81-84.

[2]刘丹,魏鹏,谭杰,等.一种RFID多标签碰撞检测方法[J].小型微型计算机系统,2009,30(9):1890-1894.

[3]陈俊鸿.RFID多标签识别防碰撞算法的研究与分析[J].电子测试,2015(23):29-31.

[4]李一春,王效东.两种UHF RFID标准标签数据结构差异对读写器设计的影响[J].物联网技术,2014,4(10):15-16.

[5]栗华.UHF RFID多标签防碰撞算法的研究与性能分析[D].济南:山东大学,2011.

[6]乔聪.UHF多标签识别及防冲突算法的研究[D].包头:内蒙古科技大学,2014.

[7]仲元昌,刘春伟,丁漩,等.多天线UHF RFID标签阅读器的多标签识别优化算法[J].高技术通讯,2012,22(7):669-674.

[8]彭小松.UHF RFID多标签识别算法研究及系统设计[D].西安:西安电子科技大学,2012.