基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法技术

技术编号:22000894 阅读:47 留言:0更新日期:2019-08-31 05:34
本发明专利技术公开了一种基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法,针对现有RFID树型防碰撞算法搜索次数多、识别速度慢等问题,对曼彻斯特编码进行改进,并将其应用于多叉查询树RFID防碰撞方法中,可实现任意叉树的防碰撞搜索,且无任何空闲时隙,也不需要任何查询时隙,有效解决了多叉树搜索中碰撞时隙、空闲时隙、查询时隙不能兼顾的矛盾。本发明专利技术具有较少的总时隙数,较高的搜索效率和搜索速度,不仅具有重要的理论价值,也具有较大的实用价值,具有广阔的发展前景。

Multi-fork query tree RFID anti-collision method based on improved Manchester coding

【技术实现步骤摘要】
基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法
本专利技术属于射频识别
,具体涉及一种基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法的设计。
技术介绍
射频识别(RadioFrequencyIdentification,RFID)是一种非接触自动识别技术,具有成本低、功耗低、存储量大、穿透性强、多目标识别等优点,已经在物流、军事、交通、旅游、医疗等领域得到广泛的应用,典型的RFID系统通常由电子标签、阅读器和后台服务器三部分组成,由于阅读器和标签共享同一个无线信道,当多个标签同时向同一个阅读器发送数据,就会相互干扰,这就是标签碰撞问题,由于标签能量有限,计算、处理、存储能力较弱,很多传统的方法都不能用于解决标签防碰撞问题。现阶段的防碰撞算法主要是基于时分多路算法,可分为两类:基于ALOHA的概率性算法和基于二进制树的确定性算法,ALOHA算法相对简单,但存在随机性大、效率不高、性能不稳定等问题,并且存在由于标签长时间内不被识别而引起的“饥饿”问题;树形算法是确定性算法,在标签数量较大的情况下,存在搜索时延较长,搜索效率较低等问题。经典的树形防碰撞算法主要有:基本二进制搜索树(BinarySearch,BS)算法、动态二进制搜索树(DBS)算法,查询树(QueryTree,QT)算法、碰撞树(CollisionTree,CT)算法、跳跃式动态搜索树(umpingandDynamicsearching,JDS)算法、基于搜索树的增强型RFID防碰撞(EnhancedalgorithmBasedonSearchTree,EBST)算法、自适应修剪枝查询树(Adaptivealgorithmbasedon4-aryPruningQueryTree,A4PQT)算法等。这些算法通过二叉树轮询方式对标签进行遍历,不存在标签“饥饿”问题,可以百分之百识别标签。在树形搜索过程中,阅读器发出搜索命令,符合搜索条件的标签返回数据给阅读器,搜索时隙可分为以下几种情况:(1)识别时隙:仅一个标签返回数据,阅读器可以直接识别标签。(2)空闲时隙:没有任何一个标签返回数据,这个时隙被浪费了,因此应当尽量减少或避免空闲时隙。(3)碰撞时隙:有两个或两个以上的标签同时返回数据,即发生了碰撞,阅读器不能识别任何标签。(4)查询时隙:在该时隙内,阅读器为了知道标签某几位的具体数值,而对这几位数据进行查询,标签返回的数据通常是对应数据位的映射码,主要用于多叉树搜索中,查询时隙增加了搜索时间,因此应当尽量减少或避免。二叉树搜索可避免空闲时隙和查询时隙,但具有较多的碰撞时隙,导致标签搜索次数多,搜索时延长。为了减少搜索总时隙,提高搜索速率,很多学者对多叉树进行了研究,但多叉树算法存在空闲时隙,通过查询碰撞位的方法可以减少或避免空闲时隙,但却增加了查询时隙。树形搜索算法通常是通过曼彻斯特编码来准确检测碰撞位,曼彻斯特编码也叫相位编码,其编码方式是通过电平的改变来表示数值位,每一位的中间有一个跳变,从低到高跳变表示‘0’,从高到低跳变表示‘1’,即由电平“01”表示数据位‘0’,由电平“10”表示数据位‘1’,由于每一位都被调制成两个电平,数据传输速率只有调制速率的50%。曼彻斯特编码可以准确检测碰撞位,广泛应用于RFID防碰撞算法中。实际上,上述树形防碰撞算法都是采用曼彻斯特编码来检测碰撞位,难以同时减少碰撞时隙、空闲时隙、查询时隙和数据通信量,搜索总时隙较多,识别效率较低,总的效果不太理想。
技术实现思路
本专利技术的目的是提出一种基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法,能够准确检测碰撞位并实现任意叉树的多叉树搜索,能够减少碰撞时隙,完全避免空闲时隙,没有查询时隙,不增加数据通信量,进而提高标签搜索的效率。本专利技术的技术方案为:基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法,包括以下步骤:S1、在RFID阅读器中设置堆栈,并初始化堆栈为空。S2、通过RFID阅读器向RFID标签发送空前缀ε。S3、与RFID阅读器发送前缀相符合的RFID标签响应命令,并将该前缀以后的标签ID序列号发送给RFID阅读器。S4、在RFID阅读器中将接收到的标签ID序列号转换为改进曼彻斯特编码。S5、判断改进曼彻斯特编码中是否存在碰撞位,若是则进入步骤S6,否则进入步骤S7。S6、将最高碰撞位及其之前的数据位作为前缀分别存入堆栈,进入步骤S8。S7、识别得到一个RFID标签,进入步骤S8。S8、取出堆栈的栈首数据。S9、判断堆栈是否为空,若是则结束流程,否则进入步骤S10。S10、将栈首数据作为前缀发送给RFID标签,返回步骤S3。进一步地,堆栈用于存储每次搜索的最高碰撞位数据,并且按先进后出的原则存取数据。进一步地,改进曼彻斯特编码的编码方式具体为:改进曼彻斯特编码可实现多进制编码,M进制的改进曼彻斯特编码的任意一个数据位分为M个等间隔的时隙,其中M-1个时隙为低电平,1个时隙为高电平,最低时隙位为高电平表示M进制的码元“0”,次低时隙位为高电平表示M进制的码元“1”…最高时隙位为高电平表示M进制的码元“M-1”,M为大于或等于2的整数。进一步地,步骤S4中将标签ID序列号转换为改进曼彻斯特编码的公式为:A0*M0+A1*M1+...+AH-1MH-1=B0*20+B1*21+...+BL-1*2L-1其中AH-1…Ai…A1A0表示长度为H的M进制改进曼彻斯特编码,BL-1…Bj…B1B0表示长度为L的二进制标签ID序列号,Ai∈{0,1,...,M-1},Bj∈{0,1},i=0,1,2,...,H-1,j=0,1,2,...,L-1。进一步地,步骤S5中判断改进曼彻斯特编码中是否存在碰撞位的具体方法为:当RFID阅读器作用范围内全部或部分RFID标签同时发送标签ID序列号数据时,判断其转换成的改进曼彻斯特编码中某一码元是否有两个或两个以上的高电平,若是则存在碰撞位,否则不存在碰撞位。本专利技术的有益效果是:本专利技术能够减少碰撞时隙,完全避免空闲时隙,没有查询时隙,从而有效减小了RFID标签搜索的总时隙,减小了通信数据量,提高了识别效率,提高了识别速度,优于现有的RFID防碰撞算法;此外,本专利技术对标签消耗的能量较少,不需要标签具有记忆功能,不需要标签具有复杂的计算和处理能力,便于RFID系统防碰撞方法的实现和应用,不仅具有重要的理论价值,也具有较大的实用价值,具有广阔的发展前景。附图说明图1所示为本专利技术实施例提供的基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法流程图。图2所示为本专利技术实施例提供的改进曼彻斯特编码碰撞位检测示意图。图3所示为本专利技术实施例提供的总时隙数仿真示意图。图4所示为本专利技术实施例提供的搜索效率仿真示意图。图5所示为本专利技术实施例提供的通信时延仿真示意图。图6所示为本专利技术实施例提供的搜索效率对比示意图。具体实施方式现在将参考附图来详细描述本专利技术的示例性实施方式。应当理解,附图中示出和描述的实施方式仅仅是示例性的,意在阐释本专利技术的原理和精神,而并非限制本专利技术的范围。本专利技术实施例提供了一种基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法,如图1所示,包括以下步骤S1~S10:S1、在RFID阅读器中设置堆栈,并初始化堆栈本文档来自技高网
...

