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

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

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

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. 图像处理与颜色编码4. 高效处理布尔标志集合

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Java中字符串转时间与时间转字符串的操作详解

《Java中字符串转时间与时间转字符串的操作详解》Java的java.time包提供了强大的日期和时间处理功能,通过DateTimeFormatter可以轻松地在日期时间对象和字符串之间进行转换,下面... 目录一、字符串转时间(一)使用预定义格式(二)自定义格式二、时间转字符串(一)使用预定义格式(二)自

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用

浅析Java中如何优雅地处理null值

《浅析Java中如何优雅地处理null值》这篇文章主要为大家详细介绍了如何结合Lambda表达式和Optional,让Java更优雅地处理null值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录场景 1:不为 null 则执行场景 2:不为 null 则返回,为 null 则返回特定值或抛出异常场景

Python中局部变量和全局变量举例详解

《Python中局部变量和全局变量举例详解》:本文主要介绍如何通过一个简单的Python代码示例来解释命名空间和作用域的概念,它详细说明了内置名称、全局名称、局部名称以及它们之间的查找顺序,文中通... 目录引入例子拆解源码运行结果如下图代码解析 python3命名空间和作用域命名空间命名空间查找顺序命名空

openCV中KNN算法的实现

《openCV中KNN算法的实现》KNN算法是一种简单且常用的分类算法,本文主要介绍了openCV中KNN算法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录KNN算法流程使用OpenCV实现KNNOpenCV 是一个开源的跨平台计算机视觉库,它提供了各

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

《Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码》:本文主要介绍Java中日期时间转换的多种方法,包括将Date转换为LocalD... 目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTim

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印