MPU6050加速度转角度原理

最近一直在研究四轴飞行器的姿态解算,每次看完过一段时间就忘记了,所以把每个部分写成博客记录下来,方便自己查阅,也加深印象。这里只讨论加速度与角度的转换,陀螺仪与姿态融合这里不讨论。


加速度计顾名思义就是用来测量物体的加速度值,我们可以通过上面这个图片通俗的了解一下3轴加速度计,上图用一个盒子形状的立方体来做模型

如果这个盒子形状的立方体处于一个没有引力场的地方,球会保持在盒子中间,就像人在外太空处于一个漂浮的状态一样,那么在这样一种状态下,这个盒子形状的立方体六个壁面感受到的压力都是0,但是如果我们突然将立法体像左侧移动(我们加快加速,产生1g的值,1g = 9.8米/秒平方),这是灰球打在了X-壁面上,X+和X-这两个壁面就相当于三维坐标系中的X轴,此时灰球打在X-面上产生了-1g的压力值。如果反过来向右侧移动球打在X+壁面则产生+1g的压力值(图片如下)

那么如果我们把这个盒子放在地球上,那么灰球会落在Z-这个壁面上,并为它施加一个1g的加速度压力(因为地球的重力加速的规定为1g),这种情况下,我们不动这个盒子,但任然可以在Z-这个壁面上读到-1g加速度值,如下图

至此我们已经知道了单个轴上加速度输出的由来,下面我们来分析三轴的,三轴加速度计真正的价值是它可以同时检测到三个轴上的惯性力,看下面这个图片,我们将这个盒子翻滚45度,这时球会触及到两个壁面:Z-和X-

此时X和Z轴都受到了-0.71g的加速度压力,那么这个-0.71这个值是不是任意的呢?并不是,它们实际上是一个近似SQRT(1/2)。要知道当盒子只受重力场影响时,各个轴上的重力加速度平方和为1g,也就是
X平方 + Y平方+ Z平方 = 1g(勾股定理),为什么是SQRT(1/2),因为是翻滚了45°,此时只有X轴和Z轴收到了重力加速度的影响,而且是各占一半,所以是1/2。

看上面这个模型,这是一个新的模型代替了上面那个盒子立方体。试想一下,在新的模型中每个轴都是垂直于盒子壁面的。向量R是加速度计测量的力矢量。接受时,Rx,Ry,Rz,为R在X,Y,Z上的矢量投影他们的关系为:RX平方 + RY平方+ RZ平方 = R平方
可以验证:(-SQRT(1/2))^2 + 0 ^2 + (-SQRT(1/2)) ^2 = 1g
通过简单的迭代以 R = 1时,接收 Rx = SQRT(1/2)时,Ry = 0,Rz = SQRT(1/2)
经过以上的理论分析,值Rx,Ry,Rz,实际上是呈线性关系对应到真正的现实加速度计的X轴 Y轴 Z轴

在此提出一个问题,加速度计如何将这些信息告诉我们?
目前市面上的加速度计从输出上区分为两种,一种是数字的,另一种是模拟的. MINIAHRS使用的是MPU6050三轴加速度计,是12C接口的数字传感器.通过特定的命令可以配置加速度的量程,并将内部ADC的转换结果读出来现在,我们有我们的加速度计的读数,以LSB为单位的,它仍然不是g(9.8米/秒平方),需要最后的转换,我们要知道加速度计灵敏度,通常表示为LSB/g。比方说当我们选择2g的量程时,对应的灵敏度=16384LSB/G。为了得到最终的力值,单位为g,我们用下面的公式RX= ADCRX/灵敏度也就是说当x轴的计数为 ADCRX时,那么对应的加速度值就是( ADCRX/16384)g

回到加速度向量模型,将角度符合补上,如下图

方向余弦
我们感兴趣的是向量R和X、Y、Z轴之间的角度,将它们定义为 Axr Ayr Azr.可以看到由R和Rx组成的直角三角形:
COS(Axr)=RX/R依此类推:
COS(Ayr)=RY/R
COS (AZ)=RZ/R
可以得到R=SQRT(RX平方+RY平方+RZ平方)
我们发现当使用 arccos()反余弦:
Axr arccos (RX/R)
Ayr= arccos(RY/R)
Azr arccos(RZ/R)
已以通过很多公式解释加速度计模型。我们也会很快解释陀螺仪以及如何用加速度计和陀螺仪的数据进行整合,以得到更精确的角度估计。
在这之前我们先来看看更有用的公式
cosX = Cos(Axr) = Rx / R
cosY = Cos(Ayr) = Ry / R
CosZ = cos(Azr) = Rz / R
这三个公式通常被称为方向余弦。你可以轻松地验证:
SQRT(cosX平方 + cosY平方 + cosZ平方) = 1;
这个属性可以让我们在计算时不用担心R的模长的影响,很多时候我们只对惯性矢量的方向感兴趣,对矢量进行规范化对简化程序运算很有意义

重力向量
我们暂且从理论分析回到现实的传感器输出中,当水平放置MPU6050,只有Z轴感受到重力向量,它将输出1g。对应的ADC值就是16384(29的量程)。此时,R就是重力向量Rx=0. Ry=0. Rz = R
满足
R平方 = RX平方 +RY平方 + RZ平方 得到重力向量与各个轴的夹角
Axr arccos(RX/R)=90度
Ayr=arccos(RY/R)=90度
Azr= arccos(RZ/R)=0度

