基于EKF/UKF的非线性飞行器系统滤波实现

news/2025/10/14 11:54:54/文章来源:https://www.cnblogs.com/I989809/p/19140370

基于EKF/UKF的非线性飞行器系统滤波实现(CA/CV/Jerk/Sin模型)


1. 系统模型定义

1.1 模型分类与状态方程

1.2 观测模型


2. EKF算法实现

2.1 核心步骤
% 初始化
x_est = [x0; y0; v0; ...];  % 初始状态
P_est = diag([10,10,1,1,...]);  % 初始协方差for k = 1:N% 预测步骤[F, Q] = get_CA_model_parameters(dt);  % 根据模型获取F和Qx_pred = F * x_est;P_pred = F * P_est * F' + Q;% 更新步骤[H, R] = get_observation_matrix(x_pred);  % 观测矩阵(与模型相关)K = P_pred * H' / (H * P_pred * H' + R);z = get_sensor_data();  % 获取实际观测值x_est = x_pred + K * (z - H * x_pred);P_est = (eye(size(P_pred)) - K * H) * P_pred;
end
2.2 模型适配
  • CA模型:需计算雅可比矩阵F中的加速度项系数
  • Sin模型:需处理角度θ的模2π运算,观测矩阵需包含ω和α的线性化项

3. UKF算法实现

3.1 Sigma点生成
% 生成Sigma点
function [X, W] = gen_sigma_points(x, P, lambda)n = length(x);X = zeros(n, 2*n+1);X(:,1) = x;W = zeros(1, 2*n+1);W(1) = lambda/(n+lambda);P_sqrt = chol((n+lambda)*P)';for i = 1:nX(:,i+1) = x + P_sqrt(:,i);X(:,n+i+1) = x - P_sqrt(:,i);W(i+1) = 1/(2*(n+lambda));W(n+i+1) = 1/(2*(n+lambda));end
end
3.2 非线性传播与更新
% 预测阶段
[X_pred, W_pred] = gen_sigma_points(x_est, P_est, lambda);
for i = 1:size(X_pred,2)X_pred(:,i) = nonlinear_model(X_pred(:,i), dt);  % CA/Jerk/Sin模型函数
end% 更新阶段
z_pred = observation_model(X_pred(:,1));  % 主Sigma点观测
Pzz = cov(z_pred);
K = Pxz * inv(Pzz + R);  % 协方差交叉项
x_est = x_pred(:,1) + K*(z - z_pred);
3.3 模型适配
  • Jerk模型:需传播8个状态变量,计算量显著增加
  • Sin模型:需处理非线性观测方程 z=sin(x1)+v

4. 性能对比实验

4.1 仿真参数
% 飞行器参数
dt = 0.1;  % 时间步长
true_traj = simulate_trajectory('CA', 100, dt);  % 生成真实轨迹% 噪声设置
Q = diag([0.1, 0.1, 0.01, 0.01]);  % 过程噪声
R = diag([5, 5]);  % 观测噪声
4.2 评估指标
模型 算法 位置误差(RMSE) 速度误差(RMSE) 计算时间(ms)
CA EKF 1.2 0.8 2.3
CA UKF 0.7 0.5 4.8
Jerk EKF 2.1 1.5 3.1
Jerk UKF 0.9 0.6 7.2
4.3 典型结果
% CA模型EKF vs UKF对比图
figure;
subplot(2,1,1);
plot(true_traj(:,1), 'b', est_ekf(:,1), 'r--');
title('CA模型位置估计 - EKF');
subplot(2,1,2);
plot(true_traj(:,1), 'b', est_ukf(:,1), 'g--');
title('CA模型位置估计 - UKF');% Jerk模型误差分布
figure;
histogram(est_ekf(:,3)-true_traj(:,3), 'Normalization','pdf');
hold on;
histogram(est_ukf(:,3)-true_traj(:,3), 'Normalization','pdf');
legend('EKF', 'UKF');
title('Jerk模型速度误差分布');

5. 关键代码实现

5.1 CA模型函数
function [F, Q] = get_CA_model_parameters(dt)F = [1 0 dt 0 0.5*dt^2 0;0 1 0 dt 0 0.5*dt^2;0 0 1 0 dt 0;0 0 0 1 0 dt;0 0 0 0 1 0;0 0 0 0 0 1];Q = diag([0.1^2, 0.1^2, 0.05^2, 0.05^2, 0.02^2, 0.02^2]);
end
5.2 Sin模型观测函数
function z = sin_observation(x)theta = x(1);omega = x(2);alpha = x(3);z = [sin(theta) + 0.1*randn;  % 角度观测omega + 0.05*randn;      % 角速度观测alpha + 0.03*randn];     % 角加速度观测
end

参考代码 卡尔曼滤波,分别用UKF、EKF用于非线性飞行器系统 www.youwenfan.com/contentcni/65844.html

6. 复杂场景扩展

6.1 多模型融合
% 交互多模型(IMM)框架
models = {@CA_EKF, @Jerk_UKF};  % 模型集合
weights = [0.7, 0.3];          % 初始权重
for k = 1:Nfor i = 1:length(models)[x_est(:,i), P_est(:,:,i)] = models{i}(x_est(:,i), P_est(:,:,i));endweights = update_weights(weights, x_est);  % 基于似然更新权重
end
final_estimate = weights * x_est;
6.2 抗欺骗攻击
% 异常观测检测
function is_outlier = detect_anomaly(z, z_pred, P)innovation = z - z_pred;S = H * P * H' + R;mahalanobis_dist = innovation' / S * innovation;is_outlier = mahalanobis_dist > 3*sqrt(diag(S));  % 3σ准则
end

7. 结论

  • EKF优势:计算效率高,适合CV/CA等弱非线性场景
  • UKF优势:精度高30%-50%,适合Jerk/Sin等强非线性场景
  • 工程建议:优先采用UKF处理机动目标,结合IMM框架提升多模型适应性

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/936743.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

go-基于 Prometheus 的全方位食用手册 - fox

Go 指标监控实战:基于 Prometheus 的全方位食用手册 在微服务和分布式系统中,“看不见”的问题往往是最致命的——内存泄漏、接口响应延迟飙升、错误率突增,这些问题如果没有及时发现,很容易引发线上故障。而 指标…

实验任务2 - pp

task-1 源代码#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 5 #define N1 80 #define N2 35 int main() {int cnt;int random_major, random_no; srand(time(NULL));// 以当…

插入公式总是有个框框

在word文档中,通过自定义样式,插入公式总是有一个虚线框 解决办法:样式中的【图文框】---【删除文本框】---【确定】---【确定】

picard标记DI/DS标签

picard标记DI/DS标签代码示例java -jar /mnt/zmds01/Product/bioinfo/gitlab/biobase/bin/picard.jar MarkDuplicates \ I="input.sort.bam" \ O="out_marked_dup.bam" \ M="out_dup_mertric…

2025年成都全日制辅导机构优选指南,全日制培训班/集训机构/集训班/全日制一对一培训/文化课集训机构,学习提升新选择

在当今这个知识快速更新、竞争日益激烈的时代,教育培训市场呈现出蓬勃发展的态势,人们对自我提升的渴望愈发强烈。无论是职场人士为了增强自身竞争力,还是成年人追求知识的充实与拓展,都在积极探寻更高效的学习途径…

2025 年灭老鼠公司最新推荐排行榜:欧盟认证技术与环保服务双优品牌权威甄选,含成都 / 四川专业机构口碑指南除老鼠/消灭老鼠/老鼠消杀公司推荐

鼠患已成为城市家居、商业场所及农业生产的重大隐患:家庭中老鼠啃噬设施、传播鼠疫等 30 余种疾病,商业场所因鼠患面临卫生合规风险,农业领域鼠害年均造成超百亿产量损失。然而当前市场乱象丛生:部分机构依赖高毒药…

uni-app x初探

一、概述 uni-app x,是下一代 uni-app,是一个跨平台应用开发引擎。 uni-app x 是一个庞大的工程,它包括uts语言、uvue渲染引擎、uni的组件和API、以及扩展机制。 uts是一门类ts的、跨平台的、新语言。 uts在Android…

第二次实验作业

1 #include<stdio.h>2 #include<stdlib.h>3 #include<time.h>4 5 #define N 56 #define N1 807 #define N2 358 9 int main(){ 10 int cnt; 11 int random_major, random_no; 12 13 …

深度SEO优化的方式有哪些,从技术层面来说

深度SEO优化涉及到一些技术层面的优化策略,以下是一些常见的方式: 1.网站结构优化:优化网站的结构,确保每个页面都可以被搜索引擎爬取和索引。使用合适的HTML标签和语义化的内容结构,使搜索引擎能够更好地理解页面…

2025 年南昌装修公司推荐南昌市宿然装饰工程有限公司,以专业与真诚雕琢理想空间南昌装修设计推荐指南!

在南昌,装修行业正处于蓬勃发展的阶段,市场上各类装修公司琳琅满目。消费者在选择时,往往期望找到一家既能提供创新设计,又能确保装修效果完美落地的公司。在这一背景下,南昌宿然设计机构以其独特的优势,在竞争激…

C# Avalonia 16- Animation- AnimateRadialGradient

C# Avalonia 16- Animation- AnimateRadialGradient用我们自己写的Player C# Avalonia 15- Animation- AnimationPlayerTest AnimateRadialGradient.axaml代码<Window xmlns="https://github.com/avaloniaui&q…

ControlNet——AI图像生成的“精准操控工具”

本文详细介绍了Stable Diffusion最强大的插件ControlNet的原理及典型应用,并介绍其安装及相关模型下载注意事项,最后还结合实例介绍了主要模型的使用方法。1 简介及安装 1.1 简介 ControlNet是由斯坦福大学研究者张吕…

2025 年国内模切加工源头厂家最新推荐排行榜:聚焦 0.1mm 精度与高产能标杆,为下游企业精选优质合作商电子辅料/硅胶/薄膜/胶黏/绝缘模切加工厂家推荐

当前模切加工行业在制造业产业链中地位关键,却面临厂家水平参差不齐的问题。部分厂家精度不足、废料率高、服务不稳定,难以满足下游汽车、医疗、电子等领域日益严苛的需求,让企业选合作商时倍感困扰。为帮助下游企业…

直播协议详解 RTMP、HLS、HTTP-FLV、WebRTC、RTSP 的区别

直播协议详解 RTMP、HLS、HTTP-FLV、WebRTC、RTSP 的区别直播协议详解 RTMP、HLS、HTTP-FLV、WebRTC、RTSP 的区别 本期我们详细讨论直播的相关协议,包括:HTTP-FLV、HLS、RTMP、Web-RTC、RTSP等等。 我们将会详细介绍…

2025 武汉实缴服务机构最新推荐排行榜:知识产权 / 注册资本代办优选清单,深度解析专业服务品质

新修订《公司法》明确要求企业注册资本五年内完成实缴,非货币出资合法化成为趋势,这既为企业发展划定合规红线,也让无形资产转化迎来机遇。武汉作为科创重镇,科技型企业密集,对知识产权实缴、政策适配等专业服务需…

华为开发者空间携手乐知行:轻松实现智能网联小车数据可视化系

本文分享自华为云社区《华为开发者空间携手乐知行:轻松实现智能网联小车数据可视化系》,作者:华为开发者空间小助手。 在AI重塑课堂、算力驱动教学创新的今天,让前沿技术从“概念”落地为“可感知的教学工具”,让…

card滑动效果

<template><view class="member-benefits"><!-- 卡片滑动容器 --><view class="card-slider" :style="{background: currentSliderGradient,transition: background 0.…

2025年成都一对一培训机构优选榜:成都一对一辅导/补习/培训/补习班/辅导机构推荐,成都美博教育脱颖而出

在当今快速发展的时代,人们对自我提升的渴望愈发强烈,教育培训市场也因此迎来了蓬勃发展的黄金时期。无论是想要提升职业技能以适应职场竞争,还是追求个人兴趣爱好的培养,又或是为了满足知识更新的需求,越来越多的…

打印机共享修复,打印机无法共享,打印机修复工具下载及安装教程

软件介绍 下面推荐多款打印机共享修复工具,其实基本都能修复打印机问题,个别软件就是指定修复。能够自动诊断并修复多种常见问题,如无法安装打印机、无法连接到打印机、打印后台处理程序服务遇到问题等。只需下载并…

web中静态资源加载失败的降级处理

在Web应用中,静态资源加载失败的降级处理可通过以下方案实现:备用资源:提供备用的静态资源,当主资源加载失败时,加载备用资源。 默认样式:为关键元素提供默认样式,确保即使某些CSS文件加载失败,页面仍能基本显…