论文部分内容阅读
RFID是Radio Frequency Identification的英文缩写,其中文名称是射频识别技术,它是应用无线电波自动识别单个物品的技术总称。在物联网中,启动RFID系统后,首先发出读取请求命令,此时在读写器可读范围内的所有标签都能接收到请求并同时将自身携带的EPC码传送给读写器,由于每个标签的序列号是唯一的,所以在数据的接收过程中就必然发生碰撞,因此如何设计安全高效的防碰撞算法,使得阅读器不重复不遗漏地读取每个标签是RFID系统实现中必须解决的关键技术,也是业界一直研究的热点问题。传统的防碰撞算法有两类:一类是ALOHA算法和时隙ALOHA算法,这两种算法都是通过延时等待解决碰撞问题,其信道利用率分别为18.4%和36.8%,且随着标签数量的增加其性能急剧恶化。另一类是徐丽香、蓝运维提出的动态二进制搜索算法,这类算法是通过逐个减少直到消除碰撞位解决碰撞问题,其性能不会随着N值的增大而急剧恶化,它从N个标签中识别单个标签的平均搜索数为Log2N+1,全部识别N个标签的搜索次数为N*( Log2N+1)。然而,动态二进制防碰撞算法也有它的缺陷,它在每次读取一个标签后,阅读器重新发送全‘1’的查询码,这使得系统在读取前一标签过程中所得到的查询信息未能充分利用,导致在后续查询中又要重复前面的工作,这样不仅增加了系统的时间开销,也增加了系统的数据冗余。文本较详细的介绍分析了RFID技术的国内外研究现状,以及射频识别系统的组成和工作流程;较深入的分析比较了当前普遍使用的两类方碰撞算法优劣,在此基础上,指出了动态二进制算法的不足,并给出了改进方法。改进的动态二进制算法在系统发现碰撞后分别将最高碰撞位置‘0’或置‘1’,高位不变,这样得到两个序列码a1,a2,并以a1作为下一查询码,a2存入栈中。在读取一个标签之后从栈中取出栈顶元素作为新的查询码继续工作,如此循环,直到栈空,全部标签顺利读取。这样做的好处是能充分利用前面查询过程中得到的结果(即存在栈中的数据),大大提高搜索效率,通过Matlab软件进行模拟仿真表明,改进后的算法识别N个标签的搜索次数迅速下降到2N-1,识别单个标签平均搜索2次,信道利用率稳定在50%以上。