RFID防碰撞算法学习记录

RFID防碰撞算法即是射频识别中多标签(tag)向唯一阅读器(reader)发其ID时,阅读器如何用尽量小的算力,控制不同标签,让其串行地发消息的算法。

本文是论文阅读记录。

实现方法主要分两类:确定性算法,概率性算法。当然还有他们的混用。

确定性算法

1.QT算法,二进制搜索算法BSA&动态二进制搜索算法DBSA

比特追踪技术,通常基于曼彻斯特编码,电平跳变不一致即视为碰撞。

RFID防碰撞算法学习记录_第1张图片

RFID防碰撞算法学习记录_第2张图片

2.关键词:连续位置碰撞、映射。《Improved RFID anti-collision algorithm》,Mustapha Djeddou(阿尔及利亚),2012,SCI

发生连续位置碰撞后,如下图2位,将此两位分别置00,01,10,11,低位置1(通配)发包,但这样冗余较多,容易产生空闲时隙。

RFID防碰撞算法学习记录_第3张图片

比较方面

3.关键词:连续碰撞位、映射。《一种基于ISO18000-6B标准的 RFID防碰撞算法》,苏健,2014,电子学报

主要思想是基于2.Mustapha Djeddou提出的,当发生碰撞后发“自定义命令”QueryP,映射规则类似one-hot编码,即能表示当前哪一位出了碰撞。注意:如果连续两位碰撞,则返回4位二进制编码,如果连续三位碰撞,则返回8位二进制编码,这里产生一定的通信量,但好在由标签发出。阅读器收到映射后的独热码后即可知道碰撞标签的id局部信息,比如tag:1001和1111.向阅读器发0001和1000,由于阅读器也遵循同一映射,当它收到0001,它就知道这个tag这两位是00了。

还有一点,这里阅读器发的都是截止到碰撞位的部分编码,也就是抛弃了后边通配的1。

RFID防碰撞算法学习记录_第4张图片

RFID防碰撞算法学习记录_第5张图片

比较方面:平均查询周期(识别一标签需要的平均查询周期(时隙数))、总的传输数据量、能量效率

RFID防碰撞算法学习记录_第6张图片RFID防碰撞算法学习记录_第7张图片RFID防碰撞算法学习记录_第8张图片RFID防碰撞算法学习记录_第9张图片

P.S.随机性算法采用伪随机数RN16进行仲裁,确定性算法则使用标签ID 进 行 仲 裁.通常情况下确定性算法中的碰撞时隙所包含的标签数要多于随机性算法中碰撞时隙所包含的标签数。

值得注意的是,2013年IEEE Communication Letters上发表的算法M-ary Query Tree,在发碰撞位映射的同时,发送剩余位id。可见本文相对于MQT算法仅仅舍去了剩余位id,发在了国内期刊上。

 

 

概率性算法

1.ALOHA,Sloted ALOHA,FSA和DFSA

  1. 在纯ALOHA算法中,若读写器检测出信号存在相互干扰,读写器就会以向标签发出命令,令其停止向读写器传输信号;标签在接收到命令信号之后,就会停止发送信息,并会在随机时间段内进入到待命状态,只有当该时间段过去后,才会重新向读写器发送信息。各个电子标签待命时间片段长度是随机的,再次向读写器发送信号的时间也不相同,这样减少碰撞的可能性。当读写器成功识别某一个标签后,就会立即对该标签下达命令使之进入到休眠的状态。而其他标签则会一直对读写器所发出命令进行响应,并重复发送信息给读写器,当标签被识别后,就会一一进入到休眠状态,直到读写器识别出所有在其工作区内的标签后,算法过程才结束。
  2. 时隙ALOHA算法把时间分成多个离散的时隙,每个时隙长度等于或稍大于一个帧,标签只能在每个时隙的开始处发送数据。这样标签要么成功发送,要么完全碰撞,避免了纯ALOHA算法中的部分碰撞冲突,碰撞周期减半,提高了信道利用率。时隙ALOHA算法需要读写器对其识别区域内的标签校准时间。时隙ALOHA算法是随机询问驱动的TDMA防冲撞算法,工作过程如图所示。因为标签仅仅在确定的时隙中传输数据,所以该算法的冲撞发生频率仅仅是纯ALOHA算法的一半,但其系统的数据吞吐性能却会增加一倍。

  3. 帧时隙算法中,时间被分成多个离散时隙,电子标签必须在时隙开始处才可以开始传输信息。读写器以一个帧为周期发送查询命令。当电子标签接收到读写器的请求命令时,每个标签通过随机挑选一个时隙发送信息给读写器。如果一个时隙只被唯一标签选中,则此时隙中标签传输的信息被读写器成功接收,标签被正确识别。如果有两个或两个以上的标签选择了同一时隙发送,则就会产生冲突,这些同时发送信息的标签就不能被读写器成功识别。整个算法的识别过程都会如此循环,一直到所有标签都被识别完成。

  4. 动态帧时隙ALOHA算法允许根据系统的需要动态地调整帧长度,在每帧结束后,根据上一帧的反馈情况检测标签发生碰撞的次数(碰撞时隙数),电子标签被成功识别的次数(成功时隙数)和电子标签在某个时隙没有返回数据信息的次数(空闲时隙数)来估计当前未被正确识别的电子标签数目,然后选择最佳的下一帧的长度,把它的帧长度作为下一轮识别的帧长。

