时间修正方法、终端设备、电子设备及存储介质与流程

阅读: 评论:0



1.本申请涉及地图、云技术及大数据领域,具体而言,本申请涉及一种时间修正方法、终端设备、电子设备及存储介质。


背景技术:



2.随着信息技术的不断发展,时间在日常生活、科研、工作、以及国防等中扮演着越来越重要的角。通常情况下,电子设备可以通过与进行信息交互来获得授时,当电子设备处于户外且长时间处于无信号覆盖范围内,或者由于电子设备接收传递的时间存在延迟等因素,导致电子设备的时间不准确时,电子设备可以接收卫星信号来对时间进行修正。
3.现有技术中,电子设备可以获取各个地面北斗跟踪站网的中国北斗卫星导航系统的相位观测值和伪距观测值、实验室原子钟组的中国北斗卫星导航系统时间与北京时间的时差监测数据、中国北斗卫星导航系统卫星星历、地球自转、天线相位中心参数,并对获取数据进行数据检查、粗差剔除和周跳探测的预处理,然后对预处理后的数据进行误差模型改正和精细数据处理,对修正数据进行编码,生成电文,并上传到通信卫星进行播发,然后用户将接收到的修正数据和本机的观测数据进行非差精密授时解算和时差参数修正,从而得到与标准时间一致的用户本地时间。
4.电子设备采用上述方式获取与标准时间一致的用户本地时间时,需要用到原子钟设备和跟踪网数据,原子钟设备价格昂贵,不利于推广,跟踪网数据是保密数据,获取难度较大,且需要对获取的跟踪网数据进行预处理,实现难度也大。


技术实现要素:



5.本申请提供了一种可以降低时间修正难度的时间修正方法、装置、电子设备及存储介质。
6.一方面,提供了一种时间修正方法,该方法由终端设备执行,该方法包括:
7.同步获取各第一卫星的卫星数据,卫星数据包括卫星时钟信息和导航电文;
8.对于每一第一卫星,利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差;
9.基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息;
10.根据时间修正信息对终端设备的本地时间进行修正。
11.另一方面,提供了一种终端设备,该终端设备包括:
12.数据获取模块,用于同步获取各第一卫星的卫星数据,卫星数据包括卫星时钟信息和导航电文;
13.时间修正信息确定模块,用于对于每一第一卫星,利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差、以及基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息;
14.时间修正模块,用于根据时间修正信息对终端设备的本地时间进行修正。
15.在一种可能的实现方式中,时间修正信息确定模块在基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息时,具体用于:
16.通过重复执行以下操作直至所确定的时间修正评估信息满足预设条件,将满足预设条件时的终端设备的钟差确定为终端设备的时间修正信息:
17.对于每一第二卫星,利用上一次操作得到的位置修正信息更新用户位置,并利用更新后的用户位置和第二卫星的卫星位置,确定第二卫星的卫地距,第二卫星属于各所述第一卫星;
18.获取各目标卫星与终端设备之间的传输延迟,各目标卫星属于各第二卫星;
19.基于各目标卫星的卫星钟差、卫地距、以及对应的传输延迟,确定新的时间修正评估信息,并将各目标卫星作为下一操作对应的第二卫星;
20.根据终端设备的钟差修正信息更新终端设备的钟差;
21.其中,时间修正评估信息包括终端设备的位置修正信息和钟差修正信息。
22.在一种可能的实现方式中,对于每一次操作,时间修正信息确定模块还用于:
23.利用更新后的用户位置和各第二卫星的卫星位置,确定各第二卫星的卫星高度角;
24.根据各第二卫星的卫星高度角,从各第二卫星中确定满足预设卫星高度角阈值的各目标卫星。
25.在一种可能的实现方式中,任一目标卫星与终端设备之间的传输延迟包括目标卫星对应的对流层延迟和电离层延迟中的至少一项。
26.在一种可能的实现方式中,传输延迟包括对流层延迟,对于任一目标卫星,时间修正信息确定模块在获取目标卫星与终端设备之间的传输延迟时,具体用于:
27.利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角;
28.根据目标卫星的卫星高度角,确定目标卫星对应的对流层延迟。
29.在一种可能的实现方式中,传输延迟包括电离层延迟,对于任一目标卫星,时间修正信息确定模块在获取目标卫星与终端设备之间的传输延迟时,具体用于:
30.当目标卫星的卫星数据的获取时刻位于预设时间范围内,则将预设的电离层延迟量确定为目标卫星对应的电离层延迟;
31.当目标卫星的卫星数据的获取时刻位于预设时间范围外,则利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角,并根据目标卫星的卫星高度角确定目标卫星对应的电离层延迟。
32.在一种可能的实现方式中,卫星时钟信息包括卫星信号的发射时刻,时间修正信息确定模块在利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差时,具体用于:
33.利用第一卫星对应的卫星信号的发射时刻和导航电文,确定第一卫星的第一卫星钟差;
34.利用第一卫星钟差,更新第一卫星对应的卫星信号的发射时刻;
35.利用第一卫星对应的更新后的发射时刻和导航电文,确定第一卫星的卫星位置和第二卫星钟差,并将第二卫星钟差作为第一卫星的卫星钟差。
36.在一种可能的实现方式中,时间修正评估信息满足预设条件,包括以下至少一项:
37.各个方位的位置修正信息以及钟差修正信息满足第一预设条件,终端设备的位置修正信息包括各个方位的位置修正信息;
38.操作的操作次数满足第二预设条件。
39.在一种可能的实现方式中,数据获取模块具体用于:
40.利用终端设备中全球导航卫星系统(global navigation satellitesystem,gnss)芯片的位置信息获取接口,同步获取各第一卫星的卫星数据。
41.在一种可能的实现方式中,卫星时钟信息包括gnss芯片内部的硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值;
42.时间修正模块具体用于:
43.利用硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值,确定卫星数据的接收时刻;
44.利用时间修正信息,更新卫星信息的接收时刻;
45.获取终端设备接收卫星数据时的本地时间;
46.利用更新后的接收时刻以及本地时间,对终端设备的本地时间进行修正。
47.另一方面,提供了一种电子设备,电子设备包括存储器和处理器,其中,存储器中存储有计算机程序;处理器在运行计算机程序时,执行本申请任一可选实施方式所提供的时间修正方法。
48.另一方面,提供了一种计算机可读存储介质,存储介质中存储有计算机程序,计算机程序被处理器执行时实现本申请任一可选实施方式所提供的时间修正方法。
49.本申请提供的技术方案带来的有益效果是:
50.本申请提供了一种时间修正方法、终端设备、电子设备及存储介质,与现有技术相比,本申请的终端设备通过各卫星的卫星时钟信息,确定各卫星的卫星位置和卫星钟差,并基于各卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息,以根据时间修正信息对终端设备的本地时间进行修正,可以由终端设备实时获取卫星时钟信息,无需利用原子钟设备,也无需获取跟踪网数据并对跟踪网数据进行预处理,降低了信息获取难度,从而降低了时间修正的难度。
附图说明
51.为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
52.图1为本申请实施例提供的一种安卓终端所获取的信息示意图;
53.图2为本申请实施例提供的一种gnss信息的示意图;
54.图3为本申请实施例提供的一种时间修正方法的流程示意图;
55.图4a为本申请实施例提供的一种gnss信号的误差示意图;
56.图4b为本申请实施例提供的一种不同授时方式的授时精度示意图;
57.图5为本申请实施例提供的一种时间修正方法的流程示意图;
58.图6为本申请实施例提供的一种时间修正装置的结构示意图;
59.图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
60.下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
61.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
62.为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
63.下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
64.本申请实施例提供了一种时间修正方法,可以由终端设备通过各卫星的卫星时钟信息,确定各卫星的卫星位置和卫星钟差,并基于各卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息,以根据时间修正信息对终端设备的本地时间进行修正,可以由终端设备实时获取卫星时钟信息,无需利用原子钟设备,也无需获取跟踪网数据并对跟踪网数据进行预处理,降低了信息获取难度,从而降低了时间修正的难度。
65.本申请所提供的各可选实施例中所涉及到的数据处理/数据计算,可以基于云技术实现,具体是可以基于云计算实现。
66.云技术(cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
67.云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
68.作为云计算的基础能力提供商,会建立云计算资源池(简称云平台),一般称为iaas(infrastructure as a service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
69.按照逻辑功能划分,在iaas(infrastructure as a service,基础设施即服务)层上可以部署paas(platform as a service,平台即服务)层,paas层之上再部署saas(software as a service,软件即服务)层,也可以直接将saas部署在iaas上。paas为软件运行的平台,如数据库、web容器等。saas为各式各样的业务软件,如web门户网站、短信发器等。一般来说,saas 和paas相对于iaas是上层。
70.云计算(cloud computing)指it基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是 it和软件、互联网相关,也可是其他服务。云计算是网格计算(gridcomputing)、分布式计算(distributedcomputing)、并行计算(parallelcomputing)、效用计算(utility computing)、网络存储(network storagetechnologies)、虚拟化(virtualization)、负载均衡(load balance)等传统计算机和网络技术发展融合的产物。
71.随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
72.本申请各可选实施例还可以基于大数据实现,大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。随着云时代的来临,大数据也吸引了越来越多的关注,大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。
73.本申请实施例提供了一种时间修正方法,该方法可以由任一电子设备执行,该电子设备可以为终端设备。
74.为了更好的理解和说明本申请实施例,下面首先对本申请实施例所涉及的一些技术用语进行解释说明。
75.全球导航卫星系统(global navigation satellite system,gnss):是能在地球表面或近地空间的任何地点为用户提供全天候的三维坐标和速度以及时间信息的空基无线电导航定位系统。
76.全球定位系统(global positioning system,gps):利用gps定位卫星,在全球范围内实时进行定位、导航的系统。
77.接收机的绝对钟差:接收机一般采用高精度的石英钟,接收机的钟面时与gps标准时之间的差异称为接收机的绝对钟差,通俗来讲,是指gnss 信号到达接收机的时刻与gnss信号被接收机处理的时刻之间的时间差。
78.接收机的相对钟差:接收机的绝对钟差与光速的比值。
79.卫星钟差:指的是卫星时间与标准的gps时间之间的时间差。
80.下面将结合一个具体的可选实施例对本申请的方案进行详细说明,在该可选实施例中,电子设备可以为安卓终端设备,简称安卓终端,也可被称作接收机、测站等,安卓终端设备上设置有位置信息获取接口,该位置信息获取接口可以为位置应用程序接口(location application programming interface,location api),在本申请实施例中可
以简称为位置接口。
81.不同版本的location api可以获取到不同的信息,例如,location api 23可以获取到卫星的方位角、高度角、卫星编号、信噪比以及小批量过程验证测试(pilot

run verification test,pvt)等信息,但无法获取到卫星的原始观测信息,而location api 24除可以获取到上述信息之外,还可以获取到卫星的原始观测信息。
82.如图1所示,图1为本申请实施例提供的一种安卓终端所获取的信息示意图。具体地,安卓终端上的基础配置(basic config)包括安卓系统 (如android 7nougat)和位置接口,这里的位置接口指的是前文提及的location api(如location api 24,location api 23等),安卓终端上携带有gnss芯片组(gnss chipset),gnss芯片组可以获取安卓系统中的配置数据(即config.data),安卓系统也可以获取gnss芯片组中的配置数据。
83.在本申请实施例中,gnss芯片组可以获取gnss信号,搭载有安卓系统的安卓终端可以通过location api获取到gnss导航信息、gnss观测信息以及gnss时钟信息。
84.其中,gnss导航信息包括导航数据、信息标识(message identitydocument,message id)、子帧标识(submessage identity document, submessage id)以及其他信息,一般来说,导航数据包含信息比特流等数据,message id包含子帧的相关数据,submessage id是以字符的形式存在的;gnss观测信息包含gnss信号发射时刻、轨迹状态、载波相位以及其他信息;gnss时钟信息包括gnss信号接收时刻以及时钟偏差等信息。
85.需要说明的是,gnss观测信息中的gnss信号发射时刻是带有误差的gnss信号发射时刻,同样的,gnss时钟信息中的gnss信号接收时刻也是带有误差的gnss信号接收时刻。
86.在实际应用时,可以利用gnss信号接收时刻、时钟偏差以及信号发射时刻等信息,生成伪距。其中,伪距也叫伪距单点定位(single pointpositioning,spp),根据gps卫星星历和一台gps接收机的伪距测量观测值来直接独立确定用户接收机天线在wgs

84坐标系中的绝对坐标的方法叫伪距单点定位,也叫绝对定位,wgs

84是为gps全球定位系统使用而建立的坐标系统。
87.本申请实施例,安卓终端可以通过location api获取到如图2所示的 gnss信息,其中,图2为本申请实施例提供的一种gnss信息的示意图,图2所示的gnss信息仅为部分参数信息,实际应用时,gnss信息包括但不限于如图2所示的参数信息。
88.具体地,图2所示的参数信息包括参数名、参数含义和单位。其中,参数名包括全偏置纳米(fullbiasnanos)、时间纳米(timenanos)、偏置纳米(biasnanos)、硬件时钟不连续计数 (hardwareclockdiscontinutycount)、跳秒(leapsecond)、每秒漂移纳米(driftnanospersecond)、接收航天器(space vehicle,sv)时间纳米(receivedsvtimenanos)、时间不确定纳米(timeuncertaintynanos)。
89.其中,fullbiasnanos的单位为纳秒(nanosecond,ns),其参数含义为安卓终端gnss芯片输出的时间纳米(也就是timenanos)与gps时间系统起始时之间的差异;timenanos的单位为纳秒,其参数含义为 gnss芯片内置硬件钟时间;biasnanos的单位是纳秒,其参数含义为 gnss芯片钟信息的亚纳秒级的偏差;hardwareclockdiscontinutycount 无单位,其参数含义为gnss芯片硬件钟不连续性计数;leapsecond的单位为秒,其参数含义为将时间同步至世界标准时间,也就是为保持协调世界时接近于世界时时刻,由国际计量局统一规定在年底或年中或者季末对协调世界时增加或减少1秒的调整,其中,世界标准时
间也叫协调世界时(universal time coordinated,utc),是以原子时秒长为基础,在时刻上尽量接近于世界时的一种时间计量系统;driftnanospersecond 的单位为纳秒或秒,其参数含义是接收机钟漂速率; receivedsvtimenanos的单位为纳秒,其参数含义是gnss卫星信号发射时刻,其中,该参数采用周内秒计数,即周内秒计数是一种每周日北斗时0点0分0秒从零开始计数的计数方法;timeuncertaintynanos的单位是纳秒,其参数含义为gnss芯片内置不确定度。
90.本申请实施例中,可以利用如下所示的公式(1)

(5)计算得到每一颗卫星的伪距。具体的:
91.可以利用如下所示的公式(1)计算安卓终端在参考系统为gps系统时的gnss信号接收时刻:
92.t
rxgps
=timenanos

(fullbiasnanos+biasnanos)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
93.其中,t
rxgps
表示参考系统为gps系统时的gnss信号接收时刻,其单位为ns,timenanos即为前文所示的时间纳米,fullbiasnanos即为前文所示的全偏置纳米,biasnanos即为前文所示的偏置纳米。
94.需要说明的是,在计算t
rxgps
时,一般只需要使用第一个观测稳定的 fullbiasnanos和biasnanos,当安卓终端中的gnss芯片重启时,需要重新选择fullbiasnanos和biasnanos。这里的t
rxgps
是带有误差的gnss信号接收时刻,需要利用接收机的绝对钟差来修正。
95.本申请实施例中,公式(1)适用于计算参考系统为gps系统时的信号接收时刻,因为对于一般的gnss芯片而言,信号接收时刻的参考系统都是gps系统,也就是说,公式(1)所计算得到的t
rxgps
是在参考系统为 gps系统时的gnss信号接收时刻。在实际应用时,卫星系统可能并不是 gps系统,而不同卫星系统之间存在时间偏差,因此,对于其他的卫星系统,需要利用公式(1)得到的t
rxgps
进行相应的转换,以得到参考系统为自身卫星系统时的卫星信号接收时刻。
96.通常情况下,卫星系统除了gps系统之外,常见的还有伽利略卫星导航系统(galileo satellite navigation system,可以简称为galileo系统)、北斗导航卫星系统(beidou navigation satellite system,bds)、全球导航卫星系统(global avigation satellite system,glonass)等。
97.对于galileo系统,可以利用如下所示的公式(2)将参考系统为gps 系统时的gnss信号接收时刻,转化为参考系统为galileo系统时的gnss 信号接收时刻:
98.t
rxgalileo
=t
rxgps

δt1ꢀꢀꢀꢀꢀꢀꢀ
(2)
99.其中,t
rxgalileo
表示参考系统为galileo系统时的gnss信号接收时刻, t
rxgps
表示参考系统为gps系统时的gnss信号接收时刻,δt1表示galileo 系统与gps系统以一周为时间单位所得到的系统时间差。在计算公式(2),可以以时间单位为纳秒进行计算,这里的t
rxgalileo
是带有误差的gnss信号接收时刻,需要利用接收机的绝对钟差来修正。
100.对于bds,可以利用如下所示的公式(3)将参考系统为gps系统时的gnss信号接收时刻,转化为参考系统为bds时的gnss信号接收时刻:
101.t
rxbds
=t
rxgps

δt2‑
14s
ꢀꢀꢀꢀꢀꢀꢀ
(3)
102.其中,t
rxbds
表示参考系统为bds时的gnss信号接收时刻,t
rxgps
表示参考系统为gps
系统时的gnss信号接收时刻,δt2表示bds与gps 系统以一周为时间单位所得到的系统时间差,公式(3)中的14s指的是 14秒,这里的t
rxbds
是带有误差的gnss信号接收时刻,需要利用接收机的绝对钟差来修正。
103.对于glonass,可以利用如下所示的公式(4)将参考系统为gps 系统时的gnss信号接收时刻,转化为参考系统为glonass时的gnss 信号接收时刻:
104.t
rxglonass
=t
rxgps

δt3+3h

t
leapsecond
ꢀꢀꢀꢀꢀꢀꢀ
(4)
105.其中,t
rxglonass
表示参考系统为glonass时的gnss信号接收时刻, t
rxgps
表示参考系统为gps系统时的gnss信号接收时刻,δt3表示 glonass系统与gps系统以一天为时间单位所得到的系统时间差, t
leapsecond
为前文中所示的跳秒,公式(4)中的3h指的是3小时,这里的t
rxglonass
是带有误差的gnss信号接收时刻,需要利用接收机的绝对钟差来修正。
106.需要说明的是,安卓终端获取到如图2所示的gnss信息时,gnss 信息中的接收航天器时间纳米通常是卫星系统以自身系统为参考系统时的gnss信号发射时刻。也就是说,如果发送gnss信号的系统为gps 系统,则安卓终端获取到的接收航天器时间纳米是参考系统为gps系统时的gnss信号发射时刻,如果发送gnss信号的系统为glonass,则安卓终端获取到的接收航天器时间纳米是参考系统为glonass时的 gnss信号发射时刻。
107.本申请实施例中,可以使用如下所示的公式(5)计算得到伪距:
108.p=(t
rx

t
tx
)
×
c
ꢀꢀꢀꢀ
(5)
109.其中,p表示伪距,t
rx
表示在参考系统为目标系统时的gnss信号接收时刻,t
tx
表示在参考系统为目标系统时的gnss信号发射时刻,c表示光速。其中,目标系统为发送gnss信号的系统,可以包括但不限于gps 系统、galileo系统、bds以及glonass中的任一项,当目标系统为gps 系统时,t
rx
为t
rxgps
;当目标系统为galileo系统时,t
rx
为t
rxgalileo
;当目标系统为bds时,t
rx
为t
rxbds
;当目标系统为glonass时,t
rx
为t
rxglonass

110.需要说明的是,t
rx
和t
tx
均是带有误差的,因此,需要对t
rx
和t
tx
进行校正。本申请实施例中,可以利用卫星钟差校正t
tx
,利用接收机的绝对钟差校正t
rx
。具体如下所示:
111.本申请实施例中,如图3所示,图3为本申请实施例提供的一种时间修正方法的流程示意图。其中,可以采用上述所示的公式(5)计算得到伪距,计算得到伪距后,可以根据伪距和导航电文计算得到卫星位置和卫星钟差,然后,根据用户位置和卫星位置计算卫星高度角和卫地距,根据卫星高度角计算对流层延迟误差,且计算电离层延迟误差,然后,根据伪距、卫星钟差、卫地距、对流层延迟误差和电离层延迟误差计算,计算用户位置修正信息和接收机的相对钟差修正信息,判断是否满足循环结束条件,若不满足循环结束条件,则利用用户位置修正信息更新用户位置,以及利用接收机的相对钟差修正信息更新接收机的相对钟差,并重新开始执行根据用户位置和卫星位置计算卫星高度角和卫地距及其后续步骤,若满足循环结束条件,则利用接收机的相对钟差修正信息更新接收机的相对钟差,并利用修正后的接收机的相对钟差得到gnss信号的准确接收时刻,该gnss信号的准确接收时刻即为安卓设备接收gnss信号时的准确时间,进一步的,位置接口(即lacation api)可以实时获取本地时间,可以根据gnss信号的准确接收时刻和实时获取的本地时间,实时更新本地时间。
112.其中,用户位置也就是安卓终端的位置,导航电文包括电离层参数、卫星的轨道参数和卫星的钟差参数,电离层参数用于计算电离层延迟误差,卫星的轨道参数用于计算卫
星位置,卫星的钟差参数用于计算卫星钟差。
113.可以理解的是,安卓终端接收到的gnss信号是有误差的,如图4a 所示,图4a为本申请实施例提供的一种gnss信号的误差示意图,其中, gnss信号的误差存在三方面,可以分为卫星自身的系统误差、接收机自身的系统误差以及gnss信号的传输误差。
114.在实际应用中,卫星自身的系统误差包括但不限于卫星的天线相位中心偏差、卫星轨道误差、以及卫星钟差。其中,在gps测量中,观测值都是以接收机天线的相位中心位置为准的,而天线的相位中心与其几何中心,在理论上应保持一致,可是实际上天线的相位中心随着信号输入的强度和方向不同而有所变化,即观测时相位中心的瞬时位置(一般称相位中心)与理论上的相位中心将有所不同,这种差别叫天线相位中心的位置偏移,也就是天线相位中心偏差;卫星轨道误差也叫卫星星历误差,是接收机观测到的卫星位置与真实卫星位置之间存在误差。
115.本申请实施例中,gnss信号的传输误差包括但不限于电离层延迟的误差和对流层延迟的误差,其中,对流层延迟误差通常是泛指电磁波信号在通过高度为50km以下的未被电离的中性大气层时所产生的信号延迟误差;电离层延迟误差是由电离层效应引起的观测值误差,电离层是高度在 60

1000km间的大气层,在太阳紫外线、x射线、射线和高能粒子等的作用下,电离层中的中型气体分子部分被电离,产生了大量的电子和正离子,从而形成了一个电离层区域,电磁波信号在穿过电离层的时候,其传播速度会发生变化。
116.接收机自身的系统误差主要包括接收机钟差(这里指接收机的绝对钟差)和接收机相位中心偏差,其中,接收机相位中心偏差也就是上文提及的天线相位中心偏差。
117.本申请实施例中,主要计算卫星钟差、对流层延迟误差以及电离层延迟误差,并根据卫星钟差、对流层延迟误差以及电离层延迟误差估计得到接收机的相对钟差。
118.具体地,对于每一颗卫星,可以根据伪距以及导航电文,可以计算得到卫星钟差。其中,卫星钟差的计算方式如下所示:
119.可以利用参考系统为目标系统时的gnss信号接收时刻t
rx
减去伪距p 与光速c的比值,得到参考系统为目标系统时的gnss信号发射时刻t
tx
。也就是说,可以利用上述所示的公式(5)计算得到t
tx
。需要说明的是,传统接收机是采用上述所示的公式(5)计算得到t
tx
的,在本申请实施例中,由于安卓终端可以获取到t
tx
,因此,无需利用上述公式(5)计算得到t
tx

120.本申请实施例,t
tx
是卫星信号发射时刻,通常情况下,t
tx
是存在误差的。本申请实施例中,可以对t
tx
进行校正得到准确的卫星信号发射时刻。具体地:
121.按照如下所示的公式(6),利用t
tx
计算得到卫星钟差:
[0122][0123]
其中,δt表示卫星钟差,此处的δt是有误差的卫星钟差,a0表示参考时刻t0所对应的卫星钟的钟差,a1表示参考时刻t0所对应的卫星钟的钟速, a2表示参考时刻t0所对应的卫星钟的加速度的一半儿,也就是卫星钟的老化率,t即上述所提及的t
tx
,表示卫星信号发射时刻,是随机项,在本申请实施例中可以不计算该项,也就是说,本申请实施例中该项不具有实际的物理意义。
[0124]
其中,a0、a1以及a2等是通过卫星导航电文发送给终端设备的。
[0125]
进一步地,可以利用t
tx
减去δt,从而得到准确的卫星信号发射时刻,实现对t
tx
进行校正,并按照上述公式(6),利用准确的卫星信号发射时刻计算得到修正后的卫星钟差。
[0126]
本申请实施例中,还可以利用准确的卫星信号发射时刻计算得到卫星位置。计算方式在本申请实施例中不做限定,例如,可以利用现有技术中的卫星位置计算方式,利用准确的卫星信号发射时刻计算得到卫星位置。
[0127]
本申请实施例中,对于每一颗卫星,可以根据用户位置和卫星位置计算卫星高度角和卫地距,其中,卫星高度角指的是从一点至卫星位置的方向线与该点所在的水平面之间的夹角,卫地距指的是用户位置(或者说是接收机位置)与卫星位置之间的距离,其计算方式在本申请实施例中也不做限定。
[0128]
本申请实施例中,可以利用卫星高度角筛选卫星,当卫星高度角小于或者等于预定高度角阈值时,认为该卫星被严重遮挡,该卫星的相关数据误差较大,因此,可以筛选掉该卫星。其中,预定高度角阈值可以为15 度。
[0129]
本申请实施例中,对于每一颗卫星,可以根据卫星高度角计算得到对流层延迟误差,对流层延迟误差的计算方式如下所示:
[0130]
信号在穿越对流层的时候,电磁波信号的传播速度会降低,造成传输时间的加长,从而使得利用时间差计算得到的伪距观测值比实际的卫地距大。对流层延迟主要包含两类,干延迟和湿延迟。干延迟由大气中的干燥气体引起,约占对流层总延迟量的90%,可以采用模型进行改正,湿延迟由大气中的水汽引起,约占总延迟量的10%。并且因为水汽的分布问题与时变特性,湿延迟的模型改正并不能达到一个很高的精度,一般对流层延迟误差主要是由湿延迟引起的。
[0131]
本申请实施例中,可以采用对流层改正模型计算对流层延迟误差,对流层改正模型可以包括但不限于saastamoinen模型、hopfield模型、marini 模型、chao模型、ifadis模型等,当然,也可以采用如下所示的方法精确计算得到对流层延迟误差。
[0132]
本申请实施例中,可以采用如下公式(7)计算gnss信号在传播过程中的对流层延迟误差,这里的对流层延迟误差指的是gnss信号在卫星与接收机之间的连线方向上的对流层延迟误差:
[0133]
std=m
×
ztd
ꢀꢀꢀ
(7)
[0134]
其中,std表示gnss信号在卫星与接收机之间的连线方向上的对流层延迟误差,ztd表示gnss信号在接收机天顶防线方向上的对流层延迟误差,m表示从接收机天顶防线方向投影到卫星与接收机之间的连线方向上对应的投影参数。
[0135]
需要说明的是,本申请实施例无法直接计算得到gnss信号在卫星与接收机之间的连线方向上的对流层延迟误差,但是可以计算得到gnss信号在接收机天顶防线方向上的对流层延迟误差。由于接收机与卫星的连线绝大多数时间是不与地球托球面垂直,因此可以采用映射函数,利用gnss 信号在接收机天顶防线方向上的对流层延迟误差,映射得到gnss信号在卫星与接收机之间的连线方向上的对流层延迟误差。
[0136]
其中,上述公式(7)中的投影参数m可以利用映射函数得到,映射函数包括但不限于nmf(niell mapping function)模型、gmf(globalmapping function)模型等。可以利用卫星高度角和映射函数,得到投影参数m,计算方式在本申请实施例中不做限定。
[0137]
本申请实施例中,可以采用如下所示的公式(8)

(14)计算得到 gnss信号在接收机天顶防线方向上的对流层延迟误差:
[0138]
p=1013.25
×
(1

2.2557
×
10
‑5h)
5.2568
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0139]
t=15

6.5
×
10
‑3h+273.15
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(9)
[0140][0141][0142][0143][0144]
ztd=trph+trpw
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)
[0145]
其中,p表示总的大气压,其单位可以为百帕(hpa),h表示高于平均海平面的大地高,t表示空气的绝对温度,其单位可以为开尔文(k), e表示水汽压,其单位可以为hpa,h
rel
表示相对湿度,也就是空气中水汽压与相同温度下饱和水汽压的百分比,z表示天顶角,其单位可以为弧度 (rad),表示卫星高度角,trph表示干延迟量,表示接收机的纬度, hgt表示测站点高程,也就是本申请实施例中的终端设备的高程,trpw表示湿延迟量,temp表示温度,ztd表示gnss信号在接收机天顶防线方向上的对流层延迟误差。
[0146]
本申请实施例中,可以计算每一颗卫星的电离层延迟误差,电离层延迟误差的计算方式如下所示:
[0147]
电磁波信号在穿过电离层的时候,其传播速度会发生变化,变化的程度主要取决于电离层中的电子密度和信号频率,其传播路径也会略微弯曲,从而使得信号的传播时间乘上光速后得到的距离不等于从信号源至接收机的几何距离。
[0148]
电离层延迟误差可以采用如下所示的公式(15)表示为:
[0149][0150]
其中,i
f
表示电离层延迟误差,f表示gnss信号的频率,n
e
表示电子密度,即单位体积中所含的电子数,s表示gnss信号的传播路径。
[0151]
需要说明的是,电离层延迟误差的大小与测站的地理位置、观测时刻、太阳活动程度等有关。在实际计算电离层延迟误差时,可以采用电离层改正模型计算得到,电离层改正模型包括但不限于klobuchar模型、bent模型、iri模型等。
[0152]
作为一种可选的实现方式,可以采用klobuchar模型得到电离层延迟误差。若当前时间为晚上,则电离层延迟误差为一个常量,通常取值为 5ns;若当前时间为白天,则可以根据卫星星历下发的电离层参数、卫星高度角、卫星方位角、地心经度、地心纬度等数据,输出电离层延迟量。
[0153]
本申请实施例中,可以根据伪距、卫星钟差、卫地距、对流层延迟误差和电离层延迟误差,计算用户位置修正信息和接收机的相对钟差修正信息,其计算方式如下所示:
[0154]
本申请实施例中,可以利用如下所示的公式(16)计算用户位置修正信息和时间修正信息:
[0155][0156]
其中,表示第i颗卫星的伪距,也就是前文公式(5)所提及的p,ρ表示第i颗卫星的卫地距,(v
ion
)
i
表示第i颗卫星的电离层延迟误差,也就是前文公式(15)所提及的i
f
,(v
trop
)
i
表示第i颗卫星的对流层延迟误差,也就是前文公式(7)所提及的std,表示第i颗卫星的卫星钟差,也就是前文所提及的按照公式(6),利用准确的卫星信号发射时刻计算得到修正后的卫星钟差,c表示光速,v
tr
表示接收机的绝对钟差修正信息,cv
tr
表示接收机的相对钟差修正信息。
[0157]
需要说明的是,假设用户在三维坐标系的初始坐标为(x0,y0,z0),则公式(16)可以用泰勒级数展开,得到如下公式(17):
[0158][0159]
其中,表示第i颗卫星的伪距,表示第i颗卫星与用户之间的距离,也就是第i颗卫星的卫地距,(x
i
,y
i
,z
i
)表示卫星在三维坐标系的位置, (v
x
,v
y
,v
z
)表示用户位置在三维坐标系的修正信息,(v
ion
)
i
表示第i颗卫星的电离层延迟误差,(v
trop
)
i
表示第i颗卫星的对流层延迟误差,表示第i颗卫星的卫星钟差,cv
tr
表示接收机的相对钟差修正信息。
[0160]
令其中,(l
i
,m
i
,n
i
)表示在三维坐标系下、用户位置与第i颗卫星位置所构成的向量的三个方向余弦,通常情况下,方向余弦是指在解析几何里,一个向量的三个方向余弦分别是这向量与三个坐标轴之间的角度的余弦。
[0161]
此时,上述公式(17)可以表示为如下所示的公式(18)
[0162][0163]
其中,v
i
表示第i颗卫星伪距对应的新息,剩余参数的含义与公式(17) 相同,可以见上述公式(17)中的相关说明,其中,新息指的是残余误差。
[0164]
本申请实施例中,为计算每颗卫星伪距对应的新息,可以将公式(18) 展开得到如下所示的公式(19):
[0165][0166]
其中,v1,v2,......,v
n
分别表示第1颗,第2颗,......,第n颗卫星的伪距对应的新息,n为正整数,(l1,m1,n1),(l2,m2,n2),......,(l
n
,m
n
,n
n
)分别表示在三维坐标系下、用户位置与第1颗,第2颗,......,第n颗卫星所构成的向量的三个方向余弦,(v
x
,v
y
,v
z
)表示用
户位置在三维坐标系的修正信息,cv
tr
表示接收机的相对钟差修正信息,分别表示第1颗,第2颗,......,第n颗卫星的位置与用户位置之间的距离,也就是第1颗,第2颗,......,第n颗卫星的卫地距,分别表示第1颗,第2颗,......,第n颗卫星的伪距,分别表示第1颗,第2颗,......,第n颗卫星的卫星钟差,(v
ion
)1,(v
ion
)2,......,(v
ion
)
n
分别表示第1颗,第2颗,......,第n颗卫星的电离层延迟误差,(v
trop
)1,(v
trop
)2,......,(v
trop
)
n
分别表示第1颗,第2 颗,......,第n颗卫星的对流层延迟误差。
[0167]
假设最小二乘的原理即为假设的值最小,即的一阶导数值应该为0,因此可以得到如下述公式(20)所示的最小二乘的结果,其中,为的转置矩阵,通常情况下,将矩阵的行列互换得到的新矩阵称为转置矩阵:
[0168][0169]
在公式(20)中,x包含四个参数,分别为v
x
、v
y
、v
z
和cv
tr
,也就是说x=(v
x
,v
y
,v
z
,cv
tr
),(v
x
,v
y
,v
z
)表示用户位置在三维坐标系的修正信息, cv
tr
表示接收机的相对钟差修正信息,b为系数矩阵,可以通过公式(20) 计算得到x。
[0170]
需要说明的是,b是由(l1,m1,n1),(l2,m2,n2),......,(l
n
,m
n
,n
n
)所构成的矩阵,通常情况下,或者, (l1,m1,n1),(l2,m2,n2),......,(l
n
,m
n
,n
n
)分别表示在三维坐标系下、用户位置与第1 颗,第2颗,......,第n颗卫星的位置所构成的向量的三个方向余弦。
[0171]
本申请实施例中,可以判断是否满足循环结束条件,其中,循环结束条件可以是v
x
、v
y
、v
z
和cv
tr
的平方和小于10
‑4,或者,v
x
、v
y
、v
z
和cv
tr
的平方和不大于10
‑4,或者,循环次数大于10,或者循环次数不小于10,其中,这里的10
‑4和10仅是本申请实施例给出的一种可选的实现数值,可以根据实际应用场景,更换这两个数据。
[0172]
本申请实施例中,若不满足循环结束条件,则可以根据如下所示的公式(21)利用用户位置修正信息更新用户位置:
[0173][0174]
其中,(x
i
,y
i
,z
i
)表示在第i次计算后、用户在三维坐标系的更新后的坐标,(x
i
‑1,y
i
‑1,z
i
‑1)表示在第i次计算后、用户在三维坐标系的更新前的坐标,也就是说,第i次计算公式(17)时所使用的用户在三维坐标系的坐标,其中,第一次计算时,用户在三维坐标系的初始坐标为(x0,y0,z0),(v
x
,v
y
,v
z
) 表示用户位置在三维坐标系的修正信息。
[0175]
同时,令可以根据如下所示的公式(22),利用接收机的相对钟差修正信息更新接收机的相对钟差:
[0176][0177]
其中,表示在第i次计算后更新后的接收机的相对钟差,表示在第i次计算后更新前的接收机的相对钟差,也就是cv
tr
,表示第i次计算得到的接收机的相对钟差修正信息。
[0178]
若满足循环结束条件,则可以根据上述公式(22),利用接收机的相对钟差修正信息更新接收机的相对钟差,即利用满足循环结束条件时的与计算得到将作为最终的接收机的相对钟差。
[0179]
进一步的,可以根据接收机的相对钟差得到gnss信号的准确接收时刻。具体地,可以先利用接收机的相对钟差得到gps系统对应的gnss 信号的接收时刻,然后将gps系统对应的gnss信号的接收时刻转换为 utc对应的gnss信号接收时刻,utc对应的gnss信号接收时刻可以作为gnss信号的准确接收时刻。
[0180]
可以按照如下所示的公式(23),利用接收机的相对钟差得到gps 系统对应的gnss信号的接收时刻:
[0181][0182]
本申请实施例中,t
satellitetiming
表示gps系统对应的gnss信号的接收时刻,t
received
表示带有误差的gnss信号接收时刻,也就是前文所提及的t
rx
,就是满足循环结束条件时计算得到的也就是接收机的相对钟差。c表示光速,就是接收机的绝对钟差。
[0183]
按照如下所示的公式(24)将gps系统对应的gnss信号的接收时刻转换为gnss信号的准确接收时刻:
[0184]
t
utc
=t
satellitetiming
+t
leapsecond
ꢀꢀꢀꢀꢀ
(24)
[0185]
其中,t
utc
表示utc对应的gnss信号接收时刻,也就是gnss信号的准确接收时刻,t
satellitetiming
表示gps系统对应的gnss信号的接收时刻, t
leapsecond
为前文中所示的跳秒。
[0186]
全球定位系统是一种无线电导航系统,该系统由24颗地轨工作卫星(21颗主星和3颗备用星)组成的星座构成。每颗卫星都有独立的星载原子钟(铯或铷原子钟)并与协调世界时进行比对,最终溯源至协调世界时。在进行卫星导航系统星座设计时,保证地球上任何地方在任一时间都能收到至少4颗卫星,因此地面的任意地方均可使用gps进行定位和定时,授时的精度在10纳秒量级。因此本申请实施例所提到的方案,对接收机的授时也是在数十钠秒级别,比从接收机直接获取的或者从网络直接获取的时间精度提高了很多。
[0187]
本申请实施例中,位置接口可以实时获取到本地时间,并根据gnss 信号的准确接收时刻和实时获取的本地时间,实时更新本地时间。具体地:
[0188]
接收机利用位置接口获取到gnss信号时,位置接口也可以获取到本地时间,也就是位置接口可以获取到接收gnss信号时的本地时刻。可以根据gnss信号的准确接收时刻和本地时间,计算二者的时间差,也就是按照如下所示的公式(25)计算得到gnss信号的准确接收时刻和接收 gnss信号时的本地时刻之间的时间差:
[0189]
dt=t
utc

t
api
ꢀꢀꢀꢀꢀꢀꢀ
(25)
[0190]
其中,dt表示gnss信号的准确接收时刻和接收gnss信号时的本地时刻之间的时间
差,t
utc
表示gnss信号的准确接收时刻,t
api
表示接收 gnss信号时的本地时刻。
[0191]
本申请实施例,位置接口可以实时获取本地时间,可以按照如下所示的公式(26),根据gnss信号的准确接收时刻和接收gnss信号时的本地时刻之间的时间差、以及实时获取的本地时间,实时更新本地时间:
[0192]
t2=t1+dt
ꢀꢀꢀꢀꢀ
(26)
[0193]
其中,t2表示更新后的本地时间,t1表示位置接口实时获取到的本地时间,dt表示gnss信号的准确接收时刻和接收gnss信号时的本地时刻之间的时间差。
[0194]
本申请实施例中,可以每隔预设时间间隔计算一次gnss信号的准确接收时刻和接收gnss信号时的本地时刻之间的时间差,按照公式(26) 实时更新本地时间,该预设时间间隔可以为30分钟或者1小时或者1天等;也可以实时计算gnss信号的准确接收时刻,以得到稳定、可靠、高精度的本地时间。
[0195]
如图4b所示,图4b为本申请实施例提供的一种不同授时方式的授时精度示意图,其中,授时手段为互联网授时时,其授时精度为10毫秒;授时手段为电话授时时,其授时精度为3.5毫秒;授时手段为短波授时时,其授时精度为1毫秒;授时手段为低频时码授时时,其授时精度为10微秒;授时手段为长波授时时,其授时精度为1微秒;授时手段为卫星授时 (北斗)时,其授时精度为10纳秒;授时手段为卫星共视授时时,其授时精度为5纳秒;授时手段为卫星双向授时时,其授时精度为1纳秒;授时手段为专用光纤双向授时时,其授时精度为10皮秒。
[0196]
利用本申请实施例中的方式对时间进行修正后,时间精度指标可以达到纳秒级,远高于普通的授时方法,且数据获取方式简单,时间修正难度较低。
[0197]
本申请实施例采用的是安卓终端设备的location api可以获取到 gnss原始观测数据,也就是gnss信息,利用gnss原始观测数据即可计算当前的精准时间,不需要提供额外的专业gnss接收机即可完成相应的时间修正,且本申请实施例可以简化时间同步问题,现有技术中,当需要至少两个终端设备进行时间同步的时候,需要将这至少两个终端设备对齐到同一个,接收同一个授时源,操作较为复杂,而本申请实施例中,可以对每一个终端设备,利用本申请实施例提供的方式,对该终端设备时间修正,从而达到使至少两个终端设备时间同步的目的,大大降低了操作复杂度。
[0198]
上述从一个具体实施例的角度详细介绍了本申请实施例的时间修正方法,下面将从方法步骤的角度详细介绍了本申请实施例的时间修正方法。
[0199]
如图5所示,图5为本申请实施例所提供的一种时间修正方法的流程示意图。本申请实施例的时间修正方法包括步骤s51

步骤s54。
[0200]
步骤s51,同步获取各第一卫星的卫星数据,卫星数据包括卫星时钟信息和导航电文。
[0201]
本申请实施例中,卫星数据包括但不限于卫星时钟信息和导航电文,卫星时钟信息可以包括但不限于上述图2所示的各参数,导航电文中包括但不限于电离层参数、卫星的轨道参数和卫星的钟差参数,电离层参数用于计算电离层延迟误差,卫星的轨道参数用于计算卫星位置,卫星的钟差参数用于计算卫星钟差。
[0202]
本申请实施例中,终端设备可以同步获取多个卫星的卫星数据,这里的多个卫星中的每一个卫星,可以作为第一卫星。
[0203]
其中,步骤s51,同步获取各第一卫星的卫星数据,具体可以包括:利用终端设备中gnss芯片的位置信息获取接口,同步获取各第一卫星的卫星数据。
[0204]
本申请实施例中,gnss芯片位于终端设备中,gnss芯片可以是一个芯片,也可以是由两个或者多个芯片组成的芯片组,gnss芯片的位置信息获取接口可以同步获取各第一卫星的卫星数据。其中,位置信息获取接口包括但不限于前文所提及location api。
[0205]
步骤s52,对于每一第一卫星,利用第一卫星的卫星时钟信息,确定第一卫星的卫星位置和卫星钟差。
[0206]
本申请实施例中,对于每一颗第一卫星,利用第一卫星的卫星时钟信息,确定第一卫星的卫星位置和卫星钟差的方式不做限定,可以采用本申请实施例所提供的方式确定,也可以采用现有技术中的其他方式确定,还可以采用网络模型等确定。
[0207]
作为一种可能的实现方式,卫星时钟信息包括卫星信号的发射时刻,步骤s52中,利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差,具体可以包括:
[0208]
利用第一卫星对应的卫星信号的发射时刻和导航电文,确定第一卫星的第一卫星钟差;利用第一卫星钟差,更新第一卫星对应的卫星信号的发射时刻;利用第一卫星对应的更新后的发射时刻和导航电文,确定第一卫星的卫星位置和第二卫星钟差,并将第二卫星钟差作为第一卫星的卫星钟差。
[0209]
本申请实施例中,卫星时钟信息中包括卫星信号发射时刻,也就是前文提及的t
tx
,可以利用前文所提及的公式(6)计算得到第一卫星的第一卫星钟差,这里的第一卫星钟差指的是前文所提及的δt,也就是带有误差的卫星钟差。
[0210]
进一步的,利用第一卫星的第一卫星钟差,更新第一卫星对应的卫星信号的发射时刻时,可以利用第一卫星的卫星信号发射时刻减去第一卫星的第一卫星钟差,从而得到准确的卫星信号发射时刻,将该准确的卫星信号发射时刻作为第一卫星对应的更新后的发射时刻。
[0211]
再进一步的,可以利用第一卫星对应的更新后的发射时刻和导航电文,确定第一卫星的第二卫星钟差,并将第一卫星的第二卫星钟差作为第一卫星的卫星钟差,具体可以根据前文所提及的公式(6)计算得到第一卫星的第二卫星钟差,即使公式(6)中的t等于第一卫星对应的更新后的发射时刻,计算得到的δt可以作为第一卫星的第二卫星钟差。这里的第二卫星钟差是较为准确的卫星钟差。
[0212]
本申请实施例中,还可以利用准确的卫星信号发射时刻计算得到卫星位置,其计算方式在本申请实施例中不做限定,例如,可以采用采用现有技术中的方式确定,也可以采用网络模型等确定。
[0213]
步骤s53,基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息;
[0214]
本申请实施例中,终端设备的时间修正信息即为上文所提及的接收机的相对钟差。
[0215]
作为一种可选的实现方式,步骤s53中,基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息,具体可以包括:
[0216]
重复执行下述所示的目标操作,直至所确定的时间修正评估信息满足预设条件,将满足预设条件时的终端设备的钟差确定为终端设备的时间修正信息,其中,时间修正评
估信息包括终端设备的位置修正信息和钟差修正信息。
[0217]
本申请实施例中,终端设备的位置修正信息指的是前文公式(19)所提及的v
x
、v
y
、v
z
,也就是用户位置在三维坐标系的修正信息;钟差修正信息指的是前文公式(19)所提及的cv
tr
,也就是接收机的相对钟差修正信息;终端设备的钟差指的是前文公式(22)所提及的也就是本次目标操作后得到的更新后的接收机的相对钟差;满足预设条件时的终端设备的钟差,也就是满足循环结束条件时,根据前文公式(22),利用接收机的相对钟差修正信息更新得到的接收机的相对钟差,也就是满足循环结束条件时的目标操作后所得到的更新后的接收机的相对钟差。
[0218]
本申请实施例中,预设条件不做限定,可以根据实际情况针对性设置。
[0219]
作为一个可选的实现方式,时间修正评估信息满足预设条件,具体可以包括方式a1与方式a2中的至少一项。
[0220]
方式a1,各个方位的位置修正信息以及钟差修正信息满足第一预设条件,终端设备的位置修正信息包括各个方位的位置修正信息。
[0221]
本申请实施例中,各个方位的位置修正信息可以为至少两个方位的位置修正信息。作为一个可选的实现方式,各个方位的位置修正信息可以为三个方位的位置修正信息,例如,前文公式(19)所提及的v
x
、v
y
、v
z
,也就是在三维坐标系中的三个方位的位置修正信息;钟差修正信息指的是前文公式(19)所提及的cv
tr

