Method of addressing messages and communications systems
A method of and apparatus for establishing wireless communications between an interrogator and individual ones of multiple wireless identification devices, the method comprising utilizing a tree search method to establish communications without collision between the interrogator and individual ones of the multiple wireless identification devices, a search tree being defined for the tree search method, the tree having multiple levels respectively representing subgroups of the multiple wireless identification devices, the method further comprising starting the tree search at a selectable level of the search tree. A communications system comprising an interrogator, and a plurality of wireless identification devices configured to communicate with the interrogator in a wireless fashion, the respective wireless identification devices having a unique identification number, the interrogator being configured to employ a tree search technique to determine the unique identification numbers of the different wireless identification devices so as to be able to establish communications between the interrogator and individual ones of the multiple wireless identification devices without collision by multiple wireless identification devices attempting to respond to the interrogator at the same time, wherein the interrogator is configured to start the tree search at a selectable level of the search tree. The interrogator transmits a first request indicating a subgroup of random numbers out of a total number of possible random numbers. The wireless identification devices each determine if the random number generated by each wireless identification device falls within the subgroup, and if so, the wireless identification device responds to the interrogator. If a collision between wireless identification device responses is detected by the interrogator, the interrogator transmits a second request indicating a subset of the subgroup of random numbers.
Latest Round Rock Research, LLC Patents:
This More than one reissue application has been filed for the reissue of U.S. Pat. No. 6,307,847, which reissue applications include the initial reissue application Ser. No. 10/693,696, filed Oct. 23, 2003, now U.S. reissue Pat. No. Re. 41,530, a continuation reissue application Ser. No. 11/859,360, filed Sep. 21, 2007, now U.S. reissue Pat. No. Re. 42,900, a continuation reissue application Ser. No. 11/859,364, filed Sep. 21, 2007, now U.S. reissue Pat. No. Re. 41,531, a continuation reissue application Ser. No. 12/701,563, filed Feb. 7, 2010, and the present continuation reissue application, which is a continuation application of U.S. patent application Ser. No. 10/693,696, filed Oct. 23, 2003, now U.S. reissue Pat. No. Re. 41,530, which is a reissue of U.S. Pat. No. 6,307,847 having U.S. patent application Ser. No. 09/617,390, filed Jul. 17, 2000, which is a Continuation continuation application of U.S. patent application Ser. No. 09/026,043, filed Feb. 19, 1998, and entitled “Method of Addressing Messages and Communications System”, now U.S. Pat. No. 6,118,789, each of which is incorporated herein by reference in its entirety.
TECHNICAL FIELDThis invention relates to communications protocols and to digital data communications. Still more particularly, the invention relates to data communications protocols in mediums such as radio communication or the like. The invention also relates to radio frequency identification devices for inventory control, object monitoring, determining the existence, location or movement of objects, or for remote automated payment.
BACKGROUND OF THE INVENTIONCommunications protocols are used in various applications. For example, communications protocols can be used in electronic identification systems. As large numbers of objects are moved in inventory, product manufacturing, and merchandising operations, there is a continuous challenge to accurately monitor the location and flow of objects. Additionally, there is a continuing goal to interrogate the location of objects in an inexpensive and streamlined manner. One way of tracking objects is with an electronic identification system.
One presently available electronic identification system utilizes a magnetic coupling system. In some cases, an identification device may be provided with a unique identification code in order to distinguish between a number of different devices. Typically, the devices are entirely passive (have no power supply), which results in a small and portable package. However, such identification systems are only capable of operation over a relatively short range, limited by the size of a magnetic field used to supply power to the devices and to communicate with the devices.
Another wireless electronic identification system utilizes a large active transponder device affixed to an object to be monitored which receives a signal from an interrogator. The device receives the signal, then generates and transmits a responsive signal. The interrogation signal and the responsive signal are typically radio-frequency (RF) signals produced by an RF transmitter circuit. Because active devices have their own power sources, and do not need to be in close proximity to an interrogator or reader to receive power via magnetic coupling. Therefore, active transponder devices tend to be more suitable for applications requiring tracking of a tagged device that may not be in close proximity to an interrogator. For example, active transponder devices tend to be more suitable for inventory control or tracking.
Electronic identification systems can also be used for remote payment. For example, when a radio frequency identification device passes an interrogator at a toll booth, the toll booth can determine the identity of the radio frequency identification device, and thus of the owner of the device, and debit an account held by the owner for payment of toll or can receive a credit card number against which the toll can be charged. Similarly, remote payment is possible for a variety of other goods or services.
A communication system typically includes two transponders: a commander station or interrogator, and a responder station or transponder device which replies to the interrogator.
If the interrogator has prior knowledge of the identification number of a device which the interrogator is looking for, it can specify that a response is requested only from the device with that identification number. Sometimes, such information is not available. For example, there are occasions where the interrogator is attempting to determine which of multiple devices are within communication range.
When the interrogator sends a message to a transponder device requesting a reply, there is a possibility that multiple transponder devices will attempt to respond simultaneously, causing a collision, and thus causing an erroneous message to be received by the interrogator. For example, if the interrogator sends out a command requesting that all devices within a communications range identify themselves, and gets a large number of simultaneous replies, the interrogator may not be able to interpret any of these replies. Thus, arbitration schemes are employed to permit communications free of collisions.
In one arbitration scheme or system, described in commonly assigned U.S. Pat. Nos. 5,627,544; 5,583,850; 5,500,650; and 5,365,551, all to Snodgrass et al. and all incorporated herein by reference, the interrogator sends a command causing each device of a potentially large number of responding devices to select a random number from a known range and use it as that device's arbitration number. By transmitting requests for identification to various subsets of the full range of arbitration numbers, and checking for an error-free response, the interrogator determines the arbitration number of every responder station capable of communicating at the same time. Therefore, the interrogator is able to conduct subsequent uninterrupted communication with devices, one at a time, by addressing only one device.
Another arbitration scheme is referred to as the Aloha or slotted Aloha scheme. This scheme is discussed in various references relating to communications, such as Digital Communications: Fundamentals and Applications, Bernard Sklar, published January 1988 by Prentice Hall. In this type of scheme, a device will respond to an interrogator using one of many time domain slots selected randomly by the device. A problem with the Aloha scheme is that if there are many devices, or potentially many devices in the field (i.e. in communications range, capable of responding) then there must be many available slots or many collisions will occur. Having many available slots slows down replies. If the magnitude of the number of devices in a field is unknown, then many slots are needed. This results in the system slowing down significantly because the reply time equals the number of slots multiplied by the time period required for one reply.
An electronic identification system which can be used as a radio frequency identification device, arbitration schemes, and various applications for such devices are described in detail in commonly assigned U.S. patent application Ser. No. 08/705,043, filed Aug. 29, 1996, and now U.S. Pat. No. 6,130,602, which is incorporated herein by reference in its entirety.
SUMMARY OF THE INVENTIONThe In a first aspect of the present invention, provides a wireless identification device configured to provide a signal to identify the device in response to an interrogation signal is disclosed.
One aspect of the invention provides In a second aspect of the invention, a method of establishing wireless communications between an interrogator and individual ones of multiple wireless identification devices is disclosed. The In one embodiment, the method comprises utilizing a tree search method to establish communications without collision between the interrogator and individual ones of the multiple wireless identification devices. A search tree is defined for the tree search method. The tree has multiple levels respectively representing subgroups of the multiple wireless identification devices. The method further comprising starting the tree search at a selectable level of the search tree. In one aspect of the invention, the method further comprises determining the maximum possible number of wireless identification devices that could communicate with the interrogator, and selecting a level of the search tree based on the determined maximum possible number of wireless identification devices that could communicate with the interrogator. In another aspect of the invention, the method further comprises starting the tree search at a level determined by taking the base two logarithm of the determined maximum possible number, wherein the level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively.
Another aspect of the invention provides In a third aspect of the invention, a communications system comprising an interrogator, and a plurality of wireless identification devices configured to communicate with the interrogator in a wireless fashion is disclosed. The In one embodiment, the respective wireless identification devices have a unique identification number. The interrogator is configured to employ a tree search technique to determine the unique identification numbers of the different wireless identification devices so as to be able to establish communications between the interrogator and individual ones of the multiple wireless identification devices without collision by multiple wireless identification devices attempting to respond to the interrogator at the same time. The interrogator is configured to start the tree search at a selectable level of the search tree.
One aspect of the invention provides In a fourth aspect of the invention, a radio frequency identification device comprising an integrated circuit including a receiver, a transmitter, and a microprocessor is disclosed. In one embodiment, the integrated circuit is a monolithic single die single metal layer integrated circuit including the receiver, the transmitter, and the microprocessor. The device of this embodiment includes an active transponder, instead of a transponder which relies on magnetic coupling for power, and therefore has a much greater range.
In a fifth aspect of the invention, methods of conducting financial transactions in systems having an interrogator and at least one radio frequency device are disclosed.
Preferred embodiments of the invention are described below with reference to the following accompanying drawings.
This disclosure of the invention is submitted in furtherance of the constitutional purposes of the U.S. Patent Laws “to promote the progress of science and useful arts” (Article 1, Section 8).
The device 12 transmits and receives radio frequency communications to and from an interrogator 26. An exemplary interrogator is described in commonly assigned U.S. patent application Ser. No. 08/907,689, filed Aug. 8, 1997 and, now U.S. Pat. No. 6,289,209, which is incorporated herein by reference. Preferably, the interrogator 26 includes an antenna 28, as well as dedicated transmitting and receiving circuitry, similar to that implemented on the integrated circuit 16.
Generally, the interrogator 26 transmits an interrogation signal or command 27 via the antenna 28. The device 12 receives the incoming interrogation signal via its antenna 14. Upon receiving the signal 27, the device 12 responds by generating and transmitting a responsive signal or reply 29. The responsive signal 29 typically includes information that uniquely identifies, or labels the particular device 12 that is transmitting, so as to identify any object or person with which the device 12 is associated.
Although only one device 12 is shown in
The radio frequency data communication device 12 can be included in any appropriate housing or packaging. Various methods of manufacturing housings are described in commonly assigned U.S. patent application Ser. No. 08/800,037, filed Feb. 13, 1997, and now U.S. Pat. No. 5,988,510, which is incorporated herein by reference in its entirety.
If the power supply 18 is a battery, the battery can take any suitable form. Preferably, the battery type will be selected depending on weight, size, and life requirements for a particular application. In one embodiment, the battery 18 is a thin profile button-type cell forming a small, thin energy cell more commonly utilized in watches and small electronic devices requiring a thin profile. A conventional button-type cell has a pair of electrodes, an anode formed by one face and a cathode formed by an opposite face. In an alternative embodiment, the power source 18 comprises a series connected pair of button type cells. Instead of using a battery, any suitable power source can be employed.
The circuitry 16 further includes a backscatter transmitter and is configured to provide a responsive signal to the interrogator 26 by radio frequency. More particularly, the circuitry 16 includes a transmitter, a receiver, and memory such as is described in U.S. patent application Ser. No. 08/705,043, now U.S. Pat. No. 6,130,602.
Radio frequency identification has emerged as a viable and affordable alternative to tagging or labeling small to large quantities of items. The interrogator 26 communicates with the devices 12 via an electromagnetic link, such as via an RF link (e.g., at microwave frequencies, in one embodiment), so all transmissions by the interrogator 26 are heard simultaneously by all devices 12 within range.
If the interrogator 26 sends out a command requesting that all devices 12 within range identify themselves, and gets a large number of simultaneous replies, the interrogator 26 may not be able to interpret any of these replies. Therefore, arbitration schemes are provided.
If the interrogator 26 has prior knowledge of the identification number of a device 12 which the interrogator 26 is looking for, it can specify that a response is requested only from the device 12 with that identification number. To target a command at a specific device 12, (i.e., to initiate point-on-point communication), the interrogator 26 must send a number identifying a specific device 12 along with the command. At start-up, or in a new or changing environment, these identification numbers are not known by the interrogator 26. Therefore, the interrogator 26 must identify all devices 12 in the field (within communication range) such as by determining the identification numbers of the devices 12 in the field. After this is accomplished, point-to-point communication can proceed as desired by the interrogator 26.
Generally speaking, RFID systems are a type of multiaccess communication system. The distance between the interrogator 26 and devices 12 within the field is typically fairly short (e.g., several meters), so packet transmission time is determined primarily by packet size and baud rate. Propagation delays are negligible. In such systems, there is a potential for a large number of transmitting devices 12 and there is a need for the interrogator 26 to work in a changing environment, where different devices 12 are swapped in and out frequently (e.g., as inventory is added or removed). In such systems, the inventors have determined that the use of random access methods work effectively for contention resolution (i.e., for dealing with collisions between devices 12 attempting to respond to the interrogator 26 at the same time).
RFID systems have some characteristics that are different from other communications systems. For example, one characteristic of the illustrated RFID systems is that the devices 12 never communicate without being prompted by the interrogator 26. This is in contrast to typical multiaccess systems where the transmitting units operate more independently. In addition, contention for the communication medium is short lived as compared to the ongoing nature of the problem in other multiaccess systems. For example, in a RFID system, after the devices 12 have been identified, the interrogator can communicate with them in a point-to-point fashion. Thus, arbitration in a RFID system is a transient rather than steady-state phenomenon. Further, the capability of a device 12 is limited by practical restrictions on size, power, and cost. The lifetime of a device 12 can often be measured in terms of number of transmissions before battery power is lost. Therefore, one of the most important measures of system performance in RFID arbitration is total time required to arbitrate a set of devices 12. Another measure is power consumed by the devices 12 during the process. This is in contrast to the measures of throughput and packet delay in other types of multiaccess systems.
Three variables are used: an arbitration value (AVALUE), an arbitration mask (AMASK), and a random value ID (RV). The interrogator sends an Identify command (IdentifyCmnd) causing each device of a potentially large number of responding devices to select a random number from a known range and use it as that device's arbitration number. The interrogator sends an arbitration value (AVALUE) and an arbitration mask (AMASK) to a set of devices 12. The receiving devices 12 evaluate the following equation: (AMASK & AVALUE)==(AMASK & RV) wherein “&” is a bitwise AND function, and wherein “==” is an equality function. If the equation evaluates to “1” (TRUE), then the device 12 will reply. If the equation evaluates to “0” (FALSE), then the device 12 will not reply. By performing this in a structured manner, with the number of bits in the arbitration mask being increased by one each time, eventually a device 12 will respond with no collisions. Thus, a binary search tree methodology is employed.
An example using actual numbers will now be provided using only four bits, for simplicity, reference being made to
Assume, for this example, that there are two devices 12 in the field, one with a random value (RV) of 1100 (binary), and another with a random value (RV) of 1010 (binary). The interrogator is trying to establish communications without collisions being caused by the two devices 12 attempting to communicate at the same time.
The interrogator sets AVALUE to 0000 (or “don't care” for all bits, as indicated by the character “X” in
Next, the interrogator sets AMASK to 0001 and AVALUE to 0000 and transmits an identify command. Both devices 12 in the field have a zero for their least significant bit, and (AMASK & AVALUE)==(AMASK & RV) will be true for both devices 12. For the device 12 with a random value of 1100, the left side of the equation is evaluated as follows (0001 & 0000)=0000. The right side is evaluated as (0001 & 1100)=0000. The left side equals the right side, so the equation is true for the device 12 with the random value of 1100. For the device 12 with a random value of 1010, the left side of the equation is evaluated as (0001 & 0000)=0000. The right side is evaluated as (0001 & 1010)=0000. The left side equals the right side, so the equation is true for the device 12 with the random value of 1010. Because the equation is true for both devices 12 in the field, both devices 12 in the field respond, and there is another collision.
Recursively, the interrogator next sets AMASK to 0011 with AVALUE still at 0000 and transmits an Identify command. (AMASK & AVALUE)==(AMASK & RV) is evaluated for both devices 12. For the device 12 with a random value of 1100, the left side of the equation is evaluated as follows (0011 & 0000)=0000. The right side is evaluated as (0011 & 1100)=0000. The left side equals the right side, so the equation is true for the device 12 with the random value of 1100, so this device 12 responds. For the device 12 with a random value of 1010, the left side of the equation is evaluated as (0011 & 0000)=0000. The right side is evaluated as (0011 & 1010)=0010. The left side does not equal the right side, so the equation is false for the device 12 with the random value of 1010, and this device 12 does not respond. Therefore, there is no collision, and the interrogator can determine the identity (e.g., an identification number) for the device 12 that does respond.
De-recursion takes place, and the devices 12 to the right for the same AMASK level are accessed when AVALUE is set at 0010, and AMASK is set to 0011.
The device 12 with the random value of 1010 receives a command and evaluates the equation (AMASK & AVALUE)==(AMASK & RV). The left side of the equation is evaluated as (0011 & 0010)=0010. The right side of the equation is evaluated as (0011 & 1010)=0010. The right side equals the left side, so the equation is true for the device 12 with the random value of 1010. Because there are no other devices 12 in the subtree, a good reply is returned by the device 12 with the random value of 1010. There is no collision, and the interrogator 26 can determine the identity (e.g., an identification number) for the device 12 that does respond.
By recursion, what is meant is that a function makes a call to itself. In other words, the function calls itself within the body of the function. After the called function returns, de-recursion takes place and execution continues at the place just after the function call; i.e. at the beginning of the statement after the function call.
For instance, consider a function that has four statements (numbered 1,2,3,4 ) in it, and the second statement is a recursive call. Assume that the fourth statement is a return statement. The first time through the loop (iteration 1) the function executes the statement 2 and (because it is a recursive call) calls itself causing iteration 2 to occur. When iteration 2 gets to statement 2, it calls itself making iteration 3. During execution in iteration 3 of statement 1, assume that the function does a return. The information that was saved on the stack from iteration 2 is loaded and the function resumes execution at statement 3 (in iteration 2), followed by the execution of statement 4 which is also a return statement. Since there are no more statements in the function, the function de-recurses to iteration 1. Iteration 1, had previously recursively called itself in statement 2. Therefore, it now executes statement 3 (in iteration 1). Following that it executes a return at statement 4. Recursion is known in the art.
Consider the following code which can be used to implement operation of the method shown in
The symbol “<<” represents a bitwise left shift. “<<” means shift left by one place. Thus, 0001<<1 would be 0010. Note, however, that AMASK is originally called with a value of zero, and 0000<<1 is still 0000. Therefore, for the first recursive call, AMASK=(AMASK<<1)+1. So for the first recursive call, the value of AMASK is 0000+0001=0001. For the second call, AMASK=(0001<<)+1=0010+1=0011. For the third recursive call, AMASK=(0011<<1)+1=0110+1=0111.
The routine generates values for AMASK and AVALUE to be used by the interrogator in an identify command “IdentifyCmnd.” Note that the routine calls itself if there is a collision. De-recursion occurs when there is no collision. AVALUE and AMASK would have values such as the following assuming collisions take place all the way down to the bottom of the tree.
This sequence of AMASK, AVALUE binary numbers assumes that there are collisions all the way down to the bottom of the tree, at which point the Identify command sent by the interrogator is finally successful so that no collision occurs. Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”. Note that if the Identify command was successful at, for example, the third line in the table then the interrogator would stop going down that branch of the tree and start down another, so the sequence would be as shown in the following table.
This method is referred to as a splitting method. It works by splitting groups of colliding devices 12 into subsets that are resolved in turn. The splitting method can also be viewed as a type of tree search. Each split moves the method one level deeper in the tree.
Either depth-first or breadth-first traversals of the tree can be employed Depth first traversals are performed by using recursion, as is employed in the code listed above. Breadth-first traversals are accomplished by using a queue instead of recursion. The following is an example of code for performing a breadth-first traversal.
The symbol “!=” means not equal to. AVALUE and AMASK would have values such as those indicated in the following table for such code.
Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”.
The tree search is started at a level determined by taking the base two logarithm of the determined maximum possible number. More particularly, the tree search is started at a level determined by taking the base two logarithm of the power of two nearest the determined maximum possible number of devices 12. The level of the tree containing all subgroups of random values is considered level zero (see
By determining the upper bound of the number of devices 12 in the field, and starting the tree search at an appropriate level, the number of collisions is reduced, the battery life of the devices 12 is increased, and arbitration time is reduced.
For example, for the search tree shown in
AVALUE and AMASK would have values such as the following assuming collisions take place from level 3 all the way down to the bottom of the tree.
Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”.
In operation, the interrogator transmits a command requesting devices 12 having random values RV within a specified group of random values to respond, the specified group being chosen in response to the determined maximum number. Devices 12 receiving the command respectively determine if their chosen random values fall within the specified group and, if so, send a reply to the interrogator. The interrogator determines if a collision occurred between devices that sent a reply and, if so, creates a new, smaller, specified group, descending in the tree, as described above in connection with
Another arbitration method that can be employed is referred to as the “Aloha” method. In the Aloha method, every time a device 12 is involved in a collision, it waits a random period of time before retransmitting. This method can be improved by dividing time into equally sized slots and forcing transmissions to be aligned with one of these slots. This is referred to as “slotted Aloha.” In operation, the interrogator asks all devices 12 in the field to transmit their identification numbers in the next time slot. If the response is garbled, the interrogator informs the devices 12 that a collision has occurred, and the slotted Aloha scheme is put into action. This means that each device 12 in the field responds within an arbitrary slot determined by a randomly selected value. In other words, in each successive time slot, the devices 12 decide to transmit their identification number with a certain probability.
The Aloha method is based on a system operated by the University of Hawaii. In 1971, the University of Hawaii began operation of a system named Aloha. A communication satellite was used to interconnect several university computers by use of a random access protocol. The system operates as follows. Users or devices transmit at any time they desire. After transmitting, a user listens for an acknowledgment from the receiver or interrogator. Transmissions from different users will sometimes overlap in time (collide), causing reception errors in the data in each of the contending messages. The errors are detected by the receiver, and the receiver sends a negative acknowledgment to the users. When a negative acknowledgment is received, the messages are retransmitted by the colliding users after a random delay. If the colliding users attempted to retransmit without the random delay, they would collide again. If the user does not receive either an acknowledgment or a negative acknowledgment within a certain amount of time, the user “times out” and retransmits the message.
There is a scheme known as slotted Aloha which improves the Aloha scheme by requiring a small amount of coordination among stations. In the slotted Aloha scheme, a sequence of coordination pulses is broadcast to all stations (devices). As is the case with the pure Aloha scheme, packet lengths are constant. Messages are required to be sent in a slot time between synchronization pulses, and can be started only at the beginning of a time slot. This reduces the rate of collisions because only messages transmitted in the same slot can interfere with one another. The retransmission mode of the pure Aloha scheme is modified for slotted Aloha such that if a negative acknowledgment occurs, the device retransmits after a random delay of an integer number of slot times.
Aloha methods are described in a commonly assigned patent application naming Clifton W. Wood, Jr. as an inventor, U.S. patent application Ser. No. 09/026,248, filed Feb. 19, 1998, titled “Method of Addressing Messages and Communications System,” filed concurrently herewith, and now U.S. Pat. No. 6,275,476, which is incorporated herein by reference in its entirety.
In one alternative embodiment, an Aloha method (such as the method described in the commonly assigned patent application mentioned above) is combined with determining the upper bound on a set of devices and starting at a level in the tree depending on the determined upper bound, such as by combining an Aloha method with the method shown and described in connection with
In another embodiment, levels of the search tree are skipped. Skipping levels in the tree, after a collision caused by multiple devices 12 responding, reduces the number of subsequent collisions without adding significantly to the number of no replies. In real-time systems, it is desirable to have quick arbitration sessions on a set of devices 12 whose unique identification numbers are unknown. Level skipping reduces the number of collisions, both reducing arbitration time and conserving battery life on a set of devices 12. In one embodiment, every other level is skipped. In alternative embodiments, more than one level is skipped each time.
The trade off that must be considered in determining how many (if any) levels to skip with each decent down the tree is as follows. Skipping levels reduces the number of collisions, thus saving battery power in the devices 12. Skipping deeper (skipping more than one level) further reduces the number of collisions. The more levels that are skipped, the greater the reduction in collisions. However, skipping levels results in longer search times because the number of queries (Identify commands) increases. The more levels that are skipped, the longer the search times. Skipping just one level has an almost negligible effect on search time, but drastically reduces the number of collisions. If more than one level is skipped, search time increases substantially. Skipping every other level drastically reduces the number of collisions and saves battery power without significantly increasing the number of queries.
Level skipping methods are described in a commonly assigned patent application 09/026,045 naming Clifton W. Wood, Jr. and Don Hush as inventors, titled “Method of Addressing Messages, Method of Establishing Wireless Communications, and Communications Systems,” filed concurrently herewith, now U.S. Pat. No. 6,072,801, and incorporated herein by reference.
In one alternative embodiment, a level skipping method is combined with determining the upper bound on a set of devices and starting at a level in the tree depending on the determined upper bound, such as by combining a level skipping method with the method shown and described in connection with
In yet another alternative embodiment, both a level skipping method and an Aloha method (as described in the commonly assigned applications described above) are combined with the method shown and described in connection with
In compliance with the statute, the invention has been described in language more or less specific as to structural and methodical features. It is to be understood, however, that the invention is not limited to the specific features shown and described, since the means herein disclosed comprise preferred forms of pulling the invention into effect. The invention is, therefore, claimed in any of its forms or modifications within the proper scope of the appended claims appropriately interpreted in accordance with the doctrine of equivalents.
Claims
1. A method of establishing wireless communications between an interrogator and individual ones of multiple wireless identification devices, the wireless identification devices having respective identification numbers and being addressable by specifying identification numbers with any one of multiple possible degrees of precision, the method comprising utilizing a tree search in an arbitration scheme to determine a degree of precision necessary to establish one-on-one communications between the interrogator and individual ones of the multiple wireless identification, devices, a search tree being defined for the tree search method, the tree having multiple selectable levels respectively representing subgroups of the multiple wireless identification devices, the level at which a tree search starts being variable the method further comprising starting the tree search at any selectable level of the search tree.
2. A method in accordance with claim 1 and further comprising determining the maximum possible number of wireless identification devices that could communicate with the interrogator, and selecting a level of the search tree based on the determined maximum possible number of wireless identification devices that could communicate with the interrogator.
3. A method in accordance with claim 2 and further comprising starting the tree search at a level determined by taking the base two logarithm of the determined maximum possible number, wherein the level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively.
4. A method in accordance with claim 2 and further comprising starting the tree search at a level determined by taking the base two logarithm of the determined maximum possible number, wherein the level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively, and wherein the maximum number of devices in a subgroup in one level is half of the maximum number of devices in the next higher level.
5. A method in accordance with claim 2 and further comprising starting the tree search at a level determined by taking the base two logarithm of the power of two nearest the determined maximum possible number, wherein the level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively, and wherein the maximum number of devices in a subgroup in one level is half of the maximum number of devices in the next higher level.
6. A method in accordance with claim 1 wherein the wireless identification device comprises an integrated circuit including a receiver, a modulator, and a microprocessor in communication with the receiver and modulator.
7. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices, the method comprising:
- establishing for respective devices unique identification numbers respectively having a first predetermined number of bits;
- establishing a second predetermined number of bits to be used for random values;
- causing the devices to select random values, wherein respective devices choose random values independently of random values selected by the other devices;
- determining the maximum number of devices potentially capable of responding to the interrogator;
- transmitting a command from the interrogator requesting devices having random values within a specified group of random values to respond, by using a subset of the second predetermined number of bits, the specified group being chosen in response to the determined maximum number;
- receiving the command at multiple devices, devices receiving the command respectively determining if the random value chosen by the device falls within the specified group and, if so, sending a reply to the interrogator; and
- determining using the interrogator if a collision occurred between devices that sent a reply and, if so, creating a new, smaller, specified group.
8. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 7 wherein sending a reply to the interrogator comprises transmitting the unique identification number of the device sending the reply.
9. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 7 wherein sending a reply to the interrogator comprises transmitting the random value of the device sending the reply.
10. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 7 wherein sending a reply to the interrogator comprises transmitting both the random value of the device sending the reply and the unique identification number of the device sending the reply.
11. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 7 wherein, after receiving a reply without collision from a device, the interrogator sends a command individually addressed to that device.
12. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices, the method comprising:
- causing the devices to select random values for use as arbitration numbers, wherein respective devices choose random values independently of random values selected by the other devices, the devices being addressable by specifying arbitration numbers with any one of multiple possible degrees of precision;
- transmitting a command from the interrogator requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the specified group being less than the entire set of random values, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, wherein the size of groups of random values decrease in size by half with each node descended, wherein the specified group is below a node on the tree selected based on the maximum number of devices capable of communicating with the interrogator;
- receiving the command at multiple devices, devices receiving the command respectively determining if the random value chosen by the device falls within the specified group and, if so, sending a reply to the interrogator; and, if not, not sending a reply; and
- determining using the interrogator if a collision occurred between devices that sent a reply and, if so, creating a new, smaller, specified group by descending in the tree.
13. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 12 and further including establishing a predetermined number of bits to be used for the random values.
14. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 13 wherein the predetermined number of bits to be used for the random values comprises an integer multiple of eight.
15. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with claim 13 wherein devices sending a reply to the interrogator do so within a randomly selected time slot of a number of slots.
16. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices, the method comprising:
- establishing for respective devices a predetermined number of bits to be used for random values, the predetermined number being a multiple of sixteen;
- causing the devices to select random values, wherein respective devices choose random values independently of random values selected by the other devices;
- transmitting a command from the interrogator requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the specified group being equal to or less than the entire set of random values, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, wherein the maximum size of groups of random values decrease in size by half with each node descended, wherein the specified group is below a node on a level of the tree selected based on the maximum number of devices known to be capable of communicating with the interrogator;
- receiving the command at multiple devices, devices receiving the command respectively determining if the random value chosen by the device falls within the specified group and, only if so, sending a reply to the interrogator, wherein sending a reply to the interrogator comprises transmitting both the random value of the device sending the reply and the unique identification number of the device sending the reply;
- using the interrogator to determine if a collision occurred between devices that sent a reply and, if so, creating a new, smaller, specified group using a level of the tree different from the level used in the interrogator transmitting, the interrogator transmitting a command requesting devices having random values within the new specified group of random values to respond; and
- if a reply without collision is received from a device, the interrogator subsequently sending a command individually addressed to that device.
17. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 16 and further comprising determining the maximum possible number of wireless identification devices that could communicate with the interrogator.
18. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 16 wherein selecting the level of the tree comprises taking the base two logarithm of the determined maximum possible number, wherein a level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively.
19. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 16 wherein selecting the level of the tree comprises taking the base two logarithm of the determined maximum possible number, wherein a level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively, and wherein the maximum number of devices in a subgroup in one level is half of the maximum number of devices in the next higher level.
20. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 16 wherein selecting the level of the tree comprises taking the base two logarithm of the power of two nearest the determined maximum possible number, wherein the level of the tree containing all subgroups is considered level zero, and lower levels are numbered consecutively, and wherein the maximum number of devices in a subgroup in one level is half of the maximum number of devices in the next higher level.
21. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 16 wherein the wireless identification device comprises an integrated circuit including a receiver, a modulator, and a microprocessor in communication with the receiver and modulator.
22. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 16 and further comprising, after the interrogator transmits a command requesting devices having random values within the new specified group of random values to respond, determining, using devices receiving the command, if their chosen random values fall within the new smaller specified group and, if so, sending a reply to the interrogator.
23. A method of addressing messages from an interrogator to a selected one or more of a number of RFID devices in accordance with claim 22 and further comprising, after the interrogator transmits a command requesting devices having random values within the new specified group of random values to respond, determining if a collision occurred between devices that sent a reply and, if so, creating a new specified group and repeating the transmitting of the command requesting devices having random values within a specified group of random values to respond using different specified groups until all of the devices within communications range are identified.
24. A communications system comprising an interrogator, and a plurality of wireless identification devices configured to communicate with the interrogator in a wireless fashion, the wireless identification devices having respective identification numbers, the interrogator being configured to employ a tree search in a search tree having multiple selectable levels, to determine the identification numbers of the different wireless identification devices with sufficient precision so as to be able to establish one-on-one communications between the interrogator and individual ones of the multiple wireless identification devices, wherein the interrogator is configured to start the tree search at any selectable level of the search tree.
25. A communications system in accordance with claim 24 wherein the tree search is a binary tree search.
26. A communications system in accordance with claim 24 wherein the wireless identification device comprises an integrated circuit including a receiver, a modulator, and a microprocessor in communication with the receiver and modulator.
27. A system comprising:
- an interrogator;
- a number of communications devices capable of wireless communications with the interrogator;
- means for establishing a predetermined number of bits to be used as random numbers, and for causing respective devices to select random numbers respectively having the predetermined number of bits;
- means for inputting a predetermined number indicative of the maximum number of devices possibly capable of communicating with the receiver;
- means for causing the interrogator to transmit a command requesting devices having random values within a specified group of random values to respond, the specified group being chosen in response to the inputted predetermined number;
- means for causing devices receiving the command to determine if their chosen random values fall within the specified group and, if so, send a reply to the interrogator; and
- means for causing the interrogator to determine if a collision occurred between devices that sent a reply and, if so, create a new, smaller, specified group.
28. A system in accordance with claim 27 wherein sending a reply to the interrogator comprises transmitting the random value of the device sending the reply.
29. A system in accordance with claim 27 wherein the interrogator further includes means for, after receiving a reply without collision from a device, sending a command individually addressed to that device.
30. A system comprising:
- an interrogator configured to communicate to a selected one or more of a number of communications devices;
- a plurality of communications devices;
- the devices being configured to select random values, wherein respective devices choose random values independently of random values selected by the other devices, different sized groups of devices being addressable by specifying random values with differing levels of precision;
- the interrogator being configured to transmit a command requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the specified group being less than the entire set of random values, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, wherein the size of groups of random values decrease in size by half with each node descended, wherein the specified group is below a node on the tree selected based on a predetermined maximum number of devices capable of communicating with the interrogator;
- devices receiving the command being configured to respectively determine if their chosen random values fall within the specified group and, if so, send a reply to the interrogator; and, if not, not send a reply; and
- the interrogator being configured to determine if a collision occurred between devices that sent a reply and, if so, create a new, smaller, specified group by descending in the tree.
31. A system in accordance with claim 30 wherein the random values respectively have a predetermined number of bits.
32. A system in accordance with claim 30 wherein respective devices are configured to store unique identification numbers of a predetermined number of bits.
33. A system in accordance with claim 30 wherein respective devices are configured to store unique identification numbers of sixteen bits.
34. A system comprising:
- an interrogator configured to communicate to a selected one or more of a number of RFID devices;
- a plurality of RFID devices, respective devices being configured to store unique identification numbers respectively having a first predetermined number of bits, respective devices being further configured to store a second predetermined number of bits to be used for random values, respective devices being configured to select random values independently of random values selected by the other devices;
- the interrogator being configured to transmit an identify command requesting a response from devices having random values within a specified group of a plurality of possible groups or random values, the specified group being less than or equal to the entire set of random values, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, wherein the maximum size of groups of random values decrease in size by half with each node descended, wherein the specified group is below a node on a level of the tree selected based on the maximum number of devices known to be capable of communicating with the interrogator;
- devices receiving the command respectively being configured to determine if their chosen random values fall within the specified group and, only if so, send a reply to the interrogator, wherein sending a reply to the interrogator comprises transmitting both the random value of the device sending the reply and the unique identification number of the device sending the reply;
- the interrogator being configured to determine if a collision occurred between devices that sent a reply and, if so, create a new, smaller, specified group using a level of the tree different from the level used in previously transmitting an identify command, the interrogator transmitting an identify command requesting devices having random values within the new specified group of random values to respond; and
- the interrogator being configured to send a command individually addressed to a device after communicating with a device without a collision.
35. A system in accordance with claim 34 wherein the interrogator is configured to input and store the predetermined number.
36. A system in accordance with claim 34 wherein the devices are configured to respectively determine if their chosen random values fall within a specified group and, if so, send a reply, upon receiving respective identify commands.
37. A system in accordance with claim 36 wherein the interrogator is configured to determine if a collision occurred between devices that sent a reply in response to respective identify commands and, if so, create further new specified groups and repeat the transmitting of the identify command requesting devices having random values within a specified group of random values to respond using different specified groups until all responding devices are identified.
38. A method implemented in a system having an interrogator and a plurality of radio frequency identification (RFID) devices, the interrogator having one or more antennas, a transmitter, a receiver and a controller, each respective device of RFID devices having a receiver, a transmitter and memory to store a respective identification code, the method comprising:
- transmitting, through the one or more antennas using the transmitter of the interrogator, an initial command to select one or more radio frequency identification (RFID) devices from the plurality of RFID devices that are within wireless communications range of the interrogator, the initial command specifying a bit string having multiple bits;
- receiving the initial command from the interrogator by the receiver of the respective device of the plurality of RFID devices;
- comparing, by the respective device of the plurality of RFID devices, the bit string specified in the initial command against corresponding bits stored in the memory of the respective device to determine whether the respective device is a member of a population of RFID devices selected according to the initial command; and
- if the respective device is a member of the population, picking a respective random value by the respective device from a range of values to determine a respective slot and providing by the transmitter of the respective device a respective reply to the interrogator in accordance with the respective slot, the reply including at least a portion of an identifier of the respective device.
39. The method of claim 38, further comprising:
- transmitting, through the one or more antennas using the transmitter of the interrogator, an acknowledge command in response to the interrogator receiving the respective reply from the respective device and in response to the interrogator determining the respective reply to be collision-free, wherein the respective reply includes the bit string.
40. The method of claim 38, further comprising:
- communicating, from the respective device to the interrogator, the respective identification code to identify a person with whom the respective device is associated.
41. The method of claim 38, further comprising:
- accessing, by the interrogator, the respective device individually by sending the identifier to the respective device, after receiving the identifier from the respective device.
42. The method of claim 38, further comprising:
- indicating the range of values by the interrogator.
43. The method of claim 38, wherein the identifier comprises a random number generated by the respective device, and the random number is sixteen bits in length.
44. A method implemented in a system having an interrogator and at least one radio frequency identification (RFID) device, the method comprising:
- sending an initial command from a transmitter of the interrogator via an antenna, the initial command to select one or more radio frequency identification (RFID) devices, the initial command specifying a bit string having multiple bits;
- receiving in the RFID device the initial command using a receiver of the RFID device over an antenna;
- in response to the initial command, determining by the RFID device whether the RFID device is selected via a comparison between the bit string and a plurality of bits stored in a memory of the RFID device;
- if the RFID device is determined to be selected, communicating a response from the RFID device to the interrogator in accordance with a slotted anticollision algorithm, wherein the response is to communicate one or more identifiers of the RFID device to the interrogator in accordance with the slotted anticollision algorithm, and wherein in accordance with the slotted anticollision algorithm the one or more identifiers is to be communicated in a time slot with a certain probability.
45. The method of claim 44, wherein the one or more identifiers comprise a sixteen bit random number; and the method further comprises:
- send an acknowledge command from the interrogator to the RFID device if the interrogator receives the random number without a collision error.
46. The method of claim 44, further comprising:
- communicating an identification code from the RFID device to the interrogator to identify a person with whom the RFID device is associated.
47. The method of claim 44, further comprising:
- individually addressing the RFID device by the interrogator using an access command, wherein the one or more identifiers communicated in the response comprises a random number and the access command includes the random number.
48. The method of claim 44, wherein the one or more identifiers comprise both a random number dynamically generated by the RFID device and a static number programmed into the RFID device.
49. The method of claim 44, wherein the response is to further communicate the plurality of bits, along with the one or more identifiers, to the interrogator in accordance with the slotted anticollision algorithm.
50. A method implemented in a radio frequency identification (RFID) device having a receiver and a transmitter, the method comprising:
- receiving a first command in the receiver of the RFID device from an interrogator after the RFID device is disposed in a wireless communication field of the interrogator and before the interrogator transmits any other command, the first command specifying a bit string comprising two or more bits;
- in response to the first command, determining by the RFID device, using the bit string, whether the RFID device is selected for participation in a slotted anticollision algorithm; and
- communicating one or more responses from the transmitter of the RFID device to the interrogator in accordance with the slotted anticollision algorithm, if the RFID device is determined to be selected for participation in the slotted anticollision algorithm, wherein the one or more responses include at least a portion of a first identifier and at least a portion of a second identifier stored in the RFID device.
51. The method of claim 50, wherein the first identifier comprises a random number dynamically generated by the RFID device for the interrogator to use to individually address the RFID device, and the second identifier is a static number stored in the RFID device.
52. The method of claim 51, further comprising:
- receiving in the receiver from the interrogator an indication of a number of slots from which the RFID device is to randomly select a slot in which to communicate the one or more responses in accordance with the slotted anticollision algorithm.
53. The method of claim 51, further comprising:
- receiving in the receiver from the interrogator an indication of a change in a number of slots in accordance with the slotted anticollision algorithm.
54. The method of claim 51, wherein the RFID device is configured for use in a wireless payment application and the RFID device comprises a memory to store an identification code to identify a person to be charged for payment.
55. The method of claim 51, wherein the random number is sixteen bits long and the method further comprises:
- communicating the bit string from the transmitter back to the interrogator with the one or more responses.
56. The method of claim 51, further comprising:
- picking a random value by the RFID device from a range of values to communicate the one or more responses with a probability corresponding to the random value in accordance with the slotted anticollision algorithm, wherein the first command is to indicate the range of values.
57. The method of claim 56, further comprising:
- receiving in the receiver a second command comprising an indication of a change in the range of values.
58. The method of claim 51, further comprising: communicating the bit string from the transmitter back to the interrogator with the one or more responses.
59. The method of claim 50, further comprising:
- receiving a signal in the receiver of the RFID device from the interrogator, after the interrogator sends the first command and before the transmitter of the RFID device communicates the one or more responses to the interrogator, wherein the signal indicates to the RFID device when to communicate the one or more responses to the interrogator.
60. The method of claim 50, wherein the one or more responses is communicated via the transmitter modulating an radio frequency (RF) field provided by the interrogator.
61. The method of claim 50, wherein the one or more responses includes the bit string.
62. The method of claim 50, wherein the RFID device is configured for use in a wireless payment system; and the method further comprises:
- storing in a memory of the RFID device an identification code to identify a person to be charged for payment.
63. The method of claim 50, further comprising: randomly picking an integer by the RFID device from a number of integers to communicate the one or more responses in a first slot with a probability corresponding to the randomly picked integer in accordance with the slotted anticollision algorithm, wherein the first command is to indicate the number of integers.
64. The method of claim 63, further comprising:
- receiving in the receiver of the RFID device from the interrogator a second command, the second command to indicate a different number of integers for the RFID device to use in accordance with the slotted anticollision algorithm.
65. A method implemented in a system having an interrogator and at least a first radio frequency identification (RFID) device and a second RFID device, the method comprising:
- providing a radio frequency (RF) field using at least one antenna of the interrogator, wherein a plurality of RFID devices are to modulate the RF field to transmit responses to the interrogator;
- sending from a transmitter of the interrogator a first signal after the plurality of RFID devices are disposed in the field and before any of the plurality of RFID devices transmit responses to the interrogator, the first signal including a bit string comprising multiple bits;
- storing in the first RFID device a first set of bits;
- receiving in the first RFID device the first signal;
- comparing the bit string received in the first signal with the first set of bits by the first RFID device to determine whether the first RFID device is selected by the interrogator;
- if the first RFID device is selected by the interrogator, picking a first random integer by the first RFID device from a variable range of random integers to associate the first random integer with a first time slot in accordance with a slotted anticollision algorithm and modulating the RF field to communicate a first identification code of the first RFID device during the first time slot;
- storing in the second RFID device a second set of bits;
- receiving in the second RFID device the first signal;
- comparing the bit string received in the first signal with the second set of bits by the second RFID device to determine whether the second RFID device is selected by the interrogator;
- if the second RFID device is selected by the interrogator, picking a second random integer by the second RFID device from a variable range of random integers to associate the second random integer with a second time slot in accordance with the slotted anticollision algorithm and modulating the RF field to communicate a second identification code of the second RFID device during the second time slot; and
- receiving in a receiver of the interrogator responses to the first signal in accordance with the slotted anticollision algorithm.
66. The method of claim 65, wherein the first identification code includes a first random number generated by the first RFID device; and
- the second identification code includes a second random number generated by the second RFID device.
67. The method of claim 66, wherein the receiving comprises receiving in the receiver of the interrogator the first random number from the first RFID device during a period of time associated with the first time slot; and
- receiving in the receiver of the interrogator the second random number from the second RFID device during a period of time associated with the second time slot; and
- wherein the method further comprises: sending a first acknowledge signal to acknowledge the first RFID device in response to the receiving of the first random number; and sending a second acknowledge signal to acknowledge the second RFID device in response to the receiving of the second random number.
68. The method of claim 66, further comprising:
- sending, using at least one antenna of the interrogator, a command that includes the first random number to individually identify the first RFID device, after receiving the first random number and the first identification code from the first RFID device.
69. The method of claim 68, further comprising:
- receiving in the interrogator a first identifier from the first RFID device to identify a person with whom the first RFID device is associated; and
- receiving in the interrogator a second identifier from the second RFID device to identify a person with whom the second RFID device is associated.
70. The method of claim 69, further comprising:
- sending a second signal from the interrogator after sending the first signal, wherein the first identification code is communicated in response to receiving the second signal.
71. The method of claim 65, further comprising:
- sending a first acknowledge signal from the interrogator to acknowledge the first RFID device; and
- sending a second acknowledge signal from the interrogator to acknowledge the second RFID device.
72. A method implemented in a system having an interrogator and at least one radio frequency identification (RFID) device, the method comprising:
- providing a radio frequency (RF) field to interrogate using an antenna of the interrogator;
- sending an initial command from a transmitter of the interrogator to identify RFID devices disposed in the field, the initial command to be sent after the RFID devices are disposed in the field and before any of the RFID devices communicate any responses to the interrogator, the initial command to include a field specifying a plurality of bit values to select one or more of the RFID devices to participate in a slotted anticollision algorithm;
- wirelessly receive the initial command in a receiver of the RFID device, after the RFID device is disposed in the RF field of the interrogator;
- randomly selecting an integer value by the RFID device from a range of integer values in accordance with the slotted anticollision algorithm, the range to be adjustable and to be indicated to the RFID device by the interrogator;
- modulating the RF field using a transmitter of the RFID device to communicate one or more responses to the interrogator based at least in part on whether the plurality of bit values received from the interrogator identify the RFID device for response, wherein the one or more responses include a first identifier and are communicated in accordance with the randomly selected integer value in accordance with the slotted anticollision algorithm; and
- receiving in a receiver of the interrogator responses to the initial command in accordance with the slotted anticollision algorithm.
73. The method of claim 72, wherein the RFID device communicates at least a portion of an identification code to the interrogator, wherein the identification code identifies a person with whom the RFID device is associated.
74. The method of claim 72, wherein the one or more responses further include a second identifier communicated in accordance with the randomly selected integer value in accordance with the slotted anticollision algorithm.
75. The method of claim 74, wherein the first identifier comprises a random number generated by the RFID device; and
- the second identifier comprises a static code programmed into the RFID device.
76. The method of claim 72, further comprising:
- comparing the plurality of bit values by the RFID device to at least a portion of a number stored in the RFID device to determine whether the plurality of bit values received from the interrogator identify the RFID device for response;
- wherein the one or more responses to the interrogator include the number as a second identifier from the RFID device; and the method further comprises:
- sending a subsequent command specifically addressed to the RFID device using the first identifier.
77. The method of claim 76, wherein the one or more responses is communicated in a first slot in accordance with the slotted anticollision algorithm with a first probability corresponding to the integer value.
78. The method of claim 72, wherein the range is indicated to the RFID device by the initial command, and a different range is indicated to the RFID device by a subsequent command, wherein the subsequent command includes a field re-specifying the plurality of bit values to select one or more of the RFID devices.
79. A system, comprising:
- an interrogator having a communication field, the interrogator comprising: at least one antenna; a transmitter coupled to the antenna to send a select command, the select command including a set of parameters, the set of parameters including a bit string and describing a memory range, the memory range comprising multiple bit locations; a receiver to receive replies to the select command; and a circuit to determining whether the replies are collision-free, wherein the transmitter is to send an acknowledge command in response to a collision free reply; and
- a plurality of radio frequency identification (RFID) tags disposed in the communication field of the interrogator, each respective tag of the plurality of RFID tags comprising: respective memory to store a respective identification code that identifies a respective object to which the respective tag is affixed; a receiver to receive the select command that is sent from the interrogator after the plurality of RFID tags are disposed in the field and before any of the plurality of RFID tags communicate to the interrogator; a circuit to compare the bit string against the memory range of the memory to determine whether the respective tag is a member of a population of tags; a random generator to pick a respective random value if the respective tag is a member of at least a portion the population of tags, the random value associated with a respective slot, wherein a sequence in which the population of tags are to reply to the interrogator is determined by each respective slot; and a transmitter to backscatter a respective reply to the interrogator in accordance with the sequence if the respective tag is a member of at least the portion of the population of tags, the respective reply including a respective random number generated by the respective tag.
80. The system of claim 79, wherein the transmitter is to backscatter at least a portion of the respective identification code, if the respective tag is a member of at least the portion of the population.
81. The system of claim 80, wherein after receiving the respective random number from the respective tag, the interrogator is to access the respective tag individually by sending the respective random number to the respective tag.
82. The system of claim 81, wherein the memory range of the memory of the tag includes at least a portion of the random number.
83. The system of claim 79, wherein each respective random number generated by each respective tag is sixteen bits in length.
84. A system, comprising:
- an interrogator, comprising: an antenna having a communication field; a transmitter coupled with the antenna to transmit a first signal and subsequently a second signal, the first signal including parameters that describe a memory range and a bit string; and a receiver to receive responses;
- an object; and
- a radio frequency identification (RFID) tag affixed to the object disposed in the communication field of the interrogator, the tag comprising: tag memory; a receiver to receive the first signal that is transmitted from the interrogator to the tag after the tag is disposed in the communication field and before the tag communicates to the interrogator; a circuit to compare the bit string against the memory range of the tag memory to determine whether the tag is selected, the memory range of the tag memory storing a plurality of bits; a random number generator to pick a random value and associate the random value with a slot in accordance with an arbitration scheme for an inventory operation, if the tag is determined to be selected; a transmitter to provide a random number generated by the tag to the interrogator in accordance with the slot in response to receiving the second signal, if the tag is determined to be selected;
- wherein the interrogator is to send an acknowledge command to the tag in response to the interrogator receiving the random number.
85. The system of claim 84, wherein the transmitter of the tag is to further provide at least a portion of an identification code from the tag to the interrogator, wherein the identification code is stored in tag memory and identifies the object.
86. The system of claim 85, wherein the interrogator is to send an access command to the tag to individually access the tag, after the interrogator sends the acknowledge command and receives the at least a portion of the identification code, wherein the access command includes the random number.
87. The system of claim 86, wherein the random number is sixteen bits long.
88. The system of claim 84, wherein the plurality of bits includes at least a portion of the random number.
89. An interrogator, comprising:
- an antenna having a communication field;
- a transmitter coupled with the antenna to send a select command after a radio frequency identification (RFID) tag is disposed in the communication field and before the tag communicates to the interrogator, the select command including parameters that describe a memory range and a bit string, wherein the tag having tag memory and configured to receive the select command, and in response thereto, compare the bit string against the memory range of the tag memory to determine whether the tag is selected to respond, the memory range of the tag memory storing at least two bits; and
- a receiver coupled with the antenna to receive a random number generated by the tag from the tag in accordance with an arbitration scheme, if the tag is determined to be selected to respond with the random number.
90. The interrogator of claim 89, wherein the random number is stored in the tag memory.
91. The interrogator of claim 89, wherein the at least two bits include at least a portion of the random number.
92. The interrogator of claim 89, wherein the receiver is to further receive at least a portion of an identification code from the tag in accordance with the arbitration scheme, wherein the identification code identifies an object to which the tag is affixed.
93. The interrogator of claim 92, wherein the identification code is stored in the tag memory.
94. The interrogator of claim 89, wherein the random number is sixteen bits long.
95. The interrogator of claim 89, wherein the tag is to pick a random value and communicate the random number in a slot of time associated with the random number in accordance with the arbitration scheme.
96. The interrogator of claim 95, wherein the transmitter is to send an acknowledge command from the interrogator to the tag in response to the interrogator receiving the random number.
97. The interrogator of claim 96, wherein the transmitter is to further send a signal from the interrogator to the tag, after sending the select command from the interrogator to the tag and before the random number is received in the receiver from the tag, wherein the signal indicates to the tag the time to communicate the random number.
98. The interrogator of claim 89, wherein the transmitter is to further send a signal from the interrogator to the tag, after sending the select command from the interrogator to the tag and before the random number is received in the receiver from the tag, wherein the signal indicates to the tag when to communicate the random number to the interrogator.
99. The interrogator of claim 89, wherein the random number is backscattered from the tag to the interrogator.
100. The interrogator of claim 89, wherein the transmitter is to further send an acknowledge command from the interrogator to the tag in response to the interrogator receiving the random number.
101. The interrogator of claim 100, wherein the receiver is to further receiving at least a portion of an identification code from the tag in accordance with the arbitration scheme, wherein the identification code identifies an object to which the tag is affixed.
102. The interrogator of claim 101, wherein the transmitter is to send an access command to the tag to individually access the tag after the receiver receives the random number, wherein the access command includes a sixteen bit random number.
103. The interrogator of claim 102, wherein the sixteen bit random number is the random number generated by the tag and communicated from the tag to the interrogator in accordance with the arbitration scheme.
104. A system, comprising:
- an interrogator having a communication field; and
- a plurality of radio frequency identification (RFID) tags disposed in the communication field of the interrogator, the interrogator to send a first signal after the plurality of tags are disposed in the field and before any of the plurality of tags communicate to the interrogator, the first signal including a bit string and indicating a portion of memory, the portion of memory comprising multiple bit storage locations, the plurality of RFID tags comprising: a first tag having first memory storing a first set of bits in bit storage locations corresponding to the portion of memory; a first receiver to receive the first signal; a first circuit to compare the bit string against the first set of bits to determine whether the first tag is selected and to pick a first random value associated with a first slot in accordance with an arbitration scheme; and a first transmitter to send a first identification code that identifies a first object to which the first tag is affixed; and
- a second tag having second memory storing a second set of bits in bit storage locations corresponding to the portion of memory;
- a second receiver to receive the first signal;
- a second circuit to compare the bit string against the second set of bits to determine whether the second tag is selected and to pick a second random value associated with a second slot in accordance with the arbitration scheme; and
- a second transmitter to send a second identification code that identifies a second object to which the second tag is affixed.
105. The system of claim 104, wherein the first transmitter is to send a first random number generated by the first tag; and
- the second transmitter is to send a second random number generated by the second tag.
106. The system of claim 105, wherein the interrogator is to receive the first random number from the first tag during a period of time associated with the first slot, and in response thereto, send a first acknowledge signal to acknowledge the first tag; and
- wherein the interrogator is to receive the second random number from the second tag during a period of time associated with the second slot, and in response thereto, send a second acknowledge signal to acknowledge the second tag.
107. The system of claim 106, wherein after receiving both the first random number and the first identification code from the first tag, the interrogator is to access the first tag individually by sending a command that includes a number randomly generated by the first tag that identifies the first tag.
108. The system of claim 107, wherein the number randomly generated by the first tag that identifies the first tag is the first random number, and the first random number is 16 bits in length.
109. The system of claim 108, wherein after sending the first signal from the interrogator, the interrogator is to send a second signal, in response to which the first tag backscatters the first identification code.
110. The system of claim 104, wherein the interrogator is to send a first acknowledge signal to acknowledge the first tag and send a second acknowledge signal to acknowledge the second tag.
111. A radio frequency identification (RFID) tag, comprising:
- an antenna;
- a receiver coupled with the antenna to receive a first command sent from an interrogator after the tag is disposed in a communication field of the interrogator and before the tag communicates to the interrogator, the first command including a first set of fields comprising at least two first bit values, the receiver to further receive a second command from the interrogator, the second command including a second set of fields comprising at least two second bit values;
- a circuit to determine whether the two first bit values received from the interrogator match two corresponding bit values stored in the tag and to determine whether the two second bit values received from the interrogator match the two corresponding bit values stored in the tag; and
- a backscatter transmitter coupled with the antenna to transmit a first reply based, at least in part, on whether the two first bit values received from the interrogator match two corresponding bit values stored in the tag, the first reply including a random number generated by the tag, the transmitter to further transmit a second reply based, at least in part, on whether the two second bit values received from the interrogator match the two corresponding bit values stored in the tag, the second reply including a random number generated by the tag.
112. The RFID tag of claim 111, wherein the transmitter is to backscatter at least a portion of an identification code from the tag to the interrogator, wherein the identification code identifies an object to which the tag is affixed.
113. The RFID tag of claim 111, wherein the circuit is to pick a random value for a slot in accordance with an arbitration scheme, and the transmitter is to backscatter a signal to the interrogator at a time associated with the slot.
114. The RFID tag of claim 113, wherein the receiver is to receive an acknowledge command from the interrogator.
115. The RFID tag of claim 111, wherein the receiver is to receive an access command individually accessing the tag using a sixteen bit random number.
116. The RFID tag of claim 115, wherein the transmitter is to backscatter at least a portion of an identification code from the tag to the interrogator, wherein the identification code identifies an object to which the tag is affixed.
117. The RFID tag of claim 111, wherein the interrogator is to detect a collision upon receiving the first reply.
118. A method of conducting a financial transaction, comprising:
- sending an initial command from a transmitter via an antenna, the initial command to select one or more radio frequency devices, the initial command specifying a bit string having multiple bits;
- receiving a response from the radio frequency device, the response being in accordance with a slotted anticollision algorithm if the radio frequency device determines it has been selected via a comparison between the bit string and a plurality of bits stored in a memory of the radio frequency device, wherein the response communicates one or more identifiers of the radio frequency device in accordance with the slotted anticollision algorithm, and wherein in accordance with the slotted anticollision algorithm the one or more identifiers is to be communicated in a time slot with a certain probability;
- determining an account associated with an owner of the radio frequency device based at least in part on said one or more identifiers; and
- debiting the account for payment.
119. The method of claim 118, wherein the debiting of the account is associated with the payment of a toll.
120. The method of claim 119, wherein said transmitter is disposed within a toll booth, and said method further comprises operating said transmitter disposed within said toll booth at least when said radio frequency device issuing said response is in proximity thereto.
121. The method of claim 119, wherein the debiting of the account comprises receiving a credit card number against which the toll can be charged.
122. The method of claim 118, wherein the debiting of the account comprises receiving a credit card number which can be charged.
123. The method of claim 118, wherein the debiting of the account is for the payment of goods or services.
124. The method of claim 118, wherein the method further comprises:
- sending an acknowledge command from the transmitter to the radio frequency device if the transmitter receives the response without a collision error.
125. The method of claim 118, further comprising:
- individually addressing the radio frequency device by the transmitter using an access command, wherein the one or more identifiers communicated in the response comprises a random number and the access command includes the random number.
126. The method of claim 118, wherein the one or more identifiers comprises a number dynamically generated by the radio frequency device.
127. A method of conducting a financial transaction, the method comprising:
- transmitting, through one or more antennas using a transmitter of an interrogation apparatus, an initial command to select a respective device from one or more radio frequency devices that are within wireless communications range of the interrogation apparatus, the initial command specifying a bit string having multiple bits;
- receiving the initial command from the interrogation apparatus by the receiver of the respective device of the one or more radio frequency devices;
- comparing, by the respective device of the one or more radio frequency devices, the bit string specified in the initial command against corresponding bits stored in the memory of the respective device to deteiuiine whether the respective device is a member of a population of radio frequency devices selected according to the initial command;
- if the respective device is a member of the population, picking a respective random value by the respective device from a range of values to determine a respective slot and providing by the transmitter of the respective device a respective reply to the interrogation apparatus in accordance with the respective slot, the reply including at least a portion of an identifier of the respective device:
- determining an account associated with an owner of the respective device based at least in part on said at least a portion of said identifier of the respective device; and
- debiting said account so as to conduct said financial transaction.
128. The method of claim 127, wherein the debiting of the account is associated with the payment of a toll.
129. The method of claim 128, wherein said interrogation apparatus is disposed within a toll booth, and said method further comprises operating said interrogation apparatus disposed within said toll booth at least when said respective device issuing said response is in proximity thereto.
130. The method of claim 128, wherein the debiting of the account comprises receiving a credit card number against which the toll can be charged.
131. The method of claim 127, wherein the debiting of the account comprises receiving a credit card number which can be charged.
132. The method of claim 127, wherein the debiting of the account is for the payment of goods or services.
133. A method of conducting a financial transaction, comprising:
- sending an initial command from a transmitter via an antenna, the initial command to select one or more radio frequency devices, the initial command specifying a bit string having multiple bits;
- receiving a response from the radio frequency device, the response being in accordance with a slotted anticollision algorithm if the radio frequency device determines it has been selected via a comparison between the bit string and a plurality of bits stored in a memory of the radio frequency device, wherein the response communicates one or more identifiers of the radio frequency device in accordance with the slotted anticollision algorithm, and wherein in accordance with the slotted anticollision algorithm the one or more identifiers is to be communicated in a time slot with a certain probability; and
- receiving funds for the payment of goods or services based at least on part on the received response from the radio frequency device.
134. The method of claim 133, wherein said transmitter is disposed within a toll booth, and said method further comprises operating said transmitter disposed within said toll booth at least when said radio frequency device issuing said response is in proximity thereto.
135. The method of claim 133, wherein the method further comprises:
- sending an acknowledge command from the transmitter to the radio frequency device if the transmitter receives the response without a collision error.
136. The method of claim 133, further comprising:
- individually addressing the radio frequency device by the transmitter using an access command, wherein the one or more identifiers communicated in the response comprises a random number and the access command includes the random number.
137. The method of claim 133, wherein the one or more identifiers comprises a number dynamically generated by the radio frequency device.
4075632 | February 21, 1978 | Baldwin et al. |
4862453 | August 29, 1989 | West et al. |
4926182 | May 15, 1990 | Ohta et al. |
5142694 | August 25, 1992 | Jackson et al. |
5365551 | November 15, 1994 | Snodgrass et al. |
5479416 | December 26, 1995 | Snodgrass et al. |
5500650 | March 19, 1996 | Snodgrass et al. |
5550547 | August 27, 1996 | Chan et al. |
5583850 | December 10, 1996 | Snodgrass et al. |
5608739 | March 4, 1997 | Snodgrass et al. |
5621412 | April 15, 1997 | Sharpe et al. |
5625628 | April 29, 1997 | Heath |
5627544 | May 6, 1997 | Snodgrass et al. |
5649296 | July 15, 1997 | MacLellan et al. |
5805586 | September 8, 1998 | Perreault et al. |
5841770 | November 24, 1998 | Snodgrass et al. |
5966471 | October 12, 1999 | Fisher et al. |
5974078 | October 26, 1999 | Tuttle et al. |
5988510 | November 23, 1999 | Tuttle et al. |
6038455 | March 14, 2000 | Gardner et al. |
6061344 | May 9, 2000 | Wood, Jr. |
6072801 | June 6, 2000 | Wood et al. |
6075973 | June 13, 2000 | Greeff et al. |
6097292 | August 1, 2000 | Kelly et al. |
6104333 | August 15, 2000 | Wood, Jr. |
6118789 | September 12, 2000 | Wood, Jr. |
6130602 | October 10, 2000 | O'Toole et al. |
6130623 | October 10, 2000 | MacLellan et al. |
6150921 | November 21, 2000 | Werb et al. |
6157633 | December 5, 2000 | Wright |
6169474 | January 2, 2001 | Greeff et al. |
6177858 | January 23, 2001 | Raimbault et al. |
6185307 | February 6, 2001 | Johnson, Jr. |
6192222 | February 20, 2001 | Greeff et al. |
6216132 | April 10, 2001 | Chandra et al. |
6226300 | May 1, 2001 | Hush et al. |
6229987 | May 8, 2001 | Greeff et al. |
6243012 | June 5, 2001 | Shober et al. |
6265962 | July 24, 2001 | Black et al. |
6265963 | July 24, 2001 | Wood, Jr. |
6275476 | August 14, 2001 | Wood, Jr. |
6282186 | August 28, 2001 | Wood, Jr. |
6288629 | September 11, 2001 | Cofino et al. |
6289209 | September 11, 2001 | Wood, Jr. |
6307847 | October 23, 2001 | Wood, Jr. |
6307848 | October 23, 2001 | Wood, Jr. et al. |
6324211 | November 27, 2001 | Ovard et al. |
6415439 | July 2, 2002 | Randell et al. |
6459726 | October 1, 2002 | Ovard et al. |
6483427 | November 19, 2002 | Werb |
6566997 | May 20, 2003 | Bradin |
6570487 | May 27, 2003 | Steeves |
6707376 | March 16, 2004 | Patterson et al. |
6714559 | March 30, 2004 | Meier |
6771634 | August 3, 2004 | Wright |
6778096 | August 17, 2004 | Ward et al. |
6784787 | August 31, 2004 | Atkins |
6850510 | February 1, 2005 | Kubler et al. |
6919793 | July 19, 2005 | Heinrich et al. |
7026935 | April 11, 2006 | Diorio et al. |
7315522 | January 1, 2008 | Wood, Jr. |
7385477 | June 10, 2008 | O'Toole et al. |
RE40686 | March 31, 2009 | Wood, Jr. et al. |
7672260 | March 2, 2010 | Wood, Jr. |
20050060069 | March 17, 2005 | Breed et al. |
20090322491 | December 31, 2009 | Wood, Jr. |
WO 97/48216 | December 1997 | WO |
- USPTO Transaction History of related U.S. Appl. No. 09/026,043, filed Feb. 19, 1998, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. 6,118,789.
- USPTO Transaction History of related U.S. Appl. No. 09/026,045, filed Feb. 19, 1998, entitled “Method of Addressing Messages, Method of Establishing Wireless Communications, and Communications System,” now U.S. Patent Serial No. 6,072,801.
- USPTO Transaction History of related U.S. Appl. No. 09/026,050, filed Feb. 19, 1998, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. 6,061,344.
- USPTO Transaction History of related U.S. Appl. No. 09/026,248, filed Feb. 19, 1998, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. 6,275,476.
- USPTO Transaction History of related U.S. Appl. No. 09/556,235, filed Apr. 24, 2000, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. 6,282,186.
- USPTO Transaction History of related U.S. Appl. No. 09/617,390, filed Jul. 17, 2000, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. 6,307,847.
- USPTO Transaction History of related U.S. Appl. No. 09/820,467, filed Mar. 28, 2001, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. 7,315,522.
- USPTO Transaction History of related U.S. Appl. No. 09/551,304, filed Apr. 18, 2000, entitled “Method of Addressing Messages and Establishing Communications Using a Tree Search Technique that Skips Levels,” now U.S. Patent Serial No. 6,226,300.
- USPTO Transaction History of related U.S. Appl. No. 09/773,461, filed Jan. 31, 2001, entitled “Method of Addressing Messages, Method of Establishing Wireless Communications, and Communications System,” now U.S. Patent Serial No. 6,307,848.
- USPTO Transaction History of related U.S. Appl. No. 10/652,573, filed Aug. 28, 2003, entitled “Method of Addressing Messages and Communications System,” now U.S. Patent Serial No. RE40,686.
- USPTO Transaction History of related U.S. Appl. No. 10/693,696, filed Oct. 23, 2003, entitled “Method and Apparatus to Select Radio Frequency Identification Devices in Accordance with an Arbitration Scheme.”
- USPTO Transaction History of related U.S. Appl. No. 10/693,697, filed Oct. 23, 2003, entitled “Method of Addressing Messages, Method of Establishing Wireless Communications, and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/143,395, filed Jun. 1, 2005, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/270,204, filed Nov. 8, 2005, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/416,846, filed May 2, 2006, entitled “Method and Apparatus for an Arbitration Scheme for Radio Frequency Identification Devices.”
- USPTO Transaction History of related U.S. Appl. No. 11/855,855, filed Sep. 14, 2007, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/855,860, filed Sep. 14, 2007, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/859,360, filed Sep. 21, 2007, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/859,364, filed Sep. 21, 2007, entitled “Communications Systems for Radio Frequency Identification (RFID).”
- USPTO Transaction History of related U.S. Appl. No. 11/862,121, filed Sep. 26, 2007, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/862,124, filed Sep. 26, 2007, entitled “Method of Addressing Messages and Communications.”
- USPTO Transaction History of related U.S. Appl. No. 11/862,130, filed Sep. 26, 2007, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/865,580, filed Oct. 1, 2007, entitled “Method of Addressing Messages, Method of Establishing Wireless Communications, and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 11/865,584, filed Oct. 1, 2007, entitled “Method and Apparatus to Manage RFID Tags.”
- USPTO Transaction History of related U.S. Appl. No. 12/493,542, filed Jun. 29, 2009, entitled “Method of Addressing Messages, Method and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 12/541,882, filed Aug. 14, 2009, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 12/556,530, filed Sep. 9, 2009, entitled “Method of Addressing Messages and Communications System.”
- USPTO Transaction History of related U.S. Appl. No. 12/604,329, filed Oct. 22, 2009, entitled “Method of Addressing Messages, Method of Establishing Wireless Communications and Communications System.”
Type: Grant
Filed: Jun 29, 2009
Date of Patent: Mar 20, 2012
Assignee: Round Rock Research, LLC (Mount Kisco, NY)
Inventor: Clifton W. Wood, Jr. (Tulsa, OK)
Primary Examiner: Brian D Nguyen
Attorney: Gazdzinski & Associates, PC
Application Number: 12/493,542
International Classification: H04W 4/00 (20090101);