最近因爲工作需要,在評估Ublox的ZED-F9P高精度定位模組,該模組定位精度號稱釐米級,從官方的數據手冊看,在RTK條件下,定位精度高達1cm,這個感覺還是挺牛的,因爲目前還沒有聽到一個小模組就能實現這麼高的定位精度。
於是從代理商那裏借了一個該模組的開發板,官方鏈接:https://www.u-blox.com/en/product/c099-f9p-application-board
拿到開發板後,迫不及待的去嚐了鮮。該開發板配備以下套件,
通過USB接口就可以供電加輸出數據,使用起來很方便。
我在裝驅動的時候費了半天功夫,文檔裏寫的是驅動會通過Windows Update自動安裝,但是我就是死活裝不成功,
後來各種折騰,發現是我的電腦Windows Update設置有問題,啓動類型改成自動就可以了
具體步驟,參考:https://zhidao.baidu.com/question/459142430.html
裝成功的表現爲,在設備管理器裏可以看到下面兩個虛擬串口
真正用來接收定位數據的是ZED-F9P對應的那個串口COM73。
還有其他虛擬串口會安裝,如果安裝不成功就暫時不用管了,只要上面那個ZED-F9P對應的串口安裝成功即可。
接下來就是如何評估定位精度的問題了,Ublox有一個非常牛掰的軟件叫u-center,大家可以去官網下載,該軟件功能非常強大,是研究GPS的一大利器。即使不用ublox的模組,其他家的定位產品也可以使用它。
由於目前還沒RTK,所以我先去測了下模塊單點定位的狀況。
我帶着筆記本和板子,先來到了公司樓下一片空曠的地方,把天線放地上一扔,就測了起來,步驟如下:
- 打開u-center軟件,選擇好串口和波特率
板子默認的波特率是460800,如果你不知道波特率是多少或者波特率被改動過也沒關係,菜單Receiver-Autobauding 可以自動幫你匹配到正確的波特率,
這個功能很贊,我當時就是不小心改了波特率後來通不了了,我還以爲板子出問題了當時,後來找到了這個功能。
一旦串口號和波特率正確後,在串口裏就可以到顯示跳變的經緯度等信息了
你也可以通過View-Text Console看到輸出的原始信息
2)打開View-Deviation Map或者快捷鍵F12,或者工具欄中的對應圖標,就會出現Deviation Map的窗口,這個圖反映的是經緯度相對於一個參考點的位置圖
可以看到定位精度在0.3m以內,精度還是不錯的。
參考點我用的是定位的平均值,上圖左下角最左邊那個圖標用來設置參考點的
下面那一排圖標的用法見下圖,大家可以嘗試嘗試,非常實用
如果不清楚,鼠標輕輕一放,看左下角提示信息也可以
在觀測的過程中,如果你想清掉之前的記錄,點擊File-Database Empty就可以。
後來換到辦公樓下有明顯遮擋的地方,定位顯示如下:
精度明顯變差,使用這個工具來進行定位分析還是非常直觀方便的。
單點定位評估後,下面看一下RTK定位效果,首先弄一個千尋的差分賬號,新用戶註冊實名認證後可以申請一個免費試用的賬號,可以用幾個小時。下面是我申請的FindCM賬號,
在U-center中配置千尋的賬號信息
上面的Address、Port、Username、Password在千尋的網頁上有說明:
使用過程中,需要電腦處於聯網狀態下,首先Update Source Table,然後選擇RTCM32_GGB
連接成功後,在GNGGA信息中可以看到定位標誌位爲變成5,最後變成4
之後觀測一段時間,可以看到RTK情況下,精度明顯提高,確實可以到cm級別。
又做了個試驗,在RTK定位狀態下,斷開網後,定位很快出現偏移
另外如果再次接上RTK,還會收斂到原來定位的點。