摘 要:设计实现了一款小型化便携式UHF RFID读写器。采用Impinj公司的射频收发芯片R1000作为核心芯片,并结合电源管理模块、ARM7及其外围电路的设计,实现工作频率为860 MHz~960 MHz软件可调,可兼容EPC global Gen2和ISO18000-6C两种标准。在8 dBi天线下,该读写器实现3 m以上的读写距离,并且可多标签读写。
关键词:UHF RFID; 读写器; R1000;ARM7; 便携式
R1000芯片是Impinj公司的UHF RFID 便携式读写器核心模块。R1000内部集成了约90%以上的射频收发系统所需的元件,采用Atmel公司的ARM7处理器AT91SAM7S256作为MCU,增加外部驱放芯片设计,可在8 dBi增益的天线下实现稳定读写距离3 m以上。
1 系统设计
本设计中,UHF RFID读写器硬件部分设计主要包括三部分[1-2]: (1)R1000及外围电路;(2)ARM7及外围电路;(3)电源管理模块。如图1所示,R1000及其外围电路完成射频信号的收发、变频、数模/模数转换以及数据的调制/解调;ARM7及其外围电路对来自R1000或主机的数据按照协议进行处理,实现协议功能,并提供对外的通信接口;电源管理模块接收外部3.7 V DC输入转换成系统其他模块所需要的1.8 V、3.3 V、5 V,并提供相应的带负载能力。
1.1 R1000及其外围电路
R1000内部集成了低噪声放大器、混频器、中频滤波器、压控振荡器、本振、ADC/DAC、锁相环和功放等多个功能模块[3]。结合其外围电路,R1000可完成射频信号的发射和接收、混频、滤波、调制解调、模数转换和数模转换等功能,其电路结构如图2所示。
R1000工作于UHF ISM频段(840 MHz~960 MHz),结合简单的射频前端电路,可实现完整的射频收发功能。这些外围电路主要包括:耦合器、外部功放、功率检测以及温度检测模块。
1.1.1 功率检测与温度检测
R1000可采用单天线或双天线模式,根据实际需要,本设计采用单天线模式。单天线前向、反向功率检测总体结构如图3所示,其中的“功率检测1”输出的直流电平表示反向平均功率,而“功率检测2”输出的直流电平表示正向平均功率。如果正反向平均功率比较接近,且正向功率比较正常,说明天线端阻抗失配比较严重,需要对电路进行检查。
R1000的正常工作温度范围是-20℃~+75℃。为了了解R1000工作环境的温度,本设计采用温度检测芯片对R1000芯片的工作环境温度进行检测,并由R1000内部程序进行处理,防止因极端环境温度使R1000进入异常工作状态,甚至物理损坏。
1.1.2 耦合器设计
经过功放放大的射频信号直接进入耦合器。该信号经过直通端进入发射通道,正向耦合端的输出信号用于前向功率检测,而反向耦合端的信号用于检测天线端的回波损耗。如图3所示。
(1)前向功率检测主要是检测功放输出信号功率,然后按照本地UHF RFID协议相关规定进行功率校正;也可以作为外部本振信号输入,用于与接收的射频信号进行混频,产生零中频信号。具体的实现方法是:(1)功率检测通过高阻跨接在耦合器的正向耦合端,通过电阻分压和电容耦合,进入功率对数检测芯片,映射出相对应的直流电压值,输入到ARM7,结合线路损耗计算得出功放输出信号的功率。(2)耦合器的正向耦合端(Pin4)得到的信号经过一个定值衰减网络,再经过单端转差分信号,直接输入到R1000,作为外部本振,并且对信号进行峰值功率检测。
(2)反向功率检测主要是检测天线的回波损耗(根据天线的回波损耗和输入的功率,也可计算出天线发射出的功率,因此也称为发射功率检测)。在天线端阻抗严重失配的情况下,ARM7将关闭功放电源,以保护功放不被损坏。具体检测方法是:(1)功率检测通过高阻跨接在耦合器的反向耦合端,通过电阻分压和电容耦合,进入功率对数检测芯片,映射出相对应的直流电压值,输入到R1000,结合线路损耗计算得出发射信号的功率。(2)耦合器的反向耦合端(Pin3)得到的信号经过一组衰减网络,再经过单端转差分,直接输入到R1000作为接收信号并且进行接收信号的峰值功率检测。
1.1.3 外部驱动放大器设计
由于R1000的输出功率最大只有+14 dBm,通常其输出功率为-6 dBm~+10 dBm。在这样的发射功率下,系统对标签的读取距离最大只有约30 cm。为了达到更远的读取距离,需要在R1000的输出端加上一个驱动电路模块,结合R1000自身的发射功率调节功能,可以使该系统工作在不同使用场合的不同作用距离要求。
1.2 ARM7及其外围电路
根据R1000的应用文档说明,本方案采用了ATMEL公司的ARM7芯片AT91SAM7S-256作为MCU,用来实现空中接口协议,完成调试功能,以及通过USB接口或UART口与上位机进行通信[3],如图4所示。
在系统开始调试时,首先将R1000底层驱动程序的二进制代码通过JTAG接口,烧写到MCU内部Flash中预先划分的存储区域内。然后连接MCU和PC机之间的UART接口,在PC机的超级终端界面中,对MCU的通信协议和USB接口驱动进行配置。如果配置成功,重新上电后,超级终端界面中将可以看到MCU与R1000之间简单的通信测试成功的打印信息。至此,MCU及其外围电路调试完成,可以正常工作了。
1.3 电源管理模块
本文设计的UHF RFID读写器核心模块作为一个独立功能模块,可直接应用在PC上或是嵌入到其他手持设备中,所以本设计的电源管理模块所考虑的工作电压是5 V的DC输入或是手持电池输入(3.7 V),再经过内部的电源模块转换成模块所需要的各种电压[5],其中数字部分需要的电压:1.8 V、3.3 V,射频部分需要的电压为1.8 V、3.3 V、5 V。
2 系统测试
硬件电路完成后,为测试驱动放大器的性能,以及最终获得发射天线的信号功率谱(频带902 MHz~928 MHz),采用了矢量分析仪和频谱仪等测试仪器。
结果表明,该读写器可在8 dBi天线下,实现3 m以上的读写距离,实现了良好的性能。整个读写器PCB尺寸为6.5 cm×4 cm,对外提供了USB2.0和UART等通信接口,可以很方便地嵌入到其他host设备尤其是便携式设备中使用。
参考文献
[1] 田丹.基于嵌入式Linux的UHF智能RFID读写器的研究与实现 [D].成都:电子科技大学,2006.
[2] Intel R1000 Datasheet v1[Z],2007.
[3] AT91 ARM Thumb-based Microcontrollers_AT91SAM7S256 datasheet[Z].2007.
[4] 王剑宇,苏颖.高速电路设计实践[M].北京:电子工业出版社,2010.
[5] 赵建领.Protel电路设计与制版宝典[M].北京:电子工业出版社,2007.