资源简介
matlab写的一个扩展卡尔曼滤波程序,状态方程为线性,观测方程非线性,最后输出图片以便观察是否收敛,分享给大家参考。
代码片段和文件信息
t=3;
Ts=0.1;
len=fix(t/Ts);
xn=zeros(3len);
x_pre=zeros(3len);
x_up=zeros(3len);
s_con=zeros(31);
s_con(11)=9.8*cos(pi/6);
s_con(21)=9.8*sin(pi/6);
s_con(31)=0;
xn(31)=pi/6;
x_pre(31)=pi/6;
z=zeros(2len);
h=zeros(2len);
sx=0.1;
sy=0.1;
sa=pi/1800;
dafa=pi/720;
dr=6;
Qk=diag([sa;sx;sy])^2;
Rk=diag([dr;dafa])^2;
p=1*eye(3);
F=zeros(33);
F(11)=1;
F(22)=1;
F(33)=1;
for i=1:len-1
%真实值
xn(1i+1)=xn(1i)+s_con(11)+sx*randn(11);
xn(2i+1)=xn(2i)+s_con(21)+sy*randn(11);
xn(3i+1)=xn(3i)+sa*randn(11);
%测量值
z(1i+1)=sqrt((xn(1i+1))^2+(xn(2i+1))^2)+dr*randn(11);
z(2i+1)=atan(xn(2i+1)/xn(1i+1))+dafa*randn(11);
%预测值
x_pre(1i+1)=x_up(1i)+s_con(11);
x_pre(2i+1)=x_up(2i)+s_con(21);
x_pre(3i+1)=x_up(3i);
h(1i+1)=sqrt((x_pre(1i+1))^2+(x_pre(2i+1))^2);
h(2i+1)=atan(x_pre(2i+1)/x_pre(1i+1));
p_pre=F*p*F‘+Qk;
%观测矩阵的雅克比矩阵
H=zeros(23);
r=sqrt((x_pre(1i+1))^2+(x_pre(2i+1))^2);
H(11)=x_pre(1i+1)/r;
H(12)=x_pre(2i+1)/r;
H(13)=0;
H(21)=-x_pre(2i+1)/r^2;
H(22)=x_pre(1i+1)/r^2;
H(23)=0;
%卡尔曼增益
S=H*p_pre*H‘+Rk;
K=p_pre*H‘*(S^-1);
%更新方程
x_up=x_pre+K*(z-h);
p=p_pre-K*H*p_pre;
end
x_up(11)=0;
x_up(21)=-20;
figurehold ongrid on;
plot(xn(1:)xn(2:)‘-b‘);
plot(z(1:).*cos(z(2:))z(1:).*sin(z(2:))‘G‘);
plot(x_up(1:)x_up(2:)‘r‘);
xlabel(‘X‘);
ylabel(‘Y‘);
title(‘EKFsimulation‘);
legend(‘real‘‘measurement‘‘ekfestimated‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1510 2019-12-31 21:55 EKF.m
相关资源
- BP神经网络matlab(简单而经典).
- MNIST to uint8 by matlabMNIST数据库处理-m
- 基于DCT变换的数字水印算法matlab代码
- 基于matlab的数字水印系统
- 叠加平均去噪matlab仿真程序
- DCT水印算法实现MATLAB
- k近邻matlab代码
-
BP神经网络+PID控制simuli
nk仿真 - MATLAB海杂波模型仿真
- BP神经网络MATLAB实现不使用工具箱
- DBSCAN聚类算法matlab代码
- 维纳自适应滤波器设计及Matlab实现
- GA算法优化支持向量机
- GRU的matlab时间序列神经网络
- matlab去除处理背景
- matlab实现图像的旋转变换
- 程序-MATLAB-小波分解6层,通过编译,
- 三相永磁同步电机SVPWM控制算法MATLA
- 基于模糊控制的路径规划算法的仿真
- 三角高程控制网平差
- PSCAD_EMTDC与Matlab接口
- 飞行器惯性导航Matlab仿真实现
- job shop matlab
- matlab2009a反复要求激活解决方案——亲
- 和声搜索 HarmonySearch
- 模拟退火的方法解TSP问题--matlab
- matlab航天工程工具箱相信对航天卫星
- matlab双对数坐标及拟合
- 基于LCL的单相有源阻尼并网逆变器的
- matlab 曲柄滑块机构仿真 程序
评论
共有 条评论