摘 要: 介紹了基于DSP實現RFID超高頻(UHF)射頻識別系統的方法,該系統采用TMS320F2812 DSP作為主控芯片,AS3991作為無線收發(fā)模塊,基于EPC GEN2協議實現RFID讀寫器對標簽的識別、讀寫等操作。DSP的使用簡化了射頻系統的復雜度,使得該系統具有低成本、通信穩(wěn)定、操作簡單等優(yōu)點,應用前景十分廣闊,對RFID 的推廣具有一定的指導意義。
關鍵詞: DSP;RFID;標簽;EPC;GEN2
射頻識別RFID(Radio Frequency Identification)是一種非接觸的自動標識技術,它利用射頻信號和空間耦合來實現對物體的自動識別。與其他的識別方式相比,射頻識別技術能對移動的多個目標識別,特別是隨著物聯網的提出,RFID技術的優(yōu)勢更加突顯,其應用領域更加廣泛。例如,RFID標簽中有足夠的存儲空間,可以存放物品的有用信息,能夠真正實現讓物品“開口說話”[1,2]。
本文利用TI公司TMS320F2812 DSP 處理器作為主控芯片,設計實現了一套基于EPC GEN2協議標準的射頻識別系統,通過USB與上位機通信。
1 RFID系統原理
一個典型的RFID系統是由讀寫器、標簽和天線等組成。讀寫器用來讀寫標簽上的數據,標簽是存儲數據的記憶芯片,天線則用來傳輸讀寫器和標簽之間的射頻信號。讀寫器首先從上位機得到指令,然后對指令進行編碼調制并通過天線發(fā)送出去,處在讀寫器工作范圍內的標簽接收命令并通過改變能量強度發(fā)射響應信號,讀寫器通過天線接收響應信號并對其解調解碼后傳輸到上位機做進一步處理。
EPC GEN2標準定義了UHF射頻識別系統的通信協議,其工作頻率范圍為860 MHz~960 MHz,采用ITF通信方式,包括物理層和標簽識別層兩部分。
閱讀器發(fā)往標簽的信息可以采用雙邊帶幅度鍵控(DSB-ASK)、單邊帶幅度鍵控(SSB-ASK)或者反向相位幅度鍵控(PR-ASK)的方法進行調制載波,數據編碼方式采用脈沖間隔編碼(PIE)。標簽從其未調制波中獲取工作能量,要發(fā)送的信息通過反向散射調制載波的相位或者幅度,編碼方式采用雙向間隔碼(FM0)編碼或者Miller調制副載波。閱讀器和標簽之間的通信是半雙工的,閱讀器可以通過發(fā)送選擇(Select)、盤存(Inventory)和訪問(Access)命令來對標簽進行讀寫等操作[3]。
本系統通過主控芯片來發(fā)送命令/數據和接收處理過的數據,射頻模塊完成協議的操作和數據的編、解碼,并通過主控芯片USB與上位機進行數據交互。
2 RFID硬件設計
2.1 主控芯片
本系統的主控芯片使用TI公司TMS320F2812。該DSP芯片采用高性能靜態(tài)CMOS技術,具有低功耗、高速度的特點。其內核依靠1.8 V供電,I/O口則是3.3 V供電,主頻高達150 MHz,單指令周期僅為6.67 ns。另外該芯片還提供了SPI接口,并支持JTAG邊界掃描,方便了代碼的開發(fā)[4]。芯片的高速運算能力和短指令周期,保證了信息不會丟失,且有效減少了干擾信號,提高了系統的穩(wěn)定性和可靠性。
本系統采用SPI串行口與射頻模塊進行通信,F2812中SPI接口還支持一個16級的發(fā)送接收FIFO,從而保證了信息的可靠,減少了CPU的損耗,如圖1所示。
2.2 電源模塊
采用TI公司的TPS767D318作為電壓的轉換芯片,可同時為DSP提供1.8 V和3.3 V電壓,滿足內核和I/O口的供電要求。
2.3 射頻模塊
射頻模塊采用的是奧地利微系統公司研制的用于超高頻RFID讀寫器的專用芯片AS3991,其封裝形式為64腳QFN,原理如圖2所示。該芯片具有集成度高的特點,芯片內集成了接收電路、發(fā)送電路、協議處理單元、連接MCU的并行接口或者SPI串行接口等。支持兩種工作模式——完全支持EPC GEN2協議和兼容IS0 18000-6A/B協議[5]。本系統采用的是EPC GEN2協議。
需要發(fā)送給RFID的命令和數據信號經編碼、調制、射頻放大后輸出到天線。由天線接收到的RFID響應信號送到芯片輸入端,經由IQ MIXER得到兩路的中頻信號IQ,再由增益、濾波、數字化轉換就得到了相應的數據信號,之后由芯片的協議處理模塊進行解碼、CRC校驗后存入FIFO中,此時再由DSP根據SPI協議讀取數據。
3 RFID軟件設計
3.1 防碰撞算法
本系統所采用的防碰撞算法是EPC GEN2協議的概率分槽防碰撞算法。根據EPC GEN2協議,算法流程如圖3所示。
讀寫器開始一個查詢周期,向標簽群發(fā)送一個Query()命令,在這個命令中有一個參數Q,當處在讀寫器的工作區(qū)內時,標簽會產生一個0~2Q-1之間的隨機數,并將此隨機數放入槽計數器中。當處在工作區(qū)中的標簽的隨機數為0時,返回RN16給讀寫器,進行應答;當有多個標簽發(fā)送RN16時,發(fā)生沖突,可以在下一輪的搜索中通過命令QueryAdjust()進行Q值調節(jié),重新進行搜索;當沒有標簽應答時,可以發(fā)送QueryRep()命令將槽計數器中的值減一,直至有標簽應答出現。
3.2 讀標簽
讀標簽操作可以分為單標簽和多標簽讀操作,由于單標簽讀操作是多標簽讀操作的特例,本文只介紹多標簽讀操作。首先使用函數GEN2SelectTag()確定標簽群,再使用GEN2QueryStandard()命令對標簽開始盤存周期,然后使用QueryRep()和ACK()命令對選定標簽群中標簽逐個識別,并對正確識別的標簽序列號進行存儲,需要進行2Q-1次才能識別所有標簽。如果發(fā)生沖突則需要重新設置Q值,然后重復上述操作。
3.3 標簽的寫操作
讀寫器首先通過GEN2SelectTag()和GEN2QueryStandard()命令確定一個唯一的標簽,然后判斷是否進行了加密,如果沒有,則直接進行寫操作;否則,讀寫器需要發(fā)送Access()和Req_RN(16)命令來判斷對標簽是否具有寫操作的權限。工作流程如圖4所示。
本文利用TMS320F2812 DSP和AS3991設計了一個RFID超高頻系統,成功實現了對EPC GEN2電子標簽的讀寫操作,并且可以通過USB與上位機實現通信。多標簽讀取時抗干擾性良好。本系統操作簡單、傳輸可靠、應用方便,對RFID的推廣有重要意義。
參考文獻
[1] 物聯網關鍵技術[EB/OL].[2010-7-5].http://www.yzkx.org/reada.asp?id=2966.
[2] 什么是RFID[EB/OL].[2009-9-17].http://finance.ifeng.com/stock/special/wlbk/gmxx/20090917/1250660.shtml.
[3] EPCTM Radio-Frequency Identity Protocols Class-1 Generation-2 UHF RFID Protocol for Communications at 860 MHz~ 960 MHz.Version 1.1.O.2005.
[4] 孫麗明.TMS320F2812原理及其C語言程序開發(fā)[M].北京:清華大學出版社,2008.
[5] Austria Micro Systems.AS3990/AS3991 UHF RFID Single Chip Reader EPC ClasslGen2 Compatible.Datasheet. ReviSion 1.4[S].2010.