Interrogation Zone Considerations
Special considerations should be addressed when setting up an RFID system with multiple interrogators that have overlapping interrogation zones. You can deal with these types of situations in several ways, such as using dense interrogator mode, interrogator synchronization, arbitration, and anticollision protocols. Some of these features are only available with Generation 2 devices.
Dense Interrogator Mode
Dense interrogator mode, also called dense reader mode, provides each interrogator the capability to operate at a slightly different frequency, which helps reduce the radio interference between interrogators. Other techniques are used as well, such as Listen Before Talk (LBT), frequency hopping, or a combination of the two.
Listen Before Talk
Using the LBT technique, an interrogator tries to "listen or hear" whether another interrogator is using a channel. If it learns that another interrogator operates on that channel, it rolls to another channel to avoid interfering with the other interrogator.
Interrogation signals hop between channels within a certain frequency spectrum. In the United States, they can hop between 902 MHz and 928 MHz, and they can be required to listen for a signal before using a channel. These guidelines are supplied by the FCC and are discussed in Chapter 9, "Standards and Regulations."
In certain applications that require multiple interrogators operating at the same time and in the same proximity, it is necessary to coordinate their transmitting and receiving functions. The radio transmissions from the interrogator's antennas may interfere with other interrogators, so much so that the tags are unable to completely understand the information being read or written and the interrogator may misread the tag. The level of interference depends on a number of factors, which include
- The sizes and types of the antennas
- The output power of the antennas
- The distances between antennas
- The presence (or absence) of shielding
Variations in local conditions can affect the general noise background. For example, radio frequency interference (RFI) and electrical noise can travel from one interrogator zone to another via conducted metal structures. Metal structures can include the frames of metal buildings, reinforcing bars in concrete floors, and power or data cables.
Several synchronization methods are used; we discuss the main three:
- Software synchronization
The software synchronization method can be used when multiple interrogators are connected to the same communication bus. As interrogators are individually addressable, the controlling (host) computer is able to command each interrogator to transmit at a separate time so that it is not possible for more than one interrogator to be transmitting at the same time.
In the multiplexing method, a single interrogator is connected through a switching box (MUX) to multiple antennas. The interrogator output is directed to each antenna in turn, again ensuring that only one antenna is transmitting at a time.
Multiplexers need to take advantage of solid state circuitry for switching versus mechanical switching. Because solid state switching introduces signal loss, the interrogator power output is normally increased to compensate for the discrepancy. Mechanical switches or relays are not feasible due to their construction and use of moving parts. The moving parts undergo high levels of wear, which reduce their functionality during high loads or peaks. Ultimately, the constant switching will result in failure of the mechanical switch.
Multiplexing divides the time available to read a tag by the number of channels on the multiplexer. Because of this timing issue, the interrogator needs additional time to ensure a complete read has been achieved, especially if the tags are moving quickly through an interrogation field.
Shielding prevents interference between interrogators. It also prevents tags that are passing outside the interrogating system from being interrogated by an adjacent system, and when antennas are close together, shielding prevents the same tag from being interrogated by an adjacent antenna.
Shielding can also act as a barrier to prevent metal sheets or other objects that have been left next to an antenna from affecting the performance of tags and interrogators.
Shielding can also be used when a large concentration of other devices operating in the 902–928 MHz spectrum is present, such as older 900 MHz wireless systems or cordless phones.
Arbitration is a method of identifying all of the transponders in the reader's field. Arbitration precedes the anticollision mechanism.
Arbitration works differently in Generation 1 and Generation 2 protocols. In Generation 1 all the tags have to communicate their nth bit to the reader. If the received signal (consisting of nth bits of all tags) is composed of 1 and 0, the read/write module assigns 0 to the nth bit. If the received signal is composed of 0 only, the read/write module assigns 0 to the nth bit. If the received signal is composed of 1 only, the read/write module assigns 1 to the nth bit. Then the tags communicate bit n-1 to the reader and it goes through the same process as the nth bit. The same way is identified bit n-2 until bit 1. At the end of this process, a whole tag has been identified. This tag is disabled so that it does not answer any longer during subsequent arbitrations. Each time a whole tag is identified, it is "put to sleep" and the whole process starts all over until all of the tags are identified.
Sometimes the tag may take tag longer to wake up or it can never wake up. To avoid this problem, Generation 2 does not use the sleep or quiet state, but two states—A and B. If the reader decides to interrogate only A tags, as it interrogates them it changes their state to B. Now it reads all B tags and changes their state to A. That way the reader knows how many tags it read. This method is called AB Symmetry.
To identify each tag, Generation 2 uses Q algorithm. Gen 2 tags have the ability to generate random numbers. The reader will tell the tags the range in which they should generate a random number by issuing a query command with a Q value ranging from 0 to 15. If it gets back no response to its queries, it will automatically decrease the Q value. If it gets more than one tag responding, it will increase the Q value, thereby increasing the range of numbers that can be generated by the tags. This method is quite complex to be explained in detail in this book but it is good to know that it assures that the reader is talking only to the tags that it intends to.
Collisions and Anticollision Methods
When two or more tags respond simultaneously, this is known as a collision. Anticollision processing is the means by which the interrogator distinguishes one tag from the others so only one tag is processed at a time.
Anticollision algorithms are commonly classified as either probabilistic or deterministic.
In probabilistic algorithms (also called asynchronous), the tags respond at randomly generated times. There are several variations of probabilistic algorithms, depending on the amount of control the interrogator has over the tags. Many of them are based on the ALOHA scheme in networking. This scheme involves a node transmitting a data packet after receiving a data packet. If a collision occurs, a node becomes saturated and transmits the packet again after a random delay. The interrogator keeps transmitting until the collision does not happen. The times at which interrogators can respond can be slotted or continuous. This mode makes slight restriction in the transmission independence of individual data packets. If packet collisions happen under slotted ALOHA mode, the packets overlap completely, and that considerably increases the data transfer.
In deterministic algorithms (also called synchronous), the interrogator sorts through the tags based on their unique identification number (UID). The tags do not have to rely on a complete collision-free transmission and do not have to take turns communicating to the interrogator. The simplest deterministic scheme is the binary tree/tree-walking scheme, in which the interrogator searches the tree of all possible identification numbers. This search is quite time consuming, and it is based on the knowledge of the tag's UID. At each node in the tree, the interrogator checks for responses. Only tags whose identifier is a child of the checked node respond. The lack of a response implies that the subtree is empty. The presence of a response gives the interrogator an indication as to where to search next.
There are two other common types of anticollision algorithms, FM0 and Miller Subcarrier.
- FM0 is currently used in ISO standards. This algorithm is fast but more susceptible to interference.
- Miller Subcarrier is slower but better in RF noisy environments and is supported by Generation 2 readers. This algorithm uses narrow spectrum for the tags to send back their signal and fits it between the channels used by the reader. That way the RF signals coming from the reader do not cover the signals coming back from the tags. Miller Subcarrier uses advanced filtering techniques to separate the tag's response from the reader's transmissions and other noise compared to FM0.
The five basic command operations to manage tag populations are
- Select— This command is used to determine which groups of tags will respond. Prior to conduction of an inventory, a Select command makes it possible to conditionally isolate only tags with desired characteristics such as a particular date code, manufacturer code, or others. By targeting only a certain segment of EPC memory containing this description, readers can easily sort through the tag population and access just a certain group of tags within its field.
- Inventory— This command is used to identify (singulate) individual tags from a group.
- Access— This command is used after the tags have been singulated and individual commands can now be addressed to those tags. Access commands allow the interrogator to write individual tag memory fields directly (with EPC and/or password data), lock the tag, or kill the tag.
- Lock— This command allows a reader to lock individual passwords, preventing subsequent reads or writes, or lock individual memory banks, preventing subsequent writes.
- Kill— This command permanently disables a tag from talking back to a reader, which renders the tag inoperative. This feature can be used to address privacy concerns; however, the Kill command also can be issued maliciously. To prevent unauthorized kills, this command will become password protected as soon as the specifications have been defined for killing a tag.