融合磁力计的Mahony互补滤波算法_地磁计 融合滤波-程序员宅基地

技术标签: 互补滤波  姿态解算  Mahony  无人机随笔  

https://blog.csdn.net/qq_21842557/article/details/50993809

上面博客有关于磁力计的详细解释,不过由于本人资质愚钝,至今还不是完全理解,不过思想大致和加速度计差不多。
结合下面代码看效果更好

大致意思如下

  1. 加速度计 已知地理坐标系的标准重力加速度 [0 0 1],然后变换到机体坐标系,理论与实际叉乘求出误差
  2. 磁力计 由于标准重力加速度在所有地方都是一样的,可以由其直接从地理坐标系变换到机体坐标系,但是在地理坐标系中,地磁大小却不是相同的,需要根据实际情况测出来,因此磁力计的来源则必然是实际测量,结合代码,首先进行机体坐标系变换到地理坐标系,相当于求出理论地磁(至于怎么求出的原谅我愚钝,看了几遍没看懂),然后变换到机体坐标系中,和重力加速度类似,利用理论和实际测量叉乘求出误差
  3. 将误差累加,利用PI补偿至陀螺仪,求解四元数,变换成欧拉角。
// 加速度计、地磁计、陀螺仪数据融合,更新四元数
/*
   [gx,gy,gz]为陀螺仪的测量值
   [ax,at,az]为加速度的测量值
   [mx,my,mz]为地磁计的测量值 
*/
void AHRSupdate(float gx, float gy, float gz, float ax, float ay, float az, float mx, float my, float mz) 
{  
            float norm;               
            float hx, hy, hz, bx, bz;
         
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhiyu_buliang/article/details/89056519

智能推荐

【python练习题】利用生成器实现对文件输入的监听及过滤-程序员宅基地

文章浏览阅读147次。练习题:当文件保存时,对当前保存的内容进行抓取,比如函数运行时,先对所有的内容进行读取,文件写入新的内容,保存的同时,抓取新的内容,实现实时的监控!升级版:可仅对对敏感词进行抓取,比如字段中含有python,则进行抓取,否则不抓取思路:1.定义一个生成器函数,先读取文件内容2.如果读取的内容不为空,yield 当前值3.输入内容def tail(file): with ope...

ue4账号注册不了_【UE4实现登录注册功能】-开发者专栏-【游戏蛮牛】-游戏出海,ar增强现实,虚拟现实,unity3d,unity3d教程下载首选u3d,unity3d社区 - Powered ...-程序员宅基地

文章浏览阅读1.3k次。马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。您需要 登录 才可以下载或查看,没有帐号?注册帐号x本节主要讲解游戏的起始页,登录页,注册页的实现。主要讲解的知识点是C++如何使用UMG做界面开发和UE4如何实现HTTP通讯及JSON的序列化和反序列化。视频教程链接可到蛮牛教育观看,详情链接点击:无尽之刃·文明1、起始页开发1、创建蓝图版UserWidget首先创建好UI目录,把UI素材导..._uimgrinstance->limitdataui->setvisibility(eslatevisibility::hidden);

【SQLI-Lab】-Less8-程序员宅基地

文章浏览阅读323次。Less-8 GET - Blind - Boolian Based - Single Quotes (布尔型单引号GET盲注)前言一、GET字符型注入二、步骤总结前言一、GET字符型注入执行数据库查询,并在回显点展示。用户可以看到数据库查询出错时的错误语句,就可以观察报错语句分析出查询语句结构,从而构造特殊的payload进行注入,并从回显点中获取想要的信息。二、步骤和第7题思路过程一样,不过不需要写入、闭合字段后,开始用burp suite爆,具体过程不再细讲。盲注爆库长度payload

【解决】python连接mysql数据库过段时间就会断开pymysql.err.OperationalError_pymysql连接数据库一段时间失效-程序员宅基地

文章浏览阅读1.2w次,点赞11次,收藏23次。问题:1.python中的数据库连接没有长连接的概念,之前我就踩过这个坑:用最基础的连接方法连接mysql数据库,然后往数据库插入数据,过一会儿就报错了(错误的代码我忘了,后面有遇到场景再重现一下),大概的意思是数据库连接已断开。2.python基础连接方式进行数据库连接及增删改查操作,每次连接mysql请求时,都是独立的去请求访问,比较浪费资源,而且访问数量达到一定数量时,对mysql的性能会产生较大的影响。解决办法:问题1中如果不在意数据库性能的话最简单的就是简单预处理一下:try: _pymysql连接数据库一段时间失效

什么是CPLD-程序员宅基地

文章浏览阅读1.5k次。什么是CPLDCPLD(Complex Programmable Logic Device)是Complex PLD的简称,一种较PLD为复杂的逻辑元件。CPLD是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。发展历史及应_cpld

经济型EtherCAT运动控制器(一):功能简介与应用场景_运动控制器可以用在哪些领域-程序员宅基地

文章浏览阅读3.7k次。正运动技术专注于运动控制技术研究和通用运动控制软硬件产品的研发,是国家级高新技术企业。正运动技术汇集了来自华为、中兴等公司的优秀人才,在坚持自主创新的同时,积极联合各大高校协同运动控制基础技术的研究,是国内工控领域发展最快的企业之一,也是国内少有、完整掌握运动控制核心技术和实时工控软件平台技术的企业。主要业务有:运动控制卡_运动控制器_EtherCAT运动控制卡_EtherCAT控制器_运动控制系统_视觉控制器__运动控制PLC_运动控制_机器人控制器_视觉定位等等。_运动控制器可以用在哪些领域

随便推点

Android主题与Toolbar样式之间的关系_android palette 调色板,动态改变 toolbar 颜色-程序员宅基地

文章浏览阅读668次。Android主题与Toolbar样式之间的关系标签: android2016-07-02 15:07 3161人阅读 评论(11) 收藏 举报 分类:Android(17) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]更新本项目相关源码地址:http://git.osc_android palette 调色板,动态改变 toolbar 颜色

