一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于GNSS信号非连续跟踪的导航方法与流程

2021-11-24 20:51:00 来源:中国专利 TAG:

一种基于gnss信号非连续跟踪的导航方法
技术领域
1.本发明涉及gnss导航技术领域,具体涉及一种基于gnss信号非连续跟踪的导航方法。


背景技术:

2.全球导航卫星系统(gnss)包括全球定位系统gps(美国),glonass(俄罗斯),伽俐略(欧洲)和compass(中国),gnss典型地使用多个绕地球飞行的卫星。这多个卫星形成了卫星的星座。gnss接收器检测到在卫星所广播的电磁信号上调制的伪随机噪声(prn)代码。也将这个代码称为测距码。代码检测包括将在所述广播信号上调制的位序列与接收器所生成的即将检测到的代码的复制品比较。基于用于一系列卫星中每一个的代码到达时间的检测,gnss接收器估算其位置,定位包括地理定位,即地球表面的定位。
3.全球导航卫星系统是能在地球表面或近地空间的任何地点为用户提供全天候的3维坐标和速度以及时间信息的空基无线电导航定位系统。因此,通俗一点说,如果你除了要知道经纬度还想知道高度的话,那么,必须对收到4颗卫星才能准确定位。
4.然而当卫星数量超过4颗,或者卫星经过目标时区的过顶时间差比较相近,那么在使用gnss信号完成非连续跟踪导航时,则无法依据现有的gnss接收方法稳定接收gnss信号,造成接收操作紊乱,甚至导航出错的问题。


技术实现要素:

5.本发明的目的在于提供一种基于gnss信号非连续跟踪的导航方法,以解决现有技术中当卫星数量超过4颗,或者卫星经过目标时区的过顶时间差比较相近时,无法依据现有的gnss接收方法稳定接收gnss信号,造成接收操作紊乱,甚至导航出错的问题。
6.为解决上述技术问题,本发明具体提供下述技术方案:
7.一种基于gnss信号非连续跟踪的导航方法,包括以下步骤:
8.步骤100、批量生成gnss卫星轨迹数据,并基于卫星轨迹数据确定多gnss卫星在目标时区的过顶预报时间,其中,所述过顶预报时间为根据所述gnss卫星的时间

位置数据确定的经过所述目标时区头顶的时间;
9.步骤200、按照过顶预报时间的时间顺序预测依次在所述目标时区内过顶的卫星序列,且根据gnss卫星的导航定位需求确定单次跟踪的卫星接收数量;
10.步骤300、确定非连续采集的采集时间列表,每次采集时间点基于所述卫星接收数量通过组合筛选方式从卫星序列中确定用于跟踪的gnss卫星组合,所述组合筛选方式用于在至少两次所述采集时间点对应的卫星序列相同且卫星序列的数量大于所述卫星接收数量时,通过组合算法确定每次采集时间点对应的gnss卫星组合;
11.步骤400、通过gnss天线按照采集时间列表的采集时间点依次非连续性采集和跟踪筛选出的gnss卫星组合信号,将捕获得到的粗略的码相位和载波多普勒频移参数输入到跟踪环路以便对所述gnss卫星组合信号进行跟踪;
12.步骤500、对所述gnss卫星组合信号实现稳定跟踪并得到观测量,从所述观测量提取得到伪距和伪距率信息并进行导航定位解算。
13.作为本发明的一种优选方案,在步骤100中,基于卫星轨迹数据确定多gnss卫星在目标时区的过顶预报时间的实现步骤为:
14.步骤101、通过两行轨道根数tle确定所有gnss卫星运动轨迹的轨道参数,并利用sgp4模型将tle轨道参与轨道运算模型结合测算卫星实时状态,得到所有gnss卫星的时间

位置数据;
15.步骤102、将时间

位置数据写成czml数据文件,利用循环算法获取连续时间点的位置坐标;
16.步骤103、根据连续时间点的位置坐标获取每个所述gnss卫星经过目标时区的过顶预报时间。
17.作为本发明的一种优选方案,在步骤102中,所述czml数据文件为gnss卫星轨道czml数据,通过确定生成gnss卫星的时间

位置样本的时间间隔t,同时利用czml提供的内插属性,将时间

位置样本数据之间通过高阶拉格朗日算法内插填充样本数据间的时间间隔t内,其中,每个gnss卫星的czml数据只记录该gnss卫星在额定秒数内的轨迹状况,每个czml数据文件都需要python调用spg4库,根据额定秒数和时间间隔t计算得到该gnss卫星一系列的时间

位置数据。
18.作为本发明的一种优选方案,从所述时间

