• AG旗舰厅(中国)官方网站官网AG旗舰厅

    GNSS接收机失锁重捕下位边缘和帧同步判断方法

    返回列表
    知识分享
    作者:
    发布时间:2022年01月19日
    关注企业公众号:

    在卫星信号容易受到干扰的环境下,比如在高楼大厦密集的城市,汽车进入隧道,会导致GNSS接收机无法捕获跟踪信号,导致定位中断。正常情况下,接收机冷启动定位的时间大概在30秒以上,而我们针对信号失锁的情况,希望尽快恢复定位。针对这种情况,该文提出了一种失锁重捕下位边缘和帧同步判断的方法,该方法利用接收机之前的定位信息,根据失锁时间,推出数据的位边缘,完成位同步;重新估算卫星的发射时刻,进而算出帧同步中的字和比特计数,完成快速帧同步。这样一来,缩短了GNSS接收机的再次定位时间,达到1秒内重新定位,有很好的工程应用前景。

    随着我国北斗事业的快速发展,导航定位服务在人们日常生活中占据越来越重要的位置。卫星发射信号,GNSS导航接收机需要对信号进行捕获,跟踪,然后对数据进行位同步,帧同步处理,进而解析导航电文,得到卫星星历,伪距离等信息进行定位解算。不过,很多时候,由于建筑物遮挡了卫星信号,造成接收机通道的卫星信号失锁,当多颗卫星卫星信号被遮挡,会造成定位中断。在众多的导航芯片中,重捕获定位时间也是接收机重要的指标。比如,UBLOX芯片公司的重捕获时间大概在1秒左右,由于这涉及核心技术,这方面的具体算法并没有公布。针对这种情况,本文对失锁重捕获进行了比较深入的研究,提出一种GNSS接收机在失锁重捕下位边缘和帧同步判断的方法,国内大部分论文只是针对GPS接收机失锁重捕做仿真分析,本文对GPS和北斗模块用天线进行实时信号接收处理,接收机失锁跟踪成功到定位只需要1秒。

    本文研究基于ALTERA公司的FPGA开发板DE2115搭建硬件平台,用天线接收实时的卫星信号,在PC上进行实时处理GPS和北斗信号,实时解算卫星和用户的PVT信息。冷启动[1],在没有任何有用的信息时,用户接收机进行三维定位需要30秒以上的时间,针对接收机失锁情况下重新定位,施行提出一种失锁重捕情况下的GPS接收机快速帧同步方法[2],能够在1毫秒时间内实现帧同步,本文针对此算法做出了改进,在短时间卫星信号失锁时,把失锁前的卫星到用户的伪距离锁存起来,避免了卫星位置的计算,减少了运算内存,加快了信号重新定位的时间;并且在此基础上,提出一种位边缘判断方法,一般来说,普通位同步成功需要的时间大概是几百毫秒,这种判断方法,使得不用经过比特同步,也可以定位成功。接收机在失锁下实现定位的具体算法流程如图1所示。

    1 失锁重捕下接收机位边缘推断算法

    一般来说,接收机在正常接收处理信号时,捕获信号进入跟踪通道,必须从数据中找到数据比特的边缘,接着才能实现帧同步,才能解调导航电文上的信息。载波环在数据解调时,解调出1毫秒宽的数据电平,而卫星电文中数据流持续20毫秒,所以要将20个1毫秒宽的数据合并起来组成一个20毫秒宽的正常数据比特。位同步之前并不知道那20个数据属于同一个比特,位同步它是接收通道根据一定算法确定当前接收信号在某一数据比特的位置,也就是比特起始边缘位置。直方图是一种比较基本稳定的方法[3],一般接收机正常的位同步成功需要耗掉大概几百毫秒的时间,对于失锁重捕获状况下,几百毫秒的时间也是一个很大的比重。所以本文提出在重捕获下一种位边缘判断方法,该算法利用了失锁前的信息,反推出数据的位边缘,加快了恢复定位的时间。失锁重捕情况下位边缘判断算法关键在于判断位边缘[4],在卫星信号失锁的时刻,记下当前的时间[Lock_time],某通道位边缘[bit_temp],码相位数值[cp_temp],利用FPGA硬件跟踪环里面的1毫秒计数进行计数,当该卫星信号重新捕获跟踪成功后,记下1毫秒计数的数值[count],假设当前时间为RTC,位边缘判断为[bit_count],码相位计数是[cp]。

    [bit_count=count%20+bit_temp] (1)

    如果[cp_temp-cp>0.0009],位边缘[bit_count]加1;如果[cp-cp_temp>0.0009],位边缘[bit_count]减1;最后如果位边缘计数大于20。

    [bit_count=bit_count-20] (2)

    通过这种方法,就估计出数据流的比特边缘,为接下来帧同步判断算法做准备。

    2 失锁重捕下GNSS接收机帧同步判断算法

    2.1 失锁重捕下GPS接收机帧同步判断算法

    帧同步目的是为了确定卫星信号的字帧边缘[5],一般帧同步算法大概需要6秒,找到帧同步码[6],从而将载波环解调出了的数据比特流划分为一个一个的字,进而估计卫星的发射时刻,组装伪距离。信号发射时间[ts]的构筑公式:

    [ts=TOW+0.02(30word+bit)+0.001(c+cp/1023)] (3)

    TOW是每一帧以秒为单位的周内时,word是接收到导航电文的字,每个字包含30个比特,bit是当前导航电文字的比特,c是当前比特中c整周的C/A码的导航电文,[cp]是当前这一周C/A码的码相位测量值,可以从跟踪环中读出来。假设[rcvTow]是信号接收时间,本地时间,[time]为某个通道的传播时间,卫星发射时间也等于接收时间减去信号的传播时间。卫星到用户的距离用r表示,我们把它在失锁前锁存起来,CC是光速,f是帧计数,TOW的计算值是6f。方法如下:

    [ts=RcvTow-time] (4)

    [time=r/CC] (5)

    结合公式(3)(4)(5)可知:

    [f=(rcvTow-r/CC)/6] (6)

    [word=(rcvTow-6f-r/CC)/0.6] (7)

    [bit=(rcvTow-6f-r/CC-0.6word)/0.02] (8)

    从上面位边缘判断方法可知,

    [rcvTow=Lock_time+count] (9)

    所以重新构建发射时间为:

    [ts=TOW+0.6word+0.02bit+0.001(bit_count+cp/1023)] (10)

    2.2失锁重捕下北斗接收机帧同步判断算法

    北斗的MEO卫星组装伪距离的方式和GPS卫星一样,所以失锁情况下GPS的帧同步算法也适用于北斗MEO卫星,而北斗GEO卫星的轨道较高,组装伪距离方式不一样。其公式为:

    [f=(rcvTow-r/CC)/6] (11)

    [word=(rcvTow-6f-r/CC)/0.06] (12)

    [bit=(rcvTow-6f-r/CC-0.06word)/0.002] (13)

    [ts=TOW+0.06word+0.002bit+0.001(bit_count+cp/1023)] (14)

    当计算出信号的发射时间,就可以得到每颗卫星到用户的伪距离,利用现有的星历,进行PVT解算。

    3 实验的数据(GPS+北斗)分析与验证,测试场景是低动态的

    3.1 GPS+北斗卫星失锁前后的伪距离变化图(在30个数据点左右信号失锁,重新捕获)

    因为位同步和帧同步也是为了组装正确的伪距离,所以可以通过判断各个通道卫星的伪距离随时间的变化,验证该算法的准确性。从图2,3可以得知,卫星伪距离变化是有规律的直线,缓慢变小或变大,在第30个数据点左右直线中断是因为信号失锁,失锁前后伪距离没有出现大的跳动,说明位边缘判断,帧同步判断算法已经成功,组装好正确的伪距离,利用已经拥有的星历信息,然后接收机采用最小二乘或者卡尔曼滤波算法进行PVT解算[6]。

    3.2 GPS+北斗失锁跟踪成功到定位成功的时间

    GPS+北斗失锁跟踪成功到定位成功的时间如图4所示。

    4 结论

    本文通过详细论述GNSS接收机在低动态失锁重捕情况下位边缘判断算法,帧同步判断算法,成功实现组装伪距离,得出的实验结果分析可知,位边缘判断算法,帧同步判断算法能够提高失锁重捕所需要的时间,失锁跟踪成功到得出用户的三维坐标在1秒内便可以实现,该算法可应用于车载终端等导航设备。

    您无权下载
    您没有权限