一种增强二进制分组RFID防碰撞方法及系统技术方案

技术编号:26172260 阅读:59 留言:0更新日期:2020-10-31 13:48
本发明专利技术提供的一种增强二进制分组RFID防碰撞方法及系统,将阅读器收到的标签响应数据进行处理,若碰撞位数量不少于2位,则阅读器根据碰撞位组成新的识别码,将未碰撞位入栈;将新识别码每两位生成一个分组,将碰撞标签ID映射到分组上,并对分组中的ID位作异或运算;判断运算结果,若为0,则将数据入栈G0,反之,入栈G1;分组堆栈非空时出栈;根据标签响应数据,结合Ebga算法识别出该分组标签碰撞位;当存储栈非空时出栈,向每一个确定标签发送查询命令,标签检查计时器,未超时则识别成功;本发明专利技术有效减少了现有标签总的查询次数,加快了碰撞标签的识别处理速度,缩短了识别时间;查询请求二进制比特位数减少,降低了传输量,提高了算法的吞吐量。

【技术实现步骤摘要】
一种增强二进制分组RFID防碰撞方法及系统
本专利技术涉及射频识别
,更具体的,涉及一种增强二进制分组RFID防碰撞方法及系统。
技术介绍
物联网RFID技术是一种无线自动识别技术,兴起于20世纪90年代,具有远距离感应、强穿透力、多目标识别、安全抗污染等优点,已广泛应用于工商业自动化、交通运输控制管理、产品证件防伪等众多领域;RFID系统由标签、阅读器、后台管理系统三部分组成。在实际应用场景中,RFID系统感应场内存在多阅读器,多标签争抢信道的情况,这种通信干扰被称为碰撞或冲突;由于阅读器数量少,功能强大,阅读器之间的防碰撞问题可以使用功率调整、调频等多种方法解决,但是RFID标签成本低,功能弱,标签碰撞直接影响到通信效率,占用系统资源,甚至会导致拒绝服务问题。目前RFID系统防碰撞问题研究主要集中在多标签的分配信道方面,设计一种合理的标签防碰撞算法可以解决标签碰撞问题。现阶段已提出的标签防碰撞算法有两种:一种是如专利CN103971077A所公开的基于ALOHA的不确定性算法;该算法采用时分多址技术的思想,将系统的信道容量划分成若干个片区,标签进入感应场后,选择一个信道片区发送信息;如果发生碰撞,则碰撞的标签暂停信息传输,等待一段时间再次传送数据,直到所有标签都被成功识别为止。为了减少发生碰撞的概率,数据传输时间仅占循环周期较小的比重。这类算法包括ALOHA、时隙ALOHA和其他一些改进算法等。由于该算法的碰撞概率与通信信息有效帧长正相关,而帧长又与通信效率,通信环境等息息相关,所以很难选择一个合适的帧长来减少碰撞时隙数或空闲时隙数,且由于标签选择时隙数的随机性,也可能存在某些标签长期不被读取的标签饥饿现象。另一种是如专利CN105205425A所公开的基于树的确定性算法。该算法主要利用同一个RFID系统中标签ID信息唯一性特点,通过递归操作对标签进行分组,直至分组中只剩下唯一标签,从而准确的识别出每一个标签。该算法包括了二进制搜索树算法、查询树(QT,querytree)算法、碰撞树算法及其改进算法。这种算法在通信成本方面要逊于基于ALOHA的不确定性算法。现公开的防碰撞算法难以平衡标签成本、通信开销、以及系统效率等问题。
技术实现思路
本专利技术为克服现有的防碰撞算法存在难以平衡标签成本、通信开销、以及系统效率等技术缺陷,提供一种增强二进制分组RFID防碰撞方法及系统。为解决上述技术问题,本专利技术的技术方案如下:一种增强二进制分组RFID防碰撞方法,包括预处理查询阶段、二进制分组查询阶段和识别交互阶段,其中:预处理查询阶段:S1:阅读器初始化分组堆栈G0、G1,存储栈S,广播发送查询命令;S2:标签收到读取命令后开始计时,返回标签ID信息;阅读器收到标签发来的信息,根据消息中碰撞位的情况生成下一条指令;若阅读器没有收到任何消息,发送结束命令;若仅有一个标签响应,执行步骤S7;若有两个或两个以上的碰撞位,则根据当前的标签ID二进制位碰撞状态,进入二制分组查询阶段;二制分组查询阶段:S3:阅读器筛选出所有的碰撞位,组成新的识别码,若识别码为奇数位,则复制最后一位填充;将未碰撞位存入存储栈S中;若结果为0,则该标签碰撞位存入栈G0中,反之则存入栈G1中;S4:对于识别码,从左到右每两位生成一个分组,将所有的碰撞标签ID映射到每个分组上,并对于分组中的ID位作异或运算;如果运算结果为0,则将该标签标识和分组存入栈G0中,如果运算结果为1,则将该标签标识和分组存入栈G1中;S5:分组堆栈G0、G1非空时出栈;发送响应命令,则所有标签第a位结果值为0的标签返回响应;根据Ebga算法识别出所有碰撞标签第x,x+1位,将识别结果存入存储栈S中;S6:当存储栈S非空时出栈,向每一个确定标签发生查询命令,如果仅有一个标签响应,执行步骤S7;识别交互阶段:S7:当阅读器成功识别到标签时,向该标签发送选择命令,标签检查计时器,若超时,则中断通信,进入休眠状态,没有超时就继续通信;然后阅读器对该标签进行读/写数据操作,最后发送休眠命令,将标签设置成休眠状态。其中,在所述步骤S1中,查询命令为Req(*),用于匹配标签中任意位置编码;在所述步骤S5中,所述响应命令为ask(x),用于匹配二进制ID位中第x位为0的标签。其中,在所述步骤S7中,所述选择命令为select/RW(ID),用于表示该标签和阅读器选中的传输数据。其中,在所述步骤S7中,所述休眠命令为sleep(ID),用于令标签编码为ID的标签进入休眠状态,不再响应查询信息。其中,在所述步骤S5中,所述Ebga算法具体内容为:根据查询命令的返回结果分析:如果该标签处于栈G0中,且返回响应,则标签ID的第x位为0,第x+1位为0;若该标签不返回响应,则标签ID的第x位、第x+1位均为1;如果该标签处于栈G1中,且返回响应,则标签ID的第x位为0,第x+1位为1;若该标签不返回响应,则标签ID的第x位为1,第x+1位为0。上述方案中,本专利技术通过将标签碰撞位进行分组识别,减少了总的查询次数,加快了碰撞标签的识别处理速度,在相同条件下,碰撞标签的处理速度平均提高大约50%,缩短了识别时间;同时,查询请求二进制比特位数减少,降低了传输量,提高了算法的吞吐量。应用一种增强二进制分组RFID防碰撞方法的碰撞系统,包括阅读器和若干个标签;其中:所述阅读器内设置有运算处理单元、堆栈单元、存储栈单元、命令生成单元、命令发送单元、信息接收单元、识别码生成单元和读/写操作单元;其中:所述堆栈单元用于构建分组堆栈G0、G1;所述存储栈单元用于构建存储栈S;所述命令生成单元用于阅读器生成各种命令;所述命令发送单元用于阅读器向标签发送各种命令;所述信息接收单元用于阅读器接收标签返回的信息;所述识别码生成单元用于阅读器根据标签的碰撞位生成识别码;所述运算处理单元用于阅读器内部的算法运算及对各个单元的控制处理;所述读/写操作单元用于阅读器对标签进行读/写操作;所述标签内设置有计时器、信息发送单元、命令接收单元、控制单元和信息存储单元;其中:所述计时器用于标签收到命令后的计时操作;所述信息发送单元用于标签信息发送给阅读器;所述命令接收单元用于标签接收阅读器的各种命令;所述信息存储单元用于标签内部信息的存储;所述控制单元用于根据阅读器的各种命令执行对应的操作。其中,所述命令生成单元生成的命令包括查询命令、响应命令、选择命令、休眠命令和结束命令。其中,所述查询命令为Req(*),用于匹配标签中任意位置编码;所述响应命令为ask(x),用于匹配二进制ID位中第x位为0的标签。其中,所述选择命令为select/RW(ID),用于表示该标签和阅读器选中的传输数据。其中,所述休眠命令为sleep(ID),用于令本文档来自技高网
...

【技术保护点】
1.一种增强二进制分组RFID防碰撞方法,其特征在于,包括预处理查询阶段、二进制分组查询阶段和识别交互阶段,其中:/n预处理查询阶段:/nS1:阅读器初始化分组堆栈G0、G1,存储栈S,广播发送查询命令;/nS2:标签收到读取命令后开始计时,返回标签ID信息;阅读器收到标签发来的信息,根据消息中碰撞位的情况生成下一条指令;若阅读器没有收到任何消息,发送结束命令;若仅有一个标签响应,执行步骤S7;若有两个或两个以上的碰撞位,则根据当前的标签ID二进制位碰撞状态,进入二制分组查询阶段;/n二制分组查询阶段:/nS3:阅读器筛选出所有的碰撞位,组成新的识别码,若识别码为奇数位,则复制最后一位填充;将未碰撞位存入存储栈S中;若结果为0,则该标签碰撞位存入栈G0中,反之则存入栈G1中;/nS4:对于识别码,从左到右每两位生成一个分组,将所有的碰撞标签ID映射到每个分组上,并对于分组中的ID位作异或运算;如果运算结果为0,则将该标签标识和分组存入栈G0中,如果运算结果为1,则将该标签标识和分组存入栈G1中;/nS5:分组堆栈G0、G1非空时出栈;发送响应命令,则所有标签第a位结果值为0的标签返回响应;根据Ebga算法识别出所有碰撞标签第x,x+1位,将识别结果存入存储栈S中;/nS6:当存储栈S非空时出栈,向每一个确定标签发生查询命令,如果仅有一个标签响应,执行步骤S7;/n识别交互阶段:/nS7:当阅读器成功识别到标签时,向该标签发送选择命令,标签检查计时器,若超时,则中断通信,进入休眠状态,没有超时就继续通信;然后阅读器对该标签进行读/写数据操作,最后发送休眠命令,将标签设置成休眠状态。/n...

【技术特征摘要】
1.一种增强二进制分组RFID防碰撞方法,其特征在于,包括预处理查询阶段、二进制分组查询阶段和识别交互阶段,其中:
预处理查询阶段:
S1:阅读器初始化分组堆栈G0、G1,存储栈S,广播发送查询命令;
S2:标签收到读取命令后开始计时,返回标签ID信息;阅读器收到标签发来的信息,根据消息中碰撞位的情况生成下一条指令;若阅读器没有收到任何消息,发送结束命令;若仅有一个标签响应,执行步骤S7;若有两个或两个以上的碰撞位,则根据当前的标签ID二进制位碰撞状态,进入二制分组查询阶段;
二制分组查询阶段:
S3:阅读器筛选出所有的碰撞位,组成新的识别码,若识别码为奇数位,则复制最后一位填充;将未碰撞位存入存储栈S中;若结果为0,则该标签碰撞位存入栈G0中,反之则存入栈G1中;
S4:对于识别码,从左到右每两位生成一个分组,将所有的碰撞标签ID映射到每个分组上,并对于分组中的ID位作异或运算;如果运算结果为0,则将该标签标识和分组存入栈G0中,如果运算结果为1,则将该标签标识和分组存入栈G1中;
S5:分组堆栈G0、G1非空时出栈;发送响应命令,则所有标签第a位结果值为0的标签返回响应;根据Ebga算法识别出所有碰撞标签第x,x+1位,将识别结果存入存储栈S中;
S6:当存储栈S非空时出栈,向每一个确定标签发生查询命令,如果仅有一个标签响应,执行步骤S7;
识别交互阶段:
S7:当阅读器成功识别到标签时,向该标签发送选择命令,标签检查计时器,若超时,则中断通信,进入休眠状态,没有超时就继续通信;然后阅读器对该标签进行读/写数据操作,最后发送休眠命令,将标签设置成休眠状态。


2.根据权利要求1所述的一种增强二进制分组RFID防碰撞方法,其特征在于,在所述步骤S1中,查询命令为Req(*),用于匹配标签中任意位置编码;在所述步骤S5中,所述响应命令为ask(x),用于匹配二进制ID位中第x位为0的标签。


3.根据权利要求1所述的一种增强二进制分组RFID防碰撞方法,其特征在于,在所述步骤S7中,所述选择命令为select/RW(ID),用于表示该标签和阅读器选中的传输数据。


4.根据权利要求1所述的一种增强二进制分组RFID防碰撞方法,其特征在于,在所述步骤S7中,所述休眠命令为sleep(ID),用于令标签编码为ID的标签进入休眠状态,不再响应查询信息。


5.根据权利要求1~4任一项所述的一种增强二进制分组RFID防碰撞方法,其特征在于,在所述步骤...

【专利技术属性】
技术研发人员:沈金伟赵一谢仕义梁春林李昭
申请(专利权)人:广东海洋大学南方海洋科学与工程广东省实验室湛江
类型:发明
国别省市:广东;44

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

1