李才廣,鄒常豐,胡寶雨
(東北林業(yè)大學(xué)交通學(xué)院,黑龍江哈爾濱 150040)
海關(guān)監(jiān)管卡口(簡(jiǎn)稱卡口)作為國際貨物的出入口,在整個(gè)海關(guān)監(jiān)管系統(tǒng)中起著重要的作用[1]。裝載貨物的貨車經(jīng)過卡口時(shí)必須停車并接受工作人員的檢查。在非高峰時(shí)段,即車流量較小時(shí),貨車通關(guān)不會(huì)產(chǎn)生較大的擁堵問題。但在車流量逐漸增多尤其在高峰時(shí)段,貨車在單向通道內(nèi)緩慢行駛,形成“跟馳車隊(duì)”[2-3],一旦停車次數(shù)過多,將會(huì)在卡口產(chǎn)生較大的車輛延誤,從而導(dǎo)致嚴(yán)重的交通擁堵,間接增加了檢測(cè)與管理成本。
許多國家的海關(guān)運(yùn)輸部門使用RFID技術(shù)對(duì)貨物進(jìn)行電子驗(yàn)證,以應(yīng)對(duì)貿(mào)易便利化中安全性、效率等方面的問題[4-5]。R. Zhang等設(shè)計(jì)一種可以追蹤從始發(fā)地到目的地的貨運(yùn)系統(tǒng),該系統(tǒng)基于Internet的集中式安全工具進(jìn)行開發(fā),利用RFID技術(shù)和GPS技術(shù)來識(shí)別驅(qū)動(dòng)程序。該系統(tǒng)可使用互聯(lián)網(wǎng)與海關(guān)數(shù)據(jù)庫完成實(shí)時(shí)的通信[6]。A. J. Hoffman等提出了一種組合型的GPS/RFID系統(tǒng),該系統(tǒng)可以提供所需的可見度,以支持改進(jìn)的運(yùn)營(yíng)管理模式,從而提高跨境貨運(yùn)運(yùn)營(yíng)的安全性和效率[7]。
因此,為解決上述貨車通關(guān)時(shí)存在的問題,本文設(shè)計(jì)了一種基于RFID的貨車快速通關(guān)檢測(cè)系統(tǒng),在無需人工操作的條件下采集相關(guān)信息,從而使貨車和貨物在盡可能減少停車次數(shù)甚至不停車的情況下完成通關(guān)檢測(cè)。
RFID技術(shù)又稱為無線射頻識(shí)別技術(shù),是一種通過無線電波識(shí)別目標(biāo)對(duì)象的自動(dòng)識(shí)別技術(shù)[8-9]。實(shí)現(xiàn)一個(gè)RFID系統(tǒng)通常由讀寫器、電子標(biāo)簽以及計(jì)算機(jī)系統(tǒng)共同完成,其工作原理如圖1所示。電子標(biāo)簽由安裝在基板上的微型芯片和內(nèi)置天線組成,包含能夠識(shí)別物體或人的標(biāo)識(shí)信息。讀寫器接通電源后能夠以一定的頻率發(fā)射電波,當(dāng)電子標(biāo)簽進(jìn)入讀寫器的識(shí)別范圍時(shí)產(chǎn)生感應(yīng)電流,并通過內(nèi)置天線發(fā)送標(biāo)識(shí)信息[10]。讀寫器則通過內(nèi)置的天線捕獲電子標(biāo)簽發(fā)送的標(biāo)識(shí)信息并將其傳輸?shù)接?jì)算機(jī)系統(tǒng)[11]。在RFID系統(tǒng)中,讀寫器的讀取范圍d是重要的性能指標(biāo)之一,即讀寫器可以檢測(cè)到來自電子標(biāo)簽的反向散射信號(hào)的最大距離。根據(jù)弗里斯傳輸公式可得到讀取范圍d的表達(dá)式為
圖1 RFID系統(tǒng)工作原理
(1)
式中:λ為波長(zhǎng);Pt為讀寫器的功率;Gt為發(fā)射天線的增益;Gr為接收天線的增益;Pth為電子標(biāo)簽所需的最小功率;τ為功率傳輸系數(shù)。
在減少停車次數(shù)甚至不停車的情況下完成檢測(cè),需要的方法一般為非接觸式檢測(cè)和被動(dòng)式檢測(cè)。非接觸式檢測(cè)是指檢測(cè)器與檢測(cè)對(duì)象不需要進(jìn)行接觸即可完成檢測(cè);被動(dòng)式檢測(cè)是指檢測(cè)對(duì)象在不知情的情況下被檢測(cè)器檢測(cè)。RFID技術(shù)因?yàn)槠湓O(shè)備布設(shè)簡(jiǎn)單、檢測(cè)準(zhǔn)確度高以及成本低等優(yōu)點(diǎn)廣泛應(yīng)用于非接觸式和被動(dòng)式檢測(cè)等方面[12-13]。因此,本文先將貨車和貨物的標(biāo)識(shí)信息寫進(jìn)電子標(biāo)簽,每個(gè)電子標(biāo)簽的標(biāo)識(shí)信息中都包含一個(gè)EPC(電子產(chǎn)品編碼)。由于EPC是每個(gè)電子標(biāo)簽的唯一標(biāo)識(shí),而每輛貨車和每件貨物上各貼有一張電子標(biāo)簽,因此EPC可作為貨車和貨物的唯一標(biāo)識(shí)。當(dāng)RFID模塊檢測(cè)到由電子標(biāo)簽發(fā)來的標(biāo)識(shí)信息時(shí),讀入的標(biāo)識(shí)信息通過接口傳輸?shù)街骺刂破鳎詈髠魉偷絇C端的數(shù)據(jù)庫,完成貨車和貨物的信息采集與存儲(chǔ)。同時(shí)也對(duì)數(shù)據(jù)庫中的信息進(jìn)行進(jìn)一步處理,完成貨車和貨物的信息匹配。當(dāng)稱重模塊檢測(cè)到有貨車經(jīng)過時(shí),檢測(cè)到的貨車實(shí)際質(zhì)量與RFID模塊采集到的匹配信息中的質(zhì)量信息進(jìn)行比對(duì)。若貨車實(shí)際質(zhì)量大于匹配信息中的質(zhì)量值,則開啟報(bào)警器報(bào)警。
本系統(tǒng)的硬件部分主要由主控制器、RFID模塊、稱重模塊以及供電模塊組成,硬件系統(tǒng)框架如圖2所示。
圖2 硬件系統(tǒng)框架
采用STM32F103C8T6型單片機(jī)作為本系統(tǒng)的主控制器,用于搭載RFID模塊和稱重模塊,同時(shí)也和PC端進(jìn)行交互。該型單片機(jī)是具有Cortex-M3內(nèi)核、16~512 KByte可擦除Flash存儲(chǔ)器的32位微控制器,并配備了Timer、SPI、I2C、UART等模塊[14-15]。其外圍電路的配置情況如圖3所示。
圖3 外圍電路配置
由于本系統(tǒng)在非接觸和被動(dòng)的檢測(cè)條件下工作,因此開發(fā)時(shí)采用FM-505 UHF型讀寫模塊采集電子標(biāo)簽的標(biāo)識(shí)信息,內(nèi)部結(jié)構(gòu)以及外觀如圖4和圖5所示。FM-505 UHF型讀寫模塊支持EPC global UHF Class 1 Gen 2/ISO 18000-6C協(xié)議,工作頻率為860~960 MHz,檢測(cè)范圍為0~5 m。電子標(biāo)簽則采用支持ISO 18000-6C協(xié)議的無源Ucode 8型。當(dāng)電子標(biāo)簽進(jìn)入讀寫器識(shí)別范圍時(shí)會(huì)產(chǎn)生感應(yīng)電流,并通過內(nèi)置天線發(fā)出標(biāo)識(shí)信息,標(biāo)簽信息被讀寫模塊讀到后存入其寄存器中,最后通過I/O接口傳輸?shù)絾纹瑱C(jī)。
圖4 讀寫模塊內(nèi)部結(jié)構(gòu)
圖5 讀寫模塊外觀
本系統(tǒng)需要用到的稱重模塊主要由壓力傳感器、放大器、A/D轉(zhuǎn)換芯片HX711、蜂鳴報(bào)警器以及LCD顯示屏等組成,工作原理如圖6所示。A/D轉(zhuǎn)換芯片HX711的主要作用是接收來自放大器放大后的電壓信號(hào)并將其轉(zhuǎn)換成數(shù)字信號(hào),包含了系統(tǒng)工作所需要的外圍電路,具有便于集成、靈敏度高、低功耗和不易受外界影響等優(yōu)點(diǎn),從而提高了稱重傳感器的性能。
圖6 稱重模塊工作原理
針對(duì)RFID模塊無法自動(dòng)識(shí)別貨車標(biāo)簽和貨物標(biāo)簽的問題,對(duì)標(biāo)簽EPC進(jìn)行了重新設(shè)計(jì)。由于本次采用的電子標(biāo)簽型號(hào)為無源Ucode 8型,且該型標(biāo)簽的EPC為24位的字符串,因此,對(duì)于貨車標(biāo)簽EPC,由左到右設(shè)置為車牌編碼(16位)、匹配碼(4位)和貨車類別碼(4位)。其中車牌編碼前6位是行政區(qū)劃代碼,后10位是字母和數(shù)字的組合,用ASCII碼表示。對(duì)于貨物標(biāo)簽EPC,由左到右設(shè)置為貨物ID(16位)、匹配碼(4位)和貨物類別碼(4位)。為了與貨車標(biāo)簽區(qū)分,貨物ID的前4位是置零區(qū),后12位是編碼區(qū)。在標(biāo)簽EPC中設(shè)置匹配碼的目的是能夠?qū)⒇涇嚺c車載貨物進(jìn)行匹配,即如果貨物A標(biāo)簽上的匹配碼與貨車B標(biāo)簽上的匹配碼相同,則認(rèn)為貨物A在貨車B上。標(biāo)簽EPC的設(shè)計(jì)格式如圖7所示。
圖7 EPC設(shè)計(jì)格式
在Keil uVision軟件上編寫了EPC接收程序。首先應(yīng)對(duì)系統(tǒng)進(jìn)行初始化,系統(tǒng)初始化的主要步驟為:使用結(jié)構(gòu)體對(duì)SPI進(jìn)行模式配置;編寫讀寫數(shù)據(jù)函數(shù)對(duì)特定的寄存器進(jìn)行存儲(chǔ)和發(fā)送數(shù)據(jù)等操作;通過初始化函數(shù)和重置函數(shù)調(diào)整RFID模塊的天線和寄存器。
圖8為EPC接收程序流程圖。系統(tǒng)初始化后,首先對(duì)電子標(biāo)簽進(jìn)行搜索。編寫搜索函數(shù)并設(shè)置搜索方式和電子標(biāo)簽類型代碼,使RFID模塊按照設(shè)置的搜索方式與電子標(biāo)簽進(jìn)行通信。若RFID模塊與電子標(biāo)簽通信成功即表示搜索到電子標(biāo)簽,并將電子標(biāo)簽的EPC讀入RFID模塊,最終傳輸?shù)絾纹瑱C(jī)。
圖8 EPC接收程序流程圖
圖9為稱重程序的工作流程。系統(tǒng)通電并打開開關(guān)后稱重模塊開始工作。其中,當(dāng)系統(tǒng)完成復(fù)位、初始化操作之后,壓力傳感器檢測(cè)到有重物時(shí),會(huì)經(jīng)過一系列的信號(hào)轉(zhuǎn)換,最終使得單片機(jī)能夠通過串口讀取到HX711的質(zhì)量值。獲取質(zhì)量值后將會(huì)在LCD顯示屏上顯示物體的質(zhì)量信息,同時(shí)也將質(zhì)量信息傳輸?shù)絇C端。
圖9 稱重程序流程圖
根據(jù)數(shù)據(jù)的管理需求,采用MySQL數(shù)據(jù)庫對(duì)相關(guān)數(shù)據(jù)進(jìn)行管理。數(shù)據(jù)庫結(jié)構(gòu)如圖10所示。
圖10 數(shù)據(jù)庫結(jié)構(gòu)
Tag_collection存儲(chǔ)采集到的標(biāo)簽信息,包括EPC、循環(huán)冗余校驗(yàn)碼和采集次數(shù)。
Tag_process存儲(chǔ)經(jīng)匹配處理程序處理后的標(biāo)簽EPC。
Cargo存儲(chǔ)貨物的申報(bào)信息,包括貨物EPC、貨物名稱、貨物類別、申報(bào)質(zhì)量以及運(yùn)輸貨物的貨車車牌編碼。
Truck存儲(chǔ)貨車的基本信息,包括貨車EPC、貨車類別、車牌編碼、空車質(zhì)量以及每輛貨車的貨物數(shù)量。
Record存儲(chǔ)貨車和貨物的通關(guān)記錄信息。
為了能夠準(zhǔn)確匹配貨車以及車上的貨物,在Visual Studio軟件上編寫了EPC匹配處理程序,匹配方式如圖11所示。
圖11 EPC匹配方式
當(dāng)輸入某標(biāo)簽EPC時(shí),首先判斷此EPC是否為貨車標(biāo)簽EPC,之后與貨車標(biāo)簽中匹配碼相同的貨物標(biāo)簽組合在一起,并根據(jù)標(biāo)簽EPC中的質(zhì)量信息計(jì)算整車的總質(zhì)量M:
M=mt+mg
(2)
(3)
式中:mg為貨物的申報(bào)總質(zhì)量;mi為貨物i的申報(bào)質(zhì)量;mt為貨車的空車質(zhì)量。
EPC數(shù)據(jù)具體匹配流程如下:
步驟1:連接MySQL數(shù)據(jù)庫。
步驟2:整車的總質(zhì)量M、貨車匹配碼a設(shè)置為0。
步驟3:將Tag_collection中的標(biāo)簽EPC作為判斷函數(shù)A的輸入。
步驟4:判斷函數(shù)A判斷是否符合“輸入EPC的前4位不等于‘0000’且貨車匹配碼a為0”的條件。若符合,則判斷此EPC為貨車標(biāo)簽EPC,并將對(duì)應(yīng)的匹配碼賦值給貨車匹配碼a。刪除Tag_collection中對(duì)應(yīng)的數(shù)據(jù)元組并提取Truck中對(duì)應(yīng)的空車質(zhì)量作為質(zhì)量累加函數(shù)的輸入,執(zhí)行步驟6;若不符合,則判斷此標(biāo)簽為貨物標(biāo)簽,進(jìn)入判斷函數(shù)B,執(zhí)行步驟5。
步驟5:判斷函數(shù)B判斷是否符合“EPC中的匹配碼與貨車匹配碼a相等且貨車匹配碼a不為0”的條件。若符合,提取標(biāo)簽EPC插入到Tag_process中并刪除Tag_collection中對(duì)應(yīng)數(shù)據(jù)元組。之后提取Cargo中對(duì)應(yīng)的申報(bào)質(zhì)量作為質(zhì)量累加函數(shù)的輸入,執(zhí)行步驟6;若不符合,返回步驟3。
步驟6:質(zhì)量累加函數(shù)計(jì)算整車的總質(zhì)量M并提取Truck中對(duì)應(yīng)的貨物數(shù)量,下一步進(jìn)入判斷函數(shù)C判斷執(zhí)行質(zhì)量累加函數(shù)的次數(shù)是否符合“貨物數(shù)量+1”的條件,若符合,輸出此時(shí)的M值,執(zhí)行步驟7;若不符合,顯示更新后的M值,返回步驟3。若系統(tǒng)在超過等待時(shí)間T的條件下沒有更新M值,則直接輸出最新的M值,返回步驟2。
步驟7:稱重模塊返回的實(shí)際質(zhì)量值與輸出的M值進(jìn)行比較,若實(shí)際質(zhì)量大于M,則開啟報(bào)警器,返回步驟2。
最后將Tag_process、Truck以及Cargo進(jìn)行表連接得到通關(guān)記錄,連接方式如圖12所示。
圖12 表連接方式
完成系統(tǒng)設(shè)計(jì)后,首先進(jìn)行單元測(cè)試檢測(cè)系統(tǒng)各硬件模塊的可用性,進(jìn)行集成測(cè)試檢測(cè)整個(gè)軟件系統(tǒng)的可用性,其中標(biāo)簽EPC接收界面以及數(shù)據(jù)庫界面如圖13和圖14所示。
圖13 標(biāo)簽EPC接收界面
圖14 數(shù)據(jù)庫界面
RFID模塊的設(shè)置角度是影響識(shí)別率r的主要因素之一。在實(shí)驗(yàn)中角度的設(shè)置規(guī)則為:RFID模塊的接收面的垂直線與水平線的夾角為設(shè)置角度,設(shè)置角度在水平線上部為正角,在水平線下部為負(fù)角。實(shí)驗(yàn)中設(shè)置角度的取值區(qū)間為[-30°,30°],取值間隔為5°。在等待時(shí)間T設(shè)置為3 s的條件下設(shè)計(jì)了10組模擬實(shí)驗(yàn),以識(shí)別率r作為衡量系統(tǒng)識(shí)別準(zhǔn)確度的指標(biāo):
(4)
式中:ni為系統(tǒng)檢測(cè)到的第i輛貨車的貨物數(shù);Ni為第i輛貨車的實(shí)際貨物數(shù);m為貨車的總數(shù)。
從表1可以看出隨著RFID模塊的設(shè)置角度的增大,識(shí)別率r的均值不斷減小,當(dāng)設(shè)置角度為0°,即RFID模塊的接收面垂直于水平線時(shí),識(shí)別率r的均值達(dá)到最高,因此在該條件下系統(tǒng)的識(shí)別準(zhǔn)確度也最高。
表1 不同設(shè)置角度下的實(shí)驗(yàn)結(jié)果
本文基于RFID技術(shù)設(shè)計(jì)了一種卡口貨車快速通關(guān)檢測(cè)系統(tǒng),對(duì)卡口貨車通關(guān)問題提供了較好的解決方案。通過實(shí)驗(yàn)可以看出:當(dāng)?shù)却龝r(shí)間T設(shè)置為3 s且RFID模塊的設(shè)置角度為0°時(shí),平均識(shí)別率達(dá)到了98%,驗(yàn)證了系統(tǒng)的可用性與穩(wěn)定性。通過這套系統(tǒng),不僅能為監(jiān)管人員提供實(shí)時(shí)的貨車和貨物信息,同時(shí)也作為現(xiàn)有的智能交通安全系統(tǒng)的補(bǔ)充。整個(gè)檢測(cè)過程無需檢測(cè)人員記錄貨車和貨物的通關(guān)信息,檢測(cè)數(shù)據(jù)實(shí)時(shí)傳輸?shù)椒?wù)器,可節(jié)省大量人力,提高檢測(cè)效率。隨著本系統(tǒng)的不斷升級(jí),未來可將本系統(tǒng)與云端服務(wù)器連接,同時(shí)檢測(cè)來自卡口多條通道內(nèi)的貨車和貨物通關(guān)信息,擴(kuò)大檢測(cè)范圍,提高檢測(cè)的可靠性。