孙晓媛
(南京航空航天大学,江苏 南京 210016)
地磁场是地球的基本物理场,为航空、航天、航海提供了天然的参考坐标系,可用于飞机、导弹、航天器或舰船等的导航定位。地磁导航不需要接收外部信息,属于被动导航,同时它具有自主性、隐蔽性、误差不随时间累积等特点,且能够工作在地形特征不明显的区域(如平原、海洋、沙漠等)[1,2]。随着地磁理论的渐进完善、磁传感器的不断发展和组合导航算法的日趋成熟,地磁导航技术获得了快速的发展,成为当前导航研究领域的一个热点。
理论上任何一点的磁场强度矢量和其地理位置(经度、纬度、高度)是一一对应的,通过确定各点的地磁强度矢量就可以实现全球定位[3]。而在实际应用中,往往需要惯性导航系统(INS)提供参考位置。基于INS的地磁导航方法主要有两种,一是地磁匹配,即以TERCOM系统为代表的断续批相关处理技术[4,5];另一个是地磁滤波,即以SITAN系统为代表的递推滤波技术[6]。地磁匹配算法利用实测地磁序列到地磁数据库中寻找最佳匹配序列,从而确定当前位置,它原理简单,使用范围广,对初始误差要求低,能获得较高的匹配精度和捕获概率[7]。但当地磁数据库网格与INS参考轨迹存在较大位置误差时,地磁匹配易出现不唯一而大大降低导航精度,甚至可能出现地磁匹配失效产生误导航。
本文针对地磁数据库网格与INS参考轨迹存在较大位置误差时易导致地磁匹配失效的情况,提出一种基于单点多模板序列匹配的惯性/地磁匹配组合导航方法,该方法考虑到地磁匹配过程中多个可能的载体位置,在某个匹配时刻采用多个模板序列来进行地磁匹配计算,它能够提高组合导航系统的可靠性和定位精度。
利用地磁匹配导航系统(Geomagnetic Matching Navigation System, GMNS)辅助惯导系统(INS)进行导航,主要是通过GMNS周期性地去校正惯导的时间累积误差,使得导航误差不随时间发散,同时INS为GMNS提供起始位置、匹配路径和数据库范围,两者之间的组合通常采用Kalman滤波来实现[8,9]。
如图1所示为地磁匹配辅助INS组合导航系统原理图。其中GMNS利用磁传感器输出的实时图、地磁数据库提供的基准图和INS在一个GMNS导航周期内的路径输出,进行匹配搜索,找出最优的定位结果;将GMNS定位结果作为量测量,利用Kalman滤波器输出组合导航结果,并对惯导的位置、速度、姿态、惯性器件等误差量进行修正,从而限制INS的误差累积,实现高精度的惯性/地磁组合导航。
图1 地磁匹配辅助INS组合导航系统原理图
采用地磁主磁场作为地磁匹配特征量时,地磁特征变化不明显,容易产生多个符合误差要求的定位解,且磁传感器测量噪声较大时匹配结果与真实结果偏差较大,因此一般采用地磁异常场作为匹配特征量。仿真中,利用国际气象学和大气物理学协会(IAGA)官方网站提供的地磁异常场数据,建立了某区域(经度范围为106°~108°,纬度范围为29°~31°,高度为2500m)的0.002°×0.002°网格化地磁异常场基准图,其等值线图如图2所示。
图2 地磁异常数据库等值线图
GMNS采样周期指的是磁传感器采样周期,GMNS导航周期指的是完成一次地磁匹配定位需要的时间,与GMNS采样周期、用以匹配的地磁数据序列长度有关。考虑到飞行器航行速度和数据库网格大小,设置GMNS采样周期和导航周期时,需要保证以下几点:
(A)在GMNS采样周期内,飞行器至少航行一个地磁数据库网格距离。若小于一个网格距离,相邻两次磁传感器采样值基本一致,有效数据量并没有增大,这时候可以适当增大GMNS采样周期。
(B)在GMNS导航周期内,GMNS能够拥有足够长度的地磁异常测量序列。由于地磁异常场是非线性曲面,单一的地磁异常值能够对应到多个位置,同时较长的地磁异常序列与相对位置序列之间一般存在着唯一的对应关系,这样当地磁异常测量序列足够长时,匹配算法能够准确可靠地搜索到最优位置序列。
(C)在GMNS导航周期内,INS导航误差(包括航向误差和定位误差)不会太大。由于GMNS匹配导航需要INS提供初始位置、相对路径和误差范围,若航向误差过大,相对路径不再准确,此时进行搜索匹配容易产生误定位;同时若定位误差过大,搜索数据库的范围就得增大,匹配搜索时间会迅速增大,算法实时性能受到影响。
组合导航系统仿真参数设置如表1所示。飞行器一直保持当前飞行速度和姿态,仿真时长为1800s,采用平均平方差算法(MSD)作为地磁匹配算法。
表1 组合导航系统仿真参数设置
基于Kalman滤波,利用GMNS对INS进行定期修正时,需要提供GMNS导航结果的标准差。基本算法指的是采用GMNS固定标准差方式进行Kalman滤波,即假定GMNS每次匹配均能准确得到唯一最优解,根据误差理论的3σ法则,设定GMNS输出位置的标准差为地磁异常数据库网格大小的1/3。
利用基本算法进行仿真,并始终以经纬度(0.2°,0.2°)作为INS定位误差标准差,用于提取当前导航位置附近范围的地磁数据库。如图3所示是采用GMNS进行匹配定位后与真实位置进行比较得到的GMNS定位误差曲线,从图3中可以看出,在全程导航过程中,共进行了37次GMNS定位,其中有超过10次的定位误差超出单位网格大小,定位成功率低于30%。
图3 GMNS导航定位误差曲线
对上述仿真结果进行分析:由于采用GMNS固定标准差方式进行Kalman滤波,当定位误差超出单位网格大小时,组合导航的误差会迅速增大,如图4所示是INS/GMNS组合导航定位结果与真实位置比较得到的误差曲线,从图4中可以看出,在INS独立工作期间,组合导航系统的定位误差呈现发散状态;而每隔48s启用GMNS进行匹配导航后,如果GMNS定位误差在单位网格范围内,组合导航系统的定位误差将逐渐收敛,如图中在216 s到1200 s的时间范围内,由于GMNS经度方向的定位误差基本保持在单位网格范围内,因此组合导航系统的经度误差逐渐收敛到0附近;而如果GMNS定位误差经常超出单位网格范围,组合导航系统的定位误差受GMNS影响,基本由GMNS定位误差决定,如图3中在1200 s到1800 s的时间范围内,GMNS的定位误差(经度方向和纬度方向)均较大,导致组合导航系统的定位误差也处在一个较高的水平。
图4 组合导航定位误差曲线
从以上仿真结果可以知道,要提高组合导航系统的定位精度,必须保证GMNS匹配定位的成功率和精度。进一步分析可知,GMNS匹配定位误差较大主要是由模板序列与位置序列不准确匹配引起的,具体内容见下一部分。
从地磁数据库中提取某已知位置的地磁值时,一般采用最邻近点法,即找出离该位置最近的网格中心点,以该网格中心点对应的地磁值作为该位置的地磁值。同时待匹配的模板一般以网格中心点作为起点。由于地磁匹配需要固定长度的位置序列,而往往位置序列相邻位置之间的距离并不是单位网格大小的整数倍,当模板起点采用网格中心点,模板序列的后续地磁值均采用最邻近点法确定时,容易产生模板序列与位置序列不准确匹配的问题,即排除了最优匹配模板。
该问题的具体描述如下:如图5所示,采用长度为6的INS位置序列和地磁数据序列进行GMNS定位,真实位置序列为P1~P6,P1是起点,其相邻位置之间的间隔并不是单位网格的整数倍。根据最邻近点法选取模板1~模板n,期望的匹配导航结果是模板1,但由于模板1的第4个点(网格B)与真实位置P4(即网格A)不在同一个网格内(第6个点也有同样的情况),当采用相似度或差别度匹配算法进行匹配时,模板1得到的差别程度值较大(或相似程度较小),使得模板1不是最优匹配结果,因而产生GMNS误定位的情况。
图5 模板序列与位置序列不准确匹配问题示意图
可采用单点多模板序列来消除模板序列与位置序列不准确匹配的问题,即对每个待匹配起点,确定所有可能的模板序列,并比较该起点处所有模板序列的指标值(即与测量序列的相似度或差别程度),求出该起点对应的局部最优指标值;然后再与其起点对应的局部最优指标值进行比较,求出全局最优指标值和对应的模板序列,即为最终定位结果。
对某模板起点,确定其对应的所有模板序列的具体过程如下:
(A)首先采用floor(向下取整)运算确定基本网格序列;
以表2所示真实位置(纬度方向)为例,以起点为基准,先计算相对位置序列,然后利用网格大小计算相对网格序列,取整后,可确定用于匹配的相对网格序列应该是“0、1、2、3、5”。在相对网格序列的基础上,加上模板起点对应的网格标号(纬度方向,假定为30),基本网格序列就是“30、31、32、33、35”。
(B)然后对基本网格序列加上表2计算得到的网格误差序列来确定需要进行比较的模板网格序列。
假定序列长度为5,后续位置相对于起点的坐标值,除以网格大小,得到的小数部分如下表2所示(以纬度方向为例,经度方向类似,纬度方向的网格大小为0.02)。
表2 网格误差序列计算过程
表2得到的网格误差序列1-5是对网格数小数部分排序得到的,即如果在某起点上增加以上几个模板序列(纬度方向和经度方向各5个,组合序列共25个),将消除序列错位带来的误定位问题。
另外,由于单点多模板序列算法需要在单点对多个模板序列分别进行比较,搜索空间变大,时间效率低下;同时,在某GMNS误匹配时刻,GMNS输出位置误差较大,基于GMNS固定标准差方式的Kalman滤波容易产生较大的组合导航定位误差。因此对算法进行了以下两项处理。
(A)采用起点限制策略,减小搜索时间。
传统方法采用全数据库搜索方式,耗时较大,可以采用起点限制策略来减小算法搜索时间。具体方法如下:对第一个点采用磁传感器测量误差3σ法则,即要求待选模板的第一个地磁值与测量值之间的差值在3σ之内,如果不满足该条件,预先排除该待选模板。该方法在保证定位精度的同时,也大大减小了匹配算法搜索时间。
(B)采用GMNS自适应标准差方式进行Kalman滤波,提高组合导航系统的可靠性。
当采用GMNS进行匹配定位时,由于磁传感器的测量噪声,导致可能存在几个符合条件的匹配位置,如果选取其中最小的匹配位置作为定位结果,容易产生误定位,使得导航系统误差瞬时增大。为了提高导航系统的可靠性,在存在几个符合条件的匹配位置的情况下也能够正常工作,采用GMNS自适应标准差方式。
以基于MSD匹配算法的GMNS导航系统为例,GMNS自适应标准差方式的具体方法如下:首先根据匹配过程中所有待选模板集的MSD值,求出最小的MSD值;并采用最小MSD值的150%范围约束,即认为满足条件“MSD ≤ 1.5×Min(MSD)”的待选模板均为符合条件的可行解,找出所有的可行解,并分析它们的位置,将所有可行解的均值作为GMNS最终定位结果,所有可行解的标准差作为GMNS定位结果的标准差。
基于以上两项处理,对单点多模板序列方法进行组合导航仿真,结果如图6和图7所示。图6显示了GMNS导航定位误差,可以看出,大部分的GMNS匹配定位误差均在单位网格范围内,只有3个时刻GMNS的定位误差超出单位网格范围,GMNS匹配定位的成功率为90%以上,充分验证了单点多模板序列方法的有效性。图7为INS/GMNS组合导航定位结果与真实位置比较得到的误差曲线,可以看出在GMNS参与组合导航的时刻,INS独立导航产生的时间累积误差会被校正到较小的水平,在GMNS可靠定位的情况下,组合导航定位误差在±0.005°以内,即使在GMNS定位误差较大时,当前时刻的导航误差会增大,但随着GMNS定位误差减小,组合导航的定位误差逐渐收敛,GMNS的可靠定位保证了组合导航定位的精度。
图6 单点多模板序列方法下GMNS导航定位误差曲线
图7 单点多模板序列方法下组合导航定位误差曲线
本文对地磁匹配辅助INS组合导航系统进行了研究,通过仿真发现在基本地磁匹配算法下,GMNS容易产生误定位结果,导致组合导航误差较大。对基本算法的导航结果进行深入分析后,提出了单点多模板序列匹配方法,并通过起点限制策略和标准差自适应调整方式对匹配算法进行了改进,仿真结果表明,单点多模板序列匹配方法能够保证GMNS定位结果的可靠性,提高了组合导航系统的导航精度。