0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

車載GPS導(dǎo)航定位監(jiān)控軟件系統(tǒng)功能的實現(xiàn)及設(shè)計

電子設(shè)計 ? 來源:電子產(chǎn)品世界 ? 作者:葉敦范,劉敏 ? 2021-04-06 10:00 ? 次閱讀

1 引言

隨著汽車在日常生產(chǎn)和生活中起的作用越來越突出,如何實現(xiàn)各類車輛的有效指揮、協(xié)調(diào)控制和管理已經(jīng)成為交通運輸和安全管理部門面臨的一個重要問題。為了滿足提高運輸效率和安全保障的需要,對車輛定位監(jiān)控系統(tǒng)的研究也日趨迫切。

車載GPS定位監(jiān)控系統(tǒng)是GSM全球數(shù)字蜂窩移動通信技術(shù)和GIS地理信息技術(shù)、GPS全球衛(wèi)星定位技術(shù)以及計算機網(wǎng)絡(luò)技術(shù)相融合研制開發(fā)出來的軟件技術(shù)。它是通過安裝在車輛上的GPS接收機(即車載機)接收衛(wèi)星信號,監(jiān)控中心通信控制器從GPS接收機輸出的信號中提取所需要的位置、速度和時間信息,結(jié)合車輛身份等信息形成數(shù)據(jù)報,然后通過無線信道發(fā)往控制中心;控制中心的主站接收子站發(fā)送的數(shù)據(jù),處理接收信息通過短消息的方式逐次直接發(fā)送給每一臺車載機。最后,將車輛的具體數(shù)據(jù)和狀態(tài)在監(jiān)控中心的電子地圖上顯示出來。

本文討論的就是從接收機輸出的信號中提取所需要的位置、速度和時間信息的方法,以及中心處理信息后發(fā)送命令集的實現(xiàn)過程。

2 GPS車載機的通信協(xié)議

車載機與監(jiān)控中心之間的通信方式均以中心發(fā)送命令,車載機應(yīng)答的方式進行,所以我們對車載機GPS信號的分析與處理必須完全依據(jù)車載GPS接收機與監(jiān)控中心的通信協(xié)議來進行,下面是GPS車載機通信協(xié)議的部分內(nèi)容。

車載機返回信息

一般信息:

*XX,YYYYYYYYYY,V1,HHMMSS,S,latitude,D,longitu de,G,speed,direction,DDMMYY,vehicle_status#

確認信息:

*XX,YYYYYYYYYY,V4,CMD,hhmmss,HHMMSS,S,latitu de,D,longitude,G,speed,direction,DDM MYY,vehicle_status#

區(qū)分一般信息和確認信息的方法是看車載機傳回來的信息中是否包含“V4”,判斷返回信息是否有效的方法是看回傳信息中是否包含“HQ(制造商名稱)”。

其中:‘*’表示命令頭;‘XX’表示制造商名稱;‘,’表示分隔符;

‘YYYYYYYYYY’表示車載機序列號;‘CMD’表示被確認的中心命令;‘hhmmss’表示被確認命令中的時間值;‘HHMMSS’表示車載機時間;‘S’表示數(shù)據(jù)有效位;

‘latitude’表示緯度;‘D’表示緯度標(biāo)志;‘longitude’表示經(jīng)度;‘G’表示經(jīng)度標(biāo)志;‘speed ’表示速度;‘direction’表示方位角;‘DDMMYY’表示日/月/年;

‘vehicle_status ’表示車輛狀態(tài)。

車載機返回GPS信息模式有兩種,一是返回最近的有效的GPS信息;二是返回最新的GPS信息。

中心發(fā)送命令結(jié)構(gòu)和命令集

中心發(fā)送命令結(jié)構(gòu)是:*XX,YYYYYYYYYY,CMD,HHMMSS,PARA1,

PARA2,。..#

在編寫中心發(fā)送指令時必需按照這個格式來寫,下面列出其中的七個中心發(fā)送命令。

定位監(jiān)控命令D1:該指令要求車載機以interval為時間間隔,回傳count次定位信息。

自動監(jiān)控設(shè)置命令S17:該指令完成對自動監(jiān)控參數(shù)的設(shè)置。

參數(shù)設(shè)置指令S12:該指令僅用于對S17命令的開關(guān)控制。

設(shè)置監(jiān)控中心短信號碼S2:車載機收到指令后將立即向新的監(jiān)控中心發(fā)送確認信息。

通話設(shè)置指令S13:phone_flag的bit0=0時允許打出,bit1=0時允許接聽。

清楚報警指令R7:車載機收到命令后將清除掉所有報警信息。

冷啟動指令R1:車載機收到命令后將執(zhí)行冷啟動復(fù)位,所有狀態(tài)參數(shù)全部清零。

