该系统的真实温度为25度,图中用黑线表示。图中红线是卡尔曼滤波器输出的最优化结果(该结果在算法中设置了Q=1e-6,R=1e-1)。 ×××××××××××××××××× 附matlab下面的kalman滤波程序: w=randn(1,N) //产生一个均值为0,方差为1的1*n维向量(白噪声、正态分布而非均匀分布) x(k)=a*x(k-1)+w(k-1); //200个X(k)赋值,初始值? V=randn(1,N); q1=std(V); //标准差 c=0.2; fort=2:N; //FOR b(t)=c*p1(t)/(c.^2*p1(t)+Rvv); //增益? end //END t=1:N; //循环? plot(t,s,'r',t,Y,'g',t,x,'b'); //RGB? s,Y,x都是向量 |