INS/GNSS/CSAC/高度计组合导航微系统硬件设计*
2022-08-02聂宜召王雪博蒋张涛辛增献
王 琮 聂宜召 王雪博 蒋张涛 辛增献
上海无线电设备研究所,上海 201109
0 引言
传统的导航系统如卫星导航系统、惯性导航系统、无线电导航系统、多普勒导航系统等,均存在着一些不足和缺陷,已无法满足现代人们的需求。大量研究和实践表明组合导航系统的导航性能要优于单一导航系统。组合导航也已经成为当前研究的一项热门领域。
将惯性导航系统与卫星导航系统相组合可有效克服其各自的缺点,大幅提高导航系统整体的性能[1]。文献[2-3]针对卫星信号易受干扰的问题,选择用芯片原子钟为卫星导航系统提供稳定、精确的频率信息,从而改善导航系统定位精度及定位稳定性,进而降低卫星信号受干扰后对导航系统产生的影响。文献[2]中还利用卫星导航系统为芯片原子钟提供一个稳定的高精度秒脉冲信号,从而解决原子钟自身的时间误差累积问题。文献[4]针对卫星导航接收机受卫星分布影响导致的垂直精度低于水平精度的问题,提出了一种利用气压高度计抑制导航系统中高度误差和野值出现的方法。
基于以上背景及理论,本文以INS、GNSS、CSAC和高度计为基础构建一体化的组合导航微系统。跑车实验表明INS/GNSS/CSAC/高度计组合导航微系统的导航性能要优于其中的单个导航系统,且抗干扰能力较强。
1 组合导航微系统工作原理
INS/GNSS/CSAC/高度计组合导航微系统的工作原理如图1所示。下面分别介绍图中5个主要模块的工作原理:
图1 组合导航系统工作原理图
1)CPT芯片原子钟:基于相干布局囚禁原理输出稳定的频率供GNSS接收机使用,可有效改善接收机的定位精度并使其环路更加稳定且不容易失锁[5]。当用GNSS接收机输出的1PPS信号对芯片原子钟进行驯服,便可实现外秒同步功能。
2)GNSS导航系统:利用天线接收太空中可见的卫星信号,并对这些信号进行数据处理,根据得到的数据对定位方程进行解算求出载体当前的位置、速度信息[6]。
3)惯性导航系统:在对陀螺和加速度计输出的数据进行补偿后,通过更新姿态矩阵和进行积分运算,求出载体当前在导航坐标系下的导航参数[7]。GNSS接收机可利用其输出的惯性信息改善自身的捕获及跟踪效果。
4)高度计模块:利用气压传感器测量当前气压和温度,并进行必要的补偿及校准,最后通过气压高度转换公式求解载体当前的垂直高度信息。
5)组合导航系统:收到各个子系统传来的导航信息后,会选择融合模型,匹配滤波策略,并进行故障检测,接着进行信息融合和信息分配,最后再对相关参数进行误差修正后,输出一个最优的导航结果[8]。
2 组合导航微系统硬件设计
INS/GNSS/CSAC/高度计组合导航微系统主要由DSP+FPGA的组合导航信息处理板、微惯性测量单元、ARM+MS5611的数字气压高度计模块和CSAC模块构成。为了尽量缩减系统的体积和功耗,系统采用模块化设计思路,整个组合导航微系统硬件设计如图2所示。
图2 组合导航微系统硬件设计
2.1 GNSS模块设计
GNSS模块负责进行卫星定位导航,主要由射频模块、基带处理模块和信息处理单元构成。射频模块主芯片选用Maxim Integrated公司的MAX2769,该芯片集成度高、功耗低。在用FPGA实现一个SPI接口后,将其与MAX2769的8引脚(SDATA)、9引脚(SCLK)、10引脚(CS)相连,便可利用DSP对其内部寄存器进行配置和更改[9]。
基带处理模块要能采样、量化射频模块输出的信号,并产生本地载波实现载波剥离,产生本地伪码实现伪码剥离,解调出导航电文[10]。基带处理模块主芯片选用Altera公司的EP4CE115F23I7N,该系列芯片具有低功耗、低成本和高性能三大优势。选用价格较低的EPCS64SI16N芯片作为其配置芯片。基带处理模块中的卫星信号相关器结构如图3所示。
图3 卫星信号相关器结构图
相关器在收到射频模块的中频信号后会对其重新进行量化编码并传给通道,各个通道会对重采样的信号进行载波剥离、伪码剥离以及积分累加清除等工作,并将处理后的信号及相关数据通过总线与DSP进行数据信息交互;I路和Q路信号经累加器进行锁存并触发累加中断;TIC锁存器会触发TIC中断并提供1PPS信号。
信息处理单元在收到FPGA的导航信息后要能实时解算出载体当前的位置、速度等信息。信息处理单元主芯片选用TI公司的TMS320C6747,该芯片具有低功耗、体积小等优点,其计算能力可满足系统实时性需求。为了实现DSP的自引导启动,选用W25Q32系列的FLASH存储器作为配置芯片。让DSP与FPGA通过EMIFA接口连接,使它们可以快速进行数据交互。
2.2 惯性导航模块设计
为了减少功耗和体积,选用某国产微惯性测量单元。惯性测量单元采用TTL通信,数据传输波特率为115200bps,数据更新频率为200Hz,三轴陀螺仪的零偏稳定性≤5(°)/h,三轴加速度计的零偏稳定性≤0.5mg,满足使用需求。信息处理单元中的DSP负责接收并处理微惯性测量单元的数据。当卫星导航模块正常定位后,进行静态初始对准,完成对准后将卫导解算的速度和位置信息取5s均值,作为惯导解算初值,之后在DSP的普通中断中完成惯性导航解算,其中包括微惯性测量单元原始数据零偏补偿、四元数更新算法、姿态更新、速度更新和位置更新[11]。惯导解算流程如图4所示。
图4 惯导解算运行流程图
2.3 芯片原子钟模块设计
芯片原子钟选用某国产CPT微型原子钟,具有功耗低、体积小、快速启动等特点。其工作电压为3.3 V,输出10 MHz的方波,具有外秒同步功能,百秒时频率稳定度可达10-11量级,频率准确度可达10-11量级。
因为该款芯片原子钟输出的10MHz的峰-峰值要高于射频模块XTAL引脚的最大允许输入值,所以需要在CLKIN和GND之间加入一个33Ω的电阻。之后需要利用DSP对射频模块的相关寄存器进行配置,以GPS和BDS为例。当想接收GPS信号时,先将射频芯片的PNDIV设为7857,将PRDIV设为50,GPS射频信号分频f0通过下式计算:
(1)
式(1)中:fCSAC表示射频芯片得到的基准频率;PRDIV为锁相环参考分频比;PNDIV为锁相环整数分频比,已知GPS的L1频点的载波频率为fL1=1575.42MHz,那么可得LO频率为:
fLO=PNDIV×f0=7857f0
(2)
进而可得中心频率:
fGPScen=fL1-7857f0=4.02MHz
(3)
根据采样频率和中心频率计算载波中心频率和码NCO中心频率。若要接收BDS信号,则要将PNDIV设为7785,将PRDIV设为50,BDS射频信号分频f1通过下式计算:
(4)
因为BDS的B1频点的载波频率为fB1=1561.098MHz,那么可得BO的频率为:
fBO=PNDIV×f1=7785f1
(5)
进而中心频率为:
fBDcen=fB1-7785f1=4.098MHz
(6)
接着按GPS计算步骤算出相应参数,修改NCO的中心M值。经过计算和测试,若接收机接收的为GPS信号,则FCARRCENTER和FCODECENTER应设为0x3374BC6A和0x1A305532,若是BDS信号则对应的参数应当设为0x3474538F和0x3460AA65。
2.4 高度计模块设计
考虑到成本、体积和功耗,本次高度计选用MEAS的MS5611-01BA数字气压高度计,该款高度计量程为10~1200hPa,分辨率为0.012hPa,提供IIC和SPI两种接口方式。
由于单个高度计只能测量气压和温度,所以需要一个数字处理模块来对高度计的数据进行处理进而输出高度信息,考虑到DSP本身已有较多任务需要处理,所以选用意法公司的STM32F107VCT6作为高度计的数字处理器,该芯片价格低廉,接口资源丰富,满足设计需求。选用高度计的IIC接口进行通信,由于STM32上的固有的IIC接口并不稳定,所以用STM32F107VCT6上两个普通GPIO口模拟IIC与高度计进行通信。
在使用MS5611模块前,需要对其进行复位操作,因为本次选用IIC方式进行通信,模块的设备地址为111011Cx,地址中的C是引脚CSB的补码值(取反),根据模块CSB引脚的硬件连线,可知地址为0xEE。在复位完成后需要先读取MS5611模块的PROM中C1~C6的值,然后进入转换模式,读取模块中的数字压力值和数字温度值,但是这个数值并不准确,所以要用模块内部的相关参数通过公式对压力值和温度值进行补偿,依据实际温度决定是否需要二阶温度补偿。
为了降低误差,将高度计模块初期采集的气压和温度的均值作为高度计系统初始化标定时的地面气压值和温度值。根据气压高度计计算公式,并将相关常量代入,可得载体当前的高度值。此外在DSP收到高度计传过来的高度数据前,需要先根据卫星导航模块的收星数和DOP值判断卫星导航模块的工作状况,在状况良好的情况下将此时的卫导解算出的高度信息传给高度计模块,用于校正初始高度,之后再用高度计的数据进行修正处理。高度计系统工作流程图如图5所示。
图5 高度计系统工作流程图
3 实验测试
为了验证INS/GNSS/CSAC/高度计组合导航系统设计是否合理,在相关的软件算法烧录进样机后,将样机搭载在实验车上并选择一条较为空旷的城市路段进行跑车实验,跑车实验线路如图6所示。
图6 跑车实验路线图
在试验中,实时采集INS/GNSS/CSAC/高度计组合导航系统中的单接收机数据、组合数据、高度计数据以及分体式闭环光纤组合导航系统SPAN-KVH1750的数据,并以SPAN- KVH1750的数据为基准。利用MATLAB对采集的试验数据进行处理。位置误差与速度误差如图7~12所示,图中实线表示INS/GNSS/CSAC/高度计组合导航系统的组合数据与SPAN- KVH1750的误差,虚线表示组合导航系统中卫星导航模块定位的数据与SPAN- KVH1750的误差,点画线表示组合导航系统中高度计模块与SPAN- KVH1750的高度误差。
图7 纬度误差对比
图8 经度误差对比
图9 高度误差对比
图10 东向速度误差对比
图11 北向速度误差对比
图12 天向速度误差对比
计算得到组合后均方根误差:纬度误差为0.86m,经度误差2.63m,高度误差1.88m,东向速度误差0.03m/s,北向速度误差0.05m/s,天向速度误差0.05m/s,组合后导航系统的定位精度要优于系统中单卫导的定位精度。由图9可知导航系统中的高度计模块输出的高度信息较为准确。此外系统中各个模块运行稳定,导航效果较好,达到设计预期。
4 结束语
提出了一种INS/GNSS/CSAC/高度计组合导航微系统的设计方案,基于模块化设计思路,完成组合导航系统中各模块的硬件选型及设计,该组合导航系统具有体积小、功耗低等优点。经过实验验证:该组合导航系统能在较为复杂的环境下为用户提供较为准确的导航信息。系统在智慧城市、交通运输、农林渔业等方面均具有较好的发展前景。