CN107132562B - 一种实现卡尔曼滤波定位的方法和装置 - Google Patents
一种实现卡尔曼滤波定位的方法和装置 Download PDFInfo
- Publication number
- CN107132562B CN107132562B CN201610109157.7A CN201610109157A CN107132562B CN 107132562 B CN107132562 B CN 107132562B CN 201610109157 A CN201610109157 A CN 201610109157A CN 107132562 B CN107132562 B CN 107132562B
- Authority
- CN
- China
- Prior art keywords
- state vector
- epoch
- covariance matrix
- current epoch
- value
- 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
Images
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/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
- G01S19/45—Determining position by combining measurements of signals from the satellite radio beacon positioning system with a supplementary measurement
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本文公布了一种实现卡尔曼滤波定位的方法和装置,包括:根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时最优估计值和当前历元时最优估计值之间的平均值,和上一个历元时最优估计值之间的差值;判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时最优估计值删除一个或多个元素,将当前历元时最优估计值的误差协方差矩阵删除对应的一个或多个元素,再继续执行计算下一个历元时状态向量的预测值,计算下一个历元时误差协方差矩阵的步骤。
Description
技术领域
本发明涉及但不限于导航定位领域,尤指一种实现卡尔曼滤波定位的方法和装置。
背景技术
全球导航卫星系统(GNSS,Global Navigation Satellite System)已经广泛应用于多个领域。目前,主要有四个全球导航定位系统,包括美国的全球定位系统(GPS,GlobalPositioning System)、中国的北斗卫星导航系统(Compass或BeiDou BD)、俄罗斯的全球导航卫星系统(GLONASS,Global Navigation Satellite System)、欧盟推出的规模最大的民用卫星导航定位系统,即伽利略(Galileo)系统。其中,GPS发展最为成熟,BD和GLONASS已经取得阶段性进展,而伽利略系统还处于起步阶段。
导航定位过程中用户最为关心的是定位、定速和定时的结果,那么对用户定位,定速和定时的算法和技术就显得尤为重要。目前,导航系统中主要的定位、定速和定时的算法有最小二乘定位和卡尔曼滤波定位。最小二乘定位是孤立的求解每一个不同时刻的系统状态,而卡尔曼滤波定位利用状态方程将不同时刻的系统状态联系起来,使对系统的跟踪轨迹更为平滑。
在卡尔曼滤波定位系统中用状态方程描述每一时刻用户的运动特性,而对系统状态向量校正时,涉及到了对测量值的预测和卡尔曼增益的计算。如果状态方程和测量方程是非线性的,还应对其进行线性化计算。
相关技术中,实现卡尔曼滤波定位的方法大致包括:
获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;
将状态向量的初始值的估计值作为上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;将状态向量的初始值的估计值的误差协方差矩阵作为上一个历元时误差协方差矩阵计算当前历元时误差协方差矩阵;
根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;
继续执行将当前历元时状态向量的最优估计值作为当前历元时状态向量的预测值计算下一个历元时状态向量的预测值;将当前历元时状态向量的最优估计值的误差协方差矩阵作为当前历元时误差协方差矩阵计算下一个历元时误差协方差矩阵的步骤。
相关技术中,当系统状态向量的维数较大时,需要的测量方程就会变得越多,大大的增加了计算卡尔曼增益时相关矩阵的计算量,进而极大的增加了定位系统的功耗。
发明内容
为了解决上述问题,本发明实施例提出了一种实现卡尔曼滤波定位的方法和装置,能够减少计算量,从而降低计算所需要的功耗。
为了达到上述目的,本发明实施例提出了一种实现卡尔曼滤波定位的方法,包括:
根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;
对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值;
判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤。
可选的,当判断出所有元素对应的计算得到的差值均大于预设阈值时,该方法还包括:
继续执行所述根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵的步骤。
可选的,所述根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵包括:
根据所述上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;根据所述上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵;
根据所述当前历元时状态向量的预测值和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值和所述当前历元时状态向量的最优估计值的误差协方差矩阵。
可选的,该方法之前还包括:
获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;
所述根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值包括:
将所述状态向量的初始值的估计值作为所述上一个历元时状态向量的预测值计算所述当前历元时状态向量的预测值;
所述根据上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵包括:
将所述状态向量的初始值的估计值的误差协方差矩阵作为所述上一个历元时误差协方差矩阵计算所述当前历元时误差协方差矩阵。
可选的,所述将状态向量的初始值的估计值作为上一个历元时状态向量的预测值计算当前历元时状态向量的预测值包括:
其中,所述k为历元时数,为所述第k历元时状态向量的预测值,为第(k-1)历元时状态向量的预测值,uk-1为第(k-1)历元时的输入量,wk-1为第(k-1)历元时状态向量的状态变量之间进行转换过程中的噪声,A为状态转移矩阵,B为输入关系矩阵。
可选的,所述将状态向量的初始值的估计值的误差协方差矩阵作为上一个历元时误差协方差矩阵计算当前历元时误差协方差矩阵包括:
可选的,所述根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵包括:
根据所述当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值;
根据所述当前历元时误差协方差矩阵计算当前历元时卡尔曼增益;
根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余;
根据所述当前历元时状态向量的预测值、计算得到的当前历元时残余和当前历元时卡尔曼增益计算所述当前历元时状态向量的最优估计值,根据所述计算得到的当前历元时卡尔曼增益和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值的误差协方差矩阵。
可选的,所述根据当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值包括:
其中,为所述n个卫星中第n个卫星的校正后的伪距的预测值;(x(i),y(i),z(i))为所述n个卫星中第i个卫星的空间位置坐标,(x,y,z)为所述状态向量中用户的位置坐标的预测值,δtu为所述状态向量中接收机时钟钟差的预测值,为所述n个卫星中第i个卫星的伪距测量误差项,为所述n个卫星中第i个卫星的校正后的伪距变化率的预测值,为所述n个卫星中第i个卫星在空间直角坐标系中三个方向的速度组成的向量,v=(vx,vy,vz)为所述状态向量中用户在空间直角坐标系中三个方向上的速度的预测值组成的向量,δfu为所述状态向量中接收机时钟的频漂的预测值,为所述n个卫星中第i个卫星的伪距测量误差项的变化率。
可选的,所述根据当前历元时误差协方差矩阵计算当前历元时卡尔曼增益包括:
可选的,所述根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余包括:
可选的,所述根据所述当前历元时状态向量的预测值、计算得到的当前历元时残余和当前历元时卡尔曼增益计算所述当前历元时状态向量的最优估计值包括:
可选的,所述根据所述计算得到的当前历元时卡尔曼增益和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值的误差协方差矩阵包括:
其中,Pk为所述第k历元时状态向量的最优估计值的误差协方差矩阵,为所述n个卫星中第i个卫星的校正后的伪距变化率的真实值,λ(i)为所述n个卫星中第i个卫星的载波信号的波长,为所述n个卫星中第i个卫星与用户之间的多普勒频移。
本发明实施例还提出了一种实现卡尔曼滤波定位的装置,包括:
第一计算模块,用于根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤;
第二计算模块,用于对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值。
可选的,所述第一计算模块还用于:
判断出所有元素对应的计算得到的差值均大于预设阈值,继续执行所述根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵的步骤。
可选的,所述第一计算模块具体用于采用以下方式实现根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵:
根据所述上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;根据所述上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵;
根据所述当前历元时状态向量的预测值和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值和所述当前历元时状态向量的最优估计值的误差协方差矩阵。
可选的,还包括:
获取模块,用于获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;
所述第一计算模块具体用于采用以下方式实现所述根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值:
将所述状态向量的初始值的估计值作为所述上一个历元时状态向量的预测值计算所述当前历元时状态向量的预测值;
所述第一计算模块具体用于采用以下方式实现所述根据上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵:
将所述状态向量的初始值的估计值的误差协方差矩阵作为所述上一个历元时误差协方差矩阵计算所述当前历元时误差协方差矩阵。
可选的,所述第一计算模块具体用于采用以下方式实现根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵:
根据所述当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值;
根据所述当前历元时误差协方差矩阵计算当前历元时卡尔曼增益;
根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余;
根据所述当前历元时状态向量的预测值、计算得到的当前历元时残余和当前历元时卡尔曼增益计算所述当前历元时状态向量的最优估计值,根据所述计算得到的当前历元时卡尔曼增益和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值的误差协方差矩阵。
与现有技术相比,本发明实施例的技术方案包括:根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值;判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤。通过本发明实施例的方案,判断出当前历元时状态向量的最优估计值中的一个或多个元素对应的计算得到的差值小于或等于预设阈值时,将一个或多个元素删除后再继续进行计算,减少了状态向量的维度,从而减少了计算量,降低了计算所需要的功耗。
附图说明
下面对本发明实施例中的附图进行说明,实施例中的附图是用于对本发明的进一步理解,与说明书一起用于解释本发明,并不构成对本发明保护范围的限制。
图1为本发明实施例实现卡尔曼滤波定位的方法的流程图;
图2为本发明实施例实现卡尔曼滤波定位的装置的结构组成示意图。
具体实施方式
为了便于本领域技术人员的理解,下面结合附图对本发明作进一步的描述,并不能用来限制本发明的保护范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的各种方式可以相互组合。
参见图1,本发明实施例提出了一种实现卡尔曼滤波定位的方法,包括:
步骤100、根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵。具体包括:
根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;根据上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵;根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵。
本步骤中,当用户处于静止状态时,状态向量包括用户的位置坐标和接收机时钟钟差,当用户处于运动状态时,状态向量还包括用户在直角坐标系中各方向上的速度和接收机时钟的频漂。
其中,根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值包括:
按照公式(1)计算第k历元时状态向量的预测值。
uk-1为第(k-1)历元时的输入量,但并不是所有的系统都有输入量,比如GPS接收机定位系统就没有任何输入量,如果有L个输入量,那么uk是一个L×1的向量;
wk-1为第(k-1)历元时状态向量的状态变量之间进行转换过程中的噪声,在卡尔曼滤波定位系统中假设wk-1是一个均值为零的白噪声,即E(wk-1)=0,Cov(wk-1)=E(wk-1wk-1 T)=Q,Q为wk-1的误差协方差矩阵,为N×N的对称矩阵,对于定位系统来说wk是未知的,但其误差协方差矩阵Q是已知的;N为状态向量中状态变量的个数;
A为N×N的状态转移矩阵,可以根据位移方程确定;
B为N×L的输入关系矩阵。
例如,当状态向量包括用户的位置坐标、接收机时钟钟差、用户在直角坐标系中各方向上的速度和接收机时钟的频漂时,
其中,根据上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵包括:
其中,根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵包括:
根据当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值;
根据当前历元时误差协方差矩阵计当前历元时算卡尔曼增益;
根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余;
根据当前历元时状态向量的预测值、计算得到的残余和当前历元时卡尔曼增益计算当前历元时状态向量的最优估计值,根据计算得到的当前历元时卡尔曼增益和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值的误差协方差矩阵。
其中,根据当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值包括:
按照公式(2)计算n个卫星中第i个卫星的校正后的伪距的预测值。
其中,为n个卫星中第i个卫星的校正后的伪距的预测值;(x(i),y(i),z(i))为n个卫星中第i个卫星的空间位置坐标,(x,y,z)为状态向量中用户的位置坐标的预测值,δtu为状态向量中接收机时钟钟差的预测值,为n个卫星中第i个卫星的伪距测量误差项。
按照公式(3)计算n个卫星中第i个卫星的校正后的伪距变化率的预测值。
其中,为n个卫星中第i个卫星的校正后的伪距变化率的预测值,为n个卫星中第i个卫星在空间直角坐标系中三个方向的速度组成的向量,v=(vx,vy,vz)为状态向量中用户在空间直角坐标系中三个方向上的速度的预测值组成的向量,δfu为状态向量中接收机时钟的频漂的预测值,为n个卫星中第i个卫星的伪距测量误差项的变化率。
其中,根据当前历元时误差协方差矩阵计算当前历元时卡尔曼增益包括:
按照公式(4)计算卡尔曼增益。
其中,Kk为第k历元时卡尔曼增益,C为对公式(2)进行线性化得到的雅可比矩阵,R为校正后的伪距的预测值的误差协方差矩阵。
其中,根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余包括:
其中,根据当前历元时状态向量的预测值、计算得到的残余和卡尔曼增益计算当前历元时状态向量的最优估计值包括:
按照公式(5)计算第k历元时状态向量的最优估计值。
其中,根据计算得到的卡尔曼增益和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值的误差协方差矩阵包括:
按照公式(6)计算第k历元时状态向量的最优估计值的误差协方差矩阵。
其中,Pk为第k历元时状态向量的最优估计值的误差协方差矩阵。
步骤101、对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值。
步骤102、判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤。
当判断出所有元素对应的计算得到的差值均大于预设阈值时,该方法还包括:
继续执行根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵的步骤。
可选的,该方法之前还包括:
获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;相应地,步骤100中,
根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值包括:
将状态向量的初始值的估计值作为上一个历元时状态向量的预测值计算所述当前历元时状态向量的预测值;
根据上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵包括:
将状态向量的初始值的估计值的误差协方差矩阵作为上一个历元时误差协方差矩阵计算所述当前历元时误差协方差矩阵。
其中,获得的状态向量的初始值的估计值满足获得的状态向量的初始值的估计值的误差协方差矩阵满足其中,为状态向量的初始值的估计值,x0为状态向量的初始值的真实值,P0为状态向量的初始值的估计值的误差协方差矩阵。
如果其中有一个不满足上述条件,则需要重新获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵,具体如何获取可以采用本领域技术人员的熟知技术实现,并不用于限定本发明的保护范围,这里不再赘述。
通过本发明实施例的方案,判断出当前历元时状态向量的最优估计值中的一个或多个元素对应的计算得到的差值小于或等于预设阈值时,将一个或多个元素删除后再继续进行计算,减少了状态向量的维度,从而减少了计算量,降低了计算所需要的功耗。
参见图2、本发明实施例还提出了一种实现卡尔曼滤波定位的装置,包括:
第一计算模块,用于根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤;
第二计算模块,用于对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值。
本发明实施例的装置中,第一计算模块还用于:
判断出所有元素对应的计算得到的差值均大于预设阈值,继续执行根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵的步骤。
本发明实施例的装置中,第一计算模块具体用于采用以下方式实现根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵:
根据所述上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;根据所述上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵;
根据所述当前历元时状态向量的预测值和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值和所述当前历元时状态向量的最优估计值的误差协方差矩阵。
本发明实施例的装置中,还包括:
获取模块,用于获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;
所述第一计算模块具体用于采用以下方式实现所述根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值:
将所述状态向量的初始值的估计值作为所述上一个历元时状态向量的预测值计算所述当前历元时状态向量的预测值;
所述第一计算模块具体用于采用以下方式实现所述根据上一个历元时误差协方差矩阵计算当前历元时误差写方差矩阵:
将所述状态向量的初始值的估计值的误差协方差矩阵作为所述上一个历元时误差协方差矩阵计算所述当前历元时误差协方差矩阵。
本发明实施例的装置中,第一计算模块具体用于采用以下方式实现根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵:
根据当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值;
根据当前历元时误差协方差矩阵计算当前历元时卡尔曼增益;
根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余;
根据当前历元时状态向量的预测值、计算得到的当前历元时残余和当前历元时卡尔曼增益计算当前历元时状态向量的最优估计值,根据计算得到的当前历元时卡尔曼增益和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值的误差协方差矩阵。
需要说明的是,以上所述的实施例仅是为了便于本领域的技术人员理解而已,并不用于限制本发明的保护范围,在不脱离本发明的发明构思的前提下,本领域技术人员对本发明所做出的任何显而易见的替换和改进等均在本发明的保护范围之内。
Claims (17)
1.一种实现卡尔曼滤波定位的方法,其特征在于,包括:
根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;
对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值;
判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤。
2.根据权利要求1所述的方法,其特征在于,当判断出所有元素对应的计算得到的差值均大于预设阈值时,该方法还包括:
继续执行所述根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵的步骤。
3.根据权利要求1或2所述的方法,其特征在于,所述根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵包括:
根据所述上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;根据所述上一个历元时误差协方差矩阵计算当前历元时误差协方差矩阵;
根据所述当前历元时状态向量的预测值和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值和所述当前历元时状态向量的最优估计值的误差协方差矩阵。
4.根据权利要求3所述的方法,其特征在于,该方法之前还包括:
获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;
所述根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值包括:
将所述状态向量的初始值的估计值作为所述上一个历元时状态向量的预测值计算所述当前历元时状态向量的预测值;
所述根据上一个历元时误差协方差矩阵计算当前历元时误差协方差矩阵包括:
将所述状态向量的初始值的估计值的误差协方差矩阵作为所述上一个历元时误差协方差矩阵计算所述当前历元时误差协方差矩阵。
7.根据权利要求3所述的方法,其特征在于,所述根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵包括:
根据所述当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值;
根据所述当前历元时误差协方差矩阵计算当前历元时卡尔曼增益;
根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余;
根据所述当前历元时状态向量的预测值、计算得到的当前历元时残余和当前历元时卡尔曼增益计算所述当前历元时状态向量的最优估计值,根据所述计算得到的当前历元时卡尔曼增益和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值的误差协方差矩阵。
8.根据权利要求7所述的方法,其特征在于,所述根据当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值包括:
13.一种实现卡尔曼滤波定位的装置,其特征在于,包括:
第一计算模块,用于根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵;判断出一个或多个元素对应的计算得到的差值小于或等于预设阈值,将当前历元时状态向量的最优估计值中删除一个或多个元素后的状态向量作为当前历元时状态向量的预测值,将当前历元时状态向量的最优估计值的误差协方差矩阵中删除对应的一个或多个元素后的误差协方差矩阵作为当前历元时误差协方差矩阵,继续执行根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算下一个历元时状态向量的最优估计值和下一个历元时状态向量的最优估计值的误差协方差矩阵的步骤;
第二计算模块,用于对于当前历元时状态向量的最优估计值中的每一个元素,计算该元素上上一个历元时的最优估计值和当前历元时的最优估计值之间的平均值,和上一个历元时的最优估计值之间的差值。
14.根据权利要求13所述的装置,其特征在于,所述第一计算模块还用于:
判断出所有元素对应的计算得到的差值均大于预设阈值,继续执行所述根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵的步骤。
15.根据权利要求13或权利要求14所述的装置,其特征在于,所述第一计算模块具体用于采用以下方式实现根据上一个历元时状态向量的预测值和上一个历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵:
根据所述上一个历元时状态向量的预测值计算当前历元时状态向量的预测值;根据所述上一个历元时误差协方差矩阵计算当前历元时误差协方差矩阵;
根据所述当前历元时状态向量的预测值和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值和所述当前历元时状态向量的最优估计值的误差协方差矩阵。
16.根据权利要求15所述的装置,其特征在于,还包括:
获取模块,用于获取状态向量的初始值的估计值和状态向量的初始值的估计值的误差协方差矩阵;
所述第一计算模块具体用于采用以下方式实现所述根据上一个历元时状态向量的预测值计算当前历元时状态向量的预测值:
将所述状态向量的初始值的估计值作为所述上一个历元时状态向量的预测值计算所述当前历元时状态向量的预测值;
所述第一计算模块具体用于采用以下方式实现所述根据上一个历元时误差协方差矩阵计算当前历元时误差协方差矩阵:
将所述状态向量的初始值的估计值的误差协方差矩阵作为所述上一个历元时误差协方差矩阵计算所述当前历元时误差协方差矩阵。
17.根据权利要求15所述的装置,其特征在于,所述第一计算模块具体用于采用以下方式实现根据当前历元时状态向量的预测值和当前历元时误差协方差矩阵计算当前历元时状态向量的最优估计值和当前历元时状态向量的最优估计值的误差协方差矩阵:
根据所述当前历元时状态向量的预测值计算n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值;
根据所述当前历元时误差协方差矩阵计算当前历元时卡尔曼增益;
根据计算得到的n个卫星的校正后的伪距的预测值和n个卫星的校正后的伪距变化率的预测值计算n个卫星的校正后的伪距和伪距变化率的残余;
根据所述当前历元时状态向量的预测值、计算得到的当前历元时残余和当前历元时卡尔曼增益计算所述当前历元时状态向量的最优估计值,根据所述计算得到的当前历元时卡尔曼增益和所述当前历元时误差协方差矩阵计算所述当前历元时状态向量的最优估计值的误差协方差矩阵。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610109157.7A CN107132562B (zh) | 2016-02-26 | 2016-02-26 | 一种实现卡尔曼滤波定位的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610109157.7A CN107132562B (zh) | 2016-02-26 | 2016-02-26 | 一种实现卡尔曼滤波定位的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107132562A CN107132562A (zh) | 2017-09-05 |
CN107132562B true CN107132562B (zh) | 2020-10-09 |
Family
ID=59721305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610109157.7A Active CN107132562B (zh) | 2016-02-26 | 2016-02-26 | 一种实现卡尔曼滤波定位的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107132562B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108408080B (zh) * | 2018-03-29 | 2019-11-12 | 南昌航空大学 | 一种飞机翼身对接装配装置、方法及系统 |
CN111625766A (zh) * | 2020-04-27 | 2020-09-04 | 中国人民解放军63921部队 | 广义延拓逼近滤波方法、存储介质及处理器 |
CN113109848B (zh) * | 2021-04-14 | 2023-03-14 | 长沙学院 | 一种载体低速旋转条件下的导航定位方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101002105A (zh) * | 2004-05-07 | 2007-07-18 | 纳夫科姆技术公司 | 利用载波相位测量值的递差的全球定位系统导航 |
CN101261691A (zh) * | 2008-04-18 | 2008-09-10 | 哈尔滨工业大学 | 适用于非线性系统状态的粒子估计方法 |
CN102833882A (zh) * | 2011-06-15 | 2012-12-19 | 中国科学院声学研究所 | 一种基于水声传感器网络的多目标数据融合方法及系统 |
CN104994580A (zh) * | 2015-06-30 | 2015-10-21 | 长安大学 | 一种室内定位方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2571385C (en) * | 2006-12-18 | 2015-11-24 | University Of Waterloo | Adaptive channel prediction system and method |
-
2016
- 2016-02-26 CN CN201610109157.7A patent/CN107132562B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101002105A (zh) * | 2004-05-07 | 2007-07-18 | 纳夫科姆技术公司 | 利用载波相位测量值的递差的全球定位系统导航 |
CN101261691A (zh) * | 2008-04-18 | 2008-09-10 | 哈尔滨工业大学 | 适用于非线性系统状态的粒子估计方法 |
CN102833882A (zh) * | 2011-06-15 | 2012-12-19 | 中国科学院声学研究所 | 一种基于水声传感器网络的多目标数据融合方法及系统 |
CN104994580A (zh) * | 2015-06-30 | 2015-10-21 | 长安大学 | 一种室内定位方法 |
Non-Patent Citations (2)
Title |
---|
An Improved Multi-scale Estimation Method of Signal;HU Chang-liu et al.;《CHINESE QUARTERLY JOURNAL OF MATHEMATICS》;20001231;第15卷(第2期);全文 * |
基于动态生成树和改进不敏卡尔曼滤波的传感器网络目标跟踪算法研究;蒋鹏 等;《仪器仪表学报》;20150228;第36卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107132562A (zh) | 2017-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108958018B (zh) | 一种卫星授时方法和装置、计算机可读存储介质 | |
EP3339908B1 (en) | Distributed kalman filter architecture for carrier range ambiguity estimation | |
ATE414916T1 (de) | Verbesserte verarbeitung der gps-akkumulierten delta-range für navigationsanwendungen | |
US20190041527A1 (en) | Gps-based navigation system using a nonlinear discrete-time tracking filter | |
EP2717014B1 (en) | Position calculation method and position calculation device | |
WO2011105445A1 (ja) | 擬似距離推定方法、擬似距離推定プログラム、gnss受信装置、および移動端末 | |
CN109407126A (zh) | 一种多模接收机联合定位解算的方法 | |
US9121936B2 (en) | Positioning method, GNSS receiving apparatus, and mobile terminal | |
WO2013016800A4 (en) | System, method, and computer program for a low power and low cost gnss receiver | |
CN108196267B (zh) | 一种基于gnss cp技术的不间断时间传递方法 | |
JP2011013189A (ja) | 測位装置及びプログラム | |
CN107132562B (zh) | 一种实现卡尔曼滤波定位的方法和装置 | |
CN105510942A (zh) | 一种基于卡尔曼滤波的gps单点定位系统 | |
JP2020056701A (ja) | 航法装置、航行支援情報の生成方法、および、航行支援情報の生成プログラム | |
KR20160143438A (ko) | 추측 항법 시스템에서의 밀결합 측위 방법 및 그 장치 | |
CN109375248A (zh) | 一种卡尔曼多模融合定位算法模型及其串行更新的方法 | |
KR101502721B1 (ko) | 적응형 상호작용 다중모델 추정기를 이용한 정밀 위치정보 제공 방법 및 장치 | |
CN115480279A (zh) | Gnss导航方法和终端、组合导航系统、存储介质 | |
JP2006242662A (ja) | 衛星信号受信システム | |
CN105738931A (zh) | 基于卡尔曼滤波的gps单点定位系统 | |
Liu et al. | Improved GNSS vector tracking loop to enhance the navigation performance of USV | |
EP2000818A1 (en) | System and method for determining displacements of objects | |
JP2011179894A (ja) | 測位方法、測位プログラム、gnss受信装置および移動端末 | |
US10203417B2 (en) | Methods and apparatus for estimating motion parameters of GNSS receiver | |
Ng et al. | Computationally efficient direct position estimation via low duty-cycling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |