一种自适应卫星导航授时方法及装置与流程

文档序号:14553592阅读:238来源:国知局
一种自适应卫星导航授时方法及装置与流程

本发明属于卫星导航定位技术领域,具体涉及一种自适应卫星导航授时方法及装置。



背景技术:

伴随着卫星导航技术的不断发展,以美国的gps、中国的北斗、俄罗斯的glonass、欧洲的伽利略为代表的全球四大卫星导航系统被广泛的应用在国民经济及军事装备等各个领域。由于卫星导航系统的覆盖范围广,导航卫星上具有的先进的高精度原子钟,并且卫星导航应用成本低廉,因此常常在通信、电力电网等多个领域利用卫星导航系统来实现精准授时,并成为了目前卫星导航接收机的主流应用方向。

卫星导航接收机授时的本质是利用高精度的卫星导航系统时钟来驯服接收机时钟,使得接收机时钟与卫星导航系统时钟达到同步。目前,利用卫星导航接收机实现授时的主要方法是通过最小二乘等定位解算算法在计算用户位置和速度的过程中将本地接收机钟差一同解算出来,然后利用得到的本地接收机钟差来修正接收机时钟,并以修正后的接收机时钟为基准产生pps(秒脉冲)输出。

然而,由于定位解算过程中解算出的本地接收机钟差精度有限,并且接收机上的晶振误差较大,因此这种利用本地接收机钟差来直接修正本地接收机时钟的方法往往会造成过度修正或者修正不足,从而造成较大的误差。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种自适应卫星导航授时方法及装置,以解决现有的授时方法中由于本地时钟过度修正或者修正不足引起的授时误差,从而实现高精度授时。

为实现上述目的及其他相关目的,本发明提供一种自适应卫星导航授时装置,该授时装置包括:

基带信号处理模块,用于获取各个通道的观测量信息;

最小二乘定位解算模块,以各个通道的观测量信息为输入量,并利用最小二乘进行定位解算,得到用户位置、用户速度和本地接收机钟差;

自适应调整模块,以本地接收机钟差为输入,通过运算及判决,实现rtc模块中的频率字修正量的自适应调整;

rtc模块,利用自适应调整模块所输出频率字修正量对频率字进行修正。

优选地,所述自适应调整模块包括钟差寄存器、求差运算器、判决器和调整器;

所述钟差寄存器,适用于存储当前时刻的本地接收机钟差;

所述求差运算器,用于对从钟差寄存器中读取的前一时刻的本地接收机钟差和当前时刻的本地接收机钟差进行求差运算,得到前一个时刻与当前时刻的本地接收机钟差之差;

所述判决器,根据前后两个时刻的本地接收机钟差以及前后两个时刻的接收机钟差的差值来进行判决;

所述调整器,根据判决器的判决结果自适应的调整实时时钟的频率字修正量。

优选地,若定位解算为首次定位,则将本地接收机钟差作为频率字修正量修正实时时钟的频率字;若定位解算为非首次定位,则将前后两个时刻的本地接收机钟差进行作差,根据前后两个时刻的本地接收机钟差以及前后两个时刻的接收机钟差的差值来进行判决,根据判决结果自适应的调整实时时钟的频率字修正量。

优选地,所述判决结果包括增大频率字修正量、减小频率字修正量、保持当前频率字修正量不变。

优选地,若判决器的判决结果是增大频率字修正量,则将当前的频率字修正量加上频率字修正量的改进步进量作为新的频率字修正量输出;若判决器的判决结果是减小频率字修正量,则将当前的频率字修正量减去频率字修正量的改进步进量作为新的频率字修正量输出;否则,保持当前频率字修正量不变。

优选地,所述rtc模块包括累加寄存器和计时累加器,所述累加寄存器对修正后的频率字进行累加计数,每当累加寄存器溢出后,产生一个pps秒脉冲,计时累加器在pps秒脉冲的驱动下从初始时间t开始计时,并输出作为当前时刻的接收机本地时间。

为实现上述目的及其他相关目的,本发明提供一种自适应卫星导航授时方法,所述授时方法包括以下步骤:s1.获取各个通道的观测量信息;s2.以各个通道的观测量信息为输入量,并利用最小二乘进行定位解算,得到用户位置、用户速度和本地接收机钟差;

若步骤s2中所述的定位解算为首次定位,则将本地接收机钟差作为频率字修正量修正实时时钟的频率字;

若步骤s2中所述的定位解算为非首次定位,则将前后两个时刻的本地接收机钟差进行作差,根据前后两个时刻的本地接收机钟差以及前后两个时刻的接收机钟差的差值来进行判决,根据判决结果自适应的调整实时时钟的频率字修正量。

优选地,所述判决结果包括增大频率字修正量、减小频率字修正量、保持当前频率字修正量不变。

优选地,若判决的结果是增大频率字修正量,则将当前的频率字修正量加上频率字修正量的改进步进量作为新的频率字修正量输出;若判决的结果是减小频率字修正量,则将当前的频率字修正量减去频率字修正量的改进步进量作为新的频率字修正量输出;否则,保持当前频率字修正量不变。

如上所述,本发明的一种自适应卫星导航授时方法及装置,具有以下有益效果:

本发明采用自适应的方式对本地接收机时钟进行调节,可有效的解决本地接收机时钟过度调节或者欠调节的问题,极大的提高授时精度,并且方法清晰易实现,无需增加卫星导航接收机任何硬件成本。

附图说明

图1为本发明的自适应卫星导航授时方法的流程图;

图2为本发明的自适应卫星导航授时系统框图;

图3为自适应调整模块结构框图;

图4为自适应调整算法流程图;

图5为rtc模块结构框图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

实施例一

请参阅图1,本实施例提出一种自适应卫星导航授时方法,所述授时方法包括以下步骤:

s1.获取各个通道的观测量信息。

具体地,所述步骤s1具体为:

卫星导航接收机通过基带信号处理模块对经过了下变频和ad采样后的数字基带卫星导航信号进行处理,得到各个通道的观测量信息,同时得到相应卫星的导航电文,并由下式计算出卫星号为prn的卫星信号发射时间

在上式中,tow表示周内时,w表示当前接收机通道已经收到的导航电文数据码的字数,b表示当前通道已经收到的导航电文的比特数,c表示当前通道已经收到的c/a码导航电文整周数,cp表示当前通道这一时刻所对应的码相位测量值。

在得到了prn号导航卫星的信号发射时间后,根据卫星的高度可以大致推测出卫星信号传播时间ttrans,公式如下所示:

其中,hprn表示prn号卫星的轨道高度,c表示光速。在得到了和ttrans后,可由下式推得到粗略的卫星导航接收机本地时间t:

在得到了接收机本地时间后,将其作为实时时钟的计时起点,以接收机晶振作为时钟源,以频率字freqword进行累加计时,并在累加计时器溢出时产生一个秒脉冲输出。累加计时器位宽为n,其输入时钟频率为fclk,则产生pps授时输出的累加计时器的频率字freqword可由下式计算得到:

s2.以各个通道的观测量信息为输入量,并利用最小二乘进行定位解算,得到用户位置、用户速度和本地接收机钟差。本地接收机时钟差用delta_t表示。定位解算的前提条件是:当卫星导航接收机的基带信号处理模块能够有效跟踪4颗及其以上的导航卫星。

若步骤s2中所述的定位解算为首次定位,则将本地接收机钟差作为频率字修正量修正实时时钟的频率字。

具体地,对于卫星导航接收机首次定位,使用解算出的本地接收机钟差delta_t作为初始的频率字修正量并赋值给freqworddelta,并利用该频率字修正量freqworddelta修正rtc模块中累加计时器的频率字freqword,修正公式如下:

freqword=freqword+freqworddelta(5)