3 通信軟件的設(shè)計與實現(xiàn)

GPS信號與監(jiān)控中心之間的通信大致分成兩個步驟:一是GPS接收機(即車載機)接收衛(wèi)星信號,監(jiān)控中心的通信控制器從GPS接收機輸出的信號中提取所需要的位置、速度和時間等數(shù)據(jù)信息;二是監(jiān)控中心將分析出的數(shù)據(jù)信息通過短消息的方式發(fā)送命令給每一臺車載機。具體步驟如下:

從車載機接收的GPS信號中判斷返回的信息是否有效,如果無效則直接丟棄,如果有效,則確認是一般信息還是確定信息,再接收處理一般信息或確定信息。

區(qū)分一般信息和確認信息的依據(jù)是參數(shù)字符串是否包含“V4”。

Result := False;{初始返回結(jié)果}

Result := pos(‘V4’, Str) 》 0;{如果str包含“V4”,就返回true,否則false}

判斷是否返回有效的信息的依據(jù)是參數(shù)字符串是否包含“*HQ”。

Result := False; {初始返回結(jié)果}

Result := pos(‘*HQ’,Str) 》 0;{如果str包含“ *HQ”,就返回true,否則false}

一般信息的標(biāo)志是V1。車載回傳的一般信息中包含的參數(shù)有車載序列號、移動電話號碼、車牌號、時間、經(jīng)緯度、速度、方位 、日期。

//獲取車載序列號(同樣的方法可以獲取移動電話號碼、車牌號、時間)

sCarNo := copy(RecvGprs, iPos + 4, 10);

//獲取緯度(同樣的方法可以獲得經(jīng)度)

sLatitude := copy(RecvGprs, iPos + 3, 9);

sLatitude := FloatToStr( StrToFloat(copy(sLatitude, 1, 2)) +StrToFloat(copy(sLatitude, 3, 7)) / 60 );

//獲取南緯和北緯(同樣的方法可以獲得東西經(jīng))

iPos := pos(‘,S,’, RecvGprs); {查找“,S,”在RecvGprs 的位置}

if iPos 》 0 then; {如果RecvGprs 包含‘,S ,’ 就執(zhí)行下面語句}

sNS := ‘南緯’

else begin

iPos := pos(‘,N,’, RecvGprs); {查找“,N,”

在RecvGprs 的位置}

sNS :=‘北緯’;

end;

//獲取速度、方位 、日期

sSpeed := copy(RecvGprs, iPos + 3, 6);{獲取速度}

sDirection := copy(RecvGprs, iPos + 10, 3);{獲取方位}

sDate := copy(RecvGprs, iPos + 14, 6); {獲取日期}

if Pos(‘?!?sSpeed) 《= 0 then{判斷sSpeed 是否包含‘?!绻蛨?zhí)行下面語句}

begin

sSpeed := copy(RecvGprs, iPos + 3, 3); {獲取速度}

sDirection := copy(RecvGprs, iPos + 7, 3); {獲取方位}

sDate := copy(RecvGprs, iPos + 11, 6); {獲取日期}

end;

//數(shù)據(jù)轉(zhuǎn)換

sSpeed := FormatFloat(‘0.00’ ,StrToFloat(sSpeed) * 1.852);{行駛速度轉(zhuǎn)換}

sSceond := copy(sTime, 5, 2);{時間轉(zhuǎn)換}

