面向旋翼无人机的高精度组合导航模块设计与评估*
2019-07-08唐海亮张提升包林封牛小骥
唐海亮,张提升,包林封,牛小骥
(武汉大学卫星导航定位技术研究中心,武汉 430079)
随着旋翼无人机的发展,其应用已经不局限于传统的消费市场,在高压电力巡检[1-2]、农业植保[3]、交通运输[4]以及安防[5]等专业领域中也得到了广泛应用。专业领域需要旋翼无人机的定位导航组件具有高精度、高可靠、低成本等特点。国内外组合导航定位技术研究及相关产品大多面向车载,基于旋翼无人机的组合导航研究文献及产品较少。王辰熙等人[6]采用多个惯性传感器与ublox的M8N接收机模块研发了一款无人机平台的组合导航系统,其方案定位精度为米级,且系统的成本较高,体积和功耗较大。ublox的M8U、泰斗微电子的N303-3AR、梦芯科技的MXT909均为低成本MEMS(Micro-Electro-Mechanical Systems,微机电系统)惯导与全球卫星导航系统GNSS(Global Navigation Satellite System)单频定位接收机的组合导航模块。然而,这些组合导航模块一方面定位精度只能到米级,不能满足高精度导航定位需求;另一方面它们主要面向车载导航需求,没有针对旋翼无人机强振动等情况进行专门的研究和分析。
本文针对旋翼无人机的特殊应用场景,设计了低成本、高精度、高稳定的组合导航模块,尤其是针对旋翼无人机强振动情况进行了专门的分析和系统优化。首先,介绍低成本高精度组合导航模块的系统设计方案;然后,针对旋翼无人机的特殊动态特征及其高精度的需求,提出了模块性能优化关键技术;接着,开展了旋翼无人机飞行实验,分析了IMU白噪声参数对MEMS惯导和组合导航性能的影响,评估了组合导航模块在旋翼无人机上的定位精度,最后给出结论。
1 低成本高精度组合导航模块设计
低成本高精度GNSS/INS组合导航模块采用STM32F767VG[7]核心处理器,InvenSence的单芯片惯性测量单元MEMS IMU(Inertial Measurement Unit)ICM-20602[8],ublox的GNSS单频实时动态RTK(Real-Time Kinematic)定位模块NEO-M8P[9]。处理器利用有源晶振维持本地时间,通过UART接口采集NEO-M8P的NMEA格式GNSS定位结果,通过I2C接口采集ICM-20602的惯导原始数据。NEO-M8P配置为GPS加北斗双系统模式,充分利用亚太地区北斗卫星导航定位系统的优势。通过结合NEO-M8P的1PPS脉冲信号和ICM-20602的采样脉冲信号,实现惯导数据与GNSS时间的精确同步。惯导数据(50 Hz)和GNSS定位结果(1 Hz)分别进入解算引擎,完成组合导航更新解算,输出高数据率的位置、速度、姿态等导航定位信息。
图1 硬件系统结构框图
实时组合导航算法采用计算量小且设计简洁的松组合[10-12]形式。使用扩展卡尔曼滤波器EKF(Extended Kalman Filter)对GNSS定位结果和惯性导航系统INS(Inertial Navigation System)导航结果进行数据融合。系统状态参数x由INS误差状态组成,可以表示为
x=[δrnδvnψbgba]T
(1)
式中,δrn,δvn,ψ分别表示位置误差、速度误差和姿态角误差;bg,ba分别为陀螺零偏和加速度计零偏,作为增广状态进行在线估计和补偿。低成本MEMS IMU做比例因子误差估计,对导航性能改善有限,且会明显增加计算量,因此在算法中未做考虑。
Kalman滤波器时间更新状态方程为
xk=φk,k-1xk-1+Gk,k-1wk-1
(2)
式中,φk,k-1为k-1时刻到k时刻的系统转移矩阵;Gk,k-1为系统噪声驱动矩阵;wk-1为系统噪声矩阵,由MEMS惯导的器件噪声决定。特别的,本文采用的系统噪声矩阵为
w=[wvwψwgbwab]T
(3)
其中,wv为加速度计白噪声(速度随机游走VRW),wψ为陀螺白噪声(角度随机游走ARW),wgb和wab分别为陀螺和加速度计零偏噪声。
GNSS定位结果作为Kalman滤波器的观测量,可以对INS的结果进行更新修正。Kalman的更新观测方程为
zk=Hkxk+vk
(4)
式中,zk为观测向量;Hk为量测矩阵;vk为观测噪声,即GNSS定位结果的噪声。
受旋翼无人机螺旋桨转动影响,MEMS IMU数据中存在大量的高频振动,因此INS机械编排中的姿态和速度解算使用双子样机械编排算法,来提高提高INS的稳定性和精度。同时,由于NEO-M8P接收机的RTK解算和输出数据延时,GNSS定位结果一般会在整秒之后延迟一段时间才收到。测试表明接收机NEO-M8P提供的NMEA消息比整秒时刻延迟200 ms左右。而INS机械编排的数据率为50 Hz,即周期为20 ms。因此GNSS输出延迟已经达到了大约10个惯导历元,如果不做专门考虑,会严重影响组合导航精度。因此,模块采用章红平等提出的状态转移算法延时更新[13],能够显著减小GNSS定位结果延时对组合导航定位精度的影响。
2 模块性能优化关键技术
低成本MEMS惯导的性能及稳定性都会因旋翼无人机平台的高频振动而发生显著恶化。为了保证组合导航的精度和稳定性,本文分别从惯导原始数据采集和组合导航IMU白噪声参数调整两个方面对组合导航模块进行优化。
2.1 惯导原始数据采集
旋翼无人机所特有的高频振动是这一载体的真实运动,为了采集旋翼无人机高频振动信息,必须保证惯导的数据采样率足够高。然而,导航解算更新率与计算量成正比,为了确保导航模块的实时性,在惯导原始数据采样率足够高的条件下,通过求平均值的方式将高频的惯导数据降采样,进行低频的INS机械编排,不会明显影响组合导航的性能[14]。综合MCU计算资源消耗和组合导航性能,以1 kHz的原始采样率采集MEMS惯导数据,然后通过求平均降采样到50 Hz进行惯导解算,能够实现嵌入式平台的实时高精度组合导航。
在进行组合导航解算时,只有确保GNSS和IMU原始数据时间同步(即两种数据打上共同的时标),才能满足高精度的需求。晶振时钟信号的随机误差较小,但存在较大的累计误差[15]。GNSS定位模块NEO-M8P的时间脉冲信号1PPS的精度为30 ns,1PPS时钟误差不随时间积累。基于这两种信号的特点,本文提出一种利用1PPS信号对晶振频率误差漂移进行线性比例补偿的方法,可以得到误差不累积的精确本地时间。在MEMS惯导采样脉冲触发下,记录对应本地时间作为惯导数据采样时间,从而实现惯导数据和GNSS时间的精确同步。
图2为惯导数据采集示意图,本地时间依靠有源晶振提供的1 MHz频率的32位定时器维持。每完成一次惯导数据采集,MEMS惯导会产生一个脉冲。GNSS定位模块则每个整秒时刻产生一个PPS脉冲。每一个脉冲都会触发MCU得到一个定时器的计数值(C1、C2、C3,对应T1、T2、T3时刻 )。利用连续两次PPS之间的定时器计数差值,得到线性比例系数Sc,如式(2)。利用计数值C1和C2,整秒时间T1,同时补偿晶振的频率漂移误差,即得到同步后的惯导数据时间T2,如式(3)所示。
(5)
T2=T1+(C2-C1)Sc×10-6
(6)
图2 惯导原始数据采集示意图
如图3(a),如果不补偿晶振的频率漂移,以1PPS作为参考,每秒内最后一个IMU采样间隔大约漂移10 μs。经过补偿晶振频率漂移,如图3(b),惯导采样时间间隔波动范围大约为±2 μs。经过这种时间同步技术,能够使惯导原始数据和GNSS数据时间在硬件层面上实现精确同步,为组合导航的高精度解算提供保障。
图3 晶振补偿前后的IMU数据时间间隔
2.2 IMU白噪声参数调整
对长时间的静态惯导数据进行Allan方差分析[16],是评估惯性器件性能的一种标准方式。通过Allan方差曲线可以得到IMU的随机漂移误差噪声大小,比如常见的白噪声和零偏噪声。以加速度计为例,图4为MEMS加速度计的Allan方差曲线,其中曲线左侧斜率为-1/2的部分表示加速度计白噪声(即速度随机游走VRW),读取τ=1处的σA≈7×10-4m/s2,有如下关系
(7)
式中N表示加速度计白噪声,那么可以计算得到加速度计白噪声为
(8)
图4 MEMS加速度计的Allan方差曲线
3 测试与评估
受限于载重能力,旋翼无人机平台无法安装高精度导航设备作为参考系统。经过硬件扩展,安装较高精度的惯导模块ADIS16460[17]到现有的组合导航硬件模块上。硬件系统同时采集ADIS16460和ICM-20602两种IMU的数据,以ADIS16460惯导和GNSS后处理RTK进行松组合反向平滑的结果作为参考真值。测试场地为武汉大学某空旷操场,使用天宝Net-R9接收机作为RTK参考基站,基站设在武汉大学某高层建筑楼顶,RTK基线长度小于1 km。如图5为测试使用的旋翼无人机实物图,旋翼无人机为大疆经纬M100,组合导航模块安装在无人机平面上,GNSS天线为华信无人机天线,模块通过移动电源供电,数据通过硬件系统的TF卡记录。
图5 无人机平台实物图
3.1 IMU白噪声参数评估
图6给出了两组不同IMU白噪声参数分别进行组合导航解算得到的位置误差曲线。由图6(a)可以看出,基于标称的IMU白噪声参数,在旋翼无人机上出现了异常的位置误差,高程误差显著增大,水平方向也存在一定的误差波动。经验表明,加速度计白噪声对组合导航高程方向影响较大,陀螺白噪声则对水平方向影响较大。图6(b),经过对IMU白噪声参数放大处理,整体的组合导航位置误差在精度范围之内。以加速度白噪声为例(陀螺白噪声放大10倍),统计加速度白噪声参数变化对组合导航位置精度的影响。如表1,给出了不同加速度白噪声参数下,分别进行组合导航统计的位置误差RMS值。统计表明,在合理范围之内,加速度白噪声参数越大,组合导航的位置误差越小。
图6 惯导随机游走对组合导航的影响
加速度白噪声/((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
从卡尔曼滤波的角度来看,放大惯导的IMU白噪声参数,相当于对惯导的信赖降低,从而增加对GNSS定位的信赖。通过后处理仿真GNSS中断[18]的方法,可以评估IMU白噪声参数对惯导性能的影响。以加速度计白噪声(VRW)为例,进行多次仿真中断GNSS测试,每次中断时间为10 s。图7是GNSS仿真中断的典型位置误差漂移曲线,表2给出了INS漂移RMS统计结果。由表2可以看出,在GNSS失效时,加速度白噪声参数越大,INS位置误差漂移越大。
图7 仿真GNSS中断的组合导航位置误差
速度随机游走/((m/s)/h)水平漂移/m垂向漂移/m0.32.860.960.62.951.211.23.361.472.44.21.8
可以说明,对于旋翼无人机平台,高频的振动会导致MEMS惯导性能下降,需要在组合导航算法中合理的放大IMU白噪声参数来平衡惯导与GNSS的权重。如果IMU白噪声参数设置过小,则会造成组合导航过度信任了被无人机振动干扰的惯导,从而导致定位误差增大;而如果白噪声参数设置过大,则会降低GNSS信号中断时惯导独立推算的性能。经过对比可以发现,对白噪声参数进行10倍左右的放大,可以在保证组合导航应有精度的同时,也能够保证惯导独立工作的性能。
3.2 组合导航定位精度评估
为了验证组合导航模块的导航定位精度,分别采用GNSS定位模块的RTK和普通单点定位(SPP)两种模式的定位结果与MEMS惯导进行组合导航解算。如图8(a)和图8(b),分别为两种模式定位结果的组合导航结果的位置误差曲线。基于SPP的组合导航结果位置精度为米级,高程方向的误差甚至达到了5 m以上,这也是现有低成本组合导航模块的精度水平。由于RTK在诸如电离层改正、卫星钟差改正[19]等方面的优势,可以达到厘米级的绝对定位精度。使用RTK进行组合导航的位置误差统计值(RMS)为,北向0.023 m,东向0.030 m,高程0.033 m。统计表明,本文设计的组合导航模块定位精度可以达到厘米级,能够为旋翼无人机提供稳定的高精度导航定位服务。
图8 GNSS定位结果的影响
4 总结
本文基于低成本GNSS定位模块和MEMS惯导,设计了适用于旋翼无人机的GNSS/INS组合导航模块。针对旋翼无人机强振动的特点,设计了能充分保障惯导精度的IMU原始数据采集方案和组合导航Kalman滤波算法参数优化调整策略。在典型旋翼无人机振动条件下,分析对比了组合导航IMU白噪声参数对于MEMS惯导性能和组合导航位置精度的影响。测试结果表明,对IMU白噪声参数进行10倍左右的放大,能够兼顾GNSS信号稳定时的组合导航精度和GNSS信号遮挡时的惯导性能。基于典型旋翼无人机实测数据评估了本文中GNSS/INS组合导航模块的定位性能,在GNSS观测条件良好的条件下其定位精度为厘米级,在GNSS短时间(10 s)遮挡时其惯导独立推算精度为米级。本文设计的面向旋翼无人机的组合导航模块,有效克服了载体剧烈振动对导航性能的影响,在选用低成本硬件的同时,保证了高精度的导航定位性能,为旋翼无人机的高精度导航提供了一套参考方案。