CN103902942B - A kind of mixing collision-proof method for Large Copacity multi-tag rfid system - Google Patents
A kind of mixing collision-proof method for Large Copacity multi-tag rfid system Download PDFInfo
- Publication number
- CN103902942B CN103902942B CN201410033760.2A CN201410033760A CN103902942B CN 103902942 B CN103902942 B CN 103902942B CN 201410033760 A CN201410033760 A CN 201410033760A CN 103902942 B CN103902942 B CN 103902942B
- Authority
- CN
- China
- Prior art keywords
- reader
- writer
- tag
- value
- collision
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 230000004044 response Effects 0.000 claims description 25
- 239000000284 extract Substances 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 17
- 238000013507 mapping Methods 0.000 claims description 16
- 230000009191 jumping Effects 0.000 claims description 9
- 230000008901 benefit Effects 0.000 abstract description 6
- 235000003642 hunger Nutrition 0.000 abstract description 3
- 230000001149 cognitive effect Effects 0.000 abstract 2
- 238000005309 stochastic process Methods 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000037351 starvation Effects 0.000 description 2
- YVHVGFSDGHMIIG-UHFFFAOYSA-N 2-(2-tert-butylsulfonylethynylsulfonyl)-2-methylpropane Chemical compound CC(C)(C)S(=O)(=O)C#CS(=O)(=O)C(C)(C)C YVHVGFSDGHMIIG-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
Landscapes
- Near-Field Transmission Systems (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
The invention discloses a kind of mixing collision-proof method for Large Copacity multi-tag rfid system, the method can be largely classified into two stages, and the first stage is to utilize frame slot to separate and cognitive phase, and second stage is to utilize AMS method cognitive phase.The method can improve tag recognition performance, reduces the scope of each tag queries;The AMS method simultaneously used eliminates idle inquiry and reduces collision frequency, improves recognition efficiency and safety;In combination with ALOHA based method and the respective advantage of tree based method, solve the label hunger problem brought due to the uncertainty of stochastic process, eliminate the idle inquiry in conventional t ree based method, simultaneously without estimating number of tags, reduce computation complexity;And breach traditional method to number of tags quantitative limitation, it is adaptable to Large Copacity multi-tag rfid system.
Description
Technical Field
The invention belongs to the technical field of radio frequency identification, and particularly relates to a design of a hybrid anti-collision method for a high-capacity multi-label RFID system.
Background
In recent years, UHF RFID systems have many advantages such as long distance, passive tag, long service life, and fast tag read-write speed, and thus become the main development trend of future RFID applications, such as: supply chain management, item tracking, etc. In addition, the reader-writer of the UHF RFID system has wide coverage range, the number of labels covered in the system is large, and the requirement on reading and writing the labels is high, so that the label collision problem of the UHF RFID system is more prominent. In order to solve the collision problem caused by the simultaneous communication between the tags and the reader-writer, the reader-writer needs to adopt an anti-collision method to coordinate the communication between the reader-writer and the tags. Due to the constraints of many factors, the implementation of the anti-collision method on the label side is as simple as possible, especially when the number of labels is large.
The label anti-collision method is mainly divided into two types: probabilistic methods and deterministic methods. The ALOHA-based method, which is a probabilistic method, is mainly used in international standards such as EPC Global C1Gen2, ISO 18000-6C and ISO 14443-3Type B. The ALOHA-based method mainly includes a slotted ALOHA method (SA), a frame slotted ALOHA method (FSA), and a dynamic frame slotted ALOHA method (DFSA). The DFSA is the most widely applied DFSA, and the basic principle is as follows: the reader-writer broadcasts a Query command to tags in a working domain, the Query command designates a time slot frame L with fixed length, the tags can randomly select a time slot between (1, L) to respond to the reader-writer command, if a certain time slot has no tag response, the time slot is an idle time slot, if only one tag responds, the time slot is a successful time slot, at the moment, the tags can be successfully read by the reader-writer, and if a plurality of tags respond simultaneously, the time slot is a collision time slot. When one frame is finished, the reader-writer counts the number of idle time slots, collision time slots and successful time slots, estimates the number of unidentified tags by taking the number as a parameter, then adjusts the length of the next frame, and repeats the process until all tags are identified. The most widely used of the Tree-based methods is the query Tree method (QT).
The QT method is basically characterized in that each tag is provided with a prefix (prefix) matching circuit, a reader selects one prefix from a query stack for query, all tags compare the ID number of the tag with the received prefix, if the ID numbers are matched, the tag responds to the reader and replies the ID number of the tag, and if the ID numbers are not matched, the tag does not respond. If no collision occurs, the reader-writer successfully identifies a label and selects a new query prefix from the stack for query; if collision happens, the reader-writer adds a bit of 0 or 1 to the prefix which is just sent according to collision information and puts the prefix into a stack until the prefix is used in subsequent inquiry; if the reply is not received, the reader selects a new prefix from the stack to continue the query; and circulating the above operations until the identification of all the labels is completed.
The main advantages and disadvantages of most existing RFID anti-collision methods are: the ALOHA-based method carries out grouping identification on the labels on the basis of time slots, is simple to realize, but has the problems of tag standing and card identity sensitivity. The Tree-based method has no problem of label starvation, ensures the complete identification of the label, but when a large number of label collisions are processed, the reader-writer has to send the label ID number for many times to split the label group, thus causing the information leakage of the label.
Disclosure of Invention
The invention aims to solve the defects of low and unstable identification rate of an anti-collision method in the prior art, and provides a hybrid anti-collision method suitable for a high-capacity multi-label RFID system.
The technical scheme of the invention is as follows: a hybrid anti-collision method for a high-capacity multi-tag RFID system specifically comprises the following steps:
step 1: the reader-writer is initialized and cleared, and the values of a reader-writer time slot counter Sc, an idle time slot number Ne, a collision time slot number Nc and a success time slot number Nr are all 0;
step 2: the reader broadcasts a Query command to the tags in the coverage area, wherein the Query command specifies a fixed-length time slot frame L-2QThe reader-writer time slot counter Sc is Sc + 1;
and step 3: the tag to be identified in the coverage range of the reader-writer receives a Query command of the reader-writer, extracts a Q value in the command, randomly generates a number in [1, L ] and loads the number on a counter of the reader-writer, compares the value of the counter with the value of the current reader-writer Sc, responds to the Query command of the reader-writer and replies an ID of the reader-writer if the value of the counter is equal to the value of the current reader-writer Sc, and otherwise does not respond;
and 4, step 4: the reader-writer receives the tag response, if the reader-writer does not receive the tag reply, the reader-writer indicates that no tag to be identified exists in the coverage range of the reader-writer, and Ne +1 is set at the moment;
if the received response does not generate collision, the tag is successfully identified, and Nr is set to Nr + 1;
if the received response is collided, the situation that a plurality of tags respond simultaneously in the current time slot is indicated, at the moment, Nc is Nc +1, and the current value of Sc is put into a time slot stack;
and 5: judging whether the current Sc value reaches a maximum value L or not when the current reader-writer time slot counter Sc is Sc +1, if so, jumping to a step 8, and otherwise, sending a QueryRep command;
step 6: the label to be identified in the coverage range of the reader-writer receives the QueryRep command of the reader-writer, judges the value of the self timer and the current value of the reader-writer Sc, responds to the QueryRep command of the reader-writer and replies the ID of the reader-writer if the value of the self timer is equal to the value of the current reader-writer Sc, and does not respond if the value of the self timer is not equal to the value of the current reader-writer;
and 7: jumping to the step 4;
and 8: counting the values of Ne, Nc and Nr in the query process of the round, judging whether the value of Ne-6 Nc exceeds a set threshold value, if so, skipping to the step 9, otherwise, resetting the values of Ne, Nr and Nc, and skipping to the step 2, wherein Q is Q + 1; and step 9: and the reader-writer adopts a collision factor-based self-adaptive multilevel tree AMS (automatic System management) query method to identify the unidentified label.
Further, the AMS method in step 9 specifically includes:
step 9.1: the reader-writer detects whether the time slot stack is empty, if so, the step is skipped to step 9.9, otherwise, the reader-writer extracts a time slot value from the time slot stack and waits for sending a query command;
step 9.2: the reader-writer extracts a query prefix from the prefix stack and sends a query command to the label in the coverage range by combining the current time slot value;
step 9.3: the tag receives the query command of the reader-writer, compares the value of the counter of the tag with the current time slot value, responds to the current query command of the reader-writer and replies the ID of the tag if the value of the counter of the tag is equal to the current time slot value, otherwise, does not respond;
step 9.4: the reader-writer receives the response of the label, if no collision exists, the label is identified successfully, and the step 9.8 is skipped; if collision occurs, calculating a collision factor, wherein the collision factor is defined as the ratio of the number of bits of the collision to the length of the tag ID; if the collision factor is greater than or equal to 0.75, jumping to step 9.5; if the collision factor is less than 0.75, the head collision bit is recorded as Dc, two new query prefixes are generated, Dc is set to be 0 or 1 respectively, the rest part consists of the query prefix and the part before the head collision bit in the received ID, the two new query prefixes are placed into the prefix stack, and the step 9.8 is skipped;
step 9.5: the reader-writer sends a user-defined command QueryP to enable the tag to return 4-bit data, and the data is used for reflecting first two-bit information of tag collision;
step 9.6: the tag responds to a user-defined command QueryP, converts first two-bit collision data into a decimal number x, and then returns 4-bit data D to the reader-writerxThe position is 1, the rest positionsIs 0;
step 9.7: the reader-writer analyzes the first two-bit collision data of the tag according to the received 4-bit data, places the first two-bit collision data of the tag in a prefix of query to generate new query prefixes, and places the new prefixes in a prefix stack;
step 9.8: judging whether the current prefix stack is empty, if so, skipping to step 9.1, otherwise skipping to step 9.2;
step 9.9: the entire tag identification process ends.
Further, the AMS method in step 9 specifically includes:
step 9.1: the reader-writer detects whether the time slot stack is empty, if so, the step is skipped to step 9.6, otherwise, the reader-writer extracts a time slot value from the time slot stack and waits for sending a query command;
step 9.2: the reader-writer extracts a query prefix from the prefix stack and sends a query command to the label in the coverage range by combining the current time slot value;
step 9.3: the tag receives the query command of the reader-writer, compares the value of the counter of the tag with the current time slot value, responds to the current query command of the reader-writer if the value of the counter of the tag is equal to the current time slot value, replies the first two bits of the rest part of the matched part of the ID of the tag and the query prefix, converts the two bits of data into four bits of data according to the mapping table and sends the four bits of data to the reader-writer;
step 9.4: the reader-writer receives the response data of the label, if collision occurs, the first two collision bits are respectively set to 00/01/10/11, new query prefixes are generated after the first two collision bits are placed in the query prefix, and the new prefixes are placed in the prefix stack; if no collision exists, the first two bits of the tag ID under the current time slot value are the same, then the two bits are placed in the query prefix according to the mapping table, a new query prefix is generated, and the new prefix is placed in the prefix stack;
step 9.5: judging whether the current prefix stack is empty, if so, skipping to step 9.1, otherwise skipping to step 9.2;
step 9.6: the entire tag identification process ends.
Furthermore, in step 9.2, the prefix is first queried to be an empty string, that is, all tag responses with counter values equal to the slot value of the current reader/writer are allowed to respond.
The invention has the beneficial effects that: the invention relates to a mixed anti-collision method for a high-capacity multi-label RFID system, which divides the identification process of labels into two stages, wherein a reader-writer in the first stage broadcasts a Query command to the labels in a working domain, the command prescribes a time slot frame L with fixed length, the labels randomly select a time slot in the frame to respond to the command of the reader-writer, if the time slot generates collision, the collision labels can be identified by two AMS methods, the identification performance of the labels can be improved, and the labels are grouped by utilizing the idea of time division multiplexing TDMA, so that the range of label inquiry every time is reduced; meanwhile, the AMS method eliminates idle query, reduces collision times and improves recognition efficiency and safety; meanwhile, the advantages of the ALOHA-based method and the tree-based method are combined, the problem of label starvation caused by uncertainty of a random process is solved, idle query in the traditional tree-based method is eliminated, the number of labels does not need to be estimated, and the calculation complexity is reduced; and the method breaks through the limit of the traditional method on the number of the tags, is not influenced by the ID distribution of the tags, and is particularly suitable for a high-capacity multi-tag RFID system.
Drawings
Fig. 1 is a flow chart of a hybrid anti-collision method for a high-capacity multi-tag RFID system according to the present invention;
FIG. 2 is a flow chart of AMS method 1;
fig. 3 is an interaction flow of a custom command QueryP and a tag adopted by a reader/writer in AMS method 1;
FIG. 4 is a flow chart of AMS method 2;
FIG. 5 is an example of the inventive method identifying 8 tags;
FIG. 6 is a graph of the superiority of the method of the invention in identifying speed;
fig. 7 is a graph of the advantage of the method of the invention in terms of energy efficiency.
Detailed Description
The invention is further illustrated with reference to the figures and the specific examples.
Fig. 1 is a flow chart of a hybrid anti-collision method for a high-capacity multi-tag RFID system according to the present invention, which specifically includes:
step 1: the reader-writer is initialized and cleared, and the values of a reader-writer time slot counter Sc, an idle time slot number Ne, a collision time slot number Nc and a success time slot number Nr are all 0;
step 2: the reader broadcasts a Query command to the tags in the coverage area, wherein the Query command specifies a fixed-length time slot frame L-2QThe reader-writer time slot counter Sc is Sc + 1;
and step 3: the label to be identified in the coverage of the reader-writer receives the Query command of the reader-writer, and extracts the Q value in the command, wherein the Q value is the time slot frame L-2 in the step 2QQ value of [1, L ]]Randomly generating a number to load on a counter of the reader-writer, comparing the value of the counter with the value of the current reader-writer Sc, responding to a Query command of the reader-writer and replying an ID of the reader-writer if the value of the counter is equal to the value of the current reader-writer Sc, and not responding if the value of the counter is not equal to the value of the current reader-writer Sc;
and 4, step 4: the reader-writer receives the tag response, if the reader-writer does not receive the tag reply, the reader-writer indicates that no tag to be identified exists in the coverage range of the reader-writer, and Ne +1 is set at the moment;
if the received response does not generate collision, the tag is successfully identified, and Nr is set to Nr + 1;
if the received response is collided, the situation that a plurality of tags respond simultaneously in the current time slot is indicated, at the moment, Nc is Nc +1, and the current value of Sc is put into a time slot stack;
and 5: judging whether the current Sc value reaches a maximum value L or not when the current reader-writer time slot counter Sc is Sc +1, if so, jumping to a step 8, and otherwise, sending a QueryRep command;
step 6: the label to be identified in the coverage range of the reader-writer receives the QueryRep command of the reader-writer, judges the value of the self timer and the current value of the reader-writer Sc, responds to the QueryRep command of the reader-writer and replies the ID of the reader-writer if the value of the self timer is equal to the value of the current reader-writer Sc, and does not respond if the value of the self timer is not equal to the value of the current reader-writer;
and 7: jumping to the step 4;
and 8: counting the values of Ne, Nc and Nr in the query process of the round, judging whether the value of Ne-6 Nc exceeds a set threshold value, if so, skipping to the step 9, otherwise, resetting the values of Ne, Nr and Nc, and skipping to the step 2, wherein Q is Q + 1; when the frame length L is 2n, n is the number of tags to be identified, Ne, Nr, Nc, 2:1:7/24 can be derived, the derivation process belongs to the prior art, and the application scheme of the present invention is not described in detail, so that a certain threshold value can be set according to the ratio, whether the current L value is appropriate or not can be verified through the value Ne-6 Nc, and the "×" represents the meaning of multiplication;
and step 9: and the reader-writer adopts a collision factor-based self-adaptive multilevel tree AMS (automatic System management) query method to identify the unidentified label.
In the present invention, the ID of the tag is encoded in manchester, because the reader/writer can correctly recognize the position of the colliding binary bit according to manchester encoding.
The method has clear process structure and convenient realization, and can be mainly divided into two stages, wherein the first stage is a stage of separating and identifying by using a frame time slot, and the second stage is a stage of identifying by using an AMS method; the AMS method identification phase provides two methods for identification, and the following detailed description is provided with the accompanying drawings:
fig. 2 is a flowchart of the AMS method 1, which specifically includes:
step 9.1: the reader-writer detects whether the time slot stack is empty, if so, the step is skipped to step 9.9, otherwise, the reader-writer extracts a time slot value from the time slot stack and waits for sending a query command;
step 9.2: the reader-writer extracts a query prefix (the prefix of the first query prefix is an empty string, namely all counter values are equal to the tag response of the time slot value of the current reader-writer) from the prefix stack, and the reader-writer combines the current time slot value and then sends a query command to the tag;
step 9.3: the tag receives the query command of the reader-writer, compares the value of the counter of the tag with the current time slot value, and responds to the current query command of the reader-writer and replies the ID of the tag if the value of the counter of the tag is equal to the current time slot value;
step 9.4: the reader-writer receives the response of the label, if no collision exists, the label is successfully identified and the step 9.8 is skipped; if collision occurs, calculating a collision factor (the collision factor is defined as the ratio of the number of bits of the collision to the length of the tag ID); if the collision factor is greater than or equal to 0.75, jumping to step 9.5; if the collision factor is less than 0.75, the head collision bit is recorded as Dc, two new query prefixes are generated, Dc is set to be 0 or 1 respectively, the rest part consists of the query prefix and the part before the head collision bit in the received ID, the two new query prefixes are placed into the prefix stack, and the step 9.8 is skipped; wherein 0.75 is a value derived theoretically, and the derivation process belongs to the prior art and is not described in detail in the scheme of the invention;
step 9.5: the reader-writer sends a user-defined command QueryP to enable the tag to return 4-bit data, and the data can accurately reflect first two-bit information of tag collision;
step 9.6: the tag responds to a self-defined command QueryP, converts first two-bit collision data (00 or 01 or 10 or 11) into a decimal number x, and then returns 4-bit data to the reader-writer, wherein the Dx of the data is at the position 1, and the rest positions are at the position 0;
step 9.7: the reader-writer analyzes specific digits 00/01/10/11 of first two-digit collision data of the label according to the received 4-bit data, places the specific digits in a query prefix to generate new query prefixes, and places the new prefixes in a prefix stack;
step 9.8: judging whether the current prefix stack is empty, if so, skipping to step 9.1, otherwise skipping to step 9.2;
step 9.9: the entire tag identification process ends.
As shown in the specific implementation process of the custom command QueryP mentioned in AMS method 1 in fig. 3, when the reader detects a collision, a collision factor is calculated, where the collision factor is equal to 0.75, and the reader first sends a custom command QueryP that requires the tag to respond to the first two bits of specific information; the tag can be seen from the figure to convert the first two collision information of the tag into a decimal number x, and then return a 4-bit data, wherein the Dx bit is 1, and the rest bits are 0; after receiving the response data 0xx0 of the tag, the reader determines that the D2 bit and the D1 bit collide, so that it can be known that the specific collision information of the highest collision bit and the next highest collision bit of the collided tag are 01 and 10, respectively, and therefore the subsequent query command adds 01 and 10 to the original query sequence to generate a new query command.
Fig. 4 is a flowchart of the AMS method 2, which specifically includes:
step 9.1: the reader-writer detects whether the time slot stack is empty, if so, the step is skipped to step 9.6, otherwise, the reader-writer extracts a time slot value from the time slot stack and waits for sending a query command;
step 9.2: the reader-writer extracts a query prefix (the prefix of the first query prefix is an empty string, namely all counter values are equal to the tag response of the time slot value of the current reader-writer) from the prefix stack, and the reader-writer combines the current time slot value and then sends a query command to the tag;
step 9.3: the tag receives a query command of the reader-writer, compares the value of a counter of the tag with the current time slot value, responds to the current query command of the reader-writer if the value of the counter of the tag is equal to the current time slot value, replies the first two bits of the rest part of the matched part of the ID of the tag and the query prefix, and converts the two bits of data into four-bit data according to a mapping table and sends the four-bit data to the reader-writer;
step 9.4: the reader-writer receives the response data of the label, if collision occurs, the first two collision bits are respectively set to 00/01/10/11, new query prefixes are generated after the first two collision bits are placed in the query prefix, and the new prefixes are placed in the prefix stack; if no collision exists, the first two bits of the tag ID under the current time slot value are the same, then the two bits are placed in the query prefix according to the mapping table, a new query prefix is generated, and the new prefix is placed in the prefix stack;
step 9.5: judging whether the current prefix stack is empty, if so, skipping to step 9.1, otherwise skipping to step 9.2;
step 9.6: the entire tag identification process ends.
As shown in table 1 below, a mapping table used in the AMS method 2 is provided, and a reader/writer can quickly acquire tag collision information according to the mapping table, thereby avoiding an idle time slot and increasing a query speed.
TABLE 1 mapping table
2bit (Collision) | 4bit (mapping data) |
00 | 0001 |
01 | 0010 |
10 | 0100 |
11 | 1000 |
As can be seen from the flowcharts of the AMS method 1 and the AMS method 2 shown in fig. 2 and fig. 4, the difference between the two methods is that a new query prefix is determined based on a collision factor and a custom command QueryP, and a new query prefix is determined directly by using mapping data returned by a tag, which is easy to see, and the latter does not need an additional custom command and does not need the tag to return complete ID information, so that the performance is better.
In order that those skilled in the art can understand and implement the technical solution of the present invention, the following detailed description will be made on the application scheme of the present invention with reference to specific examples:
as shown in fig. 5, the following takes an identification process of 10 tags as an example, and adopts AMS method 2 to specifically describe the technical solution of the present invention, where the 10 tags are 00110011, 01000101, 01011101, 01001010, 00010011, 00010001, 11011110, 11111000, 10011011, and 11110110, respectively, and according to the method flowchart shown in fig. 1 and the mapping table shown in fig. 5, the following steps are specifically implemented in the present invention:
step 1: the reader broadcasts a Query command to the tags in the working domain, and the frame length L is 4; as shown in fig. 6, tags T3, T10 choose to respond at slot 1, tag T5 choose to respond at slot 2, tags T1, T2, T6, T8, and T9 choose to respond at slot 3, and tags T4, T7 choose to respond at slot 4; since slot 2 is a successful slot, the tag T5 is successfully identified at this slot; the rest time slots are collision time slots, and according to the principle of the method, the time slot numbers 1, 3 and 4 are pressed into a time slot stack, so that the AMS method can conveniently identify the time slots. The subsequent reader-writer can respectively identify collision tags with the timer values equal to 1, 3 and 4 according to the information of the time slot stack.
Step 2: the reader-writer extracts a time slot number 1 from the time slot stack, sends an empty string query, makes all the tags with the counter value equal to 1 respond, and replies mapping data of the first two bits of the rest part of the matched part of the self ID and the query prefix; according to the mapping table, the tags T3 and T10 reply 0010 and 1000 respectively, the reader-writer receives the response data x0x0 to judge that the collision information contains the prefixes 01 and 11, and the prefixes are pressed into a prefix stack; the reader sends a query prefix 01, and at the moment, the tag T3 responds and replies 0010, no collision occurs, so that the T3 is successfully identified; the reader continues to send the query prefix 11, and at this time, the tag T10 responds and replies 1000, no collision occurs, so that the tag T10 is successfully identified; at this time, the prefix stack is empty, and the label with the counter value of 1 is identified and ended;
and step 3: the reader-writer extracts a time slot number 3 from the time slot stack, sends an empty string query, makes all the counter values equal to the label response of 3, and replies mapping data of the first two bits of the rest part of the matched part of the self ID and the query prefix; according to the mapping table, the tags T1, T2, T6, T8 and T9 respond and reply to data 0001, 0010, 0001, 1000 and 0100, and the reader receives the response data xxxx to judge that the collision information contains prefixes 00, 01, 10 and 11 and pushes the prefixes to a stack; the reader-writer sends a query prefix 00, the tags T1 and T6 respond and reply to the data 1000 and 0010 at the moment, the reader-writer receives the response data x0x0, and the reader-writer judges that the prefixes 01 and 11 exist in the collision information and presses the prefixes 01 and 11 into a stack at the moment; the reader-writer sends a query prefix 0001, only the tag T6 responds and replies to the data 0001 at the moment, no collision occurs, and T6 is successfully identified; the reader-writer continuously sends the query prefix 0011, the tag T1 responds and replies to the data 0001, no collision occurs, and the T1 is successfully identified; reading and writing continuously sends the query prefix 01, the tag T2 responds and replies data 0001, no collision occurs, and the T2 is successfully identified; the reader-writer continuously sends the query prefix 10, the tag T9 responds and replies data 0010, no collision occurs, and T9 is successfully identified; the reader-writer sends a query prefix 11, the tag T8 responds and replies to the data 1000, no collision occurs, and T8 is successfully identified; at this time, the prefix stack is empty, and the label identification with the timer value of 3 is finished;
and 4, step 4: similarly to the above steps, the tag with the counter value of 4 is also successfully identified;
and 5: at this time, the time slot stack is empty, and all tags in the working domain of the reader-writer are successfully identified.
Fig. 6 and 7 respectively show the advantages of the method of the present invention in terms of recognition efficiency and energy efficiency compared with the classical anti-collision method, where CT is the collision tree method, DFSA is the dynamic frame timeslot ALOHA method, EDFSA is the enhanced dynamic frame timeslot ALOHA method, and Splitting BTSA is the split binary tree timeslot ALOHA method.
It will be appreciated by those of ordinary skill in the art that the embodiments described herein are intended to assist the reader in understanding the principles of the invention and are to be construed as being without limitation to such specifically recited embodiments and examples. All such possible equivalents and modifications are deemed to fall within the scope of the invention as defined in the claims.
Claims (2)
1. A hybrid anti-collision method for a high-capacity multi-tag RFID system is characterized by specifically comprising the following steps:
step 1: the reader-writer is initialized and cleared, and the values of a reader-writer time slot counter Sc, an idle time slot number Ne, a collision time slot number Nc and a success time slot number Nr are all 0;
step 2: the reader broadcasts a Query command to the tags in the coverage area, wherein the Query command specifies a fixed-length time slot frame L-2QThe reader-writer time slot counter Sc is Sc + 1;
and step 3: the tag to be identified in the coverage range of the reader-writer receives a Query command of the reader-writer, extracts a Q value in the command, randomly generates a number in [1, L ] and loads the number on a counter of the reader-writer, compares the value of the counter with the value of the current reader-writer Sc, responds to the Query command of the reader-writer and replies an ID of the reader-writer if the value of the counter is equal to the value of the current reader-writer Sc, and otherwise does not respond;
and 4, step 4: the reader-writer receives the tag response, if the reader-writer does not receive the tag reply, the reader-writer indicates that no tag to be identified exists in the coverage range of the reader-writer, and Ne +1 is set at the moment;
if the received response does not generate collision, the tag is successfully identified, and Nr is set to Nr + 1;
if the received response is collided, the situation that a plurality of tags respond simultaneously in the current time slot is indicated, at the moment, Nc is Nc +1, and the current value of Sc is put into a time slot stack;
and 5: judging whether the current Sc value reaches a maximum value L or not when the current reader-writer time slot counter Sc is Sc +1, if so, jumping to a step 8, and otherwise, sending a QueryRep command;
step 6: the label to be identified in the coverage range of the reader-writer receives the QueryRep command of the reader-writer, judges the value of the self timer and the current value of the reader-writer Sc, responds to the QueryRep command of the reader-writer and replies the ID of the reader-writer if the value of the self timer is equal to the value of the current reader-writer Sc, and does not respond if the value of the self timer is not equal to the value of the current reader-writer;
and 7: jumping to the step 4;
and 8: counting the values of Ne, Nc and Nr in the query process of the round, judging whether the value of Ne-6 Nc exceeds a set threshold value, if so, skipping to the step 9, otherwise, resetting the values of Ne, Nr and Nc, and skipping to the step 2, wherein Q is Q + 1;
and step 9: the reader-writer adopts a self-adaptive multilevel tree inquiry AMS method based on collision factors to identify the unidentified label,
the AMS method in step 9 specifically includes:
step 9.1: the reader-writer detects whether the time slot stack is empty, if so, the step is skipped to step 9.9, otherwise, the reader-writer extracts a time slot value from the time slot stack and waits for sending a query command;
step 9.2: the reader-writer extracts a query prefix from the prefix stack and sends a query command to the label in the coverage range by combining the current time slot value;
step 9.3: the tag receives the query command of the reader-writer, compares the value of the counter of the tag with the current time slot value, responds to the current query command of the reader-writer and replies the ID of the tag if the value of the counter of the tag is equal to the current time slot value, otherwise, does not respond;
step 9.4: the reader-writer receives the response of the label, if no collision exists, the label is identified successfully, and the step 9.8 is skipped; if collision occurs, calculating a collision factor, wherein the collision factor is defined as the ratio of the number of bits of the collision to the length of the ID of the tag; if the collision factor is greater than or equal to 0.75, jumping to step 9.5; if the collision factor is less than 0.75, the head collision bit is recorded as Dc, two new query prefixes are generated, Dc is set to be 0 or 1 respectively, the rest part consists of the query prefix and the part before the head collision bit in the received ID, the two new query prefixes are placed into the prefix stack, and the step 9.8 is skipped;
step 9.5: the reader-writer sends a user-defined command QueryP to enable the tag to return 4-bit data, and the data is used for reflecting first two-bit information of tag collision;
step 9.6: the tag responds to a user-defined command QueryP, converts first two-bit collision data into a decimal number x, and then returns 4-bit data to the reader-writer, wherein the Dx position of the data is 1, and the rest positions are 0;
step 9.7: the reader-writer analyzes the first two-bit collision data of the tag according to the received 4-bit data, places the first two-bit collision data of the tag in a prefix of query to generate new query prefixes, and places the new prefixes in a prefix stack;
step 9.8: judging whether the current prefix stack is empty, if so, skipping to step 9.1, otherwise skipping to step 9.2;
step 9.9: the whole label identification process is finished;
or,
the AMS method in step 9 specifically includes:
step 9.1: the reader-writer detects whether the time slot stack is empty, if so, the step is skipped to step 9.6, otherwise, the reader-writer extracts a time slot value from the time slot stack and waits for sending a query command;
step 9.2: the reader-writer extracts a query prefix from the prefix stack and sends a query command to the label in the coverage range by combining the current time slot value;
step 9.3: the tag receives the query command of the reader-writer, compares the value of the counter of the tag with the current time slot value, responds to the current query command of the reader-writer if the value of the counter of the tag is equal to the current time slot value, replies the first two bits of the rest part of the matched part of the ID of the tag and the query prefix, converts the two bits of data into four bits of data according to the mapping table and sends the four bits of data to the reader-writer;
step 9.4: the reader-writer receives the response data of the label, if collision occurs, the first two collision bits are respectively set to 00/01/10/11, new query prefixes are generated after the first two collision bits are placed in the query prefix, and the new prefixes are placed in the prefix stack; if no collision exists, the first two bits of the tag ID under the current time slot value are the same, then the two bits are placed in the query prefix according to the mapping table, a new query prefix is generated, and the new prefix is placed in the prefix stack;
step 9.5: judging whether the current prefix stack is empty, if so, skipping to step 9.1, otherwise skipping to step 9.2;
step 9.6: the entire tag identification process ends.
2. A hybrid anti-collision method for a high-capacity multi-tag RFID system as claimed in claim 1, wherein the prefix is first queried as an empty string in step 9.2, i.e. all tag responses with counter value equal to the current slot value of the reader/writer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410033760.2A CN103902942B (en) | 2014-01-23 | 2014-01-23 | A kind of mixing collision-proof method for Large Copacity multi-tag rfid system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410033760.2A CN103902942B (en) | 2014-01-23 | 2014-01-23 | A kind of mixing collision-proof method for Large Copacity multi-tag rfid system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103902942A CN103902942A (en) | 2014-07-02 |
CN103902942B true CN103902942B (en) | 2016-11-02 |
Family
ID=50994255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410033760.2A Active CN103902942B (en) | 2014-01-23 | 2014-01-23 | A kind of mixing collision-proof method for Large Copacity multi-tag rfid system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103902942B (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104134052B (en) * | 2014-07-10 | 2016-11-16 | 广东工业大学 | A kind of RFID anti-collision method based on adaptive packet mechanism |
CN106919879B (en) * | 2015-12-28 | 2020-03-13 | 航天信息股份有限公司 | Double-frequency label anti-collision equipment and method |
CN107590408B (en) * | 2017-08-01 | 2020-05-12 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | ALOHA anti-collision method based on binary hash |
CN108108643B (en) * | 2017-12-20 | 2021-02-19 | 深圳市航天华拓科技有限公司 | Radio frequency identification anti-collision optimal Q value calculation method and device |
CN111523337B (en) * | 2020-04-21 | 2023-06-09 | 中煤科工集团重庆研究院有限公司 | Anti-collision method based on label serial number sliding window iterative grouping |
CN112949334B (en) * | 2021-03-04 | 2022-06-10 | 武汉大学 | Reliable radio frequency identification method based on packet multiplexing |
CN114186571B (en) | 2021-11-08 | 2023-06-09 | 南京信息工程大学 | Query tree multi-label concurrent identification method and system based on feature set |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004780A (en) * | 2006-01-16 | 2007-07-25 | 北京大学 | Anticollision method for reading ID information in radio frequency |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7193504B2 (en) * | 2001-10-09 | 2007-03-20 | Alien Technology Corporation | Methods and apparatuses for identification |
-
2014
- 2014-01-23 CN CN201410033760.2A patent/CN103902942B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004780A (en) * | 2006-01-16 | 2007-07-25 | 北京大学 | Anticollision method for reading ID information in radio frequency |
Non-Patent Citations (3)
Title |
---|
基于AS3992的防碰撞Q算法分析与改进;邓敦建等;《传感器与微系统》;20130331;第32卷(第3期);第8页第1节 * |
基于堆栈的RFID防碰撞算法设计;陆洲艳等;《物流工程与管理》;20120930;第34卷(第9期);第141页第2节 * |
自适应多叉树防碰撞算法研究;丁治国等;《自动化学报》;20100228;第36卷(第2期);第238页第1-2节,图1-4 * |
Also Published As
Publication number | Publication date |
---|---|
CN103902942A (en) | 2014-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103902942B (en) | A kind of mixing collision-proof method for Large Copacity multi-tag rfid system | |
US8477016B2 (en) | Method for identifying tags using adaptive binary tree splitting technique in RFID system and RFID system therefore | |
CN104657693B (en) | A kind of RFID anti-collision method based on grouping self-adjusted block time slot | |
Su et al. | An effective frame breaking policy for dynamic framed slotted Aloha in RFID | |
Ryu et al. | A hybrid query tree protocol for tag collision arbitration in RFID systems | |
CN104517087B (en) | RFID multi-label identification anti-collision method | |
CN103065112B (en) | Based on the RFID label tag anticollision recognition methods of modular arithmetic labeling | |
CN101840489A (en) | Multi-tag identification anti-collision method based on collision tree | |
CN105224970B (en) | A kind of RFID anti-collision method | |
CN103902941A (en) | Multi-label collision-resisting method based on continuous collision position mapping | |
CN103020569A (en) | Radio-frequency identification multi-label anti-collision method | |
Su et al. | A New RFID Anti‐collision Algorithm Based on the Q‐Ary Search Scheme | |
CN109740394B (en) | Radio frequency identification anti-collision method | |
Xu et al. | An improved dynamic framed slotted ALOHA anti-collision algorithm based on estimation method for RFID systems | |
CN105046181A (en) | Deterministic anti-collision algorithm based on multi-prefix matching of query tree method | |
Wong et al. | Grouping based bit-slot ALOHA protocol for tag anti-collision in RFID systems | |
CN104794509B (en) | A kind of RFID anti-collision method of the adaptable search encoded based on information bit | |
CN107895130A (en) | A kind of adaptive multiway tree collision-proof method based on collision tree | |
CN111046685A (en) | Grouping paging-based locking type double-prefix probe anti-collision calculation method | |
CN103679092A (en) | An RFID anti-collision algorithm based on a feedback mechanism | |
CN103218635A (en) | RFID (radio frequency identification) anti-collision method based on mixed multiway tree searching | |
CN112446448A (en) | Method for identifying RFID (radio frequency identification) label by single reader combining DFSA (distributed feedback system) and binary algorithm | |
Shakiba et al. | Fitted dynamic framed slotted ALOHA anti-collision algorithm in RFID systems | |
Kalache et al. | Performances comparison of RFID anti-collision algorithms | |
CN109543477A (en) | Adaptive multiway tree anti-collision algorithm based on mapping code |
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 |