
1.本技术属于定位技术领域,尤其涉及一种定位方法、装置、设备、介质及产品。
背景技术:2.精密单点定位是接收机通过接收服务端播发的精密卫星轨道、卫星钟差和伪距载波硬件偏差改正数进行定位结算,能够实现厘米级的定位精度。在测量测绘、航海、航空、无人驾驶等领域得到了广泛应用。
3.然而,在实际应用中,受接收机硬件的影响,定位延时较高。
技术实现要素:4.本技术实施例提供一种定位方法、装置、设备、介质及产品,能够解决定位延时高的问题。
5.第一方面,本技术实施例提供一种定位方法,包括:
6.获取终端在第一历元获取到的第一全球导航卫星系统(global navigation satellite system,gnss)观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚于第一历元;
7.根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。
8.第二方面,本技术实施例提供一种定位装置,包括:
9.获取模块,用于获取终端在第一历元获取到的第一gnss观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚于第一历元;
10.递推模块,用于根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。
11.第三方面,本技术实施例提供一种电子设备,该电子设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一方面的定位方法。
12.第四方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面的定位方法。
13.第五方面,本技术实施例提供了一种计算机程序产品,计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备执行如第一方面的定位方法。
14.在本技术实施例中,通过获取终端在第一历元获取到的第一gnss观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚于第一历元;根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。如此,在第三历元通过递推即可得到第三历元对应的定位递推结果,相比于相关技术中通过滤波解算得到定位解算结果,得到定位结果的时间较短,能够降低定位延时。
附图说明
15.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
16.图1是本技术实施例提供的定位方法的流程示意图;
17.图2是本技术实施例提供的各个历元的第一种示意图;
18.图3是本技术实施例提供的各个历元的第二种示意图;
19.图4是本技术实施例提供的定位解算步长分块的分布示意图;
20.图5是本技术实施例提供的各个历元的第三种的分布示意图;
21.图6是本技术实施例提供的各个历元的第四种的分布示意图;
22.图7是本技术实施例提供的定位装置的结构示意图;
23.图8是本技术实施例提供的电子设备的结构示意图。
具体实施方式
24.下面将详细描述本技术的各个方面的特征和示例性实施例,为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本技术进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本技术,而不是限定本技术。对于本领域技术人员来说,本技术可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本技术的示例来提供对本技术更好的理解。
25.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
26.下面结合附图,通过具体的实施例及其应用场景对本技术实施例提供的定位方法、装置、设备、介质及产品进行详细地说明。
27.图1是本技术实施例提供的定位方法的流程示意图。如图1所示,定位方法可以包括:
28.s101:获取终端在第一历元获取到的第一gnss观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚于第一历元;
29.s102:根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。
30.上述各个步骤的具体实现方式将在下文中进行详细描述。
31.在本技术实施例中,通过获取终端在第一历元获取到的第一gnss观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚于第一历元;根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。如此,在第
三历元通过递推即可得到第三历元对应的定位递推结果,相比于相关技术中通过滤波解算得到定位解算结果,得到定位结果的时间较短,能够降低定位延时。
32.在本技术实施例的一些可能实现中,本技术实施例中的定位解算结果包括但不限于:单点定位解算结果、精密单点定位(precise point positioning,ppp)滤波解算结果、实时动态载波相位差分(real-time kinematic,rtk)滤波解算结果。
33.各个历元间的关系如图2和图3所示。在图2和图3中,第二历元为第一历元的下m+1个历元,即第二历元为第一历元之后的第m+1个历元,其中,m为自然数。在图2中,第三历元为第二历元的下一个历元,在图3中,第三历元为第二历元的下n+1个历元,即第三历元为第二历元之后的第n+1个历元,其中,n为正整数。
34.终端在第一历元获取到的第一gnss观测量对应的定位解算结果在第二历元完成定位解算得到。
35.在本技术实施例中,通过m+2个历元实现原有在一个历元(第一历元)的滤波解算,能够减少每个历元的运算耗时,进而能够降低定位延时。
36.在本技术实施例的一些可能实现中,s102可以包括:将第二gnss观测量和第一gnss观测量作差分运算,得到位置变化量;根据定位解算结果和位置变化量,确定定位递推结果。
37.在本技术实施例的一些可能实现中,可以根据不同类型的gnss观测量,得到位置变化量。例如,根据伪距观测量或载波相位观测量,得到位置变化量。
38.本技术实施例并不对将第二gnss观测量和第一gnss观测量作差分运算,得到位置变化量的具体过程进行限定,任何可用的方式均可以应用于本技术实施例中。
39.在本技术实施例的一些可能实现中,可以将第二gnss观测量和第一gnss观测量作差分运算得到的位置变化量与第一gnss观测量对应的定位解算结果的和,作为定位递推结果。
40.在本技术实施例的一些可能实现中,在s101之前,本技术实施例提供的定位方法还可以包括:将多个定位解算步长分块分布在多个历元,其中,多个历元包括第一历元、第二历元以及第一历元和第二历元之间的历元;在多个历元中的每个历元,利用分布在该历元中的定位解算步长分块解算第一gnss观测量。
41.示例性地,如图4所示。假设滤波解算模块划分为20块滤波解算分块,每4个滤波解算分块为一个定位解算步长分块。则将20块滤波解算分块划分为5个定位解算步长分块,5个定位解算步长分块分别为定位解算步长分块a、定位解算步长分块b、定位解算步长分块c、定位解算步长分块d、定位解算步长分块e,将定位解算步长分块a分布在第一历元,将定位解算步长分块b分布在第一历元的下一个历元,将定位解算步长分块c分布在第一历元的下两个历元,将定位解算步长分块d分布在第一历元的下三个历元,将定位解算步长分块e分布在第一历元的下四个历元(即第二历元)。
42.在第一历元,利用定位解算步长分块a解算第一gnss观测量;在第一历元的下一个历元,利用定位解算步长分块b解算第一gnss观测量;在第一历元的下两个历元,利用定位解算步长分块c解算第一gnss观测量;在第一历元的下三个历元,利用定位解算步长分块d解算第一gnss观测量;在第二历元,利用定位解算步长分块e解算第一gnss观测量。第二历元解算完成后,得到第一gnss观测量对应的定位解算结果。
43.在本技术实施例的一些可能实现中,在将多个定位解算步长分块分布在多个历元之前,本技术实施例提供的定位方法还可以包括:根据gnss观测量的采样率,确定定位解算结果对应的计算周期历元数设计值;根据第一历元和计算周期历元数设计值,确定第二历元。
44.在本技术实施例的一些可能实现中,可以将与gnss观测量的采样率相等的数值确定为定位解算结果对应的计算周期历元数设计值。当将与gnss观测量的采样率相等的数值确定为定位解算结果对应的计算周期历元数设计值时,第二历元为从第一历元开始的第计算周期历元数设计值个历元。
45.示例性地,假设gnss观测量的采样率为5赫兹(hz)。则确定定位解算结果对应的计算周期历元数设计值为5。第二历元为从第一历元开始的第5个历元。
46.在本技术实施例的一些可能实现中,可以将与gnss观测量的采样率相等的数值与1的差确定为定位解算结果对应的计算周期历元数设计值。当将与gnss观测量的采样率相等的数值与1的差确定为定位解算结果对应的计算周期历元数设计值时,第二历元为第一历元后的第计算周期历元数设计值个历元。
47.示例性地,假设gnss观测量的采样率为5赫兹(hz)。则确定定位解算结果对应的计算周期历元数设计值为5-1=4。第二历元为第一历元后的第4个历元。
48.在本技术实施例中,根据gnss观测量的采样率,确定定位解算结果对应的计算周期历元数设计值可以根据实际需要确定。
49.在本技术实施例的一些可能实现中,gnss观测量的采样率可以是实时变化或周期性变化的,由于周期历元数设计值是根据gnss观测量的采样率确定的,受gnss观测量的采样率的影响,周期历元数设计值也是实时变化或周期性变化的。
50.在本技术实施例的一些可能实现中,第三历元是第二历元的下一个历元、第四历元以及第二历元的下一个历元与第四历元之间的历元中的任一历元,其中,第四历元为根据第二历元的下一个历元和计算周期历元数设计值确定的历元。
51.示例性地,如图5所示。在图5中,历元i为第二历元的下一个历元,历元j为第二历元的下两个历元,历元k为第二历元的下三个历元,历元m为第二历元的下四个历元,历元n为第二历元的下五个历元,其中,历元n是根据历元i和计算周期历元数设计值确定的历元,即历元n是本技术实施例中的第四历元。第三历元可以为历元i、历元j、历元k、历元m、历元n中的任意一个历元。
52.在本技术实施例的一些可能实现中,本技术实施例提供的定位方法还可以包括:将第二历元的下一个历元作为第一历元,返回s101继续执行。
53.示例性地,对于上述历元i可以将其作为第一历元,然后,根据历元i和计算周期历元数设计值确定历元n为以历元i为基准的第二历元,对于历元n之后的历元x,根据历元x对应的gnss观测量、终端在历元i获取到的gnss观测量和在历元n完成定位解算得到的终端在历元i获取到的gnss观测量的定位解算结果,通过递推到得历元x对应的定位递推结果。
54.在本技术实施例的一些可能实现中,在第三历元还可以利用分布在第三历元的定位解算步长分块解算第三历元对应的gnss观测量。
55.在本技术实施例的一些可能实现中,递推第三历元对应的定位递推结果和解算第三历元对应的gnss观测量可以并行执行,也可以串行执行。
56.在并行执行时,可以利用一个线程递推第三历元对应的定位递推结果,同时利用另一个线程解算第三历元对应的gnss观测量。
57.在串行执行时,可以利用一个线程递推第三历元对应的定位递推结果,然后,再利用该线程解算第三历元对应的gnss观测量;或者,利用一个线程先解算第三历元对应的gnss观测量,然后,再递推第三历元对应的定位递推结果。
58.下面结合图6对定位过程进行说明。
59.假设,gnss观测值的采样率为5hz。确定出第二历元为第一历元后的第4个历元。
60.滤波解算模块划分为20块滤波解算分块,每4个滤波解算分块为一个定位解算步长分块。则将20块滤波解算分块划分为5个定位解算步长分块,5个定位解算步长分块分别为定位解算步长分块a、定位解算步长分块b、定位解算步长分块c、定位解算步长分块d、定位解算步长分块e。
61.对于第5(i-1)+1个历元,根据终端在第5(i-1)+1个历元获取到的gnss观测量、终端在第5(i-2)+1个历元获取到的gnss观测量和第5(i-1)个历元完成定位解算得到的终端在第5(i-2)+1个历元获取到的gnss观测量的定位解算结果,通过递推到得第5(i-1)+1个历元对应的定位递推结果;利用定位解算步长分块a解算终端在第5(i-1)+1个历元获取到的gnss观测量。
62.对于第5(i-1)+2个历元,根据终端在第5(i-1)+1个历元获取到的gnss观测量、终端在第5(i-2)+1个历元获取到的gnss观测量和第5(i-1)个历元完成定位解算得到的终端在第5(i-2)+1个历元获取到的gnss观测量的定位解算结果,通过递推到得第5(i-1)+2个历元对应的定位递推结果;利用定位解算步长分块b解算终端在第5(i-1)+1个历元获取到的gnss观测量。
63.对于第5(i-1)+3个历元,根据终端在第5(i-1)+1个历元获取到的gnss观测量、终端在第5(i-2)+1个历元获取到的gnss观测量和第5(i-1)个历元完成定位解算得到的终端在第5(i-2)+1个历元获取到的gnss观测量的定位解算结果,通过递推到得第5(i-1)+3个历元对应的定位递推结果;利用定位解算步长分块c解算终端在第5(i-1)+1个历元获取到的gnss观测量。
64.对于第5(i-1)+4个历元,根据终端在第5(i-1)+1个历元获取到的gnss观测量、终端在第5(i-2)+1个历元获取到的gnss观测量和第5(i-1)个历元完成定位解算得到的终端在第5(i-2)+1个历元获取到的gnss观测量的定位解算结果,通过递推到得第5(i-1)+4个历元对应的定位递推结果;利用定位解算步长分块d解算终端在第5(i-1)+1个历元获取到的gnss观测量。
65.对于第5i个历元,根据终端在第5(i-1)+1个历元获取到的gnss观测量、终端在第5(i-2)+1个历元获取到的gnss观测量和第5(i-1)个历元完成定位解算得到的终端在第5(i-2)+1个历元获取到的gnss观测量的定位解算结果,通过递推到得第5i个历元对应的定位递推结果;利用定位解算步长分块e解算终端在第5(i-1)+1个历元获取到的gnss观测量。
66.本技术实施例还提供一种定位装置,如图7所示。图7是本技术实施例提供的定位装置的结构示意图,该定位装置700可以包括:
67.获取模块701,用于获取终端在第一历元获取到的第一gnss观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚
于第一历元;
68.递推模块702,用于根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。
69.在本技术实施例中,通过获取终端在第一历元获取到的第一gnss观测量和第一gnss观测量对应的定位解算结果,其中,定位解算结果在第二历元完成定位解算得到,第二历元晚于第一历元;根据第三历元对应的第二gnss观测量、第一gnss观测量和定位解算结果,通过递推得到第三历元对应的定位递推结果,其中,第三历元晚于第二历元。如此,在第三历元通过递推即可得到第三历元对应的定位递推结果,相比于相关技术中通过滤波解算得到定位解算结果,得到定位结果的时间较短,能够降低定位延时。
70.在本技术实施例的一些可能实现中,递推模块702包括:
71.差分计算子模块,用于将第二gnss观测量和第一gnss观测量作差分运算,得到位置变化量;
72.递推子模块,用于根据定位解算结果和位置变化量,确定定位递推结果。
73.在本技术实施例的一些可能实现中,该定位装置700还可以包括:
74.分布模块,用于将多个定位解算步长分块分布在多个历元,其中,多个历元包括第一历元、第二历元以及第一历元和第二历元之间的历元;
75.解算模块,用于在多个历元中的每个历元,利用分布在历元中的定位解算步长分块解算第一gnss观测量。
76.在本技术实施例的一些可能实现中,该定位装置700还可以包括:
77.第一确定模块,用于根据gnss观测量的采样率,确定定位解算结果对应的计算周期历元数设计值;
78.第二确定模块,用于根据第一历元和计算周期历元数设计值,确定第二历元。
79.在本技术实施例的一些可能实现中,周期历元数设计值是实时变化或周期性变化的。
80.在本技术实施例的一些可能实现中,第三历元是第二历元的下一个历元、第四历元以及第二历元的下一个历元与第四历元之间的历元中的任一历元,其中,第四历元为根据第二历元的下一个历元和计算周期历元数设计值确定的历元。
81.在本技术实施例的一些可能实现中,该定位装置700还可以包括:
82.第三确定模块,用于将第二历元的下一个历元作为第一历元,触发获取模块701。
83.图8是本技术实施例提供的电子设备的结构示意图。
84.该电子设备可以包括处理器801以及存储有计算机程序指令的存储器802。
85.具体地,上述处理器801可以包括中央处理器(central processing unit,cpu),或者特定集成电路(application specific integrated circuit,asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
86.存储器802可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器802可包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器802可以包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器802可在电子设备的内部或外部。在一些特定实施例中,存储器802是非易失性固态存
储器。
87.在一些特定实施例中,存储器可包括只读存储器(read-only memory,rom),随机存取存储器(random access memory,ram),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本技术实施例提供的定位方法所描述的操作。
88.处理器801通过读取并执行存储器802中存储的计算机程序指令,以实现本技术实施例提供的定位方法。
89.在一个示例中,该电子设备还可以包括通信接口803和总线810。其中,如图8所示,处理器801、存储器802、通信接口803通过总线810连接并完成相互间的通信。
90.通信接口803,主要用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。
91.总线810包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(accelerated graphics port,agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,eisa)总线、前端总线(front side bus,fsb)、超传输(hyper transport,ht)互连、工业标准架构(industry standard architecture,isa)总线、无限带宽互连、低引脚数(low pin count,lpc)总线、存储器总线、微信道架构(micro channel architecture,mca)总线、外围组件互连(peripheral component interconnect,pci)总线、pci-express(pci-x)总线、串行高级技术附件(serial advanced technology attachment,sata)总线、视频电子标准协会局部(video electronics standards association local bus,vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线810可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
92.该电子设备可以执行本技术实施例提供的定位方法,从而实现本技术实施例提供的定位方法的相应技术效果。
93.另外,结合上述实施例中的定位方法,本技术实施例还提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本技术实施例提供的定位方法。计算机可读存储介质的示例包括非暂态计算机可读介质,如rom、ram、磁碟或者光盘等。
94.本技术实施例提供一种计算机程序产品,该计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备执行本技术实施例提供的定位方法,且能达到相同的技术效果,为避免重复,这里不再赘述。
95.需要明确的是,本技术并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本技术的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本技术的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。
96.以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组
合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(application specific integrated circuit,asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本技术的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除只读存储器(erasable read only memory,erom)、软盘、只读光盘(compact disc read-only memory,cd-rom)、光盘、硬盘、光纤介质、射频(radio frequency,rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
97.还需要说明的是,本技术中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本技术不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
98.上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
99.以上所述,仅为本技术的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。