一种基于搜索树的双时隙RFID防碰撞算法制造技术

技术编号:18712576 阅读:43 留言:0更新日期:2018-08-21 22:56
本发明专利技术公开了一种基于搜索树的双时隙RFID防碰撞算法;本算法基于搜索树的双时隙防碰撞算法。该算法利用阅读器堆栈形成进一步搜索命令;响应标签分为两个子集,并分别在两个时隙发送数据信息,一次搜索最多可识别4个标签。理论分析和仿真结果表明:基于搜索树的双时隙防碰撞算法综合了ALOHA算法和搜索树算法的优点,减少了搜索次数和识别时间,提高了RFID系统的整体性能。因此改进之后,引入了ALOHA算法中的时隙思想,综合二者的优点,减少了阅读器和标签间的数据通信量,减少了搜索次数,提高了搜索效率。

A dual timeslot RFID anti-collision algorithm based on search tree

The invention discloses a dual-slot RFID anti-collision algorithm based on a search tree, which is a dual-slot anti-collision algorithm based on a search tree. The algorithm uses the reader stack to form a further search command; the response tag is divided into two subsets, and sends data information in two slots, and the maximum number of four tags can be recognized in one search. Theoretical analysis and simulation results show that the dual-slot anti-collision algorithm based on search tree combines the advantages of ALOHA algorithm and search tree algorithm, reduces the number of searches and recognition time, and improves the overall performance of RFID system. Therefore, after the improvement, the slot idea of ALOHA algorithm is introduced, which combines the advantages of both, reduces the data traffic between reader and tag, reduces the number of searches, and improves the search efficiency.

