一种卫星导航定位解算方法、相应的模组及终端与流程

文档序号:13071729阅读:225来源:国知局

本发明涉及一种卫星导航定位解算方法、相应的模组及终端。



背景技术:

在gnss卫星定位导航领域,当前使用较多的融合算法有:gnss系统与惯性导航,或者通过添加其他的辅助设备、其他导航系统进行融合定位,但是对于没有其他外部辅助设备,仅有多个gnss导航模块的情况,这些算法并不适用。

在某些领域,为了保证gnss导航定位的精度,定位导航接收机内部需要同时使用多个互联的gnss定位模块进行联合定位。在定位导航接收机内部,同一个时刻,同时使用多个定位模块,各个模块将接收到的卫星信息互传,这样极大的提高了单个模块有效卫星信息的数量,极大提高了定位的效率。但是由于各个定位模块是独立的,各个模块时间系统不统一,因此在同一时刻,多个模块的卫星信息不能直接使用,需要进行时间融合算法,将多个模块的有效信息转换到统一时间系统,然后再进行联合定位。



技术实现要素:

本发明的目的是提供一种通过时间融合解决上述问题的卫星导航定位解算方法、模组以及终端。

本发明提供一种卫星导航定位解算方法,所述方法包括,模块a在本地接收时刻ta接收导航卫星相关信息作为所述模块a的数据信息a;模块b在本地接收时刻tb接收导航卫星相关信息作为所述模块b的数据信息b;所述模块a接收所述数据信息b;所述模块a根据所述数据信息a,建立在所述本地接收时刻ta的伪距方程eaa;所述模块a根据传送过来的所述数据信息b,对应所述模块a的接收时刻ta,计算所述数据信息b中卫星的修正发射时间并且构建所述数据信息b中接收到的卫星在所述模块a本地接收时刻ta和发射时间为所述修正发射时间所对应的伪距方程eab;联立所述伪距方程eaa和所述伪距方程eab进行定位解算。

更进一步,所述方法还包括,所述模块b接收所述数据信息a;所述模块b根据所述数据信息b,建立在所述本地接收时刻tb的伪距方程ebb;所述模块b根据传送过来的所述数据信息a,对应所述模块b的接收时刻tb,计算所述数据信息a中卫星的修正发射时间并且构建所述数据信息a中接收到的卫星在所述模块b本地接收时刻tb和发射时间为所述修正发射时间所对应的伪距方程eba;联立所述伪距方程ebb和所述伪距方程eba进行定位解算。

更进一步,所述方法还包括,所述数据信息a和所述数据信息b还包括各自所接收的导航卫星的多普勒相关信息;所述模块a根据所述数据信息a,建立在所述本地接收时刻ta的多普勒方程daa;所述模块a根据传送过来的数据信息b,对应模块a的接收时刻ta,计算每个数据信息b中卫星所对应的修正多普勒,并且构建数据信息b中接收到的卫星,在模块a本地接收时刻ta和发射时间为所述修正发射时间的多普勒方程dab;联立所述多普勒方程daa和所述多普勒方程dab进行定速解算。

更进一步,所述方法还包括,所述模块b根据所述数据信息b,建立在所述本地接收时刻tb的多普勒方程dbb;所述模块b根据传送过来的数据信息a,对应模块b的接收时刻tb,计算每个数据信息a中卫星所对应的修正多普勒,并且构建所述数据信息a中接收到的卫星在所述模块b本地接收时刻tb和发射时间为所述修正发射时间所对应的多普勒方程dba;联立所述多普勒方程dbb和所述多普勒方程dba进行定速解算。

更进一步,所述模块a和所述模块b位于同一接收机内且位置摆放很近。

本发明还提供一种应用上述卫星导航定位解算方法的卫星导航模组,所述模组包括所述模块a和所述模块b。

本发明还提供一种应用上述卫星导航定位解算方法的卫星导航终端,所述终端包括所述模块a和所述模块b。

采用本发明的技术方案后,在定位导航接收机内部使用本发明方法,同一个时刻,单个gnss定位模块的有效卫星信息增多,这样极大提高了pvt解算的效率,并且提高了系统的稳健性,可靠性。定位接收机内部仅同时使用多个互联的gnss定位模块进行联合定位,而没有使用其他的外部辅助设备或者辅助导航系统。

附图说明

图1为本发明定位解算的流程图。

具体实施方式

以下结合其中的较佳实施方式对本发明方案进行详细阐述。

