晏勇
(阿壩師范高等??茖W(xué)校 電子信息工程系,郫縣 611741)
晏勇(講師),研究方向為射頻技術(shù)、FPGA與嵌入式系統(tǒng)。
射頻識別(Radio Frequency Identification,RFID)是利用微波進(jìn)行雙向數(shù)據(jù)傳輸?shù)囊环N非接觸式射頻自動識別技術(shù)。RFID系統(tǒng)具有使用壽命長、低功耗、數(shù)據(jù)傳輸快速、穩(wěn)定、安全、可靠,適應(yīng)性和抗干擾性強等優(yōu)點,已廣泛用于工業(yè)控制、消費類電子、醫(yī)療電子、現(xiàn)代物流和校園一卡通等方面。RFID技術(shù)是現(xiàn)代物聯(lián)網(wǎng)的核心技術(shù)[1]。我國研究RFID技術(shù)起步比較晚,受軟件和硬件等條件限制RFID技術(shù)還未真正實現(xiàn)大規(guī)模應(yīng)用,大多數(shù)屬于中、低頻數(shù)據(jù)傳輸,距國外先進(jìn)技術(shù)還有一段距離[2]。本文重點介紹基于Altera公司Cyclone系列FPGA和ISO18000-6C標(biāo)準(zhǔn)超高頻RFID讀寫器的軟硬件實現(xiàn)方法。
典型RFID系統(tǒng)由讀寫器(Reader)、射頻標(biāo)簽(RFID Tag)、天線(Antenna)、中間件(Middle Ware)和應(yīng)用程序(Application Ware)5部分組成[3]。RFID系統(tǒng)結(jié)構(gòu)框圖如圖1所示。讀寫器安裝在固定位置,通過USB與PC連接,實現(xiàn)數(shù)據(jù)通信與讀寫,讀寫器對射頻標(biāo)簽操作實現(xiàn)用戶數(shù)據(jù)更新與存儲。由于系統(tǒng)基于ISO18000-6C標(biāo)準(zhǔn),射頻標(biāo)簽要符合該標(biāo)準(zhǔn),實現(xiàn)用戶數(shù)據(jù)存儲;讀寫器由編解碼電路、數(shù)據(jù)存儲電路、射頻前端收發(fā)電路、天線、電源電路等構(gòu)成;天線接收和發(fā)送超高頻微波信號;中間件、中間信息和數(shù)據(jù)處理軟件,對射頻讀寫器和中間件事件過濾、聚合和計算,抽象出對應(yīng)用軟件有邏輯意義的算法;應(yīng)用程序直接面對用戶人機(jī)交互界面。由應(yīng)用軟件操作讀寫器,讀寫器收發(fā)微波信號修改用戶射頻標(biāo)簽,應(yīng)用軟件是用戶體驗和判斷RFID系統(tǒng)成功的一個重要因素[4]。
圖1 RFID系統(tǒng)結(jié)構(gòu)框圖
基于FPGA RFID讀寫器可分為3個模塊:FPGA最小系統(tǒng)、USB串行總線接口電路、RF信號收發(fā)電路。FPGA最小系統(tǒng)包含F(xiàn)PGA現(xiàn)場可編程邏輯陣列、JTAG配置電路、系統(tǒng)時鐘電路、數(shù)據(jù)存儲電路、顯示電路、電源電路。RFID讀寫器控制核心用Altera公司Cyclone系列的EP1C3T144芯片。由于FPGA基于SRAM技術(shù),下載配置芯片用Altera公司配套的EPCS1,下載模式采用JTAG模式,20MHz有源時鐘晶振,0.3寸共陰數(shù)碼管,外接5V直流電源,經(jīng)兩級LM1085轉(zhuǎn)換為3.3V和1.5V電壓,為FPGA內(nèi)核和引腳供電[5]。數(shù)據(jù)存儲芯片選用Catalyst公司CMOS技術(shù)芯片EEPROMCAT24WC02,通過I2C總線與FPGA連接。USB串行總線接口芯片采用南京沁恒公司的USB通用接口芯片。RF信號收發(fā)模塊選用Chipcon公司的SmartRF03技術(shù)和0.18μm CMOS工藝的CC1100芯片作為微波信號收發(fā)前端,通過SPI總線與FPGA連接。
在RFID系統(tǒng)中,讀寫器是連接射頻標(biāo)簽和PC機(jī)客戶端的核心,通過對讀寫器命令操作,實現(xiàn)用戶數(shù)據(jù)修改、存儲等操作。RFID讀寫器與標(biāo)簽數(shù)據(jù)傳輸可以分為從讀寫器到標(biāo)簽前向鏈路和標(biāo)簽到讀寫器后向鏈路,前向鏈路與后向鏈路采用半雙工方式通信,數(shù)據(jù)傳輸采用ASK調(diào)制,前向鏈路采用PIE碼,后向鏈路采用Miller碼,系統(tǒng)采用CRC-16校驗碼和特殊防沖突算法保證讀寫正確[6]。RFID通信可分為2步:閱讀器首先獲得在輻射范圍內(nèi)標(biāo)簽ID號,然后對ID號符合要求的標(biāo)簽進(jìn)行讀寫相應(yīng)操作。讀寫器與上位機(jī)USB數(shù)據(jù)通信,通過USB設(shè)備枚舉完成HID人機(jī)接口設(shè)備識別和數(shù)據(jù)讀寫。
FPGA最小系統(tǒng)包含可編程門陣列、電源電路、時鐘電路、復(fù)位電路、配置電路、濾波電路。現(xiàn)場可編程門陣列采用EP1C3T144[7]。它基于1.5V,0.13μm全銅SRAM工藝、TQFP144封裝;104個I/O口,支持各種I/O標(biāo)準(zhǔn);支持LVDS,數(shù)據(jù)傳輸率為311Mbps;2910LE邏輯單元、288Kb RAM、1個PLL鎖相環(huán),支持66MHz 32位PCI標(biāo)準(zhǔn),支持外接133MHz DDR SDROM;單獨有源時鐘接口,外接20MHz頻率的有源晶振;專用配置電路接口,3.3VLVTTL供電。FPGA基于SRAM技術(shù),掉電數(shù)據(jù)易失,采用Altera公司配套的EPCS1JTAG下載模式。系統(tǒng)采用硬件和軟件復(fù)位:硬件復(fù)位接FPGA nconfig引腳,按下此鍵FPGA代碼從EEPROM重新配置;軟件復(fù)位是編寫代碼時設(shè)置reset引腳,按照代碼運行。
由于FPGA芯片內(nèi)部EEPROM空間有限,F(xiàn)PGA芯片外掛一個2KB EEPROM 24C02,24C02與400kHz I2C接口兼容。供電電壓為1.8~6.0V,供電電流為3mA,具有頁寫緩沖器和寫保護(hù)功能,SOP8封裝。它還具有讀寫次數(shù)多、保存時間長、功耗低[8]的特點。24C02硬件接口電路如圖2所示。
CH372簡易USB通用串行總線接口集成電路[9],兼容+5V和+3.3V供電,最大工作電流為30mA,外接12MHz頻率晶振,20引腳SOP封裝;兼容USB2.0數(shù)據(jù)傳輸協(xié)議,支持HID設(shè)備熱插熱拔,內(nèi)置USB底層通信協(xié)議,自動完成標(biāo)準(zhǔn)USB事件枚舉;支持?jǐn)?shù)據(jù)控制傳輸、批量傳輸、終端傳輸;默認(rèn)鏈接端點0所有事件,F(xiàn)PGA負(fù)責(zé)數(shù)據(jù)傳輸與處理,使用方便,CH372硬件接口[10]電路如圖3所示。
圖2 24C02硬件接口電路
圖3 CH372硬件接口電路
CC1100是一款極低功耗UHF收發(fā)集成電路[11]。其通信效果好、抗干擾性能強、穿透力強、靈敏度高;可自由設(shè)置收發(fā)頻率,可設(shè)置范圍為300~348MHz、400~464 MHz、800~928MHz,可編程控制數(shù)據(jù)傳輸速率最高可達(dá)500kbps,4線SPI(SI、SO、SCLK、CSn)接口。CC1100正常工作電壓為3.3V,最高輸入電壓3.6V,每個引腳輸入電壓應(yīng)相同。868~915MHz發(fā)送模式輸出功率為+10dBm,電流為30mA,接收最大功率為+10dBm,硬件自動CRC校驗,支持ASK調(diào)制解調(diào),調(diào)整外圍元件可方便調(diào)整收發(fā)頻率。CC1100采用數(shù)據(jù)緩沖技術(shù),具有2個64字節(jié)FIFO,緩沖發(fā)送和接收數(shù)據(jù)。CC1100可軟件設(shè)置RF發(fā)送功率、收發(fā)模式、調(diào)制格式、信道選擇和帶寬、數(shù)據(jù)傳輸速率、整機(jī)工作模式[12]等。
CC1100屬于半雙工通信,接收和發(fā)送在射頻控制模塊RF CONTRON控制下分時進(jìn)行,解調(diào)由積分器向下積分完成,AGC電路控制回路增益;調(diào)制基于直接頻率合成,載波信號由晶振與內(nèi)部PLL電路產(chǎn)生,發(fā)送模塊和接收模塊稍有區(qū)別。接收模塊包括:低噪聲放大器LAN、積分器INTEGRATION、模數(shù)轉(zhuǎn)換ADC、解調(diào)器DEMODU-LATOR、向前數(shù)據(jù)誤差處理器FEC/INTERLEAVER、包處理PACKET HANDLER、接收數(shù)據(jù)緩沖器RXFIFO、數(shù)字接口電路DIGITAL INTERFACE TO MCU;發(fā)送端與接收端不同的模塊有:壓控振蕩器VCO、混頻器MIXER、發(fā)送數(shù)據(jù)緩沖器TXFIFO,數(shù)據(jù)收發(fā)由不同模塊分時完成。
CC1100具有2種工作狀態(tài)——空閑狀態(tài)和工作狀態(tài),每種狀態(tài)對應(yīng)電流不同。空閑狀態(tài)可分為等待WAIT狀態(tài),內(nèi)部電流1.9mA;睡眠SLEEP狀態(tài),內(nèi)部電流400~900nA;晶振的停振狀態(tài)僅維持寄存器值不變,內(nèi)部電流160nA;工作狀態(tài)可分為接收(RX)和發(fā)送(TX)狀態(tài),接收狀態(tài)根據(jù)接收信號強弱內(nèi)部電流在14.2~15.4mA范圍變化。發(fā)送狀態(tài)下,發(fā)送信號功率大小隨工作電流變化。14mA時發(fā)射功率為-10dBm,29mA時發(fā)射功率為+20dBm。根據(jù)工作狀態(tài)調(diào)整工作電流,可實現(xiàn)整機(jī)最低功耗。
由于采用ISO18000-6C標(biāo)準(zhǔn)射頻空中接口協(xié)議,系統(tǒng)采用889MHz發(fā)射和接收頻率,改變CC1100第12、13引腳外接電容C1、C2,電感L1、L2的參數(shù)可調(diào)整射頻收發(fā)頻率,發(fā)射天線采用50Ω偶極子天線[13]。12、13引腳LC網(wǎng)絡(luò)器件參數(shù)可由軟件SmartRF Studio仿真得到,參考CC1100官方DATASHEET,根據(jù)實際情況微調(diào)。CC1100數(shù)據(jù)收發(fā)原理圖如圖4所示。
圖4 CC1100數(shù)據(jù)收發(fā)原理圖
CC1100操作包括芯片數(shù)據(jù)讀寫、寄存器與命令濾波器設(shè)置訪問、數(shù)據(jù)包與數(shù)據(jù)傳輸速率設(shè)置、FIFO訪問、低功耗策略等。RFID讀寫器中CC1100數(shù)據(jù)傳輸采用同步連續(xù)方式,支持硬件數(shù)據(jù)包處理、FIFO緩沖、數(shù)據(jù)白化、交錯和前向處理。CC1100數(shù)據(jù)幀包含前導(dǎo)、同步數(shù)據(jù)、標(biāo)簽地址、數(shù)據(jù)長度、讀寫命令、數(shù)據(jù)地址、數(shù)據(jù)、CRC校驗碼、結(jié)束位[14]。其中前導(dǎo)數(shù)據(jù)、同步數(shù)據(jù)通過CC1100寄存器設(shè)置硬件自動完成、CRC校驗碼硬件自動完成,其他數(shù)據(jù)需軟件設(shè)置或配置寄存器。數(shù)據(jù)幀結(jié)構(gòu)如表1所列。
表1 數(shù)據(jù)幀結(jié)構(gòu)
CC1100通過4線SPI接口與FPGA連接,對內(nèi)部不同寄存器和不同命令濾波器操作完成數(shù)據(jù)收發(fā)。當(dāng)SO引腳讀數(shù)據(jù)時SCLK必須在第一個上升沿前被拉低,一個周期內(nèi)SCLK下降沿完成1位數(shù)據(jù)建立,上升沿數(shù)據(jù)保持;CSn=0片選信號有效,數(shù)據(jù)正常傳輸;在SCLK控制下SI為同步數(shù)據(jù)輸入,SO為同步數(shù)據(jù)輸出。數(shù)據(jù)通信完成后SCLK保持低電平,等待下次數(shù)據(jù)通信。CSn=1時CC1100為降低功耗處于睡眠或晶振停振狀態(tài)。CC1100采用電磁波激活WOR低功耗技術(shù),CPU處于深度睡眠等待接收狀態(tài),數(shù)據(jù)到來后,無須喚醒CPU而直接存儲到RX FIFO。
CC1100內(nèi)部可分為配置寄存器地址(0x00~0x2F)和命令濾波器地址(0x30~0x3F)。配置寄存器設(shè)置SPI引腳狀態(tài)、數(shù)據(jù)調(diào)制方式、編碼方式、校驗方式、數(shù)據(jù)傳輸速率、信道帶寬等;寄存器狀態(tài)字STATE第6位到第4位查詢當(dāng)前工作狀態(tài),000為空閑狀態(tài),001為接收狀態(tài),010為發(fā)送狀態(tài);命令濾波器設(shè)置當(dāng)前工作狀態(tài),SRX 0x34=0xFF時啟用接收模式,STX 0x35=0xFF時啟用發(fā)送模式。CC1100分別具有一個64位RX FIFO和TX FIFO,STATE狀態(tài)字監(jiān)測FIFO是否溢出。讀RX FIFO前必須保證FIFO不為空,寫TX FIFO前必須保證FIFO為空,否則讀寫數(shù)據(jù)將出錯。CC1100寄存器與濾波器設(shè)置可以通過軟件SmartRF Studio得到最佳配置。
CC1100數(shù)據(jù)傳輸速率通過 MDMCFG3.DRATE_M(jìn)和MDMCFG4.DRATE_E配置寄存器和晶振頻率設(shè)置,先設(shè)定數(shù)據(jù)傳輸速率和晶振頻率,計算出MDMCFG3.DRATE_M(jìn) 和 MDMCFG4.DRATE_E配置寄存器值[15]。
傳輸頻率范圍:860~960MHz。
調(diào)制方式:ASK,每個信道500kHz,可設(shè)置52個信道,標(biāo)簽采用反向散射調(diào)制。
最大發(fā)射功率:4W。
編碼方式:PIE,Miller,F(xiàn)M0。
校驗方式:CRC-16。
數(shù)據(jù)傳輸速率:40~640kbps。
RFID系統(tǒng)測試包括軟件測試、硬件測試、穩(wěn)定性和EMI測試。軟件測試包括用戶軟件、中間件、標(biāo)簽軟件、編解碼信號測試;硬件測試包括發(fā)射功率、收發(fā)距離、收發(fā)夾角、標(biāo)簽數(shù)量;EMI和穩(wěn)定性測試包括復(fù)雜電磁干擾測試等。用到的儀器有數(shù)字存儲示波器、矢量分析儀、邏輯測試儀、頻譜分析儀、NRT功率計測試儀。它們對讀寫次數(shù)與數(shù)據(jù)正確率、讀寫器-標(biāo)簽距離與數(shù)據(jù)正確率、天線發(fā)射功率與數(shù)據(jù)傳輸距離、天線對信號放大倍數(shù)與信號頻率關(guān)系進(jìn)行相關(guān)測試與數(shù)據(jù)分析。
經(jīng)測試,RF放大器對889MHz信號放大倍數(shù)最大,讀寫器與標(biāo)簽最大數(shù)據(jù)傳輸速率為240kbps;傳輸距離在1m內(nèi)天線發(fā)射功率為1.1dBm,調(diào)整發(fā)射功率,最大傳輸距離可達(dá)3m?;贗SO18000-6C標(biāo)準(zhǔn)射頻標(biāo)簽協(xié)議RFID便攜式系統(tǒng)工作穩(wěn)定可靠,只需USB與PC機(jī)連接便可實現(xiàn)讀寫器與PC機(jī)數(shù)據(jù)通信,簡單、方便、可靠,可用于工業(yè)控制、消費類電子、食品安全追蹤、現(xiàn)代物流、校園一卡通等場所。
編者注:本文為期刊縮略版,全文見本刊網(wǎng)站www.mesnet.com.cn。
[1]譚民,劉禹,曾雋芳,等.RFID技術(shù)系統(tǒng)工程及應(yīng)用指南[M].北京:機(jī)械工業(yè)出版社,2007:23-41.
[2]劉禹,關(guān)強.RFID系統(tǒng)測試與應(yīng)用務(wù)實[M].北京:電子工業(yè)出版社,2010:18-21.
[3]高天寶,王敬超,張春,等.便攜式RFID讀寫器的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2008(5):32-34.
[4]寧煥生,張彥.RFID與物聯(lián)網(wǎng)—射頻、中間件、解析與服務(wù)[M].北京:電子工業(yè)出版社,2008:66-80.
[5]黃偉智.FPGA系統(tǒng)設(shè)計與實踐[M].北京:電子工業(yè)出版社,2005:251-261.
[6]劉冬生,鄒雪城,李泳生.射頻識別系統(tǒng)中的防碰撞算法[J].華東科技大學(xué)學(xué)報,2006,34(9):84-86.
[7]Texas Instruments.Cyclone EP1C3T144User'S Guide[EB/OL].[2011-06].http://www.altera.com.cn.
[8]Texas Instruments.24C02Datasheet[EB/OL].[2011-06].http://www.21ic.com.
[9]Texas Instruments.CH372Datasheet[EB/OL].[2011-06].http://www.21ic.com.
[10]楊順,王星.基于USB接口芯片CH372的人機(jī)接口設(shè)備的設(shè)計與實現(xiàn)[J].計算機(jī)系統(tǒng)應(yīng)用,2010(4):166-167.
[11]Texas Instruments.CC1100Datasheet[EB/OL].[2011-06].http://www.21ic.com.
[12]曹青松,徐鵬,周繼惠.基于CC1100的ZigBee無線抄表系統(tǒng)的節(jié)點設(shè)計[J].電測與儀表,2010(2):17-20.
[13]宋錚,張建華,黃冶.天線與電波傳播[M].西安:西安電子科技大學(xué)出版社,2003:54-105.
[14]肖菊蘭,紅雨.超高頻RFID讀寫器設(shè)計[J].電子設(shè)計工程,2010,18(11):158-160.
[15]Chipcon.CC1100用戶手冊[EB/OL].(2008-10-25).[2011-06].http://www.Chipcon.com.
[16]劉宏偉,李成.ISO/IEC 18000-6C簡析ISO,IEC 18000-6C Sketch and Analyse[J].信息技術(shù)與標(biāo)準(zhǔn)化,2007(7).