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