【技术实现步骤摘要】
一种通过解析卫星导航数据同步时间的方法及装置
本专利技术涉及数据处理领域,尤其涉及一种通过解析卫星导航数据同步时间的方法及装置。
技术介绍
随着信息技术和网络技术的高速发展,设备对时间的精准性的要求越来越高。现有技术中,一般采用网络授时来同步时间,网络授时是在网络上指定若干能够相互比对的时钟源网站为用户提供授时服务。网络授时以通信信道为媒介同步授时,如计算机网络、电话网络,这种授时方式需要占用信道时间,对信道的可靠性要求高,而且由于时间信号通过信道传送到不同设备的延时不同,只能满足中等精度时间的要求。因此,如何提供一种高精度同步时间的方法成为一个亟待解决的技术问题。
技术实现思路
本专利技术的目的是提供一种通过解析卫星导航数据同步时间的方法及装置,实现高精准同步时间。第一方面,本专利技术提供了一种通过解析卫星导航数据同步时间的方法,包括如下步骤:步骤101:服务应用获取系统当前时间并缓存为第一时间变量,通过串口接收卫星导航数据,解析所述卫星导航数据得到所述卫星导航数据包含的全部字符串并保存;步骤102:所述服务应用获取一个保存的字符串作为当前待处理字符串,从当前待处理字符串的卫星系统标识符中获取系统协议标识符,判断所述系统协议标识符的类型,如为预设系统协议标识符,执行步骤103,否则,执行步骤104;步骤103:所述服务应用将当前待处理字符串的时间字段域转换为当前待处理字符串的本地时区时间值并保存,执行步骤104;步骤104:所述服务应用判断是否还存在未获取 ...
【技术保护点】
1.一种通过解析卫星导航数据同步时间的方法,其特征在于,所述方法包括如下步骤:/n步骤101:服务应用获取系统当前时间并缓存为第一时间变量,通过串口接收卫星导航数据,解析所述卫星导航数据得到所述卫星导航数据包含的全部字符串并保存;/n步骤102:所述服务应用获取一个保存的字符串作为当前待处理字符串,从当前待处理字符串的卫星系统标识符中获取系统协议标识符,判断所述系统协议标识符的类型,如为预设系统协议标识符,执行步骤103,否则,执行步骤104;/n步骤103:所述服务应用将当前待处理字符串的时间字段域转换为当前待处理字符串的本地时区时间值并保存,执行步骤104;/n步骤104:所述服务应用判断是否还存在未获取过的待处理字符串,如果是,返回步骤102,否则,执行步骤105;/n步骤105:所述服务应用获取系统当前时间并保存为第二时间变量,根据保存的第一时间变量和第二时间变量得到第一时间补偿值;/n步骤106:所述服务应用从保存的所有本地时区时间值中获取数值最大的本地时区时间值,根据第一时间补偿值和数值最大的本地时区时间值得到卫星导航时间;/n步骤107:所述服务应用将系统当前时间设置为所 ...
【技术特征摘要】
1.一种通过解析卫星导航数据同步时间的方法,其特征在于,所述方法包括如下步骤:
步骤101:服务应用获取系统当前时间并缓存为第一时间变量,通过串口接收卫星导航数据,解析所述卫星导航数据得到所述卫星导航数据包含的全部字符串并保存;
步骤102:所述服务应用获取一个保存的字符串作为当前待处理字符串,从当前待处理字符串的卫星系统标识符中获取系统协议标识符,判断所述系统协议标识符的类型,如为预设系统协议标识符,执行步骤103,否则,执行步骤104;
步骤103:所述服务应用将当前待处理字符串的时间字段域转换为当前待处理字符串的本地时区时间值并保存,执行步骤104;
步骤104:所述服务应用判断是否还存在未获取过的待处理字符串,如果是,返回步骤102,否则,执行步骤105;
步骤105:所述服务应用获取系统当前时间并保存为第二时间变量,根据保存的第一时间变量和第二时间变量得到第一时间补偿值;
步骤106:所述服务应用从保存的所有本地时区时间值中获取数值最大的本地时区时间值,根据第一时间补偿值和数值最大的本地时区时间值得到卫星导航时间;
步骤107:所述服务应用将系统当前时间设置为所述卫星导航时间。
2.如权利要求1所述的方法,其特征在于,所述步骤101还包括:所述服务应用将第二时间补偿值设置为初始值;
所述步骤102还包括:如所述服务应用判断所述系统协议标识符的类型为第三系统协议标识符,判断当前待处理字符串是否存在时间字段域,如果是,所述服务应用使用当前待处理字符串的时间字段域更新第二时间补偿值,然后执行步骤104,否则,直接执行步骤104;
所述步骤106具体为:所述服务应用从保存的所有本地时区时间值中获取数值最大的本地时区时间值,根据所述第一时间补偿值、所述第二时间补偿值和数值最大的本地时区时间值得到卫星导航时间。
3.如权利要求2所述的方法,其特征在于,所述判断当前待处理字符串是否存在时间字段域,具体为:所述服务应用根据第四预设标识符拆分当前待处理字符串得到当前待处理字符串包含的全部字段域,判断当前待处理字符串包含的全部字段域的个数是否为第一预设值,如果是,判定当前待处理字符串存在时间字段域,否则,判定当前待处理字符串不存在时间字段域。
4.如权利要求1所述的方法,其特征在于,所述步骤101中,解析所述卫星导航数据得到所述卫星导航数据包含的全部字符串并保存,具体为:所述服务应用根据第一预设标识符拆分所述卫星导航数据得到所述卫星导航数据包含的全部字符串,将卫星导航数据包含的全部字符串保存在第一存储区。
5.如权利要求4所述的方法,其特征在于,所述服务应用根据第一预设标识符拆分所述卫星导航数据得到所述卫星导航数据包含的全部字符串,具体为:
步骤B1:所述服务应用判断所述卫星导航数据中是否存在第一预设标识符,如果是,将所述卫星导航数据作为当前待拆分卫星导航数据,执行步骤B2,否则,报错并结束;
步骤B2:所述服务应用从当前待拆分卫星导航数据的起始位置开始获取第一预设标识符,截取当前获取到的第一预设标识符之前的数据得到当前字符串并保存在第一存储区,将当前获取到的第一预设标识符之后的待拆分卫星导航数据作为新的当前待拆分卫星导航数据;
步骤B3:所述服务应用判断当前待拆分卫星导航数据中是否还存在第一预设标识符,如果是,返回步骤B2,否则,获取第一存储区中的全部字符串得到所述卫星导航数据包含的全部字符串。
6.如权利要求1所述的方法,其特征在于,所述步骤101之前还包括:所述服务应用向系统注册用于启动定时任务线程的组件,在启动的定时任务线程中打开串口。
7.如权利要求6所述的方法,其特征在于,所述服务应用向系统注册用于启动定时任务线程的组件,在启动的定时任务线程中打开串口,具体包括:
步骤A1:所述服务应用向系统注册授时服务组件和守护进程服务组件;
步骤A2:所述服务应用在所述守护进程服务组件中监听所述授时服务组件的状态;
步骤A3:所述服务应用判断所述授时服务组件的状态是否处于存活状态,如果是,执行步骤A4,否则,执行步骤A5;
步骤A4:所述服务应用向所述系统注册开机自动启动广播组件,在所述开机自动启动广播组件中监听终端的开机广播,判断是否接收到开机广播,如果是,执行步骤A5,否则,继续执行步骤A4;
步骤A5:所述服务应用启动所述授时服务组件,在所述授时服务组件中启动定时任务线程;
步骤A6:所述服务应用在所述定时任务线程中打开串口,判断是否打开成功,如果是,执行步骤101,否则,报错并结束。
8.如权利要求1所述的方法,其特征在于,所述步骤102中,从当前待处理字符串的卫星系统标识符中获取系统协议标识符之前还包括:
步骤M1:所述服务应用判断当前待处理字符串中是否存在第二预设标识符和第三预设标识符,如均存在,执行步骤M2,否则,执行步骤104;
步骤M2:所述服务应用从所述当前待处理字符串中截取第二预设标识符和第三预设标识符之间的数据得到第一待处理数据,截取第三预设标识符之后的数据得到第二待处理数据;
步骤M3:所述服务应用对所述第一待处理数据进行异或运算得到第一校验值,将所述...
【专利技术属性】
技术研发人员:陆舟,于华章,
申请(专利权)人:飞天诚信科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。