与此同时,当前时刻解算出的本地接收机钟差delta_t将送入自适应调整模块中的钟差寄存器中缓存;此外,还要初始化频率字修正量的改进步进量freqworddelta_step,其值通常取1至10。

若步骤s2中所述的定位解算为非首次定位,则将前后两个时刻的本地接收机钟差进行作差,根据前后两个时刻的本地接收机钟差以及前后两个时刻的接收机钟差的差值来进行判决,根据判决结果自适应的调整实时时钟的频率字修正量。

具体地处理流程如下:

a)先从自适应调整模块的钟差寄存器中读取所缓存的前一个时刻的钟差,记为delta_t_prev,然后与当前时刻由最小二乘定位解算模块解算出的钟差delta_t作差,计算公式如下:

δdelta_t=delta_t_prev-delta_t(6)

上式中的δdelta_t即为前后两个时刻的钟差之差。

b)将前一个时刻的本地接收机钟差delta_t_prev和当前时刻的本地接收机钟差delta_t以及前后两个时刻的本地接收机钟差之差δdelta_t送入判决器进行判决,判决依据如表1所示:

表1.判决器的判决表

上表中的delta_t_prev、delta_t、δdelta_t这三栏“+”或“-”表示其值为正值或负值,判决结果这一栏的“+”表示频率字修正量应增大,即由下式修正频率字修正量freqworddelta:

freqworddelta=freqworddelta+freqworddelta_step(7)

当判决结果为“-”时,则由下式修正频率字修正量freqworddelta:

freqworddelta=freqworddelta-freqworddelta_step(8)

当判决结果为“0”时,表示频率字修正量freqworddelta无需增大或减小,保持不变即可。

判决器是基于一种自适应的方式来调整频率字修正量freqworddelta,其原理是先判断前后两个时刻的钟差的符号是否相同,若相同,则为情形1,否则为情形2。

在情形1下:表明前一个时刻和当前时刻对本地接收机时钟的调整是一致的方向,那么下一步就是判断前一个时刻的钟差与当前时刻的钟差的差值δdelta_t的符号,若符号为正,则表明按照当前的频率字修正量freqworddelta去调整rtc模块累加计时器的频率字freqword使得本地接收机钟差减小,说明调整方向是正确的,频率字修正量的大小也是合适的;反之,若δdelta_t的符号为负,则表明调整方向是正确的,但频率字修正量freqworddelta的值偏小,导致其对频率字freqword的修正不足,因此需要加大频率字修正量freqworddelta。

在情形2下:表明前一个时刻和当前时刻对本地接收机时钟的调整不是一致的方向,这就意味着前一个时刻本地接收机时钟要快于卫星时钟而后一个时刻却变成本地接收机时钟慢于卫星时钟,或反之。因此,可推断这是频率字修正量freqworddelta过大造成的对本地时钟的过度调整,故需要减小频率字修正量freqworddelta。

在判决器完成了判决后,在调整器中依据判决结果对频率字修正量进行自适应调整,其计算公式即为上式的式(7)和式(8)。

c)对当前时刻解算得到的钟差delta_t的符号进行判断,若为正号,则使用经过自适应调整后的频率字修正量freqworddelta对rtc模块的累加计时器的频率字freqword进行正向修正,否则,对累加计时器的频率字freqword进行负向修正。整个频率字修正量自适应调整算法的流程图见图4。

实施例二

请参阅图2,本实施例提供一种自适应卫星导航授时装置,该授时装置包括:基带信号处理模块,最小二乘定位解算模块,自适应调整模块和rtc模块。

基带信号处理模块,用于处理经过下变频后的卫星导航信号,并完成信号的捕获和跟踪,得到各个通道的观测量信息。

具体到本实施例中,卫星导航接收机通过基带信号处理模块对经过了下变频和ad采样后的数字基带卫星导航信号进行处理,得到各个通道的观测量信息,同时得到相应卫星的导航电文,并由下式计算出卫星号为prn的卫星信号发射时间

