之前将扩展卡尔曼滤波应用在跟踪当中,由于I Q路值表达式复杂,估计它们相应的参数运算量大,而且结
果也不正确,因此,先简单化,将扩展卡尔曼滤波退化成卡尔曼滤波,观测方程变成线性的进行估计;
一 直接将鉴相器的输出量作为卡尔曼滤波器的观测值,观察结果;
1 首先用模拟器信号作为接收信号,观察卡尔曼的估计效果
2 因为以后实验用的是仿真信号,所以,在1完成后,改用仿真信号观察卡尔曼的估计效果
实验报告:
一 实验名称
基于卡尔曼滤波的Gps跟踪程序调试
二 实验目的及要求
1 掌握卡尔曼滤波理论知识
2掌握卡尔曼在跟踪中的应用,验证卡尔曼滤波编程的正确性
3 用仿真信号测试便于以后估计信号单个直达信号参数作准备
三 实验环境(相关软件和实验条件)
1 传统的matalb版接收机源程序
2 接收信号为仿真的信号,不含有多径信号
3 直达信号延迟了0.5chips,多普勒50HZ,幅度为1
四 实验内容
1 流程图
2 设计思路
2.1 考虑到EKF估计参数观测方程复杂,实验结果不理想的情况;将观测方程变成线性的,EKF就退化成KF,验证卡尔曼算法的效果,以及编程的是否正确
2.2 对每一个观测值z进行卡尔曼跟踪,程序设置了每进行5次卡尔曼迭代输出z的估计值z’;然后输入后面的部分
五 实验数据记录和处理
1 观测值的设置和状态参数的初始化
1.1 观测值z = [ (I_E – I_L) / (I_E + I_L) atan(Q_P / I_P)/(2.0*pi) ];
1.2 所以将X0设置符合参数实际物理的值,然后利用卡尔曼估计不断收敛到z的值
情况1:
状态值X0=[ 0.3 0.2]; 里面的两个参数分别为码片误差和载波相位误差输出
最终的结果和传统跟踪的一样;
大家的问题:
问题反馈:
1 问题描述:针对此设计思路,卡尔曼滤波的目的是什么?有何意义?传统跟踪环跟踪环和卡尔曼滤波跟踪环达到的效果如何比较?
解释:①开始的想法是利用线性的卡尔曼估计验证其程序的正确与否;把传统的跟踪结果作为目标,而不是将它当做性能好坏的比较对象,如果卡尔曼估计的结果能够达到那个目标,说明它编程没问题;
解释:②最后的结论此设计思路对之后的扩展卡尔曼滤波应用到跟踪当中意义并不大,不会采用那种方法。