超高頻RFID讀寫器設(shè)計(jì)
射頻身份識別(RFID,Radio Frequency Identification),是一種非接觸式的自動(dòng)識別技術(shù),它主要由讀寫器和標(biāo)簽組成,具有讀寫距離遠(yuǎn)、使用壽命高、讀寫方便、快捷等優(yōu)點(diǎn)。隨著RFID技術(shù)的深入研究,RFID系列電子產(chǎn)品逐漸應(yīng)用到千家萬戶,UHF是超高頻段,此頻段讀寫器讀寫距離遠(yuǎn)、讀寫速度快,已應(yīng)用在供應(yīng)鏈管理、航空管理和后勤管理等行業(yè)。
本文介紹一種UHF頻段的RFID讀寫器設(shè)計(jì),單片機(jī)采用飛利浦的LPC2103,設(shè)計(jì)簡單,基于ISO/IEC 18000-6C協(xié)議,可以做到多標(biāo)簽環(huán)境下成功識別標(biāo)簽并與其進(jìn)行數(shù)據(jù)交互。本文對協(xié)議做了大體介紹,闡述了整個(gè)系統(tǒng)設(shè)計(jì)的硬件架構(gòu),重點(diǎn)介紹了軟件設(shè)計(jì)中的數(shù)據(jù)基帶處理部分,對防碰撞部分、脈沖間隔編碼(PIE編碼)和雙向間隔解碼(FMO解碼)做了詳細(xì)介紹。
1 ISO/IEC 18000-6C協(xié)議
1.1 ISO/IEC 18000-6C協(xié)議簡介
ISO/IEC 18000是基于物品管理的射頻識別(RFID)的國際標(biāo)準(zhǔn),按工作頻率的不同分為7部分,第6部分頻率為860~930 MHz,即UHF頻段。ISO/IEC 18000-6系列標(biāo)準(zhǔn)包括了ISO/IEC 18000-6A,ISO/IEC 18000-6B和ISC/IEC 18000-6C三種類型,6B主要應(yīng)用于交通領(lǐng)域,6C主要應(yīng)用于物流、生產(chǎn)管理和供應(yīng)鏈管理領(lǐng)域。由于生產(chǎn)銷售的數(shù)量遠(yuǎn)遠(yuǎn)超過B類,C類有逐步替代B類的趨勢,成為目前RFID研究的熱點(diǎn)。
ISO/IEC18000-6C協(xié)議規(guī)定了讀寫器與標(biāo)簽的物理和邏輯要求,采用讀寫器先發(fā)言的形式。表1為此規(guī)定的讀寫器和標(biāo)簽通信部分參數(shù)。
讀寫器與標(biāo)簽通信過程中濱寫器的狀態(tài)分為Select、Inventory和Access 3個(gè)狀態(tài),而標(biāo)簽狀態(tài)則分為Ready、Arbitrate、Reply等7個(gè)狀態(tài)。
1.2 防碰撞算法
ISO/IEC 18000-6C協(xié)議采用隨機(jī)槽時(shí)隙防碰撞算法,標(biāo)簽用槽計(jì)數(shù)器值決定與讀寫器通信與否,讀寫器用QueryRep來設(shè)置標(biāo)簽槽時(shí)隙計(jì)數(shù)器的值,用QueryAdjust設(shè)置Q值大小,從而決定標(biāo)簽槽時(shí)隙計(jì)數(shù)器的范圍,圖1為選擇Q值的算法。
圖1中參數(shù)Q、Qfp和C均為正整數(shù),信息幀長度為F=2^Q-1,Q是動(dòng)態(tài)變化的,初值取round(Qfp)。一個(gè)時(shí)隙后,若該時(shí)隙是沖突時(shí)隙,則將Qfp加上參數(shù)C;若是空閑時(shí)隙,則將Qfp減去參數(shù)C;若是成功時(shí)隙,則Qfp保持不變。閱讀器根據(jù)新的Q=round(Qfp)來決定是繼續(xù)發(fā)送下一個(gè)時(shí)隙還是重新開啟一個(gè)新的幀。
2 讀寫器硬件設(shè)計(jì)
讀寫器射頻前端設(shè)計(jì)中發(fā)射通路采用射頻芯片,接收通路采用I、Q相干解調(diào),利用兩級放大器和比較器,其系統(tǒng)硬件設(shè)計(jì)結(jié)構(gòu)如圖2所示。
依據(jù)協(xié)議,擬定了此設(shè)計(jì)中讀寫器與標(biāo)簽通信的主要參數(shù),如表2所示。
為保證能夠達(dá)到預(yù)期通信參數(shù),設(shè)計(jì)選用飛利浦的LPC2103,此芯片價(jià)格便宜,帶串口,資源非常豐富,具有8 KRAM,32 K Flash,32 bit和16 bit的定時(shí)器,30個(gè)可用I/O口,時(shí)鐘頻率最高可達(dá)70 MHz。
射頻發(fā)送芯片選用SI4031,此芯片是一款可編程的鎖相環(huán)芯片,低功耗,支持FSK、GFSK和OOK調(diào)制,數(shù)據(jù)率為1~128 Kb/s,可以通過數(shù)字編程控制其輸出頻率,在240~930 MHz的頻率范圍內(nèi)的跳頻操作。接收回路采用相關(guān)解調(diào),并用分離元件搭建解調(diào)電路,I、Q兩路返回信息依次經(jīng)過惰性電路、濾波電路,再經(jīng)過兩級具有恒流源補(bǔ)償?shù)牟罘址糯箅娐?,最后?jīng)過比較器,完成解調(diào)。微處理器和發(fā)送通路部分電路分別如圖3和圖4所示。
3 讀寫器軟件設(shè)計(jì)
3.1 數(shù)字基帶處理模塊
數(shù)字基帶處理模塊是整個(gè)軟件設(shè)計(jì)的核心,它包括編解碼、數(shù)據(jù)分析、防碰撞等部分,數(shù)字基帶處理部分基本框圖如圖5所示。
3.2 讀寫器防碰撞流程
數(shù)字基帶處理部分中,防碰撞部分是重中之重,也是整個(gè)讀寫器設(shè)計(jì)的關(guān)鍵部分。此設(shè)計(jì)中采用隨機(jī)槽時(shí)隙仲裁防碰撞算法,解決了讀寫器在多標(biāo)簽環(huán)境下無法識別標(biāo)簽的問題,圖6為讀寫器防碰撞大體流程。
3.3 讀寫器PIE編碼設(shè)計(jì)
PIE(Pulse interval encoding)編碼,即脈沖間隔編碼,通過定義脈沖下降沿之間的不同時(shí)間寬度來表示數(shù)據(jù)。在標(biāo)準(zhǔn)中定義一個(gè)名稱為“Tari”的時(shí)間間隔,也成為基準(zhǔn)時(shí)間間隔,該時(shí)間段為相鄰兩個(gè)脈沖下降沿的時(shí)間寬度,持續(xù)時(shí)間為25μs。此設(shè)計(jì)中數(shù)據(jù)0和1的PIE編碼與“Tari”時(shí)間按段的關(guān)系如表3所示。設(shè)計(jì)中使用定時(shí)器進(jìn)行較精確的PIE編碼。
PIE編碼過程:首先設(shè)置編碼邏輯,即定時(shí)器中的值大于等于T時(shí)輸出為1,小于T時(shí)為輸出0,然后等待編碼信號來臨。在編碼信號來臨后,從FIFO中取數(shù)據(jù),如果為0,則設(shè)置定時(shí)器值為2T,時(shí)鐘每來一次做自減運(yùn)算;數(shù)據(jù)為1時(shí)則設(shè)置定時(shí)器中的值為4T,時(shí)鐘每來一次做自減運(yùn)算。
3.4 讀寫器解碼設(shè)計(jì)
FMO(Bi-Phase Space)解碼,即雙相間隔解碼,工作原理是在一個(gè)位窗內(nèi)采用電平變化來表示邏輯。如果電平只從位窗的起始處翻轉(zhuǎn),則表示邏輯“1”,如果電平除了在位窗的起始處翻轉(zhuǎn),還在位窗中間翻轉(zhuǎn)則表示邏輯“0”,如圖7所示。一個(gè)位窗的持續(xù)時(shí)間是25μs。
FMO解碼大體過程:首先讀寫器同時(shí)對I和Q兩路信號進(jìn)行采樣,利用狀態(tài)機(jī)檢測返回幀頭的正確性,讀寫器根據(jù)幀頭的正確性來決定對I或Q路信號進(jìn)行解碼。針對FMO編碼的特點(diǎn)可知,F(xiàn)MO每個(gè)數(shù)據(jù)單元的起始處發(fā)生翻轉(zhuǎn),由此可以根據(jù)起始處的上升沿或下降沿以及位窗中的采樣點(diǎn)來判斷出此位窗所表示的數(shù)據(jù)。設(shè)定一個(gè)位窗時(shí)間長度為T,一種情況是位窗起始處為下降沿,在該位窗3/4T處采樣,采樣為1則位窗表示數(shù)據(jù)“0”,采樣為0則位窗表示數(shù)據(jù)“1”;另一種情況是位窗起始處為上升沿,在該位窗3/4T處采樣,采樣為1則位窗表示數(shù)據(jù)“1”,采樣為0則位窗表示數(shù)據(jù)“0”。
4 結(jié)束語
本文中設(shè)計(jì)主芯片采用LPC2103與Si4031,硬件電路簡單易于實(shí)現(xiàn);基于ISO/IEC 18000-6C,利用防碰撞算法設(shè)計(jì)實(shí)現(xiàn)了UHF頻段讀寫器在多標(biāo)簽環(huán)境下順利與標(biāo)簽進(jìn)行通信,增強(qiáng)了讀寫器的讀寫性能;最后通過簡單分析,介紹了PIE編碼和FMO解碼的過程。