if StrToInt(sSceond) 《 60 then{時間轉(zhuǎn)換(‘YYYY-MM-DD HH:MM:SS’表示為:年月日時分秒}

sDate := FormatDateTime(‘YYYY-MM-DD HH:MM:SS’, IncHour

(StrToDateTime(‘20’ +copy(sDate, 5, 2) + ‘-’ + copy(sDate, 3, 2) + ‘-’ +

copy(sDate, 1, 2) +‘ ’ + copy(sTime, 1, 2) + ‘:’ + copy(sTime, 3, 2) + ‘:’+

copy(sTime, 5, 2)), 8))

else begin

sDate := FormatDateTime(‘YYYY-MM-DD HH:MM:SS’, IncHour

(StrToDateTime(‘20’ +

copy(sDate, 5, 2) + ‘-’ + copy(sDate, 3, 2) + ‘-’ + copy(sDate, 1, 2) +‘ ’ +

copy(sTime, 1, 2) + ‘:’ + copy(sTime, 3, 2) + ‘:’+ ‘00’), 8));

sDate := FormatDateTime(‘YYYY-MM-DD HH:MM:SS’,

IncMinute(StrToDateTime(sDate), + 1));

end;

確認信息的標(biāo)志是V4。車載回傳的確認信息中包含車輛行駛方位和車輛狀態(tài)。

處理一般信息中獲取的方位信息,由字符類型轉(zhuǎn)換為整型數(shù)據(jù),根據(jù)數(shù)據(jù)所在范圍確定車輛的行駛方位,小于22.5或大于337.5為正北方向,大于22.5小于67.5為東北方向,大于67.5小于112.5為正東方向,依此類推確認車輛的行駛方向。

處理一般信息中獲取的車輛狀態(tài),由字符類型轉(zhuǎn)換為二進制數(shù)字符串,把二進制數(shù)據(jù)的每一位存進數(shù)組,每一位對應(yīng)表一中的一個車輛狀態(tài)。

//獲取車輛狀態(tài)

iPos := Pos(‘#’, RecvGprs);

sCarStatus := copy(RecvGprs, iPos - 8, 8)

//轉(zhuǎn)換為二進制數(shù)字符串

sBin := ‘’;

for I := 1 to 8 do

sBin := sBin + HexCng(copy(sCarStatus, I, 1));

//把二進制數(shù)據(jù)的每一位存進數(shù)組

for I := 0 to 31 do

ArrBin[I] := copy(sBin, I + 1, 1);

sCarStatuText := HandleCarStatus(ArrBin);{車輛狀態(tài)}

監(jiān)控中心根據(jù)每一臺車載機傳回的信息內(nèi)容發(fā)送不同的命令。發(fā)送命令程序需嚴(yán)格按照中心發(fā)送命令集規(guī)定的的格式來寫,下面列舉其中的幾條命令:

//該指令要求車載機以sInterval為時間間隔,回傳sCount次定位信息。

sRightStr := ‘*HQ,0000000000,D1,’ + sTime + ‘,’ +sInterval + ‘,’ + sCount + ‘#’

//車載機接到這條指令后將清除掉所有報警信息。

sRightStr := ‘*HQ,0000000000,R7,’ + sTime + ‘#’;

if Application.MessageBox(PChar(‘真的要解除對車輛【‘+CarID+’】報警嗎?’),‘提示’, MB_YESNO + MB_DEFBUTTON2) = IDNO then Exit;

這里的CarID指車載機序列號。

//車載機收到這條命令將會啟動斷油斷電。

sRightStr := ‘*HQ,0000000000,S20,’ + sTime + ‘,1,3,10,3,5,5#’;

if Application.MessageBox(PChar(‘真的要對車輛【’+CarID+‘】斷油斷電嗎?’),‘提示’, MB_YESNO + MB_DEFBUTTON2) = IDNO then Exit;

4 結(jié)語

目前,車載GPS定位監(jiān)控系統(tǒng)已經(jīng)被各運輸公司使用在出租車、客車以及大型車隊上,該軟件技術(shù)很好的實現(xiàn)了對車輛位置、狀態(tài)的監(jiān)控和調(diào)度管理。

隨著GPS應(yīng)用領(lǐng)域的擴大,車載GPS導(dǎo)航定位監(jiān)控軟件的系統(tǒng)的功能也將隨著導(dǎo)航、通信等需求而不斷的增多和完善。GPS車載機通信協(xié)議會根據(jù)GPS車載機產(chǎn)品的功能升級而不斷升級,增加新的命令,相應(yīng)的軟件系統(tǒng)也要增加新的指令,本系統(tǒng)的設(shè)計將易于這些升級維護工作的進行。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    15879

    瀏覽量

    175338
  • gps
    gps
    +關(guān)注

    關(guān)注

    22

    文章

    2847

    瀏覽量

    165494
  • 接收機
    +關(guān)注

    關(guān)注

    8

    文章

    1158

    瀏覽量

    53161
收藏 人收藏

    評論

    相關(guān)推薦

    GPS/GPRS定位定向導(dǎo)航系統(tǒng)車載終端應(yīng)用設(shè)計與實現(xiàn)

    GPS_GPRS定位定向導(dǎo)航系統(tǒng)車載終端應(yīng)用設(shè)計與實現(xiàn)一、引言     目前,隨著人民生活水平的提高,交通工具
    發(fā)表于 09-26 17:00

    車載用及手持式GPS導(dǎo)航技術(shù)

    車載用及手持式GPS導(dǎo)航技術(shù)在日本、歐美等先進國家,衛(wèi)星全球定位系統(tǒng)(Global Position System;GPS
    發(fā)表于 10-05 07:59

    衛(wèi)通達迷你型GPS定位范玉GPS

    車載監(jiān)控系統(tǒng) gps監(jiān)控 gps監(jiān)控
    發(fā)表于 06-23 15:53

    GPS定位導(dǎo)航監(jiān)控

    、齊齊哈爾等地設(shè)有代理商。上海百速信息技術(shù)有限公司 專業(yè)從事車載導(dǎo)航儀及車載監(jiān)控系統(tǒng)營銷及銷售;北京世紀(jì)百速國際貿(mào)易有限公司 主要從事對全國
    發(fā)表于 08-10 14:15

    車載GPS實用產(chǎn)品,衛(wèi)通達GPS李媛車載定位管理車輛

    的GPRS將這些數(shù)據(jù)信息傳輸給監(jiān)控平臺,用戶只要登陸相對應(yīng)的網(wǎng)址,輸入用戶名以及密碼就可以隨時監(jiān)控車輛的狀況,并且兼容各種監(jiān)控軟件。衛(wèi)通達車載
    發(fā)表于 05-19 11:30

    最受工程師歡迎的車載設(shè)計方案——基于STM32+GPRS+GPS+Google Earth的車載導(dǎo)航定位系統(tǒng)

    基于Google Earth的軟件軟件實現(xiàn)后的界面以及三維衛(wèi)星地圖如圖所示。上位機軟件界面:實現(xiàn)了googleearth的內(nèi)嵌,后臺掛了數(shù)
    發(fā)表于 08-28 15:32

    車載終端的導(dǎo)航定位標(biāo)準(zhǔn)以及導(dǎo)航定位射頻性能測試系統(tǒng)和測試項目介紹

    1、引言近年來,智能交通、無人駕駛、車輛緊急定位報警等業(yè)務(wù)需求越來越迫切,車載導(dǎo)航定位功能實現(xiàn)
    發(fā)表于 07-11 06:14

    基于微處理器的車載導(dǎo)航電子地圖該怎么設(shè)計?

    通過對GPS定位全天候、高精度、實時性強的特點,可實現(xiàn)對車輛準(zhǔn)確實時的跟蹤,通過應(yīng)用GLS技術(shù),則可在電子地圖上顯示車輛的定位信息,明確用戶所在的準(zhǔn)確位置。文中在介紹了典型的
    發(fā)表于 08-28 07:55

    ADXL202和GPS怎么組合成車載導(dǎo)航系統(tǒng)?

    隨著定位導(dǎo)航技術(shù)的飛速發(fā)展和日臻成熟,車載導(dǎo)航系統(tǒng)在相關(guān)領(lǐng)域得到了越來越廣泛的應(yīng)用。車載導(dǎo)航系統(tǒng)
    發(fā)表于 10-25 07:17

    基于STM32+ GPRS+GPS+Google Earth的車載導(dǎo)航定位系統(tǒng)資料分享?。ㄔ韴D+源碼)

    本設(shè)計軟件的窗體中,以實現(xiàn)GPS、GPRS和Google Earth的一體化集成,進而實現(xiàn)了衛(wèi)星地圖的GPS
    發(fā)表于 08-27 14:40

    請問怎樣去設(shè)計車載GPS/DR組合導(dǎo)航系統(tǒng)?

    車載GPS/DR組合導(dǎo)航系統(tǒng)是由哪些部分組成的?基于DSP的車載GPS/DR組合導(dǎo)航系統(tǒng)的設(shè)計
    發(fā)表于 05-12 06:56

    關(guān)于車載GPS定位監(jiān)控系統(tǒng)的分析與研究

    關(guān)于車載GPS定位監(jiān)控系統(tǒng)的分析與研究
    發(fā)表于 05-14 06:48

    怎么實現(xiàn)GPS_GPRS定位定向導(dǎo)航系統(tǒng)車載終端應(yīng)用設(shè)計?

    本文介紹了作者設(shè)計的一種車載監(jiān)控系統(tǒng)(以下簡稱為車載系統(tǒng)),并重點介紹了車載
    發(fā)表于 05-18 06:57

    適用于車載導(dǎo)航GPS衛(wèi)星定位解決方案

    的SKYLAB君就來為大家介紹適用于車載導(dǎo)航GPS衛(wèi)星定位解決方案,比如車載導(dǎo)航中用的較多的
    的頭像 發(fā)表于 05-04 09:50 ?1.9w次閱讀
    適用于<b class='flag-5'>車載</b><b class='flag-5'>導(dǎo)航</b>的<b class='flag-5'>GPS</b>衛(wèi)星<b class='flag-5'>定位</b>解決方案

    基于嵌入式Linux的GPS車載定位導(dǎo)航系統(tǒng)設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于嵌入式Linux的GPS車載定位導(dǎo)航系統(tǒng)設(shè)計.pdf》資料免費下載
    發(fā)表于 10-13 10:29 ?0次下載
    基于嵌入式Linux的<b class='flag-5'>GPS</b><b class='flag-5'>車載</b><b class='flag-5'>定位</b><b class='flag-5'>導(dǎo)航系統(tǒng)</b>設(shè)計