1.一种多时隙信息位编码自适应搜索防碰撞方法,其特征在于,包括以下步骤:S1、阅读器初始化堆栈为空,并发出初始搜索命令至阅读器;
S2、所有标签在第一时隙响应阅读器发出的初始搜索命令,并返回对应数据至阅读器;
S3、对返回数据的多个信息位进行编码,并分时隙返回至阅读器;
S4、基于接收到的编码数据的信息位长度及碰撞位,进行标签识别及数据入栈处理;
S5、基于标签识别结果,判断当前阅读器堆栈数据是否为空;
若是,则进入步骤S7;
若否,则进入步骤S6;
S6、使阅读器弹出堆栈数据并发送命令,根据发送的命令使标签在相应时隙返回与该标签前缀互补的数据,并返回步骤S3;
S7、识别出所有标签,实现防碰撞;
所述步骤S3具体为:
设每个标签返回的数据S为对应标签ID中与查询前缀互补的数据;
当数据S的信息位长度大于4时,将数据S分为最高4位Q和剩余比特位R,将最高4位Q编码为16位比特数据Q',并使标签在相应时隙将编码数据Q'+R发送至阅读器;
当数据S的信息位长度小于或等于4时,将数据S编码为S',并使标签在相应时隙将编码数据S'发送至阅读器。
2.根据权利要求1所述的多时隙信息位编码自适应搜索防碰撞方法,其特征在于,所述步骤S1中初始搜索命令为搜索前缀为空,且所有标签在第一时隙响应的命令。
3.根据权利要求1所述的多时隙信息位编码自适应搜索防碰撞方法,其特征在于,所述步骤S4具体为当接收到的编码数据的信息位长度小于或等于16时,则接收到的数据为编码数据S',将编码数据S'译码为S1,S2,S3,....,识别到若干个标签,无数据入栈;
当接收到的编码数据的信息位长度大于16位,则接收到的数据为编码数据Q'+R,其前
16位为Q',剩余比特位为R,对Q'和R中的碰撞位进行检测,并根据碰撞位检测结果进行标签识别。
4.根据权利要求3所述的多时隙信息位编码自适应搜索防碰撞方法,其特征在于,所述步骤S4中,对Q'和R中的碰撞位进行检测,实现标签识别的方法具体为:(1)当Q'中无碰撞位,且R中无碰撞位时,识别到一个标签,无数据入栈;
(2)当Q'中有碰撞位,且R中无碰撞位时,识别到若干个标签,无数据入栈;
(3)当Q'中无碰撞位,且R中仅有一个碰撞位时,识别到两个标签,无数据入栈;
(4)当Q'中无碰撞位,且R中有一个以上的碰撞位时,设最高碰撞位为第n位,对Q'译码得到Q,得到标签ID第n位以前的数据P,将REQ(P)压入堆栈;
(5)当Q'中有碰撞位,且R中有一个以上的碰撞位时,设最高碰撞位为第n位,对Q'译码得到Q1, Q2,...,得到标签ID第n位以前的数据P1,P2,...,将REQ(P1,P2...)压入堆栈。
5.根据权利要求4所述的多时隙信息位编码自适应搜索防碰撞方法,其特征在于,所述步骤S5中:当识别到标签时,当前阅读器堆栈数据为空,进入步骤S7;
当将REQ(P)或REQ(P1,P2...)压入堆栈时,当前阅读器堆栈数据不为空,进入步骤S6。
6.根据权利要求4所述的多时隙信息位编码自适应搜索防碰撞方法,其特征在于,所述步骤S6中,阅读器发送的命令包括多叉树搜索命令REQ(P)和多时隙搜索命令REQ(P1,P2...);
当发送命令为多叉树搜索命令REQ(P)时,将前缀为P的标签在第一时隙响应命令并返回和该标签前缀互补的数据,并返回步骤S3;
当发送命令为多时隙搜索命令REQ(P1,P2...)时,将前缀为P1,P2,...的标签依次在对应时隙响应命令并返回和该前缀互补的数据,并返回步骤S3。