TA的每日心情  | 难过 2019-11-19 16:03 | 
|---|
 
  签到天数: 1 天 [LV.1]初来乍到  
 | 
	
    
 
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册  
 
x
 
%Title卡尔曼滤波基本方程: o/ F; F7 o5 e. x% \5 @# o, f% c 
%A1初始化8 ?$ z0 E/ ~3 m$ ]# W  i 
2 f- `  k5 c$ ~- X  v 
%A1.1参数初始化, v; N2 [! B6 j( F 
N=200;/ ~$ t& f0 A$ q0 |, ~/ d 
 
- s: l% g. M2 F6 x  X9 k  WXa=zeros(N,1);%预估值5 ~0 Y1 [: a2 Y 
X=zeros(N,1);%当前时刻最优估计值 
* M8 [' z1 R- J& f( TPa=zeros(N,1);%Xa的方差矩阵! n3 @2 }2 u5 n. }% f+ G# X+ A 
P=zeros(N,1);%X的方差矩阵7 Z) ^: n. o; g% {; k 
Kg=ones(N,1);%卡尔曼增益3 {( n6 M% }3 I3 y6 o# B 
 
4 o9 `# L' X+ y/ B# U5 {, NZ=zeros(N,1);%观测值9 D* U4 K  _9 O 
( {9 S1 o- c4 h$ v 
W=randn(N,1);%过程噪声% z, B2 d- n" v2 v 
stdW=std(W);%标准差8 O2 h) |- n' n& W 
varW=stdW.^2;%方差. q% O/ T; Y8 A$ \2 o! I2 k 
V=0.5*randn(N,1);%观测噪声: U+ a0 x; x# P 
stdV=std(V);%标准差5 k6 L. W. H, | 
varV=stdV.^2;%方差2 H+ a; ?$ J9 Y0 E 
 
# B: q! I3 w: n$ }* _3 \A=1;, n5 j0 `! t! \& b+ Y% C5 w! t$ Y 
H=1; 
$ S$ W8 h% }9 H, `$ A# Y) \ 
$ i! k5 T% a  w%A1.2状态初始化. @' C0 H  H- [% H' o$ H 
X(1)=23;%初始估计温度! D0 C' W5 {7 ~# \+ b5 |- W 
P(1)=10;%初始估计方差7 j5 z1 S2 k6 W 
Z(1)=25+V(1);  d) e9 Y  k0 C2 {! k( x2 c- C 
Xa(1)=23+W(1);. t5 B2 ]3 @' N 
9 e* i1 m; _7 o+ G. c- W4 ] 
%卡尔曼滤波 
4 l1 ^, Y1 }( Gfor k=2:N 
8 }! p/ }# ^0 y, m+ x. I7 b8 k( J    %预估 
  f, q( ^/ W1 v! R    Xa(k)=A*X(k-1);. t3 T$ r6 h. _% N( z 
    Pa(k)=A*P(k-1)*A'+varW;! E  {  l# ?; J2 C) u# R 
 
( Y7 B: \! O# R- X& x    %校正 
' L7 u" ~$ f- f/ ~( o( F, k    Kg(k)=Pa(k)*H'/(H*Pa(k)*H'+varV);" o( u" v" _( X2 C# q) D 
    Z(k)=25+V(k);%25是真实温度值 
6 K4 @4 M/ S% R, c" W6 W    X(k)=Xa(k)+Kg(k)*(Z(k)-H*Xa(k)); 
8 w8 e: n, J. q( o; j$ ^5 ?    P(k)=(1-Kg(k)*H)*Pa(k);, W( H0 X5 m3 N0 D; S; f4 q 
end- {: d6 c6 X! i5 c" f% O 
 
( ?" W2 R- }$ B' u' Pt=1:N; 
  R2 ~2 u* F; |realVal=25*ones(N,1);( }2 C( }1 o  _% r# e, K8 a 
' H7 G* j0 q" B: n; Z' O- i/ F+ U: _ 
plot(t,realVal,'y',t,Z,'c',t,Xa,'b',t,X,'r');, l0 e+ x& D9 b, C, T 
axis([0 N 20 30]);" ?' t; C! V6 r 
legend('真实值','观测值','预估值','估计值');! I* k8 [1 ?" C: k5 ` 
grid on; 
9 @* C# c9 S' U8 X% ^$ y" X" ^) R& L( |: V' e1 d$ i 
title('Kalman Filter');& V  E8 T) V" ]# I8 ] 
+ g; Z8 p3 t+ S& J, z 
%realVal真实值;Z观测值;Xa预估值;X最优估计值;W过程噪声;V观测噪声  
* N5 [. K5 G  m; v- P3 L3 b6 D% p) C; w. z3 a$ p 
 |   
 
 
 
 |