一种多模的超快速、低功耗的定位接收机系统及方法与流程

文档序号:11152296阅读:615来源:国知局
一种多模的超快速、低功耗的定位接收机系统及方法与制造工艺

本发明涉及全球卫星定位领域,尤其涉及一种应用于全球卫星定位导航系统中的(GNSS)的多模接收机的系统和方法。



背景技术:

全球导航卫星系统(GNSS)已经被广泛用在移动装置的定位和导航领域。目前,GNSS包含美国的全球定位系统(GPS)、俄罗斯的格洛纳斯卫星导航系统(GLONASS)、中国的北斗卫星导航系统(COMPASS)、及欧盟的伽利略卫星定位系统(GALILEO),可用卫星数目达100颗以上。

评判全球导航卫星系统(GNSS)优劣的主要参数指标包括:定位时间、定位精度、能够定位的区域和时间以及功耗等等。GPS接收机定位时间主要指标分为冷启动和热启动定位时间,冷启动条件是指用户概略位置、开机时间、卫星星历、卫星历书等都未知的情况下GPS接收机的定位时间;而热启动条件是指用户概略位置、开机概略时间、卫星星历都已知的情况下GPS接收机的定位时间。

随着GNSS应用范围的不断扩展,对卫星导航接收机的各项要求也越来越高。GNSS接收机的设计很难满足这些应用具有速度极快的首次定位时间(TTFF)、成本低、能够支持间断性的断电定位及功耗低等要求。而传统的接收器遭受性能下降,甚至完全无法运作在这样充满挑战的要求中。

传统的GNSS接收机首次定位时间主要是消耗在星历获取上,一般接收机冷启动定位时间都在30~60秒之间。目前通过A-GPS或者轨道预测技术可以解决获取星历的问题。然而,GNSS接收机进行用户位置定位时需要知道卫星的位置和观测的伪距,而卫星位置和伪距都与卫星的发射时间有关,所以接收机要进行定位必须正确的获取卫星发射时间。

目前针对如何获取卫星的发射时间和定位,提出如下方法:

采用比特同步和帧同步方法,由于GNSS导航信息的特点,对于GPS信号至少需要6s,对于BDS的非GEO信号至少需要0.6s,最快也只能做到2s,提高了首次定位时间。但这种方法,存在如下缺点:(1)此法受到比特同步和帧同步灵敏度和误码率率影响。尤其GEO解调采用是2ms积分,为了提高灵敏度,那么需要更多的非相关的次数,则需要的时间变长,导致定位时间变长。如果要提高速度,那么需要减少非相关的次数,则导致误码率的增加,导致较弱信号场景无法定位,减少适用场景。(2)此法采用跟踪方式获取测量值,由于跟踪存在较长的收敛时间进入稳定态输出可靠的测量值,则影响首次定位的时间和可靠性。(3)对于一些低功耗应用场景,例如需要较短时间(几分钟)间歇性定位需求时,对于传统的跟踪环接收机,需要持续的定位,而导致大部分时间功耗是浪费的。如果进行断电处理,那么环路有又需要收敛的过程,导致定位时间变长、精度变差。

通过A-GPS,从无线通讯网络中获得精确的绝对时间或者接收机位置。为了能够定位,需要持续的连接至无线通信系统中。因此,该系统不能自主地进行操作,并且会增加功耗和流量费用。

基于时间和位置的先验估计值是未知的,“网格搜索”的方法假设一个先验位置和测试一个-由最小二乘后验残差进行确认,重复这个过程直到一个有效的解。这种方法不需要传输精确的时间或解码导航信息的时间信息。但此法有如下缺点:(1)需要进行网格遍历,进行多次的最小二乘运算,导致计算量增加。(2)我们知道最小二乘法后验残差受卫星数的影响很大。首先后验残差需要有冗余才有效,对于最小集合的卫星组合,其残差基本都为零。其次,后验残差的可靠性,易受到卫星几何分布影响,当分布差时易收敛到错误位置。

上面描述的几种方法,针对的都是单模信号。由于多模信号在无任何先验信息的时候会增加卫星数维的搜索空间,从而增加了定位时间。然而单模信号存在一个弊端,卫星数少会影响定位精度。尤其在存在遮挡的场景,较强信号有可能不能满足最小定位卫星数的要求,从而不能定位,降低了适用场景。

申请号为CN201280037984.X的发明专利公开了一种用于低功耗和低成本GNSS接收机的系统,方法和计算机程序。其可操作以提供超高速,自主的和可靠的TTFF,而不需要一个初始位置,同时,最小化的处理能力和硬件成本。该系统和方法能够使用的毫秒量级的I/Q采样可靠地恢复接收信号的传输时间,并能自主工作而不需要辅助技术,如AGPS技术会有隐私和服务的可行性的担忧。但是该发明专利并不支持多模系统,又因每次定位都是独立的首次定位,也不适用与间断性、持续性定位的低功耗、定位精度要求高的场景,那么其适用范围受限。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种多模的超快速、低功耗的定位接收机系统及方法。无需接收机位置信息,无需实时连接无线网络,提供毫秒级超快速的(TTFF)、间歇性及持续的、低功耗、自主的和可靠的位置服务。

本发明的目的是通过以下技术方案来实现的:一种多模的超快速、低功耗的定位接收机系统,包括:

射频前端装置:用于获取I/Q的GNSS卫星的中频信号采样值;

存储装置:用于存储所述中频信号采样值;

参数获取装置:用于获取包括卫星星历参数、大气模型校准参数以及先验信息参数在内的参数;

时钟获取装置:用于获得所述I/Q采样的接收机的到达时间TOA;

测量值计算装置:用于计算多模卫星系统的伪距和多普勒测量值;

PVT计算装置:用于分别在无先验信息的情况和有先验信息的情况下计算准确的接收机位置、卫星的发射时间TOT以及接收机钟差,同时计算出先验信息参数并将计算出的先验信息参数存储至参数获取装置中。

所述的测量值计算装置包括:

捕获配置参数获取模块:用于获取基于先验信息的捕获配置参数,其中,捕获配置参数包括卫星类型及卫星号、捕获模式、码相位及初始多普勒;

卫星判断配置模块:用于根据所述的捕获配置参数判断卫星是否配置,如果已经配置则进入卫星精捕获模块进行处理,否则进入差分式快速捕获卫星检测模块进行处理;

差分式快速捕获卫星检测模块:用于当前先验信息不可靠,需要盲捕获的时候,快速检测当前GNSS的可见卫星,并获得粗略码相位;

卫星粗捕获模块:用于获得粗略的多普勒频率和码相位;

卫星精捕获模块:基于粗捕获模块或者捕获配置信息,对粗略多普勒频率和码相位附近进一步搜索获得精确的多普勒频率和码相位;

多相位码鉴别补偿模块:用于对卫星精捕获模块获得的最大相关峰前后的多路相关峰峰值进行多路码鉴别,从而获得当前码相位的补偿值,并获得分数伪距。

所述的差分式快速捕获卫星检测模块包括:

混频打包单元:用于将存储的I/Q原始中频数据与本地的基频频率载波信号进行混频,然后码相位按Chip相关积分打包;

共轭差分计算单元:用于将打包的积分结果,按Chip为单位进行前后共轭差分计算;

相干累加单元:用于按码的周期对应的码相位值进行相干累加;

新伪码获取单元:用于对产生的各卫星的C/A码进行前后共轭差分,获得卫星的新伪码;

循环相关单元:用于将相干累加单元得到的相干累加值与新伪码获取单元得到的不同卫星的新伪码按码周期进行循环相关;

第一峰均比判断单元:判断对应卫星循环相关后的峰均比,是否超过门限:如果大于门限则捕获成功,并获得对应码的粗略码相位。

所述的卫星粗捕获模块和卫星精捕获模块采用相同的结构,包括:

Chip打包结果获取单元:用于获取混频打包单元的Chip打包结果;

相关计算单元:用于将Chip打包的积分结果与需要捕获的卫星C/A码进行相关计算;

相关结果平分单元:用于将N毫秒的相关结果进行平分为P份进行相干积分,得到P个相干积分I/Q值;

匹配相干单元:用于基于毫秒匹配列表,对N毫秒的平分P个相干积分I/Q值进行毫秒符合匹配相干;

FFT和最大值查找单元:用于对匹配相干单元的匹配结果进行P点的FFT运算,查找当前匹配幅值最大值;

匹配结果存储单元:用于选择幅值最大的匹配结果进行存储;