【技术保护点】
1.基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法,其特征在于,包括以下步骤:S1、在RFID阅读器中设置堆栈,并初始化堆栈为空;S2、通过RFID阅读器向RFID标签发送空前缀ε;S3、与RFID阅读器发送前缀相符合的RFID标签响应命令,并将该前缀以后的标签ID序列号发送给RFID阅读器;S4、在RFID阅读器中将接收到的标签ID序列号转换为改进曼彻斯特编码;S5、判断改进曼彻斯特编码中是否存在碰撞位,若是则进入步骤S6,否则进入步骤S7;S6、将最高碰撞位及其之前的数据位作为前缀分别存入堆栈,进入步骤S8;S7、识别得到一个RFID标签,进入步骤S8;S8、取出堆栈的栈首数据;S9、判断堆栈是否为空,若是则结束流程,否则进入步骤S10;S10、将栈首数据作为前缀发送给RFID标签,返回步骤S3。

【技术特征摘要】
1.基于改进曼彻斯特编码的多叉查询树RFID防碰撞方法,其特征在于,包括以下步骤:S1、在RFID阅读器中设置堆栈,并初始化堆栈为空;S2、通过RFID阅读器向RFID标签发送空前缀ε;S3、与RFID阅读器发送前缀相符合的RFID标签响应命令,并将该前缀以后的标签ID序列号发送给RFID阅读器;S4、在RFID阅读器中将接收到的标签ID序列号转换为改进曼彻斯特编码;S5、判断改进曼彻斯特编码中是否存在碰撞位,若是则进入步骤S6,否则进入步骤S7;S6、将最高碰撞位及其之前的数据位作为前缀分别存入堆栈,进入步骤S8;S7、识别得到一个RFID标签,进入步骤S8;S8、取出堆栈的栈首数据;S9、判断堆栈是否为空,若是则结束流程,否则进入步骤S10;S10、将栈首数据作为前缀发送给RFID标签,返回步骤S3。2.根据权利要求1所述的多叉查询树RFID防碰撞方法,其特征在于,所述堆栈用于存储每次搜索的最高碰撞位数据,并且按先进后出的原则存取数据。3.根据权利要求1所述的多叉查询树RFID防碰撞方法,其特征在于,所述改进曼彻斯特编码的编码方式具体为:M进制的改进曼彻斯特编码的任意一个数据位分为...

【专利技术属性】
技术研发人员:莫磊陈伟
申请(专利权)人:成都航空职业技术学院
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1