本发明涉及一种单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,属于射频识别技术(rfid)技术领域。
背景技术:
当前对于中小型仓库中rfid标签的识别,主要有两种方式:一种是采用多个阅读器联合识别,但阅读器成本过高,且极易发生阅读器之间的碰撞;另一种是在仓库内采用单个阅读移动识别,该方法简单可行且成本较低。
通过对现有专利和论文的检索发现,已有的中小型仓库环境下由于单阅读器移动多次而导致的重复识别问题未得到很好的解决,由于标签的无记忆性,已被识别过的标签会再次进入阅读器信号区,导致标签被重复识别,因此需要浪费大量时间,系统性能有待提高。
技术实现要素:
本发明提供了一种单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,用以解决中小型仓库单阅读器识别rfid存在的如下问题:1)标签被重复识别而浪费大量时间;2)rfid系统效率不高;3)阅读器能量消耗过大等问题。
本发明的技术方案是:一种单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,所述的具体步骤如下:
step1、rfid标签以矩阵形式部署在环境中,使用者手持单阅读器沿固定路径移动,利用阅读器的移动性来获取标签信息,阅读器在移动过程中一直在读取标签,被读取次数最多的标签具有更大的权重。通过标签定位的估计方程,估计标签的行和列坐标,将标签的位置坐标存入标签内部。
step2、手持同一阅读器沿同一路径进行移动,阅读器发送开始指令,在阅读器信号区内的标签从0~l-1内随机选择时隙进行应答,时隙寄存器为0的标签将自己的尾码和坐标信息发送给阅读器;
step3、在一个帧时隙内,阅读器收到的应答会出现三种情况;
(1)、空闲时隙:信号区内没有标签选择该时隙与阅读器进行通信,阅读器读取不到任何信息,进入下一个时隙;
(2)、碰撞时隙:信号区内多个标签选择该时隙与阅读器进行通信,标签尾码之间发生碰撞,阅读器读取不到任何信息,进入下一个时隙;
(3)、成功时隙:信号区内只有一个标签选择该时隙与阅读器进行通信,阅读器能成功读到该标签尾码和坐标信息。先查看尾码信息,此时会出现两种情况:
①若该尾码未出现在尾码表中,则表示该标签为全新标签,阅读器立即发送读取该标签剩余信息的指令,阅读器收到剩余信息后将标签尾码与剩余信息进行整合后置静默,将尾码和坐标信息存入尾码表。
②若该尾码已经出现在尾码表中,则表示该标签为已识别标签或为未识别标签(只是与已识别过的标签同尾码),此时比较标签坐标,若相同则为已识别标签不作任何处理,若不相同,阅读器立即发送读取该标签剩余信息的命令,阅读器收到剩余信息后将标签尾码与剩余信息进行整合并将其静默,将尾码和坐标信息存入尾码表。
step4、每处理完一个时隙,阅读器识别区域及其区域内的标签重新确定;
step5、该帧内所有时隙识别结束,用schoute预估法估算剩余标签数量,阅读器根据标签数量动态调整帧长,然后进入下一帧,直至所有帧识别完毕,该圈识别结束。
step6、沿固定路径,重复步骤step2-step5识别多圈,直至标签被全部识别完。
进一步地,所述用标签定位的估计方程,估计标签的行和列坐标的具体步骤如下:
step1.1、使用者在仓库中打开阅读器,手持阅读器沿固定路径移动。
step1.2、在移动过程中,向部署的标签发送简单的确认信息,通过读取标签的响应来获取标签的尾码信息。依据公式(1)检查标签是否在阅读器信号区域内,若存在记为1,不存在记为0。
其中t表示标签号,i表示第i扫描线,j表示一个扫描线中第j个读集,ci,j表示阅读器位置。
step1.3、扫描器的水平扫描定义为扫描线,计算每个扫描线(读集)的平均值。在读集中,通过查找ε值来检查标签的出现次数值,该值用于计算标签的平均读列,通过统计标签的平均读列,为标签分配序号。通过公式(2)计算标签的平均读列σi,
其中,k表示k个读集。
step1.4、通过公式(3)计算标签的权重ωi。
step1.5、根据公式(4)计算标签的行坐标rp,公式(5)计算列坐标cp,并将其位置坐标存入尾码表中。
其中□i(t)表示标签的序号。
进一步地,所述阅读器是基于动态帧时隙aloha的方式接收标签发来的尾码,尾码的长度设置为16。
进一步地,所述帧长是根据标签数量进行动态调整的。
进一步地,所述为了降低标签漏读率,使用者需要手持单阅读器移动多圈。
进一步地,所述尾码表中存放标签尾码和坐标信息。
进一步地,step5中所述用schoute预估法预测区域内待测标签的数量,阅读器根据不同的标签数量选择不同的帧长度对标签进行识别的具体步骤如下:
步骤一:阅读器发送查询命令,根据标签识别情况,通过schoute预估法对标签数目进行预测,当标签数目和帧长相等时,阅读器的吞吐率将达到最高,具体计算为公式(6)
其中,slot_coll为上一帧碰撞时隙数。
步骤二:阅读器依据估计的标签数量进行帧长调整,当两个长度不同的识别帧的阅读器吞吐率相等时,其对应的标签数量值就是调整帧长的临界点。
本发明的有益成果是:
1、本发明对标签进行定位识别,减少了因重复识别而浪费的时间成本;
2、本发明通过定位识别和尾码机制相结合的方法,减少了漏读标签数;
3、本发明解决了中小型仓库rfid标签识别中时间浪费严重,系统吞吐率低的问题,提升识别效率。
附图说明
图1为中小型仓库场景图;
图2为获取待测标签位置坐标的方法流程图;
图3为基于定位的标签防碰撞方法流程图。
具体实施方式
实施例1:如图1-3所示,一种单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,单阅读器识别中小型仓库rfid标签的场景图,如图1所示。
rfid标签以矩阵形式部署在环境中,rfid阅读器是可移动的,使用者手持单阅读器沿固定路径进行移动。通过扫描标签矩阵的每一行来检查每个标签是否存在,然后计算每个扫描线(读集)的平均值,之后以平均基数对标签进行排序为每个标签分配序号,计算每个标签x轴(行)和y轴(列)的权重(标签的权重定义为标签沿着扫描线被读取的次数),通过权重可获取每一个标签的x、y坐标。
所述方法的具体步骤如图3所示:
step1、rfid标签以矩阵形式部署在环境中,使用者手持单阅读器沿固定路径移动,利用阅读器的移动性来获取标签信息,阅读器在移动过程中一直在读取标签,被读取次数最多的标签具有更大的权重。通过标签定位的估计方程,估计标签的行和列坐标,将标签的位置坐标存入标签内部。
step2、手持同一阅读器沿同一路径进行移动,阅读器发送开始指令,在阅读器信号区内的标签从0~l-1内随机选择时隙进行应答,时隙寄存器为0的标签将自己的尾码和坐标信息发送给阅读器;
step3、在一个帧时隙内,阅读器收到的应答会出现三种情况;
(1)、空闲时隙:信号区内没有标签选择该时隙与阅读器进行通信,阅读器读取不到任何信息,进入下一个时隙;
(2)、碰撞时隙:信号区内多个标签选择该时隙与阅读器进行通信,标签尾码之间发生碰撞,阅读器读取不到任何信息,进入下一个时隙;
(3)、成功时隙:信号区内只有一个标签选择该时隙与阅读器进行通信,阅读器能成功读到该标签尾码和坐标信息。先查看尾码信息,此时会出现两种情况:
①若该尾码未出现在尾码表中,则表示该标签为全新标签,阅读器立即发送读取该标签剩余信息的指令,阅读器收到剩余信息后将标签尾码与剩余信息进行整合后置静默,将尾码和坐标信息存入尾码表。
②若该尾码已经出现在尾码表中,则表示该标签为已识别标签或为未识别标签(只是与已识别过的标签同尾码),此时比较标签坐标,若相同则为已识别标签不作任何处理,若不相同,阅读器立即发送读取该标签剩余信息的命令,阅读器收到剩余信息后将标签尾码与剩余信息进行整合并将其静默,将尾码和坐标信息存入尾码表。
step4、每处理完一个时隙,阅读器识别区域及其区域内的标签重新确定;
step5、该帧内所有时隙识别结束,用schoute预估法估算剩余标签数量,阅读器根据标签数量动态调整帧长,然后进入下一帧,直至所有帧识别完毕,该圈识别结束。
step6、沿固定路径,重复步骤step2-step5识别多圈,直至标签被全部识别完。
进一步地,所述用标签定位的估计方程,估计标签的行和列坐标的具体步骤如下:
step1.1、使用者在仓库中打开阅读器,手持阅读器沿固定路径移动。
step1.2、在移动过程中,向部署的标签发送简单的确认信息,通过读取标签的响应来获取标签的尾码信息。依据公式(1)检查标签是否在阅读器信号区域内,若存在记为1,不存在记为0。
其中t表示标签号,i表示第i扫描线,j表示一个扫描线中第j个读集,ci,j表示阅读器位置。
step1.3、扫描器的水平扫描定义为扫描线,计算每个扫描线(读集)的平均值。在读集中,通过查找ε值来检查标签的出现次数值,该值用于计算标签的平均读列,通过统计标签的平均读列,为标签分配序号。通过公式(2)计算标签的平均读列σi。
其中,k表示k个读集,i表示第i扫描线,j表示一个扫描线中第j个读集。
step1.4、通过公式(3)计算标签的权重ωi。
step1.5、根据公式(4)计算标签的行坐标rp,公式(5)计算列坐标cp,并将其位置坐标存入尾码表中。
其中□i(t)表示标签的序号。
进一步地,step5中所述用schoute预估法预测区域内待测标签的数量,阅读器根据不同的标签数量选择不同的帧长度对标签进行识别的具体步骤如下:
步骤一:阅读器发送查询命令,根据标签识别情况,通过schoute预估法对标签数目进行预测,当标签数目和帧长相等时,阅读器的吞吐率将达到最高,具体计算为公式(6)
其中,slot_coll为上一帧碰撞时隙数。
步骤二:阅读器依据估计的标签数量进行帧长调整,当两个长度不同的识别帧的阅读器吞吐率相等时,其对应的标签数量值就是调整帧长的临界点。
所述step1中对标签进行定位的具体处理如下:
本发明的定位是一种基于二维标签矩阵的定位算法,利用rfid阅读器的移动性对无源标签进行定位,该算法基于标签定位的估计方程,根据阅读器的移动性从场景中收集数据,并利用估计方程估计其坐标位置。
本实施例1使用matlab进行仿真实验,为本发明两种方法提供了仿真平台的支撑,设置仓库内待测标签数目为5000个,使用单阅读器移动识别,标签长为64位,尾码长为16位,成功识别一个标签需要1个时隙。成功时隙数为slot_succ,空闲时隙数为slot_idle,碰撞时隙数为slot_coll,重复识别的标签数为x。为了验证改进前算法和本发明改进后算法的性能效果对比,将采用相同性能指标:时间成本进行比较。
改进前:
(1)既不使用尾码,也不使用定位:t1=slot_succ slot_idle slot_coll x
(2)只使用尾码,不使用定位:t2=slot_succ 0.25(slot_idle slot_coll) x
改进后:
既使用尾码,又使用定位:t3=slot_succ 0.25(slot_idle slot_coll x)
由此可见,当标签数量相等时,时间成本t3<t2<t1即t改进后<t改进前,改进后的算法减少了时间成本,提升了系统效率。
本发明方法的工作原理如下:rfid标签以矩阵形式部署在环境中,rfid阅读器是可移动的,使用者手持单阅读器沿固定路径进行移动。通过扫描标签矩阵的每一行来检查每个标签是否存在,然后计算每个扫描线(读集)的平均值,之后以平均基数对标签进行排序为每个标签分配序号,计算每个标签x轴(行)和y轴(列)的权重(标签的权重定义为标签沿着扫描线被读取的次数),通过权重可获取每一个标签的x、y坐标。手持同一阅读器进入待识别区域,按第一次移动路径进行移动,阅读器发送读取标签尾码指令,在应答区域内随机时隙数为0的标签响应阅读器,将自己的尾码发送给阅读器。rfid阅读器以动态帧时隙aloha(dfsa)算法接收标签发送过来的尾码,成功时隙能收到标签发送过来的尾码和坐标信息,查看该尾码是否存在尾码表,若不在,做全新标签处理,并将尾码和该标签位置坐标存于尾码表中,若存在,则比较位置坐标,判断该标签是否为全新标签。该帧内所有时隙识别完毕后,根据schoute预估法估算剩余标签数量,动态调整帧长,进入下一帧的识别,直至区域内标签识别完毕。
上面结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
1.一种单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:具体步骤如下:
step1、rfid标签以矩阵形式部署在环境中,使用者手持单阅读器沿固定路径移动,利用阅读器的移动性来获取标签信息,阅读器在移动过程中一直在读取标签,被读取次数最多的标签具有更大的权重,通过标签定位的估计方程,估计标签的行和列坐标,将标签的位置坐标存入标签内部;
step2、手持同一阅读器沿同一路径进行移动,阅读器发送开始指令,在阅读器信号区内的标签从0~l-1内随机选择时隙进行应答,时隙寄存器为0的标签将自己的尾码和坐标信息发送给阅读器;
step3、在一个帧时隙内,阅读器收到的应答会出现三种情况;
(1)、空闲时隙:信号区内没有标签选择该时隙与阅读器进行通信,阅读器读取不到任何信息,进入下一个时隙;
(2)、碰撞时隙:信号区内多个标签选择该时隙与阅读器进行通信,标签尾码之间发生碰撞,阅读器读取不到任何信息,进入下一个时隙;
(3)、成功时隙:信号区内只有一个标签选择该时隙与阅读器进行通信,阅读器能成功读到该标签尾码和坐标信息,先查看尾码信息,此时会出现两种情况:
①若该尾码未出现在尾码表中,则表示该标签为全新标签,阅读器立即发送读取该标签剩余信息的指令,阅读器收到剩余信息后将标签尾码与剩余信息进行整合后置静默,将尾码和标签信息存入尾码表;
②若该尾码已经出现在尾码表中,则表示该标签为已识别标签或为未识别标签,此时比较标签坐标,若相同则为已识别标签不作任何处理,若不相同,阅读器立即发送读取该标签剩余信息的命令,阅读器收到剩余信息后将标签尾码与剩余信息进行整合并将其静默,将尾码和标签信息存入尾码表;
step4、每处理完一个时隙,阅读器识别区域及其区域内的标签重新确定;
step5、该帧内所有时隙识别结束,用schoute预估法估算剩余标签数量,阅读器根据标签数量动态调整帧长,然后进入下一帧,直至所有帧识别完毕,该圈识别结束;
step6、沿固定路径,重复步骤step2-step5识别多圈,直至标签被全部识别完。
2.根据权利要求1所述一种单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:所述step1中用标签定位的估计方程,估计标签的行和列坐标的具体步骤如下:
step1.1、使用者在仓库中打开阅读器,手持阅读器沿固定路径移动;
step1.2、在移动过程中,向部署的标签发送简单的确认信息,通过标签的响应来获取标签的尾码信息,依据公式(1)检查标签是否在阅读器信号区域内,若存在记为1,不存在记为0;
其中t表示标签号,i表示第i扫描线,j表示一个扫描线中第j个读集,ci,j表示阅读器位置;
step1.3、扫描器的水平扫描定义为扫描线,计算每个读集的平均值,在读集中,通过查找ε值来检查标签的出现次数值,该值用于计算标签的平均读列,通过统计标签的平均读列,为标签分配序号,通过公式(2)计算标签的平均读列σi,
其中,k表示k个读集;
step2.4、通过公式(3)计算标签的权重ωi:
step2.5、根据公式(4)计算标签的行坐标rp,公式(5)计算列坐标cp,并将其位置坐标存入尾码表中:
其中□i(t)表示标签的序号。
3.根据权利要求1所述的单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:所述步骤step2中阅读器是基于动态帧时隙aloha的方式接收标签发来的尾码,尾码的长度设置为16。
4.根据权利要求1所述的单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:所述步骤step2的帧长是根据标签数量进行动态调整的。
5.根据权利要求1所述的单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:所述步骤step2中为了降低标签漏读率,使用者需要手持单阅读器移动多圈。
6.根据权利要求1所述的单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:所述步骤step3中的尾码表中存放标签尾码和坐标信息。
7.根据权利要求1所述的单阅读器移动rfid系统下基于定位识别的标签防碰撞方法,其特征在于:所述step5中用schoute预估法预测区域内待测标签的数量,阅读器根据不同的标签数量选择不同的帧长度对标签进行识别的具体步骤如下:
步骤一:阅读器发送查询命令,根据标签识别情况,通过schoute预估法对标签数目进行预测,当标签数目和帧长相等时,阅读器的吞吐率将达到最高,具体计算为公式(6)
其中,slot_coll为上一帧碰撞时隙数;
步骤二:阅读器依据估计的标签数量进行帧长调整,当两个长度不同的识别帧的阅读器吞吐率相等时,其对应的标签数量值就是调整帧长的临界点。
技术总结