差分共轭相干积分单元:用于进行M次差分共轭相干积分,其中每一次的差分方式为:第n次N毫秒的P个点与第n+1次N毫秒的P个点对于相位进行差分,差分完成后进行对应相位幅值累加;

第二峰均比判断单元:用于判断搜索空间的峰均比,判决是否超过门限:如果超过门限,则输出对应捕获的多普勒频率和码相位。其中,这里搜索空间就是码和多普勒的二维空间。

所述的多相位码鉴别补偿模块包括:

码相位差异计算单元:用于选择最大相关峰值所对应频率下最大码相位左右对称多个相关测量值幅度,并在进行归一化之后获得码相位差异值;所述码相位差异值即为补偿值;

分数伪距计算单元:用于根据相位差异值和卫星精捕获模块得到的相位值计算出分数伪距。

所述的PVT计算装置包括:

参数获取模块:用于获取卫星星历参数、大气模型校准参数、时间间隔、粗略时间TOA、分数伪距、多普勒频率和位置信息;

先验信息判断模块:判断是否为首次定位/断电时间过长,或者是短时断电/间歇性断电定位/持续定位:如果是首次定位/断电时间过长则认为无先验信息,进入无先验信息PVT计算模块进行处理;如果是短时断电/间歇性断电定位/持续定位则认为有先验信息,进入有先验信息PVT计算模块进行处理;

无先验信息PVT计算模块:用于在无先验信息的情况下,进行最小二乘迭代解算,从而获得准确的接收机位置,准确的TOT以及接收机钟差;

有先验信息PVT计算模块:用于在有先验信息的情况下,利用构建的精确的全伪距测量值卡尔曼滤波计算PVT,获得准确的接收机位置,准确的TOT以及接收机钟差。

所述的无先验信息PVT计算模块包括:

粗略位置计算单元:基于多普勒频率测量值,利用支持多模的最小二乘迭代计算PVT,获得粗略的接收机位置、修正后的粗略TOA以及接收机钟漂;

第一全伪距计算单元:利用粗略接收机位置、修正后的粗略TOA、星历信息以及分数伪距,采用抑制TOT和位置误差构建全伪距测量值;

精确位置计算单元:基于全伪距测量值,利用支持多模的最小二乘迭代迭代计算PVT,获取准确的接收机位置、准确的TOT以及接收机钟差。

所述的粗略位置计算单元包括:

参数获取子单元:用于获取当前计算需要的输入值,包括粗略TOA、多普勒频率测量值、星历参数;

数据计算子单元:用于基于粗略TOA和星历参数,计算得到卫星位置、速度以及卫星钟差、钟漂;

接收机初始位置计算子单元:用于基于数据计算子单元获得的多模各卫星的位置,在ECEF坐标系下分别求XYZ各方向的平均值;然后将平均值转换到WGS84坐标系,将海拔置为0,然后再转换到ECEF坐标系下,计算结果作为接收机位置的初值;

多普勒定位迭代子单元:用于基于接收机位置初值和多普勒频率测量值,进行支持多模的五状态参数最小二乘多普勒定位迭代;

迭代判决子单元:用于判决迭代是否收敛,如果收敛则输出粗略接收机位置和修正TOA,否则退出。

所述的第一全伪距计算单元包括:

卫星位置计算子单元:用于利用粗略定位获得的修正的TOA,计算对应时刻的卫星位置;

预测几何距离计算子单元:用于利用卫星位置和粗略的接收机位置,计算得到估算的卫星和接收机间的预测几何距离;

初始参考卫星整数毫秒计算子单元:用于选择初始参考卫星,并计算初始参考卫星的整数毫秒;所述的初始参考卫星为仰角最高的卫星;

距离参考卫星几何距离最短的卫星整数毫秒计算子单元:用于选择离参考卫星几何距离最短的卫星,并计算整数毫秒;

全伪距计算子单元:用于构建所有卫星的全伪距。

所述的精确位置计算单元包括:

初始值计算子单元:用于对粗略位置进行计算,获得的粗略的接收机位置、修正的接收机时间TOA,其中GPS钟差和BDS钟差为0,作为迭代初始变量;并将第一全伪距计算单元构建的全伪距作为伪距测量值;

预测伪距计算子单元:用于由粗略位置与卫星坐标得到预测的伪距;

状态变量更新值计算子单元:用于根据预测的伪距与构建的全伪距测量值的偏差,计算状态变量更新值;

状态变量更新子单元:用于根据状态变量更新值对状态变量进行更新;

迭代收敛判断子单元:用于判断是否满足收敛条件,如果满足则退出,否则回到预测伪距计算子单元进行计算。

所述的有先验信息PVT计算模块包括:

第二全伪距计算单元:用于获得准确的历史TOA时间、接收机钟差、接收机钟漂、历史接收机位置信息之后,生成全伪距测量值;

卡尔曼精确位置计算单元:用于利用全伪距测量值,通过卡尔曼滤波计算PVT。

所述的第二全伪距计算单元包括:

接收机钟差估算子单元:用于根据历史接收机钟差、历史接收机钟漂时间间隔,估算当前接收机钟差;

卫星发送时间估算子单元:用于根据估算的当前接收机钟差、历史精确TOA和本地估算的时间间隔,估算卫星的发送时间TOT;

多模卫星TOT时刻位置和钟差计算子单元:用于分别计算多模卫星TOT时刻的卫星位置和卫星的钟差;

预期几何距离计算子单元:用于通过计算得到估算的卫星和接收机间的预测几何距离;

卫星整数毫秒计算子单元:用于计算各卫星整数毫秒;

全伪距计算子单元:用于构建所有卫星的全伪距。

所述的卡尔曼精确位置计算单元包括:

离散的状态方程与测量方程建立子单元:用于建立离散的状态方程与测量方程;

卡尔曼滤波预测子单元:用于在上一历元状态估计值的基础上,利用系统的状态方程来预测当前历元的状态值;

卡尔曼滤波更新子单元:用于利用实际测量值来校正经预测过程得到的状态先验估计值。

一种多模的超快速、低功耗的定位接收机方法,包括以下步骤:

S1:在中断信号到来的时间,测量值计算装置锁定射频前端装置转换的中频I/Q数据并逐步存储到存储装置中,并同时锁定时钟获取装置的当前时间作为粗略TOA;

S2:测量值计算装置获取捕获相关的配置参数并计算多模卫星系统的伪距和多普勒测量值;

S3:PVT计算装置获取多普勒测量值、粗略TOA、星历、大气修正参数,判断先验信息是否可靠,并分别在无先验信息的情况和有先验信息的情况下计算准确的接收机位置、卫星的发射时间TOT以及接收机钟差;同时计算出先验信息参数并将计算出的先验信息参数存储至参数获取装置中。

所述的步骤S2包括以下子步骤:

S21:获得基于先验信息捕获配置参数,配置不同的捕获方式;

S22:判断卫星是否配置,如果已经配置则进入步骤S25,否则进入步骤S23;

S23:差分式快速捕获卫星检测:快速检测当前GNSS的可见卫星,并获得粗略码相位;

S24:卫星粗捕获:获得粗略的多普勒频率和码相位;

S25:卫星精捕获:基于粗捕获模块或者捕获配置信息,对粗略多普勒频率和码相位附近进一步搜索获得精确的多普勒频率和码相位;

S26:多相位码鉴别补偿:对卫星精捕获模块获得的最大相关峰前后的多路相关峰峰值进行多路码鉴别,从而获得当前码相位的补偿值,并获得分数伪距。

所述的步骤S23包括以下子步骤:

S231:将存储的I/Q原始中频数据与本地的基频频率载波信号进行混频,然后码相位按Chip相关积分打包;

S232:将打包的积分结果,按Chip为单位进行前后共轭差分计算,并存储,用于后期相位累加;

S233:按码的周期对应的码相位值进行相干累加,并存储;

S234:各卫星产生的C/A码进行前后共轭差分,获得卫星的新伪码;

S235:将步骤S233存储的相干累加值,分别与步骤S234中不同卫星的新伪码,按码周期进行循环相关;

S236:判断对应卫星循环相关后的峰均比,是否过门限:大于门限则捕获成功,并获得对应码的粗相位值。

所述的步骤S24包括以下子步骤:

S241:输入步骤S231得到的Chip相关积分打包结果;

S242:将Chip打包的积分结果与需要捕获的卫星C/A码进行相关计算;

S243:将N毫秒相关结果进行P平分并进行相干积分,得到P个相干积分I/Q值;

S244:基于毫秒匹配列表,将N毫秒的P个相干积分I/Q值进行毫秒符合匹配相干;

S245:匹配结果进行P点FFT运算,查找当前匹配幅值最大值;

S246:完成匹配列表匹配后,选择幅值最大的匹配结果存储;

S247:进行M次差分共轭相干积分,其中差分方式为:第1次N毫秒的P个点与第2次N毫秒的P个点对于相位进行差分,依次类推;在差分完成后进行对应相位幅值累加;

S248:判断搜索空间的峰均比,判断是否超过门限:超过门限,输出对应捕获频率和码相位。

所述的步骤S26包括以下子步骤:

S261:选择最大相关峰值所对应频率下最大码相位左右对称多个相关测量值幅度,并在进行归一化之后获得码相位差异值;所述码相位差异值即为补偿值;

S262:根据相位差异值和卫星精捕获模块得到的相位值计算出分数伪距。

所述的步骤S3包括以下子步骤:

S31:获取卫星星历参数、大气模型校准参数、时间间隔、粗略时间TOA、分数伪距、多普勒频率和位置信息;

S32:判断是否为首次定位/断电时间过长,或者是短时断电/间歇性断电定位/持续定位:如果是首次定位/断电时间过长则认为无先验信息,进入步骤S33;如果是短时断电/间歇性断电定位/持续定位则认为有先验信息,进入步骤S34;

S33:在无先验信息的情况下,进行最小二乘迭代解算,从而获得准确的接收机位置,准确的TOT以及接收机钟差;

S34:在有先验信息的情况下,利用构建的精确的全伪距测量值卡尔曼滤波计算PVT,获得准确的接收机位置,准确的TOT以及接收机钟差。

所述的步骤S33包括以下子步骤:

S331:基于多普勒频率测量值,利用支持多模的最小二乘迭代计算PVT,获得粗略的接收机位置、修正后的粗略TOA以及接收机钟漂;

S332:利用粗略接收机位置、修正后的粗略TOA、星历信息以及分数伪距,采用抑制TOT和位置误差构建全伪距测量值;

S333:基于全伪距测量值,利用支持多模的最小二乘迭代迭代计算PVT,获取准确的接收机位置、准确的TOT以及接收机钟差。

所述的步骤S331包括以下子步骤:

S3311:获得计算需要的数据,包括粗略的接收机时间TOA、多普勒频率测量值、星历参数;

S3312:利用粗略的接收机时间TOA和星历参数,计算得到卫星位置、速度以及卫星钟差、钟漂;

S3313:基于步骤S3312获得的多模各卫星的位置,在ECEF坐标系下分别求XYZ各方向的平均值;然后将平均值转换到WGS84坐标系,将海拔置为0,然后再转换到ECEF坐标系下,计算结果作为接收机位置的初值;

S3314:基于接收机位置初值和多普勒频率测量值,进行支持多模的五状态参数最小二乘多普勒定位迭代;

S3315:判决迭代是否收敛,如果收敛则输出粗略接收机位置和修正TOA,否则退出。

所述的步骤S332包括以下子步骤:

S3321:利用粗略定位获得的修正的TOA,计算对应时刻的卫星位置;

S3322:利用卫星位置和粗略的接收机位置,计算得到估算的卫星和接收机间的预测几何距离;

S3323:基于选择初始参考卫星,并计算初始参考卫星的整数毫秒;所述的初始参考卫星为仰角最高的卫星;

S3324:选择离参考卫星几何距离最短的卫星,并计算整数毫秒;

S3325:全伪距计算子单元:用于构建所有卫星的全伪距。

所述的步骤S333包括以下子步骤:

S3331:将步骤S331中计算获得的粗略的接收机位置、修正的接收机时间TOA,GPS钟差和BDS钟差为0,作为迭代初始变量,同时将步骤S332构建的精确全伪距作为伪距测量值;

S3332:由粗略位置与卫星坐标得到预测的伪距;

S3333:根据预测的伪距与构建的全伪距测量值的偏差,计算状态变量更新值;

S3334:根据步骤S3333得到的状态变量更新值对状态变量进行更新;

S3335:判断是否满足迭代收敛条件:满足则退出,不满足则返回步骤S3332。

所述的步骤S34包括以下子步骤:

S341:基于历史位置、钟差、钟漂和时间间隔构建精确的全伪距测量值;

S342:利用全伪距测量值卡尔曼滤波计算PVT,获取准确的接收机位置,准确的TOT以及接收机钟差。

所述的步骤S341包括以下子步骤:

S3411:根据历史接收机钟差、历史接收机钟漂时间间隔,估算当前接收机钟差;

S3412:根据估算的当前接收机钟差、历史精确TOA和本地估算的时间间隔,估算卫星的发送时间;

S3413:分别计算多模卫星TOT时刻的卫星位置和卫星的钟差;

S3414:计算得到估算的卫星和接收机间的预测几何距离;

S3415:计算各卫星整数毫秒;

S3416:构建所有卫星的全伪距。

所述的步骤S342包括以下子步骤:

S3421:建立离散的状态方程与测量方程;

S3422:卡尔曼滤波迭代,包括以下子步骤:

S34221:在上一历元状态估计值的基础上,利用系统的状态方程来预测当前历元的状态值;

S34222:利用实际测量值来校正经预测过程得到的状态先验估计值。。

本发明的有益效果是:

1、利用毫秒级的短毫秒中频数据采样I/Q值,相比传统接收机大量减少数据处理量,降低功耗。

2、测量值计算装置提供一种支持低功耗、超快速获取多模卫星系统伪距和多普勒测量值的方法。从而解决传统跟踪接收机跟踪收敛速度和测量精度矛盾、单模由于卫星数不够,导致适用场景变少、以及多模型系统卫星数维增加,导致定位速度变慢的问题。其主要特点及改进点,如下:

(1)差分式快速捕获卫星检测,此法仅需要进行一次简单的相干积分,然后对需要检查的卫星作对应码的循环相关,不需要FFT等复杂度高的运算,从而降低运算量,大大提高了检测速度。特别适合多模卫星数增多的情况。

(2)卫星粗捕获和卫星精捕获的结构统一,通过灵活的配置实现各种功能要求,并且节约硬件资源。

(3)卫星粗捕获是基于粗捕获的粗略多普勒频率和码相位附近进一步搜索,从而降低了搜索空间,运算量,提升速度。

(4)利用毫秒匹配法,突破由于多模信号调制模式的不一样,导致相干积分的长度和频率FFT捕获的精度的限制。本法通过基于可能匹配列表进行匹配,扩展相干积分长度,增加非相干次数,兼容多模信号特征。

(5)多相位码鉴别所需要的输入是精捕获中最大相关峰对应的同一频率下,最大相位所对应的前后对称的多路码相位相关峰值直接获得,不需要额外的计算,减少运算量。

(6)从鉴别码相位误差的两种鉴别公式上看,其具有抑制多路径的效果。从而从捕获获得精确的码相位上具有抑制多路径的效果,提升定位精度,增加适用场景范围。

(7)多相位码鉴别的主要计算量在鉴别码相位误差,而从其公式上看仅做3次减法。相比利用曲线函数进行曲线拟合,进行迭代运算获得码相位误差,节约了大部分运算。

(8)根据不同应用场景及先验信息,提供灵活的快速捕获配置,从而减少搜索空间,提高获取测量值的速度,减少定位所需要时间。进一步减少运算量,降低功耗。

3、PVT计算装置在无需接收机位置信息、无需实时连接无线网络下,分别应用于不同的场景,减少计算量,提升定位速度和定位精度,以及定位可靠度及鲁棒性。具体的:

(1)改进支持多模的五状态变量多普勒定位和六状态变量精确定位方法。相比单模来说,增加卫星数,改善定位几何因子,提供定位精度。另外一方面,也增加定位的使用场景。例如在遮挡场景下,单模极有可能导致定位卫星数不够。

(2)由于LS迭代算法对初值的要求:初值越准确,迭代收敛速度越快,结果出现局部最优的可能行就越低。较传统的使用地心为初值,本文在粗略位置计算中,改进使用卫星位置在地面投影的均值作为初值,从而减少迭代次数,提升收敛速度,并提高粗略位置的准确度。

(3)分析粗略位置和粗略时间误差对卫星产生的估计误差的特性分析,选择仰角最高的卫星和距离最短的卫星进行逐步的全伪距构建。使得第一全伪距计算,在无先验信息情况下就具有抑制TOT和位置误差来提升构建全伪距测量值的性能。从而提高定位可用性、可靠度。

(4)根据使用场景的区别和特性,在定位间隔时间几分钟内。本文对第一全伪距计算进行改进,利用时间间隔、钟差、分数伪距等信息进行TOT估算,然后取整。从而估算出准确的TOT,从而构建准确的全伪距。相比第一全伪距计算,改进后的第二全伪距计算,减少的运算量,提升运算速度。并且构建全伪距卫星间是独立的,不会受其中一颗卫星估算错误导致其他卫星也估算错误。

(5)在间隔性断电或者短时断电时,对支持多模六状态变量最小二乘定位解算改进。使用支持多模的卡尔曼滤波解算,解决支持多模六状态变量最小二乘定位解算中,需要多次迭代。迭代每次由于TOT更新,需要重新计算卫星位置和速度等信息。而支持多模的卡尔曼滤波解算仅需要一次预测和更新,进一步减少运算和提高速度。另外滤波算法较最小二乘算法,本质上提高定位精度和鲁棒性。

4、本发明每次定位,仅需要毫秒级的短毫秒中频数据,在获取中频数据后,射频就可以断电。整个定位过程仅需要毫秒级的定位时间,那么对于1s为更新率的持续定位,一样可以支持。对应一些低功耗应用,每个几秒、几分钟进行一次定位,系统仅需要毫秒级的时间,其他时间仅时钟装置工作,其他设备完全可以断电,从而降低功耗。

附图说明

图1为本发明系统框图;

图2为本发明硬件系统框图;

图3为本发明方法流程图;

图4为测量值计算装置的计算方法流程图;

图5为差分式快速捕获卫星检测流程图;

图6为卫星粗捕获和精捕获流程图;

图7为多路捕获相位相关峰配置示意图;

图8为PVT计算装置的流程图;

图9为粗略位置计算流程图;

图10为第一全伪距计算方法流程图;

图11为接收机指向卫星的观测矢量图;

图12为第二全伪距计算方法流程图;

图13为卡尔曼滤波的迭代流程图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案:

当使用采样长度毫秒级的短毫秒中频数据,实现GNSS接收器以非常低的功率来操作并且超快速的计算位置。我们知道,如此短的中频数据,接收机时不可能利用如此短的采样长度中频数据,来解码卫星的导航数据,从而获得卫星的时间信息。另外,在如此短的采样长度中频数据远低于采用跟踪环路所需的收敛时间,要求其他精确估计技术获得伪距、多普勒测量值。

本实施例描述了一种用于从全球导航卫星系统(GNSS)的信号采样确定位置、速度和时间(PVT)的系统及方法。

图1为本发明的实施例系统框图,其包括:(1)一种GNSS采样获取装置(射频前端),用于获得同相/正交的(I/Q)的GNSS卫星的中频信号采样值;(2)一个存储中频信号采集值的存储设备;(3)一个参数获取装置,用于获取卫星星历数据、卫星时钟参数、大气层修正参数以及相关先验信息配置参数等;(4)一个时钟获取装置,用于获得所述I/Q采样的接收机接收时间(TOA);(5)一个测量值计算装置,提供一种支持低功耗、超快速获取多模卫星系统伪距和多普勒测量值;(6)一个PVT计算装置,在无需接收机位置信息、无需实时连接无线网络下,分别应用于不同的场景,提供PVT的相关信息。

其中,所述测量值计算装置,分别包括:(1)获得捕获配置参数;(2)差分式快速捕获卫星检测,用于可见卫星的快速检测;(3)卫星粗捕获,用于获得卫星的粗略码相位和多普勒测量值,不需要满足定位要求;(4)卫星精捕获,在粗捕获结果附近进一步搜索,获得更为精确的码相位和多普勒频率值。(5)多相位码鉴别补偿,对精捕获的码相位结果进行具有抗多路径效应的码相位差异鉴别,获得相位补偿值。从而获得更为精确的分数伪距测量值。

另外,所述PVT计算装置分为两个主线,分别适应不同的应用场景,分别包括:

第一、无先验信息(首次定位,或者断电时间过长);(1)粗略位置计算,利用多普勒测量值,获得粗略的接收机位置和修正后的粗略TOA,接收机钟漂。(2)第一全伪距计算,采用抑制TOT和位置误差构建全伪距测量值。(3)精确位置计算,利用全伪距测量值,获取准确的接收机位置,准确的TOT以及接收机钟差。

第二、有先验信息(短时断电,间歇性断电定位,持续定位);(1)第二全伪距计算,相对第一全伪距计算的改进方法,其目的也是构建精确的全伪距测量值。(2)卡尔曼精位置计算:利用全伪距测量值卡尔曼滤波计算PVT,获取准确的接收机位置,准确的TOT以及接收机钟差。

图2为本发明的硬件系统框图,具体给出了一个实施例的硬件系统框图。对应的,所述系统可能包括一个射频前端,其将GNSS天线的模拟射频信号RF下变频转换为数字的中频信号IF。中频信号然后被存储于随机存取存储器RAM,所述RAM将连接至一个FPGA/IC,用于处理取得GNSS卫星的测量值和中频I/Q所对应时间信息,时间信息通过RTC/晶振获得。卫星测量值被送人到数字信号处理器DSP/微处理器ARM,进行PVT相关运算。只读存储器/可擦写可编程只读存储器ROM,分别用于存储所述固件,包括处理算法,以及存储一些先验信息、星历信息、卫星钟差等参数信息。

图3为本发明方法流程图,概略的给出了系统的数据流程图。启动时,利用中断信号同时锁定时钟装置获得I/Q数据粗略接收时间(TOA),并同时锁定存储中频数据到存储设备,另外再获得参数设备的参数信息。关于捕获相关的配置用于测量值计算装置,关于星历、大气修正参数用于PVT计算装置。测量值计算装置利用中频数据I/Q、快速的获取GNSS卫星的测量值。测量值、粗略接收时间(TOA)、星历、大气修正参数进行PVT相关运算。在获得位置、速度、时间信息之后,计算当前相关的信息,计算先验信息参数,并存储到参数设备中,用于下次的定位。

其中,在中断信号到来时间,测量值计算装置锁定中频I/Q并逐步存储到存储设备中,作为后期捕获测量的输入信息。并同时锁定时钟装置的当前时间作为粗略的TOA。同时,读取参数装置的参数,例如星历参数(卫星轨道和卫星时钟参数)、卫星预测轨道参数、卫星时钟校准、大气模型校准参数(电离层,对流层)。

图4为测量值计算装置的计算方法流程图。

GNSS接收器的可用性、可靠性和精确性很大程度上依赖与测量值的精度。传统的GNSS接收机,在比特和子帧同步成功后,稳定的跟踪也确保了对星历的正确解码从而提供所述卫星的各种参数、伪距、多普勒和载波相位测量值。

然而,跟踪环在比特同步之前,只能采用短时间积分时间的跟踪环,导致测量噪声大,收敛时间长。一旦中途短电,则又需要重新入锁。则跟踪环通常不能满足需求,因为所述采样数据的长度远小于收敛时间,并且初始多普勒和码相位的精度对于定位来说太差了,本节详细描述一种具有基于不同先验场景,配置不同的可变模式的多级测量方案,提高可靠的分数伪距和多普勒测量值。本实施例主要包括5个部分:获得捕获配置参数、差分式快速捕获卫星检测、卫星粗捕获、卫星精捕获、多相位码鉴别补偿。如下概略介绍5个部分的功能。

一、获得捕获配置参数

在本实施例中,获得捕获配置参数主要基于先验信息,配置不同的捕获方式,减少捕获时间,以及提高捕获灵敏度。先验信息包括,估算的卫星多普勒范围,卫星码相位范围、钟漂等信息。

二、差分式快速捕获卫星检测

差分式快速捕获卫星检测,由于多模卫星数增加,导致卫星维搜索空间增加。通过快速搜索排除不可见卫星,从而提高捕获速度。

对应的,差分式快速捕获卫星检测用于当前先验信息不可靠,需要盲捕获的时候,快速检测当前GNSS可见卫星,并获得粗略码相位,减少后期捕获的码相位搜索范围,并且减少后期卫星粗捕获和精捕获需要捕获的卫星数,从而提升捕获速度。此法仅需要进行简单的相干积分,不需要FFT等复杂度高的运算,从而降低运算量。

经过射频前端输入I/Q中频数据后,进行Chips级相干积分打包后的中频数据复信号为:

其中,A为信号幅值,In为第n个Chip相干积分值,Qn为第n个Chip相干积分值,x(n)为卫星C/A码,D(n)为卫星导航电文,fi为未知的,为中频信号与本地基频混频后的多普勒频率。

那么信号进行前后共轭差分得:

其中,在本实施例中,对于GPS L1的CodeRate=1.023MHz,对应BDS的CodeRate=2.046MHz。

由于接收机对码级相干积分结果进行前后共轭差分操作,那么新产生的Sdif(n)则产生一个新的xdif=x(n)x(n-m)信号,其可以视为一个新的伪码。

新的输入信号Sdif(n)具有如下几个特点:(1)原始中频信号的导航电文被消除掉。(2)短时间(捕获所需要的几十毫秒)来说fi可视为不变,则是一个不随时间变化的常数,故原接收信号的多普勒也被消除。(3)常规接收机多普勒频率波动范围为10KHz,对于GNSS系统来说,

其中,对于特征(1),消除导航比特信息,那么可以进行长时的相干积分,从而提高信号捕获灵敏度。对于特征(2)和(3),消除了多普勒信息,信号仅存有可见卫星新的伪码调制在一起信息,则可以直接利用各卫星构造新伪码,直接对相干累加结果进行循环相关累加,判断捕获是否成功,并获得相应卫星的粗码相位。这样做可以先搜索码,再搜索频率维度,减少搜索次数,提高速度。并且仅需要做一次相干积分累加,其他卫星基于新伪码进行循环相关捕获卫星,不需要每颗卫星做一次独立的相干积分,从而减少运算量,提高速度。

图5为差分式快速捕获卫星检测流程图,给出了差分式快速捕获卫星检测的实现细节步骤。

1、将存储的I/Q原始中频数据与本地的基频频率载波信号进行混频,然后码相位按Chip相关积分打包。

2、将打包的积分结果,按Chip为单位进行前后共轭差分计算,并存储,用于后期相位累加。

3、按码的周期对应码相位值进行相干累加,并存储。

4、各卫星的产生C/A码,进行前后共轭差分,获得卫星的新伪码。

5、将第3步存储的相干累加值,分别与不同卫星的新伪码,按码周期进行循环相关。

6、判断对应卫星循环相关后的峰均比,是否过门限。大于门限则捕获成功,并获得对应码的粗相位值。

其中,对应第4步产生C/A的C/A发生器,一种较好的方法,可将C/A序列可被预先运算并存储在非易失性存储器中,因此在计算过程中C/A码序列总是可得的并且无需额外的运算。

三、卫星粗捕获

卫星粗捕获以较大的频率和码间隔,减少搜索空间,通过增加差分相干/非相干次数来提升捕获灵敏度,由接收机信号强度和需求性能来决定的。此阶段的多普勒值和码相位测量精度不要求达到定位所需的精度,一个大致的估计就足够了。其粗略的测量值仅用于精捕获的搜索,减少精捕获搜索空间,从而提升捕获速度和减少运算量。

图6为卫星粗捕获和精捕获的流程图,描述了卫星粗/精捕获实现细节。

1、输入差分式快速捕获计算的Chip打包结果,这里复用计算值,不需要额外的计算处理。减少计算。

2、将Chip打包的积分结果,与需要捕获的卫星C/A码进行相关计算。

3、将N毫秒相关结果进行平分P分进行相干积分,得到P个相干积分I/Q值。

4、N毫秒的平分P个相干积分值,基于毫秒匹配列表进行毫秒符合匹配相干。

5、匹配结果进行P点FFT运算,查找当前匹配幅值最大值。

6、完成匹配列表匹配后,选择幅值最大的匹配结果存储。

7、进行M次差分共轭相干积分,差分方式为,第1次N毫秒的P个点与第2次N毫秒的P个点对于相位进行差分,依次类推,差分完成后进行对应相位幅值累加。

8、判断搜索空间的峰均比,判决是否超过门限。超过门限,输出对应捕获频率和码相位。

对于BDS的No-GEO存在20ms为周期NH码,GEO是2ms的导航比特,GPS是20ms长度的导航比特。限制了相干积分的长度,也限定了频率FFT捕获的精度。本法通过基于可能匹配列表进行匹配,扩展相干积分长度,兼容多模信号特征。

虽然匹配一定程度上增加了运算,这里仅影响了首次定位。一旦定位后,通过先验信息可以估算出对应匹配信息,从而减少匹配次数。

根据先验信息,可以灵活配置捕获配置参数,从而在灵敏度,搜索速度,搜索精度上达到最优结果。对应粗捕获,需要快速确定粗略的频率和粗略的码相位值,提升速度。那么可以将N设置偏小,P值偏大,M值设大。其中N值确定捕获频率间隔,P值确定捕获FFT搜索点数、决定频率搜索范围,M值提升捕获灵敏度。由于所采用的原始中频数据是毫秒级,是有限的。则N和M需要根据实际的数据长度决定。

在本实施例中,对应粗捕获的需求,这里设置N=1,不需要进行匹配运算,提高粗捕获速度。

四、卫星精捕获

卫星精捕获目的获得更为精确的码相位和多普勒频率值,其基于粗捕获的粗略多普勒频率和码相位附近进一步搜索,从而降低了运算量,提升速度。其结构复用粗捕获,从而对于硬件实现方式节约硬件资源。其主要区别为如下几点:

1、输入的打包数据I/Q不一样,其打包间隔基于码相位精度需求,极限精度为中频数据采样间隔。另外混频的频率不是基频,而是基频+粗捕获多普勒频率。

2、精捕获的码相位搜索范围,为粗捕获的码相位精度范围。

3、精捕获频率搜索完成,为粗捕获的频率精度范围。

4、基于下面的多普勒定位精度需求决定精捕获频率精度,通过设置较大的N值来提高捕获频率精度。对于精捕获搜索的频率和码相位是很窄的范围,即使进行匹配捕获效率也满足需求。

五、多相位码鉴别补偿

多相位码鉴别补偿是利用精捕获的最大相关峰前后的多路相关峰峰值,进行多路码鉴别,从而获得当前码相位的补偿值,进一步提高码相位精度。

由前面描述,码伪距测量值的精度是GNSS接收机的关键指标。对应传统的跟踪获得码伪距测量值,需要环路稳定后才可以获得,需要较长的时间。并且跟踪环断电后,需要重新入锁稳定,存在间断性。本法是各时间上的测量时独立的,不存在前后的关联性,并且仅用几十毫秒的中频数据就可以获得。

由于精捕获在获得较精确的码相位,最大精度也只能达到以时钟的采样频率的一半。而对于低功耗的产品,需要降低的采样频率,所以其精度还不足以满足定位需求。需要进一步对码相位精度进行优化和补偿。

对于捕获或者跟踪对信号进行相干积分相关的I/Q值为如下:

类似地,对Q路的相干积分结果为

其中,A为信号幅值,Tcoh为相干积分时间长度,R(τ)为码自相关函数,其中τ为码相位偏离量,ωe为角频率差异,θe为频率相位差异,εI为I路噪声,εQ为Q路噪声,D(n)为卫星导航电文。

将3.5.1和3.5.2的I/Q积分结果利sinc函数简化和合并为复数形式为:

其中,为频率误差,εIQ为复信号噪声。

通过精捕获获得最大相关峰值的频率和码相位,并且频率和码是等间隔搜索的。选择最大相关峰值所对应频率下,最大码相位左右对称多个相关测量值幅度,并进行归一化。理想情况下,一个自相关函数测量通过毫秒级中频数据信号与本地不同的码相位进行相干累加,从而判断一个信号与另一个信号的,满足三角函数。多路相关值曲线如图7所示:多路捕获相位相关峰配置示意图。图示给出的5路,但不限于5路,可以根据精捕获码相位间隔和资源要求可以选择不同数。

分析3.5.3式频率的影响,sinc(feTcoh)和对于多路相关峰的幅度的相对量缩放,值是相等。则选择的多路相关峰值为最大相关峰对应的同一频率,并对其进行归一化处理。对于3.5.3式,则消除了频率差异的影响。另外对于同一卫星信号,信号的强度在短时间(毫秒级)是相等的,那么相关峰幅值仅与自相关函数有关,其简化为:

r(n)=R(τ)+εIQ 3.5.4

下面将描述两种利用多路相关峰值获得精确码相位的补偿值,前后斜率法和双差鉴别器法。

图7为多路捕获相位相关峰R(τ)配置示意图。基于精捕获的码间隔是等间隔,令其间隔d,图中给出了多路相关峰的配置图。

前后斜率法,如图中所示。P为最大相关峰的相位,E1和L1是一对相距为2d的窄距相关器值,E2和L2是另外一对间距为4d的较宽相关器值。那么GNSS接收机可利用这两个超前相关值E1和E2测量出自相关峰超前路的斜率aE,利用这两个滞后相关值L1和L2测量出自相关峰滞后路的斜率aL,即

那么根据自相关曲线的三角函数特性,可以根据以下公式计算出码相位的差异:

3.5.6式具有鉴别码相位误差和消除多路径的效应的计算公式。若没有多路径,则左右的斜率大小相等,且符合相反,即aE=-aL。但前后斜率法需要假定直射波的信号功率大于反射波的信号功率。

非常接近于前后斜率法,双差鉴别器法也是利用两对超前和滞后的相关值来鉴别出消除多路径影响之后的码相位差异,即补偿值,它的码相位差异计算公式如下:

自相关曲线的三角函数是在的具有无限带宽的GNSS C/A码的自相关函数是一个三角函数这一事实的。而实际中,中频信号都是经过射频电路经过一个有限带宽的带限滤波器抑制带外噪声获得。那么自相关函数曲线主峰顶端存在一个平顶问题,为了克服这一问题,相关峰的间隔d不易过窄。相关峰的间隔d是由精捕获的码相位间隔决定,其值大反而减少了捕获的搜索空间,减少运算量,提高捕获速度。所以,相关峰的间隔d的取值需要在双差鉴别器的鉴别精度上来判定。

计算获得码相位差异δcp和精捕获的毫秒内的相位值CodePhase,得到分数伪距z(k)

z(k)=mod(CodePhase+δcp,1) 3.5.8

基于以上讨论,多相位码鉴别补偿具有如下改进和特点:

1、多相位码鉴别所需要的输入是精捕获中最大相关峰对应的同一频率下,最大相位所对应的前后对称的多路码相位相关峰值直接获得,不需要额外的计算,减少运算量。

2、从鉴别码相位误差的两种鉴别公式上看,其具有抑制多路径的效果。从而从捕获获得精确的码相位上具有抑制多路径的效果,提升定位精度,增加适用场景范围。

3、多相位码鉴别的主要计算量在鉴别码相位误差,而从其公式上看仅做3次减法。相比利用曲线函数曲线拟合,进行迭代运算获得码相位误差,节约了大部分运算。

图8为PVT计算装置的流程图。

GNSS接收机能够定位的几个必须因素有:定位卫星数足够,星历、精确的卫星发送时间(TOT)以及满足定位精度的全伪距。

传统的GNSS接收机通过解算导航比特信息给出的周内时间(TOW)的转换字(HOW)来获得准确的卫星发送时间(TOT)。鉴于没有导航信息解码时无法获得准确的TOT。所述的PVT计算装置通过支持多模的五状态变量的多普勒最小二乘迭代粗略定位获得粗略的位置和修正后的TOT时间,然后利用精确的分数伪距进行六状态的最小二乘法定位来估测准确的TOT。因此,所述PVT计算装置不要解码导航比特信息。

所述PVT计算装置功能主要为利用测量值计算装置的分数伪距(精确的毫秒内码相位值)和多普勒测量值,参数装置获得的星历、电离层、对流层等修正参数,时钟装置获取的粗略的TOA时间,在没有先验位置、无TOT情况下,进行最小二乘(LS)迭代或者卡尔曼滤波定位解算,从而获得接收机PVT(位置,速度、钟差等)相关信息。

所述PVT计算装置分为两个主线,分别应用于不同的场景,减少计算量,提升定位速度和定位精度。

第一、无先验信息(首次定位,或者断电时间过长)

1、粗略位置计算:利用多普勒测量值利用支持多模的最小二乘(LS)迭代计算PVT,获得粗略的接收机位置和修正后的粗略TOA,接收机钟漂。

2、第一全伪距计算:利用粗略接收机位置、修正后的粗略TOA,星历信息及分数伪距,采用抑制TOT和位置误差构建全伪距测量值。构建的精确的全伪距测量值用于精确定位。

3、精确位置计算:利用全伪距测量值利用支持多模的最小二乘(LS)迭代迭代计算PVT,获取准确的接收机位置,准确的TOT以及接收机钟差。

第二、有先验信息(短时断电,间歇性断电定位,持续定位)

1、第二全伪距计算:基于历史位置、钟差、钟漂和时间间隔构建精确的全伪距测量值

2、卡尔曼精位置计算:利用全伪距测量值卡尔曼滤波计算PVT,获取准确的接收机位置,准确的TOT以及接收机钟差。

所述PVT计算装置具有在无需接收机位置信息,无需实时连接无线网络下,分别应用于不同的场景,减少计算量,提升定位速度和定位精度,以及定位可靠度及鲁棒性。

(1)改进支持多模的五状态变量多普勒定位和六状态变量精确定位方法。相比单模来说,增加卫星数,改善定位几何因子,提供定位精度。另外一方面,也增加定位的使用场景。例如在遮挡场景下,单模极有可能导致定位卫星数不够。

(2)由于LS迭代算法对初值的要求:初值越准确,迭代收敛速度越快,结果出现局部最优的可能行越低。较传统的使用地心为初值,本文在粗略位置计算中,改进使用卫星位置在地面投影的均值作为初值,从而减少迭代次数,提升收敛速度,并提高粗略位置的准确度。

(3)分析粗略位置和粗略时间误差对卫星产生的估计误差的特性分析,选择仰角最高的卫星和距离最短的卫星进行逐步的全伪距构建。使得第一全伪距计算,在无先验信息情况下就有抑制TOT和位置误差构建全伪距测量值的性能。从而提高定位可用性、可靠度。

(4)根据使用场景的区别和特性,在定位间隔时间几分钟内。本文对第一全伪距计算进行改进,利用时间间隔、钟差、分数伪距等信息进行TOT估算,然后取整。从而估算出准确的TOT,从而构建准确的全伪距。相比第一全伪距计算,改进后的第二全伪距计算,减少的运算量,提升运算速度。并且构建全伪距卫星间是独立的,不会受其中一颗卫星估算错误导致其他卫星也估算错误。

(5)在间隔性断电或者短时断电时,对支持多模六状态变量最小二乘定位解算改进。使用支持多模的卡尔曼滤波解算,解决支持多模六状态变量最小二乘定位解算中,需要多次迭代。迭代每次由于TOT更新,需要重新计算卫星位置和速度等信息。而支持多模的卡尔曼滤波解算仅需要一次预测和更新,进一步减少运算和提高速度。另外滤波算法较最小二乘算法,本质上提高定位精度和鲁棒性。

下面依次对有先验信息和无先验信息的五个主要步骤进行描述。

一、粗略位置计算:利用多普勒测量值利用LS迭代计算PVT

所述的粗略位置计算,利用测量值计算装置的多普勒测量值和时钟转置获得的粗略的接收时间(TOA)以及参数装置获得的星历参数作为输入,使用支持多模的最小二乘多普勒定位解算,计算获得粗略的接收机位置、修正的接收机时间(TOA)以及接收机钟漂。计算结果用于构建用于精确位置定位的全伪距构建。

图9为粗略位置计算流程图,描述了实现过程的主要功能及过程。

1、获得计算需要当前输入值:粗略的接收机时间(TOA)、多普勒测量值、星历参数。

2、利用粗略的接收机时间(TOA)和星历参数,计算得到卫星位置、速度以及卫星钟差、钟漂等。传统的计算方法,这里不再重复。

3、基于第2步获得多模各卫星的位置,在ECEF坐标系下分别求XYZ各方向的平均值。然后将平均值转换到WGS84坐标系,将海拔置为0,然后再转换到ECEF坐标系下,计算结果作为接收机位置的初值。在一般情况下,捕获上的卫星投影到地面上,其分布在接收机的四周,平均后其值靠近真实接收机位置,相对于传统采用地心位置作为初值要更接近与真实值。由于初值对LS迭代有影响,初值偏差过大易出现局部最优问题,导致迭代结果错误。从而此法提高了定位的可靠度和可用度。

4、基于第3步的接收机位置初值,进行支持多模的五状态参数最小二乘多普勒定位迭代。迭代模型及过程,将在后续详细描述。

5、判决迭代是否收敛,收敛输出粗略接收机位置和修正TOA,否则退出。

如下详细介绍支持多模的六状态变量的多普勒定位LS迭代。

在精确位置计算中已经给出,存在粗略时间误差情况下,支持多模的最小二乘定位方程组。详细见4.3.4。这里直接引入粗时伪距定位方程组:δρ=HδX

其中:ρ为测量伪距(构建的精确的全伪距),为预测伪距。

对先验状态向量X=[xu,yu,zu,tG,tB,tC]的更新向量,H为精确位置计算的几何矩阵,ε为伪距的测量误差。

对4.3.4的两边同时对时间求微分得:

对于4.1.2式的左边是先验多普勒测量值的偏差向量

其中,fd是测量的多普勒向量,是预测的多普勒向量。

对于4.1.2式的右边第一个式子实际为测量接收机速度的经典方程组。

其中是接收机速度的更新状态,分别为接收机对应GPS的钟漂和BDS的钟漂更新状态,为粗时间误差变化率。

对于4.1.2式的右边第二个式子是多普勒测量值和位置直接的关系。

基于4.3.5和e(k)是接收机到卫星k的单位观测向量,

对4.3.5的H简化,如下公式:

将H带入得,

为了简化计算,可省略掉上标和对应的导航系统的下标,则4.1.6还需要计算和并令x为卫星的位置,为卫星速度,为卫星加速度,xxyz_u为接收机位置,为卫星钟漂,为卫星钟漂速度,即卫星钟加速度,一般很小,可以忽略。R=||x-xxyz_u||为卫星和接收机的几何距离。

由于卫星钟加速度一般很小,可以忽略,则4.1.9简化为:

结合4.1.2、4.1.3、4.1.4、4.1.6、4.1.6、4.1.10,可得多模的粗时多普勒定位方程组为:

由于方程组存在12个状态变量(3个接收机位置,3个接收机速度,2个导航系统的接收机钟差,2个导航系统的接收机钟漂,粗时误差、粗时误差变化率)的关于瞬时的多普勒测量值的方程组。

假设接收机静止,忽略粗时误差变化率,2个导航系统的接收机钟漂对于同一接收机来说是相同的合并为1个接收机钟漂变量,2个导航系统的接收机钟差的系数为0,则方程组变量为减少为3个接收机位置接收机钟漂和相同,令其为粗时误差则5个未知数,需要5颗多模的5颗卫星就可以获得接收机位置,单模也同样需要5颗。

则进一步简化4.1.10方程,消除忽略的变量得方程组如下:

代入4.1.7的和4.1.9得得

令,

其中:fd是卫星多普勒频率测量值。C是光速常量(299792458m/s)。FreqRF是卫星的载波频率。GPS的L1为1575.42MHz,BDS的B1为1561.098MHz。

基于上面推导,多普勒定位方程组为:

解算4.1.16方程,通过加权最小二乘法迭代计算出为接收机位置、接收机钟漂,修正的接收机时间的状态量。权重W矩阵是对角阵,构建基于精捕获的峰均比映射权重,基本思想为峰均比越大权重越高。

计算步骤如下:

1、将卫星投影的平均值坐标坐位接收机位置的初值,接收机钟漂初值为0,时钟转置获得的粗略的接收时间(TOA)作为粗时误差初值。多普勒测量值使用计算装置的多普勒测量值。

2、由粗略位置与卫星坐标、卫星速度,按4.1.15的后半部分计算得到预测的伪距

3、根据预测的伪距与多普勒测量值fd的偏差计算状态变量更新值计算更新公式为

4、将第3步计算得到的δχ,更新到状态变量

5、判断是否满足迭代收敛条件,满足则退出。不满足跳入第2步。迭代是否收敛判决条件为时,表示收敛。

二、第一全伪距计算:抑制TOT和位置误差构建全伪距测量值

对于GNSS接收机定位,全伪距是定位的一个必要因素。粗略位置计算仅获得一个粗略位置和粗略修正的TOA,测量值计算仅获得毫秒以内的精确分数伪距。则需要构建全伪距。如下介绍如何基于粗略修正的TOA、粗略的位置以及分数伪距计算获得全伪距。

GNSS卫星发射的信号是一个时间信号,传统的GNSS接收器中,通过比特同步和帧同步后解码导航数据,获得准确的周内秒,再基于周内秒的基础上,加上本地跟踪C/A码个数来确定。而所述C/A码是按每1毫秒重复一次,所以所述分数伪距表示了1毫秒内的片段部分。

令系统存在N颗GPS卫星,M颗BDS卫星,K=M+N。所构建全伪距ρ和测量分数伪距z(k)的关系式为:

我们知道传统接收机的测量伪距,其表达式为:

其中,TOA是相对于所述接收器时钟的接收器信号的TOA,TOT(k)是相对于所述卫星时钟的发送时间TOT,C是光速常数。

如果传统的GNSS接收器在起始时不具有时间信息,所述TOA可能在相对于卫星的T0T值的基础上加上一些共有偏移量进行估测(接收机钟差)。这一初始TOA将会具有约几十毫秒的绝对误差。如果所述接收器已经被初始化了,T0A通常在1毫秒以内。

那么,所述测量伪距和真实信号移动距离之间的关系为:

其中,和分别为GPS和BDS的卫星和接收机的几何距离,和分别为GPS和BDS在TOT时刻的卫星钟差,tG和tB分别为接收机相对GPS和BDS钟差,那么根据4.2.1和4.2.2可以估算TOT,公式如下:

基于4.2.1和4.2.4的关系可以构建出全伪距,在没有解码卫星导航数据的情况下,基于4.24为每个卫星构建T0T。所构建的T0T是关于一个估测的GNSS信号的TOA,所以它与真实的T0T不相同,存在一个整数毫秒的差异,其不能达到计算所述卫星位置,速度,加速度和所述星历数据的时钟的精度。我们知道,共同的偏差对定位无影响,TOT准确值通过精确位置计算中作为状态变量迭代计算获得。

下面为了简化公式,省略GPS和BDS对应系统的下标。

如下介绍如何构建具有共同偏差正确的全伪距的原理。

首先计算选择的参考卫星的整数毫秒值N(0),故构建全伪距为N(0)+z(0)。(为了区分参考星和待计算星,参考星上标为0)。

其中:r(0)是卫星和接收机的真实几何距离,是由先验的粗时间(发射时间)和先验位置估计的几何距离,d(0)是中存在的误差,由先验时间和先验位置引起的;t(0)是卫星钟的钟差(粗时间解星历获得),tu是公共偏差(接收机和卫星的钟差),ε(0)是测量误差(包括大气误差和热噪声)。

现在的主要的难点是要对所有的测量值指定一个整数值,使它们有相同的公共偏差。假设已经成功完成此事,则对于卫星k会有如下方程:

现在将两式相减,则可以看到怎样构建N(k),使得b对每颗卫星有相同值。

那么:

由上式有如下两点结论:

1、公共偏差tu被正确的消除了。

2、不知道d(0)和d(k)的值,因为它们的值取决于先验的位置和时间,正是需要找的。然而如果-d(k)(k)+d(0)(0)<0.5ms,将会得到正确的N(k),计算如下。

其中z(0)和z(k)为测量的毫秒伪距,和δt是从先验状态的星历获得。

因此、无论选择N(0)的值为多少,得到的N(k)中隐含的公共偏差tu对所有卫星都是一致的。

如下分析TOT粗略时间误差和粗略位置误差对构建全伪距的影响,并提出抑制各误差的有效方法。

1、初始参考卫星选择(仰角最高卫星)

在计算N(k)时,指出如果-d(k)(k)+d(0)(0)的值小于0.5ms(150km),将得到正确的N(k)。那么d(k)是卫星k的几何距离估算误差,其主要由先验位置和先验时间误差导致。又由于测量误差ε(k)远小于d(k),所以认为约束条件为|d(k)-d(0)|<0.5ms。

位置和粗时误差对卫星产生影响如下:

1、先验位置误差,对垂直分量比水平分量好1~2个数量级

2、先验粗时误差,其对有最大距离变化率的卫星影响较大,也即上升和降星的卫星。

因此,初始参考卫星选择仰角最高的卫星。会同时最小化先验位置和先验时间的误差影响。

2、参考卫星选择(选择与历史参考卫星距离最近的卫星)

如果要逼近先验误差的极限,则要注意我们计算整数值的算法有效是因为保持公共偏差对每颗卫星是一致的。则可以任意更换参考卫星,但对于对公共误差仍保持一致性。在此情况下,可以优先分析|d(k)-d(0)|最小的组合。因为先验位置误差对天空相同区域的卫星有相似影响作用、先验时间误差对距离变化率相似的卫星也有相似作用。因此可以在选择初始参考卫星后,再计算第二颗卫星的N(k)值。然后可以称此第二颗卫星作为参考卫星,用计算第三颗卫星的N(k)值。每次选择与参考卫星距离最短的卫星。则这种方式每一步中最小化|d(k)-d(0)|。

结合以上的分析讨论,如下具体给出全伪距计算的具体步骤,如图10所示,全伪距计算包括:

