推荐关于PX4 ECL EKF方程推导的两篇“宝藏“文章
文章目录
- 一、PX4 的 ECL EKF 公式推导及代码解析 by 赵祯卿
- 二、PX4 的 ECL EKF2 方程推导 by shuyong.chen
PX4的ECL EKF开源代码已经比较广泛地应用到很多无人机飞控项目中。该开源项目可以融合多种传感器数据,包括IMU、磁力计、气压高度计、GPS、测距仪、空速、光流、外部视觉传感器等。
由于PX4 EKF采用了四元数作为状态量,因此许多量测的雅可比矩阵其实还是比较难推导的。PX4前期采用了matlab,后面采用了python来进行雅可比矩阵的推导以及代码自动生成。如果直接看代码,其实理解起来还是比较困难的。
目前我看到的,有两位博主对PX4 EKF的算法进行了比较系统且详细的推导,并且无私地将文档分享了出来,非常感谢他们的无私分享,让我觉得获益匪浅。这篇文章主要是介绍这两篇文章的主要内容。
一、PX4 的 ECL EKF 公式推导及代码解析 by 赵祯卿
作者在知乎和CSDN博客都发表了该文章,根据文章内容和github上的代码来看,作者应该主要是根据PX4的matlab代码来进行相关的推导。matlab代码中融合的传感器实际比C++代码中少一些。如果是想用PX4 matlab先做做仿真研究的,非常推荐阅读赵同学的文档。
文档总共18页,如下图封面所示,文章中推导了EKF的状态方程、以及GPS,气压高度计、磁力计、光流、ZED相机相关的量测方程等。我比较仔细地阅读了全文,暂时没有发现任何错处。
文章链接:
知乎:PX4 的 ECL EKF 公式推导及代码解析
CSDN:PX4 的 ECL EKF 公式推导及代码解析
作者联系方式:
e-mail: ericzzj@163.com
github: https://github.com/ericzzj1989/matlab_px4_msf
二、PX4 的 ECL EKF2 方程推导 by shuyong.chen
从内容来看,作者应该主要是根据C++代码来整理的相关推导,因此会比赵同学的推导多出一些传感器。如果是用PX4做工程实践的,比较推荐阅读这篇文档。
文档总共67页,作者在推导时也参考了上述赵同学的文档,因此文档比较详尽。从下面的封面可以看到,文章中包括IMU、磁力计、气压高度计、GPS、测距仪、空速、合成侧滑、风场、光流、外部视觉的融合处理,以及地形高差估计、偏航对准以及输出互补滤波等。文档详细整理了每一个传感器的融合,并且还包含一些作者对一些处理的理解,比如为什么将水平和高度方向的位置分开融合,为什么将所有观测拆分成一维一维地处理。
文章链接:
知乎:PX4 的 ECL EKF2 方程推导
作者github:
https://github.com/shuyong/
最后,我想再次感谢两位作者,文中的推导,绝对不是一朝一夕就能完成的。我之前也推导过部分公式,本来有过将其全部推导一遍的想法,不过看到他们的内容,我觉得我就不要再班门弄斧、画蛇添足了。
两位作者能够公开知识供大家学习,是非常可贵的。如果他们的文档让你很有收获,我觉得也可以去向作者留言表示感谢。知识其实是很宝贵的,需要花大量的时间和精力去整理。如果没有正向的交流和反馈,可能就很难看到越来越多的公开的知识。
推荐关于PX4 ECL EKF方程推导的两篇“宝藏“文章相关推荐
- 水深平均的二维浅水方程推导
浅水方程推导 将三维的基本方程沿水深积分平均,即可得到沿水深平均的平面二维流动基本方程. 定义水深为,.为基准面下液面水位和河床高程: 定义沿水深平均流速为: 引用莱布尼兹公式 自由表面及底部运动学条 ...
- 罗德里格斯(Rodrigues)旋转方程推导
罗德里格斯旋转方程是从角度和向量计算出相应的旋转矩阵,这个旋转方程在很多方面有重要的应用,这里简要概述一下方程的推导过程. 主要参考资料是维基百科,其实基本上就是翻译一下,自己走一遍这个推导过程,这里 ...
- 手眼标定eye-in-hand(一)AX=XB方程推导
1. 前言 本文主要介绍eye-in-hand的手眼标定,引用OpenCV的文档原话和原图1:"The following picture describes the Hand-Eye ca ...
- 守恒型N.S.方程推导
简介 梳理了以下NS方程推导的整个过程,包括流体本构方程的推导,最后面还介绍了NS方程常用的简化形式,并且用介绍了张量计算并推导了NS方程简化形式的由来. 这些手稿可以帮助大家理解流体力学中最基本的N ...
- Bulter-Volmer 方程推导 Tafel斜率
Bulter-Volmer 方程: i=ic−ia=FAk0[cO(0,t)exp−βF(E−E0′)RT−cR(0,t)exp(1−β)F(E−E0′)RT](1) (1) i = i c − i ...
- 正常情况及匝间短路情况下,三相PMSM电机电压方程推导及对电感的理解
匝间短路下(interturn short)的电压方程 最近在学习故障检测的知识(fault detection),fault detection可以分为三类方法:based on model/sig ...
- DFIG控制10-b: 双馈发电机的转矩方程推导
DFIG控制10-b 双馈发电机的转矩方程推导 接上DFIG控制10: 双馈发电机的动态模型_Fantasy237的博客,DFIG的转矩方程和推导. (字数限制,只能放在新的一篇博文里了..) 转矩方 ...
- 贝叶斯概率在目标跟中的应用及CK方程推导(20.9.27)
贝叶斯概率在目标跟中的应用及CK方程推导 一.贝叶斯定理 1.两个事件的情况讨论 贝叶斯定理是目标跟踪的基本原理,对于两个相关的事件x和y.x通常代表被考察目标的状态.y通常表示传感器的输出(也是x的 ...
- 9月推荐 | 从近1000篇Python文章中精选Top10
作者 | MyBridge 译者 |王天宇 编辑 | Jane 出品 | AI科技大本营 [导读]我们从过去一个月近 1000 篇有关 Python 的文章中,精心挑选出了最热门的 10 篇(前 1% ...
最新文章
- 网易严选 x 网易有数:数据产品+数据中台双引擎模式实践
- Bitcoin Core P2P网络层
- html ie浏览器视频无法播放视频,HTML5视频以Chrome格式播放,但不播放IE9
- linux mktime函数会受当前环境变量设置的时区影响
- java反序列化 构造函数_FastJson反序列化和构造函数之间的一点小秘密
- SAP Spartacus 服务器端 nodejs 应用里渲染 Angular Component 的一个例子
- LeetCode 1773. 统计匹配检索规则的物品数量
- 学习笔记25_MVC前台API
- Oracle里面的用户user无法登录 LOCKED(TIMED)
- 计算文件大小与文件行数
- ip地址与整数的相互转化
- 20190908每日一句
- 一天搞懂深度学习--深度学习简介
- RTE 2020第二批嘉宾公布 教育+社交+IoT行业大咖参会
- 英文打字训练程序c语言,x86汇编实现英文打字练习软件
- 西门子PLC丨虚拟机运行仿真器供物理主机使用
- 保罗.沃尔克:世界经济“有控制地解体”
- 500台机以上大型网吧设计方案(转)
- 网络流建图方法(二)——辅助点(虚点)决策法洛谷 P1361 小M 的作物 Dinic
- 京东首页html+css1.0