假设当前接收机内部有多个互联的gnss定位模块,为了叙述方便,仅选择两个互联的定位模块为例,分别为a,b。这两个模块由于设计的时候,被摆放的位置很接近,因此可以简化的认为这两个模块的位置相等。另外由于模块a和b之间存在信息的互传,模块a会将当前时刻接收到的卫星相关信息传送给模块b。同样模块b也会将当前时刻接收到的卫星相关信息传送给模块a。我们仅详细说明本发明方法在模块a中的应用,本发明方法在模块b中的应用完全一样,因此不加以叙述。

考虑在模块a内部,同一个时刻分别有自身模块接收到的卫星信息,以及通过通信协议传送过来的模块b接收到的卫星信息。具体有如下信息:

假定此时模块a中有自身模块接收到的卫星为的相关信息,以及传送过来的模块b中接收到的卫星为的相关信息,并且假定这两个卫星是不同的。

从卫星导航电文中可知,模块a在自身本地接收时刻ta,接收到卫星相关信息,对应的卫星发射时刻为不考虑卫星钟差,大气延迟等,仅考虑模块a自身的钟差,则可以得到如下的伪距方程:

其中:

——表示模块a在本地接收时刻ta,与接收到的卫星之间的伪距,单位为m;

c——表示光速,单位为m/s;

ta——表示模块a的本地接收时刻,单位为s;

——表示模块a在本地接收时刻ta接收到卫星对应的卫星发射时刻,单位为s;

——表示模块a在本地接收时刻ta,接收到的卫星在对应发射时间的位置;

——表示模块a在本地接收时刻ta的位置;

——表示模块a在ta时刻的钟差,单位为s。

同样,通过通信传送过来的模块b导航信息中可知,模块b在其自身本地接收时间tb,接收到的卫星相关信息,对应的卫星发射时刻为这些信息通过相应的通信协议被传送给了模块a。不考虑卫星钟差,大气延迟等,仅考虑模块b自身的钟差,则可以得到如下的伪距方程:

其中:

——表示模块b在本地接收时刻tb,与接收到的卫星之间的伪距,单位为m;

c——表示光速,单位为m/s;

tb——表示模块b的本地接收时刻,单位为s;

——表示模块b在本地接收时刻tb接收到卫星对应的卫星发射时刻,单位为s;

——表示模块b在本地接收时刻tb,接收到的卫星在对应发射时间的位置;

——表示模块b在本地接收时刻tb的位置;

——表示模块b在tb时刻的钟差,单位为s。

因为模块a和b位置摆放很近,可以认为:

联立方程⑴、⑵,得到:

方程⑴对应的是模块a在本地接收时刻ta卫星发射时刻为的伪距方程,方程⑵对应的是模块b在本地接收时刻tb,卫星发射时刻为的伪距方程。这两个方程的本地接收时刻不一致,因此在模块a的内部解算中,我们需要将来自模块a自身以及外部模块b的伪距方程统一到本地接收时刻ta。因此对于模块b接收到的卫星需要求解其转换到本地接收时间ta,所对应的修正的卫星发射时间的伪距方程。

模块b接收到的卫星修正的卫星发射时间与原始的卫星发射时间存在发射时间差,并且由于设计的缘故,这个时间差较小,而这个发射时间差与本段时间内模块b本身的频偏引起的误差、相对运动以及模块本身在这个时间段内钟差的变化有关,因此可以得到模块b接收到的卫星修正的卫星发射时间

我们感兴趣的伪距方程为模块b对应本地接收时刻ta,对应修正卫星发射时间的伪距方程:

其中:

——表示模块b在模块a对应的本地接收时刻ta,与对应的修正的卫星发射时间伪距,单位为m;

——表示模块b在ta时刻的钟差,未知;

——表示卫星在对应发射时间的位置,这个值可以从接收信息中计算得到;

——表示模块b中获取得到的卫星在对应修正的发射时间的位置,这个值不能直接从接收信息中获取,未知;

而根据相应的卫星特性,在从已知的时刻的卫星位置可以得到时刻的卫星位置因此方程⑶有:

其中:

——表示表示卫星在对应发射时间的速度,可以从接收信息中计算得到;

因此,在模块a中的本地接收时刻ta,假如有m个不同的模块a自身的伪距方程如方程⑴所示,对应的卫星编号1,…,m。有n个不同的模块b传送过来修正过后的伪距方程如方程⑷所示,对应的卫星编号为m+1,…,m+n。联立得到伪距方程式:

当以上的伪距方程个数(m+n)满足定位解算的最小个数要求时,即可使用相应的解算方法完成定位解算,计算出当前时刻的位置信息以及时间信息,以上即为完整的gnss时间融合算法在定位以及时间信息上求解的具体步骤。

类似于上面所阐述的完整的gnss时间融合算法在卫星定位解算中的应用,同样在卫星定速解算中,也可以使用本发明方法,具体步骤如下:

从卫星导航电文中可知,模块a在自身本地接收时刻ta,接收到的卫星相关信息,其中包括卫星的速度以及多普勒值,对应的多普勒方程有如下形式:

其中:

λ——表示波长,不同种类的卫星波长不一样,单位为m;

——表示模块a在本地接收时刻ta,从卫星导航电文中解算出来的多普勒值,单位为hz;

——在模块a在本地接收时刻ta,接收到的卫星在对应发射时间的速度,可以从导航

电文中解算得到;

——表示当前时刻ta,模块a与卫星之间的方向向量;

——表示模块a在本地接收时刻ta的速度,单位为m/s;

——表示模块a在本地接收时刻ta的时钟频漂,单位为m/s;

同样,通过通信传送过来的模块b导航信息中可知,模块b在自身本地接收时刻tb,接收到的卫星相关信息,其中包括卫星的速度以及多普勒值,对应的多普勒方程有如下形式:

其中:

——表示模块b在本地接收时刻tb,从卫星导航电文中解算出来的多普勒值,单位为hz;

——在模块b在本地接收时刻tb,接收到的卫星在对应发射时间的速度,可以从导航电文中解算得到;

——表示当前时刻tb,模块b与卫星之间的方向向量;

——表示模块b在本地接收时刻tb的速度,单位为m/s;

——表示模块b在本地接收时刻tb的时钟频漂,单位为m/s;

联立方程⑹、⑺,得到:

方程⑹对应的是模块a在本地接收时刻ta的多普勒方程,方程⑺对应的是模块b在本地接收时刻tb的多普勒方程。这两个方程的本地接收时刻不一致,因此在模块a的内部解算中,我们需要将来自模块a自身以及外部模块b的多普勒方程统一到本地接收时刻ta。因此对于模块b接收到的卫星需要求解其转换到本地接收时间ta所对应的多普勒方程。即关于方程⑺,我们感兴趣的是模块b在本地接收时刻ta的多普勒方程:

——表示模块b在模块a的本地接收时刻ta的多普勒值,未知;

——表示模块b在模块a的本地接收时刻ta的时钟频漂,单位为m/s;

而模块b将接收到的卫星相关信息传送给了模块a,因此可以解算得到模块b的多普勒变化率因此,可以得到模块b在本地接收时刻ta的多普勒值另外,假定在这个时间段内,模块的运动速度、卫星的运动速度保持不变,则重新将方程⑺化简有:

方程⑻即为我们需要的模块b在本地接收时刻ta的多普勒方程。

因此,在模块a中的本地接收时刻ta,假如有m个不同的模块a自身的多普勒方程如方程⑹所示,对应的卫星编号1,…,m。有n个不同的模块b传送过来修正过后的多普勒方程如方程⑻所示,对应的卫星编号为m+1,…,m+n。联立得到方程式:

当以上方程⑼中的多普勒方程个数(m+n)满足定速解算的最小个数要求时,即可使用相应的解算方法完成定速解算,计算出当前时刻的速度信息以及时钟频漂信息,以上即为完整的gnss时间融合算法在定速以及时钟频漂信息求解上的具体步骤。

图1为本发明定位解算的流程图。本发明方法用于解算pvt(position,velocity,andtime,位置、速度和时间)的步骤如下:

1.初始化模块a的位置([xu,0yu,0zu,0])、钟差用户速度([vxu,0vyu,0vzu,0])、时钟频漂δfu,0;

2.当前时刻i,根据模块a中自身模块接收到的卫星相关信息,建立如方程⑴的伪距方程;

3.当前时刻i,根据模块a中传送过来的模块b中接收到的卫星相关信息,计算每个模块b接收到的卫星所对应的修正卫星发射时间并且构建如方程⑷伪距方程;

4.联立步骤2和3中所有的伪距方程,组成方程组⑸,然后进行定位解算;

5.当前时刻i,根据模块a中自身模块接收到的卫星多普勒相关信息,建立如方程⑹的多普勒方程;

6.当前时刻i,根据模块a中传送过来的模块b中接收到的卫星多普勒相关信息,计算每个模块b接收到的卫星转换到本地接收时间ta所对应的多普勒并且构建如方程⑻多普勒方程;

7.联立步骤5和6中所有的多普勒方程,组成方程组⑼,然后进行定速解算;

8.将步骤4与步骤7中解算得到的当前时刻pvt信息作为当前时刻i的最终结果输出,并且作为下一个时刻的输入;

9.下一个时刻(i+1),则又重新执行步骤2到步骤8;

10.若程序结束,则退出。

以上所述实例仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1