1、利用粗略定位获得的修正的TOA,计算对应时刻的卫星位置。

2、利用卫星位置和粗略的接收机位置,计算得到估算的卫星和接收机间的预测几何距离

3、基于初始参考卫星选择原则选择初始参考卫星(仰角最高卫星),并计算参考卫星的整毫秒数

4、选择距离参考卫星几何距离最短的卫星计算整数毫秒:

5、构建所有卫星的全伪距ρ(k)=N(k)+z(k)

三、精确位置计算:利用全伪距测量值利用LS迭代计算PVT

所述精确位置计算:采用构建的全伪距测量值、星历参数、修正的TOA作为输入量和初值,采用支持多模的最小二乘迭代计算PVT,获得准确的接收机位置、准确接收机接收时间(TOA)和钟差。

相对于传统定位方程,有准确的发送时间(TOT),这里经过前面几步只是获得了修正后的TOT,其实并不准确。精确位置计算,利用构建的全伪距测量值、星历参数、引入粗时间误差δtc

下面进一步介绍如何引入粗时误差,并得到精确的位置。

我们知道,公共偏差影响的是实际测量值、且对各卫星影响大小相同,不影响定位。而TOT的误差影响的是预测值,且影响的大小各不相同。为解决粗略时误差定位问题,知道每颗卫星的相对速度和时钟频率,就可以计算伪距率。这样粗略时误差可以表示为:

其中,δtoa表示对先验粗时状态量的更新值。ttx表示实际的卫星发射时间。表示对ttx的粗时估计。是伪距速率。e(k)是从接收机到卫星k的单位观测向量,Rk为卫星到接收机的几何距离。是卫星速度向量。表示卫星时钟速率。为预测伪距。

令状态向量X=[xu,yu,zu,tG,tB,tC],其中[xu,yu,zu]为接收机位置变量、tG为接收机的GPS钟差、tB为接收机的BDS钟差,tC为先验接收机接收时间TOA的粗略时间状态量。

令,对先验状态的更新向量。

因此,需要建立有对于每颗卫星和之间的关系。中受影响的部分仅仅是且与之间的关系由4.3.1得到。因此对于每颗卫星和X之间的关系为:

对应GPS,

对应BDS,

其中ε(k)为伪距测量噪声,ρ(k)为测量伪距(构建的精确的全伪距),为预测伪距。

那么综合考虑4.3.2和2.3.3,对于K颗可用卫星,GPS为N颗,BDS为M颗,K=M+N。可得到矩阵方程组。

δρ=HδX+ε 4.3.4

其中

结合图11接收机指向卫星的观测矢量图,进一步说明4.3.5的各变量意义。

其中,下标B代表BDS系统和G代表GPS系统。下面描述中省略掉下标说明。R为对应系统卫星到接收机位置的几何距离。[xu,yu,zu]分别代表接收机在ECEF坐标系下的位置。是代表对应系统卫星的伪距速率。e(k)是从接收机到卫星k的单位观测向量,表示对应系统卫星时钟速率

解算4.3.4方程,通过加权最小二乘法迭代计算出[xu,yu,zu]为接收机位置、GPS钟差tG、BDS钟差tB,精确的接收机时间tC等变量值。权重W矩阵是对角阵,构建基于精捕获的峰均比映射权重,基本思想为峰均比越大权重越高。

计算步骤如下:

1、将粗略位置计算获得的粗略的接收机位置、修正的接收机时间(TOA),GPS钟差和BDS钟差为0,作为迭代初始变量。构建的精确全伪距作为伪距测量值。

2、由粗略位置与卫星坐标得到预测的伪距

3、根据预测的伪距与构建的全伪距测量值ρ的偏差δρ,计算状态变量更新值计算更新公式为δX=(HTWH)-1HTρ

4、将第3步计算得到的δX,更新到状态变量X=[xu,yu,zu,tG,tB,tC]

5、判断是否满足迭代收敛条件,满足则退出。不满足跳入第2步。

四、第二全伪距计算:基于历史位置、钟差、钟漂和时间间隔构建全伪距测量值

通过前面的分析,第一全伪距计算是基于粗略的TOA时间来构建的,其为了抑制粗略的时间误差和粗略的位置误差,进行了较复杂的选星处理及计算一颗卫星估算错误导致其他卫星也估算错误的问题。针对这些问题,对其进一步改进。

当已经定位后,获得了准确的历史TOA时间、接收机钟差、接收机钟漂、历史接收机位置信息。根据使用场景的区别和特性,在定位间隔时间几分钟内,通过TOA、接收机钟差、接收机钟,接收机位置进行构建全伪距导致误差一般小于0.5ms。也就是说,短时间内接收机位置运动,钟差估算的误差,以及由钟差估算误差导致的卫星位置误差导致的伪距变化,会直接影响支持的间断时间间隔大校。相比第一全伪距计算,改进后的第二全伪距计算,减少的运算量,提升运算速度。并且构建全伪距卫星间是独立的,不会受其中一颗卫星估算错误导致其他卫星也估算错误。

如图12所示,第二全伪距计算的计算步骤:

1、利用历史接收机钟差、历史接收机钟漂时间间隔T,估算当前接收机钟差。其中:

对于GPS系统,

对于BDS系统,

2、估算的当前接收机钟差历史精确TOA和本地估算的时间间隔T,估算卫星的发送时间,此估算存在毫秒级的误差,但其影响的估计卫星位置和卫星钟差引起的伪距误差相对于0.5ms小很多。

对于GPS系统,

对于BDS系统,

其中。GPS为N颗卫星,n代表其第n颗卫星。同理BDS为M颗卫星,m代表其第m颗卫星。和为历史的卫星到接收机的几何距离。

3、计算和时刻卫星位置和卫星的钟差。

4、计算得到估算的卫星和接收机间的预测几何距离和

5、计算各卫星整数毫秒:

对于GPS系统,

对于BDS系统,

6、构建所有卫星的全伪距ρ(k)=N(k)+z(k)

五、卡尔曼精位置滤波计算:利用全伪距测量值卡尔曼滤波计算PVT

在间隔性断电或者短时断电时,通过第二全伪距计算,能够获得准确的伪距和TOT。则可以通过传统多模最小二乘(LS)对进行定位解算,减少每次迭代运算中重新计算卫星位置和速度等运算。但由于最小二乘的定位结果没有将不同时刻的运动特性联系起来,通常最小二乘结果相当粗糙和杂乱,从而影响定位精度和鲁棒性。

本发明通过支持多模的卡尔曼滤波解算,提高定位精度、鲁棒性,以及减少运算。支持多模的卡尔曼滤波解算仅需要一次预测和更新,进一步减少运算和提高速度。

如下详细介绍模型及更新方式。

卡尔曼滤波器的基本思想就在于用两个方程分别表示未知状态的转移过程和测量系统输入与输出的关系,从而把某个时刻的状态值与当前以及以前时刻的测量值联系起来。因此,卡尔曼滤波问题的实质是以某种最优方式联合求解未知状态方程和测量方程的问题。建立离散的状态方程与测量方程如式4.5.1和4.5.2。

s(k)=F*s(k-1)+w(k-1) (4.5.1)

z(k)=G*s(k)+v(k) (4.5.2)

其中,s(k)和z(k)分别是第k时刻的状态变量和测量向量,F和G分别是状态转移矩阵和测量矩阵,w(k)和v(k)分别是第k时刻的过程噪声和测量误差。

卡尔曼滤波器的迭代过程如式(4.5.3)~(4.5.8)以及图13所示。

预测过程—预测过程又叫时间更新过程,它在上一(即第k-1)历元状态估计值的基础上,利用系统的状态方程来预测当前(即第k)历元的状态值。

更新过程—测量更新过程又称校正过程,它利用实际测量值来校正经预测过程得到的状态先验估计值。

其中,和分别代表第k时刻状态变量的预测值和估计值,和Pk分别是第k时刻预测和估计误差的协方差矩阵,Q和R分别是w(k)和v(k)的协方差矩阵,ek是测量向量zk所对应的新息过程,Kk是第k时刻的卡尔曼增益。由上述求解过程可以看出,卡尔曼滤波器的解是递归计算的,其状态的每一次更新估计都由前一次估计和新的输入数据计算得到,因此只需存储前一次估计,并可实现实时处理。

状态向量为

状态转移矩阵:

其中:

过程噪声协方差矩阵:

其中,

其中,为各方向加速度的方差的最大值,T为时间间隔。

系统测量矩阵:

其中:

其中、和是对应卫星到接收机的几何距离,IG和IB为单位矩阵。

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