[0222]
作为一个可选的实现方式,各个方位的位置修正信息以及钟差修正信息满足第一预设条件可以为:每一个方位的位置修正信息的平方以及钟差修正信息的平方之和小于或者等于第一设定阈值。例如,第一设定阈值可以为10
‑4,也就是v
x
的平方、v
y
的平方、v
z
的平方和cv
tr
的平方之和小于或等于10
‑4。
[0223]
需要说明的是,每一个方位的位置修正信息的平方以及钟差修正信息的平方之和小于或者等于第一设定阈值仅为一种可能的实现方式,在实际应用过程中,可以采用其他方式判断各个方位的位置修正信息以及钟差修正信息是否满足第一预设条件,例如,可以判断各个方位的位置修正信息以及钟差修正信息之和是否小于或者等于一个设定阈值。
[0224]
方式a2,操作的操作次数满足第二预设条件。
[0225]
本申请实施例中,第二预设条件可以为第二设定阈值,作为一个可能的实现方式,操作的操作次数满足第二预设条件,可以为操作的操作次数大于或者等于第二设定阈值,其中,操作的操作系数也就是前文所提及的循环次数。例如,第二设定阈值可以为10。
[0226]
目标操作包括步骤s531

步骤s534。
[0227]
步骤s531,对于每一第二卫星,利用上一次操作得到的位置修正信息更新用户位置,并利用更新后的用户位置和第二卫星的卫星位置,确定第二卫星的卫地距,第二卫星属于各第一卫星。
[0228]
本申请实施例中,每一次操作后,若时间修正评估信息不满足预设条件,则在下一次操作时,需要利用上一次操作得到的位置修正信息更新用户位置。其中,用户的初始位置可以为设定值,例如用户的初始位置可以为(0,0,0)。
[0229]
在利用上一次操作得到的位置修正信息更新用户位置时,可以利用前文所提及的公式(21)更新用户位置。其中,位置修正信息指的是公式(21) 所提及的v
x
、v
y
、v
z
,(x
i
,y
i
,z
i
)为更新后的用户位置,(x
i
‑1,y
i
‑1,z
i
‑1)为更新前的用户位置。
[0230]
可以利用更新后的用户位置和第二卫星的卫星位置,确定第二卫星的卫地距,其计算方式在本申请实施例中也不做限定,可以采用现有技术中的计算方式计算,也可以采用模型计算等。
[0231]
步骤s532,获取各目标卫星与终端设备之间的传输延迟,各目标卫星属于各第二卫星。
[0232]
本申请实施例中,各目标卫星属于各第二卫星,也就是说,各目标卫星是各第二卫星,或者各目标卫星是从各第二卫星中筛选出的卫星。
[0233]
作为一个可选的实现方式,对于每一次操作,该时间修正方法还可以包括:
[0234]
利用更新后的用户位置和各第二卫星的卫星位置,确定各第二卫星的卫星高度角;根据各第二卫星的卫星高度角,从各第二卫星中确定满足预设卫星高度角阈值的各目标卫星。
[0235]
本申请实施例中,对于每一颗第二卫星,可以利用更新后的用户位置和该第二卫星的卫星位置,计算得到该第二卫星的卫星高度角,然后,根据每一颗第二卫星的卫星高度角,从各第二卫星中确定满足预设卫星高度角阈值的各目标卫星。
[0236]
其中,满足预设卫星高度角阈值可以为卫星高度角小于或者等于预设卫星高度角阈值,预设卫星高度角阈值可以为15度。也就是说,对于每一颗第二卫星,当第二卫星的卫星高度角小于或者等于15度时,认为第二卫星被严重遮挡,第二卫星的相关数据误差较大,因此,可以筛选掉第二卫星,筛选后剩余的每一颗第二卫星可以作为目标卫星。
[0237]
其中,卫星高度角的计算方式不做限定,可以采用现有技术中的方式计算卫星高度角,也可以采用模型等计算卫星高度角。
[0238]
本申请实施例中,对于每一颗目标卫星,目标卫星所发出的信号在传输至终端设备的过程中,存在传输延迟,任一目标卫星与终端设备之间的传输延迟包括目标卫星对应的对流层延迟和电离层延迟中的至少一项。
[0239]
目标卫星对应的对流层延迟指的是前文所提及的目标卫星对应的对流层延迟误差,该对流层延迟误差指的是在卫星与终端设备的连线方向上的对流层延迟误差,也就是前文公式(7)所提及的std;目标卫星对应的电离层延迟指的是前文所提及的目标卫星对应的电离层延迟误差。
[0240]
作为一个可选的实现方式,传输延迟包括对流层延迟,步骤s532中,对于任一目标卫星,获取目标卫星与终端设备之间的传输延迟,具体可以包括:
[0241]
利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角;根据目标卫星的卫星高度角,确定目标卫星对应的对流层延迟。
[0242]
本申请实施例中,可以利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角,然后,根据目标卫星的卫星高度角,利用前文所提及的公式(7)

(14)计算得到目标卫星对应的对流层延迟,该对流层延迟指的是前文公式(7)所提及的在卫星与终端设备的连线方向上的对流层延迟误差std。
[0243]
作为一种可能的实现方式,传输延迟包括电离层延迟,对于任一目标卫星,获取目标卫星与终端设备之间的传输延迟,具体可以包括:
[0244]
若目标卫星的卫星数据的获取时刻位于预设时间范围内,则将预设的电离层延迟量确定为目标卫星对应的电离层延迟;若目标卫星的卫星数据的获取时刻位于预设时间范
围外,则利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角,并根据目标卫星的卫星高度角确定目标卫星对应的电离层延迟。
[0245]
本申请实施例中,可以采用电离层改正模型计算电离层延迟误差,预设时间范围可以为晚上对应的时间范围,预设的电离层延迟量不做限定,可以根据实际场景针对性的设定。
[0246]
例如,预设时间范围可以为0点至5点以及18点至24点所构成的时间范围,预设的电离层延迟量可以为5ns。也就是说,若目标卫星的卫星数据的获取时刻位于0点至5点以及18点至24点所构成的时间范围内,则将5ns确定为目标卫星对应的电离层延迟;若目标卫星的卫星数据的获取时刻位于5点至18点所构成的时间范围内,则利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角,并根据目标卫星的卫星高度角确定目标卫星对应的电离层延迟。
[0247]
其中,电离层改正模型可以根据目标卫星的卫星高度角确定目标卫星对应的电离层延迟,具体地,可以将电离层参数、卫星高度角、卫星方位角、地心经度、地心纬度等数据输入至电离层改正模型中,由电离层改正模型输出电离层延迟量。
[0248]
本申请实施例中,电离层改正模型的模型架构不做限定。
[0249]
步骤s533,基于各目标卫星的卫星钟差、卫地距、以及对应的传输延迟,确定新的时间修正评估信息,并将各目标卫星作为下一操作对应的第二卫星。
[0250]
本申请实施例中,可以采用前文所提及的公式(16),利用各目标卫星的卫星钟差、卫地距、以及对应的传输延迟,确定新的时间修正评估信息,计算方式可以见前文对公式(16)的处理方式,在此不做赘述。可以根据公式(16),计算得到时间修正评估信息,如前述所提及,时间修正评估信息包括v
x
、v
y
、v
z
以及cv
tr

[0251]
其中,对于任一个目标卫星,卫星时钟信息包括卫星信号的发射时刻、 gnss芯片内部的硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值。其中,卫星信号的发射时刻也就是前文提及的t
tx
,gnss芯片内部的硬件钟的时间也就是前文所提及的timenanos,硬件钟的偏置也就是前文所提及的biasnanos,硬件钟的时间与时间定位系统的时间之间的差值也就是前文所提及的fullbiasnanos。
[0252]
本申请实施例中,对于每一个目标卫星,可以利用timenanos、 biasnanos以及fullbiasnanos计算得到卫星数据的接收时刻,也就是前文公式(5)所提及的t
rx
,t
rx
可以为t
rxgps
、t
rxgalileo
、t
rxbds
、以及t
rxglonass
等中的任一项,是根据卫星自身系统而定,其中,由于终端设备是同步获取各第一卫星的卫星数据的,因此,各目标卫星的卫星数据的接收时刻是相同的。
[0253]
对于每一个目标卫星,根据t
rx
、目标卫星的卫星信号的发射时刻t
tx
以及光速,按照前文所提及的公式(5)计算得到伪距p,该伪距可以作为公式(16)中的。
[0254]
需要说明的是,如前文所提及的,可以利用第一卫星钟差,更新第一卫星对应的卫星信号的发射时刻,因此,对于每一个目标卫星,也可以根据t
rx
、更新后的目标卫星的卫星信号的发射时刻t
tx
以及光速,按照前文所提及的公式(5)计算得到伪距p,该伪距可以作为公式(16)中的。
[0255]
步骤s534,根据终端设备的钟差修正信息更新终端设备的钟差。
[0256]
本申请实施例中,在每一次循环时,可以按照前文提及的公式(22),根据终端设备的钟差修正信息更新终端设备的钟差,其中,更新后的终端设备的钟差也就是公式(22)中的更新前的终端设备的钟差也就是公式(22)中终端设备的钟差修正信息也就是公式(22)中的
[0257]
步骤s54,根据时间修正信息对终端设备的本地时间进行修正。
[0258]
本申请实施例中,时间修正信息即为上文所提及的接收机的相对钟差,可以利用接收机的相对钟差对终端设备的本地时间进行修正。
[0259]
作为一个可选的实现方式,卫星时钟信息包括gnss芯片内部的硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值;
[0260]
根据时间修正信息对终端设备的本地时间进行修正,具体可以包括:
[0261]
利用硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值,确定卫星数据的接收时刻;利用时间修正信息,更新卫星信息的接收时刻;获取终端设备接收卫星数据时的本地时间;利用更新后的接收时刻以及本地时间,对终端设备的本地时间进行修正。
[0262]
gnss芯片内部的硬件钟的时间也就是前文所提及的timenanos,硬件钟的偏置也就是前文所提及的biasnanos,硬件钟的时间与时间定位系统的时间之间的差值也就是前文所提及的fullbiasnanos。对于每一个目标卫星,可以利用timenanos、biasnanos以及fullbiasnanos计算得到卫星数据的接收时刻,也就是前文公式(5)所提及的t
rx
,t
rx
可以为t
rxgps
、 t
rxgalileo
、t
rxbds
、以及t
rxglonass
等中的任一项,是根据卫星自身系统而定,其中,由于终端设备是同步获取各第一卫星的卫星数据的,因此,各目标卫星的卫星数据的接收时刻是相同的。
[0263]
本申请实施例中,可以按照前述提及的公式(23)和(24)利用接收机的相对钟差更新卫星信息的接收时刻,其中,公式(23)中的t
received
指的是计算得到的卫星数据的接收时刻,公式(24)中的t
utc
指的是更新后的卫星数据的接收时刻,指的是终端设备的时间修正信息,也就是接收机的相对钟差。
[0264]
本申请实施例中,在终端设备同步获取各第一卫星的卫星数据时,终端设备可以通过位置信息获取接口同步获取本地时间,然后按照前文所提及的公式(25)

公式(26),利用更新后的接收时刻以及本地时间,对终端设备的本地时间进行修正,其中,公式(25)中t
utc
指的是更新后的卫星数据的接收时刻,t
api
指的是终端设备同步获取的本地时间,公式(26) 中的t2指的是修正后的本地时间。
[0265]
本申请实施例提供了一种时间修正方法,与现有技术相比,本申请实施例的终端设备通过各卫星的卫星时钟信息,确定各卫星的卫星位置和卫星钟差,并基于各卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息,以根据时间修正信息对终端设备的本地时间进行修正,可以由终端设备实时获取卫星时钟信息,无需利用原子钟设备,也无需获取跟踪网数据并对跟踪网数据进行预处理,降低了信息获取难度,从而降低了时间修正的难度。
[0266]
上述从方法步骤的角度具体阐述了时间修正方法,下面从虚拟模块的角度介绍终端设备,具体如下所示:
[0267]
本申请实施例提供了一种终端设备装置,如图6所示,该终端设备装置60可以包括:数据获取模块601、时间修正信息确定模块602以及时间修正模块603,其中,
[0268]
数据获取模块601,用于同步获取各第一卫星的卫星数据,卫星数据包括卫星时钟信息和导航电文;
[0269]
时间修正信息确定模块602,用于对于每一第一卫星,利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差、以及基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息;
[0270]
时间修正模块603,用于根据时间修正信息对终端设备的本地时间进行修正。
[0271]
在一种可能的实现方式中,时间修正信息确定模块602在基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息时,具体用于:
[0272]
通过重复执行以下操作直至所确定的时间修正评估信息满足预设条件,将满足预设条件时的终端设备的钟差确定为终端设备的时间修正信息:
[0273]
对于每一第二卫星,利用上一次操作得到的位置修正信息更新用户位置,并利用更新后的用户位置和第二卫星的卫星位置,确定第二卫星的卫地距,第二卫星属于各所述第一卫星;
[0274]
获取各目标卫星与终端设备之间的传输延迟,各目标卫星属于各第二卫星;
[0275]
基于各目标卫星的卫星钟差、卫地距、以及对应的传输延迟,确定新的时间修正评估信息,并将各目标卫星作为下一操作对应的第二卫星;
[0276]
根据终端设备的钟差修正信息更新终端设备的钟差;
[0277]
其中,时间修正评估信息包括终端设备的位置修正信息和钟差修正信息。
[0278]
在一种可能的实现方式中,对于每一次操作,时间修正信息确定模块 602还用于:
[0279]
利用更新后的用户位置和各第二卫星的卫星位置,确定各第二卫星的卫星高度角;
[0280]
根据各第二卫星的卫星高度角,从各第二卫星中确定满足预设卫星高度角阈值的各目标卫星。
[0281]
在一种可能的实现方式中,任一目标卫星与终端设备之间的传输延迟包括目标卫星对应的对流层延迟和电离层延迟中的至少一项。
[0282]
在一种可能的实现方式中,传输延迟包括对流层延迟,对于任一目标卫星,时间修正信息确定模块602在获取目标卫星与终端设备之间的传输延迟时,具体用于:
[0283]
利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角;
[0284]
根据目标卫星的卫星高度角,确定目标卫星对应的对流层延迟。
[0285]
在一种可能的实现方式中,传输延迟包括电离层延迟,对于任一目标卫星,时间修正信息确定模块602在获取目标卫星与终端设备之间的传输延迟时,具体用于:
[0286]
当目标卫星的卫星数据的获取时刻位于预设时间范围内,则将预设的电离层延迟量确定为目标卫星对应的电离层延迟;
[0287]
当目标卫星的卫星数据的获取时刻位于预设时间范围外,则利用更新后的用户位置和目标卫星的卫星位置,确定目标卫星的卫星高度角,并根据目标卫星的卫星高度角确定目标卫星对应的电离层延迟。
[0288]
在一种可能的实现方式中,卫星时钟信息包括卫星信号的发射时刻,时间修正信
息确定模块602在利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差时,具体用于:
[0289]
利用第一卫星对应的卫星信号的发射时刻和导航电文,确定第一卫星的第一卫星钟差;
[0290]
利用第一卫星钟差,更新第一卫星对应的卫星信号的发射时刻;
[0291]
利用第一卫星对应的更新后的发射时刻和导航电文,确定第一卫星的卫星位置和第二卫星钟差,并将第二卫星钟差作为第一卫星的卫星钟差。
[0292]
在一种可能的实现方式中,时间修正评估信息满足预设条件,包括以下至少一项:
[0293]
各个方位的位置修正信息以及钟差修正信息满足第一预设条件,终端设备的位置修正信息包括各个方位的位置修正信息;
[0294]
操作的操作次数满足第二预设条件。
[0295]
在一种可能的实现方式中,数据获取模块601具体用于:
[0296]
利用终端设备中全球导航卫星系统(global navigation satellitesystem,gnss)芯片的位置信息获取接口,同步获取各第一卫星的卫星数据。
[0297]
在一种可能的实现方式中,卫星时钟信息包括gnss芯片内部的硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值;
[0298]
时间修正模块603具体用于:
[0299]
利用硬件钟的时间、硬件钟的偏置、以及硬件钟的时间与时间定位系统的时间之间的差值,确定卫星数据的接收时刻;
[0300]
利用时间修正信息,更新卫星信息的接收时刻;
[0301]
获取终端设备接收卫星数据时的本地时间;
[0302]
利用更新后的接收时刻以及本地时间,对终端设备的本地时间进行修正。
[0303]
本申请实施例的终端设备可执行本申请上述任一实施例所示的时间修正方法,其实现原理相类似,此处不再赘述。
[0304]
本申请实施例提供了一种终端设备,与现有技术相比,本申请实施例的终端设备通过各卫星的卫星时钟信息,确定各卫星的卫星位置和卫星钟差,并基于各卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息,以根据时间修正信息对终端设备的本地时间进行修正,可以由终端设备实时获取卫星时钟信息,无需利用原子钟设备,也无需获取跟踪网数据并对跟踪网数据进行预处理,降低了信息获取难度,从而降低了时间修正的难度。
[0305]
上述从虚拟模块或者虚拟单元的角度介绍本申请的终端设备,下面从实体装置的角度介绍本申请的电子设备。
[0306]
本申请实施例提供了一种电子设备,如图7所示,图7所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
[0307]
处理器4001可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0308]
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是pci总线或eisa总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0309]
存储器4003可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd

rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0310]
存储器4003用于存储执行本申请方案的计算机程序,并由处理器 4001来控制执行。处理器4001用于执行存储器4003中存储的计算机程序,以实现前述任一方法实施例所示的内容。
[0311]
本申请实施例提供了一种电子设备,本申请实施例中的电子设备包括:存储器和处理器,其中,存储器中存储有计算机程序;处理器在运行计算机程序时,执行本申请任一可选实施方式所提供的时间修正方法。
[0312]
上述从实体装置的角度介绍本申请的电子设备,下面从存储介质的角度介绍本申请的计算机可读存储介质。
[0313]
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
[0314]
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法实施例涉及的各种可选实现方式中提供的方法。
[0315]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0316]
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

技术特征:


1.一种时间修正方法,其特征在于,所述方法由终端设备执行,所述方法包括:同步获取各第一卫星的卫星数据,所述卫星数据包括卫星时钟信息和导航电文;对于每一所述第一卫星,利用所述第一卫星的卫星数据,确定所述第一卫星的卫星位置和卫星钟差;基于各所述第一卫星的卫星位置和卫星钟差,确定所述终端设备的时间修正信息;根据所述时间修正信息对所述终端设备的本地时间进行修正。2.根据权利要求1所述的方法,其特征在于,所述基于各所述第一卫星的卫星位置和卫星钟差,确定所述终端设备的时间修正信息,包括:通过重复执行以下操作直至所确定的时间修正评估信息满足预设条件,将满足预设条件时的终端设备的钟差确定为所述终端设备的时间修正信息:对于每一所述第二卫星,利用上一次操作得到的位置修正信息更新用户位置,并利用更新后的用户位置和所述第二卫星的卫星位置,确定所述第二卫星的卫地距,所述第二卫星属于各所述第一卫星;获取各所述目标卫星与所述终端设备之间的传输延迟,各所述目标卫星属于各所述第二卫星;基于各所述目标卫星的卫星钟差、卫地距、以及对应的传输延迟,确定新的时间修正评估信息,并将各所述目标卫星作为下一操作对应的所述第二卫星;根据所述终端设备的钟差修正信息更新所述终端设备的钟差;其中,所述时间修正评估信息包括所述终端设备的位置修正信息和钟差修正信息。3.根据权利要求2所述的方法,其特征在于,对于每一次所述操作,所述方法还包括:利用更新后的用户位置和各所述第二卫星的卫星位置,确定各所述第二卫星的卫星高度角;根据各所述第二卫星的卫星高度角,从各所述第二卫星中确定满足预设卫星高度角阈值的各目标卫星。4.根据权利要求2所述的方法,其特征在于,任一所述目标卫星与所述终端设备之间的传输延迟包括所述目标卫星对应的对流层延迟和电离层延迟中的至少一项。5.根据权利要求4所述的方法,其特征在于,所述传输延迟包括对流层延迟,对于任一所述目标卫星,获取所述目标卫星与所述终端设备之间的传输延迟,包括:利用更新后的用户位置和所述目标卫星的卫星位置,确定所述目标卫星的卫星高度角;根据所述目标卫星的卫星高度角,确定所述目标卫星对应的对流层延迟。6.根据权利要求4所述的方法,其特征在于,所述传输延迟包括电离层延迟,对于任一所述目标卫星,获取所述目标卫星与所述终端设备之间的传输延迟,包括:若所述目标卫星的卫星数据的获取时刻位于预设时间范围内,则将预设的电离层延迟量确定为所述目标卫星对应的电离层延迟;若所述目标卫星的卫星数据的获取时刻位于预设时间范围外,则利用更新后的用户位置和所述目标卫星的卫星位置,确定所述目标卫星的卫星高度角,并根据所述目标卫星的卫星高度角确定所述目标卫星对应的电离层延迟。7.根据权利要求1

6任一项所述的方法,其特征在于,所述卫星时钟信息包括卫星信号
的发射时刻,所述利用所述第一卫星的卫星数据,确定所述第一卫星的卫星位置和卫星钟差,包括:利用所述第一卫星对应的卫星信号的发射时刻和导航电文,确定所述第一卫星的第一卫星钟差;利用所述第一卫星钟差,更新所述第一卫星对应的卫星信号的发射时刻;利用所述第一卫星对应的更新后的发射时刻和导航电文,确定所述第一卫星的卫星位置和第二卫星钟差,并将所述第二卫星钟差作为所述第一卫星的卫星钟差。8.根据权利要求2所述的方法,其特征在于,所述时间修正评估信息满足预设条件,包括以下至少一项:各个方位的位置修正信息以及所述钟差修正信息满足第一预设条件,所述终端设备的位置修正信息包括所述各个方位的位置修正信息;所述操作的操作次数满足第二预设条件。9.根据权利要求1

6任一项所述的方法,其特征在于,所述同步获取各第一卫星的卫星数据,包括:利用所述终端设备中全球导航卫星系统gnss芯片的位置信息获取接口,同步获取各第一卫星的卫星数据。10.根据权利要求9所述的方法,其特征在于,所述卫星时钟信息包括所述gnss芯片内部的硬件钟的时间、所述硬件钟的偏置、以及所述硬件钟的时间与时间定位系统的时间之间的差值;所述根据所述时间修正信息对所述终端设备的本地时间进行修正,包括:利用所述硬件钟的时间、所述硬件钟的偏置、以及所述硬件钟的时间与时间定位系统的时间之间的差值,确定所述卫星数据的接收时刻;利用所述时间修正信息,更新所述卫星信息的接收时刻;获取所述终端设备接收所述卫星数据时的本地时间;利用更新后的接收时刻以及所述本地时间,对所述终端设备的本地时间进行修正。11.一种终端设备,其特征在于,所述终端设备包括:数据获取模块,用于同步获取各第一卫星的卫星数据,所述卫星数据包括卫星时钟信息和导航电文;时间修正信息确定模块,用于对于每一所述第一卫星,利用所述第一卫星的卫星数据,确定所述第一卫星的卫星位置和卫星钟差、以及基于各所述第一卫星的卫星位置和卫星钟差,确定所述终端设备的时间修正信息;时间修正模块,用于根据所述时间修正信息对所述终端设备的本地时间进行修正。12.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,其中,所述存储器中存储有计算机程序;所述处理器在运行所述计算机程序时,执行权利要求1~10任一项所述的方法。13.一种计算机可读存储介质,所述存储介质中存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~10任一项所述的方法。

技术总结


本申请实施例提供了一种时间修正方法、终端设备、电子设备及存储介质,涉及地图、云技术及大数据领域。该方法由终端设备执行,包括:同步获取各第一卫星的卫星数据,卫星数据包括卫星时钟信息和导航电文;对于每一第一卫星,利用第一卫星的卫星数据,确定第一卫星的卫星位置和卫星钟差;基于各第一卫星的卫星位置和卫星钟差,确定终端设备的时间修正信息;根据时间修正信息对终端设备的本地时间进行修正。本申请实施例降低了信息获取难度,从而降低了时间修正的难度。间修正的难度。间修正的难度。


技术研发人员:

储超

受保护的技术使用者:

腾讯科技(深圳)有限公司

技术研发日:

2020.12.07

技术公布日:

2021/4/17

本文发布于:2022-11-28 01:19:23,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/9140.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时间   终端设备   信息   位置
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图