CN102682253A - 一种多标签防碰撞方法 - Google Patents
一种多标签防碰撞方法 Download PDFInfo
- Publication number
- CN102682253A CN102682253A CN2011101364020A CN201110136402A CN102682253A CN 102682253 A CN102682253 A CN 102682253A CN 2011101364020 A CN2011101364020 A CN 2011101364020A CN 201110136402 A CN201110136402 A CN 201110136402A CN 102682253 A CN102682253 A CN 102682253A
- Authority
- CN
- China
- Prior art keywords
- label
- write line
- read write
- time slot
- data packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明公开了一种多标签防碰撞方法,该方法为:读写器初始化碰撞方法参数;读写器发送启动查询命令;读写器接收到响应数据包;读写器判断是否发生碰撞;读写器识别标签,发送重复查询命令;读写器根据连续碰撞的程度发送分裂命令或分散命令;读写器根据连续空闲的程度发送重复查询命令或收缩命令,本方法能够动态调整标签的散列程度,无论标签数量的多少,该方法都能将系统的吞吐率保持在较高水平。
Description
技术领域
本发明涉及射频通信技术领域,具体是一种应用于射频识别系统中,解决多标签之间发生通信碰撞的方法。
背景技术
射频识别(Radio Frequency Identification, RFID)通信技术是一种非接触式的自动识别技术。在射频识别系统中,读写器通过射频信号与若干标签进行通信,并获取每个标签上存储的识别信息。
射频识别系统与其他典型的射频通信系统所面临的一个共同问题是:需要解决在同一个系统中多个设备之间同时通信的碰撞问题。对于射频识别系统来说,主要解决单个读写器与多个标签之间通信的碰撞问题。并且限于成本和功耗的因素,标签只能够提供极为有限的功能用于实现防碰撞机制。目前多标签的防碰撞方法主要分为时隙ALOHA方法和二叉树方法两大类。
时隙ALOHA方法是把时间分成若干离散时隙,要求标签随机选择其中一个时隙,在时隙的分界处发送数据。在国际标准ISO18000-6A和ISO18000-6C中均采用时隙ALOHA方法。
二叉树方法的基本思想是将标签分裂成子集0和子集1两个子集。先查询子集0,若没有碰撞,则正确识别标签,若有碰撞则再分裂,把子集0分为子集00和子集01两个子集,依次类推,直到识别出子集0中的所有标签。然后再按此步骤查询子集1。在国际标准ISO18000-6B中采用基本二叉树方法。
二叉树方法总是首先致力于解决0分支的碰撞,让其分裂,直到0分支的标签全部识别完成再开始识别其他的标签。在0分支进行分裂时,非0分支的标签始终不分裂,一直处于等待状态。事实上,在0分支的标签进行分裂的同时,其他标签也可以根据0分支标签的碰撞程度进行适当的散列操作,这样,当0分支的标签识别完成后,其他分支的标签已经得到充分的散列,从而能够减少再次进行分裂的次数,提高系统的吞吐率。
发明内容
本发明的目的是针对基本二叉树方法存在的不足进行适当的改进,即在对0分支标签进行识别的同时,根据0分支标签的连续碰撞程度或连续空闲程度动态调整其他标签的散列情况。
为解决上述技术问题,本发明所采用的技术方案是:一种多标签防碰撞方法,该方法为:
步骤1:读写器初始化防碰撞方法参数,包括连续碰撞次数阈值CCN和连续空闲次数阈值CIN,取CCN=3,CIN=4。
步骤2:读写器发送启动查询命令,然后在规定的时隙等待标签发送响应数据包。
标签接收到启动查询命令后,产生一位随机数载入标签的时隙计数器。如果随机数为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果随机数不为0,标签不向读写器发送响应数据包。
步骤3:如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4;如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7。
步骤4:如果读写器接收到标签的响应数据包并且判断没有发生数据碰撞,跳到步骤5;如果读写器接收到标签的响应数据包并且判断发生数据碰撞,跳到步骤6。
步骤5:读写器完成对未发生碰撞的标签的识别,该标签离开盘存过程,不再响应此后的读写器命令。如果读写器需要继续盘点,读写器发送重复查询命令,然后在规定的时隙等待标签发送响应数据包;如果读写器不需要继续盘点,读写器停止发送命令,盘点结束。
标签接收到重复查询命令后,时隙计数器的值减1。
如果调整后标签的时隙计数器的值为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果调整后标签的时隙计数器的值不为0,标签不向读写器发送响应数据包。
如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4;如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7。
步骤6:如果读写器连续CCN次接收到发生碰撞的响应数据包,读写器发送分散命令,然后在规定的时隙等待标签发送响应数据包;否则读写器发送分裂命令,然后在规定的时隙等待标签发送响应数据包。
标签接收到分散命令后,标签产生一位随机数,计算时隙计数器值的2倍再加上该随机数,将计算结果载入标签的时隙计数器。
标签接收到分裂命令后,时隙计数器的值为0的标签产生一位随机数载入标签的时隙计数器;时隙计数器的值不为0的标签将自身的时隙计数器的值加1。
如果调整后标签的时隙计数器的值为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果调整后标签的时隙计数器的值不为0,标签不向读写器发送响应数据包。
如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4;如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7。
步骤7:如果读写器连续CIN次没有接收到标签的响应数据包,读写器发送收缩命令,否则读写器发送重复查询命令,然后在规定的时隙等待标签发送响应数据包。
标签接收到收缩命令后,时隙计数器的值更新为原计数器值的0.5倍,如果原计数器值是奇数,舍弃小数部分。
标签接收到重复查询命令后,时隙计数器的值减1。
如果调整后标签的时隙计数器的值为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果调整后标签的时隙计数器的值不为0,标签不向读写器发送响应数据包。
根据本发明的具体实施例,提供一种多标签防碰撞装置,该装置包括一个读写器和多个标签。读写器包含基带处理模块、射频发送模块和射频接收模块,每个标签包含基带处理模块、射频收发模块、存储区、随机数发生器和时隙计数器。
读写器发送命令给标签,然后根据标签返回响应数据包的情况对标签进行动态散列,有四种散列的方式:
散列方式一:读写器发送分裂参数为0的分裂命令,标签时隙计数器的值为0的标签重新生成一位随机数,其它标签的时隙计数器的值加1;
散列方式二:读写器发送分裂参数为1的分裂命令,时隙计数器的值为1的标签重新生成一位随机数,其它标签的时隙计数器的值不变;
散列方式三:读写器发送分散命令,所有标签的时隙计数器的值乘以2加上一位随机数;
散列方式四:读写器发送收缩命令,是所有标签的时隙计数器的值除以2后取整。
本发明的有益效果是:在对0分支标签进行搜索的同时,可根据0分支标签连续碰撞的程度,动态调整标签的散列程度,从而提高防碰撞方法的吞吐率;在对0分支标签进行搜索的同时,可根据0分支标签连续空闲的程度,动态调整标签的散列程度,从而提高防碰撞方法的吞吐率;本方法能够动态调整标签的散列程度,无论标签数量的多少,该方法都能将系统的吞吐率保持在较高水平。
附图说明
图1是本发明提出的改进的二叉树防碰撞方法的流程示意图;
图2是利用本发明具体实施例得到的标签时隙计数器的值;
图3是利用本发明具体实施例得到的标签时隙计数器的值;
图4是利用本发明具体实施例得到的标签时隙计数器的值;
图5是利用本发明具体实施例得到的标签时隙计数器的值;
图6是利用本发明具体实施例得到的标签时隙计数器的值;
图7是本发明与基本二叉树方法在标签数量变化时的性能仿真结果比较。
具体实施方式
本发明的一个具体实施例如下。
使用Matlab进行仿真,8个标签,编号从标签1到标签8。
步骤1:读写器初始化防碰撞方法参数,包括连续碰撞次数阈值CCN和连续空闲次数阈值CIN,取CCN=3,CIN=4。
步骤2:读写器发送启动查询命令,然后在规定的时隙等待标签发送响应数据包。
标签接收到启动查询命令后,产生1个随机数载入标签的时隙计数器。图2给出了8个标签的时隙计数器的值。标签3、标签4、标签5、标签7和标签8的时隙计数器的值为0,标签1、标签2和标签6的时隙计数器器的值为1。
步骤3:如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4;如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7。
本例中标签接收到启动查询命令后标签3、标签4、标签5、标签7和标签8都向读写器发送响应数据包,因此跳到步骤4。
步骤4:如果读写器接收到标签的响应数据包并且判断没有发生数据碰撞,跳到步骤5;如果读写器接收到标签的响应数据包并且判断发生数据碰撞,跳到步骤6。
本例中标签接收到启动查询命令后标签3、标签4、标签5、标签7和标签8都向读写器发送响应数据包,因此会发生数据碰撞,跳到步骤6。
本例中标签第一次接收到分裂命令后标签4和标签7向读写器发送响应数据包,因此会发生数据碰撞,跳到步骤6。
步骤5:读写器完成对未发生碰撞的标签的识别,该标签离开盘存过程,不再响应此后的读写器命令。如果读写器需要继续盘点,读写器发送重复查询命令,然后在规定的时隙等待标签发送响应数据包;如果读写器不需要继续盘点,读写器停止发送命令,盘点结束。
本例中第一次执行到该步骤时,标签7得到识别,标签7离开盘存过程,不再响应此后的读写器命令。读写器发送查询命令,标签接收到查询命令后时隙计数器的值减1,图5给出了调整后的时隙计数器的值,标签1、标签2、标签3、标签4、标签5、标签6和标签8的时隙计数器的值分别为2、2、1、0、1、2、1。这时只有标签4向读写器发送响应数据包,跳到步骤5。
本例中第二次执行到该步骤时,标签4得到识别,标签4离开盘存过程,不再响应此后的读写器命令。读写器发送查询命令,标签接收到查询命令后时隙计数器的值减1,图6给出了调整后的时隙计数器的值,标签1、标签2、标签3、标签5、标签6和标签8的时隙计数器的值分别为1、1、0、0、1、0。这时标签3、标签5和标签8向读写器发送响应数据包,跳到步骤6。
步骤6:如果读写器连续CCN次接收到发生碰撞的响应数据包,读写器发送分散命令,然后在规定的时隙等待标签发送响应数据包;否则读写器发送分裂命令,然后在规定的时隙等待标签发送响应数据包。
本例中第一次执行到该步骤时,读写器发送分裂命令,这时标签3、标签4、标签5、标签7和标签8重新产生一位随机数载入标签时隙计数器,标签1、标签2和标签6的时隙计数器的值加1。图3给出调整后的时隙计数器的值,标签3、标签4、标签5、标签7和标签8的时隙计数器的值分别为1、0、1、0、1,标签1、标签2和标签6的时隙计数器器的值加1后变为2。
由于标签4和标签7的时隙计数器为0,因此标签4和标签7向读写器发送响应数据包,跳到步骤4。
在第二次发生碰撞的时候,读写器发送分裂命令,这时标签4和标签7重新产生一位随机数载入标签时隙计数器,标签1、标签2、标签3、标签5、标签6和标签8的时隙计数器的值加1。图4给出调整后的时隙计数器的值,标签4和标签7的时隙计数器器的值分别为1、0。标签1、标签2、标签3、标签5、标签6和标签8的时隙计数器的值加1后变为3、3、2、2、3、2。这时只有标签7向读写器发送响应数据包,跳到步骤5。
步骤7:如果读写器连续CIN次没有接收到标签的响应数据包,读写器发送收缩命令,否则读写器发送重复查询命令,然后在规定的时隙等待标签发送响应数据包。
由于标签数量较少时不便于对方法的性能进行比较,因此改变标签的数量。图7是基本二叉树方法和本发明在标签数量变化时方法吞吐率的比较。图中横坐标是标签的数量,纵坐标是方法的吞吐率。曲线701是基本二叉树方法的吞吐率变化曲线,曲线702是本发明的吞吐率的变化曲线。可以看出,本发明提出的方法优于基本二叉树方法。
Claims (5)
1.一种多标签防碰撞方法,其特征在于,该方法为:
1)读写器初始化防碰撞方法参数,包括连续碰撞次数阈值CCN和连续空闲次数阈值CIN;
2)读写器发送启动查询命令,然后在规定的时隙等待标签发送响应数据包;
3)如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4);如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7);
4)如果读写器接收到标签的响应数据包并且判断没有发生数据碰撞,跳到步骤5);如果读写器接收到标签的响应数据包并且判断发生数据碰撞,跳到步骤6);
5)读写器完成对未发生碰撞的标签的识别,该标签离开盘存过程,不再响应此后的读写器命令;如果读写器需要继续盘点,读写器发送重复查询命令,然后在规定的时隙等待标签发送响应数据包,如果读写器不需要继续盘点,读写器停止发送命令,盘点结束;
6)如果读写器连续CCN次接收到发生碰撞的响应数据包,读写器发送分散命令,然后在规定的时隙等待标签发送响应数据包;否则读写器发送分裂命令,然后在规定的时隙等待标签发送响应数据包;
7)如果读写器连续CIN次没有接收到标签的响应数据包,读写器发送收缩命令,否则读写器发送重复查询命令,然后在规定的时隙等待标签发送响应数据包。
2.根据权利要求1所述的多标签防碰撞方法,其特征在于,所述步骤2)中,标签接收到启动查询命令后,产生一位随机数载入标签的时隙计数器,如果随机数为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果随机数不为0,标签不向读写器发送响应数据包。
3.根据权利要求1所述的多标签防碰撞方法,其特征在于,所述步骤5)中,标签接收到重复查询命令后,时隙计数器的值减1,如果调整后标签的时隙计数器的值为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果调整后标签的时隙计数器的值不为0,标签不向读写器发送响应数据包,如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4);如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7)。
4. 根据权利要求1所述的多标签防碰撞方法,其特征在于,所述步骤6)中,标签接收到分散命令后,标签产生一位随机数,计算时隙计数器值的2倍再加上该随机数,将计算结果载入标签的时隙计数器;标签接收到分裂命令后,时隙计数器的值为0的标签产生一位随机数载入标签的时隙计数器,时隙计数器的值不为0的标签将自身的时隙计数器的值加1,如果调整后标签的时隙计数器的值为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果调整后标签的时隙计数器的值不为0,标签不向读写器发送响应数据包,如果读写器在规定的时隙接收到标签的响应数据包,跳到步骤4);如果读写器在规定时隙没有接收到标签的响应数据包,跳到步骤7)。
5. 根据权利要求1所述的多标签防碰撞方法,其特征在于,所述步骤7)中,标签接收到收缩命令后,时隙计数器的值更新为原计数器值的0.5倍,如果原计数器值是奇数,舍弃小数部分;标签接收到重复查询命令后,时隙计数器的值减1,如果调整后标签的时隙计数器的值为0,标签向读写器发送响应数据包,响应数据包中包含标签的唯一识别号,如果调整后标签的时隙计数器的值不为0,标签不向读写器发送响应数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110136402.0A CN102682253B (zh) | 2011-05-25 | 2011-05-25 | 一种多标签防碰撞方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110136402.0A CN102682253B (zh) | 2011-05-25 | 2011-05-25 | 一种多标签防碰撞方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102682253A true CN102682253A (zh) | 2012-09-19 |
CN102682253B CN102682253B (zh) | 2014-06-18 |
Family
ID=46814158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110136402.0A Active CN102682253B (zh) | 2011-05-25 | 2011-05-25 | 一种多标签防碰撞方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102682253B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761494A (zh) * | 2014-01-10 | 2014-04-30 | 清华大学 | 一种识别rfid系统丢失标签的方法和系统 |
CN106503600A (zh) * | 2016-09-09 | 2017-03-15 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种基于时序的rfid主动防冲突方法 |
CN113191476A (zh) * | 2021-05-28 | 2021-07-30 | 中国人民解放军国防科技大学 | 用于无源射频识别的多电子标签防碰撞方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061063A1 (en) * | 2000-02-25 | 2003-03-27 | Francois Vacherand | Electronic label reading with simultaneous identification of their code |
CN101499117A (zh) * | 2008-01-29 | 2009-08-05 | 中兴通讯股份有限公司 | 射频识别防碰撞的预先分裂非0分支标签的控制方法 |
CN101551845A (zh) * | 2008-03-31 | 2009-10-07 | 华为技术有限公司 | 电子标签的识别及应答方法、装置及系统 |
-
2011
- 2011-05-25 CN CN201110136402.0A patent/CN102682253B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061063A1 (en) * | 2000-02-25 | 2003-03-27 | Francois Vacherand | Electronic label reading with simultaneous identification of their code |
CN101499117A (zh) * | 2008-01-29 | 2009-08-05 | 中兴通讯股份有限公司 | 射频识别防碰撞的预先分裂非0分支标签的控制方法 |
CN101551845A (zh) * | 2008-03-31 | 2009-10-07 | 华为技术有限公司 | 电子标签的识别及应答方法、装置及系统 |
Non-Patent Citations (2)
Title |
---|
LEI ZHU ET AL: "Design and Analysis of Framed Aloha based RFID Anti-collision Algorithms", 《GLOBAL TELECOMMUNICATIONS CONFERENCE, 2009》 * |
孙文胜等: "一种改进的基于二叉树搜索的防碰撞算法", 《计算机工程》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761494A (zh) * | 2014-01-10 | 2014-04-30 | 清华大学 | 一种识别rfid系统丢失标签的方法和系统 |
CN103761494B (zh) * | 2014-01-10 | 2017-02-01 | 清华大学 | 一种识别rfid系统丢失标签的方法和系统 |
CN106503600A (zh) * | 2016-09-09 | 2017-03-15 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种基于时序的rfid主动防冲突方法 |
CN106503600B (zh) * | 2016-09-09 | 2019-07-09 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种基于时序的rfid主动防冲突方法 |
CN113191476A (zh) * | 2021-05-28 | 2021-07-30 | 中国人民解放军国防科技大学 | 用于无源射频识别的多电子标签防碰撞方法及系统 |
CN113191476B (zh) * | 2021-05-28 | 2022-06-21 | 中国人民解放军国防科技大学 | 用于无源射频识别的多电子标签防碰撞方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102682253B (zh) | 2014-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8477016B2 (en) | Method for identifying tags using adaptive binary tree splitting technique in RFID system and RFID system therefore | |
US20120092136A1 (en) | Radio frequency identification system and tag counting ending method for anti-collision thereof | |
EP2431908B1 (en) | Label anti-collision method and system | |
CN101840489A (zh) | 一种基于碰撞树的多标签识别防碰撞方法 | |
CN102004895B (zh) | 基于碰撞预检的时隙扫描防碰撞方法 | |
CN101464940B (zh) | 多标签防碰撞方法 | |
CN102708341A (zh) | 一种rfid系统标签防碰撞方法 | |
CN102682252B (zh) | 一种多标签识别的方法与装置 | |
CN102024163A (zh) | 一种带有分组预览机制的防碰撞方法 | |
CN102682253B (zh) | 一种多标签防碰撞方法 | |
CN101324916B (zh) | 用于rfid系统的标签识别防碰撞方法 | |
CN102682310B (zh) | 一种识别多标签的方法 | |
CN104680104A (zh) | 一种动态高效的rfid标签识别机制 | |
CN102682314B (zh) | 一种判断盘点结束的方法 | |
CN103679092A (zh) | 基于反馈机制的rfid防碰撞算法 | |
CN102768733A (zh) | 适用于rfid系统的多标签防碰撞算法、rfid系统及读写器 | |
CN104778484A (zh) | 一种rfid读写器识别电子标签的控制方法及装置 | |
CN101650770A (zh) | 具有未知标签数估算功能的二进制搜索防碰撞方法 | |
KR100964782B1 (ko) | Q알고리즘을 사용하는 rfid시스템에서 프레임사이즈를최적화하는 방법, 리더기 | |
CN101436243B (zh) | 用于识别多个射频标签的冲突解决方法 | |
CN102332081A (zh) | 基于阅读器的无线射频识别中的载波监听多路访问协议 | |
Deng et al. | Tag count frame slotted aloha: A novel anti-collision protocol in RFID systems | |
CN101436244B (zh) | 一种识别应答器的方法、询问机及信息识别系统 | |
CN201075219Y (zh) | 一种射频识别标签芯片防冲突功能的验证电路 | |
CN207909151U (zh) | 一种基于国标rfid的避免多读写器互相干扰的系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |