CN110601785B - 一种卫星授时的快速高精度同步方法 - Google Patents
一种卫星授时的快速高精度同步方法 Download PDFInfo
- Publication number
- CN110601785B CN110601785B CN201910885886.5A CN201910885886A CN110601785B CN 110601785 B CN110601785 B CN 110601785B CN 201910885886 A CN201910885886 A CN 201910885886A CN 110601785 B CN110601785 B CN 110601785B
- Authority
- CN
- China
- Prior art keywords
- time
- microprocessor
- gps
- pps
- timer0
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0602—Systems characterised by the synchronising information used
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Electric Clocks (AREA)
Abstract
本发明涉及一种卫星授时的快速高精度同步方法,由GPS/BD模块、微处理器、电源模块组成,电源模块分别和GPS/BD模块、微处理器相连,微处理器和GPS/BD模块相连。当进入定时器1中断时,对GPS数据进行解析处理,获得UTC时间及设置IsGPS_Time;当进入INT中断服务时,读取的定时器0计数值和Tcount0用于计算时间长度Tpps,如果满足相应条件时就将GPS UTC时间给RTC的相应单元,同时将RTC的毫秒、微秒清零。采用本发明的有益效果是:无需增加其他辅助设备,每秒实现授时操作,具有快速、高精度的应用效果。
Description
技术领域
本发明涉及一种卫星授时领域,特别是一种卫星授时的快速高精度同步方法。
背景技术
时间,是物质存在和运动的基本特征之一,是国际单位制七个基本物理量其中之一,是目前测量精度最高的一个基本物理量;精确时间更是推动高新技术发展的铺路石,是人类各项活动顺利开展的重要保证。
在人类进入信息社会后,物联网的层次推进应用,越来越多的设备分布在各个重要节点,然后又在中心汇聚,为行业的大数据服务提供数据依据,原本看起来很难收集和使用的数据现在很容易地用来发挥巨大作用,这些来自分布式设备的大数据正逐步为人类创造更多的价值。在整个系统中,必须保障全局时间的严格同步,如果系统中的各分布式设备不具备统一的时钟基准,那么得到的测量结果由于时钟差异将无法反映出真实情况,由于各数据无法反应在哪个时刻获取,它们之间就没有确定的关联性,最终这些数据也就无法发挥出应有的效果。例如,精确的时间同步对于涉及国家经济社会安全的诸多关键基础设施至关重要,如通信系统、电力系统、金融系统等(移动通信需要精密的时间同步以确保基站的同步运行、电力网需要精密的时间同步以有效传输和分配电力、金融系统需要精密的时间同步以保障经济的正常运行),高精度的时间服务系统已经成为衡量一个国家科技水平的最核心技术指标。
全球定位系统(GPS)接收机通过解码卫星信号输出准确的同步时标( PPS)信号及NMEA-0813协议报文,报文中包含了UTC(Universal Time Coordinated)时间、位置等信息,随着GPS接收机集成度越来越高,价格越来越低,嵌入式终端解析GPS接收机输出的NMEA-0813协议报文获得UTC时间已是本领域常用的技术手段。通常,PPS信号精度可达到纳秒级,NMEA-0813协议报文是在产生高电平PPS信号并保持几十毫秒时长后输出的,在授时精度要求较高的应用场合,往往采用结合PPS信号或其他辅助手段等来实现精确授时。2002年12月曾祥君、尹项根、K.K.Li等在《中国电机工程学报》发表《GPS时钟在线监测与修正方法》,指出了GPS时钟误差的影响因素,分析了GPS时钟在重要工业领域中的应用需解决两个问题:GPS时钟的实时监测和误差补偿,文章还采用高精度晶振对GPS时钟进行监测与校正,实现了一种高精度时钟的产生方法;文献CN101202545B将GPS的秒脉冲信息和绝对时间信息传递给录取控制板并校正控制板的内部时钟,以满足精度要求不高于为1×10-4秒的应用场合,由此实现了一种高精度数据录取授时仪;文献CN101430372B提供了一种基于全球定位系统接收机的芯片级授时与同步方法及其设备,其一个实施例在使用普通温度补偿晶振(0.5PPM)的情况下,实现200ns级别的授时精度和50ns级别的同步精度;文献CN100565390C为保证授时的精度,采用PPS信号触发中断,把内部的当前时间信息全部存储起来,当把GPS发送的报文信息全部解码出来后再把解码得到的时间信息加上触发后到解码完成所用的时间即可保证MCU内部的时钟与GPS时钟保持比较高度的一致;文献CN105281859B发明的高精度授时方案,在不需增加其他辅助设备前提下,在每分钟零秒时刻实现RTC时钟和GPSUTC时钟同步,达到较精确的授时效果;文献CN105892280B发明了一种卫星授时装置,包括恒温晶振,还包括GPS/BD模块、FPGA处理系统和数字信号综合发生器,FPGA处理系统包括校正1PPS信号产生模块、数字锁相环、数字鉴相器、相差测量模块和运算模块,可以获得较小的外界噪声影响,节约成本而且可以减小设计的面积,提高了系统的稳定性;文献CN103913987B发明了一种GPS授时系统及其获得精确时间基准的方法,包括GPS天线、GPS接收器、晶体振荡器、计数器、1PPS产生器、CPU控制器、授时输出模块,GPS接收器的第I输出端连接到计数器的输入端,计数器的第I输出端连接到1PPS产生器的输入端,由1PPS产生器通过授时输出模块完成精确时间输;文献CN109991838A利用北斗短报文的发送机制,在无网络覆盖环境下,控制主控授时装置的卫星授时信道准确及时切换,提供一种基于北斗短报文主控授时装置;CN109884877A公开的一种高精度的GPS同步授时系统及方法,通过步骤1、初始化硬件设备;步骤2、配置精密授时模块;步骤3、本地时间同步授时;步骤4、计算本地时间;步骤5、系统主频的模拟校正;步骤6、系统主频的数字校正;步骤7、重复步骤4到步骤6,使得系统的频率达到目标频率,实现系统时间的精确同步,将本地时间同步到标准时间,时钟精度可以达到微秒级,时间误差稳定在1us以内;CN110032058A提供了一种授时设备、系统和方法,主控单元,根据所述规定的协议格式信号,判断卫星信号是否有效;若有效,则输出第一控制信号;若无效,则输出第二控制信号;获取根据外部控制信号,发出控制指令;授时输出单元,基于第一控制信号,输出卫星授时信号;自主授时输出单元,基于第二控制信号,将主设备时间信号作为授时信号输出;CN109917637A公开了一种数据采集卡高精度授时方法,首先GPS授时模块通过串口与上位机进行信号连接,发送绝对时间至上位机,并发送秒脉冲信号至数据采集卡,上位机根据数据采集卡上传的数据计算两个秒脉冲之间的采样数,消除因晶振误差造成的偏差,再进行多次平均,消除由秒脉冲抖动引起的误差,求得精确采样率,即可完成每包数据采样点的精确授时;文献CN108375898A公开了一种计算机高精度授时控制方法,输入到DSR、CTS为互补的整形后1PPS信号,有利于提高授时精度。
近年来,物联网和云计算(服务)的发展给各行业带来的变化有目共睹,作为支撑技术之一的时钟同步技术,已成为当前分布式应用系统研究的一大热点,研究者们越来越重视在前端分布式终端实现SOE(Sequence of Events,事件顺序记录)功能,精确记录和报告预先配置的传感器、状态变化的开关量信号等,为对象的事故分析提供明确、精准有效的线索和证据,因此,在现有嵌入式GPS终端构成基础上如何实现高精度的快速授时,仍然是一件很有价值的研究。
发明内容
本发明的目的是在现有嵌入式终端构成基础上,围绕GPS的PPS信号、解码NMEA-0813协议报文实现的一种授时方法,满足高精度授时的快速要求。
为达到上述目的,本发明的设计技术方案是:
一种嵌入式GPS终端,由微处理器、GPS/BD模块、电源模块组成,电源模块分别和GPS/BD模块、微处理器相连,微处理器和GPS/BD模块相连,其中GPS/BD模块的PPS信号引脚和微处理器具有中断功能的INT引脚相连,GPS/BD模块的UART引脚和微处理器的UART引脚。
所述微处理器,内部有一个时钟功能单元(RTC),由年、月、日、时、分、秒、毫秒、微秒组成。
所述微处理器,其INT引脚和GPS/BD模块PPS信号连接,设定INT引脚的中断优先级别为最高。
所述微处理器,其UART引脚和GPS/BD模块UART引脚相连,微处理器以UART中断方式接收GPS/BD模块输出的NMEA-0813协议报文,UART接收一个字节所需时间为TUART,单位为毫秒。
所述微处理器,内部有一个16位的定时器0,初始值为0,计数一次的时间(Tf)和晶振频率密切相关,单位为微秒,定时器0的中断周期为216×Tf。微处理器内还设置有一个定时器0中断计数器单元(Tcount0),记录定时器0的中断次数;当定时器0中断发生时,定时器0中断计数器单元(Tcount0)进行累计加一。
所述微处理器,内部有一个定时器1,中断周期的时间为T1毫秒,T1与通用异步收发传输器(UART)串口接收一个字节所需时间为TUART,则:T1=n×TUART,其中n范围为:1.1~50,T1范围为:1~50。
所述微处理器,内部有一个GPS数据接收缓存区,当微处理器的UART串口中断一次接收一个字节,接收的内容顺序保存GPS数据接收缓存区,每次串口接收中断都会重新设置定时器1的初始值、设置开启定时器1运行和设置中断使能。
所述微处理器,设置有一个GPS数据时间解析有效标志IsGPS_Time,当进入定时器1中断服务程序时,首先关闭定时器1中断使能,对GPS数据接收缓存区中的数据,按照NMEA-0813协议规范进行解析处理,获得报文中的UTC时间;如果获得了有效的UTC时间,就设置IsGPS_Time为True,否则设置IsGPS_Time为False。
所述微处理器,设置有一个PPS中断计数器单元(Cpps),设置有一个定时器0计数值单元(Timer0);当微处理器进入由GPS/BD模块的PPS信号触发的INT中断服务程序时,首先关闭定时器0,读取定时器0的计数值临时保存到Timer0,然后进行Cpps加一操作;然后计算上一次中断到本次中断的时间长度(Tpps),单位为微秒,计算Tpps的公式为:(Tcount0×216+Timer0)×Tf,式中Tf为微处理器的定时器0最小计数周期;进行授时同步判断,当满足999998<Tpps≤1000002且IsGPS_Time=True且Cpps<2时,就进行授时同步操作,将GPS UTC的年、月、日、时、分、秒赋值给RTC的相应单元,将RTC的毫秒、微秒清零。
与现有技术相比,本发明的有益效果是:在现有嵌入式终端构成基础上,无需增加其他额外的辅助设备,仅使用若干单元字节,就可以每秒进行授时检查,将时间授时精度提高到和PPS信号同一个数量级,具有快速、高精度的应用效果。
本发明的目的、特征及优点将通过实施例并结合附图进行详细说明。
附图说明
图1是本发明的硬件平台结构图。
图2是本发明的定时器1中断服务流程图。
图3是本发明的PPS信号中断服务流程图。
图4是本发明的定时器0中断服务流程图。
图5是本发明的串口接收中断流程图。
具体实施方式
图1中,101是GPS/BD模块,102是微处理器,103是电源模块,101的PPS引脚、UART引脚分别与102的INT、UART引脚连接,103分别与101和102连接。
为了更详细的描述本发明,下面结合图2、图3、图4和图5作进一步说明。
步骤201:进入定时器1中断服务程序,执行步骤202;
步骤202:关闭定时器1中断,执行步骤203;
步骤203:检查Cpps是否小于2,如果是则执行步骤204,否则执行步骤209;
步骤204:对GPS接受缓冲区进行校验分析,然后执行步骤205;
步骤205:判断报文类型是否为GPRMC,如果是则执行步骤207,否则执行步骤206;
步骤206:判断报文类型否是为GPGGA,如果是则执行步骤207,否则执行步骤209;
步骤207:判断GPS是否有效且获取UTC时间,如果是则执行步骤208,否则执行步骤209;
步骤208:设置IsGPS_Time为True,执行步骤210;
步骤209:设置IsGPS_Time为False,执行步骤210;
步骤210:清零Cpps单元,执行步骤211;
步骤211:定时器1中断服务结束。
步骤301:进入INT中断服务,执行步骤302;
步骤302:关闭定时器0,读取定时器0计数值并保存,设置定时器0初值为0,设置定时器0开启运行,对Cpps单元进行加一操作,设置IsGPS_Time为False,重置GPS接收有关资源,执行步骤303;
步骤303:计算两次PPS信号中断时长Tpps,计算公式:Tpps=(Tcount0×216+Timer0)×Tf,执行步骤304;
步骤304:判断Tpps是否大于999990且小于等于1000010,如果是则执行步骤305,否则执行步骤307;
步骤305:判断IsGPS_Time变量是否为True,如果是则执行步骤306,否则执行步骤307;
步骤306:判断检查Cpps是否小于2,如果是则执行步骤307,否则执行步骤308;
步骤307:用GPS UTC时间赋值到RTC,将毫秒、微秒单元清零,执行步骤307;
步骤308:设置IsGPS_Time为False,执行步骤309;
步骤309:INT中断服务结束。
步骤401:进入定时器0中断服务;
步骤402:对Tcount0单元进行加一操作;
步骤403:定时器0中断服务结束。
步骤501:进入串口接收中断服务程序,执行步骤502;
步骤502:读取一个字节,保存到GPS数据接收缓存区,接收缓冲区指针后移,重新设置定时器1初值,设置定时器1启动,设置定时器中断使能;
步骤503:串口接收中断服务结束。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应该理解,我们所描述的具体实施例只是说明性的,而不是用于对本发明范围的限定,任何受本发明技术路线启发所作的等效修饰以及变化,都应当涵盖在本发明权利要求所保护的范围内。
Claims (1)
1.一种卫星授时的快速高精度同步方法,由微处理器、GPS/BD模块、电源模块组成,电源模块分别和GPS/BD模块、微处理器相连,微处理器和GPS/BD模块相连,其中GPS/BD模块的PPS信号引脚和微处理器具有中断功能的INT引脚相连,GPS/BD模块的UART引脚和微处理器的UART引脚,微处理器的定时器0最小计数周期为Tf,微处理器的定时器1中断周期为T1,微处理器的UART接收一个字节所需时间为TUART,其特征在于:
1)所述微处理器设置有一个GPS数据时间解析有效标志IsGPS_Time,当进入定时器1中断服务程序时,如果获得了有效的GPS UTC时间,就设置IsGPS_Time为True;
2)所述微处理器,设置有一个PPS中断计数器单元Cpps,设置有一个定时器0计数值单元;当进入INT中断服务程序时,首先关闭定时器0,读取定时器0的计数值临时保存到Timer0,进行Cpps加一操作;然后计算上一次中断到本次中断的时间长度Tpps,进行授时同步判断,当满足999998<Tpps≤1000002且IsGPS_Time=True且Cpps<2时,进行授时同步操作,将GPS UTC的年、月、日、时、分、秒赋值给RTC的相应单元,将RTC的毫秒、微秒清零;
所述微处理器的定时器1中断周期T1,T1=n×TUART,其中n范围为:1.1~50;T1范围为:1~50;
所述的微处理器定时器0,其中断计数器单元为Tcount0,当定时器0中断发生时,Tcount0累计加一;
所述的上一次中断到本次中断的时间长度Tpps,Tpps=(Tcount0×216+Timer0)×Tf。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910885886.5A CN110601785B (zh) | 2019-09-19 | 2019-09-19 | 一种卫星授时的快速高精度同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910885886.5A CN110601785B (zh) | 2019-09-19 | 2019-09-19 | 一种卫星授时的快速高精度同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110601785A CN110601785A (zh) | 2019-12-20 |
CN110601785B true CN110601785B (zh) | 2021-06-11 |
Family
ID=68860963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910885886.5A Active CN110601785B (zh) | 2019-09-19 | 2019-09-19 | 一种卫星授时的快速高精度同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110601785B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111525974B (zh) * | 2020-04-10 | 2023-01-10 | 北京和利时系统集成有限公司 | 一种基于周期授时的时钟同步方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430372A (zh) * | 2007-11-07 | 2009-05-13 | 中国科学院微电子研究所 | 全球定位系统接收机的低成本授时与同步方法及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2981529B1 (fr) * | 2011-10-17 | 2014-07-04 | Alstom Technology Ltd | Procede de synchronisation d'un appareillage connecte a un reseau de communication |
CN105281859B (zh) * | 2014-07-01 | 2018-03-23 | 福建吉星智能科技股份有限公司 | 一种基于gps的精确授时方法 |
CN110515294B (zh) * | 2018-05-22 | 2021-06-01 | 福建师范大学 | 一种嵌入式gps终端的快速高精度授时方法 |
-
2019
- 2019-09-19 CN CN201910885886.5A patent/CN110601785B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430372A (zh) * | 2007-11-07 | 2009-05-13 | 中国科学院微电子研究所 | 全球定位系统接收机的低成本授时与同步方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110601785A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515294B (zh) | 一种嵌入式gps终端的快速高精度授时方法 | |
US7142156B2 (en) | System and method for providing time to a satellite positioning system (SPS) receiver from a networked time server | |
CN110133999B (zh) | 一种基于星云激光点云数采平台的时间同步方法及系统 | |
CN110249372B (zh) | 传感系统及时间同步方法 | |
Koo et al. | Time synchronization for wireless sensors using low-cost gps module and arduino | |
CN202008583U (zh) | 一种同步相量测量装置时钟源 | |
EP3009897A1 (en) | Distribution device, distribution system, and distribution method | |
CN109525351A (zh) | 一种用于与时间基准站实现时间同步的设备 | |
US8825236B2 (en) | Method providing reliability data of long-term predicted orbit data of positioning satellite, apparatus for providing same, and computer program for providing same | |
CN105187148A (zh) | 一种基于arm的网络时钟同步系统及方法 | |
CN100395682C (zh) | 利用北斗卫星导航系统与全球定位系统互备授时的方法及装置 | |
CN109633701A (zh) | 基于守时实验室资源的gnss定时接收机系统延迟校准方法 | |
US20100293243A1 (en) | method and apparatus for measuring directionally differentiated (one-way) network latency | |
CN111831056A (zh) | 一种实时时钟校准模块、方法及一种实时时钟芯片 | |
US20220269223A1 (en) | Wireless time servicing method, device, and system | |
CN110601785B (zh) | 一种卫星授时的快速高精度同步方法 | |
Eidson et al. | Timing in cyber-physical systems: The last inch problem | |
CN1965270B (zh) | 测量时钟抖动 | |
US10598704B2 (en) | Universal grid analyzer | |
CN115865252B (zh) | 一种可设定周期的高精度gnss时间同步方法 | |
CN109039515A (zh) | 一种b码同步的高精度实时时间源生成方法 | |
CN116865896A (zh) | 一种网络授时测试方法和测试设备 | |
CN106647223A (zh) | 原子钟计时的快速稳定实时调整方法 | |
CN211180593U (zh) | 时频检测设备 | |
CN201266923Y (zh) | Gps组合时间频率仪 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231011 Address after: Room 1302, 13th Floor, Building 1, Rongjin Building, No. 8 Aotou Road, Taijiang District, Fuzhou City, Fujian Province, 350009 Patentee after: Fuzhou Chengtou Smart Microcity Industrial Development Co.,Ltd. Address before: 350108 science and technology office, Fujian Normal University, Minhou Town, Minhou Town, Fujian Patentee before: Fujian Normal University |
|
TR01 | Transfer of patent right |