Kalman滤波器仿真研究
Kalman滤波器仿真研究
[摘要] 为了进一步研究kalman滤波器的滤波性能,本文对于kalman滤波在雷达数据处理中的应用进行
了仿真研究。假定雷达每隔时间T获得目标的位置数据,利用CV模型,滤波器对观测数据进行处理,估计当前目标的状态参数,并对目标未来的状态进行预测。通过实验结果表明,初值选取和系统参数对滤波器收敛速度和稳态精度的影响,以及系统模型和系统参数对机动目标跟踪性能的影响。
[关键词] kalman滤波 CV模型 跟踪性能
[Abstract] For the further research of kalman filter’s performance, this paper does the simulation research for
the application of kalman filter to the field of radar data processing. Assume that the radar obtain the position data of target every T seconds, using CV model, the filter will deal with the observation data, estimating the current state parameter of target and predicting the future state. The results which show the effect of initial data and system parameter to the filter’s convergence velocity and precision of the steady state and the effect of system model and system parameter to the performance of tracking of maneuvering targets are obtained.
[Keywords] kalman filter, CV model, tracking performance.
0 引言
对于线性无偏最小均方误差的估计问题有两种滤波器:维纳滤波器和kalman滤波器。 维纳滤波是根据最小均方准则导出的线性滤波器应满足的W—H,通过解W—H即得到了最优线性滤波器的冲激响应,滤波器的输出为消息的最优线性估计,其线性估计体现在冲激响应为线性的。Kalman滤波方法是R.E.Kalman等人于60年代初提出来的,它的估计性能是线性最优的,而递推形式又能适应实时处理的需要,因此得到了广泛的应用。
Kalman滤波器与维纳滤波器的不同点在于:
? 不由协方差函数描述系统,而由白噪声策动的产生该过程的线性模型来表示。 ? 不去寻找最佳滤波器的冲激响应,而是去寻找一套算法直接得到消息的估计——即使不
能解析地求解微分方程,也总能容易的用计算机求解。
? 不用时变的冲激响应描述产生消息的线性系统,而是用微分方程来描述,方程的解即为
消息。
- 1 -
Kalman滤波器仿真研究
1 基本原理
Kalman滤波分为连续和离散kalman滤波,本文主要研究离散kalman滤波器。 1.1 离散kalman滤波原理
为了描述系统状态,首先要建立消息模型: xk?1??kxk?Gkuk
其中n维矢量xk为消息,uk为r维策动噪声矢量。?k为n?n维转移矩阵或系统矩阵,Gk为n?r维矩阵。
接着对系统状态进行估计时需要建立测量模型:zk?Hk?xk?wk——线性观测 其中zk为m维观测矢量,wk为m维观测噪声。
在开始进行kalman滤波前需要已知的先验信息: E?uk??uk,Covuk,uj?Qk??kj——白噪声 E?wk??wk,Covwk,uj?Rk??kj——白噪声 Cov?uk,wk??0
初值E?x0??x0,Var?x0??P0 Cov?x0,uk??0,Cov?x0,wk??0
?????k?Fk?Zk?dk 根据最优准则—最小均方误差准则,即求使限定滤波器为线性的:x?k??xk?x?k?在k时刻最小的系统状态(消息)xk 的线性无偏、最小均方差Jk?E?xk?xT??递推滤波估计算法。多次利用矩阵求逆引理,可推导出kalman滤波的递推形式:
?k|k?1??k?1x?k?Gk?1uk?1预测方程: x预测方差: 滤波方差: 滤波增益: 滤波方程:
TPk|k?1??k?1?Pk?1??T?G?Q?Gk?1k?1k?1k?11T?1?1Pk?(Pk?|k?1?Hk?Rk?Hk)
TTKk?Pk|k?1?Hk(Hk?Pk|k?1?Hk?Rk)?1?k?x?k|k?1?Kk??zk?(Hkx?k|k?1?wk)?x
1.2 CV模型
- 2 -
Kalman滤波器仿真研究
CV模型即常速度模型,假设目标是以常速度运动,坐标x对时间t的二阶导数为0,而实际中把目标的加速度作为随机噪声处理。则消息的状态空间模型:xk?1??kxk?Gkuk 测量模型:zk?Hk?xk?wk中的各个矩阵取值:
?1T ?01? ?00?k??
?00?00
???00
00000001000000101T0?0??0??0?T??1???T2?2?T??Gk??0?0??0??000T22T00?0?0??0??0?T2??2?T??xk??x?k????zx??100000??yk?? H??001000?
zXk??? Zk??yk?????yk?????zz???000010???zk????k???z?其中w?k?,u?k?分别为策动噪声和观测噪声,均值都为0,且互不相关。可见,此时消息状态模型和测量模型系数都不随时间变化,即状态和测量模型固定。 对于策动噪声协方差矩阵,考虑:
?T4??43?T?2??0Q1?G?Q?G????0???0??0??T32T2000000T44T320000T32T2000000T44T32?0??0???0????u20??T3??2?T2???在实际的雷达数据处理过程中,观测数据是在方向余弦坐标系下得到的,而目标的状态方程是直角坐标系描述,因此观测噪声方差矩阵需要进行坐标系的转换:
2??x?xy?xz???2R???xy?y?yz???xz?yz?z2???- 3 -
Kalman滤波器仿真研究
22?x2??2??R??2???2?xy??????R22?xz??????R?R2?????/?222?y??2??R?R2???22?yz??????R?R2?????/?222?z2??2??R?R2??2???/?2?R2??2???/?2
??1??2??2
2 仿真实验
2.1 建立仿真环境 (1)产生目标航迹 * 匀速直线飞行目标
xT?k??x0?vx?k?TyT?k??y0?vy?k?T z?k??z0?v?k?TTz* 匀加速直线飞行目标 * 匀速圆周运动 (2)产生观测噪声
观测分别为R,?,?,其观测噪声分别为互相独立的零均值高斯白噪声wR?k?,w??k?,w??k?,观测噪声方差为:?R?100m,??????0.1 (3)产生观测
* 方向余弦坐标系下的目标航迹
2?k??yT2?k??zT2?k?RT?k??xT?
* 雷达观测值
?T?k??xT?k?/RT?k??T?k??yT?k?/RT?k?
- 4 -
相关推荐: