首 頁文檔資料下載資料維修視頻汽修在線平臺
請登錄  |  免費注冊
當(dāng)前位置:精通維修下載 > 文檔資料 > 電工技術(shù) > 機電工程
基于ARM和Internet的GPS數(shù)據(jù)透傳及定位關(guān)
來源:電工技術(shù)  作者:佚名  2017-07-15 10:35:04

    摘要:為了實現(xiàn)動態(tài)GPS數(shù)據(jù)的實時無線傳輸和定位,綜合應(yīng)用了嵌入式軟硬件、GPS導(dǎo)航、Internet、GPRS通信等熱門技術(shù)完成了一個物聯(lián)網(wǎng)項目。在SIM908模塊基礎(chǔ)上進行硬件電路設(shè)計和編程,通過捕獲衛(wèi)星信號、數(shù)據(jù)處理、Internet網(wǎng)絡(luò)透傳、服務(wù)器接收、形成定位坐標(biāo),最后在Google地球中動態(tài)顯示定位點。經(jīng)測試,系統(tǒng)達(dá)到了預(yù)期效果,可用于運動物體在監(jiān)控中心的電子地圖上實時定位,還實現(xiàn)了基站定位功能。

    1 系統(tǒng)簡介
    GPS具有高精度、高效率、全天候、操作簡便、多功能等特點,廣泛應(yīng)用于定位、導(dǎo)航、測量等方面。近年來,GPS、計算機與移動通信技術(shù)的交叉融合在物聯(lián)網(wǎng)領(lǐng)域內(nèi)發(fā)展迅速。定位就是將GPS接收機接收到的遠(yuǎn)程車輛等目標(biāo)的當(dāng)前位置在電子地圖上同步表示出來的過程。由于GPS數(shù)據(jù)是實時更新的,因此能實現(xiàn)目標(biāo)在電子地圖中的實時定位。數(shù)據(jù)遠(yuǎn)程傳輸則可通過GPRS和Internet實現(xiàn)。
    基于ARM和Internet的GPS數(shù)據(jù)透傳和定位系統(tǒng)框圖如圖1所示。被監(jiān)測端采用ARM微控制器STM3 2(基于Cortex-M3內(nèi)核和uCGUI圖形支持系統(tǒng))。GPS接收硬件負(fù)責(zé)接收衛(wèi)星信號,根據(jù)計算得到地理坐標(biāo)信息后,通過串口傳送給STM3 2微控制器;STM3 2微控制器將接收到的GPS數(shù)據(jù)進行相應(yīng)打包處理后,通過串口發(fā)送給GPRS模塊;由GPRS模塊通過基站傳送到Internet網(wǎng)絡(luò)中,向指定的IP端口發(fā)送數(shù)據(jù)包。服務(wù)器端上位機通過監(jiān)控該端口來捕獲數(shù)據(jù),然后將GPS數(shù)據(jù)發(fā)送到Google地球或其它導(dǎo)航軟件中實現(xiàn)對接,以便實時監(jiān)測觀察。該系統(tǒng)還加入了基站輔助定位功能。由于GPS衛(wèi)星信號的接收必須在戶外,因此當(dāng)被監(jiān)控端處于室內(nèi)或在接收不到衛(wèi)星信號的惡劣情況下,系統(tǒng)仍能通過基站信息定位到大致的區(qū)域。

    2 配置GPRS與Internet的連接
    SIM908模塊集成了GPS導(dǎo)航技術(shù)、GPRS無線通信技術(shù)和ARM嵌人式技術(shù),為實現(xiàn)內(nèi)嵌GPS的應(yīng)用節(jié)省了開發(fā)時間和費用,其優(yōu)異的兼容性為開發(fā)人員帶來很大的設(shè)計靈活度。GPRS終端借助GPRS無線網(wǎng)絡(luò)實現(xiàn)數(shù)據(jù)的無線傳輸,所以需建立無線連接,再按照GPRS通信協(xié)議傳輸數(shù)據(jù)。首先進行相關(guān)配置來建立無線連接,即用GPRS串口調(diào)試工具或編制程序輸入相關(guān)AT指令,初始化GPRS終端的TCP鏈接功能過程如下。
    (1)關(guān)閉回顯,不需把收到的指令原封不動地發(fā)回對方,以便串口專心監(jiān)測GPRS終端返回的參數(shù)。
    (2)設(shè)置GPRS網(wǎng)絡(luò)附著,即將GPRS終端附著到GPRS網(wǎng)絡(luò)中,以保證后面的操作能順利進行,因為后面的操作都是基于GPRS網(wǎng)絡(luò)連接進行的。
    (3)配置APN,即GPRS接入點的配置。中國移動上內(nèi)網(wǎng)的APN為“CMWAP,上網(wǎng)卡及上公網(wǎng)使用的APN為“CMNET”。
    (4)域名解析。如果采用撥號上網(wǎng),那么每次撥號都會動態(tài)分配到一個動態(tài)IP地址,但不可能每次IP變化都去更改STM3 2程序再重新燒錄,因此用一個固定域名與IP實時綁定。
    (5)建立一條TCP鏈接。得到上步返回IP后,經(jīng)過封裝可形成指令:AT+ IPOPEN= " TCP" 、".*.*·*”,關(guān)。該指令包含作為接收端服務(wù)器的IP地址和端口號,要求和上位機軟件的監(jiān)聽端口對應(yīng)。
    (6)如果計算機連接了路由器,那么其IP是路由器的一個子網(wǎng)IP,需設(shè)置路由器轉(zhuǎn)發(fā)規(guī)則,使接收到的指定端口數(shù)據(jù)自動轉(zhuǎn)發(fā)給子網(wǎng)IP的計算機。
    (7)判斷TCP鏈接是否建立成功。如果TCP鏈接建立成功,則會返回CONNET參數(shù),反之會返回ERROR: N(N表示錯誤的類型)。發(fā)生錯誤的情況下,一般需從第(1)步重新進行鏈接,但唯獨對于ERROR: 9要做額外處理,即用指令“AT+ IPCLOSE= 5”注銷網(wǎng)絡(luò),再重新鏈接。
    (8)設(shè)置I/O模式為明文ASCII模式,即數(shù)據(jù)傳輸過程中不需轉(zhuǎn)換。數(shù)據(jù)要封裝成AT+ IPSEND=”發(fā)送字符串?dāng)?shù)據(jù)”格式。

    3 GPS數(shù)據(jù)格式及程序功能
    3.1 GPS數(shù)據(jù)格式
    GPS數(shù)據(jù)接收模塊主要處理對象是NMEA-0813數(shù)據(jù)幀。NMEA-0813定義了GPRMC、GPGGA、GPGSV、GPGGA等類型的語句格式,它們表達(dá)的定位信息各有側(cè)重,可根據(jù)實際需要進行選擇[6、7]。其中GPRMC語句又稱為推薦最小定位數(shù)據(jù)(Recommended Minimum SpecificGNSS Data),包括了時間、日期、位置、航向、速率等信息,其完整結(jié)構(gòu)如下:
    MYMGPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,關(guān)<13><CR><LF>
    <1>UTC時間,hhmmss(時分秒)格式;
    <2>定位狀態(tài),A=有效定位,V=無效定位;
    <3>緯度ddmm. mmmm(度分)格式;
    <4>緯度半球N(北半球)S(南半球);
    <5>經(jīng)度dddmm. nu-nmm(度分)格式;
    <6>經(jīng)度半球E(東經(jīng))W(西經(jīng));
    <7>地面速率(000.0~999. 9節(jié));
    <8>地面航向(000. 0~359. 9度,以正北為參考基準(zhǔn));
    <9>UTC日期,ddmmyy舊月年)格式;
    <10>磁偏角(000.0~180.0);
    <11>磁偏角方向,E(東)或W(西);
    <12>模式指示(A=自主定位,D=差分,E=估算,N=數(shù)據(jù)無效);
    <13>校驗值。
    3. 2 GPS數(shù)據(jù)處理與應(yīng)用
    STM3 2通過串口接收GPS終端傳來的GPS數(shù)據(jù)并存儲到緩沖區(qū),在提取主要數(shù)據(jù)后向GPRS終端發(fā)送。STM32在此過程中起到主控模塊的作用,由STM3 2程序來完成這些工作,其中接收串口數(shù)據(jù)采用串口中斷實現(xiàn)。由于采用的是當(dāng)前經(jīng)緯度信息,因此只需傳輸GPRMC數(shù)據(jù),以減小GPRS數(shù)據(jù)傳輸負(fù)擔(dān)。程序識別到GPRMC語句后,就可確定有效數(shù)據(jù)的起始位置181。程序中要注意數(shù)據(jù)包都是以MYM開頭,以回車換行(轉(zhuǎn)義符號表示為/r/n)結(jié)尾191。在STM3 2上移植uCGUI進行相關(guān)信息顯示,可觀察當(dāng)前的模塊狀態(tài)與命令返回參數(shù),以便調(diào)試。上位機的電子地圖軟件接收到GPRMC后,解析出經(jīng)緯度坐標(biāo)并顯示在地圖上。本文采用Google地球,亦可自行編寫程序,調(diào)用百度地圖API顯示電子地圖。

[1] [2]  下一頁

關(guān)鍵詞:

  • 好的評價
      0%(0)
  • 差的評價
      0%(0)

文章評論評論內(nèi)容只代表網(wǎng)友觀點,與本站立場無關(guān)!

   評論摘要(共 0 條,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
頁面執(zhí)行時間:183,753.90000 毫秒
固安县| 鸡泽县| 汉沽区| 高雄县| 霍邱县| 阿图什市| 沾益县| 昌都县| 河源市| 留坝县| 南充市| 延安市| 深水埗区| 营山县| 尼玛县| 高雄市| 托里县| 九台市| 黄浦区| 方正县| 新巴尔虎右旗| 都江堰市| 固镇县| 渝北区| 孝昌县| 二手房| 达州市| 隆尧县| 班戈县| 浙江省| 呼图壁县| 周至县| 遂平县| 城市| 呼图壁县| 子洲县| 陈巴尔虎旗| 临沧市| 长宁县| 简阳市| 云林县|