一种GNSS秒脉冲平滑输出的控制装置的制作方法

文档序号:17336060发布日期:2019-04-05 22:30阅读:321来源:国知局
一种GNSS秒脉冲平滑输出的控制装置的制作方法

本发明涉及卫星导航系统,特别是一种gnss秒脉冲平滑输出的控制装置。



背景技术:

gnss全球卫星导航系统利用一组卫星的伪距、星历、卫星发射时间等观测量来是的,同时还必须知道用户钟差。全球导航卫星系统是能在地球表面或近地空间的任何地点为用户提供全天候的3维坐标和速度以及时间信息的空基无线电导航定位系统。

而现有技术中,秒脉冲的特点是短期抖动较大,长期秒偏差趋近于0,且gnss芯片模组失去卫星连接时,输出秒脉冲中断,这些均导致导航的秒脉冲出现问题,从而影响系统正常运行。



技术实现要素:

本发明所要达到的目的就是提供一种gnss秒脉冲平滑输出的控制装置,确保系统可靠运行,且充分利用软硬件分工,使得系统更加便利和可靠。

为了达到上述目的,本发明采用如下技术方案:一种gnss秒脉冲平滑输出的控制装置,包括一个接收gnss输入秒脉冲的第一端口、一个记录输入秒脉冲的时戳的打时戳模块、一个接收导航设备统一标准接口协议的第二端口、以及tai/utc时间模块,所述tai/utc时间模块通过所述第二端口获得与所述输入秒脉冲对齐的tai/utc时间,还包括一个软件时戳处理模块,所述软件时戳处理模块内包括有软件完整时戳缓存区、以及软件时戳处理算法处理区,所述软件时戳处理模块通过获知输入秒脉冲的时戳信息以及tai/utc时间信息并结合软件完整的时戳缓存,并通过软件时戳处理算法拟合出输出秒脉冲曲线并缓存于fpga纳秒时戳缓存,输出秒脉冲处理判决模块根据实时判断输出秒脉冲曲线对应的当前地址值与本地纳秒计数器状态输出秒脉冲。

进一步的,还包括高精度的本地振荡时钟电路,给所述本地纳秒计数器提供一个时钟基准,维护所述本地纳秒计数器的运行。

进一步的,所述本地振荡时钟为高精度晶振,所述晶振的振荡频率为25mhz。

进一步的,所述tai/utc时间模块包括tai/utc时间提取模块以及tai/utc时间维护模块,所述tai/utc时间提取模块通过第二端口获取相应时间信息给tai/utc时间维护模块,所述tai/utc时间维护模块再通过反馈的输出秒脉冲维护获得tai/utc时间。

进一步的,包括一个软件时戳接口,所述软件时戳接口将输入秒脉冲的时戳信息以及tai/utc时间信息通过localbus总线给到软件时戳处理模块。

进一步的,当输入秒脉冲上升沿到达时,记录下ns_cnt纳秒计数器的数值ns_cnt_pps,并把该输入秒脉冲时戳值传递给软件时戳接口。

进一步的,软件时戳处理模块需要记录下已过去的时间段s内的输入秒脉冲时戳值,并根据该系列输入秒脉冲时戳值拟合出一条n阶的多项式曲线,并根据该多项式来推导接下来一段时间内的秒脉冲到来时刻的拟合值。

进一步的,经软件算法处理后的拟合值需要填入到fpga纳秒时戳缓存中,fpga纳秒时戳缓存的刻度为1秒,深度为t秒。

进一步的,fpga纳秒时戳缓存的读写地址为tai/utc时间转换后的秒部分。

进一步的,输出秒脉冲处理判决电路实时判断当前地址时戳缓存值与本地纳秒计数器是否相等,当两者相等或者互补时,则进行输出秒脉冲。

采用上述技术方案后,本发明具有如下优点:通过软硬件功能划分,将精度要求很高的时戳采样和可靠性要求很高的秒脉冲周期性输出交由硬件/fpga处理,而将复杂的n阶多项式拟合算法交由软件处理,增加了算法升级的灵活性。能抵御输入秒脉冲中断、软件崩溃等故障,极大提高输出秒脉冲的可靠性。

附图说明

下面结合附图对本发明作进一步说明:

图1为本发明gnss秒脉冲平滑输出的控制装置实施例的系统框图;

图2为本发明gnss秒脉冲平滑输出的控制装置实施例中理想时戳示意图;

图3为本发明gnss秒脉冲平滑输出的控制装置实施例中实际时戳示意图;

图4为本发明gnss秒脉冲平滑输出的控制装置实施例中软件拟合示意图。

具体实施方式

在本发明中,fpga为field-programmablegatearray的简写,即现场可编程门阵列;gnss为globalnavigationsatellitesystem的简写,即全球卫星导航系统;pps为pulsepersecond的简写,即秒脉冲,tai为internationalatomictime的简写,即国际原子时;utc为coordinateduniversaltime的简写,即协调世界时;nmea为导航设备统一的rtcm标准接口协议。

