一种微型星载高动态GNSS接收机及其导航方法与流程

文档序号:11405803阅读:679来源:国知局
一种微型星载高动态GNSS接收机及其导航方法与流程

本发明涉及卫星导航技术领域,特别是一种微型星载高动态gnss接收机及其导航方法。



背景技术:

随着空间技术的不断发展,星载接收机已经逐渐发展成为航天器的一个重要平台载荷,它可以为航天器提供全球、全天候、实时、高动态、高精度的导航信息,并提高航天器运行的自主性。一台可用于微钠卫星低成本微型星载gnss接收机,能够测定微钠卫星的航迹、速度、姿态、时间参数及编队飞行的微钠卫星间的相对距离。目前国内市场上gps接收机的使用高度和速度有限制,国外航天gps存在禁运问题,不能满足航天应用。由于宇宙中的恶劣环境并且卫星的动态性很强,使得gnss接收机在太空中的应用于地面和航空等的应用不一样,因此在设计星载gnss接收机要考虑很多特点。

卫星的微型化、低成本、研制周期短、重量轻、体积小成为一种发展趋势,适用于微钠卫星的微型化、低成本、体积小、功耗低的gnss接收机目前国内市场上比较稀缺。且卫星在发射和升空阶段要经历很高的动态,加速度会超过10g,卫星在轨运行时速度将超过7km/s,现有gnss接收机未充分考虑高动态对gnss信号的捕获和跟踪的影响,且存在结构复杂、兼容性差、成本高的问题。



技术实现要素:

本发明的目的在于提供一种能够为低轨卫星提供高精度导航定位以及精确授时的基于dsp+fpga微型星载高动态gnss接收机及其导航方法。

实现本发明目的的技术解决方案为:一种微型星载高动态gnss接收机,该接收机基于dsp+fpga,包括有源天线、射频前端处理模块、基带信号数字处理模块、定位解算模块和上位机监控界面,其中:

有源天线,将接收到的gnss电磁波信号转变为电流信号,经带通滤波器进入射频前端处理模块;

射频前端处理模块,对接收到的信号进行放大、变频、滤波和模数转换,最终得到数字中频信号;

基带信号数字处理模块,对数字中频信号进行捕获、跟踪、位同步和帧同步处理,得到导航测量值和导航电文;

定位解算模块,利用导航测量值和导航电文进行定位解算,最终得到用户的卫星信息,获取定位观测值;

上位机监控界面,用来实时显示定位观测值,收星数,pdop值的信息。

一种微型星载高动态gnss接收机的导航方法,包括以下步骤:

步骤1,有源天线将接收到的gnss电磁波信号转变为电流信号,经带通滤波器进入射频前端处理模块;

步骤2,射频前端处理模块对接收到的信号进行放大、变频、滤波和模数转换,最终得到数字中频信号;

步骤3,基带信号数字处理模块对数字中频信号进行捕获、跟踪、位同步和帧同步处理,得到导航测量值和导航电文;

步骤4,定位解算模块利用导航测量值和导航电文进行定位解算,最终得到用户的卫星信息,获取定位观测值;

步骤5,上位机监控界面,用来实时显示定位观测值,收星数,pdop值的信息。

本发明与现有技术相比,其显著优点是:(1)为通用型gnss接收机,可以兼容gps信号与北斗信号,兼容性好;(2)采用dsp+fpga结构设计,运算速度快、成本低、体积小、重量轻,并且能很方便的对算法进行改进和更新,适合工程上使用;(3)采用合适的器件,在体积、功耗、性能之间取得最佳平衡,搭建符合实际应用要求的样机,适合微纳卫星上使用;(4)fpga的每个通道同时运行,能够保证gnss接收机运行的实时性,改进传统捕获方法,提高接收机首次定位时间。

附图说明

图1是本发明微型星载高动态gnss接收机及其导航方法的信号处理流程图。

图2是本发明微型星载高动态gnss接收机的系统硬件结构图。

图3是本发明微型星载高动态gnss接收机max2769配置模块结构框图。

图4是本发明微型星载高动态gnss接收机的射频前端处理模块的结构图。

图5是本发明微型星载高动态gnss接收机及其导航方法的捕获电路框图。

图6是本发明微型星载高动态gnss接收机及其导航方法的跟踪环路框图。

图7是本发明微型星载高动态gnss接收机及其导航方法的二阶环路数字滤波器方框图。

图8是本发明微型星载高动态gnss接收机及其导航方法的由二阶锁频环辅助的三阶锁相环的滤波器方框图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步详细说明。

结合图1~4,本发明微型星载高动态gnss接收机,该接收机基于dsp+fpga,包括有源天线、射频前端处理模块、基带信号数字处理模块、定位解算模块和上位机监控界面,其中:有源天线,将接收到的gnss电磁波信号转变为电流信号,经带通滤波器进入射频前端处理模块;射频前端处理模块,对接收到的信号进行放大、变频、滤波和模数转换,最终得到数字中频信号;基带信号数字处理模块,对数字中频信号进行捕获、跟踪、位同步和帧同步处理,得到导航测量值和导航电文;定位解算模块,利用导航测量值和导航电文进行定位解算,最终得到用户的卫星信息,获取定位观测值;上位机监控界面,用来实时显示定位观测值,收星数,pdop值等信息。

所述射频前端处理模块采用型号为max2769的gnss接收机芯片。所述基带信号数字处理模块采用altera公司的fpga芯片ep4ce115f23c8n。所述定位解算模块采用ti公司的定点或浮点数字信号处理器dsp,型号为tms320c6747,主频300mhz,两级缓冲存储器结构64kb的l1和256kb0的l2;16.369mhz的晶振为max2769与fpga提供时钟输入,24mhz的晶振为dsp提供时钟输入;

所述max2769与fpga的连接由两部分构成:一个是3线spi接口,fpga通过此接口对max2769进行编程配置;另一个接口为max2769的4线数字输出,通过此接口将中频信号输出给fpga;所述dsp通过emif接口与fpga进行通信,dsp和fpga一起对数字中频信号进行后续处理;所述fpga采用swd仿真模式。

如图2所示,具体硬件说明如下:

1、射频前端处理模块选用max2769,该芯片提供2种配置方式,一种是通过3线spi接口,为8至10号引脚,通过cs,sclk,sdata按照一定的时序对片内寄存器进行配置,这种方式需要外部主机编程来实现,但是灵活性很好。另外一种方式是将8至10引脚作为配置选择引脚,通过对各引脚进行拉高和拉低,来选择8种既定的典型配置,此方式实现方便,但是灵活性较差。8至10引脚是作为spi串口输入还是作为配置选择引脚是由26脚pgm接不同电平来决定的。本发明采用第一种方案,用fpga来设计一个spi接口,并通过此接口向max2769写入控制字来实现max2769的配置。

2、基带信号数字处理模块采用altera公司的fpga芯片ep4ce115f23c8n,通过spi总线接收max2769产生的数字中频信号,并提供给通道相关器处理,累加器锁存i/q信号后触发累加中断;tic锁存器锁存相关量并触发tic中断,同时输出pps秒脉冲。

fpga在导航系统中主要用于gnss信号处理与控制。其中用于信号处理的相关器是参照gp2021设计的。fpga中目前实现了32个通道,通道中的gps相关器的资源占用为750le/通道,在不倍频纯使用le来实现相关器的同类代码中,已经非常优化。实现功能:本地c/a码的产生;本地载波的产生;中频输入信号与本地c/a码及本地载波的相关。

3、定位解算模块采用ti公司的定点/浮点数字信号处理器tms320c6747,主频300mhz,两级缓冲存储器结构64kb的l1和256kb的l2。实现功能:捕获控制和捕获判决;跟踪中的鉴相器和滤波;位同步;帧同步;定位解算。

4、uart接口电路。本发明中dsp对外有三个串口,由于工作电压的不同,需要配置电压转换芯片才能与标准串行接口设备连接。max232芯片和max3488esa芯片是美信(maxim)公司专为rs-232和rs-422标准串口设计的单电源电平转换芯片,使用+5v单电源供电;其低功耗关断模式可以将功耗减小到5uw以内,器件特别适合电池供电系统。

5、电源电路。本发明的电压设计采用5v电压输入。经线性稳压源ams1117-3.3芯片稳压后,提供系统所需的3.3v电源。经线性稳压源ams1117-2.5芯片稳压后,提供系统所需的2.5v电源。经线性稳压源mp2104-adj芯片稳压后,提供1.2电源,供dsp和fpga使用。

结合图1~4,本发明微型星载高动态gnss接收机的导航方法,包括以下步骤:

步骤1,有源天线将接收到的gnss电磁波信号转变为电流信号,经高频低噪放对信号进行放大,补偿传输中信号的衰减,提高信号信噪比,经带通滤波器进入射频前端处理模块;

步骤2,射频前端处理模块对接收到的信号进行放大、变频、滤波和模数转换,最终得到数字中频信号;结构如图4所示,具体如下:

射频前端处理模块接收可见卫星的信号,将该信号经过放大后,再与射频模块中的振荡器产生的正弦波本振信号进行混频而下变频成中频信号,对该中频信号进行滤波放大,最后由ad芯片采样,将中频信号离散化成数字中频信号。

步骤3,基带信号数字处理模块对数字中频信号进行捕获、跟踪、位同步和帧同步处理,得到导航测量值和导航电文;基带信号数字处理包括捕获、跟踪、位同步和帧同步这4个过程,具体如下:

(3.1)基带信号数字处理模块对数字中频信号进行捕获

该接收机的捕获是基于硬件相关器完成的。结合图5,信号捕获的整体步骤为:

1)设置多普勒频移量,并将本地复制载波与输入信号混频,以l频率作为搜索步长,当本地载波与输入信号频率相差不超过nhz,则说明完成载波剥离;

2)载波剥离后得到的基带信号,与设定步长的本地复制码进行相关运算:如果相关值达到预定的捕获门限,则说明成功捕获信号;否则,相关器将按搜索码步长改变本地复制码相位,继续对下一个搜索单元进行搜索;

3)如果搜索完全部码相位后仍然未能实现信号捕获,则按频率搜索步长改变多普勒频移量并重复1)~2);当搜索完所有的搜索单元后依然没有捕获到卫星信号,则认为未能捕获到该卫星信号,接收机将转而搜索其他卫星;

该接收机的信号捕获判定方法如下:

对两个捕获支路i和q信号进行积分和清零,接着由信号检测器对计算包络值与预设的门限值m进行比较,可以检测信号是否被捕获。

误捕概率pf定义为仅仅噪声存在时信号超过门限值m的概率;捕获概率ps定义为包含噪声的包络信号超过门限值m的概率,公式如下:

其中门限值m计算公式为:

其中,σn为给定噪声信号功率;

为了让接收机能够更快的捕获gnss信号,提高接收机首次定位时间等性能,本发明对传统捕获算法进行如下五点改进:

1)在gnss接收机设计中,利用ti公司的高性能tms320c6747dsp芯片,它具有375mhz高速处理能力,能够满足接收机的实时高速处理要求;并使用altera公司的具有高速运算能力的fpga,具有32通道的相关器,采用直接并行硬件运算的方式。这些将大大缩减接收机对gnss信号的搜索时间。

2)根据以上的传统搜索步长所捕获的信号频率精度为400hz,该精度的捕获结果将会增加跟踪环路的跟踪时间。为此本文设计了一个重捕环路,对首次捕获以步长为40hz进行再次捕获,从整体上减少了接收机捕获、跟踪的总体时间。

