一种基于多叉树的rfid防碰撞方法

文档序号:9453401阅读:696来源:国知局
一种基于多叉树的rfid防碰撞方法
【技术领域】
[0001] 本发明涉及无线射频识别技术领域,特别涉及一种基于多叉树的RFID防碰撞方 法。
【背景技术】
[0002] RFID(RFID,即RadioFrequencyIdentification,无线射频识别)技术作为一种 通信技术,可通过非接触的方式,对RFID标签进行识别并读写RFID标签中的相关数据。
[0003] 随着RFID技术应用的发展,一个RFID阅读器通常需要对多个RFID标签进行识别 处理。当RFID阅读器向一定范围内的一组RFID标签发送查询指令时,可能会存在两个或 两个以上的RFID标签同时对阅读器发送的查询指令进行响应,从而造成数据信息之间的 相互干扰,由此大大降低了阅读器的识别速度和识别效率。
[0004] 综上所述可以看出,如何实现对多个RFID标签进行正确无误的识别处理是目前 亟待解决的问题。

【发明内容】

[0005] 有鉴于此,本发明的目的在于提供一种基于多叉树的RFID防碰撞方法,实现了对 多个RFID标签进行正确无误的识别处理的目的。其具体方案如下:
[0006] -种基于多叉树的RFID防碰撞方法,包括:
[0007] 步骤S11:同时对被识别区域上的所有RFID标签进行查询操作;
[0008] 步骤S12 :令!^为正整数,其中,iG{1,2,...,叫,并且1(1+1大于1(1;判断所述被 识别区域上的所有RFID标签对步骤S11中的查询操作进行应答后是否产生碰撞信息并且 该碰撞信息的碰撞位的数量大于一位,如果否,则对所述被识别区域上的所有RFID标签进 行识别,并结束,如果是,则获取所述被识别区域上每一RFID标签对应的碰撞位匹配前缀, 该碰撞位匹配前缀为RFID标签的碰撞位序列的前&个序列号,此处i= 1,其中,任一RFID 标签的碰撞位序列为该RFID标签的标签序列中在位置上与步骤S12中产生的碰撞信息的 碰撞位对应的序列;
[0009] 步骤S13:分别将具有相同的碰撞位匹配前缀的RFID标签分为一类,相应地得到 一类或一类以上的RFID标签;
[0010] 步骤S14 :按照时间先后顺序,依次对步骤S13中得到的每一类RFID标签中的所 有RFID标签进行查询操作;在对任一类RFID标签进行查询操作时,判断该类RFID标签中 的所有RFID标签对本次查询操作进行应答后是否产生碰撞信息并且该碰撞信息的碰撞位 的数量大于一位,如果否,则对该类RFID标签中的所有RFID标签进行识别,如果是,则令i =i+1,并重新构造该类RFID标签中每一RFID标签的碰撞位匹配前缀,该碰撞位匹配前缀 为RFID标签的碰撞位序列的前&个序列号,并进入步骤S13,直到所述被识别区域上的所 有RFID标签被识别完毕。
[0011] 优选的,步骤S11具体包括:对OPEN表和存储区进行清空处理;向所述被识别区 域上的所有RFID标签发送Request命令,其中,任一RFID标签接收到所述Request命令后 需返回自身的标签序列。
[0012] 优选的,步骤S12中,所述获取所述被识别区域上每一RFID标签对应的碰撞位匹 配前缀的过程,包括:
[0013] 利用步骤S12得到的碰撞信息,构造相应的锁定位置参数,并将包含所述锁定位 置参数的锁定命令发送至所述被识别区域上的所有RFID标签;其中,任一RFID标签接收 到所述锁定命令后需返回第一序列;该第一序列包括第一编码序列和第一剩余序列;任一 RFID标签返回的第一编码序列为该RFID标签对碰撞位序列的前&个序列号进行编码后得 到的序列;任一RFID标签返回的第一剩余序列为该RFID标签的碰撞位序列中去除前&个 序列号后剩下的序列;
[0014] 对每一RFID标签接收到所述锁定命令后返回的第一编码序列进行解码,相应地 得到每一RFID标签对应的碰撞位匹配前缀。
[0015] 优选的,步骤S13具体包括:
[0016] 分别将具有相同的碰撞位匹配前缀的RFID标签分为一类,并将同一类RFID标签 所对应的碰撞位匹配前缀存储至所述OPEN表,相应地得到一类或一类以上的RFID标签。
[0017] 优选的,步骤S14中,所述按照时间先后顺序,依次对步骤S13中得到的每一类 RFID标签中的所有RFID标签进行查询操作的过程,包括:
[0018] 按照时间先后顺序,依次向步骤S13中得到的每一类RFID标签中的所有RFID标 签发送Request (R-UID)命令,其中,与任一类RFID标签对应的Request (R-UID)命令均包 括R-UID参数,该R-UID参数与该类RFID标签所对应的碰撞位匹配前缀相同,并且,每当 向任一类RFID标签发送相应的Request (R-UID)命令时,均需从所述OPEN表中删除与该 Request (R-UID)命令对应的碰撞位匹配前缀,并将该碰撞位匹配前缀存储至所述存储区;
[0019] 当任一类RFID标签中的每一RFID标签接收到相应的Request (R-UID)命令后,返 回相应的第二序列;该第二序列为该RFID标签根据当前剩余碰撞序列得到的序列;该RFID 标签的当前剩余碰撞序列为从该RFID标签中的碰撞位序列去除当前该RFID标签的碰撞位 匹配前缀后得到的序列;
[0020] 其中,任一RFID标签返回的第二序列包括第二编码序列和第二剩余序列;任一 RFID标签返回的第二编码序列为该RFID标签对当前剩余碰撞序列的前n个序列号进行编 码后得到的序列,n=K1+1-M壬一RFID标签返回的第二剩余序列为该RFID标签的当前剩 余碰撞序列中去除前n个序列号后剩下的序列。
[0021] 优选的,在对任一RFID标签进行识别后,还包括:
[0022] 向该RFID标签发送Sleep (S-UID)命令,以禁止该RFID标签对外界的任何指令进 行应答,其中,与任一RFID标签对应的Sleep (S-UID)命令均包括S-UID参数,该S-UID参 数与该RFID标签的碰撞位序列相同,并从所述存储区中删除与该RFID标签对应的碰撞位 匹配前缀。
[0023] 优选的,步骤S14中,所述重新构造该类RFID标签中每一RFID标签的碰撞位匹配 前缀的过程,包括:
[0024] 对该类RFID标签中的每一RFID标签返回的第二编码序列进行解码,并将解码后 得到的序列与当前Request (R-UID)命令对应的碰撞位匹配前缀进行结合,得到该RFID标 签的新的碰撞位匹配前缀。
[0025] 优选的,步骤S14中,所述直到所述被识别区域上的所有RFID标签被识别完毕的 过程,包括:直到所述OPEN表为空为止。
[0026] 本发明提供了一种基于多叉树的RFID防碰撞方法,包括:步骤S11 :同时对被识别 区域进行查询操作;步骤S12 :令!^为正整数,其中,iG{1,2,...,叫,并且1(1+1大于1(1;判 断是否产生碰撞信息并且该碰撞信息的碰撞位的数量大于一位,如果否,则对被识别区域 上的所有RFID标签进行识别,并结束,如果是,则获取每一RFID标签对应的碰撞位匹配前 缀,该碰撞位匹配前缀为RFID标签的碰撞位序列的前&个序列号,此处i= 1 ;步骤S13 : 分别将具有相同的碰撞位匹配前缀的RFID标签分为一类;步骤S14 :按照时间先后顺序, 依次对步骤S13中得到的每一类RFID标签中的所有RFID标签进行查询操作;在对任一类 RFID标签进行查询操作时,判断是否产生碰撞信息并且该碰撞信息的碰撞位的数量大于一 位,如果否,则对该类RFID标签中的所有RFID标签进行识别,如果是,则令i=i+1,并重新 构造该类RFID标签中每一RFID标签的碰撞位匹配前缀,该碰撞位匹配前缀为RFID标签的 碰撞位序列的前1个序列号,并进入步骤S13,直到被识别区域上的所有RFID标签被识别 完毕。可见,本发明通过对相互之间产生碰撞信息并且碰撞位的数量大于一位的所有RFID 标签进行一次或多次的分类,然后按照时间先后顺序,对每一类RFID标签进行再次查询操 作,由此形成了一种多叉树查询机制,直到每一类RFID标签均被成功识别,从而完成对被 识别区域上所有的RFID标签的识别工作,由此实现了对多个RFID标签进行正确无误的识 别处理的目的。
【附图说明】
[0027] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的实施例,对
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1