资源简介
Kalman滤波在船舶GPS导航定位系统中的应用的MATLAB程序,用卡尔曼滤波进行滤波,得到真是轨迹、滤波轨迹和预测轨迹。
代码片段和文件信息
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Kalman滤波在船舶GPS导航定位系统中的应用
% 详细原理介绍及中文注释请参考:
% 《卡尔曼滤波原理及应用-MATLAB仿真》,电子工业出版社,黄小平著。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function main
clc;clear;
T=1;
N=80/T;
X=zeros(4N);
X(:1)=[-100220020];
Z=zeros(2N);
Z(:1)=[X(11)X(31)];
delta_w=1e-2;
Q=delta_w*diag([0.510.51]) ;
R=100*eye(2);
F=[1T00;0100;001T;0001];
H=[1000;0010];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for t=2:N
X(:t)=F*X(:t-1)+sqrtm(Q)*randn(41);
Z(:t)=H*X(:t)+sqrtm(R)*randn(21); % 此处有误,请修改为P54页第二句一致即可运行
end
Xkf=zeros(4N);
Xkf(:1)=X(:1);
P0=eye(4);
for i=2:N
Xn=F*Xkf(:i-1);
P1=F*P0*F‘+Q;
K
相关资源
- rddata.m -- MIT-BIH ECG 信号的数据读取M
- 基于前推回代法潮流计算的MATLAB程序
- 电动汽车充电站选址定容matlab程序
- Matlab中蚁群算法求解连续函数优化的
- 圆形阵列的方向图matlab程序
- 基于卡尔曼滤波的定位算法MATLAB程序
- 基于卡尔曼滤波算法的主从时钟同步
- 二维图像frft变换MATLAB程序
- lorenz混沌系统matlab程序
- 均值漂移的MATLAB程序
- MATLAB卡尔曼滤波伪距单点定位
- MATLAB密度聚类程序
- 近邻传播聚类affinity propagation cluster
- 遗传算法解决非线性规划问题的Matl
- 颜色CIEDE2000matlab程序
- 一维信号前提下粒子滤波器和卡尔曼
-
卡尔曼滤波器在simuli
nk 中的实现 - pso-SVM的MATLAB程序
- 遗传算法 MATLAB程序合集
- 跳频通信MATLAB程序
- 电力系统负荷预测MATLAB程序 .m
- 最大相关最小冗余MATLAB程序
- 最简单的贝叶斯分类器演示Matlab程序
- 极限学习机matlab程序
- MATLAB程序
- 遗传算法完整MATLAB程序实数法,覆盖
- 空间平滑MUSIC算法MATLAB程序
- 基于模糊逻辑的步态识别的matlab程序
- 导线网平差matlab程序
- 编码制作二维傅里叶全息图的Matlab程
评论
共有 条评论