《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于GPS&GPRS車(chē)輛實(shí)時(shí)監(jiān)控系統(tǒng)的設(shè)計(jì)
基于GPS&GPRS車(chē)輛實(shí)時(shí)監(jiān)控系統(tǒng)的設(shè)計(jì)
摘要: 基于通用分組無(wú)線(xiàn)服務(wù)技術(shù)(GPRS)、全球衛(wèi)星定位系統(tǒng)(GPS),、AJAX和Oracle,,應(yīng)用GoogleMapsAPI設(shè)計(jì)出了一套車(chē)輛實(shí)時(shí)監(jiān)控系統(tǒng)。該系統(tǒng)具有對(duì)車(chē)輛實(shí)時(shí)監(jiān)控,、調(diào)度管理、限制行使區(qū)域、超速報(bào)警提醒等功能,。
Abstract:
Key words :

 0 引言

GPS全球定位系統(tǒng)是美國(guó)在1994年建成,具有在海,、陸,、空進(jìn)行全方位實(shí)時(shí)三維導(dǎo)航與定位能力的衛(wèi)星導(dǎo)航與定位系統(tǒng)。英國(guó)產(chǎn)業(yè)分析機(jī)構(gòu)預(yù)測(cè)在2008-2013年,,定位產(chǎn)業(yè)的年復(fù)合成長(zhǎng)率為21.2%,,將會(huì)成為Google、微軟,、諾基亞等公司未來(lái)產(chǎn)品的關(guān)鍵功能,。本文基于GPS全球定位系統(tǒng)以及Google Maps API設(shè)計(jì)了一套車(chē)輛調(diào)度管理系統(tǒng)。公司管理人員可以通過(guò)該管理系統(tǒng)平臺(tái)對(duì)車(chē)輛進(jìn)行實(shí)時(shí)監(jiān)控,、調(diào)度管理以及人員管理,,從而對(duì)車(chē)隊(duì)進(jìn)行有效的監(jiān)控,提高了人車(chē)安全系數(shù),,增加了企業(yè)利潤(rùn)收入,,降低交通擁堵幾率,為社會(huì)提供更高水平的服務(wù),。該系統(tǒng)與以GIS,,Google earth為平臺(tái)進(jìn)行二次開(kāi)發(fā)的系統(tǒng)相比,有著開(kāi)發(fā)流程簡(jiǎn)便,,可移植性強(qiáng)等優(yōu)點(diǎn),。只要擁有一臺(tái)裝有Web瀏覽器能聯(lián)網(wǎng)的電腦,用戶(hù)就可以通過(guò)本系統(tǒng)對(duì)車(chē)輛進(jìn)行實(shí)時(shí)監(jiān)控,。

1 系統(tǒng)的工作原理

本系統(tǒng)通過(guò)GPS進(jìn)行車(chē)輛導(dǎo)航,,即應(yīng)用GPS定位技術(shù)獲取車(chē)輛所在地的經(jīng)度和緯度坐標(biāo)、行駛車(chē)速,、時(shí)間等相關(guān)信息,。GPS接收模塊默認(rèn)為每秒輸出一次定位數(shù)據(jù),用戶(hù)通過(guò)設(shè)置主控器使其每隔一定時(shí)間向服務(wù)器發(fā)送一次數(shù)據(jù),。ARM CortexTM-M3為高級(jí)的32位微處理器內(nèi)核,,其任務(wù)是負(fù)責(zé)讀取GPS的定位信息,由GPRS模塊通過(guò)移動(dòng)通信GPRS網(wǎng)絡(luò)傳送到服務(wù)器中,,服務(wù)器端程序?qū)④?chē)輛所在的位置和行走的軌跡繪制在Google地圖上,。

