RFID UHF Inventory. How to find all tags?

    In this article I will not go into the descriptions of RFID technology, there are many resources devoted to this topic. I will touch on only one nuance of the settings, and the algorithm for controlling the RFID scanner, which no one notices, but which allows to achieve phenomenal accuracy and completeness of reading tags in a stationary format. When there is some kind of closed volume and it is necessary to constantly and accurately monitor all tags present, their appearance and disappearance.


    Introducing RFID UHF technology to inventory a large quantity of goods in one volume, we faced the problem of unstable reading of the entire volume of tags. When the scanner was working, some of the tags were well read and repeatedly responded to the reader signal. But there were tags in the worst conditions of admission, and these. Tags were not read every cycle, they simply did not reach the turn.

    For us, for the successful implementation of the project, it was necessary to reduce the label skip error, at least to 1 error per 1000 read cycles. At the same time the number of tags could reach 250 pieces. And we managed to solve this problem. In the process, many issues related to hardware and software were optimized. But the key was the technology that I want to describe here.

    The main problem of error-free reading of a large volume of tags was the different quality of communication with different tags. Tags are in good communication conditions, for the read cycle responded hundreds of times. Tags that are in poor conditions of communication, located far away, or being screened, did not respond even once. We managed to solve this problem by setting up the scanner’s operation and its polling algorithm.

    The idea was that the tags should not interrupt each other, and even the most poorly readable tag could respond and transmit information to the scanner.

    In the EPC gen 2 exchange protocol that is used to exchange data between the scanner and the tags, there is a mode of operation that allows us to achieve the goal we need. This is called "session." There are 4 of them. 0 and 1 are not interested in us. But 2 and 3 Work exactly in the mode that we need. There is still such a thing as a flag. Flags 2 "A" and "B".

    It all works as follows: Turn on the scanner in the "Session 2" mode and set the flag "A". In this mode, each label responds only once and is locked until the scanner switches the flag to mode “B”. The program runs several scan cycles on the “A” flag until the scanner stops receiving responses from the tags. In this mode, the tags do not interfere with each other, those who have the best communication conditions respond first and become silent without interfering with the rest in the worst conditions. And we get a response from all the tags that are in the field of action of the scanner. After working with the flag "A", the scanner switches to the flag mode "B" and re-reads all the tags. As a result, combining the list of labels obtained from 1 and 2 scans,

    In the case of our project, with a read cycle every 10 minutes, the error of not reading the label present is encountered no more than once a week.

    If you have questions I will answer with pleasure.

    Also popular now: