CN113934734A - 一种射频识别的多处碰撞位探测防碰撞方法 - Google Patents
一种射频识别的多处碰撞位探测防碰撞方法 Download PDFInfo
- Publication number
- CN113934734A CN113934734A CN202111413298.5A CN202111413298A CN113934734A CN 113934734 A CN113934734 A CN 113934734A CN 202111413298 A CN202111413298 A CN 202111413298A CN 113934734 A CN113934734 A CN 113934734A
- Authority
- CN
- China
- Prior art keywords
- collision
- bit
- reader
- req
- stack
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
- G06K19/077—Constructional details, e.g. mounting of circuits in the carrier
- G06K19/07749—Constructional details, e.g. mounting of circuits in the carrier the record carrier being capable of non-contact communication, e.g. constructional details of the antenna of a non-contact smart card
- G06K19/07758—Constructional details, e.g. mounting of circuits in the carrier the record carrier being capable of non-contact communication, e.g. constructional details of the antenna of a non-contact smart card arrangements for adhering the record carrier to further objects or living beings, functioning as an identification tag
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Software Systems (AREA)
- Near-Field Transmission Systems (AREA)
Abstract
本发明公开了一种射频识别的多处碰撞位探测防碰撞方法,其包括以下步骤:阅读器初始化堆栈为空,设置K值大小为3≤K≤10,返回标签ID给阅读器;阅读器接收到标签的数据,判断碰撞位是否小于K个;利用二进制碰撞树算法搜索标签;若碰撞位大于或等于K个,生成查询命令REQ(P,Q);阅读器弹出堆栈,若堆栈为空,则算法结束;若堆栈不为空,按后进先出的方式弹出堆栈的查询命令,设为REQ(P,Q),发送给标签;阅读器接收到标签的数据;若R部分存在碰撞位,且碰撞位不小于K个,生成查询命令存入堆栈。本发明不仅在单碰撞位和连续碰撞位时都可实现多叉树搜索,而且消除了探测时隙,有效减少了总时隙数,提高了吞吐率和标签识别效率。
Description
技术领域
本发明涉及射频识别技术领域,具体涉及一种射频识别的多处碰撞位探测防碰撞方法。
背景技术
射频识别(Radio Frequency Identification,RFID)是一种利用射频信号实现的非接触自动识别技术,作为物联网的核心技术,得到不断的发展和广泛的应用。典型的RFID系统通常由多个电子标签和一个阅读器组成,当多个标签同时向阅读器发送数据,就会产生冲突,这就是标签碰撞问题,常用的防碰撞算法可分为两类:基于ALOHA协议的随机算法和基于树形搜索的确定算法。ALOHA算法不够稳定,存在标签长时间不被识别而出现的“饥饿”问题,树形算法能达到100%的识别率,但在标签数量较多时,识别时间较长。
树形算法是通过把标签分为更多的子集,直到识别出标签。树形算法包括二叉树算法和多叉树算法,二叉树典型算法有:查询树(Query Tree,QT)算法、动态二进制搜索树(Dynamic Binary Search tree,DBS)算法,碰撞树(Collision Tree,CT)算法等,但二叉树算法的标签子集分裂速度较慢,碰撞时隙较多。
发明内容
针对现有技术的上述不足,本发明提供了一种消除了探测时隙、有效减少了识别标签的总时隙数的射频识别的多处碰撞位探测防碰撞方法。
为达到上述发明目的,本发明所采用的技术方案为:
提供一种射频识别的多处碰撞位探测防碰撞方法,其包括以下步骤:
S1:阅读器初始化堆栈为空,设置K值大小为3≤K≤10,发送初始查询命令REQ(ε),阅读器作用范围内所有标签响应命令,返回标签ID给阅读器;
S2:阅读器接收到标签的数据,判断碰撞位是否小于K个;
S3:若碰撞位小于K个,则执行步骤S4;
S4:阅读器利用二进制碰撞树算法搜索标签;
S5:若碰撞位大于或等于K个,生成查询命令REQ(P,Q),并存入堆栈,执行步骤S6;
S6:阅读器弹出堆栈,若堆栈为空,则算法结束;若堆栈不为空,按后进先出的方式弹出堆栈的查询命令,设为REQ(P,Q),发送给标签;
S7:前缀为P的标签响应查询命令REQ(P,Q),并返回数据给阅读器;
S8:阅读器接收到标签的数据,若数据中的R部分存在碰撞位,且碰撞位小于K个,则返回步骤S4;若R部分存在碰撞位,且碰撞位不小于K个,生成查询命令REQ(P1,Q),REQ(P2,Q)…,REQ(Pa,Q)存入堆栈,a为查询命令的个数,返回步骤S6。
进一步地,步骤S5包括:
S51:若碰撞位大于或等于K个,由第1个碰撞位以前的比特位得到查询前缀P,
S52:在第1个碰撞位和第k个碰撞位之间,将所有碰撞位置为1,非碰撞位置为0,并将1和0组成碰撞位提取序列Q;
S53:利用前缀P和提取序列Q生成查询命令REQ(P,Q),存入堆栈,执行步骤S6。
进一步地,步骤S7包括:
S71:前缀为P的标签响应查询命令REQ(P,Q);
S72:把前缀P以后的标签的比特位由高位到低位分为两个部分,包括与提取序列Q长度相等的U部分,以及减去U部分所剩余的R部分;
S73:把U部分和提取序列Q相比较,将和1对应的碰撞位提取出来,并编码为数据U′;
S74:标签返回数据U′&R部分给阅读器,其中&为连接符。
进一步地,U部分为前缀P以后的标签中第1个碰撞位和第k个碰撞位之间的比特位,R部分为第k个碰撞位以后的比特位。
进一步地,步骤S8包括:
S81:阅读器接收到标签中的数据U′和R部分,对数据U′进行解析,得到碰撞位比特值U1,U2,…Ub,其中b为碰撞位比特值的个数;
S82:判断R部分是否有碰撞位,若R部分无碰撞位,则识别多个标签;
S83:若R部分有碰撞位,且碰撞位小于k个,则返回步骤S4;
S84:若R部分有碰撞位,且碰撞位大于或等于k个,则在R部分的第1个碰撞位和第k个碰撞位之间,把碰撞位置为1,非碰撞位置为0,提取1和0生成提取序列Q,通过阅读器已知的非碰撞位和U1,U2,…,Ub,可得查询前缀:P1,P2,…Pa,生成查询命令REQ(P1,Q),REQ(P2,Q),…,REQ(Pa,Q)存入堆栈,返回步骤S6。
进一步地,碰撞位的编码方法为:对于k个碰撞位,编码后为2k位信息,设k个碰撞位对应的十进制为E,则编码后的2k位信息只有第E位为1,其余各位都为0。
进一步地,碰撞位的解码方法为:阅读器在收到编码数据后,通过编码数据碰撞位可解析出标签k个碰撞位比特值,设阅读器接收到2k位编码数据,其中第r位为碰撞位,则十进制r对应的k位二进制值,即对应标签的k个碰撞位比特值。
进一步地,步骤S4具体为:阅读器检测到碰撞位后,把最高碰撞位分别置0和1,得到两个新的查询前缀,和查询前缀相适应的标签响应命令,并把和查询前缀互补的剩余标签比特位返回阅读器。
本发明的有益效果为:本发明在对标签进行查询的同时,对多个碰撞位进行编码,阅读器通过对碰撞位的分析,准确的解析出碰撞位比特值,实现对标签的高效搜索和识别,和现有的算法相比,本发明不仅在单碰撞位和连续碰撞位时都可实现多叉树搜索,而且消除了探测时隙,有效减少了总时隙数,提高了吞吐率和标签识别效率。
附图说明
图1为射频识别的多处碰撞位探测防碰撞方法的流程图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图1所示,本方案的射频识别的多处碰撞位探测防碰撞方法,其包括以下步骤:
S1:阅读器初始化堆栈为空,设置K值大小为3≤K≤10,发送初始查询命令REQ(ε),阅读器作用范围内所有标签响应命令,返回标签ID给阅读器;
K值不宜过大或过小,K值太小,则搜索次数太多,影响标签搜索效率;K值太大,则编码数据太长,标签每次搜索发送的比特数太多,通信复杂度过高,影响搜索时延。可根据实际情况确定K值大小,通常,标签数量越多,标签ID位数越多,则K值越大,建议K值设置范围:3≤K≤10。
S2:阅读器接收到标签的数据,判断碰撞位是否小于K个,且3≤K≤10;S3:若碰撞位小于K个,则执行步骤S4;
S4:阅读器利用二进制碰撞树算法搜索标签:阅读器检测到碰撞位后,把最高碰撞位分别置0和1,得到两个新的查询前缀,和查询前缀相适应的标签响应命令,并把和查询前缀互补的剩余标签比特位返回阅读器;
S5:若碰撞位大于或等于K个,生成查询命令REQ(P,Q),并存入堆栈,执行步骤S6;具体包括:
S51:若碰撞位大于或等于K个,由第1个碰撞位以前的比特位得到查询前缀P,
S52:在第1个碰撞位(最高碰撞位)和第k个碰撞位之间,将所有碰撞位置为1,非碰撞位置为0,并将1和0组成碰撞位提取序列Q;
S53:利用前缀P和提取序列Q生成查询命令REQ(P,Q),存入堆栈,执行步骤S6。
S6:阅读器弹出堆栈,若堆栈为空,则算法结束;若堆栈不为空,按后进先出的方式弹出堆栈的查询命令,设为REQ(P,Q),发送给标签;
S7:前缀为P的标签响应查询命令REQ(P,Q),并返回相应数据给阅读器,包括:
S71:前缀为P的标签响应查询命令REQ(P,Q);
S72:把前缀P以后的标签的比特位由高位到低位分为两个部分,包括与提取序列Q长度相等的U部分,以及减去U部分所剩余的R部分;U部分为前缀P以后的标签中第1个碰撞位和第k个碰撞位之间的比特位,R部分为第k个碰撞位以后的比特位。
S73:把U部分和提取序列Q相比较,将和1对应的碰撞位提取出来,形成并编码为数据U′;
S74:标签返回数据U′&R部分给阅读器,其中&为连接符。
S8:阅读器接收到标签的数据,若标签中存在部分碰撞位,且碰撞位小于K个,则返回步骤S4;否则,生成查询命令REQ(P1,Q),REQ(P2,Q)…,REQ(Pa,Q)存入堆栈,a为查询命令的个数,返回步骤S6。具体包括:
S81:阅读器接收到标签中的数据U′和R部分,对数据U′进行解码,得到碰撞位比特值U1,U2,…Ub,其中b为碰撞位比特值的个数;
S82:判断R部分是否有碰撞位,若R部分无碰撞位,则识别多个标签;
S83:若R部分有碰撞位,且碰撞位小于k个,则返回步骤S4;
S84:若R部分有碰撞位,且碰撞位大于或等于k个,则在R部分的第1个碰撞位和第k个碰撞位之间,把碰撞位置为1,非碰撞位置为0,提取1和0生成提取序列Q,通过阅读器已知的非碰撞位和U1,U2,…,Ub,可得查询前缀:P1,P2,…Pa,生成查询命令REQ(P1,Q),REQ(P2,Q),…,REQ(Pa,Q)存入堆栈,返回步骤S6;
碰撞位的编码方法为:对于k个碰撞位,编码后为2k位信息,设k个碰撞位对应的十进制为E,则编码后的2k位信息只有第E位为1,其余各位都为0。
碰撞位的解码方法为:阅读器在收到编码数据后,通过编码数据碰撞位可解析出标签k个碰撞位比特值,设阅读器接收到2k位编码数据,其中第r位为碰撞位,则十进制r对应的k位二进制值,即对应标签的k个碰撞位比特值。
本发明在对标签进行查询的同时,对多个碰撞位进行编码,阅读器通过对碰撞位的分析,准确的解析出碰撞位比特值,实现对标签的高效搜索和识别,和现有的算法相比,本发明不仅在单碰撞位和连续碰撞位时都可实现多叉树搜索,而且消除了探测时隙,有效减少了总时隙数,提高了吞吐率和标签识别效率。
Claims (8)
1.一种射频识别的多处碰撞位探测防碰撞方法,其特征在于,包括以下步骤:
S1:阅读器初始化堆栈为空,设置K值大小为3≤K≤10,发送初始查询命令REQ(ε),阅读器作用范围内所有标签响应命令,返回标签ID给阅读器;
S2:阅读器接收到标签的数据,判断碰撞位是否小于K个;
S3:若碰撞位小于K个,则执行步骤S4;
S4:阅读器利用二进制碰撞树算法搜索标签;
S5:若碰撞位大于或等于K个,生成查询命令REQ(P,Q),并存入堆栈,执行步骤S6;
S6:阅读器弹出堆栈,若堆栈为空,则算法结束;若堆栈不为空,按后进先出的方式弹出堆栈的查询命令,设为REQ(P,Q),发送给标签;
S7:前缀为P的标签响应查询命令REQ(P,Q),并返回数据给阅读器;
S8:阅读器接收到标签的数据,若数据中的R部分存在碰撞位,且碰撞位小于K个,则返回步骤S4;若R部分存在碰撞位,且碰撞位不小于K个,生成查询命令REQ(P1,Q),REQ(P2,Q)…,REQ(Pa,Q)存入堆栈,a为查询命令的个数,返回步骤S6。
2.根据权利要求1所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述步骤S5包括:
S51:若碰撞位大于或等于K个,由第1个碰撞位以前的比特位得到查询前缀P,
S52:在第1个碰撞位和第k个碰撞位之间,将所有碰撞位置为1,非碰撞位置为0,并将1和0组成碰撞位提取序列Q;
S53:利用前缀P和提取序列Q生成查询命令REQ(P,Q),存入堆栈,执行步骤S6。
3.根据权利要求1所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述步骤S7包括:
S71:前缀为P的标签响应查询命令REQ(P,Q);
S72:把前缀P以后的标签的比特位由高位到低位分为两个部分,包括与提取序列Q长度相等的U部分,以及减去U部分所剩余的R部分;
S73:把U部分和提取序列Q相比较,将和1对应的碰撞位提取出来,并编码为数据U′;
S74:标签返回数据U′&R部分给阅读器,其中&为连接符。
4.根据权利要求3所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述U部分为前缀P以后的标签中第1个碰撞位和第k个碰撞位之间的比特位,所述R部分为第k个碰撞位以后的比特位。
5.根据权利要求1所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述步骤S8包括:
S81:阅读器接收到标签中的数据U′和R部分,对数据U′进行解析,得到碰撞位比特值U1,U2,…Ub,其中b为碰撞位比特值的个数;
S82:判断R部分是否有碰撞位,若R部分无碰撞位,则识别多个标签;
S83:若R部分有碰撞位,且碰撞位小于k个,则返回步骤S4;
S84:若R部分有碰撞位,且碰撞位大于或等于k个,则在R部分的第1个碰撞位和第k个碰撞位之间,把碰撞位置为1,非碰撞位置为0,提取1和0生成提取序列Q,通过阅读器已知的非碰撞位和U1,U2,…,Ub,可得查询前缀:P1,P2,…Pa,生成查询命令REQ(P1,Q),REQ(P2,Q),…,REQ(Pa,Q)存入堆栈,返回步骤S6。
6.根据权利要求1所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述碰撞位的编码方法为:对于k个碰撞位,编码后为2k位信息,设k个碰撞位对应的十进制为E,则编码后的2k位信息只有第E位为1,其余各位都为0。
7.根据权利要求1所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述碰撞位的解码方法为:阅读器在收到编码数据后,通过编码数据碰撞位可解析出标签k个碰撞位比特值,设阅读器接收到2k位编码数据,其中第r位为碰撞位,则十进制r对应的k位二进制值,即对应标签的k个碰撞位比特值。
8.根据权利要求1所述的射频识别的多处碰撞位探测防碰撞方法,其特征在于,所述步骤S4具体为:阅读器检测到碰撞位后,把最高碰撞位分别置0和1,得到两个新的查询前缀,和查询前缀相适应的标签响应命令,并把和查询前缀互补的剩余标签比特位返回阅读器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111413298.5A CN113934734A (zh) | 2021-11-25 | 2021-11-25 | 一种射频识别的多处碰撞位探测防碰撞方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111413298.5A CN113934734A (zh) | 2021-11-25 | 2021-11-25 | 一种射频识别的多处碰撞位探测防碰撞方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113934734A true CN113934734A (zh) | 2022-01-14 |
Family
ID=79288147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111413298.5A Pending CN113934734A (zh) | 2021-11-25 | 2021-11-25 | 一种射频识别的多处碰撞位探测防碰撞方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113934734A (zh) |
-
2021
- 2021-11-25 CN CN202111413298.5A patent/CN113934734A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8085131B2 (en) | System for tag estimation and anti-collision and method thereof | |
US8477016B2 (en) | Method for identifying tags using adaptive binary tree splitting technique in RFID system and RFID system therefore | |
Lai et al. | General binary tree protocol for coping with the capture effect in RFID tag identification | |
CN104517087B (zh) | 一种rfid多标签识别防碰撞方法 | |
CN101840489A (zh) | 一种基于碰撞树的多标签识别防碰撞方法 | |
CN108491741B (zh) | 一种基于四叉树的位仲裁查询树防碰撞方法 | |
WO2023078442A1 (zh) | 一种基于特征组的查询树多标签并发识别方法及系统 | |
Su et al. | A New RFID Anti‐collision Algorithm Based on the Q‐Ary Search Scheme | |
CN109241802B (zh) | 一种用于移动rfid系统的多标签识别方法 | |
CN107895130B (zh) | 一种基于碰撞树的自适应多叉树防碰撞方法 | |
CN105046181B (zh) | 一种基于查询树方法的多前缀匹配的确定性防碰撞算法 | |
Chen et al. | An enhanced anti-collision algorithm in RFID based on counter and stack | |
CN101324916B (zh) | 用于rfid系统的标签识别防碰撞方法 | |
CN111310488B (zh) | 一种自适应m进制树rfid防碰撞方法 | |
CN107526986B (zh) | 一种rfid标签防碰撞方法及系统 | |
CN111027335B (zh) | 一种k比特连续碰撞位检测分裂树RFID标签防碰撞算法 | |
CN113934734A (zh) | 一种射频识别的多处碰撞位探测防碰撞方法 | |
CN117113804A (zh) | 一种基于树分裂的rfid丢失标签识别方法 | |
Wang et al. | A novel anti-collision algorithm with dynamic tag number estimation for RFID systems | |
CN112446448B (zh) | 一种dfsa和二进制算法结合的单阅读器识别rfid标签方法 | |
CN111523337B (zh) | 基于标签序列号滑动窗口迭代分组的防冲突方法 | |
CN112380885B (zh) | 一种基于位屏蔽的rfid碰撞位编码防碰撞方法 | |
CN102236775A (zh) | 管桩制造养护工艺中的动态二进制查询树防碰撞方法 | |
CN112380886A (zh) | 一种多时隙信息位编码自适应搜索防碰撞方法 | |
CN110210266A (zh) | 一种五叉树搜索rfid防碰撞方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |