“RFID (radio frequency identification) is a non-contact automatic identification technology that emerged in the 1990s. It uses the characteristics of its radio frequency signal space propagation-through spatial coupling (alternating magnetic field or electromagnetic field) to achieve non-contact information transmission , And realize the automatic recognition of the recognized object through the transmitted information. The identification process does not require physical contact, and does not require manual management to complete the writing and reading of tag information. Using RFID technology, multiple targets and moving targets can be identified at one time.
RFID (radio frequency identification) is a non-contact automatic identification technology that emerged in the 1990s. It uses the characteristics of its radio frequency signal space propagation-through spatial coupling (alternating magnetic field or electromagnetic field) to achieve non-contact information transmission , And realize the automatic recognition of the recognized object through the transmitted information. The identification process does not require physical contact, and does not require manual management to complete the writing and reading of tag information. Using RFID technology, multiple targets and moving targets can be identified at one time. In addition, the Electronic tag is readable and writable, can store a large amount of information, has strong security and confidentiality, and is not afraid of external dust, stains, etc., and has strong environmental adaptability. It is precisely because of the advantages that these other identification methods do not have that RFID technology has a wide range of applications and huge development prospects in the fields of logistics, transportation, transportation, production, and anti-counterfeiting.
This article uses AS3990 chip as the core to design a UHF RFID handheld reader with MSP430f149 chip as the controller. For electronic tags that comply with the EPCGen2 standard, it can complete all the read, write and control operations. Its mobile intelligent management function is mainly used in logistics, supply chain, warehouse and other occasions.
2. System overview and design principles
In the radio frequency identification system, the RFID reader is a key device used to identify tags and send the collected data information to the background for processing. It plays a key role in ensuring the correctness and reliability of the RFID system. At the same time, the RFID reader can also write to the tag and store the information in the tag. The design of the reader is completely based on the ISO/IEC18000-6C standard protocol.
2.1 Introduction to ISO/IEC18000 -6C protocol
The ISO/IEC18000-6C protocol stipulates that during data transmission, the high byte is transmitted first, and the modulation method of the forward link is ASK and PIE encoding. The anti-collision algorithm is based on probability and slotting algorithm; its backward The link realizes data transmission through backscatter modulation technology, which can choose Miller coding or FM0 coding. The 6C standard uses a relatively simple encryption algorithm to prevent sensitive data from spreading out when the reader obtains the tag information. This algorithm only encrypts the information when the reader transmits data to the tag, and the data information transmitted from the tag to the reader is not encrypted. The realization process is that the reader will obtain a 16bit wide random number from the tag and the future The transmitted 16bit wide data is modulo 2 and calculated to obtain the ciphertext, and then the original data sent by the reader is obtained by decrypting the tag.
2.2 Anti-collision mechanism
There is a 16-bit random number generator in the label to solve the problem of anti-collision algorithm. The query command contains the slot counter parameter Q. After the tag receives the query command, the participating tag should select a random value in the range of (0, 2 Q -1 ), and load the selected value into its counter, and the tag with a value of zero will be converted into a response state. And immediately respond to select tags with a non-zero value, and then switch to the arbitration state, and wait for the query adjustment or query command to be issued.
The interrogator uses three basic operations to manage the tag group, namely selection, inventory, and access. Each operation consists of one or more commands. The three basic operations are defined as follows:
(1) Selection: The reader selects the tag group to facilitate inventory and access. The interrogator can use one or more selection commands to select a specific tag group before inventory.
(2) Inventory: The process by which the interrogator recognizes the label. The interrogator transmits the query command in one of the four calls to start an inventory cycle. One or more tags can respond. The interrogator checks a tag response and requests the tag to send PC, EPC and CRC-16.
(3) Access: The process of the interrogator’s transaction with each tag, that is, reading or writing tags. The label must be identified before access, and access consists of multiple commands. If multiple tags respond, the reader can resolve the 16bit key sent by one of the tags by detecting and resolving the conflict of the waveform, and the other unresolved tags will receive the wrong 16bit key and return to the arbitration state. After issuing the query command, an inventory cycle will be started, and the interrogator will issue one or more query adjustment or repeat query commands. The query adjustment command only repeats the previous query command, which can increase or decrease the value of Q, but will not introduce new labels into the inventory cycle. Repeating the query command will repeat the previous query command, but the parameters will not change, and no new label will be introduced into the inventory cycle. After the tag in the arbitration or response state receives the query adjustment command, it first adjusts Q, then selects a random value in the range of (0,2 Q-1), and loads the value into the slot counter. The tag selected with a value of zero should switch to the response state and respond immediately; the tag with a non-zero value selected should be switched to the arbitration state and wait for the next command.
3. System hardware designcount
3.1 Main chip introduction
MSP430 adopts the current popular reduced instruction set (RISC) structure, one instruction can be executed in one clock cycle, so that the instruction speed can reach 8MIPS when the MSP430 is working with an 8MHz crystal oscillator. It has up to 64KB of addressing space including ROM, RAM, flash RAM and peripheral modules. MSP430 series single-chip microcomputers combine TI’s high-performance analog technology, and each Chengdu integrates richer on-chip peripherals. Depending on the model, the following functional modules may be combined: watchdog, analog comparator A, timer A, timer B, serial port 0, 1, hardware multiplier, LCD driver, 10-bit and higher precision ADC, DAC, etc. Compared with other microcontrollers, MSP430 series single-chip microcomputers can greatly extend the service life of the battery, and have ESD protection and strong anti-interference ability.
AS3990HUF reader chip is a 900M reader system with integrated analog front end and exchange protocol system. And it complies with ISO18000-6C (EPCGen2 specifically for logistics management) standards. It has low-voltage transmission code, low-voltage decoder, CRC code verification, optional clock output, a voltage output within 20mA for use by external devices, provides voltage for the RF output stage, and has ASK (keying) and PR-ASK modulation ( Among them, ASK is adjustable modulation), supports three modes of frequency hopping, power off, standby and working, and can also be powered by USB.
3.2 Hardware design
3.2.1 RF module design:The radio frequency module part uses AS3990HUF as the core chip, and the external power amplifier makes its power meet the necessary conditions for long-distance reading and writing transmission. The radio frequency part is the front-end part of the reader. When the control circuit sends and receives instructions, the radio frequency circuit will complete the carrier modulation of the sending instruction and send the carrier wave to the radio frequency tag, and demodulate the returned received signal and process it. The baseband signal is sent to the control circuit.
3.2.2 Digital module design:The digital part design is based on the MSP430 series single-chip microcomputer as the core chip. The main functions of the digital part include the realization of the waveform encoding of the command sent to the label, the decoding of the return signal, the control of the read and write command flow, the error control, the sending of control commands and the receiving of data, and the realization of The interface protocol between the upper computer application programs, the collection and processing of input and output signals, the related algorithms to realize the reader function, the control of the working mode of the radio frequency circuit, etc. (including the control of the output power, the way of reading tags, the carrier frequency, etc. )
3.2.3 Antenna design:The antenna used in the design is mainly to radiate electromagnetic waves and receive the electromagnetic wave signals returned from the tag. By adopting the circularly polarized microstrip antenna scheme, a gain of 3db can be achieved, and the size is 80mm*80mm*6 mm.
4. System software design
4.1 Drive software design
The programming of hardware drive software adopts C language, mainly adopts modular programming idea. The main program of the system is a complete RFID reader system, which is used to control the working status and working mode of each module of the hardware circuit, and coordinate the work of the whole reader’s reading and writing process. The main program of this reader hardware driver can be divided into the following parts: serial communication program, read and write label program, anti-collision program, data processing program, etc. Figure 2 is a flowchart of the main program for reading and writing electronic tags:
Figure 2 Flow chart of the main program for reading and writing electronic tags
4.2 Application software design
The application software is located on the upper computer and runs on the windows operating system. Therefore, C++ language programming is adopted to realize the reading and writing of data in the electronic tag, reading user data, storing user data, encrypting and decrypting the label and “unmodifiable” operations, and setting the working mode of the reader Wait. Figure 3 is a block diagram of the software system:
Figure 3 System software block diagram
The RFID UHF handheld reader designed in this paper fully combines the advantages of software and hardware, and can read and write EPCGEN2 electronic tags. Using the antenna designed in the article, the tag reading distance can be up to 1.4m, and the tag writing distance can be up to 1m. When using multiple tags, the anti-collision performance is good, and 20 electronic tags can be read at the same time. The reader can connect to the host computer through the serial port and transmit data. The reader has the advantages of low cost, high sensitivity, stable communication, reliable information, simple operation, etc. It has broad application prospects in various industries and is of great significance to the promotion of RFID.