实施例:

一种gnss秒脉冲平滑输出的控制装置,包括一个接收gnss输入秒脉冲的第一端口、一个记录输入秒脉冲的时戳的打时戳模块、一个接收导航设备统一标准接口协议的第二端口、以及tai/utc时间模块,所述tai/utc时间模块通过所述第二端口获得与所述输入秒脉冲对齐的tai/utc时间,还包括一个软件时戳处理模块,所述软件时戳处理模块内包括有软件完整时戳缓存区、以及软件时戳处理算法处理区,所述软件时戳处理模块通过获知输入秒脉冲的时戳信息以及tai/utc时间信息并结合软件完整的时戳缓存,并通过软件时戳处理算法拟合出输出秒脉冲曲线并缓存于fpga纳秒时戳缓存,输出秒脉冲处理判决模块根据实时判断输出秒脉冲曲线对应的当前地址值与本地纳秒计数器状态进行输出秒脉冲。

如图1所示,还包括高精度的本地振荡时钟电路,所述本地振荡时钟为高精度晶振,所述晶振的振荡频率为25mhz,所述高精度晶振电连接本地纳秒计数器,给所述本地纳秒计数器提供一个时钟基准,维护所述本地纳秒计数器的运行。所述本地纳秒计数器电连接打时戳模块,当输入秒脉冲上升沿到达时,记录下ns_cnt纳秒计数器的数值ns_cnt_pps,并把该输入秒脉冲时戳值传递给软件时戳接口,供软件时戳处理模块读取。该晶振与理想秒脉冲存在短期固定频偏和长期频率漂移。该晶振输出250mhz时钟,维护一个纳秒计数器ns_cnt(从0纳秒,以4纳秒的步幅,计数到0.999_999_996纳秒,归0后周期性重复)。

gnss芯片模组同时会提供标准的nmea-0183接口(uart/iic等),供用户提取tai/utc时间等信息。gnss芯片模组在提供秒脉冲的同时,还提供了与秒脉冲对齐的tai/utc时间,该时间也一并传递给软件时戳接口,供软件时戳处理模块读取。

在本实施例中,所述tai/utc时间模块包括tai/utc时间提取模块以及tai/utc时间维护模块,所述tai/utc时间提取模块通过第二端口获取相应时间信息给tai/utc时间维护模块,所述tai/utc时间维护模块再通过反馈的输出秒脉冲维护获得tai/utc时间。所述软件时戳接口将输入秒脉冲的时戳信息以及tai/utc时间信息通过localbus总线给到软件时戳处理模块。

理想情况下,即本地晶振与秒脉冲频偏为0且秒脉冲不抖动,那么软件获得的纳秒时戳值应不变。实际情况下,本地晶振与秒脉冲存在短期固定频偏和长期可变漂移,gnss芯片模组输出秒脉冲存在短期抖动及缺失。相邻秒脉冲之间的纳秒时戳会有0到几十纳秒(0ppb~几十ppb)的偏差。图2为理想情况下采样时戳的示意图。图3为实际输入采样时戳示意图。

因此,软件时戳处理模块需要记录下已过去的时间段s内的输入秒脉冲时戳值,并根据该系列输入秒脉冲时戳值拟合出一条n阶的多项式曲线,并根据该多项式来推导接下来一段时间内的秒脉冲到来时刻的拟合值。原理上,越接近最新采样值的推导值越准确,当长时间没有更新的采样值,那么推导值的累积误差会不断增大,也就是进入保持状态的输出秒脉冲精度不断劣化。拟合的曲线如图4所示。

经软件算法处理后的拟合值需要填入到fpga纳秒时戳缓存中,fpga纳秒时戳缓存的刻度为1秒,深度为t秒。也就是说,软件需要将未来t秒内的拟合值填入到fpga缓存中。t应大于软件崩溃到硬狗复位重启到最后正常工作的时间。在软件及输入秒脉冲正常的情况下,软件应每隔若干秒刷新fpga时戳缓存,以保证fpga使用的是最新拟合的值。fpga纳秒时戳缓存的读写地址为tai/utc时间转换后的秒部分。输出秒脉冲处理判决电路实时判断当前地址时戳缓存值与本地纳秒计数器是否相等,当两者相等或者互补时,则进行输出秒脉冲。由于输出秒脉冲的连续不间断性,可以用于驱动tai/utc时间维护。

通过软硬件功能划分,将精度要求很高的时戳采样和可靠性要求很高的秒脉冲周期性输出交由硬件/fpga处理,而将复杂的n阶多项式拟合算法交由软件处理,增加了算法升级的灵活性。能抵御输入秒脉冲中断、软件崩溃等故障,极大提高输出秒脉冲的可靠性。

除上述优选实施例外,本发明还有其他的实施方式,本领域技术人员可以根据本发明作出各种改变和变形,只要不脱离本发明的精神,均应属于本发明所附权利要求所定义的范围。

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