服務(wù)器端主要分為前臺(tái)實(shí)時(shí)監(jiān)控模塊和基于Web的后臺(tái)監(jiān)控管理模塊,。前臺(tái)實(shí)時(shí)監(jiān)控模塊主要采用TCP/IP協(xié)議與車(chē)載終端進(jìn)行通信,解析和自定義編碼各種通信協(xié)議,,管理和維護(hù)車(chē)載終端日常的運(yùn)行情況,。基于Web的后臺(tái)監(jiān)控管理模塊主要采用PHP+Ora-tie,,JavaScript及XML技術(shù),,采用自頂向下的思想構(gòu)建關(guān)系數(shù)據(jù)庫(kù)模型,結(jié)合Google Maps API提供的相當(dāng)便捷的AJAX技術(shù)獲取查詢(xún)結(jié)果,,這樣做一方面減少了流量,,另一方面使得網(wǎng)頁(yè)實(shí)現(xiàn)了局部自動(dòng)更新的功能,提高了用戶(hù)體驗(yàn)速度,。

2 車(chē)輛實(shí)時(shí)監(jiān)控系統(tǒng)的結(jié)構(gòu)和功能設(shè)計(jì)

本系統(tǒng)可以實(shí)現(xiàn)車(chē)輛管理,、用戶(hù)管理、數(shù)據(jù)統(tǒng)計(jì),、定位監(jiān)控,、行駛區(qū)域限制、數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)等功能,。

車(chē)輛管理功能通過(guò)搜索設(shè)備名稱(chēng)和日期,,可從數(shù)據(jù)庫(kù)中查詢(xún)當(dāng)天車(chē)輛的詳細(xì)信息,包括車(chē)牌號(hào),、車(chē)載電話(huà)號(hào)碼,、車(chē)輛種類(lèi)、司機(jī)信息及汽車(chē)運(yùn)行狀態(tài),,從而達(dá)到對(duì)車(chē)輛的實(shí)時(shí)監(jiān)控和管理的目的,。

用戶(hù)管理功能 不同級(jí)別的用戶(hù)可以擁有不同的權(quán)限對(duì)車(chē)輛進(jìn)行管理和操作,這些權(quán)限可以由管理員在網(wǎng)站后臺(tái)進(jìn)行相應(yīng)的設(shè)置,。

數(shù)據(jù)統(tǒng)計(jì)功能包括報(bào)警統(tǒng)計(jì),、超速行駛統(tǒng)計(jì)兩個(gè)功能。報(bào)警統(tǒng)計(jì)將車(chē)輛每次報(bào)警的信息,,包括報(bào)警時(shí)間,、報(bào)警地點(diǎn)都記錄在數(shù)據(jù)庫(kù)當(dāng)中。同樣,,超速行駛統(tǒng)計(jì)也將車(chē)輛每次超速行駛的信息都記錄在數(shù)據(jù)庫(kù)中(把車(chē)輛速度大于120 km/h的視為超速行駛),,用戶(hù)在輸入查詢(xún)?nèi)掌跁r(shí),,就可以查詢(xún)到當(dāng)天的報(bào)警信息,、超速信息的相關(guān)統(tǒng)計(jì)。

定位監(jiān)控功能 車(chē)載終端固定間隔自動(dòng)將定位數(shù)據(jù)回傳,,通過(guò)GLatLng()函數(shù)把車(chē)載終端定位至Google地圖上,,采用Google Maps API提供的Gmarker()地標(biāo)函數(shù)把車(chē)載終端的定位信息顯示在地圖上,,這樣即可實(shí)現(xiàn)對(duì)車(chē)輛的實(shí)時(shí)定位,其所定位的信息包括經(jīng)度,、緯度,、車(chē)輛信息和行駛狀態(tài)等。

行駛區(qū)域限制功能 行駛區(qū)域限制需要預(yù)先設(shè)置車(chē)輛的行駛區(qū)域,,當(dāng)車(chē)輛超越行駛區(qū)域時(shí),,系統(tǒng)將以報(bào)警提示的方式提醒相應(yīng)公司管理人員。

數(shù)據(jù)備份和恢復(fù)功能 一旦不慎丟失或損壞數(shù)據(jù)庫(kù)里的信息,,可以重新導(dǎo)入備份好的后綴名為.Sql的文件,,數(shù)據(jù)即可恢復(fù)到原始狀態(tài)。

3 服務(wù)器端關(guān)鍵技術(shù)的設(shè)計(jì)與實(shí)現(xiàn)

3.1 計(jì)算行車(chē)路程的方法

系統(tǒng)可以利用Google Maps API計(jì)算行車(chē)總路程,。首先假設(shè)地球作為一個(gè)完美的球體,,半徑為常量R=6 378.137 km。計(jì)算球面兩點(diǎn)間弧長(zhǎng)的算法為半徑*弧度,,而弧度可以從兩點(diǎn)間的經(jīng)緯度算出,。此時(shí),可以利用Google Maps API提供的四個(gè)類(lèi)方法推算出行車(chē)路程,。它們分別為返回角度值緯度Glatlng.lat()函數(shù),、返回角度值經(jīng)度Glatlng.lng()函數(shù)、返回弧度值緯度Glatlng.latRadians()函數(shù)和返回弧度值精度Glatlng.lngRadians()函數(shù),。


通過(guò)上述公式可以近似求出相鄰兩點(diǎn)間行車(chē)路程,,遍歷所有行車(chē)點(diǎn),把相鄰兩點(diǎn)間的行車(chē)路程進(jìn)行疊加,,即可近似求出行車(chē)總路程,。由于發(fā)送數(shù)據(jù)的時(shí)間間隔很短,所以通過(guò)這個(gè)算法得出的行車(chē)路程和車(chē)輛實(shí)際行駛的路程公里數(shù)基本一致,。

3.2 軌跡回放的實(shí)現(xiàn)思想

系統(tǒng)通過(guò)調(diào)用數(shù)據(jù)庫(kù)中經(jīng)度和緯度坐標(biāo),、行駛車(chē)速、時(shí)間等車(chē)輛相關(guān)信息,,可以實(shí)現(xiàn)軌跡回放功能,。雖然在設(shè)計(jì)過(guò)程中可以采用直接讀取數(shù)據(jù)庫(kù)數(shù)據(jù)的方法進(jìn)行軌跡回放,但是考慮到其擴(kuò)展性遠(yuǎn)遠(yuǎn)不如XML文檔大,,所以該系統(tǒng)采用了從XML文件中讀取數(shù)據(jù)并通過(guò)繪制Gpolyline折線(xiàn)來(lái)回放行車(chē)路線(xiàn),。實(shí)現(xiàn)該功能必須要預(yù)先定義好XML文件結(jié)構(gòu),這里令polyline為root節(jié)點(diǎn)下的一個(gè)子節(jié)點(diǎn),,在其屬性中規(guī)定相應(yīng)的顏色,、邊線(xiàn)寬度等,Polyline節(jié)點(diǎn)的子節(jié)點(diǎn)為lat,,lon,,data,,speed等,用于定義每個(gè)節(jié)點(diǎn)的經(jīng)度,、緯度,、行車(chē)時(shí)間以及速度等。XML文檔設(shè)計(jì)好后,,使用PHP語(yǔ)言編寫(xiě)了一個(gè)服務(wù)器程序動(dòng)態(tài)讀取數(shù)據(jù)庫(kù)數(shù)據(jù)和自動(dòng)更新XML文件,。編寫(xiě)一個(gè)HTML程序,利用JavaScript解析XML文檔,,解析整個(gè)XML文檔就是使用GXmlHttp對(duì)象把需要處理的節(jié)點(diǎn)取出(創(chuàng)建GXm-lHttp對(duì)象非常簡(jiǎn)單,,直接調(diào)用GXmlHttp.create()方法即可)。利用函數(shù)getElementsByTagName()獲取polyline節(jié)點(diǎn),,通過(guò)函數(shù)Node.childNodes[k].node-Name()獲取polyline節(jié)點(diǎn)的子節(jié)點(diǎn)(變量k表示poly-
line節(jié)點(diǎn)下子節(jié)點(diǎn)的總數(shù)),,根據(jù)兩點(diǎn)間確定一條直線(xiàn)的公理,循環(huán)讀取數(shù)據(jù)并繪制行車(chē)軌跡,。

3.3 行駛區(qū)域限制功能的實(shí)現(xiàn)

行駛區(qū)域限制功能的實(shí)現(xiàn)最重要的是系統(tǒng)要建立XML文檔,,在文檔里還必須預(yù)先設(shè)置好車(chē)輛的行駛區(qū)域,把整個(gè)區(qū)域相應(yīng)的經(jīng)度和緯度信息存儲(chǔ)在XML文檔中,,通過(guò)利用PHP語(yǔ)言編寫(xiě)相應(yīng)的服務(wù)器程序從XML文件中讀取數(shù)據(jù)并自動(dòng)在地圖上繪制Gpolygon多邊形來(lái)表示規(guī)定的行駛區(qū)域范圍,。當(dāng)?shù)貓D上需要繪制的多邊形區(qū)域很大時(shí),無(wú)論是直接寫(xiě)JavaScript腳本還是從XML文檔中讀取數(shù)據(jù),,數(shù)據(jù)交換量都沒(méi)有減少,,這時(shí),可以先利用PHP語(yǔ)言編寫(xiě)一個(gè)對(duì)數(shù)據(jù)進(jìn)行壓縮編碼的程序,,通過(guò)使用Google Maps API提供的fromEncodes()的工廠(chǎng)方法利用編碼后的數(shù)據(jù)創(chuàng)建相應(yīng)的多邊形對(duì)象,,傳遞給客戶(hù)端的瀏覽器進(jìn)行解析。若車(chē)輛超越了在地圖上繪制的多邊形區(qū)域,,則會(huì)彈出一個(gè)對(duì)話(huà)框來(lái)警示管理人員,。

4 實(shí)驗(yàn)結(jié)果與分析

通過(guò)在實(shí)驗(yàn)車(chē)上安裝該系統(tǒng)的硬件平臺(tái),與系統(tǒng)的軟件平臺(tái)聯(lián)合進(jìn)行行車(chē)實(shí)驗(yàn),。實(shí)驗(yàn)的路線(xiàn)是從桂林市大學(xué)生公寓城開(kāi)始,,經(jīng)過(guò)花藝館,向左轉(zhuǎn)至位于普陀路的廣西師范大學(xué)西大門(mén),。圖1即為車(chē)輛軌跡的回放圖,,從圖中可以看出此路線(xiàn)與預(yù)先設(shè)定的實(shí)驗(yàn)路線(xiàn)一致。通過(guò)系統(tǒng)計(jì)算出來(lái)的路程距離為1.22 km,,車(chē)速是45 km/h,。而通過(guò)Google earth計(jì)算出來(lái)的路程約為1.2 km,它們之間的誤差范圍小于等于20 m。經(jīng)過(guò)多次實(shí)驗(yàn),,結(jié)果表明該系統(tǒng)符合實(shí)際運(yùn)用的要求。


5 結(jié)語(yǔ)

地球上任何一個(gè)位置都有相應(yīng)的經(jīng)度和緯度,,可以利用技術(shù)在地圖上顯示,。隨著GPS全球定位技術(shù)的成熟,可以實(shí)現(xiàn)將GPS定位得到的經(jīng)度,、緯度,、速度、方向,、車(chē)輛狀態(tài)等詳細(xì)信息通過(guò)GSM/GPRS sim300模塊傳送到服務(wù)器中,,利用服務(wù)器端實(shí)現(xiàn)對(duì)車(chē)輛的管理及調(diào)度;隨著GPS全球定位技術(shù)的廣泛使用以及GoogleMaps API的不斷完善,,可以對(duì)車(chē)輛實(shí)現(xiàn)更精確的定位及監(jiān)控,;隨著3G技術(shù)的不斷發(fā)展,未來(lái)完全可以通過(guò)手機(jī)實(shí)現(xiàn)對(duì)車(chē)輛的管理及調(diào)度,,屆時(shí),,該導(dǎo)航產(chǎn)品和管理系統(tǒng)不僅僅是應(yīng)用在商業(yè)領(lǐng)域,還是人們娛樂(lè),、生活的必備工具,。該車(chē)輛調(diào)度管理系統(tǒng)可以應(yīng)用在物流車(chē)隊(duì)、私家車(chē),、租賃公司,、120急救車(chē)輛調(diào)度、公交車(chē)隊(duì),、銀行價(jià)款車(chē)等領(lǐng)域,,具有較廣泛的應(yīng)用前景。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。