中南大学地球科学与信息物理学院,湖南长沙 410083
关键字:惯性导航;组合导航;卡尔曼滤波
导航定位已成为了交通工具不可缺少的一部分。导航分为自主式和非自主式,自主式导航包括惯性导航、多普勒导航和天文导航等。非自主式导航包括卫星导航、无线电导航等。以GPS为代表的卫星导航能够提供全球性、全天候的导航定位服务,但是卫星导航的信号容易受到遮挡导致定位失败,且无法获取载体的姿态信息。
捷联惯性导航系统(Strapdown Inertial Navigation System,SINS)是惯性导航的一种实现方式,SINS不受外界干扰,可以输出载体的位置、速度、姿态。但是SINS独立导航时误差会迅速积累。SINSGPS组合导航是公认的有发展前景的一种导航模式。
针对低成本SINSGPS组合导航,国内学者进行了大量研究。周姜滨设计了适合于工程应用的组合导航系统的结构与方案,并给出了组合导航系统位置速度交替组合模式的数学模型[1];曹娟娟提出一种利用磁强计辅助MEMS-SINS组合导航系统信息融合模型[2];林雪原提出了利用AHRS代替SINS航向角信息的方法,试验表明利用该方法可有效地抑制组合系统航向角的发散趋势[3];冯绍军设计了组合系统硬件和相应软件,并验证了组合系统的性能及可行性[4]。其他学者也进行了相应研究[5-6]。
以上研究重点介绍了组合导航系统的算法部分,对组合系统其他部分的介绍较少,没有形成一套完整的组合方案。本文设计了一套完整的组合导航系统方案,介绍了低成本SINSGPS的硬件组成、GPS差分数据传输、组合系统数据接收及数据同步的方法,给出了SINS导航数据更新的方案及简化数学模型,论述了数据融合卡尔曼滤波模型并进行了车载实验。
系统组成包括:2块GPS接收板,1个SINS模块,2台笔记本电脑,其中1台笔记本需要连接互联网。
系统工作流程如图1,可分为四步:
(1)GPS基准站通过TCP/IP链路将定位数据上传到服务器;
(2)服务器通过TCP/IP链路将GPS基准站的定位数据发送到GPS流动站,流 动站进行差分处理;
(3)GPS流动站通过串口2将差分后的定位数据传输到处理中心,SINS通过串口1将陀螺仪和加速度计数据传输到处理中心;
(4)处理中心融合SINS、GPS数据。
MPU6050是本文使用SINS的核心元器件,集成了3轴陀螺仪、3轴加速仪,可测量载体的线加速度和角速度。模块内部整合了16位的ADC传感器允许陀螺仪和加速度计的实时采样,提高了测量精度以及实现了数据的实时性。
SIM908是一款集成了GSM/GPRS技术的单频C/A码GPS模块,每秒输出1次NMEA-0183格式的GPS定位信息,由于其集成了GSM/GPRS功能,所以配合使用手机SIM卡就能快速搭建TCP/IP链路。
SIM908定位精度低,无法输出伪距。可以使用两块SIM908开发板进行位置差分,从而提高GPS的定位精度。利用SIM908的GPRS功能搭建TCP/IP链路,利用该链路将基准站的定位信息传输给流动站(即组合系统的GPS)。
基准站与流动站数据传输的方法为:
(1)使用一台处于公网中的电脑作为远程服务器;
(2)基准站和流动站分别与服务器建立TCP/IP连接;
(3)利用服务器将基准站的数据转发给流动站。
利用Visual Basic(VB)语言及TCP/IP通讯控件Winsock可以快速实现TCP/IP通讯[7]。当远程服务器处于内网中时,可以使用内网通软件映射一个外网IP。
SIM908开发板采用RS-232串口通信接口标准,采用异步串行方式进行数据传送。SINS数据通讯时可以通过硬件转换为同样的接口标准。
通过VB语言及串口通讯控件MSComm可以快速、方便地实现串口通讯[7]。本文使用两个串口分别接收SINS和GPS数据。
GPS能提供授时服务,而SINS不具备时间系统,因此,SINS和GPS存在数据不同步的问题。在组合导航系统进行数据融合时,数据不同步会影响组合系统的定位精度[8]。数据同步可以通过三种方式实现:软件、硬件、软硬件结合。
本文使用软件实现数据同步。思路是将SINS和GPS置于同一个时间系统下,用该系统的时间对SINS和GPS数据进行标记,从而达到数据同步的目的。可以利用计算机时间作为统一的时间系统,在提取数据的同时记录计算机时间。
使用windows系统的API函数GetLocalTime能方便地获取计算机时间,时间精度为毫秒级[9]。此外,数据同步的时间误差还包含:两个串口的数据传输时间之差;程序提取、解析数据的时间。但对于低精度的组合导航系统,数据同步的要求较低[8]。
低成本SINS的陀螺不能感知地球自转,导致组合系统无法获取航向角。为了解决这一现象,可以利用SINS自带的姿态和航向参考系统(Attitude and Heading Reference System, AHRS)。AHRS分 为 两 部分:在SINS中植入姿态角算法,从而得到姿态角;在SINS中集成三轴磁力计获取地球磁北,经过磁偏角补偿后得到航向角。
本文使用AHRS输出的航向角和姿态角替代惯导解算的航姿,省去了航姿更新的步骤,也无需考虑惯导的初始对准问题。
首先定义坐标系,i表示惯性坐标系,e表示地心地固坐标系,选取东-北-天为导航坐标系n(忽略n系变化)。
由惯导基本方程,速度更新算法如下[10]:
式中,下标m、m-1—分别表示tm、tm-1时刻;
Tm—惯导数据更新时间间隔,Tm=tm-tm-1;
ωen—位置速率;
ωie—地球自转角速度;
g—当地重力加速度;
C—表示tm-1时刻的姿态矩阵
Δvm—比力产生的速度增量;
Δvrotm—表示速度旋转效应产生的速度增量;Δvsculm—表示划桨效应产生的速度增量。
Δvrotm和Δvsculm采用双子样优化算法计算得出,到此完成速度更新。
位置更新算法如下[10]:
式中,L、λ、h—分别表示纬度、经度和大地高;
vN、vE、vU—分别表示北向、东向和天向速度;
RM、RN—分别表示子午圈和卯酉圈半径。
使用卡尔曼滤波器融合SINS与GPS数据,组合模式为位置组合,数学模型[11]为:
由于使用AHRS输出的航姿替代惯导解算的航姿,所以卡尔曼滤波器状态方程仅包含惯导速度和位置误差方程。
综上所述,选取状态估计量为:
式中,δvn—速度误差;
δpn—位置误差;
ob—加速度计零偏。
为了验证该方案的可行性,在中南大学新校区进行了车载实验。实验中,除了采集SINS和GPS数据,还利用商用GPS接收机进行了RTK定位,并以RTK数据作为车载的真实轨迹。SINS和GPS的各项精度指标见表1,其中,GPS定位中误差(位置差分后)由原始数据计算得出;SINS加速度计零偏和AHRS航姿误差(无干扰磁场时)为SINS生产厂家提供值。
图2中蓝色和红色曲线分别显示了GPS定位误差和组合系统的定位误差,可以看出组合系统的定位精度较GPS有了较大提高。为了验证在GPS短时间失锁的情况下组合系统的定位性能,模拟GPS信号失锁20秒。图3显示了GPS失锁状态下组合系统的定位误差,纬度方向约9m,经度方向约20m,高程方向约7m,加速度计零偏在线估计值0.012g。
表1 SINS和GPS各项精度指标
低成本SINSGPS组合导航较GPS导航定位误差明显降低,原因是惯导的测量信息和滤波器的作用平滑了GPS定位误差。AHRS易受磁场干扰,航向角测量精度较低,只能在较短时间内进行自主导航定位,但在GPS短时间失锁或故障时仍然能发挥一定作用。