本发明涉及一种动态rfid系统中基于edfsa的标签防碰撞方法,属于射频识别技术领域。
背景技术:
目前rfid(radiofrequencyidentification)标签防碰撞算法主要有两种,一种是基于aloha的不确定性算法,另一种是基于碰撞树的确定性算法。其中,基于aloha的不确定性由于算法复杂度低、实现简单且能获得较高的系统吞吐率,得到广泛的应用。
迄今为止,rfid标签防碰撞算法大多基于静态标签场景。动态标签场景下,标签沿着固定的轨道移动时,由于阅读器有效识别区域有限,在系统有效识别范围内存在新进入的标签和离开有效区域的标签。在对待识别标签数量进行估计时,需要考虑新进标签的数量和离开系统有效识别区域的未被识别标签的数量。edfsa(enhanceddynamicframedslotaloha)算法是基于aloha算法的改进算法,大多基于静态标签场景,标签保持静止状态且处于阅读器有效识别范围内,对待识别标签数量的估计无需考虑移动标签带来的影响。这就导致edfsa算法无法对待识别标签数量进行准确估计,造成标签识别率下降。
dfsa-cn是基于edfsa防碰撞方法改进的一种动态rfid系统防碰撞方法,其考虑了移动标签对系统有效区域内待识别标签数量估计产生的影响,但是没有考虑到在不同帧时间内进入的标签在识别上有先后差异,而简单地设定未识别标签在轨道上服从均匀分布,造成了对待识别标签数量估计时存在一定的误差。
在实际的动态rfid系统中,由于标签在阅读器有效识别范围内停留的时间有限,部分标签会出现离开有效区时未被识别的现象,造成标签信息丢失。因此,不能简单地以系统吞吐率作为动态rfid系统的性能评判标准。为减少标签信息的丢失,应该以标签丢失率(taglossrate,tlr)作为动态rfid系统的性能评判标准。
技术实现要素:
发明目的:针对上述现有技术的不足,本发明目的是提供一种既能对待识别标签数量进行更为准确的估计,又能减少标签丢失率的动态rfid系统标签防碰撞方法。
技术方案:为实现上述目的,本发明采用的技术方案为:
一种动态rfid系统中基于edfsa的标签防碰撞方法,该方法包括如下步骤:
(1)在系统有效识别范围内存在新进标签时,将上一帧开始时待识别标签数量与上一帧系统新进标签数量之和,减去上一帧识别过程中出现的成功时隙数,再减去上一帧识别过程中离开系统有效区域的未被识别的标签数量的估计值,估计系统有效识别范围内待识别标签的数量;
(2)根据待识别标签数量确定下一帧帧长并对标签进行分组;
(3)rfid阅读器对待识别标签进行识别;
(4)根据阅读器识别结果对识别过程中出现的碰撞时隙数和成功时隙数进行统计,估计每个标签群剩余待识别标签数量和移出有效识别范围的未被识别的标签数量。
在优选实施方案中,所述步骤(1)中,在一帧识别过程中,若系统有效识别范围内存在新进入的标签,新进标签不参与本帧识别,将新进入的标签标记成一个标签群。
在优选实施方案中,若系统有效识别范围内没有新进标签,则有效范围内待识别标签数量的估计值为上一帧中剩余未识别标签数减去离开系统有效区域的未被识别标签数量的估计值。
具体地,所述步骤(1)中的待识别标签数量估计方法为:
其中,n0是初始待识别标签数量,ni是第i帧识别开始时系统有效范围内待识别标签的数量,ni是第i帧识别过程中系统有效区内新进标签的数量,nsi是第i帧识别过程中成功时隙数,nli是第i帧识别过程中离开系统有效区域的未被识别的标签数量的估计值,λ是剩余待识别标签数量的估算因子,根据schoute估计方法,在一帧识别结束后,系统未识别标签数量约为成功时隙数的2.39倍,故λ的值可取为2.39,c是第i帧识别过程中碰撞时隙的个数。系统第一帧识别开始时,系统有效区内待识别标签数量是n0,在后续识别过程中,若系统有效识别范围内存在新进标签,则有效范围内待识别标签数量的估计值应为上一帧开始时待识别标签数量加上系统新进标签数量,减去上一帧成功时隙数,再减去上一帧识别过程中离开系统有效区域的未被识别的标签数量的估计值,若系统有效识别范围内没有新进标签,则有效范围内待识别标签数量的估计值应为上一帧剩余未识别的标签数减去离开系统有效区域的未被识别标签数量的估计值。
在优选实施方案中,初始待识别标签数量n0的计算公式为:
n0=tra×l0
其中,tra是标签移动速度(个数/时隙),l0是人为设置的初始化帧长;系统初始时,延长l0个时隙数再进行识别,得到第一帧识别开始时系统有效识别范围内待识别标签数量n0,从而设置第一帧帧长,进而进行后续识别。
在优选实施方案中,第i帧识别过程中新进标签数量ni的计算公式为:
ni=(li-lθ)×tra
其中,li是第i帧帧长,lθ是第i帧识别过程中没有新进标签的时隙数,tra是标签移动速度(个数/时隙),对第i+1帧而言,li是上一帧帧长,li-lθ表示上一帧识别过程中有新进标签的时隙数,从而计算出上一帧识别过程中新进入系统有效区域的标签数量。
在优选实施方案中,在第i帧识别过程中离开系统有效范围、未被识别的标签数量nli的计算公式为:
其中,j是部分离开或者完全离开系统有效区域的标签群对应的数字标记,fi(j)是第j个标签群在第i帧识别过程中离开系统有效区、未被识别的标签数量的估计值,估计公式为:
其中,gi(j)是第j个标签群在第i帧开始时待识别标签数量估计值,ti(j)是第i帧识别开始时标签群j在系统有效识别范围内占据的时隙数,k1、k2分别是标签群j在系统有效区域内移动时隙的最小值和最大值,li是第i帧帧长。
在优选实施方案中,所述步骤(2)中的下一帧帧长计算公式为:
其中,l′是调整后的帧长(时隙),l是调整前的上一帧帧长,n是系统有效范围内待识别标签数量的估计值。
在优选实施方案中,所述步骤(2)中的标签分组数计算公式为:
其中,nm,m+1是分组数m和分组数m+1性能曲线相交处对应的待识别标签数量,m是分组数,lmax是系统允许的最大帧长,一般是由标签时隙计数器最大值决定。
在优选实施方案中,所述步骤(4)中的每个标签群在第i帧识别结束时待识别标签数量估计值的计算公式为:
第i帧识别结束时待识别标签数量估计值也即是第i+1帧识别开始时标签群j待识别标签数量的估计值。
有益效果:与现有技术相比,本发明的优点在于:充分考虑了阅读器有效识别范围内的新进标签和离开有效区未被识别的标签带来的影响,对有效区内待识别标签数量进行更为准确的估计,提高了标签识别率。同时,将标签丢失率作为性能评判标准,减少了标签信息的丢失率,提高了动态rfid系统下标签识别的性能。
附图说明
图1为本发明实施例中动态rfid系统模型示意图;
图2为edfsa防碰撞算法的流程示意图;
图3为本发明实施例中动态rfid系统中基于edfsa的标签防碰撞算法的流程示意图;
图4为本发明实施例中动态rfid系统中基于edfsa的标签防碰撞算法的性能曲线图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
如图1所示,是一个动态rfid系统模型,线条ab、cd表示轨道的两个边线,设定标签沿着固定的轨道匀速移动,标签从进入系统有效识别区域到离开有效区占用固定的时间dcov;在一帧识别过程中,新进标签不参与本帧识别,按照标签进入有效区的时间段将标签分为若干个标签群,将在第i帧识别过程中新进标签标记为第i个标签群;在识别过程中,存在标签进入有效区和离开有效区的情况,对系统有效区内待识别标签数量估计时应考虑这些标签带来的影响;考虑到存在标签信息丢失的情况,应将标签丢失率作为动态rfid系统性能的评判标准。
若标签丢失率用tlr表示,则标签丢失率可表示为
如图2所示,是edfsa防碰撞算法的流程示意图。标签识别开始时,阅读器首先向所有待识别标签发送命令,标签收到命令后响应阅读器。阅读器判断系统有效区内有无待识别标签。若没有待识别标签则识别结束,若有标签响应,对待识别标签的数量进行估计。
阅读器根据上一帧帧长l和待识别标签数量的估计值调整下一帧帧长,具体的计算公式为:
其中,l′是调整后的帧长,
当待识别标签数量和帧长近似相等时系统获得最大吞吐率,如果待识别标签数量估计值大于系统允许的最大帧长时,若将所有待识别标签放在一帧中进行识别,必然会降低识别效率,因此需要对标签进行分组,对每组标签分别进行一帧识别。标签分组的计算公式为:
其中,nm,m+1是分组数m和分组数m+1性能曲线相交处对应的待识别标签数量,m是分组数,lmax是系统允许的最大帧长,一般是由标签时隙计数器最大值决定,将m=1,2,3…依次带入公式(3)等式右侧,使得到的nm,m+1值与实际待识别标签数量估计值的绝对差值最小,对应的m值即为分组数。
根据帧长l和分组数m,阅读器将标签时隙计数器设置成0到l-1之间的一个随机整数,时隙计数器值减为0时标签响应阅读器。若在一个时隙中有且仅有一个标签响应,则阅读器在该时隙中完成对此标签的识别,成功识别的标签不再参与识别;若同时有多个标签响应,则产生碰撞,碰撞的标签不再参与本次识别,在下一次识别开始后重新参与识别。
本实施例公开的一种动态rfid系统中基于edfsa的标签防碰撞方法,在现有edfsa方法基础上做了改进,在一帧识别过程中,首先根据上一帧识别的帧长、上一帧识别过程中出现的成功时隙数和碰撞时隙数、标签群等信息估计系统有效识别范围内待识别标签的数量;然后根据待识别标签数量确定帧长并对标签进行分组,对待识别标签进行识别;最后,根据阅读器识别结果对识别过程中出现的成功时隙数和碰撞时隙数进行统计,估计每个标签群剩余待识别标签数量和移出有效识别范围的未被识别的标签数量,以便估计下一帧待识别标签的数量。如图3所示,该方法具体包括如下步骤:
(1)若当前是第一帧识别开始之前,则设置系统初始化帧长l0,一般取值为32个时隙。系统初始时,延长l0个时隙后开始识别,得到第一帧识别开始时系统有效识别范围内待识别标签数量n0,从而设置第一帧帧长,进而进行后续识别。若用标签移动速度tra表示在单位时隙内新进入系统有效区域的标签数量,则第一帧帧长(也即初始待识别标签数量n0)可以表示为
l1=tra×l0(4)
若当前不是第一帧识别,假设处于第i+1帧识别开始之前,根据上一帧信息估计系统有效区域内待识别标签的数量。若第i帧标签数量的估计值用ni表示,则当前系统有效区域内待识别标签数量估计值可以表示为:
其中,ni是第i帧识别过程中系统新进标签的数量,nsi是第i帧识别过程中成功时隙数,nli是第i帧识别过程离开系统有效区域的未被识别的标签数量的估计值,c是第i帧识别过程中碰撞时隙的个数。
(2)根据待识别标签数量的估计值,按照edfsa算法所示方法确定下一帧帧长并对标签进行分组,分别对每组标签进行一帧识别,设置标签时隙计数器初始值。
(3)阅读器对待识别标签进行识别,时隙计数器为0的标签响应阅读器,成功响应的标签不再参与后续识别过程,若标签发生碰撞,则碰撞标签不再参与本帧识别过程,下一帧开始后重新参与识别。若标签时隙计数器不为0,标签处于等待状态,同时在该时隙结束时计数器值减1。
(4)根据阅读器识别结果对第i帧识别过程中出现的碰撞时隙数c、成功时隙数nsi以及新进标签数量ni进行统计,估计每个标签群剩余待识别标签数量和移出有效识别范围的未被识别的标签数量。
新进标签数量ni可根据如下公式计算:
ni=(li-lθ)×tra(6)
对第i+1帧而言,li是上一帧帧长,li-lθ表示上一帧识别过程中有新进标签的时隙数,从而计算出上一帧识别过程中新进入系统有效区域的标签数量。
若标签群j在第i+1帧识别开始时剩余待识别标签数量的估计值(也即标签群j在第i帧识别结束时剩余待识别标签数量的估计值)用gi+1(j)表示,则gi+1(j)可以表示为
其中,ti(j)是第i帧识别开始时标签群j在系统有效识别范围内占据的时隙数,k1、k2分别是标签群j在系统有效区域内移动时隙的最小值和最大值,li是第i帧帧长,ni是第i帧识别开始时系统待识别标签数量的估计值。
若标签群j在第i帧识别结束时离开有效区域、未被识别的标签数量估计值用fi(j)表示,则fi(j)可以表示为
其中,gi(j)是第j个标签群在第i帧开始时待识别标签数量估计值,ti(j)是第i帧识别开始时标签群j在系统有效识别范围内占据的时隙数,k1、k2分别是标签群j在系统有效区域内移动时隙的最小值和最大值,li是第i帧帧长,ni是第i帧识别开始时系统待识别标签数量的估计值。
若在第i帧识别过程中离开有效区、未被识别标签总数的估计值用nli表示,则nli可以表示为
将上述统计数据和估计数据准备好,为下一帧识别开始之前对待识别标签数量估计提供所需的标签数据信息。
如图4所示,给出了利用本实例中动态rfid系统防碰撞方法的仿真结果示意图,图中,edfsa-ds是本实例中动态rfid系统防碰撞方法的简称,仿真从标签流速tra、标签滞留时间dcov以及初始帧长l0三个方面分析系统性能,以标签丢失率tlr为性能考核标准,仿真次数是10000次,系统有效范围内存在新进标签的时间假设为smax。
图4中(a)反映了tra对tlr的影响,该仿真条件为:dcov=1000,l0=32,smax=2000。由于本发明实施例中的动态rfid系统防碰撞方法考虑了新进标签的影响并对离开有效区的未被识别标签的数估计方式进行了改进,可见本发明中动态rfid系统防碰撞方法的标签丢失率tlr明显小于传统的edfsa算法及其改进算法dfsa-cn。
图4中(b)反映了dcov对tlr的影响,该仿真条件为:l0=32,smax=2dcov,tra=0.6。对比dfsa-cn算法,当系统无标签移出以及系统没有新进标签时,对系统待识别标签数量进行了更准确地估计。可知,本发明实施例中的动态rfid防碰撞方法具有更好的系统性能。
图4中(c)反映了l0对tlr的影响,该仿真条件为:dcov=2000,smax=3000,tra=0.5。随着l0的增大,三种方法的tlr均呈上升趋势。但在相同l0情况下,本发明中动态rfid系统防碰撞方法的tlr仍然能保证最低。
图4的仿真结果显示了以tra、dcov、l0分别作为分析切入点时,本发明实施例中的动态rfid系统防碰撞方法具有更好的系统性能。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。