目录

  • 前言
  • 一、IIC驱动
  • 二、MPU6050的摆放
  • 三、MPU6050初始化
  • 四、MPU6050偏航角(yaw)零飘
  • 五、MPU6050万向节锁
  • 结语

前言

本文主要针对STM32使用MPU6050过程中产生的问题进行分析和处理,部分内容也适用于其他单片机。本文基于MPU6050自带的DMP算法。文章内容对于MPU6050调试过程有一定的帮助。


以下是本篇文章正文内容

一、IIC驱动

STM32的硬件IIC是存在一定问题的,初始化MPU6050时可能导致初始化失败,所以推荐使用软件IIC。

二、MPU6050的摆放

默认情况下相对于载体坐标系而言,绕x轴旋转为横滚(roll),绕y轴旋转是俯仰角(pitch),绕z轴旋转是偏航(yaw)。注意是绕。

如果把MPU6050看成一架飞机,摆动机翼是横滚角,上下摆动机头是俯仰角,左右摆动机头是偏航角。

下图摆放方式是错误的

下图的摆放方式才是正确的,如上文描述可知。

注意图2.2(上方第二张图),是指默认情况下。在官方的DMP驱动中有这样一段代码

static signed char gyro_orientation[9] = { 1, 0, 0,0, 1, 0,0, 0, 1};

这个是MPU6050的坐标矩阵,可根据实际摆放的位置修改此矩阵。如果不修改这个矩阵,需要按照图2.2摆放,不然数值肯定是错误的。

三、MPU6050初始化

MPU6050初始化有可能会卡死。可参考正点原子的例程,实测没什么问题。
MPU6050 DMP 是带有自检功能的

     run_self_test();

run_self_test 这个函数用于自检,MPU6050会以初始状态作为欧拉角的0度,不管有没有放平MPU6050都会以初始状态作为欧拉角的0度,初始化之后MPU6050会稍微校准一下,那么前几秒的数据是可以适当舍弃的。
虽然MPU6050会稍微校准,但是初始化时一定要放平。如果不放平大概率报错。当然也有可能成功,但是MPU6050校准的数据会有偏差。

四、MPU6050偏航角(yaw)零飘

MPU6050的偏航角是不正常的,即使静止不动也会跳动。这个纯粹是硬件问题,就算算法怎么牛逼也解决不了。只能外加磁力计解决,也可以直接使用MPU9250,这个是自带磁力计的。使用时注意不要和电机靠太近,磁场很容易受到干扰。

五、MPU6050万向节锁

默认Z-Y-X顺序下,不知道大家有没有发现这个问题。当MPU6050只转动俯仰角,俯仰角接近90度或者等于90度时,偏航角的角度会发生很大的偏差。那么这个就是万向节锁,此时如果比作一架飞机,当飞机垂直90度向上时,按照Z-Y-X顺序无论怎么改变方向飞机都只能向上飞。
所以不要让俯仰角垂直,这样可以减少bug。


结语

那么以上就是本篇文章的所有内容了。
本文如果有不对或者需要改进的地方欢迎指出。

