首页> 中国专利> 一种基于FPGA和DSP的北斗导航接收机伪距测量改进方法

一种基于FPGA和DSP的北斗导航接收机伪距测量改进方法

摘要

本发明公开了一种基于FPGA和DSP的北斗导航接收机的伪距测量改进方法,属于卫星导航技术领域。本方法针对以6秒为导航电文子帧周期的北斗非GEO卫星,和以0.6秒为子帧周期的北斗GEO卫星,通过分别检测其子帧帧头,分别触发一个周期为0.2秒的方波响应,通过FPGA计数,得到卫星导航信号在空间中传播的伪时间,由DSP读取这个时间后计算伪距值,从而实现定位。本方法可有效避免因北斗GEO卫星与非GEO卫星子帧周期不一致或时序修正后,在定位过程中所引起的伪距忽然跳变的现象,从而更好地利用北斗卫星导航系统,实现更为精确、稳定的导航效果。

著录项

  • 公开/公告号CN105717524A

    专利类型发明专利

  • 公开/公告日2016-06-29

    原文格式PDF

  • 申请/专利权人 南京航空航天大学;

    申请/专利号CN201610062969.0

  • 申请日2016-01-30

  • 分类号G01S19/37(20100101);

  • 代理机构32200 南京经纬专利商标代理有限公司;

  • 代理人许方

  • 地址 210017 江苏省南京市秦淮区御道街29号

  • 入库时间 2023-12-18 15:45:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-01-10

    未缴年费专利权终止 IPC(主分类):G01S19/37 专利号:ZL2016100629690 申请日:20160130 授权公告日:20180209

    专利权的终止

  • 2018-02-09

    授权

    授权

  • 2016-07-27

    实质审查的生效 IPC(主分类):G01S19/37 申请日:20160130

    实质审查的生效

  • 2016-06-29

    公开

    公开

说明书

技术领域

本发明涉及一种基于FPGA(现场可编程门阵列)和DSP(数字信号处理器)的北斗导 航接收机伪距测量改进方法,属于卫星导航技术领域。

背景技术

众所周知,全球卫星导航系统是非常重要的空间信息基础设施。卫星导航系统不 仅可以应用于军事、减灾救灾和公共安全领域,也渐渐在个人导航、交通管理、电信、渔业等 众多民用领域发挥巨大的作用。在卫星导航技术中,接收机伪距解算的稳定性,对连续良好 定位有着至关重要的影响。

现有的北斗导航接收机,为了实现同时利用GEO卫星(地球静止轨道卫星)和非GEO 卫星进行定位,为了实现对伪距的计算,如图2所示,使非GEO卫星的子帧头触发1秒为周期 的方波,使GEO卫星的子帧头触发0.6秒为周期的方波,同时产生1秒为周期的TIC_1信号(定 位观测数据锁存使能信号1)。跟踪通道中的计数器,当遇到由子帧头触发的方波的上升沿 时,计数器开始计数;当遇到TIC_1信号的上升沿时,计数器停止计数,并将计数结果放入缓 存器,利用这个计数结果乘以光速来计算伪距值。因为TIC_1信号的上升沿起始位置为随机 的,在实现定位之后,可以得到钟差,把钟差作为反馈量,反馈回FPGA对TIC_1的起始时刻作 出调整,如此循环进行,使得钟差迭代、逐渐变小。

这种计算伪距方法的缺陷在于,由于非GEO卫星的子帧头触发方波的周期为1秒, 而GEO卫星的子帧头触发方波的周期为0.6秒,所以,要同时利用GEO卫星和非GEO卫星来进 行定位,就必须对它们的计数器读取值作出相应的时序上的调整。而在作出时序调整之后, 就会在定位过程中的某个时刻,产生伪距值的跳变现象,导致定位过程不够稳定,对定位结 果的精度造成影响。

发明内容

本发明为了克服因非GEO卫星和GEO卫星的子帧周期不同,需要时序调整而引发的 定位过程中伪距值突然跳变的问题,提出了一种基于FPGA和DSP的北斗导航接收机伪距测 量改进方法,适用于卫星导航定位邻域。

本发明为解决其技术问题采用如下技术方案:

一种基于FPGA和DSP的北斗导航接收机伪距测量改进方法,包括如下步骤:

第一步:在实现北斗导航卫星信号的捕获和跟踪的基础上,对信号的子帧头 “11100010010”作出检测;

第二步:检测到子帧头后,非GEO卫星和GEO卫星的子帧头分别触发各自的、以0.2秒为 周期的Frame_D1和Frame_D2方波信号,在已有的FPGA产生的1秒为周期的TIC_1信号的基础 上,分频产生一个0.2秒为周期的TIC_2信号;

第三步:当FPGA里的计数器得到Frame_D1或Frame_D2方波信号的上升沿后,开始以32 倍的1.023MHz分别对其进行计数,直至TIC_2信号的上升沿到来时,停止计数,并把计数值和缓存至锁存器,等待DSP来读取;

第四步:DSP从FPGA中取出计数值和,利用计数值转化计算得到每个通道中该颗卫 星的伪距值,然后进行定位解算;解算后得到的钟差和,作为反馈量,返回给FPGA,用 来调整TIC_2信号的上升沿起始时刻,直至其与UTC,即国际协调时间相对齐;

第五步:通过上述第一步至第四步的多次循环执行,逐步修正接收机的钟差和伪距值。

所述第四步中,当DSP从FPGA的锁存器中取出非GEO卫星和GEO卫星分别的计数值 和后,运用式:

来得到卫星的伪距值;其中,当通道中跟踪的卫星为非GEO卫星时,数值代表,当通 道中跟踪的卫星为GEO卫星时,数值代表;为光速。

本发明的有益效果如下:

(1)本方法为基于FPGA和DSP的北斗导航接收机伪距测量方法改进研究,可用于改善北 斗导航接收机定位效果。与目前应用的的伪距测量方法相比,该方法可以避免伪距值的跳 变现象,使接收机更完善、稳定地利用北斗非GEO卫星和GEO卫星进行定位解算。

(2)本发明方法通过对DSP的串口所输出的定位解算结果、伪距解算值的分析,可 以较好地评估算法的有效性。

附图说明

图1为本方法的整体流程图。

图2为修改改进前,FPGA所产生的时序信号方波图。

图3为修改改进后,FPGA所产生的时序信号方波图。

图4为伪距测量原理图。

具体实施方式

下面结合附图对本发明创造做进一步详细说明。

本发明的基础是南京航空航天大学导航研究中心深组合课题组所拥有的FPGA和 DSP硬件平台,以及课题组编制的成套完整的北斗接收机程序。为了使北斗的非GEO卫星和 GEO卫星,同时参与到定位解算当中来,就必然要解决非GEO卫星的子帧周期为6秒,而GEO卫 星的子帧周期为0.6秒的问题。如背景技术中所述,原方法是利用FPGA计数得到两类卫星信 号传播时间,通过两个传播时间之间的客观逻辑关系,来对两类卫星信号的时序进行相应 的调整,从而达成北斗的非GEO卫星和GEO卫星同时参与定位解算的目的。然而,这种方法会 导致在实现定位以后,伪距结果在某个时刻发生偏差较大的跳变,影响定位精度和稳定性。

因此,考虑把非GEO卫星和GEO卫星的子帧头所触发的方波信号的周期全部修改到 0.2秒。同时添加一个周期也为0.2秒的TIC_2信号(定位观测数据锁存使能信号2),去读取 各颗卫星信号的传播时间计数值。用这种方法,既可以保证卫星信号读取的完整性(GEO卫 星信号传播时间在120毫秒左右,非GEO卫星信号传播时间在70毫秒左右),同时又避免了时 序上的调整从而防止伪距解算值跳变的发生。

本方法的整体流程图如图1所示,通过捕获、跟踪卫星信号,剥离掉载波和伪码之 后,得到导航电文。检测到导航电文帧头后,触发帧信息方波。得到伪距传播时间计数值后, 计算伪距进行定位解算。需要完成以下工作:

子帧头检测

北斗卫星导航电文子帧的同步码包含在每一子帧的第一个字码遥测码的第1至11比 特,值为“11100010010”。通过检测这11个比特位,可以确定子帧头的位置。由于子帧是周期 循环的,所以也可以通过帧头递推的方式,即若检测到帧头,则整数倍子帧周期循环后,应 当回到帧头位置,再次检测到帧头,来确保帧头检测的正确性。

时基产生模块设计

系统中原先已有一个周期为1秒的时基方波信号TIC_1(周期为1秒的方波信号)。在这 个信号的基础上,分五倍频率得到一个周期为0.2秒的时基方波信号TIC_2(周期为0.2秒的 方波信号)。

接着,当检测到非GEO卫星和GEO卫星的子帧头后,分别触发周期同为0.2秒的 Frame_D1(非GEO卫星子帧头触发的方波信号)和Frame_D2(GEO卫星子帧头触发的方波信 号)方波信号。如图3中所示。之所以选择两类卫星的子帧信号周期为0.2秒,是为了在非GEO 卫星的子帧周期6秒和GEO卫星的子帧周期0.6秒之间,寻找到他们的最小公因数,同时又满 足GEO卫星信号传播时间在120毫秒左右的客观条件。综合这些因素,我们选择把子帧信号 的周期设置为0.2秒,这样既可以摆脱时序上的调整,又在一定程度上提高了伪距的解算精 度。

不同通道中的卫星有其各自的计数器。令子帧头所触发的信号的上升沿作为FPGA 中计数器清零计数值并重新开始计数的信号,令周期为0.2秒的时基方波信号TIC_2的上升 沿作为读出并锁存计数器中的计数值的信号。

伪距测量原理

伪距是带有距离偏差的,用户所在测量点和卫星之间的距离,它是解算用户点位坐标 的基础数据。

如图4中所示,是本发明所使用的伪距测量方法。

初始的时候,TIC_2信号上升沿的起始位置是任意的,我们假设它是卫星信号从空 间卫星上发出的时刻。同时,假设帧同步信号的上升沿是地面上用户接收机接收到卫星发 出的相应帧信号的时刻。

FPGA中的29位计数器以32倍的1.023MHz的频率进行连续不断地计数,当它受到 Frame_D1或Frame_D2(即非GEO卫星和GEO卫星的子帧信号)信号的上升沿触发后,将计数器 内的计数值清零,从零开始计数。当计数器受到TIC_2信号上升沿触发,就把计数器内当前 的计数值锁存到锁存器。

DSP从锁存器读取出这个计数值(非GEO卫星和GEO卫星的计数值分别表示为和 ),则伪距值即为:

(1)

其中为光速。

得到伪距值以后,就可以进行定位解算。通过定位解算得到用户所在地的三维位 置坐标和接收机钟差。把钟差反馈给FPGA,用来调整TIC_2信号上升沿时刻的位置,从而一 次次修正伪距值,循环迭代进行定位解算。

通过从DSP的串口发出的实验数据,我们可以发现伪距值的跳变不再发生了,接收 机实现了更为稳定精确的定位结果。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号