新聞中心

        EEPW首頁 > 汽車電子 > 設(shè)計應(yīng)用 > 公交車載GPS智能報站系統(tǒng)設(shè)計

        公交車載GPS智能報站系統(tǒng)設(shè)計

        作者: 時間:2011-03-30 來源:網(wǎng)絡(luò) 收藏

          2. 2 模塊

          由于該 模塊設(shè)置信息掉電丟失, 在每次系統(tǒng)啟動時均要對該 模塊進(jìn)行初始化。將模塊設(shè)置成每秒鐘輸出一次GPS 信息。

          系統(tǒng)啟動后, 模塊接收GPS 信息, 然后解析出GPS 信息, 根據(jù)解析出來的經(jīng)緯度信息與數(shù)據(jù)區(qū)中存儲的站點信息比較, 計算出實際距離。如果距離到達(dá)閥值時, 啟動GPS 報站中斷。

          該GPS 模塊接收模塊遵循NMEA. 0183 協(xié)議, 可以輸出多種格式的數(shù)據(jù)幀, 均以“MYM”開頭。輸出數(shù)據(jù)采用的是ASCII 碼字符, 內(nèi)容包含了緯度、經(jīng)度、速度、日期、航向及衛(wèi)星狀況等信息。幀格式達(dá)10 余種, 該系統(tǒng)所使用的僅限于$ GPRMC 定位數(shù)據(jù)幀格式。

          系統(tǒng)啟動后, 通過串口對GPS 模塊進(jìn)行設(shè)置,由于系統(tǒng)對實時性要求不高, 將GPS 設(shè)置為每秒鐘輸出一次RMC 數(shù)據(jù)。提取GPRMC 語句的思路是設(shè)置一個數(shù)據(jù)緩沖區(qū), 把接收到的GPS 數(shù)據(jù)都放入這個緩沖區(qū), 當(dāng)緩沖區(qū)滿了的時候就在緩沖區(qū)中查找是否接受到GPRMC 定位語句, 如果沒有接收到則重新接收GPS 數(shù)據(jù)。如果找到了GPRMC 定位語句則還要判斷該語句在緩沖區(qū)中的位置離緩沖區(qū)的最大字節(jié)數(shù)是否大于62個字節(jié)( 因為本程序中需要的GPRMC 定位語句所包含的字節(jié)數(shù)為62) , 然后通過多程序提取相關(guān)經(jīng)緯度、時間和速度等信息并通過數(shù)據(jù)處理線程進(jìn)行相關(guān)處理。系統(tǒng)工作流程如圖3 所示。

        系統(tǒng)工作流程

        圖3 系統(tǒng)工作流程

          2. 3 GPRS 無線通訊模塊

          由于GSM 模塊內(nèi)嵌TCP/ IP 協(xié)議, 可以直接調(diào)用AT 命令與服務(wù)器通過TCP、UDP 通訊。無線通訊分為上行數(shù)據(jù)轉(zhuǎn)換模塊和通訊模塊2 個模塊。

          上行數(shù)據(jù)轉(zhuǎn)換模塊的主要功能是把接收到的GPS 數(shù)據(jù)或是相關(guān)的狀態(tài)信息轉(zhuǎn)換成約定好的數(shù)據(jù)格式以便同主信息中心的通訊。該模塊會判斷需要轉(zhuǎn)換的數(shù)據(jù)是GPS 數(shù)據(jù)信息還是相關(guān)狀態(tài)信息或是二者都有, 然后選擇相應(yīng)的轉(zhuǎn)換程序。由上面的介紹可以知道接收到的GPS 數(shù)據(jù)都是順序存放在數(shù)據(jù)緩沖區(qū)當(dāng)中的, 需要什么數(shù)據(jù)就到緩沖區(qū)中相應(yīng)的位置提取就可以了。數(shù)據(jù)都是以字符形式存放的, 所以實際要用的時候必須先轉(zhuǎn)換成整形數(shù)據(jù)。



        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 胶南市| 江达县| 嵊州市| 平邑县| 浮梁县| 达日县| 台南市| 翁牛特旗| 申扎县| 佛教| 城口县| 长武县| 宜川县| 武乡县| 龙海市| 宜兴市| 广饶县| 峡江县| 平定县| 青河县| 呼和浩特市| 双辽市| 稷山县| 曲麻莱县| 合阳县| 保康县| 象山县| 滦南县| 六枝特区| 宜良县| 枣庄市| 岗巴县| 江源县| 宣汉县| 迁西县| 东阳市| 商丘市| 吉木萨尔县| 大名县| 怀安县| 盘山县|