基于RF和因特網(wǎng)的機場(chǎng)集成行李處理系統
2.2 系統開(kāi)發(fā)平臺
該系統運用Internet環(huán)境,采用B/S模式進(jìn)行開(kāi)發(fā)。系統服務(wù)器端操作系統選用WindowsServer2008,開(kāi)發(fā)工具為Eclipse,主要技術(shù)為JavaEE和使用Java語(yǔ)言編程,數據庫系統選用Oracle11g,分揀機采用FKILogistexS-3000E翻碟式分揀機。在該系統中,其中一套用于國內飛行,兩套用于國際飛行。
S-3000E翻碟式分揀機的另一重要特點(diǎn)是,為處理不可讀標簽提供了手動(dòng)編碼區。FKILogistex系統具有極強的處理能力和極高的靈活性,因此無(wú)論是國際航班還是國內航班,抵達上海還是在上海中轉,都能夠輕松地進(jìn)行行李分揀。
3.1 系統實(shí)現的關(guān)鍵技術(shù)
機場(chǎng)集成行李處理系統中行李鏈條上每個(gè)參與對象都是處理系統的關(guān)鍵點(diǎn),一旦產(chǎn)品出現問(wèn)題,是否能夠查找到具體的問(wèn)題來(lái)源和正確實(shí)施行李回收取決于參與對象的記錄是否健全。
為確保機場(chǎng)集成行李處理的完整性,行李鏈條上每個(gè)參與對象都進(jìn)行了惟一編碼。編碼由2位行李類(lèi)別碼和18位旅客ID碼、10位登機日期碼和3位登機地碼、3位目的地碼及4位序列號組成。在旅客登機托運行李前,為每一位旅客的行李上貼一個(gè)RFID卡,每張RFID卡惟一對應一位旅客的行李。RFID卡能快速準確地為行李分揀機提供自動(dòng)識別功能,操作快捷方便,同時(shí)在機場(chǎng)的惡劣環(huán)境中即使RFID卡部分磨損也不會(huì )影響分揀機的識別效果。RFID電子標簽編碼組成如圖5所示。
3.2 RFID讀寫(xiě)器服務(wù)組件的設計
在本系統中將每個(gè)讀寫(xiě)器模塊的遠程方法調用封裝為一個(gè)管理組件(MBean)作為JMX服務(wù)器的實(shí)例注冊到JMX服務(wù)器中。JMX(Javamanagementextensions,Java管理擴展)是一個(gè)為應用程序、設備、系統等植入管理功能的框架。在JMX規范中,管理組件是一個(gè)能代表管理資源的Java對象,遵從一定的設計模式,實(shí)現該規范定義的特定的接口。該定義保證了所有的管理組件以一種標準的方式來(lái)表示被管理資源。管理接口就是被管理資源暴露出的一些信息,通過(guò)對這些信息的修改就能控制被管理資源。管理接口包括能被接觸的屬性值、能夠執行的操作、能發(fā)出的通知事件等。
通過(guò)JMX框架對讀寫(xiě)器進(jìn)行監控和管理,使RFID中間件系統能提供管理、監控讀寫(xiě)器的功能。JMX時(shí)間服務(wù)在指定的日期和時(shí)間觸發(fā)消息,也可以在一個(gè)固定間隔重復觸發(fā)消息。時(shí)間服務(wù)由一個(gè)MBean實(shí)現并可以管理,能夠發(fā)送它指定的timerNotification類(lèi)的消息實(shí)例,而Java提供的接口javax.
management.NotificationListener由想要接收通知的對象來(lái)實(shí)現,實(shí)現方法handleNotification。對于定期通知則使用固定延遲執行方案,如在timer中指定的那樣。為了使用固定速率執行方案,要使用addNotification方法。
3.3 RFID中間件的設計
根據前面研究的標簽ID表示方法以及savant中間件的定義,RFID中間件的功能模塊應該包含如下幾個(gè)功能模塊:
Reader接口模塊、邏輯驅動(dòng)器映射模塊、RFID數據過(guò)濾模塊、業(yè)務(wù)規則過(guò)濾模塊、設備管理與配置模塊、上層服務(wù)接口模塊,如圖6所示。其中:reader接口用于中間件與RFID讀寫(xiě)器的數據通信,主要有獲取RFID數據以及下達設備管理模塊的讀寫(xiě)器指令;設備管理配置模塊用于調整RFID讀寫(xiě)設備的工作狀態(tài),配置相應的reader接口參數等;邏輯讀寫(xiě)器映射模塊用于將多個(gè)物理讀寫(xiě)器或者讀寫(xiě)器的多條天線(xiàn)映射成為一個(gè)邏輯讀寫(xiě)器。一個(gè)邏輯讀寫(xiě)器代表了一個(gè)有具體含義的數據采集點(diǎn)(如機場(chǎng)1號航站樓),而不管該采集點(diǎn)在物理上由多少個(gè)讀寫(xiě)器和天線(xiàn)組成。它屏蔽了數據采集點(diǎn)的具體實(shí)現方式,減少了數據過(guò)濾等上層模塊與下層數據采集部分的軟件耦合度。對于上層模塊來(lái)說(shuō),可見(jiàn)的只有邏輯讀寫(xiě)器,所以邏輯讀寫(xiě)器映射模塊對RFID數據有初步過(guò)濾的功能。
4 RFID數據采集過(guò)濾方法設計
RFID采集的原始數據量非常大,在實(shí)際應用中,根據具體的配置不同,每臺讀寫(xiě)器每秒可以上報數個(gè)至數十個(gè)不等的電子標簽數據,如重復多次掃描同一個(gè)電子標簽,但其中只有少部分是對用戶(hù)有意義的、非重復性的數據,這樣大量的數據如果不經(jīng)過(guò)去冗等處理而直接上傳,將會(huì )給整個(gè)RFID系統帶來(lái)很大的負擔。所以,對RFID采集的數據進(jìn)行過(guò)濾處理。
RFID數據采集過(guò)濾方法設計主要分為以下幾類(lèi):
a)建立數據采集事件列表類(lèi)。
對每一個(gè)新到電子標簽數據進(jìn)行實(shí)時(shí)檢測,如果是新掃描的電子標簽,則加入到相應列表中;如果該標簽在列表中已存在,則僅更新對應標簽的時(shí)間等狀態(tài)數據,而不新建標簽數據記錄,以達到清除重復數據的目的。
b)數據采集事件編碼類(lèi)。
對電子標簽狀態(tài)的改變進(jìn)行編碼,定義標簽出現的狀態(tài)編碼為0,標簽狀態(tài)消失的編碼為1,然后加入計時(shí)器機制,對計時(shí)器有效時(shí)間內的同一標簽的狀態(tài)跳變進(jìn)行忽略,從而在狀態(tài)定義和時(shí)間維度兩個(gè)方面對數據進(jìn)行去重化。
上述這些算法均能夠很好地消除冗余數據,減少上層系統的負荷。但在實(shí)際應用中,除了RFID數據的去冗化以外,對數據的過(guò)濾還有著(zhù)其他的需求。比如,由于信號不穩定或其他干擾因素,行李上的RFID標簽并不能在每一個(gè)讀寫(xiě)器周期中被檢測到;或者當行李車(chē)從貨架旁走過(guò)時(shí),其行李車(chē)內已有的物品被機場(chǎng)入口內的讀寫(xiě)器誤讀到。針對上述問(wèn)題,設計了在不同應用場(chǎng)景下的適應性和有效性的過(guò)濾算法。實(shí)驗平臺使用RS-232接口的單天線(xiàn)讀寫(xiě)器,該讀寫(xiě)器報告周期為1s,每次報告標簽數為五個(gè)。算法實(shí)現采用Java語(yǔ)言,通過(guò)Java串口來(lái)進(jìn)行串口通信。
評論