在上式中,tow表示周内时,w表示当前接收机通道已经收到的导航电文数据码的字数,b表示当前通道已经收到的导航电文的比特数,c表示当前通道已经收到的c/a码导航电文整周数,cp表示当前通道这一时刻所对应的码相位测量值。

在得到了prn号导航卫星的信号发射时间后,根据卫星的高度可以大致推测出卫星信号传播时间ttrans,公式如下所示:

其中,hprn表示prn号卫星的轨道高度,c表示光速。在得到了和ttrans后,可由下式推得到粗略的卫星导航接收机本地时间t:

在得到了接收机本地时间后,将其作为实时时钟的计时起点,以接收机晶振作为时钟源,以频率字freqword进行累加计时,并在累加计时器溢出时产生一个秒脉冲输出。累加计时器位宽为n,其输入时钟频率为fclk,则产生pps授时输出的累加计时器的频率字freqword可由下式计算得到:

最小二乘定位解算模块,以各个通道的观测量信息为输入量,并利用最小二乘进行定位解算,得到用户位置、用户速度和本地接收机钟差。

具体到本实施例中,最小二乘定位解算模块以各个通道的观测量信息为输入量,并利用最小二乘进行定位解算,得到用户位置、用户速度和本地接收机钟差。本地接收机时钟差用delta_t表示。定位解算的前提条件是:当卫星导航接收机的基带信号处理模块能够有效跟踪4颗及其以上的导航卫星。

自适应调整模块,以本地接收机钟差为输入,通过运算及判决,实现rtc模块中的频率字修正量(即rtc模块中的累加计时器的频率字修正量)的自适应调整;

rtc模块,利用自适应调整模块所输出频率字修正量对频率字进行修正。

rtc模块,作为整个卫星导航接收机的时钟基准,能够产生整个卫星导航接收机所需的时间并得到pps授时输出,模块内部为累加计时器,其以卫星导航接收机的晶振为时钟源,并按照一定的频率字进行累加计时,每溢出一次,则产生一个秒脉冲输出。

本发明采用自适应的方式对本地接收机时钟进行调节,可有效的解决本地接收机时钟过度调节或者欠调节的问题,极大的提高授时精度,并且方法清晰易实现,无需增加卫星导航接收机任何硬件成本。

请参阅图3,所述自适应调整模块包括钟差寄存器、求差运算器、判决器和调整器;

具体到本实施例中,所述钟差寄存器用于对前面的最小二乘定位解算模块解算出的本地接收机钟差进行缓存,以用于在下一个时刻使用;

所述求差运算器,用于对从钟差寄存器中读取的前一时刻的本地接收机钟差和当前时刻的本地接收机钟差进行求差运算,得到前一个时刻与当前时刻的本地接收机钟差之差;

所述判决器,根据前后两个时刻的本地接收机钟差以及前后两个时刻的接收机钟差的差值来进行判决。具体到本实施例中,判决器与钟差寄存器的输出、求差运算器的输出和自适应调整模块的输入相连接,其作用是根据前一个时刻的本地接收机钟差、当前时刻的本地接收机钟差和这两个时刻的本地接收机钟差之差来进行判决,判决结果分为三类:加大频率字修正量、减小频率字修正量、保持当前频率字修正量不变。

所述调整器,根据判决器的判决结果自适应的调整实时时钟的频率字修正量。具体到本实施例中,若判决器的结果是增大频率字修正量,则将当前的频率字修正量加上频率字修正量的改进步进量作为新的频率字修正量输出;若判决器结果是减小频率字修正量,则将当前的频率字修正量减去频率字修正量的改进步进量作为新的频率字修正量输出;否则,保持当前频率字修正量不变。

于本实施例中,若定位解算为首次定位,则将本地接收机钟差作为频率字修正量修正实时时钟的频率字。具体地,

对于卫星导航接收机首次定位,使用解算出的本地接收机钟差delta_t作为初始的频率字修正量并赋值给freqworddelta,并利用该频率字修正量freqworddelta修正rtc模块中累加计时器的频率字freqword,修正公式如下:

freqword=freqword+freqworddelta(13)

与此同时,当前时刻解算出的本地接收机钟差delta_t将送入自适应调整模块中的钟差寄存器中缓存;此外,还要初始化频率字修正量的改进步进量freqworddelta_step,其值通常取1至10。

于本实施例中,若定位解算为非首次定位,则将前后两个时刻的本地接收机钟差进行作差,根据前后两个时刻的本地接收机钟差以及前后两个时刻的接收机钟差的差值来进行判决,根据判决结果自适应的调整实时时钟的频率字修正量。

具体地处理流程如下:

a)先从自适应调整模块的钟差寄存器中读取所缓存的前一个时刻的钟差,记为delta_t_prev,然后与当前时刻由最小二乘定位解算模块解算出的钟差delta_t作差,计算公式如下:

δdelta_t=delta_t_prev-delta_t(14)

上式中的δdelta_t即为前后两个时刻的钟差之差。

b)将前一个时刻的本地接收机钟差delta_t_prev和当前时刻的本地接收机钟差delta_t以及前后两个时刻的本地接收机钟差之差δdelta_t送入判决器进行判决,判决依据如表2所示:

表2.判决器的判决表

上表中的delta_t_prev、delta_t、δdelta_t这三栏“+”或“-”表示其值为正值或负值,判决结果这一栏的“+”表示频率字修正量应增大,即由下式修正频率字修正量freqworddelta:

freqworddelta=freqworddelta+freqworddelta_step(15)

当判决结果为“-”时,则由下式修正频率字修正量freqworddelta:

freqworddelta=freqworddelta-freqworddelta_step(16)

当判决结果为“0”时,表示频率字修正量freqworddelta无需增大或减小,保持不变即可。

判决器是基于一种自适应的方式来调整频率字修正量freqworddelta,其原理是先判断前后两个时刻的钟差的符号是否相同,若相同,则为情形1,否则为情形2。

在情形1下:表明前一个时刻和当前时刻对本地接收机时钟的调整是一致的方向,那么下一步就是判断前一个时刻的钟差与当前时刻的钟差的差值δdelta_t的符号,若符号为正,则表明按照当前的频率字修正量freqworddelta去调整rtc模块累加计时器的频率字freqword使得本地接收机钟差减小,说明调整方向是正确的,频率字修正量的大小也是合适的;反之,若δdelta_t的符号为负,则表明调整方向是正确的,但频率字修正量freqworddelta的值偏小,导致其对频率字freqword的修正不足,因此需要加大频率字修正量freqworddelta。

在情形2下:表明前一个时刻和当前时刻对本地接收机时钟的调整不是一致的方向,这就意味着前一个时刻本地接收机时钟要快于卫星时钟而后一个时刻却变成本地接收机时钟慢于卫星时钟,或反之。因此,可推断这是频率字修正量freqworddelta过大造成的对本地时钟的过度调整,故需要减小频率字修正量freqworddelta。

在判决器完成了判决后,在调整器中依据判决结果对频率字修正量进行自适应调整,其计算公式即为上式的式(15)和式(16)。

c)对当前时刻解算得到的钟差delta_t的符号进行判断,若为正号,则使用经过自适应调整后的频率字修正量freqworddelta对rtc模块的累加计时器的频率字freqword进行正向修正,否则,对累加计时器的频率字freqword进行负向修正。

请参阅图5,所述rtc模块包括累加寄存器和计时累加器,在接收机定位后的每一个时刻,会利用自适应调整模块所输出频率字修正量freqworddelta对频率字freqword进行修正,并对修正后的频率字freqword进行累加计数,每当累加寄存器溢出后,产生一个pps秒脉冲,同时作为其后级计时累加器的输入时钟,计时累加器在秒脉冲的驱动下从初始时间t开始计时,并输出作为当前时刻的接收机本地时间,在整个卫星导航接收机中使用。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

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