1. 程式人生 > >微控制器差分GPS定位系統設計

微控制器差分GPS定位系統設計

背景意義

隨著GPS定位的不斷髮展和普及,使用者對GPS定位精度的要求越來越高,單點的GPS定位精度在水平方向上只能達到幾十米的精度。在實際應用中往往不能滿足要求。差分GPS定位技術可以使定位精度達到米級甚至更高精度。購買現成的差分GPS裝置可以直接進行定位,但價格昂貴。利用普通的 GPS接收機和微控制器建立微控制器差分GPS定位系統可以有效提高定位精度,且具有裝置簡單 、造價低及使用靈活的特點,有重要的實際應用意義。
專案視訊

技術路線

這裡寫圖片描述

設計方案

微控制器差分GPS定位系統的結構由參考站、資料通訊模組移動站三個部分組成。由事先經過精確測量定位的參考站,計算衛星測量中緩慢變化的各種誤差分量

,形成對可見衛星的測量修正值,再通過資料通訊傳給附近的移動站,從而構成差分定位,提高GPS定位精度。
這裡寫圖片描述

模組選取

為實現系統功能,我們本著效能穩定,成本較低的原則對幾個重要的模組進行了選取。
這裡寫圖片描述
這裡寫圖片描述

硬體設計

核心控制板電路

原理圖繪製

原理圖

PCB佈線

這裡寫圖片描述
這裡寫圖片描述

焊接電路板

這裡寫圖片描述

核心控制板實物

這裡寫圖片描述

移動站包裝

為便於使用者使用提高美觀性我們將移動站進行了包裝,其外部包含LCD顯示屏,薄膜按鍵,狀態指示燈,JATG下載介面,天線外接介面。
這裡寫圖片描述

軟體實現

參考站程式

參考站的主要作用是提供衛星偏差資料給移動站。
(1)GPS資訊解碼
(2)差分資料計算、傳送
(3)位置資訊的顯示
這裡寫圖片描述

GPS解碼

$GPGGA,124105.00,3853.16302,N,11530.23581,E,1,05,1.37,59.3,M,-10.9,M,,*45
$GPGSA,A,3,09,17,23,28,12,,,,,,,,1.90,1.37,1.31*0B
$GPGSV,4,1,14,01,02,065,,02,21,260,,03,33,049,,06,63,286,*7D
$GPGLL,3853.16302,N,11530.23581,E,124105.00,A,A*6A

在$GPGGA語句中就包含了我們所需要的經度、緯度、高度等資訊。 為減輕微控制器接收資料壓力,我們可以通過U-blox公司的官方軟體u-center對GPS的波特率,輸出資料內容,輸出資料頻率進行修改。
這裡寫圖片描述

差分資料計算和傳送

差分資料包含經度、緯度和海拔高度三個分量。均為雙精度浮點型變數,為保障其傳輸精度,我們將差分資料乘1000列印為字串並增加校驗位進行傳輸。
這裡寫圖片描述

移動站程式

移動站是整個系統的功能站。
(1)GPS資訊解碼
(2)差分資料接收,定位資訊修正
(3)位置資訊的顯示(經緯度方式,座標軌跡方式)
(4)語音播報
這裡寫圖片描述

差分資料接收定位

資訊修正差分資料的接收在串列埠終端中。
這裡寫圖片描述
這裡寫圖片描述

語音播報

語音模組通過串列埠傳送命令的方式觸發。傳送格式為7E FF 06 03 00 00 xx EF。其中xx為需要播報的語音段,按拷貝順序依次排列。
這裡寫圖片描述
在時間播報和經度緯度海拔高度上都含有大量的浮點型數字。因此有必要編寫一個通用的轉換程式,將字元一位位轉換為對應的語音地址,但在轉換過程中又要考慮到個十百千萬的單位新增,中間連續零,末尾零等問題,避免出現“零百”、“零零”等現象。
這裡寫圖片描述

效能測試

移動站功能測試

移動站主要功能有:
(1)差分定位功能
(2)經緯度顯示和直角座標顯示
(3)語音播報
(4)軌跡記錄
(5)測距功能
這裡寫圖片描述
這裡寫圖片描述

移動站定位精度測試

採用實驗室高精度GPS定位板卡BDM683三系統八頻高精度 OEM 板卡進行參考站準確座標的確定。其單點定位精度可達:平面1.5m,高程3.0m,RTK定位精度為:平面10mm+1ppm,高程15mm+1ppm。
這裡寫圖片描述
這裡寫圖片描述
將移動站分別放置到實現確定好的5個基準點,使用串列埠將移動站單點定位和差分定位的資料傳送電腦,進行記錄。為保障測試的有效性,每個點記錄約10分鐘。

D,   38.875495,  115.497905,   36.500000,   38.875762,  115.497553,   32.993300,   32.330055D,   38.875495,  115.497905,   36.500000,   38.875762,  115.497553,   32.993300,   32.330055D,   38.875495,  115.497905,   36.500000,   38.875762,  115.497553,   32.993300,   32.330055D,   38.875495,  115.497905,   36.600000,   38.875762,  115.497553,   33.093300,   32.330055D,   38.875495,,   

這裡寫圖片描述
這裡寫圖片描述
以第一個定位點為例:

原始資料提取。

利用MATLAB將1.TXT中的原始資料進行分析和提取,得到單點定位和差分定位的經度、緯度、高度資料
這裡寫圖片描述

誤差分析。

水平誤差 水平誤差即測量出的座標值與準確值的水平間距。利用MATLAB中自帶的distance函式可以很方便的求出。
例如:errorx1(i)=distance(R(1),R(2),lat(i),lon(i),6378137);
垂直誤差 垂直誤差即為在海拔高度上測量值與準確值的差值。
測試點1的水平誤差和垂直誤差
這裡寫圖片描述
這裡寫圖片描述
5個測試點的定位水平誤差(保留兩位小數)
這裡寫圖片描述
5個測試點的定位垂直誤差(保留兩位小數)
這裡寫圖片描述
設計的的微控制器差分GPS定位系統
在水平方向定位誤差從平均43米,縮減到平均1.5米左右,提升了96%的精度。
在垂直方向上,雖然沒有水平方向上提升那麼明顯,但是也從9米左右提高到2.3米左右,提升定位精度73%。
在成本較低的前提下實現了定位精度數量級的提升,滿足系統的設計要求。

工作總結:

本文針對當前對於GPS定位對於在低成本條件下實現高精度定位的需求,設計了微控制器差分GPS系統。經過方案設計,模組選取,硬體製作,軟體編寫除錯等一系列過程將系統設計完成並實現了基本功能,測試結果表明,系統的定位精度滿足要求。實現了水平方向1.5m垂直方向2.3m的定位精度。
創新特色
1、利用微控制器和GPS組成差分定位系統,在一定程度上提高了定位精度。
2、體積小巧、攜帶方便、造價低廉。
3、配備語音LCD顯示屏按鍵等人機互動模組,功能多,使用十分方便。
4、預留外接串列埠,方便作為拓展模組配合其他系統使用。