MPU6050加速度转角度原理相关推荐

  1. 用arduino uno的串口读取JY61角度传感器的角速度、加速度、角度数据MPU6050

    1 介绍 大家从标题中来看呢,大家可能会有些困惑,MPU6050只输出加速度.陀螺仪.没有角度.这个也是我今天想和大家说的.最近我做了一个倾角项目.老板基于成本考虑希望我能用MPU6050去算出来角度 ...

  2. 用STM32读取6轴角度传感器JY61的陀螺仪、加速度、角度数据MPU6050

    文章目录 1 介绍 2 开发准备 2.1硬件.软件准备 2.2 接线方式 3 程序讲解 3.1程序思路讲解 3.2 main函数 3.3 串口1初始化 3.4 串口2初始化 3.5 串口2中断服务函数 ...

  3. MPU6050加速度、角速度的解算以及互补滤波使用

    MPU6050加速度.角速度的解算以及互补滤波使用 MPU6050加速度的解算 MPU6050角速度的解算 互补滤波使用(数据融合) 数字低通滤波器 数字高通滤波器 MPU6050加速度的解算 先根据 ...

  4. c语言姿态解算程序,mpu6050姿态解算原理_mpu6050姿态解算程序

    描述 关于MPU6050姿态解算原理 mpu6050常用作提供飞控运行时的姿态测量和计算,在在姿态结算中有几个重要的概念,欧拉角.四元数等. 欧拉角:用来表征三维空间中运动物体绕着坐标轴旋转的情况.即 ...

  5. MPU6050加速度传感器学习笔记之实验《获取原始数据》

    硬件STM32-MPU6050 硬件IIC,MPU6050基本驱动程序,不包含DMP功能,没有移植官方驱动程序.本程序通过串口输出简单测量数据,没有驱动液晶显示.(不支持匿名上位机可视数据).(使用硬 ...

  6. 加速度传感器的原理和应用-手机翻转、失重检测、运动检测、位置识别

    本文介绍可穿戴设备加速度传感器-Lis3dh的特性原理和应用场景.意法半导体研发的Lis3dh广泛应用在智能手环.智能计步鞋等智能穿戴产品中. Lis3dh有两种工作方式,一种是其内置了多种算法来处理 ...

  7. STM32F103通过模拟IIC读取LIS3DH 解析数据获取加速度和角度

    STM32F03通过模拟IIC读取LIS3DH 解析数据获取加速度和角度. 串口1输出电脑串口助手,直接用即可,代码规范,好移植 STM32F03通过模拟IIC读取LIS3DH 解析数据获取加速度和角 ...

  8. 加速度传感器工作原理

    如下公众号链接,详细阐述电容式加速度传感器的工作原理. 加速度传感器工作原理 欢迎扫描下方公众号二维码,同步更新.

  9. AHRS姿态解算说明(加速度+陀螺仪+磁力计原理及原始数据分析)

    转载链接:http://www.51hei.com/bbs/dpj-92911-1.html AHRS俗称航姿参考系统,AHRS由加速度计,磁场计,陀螺仪构成,AHRS的真正参考来自于地球的重力场和地 ...

最新文章

  1. webstorm配置ESLint 一直
  2. Django的静态文件的配置
  3. 成功当选2014年度MVP
  4. 【Linux开发】linux设备驱动归纳总结(七):2.内核定时器
  5. 机器学习业务实践之路-李博-专题视频课程
  6. 【学习笔记】〖ASP.NET〗连接字符串的函数
  7. php写浏览记录,php如何浏览历史记录
  8. js text 和 html,JS DOM innerText和textContent的区别
  9. 拼多多联合三奇医卫等企业,每天上架1000万只平价口罩
  10. 直播APP源码开发,直播APP源码搭建,如何优化程序?
  11. 拓嘉启远:拼多多前期没有流量如何补充
  12. 趋势交易大师php,系统交易的初阶——趋势交易者路在何方?
  13. 一种特定场景去除高光算法
  14. 中国计量大学计算机专业全国名次多少,中国计量大学实力水平如何,全国排名是多少?...
  15. 《数据结构实践》设计报告---迷宫求解
  16. python要安装文本编辑器吗_python安装后推荐的安装两款文本编辑器
  17. 商品交易系统产品介绍
  18. 新手游戏创业如何推广游戏?
  19. 2017便利蜂前端一面
  20. 电脑重启bootmgr_bootmgr丢失如何解决

热门文章

  1. painter海报插件
  2. Python简易图片文字识别
  3. 2017计算机应用考研大纲,2017年计算机考研大纲
  4. 使用pytorch动手实现完整的GLU层
  5. Unity 编辑器批量修改Prefab
  6. 维峰电子深交所上市:市值64亿 李文化家族色彩浓厚
  7. 抖音直播带货真的那么赚钱吗?如何快速引流爆单?
  8. RAR Extractor - The Unarchiver Pro for mac(简单小巧的压缩软件)
  9. python读取docx文件出错_Python:读取 .doc、.docx 两种 Word 文件简述及“Word 未能引发事件”错误...
  10. 「职场套路」那些心照不宣的职场套路,工作多年还不知道?