RFID防碰撞算法摘录

EPC协议里面提供了一系列的命令以及参数来支持帧时隙ALOHA算法。其中包括Q值,RN16(16位随机数),槽计数器,Query,QueryRep,ACK等命令。
协议里面的多标签读写过程是这样的:
首先,读写器发送一条带有Q值的Query命令,其中Q值的范围是0-15。当标签接收到Query命令后提取其中的Q参数,并随机选取0-2Q之间的一个随机数,这个随机数叫做slot。如果这个随机数等于0,则该标签向读写器发送一个16位随机数(RN16)。如果标签选择的slot不等于0,则标签每次接收到QueryRep的时候,slot减去1。当标签中的slot减到零的时候,该标签发送RN16。如果读写器正确的接收到了没有碰撞的RN16,读写器会发送ACK命令告诉该标签,然后该标签传送自身的PC+EPC+CRC16数据。
这些基础知识还得加上一些概率的算法,比如说最大似然估计,或者马尔科夫链等能达到非常好的效果。
实现防碰撞关键就是在知道这个流程之后,如何控制发送Query rep、Query adjust命令,还有就是怎么判断区域内的标签都读完了以便发送新的select 命令(也可以定时发送,但容易漏读)。还要思考当多个标签slot同时为0时如何处理(这是防冲突的重点,漏读的主要原因)。

Print Friendly, PDF & Email
标签: ,

发表评论