馬萬藝 連濤 寧振杰 韓劉遠志 沈?qū)W源
摘要:射頻識別(RFID)技術(shù)是通過無線電進行數(shù)據(jù)交換從而達到信息識別的技術(shù)。該實驗平臺包含了原理機和應用機兩大部分,原理機使用兩FPGA小系統(tǒng)為核心,應用機使用Arduino UNO控制,通過Android Studio編寫手機終端Android程序,c#語言編寫上位機軟件,目的是為了讓學生對實驗原理有更深入的了解。
關(guān)鍵詞:RFID;編碼解碼;調(diào)制解調(diào);FPGA;Android
中圖分類號:TD324 文獻標識碼:A
文章編號:1009-3044(2020)01-0189-02
1概述
RFID(Radio Frequency Identification,射頻識別技術(shù)1是通過無線電進行數(shù)據(jù)交換從而達到信息識別的技術(shù)。射頻識別具有可靠性高、安全性好、不受環(huán)境影響等優(yōu)點,該技術(shù)已經(jīng)在身份認證、交通收費、物流管理等各領(lǐng)域大放異彩。
當今時代,科技發(fā)展迅速,過去被認為非常先進的產(chǎn)品或許正在被人們逐漸遺忘。尤其是在這個互聯(lián)的時代,時代發(fā)展朝著人物互聯(lián)和物物互聯(lián)的方向發(fā)展,因此現(xiàn)在熱門的物聯(lián)網(wǎng)迅猛發(fā)展。而射頻識別作為物聯(lián)網(wǎng)的關(guān)鍵技術(shù)之一,必定將取得非常好的發(fā)展。正如人們所共知的網(wǎng)上購物,其規(guī)模的提升與快遞物流行業(yè)的發(fā)展密不可分。因此隨之而來的物流壓力可想而知,如果單純使用人力對包裹進行整理和分類勢必需要大量的人力和物力。而射頻識別技術(shù)的應用正好可以起到提高分揀效率的作用,減少資源浪費現(xiàn)象。
射頻識別技術(shù)中的原理和應用都非常重要,本實驗平臺的目的既在于展現(xiàn)數(shù)據(jù)的編碼調(diào)制、解調(diào)解碼,又在于數(shù)據(jù)讀寫方面的應用,意義是讓在校大學生更全面地學習和理解射頻識別技術(shù)。
2系統(tǒng)原理與構(gòu)架設(shè)計
整個實驗平臺分為兩個部分:原理機和應用機。原理機部分需要實現(xiàn)125kHz頻段的FSK調(diào)制解調(diào)、13.56MHz頻段的ASK調(diào)制解調(diào)和副載波調(diào)制解調(diào)。在14443標準中,閱讀器向射頻卡的通信采用的是修正密勒碼的ASK調(diào)制,載波頻率為13.56MHz,而射頻卡向閱讀器的通信采用的是曼徹斯特碼的副載波調(diào)制,副載波頻率為847kHz,即13,56MHz的16分頻。在15693標準中,閱讀器向射頻卡的通信采用的是脈沖位置調(diào)制編碼的ASK調(diào)制,載波頻率為13.56MHz,有4中選1和256中選1兩種方式。射頻卡向閱讀器的通信采用的也是曼徹斯特碼的副載波調(diào)制,不同的是在15693標準中副載波頻率為423.75kHz的32分頻。應用機部分需要實現(xiàn)125kHz頻段的ID卡讀取,以及13.56MHz的Mifare$50卡和Mifare$70卡讀取和寫入,并能將相關(guān)數(shù)據(jù)顯示在電腦端上位機。
2.1系統(tǒng)基本原理
射頻識別技術(shù)的原理簡言之就是實現(xiàn)閱讀器與應答器的信息交互,射頻識別基本原理框圖如圖1所示。
應答器是集成電路芯片,它分為有源和無源。有源應答器是由外部電池供電,如現(xiàn)在常用的2.4G應答器就是用電池供電,無源應答器工作需要的能量由閱讀器產(chǎn)生的射頻載波提供。而閱讀器與應答器之間的信息交互則包含兩種,一種是閱讀器先發(fā)言,叫Reader Talk First,簡稱為RTF;另一種則是應答器先發(fā)言,叫TagTalk First,簡稱為TTF。這其中有著嚴格的時序,即誰先詢問,則另一方應答。
本平臺主要采用低頻125kHz和高頻13.56MHZ進行原理性展示。
射頻識別中的編碼方式主要有ISO/IEC 14443標準中的曼徹斯特碼、密勒碼、修正密勒碼和ISO/IEC 15693標準中的曼徹斯特碼與脈沖位置編碼,這些編碼將在本平臺中進行實現(xiàn),其各種參數(shù)將在后文中進行具體說明。
2.2系統(tǒng)框圖
系統(tǒng)整體分為兩大部分:原理機部分和應用機部分。原理機部分包括信源、編碼、調(diào)制、解調(diào)、解碼、無線發(fā)送六大模塊。其中信源、編碼、調(diào)制在同一塊FPGA核心板上實現(xiàn),解調(diào)、解碼、無線發(fā)送在另一塊FPGA核心板上實現(xiàn)。應用機部分包括三大模塊:主控模塊、125k模塊、13.56M模塊。系統(tǒng)框圖如圖2所示。
3硬件設(shè)計
3.1原理機硬件
3.1.1 FPGA最小系統(tǒng)
FPGA最小系統(tǒng)除了EP4CE6E22C8N芯片外還包含四個模塊:電源電路、外部晶振電路、FLASH電路和下載電路,接下來對這幾個模塊進行依次介紹。
電源電路的作用是給整個FPGA最小系統(tǒng)供電,5V電壓經(jīng)過穩(wěn)壓電路后輸出3.3V,2.5V,1.2V電壓給EP4CE6E22C8N的不同Bank進行供電,因為該芯片需要輸入這三種電壓才能正常工作。
外部時鐘電路,F(xiàn)PGA最小系統(tǒng)采用的晶振是50M有源晶振,接入的是FPGA內(nèi)部88腳,用于為本系統(tǒng)提供多種分頻和倍頻時鐘。
FLASH電路的作用是為了存儲固化的程序,可以通過Quartues II配置生成pof文件,下載時通過AS接口將工程產(chǎn)生的pof文件下載到EP4CS4的FLASH芯片中。當FPGA最小系統(tǒng)上電后將會自動從FLASH芯片中加載程序并運行。
下載電路顧名思義就是給FPGA最小系統(tǒng)下載程序用的,本系統(tǒng)中的下載接口有兩種JTAG接口和AS接口。JTAG接口能夠下載sof文件和jic文件,而AS接口能夠下載pof文件。
3.1.2編碼調(diào)制硬件電路
編碼調(diào)制電路實現(xiàn)的功能是將開關(guān)設(shè)置的8位并行數(shù)據(jù)進行各種編碼和調(diào)制,其中編碼包含單極性不歸零碼、曼徹斯特編碼、密勒碼、修正密勒碼、脈沖位置調(diào)制編碼,調(diào)制包括FSK調(diào)制和ASK調(diào)制。整個電路包含了FPGA最小系統(tǒng)、8路開關(guān)、8路LED燈以及引出的24個測試點。同一測試點物理上又分為兩種,分別為排針測試點和陶瓷測試環(huán),能極大地方便學生通過示波器或者邏輯分析儀來進行來觀測和學習。此外,引出如此多測試點的好處是,當在本硬件的基礎(chǔ)上進行重開發(fā)或者二次開發(fā)時,可以方便地實現(xiàn)更多的功能,能鍛煉學生對射頻識別中數(shù)據(jù)編碼和調(diào)制的理解和對硬件的更深層次理解。
3.1.3解調(diào)解碼硬件電路
解調(diào)解碼的作用是將編碼調(diào)制硬件電路傳來的已調(diào)信號進行解調(diào)和解碼,并將解調(diào)信號和解碼信號通過無線模塊發(fā)送到手機端。此硬件電路的解調(diào)和解碼信號也將通過測試點引出,并可以通過示波器、邏輯分析儀等儀器來觀測學習。
3.2應用機硬件
3.2.1 Arduino UNO電路
Arduino UNO是Arduino系列單片機中的一款普通產(chǎn)品,其處理器核心是ATmega328,它不但同時具備的14路數(shù)字輸入,輸出口,而且其中還有6路可以用作PWM輸出,加之6路模擬輸入口,一個16MHz晶體振蕩器,一個USB口,一個電源插座,一個ICSP header和一個復位按鈕。在AREF處有兩個管腳SDA和SCL,支持12C接口,能夠兼容5V和3.3V的擴展板。
3.2.2應用機總電路
應用機電路主要由125k模塊、13.56M模塊、Arduino轉(zhuǎn)接板、電源指示燈模塊和蜂鳴器模塊組成。125k模塊的作用是將讀取到的ID卡號通過軟串口105發(fā)送到Arduino轉(zhuǎn)接板,即Ar-duino UNO。13.56M模塊的作用是由Arduino轉(zhuǎn)接控制進行Mi-fare$50和Mifare$70卡讀取和寫入。每當執(zhí)行讀卡操作時,蜂鳴器都將進行鳴叫。Arduino轉(zhuǎn)接板讀取到的數(shù)據(jù)將通過101(Tx)發(fā)送到PC端上位機進行顯示。
4軟件設(shè)計
4.1安卓程序設(shè)計
本系統(tǒng)中的安卓程序主要包括三大部分:主程序、TCP服務程序和繪圖程序。安卓程序框圖如圖3所示。
4.2 Arduino程序設(shè)計
Arduino的編程軟件叫做Arduino集成開發(fā)環(huán)境(IDE),并且對于Arduino來說,開發(fā)也是使用c與c++進行混合編程,這一點在其核心庫中的體現(xiàn)尤為明顯。在Arduino單片機的開發(fā)中,煩瑣復雜的寄存器配置被舍棄了,取而代之的是易理解和易用的API。Arduino程序首先在初始化函數(shù)中初始化串口、配置I/O口工作狀態(tài)。Arduino的初始化完成后,在循環(huán)函數(shù)中進行數(shù)據(jù)采集,并通過串口發(fā)送采集到的數(shù)據(jù)給PC端上位機。
4.3 Winform程序設(shè)計
Winform程序使用簡單且安全的面向?qū)ο蟮腸#編程語言進行開發(fā)。本W(wǎng)inform程序主要包含五大部分:串口設(shè)置、125K模塊、13.56M模塊、125K演示、13.56M演示。
5結(jié)束語
本實驗平臺由原理機和應用機兩大部分組成,原理機可以實現(xiàn)射頻識別技術(shù)中的相關(guān)編碼、調(diào)制、解調(diào)和解碼,并把相關(guān)數(shù)據(jù)能通過無線模塊發(fā)送到手機終端進行波形顯示。本平臺可以實現(xiàn)單極性不歸零碼、曼徹斯特碼、密勒碼、修正密勒碼以及ISO/IEC 15693標準中的脈沖位置(PPM)編碼等五種類型的編碼和解碼,以及實現(xiàn)FSK和ASK兩種方式的調(diào)制和解調(diào)。應用機可以實現(xiàn)125KHz射頻模塊的ID卡讀卡、13.56MHz射頻模塊的Mitre$50卡讀寫卡并將相關(guān)數(shù)據(jù)發(fā)送到電腦上位機端,還可以動畫演示13.56MHz射頻模塊的尋卡、防沖突、選卡、密鑰驗證、讀卡、寫卡的具體過程。整個實驗平臺能使相關(guān)專業(yè)學生能更加有效地學習射頻識別的原理知識。