beautypg.com

ThingMagic Mercury API v1.23.0 User Manual

Page 125

background image

How UHF RFID Works (Gen2)

Performance Tuning

125

/reader/gen2/target

The remaining Gen2 settings control how soon, and how often, a tag responds to a
reader. If all tags in the field responded immediately to the reader, their responses would
collide and the reader would rarely be able to decode responses from any tags. To avoid
this, the Gen2 protocol provides a variable number of time slots in which tags can
respond. The reader announces to the tag population the number of response
opportunities it will give to them (calculated from a value it sends, called “Q”). Each tag
randomly picks a number within this range and the reader starts announcing response
slots. Essentially the reader announces the start of a round and then repeatedly shouts
“next”. Each tag keeps count of how many “nexts” there has been and responds when
their selected slot comes around. The “Q” value that is announced is a number from 0 to
15. The number of slots is 2^Q power. The number of slots increases rapidly with the “Q”
value: 1, 2, 4, 8, 16, etc.

If “Q” is too large, many response opportunities will go unanswered and the inventory
round will take longer than it should. If “Q” is too small, one or more tags will be more
likely to respond in the same time slot, resulting in several inventory rounds having to be
run before all tags respond. In the extreme case, where there are many more tags in the
field than slots available, response collisions will always occur and the inventory round
will never complete successfully. The ideal number of slots has been determined to be
around 1.5 times the number of tags in the field. If the tag population will be variable, the
user can set the ThingMagic reader to automatically determine the Q based on the results
of successive rounds (it increases the “Q” if there are many collisions, and decreases the
“Q” if there are too many unanswered response slots.)

There are two additional Gen2 settings which control whether, and how often, a tag
participates in an inventory round. When initially setting up the response queue, the
reader also sends two other pieces of information to all tags:

1. How long they should delay until they re-respond (called the “session” value) and

2. What state (“A” or “B”) they should be in to participate in the inventory round. The “A”

state indicates that the tag has not yet responded to an inventory round. The “B”
state indicates that it has. The session setting determines how long the tags wait in
the “B” state before returning to the “A” state so they can participate again.

When you call one of the

Read Methods

a query is initiated and the reader performs one or

more inventory rounds depending on the timeout period (longer timeouts result in more
inventory rounds being executed). During an inventory round, the reader attempts to read
all tags within the field. The reader operates in only one session for the duration of an
inventory round.

The “Session” setting, which controls how often tags respond to inventory rounds, has 4
options, but two behave identically.