欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2022114709605
申请人: 淮阴工学院
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-04-15
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种可设定周期的高精度GNSS时间同步方法,其特征在于,通过PPS脉冲与高精度时间报文UBX‑NAV‑PVT去同步系统时间,包括如下步骤:步骤1:获取GNSS接收机输出的PPS秒脉冲信号,解析以晶振为时钟源的系统内部时间戳和脉冲序列号;

步骤2:根据脉冲序列号和设定的时间同步周期,判定当前是否到达时间同步时刻;

步骤3:通过UART串口通信读取GNSS接收机输出的高精度时间报文UBX‑NAV‑PVT,解析时间报文中的UTC时间;

接收和提取高精度的GNSS时间报文的方法包括:

利用生产者消费者异步处理模式,接收和提取高精度的GNSS时间报文UBX‑NAV‑PVT,其中生产者表示实时读取GNSS报文数据,将数据追加到环形队列中;消费者表示实时提取UBX‑NAV‑PVT时间报文,采用环形队列的先进先出原则,通过判断队列中时间报文的帧头、Class、ID、长度关键字,提取UBX‑NAV‑PVT时间报文;

解析高精度时间报文UBX‑NAV‑PVT的方法为:

定义时间报文结构体类型,其中包含年、月、日、时、分、秒和纳秒时间信息,利用类型的本质是指示编译器如何解释一段内存空间这一特性,将提取出的十六进制UBX‑NAV‑PVT时间报文执行memcpy内存拷贝运算,使用已定义的结构体类型来解释该十六进制报文,进而解析UBX‑NAV‑PVT报文中的UTC时间;

步骤4:计算PPS脉冲时间戳与解析完时间报文之间所用时间补偿量,与并与解析出UTC时间相加,解算出向系统同步的时间,进行时间同步。

2.根据权利要求1所述的可设定周期的高精度GNSS时间同步方法,其特征在于,所述步骤3中读取GNSS接收机输出的高精度时间报文UBX‑NAV‑PVT需要如下硬件支持:全球卫星导航系统GNSS接收机,用以输出PPS脉冲和GNSS时间报文UBX‑NAV‑PVT;

GNSS接收机天线,用以接收卫星实时发送的信号;

UART串口模块,将GNSS接收机映射为Linux内核系统中的设备节点/dev/ttyUSB0;

GNSS接收机天线接收卫星发送的信号,并将卫星信号转发给GNSS接收机;GNSS接收机收到信号后,生成高精度的UBX‑NAV‑PVT时间报文;UART串口模块将GNSS接收机和Linux域控系统进行硬件连接,即在硬件驱动上,将GNSS接收机映射为内核中的设备节点/dev/ttyUSB0。

3.根据权利要求2所述的可设定周期的高精度GNSS时间同步方法,其特征在于,所述UART串口模块需要进行UART串口通信配置,具体包括:UART串口通信配置,设置波特率、数据位、校验位和停止位;

通过串口下发配置指令到内核空间中设备节点/dev/ttyUSB0的读缓冲区,使其输出高精度的GNSS时间报文UBX‑NAV‑PVT;

通过访问节点/dev/ttyUSB0的写缓冲区,间接读取GNSS接收机输出的时间报文;

其中,UBX‑NAV‑PVT报文表示GNSS的时间、速度和位置解。

4.根据权利要求1所述的可设定周期的高精度GNSS时间同步方法,其特征在于,所述步骤1中获取PPS秒脉冲信号具体包括:通过拉低GNSS接收机天线的引脚电平,使其每秒输出PPS脉冲信号,其频率为1Hz;

PPS脉冲以GPIO作为PPS信号源,通过注册GPIO中断的方式,记录引脚电平变化,当PPS脉冲到来时,访问脉冲节点/dev/pps0即可获取PPS脉冲信号,获取PPS发送时刻的系统时间戳和序列号信息。

5.根据权利要求1所述的可设定周期的高精度GNSS时间同步方法,其特征在于,所述步骤2中设定时间同步周期,判定当前是否到达时间同步时刻的方法包括:时间同步程序启动时,输入时间同步的周期,通过PPS脉冲信号中提供的序列号,对设定同步周期进行模运算,通过下述公式的结果来判定是否要执行时间同步;

result=sequence%period

其中,sequence表示PPS脉冲序列号,period表示同步周期,result表示模运算结果。

6.根据权利要求1所述的可设定周期的高精度GNSS时间同步方法,其特征在于,所述步骤4中解算系统同步时间的方法为:计算读取、提取和解析时间报文过程所用的时间补偿量,与UBX‑NAV‑PVT时间报文所提供的时间相加,通过下述公式表示向域控系统的授时;

timestamp=pvt_time+Δt

其中,pvt_time表示高精度的GNSS时间,Δt表示补偿时间,timestamp表示向域控系统同步的时间。

7.根据权利要求6所述的可设定周期的高精度GNSS时间同步方法,其特征在于,所述步骤4中还包括:将UTC时间转换为Linux系统时间,将UBX‑NAV‑PVT时间报文中解析出的UTC时间,转换为可同步到域控上的Linux系统时间,然后,将域控系统的授时时钟由默认时区转换为东八区北京时间。