文獻標識碼: A
文章編號: 0258-7998(2013)01-0031-03
無線射頻識別RFID(Radio Frequency IDentification)技術又稱為電子標簽技術,具有非接觸、可批量讀寫、可重復利用等特點[1],使其在食品溯源系統中得到了廣泛運用。隨著食品溯源系統的廣泛應用,系統集成規模越來越大,從單個的商場、農貿市場逐步擴大到區縣甚至是城市。在分布式食品溯源系統中,RFID中間件在食品溯源應用和RFID閱讀器之間扮演著承上啟下的關鍵角色[2]。由于其具有體積小、成本低、部署方式靈活等優點,嵌入式RFID中間件非常適合在食品溯源系統中應用。
根據嵌入式的特點,本文設計了分層的輕量級嵌入式RFID中間件ERM(Embedded RFID Middleware)模型,并在嵌入式平臺上實現了該ERM中間件。
1 分布式食品溯源系統
利用嵌入式RFID中間件來構建分布式應用系統簡單而快速[3]。分布式食品溯源系統如圖1所示。溯源系統從左至右分別涉及食品流通的4個環節:生產、加工、物流、銷售。而系統自下而上可以分為3個部分:
(1)信息采集模塊:包括食品電子標簽和終端設備,二者都構成一個典型的RFID應用系統,主要完成食品的識別和EPC 碼的采集和預處理。本系統采用超高頻RFID技術,符合ISO180000-6C(EPC Global Class1 Gen2)協議。食品生產廠家將含有全球唯一的EPC碼和商品信息存儲在電子標簽中,并將其附著在食品的包裝上;食品通過各個環節時,標簽在經過閱讀器的感應區域后,會自動被閱讀器捕獲;經過防碰撞機制和安全認證后,閱讀器會將標簽信息閱讀到終端設備,這樣就實現了自動化的食品信息采集。
(2)嵌入式中間件:作為食品溯源系統的中間設備,其主要完成對終端設備的管理、數據信息采集、處理、保存和上傳到溯源平臺服務器等功能。中間件從RFID原始數據中解析出時間、商戶信息、流通狀況和溯源碼(EPC碼)等信息,將信息存入中間件數據庫并通過遠程網絡接口上傳到服務器平臺。
(3)溯源平臺服務器:通過以太網接收食品相關信息并進行處理和應用。溯源平臺服務器通過專用網與政府監控服務器連接,政府監管部門可以及時地發現和追蹤食品安全問題。消費者則可以根據銷售溯源碼,通過短信、電話方式或進入本地溯源網站,查詢食品流通記錄,以保障消費者的有效追溯權利。
分布式食品溯源系統通過RFID技術和嵌入式中間件,在互聯網的基礎上構建了物聯網信息服務系統[4],保障了食品溯源的有效性和可靠性。
2 嵌入式中間件硬件設計
為了實現高性能、低成本的嵌入式中間件,采用了高性價比的硬件設計方案。
如圖2所示,中間件硬件主要由ARM主控模塊(AT91SAM9260)和外圍器件組成。同時,選用大容量的存儲器方案,包括64 MB的SDRAM、32 MB的Flash存儲器,以及可支持擴展至4 GB的Micro SD卡。此外,還包括以下各個功能模塊:以太網接口和GPRS模塊,用于連接溯源平臺服務器;閱讀器接口包括ZigBee 傳輸模塊、RS485模塊和 RS232模塊,終端設備可以通過3種方式與中間件通信;外設接口包括USB接口和串口,用于安裝適配器驅動和復制存儲器數據到其他設備;LCD屏和鍵盤用于用戶與中間件交流,可以在中間件設備上管理終端設備和查詢相關信息;電源模塊為各部分電路供電,中間件可以使用外接適配器或電池供電。
3 嵌入式中間件軟件設計
中間件操作系統采用ARM-Linux2.6,在Linux Kernel啟動后,對外設進行初始化,運行數據庫SQlite3,然后調用各模塊,生成各線程級的任務。根據EPCglobal標準體系的建議[5]并結合嵌入式的特點,設計了適合嵌入式的RFID中間件ERM。ERM的系統整體架構由終端接口層、邏輯處理層、應用集成層組成,如圖3所示。
3.1 終端接口層
中間件架構最下層為終端接口層,其為各種類型的終端設備接口,負責把物理的硬件設備抽象為中間件的終端對象[6]。
中間件為每個終端配備一個適配器,不同種類的終端設備對應于不同類型的適配器,并且中間件可以動態地添加和刪除適配器。適配器可以直接與終端設備的閱讀器通信,收集標簽數據然后送往閱讀器接口。從閱讀器接口出來的數據為統一格式的原始數據,從而保證了不同類型的閱讀器可以完整地傳送數據到中間件。終端管理模塊主要完成不同終端的注冊驗證和管理控制。中間件可以通過配置終端對象的Driver、Rule、Dispatcher等參數,對不同的終端進行管理控制和數據讀寫。
3.2 邏輯處理層
作為中間件的核心層,邏輯處理層主要完成對終端數據的緩沖、過濾、事件處理和事件驅動控制等功能,其處理流程如圖4所示。
邏輯處理層主要包括數據處理和事件處理兩個部分。數據處理部分主要根據數據過濾規則,處理各種數據冗余,包括完成數據校驗、數據合法性驗證、刪除重復和錯誤的信息等[7]。而事件處理部分主要根據業務規則,從數據中提取各種基本事件并判斷事件類型,然后處理各種基本事件并執行相應的任務,形成相關的報告文件。
3.3 應用層
中間件架構最上層是應用層,用于提供各種應用接口。本系統主要包括本地的用戶界面和遠程網絡接口。本地用戶接口便于用戶在中間件上控制各種終端對象和查看相關信息,遠程網絡接口方便服務器遠程控制中間件和終端設備。中間件將根據服務器協議要求把數據封裝成為XML(可擴展標記語言)格式,并以TCP方式發送給溯源平臺服務器。為了方便中間件的管理和升級,中間件內嵌FTP和Telnet 服務程序。對外提供的標準接口為中間件提供了良好的擴展性和兼容性。
4 性能測試
經試驗測試,本文設計的中間件具有如下性能:
(1)體積小,部署地點接近于數據現場。該中間件尺寸為:160 mm×80 mm×40 mm,重量大約800 g(含電池),與普通的手持式設備大小接近。
(2)功耗低。最大功耗為15 W,由于采用了屏保、待機和睡眠等節能技術,平均功耗在12 W以下。
(3)系統占用資源較少,性能較高。首先將中間件通過以太網與PC測試主機連接,在PC主機上打開cmd命令行窗口,輸入Telnet 10.2.5.0(中間件IP),即可遠程登錄中間件;然后輸入root,切換到根用戶,再運行top指令。測試得到中間件性能如表1所示。
由表1可知,核心的system內存只有859 KB,加上外部中斷和遠程訪問等進程,CPU占用率不足55%,占用內存總共不到1.5 MB,其余為用戶的緩沖和處理所占用的資源和空閑資源。由此可見,該中間件系統正常運行所需的資源非常小,適合資源有限的嵌入式環境。
中間件技術是分布式食品溯源系統的中樞,它不僅能屏蔽RFID閱讀器的多樣性和復雜性,還能進行EPC信息的采集和處理,為各種應用提供集成平臺,從而促使更豐富、更廣泛的RFID應用[8]。本文針對嵌入式特點,研究了分層的嵌入式RFID中間件ERM模型,從硬件和軟件兩方面論述了嵌入式RFID中間件系統的設計和實現。經測試,該中間體積小、能耗低、占用資源少、性能高。
參考文獻
[1] Fan Wenbing,Cao Xiaoguang,Chen Yan.RFID middleware standardization and implementation[J].Microcontrollers & Embedded System Application,2008(1):16-18.
[2] 李波,謝勝利,蘇翔.嵌入式RFID中間件系統的研究與實現[J].計算機工程,2008,34(15):92-94.
[3] 禇偉杰,田永民,李偉平.基于SOA的RFID中間件集成應用[J].計算機工程,2008,34(14):84-86.
[4] 寧煥生,張瑜.中國物聯網信息服務系統研究[J].電子學報,2006,34(12A):2514-2517.
[5] 胡清,詹宜巨,黃小虎.基于RFID企業物聯網及中間件技術研究[J].微計算機信息,2009(7-2):158-160.
[6] BENCHINI A,CIMINO M,MARCELLONI F,et al.Patterns and technologies for enabling supply chain traceability through collaborative e-business[J].Information&Software Technology,2008,50(4):342-359.
[7] DERAKHSHAN R,ORLOWSKA M E,Li Xue.RFID data management:challenges and opportunities[C].IEEE International Conference on RFID.Washington:IEEE Press,2007:175-182.
[8] 李珍香,張宇翔.嵌入式RFID中間件的設計與實現[C]. Proceedings of 2010 International Conference on Services Science,Management and Engineering(Volume 2),2010.