物聯(lián)傳媒 旗下網(wǎng)站
登錄 注冊

面向復(fù)雜事件處理的RFID引擎設(shè)計與實現(xiàn)

作者:微型機(jī)與應(yīng)用2010年第16期
來源:RFID世界網(wǎng)
日期:2016-05-09 16:42:26
摘要:無線射頻識別是信息采集技術(shù)之一,通過研發(fā)RFID引擎,提出在面向復(fù)雜事件處理的RFID引擎的設(shè)計思想與相關(guān)算法,通過使用所設(shè)計的引擎對數(shù)據(jù)進(jìn)行實時采集,測試結(jié)果證明設(shè)計是可行的。

  RFID技術(shù)是利用無線電波自動識別人或者物的技術(shù)。該系統(tǒng)一般由電子標(biāo)簽、數(shù)據(jù)管理系統(tǒng)和讀寫器三部分組成,準(zhǔn)確地獲取RFID的數(shù)據(jù)是射頻識別系統(tǒng)的關(guān)鍵。

  目前,RFID技術(shù)仍然發(fā)展不成熟,尤其是在事件處理方面存在如下缺陷:一方面,來自閱讀器的標(biāo)簽信息數(shù)據(jù)量太大,并且包含過多的冗余數(shù)據(jù),降低了事件處理的效率;另一方面,標(biāo)簽所包含的語義信息過于簡單,無法被上層應(yīng)用軟件直接使用;再者,利用無線電波頻率自動識別,當(dāng)現(xiàn)場電子標(biāo)簽過多時,RFID識別的準(zhǔn)確性與讀取速度會明顯下降。RFID中間件在事件處理方面僅僅利用平滑過濾算法對標(biāo)簽數(shù)據(jù)做簡單的平滑處理,隨后將處理后的標(biāo)簽數(shù)據(jù)上傳給應(yīng)用層,這種情況在數(shù)據(jù)量小的情況下可以滿足一定的需求,可是RFID大部分的應(yīng)用環(huán)境所面對的都是海量的數(shù)據(jù),因此傳統(tǒng)的事件處理方法大大增加了上層應(yīng)用軟件的負(fù)擔(dān),使其數(shù)據(jù)處理效率急劇下降,不能滿足現(xiàn)實的需求。因此,在復(fù)雜事件情況下,如果把數(shù)據(jù)處理部分由RFID引擎(即讀寫器系統(tǒng))在進(jìn)入之前就由應(yīng)用軟件來完成,是一個理想的選擇。

  1 復(fù)雜事件處理概念

  復(fù)雜事件處理(Complex Event Progressing)技術(shù)是20世紀(jì)90 年代中期由斯坦福大學(xué)的David Luckham教授提出是一種新興的基于事件流的技術(shù),它將系統(tǒng)數(shù)據(jù)看作不同類型的事件,通過分析事件間的關(guān)系(成員關(guān)系、時間關(guān)系、因果關(guān)系以及包含關(guān)系等)建立不同的事件關(guān)系序列庫(即規(guī)則庫),再利用過濾、關(guān)聯(lián)、聚合等技術(shù)由簡單事件產(chǎn)生高級事件。在研究構(gòu)建RFID引擎時,先進(jìn)行定性的理論模型的研究。

面向復(fù)雜事件處理的RFID引擎設(shè)計與實現(xiàn)

  從復(fù)雜事件定義中可以看出在發(fā)生復(fù)雜事件情況下正確快速的電子標(biāo)簽是一個十分值得研究的課題。短距離的RFID讀寫器與電子標(biāo)簽一般是一對一讀寫設(shè)計,即短距離的RFID讀寫器在設(shè)計中只允許一次讀一個電子標(biāo)簽,當(dāng)近距離有多個電子標(biāo)簽時,讀寫器不能工作。對于長距離的RFID讀寫器,如在半徑30 m距離范圍內(nèi),其RFID讀寫器的檢測電子標(biāo)簽最好不要超過30個,如果再考慮交集域,則所讀電子標(biāo)簽就更多,這種情況下要準(zhǔn)確讀取電子標(biāo)簽,就必須要制定通信協(xié)議,使范圍內(nèi)的電子標(biāo)簽?zāi)馨错樞?、?zhǔn)確無誤地逐一讀寫。

  2 復(fù)雜事件處理的RFID引擎設(shè)計

  2.1 設(shè)計總體思想

  在復(fù)雜事件下,RFID引擎設(shè)計分為兩大部分:一是發(fā)射及接收部分,另一個是讀寫控制與通信部分。

  發(fā)射及接收部分的作用是:(1)產(chǎn)生無線發(fā)射的能量;(2)對發(fā)射的信號進(jìn)行調(diào)制;(3)接收并解調(diào)來自射頻的電子標(biāo)簽的信號并進(jìn)行存取。

  讀寫控制與通信部分的作用是:(1)能完成與應(yīng)用系統(tǒng)上位機(jī)通信,并執(zhí)行上位機(jī)指令;(2)控制與電子標(biāo)簽的通信過程;(3)完成信號的編碼、解碼;(4)執(zhí)行信號安全加密、解密及各種算法,進(jìn)行電子標(biāo)簽、RFID引擎設(shè)計及一般閱讀器身份認(rèn)證。

  除此之外,還應(yīng)考慮產(chǎn)品的小型化、低成本、多功能多數(shù)據(jù)接口問題,以及發(fā)射、接收制式、波段的兼容等問題。

  2.2 關(guān)于引擎設(shè)計

  讀取電子標(biāo)簽的準(zhǔn)確與否,首先取決于系統(tǒng)結(jié)構(gòu)的優(yōu)劣。

  本設(shè)計的通信結(jié)構(gòu)包括:

  (1)物理層。只完成信息的準(zhǔn)確交互,不進(jìn)行任何信息的檢測、校正。

  (2)網(wǎng)絡(luò)層。保存最新的節(jié)點地址表,包括物理地址和虛擬地址。

  (3)傳輸層。決定通信節(jié)點和完成節(jié)點的多次握手,建立通信、信息的打包并交付下層進(jìn)行發(fā)送或接收數(shù)據(jù)。最后,通過網(wǎng)絡(luò)模塊連接PC,并與其信息交互。

  建立了可靠的通信后,假如此時要讀電子標(biāo)簽的信息,就要在引擎收到標(biāo)簽的確認(rèn)信息后把下一步收到的標(biāo)簽內(nèi)容發(fā)給PC機(jī);假如此時要寫標(biāo)簽的信息,則要在標(biāo)簽發(fā)送完確認(rèn)信息后等待來自讀寫器的數(shù)據(jù)包,讀寫器收到節(jié)點的確認(rèn)信息后發(fā)送數(shù)據(jù)包。由上所述特制定的指令包如表1、表2、表3所示。

