RFID(radio frequency identification)技術(shù)是指以識(shí)別和數(shù)據(jù)交換為目的,利用感應(yīng),、無(wú)線電波或微波進(jìn)行非接觸雙向通信的自動(dòng)識(shí)別技術(shù),,利用這種技術(shù)可以實(shí)現(xiàn)對(duì)所有物理對(duì)象的追蹤和管理。2006年EPC global(全球產(chǎn)品電子代碼管理中心)納入ISO/IEC 18000-6C標(biāo)準(zhǔn),,批準(zhǔn)了新標(biāo)準(zhǔn)EPC Gen2,,用于900 MHz左右的UHF的RFID技術(shù)規(guī)范,現(xiàn)在被我國(guó)作為第1類第2代UHF RFID 860 MHz-960 MHz通信協(xié)議,。UHF頻段RFID系統(tǒng)具有讀寫(xiě)速度快,、存儲(chǔ)容量大、識(shí)別距離遠(yuǎn),、成本低,、尺寸小等特點(diǎn),更適合未來(lái)物流,、供應(yīng)鏈領(lǐng)域的應(yīng)用,,也為實(shí)現(xiàn)“物聯(lián)網(wǎng)”提供可能。因此超高頻RFID系統(tǒng)的發(fā)展是當(dāng)今RFID系統(tǒng)發(fā)展的重點(diǎn),。這里所提出的UHF讀寫(xiě)器是基于EPC Gen2標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn)的,,閱讀器對(duì)標(biāo)簽的讀寫(xiě)是通過(guò)發(fā)送射頻能量和對(duì)回波檢測(cè)來(lái)實(shí)現(xiàn)的,其中由標(biāo)簽返回給閱讀器數(shù)據(jù)發(fā)送采用FM0編碼格式。
1 FMO編碼原理
FM0(即Bi-Phase Space)編碼的全稱為雙相間隔碼編碼,。在一個(gè)位窗內(nèi)采用電平變化表示邏輯,。如果電平從位窗的起始處翻轉(zhuǎn),則表示邏輯“1”,。如果電平除了在位窗的起始處翻轉(zhuǎn),,還在位窗中間翻轉(zhuǎn)則表示邏輯“O”。根據(jù)FM0編碼的規(guī)則可以發(fā)現(xiàn)無(wú)論傳送的數(shù)據(jù)是0還是1,,在位窗的起始處都需要發(fā)生跳變,,如圖1所示。
根據(jù)EPC Gen2協(xié)議規(guī)定,,從標(biāo)簽接收剄的數(shù)據(jù)都是FM0編碼格式,,是以前同步碼開(kāi)始的,前同步由2部分構(gòu)成:前12個(gè)前導(dǎo)零與之后的6位特定位,。需要注意的是在前同步碼中有1位發(fā)生了偏移(即應(yīng)發(fā)生相轉(zhuǎn)化但實(shí)際上沒(méi)有),,表示為“V”,用于區(qū)分前同步碼與數(shù)據(jù)碼,,前同步碼之后為收到的數(shù)據(jù),,如圖2所示。
2 UHF讀寫(xiě)器讀寫(xiě)原理
根據(jù)EPC Gen2標(biāo)準(zhǔn),,該UHF讀寫(xiě)器屬于半雙工通信,,遵循讀寫(xiě)器先發(fā)言(RTF)原則,即標(biāo)簽是否需要返回信號(hào)建立在有沒(méi)有接收到并正確解調(diào)出讀寫(xiě)器發(fā)來(lái)的指令,。系統(tǒng)開(kāi)始工作時(shí),,先由讀寫(xiě)器通過(guò)射頻模塊進(jìn)行調(diào)制,發(fā)出一系列的讀標(biāo)簽指令,,當(dāng)標(biāo)簽進(jìn)入讀寫(xiě)器響應(yīng)區(qū)域時(shí),,接收到射頻能量,開(kāi)始解調(diào)讀寫(xiě)器的指令,,只有正確得到讀指令后,,標(biāo)簽才會(huì)將自己的ID信息等數(shù)據(jù)通過(guò)反向散射方式回發(fā)給讀寫(xiě)器。讀寫(xiě)器將收到的反向散射信號(hào)解調(diào)成基帶信號(hào)之后再送到處理器中進(jìn)行解碼處理,。
標(biāo)簽主要由射頻接口(天線,、數(shù)據(jù)調(diào)制、解調(diào),、電源電路),、控制邏輯及EEPROM存儲(chǔ)器3個(gè)模塊構(gòu)成,調(diào)制解調(diào)模塊完成對(duì)發(fā)送接收信號(hào)的調(diào)制解調(diào),,能量檢測(cè)電路通過(guò)天線線圈接收到電壓后給控制中心提供穩(wěn)定的電壓,。控制邏輯由沖突檢測(cè)、讀寫(xiě)控制,、存取控制,、EEPROM接口控制和RF接口控制部分組成,主要負(fù)責(zé)處理與外部通信協(xié)議和與讀寫(xiě)EEPROM,。
采用高性能的ARM7的LPC2103進(jìn)行解碼,,采用12MHz外部晶振,該芯片可內(nèi)部倍頻,,內(nèi)部時(shí)鐘工作在60 MHz的頻率上,完全滿足高速下的解碼需求,。LPC2103有2個(gè)32位的捕獲比較器,,具有多達(dá)7路捕獲通道。采用LPC2103的定時(shí)器TO和相應(yīng)的捕獲引腳,,在輸入信號(hào)發(fā)生上跳變或者下跳變時(shí)捕獲定時(shí)器值,,并產(chǎn)生中斷將該定時(shí)器值取出進(jìn)行判斷,其系統(tǒng)框圖如圖3所示,。
3 FMO解碼
根據(jù)FMO解碼的特點(diǎn),,目前常見(jiàn)的解碼方法是:根據(jù)起始處的上升沿或下降沿以及位窗中的采樣點(diǎn)來(lái)判斷出此位窗所表示的數(shù)據(jù)。設(shè)定一個(gè)位窗時(shí)間長(zhǎng)度為T(mén),,1)位窗起始處為下降沿,,在該位窗3/4T處采樣,采樣為1則位窗表示數(shù)據(jù)“0”,,采樣為0則位窗表示數(shù)據(jù)“1”,;2)位窗起始處為上升沿,在該位窗3/4T處采樣,,采樣為1則位窗表示數(shù)據(jù)“1”,,采樣為0則位窗表示數(shù)據(jù)“0”。
這種方法的缺點(diǎn)很明顯,。因?yàn)閁HF頻段頻率很高,,當(dāng)在接收過(guò)程中會(huì)出現(xiàn)頻率偏移的情況時(shí),會(huì)造成位寬時(shí)間T較大的變化,,而程序仍以固定的時(shí)間間隔3/4T去解碼,,所以每次都會(huì)發(fā)生一定的偏移,根據(jù)協(xié)議,,UHF讀寫(xiě)器將接收到標(biāo)簽傳送過(guò)來(lái)的1個(gè)128字節(jié)的數(shù)據(jù),,這樣在解碼過(guò)程中,將出現(xiàn)累積偏移過(guò)多導(dǎo)致漏讀或多讀情況,,從而產(chǎn)生誤判,。
通過(guò)讀寫(xiě)器命令設(shè)置,可以使標(biāo)簽返回?cái)?shù)據(jù)采用160 Kb/s的速率,在FM0碼相鄰兩個(gè)邊沿之間的間隔只可能有3種情況:0.5T,、T,、1.5T。在12 MHz的外部時(shí)鐘下,,“0”的高半位寬“H”和低半位寬“H”為3.125μs,,捕獲出的定時(shí)器計(jì)數(shù)值為0x25左右,記為0.5T,;收到1個(gè)“0”或者1個(gè)“1”的位寬為6.25 μs,,捕獲出的定時(shí)器計(jì)數(shù)值為Ox4B左右,記為T(mén),;在前同步碼中,,“V”的位寬為9.375μs,捕獲出的定時(shí)器計(jì)數(shù)值為0x70左右,,記為1.5T,。解碼流程圖如圖4所示。
根據(jù)FMO碼特點(diǎn),,當(dāng)捕獲到一個(gè)“H”或者“L”時(shí),,要判斷這個(gè)O.5T是“0”的前半位還是后半位。是前半位時(shí),,要等待下一個(gè)0.5T結(jié)合成1個(gè)“0”,;是后半位時(shí),要與之前剩余的半位結(jié)合成“0”,。捕獲到1個(gè)T寬度的數(shù)據(jù)時(shí),,則記為“1”。
在進(jìn)行對(duì)接收到的FMO碼解碼時(shí),,因?yàn)闆](méi)有同步信號(hào),,所以必須要先對(duì)數(shù)據(jù)進(jìn)行同步,也就是要先解碼到連續(xù)的12個(gè)“0”與之后的1010 V1前同步碼數(shù)據(jù),,才能對(duì)后面真正需要的數(shù)據(jù)進(jìn)行解碼,。在解前同步碼時(shí),前12個(gè)“O”按照2個(gè)0.5T組成1個(gè)“0”的原則,,要有連續(xù)的24個(gè)0.5T出現(xiàn)才會(huì)進(jìn)行下面的解碼,,不然就會(huì)返回重新開(kāi)始統(tǒng)計(jì)12個(gè)“0”。在之后解碼1010V1時(shí),,要注意一個(gè)特殊的位“V”,,當(dāng)捕獲到一個(gè)1.5T寬度的數(shù)據(jù)時(shí),才記為“V”,;在此期間,,只要解碼出一位有錯(cuò)誤,,則返回重新開(kāi)始統(tǒng)計(jì)12個(gè)“0”。只有前同步碼全部正確解出時(shí),,才能進(jìn)行對(duì)需要的數(shù)據(jù)進(jìn)行解碼,,依據(jù)捕獲到的寬度是0.5T還是1T來(lái)判斷是“0”的半位還是一個(gè)完整的“1”。
在EPC Gen2使用中,,根據(jù)讀寫(xiě)器發(fā)送命令的不同,,標(biāo)簽返回的FM0碼里或者存在CRC5,或者存在CRC16,,或者沒(méi)有校驗(yàn),,有CRC的碼在解碼完成后都要進(jìn)行CRC校驗(yàn)。當(dāng)檢測(cè)到結(jié)束位時(shí),,CRC校驗(yàn)正確,,則本次通信正常,可以進(jìn)行下一步的通信,。
在實(shí)際運(yùn)用中,讀寫(xiě)器接收回路上會(huì)出現(xiàn)發(fā)送回路泄露過(guò)來(lái)的很多雜波信號(hào)以及一些毛刺,,會(huì)有連續(xù)多個(gè)“0”出現(xiàn),,會(huì)形成連續(xù)的24個(gè)寬度為0.5T的間隔,可能會(huì)誤判成前同步碼開(kāi)始,,但后續(xù)的前同步碼解碼過(guò)程在出現(xiàn)1.5T寬的“V”時(shí)會(huì)出錯(cuò),,在進(jìn)行校驗(yàn)或檢測(cè)停止位時(shí)也可能會(huì)出現(xiàn)錯(cuò)誤,這時(shí)也要重新搜索前同步碼,。
4 結(jié)束語(yǔ)
在UHF讀寫(xiě)器設(shè)計(jì)中,,關(guān)鍵問(wèn)題就是對(duì)接收到的解調(diào)數(shù)據(jù)進(jìn)行正確解碼,既要解決信號(hào)頻率的偏移,,也要能在高速通信過(guò)程中,,快速正確解碼,采用這種解碼方法可以在對(duì)FM0碼捕獲位寬的同時(shí)進(jìn)行同步解碼,,速度比較快,,而且由于對(duì)載波頻率的變化不敏感,故讀卡成功率高,。