一種高精度衛星定位的實現方法與流程
2023-11-01 03:40:42 3

本發明涉及涉及衛星導航定位技術。
背景技術:
隨著導航定位技術的發展,導航定位在日常生活中日漸普及,但是受天氣和使用環境的影響,經常發生南轅北轍的情況,定位精度的高低直接影響導航的結果。本發明裝置支持北鬥和GPS衛星定位裝置的接入,通過陀螺儀、加速度計和磁力計確立定位載體的方向,角速度和加速度,經計算校正最終輸出定位載體的經緯度和高度信息,經實際定位測試誤差小於1米。
目前為了解決定位誤差過大的問題,而發射更多的導航定位衛星。發射更多的導航定位衛星固然可以提高導航定位的精度,但是成本高,在接收導航定位衛星信號比較差的環境,導航定位的精度仍很難保證。
故,需要一種新的技術方案以解決上述問題。
技術實現要素:
本發明的目的在於克服上述方案的缺點,通過陀螺儀、加速度計和磁力計確立定位載體的方向,角速度和加速度,經計算校正最終輸出定位載體的經緯度和高度信息。
為實現上述目的,本發明可採用如下技術方案:
一種高精度衛星定位的實現方法,包括以下步驟:
(1)、在定位載體上設置高精度定位裝置;該高精度定位裝置中包括處理器、輸入串口、輸入串口波特率撥碼開關、輸入串口協議撥碼開關、輸出串口、輸出串口波特率撥碼開關、輸出串口協議撥碼開關;所述輸入串口、輸入串口波特率撥碼開關、輸入串口協議撥碼開關、輸出串口、輸出串口波特率撥碼開關、輸出串口協議撥碼開關均與處理器電性連接;其特徵在於:還包括陀螺儀、加速度計、磁力計,陀螺儀、加速度計、磁力計也與處理器電性連接;
(2)、採集陀螺儀、加速度計和磁力計的數據,採用陀螺儀和加速度計互為校正確立定位載體的各軸向的角度和加速度,最後結合磁力計計算各方向上的位移;
(3)、解析北鬥/GPS通信協議,獲取當前定位載體的經緯度和高度信息;
(4)、計算輸出定位載體的經緯度和高度信息。
相對與現有技術,本發明具有如下優點:
1)導航定位精度高,經實際定位測試誤差小於1米;
2)本發明裝置體積較小,便於安裝,直接串聯在串口線上即可;
3)支持多種衛星導航定位協議,如:NAEA-0183、NAEA-0180和NAEA-0182等;
4)通過設置輸入串口波特率和協議撥碼開關可以支持不同廠家的衛星導航定位設備;
5)通過設置輸出串口波特率和協議撥碼開關,可以和現有系統實現無縫對接,不需任何軟體修改。
附圖說明
圖1是本發明中高精度定位裝置的結構示意圖。
圖2是本發明中軟體模塊的關係示意圖。
圖3是傳感器採集計算模塊工作流程圖。
圖4是北鬥/GPS協議解析模塊工作流程圖。
圖5是計算校正輸出模塊工作流程圖。
具體實施方式
下面結合附圖,進一步闡明本發明,應理解這些實施例僅用於說明本發明而不用於限制本發明的範圍,在閱讀了本發明之後,本領域技術人員對本發明的各種等價形式的修改均落於本申請所附權利要求所限定的範圍。
本發明公開一種高精度衛星定位的實現方法,包括以下步驟:
(1)、如圖1所示,在定位載體上設置高精度定位裝置;該高精度定位裝置中包括處理器、輸入串口、輸入串口波特率撥碼開關、輸入串口協議撥碼開關、輸出串口、輸出串口波特率撥碼開關、輸出串口協議撥碼開關;所述輸入串口、輸入串口波特率撥碼開關、輸入串口協議撥碼開關、輸出串口、輸出串口波特率撥碼開關、輸出串口協議撥碼開關均與處理器電性連接;其特徵在於:還包括陀螺儀、加速度計、磁力計,陀螺儀、加速度計、磁力計也與處理器電性連接;
(2)、採集陀螺儀、加速度計和磁力計的數據,採用陀螺儀和加速度計互為校正確立定位載體的各軸向的角度和加速度,最後結合磁力計計算各方向上的位移;
(3)、解析北鬥/GPS通信協議,獲取當前定位載體的經緯度和高度信息;
(4)、計算輸出定位載體的經緯度和高度信息。
其中,步驟(2)至步驟(4)中,需要設置軟體模塊進行實現,軟體模塊包括傳感器採集計算模塊、北鬥/GPS協議解析模塊、計算校正輸出模塊,各模塊之間的關係如圖2所示。
傳感器採集計算模塊負責採集陀螺儀、加速度計和磁力計的數據,加速度計讀數受振動影響較大,採用陀螺儀和加速度計互為校正確立定位載體的各軸向的角度和加速度,最後結合磁力計計算各方向上的位移,其實現過程如圖3,即實現步驟(2),該步驟(2)中,包括如下細分步驟:
(2a)讀取加速度傳感器的當前值:AxADCn、AyADCn、AzADCn,讀取時間:T1、T2、T3,最後一次讀取時間:T1n、T2n、T3n;
(2b)讀取陀螺儀傳感器的當前值:∠xADCn、∠yADCn、∠zADCn;
(2c)重複步驟(2a)和(2b)100次並將其累計後,求其平均值分別為:AxADC、AyADC、AzADC和∠xADC、∠yADC、∠zADC;
(2d)分別將AxADC、AyADC、AzADC代入(ADC*Vref/1023-Vzg)/S計算得到Rx、Ry、Rz方向上的加速度;
上式中ADC為AxADC、AyADC、AzADC;
Vref為傳感器的參考電壓;
1023為2^傳感器的解析度位數-1計算得到,如當前傳感器解析度為10,固有2^10-1=1023;
Vzg為傳感器的零加速度的電壓值;
S為傳感器的靈敏度;
(2e)由三維空間勾股定理通過Rx、Ry、Rz可以計算得到X、Y和Z軸的角度∠X1、∠Y1、∠Z1;
(2f)和步驟(2d)中的公式類似可以計算出陀螺儀傳感器在X、Y和Z軸的角度∠X2、∠Y2、∠Z2;
(2g)計算比較∠X1/∠X2、∠Y1/∠Y2、∠Z1/∠Z2的值,如果3個值都在1以內繼續,否則重複(2a)~(2g);
(2h)由位移=VoT+1/2*A*T^2令Vo為0,T=T1n-T1,將Rx、Ry、Rz代入,計算各軸的位移:Sx、Sy、Sz;
(2i)採集磁力計的當前值,計算校正各軸的角度得到角度∠x、∠y、∠z。
北鬥/GPS協議解析模塊負責解析北鬥/GPS通信協議,獲取當前定位載體的經緯度和高度信息,其實現過程如圖4,即實現步驟(3),該步驟(3)中,包括如下細分步驟:
(3a)建立環形數據緩衝區;
(3b)將輸入串口的數據存入環形數據緩衝區,同時移動保存數據位置指針,當保存數據位置指針移到環形數據緩衝區末尾時,令保存數據位置指針指向環形數據緩衝區頭;
(3c)從環形數據緩衝區首位置讀取數據,解析數據,同時移動讀取數據位置指針,當讀取數據位置指針移到環形數據緩衝區末尾時,令讀取數據位置指針指向環形數據緩衝區頭;
(3d)將解析出來的經緯度和高度信息保存到X、Y、Z。
計算校正輸出模塊將傳感器採集計算模塊輸出的位移信息:Sx、Sy、Sz,角度信息:∠x、∠y、∠z,加速度信息:Rx、Ry、Rz和北鬥/GPS協議解析模塊輸出的經緯度和高度信息:X、Y、Z,進行互為校正,最終計算輸出定位載體的經緯度和高度信息,其實現過程如圖5所示,即實現步驟(4),該步驟(4)中,包括如下細分步驟:
(4a)讀取位移信息:Sx、Sy、Sz,角度信息:∠x、∠y、∠z,加速度信息:Rx、Ry、Rz,經緯度和高度信息:X、Y、Z分別存入緩衝區:FSx、FSy、FSz、F∠x、F∠y、F∠z、FRx、FRy、FRz、Fx、Fy、Fz;
(4b)讀取位移信息:Sx、Sy、Sz,角度信息:∠x、∠y、∠z,加速度信息:Rx、Ry、Rz,經緯度和高度信息:X、Y、Z;
(4c)將Sx、Sy、∠x、∠y、Fx、Fy代入下式
Xn=Fx+Sx*cos(∠x);
Yn=Fy+Sy*sin(∠y);
(4d)根據Xn、Yn和高斯算法計算出新點的經緯度和高度:X2,Y2,Z2;
(4e)根據Sx、Sy、Sz、∠x、∠y、∠z、Rx、Ry、Rz、X、Y、Z與FSx、FSy、FSz、F∠x、F∠y、F∠z、FRx、FRy、FRz、Fx、Fy、Fz計算判斷X、Y、Z的合法性;若合法根據X2、Y2、Z2、X、Y和Z計算後,按照輸出串口協議和波特率輸出定位載體的經緯度和高度信息;若不合法直接將X2、Y2和Z2按照輸出串口協議和波特率輸出定位載體的經緯度和高度信息。
綜上所述,本發明的關鍵點是利用陀螺儀、加速度計和磁力計計算當前定位載體的方向,角速度和加速度信息,與北鬥/GPS解析出來的經緯度和高度信息進行互為校正最終輸出定位載體的經緯度和高度信息。
本發明應用於高精度導航定位的場合,體現了如下優點:
1)導航定位精度高,經實際定位測試誤差小於1米;
2)本發明裝置體積較小,便於安裝,直接串聯在串口線上即可;
3)支持多種衛星導航定位協議,如:NAEA-0183、NAEA-0180和NAEA-0182等;
4)通過設置輸入串口波特率和協議撥碼開關可以支持不同廠家的衛星導航定位設備;
5)通過設置輸出串口波特率和協議撥碼開關,可以和現有系統實現無縫對接,不需任何軟體修改。