基于matlab实现的卡尔曼滤波匀加速直线运动仿真

完整程序:
clear
clc
%% 初始化参数
delta_t = 0.1; %采样时间
T = 8; %总运行时长
t = 0:delta_t:T; %时间序列
N = length(t); %序列的长度
x0 = 0; %初始位置
u0 = 0; %初速度
U = 10; %控制量、加速度
F = [1 delta_t
0 1]; %状态转移矩阵
B = [0.5*delta_t^2
delta_t]; %控制矩阵
H = [1 0]; %观测矩阵
W = [0;3]; %过程噪声
V = [70]; %量测噪声
%分配空间
XP = zeros(2,N);%预测值
XP(:,1) = [x0;u0];
XR = zeros(2,N);%真实值
XR(:,1) = [x0;u0];
Z = zeros(1,N);%观测值
Z(1) = [0];
for i=2:N
XP(:,i) = F*XP(:,i-1)+B*U; %预测值
XR(:,i) = F*XR(:,i-1)+B*U+sqrt(W)*randn; %真实值
Z(i) = H*XR(:,i)+sqrt(V)*randn; %观测值
end
%% 卡尔曼滤波%%
%初始化参数
Xk = zeros(2,N); %最优估计值
Xk(:,1) = [0;0];
P = [1,0;0,1]; %均方误差
I = eye(2);
Q = [0 0;0 0.1];
R = 10;
for i=2:N
%时间更新
X_pre = F*Xk(:,i-1)+B*U; %状态预测值
P_pre = F*P*F'+Q; %预测均方误差
%量测更新
Kg = P_pre*H'*inv(H*P_pre*H'+R); %计算卡尔曼增益
Xk(:,i) = X_pre+Kg*(Z(:,i)-H*X_pre); %状态估计值
P = (I-Kg*H)*P_pre; %均方误差
end
%% 结果
figure(1)
plot(t,XP(1,:),'K');hold on
grid on
plot(t,XR(1,:),'r');hold on
plot(t,Z(:),'b');
legend('预测值', '真实值','量测值');
title('位置')
xlabel('时间 [sec]')
ylabel('位置 [m]')
hold on
plot(t,Xk(1,:),'g');
legend('预测值', '真实值','量测值','kalman估计值');
figure(2)
x_error = abs(XR-Xk(1,:));
x_error1 = abs(XR-Z(1,:));
plot(t,x_error(1,:),'b'),grid on;hold on
plot(t,x_error1(1,:),'r');
legend('估计值误差', '量测值误差');
title('位置误差')
xlabel('时间 [sec]')
ylabel('位置均方根误差 [m]')
grid on
hold off;
figure(3)
plot(t,Xk(2,:),'r'),grid on;
title('实际速度 ')
legend('实际速度')
xlabel('时间 [sec]')
ylabel('速度 [m/sec]')
hold off;
相关文章:
基于matlab实现的卡尔曼滤波匀加速直线运动仿真
完整程序: clear clc %% 初始化参数 delta_t 0.1; %采样时间 T 8; %总运行时长 t 0:delta_t:T; %时间序列 N length(t); %序列的长度 x0 0; %初始位置 u0 0; %初速度 U 10; %控制量、加速度 F [1 delta_t 0 1]; %状态转移矩阵 B …...
windows Visual Studio 2022 opengl开发环境配置
1. 安装glew(GL), GLFW, glm, soil2-debug 还需要premake生成visual studio solution cmake for windows也要安装一个, 但是不用安装MinGW64, bug多 下载源码,找到xxx.sln文件用visual stidio打开solution编译代码,找到xxx.lib, xxx.dll文件…...
中国财政科学研究院党委书记、院长刘尚希一行莅临麒麟信安调研
为贯彻落实省委第十二届四次全会精神,加快推动湖南高质量发展,9月16日下午,由中国财政科学研究院党委书记、院长刘尚希,中国电子信息产业发展研究院总工程师秦海林,省委改革办副主任梁仲,省发展改革委党组成…...
基于element-ui的年份范围选择器
基于element-ui的年份范围选择器 element-ui官方只有日期范围和月份范围选择器,根据需求场景需要,支持年份选择器,原本使用两个分开的年份选择器实现的,但是往往有些是不能接受的。在网上找了很多都没有合适的,所以打…...
【已解决】您所使用的密钥ak有问题,不支持jsapi服务,可以访问该网址了解如何获取有效密钥。
您所使用的密钥ak有问题,不支持jsapi服务,可以访问该网址了解如何获取有效密钥。详情查看:http://lbsyun.baidu.com/apiconsole/key#。 问题 百度密钥过期 思路 注册成为开发者 如果还没注册百度地图api账号的,点击以后就进入…...
JS操作数组方法学习系列(1)
目录 数组添加元素 (push)数组移除末尾元素 (pop)数组添加元素到开头 (unshift)数组移除开头元素 (shift)数组查找元素索引 (indexOf)数组反向查找元素索引 (lastIndexOf)数组切割 (slice)数组连接 (concat)数组元素查找 (find 和 findIndex)数组元素过滤 (filter)数组元素映射…...
翻牌闯关游戏
翻牌闯关游戏 3关:关卡由少至多12格、20格、30格图案:12个玩法:点击两张卡牌,图案一到即可消除掉 记忆时长(毫秒):memoryDurationTime:5000 可配置:默认5000 提示游戏玩法:showTipsFlag:1 可…...
CilckHouse创建表
一、引擎 一开始没注意有引擎选择,要用什么引擎去官方文档看看自己建的表适合什么引擎,大部分用MergeTree 二、用sql语句生成表 1、MergeTree引擎 原文地址:https://blog.csdn.net/qq_21383435/article/details/122812921?ops_request_misc%…...
高级运维学习(八)Ceph 概述与部署
ceph概述 ceph可以实现的存储方式: 块存储:提供像普通硬盘一样的存储,为使用者提供“硬盘”文件系统存储:类似于NFS的共享方式,为使用者提供共享文件夹对象存储:像百度云盘一样,需要使用单独的客…...
【图像处理】VS编译opencv源码,并调用编译生成的库
背景 有些时候我们需要修改opencv相关源码, 这里介绍怎么编译修改并调用修改后的库文件。 步骤 1、下载相关源码工具: 下载opencv4.8源码并解压 https://down.chinaz.com/soft/40730.htm 下载VS2019,社区版免费 https://visualstudio.micro…...
STM32 EtherCAT 总线型(1 拖 4)步进电机解决方案
第 1 章 概述 技术特点 支持标准 100M/s 带宽全双工 EtherCAT 总线网络接口及 CoE 通信协议一 进一出(RJ45 接口),支持多组动态 PDO 分组和对象字典的自动映射,支持站 号 ID 的自动设置与保存,支持 SDO 的…...
Postman应用——测试脚本Test Script
文章目录 Test Script脚本CollectionFolderRequest 解析响应体断言测试 测试脚本可以在Collection、Folder和Request的Pre-request script 和 Test script中编写,测试脚本可以检测请求响应的各个方面,包括正文、状态代码、头、cookie、响应时间等&#x…...
JS的网络状态以及强网弱网详解
文章目录 1. online 和 offline 事件2. navigator.onLine2.1 什么是 navigator.connection?2.2 如何使用 navigator.connection?2.3 总结 1. online 和 offline 事件 online 和 offline 事件是浏览器自带的两个事件,可以通过添加事件监听器来…...
大数据-kafka学习笔记
Kafka Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue),主要应用于大数据实时处理领域。 Kafka可以用作Flink应用程序的数据源。Flink可以轻松地从一个或多个Kafka主题中消费数据流。这意味着您可以使用Kafka来捕获和传输…...
详述RPA项目管理流程,RPA项目管理流程是什么?
RPA(Robotic Process Automation,机器人流程自动化)是一种通过软件机器人模拟人类在计算机上执行重复性任务的技术。RPA可以帮助企业提高工作效率、降低成本、减少错误并提高客户满意度。然而,为了确保RPA项目的成功实施ÿ…...
爬虫 — Js 逆向
目录 一、概念1、爬虫2、反爬虫3、加密解密4、加密5、步骤 二、常用加密方式1、加密方式2、常见加密算法3、JS 中常见的算法4、MD5 算法4.1、MD5 加密网站4.2、特点 5、DES/AES 算法6、RSA 算法7、base64 算法 三、环境配置1、node.js 环境配置2、PyCharm 环境配置 一、概念 1…...
Python 网络爬取的时候使用那种框架
尽管现代的网站多采取前后端分离的方式进行开发了,但是对直接 API 的调用我们通常会有 token 的限制和可以调用频率的限制。 因此,在一些特定的网站上,我们可能还是需要使用网络爬虫的方式获得已经返回的 JSON 数据结构,甚至是处理…...
CentOS7安装源设置
此处的安装源地址需要填写:(适用于centos7) http://mirrors.aliyun.com/centos/7/os/x86_64/...
pool = multiprocessing.Pool()报错:module object has no attribute Pool
pool multiprocessing.Pool()报错:module object has no attribute Pool,为什么? 我很抱歉,前面提供的回答是错误的。在Python的multiprocessing模块中,确实有一个名为Pool的类。如果你在使用multiprocessing.Pool()…...
Linux Shell 实现一键部署podman
podman 介绍 使用 Podman 管理容器、Pod 和映像。从本地环境中无缝使用容器和 Kubernetes,Podman 提供与 Docker 非常相似的功能,它不需要在你的系统上运行任何守护进程,并且它也可以在没有 root 权限的情况下运行。 Podman 可以管理和运行…...
老王-你驾驭不住的东西才会显相
你驾驭不住的东西,才会显相 ——展现即风险,驾驭方为道“大象无形。” 真正强大的人,从不轻易显相—— 因为显,即招;露,即险。⚠️ 你想展现什么,就必须能驾驭什么。🔥 六大展现&…...
参数估计实战:从置信区间构建到样本量计算的完整指南
1. 参数估计的核心逻辑:从抽样到推断 第一次接触参数估计时,我盯着那个95%置信区间看了半小时——它既不像天气预报的降水概率,也不像考试分数的百分比排名。后来在分析用户行为数据时才恍然大悟:参数估计本质是用样本数据给总体参…...
本地Cookie导出终极指南:Get cookies.txt LOCALLY 安全使用教程
本地Cookie导出终极指南:Get cookies.txt LOCALLY 安全使用教程 【免费下载链接】Get-cookies.txt-LOCALLY Get cookies.txt, NEVER send information outside. 项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY 你是否曾担心浏览器Coo…...
esp-hosted 方案深度解析:从架构选型到性能调优实战
1. 为什么选择esp-hosted方案? 如果你正在为嵌入式系统寻找稳定可靠的无线连接方案,esp-hosted绝对值得考虑。这个由乐鑫推出的开源方案,本质上是通过ESP32系列芯片为Linux主机或MCU设备提供Wi-Fi和蓝牙连接能力。我曾在多个工业物联网项目中…...
OpenClaw技能开发入门:为百川2-13B量化模型定制自动化模块
OpenClaw技能开发入门:为百川2-13B量化模型定制自动化模块 1. 为什么选择OpenClaw开发技能? 去年冬天,我为了给团队搭建一个内部天气查询助手,尝试过至少三种不同的自动化方案。要么是API调用太复杂,要么是自然语言处…...
Diagrams:轻量化且多语言支持的Visio替代方案
1. 为什么你需要一个Visio替代方案? 如果你经常需要画流程图、架构图或者UML图,肯定对Microsoft Visio不陌生。作为一款老牌绘图工具,Visio确实功能强大,但它的缺点也同样明显。首先就是价格问题,正版Visio的订阅费用不…...
半导体晶圆测量中的5大常见误区:从台阶仪到无图晶圆系统的避坑指南
半导体晶圆测量中的5大常见误区:从台阶仪到无图晶圆系统的避坑指南 在半导体制造领域,晶圆测量是确保器件性能与良率的关键环节。然而,即使是经验丰富的工程师,也常因忽视某些细节而陷入测量陷阱。本文将揭示五个最具隐蔽性的操作…...
实战指南:用快马为django项目生成定制化vmware开发环境,开箱即用
实战指南:用快马为Django项目生成定制化VMware开发环境,开箱即用 在实际开发场景中,虚拟机环境需要与具体项目需求紧密结合。最近我在做一个Django项目时,发现每次换电脑或重装系统都要重新配置开发环境,特别浪费时间…...
asp毕业设计下载(全套源码+配套论文)——基于asp+access的公司门户网站设计与实现
基于aspaccess的公司门户网站设计与实现(毕业论文程序源码) 大家好,今天给大家介绍基于aspaccess的公司门户网站设计与实现,更多精选毕业设计项目实例见文末哦。 文章目录: 基于aspaccess的公司门户网站设计与实现&a…...
如何将TaskWeaver与LangChain无缝集成:扩展AI代理能力边界的终极指南
如何将TaskWeaver与LangChain无缝集成:扩展AI代理能力边界的终极指南 【免费下载链接】TaskWeaver A code-first agent framework for seamlessly planning and executing data analytics tasks. 项目地址: https://gitcode.com/gh_mirrors/ta/TaskWeaver T…...
