馮濤++劉慶烽++李敏
摘要:針對現(xiàn)在高速公路上不停車無卡收費的眾多問題以及當(dāng)今的各種技術(shù)發(fā)展?fàn)顩r,設(shè)計了一種基于新型無線電子車牌的高速公路不停車無卡收費系統(tǒng),該系統(tǒng)通過電子車牌將位置速度信息的實時上傳,結(jié)合百度鷹眼形成行車軌跡,再通過判斷收費站距離可以自動地進(jìn)行無卡收費。文章介紹了不停車收費系統(tǒng)軟件的整體框架以及各模塊的組成。重點描述了通過對行車位置的解析,完成收費的過程。
關(guān)鍵詞:不停車收費;百度鷹眼;電子車牌;無線;java
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)01-0079-02
Abstract:With the development of new technologies,a Highway No-Parking Card-Free Charging System based on the technology of new Wireless Electronic License Plate was designed to replace the old No-Parking Changing System.This new technology allows drivers to pay more effectively.It forms the wheelpath by uploading the location and the speed of the car to Toll System Baidu Platform and finishes charging by judging the distance between car and toll station.This essay introduced the frame and modules of the new Highway No-Parking Card-Free Charging System.With the introduction,the process of this new technology will be revealed.
Key words:electronic toll collection;Toll system Baidu platform;Electronic license plate ;wireless;java language
不停車收費的應(yīng)用在國外已經(jīng)投入很多年,我國不停車收費系統(tǒng)的研究雖然起步比較晚,但是我國高速公路的建設(shè)大大提升不停車收費系統(tǒng)的研究進(jìn)度。目前我國使用的方案是[1-3]“ 兩片式電子標(biāo)簽+雙界面IC卡的組合式電子收費系統(tǒng)方案”。該方案投入使用多年,獲得了很大的認(rèn)可,也為我國創(chuàng)造了很大的經(jīng)濟(jì)效益。但總體來說,該種不停車收費的方式仍存在諸多弊端?;诂F(xiàn)如今的不停車收費系統(tǒng)的諸多問題,本文設(shè)計與實現(xiàn)了基于新型無線電子車牌的高速路口無卡收費系統(tǒng),該系統(tǒng)通過實現(xiàn)對新型無線電子車牌上傳的位置、速度等信息依據(jù)車牌號進(jìn)行存儲,繼而系統(tǒng)以Json數(shù)據(jù)包的方式對這些信息進(jìn)行實時的調(diào)用,并對這些數(shù)據(jù)包進(jìn)行解析,并依據(jù)解析結(jié)果對該車牌的賬戶進(jìn)行相應(yīng)的扣費,這樣收費站的大部分功能都在服務(wù)器端進(jìn)行執(zhí)行,從而大大減少收費站工作人員的工作量,收費站的作用只是相當(dāng)于一個高速公路的標(biāo)志。通過對現(xiàn)在已投入應(yīng)用的收費系統(tǒng)進(jìn)行相應(yīng)的了解調(diào)研,本系統(tǒng)能基本實現(xiàn)依據(jù)車牌進(jìn)行收費,從而大大簡化收費站的作用。
1 軟件系統(tǒng)結(jié)構(gòu)
本系統(tǒng)是基于Java的一個完整的高速路口無卡收費系統(tǒng),主要是應(yīng)用了百度鷹眼平臺的服務(wù)器,因此本系統(tǒng)注重的是客戶端程序的設(shè)計。
系統(tǒng)的主要邏輯可以分為三塊:
1) 百度鷹眼的交互:通過與百度鷹眼進(jìn)行交互,判斷車的位置(譬如是否處于某個收費站);
2) 數(shù)據(jù)存儲:通過以上位置判斷,將獲取的位置信息存儲在數(shù)據(jù)庫中;
3) 扣費:同過以上數(shù)據(jù)庫中信息,判斷車的軌跡從而進(jìn)行扣費
圖1是系統(tǒng)的總體結(jié)構(gòu)圖:
圖1 系統(tǒng)總體結(jié)構(gòu)圖
2 系統(tǒng)實現(xiàn)
2.1與百度云平臺的交互模塊設(shè)計
此模塊主要同過應(yīng)用百度云平臺的兩個接口進(jìn)行調(diào)用實現(xiàn)。第一個是百度鷹眼,它可以為每輛車創(chuàng)建獨有的編號,形成行車軌跡,并將信息存儲在云端;第二個是Geocoding api,它可以將經(jīng)緯度坐標(biāo)反向解析成具體的地名。以下將具體介紹:
2.1.1與百度鷹眼api的交互
本文所采用的是百度鷹眼的平臺,首先可以將新型電子車牌的實時上傳的經(jīng)緯度等信息進(jìn)行存儲,當(dāng)車輛啟動時,電子車牌系統(tǒng)會通過HTTP協(xié)議的POST請求(通過java類庫中的net類可以輕易實現(xiàn)POST和GET請求)定時調(diào)用track create接口依據(jù)每輛車輛的車牌號為每輛車創(chuàng)建一個獨一無二的軌跡號(track id),用于存儲新型電子車牌實時上傳的經(jīng)緯度等信息;如果電子車牌運行期間由于網(wǎng)絡(luò)問題導(dǎo)致不能實時上傳數(shù)據(jù),可以暫時保存在本地,等待網(wǎng)絡(luò)恢復(fù)通過POST請求調(diào)用track upload接口依據(jù)track id號批量上傳軌跡點,并依據(jù)時間的先后進(jìn)行排列。當(dāng)電子車牌的數(shù)據(jù)已經(jīng)實時更新在云端之后,接下來我們可以通過在客戶端發(fā)送HTTP GET請求來調(diào)用track detail接口依據(jù)每個track id號來獲取其實時的經(jīng)緯度等信息了。
2.1.2與百度Gecoding api的交互
當(dāng)獲取到百度云平臺反饋回來的經(jīng)緯度數(shù)據(jù)之后,接下來要做的就是對數(shù)據(jù)進(jìn)行解析。由于反饋的數(shù)據(jù)是json的數(shù)據(jù)格式,所以首先使用json的類庫對所需數(shù)據(jù)進(jìn)行解析,解析到經(jīng)緯度之后,繼續(xù)通過http GET請求調(diào)用百度Geocoding api對經(jīng)緯度進(jìn)行反向解析成具體的地名反饋回來。這樣我們在客戶端就可以實時追蹤到車的具體位置,通過與告訴收費站的地址比較,來獲取收費金額。
2.2數(shù)據(jù)庫處理模塊
本系統(tǒng)所采用的是SQL Sever數(shù)據(jù)庫,由于本文重點介紹是不停車收費系統(tǒng),所以將重點介紹關(guān)于地址信息的數(shù)據(jù)表。
數(shù)據(jù)庫中主要包含的表有收費站信息表、用戶信息表、車輛信息表。車牌信息表,根據(jù)設(shè)計好的系統(tǒng)功能圖可以在數(shù)據(jù)庫中創(chuàng)建各表,系統(tǒng)數(shù)據(jù)庫中的各表如下:
收費站信息表主要包括起始收費站名、終點收費站名、收費站之間的距離等信息,這張表主要是在判斷車輛進(jìn)出收費站與計算車輛在高速公路行駛距離時使用,收費站信息表如表1所示:
表1 收費站信息表
[字段\&類型\&是否允許為空\&備注\&初始收費站\&Varchar\&不允許\&初始收費站名\&終點收費站\&Varchar\&不允許\&終點收費站名\&行駛距離\&Int\&不允許\&倆個收費站之間的距離\&]
通過比對車與收費站位置的判定,就可以算出收費金額,從而進(jìn)行無卡收費。
2.2 行駛距離獲取模塊實現(xiàn)
本模塊要分為三大模塊:首先是依據(jù)獲取到百度Geconding api反饋回來的數(shù)據(jù)包解析到現(xiàn)在所處的位置;其次是將數(shù)據(jù)包解析所獲得的地址與數(shù)據(jù)庫中的收費站信息進(jìn)行對比以判斷其是否進(jìn)入與離開收費站;最后是依據(jù)解析的成果讀取數(shù)據(jù)庫中倆個收費站之間的距離。
2.2.1 進(jìn)出收費站的判定模塊
由于上方這個模塊已經(jīng)可以獲得新型電子車牌所在的地名,本模塊實現(xiàn)的主要內(nèi)容就是依據(jù)上一個模塊所獲得的地名與數(shù)據(jù)庫中收費站的信息進(jìn)行比較,來判斷是否進(jìn)入車站,進(jìn)入車站的判定在代碼的實現(xiàn)方面有很大的相似性,因此本段主要講解車輛進(jìn)入收費站的判定。該模塊的實現(xiàn)與數(shù)據(jù)庫有很大的關(guān)系,因此本模塊實現(xiàn)的前提就是連接數(shù)據(jù)庫,數(shù)據(jù)庫的連接函數(shù)在下個數(shù)據(jù)庫模塊有詳細(xì)的介紹,這里就不在多說。這個模塊主要實現(xiàn)的是將數(shù)據(jù)庫中收費站信息表中起始收費站的這列內(nèi)容一起取出,再將解析Json數(shù)據(jù)包所獲得的地址與其一一進(jìn)行比較,看其是否與起始收費站有一致的,若有一致的就判定其已經(jīng)經(jīng)過收費站。將起始收費站從數(shù)據(jù)庫中取出的過程中由于不知道表的大小,所以使用了ArrayList來進(jìn)行數(shù)據(jù)的接收,再創(chuàng)建一個與ArrayList一樣大小的的數(shù)組,將起始收費站的各項轉(zhuǎn)化為數(shù)組,轉(zhuǎn)化為數(shù)組以后,對其處理就十分簡單了,將數(shù)組中內(nèi)容與解析得的地址一一進(jìn)行比較,就可以獲得其是否進(jìn)入收費站的標(biāo)識了
2.2.3 收費站距離獲取模塊
收費站的判定模塊實現(xiàn)了進(jìn)出收費站的判定,倆次進(jìn)出收費站會返回一個int型變量,該int型變量所指的即為倆個收費站之間的距離,這個距離是不需要計算的,是本來就存在于數(shù)據(jù)庫中的,本模塊的實現(xiàn)與上一個模塊的實現(xiàn)較為相似,主要是將數(shù)據(jù)庫中第三列即收費站之間距離所在的列,轉(zhuǎn)化為ArrayList型,再將該ArrayList表單轉(zhuǎn)化為數(shù)組,最后所需要做的就是取出特定的位置的值就可以了,實現(xiàn)了上同一個模塊這個模塊的實現(xiàn)還是相對簡單的。
3 系統(tǒng)測試
3.1 到收費站前
系統(tǒng)設(shè)置的獲取車的位置信息的間隔時間為3s一次,當(dāng)點擊查詢按鈕后,后臺程序會自動3s獲取一次信息,界面中所涉及到的信息也會實時動態(tài)的更新。還沒進(jìn)入高速時,初始收費站與終點收費站都為缺省狀態(tài)。
圖2
3.2 到達(dá)收費站
當(dāng)初次到達(dá)收費站時,系統(tǒng)會比對目前車的位置與數(shù)據(jù)庫中收費站的位置進(jìn)行比對,如果誤差在10m范圍內(nèi),系統(tǒng)就認(rèn)為車已進(jìn)入收費站。之后將收費站的名稱放在初始收費站的位置,此時的終點收費站仍然為缺省
圖3
3.3 出收費站
當(dāng)車出收費站時,系統(tǒng)會將車的位置信息與數(shù)據(jù)庫中收費 (下轉(zhuǎn)第85頁)
(上接第80頁)
站的位置信息比對,誤差在10m以內(nèi),則認(rèn)為車已經(jīng)離開收費站。之后將收費站的名稱放入終點收費站的位置,此時后臺會結(jié)合初始收費站和終點收費站判斷出距離,計算出收費金額,從用戶余額中扣取。
圖4
4 總結(jié)
本篇論文主要分析了現(xiàn)在高速公路收費的情況,指出了現(xiàn)代不停車收費所存在的眾多問題,并提出了基于新型電子車牌的無卡收費系統(tǒng)的方案。隨著現(xiàn)在“互聯(lián)網(wǎng)+”的發(fā)展,在不停車收費系統(tǒng)上,我們也應(yīng)當(dāng)更好地利用互聯(lián)網(wǎng)來打造“互聯(lián)網(wǎng)+高速不停車收費系統(tǒng)”,來完成了普通高速收費系統(tǒng)不能完成的任務(wù),相信這樣肯定會解決現(xiàn)今高速公路不停車收費中存在的主要問題,讓技術(shù)的發(fā)展更好地改善生活。
參考文獻(xiàn):
[1] 楊亞濤.非接觸IC卡在高速公路不停車收費系統(tǒng)中的應(yīng)用[D].鄭州.鄭州大學(xué)通信與信息系統(tǒng),2003.
[2] 胡松利,徐國軍,李翠.聯(lián)網(wǎng)電子不停車收費(IETC)系統(tǒng)的研究[J].交通與計算機(jī),2005(4).
[3] Electronic Toll Collection System Engineering Quality Inspection Evaluation and Control Method-Chengzan Chu-Procedia - Social and Behavioral Sciences[Z].2013-06-15.