3)信号的强弱与捕获速率有一定的联系,由于接收的卫星信号有强有弱,相关器对强弱信号的相关处理也需不同的预检测积分时间。本发明对两种信号分别进行不同时间长短的相关积分处理。即提高了捕获效率,又保证较低的漏捕获、误捕获率。

4)为了考虑接收机首次定位时间,本文将利用32通道首先共同捕获四颗可见卫星信号,当捕获成功以后,剩下的28个通道再分别捕获一颗卫星信号。这种捕获方法很好的减少接收机的首次定位时间。

5)如果以随机的方式对所有的卫星进行搜索,接收机每次对一卫星搜索,能成功捕获的概率为40%,这将浪费很多的搜索时间。本发明将利用卫星历书信息,大体确定各颗卫星此刻在gnss接收机上方的位置,并选出最优的卫星搜索顺序,从而确保了捕获效率。

(3.2)跟踪处理

本发明采用的跟踪环由跟踪伪码的码跟踪环和跟踪载波的载波跟踪环组成。整个跟踪环路的结构框图如图6所示。

1)码跟踪环

gnss接收机基带信号处理模块中的码跟踪环是一种延时锁定环。伪码发生器通过延时电路,复制出三个伪码序列,其中超前码(e码)和滞后码(l码)分别是即时码(p码)超前和滞后半个码片得到的扩频码,将其与中频信号相关以后,码环通过对e和l两路的相关结果进行鉴相和滤波,并将滤波结果反馈到伪码发生器的nco(numericalcontrolledoscillator,数控振荡器)中。以此来实现本地伪码与接收信号中的伪码的完全对齐。

玛跟踪环路采用延迟锁定环鉴别器进行检相,超前、及时、滞后支路上的相关值幅值分别为:

式中,e、p、l分别为超前、即时、滞后支路上的相关值幅值,ie、ip、il分别为超前、即时、滞后支路上的i路信号,qe、qp、ql分别为超前、即时、滞后支路上的q路信号。

伪码自相关函数主峰是一个对称的三角形,如果即时码与接收信号伪码相位上保持一致,e和l相等;如果即时码与接收信号伪码相位不一致,则e和l不等,根据两者之间的差异可以反映出即时码和接收信号扩频码的相位差值。

本发明采用的鉴相器为非相干超前减滞后幅值法:

式中,δcp为码相位差异,e、l分别为超前、滞后支路上的相关值幅值。

然后将鉴相结果进行滤波,码跟踪环使用2阶环路数字滤波器,如图7所示,传递函数f(s)为:

式中,k为环路增益,a2为滤波参数,ωn为特征频率;

则码跟踪环的系统函数h(s)为:

其中各个参数的值为a2=1.414,滤波器中的ωn是由其对应滤波器的噪声带宽决定的,其中bl=0.53ωn。本发明中码环滤波器噪声带宽为1hz。

2)载波跟踪环

载波跟踪环由锁频环和锁相环两种环路构成,载波跟踪环路是对相关结果进行鉴相、鉴频和滤波,并将滤波结果反馈给载波nco,以此来最终锁定载波的频率和相位。

(a)锁相环:本发明采用的载波跟踪环路锁相环的鉴相器又称为科斯塔斯(costas)环,需要相位差信息为:

式中,ip(n)、qp(n)分别是即时码支路输出的i路、q路经过混频滤波和相干积分后的信号。

(b)锁频环:由于捕获时频率搜索步进为400hz,得到的载波频率估计值与实际值相差较大,而锁相环虽然精度高但是牵引速度慢,因此需要锁频环路来快速的跟踪信号。锁频环主要是对信号的频率进行锁定,并且其动态范围比所锁相环更宽,能够快速锁定输入信号。