位置数据内筛选gnss卫星经过所述目标时区的过顶预报时间,并将过顶预报时间和对应的gnss卫星组成卫星序列。
19.作为本发明的一种优选方案,在步骤200中,所述卫星序列为多行多列式,所述卫星序列的同一行为在同一过顶时间点在所述目标时区内过顶的所述gnss卫星,所述卫星序列的不同行从上到下表示按照时间顺序依次经过所述目标时区的gnss卫星排列顺序;
20.所述gnss卫星的导航定位需求确定单次跟踪的卫星接收数量为四个,同一时间点在所述目标时区内过顶的所述gnss卫星大于等于所述卫星接收数量。
21.作为本发明的一种优选方案,在步骤300中,先根据所述采集时间点与所述卫星序列中的两行数据的过顶时间点计算所述采集时间点的跟踪偏向,再根据跟踪偏向选择一行所述gnss卫星作为目标筛选卫星。
22.作为本发明的一种优选方案,所述每次采集时间点基于所述卫星接收数量通过组合筛选方式从目标筛选卫星组中确定用于跟踪的gnss卫星组合,其中,在多次所述采集时间点对应的所述目标筛选卫星相同时,利用所述组合筛选方式使得每次的采集时间点对应的所述gnss卫星组合不同。
23.作为本发明的一种优选方案,在所述步骤300中,计算所述采集时间点的跟踪偏向的实现步骤为:
24.计算所述卫星序列中两行所述gnss卫星的过顶时间点确定两个所述过顶时间点的中心时间点,所述中心时间点将两行所述gnss卫星分为上一行所述gnss卫星的过顶时间点与中心时间点之间的上阈值,以及下一行所述gnss卫星的过顶时间点与中心时间点之间的下阈值;
25.判断所述采集时间点处于所述上阈值或下阈值,来选择其中一行所述gnss卫星作为目标筛选卫星。
26.作为本发明的一种优选方案,在步骤400中,gnss天线接收来自所述gnss卫星组合的gnss信号;基于所述gnss卫星组合的至少一个的轨道或位置,以及所述gnss卫星组合的至少一个的时钟偏移获得精确卫星信息;在获得的gnss信号之后,识别周跳所可能影响的至少一个gnss信号的子集,并估算对确定gnss天线的位置或所述gnss天线位置的变化有用的参数,以使用不属于所述周跳影响子集的至少一些获得的gnss信号和精确卫星信息。
27.本发明与现有技术相比较具有如下有益效果:
28.本发明在同一采集时间过顶的卫星超过四颗时,通过组合算法确定每一次采集对应的gnss卫星组合,且不同采集时间点对应的gnss卫星组合不同,从而实现多卫星导航并避免其中一个卫星出错,而导致导航出错的问题,另外,根据采集时间点与卫星过顶时间点的对比,可筛选出最靠近目标时区的卫星序列,进一步的提高导航的精确性。
附图说明
29.为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
30.图1为本发明实施例提供的非连续跟踪导航方法的流程示意图。
具体实施方式
31.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
32.如图1所示,本发明提供了一种基于gnss信号非连续跟踪的导航方法,在同一采集时间过顶的卫星超过四颗时,通过组合算法确定每一次采集对应的gnss卫星组合,且不同采集时间点对应的gnss卫星组合不同,从而实现多卫星导航并避免其中一个卫星出错,而导致导航出错的问题,另外,根据采集时间点与卫星过顶时间点的对比,可筛选出最靠近目标时区的卫星序列,进一步的提高导航的精确性。
33.具体包括以下步骤:
34.步骤100、批量生成gnss卫星轨迹数据,并基于卫星轨迹数据确定多gnss卫星在目标时区的过顶预报时间,其中,过顶预报时间为根据gnss卫星的时间

位置数据确定的经过目标时区头顶的时间。
35.在步骤100中,基于卫星轨迹数据确定多gnss卫星在目标时区的过顶预报时间的实现步骤为:
36.1、通过两行轨道根数tle确定所有gnss卫星运动轨迹的轨道参数,并利用sgp4模型将tle轨道参与轨道运算模型结合测算卫星实时状态,得到所有gnss卫星的时间

位置数据。
37.tle数据只是提供菜颗卫星的轨道参数,卫星实时状态的测算需要将e轨道参数具体的轨道运算模型或算法结合,才能得到较为精确的结果,sgp4,sdp4(simplified deep

space perturbation version 4)为简化扰动模型,简化扰动系列模型考虑了地球形状、大气阻力、宇宙辐射,以及来自其他太空物体的干扰,计算地心惯性坐标系下.卫星、空间碎片等人造太空物体的时间

位置和时间

速率等物理量。简化扰动模型通常代指sgp4模型,这是因为sgp4模型是使用最广泛的简化扰动模型,许多学者对它的精度和误差分析也进行了大量的研究,通常认为tle结合sgp4模型计算卫星位置和速度是比较可取的。
38.2、将时间

位置数据写成czml数据文件,利用循环算法获取连续时间点的位置坐标。
39.python是一种开源的、面向对象的脚本语言。这种编程语言风格简洁、简单易学、强制格式规范,还有强大的学习社区支持,灵活的可扩展性和功能丰富的库。因此,本文采用python语言将tle数据与sgp4模型结合,对导航卫星的时间

位置,时间速率进行计算,并将计算结果存入czml格式的数据文件中。
40.因此卫星轨道数据(以及其他飞行物的轨迹数据)的生成分为两个步骤:首先由tle数据与sgp4模型得到卫星的时间

位置数据;再将时间位置数据写成czml数据文件。
41.卫星的轨道是由一系列连续的时间位置样本点数据组成的,将这一系列样本点连接起来形成卫星的椭圆(圆)轨道,因此轨道数据的获取就分成两个部分位置数据和时间数据,卫星的位置坐标可通过上文提到的sgp4模型计算得出,接下来,需要获取连续时间点的位置坐标,并把这些时间、位置数据存储成czml格式兼容的数据。czml中“position”"属性提供的“carisian”子属性是以米为单位的三维笛卡尔坐标,恰好与spg4模型生成的坐标属同以坐标系。因此可直接将上文生成的数据存储到“arisian”属性中。一段时间内的连续时间

位置坐标数据的生成需要通过循环实现,例如生成某颗卫星10分钟内的时间

位置数据:首先需要指定时间的起止点,然后指定单位间隔(例如隔3秒钟)来生成每坐标数据的生成需要通过循环实现,例如生成某颗卫星10分钟内的时间

位置数据,接着通过一个循环实现一段时间内时间

位置(如10分钟内共200次数据采样)坐标的计算,并在每次计算时记录当前时刻:最后将计算所得的时刻

坐标数据存储到"carisian”属性中。
42.即在上述步骤中,czml数据文件为gnss卫星轨道czml数据,通过确定生成gnss卫星的时间

位置样本的时间间隔t,同时利用czml提供的内插属性,将时间

位置样本数据之间通过高阶拉格朗日算法内插填充样本数据间的时间间隔t内,其中,每个gnss卫星的czml数据只记录该gnss卫星在额定秒数内的轨迹状况,每个czml数据文件都需要python调用spg4库,根据额定秒数和时间间隔t计算得到该gnss卫星一系列的时间

位置数据。
43.3、根据连续时间点的位置坐标获取每个gnss卫星经过目标时区的过顶预报时间。
44.卫星的过面时间是卫星经过观测站或观测者头顶的时间,过顶预报是供据架测者所处的位置(经度、纬度、高程)、气压、温度和卫星星历信息预报卫星未来的过顶时间,卫量的过顶预报一般是先计算某时刻卫星的位置

速度,然后算出该时刻卫星相对于目标时区的仰角是否满足所设定的观测约束条件,如果满足就认为该时刻属于卫星的过顶预报时间。
45.再由从时间

位置数据内筛选gnss卫星经过目标时区的过顶预报时间,并将过顶预报时间和对应的gnss卫星组成卫星序列。
46.本实施方式利用作为卫星轨道数据源的两行轨道数据,常用的sgp4轨道计算模型,并使用python脚本语言将这两种资源结合生成czml格式的卫星轨道数据,进一步的,还
可以通过目标物czml轨道数据可视化操作,来建立多卫星环绕动态图,具体的实现过程可参考现有技术中的轨迹数据的流式传输与可视化操作文献。
47.步骤200、按照过顶预报时间的时间顺序预测依次在目标时区内过顶的卫星序列,且根据gnss卫星的导航定位需求确定单次跟踪的卫星接收数量。
48.由于gnss卫星比较多,且环绕地球转动,因此每个卫星的过顶时间并不是完全相同的,因此卫星序列为多行多列式,卫星序列的同一行为同一过顶时间点在目标时区内过顶的gnss卫星,卫星序列的不同行从上到下表示按照时间顺序依次经过目标时区的gnss卫星排列顺序。
49.gnss卫星的导航定位需求确定单次跟踪的卫星接收数量为四个,同一时间点在目标时区内过顶的gnss卫星大于等于卫星接收数量。
50.也就是说,当卫星序列的一行表示同一过顶时间点在目标时区内过顶的gnss卫星,在卫星序列一行包含的gnss卫星数量大于卫星接收数量时,那在非连续的采集跟踪时,则需要对gnss卫星进行选择,来保证跟踪采集的稳定工作,特别在多次非连续的采集跟踪在卫星序列中对应的gnss卫星相同时,则更需要确定每次采集跟踪的卫星,本实施方式通过组合算法确定卫星序列某一行的gnss卫星组合,且一般来说,每次采集跟踪的gnss卫星组合均不相同,可以避免某一卫星信息不准确时,导致多次采集跟踪出现错误,且提高导航精确性,具体的实现过程如下述步骤300所得。
51.步骤300、确定非连续采集的采集时间列表,每次采集时间点基于卫星接收数量通过组合筛选方式从卫星序列中确定用于跟踪的gnss卫星组合,组合筛选方式用于在至少两次采集时间点对应的卫星序列相同且卫星序列的数量大于卫星接收数量时,通过组合算法确定每次采集时间点对应的gnss卫星组合。
52.在步骤300中,先根据采集时间点与卫星序列中的两行数据的过顶时间点计算采集时间点的跟踪偏向,再根据跟踪偏向选择一行gnss卫星作为目标筛选卫星。
53.每次采集时间点基于卫星接收数量通过组合筛选方式从目标筛选卫星组中确定用于跟踪的gnss卫星组合,其中,在多次采集时间点对应的目标筛选卫星相同时,利用组合筛选方式使得每次的采集时间点对应的gnss卫星组合不同。
54.在同一采集时间过顶的卫星超过四颗时,通过组合算法确定每一次采集对应的gnss卫星组合,且不同采集时间点对应的gnss卫星组合不同,从而实现多卫星导航并避免其中一个卫星出错,而导致导航出错的问题。
55.进一步的,计算采集时间点的跟踪偏向的实现步骤为:
56.计算卫星序列中两行gnss卫星的过顶时间点确定两个过顶时间点的中心时间点,中心时间点将两行gnss卫星分为上一行gnss卫星的过顶时间点与中心时间点之间的上阈值,以及下一行gnss卫星的过顶时间点与中心时间点之间的下阈值。
57.判断采集时间点处于上阈值或下阈值,来选择其中一行gnss卫星作为目标筛选卫星。
58.确定目标筛选卫星的过程即筛选靠近目标时区的gnss卫星,越靠近目标时区的gnss卫星的导航信息比较精确,因此本实施方式通过对比采集时间点靠近上一行gnss卫星的过顶时间点,还是靠近下一行gnss卫星的过顶时间点,来表示哪一行的gnss卫星越来越靠近目标时区,从而一方面提高导航的精确性,另一方面,提高gnss天线接收数据的条理性
和稳定性。
59.步骤400、通过gnss天线按照采集时间列表的采集时间点依次非连续性采集和跟踪筛选出的gnss卫星组合信号,将捕获得到的粗略的码相位和载波多普勒频移参数输入到跟踪环路以便对gnss卫星组合信号进行跟踪。
60.步骤500、对gnss卫星组合信号实现稳定跟踪并得到观测量,从观测量提取得到伪距和伪距率信息并进行导航定位解算。
61.gnss天线接收来自gnss卫星组合的gnss信号;基于gnss卫星组合的至少一个的轨道或位置,以及gnss卫星组合的至少一个的时钟偏移获得精确卫星信息;在获得的gnss信号之后,识别周跳所可能影响的至少一个gnss信号的子集,并估算对确定gnss天线的位置或gnss天线位置的变化有用的参数,以使用不属于周跳影响子集的至少一些获得的gnss信号和精确卫星信息。
62.也即是,非连续地采集和跟踪gnss卫星信号是指:每隔一预设周期对gnss信号进行采集与跟踪,每次采集的gnss信号中频数据段的长度;
[0063][0064]
其中,lcode为gnss信号一个伪码周期的码片数,f
ccode
为gnss信号伪码码率,n
i
为跟踪第i颗gnss卫星信号时的相关积分时长对应的gnss信号伪码周期数,s
sif
为gnss信号中频频率,为ins辅助估算得到的第i颗gnss卫星信号在采集的gnss信号中频数据段起始(第i个)中频样点处的伪码相位值;
[0065]
为第i颗gnss卫星信号的伪码多普勒频率估算值,f
car
为gnss信号载波频率,为ins辅助估算得到的第i颗gnss.卫星信号的载波多普勒频率。
[0066]
以上实施例仅为本技术的示例性实施例,不用于限制本技术,本技术的保护范围由权利要求书限定。本领域技术人员可以在本技术的实质和保护范围内,对本技术做出各种修改或等同替换,这种修改或等同替换也应视为落在本技术的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献