劉煉軍,黃繼偉
(福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350002)
隨著定位和導(dǎo)航的廣泛應(yīng)用,對精度的要求也越來越高,RTK[1]定位技術(shù)是基于載波相位[1-5]觀測值的實(shí)時(shí)動態(tài)定位技術(shù),能夠?qū)崟r(shí)得到厘米級的定位精度。NEO-M8P是ublox公司為提供物聯(lián)網(wǎng)解決方案的最新GNSS[6]定位的模塊,結(jié)合了高性能的u-blox M8定位引擎與u-blox的實(shí)時(shí)動態(tài)(RTK)技術(shù),實(shí)現(xiàn)了高精度的定位導(dǎo)航。NEO-M8P對快速移動的無人機(jī)、無人駕駛車輛等應(yīng)用來說是非常理想的,精度高、操作效率高并且自動返回?cái)?shù)據(jù)到基站平臺。它集成了能夠訪問完整的端到端RTK解決方案系統(tǒng),包括基站的“survey-in”功能,這個(gè)功能能夠減少設(shè)置時(shí)間和增加應(yīng)用的靈活性。通過硬件的設(shè)計(jì)可以使得該系統(tǒng)兼容許多不同的通信技術(shù),比如WiFi、藍(lán)牙、移動電話等。相比于現(xiàn)在的高精度定位,該設(shè)計(jì)實(shí)現(xiàn)的定位更加精確,定位所需時(shí)間更短,成本相對較低。
該設(shè)計(jì)中移動站電路部分采用NEO-M8P-0,基站電路部分采用NEO-M8P-2,基站電路部分通過通信鏈表發(fā)送rtcm3協(xié)議格式的數(shù)據(jù)給移動站,經(jīng)過移動站中的算法進(jìn)行數(shù)據(jù)處理,輸出精度為厘米級別的定位數(shù)據(jù)。該設(shè)計(jì)中MCU采用內(nèi)核為Cortex-M3的STM32F103芯片,該單片機(jī)主要有性價(jià)比高、配置豐富靈活、低功耗等優(yōu)點(diǎn);MCU通過接收移動站輸出的數(shù)據(jù)來實(shí)現(xiàn)定位數(shù)據(jù)的解析,并且在該設(shè)計(jì)中移動站和基站能夠直接通過USB連接到計(jì)算機(jī)進(jìn)行配置和測試。
該系統(tǒng)主要由兩部分組成:以STM32F103芯片為MCU的主控制器單元和以NEO-M8P為核心的移動站和基站單元。在硬件設(shè)計(jì)部分采用模塊形式進(jìn)行設(shè)計(jì),主控制器STM32及其外部電路屬于一個(gè)模塊,移動站和基站電路屬于一個(gè)模塊,兩個(gè)模塊通過相應(yīng)的接口進(jìn)行連接。系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
該電路中主控制器采用的是STM32F103ZET6增強(qiáng)型系列芯片,其使用高性能的Cortex-M3 32位RISC內(nèi)核,擁有豐富的增強(qiáng)I/O端口和兩條APB總線。在功能上主要用到了單片機(jī)的3個(gè)UART,通過串口與移動站進(jìn)行通信。USART1和USART2直接輸出的是TTL電平,USART3通過SP3232芯片進(jìn)行電路轉(zhuǎn)換輸出232電平。圖2為主要的接口電路原理圖。
主要的接口電路如圖2所示。
圖2 接口電路原理圖
基站和移動站的電路基本一致,只是其中采用不同的NEO-M8P芯片,基站采用的是NEO-M8P-2,而移動站采用的是NEO-M8P-0。該電路中主要涉及NEO-M8P部分、天線部分、電源部分、LED顯示部分。
1.2.1NEO-M8P電路
NEO-M8P電路原理圖如圖3所示。NEO-M8P中由于SPI和UART接口公用,因此在設(shè)置D_SEL為懸空或者高電平的時(shí)候,公用接口為UART,如圖1的GPS_TX和GPS_RX。電路中的USB接口USB_P和USB_N也能夠用于串口通信。RTK_STAT、GEO_STAT、TIME_PLUSE都是輸出端口,電路都外接有LED燈。RTK_STAT提供了RTK定位狀態(tài)的指示,當(dāng)接收到RTCM3格式的數(shù)據(jù)后就會以一定頻率(默認(rèn)是1 Hz)切換輸出高低電平; GEO_STAT表示地理圍欄的狀態(tài);TIME_PULSE表示NEO-M8P內(nèi)部的時(shí)間脈沖信號(默認(rèn)是每秒一次),該時(shí)間脈沖信號可以通過軟件進(jìn)行配置。
圖3 NEO-M8P原理圖
1.2.2天線部分
天線部分原理圖如圖4所示。電路中和NEO-M8P相連的信號線有VCC_RF、RF_IN、ANT_ON和GND。NEO_M8P中VCC_RF為輸出端口,為低噪聲放大器提供電源,確保LNA有足夠的帶寬去放大衛(wèi)星信號;NEO_M8P中ANT_ON為輸出信號線,在節(jié)能模式下,為了優(yōu)化功耗,系統(tǒng)會通過該信號線關(guān)閉可選擇的外部低噪聲放大器[7](LNA)。
圖4 天線部分原理圖
1.2.3電源部分
整個(gè)電路中可以通過USB和串口進(jìn)行供電,圖5為VDD_IN供電原理圖。由于NEO-M8P中需要3.3 V左右的電壓,故需要將VDD_IN轉(zhuǎn)換為3.3 V的電壓,該電路中采用的是TPS73633電壓轉(zhuǎn)換芯片(圖6為電壓轉(zhuǎn)換原理圖),該芯片也具有反向電流保護(hù)作用。在NEO-M8P還涉及V_BCKP輸入端口,當(dāng)NEO-M8P供電失敗后,備用電源通過該端口供電,用來為實(shí)時(shí)時(shí)鐘(RTC)和BBR供電。
圖5 VDD_IN供電原理圖
圖6 電壓轉(zhuǎn)換原理圖
該系統(tǒng)設(shè)計(jì)中主要涉及NMEA、UBLOX、RTCM3這三種協(xié)議。在基站和移動站之間傳輸?shù)臄?shù)據(jù)是RTCM3協(xié)議的數(shù)據(jù)。單片機(jī)接收移動站發(fā)送的數(shù)據(jù)有NMEA和UBLOX兩種協(xié)議的數(shù)據(jù),NMEA協(xié)議格式如圖7所示。在該系統(tǒng)中單片機(jī)只需要解析NMEA中GPGGA、GPGSA、GPGSV、GPRMC和GPVTG,因此這里只詳細(xì)介紹這五種數(shù)據(jù)格式。
圖7 NMEA協(xié)議格式
GPGGA數(shù)據(jù)協(xié)議格式CFG-MSG為 0xF0 0x00,包含的數(shù)據(jù)域有17個(gè),具體GPGGA數(shù)據(jù)協(xié)議格式如圖8所示。
圖8 GPGGA數(shù)據(jù)協(xié)議格式
例如:MYMGPGGA,092725.00,4717.11399,N,00833.91590,E,1,08,1.01,499.6,M,48.0,M,,*5B
GPGSA數(shù)據(jù)格式CFG-MSG為 0xF0 0x02,包含的數(shù)據(jù)域有21個(gè),具體GPGSA數(shù)據(jù)協(xié)議格式如圖9所示。
圖9 GPGSA數(shù)據(jù)協(xié)議格式
GPGSV數(shù)據(jù)格式CFG-MSG為 0xF0 0x03,包含的數(shù)據(jù)域有8到16個(gè)不定,具體GPGSV數(shù)據(jù)協(xié)議格式如圖10所示。
圖10 GPGSV數(shù)據(jù)協(xié)議格式注:由于數(shù)據(jù)的長度不確定,5..16代表數(shù)字5到16都有可能。
GPRMC數(shù)據(jù)格式CFG-MSG為 0xF0 0x04,包含的數(shù)據(jù)域有16個(gè),具體GPRMC數(shù)據(jù)協(xié)議格式如圖11所示。
圖11 GPRMC數(shù)據(jù)協(xié)議格式
GPVTG數(shù)據(jù)格式CFG-MSG為 0xF0 0x05,包含的數(shù)據(jù)域有12個(gè),具體GPVTG數(shù)據(jù)協(xié)議格式如圖12所示。
圖12 GPVTG數(shù)據(jù)協(xié)議格式
在軟件配置中需要用到ublox公司的u-center軟件, 該軟件對于分析和評估u-blox GNSS接收器具有獨(dú)特的靈活性。u-blox GNSS接收器也能夠通過u-center軟件對其進(jìn)行配置和固件更新。
圖13為其主要的配置流程圖。
圖13 配置流程圖
該系統(tǒng)首先通過串口或者USB接入PC端,在u-center中就會自動連接,然后就可以進(jìn)行設(shè)置。第一步是DGNSS模式的設(shè)置,這里是配置為RTK Fix模式;第二步是GNSS配置,即選擇全球?qū)Ш叫l(wèi)星系統(tǒng),根據(jù)多次測試,選擇GPS和 Beidou兩種衛(wèi)星系統(tǒng)的信號最好,這里配置選擇GPS和Beidou; 第三步是MSG(Messages)輸出信息的選擇,RTCM協(xié)議的數(shù)據(jù)輸出1005、1077、1127、4072,ublox協(xié)議的數(shù)據(jù)主要輸出RAWX, NMEA協(xié)議的數(shù)據(jù)輸出GPGGA、GPGSA、GPGSV、GPRMC和GPVTG;第四步是 PRT(Ports)端口的配置,串口1和USB的輸入輸出都配置為UBX+NMEA+RTCM3,串口1的波特率設(shè)置為115 200 b/s;第五步是Time Mode 3的設(shè)置,設(shè)置為1-Survey-in模式;第六步是CFG(Configuration)配置,就是將前面的配置保存到內(nèi)部存儲中,防止掉電丟失。
gpsx為解析后輸出的數(shù)據(jù),buf為輸入的nema-0183原始信息:
NMEA_GPGGA_Analysis(gpsx,buf);
NMEA_GPGSA_Analysis(gpsx,buf);
NMEA_GPGSV_Analysis(gpsx,buf);
NMEA_GPRMC_Analysis(gpsx,buf);
NMEA_GPVTG_Analysis(gpsx,buf);
上面分為解析GPGGA、GPGSA、GPGSV、GPRMC和GPVTG五種類型的數(shù)據(jù)函數(shù),這里詳細(xì)介紹GPGGA相關(guān)的數(shù)據(jù),具體程序設(shè)計(jì)流程圖如圖14所示。
圖14 程序設(shè)計(jì)流程圖
結(jié)合該程序和2.1節(jié)中GPGGA協(xié)議的介紹可知,獲取數(shù)據(jù)的第6個(gè)數(shù)據(jù)段為GPS狀態(tài),第7個(gè)數(shù)據(jù)段為定位的衛(wèi)星數(shù)目,第8個(gè)數(shù)據(jù)段為定位的高度。
本設(shè)計(jì)中采用u-center軟件對系統(tǒng)進(jìn)行測試,測試中主要分析如圖15所示的基本數(shù)據(jù)視圖,其中經(jīng)度:119.211、緯度:26.046、高度:121.700 m、Fix模式:FIXED、PDOP:1.5、HDOP:0.8。在進(jìn)行普通定位測試時(shí),PDOP三維位置精度因子(數(shù)值越小精度越高)為1.9~2.2,HDOP水平分量精度因子(數(shù)值越小精度越高)為1.8~2.0。相對于該系統(tǒng)中的PDOP=1.5、HDOP=0.8而言,該系統(tǒng)的精度相對更高。Fix模式進(jìn)入FIXED狀態(tài)表示定位完成(計(jì)算出定位的位置)。通過多次的軟件配置和天線的選擇,在衛(wèi)星類型選擇GPS+北斗的時(shí)候,衛(wèi)星信號最強(qiáng)。測試中將天線的增益從28 dB增加到 38 dB后,衛(wèi)星信號基本都能達(dá)到40 dB以上,隨著信號強(qiáng)度的增加,系統(tǒng)中Fix模式進(jìn)入FIXED狀態(tài)的時(shí)間縮短,也就是定位時(shí)間縮短,定位精度也有所提高。
圖15 基本數(shù)據(jù)視圖
本文利用高性能的NEO-M8P實(shí)現(xiàn)實(shí)時(shí)差分定位(RTK)并通過串口輸出相應(yīng)格式的數(shù)據(jù),對于設(shè)計(jì)的移動站和基站,可以通過u-center軟件進(jìn)行測試和配置,在最后數(shù)據(jù)通過串口輸出后經(jīng)過STM32單片機(jī)對其進(jìn)行數(shù)據(jù)解析。電路中的uart端口也能夠很好地與PX4、APM等開源飛控進(jìn)行通信。u-center軟件配置環(huán)境提供很友好的圖形交互界面,使得在實(shí)際應(yīng)用中可根據(jù)需求更加方便與準(zhǔn)確地進(jìn)行配置。該系統(tǒng)的高精度定位也完全符合精確導(dǎo)航的商用無人機(jī)、機(jī)器人導(dǎo)航系統(tǒng)等應(yīng)用的設(shè)計(jì)需求。
[1] 孫步陽,程新文,呂獻(xiàn)林. 實(shí)時(shí)動態(tài)RTK技術(shù)精度研究[J]. 工程地球物理學(xué)報(bào), 2008(2): 232-236.
[2] 吳北平. GPS網(wǎng)絡(luò)RTK定位原理與數(shù)學(xué)模型研究[D].武漢: 中國地質(zhì)大學(xué),2003.
[3] 谷潤平,黃磊,趙向領(lǐng). QAR數(shù)據(jù)的數(shù)據(jù)融合算法[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用,2016,25(1):136-140.
[4] POURKHAK B, MIREEI S A, SADEGHI M. Multi-sensor data fusion in the nondestructive measurement of kiwifruit texture[J]. Measurement, 2017,101:157-165.
[5] 郝萬亮,孫付平,劉帥.基于載波相位DGNSS/INS緊組合的平滑后處理算法[J]. 大地測量與地球動力學(xué), 2015, 35(6):1031-1035.
[6] 劉碩,張磊,李健. GNSS系統(tǒng)間鐘差輔助定位研究[J]. 武漢大學(xué)學(xué)報(bào), 2017,42(7):1015-1020.
[7] 曾毅. 低噪音放大器(LNA)多層板設(shè)計(jì)[J]. 電子工藝技術(shù), 2008(2):84-86,101.