MPU6050常见问题的分析与处理相关推荐

  1. 3蛋白wb_WB常见问题原因分析及解决办法

    蛋白免疫印迹(WB):基于抗原抗体的特异性结合作用,以检测复杂样品中的某种蛋白,并对其进行半定量分析的一种方法. 主要用于靶标蛋白特异性表达的定性或半定量分析,蛋白与蛋白或蛋白与DNA相互作用的后续分 ...

  2. 报名软件批次分类code不能为空_批次管理中批次确定常见问题的分析方法

    批次管理中批次确定常见问题的分析方法 处理多年批次管理 (Batch management) 的相关问题,对批次管理中批次确定 (Batch determination) 这一小部分功能略有心得,所以 ...

  3. 鼎信系列语音网关常见问题案例分析

    鼎信系列语音网关常见问题案例分析 问题概览 来电号码不显示 呼入不进来(无线网关) 单通,UD两侧声音都有,用户侧听不到坐席测 通话中断 注册失败 单通,UD收不到用户侧声音(无线网关) 呼入提示请拨 ...

  4. 1. HbuliderX-移动端APP开发-前端开发ajax请求失败或错误-常见问题-原因分析-处理

    文章目录 一. 常见问题原因分析处理 1. 请求地址URL不对 2. 防火墙拦截 3. 网络环境不匹配 4. 服务器端口问题 一. 常见问题原因分析处理 1. 请求地址URL不对 检查 [IP+端口+ ...

  5. 笔记-常见考点-常见问题原因分析

    ▲▲▲ 感觉是要背诵全文 通用问题考虑角度 没有相关的管理流程或方针: 没有进行良好的策划: 资源不足(人.资金.设备和工具): 缺少培训,不具备相关的知识和技能要求: 项目干系人识别不充分,干系人没 ...

  6. MPU6050开发 -- 测试程序分析

    如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78623928 上一篇文章再 C52 单片机上进行了测试,那么接下来我们就分析 ...

  7. (GPS移植三部曲)Linux下移植GPS应用程序之常见问题的分析与解决方法之三

    GPS应用程序移植常见问题分析与解决 ID Issue Description Analyse Causation Solution 1 导航系统一运行,就退出 使用ps命令,发现进程中cld_nav ...

  8. 银行面试十问——常见问题面试分析!

    面试中经常会问到这些烂大街问题,他们有什么理由能答得如此精彩呢?根据如信银行考试中心发布: 一.你来自哪里? 问题分析:面试官问考生老家,一是因为人们与生俱来的好奇,二是想营造一种轻松愉快的氛围. 回 ...

  9. photoshop 常见问题与分析

    常见问题: 1.当PS中出现占存盘已满? 可在编辑--预置--增效工具与占存盘 中设置即可. 2.出现没有足够的RAM? 可在编辑--预置--内存与图像高速缓存 中调整PS占用的最大数量调到100%状 ...

最新文章

  1. 收藏:JavaScript
  2. MySQL Sharding DB (基于Fabric)
  3. C#LeetCode刷题之#874-模拟行走机器人​​​​​​​(Walking Robot Simulation)
  4. netstat mysql_mysql-netstat
  5. 10-20C#基础---一维、二维数组冒泡排序
  6. 自然场景下文本检测主要数据集
  7. 强连通分量(tarjan求强连通分量)
  8. Java web 第一天
  9. 【Matlab学习笔记】【函数学习】max()和max(max())的区别
  10. 深入浅出4G标准 LTE FDD和LTE TDD
  11. 关于复数i本质的探讨
  12. 8.《创业邦》:十大创业困境
  13. C/C++ - enum 与 int 相互转换
  14. 计算机的剪切快捷键是什么意思,word中剪切的快捷键是什么 -电脑资料
  15. 解决谷歌浏览器的 DNS_PROBE_FINISHED_NXDOMAIN
  16. funcode小游戏暑假大作业,开源,新颖,游戏名:凿空,免费。
  17. SSH命令行使用方法
  18. 迅雷高速下载免安装 Kali Linux
  19. Django使用图片验证码加邮箱或手机号登录
  20. 【小程序动画合集】10种小程序动画效果实现方法,文章太长建议收藏!

热门文章

  1. 30个好用的ERP开源项目
  2. Android手机应用第三方模拟器使用、真机测试运行方法以及AVD 模拟器黑屏的解决尝试
  3. 简单的图片爬取,爬取豆瓣电影图片并保存到本地
  4. play mysql_play framework mysql
  5. jsp企业财务管理系统设计与实现(论文+PPT+源码
  6. PDF文件怎么修改,如何裁剪PDF中的一页
  7. excel表数据汇总怎么做?
  8. 陪孩子一起学python第二季第2集_跟我一起学python | 探究02
  9. JAVA中的常见Bug
  10. linux综合性实验,Linux综合实验模板(4页)-原创力文档