资源简介
卡尔曼滤波算法 的MATLAB实现 压缩包直接打开即可
代码片段和文件信息
clear all;close all;clc;
ts=1;%%采样时间
t=[0:ts:100];
T=length(t);
Q=20;R=16;
vs=randn(1T);
vs=vs/std(vs);
vs=vs-mean(vs);
a=0;
b=sqrt(R);
vs=a+b*vs;%产方差为16的高斯白噪声序列;
wa=randn(1T);
wa=wa/std(wa);
wa=wa-mean(wa);
a=0;
b=sqrt(Q);
wa=a+b*wa;%产方差为20的高斯白噪声序列;
%%初始状态
x=[1000 50 20]‘;%
x00=[990;0;0];%
p00=[10 0 0;0 100 0;0 0 100];
%%连续状态空间模型
%x_dot(t)=Ax(t)+Bu(t)
%z(t)=Cx(t)+Du(t);
A=[0 1 0;0 0 1;0 0 0];%
B=[0;0;1];%
C=[1 0 0];%
D=[1];%
%%离散状态空间模型
%x(k+1)=Fx(k)+Gw(k)
%z(k)=Hx(k)+Iv(k);
%连续形式的离散化
sysc=ss(ABCD);
sysd=c2d(syscts‘zoh‘);
[F G H I ]=ssdata(sysd);
% F=eye(3)+A;
phi=F;
for i=1:T-1
x(:i+1)=F*x(:i);
end
%x=x+w;
m=0;
x=x+G*wa;
z=H*x+I*vs;%计算观测值
for d=1:T-1
x10=phi*x00;
p10=phi*p00*phi‘+G*20*G‘;
K=p10*H‘*inv(H*p10*H‘+R);
x11=x10+K*(z(:d)-H*x10);
p11=p10-K*H*p10;
p00=p11;
x00=x11;
jie(d)=x11(1);%位置
su(d)=x11(2);%速度
jia(d)=x11(3);%加速度
end %卡尔曼滤波
for d=1:T-1
weicha(d)=jie(d)-x(1d); %位置误差
sucha(d)=su(d)-x(2d);%速度误差
jiacha(d)=jia(d)-x(3d);%加速度误差
end
t=0:1:T-2;
d=0:1:T-1;
figure(1);
plot(tjie‘g+‘);
hold on;
plot(dx(1:)‘r‘);
figure(2);
plot(tsu‘g+‘);
hold on;
plot(dx(2:)‘r‘);
figure(3);
plot(tjia‘g--‘);
hold on;
plot(dx(3:)‘r‘);
figure(4)
plot(tweicha);
figure(5)
plot(tsucha);
figure(6);
plot(tjiacha);
mean1=mean(jia)%加速度均值
mean2=mean(weicha)%位置误差均值
mean3=mean(sucha)%速度误差均值
mean4=mean(jiacha)%加速度误差均值
jiuncha1=std(jia)^2%加速度方差
jiuncha2=std(weicha)^2%位置误差方差
jiuncha3=std(sucha)^2 %速度误差方差
jiuncha4=std(jiacha)^2%加速度误差方差
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 133632 2015-06-20 23:02 辛弄潮 201230050602021201.doc
文件 1725 2015-06-20 22:58 test.m
----------- --------- ---------- ----- ----
135357 2
- 上一篇:max VR代理插件
- 下一篇:磁偶极子源仿真
相关资源
- matlab中的计时工具timeit.m
- 自己编写的matlab运动模糊盲复原程序
- LFM脉冲压缩matlab程序264292
- 异步电机直接转矩控制Matlab仿真
-
太阳能电池MPPT算法simuli
nk仿真模型 - CNN卷积神经网络的MATLAB程序解释
- 模糊K-均值算法及其matlab实现
- 资源分配算法
- 基于MATLAB的_4_DQPSK信号差分解调性能仿
- 波束形成算法
- matlab can总线工具箱介绍
- matlab修正离轴制作全息图与再现
- 单尺度,多尺度的Retinex算法程序
- Wagner Whitin算法的Matlab实现附有算例
- doa算法的matlab实现
- MATLAB中傅里叶变换常用函数
- matlab信噪比的计算
- 相控阵天线测试仿真
- matlab空间圆弧插补程序
- 小波变换图像去噪MATLAB仿真
- 圆阵目标方位估计,mvdr方法matlab
- 线性偏振片Mueller矩阵计算_Matlab代码
- 无约束最优控制matlab程序
- MIMO功率分配算法,注水原理
- 回声抵消器
- 基于肤色的人脸检测matlab代码
- 详解MATLAB 数字信号处理[张德丰][程序
- 7,3循环码课程设计
- 卡尔曼滤波matlab代码
- OFDM同步算法之SC算法
评论
共有 条评论