徐玉明,王烈
(廣西大學計算機與電子信息學院,廣西南寧 530004)
衣柜在人們的日常生活中扮演不可缺少的角色。衣柜過大或者衣物擺放不合理,會導致人們經(jīng)常難以確定衣物的位置,甚至于丟失衣物,這體現(xiàn)了衣物管理效率低的問題。為了能夠準確、快速和方便地找到衣物,文中基于射頻識別技術(shù)(RFID),設(shè)計了一款智能衣柜的衣物定位系統(tǒng)[1~2]。
RFID 是自動識別技術(shù)的一種,使用無線射頻的方式讀取或?qū)懭霐?shù)據(jù)至目標中。其特點是通過射頻信號自動識別目標并獲得有關(guān)數(shù)據(jù),識別的過程無需人為干涉,可以在惡劣環(huán)境中正常工作,且識別距離遠,讀寫速度快,廣泛應用于各個領(lǐng)域中[3-7]。
文中針對衣物在衣柜內(nèi)尋找困難,尤其是衣物收納、管理效率低的問題下,設(shè)計了一款在智能衣柜中應用的基于RFID 的定位系統(tǒng)[7]。該系統(tǒng)主要采用FPGA 平臺以及RFID 技術(shù)支持,首先把衣物的屬性定義到RFID 標簽中,通過射頻閱讀器對衣物標簽進行識別,通過計算后得出定位信息,并通過液晶顯示屏實時顯示衣物所在衣柜內(nèi)的區(qū)域。
文中的主要創(chuàng)新點:首先,在衣柜系統(tǒng)上結(jié)合RFID 技術(shù),可將衣物外觀及位置信息顯示在液晶屏上,解決用戶尋衣難問題。其次,進一步提升了算法,使用改進型雙頻相位差定位算法,相比于單頻相位差定位算法提高了測距精度及廣度。
系統(tǒng)主要由RFID 系統(tǒng)、FPGA 主控模塊和顯示模塊構(gòu)成,總體框圖如圖1 所示。
圖1 系統(tǒng)總體框圖
1)RFID 系統(tǒng)
設(shè)計的RFID 系統(tǒng)主要由閱讀器和電子標簽構(gòu)成,其功能如下:電子標簽附著在衣物的表面,存儲著衣物的屬性特征(如編號、款式、顏色等);閱讀器的主要功能是發(fā)送和接收射頻信號,實現(xiàn)與電子標簽通信,可以對電子標簽數(shù)據(jù)進行讀和寫。
2)FPGA 主控模塊
作為該設(shè)計的主控模塊,F(xiàn)PGA 模塊具有靈活性高、速度快和帶寬高等特點,在該系統(tǒng)的主要作用是對閱讀器采集到的信息進行處理,將定義的標簽屬性數(shù)據(jù)與數(shù)據(jù)庫里的衣物數(shù)據(jù)進行匹配,以實現(xiàn)尋找衣物的目的[8-9]。
3)顯示模塊
顯示模塊是將FPGA匹配成功的衣物顯示出來,并顯示該衣物所處衣柜內(nèi)的區(qū)域,達到方便尋找的目的。
該系統(tǒng)實現(xiàn)的功能是:首先把衣物的屬性特征寫入電子標簽的芯片中,將電子標簽附著在衣物上;而后閱讀器通過讀取電子標簽返回信號的相位差來精準定位衣物的位置和接收電子標簽中的數(shù)據(jù),發(fā)送至FPGA 模塊進行數(shù)據(jù)處理,得出被識別的衣物信息及方位,最后將被識別衣物的照片及所在衣柜內(nèi)的位置顯示在顯示屏上。
因文章篇幅有限,下文主要介紹智能衣柜RFID系統(tǒng)的設(shè)計實現(xiàn)。
2.1.1 電子標簽
RFID 系統(tǒng)電子標簽附著在被識別的衣物上,它由芯片和天線組成,芯片作為RFID 系統(tǒng)的數(shù)據(jù)載體,儲存了用戶定義信息,天線主要接收閱讀器發(fā)射出的信號,并且把自身的數(shù)據(jù)發(fā)射給閱讀器[10-12]。電子標簽是通過電磁方向耦合的原理把信號反射回閱讀器,其內(nèi)部等效電路如圖2 所示。該系統(tǒng)采用無源電子標簽,其識別精度在厘米級別,可以很好地滿足該系統(tǒng)的設(shè)計需求。
圖2 標簽等效電路
該電子標簽內(nèi)部電路會形成一個相位延遲:
式中,ω是信號角頻率,值為2πf,R、C、L、ω,取值與電路相位延遲有關(guān)。
2.1.2 閱讀器
閱讀器主要由讀寫模塊、射頻模塊、天線和電源等組成[13],是發(fā)射信號給電子標簽,實現(xiàn)相互通信的設(shè)備。
閱讀器天線的作用與電子標簽天線類似,用于發(fā)出射頻信號以及接收電子標簽反射回的射頻信號。與天線相鄰的是射頻模塊,該模塊有兩個信號通道:發(fā)射、接收信號通道,發(fā)射出去的信號和接收回的信號都由射頻模塊進行調(diào)制解調(diào)。讀寫模塊的作用是與射頻模塊通信,負責信號的加密和解密及防碰撞算法的處理,還要與數(shù)據(jù)處理模塊連接,用于處理標簽送回的數(shù)據(jù),設(shè)計的數(shù)據(jù)處理模塊是FPGA[14-16]。
RFID 系統(tǒng)通信框架如圖3 所示。
圖3 RFID系統(tǒng)通信框架
RFID 系統(tǒng)上電工作時,首先由FPGA 模塊向閱讀器發(fā)送指令,閱讀器接收到指令后,對指令內(nèi)容進行解析,而后根據(jù)RFID 協(xié)議規(guī)定輸出對應的指令編碼。指令經(jīng)過閱讀器的射頻模塊調(diào)制后,加載到載波上,而后由天線發(fā)出已經(jīng)調(diào)制好的載波信號給電子標簽。信號由電子標簽接收并反射回時,閱讀器天線檢測到信號,會經(jīng)過濾波、解調(diào)與解碼等處理后,儲存數(shù)據(jù),最終把處理后數(shù)據(jù)送達FPGA模塊。
FPGA 模塊主要在RFID 通信中,主要功能是發(fā)送指令控制閱讀器,以完成與電子標簽的通信。
2.3.1 相位差測距原理
相位差測距法利用的是多頻雷達測距原理,閱讀器發(fā)出頻率不同的信號,但信號經(jīng)過相同的傳播路徑后又反射回閱讀器,測距結(jié)果是由閱讀器接收到信號的相位差來換算的。
相位差測距基本過程如圖4 所示,第一步由FPGA 模塊向閱讀器發(fā)出指令,而后閱讀器開始工作,發(fā)送一段調(diào)制后的載波信號Signal1 給電子標簽,標簽接收到Signal1 信號,該信號一部分提供給電子標簽作為正常工作所需要的能量,另一部分經(jīng)過電子標簽調(diào)制后反射回信號Signal2 給接收器,處理后可得出相位差,最后傳送到FPGA 模塊進行計算,得出相隔距離。
圖4 相位差測距原理
如圖5 所示,t1時刻,閱讀器發(fā)送初始相位分別為θ1和f的信號,再通過電子標簽反射到閱讀器,t2時刻信號送達閱讀器的相位為θ2。若閱讀器和電子標簽的間距是d,全程經(jīng)過路程為2d,所用時間為t2-t1。電磁波的傳播速度為c=3.0×108m/s(空氣中傳播),則距離d為:
圖5 信號傳播過程
傳播過程中的相位差ΔΦ為:
將式(2)與式(3)合并可得:
式(4)無法測量得出n,因此需通過下面的方法避免使用n。
閱讀器先后發(fā)送fa與fb的調(diào)制信號,經(jīng)過電子標簽后反射回閱讀器,即得出兩個信號相位差ΔΦa與ΔΦb:
對式(6)與式(5)作差得:
化簡后得:
為了降低RFID 系統(tǒng)的測量誤差,依次發(fā)射多組fi(i=1,2,…,N)信號,得出相應的相位差,再使用最小二乘擬合,解出的最優(yōu)解。
2.3.2 改進型雙頻相位差定位算法
傳統(tǒng)的單頻相位差測距可由式(5)表示,根據(jù)計算結(jié)果可得,頻率越高,模糊距離越?。:嚯x指ΔΦ為2 π 時d的值)。若頻率范圍為920~925 MHz,由d=計算出模糊距離約為16 cm,即檢測距離超過16 cm,檢測的距離不正確,所以改進后的雙頻相位差定位算法可以避免上述錯誤。
雙頻測距方法就是控制閱讀器發(fā)射兩個高頻波段,相減得到第二次相位差,當兩載波相差5 MHz時,由圖6 中Φa=4πfad/c與Φb=4πfbd/c相減,得出識別距離可達到15 m,可以解決模糊距離為16 cm的問題,算法原理如圖6 所示。
圖6 雙頻測距算法原理
該設(shè)計采用的是無源電子標簽,且是家中衣柜定位測距,所以通信距離不會超過12 m,即使用最大頻帶5 MHz,也能達到15 m測距,完全滿足設(shè)計要求。
2.3.3 系統(tǒng)測距方法
根據(jù)相位差的測距原理可實現(xiàn)閱讀器與電子標簽的厘米級測距精度,下面將討論如何將測得距離與衣柜的區(qū)域?qū)?/p>
衣柜測距環(huán)境如圖7 所示,假設(shè)衣柜分為三個存儲區(qū)域(1 區(qū)、2 區(qū)、3 區(qū)),每個區(qū)域?qū)挾葹?0 cm?;疑匦螀^(qū)域內(nèi)為電子標簽放置區(qū)域(衣架與衣物連接處),橢圓形區(qū)域為閱讀器安裝區(qū)域。
圖7 衣柜測距示意圖
閱讀器與電子標簽大致處于同一水平處,若系統(tǒng)測得閱讀器與電子標簽相距0~50 cm,則液晶屏上將顯示衣物儲存在3 區(qū),相距50~100 cm 則顯示衣物儲存在2 區(qū),以此類推。該方法可以簡單有效知曉衣物所在區(qū)域,方便用戶有目的的尋找。
智能衣柜系統(tǒng)的程序流程圖如圖8 所示。當系統(tǒng)上電后,F(xiàn)PGA 模塊首先初始化系統(tǒng),然后向閱讀器發(fā)送識別指令。閱讀器接收到FPGA 指令后,發(fā)射調(diào)制信號給電子標簽,若所在區(qū)域內(nèi)有電子標簽,則電子標簽對接收到的信號進行調(diào)制后反射回閱讀器,閱讀器對反射回的信號進行處理,該過程為一個完整的標簽識別過程。若所在區(qū)域內(nèi)無電子標簽,則閱讀器一直發(fā)送調(diào)制信號,直至有電子標簽應答為止。閱讀器將收到的信號處理后發(fā)送到FPGA 模塊,F(xiàn)PGA 將信號處理轉(zhuǎn)換成距離數(shù)據(jù),并結(jié)合2.3.2 節(jié)所示方法,將電子標簽所在的區(qū)域顯示在液晶屏上。
圖8 主程序流程圖
根據(jù)上述測相位差方法,該系統(tǒng)在Matlab 的Simulink 進行了仿真,測距精準度受實際環(huán)境中各種因素的牽制,導致精度可能會降低,所以在Simulink仿真過程中添加隨機白噪聲,以便結(jié)果更接近實際值。在閱讀器發(fā)射出的信號頻率分別為900 MHz、905 MHz 的情況下,在0~500 cm 的區(qū)域內(nèi)隨機選擇了8 個待測點,測得的相位差見表1。
表1 測量相位差
根據(jù)表1 可知,絕對誤差有正負之分,表中相位差可以轉(zhuǎn)換成測距誤差。轉(zhuǎn)化成實際誤差后,第2、4、6 這三個點的誤差稍微偏大,分別為3.95 cm、3.86 cm和7.78 cm,造成此誤差的原因可能是電磁波等環(huán)境因素的干擾,可見通過雙頻相位差定位算法可以大幅度減少絕對誤差,更好地實現(xiàn)室內(nèi)定位測距。該系統(tǒng)的相位差測距基本可滿足室內(nèi)測距的精度要求。
文中提出了基于RFID 技術(shù)的智能衣柜系統(tǒng),測量精度誤差約為4 cm,能滿足大部分室內(nèi)測距的精度需求。為了實現(xiàn)該RFID 測距系統(tǒng)在結(jié)構(gòu)復雜且障礙物多的衣柜環(huán)境中的正常使用,閱讀器需要分別發(fā)射多個頻率相差不大的調(diào)制信號,可得出多組信號的相位差,將其中跳變嚴重的相位差信號挑出,并使用最小二乘擬合,以提升測距的精度。此外,可以增加多個電子標簽,閱讀器最少可以同時識別四個電子標簽。該系統(tǒng)相比于傳統(tǒng)衣柜可以有效解決尋找衣物難和衣柜存儲空間管理效率低的問題。