黃 彪,鄒傳云,何 毅,焦良玉
(西南科技大學(xué) 信息工程學(xué)院,綿陽 621000)
射頻識別(Radio Frequency Identification,RFID)[1]是一種基于射頻信號的非接觸式自動識別技術(shù),閱讀器發(fā)出射頻信號與標(biāo)簽進行數(shù)據(jù)通信,完成對標(biāo)簽數(shù)據(jù)的收集和識別。隨著射頻識別技術(shù)被廣泛應(yīng)用于物流管理、物品跟蹤、高速公路收費、無接觸支付等領(lǐng)域,對射頻標(biāo)簽成本、制造工藝和體積有了更高要求,傳統(tǒng)的有芯片標(biāo)簽已無法滿足要求,無芯片標(biāo)簽應(yīng)運而生。無芯片標(biāo)簽有著成本低、可打印、體積小等優(yōu)點,近年來受到業(yè)界的廣泛關(guān)注,陸續(xù)出現(xiàn)了基于時域、頻率、相位編碼等多種不同編碼原理的無芯片標(biāo)簽[2~6]。
如果多個標(biāo)簽處在同一個RFID閱讀器天線覆蓋的區(qū)域內(nèi)時,會引起多標(biāo)簽信號的相互干擾,造成RFID閱讀器不能成功獲取每個標(biāo)簽的數(shù)據(jù)。為了能夠同時識別多個標(biāo)簽,需要研究相應(yīng)的算法進行識別,這便是多標(biāo)簽識別算法(防碰撞算法)。針對有芯片標(biāo)簽,業(yè)界已經(jīng)提出了ALOHA算法[7~10]、查詢樹算法[11]、碰撞樹算法[12]、二叉樹算法[13]等多標(biāo)簽識別算法。由于內(nèi)部不含芯片,傳統(tǒng)有芯片多標(biāo)簽識別算法不能應(yīng)用于無芯片標(biāo)簽,需要為無芯片標(biāo)簽單獨研究多標(biāo)簽識別算法。目前關(guān)于無芯片多標(biāo)簽識別算法的研究還處于初始階段。文獻[14]應(yīng)用分?jǐn)?shù)傅里葉變換聯(lián)合時頻域來區(qū)分來自多個標(biāo)簽的響應(yīng),但該方法對多個多比特標(biāo)簽的識別無效。在文獻[15]中,作者提出了一種基于FMCW雷達技術(shù)的方法,它由中頻信號的頻譜分析實現(xiàn)多個標(biāo)簽沖突的檢測,該方法不能恢復(fù)每個標(biāo)簽的ID。文獻[16]提出了一種基于短時矩陣束的方法,該方法根據(jù)標(biāo)簽散射信號極點的穩(wěn)定區(qū)間來區(qū)分不同的標(biāo)簽,但該方法穩(wěn)定性不佳,容易受到噪聲的影響。
本文提出了一種基于短時傅里葉變換(STFT)的多標(biāo)簽識別算法,并使用FEKO電磁仿真軟件仿真驗證算法對3個標(biāo)簽的識別能力。實驗結(jié)果表明,算法能夠成功識別3個標(biāo)簽,標(biāo)簽諧振頻率識別誤差小于100MHz,驗證了該算法對多標(biāo)簽識別的有效性。
1971年Baum將傳統(tǒng)電路中求解瞬態(tài)響應(yīng)的方法推廣到瞬態(tài)電磁場問題中,提出了電磁散射的極點展開法(Singularity Expansion Method,SEM)[17]。SEM理論揭示了受電磁脈沖照射的目標(biāo),它的時域瞬態(tài)散射后時響應(yīng)是入射電磁波信號完全經(jīng)過目標(biāo)以后,目標(biāo)表面產(chǎn)生的感應(yīng)電流逐漸衰減而輻射出去的電波,即一些自激振蕩衰減信號,在數(shù)學(xué)上,它在時域可近似成一系列的復(fù)自然諧振頻率指數(shù)之和:
其中es(t)為被照射目標(biāo)的散射電場信號,M為極點個數(shù),Rm為每個極點對應(yīng)的留數(shù),sm為信號的復(fù)極點,可表示為sm=am+jwm(am為衰減因子,一般取負(fù)數(shù);wm為自然諧振角頻率,一般取正數(shù))。根據(jù)SEM理論可知,閱讀器發(fā)送射頻信號照射無芯片標(biāo)簽的過程與電磁脈沖照射任意目標(biāo)的過程是等價的,因此單個無芯片RFID標(biāo)簽的散射信號可表示為式(1)。
對于多個標(biāo)簽,每個標(biāo)簽散射信號到達閱讀器天線存在一定的時間差,所以閱讀器天線收到的標(biāo)簽散射信號為每個標(biāo)簽散射信號經(jīng)過一定延遲之后的疊加和:
式(2)中,r和t分別表示檢測信號的位置和時間,N為標(biāo)簽的個數(shù),Mn為第n個標(biāo)簽的極點個數(shù),Rn,m為第n個標(biāo)簽的第m個極點對應(yīng)的留數(shù),sn,m為第n個標(biāo)簽的第m個極點,tn為第n個標(biāo)簽到達閱讀天線的延遲時間,U(t)為單位階躍函數(shù)。
傳統(tǒng)傅里葉變換對信號的分析是全局性,它觀察信號在整個時間維度包含的頻率成分。傳統(tǒng)傅里葉變換無法得知頻率信息隨時間變化的情況(局部特性),為了得到信號頻率的局部特性,將原信號乘以一個沿著時間軸滑動的窗函數(shù)g(t),對窗函數(shù)與信號的乘積進行傅里葉變換,得到頻率隨時間變化的關(guān)系,這種方法便稱為短時傅里葉變換(Short-Time Fourier Transform,STFT)。任意信號x(t)的STFT可表示為:
SF(τ,f)是關(guān)于時間τ和頻率f的函數(shù),對于給定時間τ,SF(τ,f)可看作該時刻信號對應(yīng)的瞬時頻率,對于給定頻率f,SF(τ,f)可表示f隨著時間變化的關(guān)系。通過短時傅里葉變換獲得的頻譜同時具有時域和頻率信息,因此可以將STFT用于分析頻率重合和頻率隨時間變化的信號。
在實際應(yīng)用中,對信號x(t)進行短時傅里葉變換之前,需要先將信號進行離散化處理。在給定采樣頻率fs的情況下,采樣間隔△t=1/fs,t=k△t,x(t)經(jīng)過采樣之后變?yōu)閤(t),k為代表離散的時間。使式子(3)中的τ=m△t,可得x(t)的短時傅里葉變換:
x(t)的STFT為一個二維矩陣,矩陣的行代表采樣時間點,矩陣的列代表采樣頻率值。對式(4)求模可得到頻率的幅值矩陣:
由式(5)中可以得到每一個頻率點的幅值隨時間變化的關(guān)系,這為之后計算無芯片RFID標(biāo)簽諧振頻率的幅值變化關(guān)系打下了理論基礎(chǔ)。
在電磁信號照射標(biāo)簽時會與標(biāo)簽表面的金屬結(jié)構(gòu)產(chǎn)生諧振,諧振會導(dǎo)致標(biāo)簽散射信號的頻譜中產(chǎn)生峰值信號,頻譜的尖峰位置對應(yīng)的頻率便是標(biāo)簽諧振頻率,通過檢測頻譜中尖峰出現(xiàn)的位置來確定標(biāo)簽的諧振頻率大小。為了得到諧振頻率時間-幅值關(guān)系,使用快速傅里葉變換對標(biāo)簽散射信號進行變換得到標(biāo)簽散射信號的時頻譜,通過諧振頻率在時頻譜中的位置,提取出每個諧振頻率的時間-幅值曲線,提出的具體流程如圖1所示。
圖1 提取諧振頻率時間-幅值曲線流程
標(biāo)簽散射信號為衰減復(fù)指信號,在頻域內(nèi)表現(xiàn)為標(biāo)簽諧振頻率的幅值會隨著時間不斷衰減。但當(dāng)多個標(biāo)簽散射信號依次以不同時間差到達閱讀器天線時,標(biāo)簽中相同大小的諧振頻率的幅值會發(fā)生疊加,導(dǎo)致重合的諧振頻率幅值不會隨著時間一直衰減,會出現(xiàn)先衰減再增大,然后再衰減,具體表現(xiàn)為局部極小值。出現(xiàn)極小值的時間點代表了標(biāo)簽散射信號之間發(fā)生了信號重疊?;诖颂匦裕ㄟ^檢測諧振頻率的時間-幅值曲線中局部極小值出現(xiàn)的個數(shù)和出現(xiàn)的時間點來區(qū)分不同的標(biāo)簽。得出每個標(biāo)簽的ID,進而達到識別多個標(biāo)簽的目的。獲取標(biāo)簽ID算法的流程如圖2所示。
圖2 提取標(biāo)簽諧振頻率時間幅值曲線流程
在FEKO電磁仿真平臺上建立了3個不同編碼的條形開槽標(biāo)簽,編碼長度為3bit,整個標(biāo)簽的結(jié)構(gòu)如圖3所示。標(biāo)簽表面不同長度的條形槽在受到閱讀器信號照射時,會產(chǎn)生不同的諧振頻率,諧振頻率大小與條形槽長度成反比。實驗中采用的3個標(biāo)簽尺寸都為45mm×10mm,編碼的諧振頻率為5.30GHz,6.60GHz,7.80GHz,對應(yīng)的條形槽長度依次為:L1=33mm,L2=37mm,L3=40mm,寬度w=0.2mm。每個標(biāo)簽編碼的不同,表面條形槽的個數(shù)和長度也不同。標(biāo)簽將諧振頻率存在編碼為‘1',不存在編碼為‘0'。3bit標(biāo)簽的諧振頻率編碼規(guī)則如表1所示。
表1 標(biāo)簽編碼規(guī)則
圖3 條形開槽標(biāo)簽結(jié)構(gòu)
在FEKO平臺上仿真出閱讀查詢信號照射標(biāo)簽#T1(111),標(biāo)簽#T2(101)和標(biāo)簽#T3(010)時(標(biāo)簽與閱讀天線之間的距離各不相同),閱讀器天線接收到的標(biāo)簽散射信號(采樣長度N=200,采樣頻率fs=20GHz),信號如圖4所示。
圖4 標(biāo)簽散射信號
在實驗中,短時傅里葉變換的窗函數(shù)g(t)選擇如圖5(a)所示的Hamming窗,窗口寬度W在經(jīng)過多次試驗之后,最終選擇W=N/4。使用短時傅里葉變換對標(biāo)簽散射信號進行變換之后,得到圖5(c)所示的時頻譜。沿著圖5(c)中的頻率軸可以看出頻譜存在3個峰值,這3個峰值的頻率值便是標(biāo)簽信號的諧振頻率,沿著時間軸可以看出每個諧振頻率的幅值不會一直衰減,會出現(xiàn)局部極小值。使用圖1所示的算法從上一步得到的時頻譜中提取出圖5(d)所示的標(biāo)簽諧振頻率的時間-幅值曲線。從圖5(d)中可以看出,總共存在3條曲線,頻率分別為:5.274GHz,6.567GHz,7.861GHz。其中,5.274GHz的時間-幅值曲線存在兩個局部極小值點,出現(xiàn)時間點大約在0s,2.1ns處;6.567GHz的時間-幅值曲線存在兩個局部極小值點,出現(xiàn)時間點大約在0s,2.2ns處;7.861GHz的時間-幅值曲線也存在兩個局部極小值點,出現(xiàn)時間大約在0s,3.9ns處。
圖5 多標(biāo)簽識別結(jié)果
通過圖2所示的算法對諧振頻率時間-幅值曲線的局部極小值點進行提取并分析得到每個標(biāo)簽的諧振頻率和對應(yīng)編碼。從表2中可知3個標(biāo)簽的諧振頻率都能準(zhǔn)確識別出來,諧振頻率的識別誤差小于100MHz,并根據(jù)編碼規(guī)則得到每個標(biāo)簽的ID。
表2 標(biāo)簽識別結(jié)果
為了探究算法在噪聲情況下對多標(biāo)簽的識別能力,對圖4所示的標(biāo)簽散射信號分別添加10db和5db的高斯噪聲。通過同樣的算法流程計算出標(biāo)簽諧振頻率幅值曲線,在10db噪聲的情況下,如圖6所示,標(biāo)簽諧振頻率的時間-幅值曲線依然比較光滑,局部極小值清晰可見,算法能夠根據(jù)局部極小值點的個數(shù)和出現(xiàn)時間點來區(qū)分不同的標(biāo)簽,提取出的諧振頻率的誤差仍然小于100MHz;在5db噪聲的情況下,如圖7所示,由于標(biāo)簽散射信號隨著時間衰減,信號的后半段淹沒在噪聲中,導(dǎo)致諧振頻率時間-幅值曲線的后半段主要包含了噪聲的幅值信息,后半段幅值出現(xiàn)小幅度波動,出現(xiàn)多個非標(biāo)簽諧振頻率重合引起的局部極小值點,導(dǎo)致算法對標(biāo)簽的誤識別。
圖6 10db噪聲下的諧振頻率幅值曲線
圖7 5db噪聲下的諧振頻率幅值曲線
本文將短時傅里葉變換應(yīng)用到無芯片RFID多標(biāo)簽識別研究中,提出一種基于短時傅里葉變換的多標(biāo)簽識別算法。在對無芯片RFID標(biāo)簽散射信號研究過程發(fā)現(xiàn),單標(biāo)簽散射信號的諧振頻率的幅值會隨著時間不斷衰減,多個標(biāo)簽散射信號以不同時間差到達閱讀器天線,導(dǎo)致重合的諧振頻率幅值不會隨著時間一直衰減,會出現(xiàn)先衰減再增大,然后再衰減。算法依據(jù)此特性,通過檢測諧振頻率時間-幅值曲線的局部極小值出現(xiàn)的時間點來區(qū)分不同標(biāo)簽。以3個標(biāo)簽的識別為例,實驗結(jié)果表明,該算法能成功識別3個標(biāo)簽的ID,諧振頻率識別誤差小于100MHz,驗證了該算法在無芯片RFID多標(biāo)簽識別方面的有效性。