1 引言
RFID(Radio Frequency Identification)也稱射頻識別技術(shù),可實現(xiàn)更大范圍內(nèi)的物品跟蹤與信息共享,并大幅提高管理與運作效率,降低成本。目前RFID 應用軟件多數(shù)都是圍繞中間件或讀寫器進行設(shè)計[3],本文提出并初步實現(xiàn)了面向RFID 應用部署的可視化仿真系統(tǒng)。該系統(tǒng)利用組態(tài)技術(shù)實現(xiàn),仿真運行基于標簽事件驅(qū)動,并在RFID 測試數(shù)據(jù)的統(tǒng)計分析基礎(chǔ)上設(shè)計了虛擬設(shè)備仿真算法,可以幫助用戶針對具體RFID 應用部署場景建立直觀準確的應用模型系統(tǒng)。通過將應用場景內(nèi)各種實物和RFID 設(shè)備等部署單元抽象為仿真模型,模擬其工作特性和相互關(guān)系[1],來分析測試RFID 部署方案在實際應用中出現(xiàn)的主要問題和影響因素,進而提出科學合理的解決方案,為進行實際應用開發(fā)提供技術(shù)支持。
2 系統(tǒng)結(jié)構(gòu)與流程設(shè)計
2.1 體系框架
如圖1 所示,系統(tǒng)主要由用戶界面模塊、數(shù)據(jù)處理模塊、虛擬設(shè)備模塊以及RFID 測試數(shù)據(jù)庫和本地數(shù)據(jù)庫五部分組成,它們之間接口獨立,相互協(xié)調(diào)工作,共享信息。在該體系架構(gòu)中,用戶界面模塊是系統(tǒng)的用戶接口,負責顯示各種界面控件、部署效果以及動態(tài)仿真動畫等,用戶根據(jù)具體RFID 應用場景和業(yè)務需求自定義部署系統(tǒng),配置界面調(diào)用虛擬設(shè)備模塊的各種虛擬設(shè)備屬性和配置參數(shù)供用戶修改,其中用到的各種參數(shù)均從RFID 測試數(shù)據(jù)庫中下載。虛擬設(shè)備模塊對仿真系統(tǒng)中的虛擬標簽和虛擬讀寫器進行統(tǒng)一管理,實時接收運行過程中產(chǎn)生的各種原始數(shù)據(jù)進行相關(guān)計算,將計算結(jié)果提交數(shù)據(jù)處理模塊進行二次數(shù)據(jù)處理(如業(yè)務規(guī)則事件觸發(fā)),所有結(jié)果數(shù)據(jù)保存在本地數(shù)據(jù)庫中,同時將部分數(shù)據(jù)返回至用戶界面模塊。這里需要提到的是設(shè)備驅(qū)動子模塊,該模塊統(tǒng)一封裝常用RFID 設(shè)備廠商驅(qū)動并提供EPC Global 規(guī)定的讀寫器標準接口,目的是在必要時連接RFID 實物設(shè)備對仿真系統(tǒng)某些關(guān)鍵節(jié)點進行校正[6],使總體仿真結(jié)果更加準確可靠。RFID 測試數(shù)據(jù)庫作為整個系統(tǒng)的數(shù)據(jù)源實時保持更新,它可以存儲在服務器數(shù)據(jù)庫中,也可以保存在本地數(shù)據(jù)庫中,供仿真系統(tǒng)下載和調(diào)用相關(guān)數(shù)據(jù),程序代碼通過JDBC 技術(shù)來訪問數(shù)據(jù)庫。
?
?
?
圖1 RFID 部署仿真系統(tǒng)體系架構(gòu)模型
2.2 RFID 測試數(shù)據(jù)庫
為了使系統(tǒng)的仿真結(jié)果準確可靠,所有虛擬設(shè)備配置參數(shù)和后臺仿真算法的數(shù)據(jù)源均由RFID 測試數(shù)據(jù)庫提供,該數(shù)據(jù)庫為關(guān)系型數(shù)據(jù)庫,主要包括讀寫器參數(shù)表、讀寫器配置表、標簽-距離表、標簽-速度表、標簽-角度表、標簽-高度表、標簽-介質(zhì)表、標簽-數(shù)量表、標簽-溫度表、標簽-濕度表等數(shù)據(jù)表格,各項數(shù)據(jù)表格內(nèi)的測試數(shù)據(jù)均在實驗室模擬環(huán)境測試得出。
2.3 動態(tài)仿真流程
系統(tǒng)動態(tài)仿真流程如圖 2 所示,仿真系統(tǒng)運行之前首先載入RFID 測試數(shù)據(jù),用戶根據(jù)實際應用需求自定義應用部署系統(tǒng),系統(tǒng)自動將各項配置轉(zhuǎn)化為具體參數(shù)并保存,供系統(tǒng)仿真運行時調(diào)用。這里的運行態(tài)基于事件驅(qū)動設(shè)計,利用多線程并行實現(xiàn),每個線程中仿真模擬一個或多個虛擬標簽,若虛擬標簽觸發(fā)虛擬讀寫器成功,則根據(jù)用戶自定義業(yè)務邏輯規(guī)則尋找對應的標簽事件,保存至本地數(shù)據(jù)庫并實時顯示在系統(tǒng)界面中。當所有線程的標簽事件觸發(fā)完畢時,仿真系統(tǒng)運行結(jié)束,此時所有仿真運行數(shù)據(jù)均保存在本地數(shù)據(jù)庫中,部分數(shù)據(jù)同時顯示在系統(tǒng)界面內(nèi)供用戶查詢。最后啟動數(shù)據(jù)分析挖掘模塊,根據(jù)自定義統(tǒng)計規(guī)則和數(shù)據(jù)挖掘算法對本地數(shù)據(jù)庫中的相關(guān)數(shù)據(jù)進行整理歸納,統(tǒng)計仿真系統(tǒng)的靜態(tài)負載、動態(tài)負載、流程瓶頸等指標,同時自動生成相應的咨詢建議供用戶參考[6],以文字和圖表的形式反饋至系統(tǒng)界面。
?
?
?
圖2 系統(tǒng)仿真流程
2.4 虛擬標簽觸發(fā)算法
判斷虛擬標簽是否觸發(fā)指定虛擬讀寫器是仿真系統(tǒng)運行的關(guān)鍵環(huán)節(jié),觸發(fā)概率算法的準確與否直接決定仿真結(jié)果的可信性,以下為虛擬標簽的觸發(fā)概率算法:
?
?
下面以虛擬標簽運行到坐標(x, y)時為例,計算與坐標為(v, w)虛擬讀寫器之間的觸發(fā)概率算法如下:
//此方法通過線程循環(huán)方式實現(xiàn)讀寫器對虛擬標簽讀取概率的計算,t為讀寫器的讀取標簽循環(huán)指令周期
?
?
?
?
3 系統(tǒng)實現(xiàn)
系統(tǒng)在Microsoft Windows Server 2003 操作系統(tǒng)、Eclipse 3.2 + JDK1.6 + SWT Designer6.0,SQL Server 2000 數(shù)據(jù)庫的環(huán)境下開發(fā)。
3.1 界面實現(xiàn)
界面按照操作順序主要分為三類界面:
(1) 新建項目界面。用戶新建項目、參數(shù)配置、RFID 設(shè)備選擇和RFID 設(shè)備配置。
(2) 系統(tǒng)主界面。提供可視化部署窗口,并顯示部署系統(tǒng)動態(tài)運行的動畫效果。
(3) 運行結(jié)果分析統(tǒng)計界面。生成統(tǒng)計結(jié)果和咨詢建議,以文字和圖表的形式顯示。
3.2 接口實現(xiàn)
該系統(tǒng)接口主要分為兩大類:第一種是代碼模塊之間的數(shù)據(jù)傳輸接口,這些接口由Java語言本身定義。第二種接口是代碼模塊與數(shù)據(jù)庫之間的數(shù)據(jù)傳輸接口,此類接口基于JDBC技術(shù)實現(xiàn),以XML 標準格式進行傳輸。
3.3 功能實現(xiàn)
系統(tǒng)實現(xiàn)的主要功能有:
(1) 提供用戶對仿真部署方案的新建、保存、修改和刪除等功能。
(2) 對系統(tǒng)仿真部署過程中提供各種操作功能,如添加、刪除、修改,參數(shù)設(shè)置等。
(3) 以動畫仿真和界面數(shù)據(jù)實時動態(tài)更新等形式提供生動的用戶交互界面。
(4) 提供對本地數(shù)據(jù)庫原始數(shù)據(jù)的查詢和過濾功能,但是用戶沒有修改權(quán)限。
(5) 以圖表的形式提供良好直觀的仿真結(jié)果分析查詢功能。
(6) 提供對仿真系統(tǒng)流程瓶頸、負載壓力以及潛在不穩(wěn)定節(jié)點等各項指標的分析功能。
(7) 提供系統(tǒng)常用維護功能,包括操作日志管理,本地數(shù)據(jù)庫數(shù)據(jù)導出等。
4 總結(jié)
本文所論述的RFID 部署仿真系統(tǒng)基于組態(tài)技術(shù)和事件驅(qū)動進行設(shè)計,可以直觀有效幫助用戶配置和部署RFID 應用系統(tǒng),建立虛擬設(shè)備仿真模型,向RFID 系統(tǒng)部署用戶或開發(fā)人員提供一個良好的可視化開發(fā)平臺。該系統(tǒng)基于RFID 測試數(shù)據(jù)庫進行設(shè)計,根據(jù)環(huán)境參數(shù)的設(shè)置模擬應用現(xiàn)場RFID 設(shè)備的讀取情況,盡量保證仿真系統(tǒng)的準確性和可信性。
本文作者創(chuàng)新點為將組態(tài)虛擬技術(shù)應用到RFID 應用部署過程中,針對RFID 技術(shù)特性的設(shè)計了虛擬化設(shè)備模型和標簽觸發(fā)規(guī)則等,并引入了現(xiàn)場測試數(shù)據(jù)來修正模擬運行結(jié)果,從而在一定程度上解決了當前RFID 技術(shù)不成熟和標準不統(tǒng)一對實際部署造成的各種困難。
?
評論
查看更多