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.