【技术实现步骤摘要】
一种基于搜索树的双时隙RFID防碰撞算法
本专利技术涉及RFID防碰撞算法相关领域,具体讲是一种基于搜索树的双时隙RFID防碰撞算法。
技术介绍
RFID技术即无线射频识别技术,通常由阅读器、标签和数据系统组成,由于其非接触、自动识别、穿透性强等优点,被广泛应用于医疗、交通、物流、电力等各个行业。阅读器作用范围内通常有多个标签,由于所有标签使用同一信道,当多个标签同时向阅读器发送数据时,就会相互干扰,造成阅读器无法读取数据,这就是RFID的碰撞问题。现有RFID防碰撞算法(1)纯ALOHA算法:纯ALOHA算法是一种比较简单的随机时分多址防碰撞算法,标签在一个周期性的循环中不断向阅读器发送数据,标签发送数据的时间只是重复时间的一小部分,其发送数据的时间是随机的,当一个标签发送数据时,如果另一个标签也在发送数据,就会发生碰撞,纯ALOHA算法在发送数据的过程中碰撞的概率比较大。帧时隙ALOHA算法是在纯ALOHA算法基础上的改进算法,在时间上分成多个离散时隙,把多个时隙组成一帧,标签在每个帧内随机选择一个时隙发送数据,帧时隙ALOHA算法避免了纯ALOHA算法部分数据碰撞的情况,吞吐率提高了一倍。在帧时隙ALOHA算法中,帧的长度是固定的,当标签数量远大于帧长度时,会导致碰撞时隙过多,当标签数量远小于帧长度时,会导致空闲时隙过多,动态帧时隙ALOHA算法对此作了改进,在标签的搜索过程中,动态调整帧的长度,以提高搜索效率。ALOHA算法是一种概率算法,存在空闲时隙,识别效率不高,在不知道标签数量情况下,不能保证所有标签都能够被有效识别。(2)二进制搜索防碰撞算法:(2.1)基本二进制搜索算法:基本二进制搜索算法需要准确的检测碰撞位,这需要对标签数据进行特殊的编码,通常是通过曼彻斯特编码来实现,同时要确保多个标签同步向阅读器发送数据。在基本二进制搜索算法中,阅读器根据接收数据的碰撞位位置来确定发送命令序列号,各标签把自身的ID号和阅读器发送的命令序列号进行比较,如果小于或等于序列号,就发送ID数据给阅读器,否则就不响应阅读器命令,当识别出一个标签后,又重头开始搜索,直到识别出所有标签。假设有N个标签,基本二进制搜索算法识别一个标签的搜索次数为识别所有标签的搜索次数为:(2.2)动态二进制搜索算法:基本二进制搜索算法在搜索过程中,阅读器的发送命令参数中,最高碰撞位以后的比特位都置‘1’,这部分信息对标签来说是已知的;标签总是返回完整的序列号,最高碰撞位以前的比特位对于阅读器来说也是已知的,标签和阅读器都重复发送了多余信息,动态二进制对此作了改进,阅读器只发送最高碰撞位及以前的比特位,标签只发送最高碰撞位以后的比特位,这样,传输的数据量减少了一半,在ISO/IEC1443A标准中,动态二进制搜索算法为推荐的防碰撞算法。动态二进制搜索算法的搜索次数与基本二进制搜索算法相同。(2.3)后退式动态二进制防碰撞算法:由于本文算法和后退式动态二进制防碰撞算法作了仿真对比,所以有必要介绍下后退式动态二进制防碰撞算法,这是一种应用很广的一种算法,很多防碰撞算法都是以此为基础的改进算法。动态二进制搜索算法有效的减少了数据通信量,但是搜索次数没有减少,对此,后退式动态二进制防碰撞算法作了改进,当识别出一个标签后,不是重头开始搜索,而是返回上一个碰撞节点往下搜索,这种使用后退策略的方式减少了搜索次数。后退式动态二进制防碰撞算法的搜索次数为:L(N)=2N-1。RFID的防碰撞算法可分为确定性算法和不确定性算法两种。不确定性算法主要是基于ALOHA的算法,在基本ALOHA算法的基础上,又产生了时隙ALOHA算法,帧时隙ALOHA算法、动态帧时隙ALOHA算法等,这类算法识别效率低,部分标签可能在较长时间不能被识别,即产生标签“饥饿”问题,导致整个系统的信道利用率降低、可靠性降低;确定性算法主要是基于二进制搜索树的算法,在基本二进制搜索算法的基础上,又产生了动态二进制搜索算法、后退式二进制搜索算法等,确定性算法不存在“饥饿”问题,没有错误判决,但系统通信量大,识别时延长,算法较复杂。
技术实现思路
因此,为了解决上述不足,本专利技术在此提供一种基于搜索树的双时隙RFID防碰撞算法;本算法属于确定性算法,但引入了ALOHA算法中的时隙思想,综合二者的优点,减少了阅读器和标签间的数据通信量,减少了搜索次数,提高了搜索效率。在RFID多标签应用中,标签碰撞问题严重影响了RFID系统的性能。传统的RFID算法存在标签搜索次数多、识别时间长等问题。为此,在搜索树算法的基础上引入时隙的思想,提出了一种新的防碰撞算法:基于搜索树的双时隙防碰撞算法。该算法利用阅读器堆栈形成进一步搜索命令;响应标签分为两个子集,并分别在两个时隙发送数据信息,一次搜索最多可识别4个标签。理论分析和仿真结果表明:基于搜索树的双时隙防碰撞算法综合了ALOHA算法和搜索树算法的优点,减少了搜索次数和识别时间,提高了RFID系统的整体性能。本专利技术是这样实现的,构造一种基于搜索树的双时隙RFID防碰撞算法,其特征在于:算法流程如下:(1)阅读器发出请求命令REQ(NUL);(2)阅读器作用范围内所有标签响应请求命令,序列号最高位为‘0’的标签(子集0)在时隙1发送最高位‘0’以后标签序列号给阅读器;序列号最高位为‘1’的标签(子集1)在时隙2发送最高位‘1’以后标签序列号给阅读器;(3)阅读器在时隙1接收子集0数据,在时隙2接收子集1数据,如果无碰撞位。则标签被识别,转至步骤(5),如果只有一个碰撞位,则可识别两个标签,转至步骤(5),如果子集0有一个以上的碰撞位,设最高碰撞位为第P位,则搜索命令前缀X为子集0标签序列号N-1~P+1位(对于阅读器来说,子集0标签序列号N-1~P+1位是已知的,方法为:上次阅读器请求命令参数X加‘0’加阅读器接收数据最高碰撞位以前比特位),阅读器发出请求命令REQ(X);如果子集1有一个以上的碰撞位,设最高碰撞位为第P’位,则搜索命令前缀X’为子集1标签序列号N-1~P’+1位(对于阅读器来说,子集1标签序列号N-1~P+1位是已知的,方法为:上次阅读器请求命令参数X加‘1’加阅读器接收数据最高碰撞位以前比特位),X’存入阅读器堆栈区;(4)标签接收数据X,设X长度为Y比特,则序列号最高Y比特与X相同的标签响应命令,在这些标签中,序列号第N-Y-1位为‘0’的标签在时隙1返回标签序列号的N-Y-2~0位给阅读器;序列号第N-Y-1位为‘1’的标签在时隙2返回标签序列号的N-Y-2~0位给阅读器;转至步骤(3);(5)阅读器先后发出SELECT(ID)、RW(ID)、UNSELECT(ID)命令,选中相应标签,并对标签进行数据读写,令标签进入休眠状态,在标签再次被激活之前,标签对阅读器命令不再响应;(6)阅读器堆栈区弹出数据,设为X’,阅读器发出请求命令REQ(X’),转至步骤(4);(7)依此循环,直到所有标签都被识别。本专利技术具有如下优点:本专利技术通过提出了一种新的RFID防碰撞算法:基于搜索树的双时隙RFID防碰撞算法。在算法中,引入ALOHA算法中时隙的思想,充分利用搜索树算法的确定性和可控性。该算法是确定性算法,完全排除了ALOHA算法的空本文档来自技高网
...