Mac使用homebrew下载的nginx修改了配置文件,无法在浏览器内访问或修改配置文件端口等不生效_mac 配置了 nginx 没有生效-程序员宅基地

文章浏览阅读1.6k次。使用homeBrew下载了nginx,修改端口号却无法访问1. 安装(可以用 brew 安装)sudo brew install nginx2. 查看 nginx 版本nginx -v3. 启动 nginxsudo nginx也可以使用下面的命令启动,但是配置文件nginx.conf修改后用这个命令执行不生效,故不建议使用:sudo brew services start nginx4. 查看 nginx 是否启动成功在浏览器中访问 ,如果出现如下界面,则说明启动成功.5. 关闭._mac 配置了 nginx 没有生效

QTimer,QTime的一点应用 _qtimer 未释放-程序员宅基地

文章浏览阅读3.5k次。<!-- document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() {

Java 读取 properties 配置文件的几种方式及注意点_config.properties (no such file or directory)-程序员宅基地

文章浏览阅读3.7k次,点赞2次,收藏5次。1、引言java开发中,经常需要读取配置文件,有时即使我们方法是对的,但是就是读取不到需要的内容,会报下面的错:java.io.FileNotFoundException: sr/configure/config.properties (No such file or directory) at java.io.FileInputStream.open0(Native Method) at..._config.properties (no such file or directory)

存储(二):OSS2模拟低配百度网盘存储(优化存储)-程序员宅基地

文章浏览阅读5.3k次。在存储(一)中,已经可以把图片存储到阿里云产品的oss存储服务器上边了。问题:如果真是像存储(一)中所实现的功能:用户来一个图片、文件、视频或者其他的待存储对象,我就要给他存储到oss服务上边,这样存储空间的占用速度非常快,在大数据的时代下根本就无法满足需求,如果采用扩容,你无论阔多大,以这样的用户存储速度都不够用,而且存储服务器的高额存储费用可不是开玩笑的。分析:如果我们认真观察网上的数据,其实很大一部分数据都是重复的,比如QQ空间微信朋友圈等等,有没有发现好友有时候发的图片可能是之前用过的,即重

LINUX/MAC的rpath,搜索依赖库时从哪里开始_mac rpath-程序员宅基地

文章浏览阅读1k次。  最近一段时间,因为加载调用各种本地库,在LINUX/MAC上专门研究了rpath问题。最初是想使用全路径方式,这样也能正确执行,有两个缺点:路径太长,不好维护。 安装路径如果变化,就错了。  改进办法是什么?就是使用相对路径,这样搜索加载时基于安装目录下的相对路径,就避免了上述问题。那么相对路径是相对于谁?开始以为,位于同一个目录下的库文件,rpath使用.(当前目录)。结果报错说找不到。后来经过实验,结论是:  rpath搜索相对路径时,是从当前执行文件开始。  举例来说:安装目录是A_mac rpath

推荐文章

热门文章

相关标签