在只有三轴加速度计的场合下(MARG初始校准的时候,需要先通过加速度计得到水平倾角,才能继续对磁力计数据进行处理)如何求得三轴角度,搜索互联网一般是这以下这两种算法:

  左图算法是:

  右图算法是:atan2(Ax,Az)也就是arctan(Ax/Az)。编程时还是推荐使用atan2。

  图片来自:http://www.geek-workshop.com/thread-2328-1-1.html

  左图方法中的角度是重力矢量g与3个正交轴的夹角,并不是本体坐标系与地面坐标系的三个欧拉角!!

  拿俯仰角举例,俯仰角是本体坐标系的Oxb与水平面之间的夹角(前提是欧拉旋转顺序是ZYX,即航偏,俯仰,滚动,这里并不关心航偏,即使有航偏也认为航偏过后的新的坐标系是参考的地面坐标系,只有俯仰和滚动),矢量g先从指向z轴正方向,通过俯仰角、滚动角达到上右图矢量R位置,俯仰角是Axz,滚动角是Ayz。实际用个坐标系演示一下,就会发现俯仰角的大小就是Axz。

  建立我建模常用的坐标系,也就是坐标系的y轴与上图一致,xz均方向相反,可得到Roll = atan2f(-ay, -az);Pitch = atan2f(ax, -az);

静态条件下三轴加速度求角度的算法相关推荐

  1. 基于三轴加速度传感器的计步算法

    基于三轴加速度传感器计步算法 By Sky.J 2018.08.08 概述 今天主要是想要分享利用三轴加速度传感器计步的一个算法步骤. 数据分析--->模型 这里拿到的是ADI公司的测试数据,可 ...

  2. 利用三轴加速度求解位移的算法—来自飞思卡尔方案

    在要求精度不高的情况,可以使用三轴加速度积分得到位移,飞思卡尔给出了官方方法,下文来自翻译说明 cache.freescale.com/files/senso- 摘要 此文档描述并使用MMA7260Q ...

  3. 三轴加速度计测量值生成算法matlab,[算法][三轴、六轴、九轴传感器算法分析] 1、分享一个三轴加速计matlab动态可视化脚本...

    一.有啥用 这里用的是LIS3DH三轴加速计,输出为X.Y.Z轴的加速度,通过串口连接电脑,电脑里运行matlab脚本通过串口实时获取数据并做可视化显示. 这里虽然是针对LIS3DH的,其实稍作修改即 ...

  4. ST公司 Lis2dh12 三轴加速度传感器,计算加速度值转成角度值

    目录 概述 项目上使用了一款Lis2dh12三轴加速度传感器.开发前要准备的工作. 1.原理图: 1.1.创建lis2dh12.c文件 1.2.在此重点说明,如果想调传感器的中断灵敏度,注意:关注1. ...

  5. shineblink ADXL345传感器测量三轴加速度/倾斜角

    ADXL345传感器测量三轴加速度/倾斜角 一.本例程实现功能 二.基本概念 三. 传感器参数配置描述 四.接线图 六.完整代码 七.代码运行结果 八.测量倾斜角 九.ADXL345传感器的低功耗休眠 ...

  6. Python实现三轴加速度计步功能

    目录 1.相关数据展示 2.数据滤波处理及展示 3.计步功能实现 1.相关数据展示 数据为开源数据,遵守开源数据库协议(Open Database License (ODbL)),数据格式为csv文件 ...

  7. STC8H开发(六): SPI驱动ADXL345三轴加速度检测模块

    目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...

  8. 卡尔曼滤波处理三轴加速度数据(MATLAB)

    根据实际需要以及传感器数据列写状态方程,确定观测数据和相关误差. 附加一部分六轴传感器数据的处理技术总结,有问题欢迎指出. 文章目录 一.卡尔曼滤波的原理 二.使用MATLAB验证滤波算法 三.结果验 ...

  9. HarmonyOS系统中内核实现三轴加速度检测方法

         大家好,今天主要和大家聊一聊,如何使用鸿蒙系统读取三轴加速度的方法. 目录 第一:三轴加速速基本原理 第二:E53_SC2中API分析 第三:硬件设计 第四:软件设计 第五:编译调试 第六: ...

  10. 溢出检测单符号位法_设计经验:如何用三轴加速度传感器检测倾斜角?

    本文介绍了三轴加速度传感器的特性,并通过一个典型的应用--检测倾斜角--对单轴.双轴和三轴加速度传感器进行了比较,并给出了选型建议. 在前两篇文章中,我们介绍了单/双轴加速度传感器在来检测倾斜角上的应 ...

最新文章

  1. Oracle update 多表关联更新
  2. 学习正点原子讲解FreeRTOS中断管理心得和cortex-M3权威指南笔记
  3. C++创建一个特殊的类
  4. 关于halcon多区域挑选有关算法的自我理解(tuple_sort_index)
  5. 网络编程t-io介绍
  6. Javascript执行效率总结
  7. 概率图模型(PGM)学习笔记(三)模式推断与概率图流
  8. SwiftyJSON的使用详解
  9. mac 思科 链路聚合_思科交换机配置链路聚合的方法
  10. uniapp 运行到手机或模拟器
  11. 刘江川院士:边缘计算如何应对能源互联网的碎片化和复杂性? | CCF-GAIR 2020
  12. 百度研发工程师编程题——买帽子
  13. java代码为word中添加水印图片。
  14. java后端必会【基础知识点】
  15. ENVI:如何进行遥感图像的分类?(决策树模型)
  16. 酷友观点/经验:iphone 5\6\6p各尺寸参照图(原创)
  17. 小白终是踏上了这条不归路----小文的mysql学习笔记(8)----分页查询
  18. 记一次windows 2008 R2 SP1中永恒之蓝病毒的处理过程
  19. html锚点定位(锚点链接:name还是id,一文搞定)
  20. 从sockaddr_ipx到AF_IPX协议分析(二)

热门文章

  1. 飞思卡尔mc9s08烧录方法_飞思卡尔8位单片机MC9S08教程
  2. python 键盘输入负数_python输入负数
  3. python学习14:字典和集合
  4. 【深度学习】眼底图像之视盘和黄斑分割的探索
  5. R语言和医学统计学(11):球形检验
  6. 常见文件存储系统的解决方案
  7. java rs 什么意思_rs是什么意思?
  8. 论文必备:深度学习中的网络结构是怎么画的
  9. 如何打造超大规模的智慧交通仿真环境?核心精华都在这里 | 51TECH
  10. 存:科幻推荐书单---超经典科幻必读