文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2012)10-0019-04
與IC卡識(shí)別和條形碼識(shí)別技術(shù)相比,,RFID技術(shù)具有無(wú)接觸、信息存儲(chǔ)量大,、讀取速度快、不易受到污染,、可同時(shí)識(shí)別多個(gè)目標(biāo)等優(yōu)點(diǎn),特別適合對(duì)數(shù)量大,、分布區(qū)域廣的信息進(jìn)行智能化管理和高效快捷地運(yùn)作[1],。目前RFID技術(shù)按頻率可分為低頻系統(tǒng)(125 kHz和134 kHz),、高頻系統(tǒng)(13.56 MHz和27.125 MHz)、超高頻系統(tǒng)(860 MHz~960 MHz)和微波系統(tǒng)(2.45 GHz和5.8 GHz),。然而,,現(xiàn)階段我國(guó)70%的RFID市場(chǎng)應(yīng)用還主要集中在高頻領(lǐng)域,如身份證,、電子門票,、公交卡等,超高頻的市場(chǎng)應(yīng)用比重還不足10%,。超高頻RFID系統(tǒng)與高頻RFID相比具有通信距離遠(yuǎn),、響應(yīng)速度快,、抗干擾能力強(qiáng)等優(yōu)點(diǎn),,已成為目前RFID產(chǎn)業(yè)研究的熱點(diǎn)。
1 系統(tǒng)硬件設(shè)計(jì)
1.1 AS3992簡(jiǎn)介
AS3992芯片是奧地利微系統(tǒng)公司研制的一款支持ISO18000-6C/6B協(xié)議的900 MHz RFID讀寫器專用集成芯片。內(nèi)部集成了發(fā)送電路,、接收電路和EPC Gen2協(xié)議處理模塊[2],發(fā)射模塊包括增益放大器(VGA),、功率放大器(PA)、鎖相環(huán)(PLL),、壓控振蕩器(VCO),、頻率合成器,、調(diào)制器,、數(shù)/模轉(zhuǎn)換器(DAC)等模塊。接收模塊包括低噪聲放大器(LNA),、混頻器(Mixer),、中頻放大器,、解調(diào)器、模/數(shù)轉(zhuǎn)換器(ADC)等模塊,。內(nèi)部功放的輸出功率可以高達(dá)20 dBm,,片上VCO和PLL可產(chǎn)生840 MHz~960 MHz的振蕩頻率,其接收靈敏度可達(dá)-86 dBm,,從而使芯片外圍電路大大簡(jiǎn)化,。收發(fā)模塊還可以自動(dòng)生成報(bào)頭幀和CRC校驗(yàn),生成幀的數(shù)據(jù)塊通過(guò)片上的24 B FIFO寄存器傳輸?shù)組CU[3],。AS3992通過(guò)軟件設(shè)置可以在待機(jī)模式,、休眠模式和收發(fā)模式三種工作模式間切換,大大降低了功耗,。當(dāng)系統(tǒng)工作于收發(fā)模式時(shí),,讀寫器功耗僅為1.2~1.5 W,,遠(yuǎn)低于目前主流2.5 W的UHF射頻芯片Intel R1000。
1.2 硬件結(jié)構(gòu)
系統(tǒng)硬件結(jié)構(gòu)如圖1所示,。
AS3992與MCU通信方式有兩種:(1)并行方式,,包括8 bit數(shù)據(jù),、時(shí)鐘CLK以及中斷信號(hào)IRQ,;(2)串行方式,,包括標(biāo)準(zhǔn)SPI接口以及中斷信號(hào)IRQ。本設(shè)計(jì)采用并行操作,,可支持EPC數(shù)據(jù)鏈路640 Kb/s的最快速率[4]。
MCU選用ARM Cortex-M3處理器LM3S8962,,其內(nèi)核基于哈佛結(jié)構(gòu),,指令和數(shù)據(jù)可以從存儲(chǔ)器中同時(shí)讀取,,對(duì)多個(gè)操作可以并行執(zhí)行,,程序運(yùn)行速度很高,,具有更低延遲的中斷,,表現(xiàn)了出色快速的中斷響應(yīng),而且還同時(shí)具有兩種睡眠模式,,更加節(jié)省了功耗,;利用Max3232和ADM3485芯片分別實(shí)現(xiàn)RS232和RS485串口通信,;同時(shí)系統(tǒng)還設(shè)有RJ45以太網(wǎng)接口,,可以直接將讀寫器與網(wǎng)絡(luò)相連,;復(fù)位信號(hào)由Max809芯片提供,用于監(jiān)控微控制器和其他邏輯系統(tǒng)的電源電壓,;通過(guò)11個(gè)I/O口連接AS3992芯片的IO0~I(xiàn)O7,、EN、CLK和IRQ管腳,,實(shí)現(xiàn)芯片間并行通信,;利用I/O口設(shè)有讀卡LED燈指示和蜂鳴器讀卡聲音指示。
射頻前端模塊首先對(duì)發(fā)射信號(hào)進(jìn)行編碼,、載波調(diào)制后,,由RFOPX和RFONX兩引腳差分輸出,經(jīng)Balun變換輸入射頻功率放大器PA,,然后通過(guò)定向耦合器和環(huán)形器經(jīng)RF1450開關(guān)由天線發(fā)送給電子標(biāo)簽,;接收來(lái)自電子標(biāo)簽的射頻信號(hào),提取有用信號(hào)通過(guò)Balun變換后輸送到AS3992的輸入端MIX-INP和MIX-INN,,由AS3992進(jìn)行混頻,、增益、濾波,、模/數(shù)轉(zhuǎn)換后得到數(shù)字信號(hào),,再送給MCU處理。
1.3 射頻前端電路設(shè)計(jì)
AS3992雖然集成了內(nèi)部功率放大器,,輸出功率可以達(dá)到20 dBm,,但一般情況下在空曠靜止的環(huán)境中識(shí)別距離也就在2 m左右。因此,,為了支持更遠(yuǎn)的讀寫距離,,設(shè)計(jì)中將AS3992芯片設(shè)置為最大0 dBm功率的高線性輸出,利用外部功率放大器,,外加匹配電路,、濾波、隔離等實(shí)現(xiàn)射頻信號(hào)的發(fā)射,。
設(shè)計(jì)中采用了差分輸入,、輸出方式,信號(hào)在返回路徑中對(duì)抗串?dāng)_和突變的魯棒性好,抗干擾能力強(qiáng),,能有效抑制外界電磁干擾,。AS3992的RFONX和RFOPX引腳差分輸出為0 dBm。通過(guò)LC匹配網(wǎng)絡(luò),,不僅可以起到濾波的作用,,還可以引入新的反射,抵消由于負(fù)載不匹配產(chǎn)生的反射,,從而達(dá)到改善駐波比和寬頻帶響應(yīng),、獲得最小噪聲系數(shù)和最大功率傳輸?shù)哪康腫5]。由于在輸出端,,兩端對(duì)地都有電壓且大小相等,、方向相反,阻抗為100 Ω,,而終端為50 Ω的同軸電纜,,為非平衡的,因此,,需要利用Balun射頻變壓器來(lái)實(shí)現(xiàn)平衡和非平衡的變換,。
功率放大部分采用RF5110芯片,該芯片可工作于800 MHz~950 MHz之間,,能夠滿足超高頻領(lǐng)域的所有頻段,,且輸出功率具有可控性。APC1和APC2端為功率控制輸入端,,連接至AS3992芯片的DAC端,,DAC輸出電壓在0 V~3.2 V之間,可以通過(guò)設(shè)置DAC控制寄存器調(diào)節(jié)電壓大小,。RF5110外圍電路設(shè)計(jì)可以參考RF5110數(shù)據(jù)手冊(cè),。圖2給出了RF5110在915 MHz頻率工作時(shí),輸入端的輸入功率不同時(shí)對(duì)應(yīng)的最終輸出功率的大小,。
由圖2可知,,AS3992輸出0 dBm時(shí),在不考慮插入損耗的情況下,,RF5110放大后輸出功率大約為30.6 dBm,;去掉后邊低通濾波器、定向耦合器等的插入損耗,,最終天線的發(fā)射功率還不足1 W(對(duì)應(yīng)30 dBm),。為了達(dá)到RF5110最佳的放大輸出,設(shè)計(jì)中引入前置增益放大器HMC580ST89,,在0.5 MHz~1.0 GHz范圍內(nèi)可獲得17 dB增益,,輸出三階截點(diǎn)IP3高達(dá)33 dBm,,具有良好的線性度和更少的失真。通過(guò)HMC580ST89放大后獲得Pin端功率為7 dBm,,在Vapc=2.7 V、Vcc=3.3 V條件下,,RF5110輸出功率可達(dá)到34.5 dBm,,轉(zhuǎn)換效率為54.8%。
功率檢測(cè)電路如圖3所示,,采用ADL5501芯片來(lái)防止因天線不匹配或定向耦合器(或環(huán)形器)的信號(hào)泄漏造成發(fā)射信號(hào)被反射進(jìn)入AS3992芯片中的混頻器,,導(dǎo)致發(fā)射信號(hào)噪聲被調(diào)制,增加接收波噪聲和誤碼率,,甚至?xí)斐苫祛l器輸入端的過(guò)載飽和,。ADL5501的輸入引腳接定向耦合器的耦合端,通過(guò)輸入端的兩個(gè)電阻配置衰減參數(shù),,防止功率過(guò)大燒毀芯片,。AS3992根據(jù)反射功率的大小可以通過(guò)DAC控制發(fā)射功率。
通過(guò)四天線端口設(shè)計(jì),,并將多個(gè)天線在空間上排成適當(dāng)陣列形式,,可以保證讀寫器的4個(gè)天線對(duì)指定讀寫區(qū)域進(jìn)行全方位的覆蓋。設(shè)計(jì)中采用插入損耗僅為0.4 dBm的單刀四擲射頻開關(guān)RF1450,,通過(guò)MCU的2個(gè)GPIO控制天線選擇,。
2 系統(tǒng)軟件設(shè)計(jì)
讀寫器在識(shí)別和讀寫電子標(biāo)簽時(shí),要求有比較高的識(shí)別速度和讀寫速度,,尤其是讀寫器在識(shí)別電子標(biāo)簽時(shí),,首先要在6B和6C兩個(gè)工作協(xié)議間進(jìn)行自適應(yīng)識(shí)別與切換,這對(duì)處理器軟件的運(yùn)行效率和處理速度提出了較高的要求,。MCU對(duì)AS3992的操作主要是修改內(nèi)部的寄存器,,32個(gè)寄存器訪問(wèn)也給軟件設(shè)計(jì)帶來(lái)了一定的復(fù)雜性。而且軟件還擔(dān)負(fù)了編碼和解碼等通信協(xié)議的實(shí)現(xiàn),,能夠?qū)崟r(shí)地讓用戶通過(guò)應(yīng)用軟件對(duì)系統(tǒng)發(fā)送指令和數(shù)據(jù),。經(jīng)綜合考慮,有必要在ARM控制器中引入μC/OS-Ⅱ系統(tǒng)來(lái)?yè)?dān)負(fù)系統(tǒng)任務(wù)的調(diào)度和系統(tǒng)資源的管理,,這樣不僅可以使軟件的開發(fā)更加方便高效,,還可以提高系統(tǒng)的可靠性,充分發(fā)揮控制器的處理能力,。
μC/OS-Ⅱ是一種簡(jiǎn)單高效,、源代碼公開、支持多任務(wù)和搶占式內(nèi)核,、具有良好的可裁剪性的嵌入式實(shí)時(shí)操作系統(tǒng),。由于周立功單片機(jī)公司已經(jīng)提供了基于群星Cortex-M3的μCOS-II移植模板,只需要更改代碼中相應(yīng)的硬件底層驅(qū)動(dòng)即可,工作較為簡(jiǎn)單,,本文不再對(duì)該移植內(nèi)容進(jìn)行分析,。
2.1 主程序
主程序的控制流程圖如圖5所示。系統(tǒng)上電后進(jìn)行初始化(主要進(jìn)行定時(shí)器,、串口初始化),、使能中斷、設(shè)置并行通信方式,、設(shè)置工作頻率,、通信協(xié)議初始化等。UART串口初始化后等待系統(tǒng)命令,,若主機(jī)發(fā)送的命令數(shù)據(jù)包有效就會(huì)喚醒CPU工作并發(fā)送設(shè)備ID號(hào)給PC機(jī),。通過(guò)輪詢發(fā)送6B和6C協(xié)議判定命令,實(shí)現(xiàn)自適應(yīng)自動(dòng)識(shí)別并切換到相應(yīng)協(xié)議處理模式下工作,。
2.2 6C協(xié)議處理
通過(guò)設(shè)置AS3992內(nèi)部的協(xié)議控制寄存器(01)可以實(shí)現(xiàn)Gen2協(xié)議和6B協(xié)議,。設(shè)置Port<1:0>為“00”實(shí)現(xiàn)Gen 2協(xié)議,“10”實(shí)現(xiàn)6B協(xié)議,。進(jìn)入6C協(xié)議模式下,,首先要初始化AS3992,以設(shè)置各寄存器的值,,例如狀態(tài)控制寄存器設(shè)置為0x02,,協(xié)議控制寄存器設(shè)為0x06,發(fā)射控制寄存器設(shè)為0xF0,,接收控制寄存器設(shè)為0x60等,。防碰撞算法采用Epc標(biāo)準(zhǔn)規(guī)定的時(shí)隙ALOHA算法,初始化后發(fā)送select命令選擇一批標(biāo)簽后,,盤存Querystandard(q)函數(shù)產(chǎn)生隨機(jī)數(shù)q,,然后發(fā)送query命令,等待標(biāo)簽響應(yīng),,執(zhí)行ReadRN()函數(shù)讀取標(biāo)簽響應(yīng),,通過(guò)ACK()和QueryRep()命令槽計(jì)數(shù)器減值并進(jìn)行識(shí)別,正確識(shí)別唯一標(biāo)簽后將標(biāo)簽序列號(hào)計(jì)入到存儲(chǔ)器中,。識(shí)別過(guò)程中根據(jù)讀標(biāo)簽的返回情況由QueryAdjust()命令調(diào)整q值,。識(shí)別成功后發(fā)送Access()和ReqRN()命令進(jìn)行密碼高低位的驗(yàn)證,驗(yàn)證成功后才可以對(duì)標(biāo)簽操作,。具體流程圖如圖6所示,。
2.3 6B協(xié)議處理
在狀態(tài)控制寄存器中,經(jīng)“Direct”位置為“1”即可計(jì)入直接模式,。直接模式下只會(huì)用到4個(gè)IO口(IO2,、IO3,、IO5、IO6),。其中IO3用于數(shù)字調(diào)制輸入,,IO2用于RX使能輸入,IO5和IO6輸出副載波[6],。
直接模式分為兩種:當(dāng)協(xié)議控制寄存器(01)中的dir_mode為“1”時(shí),,輸出未經(jīng)解碼的副載波數(shù)據(jù)流;當(dāng)dir_mode為“0”時(shí),,輸出由ISO18000-6C協(xié)議處理器中功能相同的FM0解碼器進(jìn)行解碼之后的數(shù)據(jù)流[3]。直接模式下采用基于曼徹斯特編碼的動(dòng)態(tài)二進(jìn)制搜索算法,,以及CRC-16校驗(yàn)方式,,設(shè)置鏈路頻率為40 kHz。發(fā)送指令后要退出直接模式,,在普通模式下接收數(shù)據(jù),,才能使用內(nèi)置解碼器來(lái)輸出數(shù)據(jù)流。CRC校驗(yàn)錯(cuò)誤時(shí),,檢測(cè)發(fā)生錯(cuò)誤的最高沖突位X,,并將其置為0,然后重新傳送(N-X)位后即中斷傳輸,,標(biāo)簽比對(duì)N-X位并返回響應(yīng)數(shù)據(jù),。CRC校驗(yàn)若無(wú)錯(cuò),計(jì)數(shù)器cnt減1,、found加1,;若有錯(cuò)誤,則再將最高沖突位置0后重新發(fā)送命令,,直至最后搜索范圍內(nèi)標(biāo)簽數(shù)cnt=0結(jié)束,。具體流程圖如圖7所示。
本文設(shè)計(jì)了一款基于AS3992和LM3S8962單片機(jī)的ISO18000-6B和6C雙協(xié)議自適應(yīng)超高頻讀寫器,,并給出了軟,、硬件的設(shè)計(jì)方案。讀寫器可以實(shí)現(xiàn)四通道天線連接,,增加了標(biāo)簽的讀取范圍,,發(fā)射功率可達(dá)到32 dBm,讀取距離可達(dá)7 m,。本系統(tǒng)開發(fā)周期短,、功耗低、識(shí)別距離遠(yuǎn),,具有廣闊的應(yīng)用前景,。
參考文獻(xiàn)
[1] 黃玉蘭.物聯(lián)網(wǎng)射頻識(shí)別(RFID)核心技術(shù)詳解[M].北京:人民郵電出版社,,2010.
[2] 譚海燕,崔如春,,肖志良,,等.基于AS3990/AS3991的超高頻RFID讀寫器的設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2010,,36(3):54-56.
[3] 唐焯宜.基于AS3991的超高頻RFID讀寫器設(shè)計(jì)[D].廣州:中山大學(xué),,2010.
[4] 汪大卓,孫玲玲,,蔡鵬鵬.一種便攜式超高頻RFID讀寫器的設(shè)計(jì)[J].杭州電子科技大學(xué)學(xué)報(bào),,2010,30(5):33-35.
[5] 劉長(zhǎng)軍,,黃卞瑪,,閆麗萍.射頻通信電路設(shè)計(jì)[M].北京:科學(xué)出版社,2005.
[6] Austria micro systems.AS3992 datasheet[EB/OL].[2012-04 -28].http://www.austriamicmsystems.com.