锁频环路的鉴频除了用到了p路当前时刻的相关结果,还用到了上一次p路的相关结果,若设ad(n)r(τ)sinc(fetcoh)为a(n),则:

其中φe(n)是第n个历元的本地载波与输入信号的相位差,定义点乘pdot和叉乘pcross分别为:

因此,本发明采用的载波跟踪环路锁频环的鉴频器的鉴频公式为:

式中,ωe(n)为鉴频器输出误差,t为采样时间,点乘pdot=i(n-1)i(n)+q(n-1)q(n),差乘pcross=i(n-1)q(n)+q(n-1)i(n),ωe(n)为鉴频器输出误差,t(n)-t(n-1)为鉴频时间间隔;n为n时刻,i为i路信号,q为q路信号;。

本发明使用锁频环辅助锁相环的载波跟踪环路结构。在捕获刚成功并切换到跟踪状态的时候,由于捕获得到的粗略值精度不够,锁频环在载波跟踪环中起主导作用,它将快速的牵入信号,当本地载波的频率与gnss信号的频率较为接近后,锁相环在载波跟踪环中起主导作用,使本地信号更加精确的与输入信号同步。载波跟踪环使用二阶锁频环辅助三阶锁相环的滤波器,如图8所示。

载波跟踪环使用二阶锁频环辅助三阶锁相环的结构,其中二阶锁频环的传递函数为:

式中,k为环路增益,a2为滤波参数,ωn为特征频率。

三阶锁相环的传递函数为:

式中,k为环路增益,a3、b3为滤波参数,ωn为特征频率。

其中各个参数的值为a3=1.1,b3=2.4,滤波器中的ωn是由其对应滤波器的噪声带宽决定的,其中bl=0.7845ωn。本发明中载波环路滤波器噪声带宽为18hz。

(3.3)位同步处理

本发明采用的位同步算法为直方图法,具体实现步骤如下:跟踪环在进入载波相位锁定状态后,随机选取某次积分结果的毫秒时刻为时刻1,随后每次积分结果的毫秒时刻为2,3,……,直到20,后续的积分结果对应的毫秒时刻从1开始循环到20为止,以此类推,然后分配20个计数器,每个毫秒时刻对应一个计数器,在后续的每个毫秒时刻,i路和q路积分过程完成之后比较本次积分结果和上次积分结果的符号是否发生了变化,若发生了变化则表明这可能是一个数据比特跳变沿,于是把本时刻对应的计数器加1,在累积了一定时间的门限tm之后比较20个计数器的值,超过预定门限的计数器值对应的毫秒位置表明了数据比特跳变的时刻。

(3.4)帧同步处理

帧同步的目的有两点,第一是找到每个子帧的起始位置,以正确划分导航电文中的30比特长度的字;第二是确定是否存在由于180度相位模糊导致的导航比特反相。

本发明中使用的帧同步算法如下:

1)将导航比特与子帧的同步码做相关运算,当相关结果为8或-8时,认为找到帧同步码的起始位置,进入2);

2)按1)中得到的起始位置将导航比特流进行划分,每30比特组成一个字,并对每个字进行奇偶校验,若正确,则进入3),否则返回1);

3)提取导航数据中的周内时、子帧号,与上一次帧同步在该步骤中获得的周内时、子帧号比较,正确则进入4),否则返回1);

4)对1)中找到的起始位置的后一个子帧的前8个比特进行判断,如果依然为子帧同步头则重复2)~4),否则重返回1),直至完成帧同步。

步骤4,定位解算模块利用导航测量值和导航电文进行定位解算,最终得到用户的卫星信息,获取定位观测值,具体为:

(4.1)伪距观测量

伪距测量转换为时间的测量,接收机根据卫星发射信号的时间戳得到tsv,结合本地时间tr,伪距观测量为:

ρg=c(tr-tsv)

tsv≈6(z-1)+nbit×0.02+nc×0.001+0.9775φc×10-6