【技术保护点】
1.一种基于搜索树的双时隙RFID防碰撞算法,其特征在于:算法流程如下:(1)阅读器发出请求命令REQ(NUL);(2)阅读器作用范围内所有标签响应请求命令,序列号最高位为‘0’的标签(子集0)在时隙1发送最高位‘0’以后标签序列号给阅读器;序列号最高位为‘1’的标签(子集1)在时隙2发送最高位‘1’以后标签序列号给阅读器;(3)阅读器在时隙1接收子集0数据,在时隙2接收子集1数据,如果无碰撞位。则标签被识别,转至步骤(5),如果只有一个碰撞位,则可识别两个标签,转至步骤(5),如果子集0有一个以上的碰撞位,设最高碰撞位为第P位,则搜索命令前缀X为子集0标签序列号N‑1~P+1位(对于阅读器来说,子集0标签序列号N‑1~P+1位是已知的,方法为:上次阅读器请求命令参数X加‘0’加阅读器接收数据最高碰撞位以前比特位),阅读器发出请求命令REQ(X);如果子集1有一个以上的碰撞位,设最高碰撞位为第P’位,则搜索命令前缀X’为子集1标签序列号N‑1~P’+1位(对于阅读器来说,子集1标签序列号N‑1~P+1位是已知的,方法为:上次阅读器请求命令参数X加‘1’加阅读器接收数据最高碰撞位以前比特位),X’存入阅读器堆栈区;(4)标签接收数据X,设X长度为Y比特,则序列号最高Y比特与X相同的标签响应命令,在这些标签中,序列号第N‑Y‑1位为‘0’的标签在时隙1返回标签序列号的N‑Y‑2~0位给阅读器;序列号第N‑Y‑1位为‘1’的标签在时隙2返回标签序列号的N‑Y‑2~0位给阅读器;转至步骤(3);(5)阅读器先后发出SELECT(ID)、RW(ID)、UNSELECT(ID)命令,选中相应标签,并对标签进行数据读写,令标签进入休眠状态,在标签再次被激活之前,标签对阅读器命令不再响应;(6)阅读器堆栈区弹出数据,设为X’,阅读器发出请求命令REQ(X’),转至步骤(4);(7)依此循环,直到所有标签都被识别。...

【技术特征摘要】
1.一种基于搜索树的双时隙RFID防碰撞算法,其特征在于:算法流程如下:(1)阅读器发出请求命令REQ(NUL);(2)阅读器作用范围内所有标签响应请求命令,序列号最高位为‘0’的标签(子集0)在时隙1发送最高位‘0’以后标签序列号给阅读器;序列号最高位为‘1’的标签(子集1)在时隙2发送最高位‘1’以后标签序列号给阅读器;(3)阅读器在时隙1接收子集0数据,在时隙2接收子集1数据,如果无碰撞位。则标签被识别,转至步骤(5),如果只有一个碰撞位,则可识别两个标签,转至步骤(5),如果子集0有一个以上的碰撞位,设最高碰撞位为第P位,则搜索命令前缀X为子集0标签序列号N-1~P+1位(对于阅读器来说,子集0标签序列号N-1~P+1位是已知的,方法为:上次阅读器请求命令参数X加‘0’加阅读器接收数据最高碰撞位以前比特位),阅读器发出请求命令REQ(X);如果子集1有一个以上的碰撞位,设最高碰撞位为第P’位,...

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

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

1