1. 引言
近年來,隨著技術的不斷完善和標簽價格的持續下降,越來越多的RFID技術及產品被應用于零售、物流、倉儲、生產制造、智能交通、動物識別、圖書館管理等領域,正在向人們日常生活和工作的各個方面快速滲透[1-3]。RFID技術應用迅速發展的同時,用戶也提出了不同設備與應用系統之間的接口,海量而復雜的RFID數據處理和利用等問題,此外,新建系統與原有信息系統之間無縫集成,如何快速適應未來業務需求和硬件設備的變化也對RFID系統的設計和集成提出了新的挑戰。解決這些問題的有效方法就是構建并部署RFID中間件(Middleware)。對于應用軟件開發,中間件提供了具有可移植性的標準協議和標準接口,定義了一個相對穩定的高層應用環境,不管底層的計算機硬件和系統軟件怎樣更新換代,只要將中間件升級更新,并保持中間件對外的接口定義不變,應用軟件幾乎不需任何修改,從而保護了企業在應用軟件開發和維護中的投資。此外,RFID中間件可以幫助企業解決RFID 數據采集、RFID 硬件設備兼容、RFID應用系統與現有系統集成等問題,解決各種業務系統之間的數據共享與業務協同等問題[3-5]。
當前,RFID 中間件平臺軟件主要是國外SUN、IBM、BEA等廠商提供相關產品,并在各自市場上居于壟斷的地位。這些國外產品的共同特點是功能覆蓋面寬、技術先進、產品價格和服務成本高昂,只有很少的高端客戶才能夠負擔得起[6-9]。從自主創新的角度出發,本研究將中間件技術、RFID技術、面向服務的體系結構(Service-Oriented Architecture,SOA)和企業服務總線(Enterprise Service Bus,ESB)架構結合起來,研究和構建一個基于ESB架構的RFID 中間件產品。以增強RFID 應用系統的業務適應能力,簡化RFID應用系統開發的復雜度。縮短RFID 項目的實施周期,降低RFID 應用系統的開發成本,滿足RFID 應用中涌現的信息資源交換、共享、整合等需求,提高RFID系統的開放性和可復用性;
2. 系統架構
企業對 RFID 數據服務的要求簡單可以概括為RFID 數據的獲取、處理和維護。RFID中間件的主要作用是為企業提供RFID的數據服務,使企業在開發RFID 應用時進行靈活的部署,減少重復開發,共享RFID 中間件服務。RFID數據的獲取需要在數據產生的現場與各種硬件設備打交道,通過各種類型的RFID 讀寫設備讀取電子標簽上的信息;由于RFID技術的特點,多個RFID讀寫設備對電子標簽進行高頻率的讀取會產生重復、冗余的數據,因此必須在數據獲取后盡快對這些數據進行過濾、聚合等處理操作;維護的主要內容是對數據進行永久的存儲,并為應用系統提供查詢的功能。基于上述考慮,本研究將RFID中間件分成RFID 數據采集組件、RFID 數據管理組件、ESB 構件三部分,如圖1 所示。
圖1 基于ESB 的RFID 中間件結構圖
基于ESB 架構的RFID 中間件的流程分析:
(1)RFID 數據采集組件的數據采集引擎和寫標簽引擎被封裝為web 服務,并注冊到ESB 中。
(2)RFID 數據采集組件的EPCIS 事件捕捉引擎、EPCIS 事件查詢引擎、EPC 碼分配服務均被封裝成web 服務,注冊到ESB 中。
(3)RFID 數據采集組件通過硬件適配器與各種RFID 標簽讀寫器連接,實現對電子標簽的讀寫。
(4)應用系統及EPCIS Capturing Application 角色應用程序通過ESB 調用RFID數據采集組件的數據采集引擎服務,獲取ALE 事件信息。
(5)EPCIS Capturing Application 角色應用程序根據獲得的ALE 事件信息生成EPCIS事件信息,然后通過ESB調用RFID 中間件的EPCIS 事件捕捉引擎服務實現EPCIS 事件信息的存儲。
(6)各種應用系統,如SCM、PIM、ERP、WMS 等,通過ESB 調用RFID 數據管理組件的EPCIS 事件查詢引擎服務獲取EPCIS事件信息。
(7)應用系統也可以通過ESB 調用RFID 數據管理組件的寫標簽引擎服務,向電子標簽載體寫入EPC 代碼。
(8)RFID 數據管理組件通過ESB 調用RFID 數據采集組件的寫標簽引擎服務,訂閱或查詢寫引擎的EPC 緩存狀態;當寫引擎的EPC緩存中緩存數達到下限閥值或0 時,RFID數據采集組件通過ESB 調用RFID 數據管理組件的EPC 碼分配服務,為EPC 緩存添加新的可用條目。
3. 系統功能
在基于 ESB 的RFID 中間件中,RFID 數據采集組件和RFID 數據管理組件以及各種應用系統通過把各自提供的功能封裝為web服務的方式集成到企業服務總線上,從而為企業的RFID 應用提供RFID 的數據支持和集成支持。
3.1 RFID 數據采集組件
RFID 數據采集組件的主要功能包括:RFID 設備管理、RFID 數據采集和處理、EPC 代碼寫入RFID 電子標簽等。
(1)硬件接口功能。如圖1所示,數據采集組件使用硬件適配器與底層不同的標簽閱讀器、標簽打印機等硬件設備相連。硬件適配器支持不同協議標準的硬件設備,從而向下屏蔽RFID設備的硬件差異。此外,數據采集組件是通過邏輯閱讀器對這些硬件設備進行分組管理的。一個邏輯閱讀器可以對應一個或多個物理閱讀器,一個物理閱讀器也可以對應一個或多個的邏輯閱讀器,應用程序通過數據采集組件指定從哪些邏輯閱讀器中獲取數據[x]。硬件適配器與邏輯閱讀器的應用,有效地實現了應用與硬件的松耦合。
(2)EPC 數據采集和處理功能。由于RFID 閱讀器在一秒鐘內可以對標簽進行多次的采集,而且一個標簽還可能同時被多個閱讀器檢測到,因此在EPC數據采集的過程中出現嚴重的數據冗余;這些數據如果被直接發送,必然大大增加網絡的負荷;而且這些數據對應用程序而言也沒有使用的價值。為此,數據采集組件提供了對采集到的EPC數據進行處理的功能,包括:過濾、計數、分組、差量分析等。經過處理,數據采集組件生成ALE 事件供應用程序使用。ALE事件的內容類似“在某個時間段內,閱讀器檢測到某一類的EPC 代碼x 個,比上一次檢測增加/減少了y 個”。
(3)EPC 代碼寫入RFID 電子標簽功能。為了可靠地把EPC代碼寫入到唯一的RFID電子標簽中,寫入過程如下:首先檢查是否具備標簽寫入的條件,確保讀寫器作用范圍內可供寫入的標簽為單一,避免把一個EPC碼寫入多個標簽;檢測標簽是否可寫、是否被鎖定等;實現標簽寫入;如果失敗則設定重試次數;對寫入的內容進行校驗。
3.2RFID 數據管理組件
數據采集組件盡管對 EPC 數據進行了處理,生成了ALE 事件,但是這些事件只是對EPC數據進行了分組、計數、差量分析等,卻沒有包括商業信息在內。在RFID 應用系統中存在一些應用,它們根據數據采集組件提供的ALE 事件實現相關的操作,同時把ALE包裝成EPCIS 事件(EPCIS 事件包含EPC 相關的信息,如交易信息、組裝信息等)。這里稱這些應用為EPCIS Capturing Application角色應用程序,它支持四種EPCIS 事件類型對象的生成:對象事件(Object Event)、聚合事件(Aggregation Event)、數量事件(Quantity Event)和交易事件(Transaction Event)[x]。此外,數據采集組件沒有對ALE事件進行存儲,在實現EPC 寫入時只能保證EPC 被寫入唯一的標簽,但不能保證EPC 本身唯一。
作為RFID 中間件的另一個組成部分,數據管理組件提供以下功能:
(1)面向EPCIS 事件的數據管理功能。數據管理組件提供EPCIS 事件捕捉引擎接口實現對EPCIS 事件的獲取;在數據管理組件內通過EPCIS事件庫接口兼容各種通用的關系型數據庫(如Oracle,DB2,Sybase,Microsoft SQLServer)以及XML數據庫,實現EPCIS事件的存儲;對外向各種應用提供EPCIS 事件信息的查詢接口。
(2)EPC 碼分配服務功能。全球統一的“物聯網”要求每一張電子標簽上的EPC 代碼都是唯一的,同時不同廠家不同類型的產品往往使用不同區段的EPC代碼。數據管理組件的EPC 碼分配服務提供對數據采集組件中要寫入到電子標簽上的EPC 進行集中管理和分配的功能,既保證了EPC 的唯一性,也保證了EPC所屬的區段與產品的類型相對應。
3.3ESB 構件
ESB 構件主要為RFID 中間件提供應用間集成的功能,此外還提供了工作流定義、安全等服務,具體如下:
(1)異構系統的集成。企業服務總線提供了一個以“服務”為中心的基礎框架。在這個框架上,各種應用可以把對外提供的功能封裝為標注的web服務,客戶端與“服務”之間、“服務”與“服務”之間可以使用基于XML的消息,通過各種因特網傳輸協議(如http,ftp,smtp等)實現互操作[4]。由于XML、HTTP等技術具有與編程語言、操作系統及硬件平臺無關的特性,從而方便、有效地實現了各種異構系統的集成。在平臺中,RFID數據采集組件的數據采集引擎和寫標簽引擎,以及RFID 數據管理組件的EPCIS 事件捕捉引擎、EPCIS 事件查詢引擎和EPC 碼分配服務均被封裝成web服務,注冊到ESB 中。各種應用可以通過使用這些服務,實現電子標簽數據的獲取、EPC 代碼的寫入、EPC 相關信息的查詢等。
(2)工作流服務的定義。在企業服務總線中可以根據企業的業務流程需求,把現有的各種服務進行編排,動態生成新的服務供應用程序使用。
(3)代理服務。客戶端通過代理服務對web 服務和工作流服務進行訪問,代理服務在客戶端與服務之間提供了一個消息轉換、協議轉換和動態路由的功能。
(4)安全服務。企業服務總線在客戶端與服務之間提供了基于SSL 的傳輸層安全、基于WS-Security的消息層安全和基于客戶端授權的安全策略。
4. 應用實例
近年來,由于食品安全危機頻繁發生,嚴重影響了人們的身體健康,引起了全世界的廣泛關注,諸如禽流感、瘋牛癥、口蹄疫、孔雀石綠、蘇丹紅、食物中毒等大量事件的發生在嚴重影響人們生活。在食品安全監控系統中應用基于ESB的RFID 中間件,可以實現對食品的生產、物流、銷售、安全監督等環節進行信息跟蹤,從而大量的減少安全事件的發生,保障人們的身體健康,提高人們的生活質量。
基于ESB 的RFID 中間件在食品安全監控系統中的應用包括兩方面,一是處于食品流通環節上的各企業在該中間件之上進行RFID 應用的開發,利用RFID技術提高本企業的運行效率和信息管理水平,同時為食品安監部門提供EPC 相關的信息,即各種使用EPC標識的食品流經該環節時的信息;二是食品安監部門利用該中間件實現對食品安全問題的跟蹤和回溯。
4.1 企業內部應用架構
圖 2 所示為食品流通過程各企業應用RFID 中間件的架構。
圖2 企業內部應用架構圖
(1)生產或加工企業。在數據采集現場如生產車間,RFID 數據采集組件可以控制食品生產線末端的RFID 讀寫器向附在產品上的電子標簽寫入EPC碼,也可以控制食品生產線起始的RFID 閱讀器獲取生產該產品所用原材料的EPC 代碼。在企業總部,RFID 數據管理組件提供了對生產環節中食品EPC代碼相關信息的查詢,如某一類食品何時、何地完成生產,食品對應的訂單號,食品的數量,這批食品采用了哪些原材料等。
(2)物流企業。RFID 數據采集組件可以通過部署在各個運輸道口的RFID 閱讀器,結合GPS 或GPRS技術實時跟蹤和定位運輸容器和運輸工具;可以通過部署在物流倉庫出入口、叉車和各個倉位的RFID 閱讀器獲取出入庫食品和庫存的食品的EPC 代碼。RFID數據管理組件則提供了對物流環節中食品EPC碼相關信息的查詢,例如某時某地某些食品被裝到某臺車輛,運輸的目的地是某處,對應的運輸合同號等,又例如某個倉庫在某個時刻收到某些食品,這些食品的數量,它們在倉庫中存放的位置等。
(3)銷售企業。食品零售或批發企業可以在倉庫或賣場部署RFID數據采集組件及RFID閱讀器,對庫存情況及銷售情況進行監控,當商品存量低于一定值時及時向供貨商發出訂單請求以保證貨源,對快過期和已過期的食品進行及時處理以保證食品的安全等。在企業總部,數據管理組件提供了對銷售環節中食品EPC碼相關信息的查詢,如某個時刻某類食品的庫存,或者某一類食品在某一時刻被銷往何處等。
4.2 食品安監部門應用架構
圖 3 為RFID 中間件在食品安監部門的應用架構圖。
圖3 食品安全監管部門應用架構圖
食品安監部門通過對食品供應鏈各環節的食品質量進行檢測,或者通過消費者的投訴,發現存在安全問題的食品EPC 碼。食品安全監控部門的監控程序根據這些EPC代碼,通過網絡對食品供應鏈各環節提供的信息進行查詢分析,找出問題的起源及所有有問題的環節,實現對食品安全的監控。食品安全監控主要通過兩種方式進行:
(1)食品安全追蹤。食品安全追蹤是指食品安監部門在發現食品安全問題時,利用食品供應鏈各個環節相關企業所提供的信息查詢服務,從上往下對食品的生產→物流→銷售進行跟蹤,從而發現所有存在問題的環節,并且及時召回有問題的產品。
當發現某生產企業存在食品安全問題后,食品安監部門的安監程序可以通過該企業RFID 數據管理組件提供的web查詢服務,迅速獲取到該廠家違規生產期間生產的產品信息(產品的EPC 代碼及產品屬性等),根據產品的EPC代碼可以追蹤到產品的庫存信息和銷售信息,通過銷售信息,可以進一步知道問題食品被銷往哪些企業,并對這些企業進行類似的追蹤過程。以企業RFID數據管理組件提供的EPC 相關信息為線索,可以實現從上往下對這種多分叉樹狀網絡上的各個節點(企業)進行遍歷,實現對問題食品快速、全面的回收。
(2)食品安全回溯。當出現食品安全事故時,食品安全監控程序直接利用相關企業提供的查詢服務,從下往上進行回溯,向上層層追蹤,最終確定造成質量問題的原因,確定產品的原產地和特征。例如衛生部門發生人感染禽流感疑似案例,感染者曾食用某超市購買的雞肉;食品安全監控程序可以通過該超市的數據服務獲得所有可疑雞只的EPC相關信息,包括可疑雞只的EPC 代碼、運送可疑雞只的運輸車輛的EPC代碼、相關的運輸合同信息和供貨合同信息等;根據運輸合同信息食品安監程序向上回溯到物流環節,對當日可疑雞只的運輸過程進行調查,例如根據車輛裝貨信息(包括車輛的EPC 代碼,車廂貨物的EPC 代碼等),判斷車輛是否還裝載了來自其它養殖場的家禽;根據超市的供貨合同或運輸車輛上貨物的EPC代碼,進一步向上回溯到有關的養殖場;相關部門可以迅速對該養殖場的家禽進行檢疫,以確定問題的起源。
5. 結論
本文對 RFID 中間件技術和ESB 技術進行了研究,RFID 中間件技術為企業提供數據服務,ESB 技術為RFID中間件以及企業的其它應用提供底層的安全、集成、業務流程編排等服務,兩者相輔相成,實現了RFID應用系統與企業現有業務系統及將來要開發的系統之間的數據交換、共享,具有良好的互操作性和可擴展性。此外,基于配置的實現方式,即RFID中間件的邏輯閱讀器管理、RFID數據獲取和管理、ESB構件中的服務注冊、工作流和代理服務定制、消息轉換、安全策略的應用等,都只要通過圖形配置窗口進行相關設置就可以完成,而無需編程實現,體現了該中間件的靈活性。
責任編輯:ct
評論
查看更多