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