时隙ALOHA算法的信道利用率公式,n为待识别标签数,F为帧长,理论最大值出现在F=n时,为0.368

                                                       

RFID防碰撞算法学习记录_第10张图片

上图为帧时隙ALOHA算法

  1. Lower bound method将帧长设为碰撞slot个数的二倍。(Transmission control scheme for fast RFIDobject identification,2006,iEEE会议)
  2. FRITS C.Schoute(Dynamic Frame Length ALOHA,1983)考虑到每个时隙标签大于3个的情形。通过构造泊松过程分布函数, 当标签数等于帧长的情况下得到N=2.39·C。RFID防碰撞算法学习记录_第11张图片
  3. Vogt(2002)通过对实际成功、空闲、碰撞时隙数与理论成功、空闲、碰撞时隙数进行比较, 得出误差最小的结果来估计标签数。但没有考虑tag暂时的失活状态(无法响应reader的request)

                                                                   RFID防碰撞算法学习记录_第12张图片

在《Novel Anti-collision Algorithms for Fast Object Identification in RFID System》一文中(2005),作者将DSA(Dynamic Slot Allocation)和TEM(Tag Estimation Method)结合,预测待识别的标签数,从而作为预测下一帧帧长的函数。

还有利用贝叶斯公式、马尔科夫链等预测下一帧帧长的算法。

2.基于Q值的DFSA,EPC C1G2标准-防碰撞方案,图源5.

RFID防碰撞算法学习记录_第13张图片RFID防碰撞算法学习记录_第14张图片RFID防碰撞算法学习记录_第15张图片

3.Binary Selection算法

当多个标签产生相同随机位Q且发生id碰撞时,Tc都变成Q,若Q不为零下一时刻必然空闲。

RFID防碰撞算法学习记录_第16张图片

4.关键词:标志位。《基于空闲时隙消除的超高频RFID防碰撞算法》,苏健,2017,电子学报

核心技术:

计数器Tc,一位标志位F,一位随机位Q,初始化为(0,0,0)

Tc=0的向reader发Q,如未发生Q碰撞,则Tc=0的F=1并向reader发id,如id碰撞则Tc=0的F置零,否则识别成功,Tc-=1;如发生Q碰撞Tc+=Q或Tc+=1

特点:时隙状态只有ID碰撞,ID成功和Q碰撞,没有空闲,均被tag和reader之间的Q通信和id通信占满。之所以没有Q成功   

和BS的区别在于BS发生碰撞后Tc变大且可能Q相同导致变化后Tc相同,本文发生id碰撞后F=0,Tc不变,发生Q碰撞后Tc变大且Q不同从而Tc不同。

RFID防碰撞算法学习记录_第17张图片RFID防碰撞算法学习记录_第18张图片

4.关键词:利用碰撞信息推理调整Q值。基于时隙预测的 RFID 防碰撞 ALOHA 算法,李萌,通信学报,2011

 

 

 

参考文献:

https://blog.csdn.net/yixueming/article/details/45009303

你可能感兴趣的:(物联网,RFID防碰撞)