引言
射頻識別(RFID)技術是一種自動識別技術,被廣泛應用于動物識別、鐵路車皮識別、自動高速公路收費、航空行李處理、資產跟蹤、公共交通等。該系統主要包括電子標簽和閱讀器兩部分,兩者之間通過電磁波進行通信。通過這種方式閱讀器可以遠距離、非接觸地讀出電子編碼中的所有信息,并通過串口將數據傳輸到管理主機中,供工作人員記錄讀取。
實際應用中,閱讀器和主機之間是通過串口或網口進行通信的,這種通信方式會造成射頻識別系統布線繁瑣、成本高、工程量大。一旦系統安裝完成后,就不能隨意變動位置,降低了系統的重復利用率。
為了使射頻識別系統能夠突破位置限制、節省空間、降低成本及減小工程量,對傳統的閱讀器進行了重新設計,實現了閱讀器和主機之間無線方式的信息交互傳輸。
1 整體設計方案
無線傳輸射頻識別閱讀器的系統結構如圖1所示,主要包括ZigBee模塊、主控模塊、RFID射頻讀寫模塊、天線模塊、USB轉串通信模塊和電源模塊。
使用了一對ZigBee模塊,一個設計在閱讀器內,另一個獨立設計成帶USB接口的信息收發器,安裝在上位機上。主控模塊是以STM32F107VCT6 為核心的微控制系統模塊,RFID射頻讀寫模塊負責數據的傳輸和信號的處理工作,以及對電子標簽進行讀寫操作。核心芯片是EM4094(USB轉串通信模塊),主要作為備用上位機讀寫通道設計,當無線通信距離超出有效范圍或者無線通信發生故障時,可以使用串口通信連接上位機及閱讀器。天線模塊采用傳統設計,這里不做重點介紹。
此外,還設計了音頻報警和信號指示,分別用來提醒操作人員讀卡是否成功指示閱讀器通信或電源的狀態。
2.1 ZigBee模塊
EMZ3118模塊是基于STM32W108的一款完整的嵌入式ZigBee應用模塊,帶外部射頻功率放大器(PA),發射功率最大為+20 dBm(100 mW)。模塊提供了ZigBee/IEEES02.15.4兼容的無線解決方案,可滿足低成本、遠距離的無線傳感網應用需求。
EMZ3118采用先進的系統級芯片STM32W108,擁有穩定可靠的Ember ZigBee Pro協議棧、開發簡單便捷、便于集成ZigBee解決方案、通信范圍廣、網絡可靠性高。最大傳輸距離為1.6 km,具有24個GPIO端口、4個中斷端口、支持兩個串行接口、6路12位A/D端口。支持點到點、點到多點、P2Pmesh的網絡協議,還提供16個直序擴頻信道。EMZ3118引腳基本上都對應到STM32W108的引腳上。
設計中使能EMZ3118的外部射頻功率放大器(PA),必須進行一些簡單的配置。該模塊使用4個CPU引腳來控制外部功放,根據他們的功能定義做出相應的配置,如下所示。
PA3:輸出控制引腳,用于控制外部功放的供電。設置為0,外部功放電源打開;設置為1,外部功放電源關閉。
PA6:輸出控制引腳,外部功放的使能控制。設置為0,外部功放不工作;設置為1,外部功放工作。
PA7:輸出控制引腳,用于選擇射頻信號的輸出天線。設置為0,射頻信號從UFL天線接口輸出;設置為1,射頻信號從MMCX天線接口輸出。
PC5:外部功放收發切換控制引腳,這個引腳需要設置為特殊功能輸出模式。
本設計中EMZ3118直接使用外置天線,無需設計。
2. 2 主控芯片
STM32F107VCT6是意法半導體推出的全新STM32互連型(Connectivity)系列微控制器中一款性能較強的產品。該芯片基于ARM Cortex—M3內核,具有256 KBFlash和64 KB SRAM,工作頻率可達72 MHz。其集成了多種高性能工業標準接口:一個全速USB(OTG)接口、兩個CAN2.0B控制器、一個硬件支持IEEE1588精確時間協議 (PTP)的以太網接口(由硬件實現該協議可降低CPU開銷,提高實時應用和聯網設備同步通信的響應速度)。此外,該微控制器還支持以太網、USB OTG和CAN2.0B外設接口同時工作,因此只需一塊芯片就能設計整合所有這些外設接口的網關設備。
設計中使用100引腳的STM32F107VCT6,EMZ3118與主控芯片的電路連接原理如圖2所示。
圖2中,EMZ3118和主控芯片之間進行SPI通信,EMZ3118為主控芯片的從設備。PA6為主控芯片在主動模式下的數據輸入端(SDO);PA7 為主控芯片在主動模式下的數據輸出端(SDI);PA5為串口時鐘(SCK);PA4為從設備選擇端(NSS),用來使能ZigBee模塊;PA3用來控制EMZ3118的外部Rx/Tx切換邏輯控制端。
2.3 RFID射頻讀寫模塊
RFID射頻讀寫模塊中的核心器件是EM4094芯片,是一款集成收發器芯片,可用于構成RFID閱讀器的模擬前端讀寫基站模塊。EM4094支持所有EM公司頻率為13.56 MHz的收發器芯片,支持ISO15693協議、ISO14443協議和Sony Felicia協議。
EM4094三個不同的電源引腳分別是VDDA1、VDDA2和VDD。其中,VDDA1和VDDA2為內部天線驅動器ANT1、ANT2供電,每個驅動器需要獨立供電。由于兩個驅動器可能產生較大的電流,為了給天線提供足夠電能,需要在VDDA1及VDDA2引腳間接入一個3.3 μF電容,再分別并聯一個1 nF和100 nF的電容,對電源進行濾波和去耦。VDD用于給其他的內部邏輯電路供電。在這個電源線上同樣并聯一個1 nF和100nF的電容對電源進行濾波和去耦。這3個電源施加相同的電壓(5 V或3.3 V),所有電源線都應當與模擬地相連。
在OSCOUT和OSCIN兩端外接13.56 MHz的晶振,用來提供脈沖信號,該信號被送至天線驅動器輸出端。為了保證晶振的起振以及穩定性,在晶振兩端跨接兩個NPO電容。NPO電容的大小由EM4094芯片的可選跨導和晶振參數決定。
為了確保閱讀器內部芯片的穩定性及可靠性,分別用100 nF和1 nF的電容對帶隙參考輸出(AGD)電壓進行去耦。
引腳ANT1和ANT2是兩個天線驅動器的輸出端,它們可同相或反相驅動,如果將閱讀器天線與EM4094芯片集成到同一塊PCB板上,便可選用直接天線連接的方法。這種情況下,天線線圈和串聯的電容形成LC振蕩回路,回路的諧振頻率設計為閱讀器的頻率。串聯一個電阻可以抑制品質因數,且將天線電流設計在 EM4094額定電流值以下。當工作于其諧振頻率時,天線即可獲得較高的輸出功率。
引腳RFIN1、RFIN2是該芯片接收鏈上的輸入引腳,用來解調芯片收發器發送過來的數據。該引腳上的電壓應設計在VDD和GND之間,這兩個輸入設計必須具有相同性能及相同靈敏度。另外,外接一個阻抗匹配電路,這兩個輸入端就可用于解調輸入相位或幅度來調制信號。沒有使用的輸入引腳要通過一個10 nF電容接到模擬地,高靈敏度的輸入引腳使得讀卡器即使在電子標簽最小的電源級別上,還能具有較遠的讀寫距離。
引腳EN用于關閉或使能閱讀器電子電路,該引腳可由一個外部單片機進行控制。
在SPI串行通信模式下,引腳DIN用于數據輸入,引腳DOUT用于數據輸出,引腳DCLK用于SPI總線的時鐘信號。SPI接口可用來對讀寫器芯片內部的位寄存器進行設置,并參與不同模塊參數的設定。在正常模式下,可通過在DIN引腳上施加邏輯電平來關閉或打開天線驅動器。在DOUT引腳上可直接讀取引腳DIN上的應答信息。
RFID射頻讀寫模塊電路工作原理圖如圖3所示。
2.4 天線模塊
天線負責發送閱讀器對電子標簽的讀寫指令,同時接收標簽返回的數據。在射頻識別系統中,天線線圈可看作兩個相互耦合的電感。兩個電感諧振頻率必須設計在閱讀器工作頻率(即13.56 MHz)附近,才能使得電感的耦合程度最高,因此必須先知道天線線圈的電感值,再搭配適當的電容值,根據不同的應用計算出天線的品質因數和電感的電阻值。
本設計中,參考demo板的參數設計,在PCB板上印刷天線線圈、矩形形狀。圈數為4圈,線圈外圈長6.8cm、寬5.5 cm、線寬1 mm、線間距0.2 mm、并聯一個3.3kΩ的電阻,容性的阻抗匹配網絡(8.2 pF+120 pF并聯)電容值串聯56 pF+680 pF并聯后的電容值。
USB轉串口通信模塊采用常用電路,電源模塊相關電路除了給芯片EM4094兩個獨立供電電源使用了磁珠隔離,其他的也采用了常用電路。
3 軟件設計
3.1 上位機軟件設計
上位機軟件主要實現對遠端閱讀器的讀寫操作。上位機軟件通過RS485口向EMZ3118發送帶有閱讀器地址的讀寫指令,EMZ3118將指令無線傳輸給遠端EMZ3118接收并解析。符合接收閱讀器地址的指令會發送給主控芯片,主控芯片進一步解析指令后對閱讀器進行相關讀寫操作,并監測閱讀器對指令執行的結果是否正確,同時將相關的結果數據原路徑傳輸給上位機,閱讀器的工作狀態實時顯示在工作狀態燈上。本設計中的上位機采用C#開發。
3.2 下位機軟件設計
下位機軟件包括ZigBee模塊本身的收發配置、閱讀器驅動及工作程序設計、主控芯片的初始化及網絡通信程序設計,以及系統控制、串行 Flash存儲、硬件外圍模塊驅動、EMZ3118為ZigBee模塊的Host驅動、其他接口驅動等。本文重點介紹EMZ3118的Host驅動,軟件架構如圖4所示。
EMZ3118為ZigBee模塊的Host驅動,完成STM32F107與EMZ3118模塊的SPI通信并提供通用SPI讀寫能力。代碼框架如下所示:
Assemble Command and put it into cmdbuf.
While(get_EMZ3118_int_status());
Spi_send_data(cmdbuf,cmdlen);
Recvlen=spi_rec_data(resbuf);
Handle response buffer.
其中,函數get_EMZ3118_int_status()用于獲取模塊/INT狀態。
結語
經過實際測試,本系統能夠通過無線傳感網絡遠程對RFID射頻識別閱讀器進行讀寫操作,同時控制RFID射頻識別閱讀器對電子標簽進行讀寫操作。系統工作穩定可靠、傳輸數據正確、反應時間短,具有較高實際應用價值。
責任編輯:ct
評論
查看更多