面向復(fù)雜事件處理的RFID引擎設(shè)計與實現(xiàn)

  2.3 引擎的工作原理

  圖1所示為引擎工作的方框圖。

面向復(fù)雜事件處理的RFID引擎設(shè)計與實現(xiàn)

  (1)引擎要求與某個電子標(biāo)簽進(jìn)行通信,此時引擎發(fā)送地址指令包,請求建立通信,數(shù)據(jù)包中包括讀或?qū)懙戎噶钚盘?(2)電子標(biāo)簽收到地址指令包后,發(fā)送自己的標(biāo)簽內(nèi)容到該引擎;(3)引擎收到電子標(biāo)簽的內(nèi)容后,再把內(nèi)容打包發(fā)回給該電子標(biāo)簽;(4)該電子標(biāo)簽把收到的內(nèi)容與自己的標(biāo)簽內(nèi)容進(jìn)行比較,如果相同表示兩者間的通信可靠,此時發(fā)送確認(rèn)信息;如果不同表示兩者通信不可靠,此時發(fā)送失敗信息并轉(zhuǎn)與上位應(yīng)用系統(tǒng)、上位PC通信驗證;假如重復(fù)多次都失敗,則引擎向PC機(jī)報警。

  關(guān)于地址表的建立與確定:

  創(chuàng)建兩個地址表data1和data2用于保存最近兩次搜索到的電子標(biāo)簽地址,引擎每搜索一次電子標(biāo)簽地址,便把該地址表輪流保存在data1和data2中并進(jìn)行排序,搜索完畢后,按新舊地址表的順序進(jìn)行比較。此時建立兩個執(zhí)行地址表rundata1和rundata2,如果沒有新地址表,而舊地址表的電子標(biāo)簽地址保存在ruandata1中表示該標(biāo)簽移出了檢測范圍;如果有新地址表,而在舊地址表中沒有電子標(biāo)簽保存在rundata2,表示有新標(biāo)簽移進(jìn)檢測范圍。最后兩個執(zhí)行地址表的地址分開上傳給PC機(jī),并進(jìn)行報告。

  圖2所示為面向復(fù)雜事件處理的RFID引擎的方框圖。

面向復(fù)雜事件處理的RFID引擎設(shè)計與實現(xiàn)

  3 設(shè)計的實現(xiàn)與效果

  硬件實現(xiàn)可以采用自主開發(fā)硬件,也可采用已有IC及電子器件構(gòu)成硬件電路。設(shè)計的電路要建立系統(tǒng)模型,開發(fā)要符合中國無線頻譜規(guī)范和RFID通信協(xié)議要求。

  設(shè)計采用高性能射頻收發(fā)器CC1101,用雙51系列MCU,其中一個可通過SPI 接口連接CC1101的主要運行參數(shù)并對發(fā)送/接收FIFO口進(jìn)行控制;而另一個與存取、輸入設(shè)備連接,利用軟件控制算法,完成對區(qū)域內(nèi)一定數(shù)量電子標(biāo)簽的準(zhǔn)確讀寫。

  表4所示是引擎在復(fù)雜條件下閱讀電子標(biāo)簽的測試結(jié)果。

面向復(fù)雜事件處理的RFID引擎設(shè)計與實現(xiàn)

  從表4可以看出,引擎識別水平還沒有達(dá)到在任何時間任何條件下閱讀準(zhǔn)確度都為100%。這樣,引擎的準(zhǔn)確度不能得到嚴(yán)格保證,從而信息的出錯率就不能降到最低。環(huán)境影響、貼標(biāo)簽物品的材質(zhì)、一次閱讀標(biāo)簽的數(shù)量都會影響到閱讀的精確度。如果RFID不能夠提供足夠高的信息精確度,其應(yīng)用無疑不會受到歡迎。針對這種情形,還可以通過設(shè)置冗余引擎以及改善閱讀流程來提高準(zhǔn)確度。