CN105116419B - 一种gnss接收机、双路载波相位伪距平滑方法 - Google Patents
一种gnss接收机、双路载波相位伪距平滑方法 Download PDFInfo
- Publication number
- CN105116419B CN105116419B CN201510520496.XA CN201510520496A CN105116419B CN 105116419 B CN105116419 B CN 105116419B CN 201510520496 A CN201510520496 A CN 201510520496A CN 105116419 B CN105116419 B CN 105116419B
- Authority
- CN
- China
- Prior art keywords
- epoch
- carrier phase
- wave filter
- pseudorange
- range
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/35—Constructional details or hardware or software details of the signal processing chain
- G01S19/37—Hardware or software details of the signal processing chain
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明公开了一种GNSS接收机、双路载波相位伪距平滑方法,该方法包括:接收导航卫星发送的信号,得到定位数据;第一滤波器根据定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;第二滤波器根据定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;将第一载波相位平滑伪距和第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2。本发明实现第一滤波器和第二滤波器交替进行初始化,输出的平滑结果始终是历元值大于M/2的平滑结果,精度较高。在发生周跳时,可以在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。
Description
技术领域
本发明涉及GNSS(Global Navigation Satellite System,全球导航卫星系统)接收机定位领域,尤其涉及一种GNSS接收、双路载波相位伪距平滑方法。
背景技术
在GNSS接收机定位领域中,每个GPS卫星均发送它所在的准确位置和发送信号起始时间,接收机接收到这些信号后,根据卫星发送信号与收到信号的时间间隔来计算接收机到各个卫星之间的距离,由于测距受大气延迟和接收机时钟与卫星时钟不同步的影响,这个距离不是几何距离,故称它为“伪距”,当计算出接收机与各个卫星之间的伪距后,采用最小二乘法逐步逼近算法确定出接收机在地球表面所处的位置。通常引入伪距平滑技术来解决伪距误差大,单点定位精度低的问题。
多普勒频移平滑伪距方法中,运用码相位测量值计算出伪距,然后用多普勒频移信息对伪距进行平滑,从而减小伪距误差,但是这种方法的平滑伪距精度低于载波相位平滑伪距。
GNSS的粗码伪距为GNSS针对民用用户公开提供的距离观测量。GNSS的粗码伪距误差较大,GNSS接收机输出的粗码伪距测量误差在包括多路径时可达1m~3m左右。GNSS载波相位伪距(转换为距离的载波相位)随机误差仅为毫米级,即使包括了多路径效应,随机测量误差也小于1cm。通过滤波器进行多历元的载波相位平滑伪距算法,可以压缩粗码伪距误差,提高定位精度。
但是滤波器运行多历元的载波相位平滑伪距算法时,尤其是滤波器在每次初始化后运行历元值较小的运算时,存在着运算得到的载波相位平滑伪距对粗码伪距误差的压缩效果较差,平滑精度较低的问题。
发明内容
本发明实施例提供一种GNSS接收机、双路载波相位伪距平滑方法,用以解决滤波器在每次初始化后运行历元值较小的运算时,存在着运算得到的载波相位平滑伪距对粗码伪距误差的压缩效果较差,平滑精度较低的问题。
本发明实施例提供一种全球卫星导航系统GNSS接收机双路载波相位伪距平滑方法,包括:
接收导航卫星发送的信号,得到定位数据;
第一滤波器根据所述定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;其中,历元k1为所述第一滤波器初始化后运行的次数;
第二滤波器根据所述定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;其中,历元k2为所述第二滤波器初始化后运行的次数;
将所述第一载波相位平滑伪距和所述第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为所述定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2。
本发明实施例还提供了一种全球卫星导航系统GNSS接收机,包括:
接收单元301,用于接收导航卫星发送的信号,得到定位数据;
第一滤波器302,用于根据定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;其中,历元k1为第一滤波器初始化后运行的次数;
第二滤波器303,用于根据定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;其中,历元k2为第二滤波器初始化后运行的次数;
确定单元304,用于将第一载波相位平滑伪距和第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2。
上述实施例中,因第一滤波器的当前历元值与第二滤波器的当前历元值相差使得第一滤波器在运行历元值较小的上述运算时,第二滤波器在运行历元值至少为的运算;或者当第一滤波器在运行历元值至少为的运算时,第二滤波器在运行历元值较小的运算,而最终输出的载波相位平滑伪距值是第一滤波器和第二滤波器输出的载波相位平滑伪距中历元值较大的载波相位平滑伪距,这样可以实现接收机每次确定的最终输出的载波相位平滑伪距值均为历元值大于或等于时的载波相位平滑伪距,进而保证载波相位平滑伪距对粗码伪距误差的压缩效果的稳定性。从而避免了现有技术中滤波器在每次初始化后运行历元值较小的运算时,运算得到的载波相位平滑伪距对粗码伪距误差的压缩效果较差,平滑精度较低的问题。。
本发明的上述方法流程还可以实现第一滤波器和第二滤波器交替进行初始化,在发生周跳时,可以在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为发明实施例提供的一种GNSS接收机双路载波相位伪距平滑方法的方法流程图;
图2为本发明实施例提供的一种GNSS接收机双路载波相位伪距平滑方法的流程图;
图3为本发明实施例提供的一种GNSS接收机的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
为了解决现有技术中存在的滤波器在每次初始化后运行历元值较小的运算时,运算得到的载波相位平滑伪距对粗码伪距误差的压缩效果较差,平滑精度较低的问题。本发明设计了一种新的双路并行载波相位平滑伪距算法,与现有载波相位平滑伪距算法不同的是,本发明采用两路载波相位伪距平滑滤波器,并且每一路滤波器均添加初始化机制。每一路滤波器从历元值k=1开始运算,k=1时,滤波器初始化,将输入滤波器的粗码伪距作为载波相位平滑伪距初始值,之后每平滑一次k值加1。为了避免k的取值范围越小,平滑精度越低,以及k的取值范围越大,初始化间隔时间越长,一旦发生周跳,需要等待更长的时间才能进行初始化剔除周跳影响。本发明在“缩短周跳误差的影响时间”和“提高载波相位平滑伪距的平滑精度”二者之间权衡出一个较为合适的k值,使k的最小取值为1,最大取值为平滑常数M。当k=M时,将k重置为1,以使滤波器再次进行初始化(M为平滑常数)。基于上述发明构思,本发明的方案为:采用两路滤波器同时运行载波相位伪距平滑算法,每一路滤波器均添加初始化机制,且两路滤波器交替进行初始化(两路滤波器当前运行的历元值相差M/2,可以实现两路滤波器交替进行初始化),将两路滤波器每一次运行输出的平滑结果中历元值较大的平滑结果确定为最终的平滑结果,这样一方面保证接收机每次输出的都是历元值M/2以后的平滑结果,进而使得平滑精度整体均衡;另一方面保证发生周跳时,周跳误差对载波相位平滑伪距的影响时间尽可能缩短。
基于上述发明构思,下面将结合附图对本发明作进一步地详细描述。
如图1所示的本发明实施例提供一种GNSS接收机双路载波相位伪距平滑方法,该方法包括:
步骤101,接收导航卫星发送的信号,得到定位数据;
步骤102A,第一滤波器根据定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;其中,历元k1为第一滤波器初始化后运行的次数;
步骤102B,第二滤波器根据定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;其中,历元k2为第二滤波器初始化后运行的次数;
步骤103,将第一载波相位平滑伪距和第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2。
上述方法流程中,历元或者历元值代表滤波器算法从初始化开始运行的次数,如初始化时历元值为1。两个滤波器的历元值不同是表示二者算法运行的次数不同。上述两个滤波器在同一时刻接收到的数据是相同的,只是他们算法运行的次数不同,输出的结果不同。
步骤101中,接收机接收导航卫星发送的信号,根据导航卫星发送信号的数据和接收信号的数据,得到定位数据,接收机所得到的定位数据包括粗码伪距和载波相位伪距,接收机实时向第一滤波器和第二滤波器输出得到的粗码伪距和载波相位伪距。
步骤102A包括:第一滤波器根据定位数据和上一次运算的平滑结果计算得到历元k1的载波相位平滑伪距,将历元k1的载波相位平滑伪距标记为第一载波相位平滑伪距。
具体的,接收机将当前时刻的定位数据输出到第一滤波器和第二滤波器,对于第一滤波器来说,获取的当前时刻的定位数据用于进行第k1次运算,即第一滤波器的当前历元为k1的运算,第一滤波器根据定位数据中的载波相位伪距L(k),上一历元的载波相位伪距,上一历元的载波相位平滑伪距,将k=k1代入下面公式一计算得到历元k1的外推伪距Pex(k1)。然后基于历元k1的外推伪距Pex(k1),定位数据中的粗码伪距P(k),以及伪距权重,计算得出历元k1的载波相位平滑伪距Psm(k1),第一滤波器将历元k1的载波相位平滑伪距Psm(k1)作为第一载波相位平滑伪距输出。
Pex(k)=Psm(k-1)+[L(k)-L(k-1)] (公式一)
Psm(k)=w(k)*P(k)+[1-w(k)]*Pex(k),w(k)=1/k (公式二)
其中,P(k)为定位数据中的粗码伪距,L(k)为定位数据中的载波相位伪距,L(k-1)为上一历元的载波相位伪距,Psm(k-1)是上一历元的载波相位平滑伪距,Pex(k)为当前历元的外推伪距,Psm(k)为当前历元的载波相位平滑伪距,w(k)是当前历元的伪距权重。
步骤102A中,若k1=1,第一滤波器进行初始化,将定位数据中的粗码伪距作为载波相位平滑伪距初始值;
在步骤102A之后,还包括:第一滤波器判断下一历元k1+1的值是否大于M;若是,将下一历元k1+1的值重置为k1=1,以使第一滤波器在下一历元进行初始化;若否,执行下一历元(k1+1)的载波相位平滑伪距算法。
步骤102B包括:第二滤波器根据定位数据和上一次运算的平滑结果计算得到历元k2的载波相位平滑伪距,将历元k2的载波相位平滑伪距标记为第二载波相位平滑伪距。
具体的,接收机将当前时刻的定位数据输出到第一滤波器和第二滤波器,对于第二滤波器来说,获取的当前时刻的定位数据用于进行第k2次运算,即第二滤波器的当前历元为k2的运算,第二滤波器根据定位数据中的载波相位伪距L(k),上一历元的载波相位伪距,上一历元的载波相位平滑伪距,将k=k2代入下面公式一计算得到历元k2的外推伪距Pex(k2)。然后基于历元k2的外推伪距Pex(k2),定位数据中的粗码伪距P(k),以及伪距权重,计算得出历元k2的载波相位平滑伪距Psm(k2),第二滤波器将历元k2的载波相位平滑伪距Psm(k2)作为第二载波相位平滑伪距输出。
步骤102B中,若k2=1,第二滤波器进行初始化,将定位数据中的粗码伪距作为载波相位平滑伪距初始值。
在步骤102B之后,还包括:第二滤波器判断下一历元k2+1的值是否大于M;若是,将下一历元k2+1的值重置为k2=1,以使第二滤波器在下一历元进行初始化;若否,执行下一历元(k1+1)的载波相位平滑伪距算法。为了提高整体的定位精度,避免输出历元值较小时的平滑结果,本发明需要第一滤波器和第二滤波器交替进行初始化,这样使得接收机输出的平滑结果始终是历元值大于M/2的平滑结果,因此,在步骤102A和步骤102B中,基于定位数据,第一滤波器执行第k1次载波相位平滑伪距算法,第二滤波器执行第k2次载波相位平滑伪距算法,其中,k1、k2相差M/2,即第一滤波器的当前历元值k1与第二滤波器的当前历元值k2相差其中,M是统计出的固定值,优选的,M为平滑常数。
对于第一滤波器和第二滤波器来说,若要实现第一滤波器的当前历元值k1与第二滤波器的当前历元值k2相差可按照预定策略,使其中一个滤波器(如A)先运行,另外一个滤波器(如B)在滤波器A初始化后执行第M/2+1次运算时,滤波器B开始进行初始化。
平滑常数M是影响载波相位平滑伪距精度的重要参数。M取值如果太小,会影响平滑对伪距误差的压缩效果,M取值如果太大,则会引入不可忍受的电离层发散误差。本发明关于平滑常数M作以下说明:
本发明中的平滑常数的取值,可参考专利号为CN103792558A的申请文件,该申请文件公开了一种平滑常数M值详细推导公式,主要根据平滑常数与测量设备误差的方差之间的数学关系,采用拉格朗日极值法,获取平滑常数M,其中,为GNSS粗码伪距的设备测量误差的方差,Tm为数据采样周期,Id为电离层延迟的发散变化率。与一般的固定M值的方法相比,用这个方法取得的M值更加科学,适应性更好,避免了由于强制或经验取值而造成的平滑效果不佳甚至平滑失效的问题,既能获得较好的伪距平滑精度,又能抑制电离层发散误差。
在步骤103之前还包括,接收机获取第一滤波器输出的第一载波相位平滑伪距,以及第二滤波器输出的第二载波相位平滑伪距。步骤103中,接收机将第一滤波器和第二滤波器输出的载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为最终的平滑结果进行输出。
上述方法流程中,因第一滤波器的当前历元值与第二滤波器的当前历元值相差使得第一滤波器在运行历元值较小的上述运算时,第二滤波器在运行历元值至少为的运算;或者当第一滤波器在运行历元值至少为的运算时,第二滤波器在运行历元值较小的运算,而最终输出的载波相位平滑伪距值是第一滤波器和第二滤波器输出的载波相位平滑伪距中历元值较大的载波相位平滑伪距,这样可以实现接收机每次确定的最终输出的载波相位平滑伪距值均为历元值大于或等于时的载波相位平滑伪距,进而保证载波相位平滑伪距对粗码伪距误差的压缩效果的稳定性,避免了现有技术中滤波器在每次初始化后运行历元值较小的运算时,运算得到的载波相位平滑伪距对粗码伪距误差的压缩效果较差,平滑精度较低的问题。
通常载波相位伪距测量值有整周模糊度未知的问题,在卫星连续跟踪的情况下,这个模糊度不变,载波相位伪距历元间差(转换为距离差)与粗码伪距差应该相等,因此可以通过差分抵消。在民用市场中,卫星受到遮挡和干扰是很常见的事,一旦卫星失锁,将会发生周跳,载波相位伪距误差较大,甚至产生错误值,导致平滑精度将受到影响(发生周跳时,一般是载波相位伪距受到影响较大,伪距受影响较小。载波相位伪距误差大时,平滑精度受到影响),并且由于平滑常数M一般远大于1,周跳造成的影响将在一段时间中持续存在。例如,参照载波相位平滑伪距的上述计算公式一和公式二,假设滤波器平稳运行,历元值大于k,某一刻发生周跳,造成了Δxm的误差,发生周跳后的第一次运算中,这个周跳误差首先传递给Pex(k),给Pex(k)造成Δxm的误差,由于伪距权重为1/M,这会给Psm(k)造成的误差,本次计算结束。下一次运算,Pex(k)仍旧包含的误差,同样给Psm(k)造成的误差,依次类推,发生周跳后第N次运算将给Psm(k)造成的的误差。随着算法的运行,这个误差会趋向于0。M值越大,趋向于0的速度越慢。
如果不进行滤波器初始化,在M值等于100的情况下,周跳(设周跳值为Δx)发生后经过100个历元,仍会对运算结果造成的影响,即0.37Δx的影响。
滤波器初始化是将滤波器重启,重置所有参数,可以隔断之前数据的影响。如果在单滤波器的情况下初始化,尽管能够完全消除周跳的影响,但是初始化之后的一段历元内平滑伪距精度较低,影响定位精度。
本发明的上述方法流程可以实现第一滤波器和第二滤波器交替进行初始化,输出结果始终是历元值大于M/2的平滑结果,精度较高。在发生周跳时,可以在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。这是因为第一滤波器的当前历元值与第二滤波器的当前历元值相差若第一滤波器判断下一历元值大于M,则进行初始化操作,即将下一历元的值重置为1,使得第一滤波器在下一历元输出的载波相位平滑伪距为载波相位平滑伪距初始值,与此同时,第二滤波器判断出下一历元值小于M,执行下一历元的载波相位平滑伪距算法;也就是说,第一滤波器判断执行初始化操作的同时,第二滤波器判断执行下一历元的载波相位平滑伪距算法,或者第二滤波器判断执行初始化操作的同时,第一滤波器判断执行下一历元的载波相位平滑伪距算法,这样实现了第一滤波器和第二滤波器交替进行初始化,可以在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。
在上述方法流程的基础上,还可通过但不限于以下方式在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。
方式一:若检测到周跳,当前历元值较大的滤波器的将下一历元值重置为1,使得该滤波器在下一历元输出的载波相位平滑伪距为载波相位平滑伪距初始值。这样,当前历元值较小的滤波器在进行初始化之前的一段时间长度内所输出的载波相位平滑伪距还是受周跳误差的影响,不过影响时间较短。例如,若检测到卫星周跳,则当历元k1大于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化。
方式二:若检测到周跳,当前历元值较小的滤波器的将下一历元值重置为1,使得该滤波器在下一历元输出的载波相位平滑伪距为载波相位平滑伪距初始值。当前历元值较大的滤波器输出的载波相位平滑伪距受周跳误差的影响,不过影响时间较短,直至当前历元值较小的滤波器运行M/2次以后,不受周跳影响。例如,若检测到卫星周跳,当历元k1大于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化。
下面结合具体的流程图,如图2所示一种GNSS接收机双路载波相位伪距平滑方法的流程图,对本发明的上述方法流程进行详细说明。
对于图2中的两个滤波器来说,后续步骤中的运算方法是相同的,不同的是两个滤波器的历元值k1、k2错开,二者之间相差一个固定值,这个固定值为M/2,M是平滑常数。具体包括以下步骤:
步骤A:第一滤波器和第二滤波器获取GNSS接收机实时输出的粗码伪距P(k)和载波相位伪距L(k)。P(k)和L(k)是接收机前端部分输出的数据,作为滤波器的输入,这对于两个滤波器来说是相同的。在当前时刻,第一滤波器正在运行历元值为k1的算法,第二滤波器正在运行历元值为k2的算法,其中,历元值k1、k2相差M/2。
步骤B:第一滤波器判断当前历元值k1是否等于1,若k1=1,则执行步骤C,若否,执行步骤D;第二滤波器判断当前历元值k2是否等于1,若k2=1,则执行步骤C,否则,执行步骤D。
步骤C:滤波器进行初始化,将当前时刻获取的粗码伪距作为载波相位平滑伪距初始值输出,初始化完成后,将当前历元值加1作为下一历元的历元值。对于第一滤波器,若k1=1,则进行初始化,输出Psm(1)=P(1),初始化完成后,将k1值加1(k1=k1+1);对于第二滤波器,若k2=1,则进行初始化,输出Psm(1)=P(1),初始化完成后,将k2值加1(k2=k2+1)。
步骤D:第一滤波器根据接收机输出的粗码伪距P(k)和载波相位伪距L(k),执行第k1次载波相位平滑伪距算法,得到当前历元的载波相位平滑伪距Psm(k1),并将Psm(k1)输出;第二滤波器根据接收机输出的粗码伪距P(k)和载波相位伪距L(k),执行第k2次载波相位平滑伪距算法,得到当前历元的载波相位平滑伪距Psm(k2),并将Psm(k2)输出。
具体的,第一滤波器根据载波相位伪距L(k),即用于第k1次运算的载波相位伪距L(k1),上一历元的载波相位伪距L(k1-1),上一历元的载波相位伪距平滑Psm(k1-1),将k=k1代入计算公式一计算得到当前历元的外推伪距Pex(k1);根据当前历元的外推伪距Pex(k1),定位数据中的粗码伪距P(k),即用于第k1次运算的粗码伪距P(k1),以及伪距权重w(k1),将k=k1代入计算公式二,计算得出当前历元的载波相位平滑伪距Psm(k1)。
具体的,第二滤波器根据载波相位伪距L(k),即用于第k2次运算的载波相位伪距L(k2),上一历元的载波相位伪距L(k2-1),上一历元的载波相位伪距平滑Psm(k2-1),将k=k2代入计算公式一计算得到当前历元的外推伪距Pex(k2);根据当前历元的外推伪距Pex(k2),粗码伪距P(k),即用于第k2次运算的粗码伪距P(k2),以及伪距权重w(k2),将k=k2代入计算公式二,计算得出当前历元的载波相位平滑伪距Psm(k2)。
其中,所涉及的公式为:
Pex(k)=Psm(k-1)+[L(k)-L(k-1)] (公式一)
Psm(k)=w(k)*P(k)+[1-w(k)]*Pex(k),w(k)=1/k (公式二)
第一滤波器和第二滤波器执行步骤D之后,转入步骤E。接收机在第一滤波器和第二滤波器执行步骤D之后,转入步骤F。
步骤E:第一滤波器将当前历元值加1作为下一历元的历元值(k1=k1+1),判断下一历元值是否大于M,若是,将下一历元值重置为1(将k1=k1+1重置为k1=1),使得第一滤波器在下一历元进行初始化;若否,第一滤波器返回步骤B。
第二滤波器将当前历元值加1作为下一历元的历元值(即k2=k2+1),判断下一历元值是否大于M,若是,将下一历元值重置为1(将k2=k2+1重置为k2=1),使得第二滤波器在下一历元进行初始化;若否,第一滤波器返回步骤B。
步骤F:接收机获取第一滤波器输出Psm(k1),以及第二滤波器输出的Psm(k2),为了确保伪距精度,将Psm(k1)和Psm(k2)中历元值较大的确定为最终输出值(最终的载波相位平滑伪距是接收机后端部分输出的平滑结果),例如,若k1<k2,则当1<k1<M/2,且M/2<k2<M时取第二滤波器的平滑伪距为最终平滑结果;若k1>k2,则当1<k2<M/2且M/2<k1<M时取第一滤波器的平滑伪距为最终平滑结果。
上述实施例中,因第一滤波器的当前历元值与第二滤波器的当前历元值相差使得第一滤波器在运行历元值较小的上述运算时,第二滤波器在运行历元值至少为的运算;或者当第一滤波器在运行历元值至少为的运算时,第二滤波器在运行历元值较小的运算,而最终输出的载波相位平滑伪距值是第一滤波器和第二滤波器输出的载波相位平滑伪距中历元值较大的载波相位平滑伪距,这样可以实现接收机每次确定的最终输出的载波相位平滑伪距值均为历元值大于或等于时的载波相位平滑伪距,进而保证载波相位平滑伪距对粗码伪距误差的压缩效果的稳定性,解决了现有技术中滤波器在每次初始化后运行历元值较小的运算时,运算得到的载波相位平滑伪距对粗码伪距误差的压缩效果较差,平滑精度较低的问题。本发明的上述方法流程可以实现第一滤波器和第二滤波器交替进行初始化,输出的平滑结果始终是历元值大于M/2的平滑结果,精度较高。在发生周跳时,可以在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。
针对上述方法流程,本发明实施例还提供一种的系统,这些系统的具体内容可以参照上述方法实施,在此不再赘述。
本发明实施例还提供了一种如图3所示的一种全球卫星导航系统GNSS接收机,包括:
接收单元301,用于接收导航卫星发送的信号,得到定位数据;
第一滤波器302,用于根据定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;其中,历元k1为第一滤波器初始化后运行的次数;
第二滤波器303,用于根据定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;其中,历元k2为第二滤波器初始化后运行的次数;
确定单元304,用于将第一载波相位平滑伪距和第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2。
进一步的,M为平滑常数;
第一滤波器302还用于:在根据定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距之后,判断下一历元k1+1的值是否大于M;若是,将下一历元k1+1的值重置为k1=1,以使第一滤波器在下一历元进行初始化;
第二滤波器303还用于:在根据定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距之后,判断下一历元k2+1的值是否大于M;若是,将下一历元k2+1的值重置为k2=1,以使第二滤波器在下一历元进行初始化。
进一步的,第一滤波器302具体用于:根据定位数据和上一次运算的平滑结果计算得到历元k1的载波相位平滑伪距,将历元k1的载波相位平滑伪距标记为第一载波相位平滑伪距;
第二滤波器303具体用于:根据定位数据和上一次运算的平滑结果计算得到历元k2的载波相位平滑伪距,将历元k2的载波相位平滑伪距标记为第二载波相位平滑伪距。
进一步的,定位数据包括粗码伪距和载波相位伪距;
第一滤波器302具体用于:若k1=1,第一滤波器302进行初始化,将定位数据中的粗码伪距作为载波相位平滑伪距初始值;
第二滤波器303具体用于:若k2=1,第二滤波器303进行初始化,将定位数据中的粗码伪距作为载波相位平滑伪距初始值。
进一步的,还包括检测单元,用于检测卫星是否发生周跳;若检测单元检测到周跳,则
当历元k1大于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;或者,
当历元k1大于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化。
上述实施例可以实现第一滤波器和第二滤波器交替进行初始化,输出的平滑结果始终是历元值大于M/2的平滑结果,精度较高。在发生周跳时,可以在较短时间内消除卫星失锁产生的周跳对平滑精度的影响。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种全球导航卫星系统GNSS接收机双路载波相位伪距平滑方法,其特征在于,包括:
接收导航卫星发送的信号,得到定位数据;
第一滤波器根据所述定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;其中,历元k1为所述第一滤波器初始化后运行的次数;
第二滤波器根据所述定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;其中,历元k2为所述第二滤波器初始化后运行的次数;
将所述第一载波相位平滑伪距和所述第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为所述定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2,且历元k1、历元k2的最大值为M,其中,所述M为平滑常数。
2.如权利要求1所述的方法,其特征在于,
所述第一滤波器根据所述定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距之后,还包括:
判断下一历元k1+1的值是否大于M;
若是,将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化;
所述第二滤波器根据所述定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距之后,还包括:
判断下一历元k2+1的值是否大于M;
若是,将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化。
3.如权利要求1所述的方法,其特征在于,
所述第一滤波器根据所述定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距,包括:
根据所述定位数据和上一次运算的平滑结果计算得到历元k1的载波相位平滑伪距,将历元k1的载波相位平滑伪距标记为所述第一载波相位平滑伪距;
所述第二滤波器根据所述定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距,包括:
根据所述定位数据和上一次运算的平滑结果计算得到历元k2的载波相位平滑伪距,将历元k2的载波相位平滑伪距标记为所述第二载波相位平滑伪距。
4.如权利要求3所述的方法,其特征在于,所述定位数据包括粗码伪距和载波相位伪距;
若k1=1,所述第一滤波器进行初始化,将所述定位数据中的粗码伪距作为载波相位平滑伪距初始值;
若k2=1,所述第二滤波器进行初始化,将所述定位数据中的粗码伪距作为载波相位平滑伪距初始值。
5.如权利要求1所述的方法,其特征在于,还包括检测卫星是否发生周跳;
若检测到卫星周跳,则
当历元k1大于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;或者,
当历元k1大于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化。
6.一种全球导航卫星系统GNSS接收机,其特征在于,包括:
接收单元,用于接收导航卫星发送的信号,得到定位数据;
第一滤波器,用于根据所述定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距;其中,历元k1为所述第一滤波器初始化后运行的次数;
第二滤波器,用于根据所述定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距;其中,历元k2为所述第二滤波器初始化后运行的次数;
确定单元,用于将所述第一载波相位平滑伪距和所述第二载波相位平滑伪距中历元值较大的载波相位平滑伪距确定为所述定位数据的载波相位平滑伪距;其中,历元k1、历元k2相差M/2,且历元k1、历元k2的最大值为M,其中,所述M为平滑常数。
7.如权利要求6所述的接收机,其特征在于,
所述第一滤波器还用于:在根据所述定位数据执行第k1次载波相位平滑伪距算法,得到第一载波相位平滑伪距之后,判断下一历元k1+1的值是否大于M;若是,将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化;
所述第二滤波器还用于:在根据所述定位数据执行第k2次载波相位平滑伪距算法,得到第二载波相位平滑伪距之后,判断下一历元k2+1的值是否大于M;若是,将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化。
8.如权利要求6所述的接收机,其特征在于,
所述第一滤波器具体用于:根据所述定位数据和上一次运算的平滑结果计算得到历元k1的载波相位平滑伪距,将历元k1的载波相位平滑伪距标记为所述第一载波相位平滑伪距;
所述第二滤波器具体用于:根据所述定位数据和上一次运算的平滑结果计算得到历元k2的载波相位平滑伪距,将历元k2的载波相位平滑伪距标记为所述第二载波相位平滑伪距。
9.如权利要求8所述的接收机,其特征在于,所述定位数据包括粗码伪距和载波相位伪距;
所述第一滤波器具体用于:若k1=1,所述第一滤波器进行初始化,将所述定位数据中的粗码伪距作为载波相位平滑伪距初始值;
所述第二滤波器具体用于:若k2=1,所述第二滤波器进行初始化,将所述定位数据中的粗码伪距作为载波相位平滑伪距初始值。
10.如权利要求6所述的接收机,其特征在于,还包括检测单元,用于检测卫星是否发生周跳;若所述检测单元检测到卫星周跳,则
当历元k1大于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;或者,
当历元k1大于历元k2时,所述第二滤波器将下一历元k2+1的值重置为k2=1,以使所述第二滤波器在下一历元进行初始化;当历元k1小于历元k2时,所述第一滤波器将下一历元k1+1的值重置为k1=1,以使所述第一滤波器在下一历元进行初始化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510520496.XA CN105116419B (zh) | 2015-08-21 | 2015-08-21 | 一种gnss接收机、双路载波相位伪距平滑方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510520496.XA CN105116419B (zh) | 2015-08-21 | 2015-08-21 | 一种gnss接收机、双路载波相位伪距平滑方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105116419A CN105116419A (zh) | 2015-12-02 |
CN105116419B true CN105116419B (zh) | 2018-02-13 |
Family
ID=54664452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510520496.XA Active CN105116419B (zh) | 2015-08-21 | 2015-08-21 | 一种gnss接收机、双路载波相位伪距平滑方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105116419B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193026A (zh) * | 2017-05-06 | 2017-09-22 | 千寻位置网络有限公司 | 伪距定位平滑方法及系统、定位终端 |
CN109597102B (zh) * | 2018-09-27 | 2020-10-09 | 广州市中海达测绘仪器有限公司 | 数据测量方法、装置、计算机设备和存储介质 |
CN110596732B (zh) * | 2019-10-15 | 2021-08-06 | 中国电子科技集团公司第二十八研究所 | 基于lms自适应滤波的gbas电离层异常检测方法 |
CN111399018B (zh) * | 2020-03-02 | 2022-04-01 | 和芯星通科技(北京)有限公司 | Gnss中载波相位的平滑处理方法和装置 |
CN113835109B (zh) * | 2021-11-26 | 2022-03-29 | 腾讯科技(深圳)有限公司 | 终端的定位方法、装置、电子设备、存储介质及程序产品 |
CN116106936B (zh) * | 2023-04-13 | 2023-07-14 | 中国铁塔股份有限公司 | 坝体的监测信息的生成方法、定位信号传输方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1875291A (zh) * | 2003-10-28 | 2006-12-06 | 天宝导航有限公司 | 三个或更多载波的gnss信号的模糊度估计 |
EP1729145B1 (en) * | 2005-06-02 | 2013-08-07 | GMV Aerospace and Defence S.A. | Method and system for providing GNSS navigation position solution with guaranteed integrity in non-controlled environments |
CN103885074A (zh) * | 2010-01-29 | 2014-06-25 | 纳夫科姆技术公司 | 用于使用双实时动态引擎对位置进行估计的方法和系统 |
CN104133231A (zh) * | 2014-07-29 | 2014-11-05 | 南京理工大学 | 一种基于积分多普勒平滑伪距的导航定位方法 |
-
2015
- 2015-08-21 CN CN201510520496.XA patent/CN105116419B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1875291A (zh) * | 2003-10-28 | 2006-12-06 | 天宝导航有限公司 | 三个或更多载波的gnss信号的模糊度估计 |
EP1729145B1 (en) * | 2005-06-02 | 2013-08-07 | GMV Aerospace and Defence S.A. | Method and system for providing GNSS navigation position solution with guaranteed integrity in non-controlled environments |
CN103885074A (zh) * | 2010-01-29 | 2014-06-25 | 纳夫科姆技术公司 | 用于使用双实时动态引擎对位置进行估计的方法和系统 |
CN104133231A (zh) * | 2014-07-29 | 2014-11-05 | 南京理工大学 | 一种基于积分多普勒平滑伪距的导航定位方法 |
Non-Patent Citations (3)
Title |
---|
GNSS最优载波相位平滑伪距研究;刘广军等;《飞行器测控学报》;20150430;第34卷(第2期);第161-167页 * |
GPS/BDS组合系统伪距单点定位模型精度分析;邹波等;《测绘科学》;20141031;第39卷(第10期);第30-32页 * |
基于改进的Hatch滤波GPS/BD组合系统单点定位;邹波等;《城市勘测》;20141031;第26-29页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105116419A (zh) | 2015-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105116419B (zh) | 一种gnss接收机、双路载波相位伪距平滑方法 | |
TWI533011B (zh) | 一種提高導航系統時間的秒脈衝精確度的方法和接收機 | |
CN106855628B (zh) | 一种高动态卫星导航信号的快速捕获和跟踪系统和方法 | |
CN105158778B (zh) | 多系统联合实施载波相位差分故障卫星剔除方法及其系统 | |
CN105158783B (zh) | 一种实时动态差分定位方法及其设备 | |
CN106526634B (zh) | 一种基于自调整卡尔曼滤波的多普勒辅助载波相位平滑伪距方法 | |
CN106291591A (zh) | 用载波相位和惯性传感器的全球导航卫星系统(gnss)欺骗检测 | |
CN106842236B (zh) | Gnss接收机周跳探测与修复处理装置 | |
WO2011041298A1 (en) | Improvement of the accuracy and performance of the hybrid positioning system | |
CN1930488A (zh) | 当两个频率之一上的测量数据不可用时用于在短期内进行后备双频导航的方法 | |
CN107193026A (zh) | 伪距定位平滑方法及系统、定位终端 | |
CN110988955B (zh) | 一种导航定位的方法及装置 | |
EP2824481A1 (en) | Code minus carrier multipath observation for satellite exclusion | |
CN111623703A (zh) | 一种基于新型卡尔曼滤波的北斗变形监测实时处理方法 | |
CN107367744A (zh) | 基于自适应测量噪声方差估计的星载gps定轨方法 | |
CN105549046B (zh) | Gnss接收机周跳探测与修复处理方法 | |
CN105578587B (zh) | 一种时间频率比对方法和设备 | |
JP5386732B2 (ja) | Rtk異常測位データ処理を伴うgpsによる変位計測装置および変位計測方法 | |
JP2009222438A (ja) | 移動体用測位装置 | |
CN106918822A (zh) | 计算用于解析副载波跟踪模糊度的非模糊鉴别器的gnss接收器 | |
CN102937716B (zh) | 一种卫星定位滤波方法和装置 | |
CN113238260B (zh) | 一种信号参数采集方法、系统、存储介质及电子设备 | |
CN110780320B (zh) | 一种软硬件一体化的卫星导航信号处理方法 | |
DE102005010782A1 (de) | Verfahren und Vorrichtung zum Verarbeiten von GPS-Signalen und GPS-Empfänger | |
CN116541668A (zh) | 一种游泳划水次数确定方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |