700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 新息自适应卡尔曼滤波matlab代码 基于自适应卡尔曼滤波的弱信号跟踪方法与流程...

新息自适应卡尔曼滤波matlab代码 基于自适应卡尔曼滤波的弱信号跟踪方法与流程...

时间:2018-11-04 11:27:33

相关推荐

新息自适应卡尔曼滤波matlab代码 基于自适应卡尔曼滤波的弱信号跟踪方法与流程...

本发明涉及卫星导航接收机中在微弱信号下的跟踪技术,提供了一种基于自适应卡尔曼滤波的弱信号跟踪方法。

背景技术:

随着众多新的导航卫星系统的投入和运行,全球导航卫星系统(globalnavigationsatellitesystem,gnss)接收机技术已经广泛应用于人们的日常生活中,例如车辆导航、个人手机导航、大地测量和海洋救援等。传统的gnss接收机在开阔的环境下能够准确导航和定位,但是在室内、茂密森林和城市峡谷等复杂环境下,gnss信号会严重衰减导致接收机无法正常定位。而接收机中的重要部分载波跟踪环路在微弱环境下非常脆弱,而且跟踪环路性能会严重影响接收机导航和定位的性能。因此,提高跟踪环路的灵敏度对于提高接收机的性能具有非常重要的作用。

传统的跟踪环路一般使用的是锁相环,为了提高灵敏度一般需要加长积分时间,但是这就需要减小环路滤波器的带宽。环路带宽的减小会严重影响跟踪环路的动态性能。因此,锁相环在提高跟踪环路的灵敏度上受到很大限制。为了进一步提高跟踪环的灵敏度,卡尔曼滤波器(kf)作为一种时变系统,已经被人们广泛应用于跟踪环路中。目前已经有很多文献指出kf跟踪相对于传统跟踪环可以提高跟踪灵敏度,这主要是因为kf跟踪根据输入的信号自适应的调节载波环路增益,从而提高跟踪环路的准确性。但是kf系统估计的准确性在很大程度上依赖于噪声的统计特性,比如测量噪声协方差和过程噪声协方差。但是这些噪声协方差一般都是根据实验的情况或者经验值预先设定好的,因此这就很难反映实际情况下的噪声统计特性,尤其是输入信号为时变的情况下,很难实时准确反应实际的噪声统计特性。

技术实现要素:

本发明提供了一种基于自适应卡尔曼滤波的弱信号跟踪方法,其能够克服现有技术的某种或某些缺陷。

根据本发明的基于自适应卡尔曼滤波的弱信号跟踪方法,其包括以下步骤:

s1、对经过天线接收到的gps卫星信号进行下变频及采样,将收到的高频信号转变为中频信号,该中频信号经过捕获阶段后进入到跟踪阶段,作为跟踪环路的输入信号;

s2、将输入到跟踪环路的中频信号分为两路,其中一路与正弦载波复制信号混频,该支路为同相支路,即为i支路;其中另一路与余弦载波复制信号混频,该支路为正交支路,即为q支路;其中,通过载波数控振荡器(nco)完成正弦载波和余弦载波的复制;

s3、i支路和q支路混频后的信号均与伪码发生器产生的伪码相乘,解调出导航数据码;

s4、将经步骤s3处理后的i支路与q支路的信号均输入到积分清除器中,进而获取i支路的积分值ip(k)与q支路的积分值qp(k);

s5、将ip(k)与qp(k)输入到鉴相器中进行处理,进而获取载波相位误差;

s6、采用自适应卡尔曼滤波器对经步骤s5获取的载波相位误差进行处理,以载波相位误差作为测量值,进行卡尔曼滤波迭代计算,计算出载波相位误差载波多普勒误差ωk和载波多普勒变化率αk;在卡尔曼滤波迭代的过程,对过程噪声协方差qk和测量噪声协方差rk进行实时更新;

s7、更新载波数控振荡器(nco)中的多普勒频率为载波相位为

本发明中,通过采用自适应卡尔曼跟踪方法,能够实时调节测量噪声统计特性和系统噪声统计特性,故能够较佳地提高跟踪灵敏度。

作为优选,步骤s2中,载波数控振荡器(nco)的复制过程包括如下步骤,

s21、由载波数控振荡器(nco)输出一个阶梯形的周期信号;

s22、由正弦表和余弦表分别将阶梯信号转换为数字式正弦和余弦载波复制信号。从能够较佳地获取正弦和余弦载波复制信号。

作为优选,步骤s6中,将经步骤s5获取的载波相位误差输入到基于自适应卡尔曼的环路滤波器中作为测量值;其中,三阶自适应卡尔曼跟踪载波环的状态模型为xk+1=φkxk+nk、测量模型为zk+1=hkxk+vk;其中,k时刻的状态变量xk设置为其中,ωk和αk分别为载波相位误差,载波多普勒误差和载波多普勒变化率;状态转移矩阵φk为zk+1是k+1时刻的测量矩阵,即为步骤s5中得到的载波相位误差;测量矩阵hk为hk=[1t/2t2/6],其中t为卡尔曼跟踪环的更新周期,nk和vk分别为过程噪声矩阵和测量噪声矩阵,nk和vk互不相关且均为白噪声阵列,nk和vk的协方差矩阵分别为qk和rk,分别称为过程噪声协方差和测量噪声协方差。从而能够较佳地对过程噪声协方差和测量噪声协方差进行实时更新。

作为优选,自适应卡尔曼跟踪的递推过程如下,

(1)初始化状态变量和状态均方误差

(2)状态变量估计预测:

(3)计算新息序列:

(4)计算新息序列的协方差理论值:同时可得到通过滑动窗口法计算得到新息协方差的实际值:其中m为滑动窗口的大小;

(5)计算自适应因子λk为并通过自适应因子更新过程噪声协方差

(6)状态均方误差一步预测:

(7)通过使用宽窄带载噪比估计法估计载噪比(c/n0)k,从而更新测量噪声协方差

(8)更新卡尔曼滤波增益矩阵:

(9)更新系统的状态矢量估计值:

(10)更新系统状态矢量的均方误差值:

(11)更新完毕后,进入下一时刻,继续迭代更新。

通过上述(1)-(11)能够较佳地实现自适应卡尔曼跟踪的递推,从而使得整个系统具备较佳地灵敏度。另外,由于本发明中采用的是基于新息的自适应估计方法,故能够有效地降低系统的计算量。

附图说明

图1为实施例1中的基于自适应卡尔曼方法的跟踪环路的框图示意图;

图2为实施例1中的基于自适应卡尔曼方法的流程示意图。

具体实施方式

为进一步了解本发明的内容,结合附图和实施例对本发明作详细描述。应当理解的是,实施例仅仅是对本发明进行解释而并非限定。

实施例1

如图1-2所示,本实施例提供了一种基于自适应卡尔曼滤波的弱信号跟踪方法,其包括以下步骤:

s1、对经过天线接收到的gps卫星信号进行下变频及采样,将收到的高频信号转变为中频信号,该中频信号经过捕获阶段后进入到跟踪阶段,作为跟踪环路的输入信号;

s2、将输入到跟踪环路的中频信号分为两路,其中一路与正弦载波复制信号混频,该支路为同相支路,即为i支路;其中另一路与余弦载波复制信号混频,该支路为正交支路,即为q支路;其中,通过载波数控振荡器(nco)完成正弦载波和余弦载波的复制;

s3、i支路和q支路混频后的信号均与伪码发生器产生的伪码相乘,解调出导航数据码;

s4、将经步骤s3处理后的i支路与q支路的信号均输入到积分清除器中,进而获取i支路的积分值ip(k)与q支路的积分值qp(k);

步骤s4中,积分清除器相当于低通滤波器,通过保留低频信号,进而获取i支路的积分值ip(k)与q支路的积分值qp(k)。

s5、将ip(k)与qp(k)输入到鉴相器中进行处理,进而获取载波相位误差;

s6、采用自适应卡尔曼滤波器对经步骤s5获取的载波相位误差进行处理,以载波相位误差作为测量值,进行卡尔曼滤波迭代计算,计算出载波相位误差载波多普勒误差ωk和载波多普勒变化率αk;在卡尔曼滤波迭代的过程,对过程噪声协方差qk和测量噪声协方差rk进行实时更新;

步骤s6中,由于卡尔曼滤波迭代的过程,过程噪声协方差qk和测量噪声协方差rk不再保持不变,而是进行实时更新,从而较佳地保证了自适应卡尔曼滤波器模型中噪声统计特性的准确性,这样可以使该跟踪环路更加的适应外部环境的变化;

s7、更新载波数控振荡器(nco)中的多普勒频率为载波相位为

步骤s7中,能够根据步骤s6中迭代运算所获取的载波相位误差载波多普勒误差ωk和载波多普勒变化率αk,对载波数控振荡器(nco)中的多普勒频率和载波相位进行更新,从而较佳地实现对正弦和余弦载波复制信号的实时更新,进而能够较佳地提升对信号的跟踪灵敏度。

步骤s2中,载波数控振荡器(nco)的复制过程包括如下步骤,

s21、由载波数控振荡器(nco)输出一个阶梯形的周期信号;

s22、由正弦表和余弦表分别将阶梯信号转换为数字式正弦和余弦载波复制信号。

步骤s6中,将经步骤s5获取的载波相位误差输入到基于自适应卡尔曼的环路滤波器中作为测量值;其中,三阶自适应卡尔曼跟踪载波环的状态模型为xk+1=φkxk+nk、测量模型为zk+1=hkxk+vk;其中,k时刻的状态变量xk设置为其中,ωk和αk分别为载波相位误差,载波多普勒误差和载波多普勒变化率;状态转移矩阵φk为zk+1是k+1时刻的测量矩阵,即为步骤s5中得到的载波相位误差;测量矩阵hk为hk=[1t/2t2/6],其中t为卡尔曼跟踪环的更新周期,nk和vk分别为过程噪声矩阵和测量噪声矩阵,nk和vk互不相关且均为白噪声阵列,nk和vk的协方差矩阵分别为qk和rk,分别称为过程噪声协方差和测量噪声协方差。

本实施例中,自适应卡尔曼滤波器采用线性离散卡尔曼模型。

本实施例中,nk和vk互不相关且均为白噪声阵列,其具有如下统计特性,

其中,e[·]为期望函数,qk和rk分别为nk和vk的协方差矩阵。

本实施例中,自适应卡尔曼跟踪的递推过程如下,

(1)初始化状态变量和状态均方误差

(2)状态变量估计预测:

(3)计算新息序列:

(4)计算新息序列的协方差理论值:同时可得到通过滑动窗口法计算得到新息协方差的实际值:其中m为滑动窗口的大小;

(5)计算自适应因子λk为并通过自适应因子更新过程噪声协方差

(6)状态均方误差一步预测:

(7)通过使用宽窄带载噪比估计法估计载噪比(c/n0)k,从而更新测量噪声协方差

(8)更新卡尔曼滤波增益矩阵:

(9)更新系统的状态矢量估计值:

(10)更新系统状态矢量的均方误差值:

(11)更新完毕后,进入下一时刻,继续迭代更新。

本实施例中,卡尔曼滤波跟踪的递推算法包括预测过程和更新过程两部分,预测过程的递推公式为,

更新过程的递推公式为,

其中,为预测的状态估计值,为预测的状态协方差矩阵;为估计的状态值,为估计的状态协方差矩阵。kk表示卡尔曼增益,代表系统动态模型中新的测量值和预测值之间的权重关系。

本实施例中,自适应卡尔曼方法中对过程噪声协方差更新方法是基于新息序列的方法,其新息序列定义为dk代表的是新息序列,代表的是预测的状态矢量;

其中,新息序列的协方差理论上由下式计算出,

其中,ck代表理论新息协方差,代表预测的状态协方差矩阵。

其中,新息序列的协方差实际通过滑动窗口的方法进行计算,计算公式为m为滑动窗口的大小,i=k-m+1为滑动窗口的第一个采样点。

本实施例中,定义自适应因子λk为则过程噪声协方差qk的更新公式为

本实施例中,测量噪声协方差rk更新方式为:其中,(c/n0)k是估计的载噪比,(c/n0)k的单位为db-hz,(c/n0)k在接收机中通过相关积分值来估计,采用的方法为宽窄带载噪比估计法。

以上示意性的对本发明及其实施方式进行了描述,该描述没有限制性,附图中所示的也只是本发明的实施方式之一,实际的结构并不局限于此。所以,如果本领域的普通技术人员受其启示,在不脱离本发明创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本发明的保护范围。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。