一类带观测传感器延时修正(时间同步)的融合算法举例浅析(节选至售后群问答回复)

本文主要是介绍一类带观测传感器延时修正(时间同步)的融合算法举例浅析(节选至售后群问答回复),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一类带观测传感器延时修正(时间同步)的融合算法举例浅析(节选至售后群问答回复)

2018年6月13日  无名小哥  交流群:540707961

可以设想一个场景,比如你工资是一个日结制,每天下午5点半下班,这个钱每天晚上6点钟会打到你这个银行卡上,但实际到账的话,是会到第二天晚上6点,你的工资卡归你老婆管,家庭日常开支、理财、利息等都来自此卡。

你每天下午7点都会对你的卡上总财富进行估计,因为归你老婆管,所以你本身是不知道的卡上余额,你只能通过问老婆才能知道卡上余额,因此你要求老婆每天下午6点半查下这个卡的余额并告诉你。

你的老婆查询到的卡上总额可以类比观测传感器,即GPS、气压计传感器得到的观测位置。家庭日常开支、理财、利息等可以看作观测传感器的噪声值。你知道自己这一天挣的大概值(假设为计件制、因为存在可能坏的工件,不计酬劳),日常酬劳会有一定波动。

下面来理一下你自己对卡上总财富估计的更新流程:

1、           所以你自己每天晚上7点的估计的真实财富=上次融合修正后的卡上总额+一天劳动挣的大概值。

2、           劳动挣的大概值=今天自己的计件数(可能存在坏的工件)*单价(计件完成的产品装箱会分不同批次,不同批次单价会随着市场行情存在波动)

3、           你今天的劳动成果可以当做系统的驱动量,比如原始惯导运动加速度得到的速度增量、位置增量

4、           你每天下午7点都会问下你老婆卡上余额然后修正你自己的心目中卡上的总财富估计值。

5、           本次修正后的卡上余额=上次修正后的卡上余额+修正系数*(今天老婆获取到的观测余额-上次修正后的卡上余额)

(这里的修正系数在互补滤波里面为固定系数,在卡尔曼滤波里面通过增益方程更新得到,线性卡尔曼滤波进入稳态时和固定权重的互补滤波等价)

注意一点,你老婆当下查到的卡上余额为你今天之前的所有财富+噪声(日常开支+利息+理财),即在你个人看来,只能反应昨天的财富。Delta_T表示滞后的时间,所以计算状态误差时,是将当前的观测量和Delta_T前的估计状态做差。

本文关键问题:为何不直接对当前的状态直接修正呢,因为无法获取到当前状态的最新观测量。即在本例中,你老婆并不知道明天下午6点半时卡上的余额

在本例中:观测传感器==老婆查的卡上余额

(带噪声、相对老公估计的财富状态滞后一天)

系统驱动量==当日老公的劳动所得的财富增量

(数据时实行好、想对观测量精度高,同样含有过程噪声,比如一个人可能会把自己完成的工件都按一等品价格单价计算(反之同理)、对市场很悲观估计,估计的单价相比实际偏低(反之同理))会使得估计每日财富增量错误估计)

这篇关于一类带观测传感器延时修正(时间同步)的融合算法举例浅析(节选至售后群问答回复)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1081198

相关文章

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Python WebSockets 库从基础到实战使用举例

《PythonWebSockets库从基础到实战使用举例》WebSocket是一种全双工、持久化的网络通信协议,适用于需要低延迟的应用,如实时聊天、股票行情推送、在线协作、多人游戏等,本文给大家介... 目录1. 引言2. 为什么使用 WebSocket?3. 安装 WebSockets 库4. 使用 We

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

MySQL中REPLACE函数与语句举例详解

《MySQL中REPLACE函数与语句举例详解》在MySQL中REPLACE函数是一个用于处理字符串的强大工具,它的主要功能是替换字符串中的某些子字符串,:本文主要介绍MySQL中REPLACE函... 目录一、REPLACE()函数语法:参数说明:功能说明:示例:二、REPLACE INTO语句语法:参数

Kotlin 枚举类使用举例

《Kotlin枚举类使用举例》枚举类(EnumClasses)是Kotlin中用于定义固定集合值的特殊类,它表示一组命名的常量,每个枚举常量都是该类的单例实例,接下来通过本文给大家介绍Kotl... 目录一、编程枚举类核心概念二、基础语法与特性1. 基本定义2. 带参数的枚举3. 实现接口4. 内置属性三、

Java List 使用举例(从入门到精通)

《JavaList使用举例(从入门到精通)》本文系统讲解JavaList,涵盖基础概念、核心特性、常用实现(如ArrayList、LinkedList)及性能对比,介绍创建、操作、遍历方法,结合实... 目录一、List 基础概念1.1 什么是 List?1.2 List 的核心特性1.3 List 家族成