陳必泉 徐樂遜 李林
摘 要:提出了一種基于Linux和RFID的物流園區(qū)車輛管理平臺,可提高車輛信息處理的自動化和智能化水平,解決物流園區(qū)之間因為數據標準不統一,接口不一致,彼此間很難通信,無法聯動和協同的難題。平臺采用C/S結構和Web Service技術,充分利用開源社區(qū)的優(yōu)秀、成熟的軟件,在保證系統的穩(wěn)定性的同時顯著地降低了物流園區(qū)的總體運營成本。
關鍵詞:RFID;Linux;車輛管理平臺;C/S;Web Service
中圖分類號:TP311.52
1 引言
車輛管理是物流園區(qū)管理的一項重要內容。隨著我國物流信息化建設進程加快,很多物流園區(qū)進行了信息化改造,建立了相應的園區(qū)綜合信息平臺,這使得車輛管理水平得到較大提升,但是仍存在一些問題,具體表現在:車輛信息處理的自動化和智能化水平不高,物流園區(qū)之間數據標準不統一,接口不一致,彼此間很難通信,無法聯動和協同[1]。
RFID(射頻識別技術)是從 20 世紀 80 年代起走向成熟的一種自動識別方式。它具有很多突出的優(yōu)點:無接觸識別、閱讀距離遠、識別速度快、可識別移動物體、穿透性強、環(huán)境適應力強可以在任何惡劣的條件下工作[2]。針對物流園區(qū)車輛管理存在的難題,結合RFID技術的優(yōu)點,本文提出了一種基于Linux和RFID的物流園區(qū)車輛管理平臺(以下簡稱平臺)設計。
2 平臺設計
2.1 物理架構
平臺的系統架構如圖1所示。其中物流信息管理服務器集中存儲了所有業(yè)務數據,為注冊用戶提供登陸、鑒權、數據上傳、信息查詢等各項服務??蛻魴C使用平臺分配的賬號通過專用客戶端程序登陸物流信息管理服務器進行相關的業(yè)務操作。讀卡器和客戶機之間不直接進行交互,而是通過一個數據轉換器來完成數據的交換。數據轉換器由物流園區(qū)部署,實現對具體型號讀卡器的操作和平臺定義的RFID數據接口。
2.2 邏輯架構
平臺采用了“軟件即服務”的設計理念,即應用軟件統一部署在服務器,以服務的形式向用戶提供。物流園區(qū)通過注冊成為平臺的租戶,使用平臺的客戶端軟件登陸服務器進行業(yè)務操作。為了給多個物流園區(qū)企業(yè)提供服務,平臺的邏輯架構分為應用服務層和基礎服務層,在數據存儲上采用了數據庫共享模式。
應用服務層集中了車輛管理的核心業(yè)務,主要實現用戶管理、登陸、車輛管理、數據查詢?;A服務層對應用服務層提供業(yè)務支撐,主要包括Web Service 調用和服務接口、數據庫訪問、LDAP認證和事務管理等。
多租戶平臺在數據存儲上一般有三種方式:1)租戶使用獨立數據庫;2)共享數據庫表獨立;3)共享數據庫和表[4]。本平臺采用了第三種方式,即所有租戶使用相同的數據庫和表設計。不同租戶的表數據通過平臺分配的企業(yè)ID進行區(qū)分。
2.3 模塊設計
物流園區(qū)車輛管理平臺旨在建立一個數據統一、維護統一、用戶統一、安全可靠、易于擴展的信息平臺?;贑/S結構和Web Service技術、充分利用開源社區(qū)優(yōu)秀、成熟的軟件可以很好的實現這一目標。
與B/S結構相比,C/S結構可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務合理分配到Client端和Server端來實現,降低了系統的通訊開銷??蛻舳顺绦蛑回撠煍祿杉团c用戶進行交互,不存儲業(yè)務數據,所有的業(yè)務數據存儲在服務器端,數據安全可靠,用戶無需部署服務器,省去繁瑣的維護工作。Web Service技術具有開放性、平臺獨立性、松耦合性和可復用性等優(yōu)點[3],因而在企業(yè)級應用中得到非常廣泛的使用。
經過多年的發(fā)展開源社區(qū)已經形成了從操作系統到應用軟件、從工具鏈到函數庫的龐大的生態(tài)系統。借助高水平的開源軟件不但可以構建穩(wěn)定、高性能的系統,還可以顯著地減少企業(yè)的開支。因此本平臺大量使用了開源軟件,比如使用GTK開發(fā)圖形界面,以PostgreSQL作為后臺數據庫,通過openLDAP進行高效、靈活的身份認證,基于gSOAP和Axis2快速構建Web Service應用框架。
如圖2所示,在功能設計上平臺包含用戶登錄、RFID數據接口、系統管理和車輛信息管理四大模塊。
(1)用戶登錄
當用戶輸入用戶名和密碼后,系統會通過調用服務器的Web Service接口進行用戶認證。如果通過認證,服務器會為用戶生成一個令牌。用戶在后續(xù)的操作中需要在報文中加入令牌信息,服務器端在處理請求時,會首先檢查令牌的有效性,只有通過有效性檢查的請求才會被分發(fā)到相應的業(yè)務模塊進行處理。
(2)RFID數據接口
由于每個物流公司都會有自己的RFID設備,這些設備來自不同的廠商,因此傳輸的數據格式和協議會有所不同。為了支持多種設備,需要一種機制來屏蔽這類設備的異構性,不會因為設備的不同而在使用上有所限制。解決的方法是:定義一個數據接口,平臺客戶端程序啟動一個后臺服務進程用來接收數據;物流園區(qū)部署包含RFID中間件的數據轉換器。RFID中間件實現了對具體型號讀卡器的操作和平臺的RFID數據接口,并且統一使用網絡的方式與客戶機進行數據通訊。當RFID讀卡器采集到車輛數據時,將數據提交到數據轉化器,按照數據接口的格式要求對數據進行封裝,通過網絡發(fā)送給客戶端程序的后臺服務器進程進行處理。
(3)系統管理
系統管理包括用戶管理、本地讀卡器管理和參數設置三個子模塊。用戶管理子模塊可進行用戶增加、刪除、信息變更和權限設置等操作。在權限分配上使用的是用戶/角色模型,亦即某個角色被賦予了若干權限,用戶被賦予一個或若干角色。當用戶屬于某個角色,就意味著該用戶擁有相關的所有權限。
本地讀卡器管理子模塊用于管理讀卡器的配置列表。配置列表的一個表項用來標識一個通道,包含了讀卡器IP地址、端口號、天線號、進出方向等配置信息。用戶可以通過該子模塊添加、刪除和修改配置表項。
(4)車輛信息管模塊
車輛信息管理包含了車輛卡發(fā)放、發(fā)卡記錄查詢、車輛基本信息查詢、車輛進出口信息上傳和車輛歷史信息查詢,是整個業(yè)務流程的核心部分。
1)車輛卡發(fā)放。用戶填寫好車輛的相關信息并由物流園區(qū)管理軟件上傳到相應的物流信息管理服務器中,服務器把接收的車輛信息存入數據庫并且根據特定的算法生成一個唯一的ID號返回給客戶端。
2)發(fā)卡記錄查詢。用戶根據車輛的車牌號或者ID號查詢相應車輛的發(fā)卡記錄,發(fā)卡記錄包括發(fā)卡時間、RFID識別卡號、車牌號等信息。
3)車輛基本信息查詢。用戶可根據車輛的車牌號或ID號進行查詢 。
4)車輛狀態(tài)信息上傳。當從RFID數據接口接收到讀卡數據時,首先搜索讀卡器配置列表,根據讀卡數據中的IP地址、端口號和天線號等信息進行匹配操作。結合接收到的卡號信息和匹配成功的配置表項內容生成車輛狀態(tài)信息,上傳至服務器。
5)車輛歷史信息查詢。查詢車輛在各地物流園區(qū)的進出記錄,可以選擇根據ID號或者車牌號來進行查詢,返回的結果為一個按時間排序的車輛進出記錄列表。
4 結束語
本文所設計的基于Linux和RFID的物流園區(qū)車輛管理平臺采用C/S結構和Web Service技術,旨在實現對物流園區(qū)的車輛進行有效的管理,提高自動化和智能化水平,降低總體運營成本。對于該平臺,目前已經完成了一套演示系統,經過調試運行,表明該平臺滿足了之前所設想的應用需求,并且運行良好。
參考文獻:
[1]史國棟.基于SOA的物流園區(qū)業(yè)務系統整合平臺研究與設計[D].西安:長安大學,2009.
[2]楊志千.基于有源RFID的小區(qū)車輛管理系統的設計與實現[D].武漢:武漢理工大學,2009.
[3]楊明,周國祥.基于Web Service的現代物流平臺的設計與實現[J].安徽科技學院學報,2010,24(1):29-34.
[4]黃日勝,周永福,黃錫波.基于SaaS模式的現代物流管理系統的設計[J].計算機與數字工程,2011,39(1):78-79.