唐海亮,張?zhí)嵘?包林封,牛小驥
(武漢大學(xué)衛(wèi)星導(dǎo)航定位技術(shù)研究中心,武漢 430079)
隨著旋翼無人機(jī)的發(fā)展,其應(yīng)用已經(jīng)不局限于傳統(tǒng)的消費(fèi)市場,在高壓電力巡檢[1-2]、農(nóng)業(yè)植保[3]、交通運(yùn)輸[4]以及安防[5]等專業(yè)領(lǐng)域中也得到了廣泛應(yīng)用。專業(yè)領(lǐng)域需要旋翼無人機(jī)的定位導(dǎo)航組件具有高精度、高可靠、低成本等特點。國內(nèi)外組合導(dǎo)航定位技術(shù)研究及相關(guān)產(chǎn)品大多面向車載,基于旋翼無人機(jī)的組合導(dǎo)航研究文獻(xiàn)及產(chǎn)品較少。王辰熙等人[6]采用多個慣性傳感器與ublox的M8N接收機(jī)模塊研發(fā)了一款無人機(jī)平臺的組合導(dǎo)航系統(tǒng),其方案定位精度為米級,且系統(tǒng)的成本較高,體積和功耗較大。ublox的M8U、泰斗微電子的N303-3AR、夢芯科技的MXT909均為低成本MEMS(Micro-Electro-Mechanical Systems,微機(jī)電系統(tǒng))慣導(dǎo)與全球衛(wèi)星導(dǎo)航系統(tǒng)GNSS(Global Navigation Satellite System)單頻定位接收機(jī)的組合導(dǎo)航模塊。然而,這些組合導(dǎo)航模塊一方面定位精度只能到米級,不能滿足高精度導(dǎo)航定位需求;另一方面它們主要面向車載導(dǎo)航需求,沒有針對旋翼無人機(jī)強(qiáng)振動等情況進(jìn)行專門的研究和分析。
本文針對旋翼無人機(jī)的特殊應(yīng)用場景,設(shè)計了低成本、高精度、高穩(wěn)定的組合導(dǎo)航模塊,尤其是針對旋翼無人機(jī)強(qiáng)振動情況進(jìn)行了專門的分析和系統(tǒng)優(yōu)化。首先,介紹低成本高精度組合導(dǎo)航模塊的系統(tǒng)設(shè)計方案;然后,針對旋翼無人機(jī)的特殊動態(tài)特征及其高精度的需求,提出了模塊性能優(yōu)化關(guān)鍵技術(shù);接著,開展了旋翼無人機(jī)飛行實驗,分析了IMU白噪聲參數(shù)對MEMS慣導(dǎo)和組合導(dǎo)航性能的影響,評估了組合導(dǎo)航模塊在旋翼無人機(jī)上的定位精度,最后給出結(jié)論。
低成本高精度GNSS/INS組合導(dǎo)航模塊采用STM32F767VG[7]核心處理器,InvenSence的單芯片慣性測量單元MEMS IMU(Inertial Measurement Unit)ICM-20602[8],ublox的GNSS單頻實時動態(tài)RTK(Real-Time Kinematic)定位模塊NEO-M8P[9]。處理器利用有源晶振維持本地時間,通過UART接口采集NEO-M8P的NMEA格式GNSS定位結(jié)果,通過I2C接口采集ICM-20602的慣導(dǎo)原始數(shù)據(jù)。NEO-M8P配置為GPS加北斗雙系統(tǒng)模式,充分利用亞太地區(qū)北斗衛(wèi)星導(dǎo)航定位系統(tǒng)的優(yōu)勢。通過結(jié)合NEO-M8P的1PPS脈沖信號和ICM-20602的采樣脈沖信號,實現(xiàn)慣導(dǎo)數(shù)據(jù)與GNSS時間的精確同步。慣導(dǎo)數(shù)據(jù)(50 Hz)和GNSS定位結(jié)果(1 Hz)分別進(jìn)入解算引擎,完成組合導(dǎo)航更新解算,輸出高數(shù)據(jù)率的位置、速度、姿態(tài)等導(dǎo)航定位信息。
圖1 硬件系統(tǒng)結(jié)構(gòu)框圖
實時組合導(dǎo)航算法采用計算量小且設(shè)計簡潔的松組合[10-12]形式。使用擴(kuò)展卡爾曼濾波器EKF(Extended Kalman Filter)對GNSS定位結(jié)果和慣性導(dǎo)航系統(tǒng)INS(Inertial Navigation System)導(dǎo)航結(jié)果進(jìn)行數(shù)據(jù)融合。系統(tǒng)狀態(tài)參數(shù)x由INS誤差狀態(tài)組成,可以表示為
x=[δrnδvnψbgba]T
(1)
式中,δrn,δvn,ψ分別表示位置誤差、速度誤差和姿態(tài)角誤差;bg,ba分別為陀螺零偏和加速度計零偏,作為增廣狀態(tài)進(jìn)行在線估計和補(bǔ)償。低成本MEMS IMU做比例因子誤差估計,對導(dǎo)航性能改善有限,且會明顯增加計算量,因此在算法中未做考慮。
Kalman濾波器時間更新狀態(tài)方程為
xk=φk,k-1xk-1+Gk,k-1wk-1
(2)
式中,φk,k-1為k-1時刻到k時刻的系統(tǒng)轉(zhuǎn)移矩陣;Gk,k-1為系統(tǒng)噪聲驅(qū)動矩陣;wk-1為系統(tǒng)噪聲矩陣,由MEMS慣導(dǎo)的器件噪聲決定。特別的,本文采用的系統(tǒng)噪聲矩陣為
w=[wvwψwgbwab]T
(3)
其中,wv為加速度計白噪聲(速度隨機(jī)游走VRW),wψ為陀螺白噪聲(角度隨機(jī)游走ARW),wgb和wab分別為陀螺和加速度計零偏噪聲。
GNSS定位結(jié)果作為Kalman濾波器的觀測量,可以對INS的結(jié)果進(jìn)行更新修正。Kalman的更新觀測方程為
zk=Hkxk+vk
(4)
式中,zk為觀測向量;Hk為量測矩陣;vk為觀測噪聲,即GNSS定位結(jié)果的噪聲。
受旋翼無人機(jī)螺旋槳轉(zhuǎn)動影響,MEMS IMU數(shù)據(jù)中存在大量的高頻振動,因此INS機(jī)械編排中的姿態(tài)和速度解算使用雙子樣機(jī)械編排算法,來提高提高INS的穩(wěn)定性和精度。同時,由于NEO-M8P接收機(jī)的RTK解算和輸出數(shù)據(jù)延時,GNSS定位結(jié)果一般會在整秒之后延遲一段時間才收到。測試表明接收機(jī)NEO-M8P提供的NMEA消息比整秒時刻延遲200 ms左右。而INS機(jī)械編排的數(shù)據(jù)率為50 Hz,即周期為20 ms。因此GNSS輸出延遲已經(jīng)達(dá)到了大約10個慣導(dǎo)歷元,如果不做專門考慮,會嚴(yán)重影響組合導(dǎo)航精度。因此,模塊采用章紅平等提出的狀態(tài)轉(zhuǎn)移算法延時更新[13],能夠顯著減小GNSS定位結(jié)果延時對組合導(dǎo)航定位精度的影響。
低成本MEMS慣導(dǎo)的性能及穩(wěn)定性都會因旋翼無人機(jī)平臺的高頻振動而發(fā)生顯著惡化。為了保證組合導(dǎo)航的精度和穩(wěn)定性,本文分別從慣導(dǎo)原始數(shù)據(jù)采集和組合導(dǎo)航IMU白噪聲參數(shù)調(diào)整兩個方面對組合導(dǎo)航模塊進(jìn)行優(yōu)化。
旋翼無人機(jī)所特有的高頻振動是這一載體的真實運(yùn)動,為了采集旋翼無人機(jī)高頻振動信息,必須保證慣導(dǎo)的數(shù)據(jù)采樣率足夠高。然而,導(dǎo)航解算更新率與計算量成正比,為了確保導(dǎo)航模塊的實時性,在慣導(dǎo)原始數(shù)據(jù)采樣率足夠高的條件下,通過求平均值的方式將高頻的慣導(dǎo)數(shù)據(jù)降采樣,進(jìn)行低頻的INS機(jī)械編排,不會明顯影響組合導(dǎo)航的性能[14]。綜合MCU計算資源消耗和組合導(dǎo)航性能,以1 kHz的原始采樣率采集MEMS慣導(dǎo)數(shù)據(jù),然后通過求平均降采樣到50 Hz進(jìn)行慣導(dǎo)解算,能夠?qū)崿F(xiàn)嵌入式平臺的實時高精度組合導(dǎo)航。
在進(jìn)行組合導(dǎo)航解算時,只有確保GNSS和IMU原始數(shù)據(jù)時間同步(即兩種數(shù)據(jù)打上共同的時標(biāo)),才能滿足高精度的需求。晶振時鐘信號的隨機(jī)誤差較小,但存在較大的累計誤差[15]。GNSS定位模塊NEO-M8P的時間脈沖信號1PPS的精度為30 ns,1PPS時鐘誤差不隨時間積累。基于這兩種信號的特點,本文提出一種利用1PPS信號對晶振頻率誤差漂移進(jìn)行線性比例補(bǔ)償?shù)姆椒?可以得到誤差不累積的精確本地時間。在MEMS慣導(dǎo)采樣脈沖觸發(fā)下,記錄對應(yīng)本地時間作為慣導(dǎo)數(shù)據(jù)采樣時間,從而實現(xiàn)慣導(dǎo)數(shù)據(jù)和GNSS時間的精確同步。
圖2為慣導(dǎo)數(shù)據(jù)采集示意圖,本地時間依靠有源晶振提供的1 MHz頻率的32位定時器維持。每完成一次慣導(dǎo)數(shù)據(jù)采集,MEMS慣導(dǎo)會產(chǎn)生一個脈沖。GNSS定位模塊則每個整秒時刻產(chǎn)生一個PPS脈沖。每一個脈沖都會觸發(fā)MCU得到一個定時器的計數(shù)值(C1、C2、C3,對應(yīng)T1、T2、T3時刻 )。利用連續(xù)兩次PPS之間的定時器計數(shù)差值,得到線性比例系數(shù)Sc,如式(2)。利用計數(shù)值C1和C2,整秒時間T1,同時補(bǔ)償晶振的頻率漂移誤差,即得到同步后的慣導(dǎo)數(shù)據(jù)時間T2,如式(3)所示。
(5)
T2=T1+(C2-C1)Sc×10-6
(6)
圖2 慣導(dǎo)原始數(shù)據(jù)采集示意圖
如圖3(a),如果不補(bǔ)償晶振的頻率漂移,以1PPS作為參考,每秒內(nèi)最后一個IMU采樣間隔大約漂移10 μs。經(jīng)過補(bǔ)償晶振頻率漂移,如圖3(b),慣導(dǎo)采樣時間間隔波動范圍大約為±2 μs。經(jīng)過這種時間同步技術(shù),能夠使慣導(dǎo)原始數(shù)據(jù)和GNSS數(shù)據(jù)時間在硬件層面上實現(xiàn)精確同步,為組合導(dǎo)航的高精度解算提供保障。
圖3 晶振補(bǔ)償前后的IMU數(shù)據(jù)時間間隔
對長時間的靜態(tài)慣導(dǎo)數(shù)據(jù)進(jìn)行Allan方差分析[16],是評估慣性器件性能的一種標(biāo)準(zhǔn)方式。通過Allan方差曲線可以得到IMU的隨機(jī)漂移誤差噪聲大小,比如常見的白噪聲和零偏噪聲。以加速度計為例,圖4為MEMS加速度計的Allan方差曲線,其中曲線左側(cè)斜率為-1/2的部分表示加速度計白噪聲(即速度隨機(jī)游走VRW),讀取τ=1處的σA≈7×10-4m/s2,有如下關(guān)系
(7)
式中N表示加速度計白噪聲,那么可以計算得到加速度計白噪聲為
(8)
圖4 MEMS加速度計的Allan方差曲線
受限于載重能力,旋翼無人機(jī)平臺無法安裝高精度導(dǎo)航設(shè)備作為參考系統(tǒng)。經(jīng)過硬件擴(kuò)展,安裝較高精度的慣導(dǎo)模塊ADIS16460[17]到現(xiàn)有的組合導(dǎo)航硬件模塊上。硬件系統(tǒng)同時采集ADIS16460和ICM-20602兩種IMU的數(shù)據(jù),以ADIS16460慣導(dǎo)和GNSS后處理RTK進(jìn)行松組合反向平滑的結(jié)果作為參考真值。測試場地為武漢大學(xué)某空曠操場,使用天寶Net-R9接收機(jī)作為RTK參考基站,基站設(shè)在武漢大學(xué)某高層建筑樓頂,RTK基線長度小于1 km。如圖5為測試使用的旋翼無人機(jī)實物圖,旋翼無人機(jī)為大疆經(jīng)緯M100,組合導(dǎo)航模塊安裝在無人機(jī)平面上,GNSS天線為華信無人機(jī)天線,模塊通過移動電源供電,數(shù)據(jù)通過硬件系統(tǒng)的TF卡記錄。
圖5 無人機(jī)平臺實物圖
圖6給出了兩組不同IMU白噪聲參數(shù)分別進(jìn)行組合導(dǎo)航解算得到的位置誤差曲線。由圖6(a)可以看出,基于標(biāo)稱的IMU白噪聲參數(shù),在旋翼無人機(jī)上出現(xiàn)了異常的位置誤差,高程誤差顯著增大,水平方向也存在一定的誤差波動。經(jīng)驗表明,加速度計白噪聲對組合導(dǎo)航高程方向影響較大,陀螺白噪聲則對水平方向影響較大。圖6(b),經(jīng)過對IMU白噪聲參數(shù)放大處理,整體的組合導(dǎo)航位置誤差在精度范圍之內(nèi)。以加速度白噪聲為例(陀螺白噪聲放大10倍),統(tǒng)計加速度白噪聲參數(shù)變化對組合導(dǎo)航位置精度的影響。如表1,給出了不同加速度白噪聲參數(shù)下,分別進(jìn)行組合導(dǎo)航統(tǒng)計的位置誤差RMS值。統(tǒng)計表明,在合理范圍之內(nèi),加速度白噪聲參數(shù)越大,組合導(dǎo)航的位置誤差越小。
圖6 慣導(dǎo)隨機(jī)游走對組合導(dǎo)航的影響
加速度白噪聲/((m/s)/h)水平誤差/m垂向誤差/m0.150.013 00.065 60.30.011 60.046 20.60.009 40.030 11.20.007 90.019 5
從卡爾曼濾波的角度來看,放大慣導(dǎo)的IMU白噪聲參數(shù),相當(dāng)于對慣導(dǎo)的信賴降低,從而增加對GNSS定位的信賴。通過后處理仿真GNSS中斷[18]的方法,可以評估IMU白噪聲參數(shù)對慣導(dǎo)性能的影響。以加速度計白噪聲(VRW)為例,進(jìn)行多次仿真中斷GNSS測試,每次中斷時間為10 s。圖7是GNSS仿真中斷的典型位置誤差漂移曲線,表2給出了INS漂移RMS統(tǒng)計結(jié)果。由表2可以看出,在GNSS失效時,加速度白噪聲參數(shù)越大,INS位置誤差漂移越大。
圖7 仿真GNSS中斷的組合導(dǎo)航位置誤差
速度隨機(jī)游走/((m/s)/h)水平漂移/m垂向漂移/m0.32.860.960.62.951.211.23.361.472.44.21.8
可以說明,對于旋翼無人機(jī)平臺,高頻的振動會導(dǎo)致MEMS慣導(dǎo)性能下降,需要在組合導(dǎo)航算法中合理的放大IMU白噪聲參數(shù)來平衡慣導(dǎo)與GNSS的權(quán)重。如果IMU白噪聲參數(shù)設(shè)置過小,則會造成組合導(dǎo)航過度信任了被無人機(jī)振動干擾的慣導(dǎo),從而導(dǎo)致定位誤差增大;而如果白噪聲參數(shù)設(shè)置過大,則會降低GNSS信號中斷時慣導(dǎo)獨立推算的性能。經(jīng)過對比可以發(fā)現(xiàn),對白噪聲參數(shù)進(jìn)行10倍左右的放大,可以在保證組合導(dǎo)航應(yīng)有精度的同時,也能夠保證慣導(dǎo)獨立工作的性能。
為了驗證組合導(dǎo)航模塊的導(dǎo)航定位精度,分別采用GNSS定位模塊的RTK和普通單點定位(SPP)兩種模式的定位結(jié)果與MEMS慣導(dǎo)進(jìn)行組合導(dǎo)航解算。如圖8(a)和圖8(b),分別為兩種模式定位結(jié)果的組合導(dǎo)航結(jié)果的位置誤差曲線。基于SPP的組合導(dǎo)航結(jié)果位置精度為米級,高程方向的誤差甚至達(dá)到了5 m以上,這也是現(xiàn)有低成本組合導(dǎo)航模塊的精度水平。由于RTK在諸如電離層改正、衛(wèi)星鐘差改正[19]等方面的優(yōu)勢,可以達(dá)到厘米級的絕對定位精度。使用RTK進(jìn)行組合導(dǎo)航的位置誤差統(tǒng)計值(RMS)為,北向0.023 m,東向0.030 m,高程0.033 m。統(tǒng)計表明,本文設(shè)計的組合導(dǎo)航模塊定位精度可以達(dá)到厘米級,能夠為旋翼無人機(jī)提供穩(wěn)定的高精度導(dǎo)航定位服務(wù)。
圖8 GNSS定位結(jié)果的影響
本文基于低成本GNSS定位模塊和MEMS慣導(dǎo),設(shè)計了適用于旋翼無人機(jī)的GNSS/INS組合導(dǎo)航模塊。針對旋翼無人機(jī)強(qiáng)振動的特點,設(shè)計了能充分保障慣導(dǎo)精度的IMU原始數(shù)據(jù)采集方案和組合導(dǎo)航Kalman濾波算法參數(shù)優(yōu)化調(diào)整策略。在典型旋翼無人機(jī)振動條件下,分析對比了組合導(dǎo)航IMU白噪聲參數(shù)對于MEMS慣導(dǎo)性能和組合導(dǎo)航位置精度的影響。測試結(jié)果表明,對IMU白噪聲參數(shù)進(jìn)行10倍左右的放大,能夠兼顧GNSS信號穩(wěn)定時的組合導(dǎo)航精度和GNSS信號遮擋時的慣導(dǎo)性能?;诘湫托頍o人機(jī)實測數(shù)據(jù)評估了本文中GNSS/INS組合導(dǎo)航模塊的定位性能,在GNSS觀測條件良好的條件下其定位精度為厘米級,在GNSS短時間(10 s)遮擋時其慣導(dǎo)獨立推算精度為米級。本文設(shè)計的面向旋翼無人機(jī)的組合導(dǎo)航模塊,有效克服了載體劇烈振動對導(dǎo)航性能的影響,在選用低成本硬件的同時,保證了高精度的導(dǎo)航定位性能,為旋翼無人機(jī)的高精度導(dǎo)航提供了一套參考方案。