其中,ρg为伪距观测量,c为光速,z为z计数,nbit为子帧比特,nc为伪码周期,φc为码片个数,本地时间tr直接由接收机本地时钟提供。

(4.2)卫星位置解算

卫星是在既定轨道上绕着地球运动的,它的位置是时间t的函数,由星历中包含的卫星开普勒轨道参数,计算出卫星轨道的极坐标方程:

式中,(r,v)为卫星所在位置的极坐标,as为卫星轨道的长半径,es为卫星轨道偏心率,e为卫星轨道偏近点角;

(4.3)接收机位置解算

若设卫星i的坐标为(xi,yi,zi),接收机到该卫星的伪距为ρi,接收机的坐标(xu,yu,zu),卫星时钟与接收机本地时钟钟差为δtu,则有伪距ρi的公式:

其中,卫星的位置(xi,yi,zi)和卫星与接收机的伪距为ρi都是已知量,可以通过导航电文中的信息求得。接收机的坐标(xu,yu,zu)和钟差δtu为未知量,若接收机能获取4颗以上的卫星的导航电文,就可以列出四个上述方程,从而解算出接收机的位置。由于方程组是非线性的,本发明采用牛顿迭代及其线性化方法对方程组进行求解,其具体步骤如下:

1)设置方程初始解,迭代前给方程组的4个未知数设定一个初始值,初始值的设置分为两种情况:若是首次定位,则全部设为0;若已经成功定位,则将上一次的结果设置为本次迭代的初始值;

2)线性化方程组,对伪距ρi的公式进行泰勒展开,得:

式中,△x、△y、△z、△δtu为最小二乘法的解;

其中:

将上式写成矩阵形式可得:

其中

其中,δtu,k-1表示第k-1次迭代求出的钟差,ri(k-1)表示第k-1次迭代求出的接收机与对应卫星的距离,k=1表示步骤1中设置的初始值;

3)利用最小二乘法公式求解方程组:

4)更新非线性方程组的根:

5)判断牛顿迭代收敛性:每次迭代,3)中的结果会逐渐减小,当矢量长度值小于门限的时候,说明方程组的解已经收敛,则停止迭代,否则重返步骤2);本发明判断方式为检查此次计算得到的位移向量△x的长度||△x||是否小于预先设定的门限值0.001;最后一次迭代步骤4)的值即为接收机的位置坐标和时钟钟差。一般情况下3至5次迭代即可收敛。

需要说明的是,在定位计算前,普通接收机需要设置卫星仰角滤角,仰角滤角是一个门限值,任何低于这个滤角值的卫星都将被“过滤”掉而不用于定位计算中。一般来说低仰角卫星信号的大气延时校正误差可能很大,并且它的多路径效应又可能很严重,因而通常认为低仰角卫星对改善定位精度的益处抵不上它所带来的较大测量误差和定位误差的坏处。然而对于星载gnss接收机来说,低仰角的卫星信号仍能参与计算,且接收机捕获到的卫星仰角可以低于水平线。综合考虑对流层和电离层的高度,本发明星载gnss接收机捕获处理中的仰角滤角设置为-25°。

步骤5,上位机监控界面,用来实时显示定位观测值,收星数,pdop值的信息。

综上,本发明采用dsp+fpga的微型架构,成本低,体积小,重量轻,具有很强的灵活性,能够加载不同的算法,且fpga的并行处理结构能够保证gnss接收机的实时性。在整个数字基带信号处理的过程中,运算量最大的即是捕获跟踪时的相关操作,用dsp执行则会占用很长的时间,由于相关的时候,相乘的两个值的取值情况都是有限的,如果用fpga使用查表的方法来实现只会占用很少的资源,这样就可以在fpga中使用多个相关通道从而加速捕获过程。而在捕获和跟踪中,相关的后续操作包括大量的复杂的数学运算由强大的数学运算能力的dsp进行运算处理。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1