14727浏览
查看: 14727|回复: 3

浅谈mpu-6050

[复制链接]
浅谈mpu-6050图2
最近接触了一款六轴传感器mpu6050,它集成了3 MEMS 陀螺仪,3 MEMS加速度计,以及一个可扩展的数字运动处理器DMPDigital Motion Processor)。
MPU-60X0对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250,±500,±1000,±2000°/秒(dps),加速度计可测范围为±2,±4,±8,±16g
一个片上1024字节的FIFO,有助于降低系统功耗。
和所有设备寄存器之间的通信采用400kHzI2C接口或1MHzSPI接口(SPIMPU-6000可用)。对于需要高速传输的应用,对寄存器的读取和中断可用20MHzSPI。另外,片上还内嵌了一个温度传感器和在工作环境下仅有±1%变动的振荡器。
芯片尺寸4×4×0.9mm,采用QFN封装(无引线方形封装),可承受最大10000g的冲击,并有可编程的低通滤波器。
关于电源,MPU-60X0可支持VDD范围2.5V±5%3.0V±5%,或3.3V±5%。另外MPU-6050还有一个VLOGIC引脚,用来为I2C输出提供逻辑电平。VLOGIC电压可取1.8±5%或者VDD
----------------------------------------------------分割线---------------------------------------------------------------------------------
这里我主要介绍一下mpu6050自带的数据运动处理器DMP
一、DMP是什么
DMP就是内部的运动引擎,直接输出四元数,可以减轻外围微处理器的工作负担且避免了繁琐的滤波和数据融合。
二、为什么要使用DMP
最开始接触mpu6050想要得到三轴角度值,发现单独分析陀螺仪数据精度高,但时间长了会有漂移,加速度数据动态精度差,但没有长期漂移。能否综合利用陀螺仪和加速度计的特点,优势互补获得准确的姿态角度呢?通过查询资料发现Mpu6050处理数据最简单的有两种方法:1.通过原始数据的采集进行卡尔曼滤波做数据融合得到较为稳定的三轴角度2.通过mpu6050自带的DMP直接输出。显然使用DMP更加适合我这样的新手嘛!
三、怎么使用DMP
前面巴拉巴拉了一大串最重要的内容终于开始了:
1.首先,按照产品数据库中的连线图完成mpu6050的连线,注意调用dmp需要将mpu6050INT接到Arduinodigital 2口。
这个库比一般的mpu6050库多出来了几个文件:
MPU6050_6Axis_MotionApps20.h                 六轴MotoinApps
MPU6050_9Axis_MotionApps20.h                 九轴MotoinApps
Examples                                                     示例
3.打开库中自带的示例通过不同的定义实现输出不同结果:
#define OUTPUT_READABLE_QUATERNION            显示实际的四元数(w,x,y,z)
#define OUTPUT_READABLE_EULER                     显示欧拉角
#define OUTPUT_READABLE_YAWPITCHROL          显示俯仰/滚动角(度)
#define OUTPUT_READABLE_REALACCEL           
#define OUTPUT_READABLE_WORLDACCEL              
#define OUTPUT_TEAPOT                    (默认的)配合teapotprocessing演示的输出
(后面两个功能没看懂...具体可以看实例代码中102-113行)
数据的稳定性:
得到的数据的噪声很小,pitchroll的变动幅度在0.1度以内。
浅谈mpu-6050图1

1.通过DMP示例代码输出的ypr
4.可能出现的问题:
如果运行其自带的例子MPU6050_DMP6,发现不能正确得到结果,数据是乱的,有一定规律,隔几个数就出现一个FIFO溢出错误,在arduino loop代码最后mpu.resetFIFO();采样数据就稳定了。
陀螺仪数据需要自动校正,程序开始启动的一段时间里ypr角有误差,自动校正完成之后得到的数据才会稳定正确。目前还没找到很好的办法。
yaw轴就没有相应的校正参考,陀螺仪的输出会漂移,需要yaw轴值可以拓展磁感传感器校正升级为九轴加速度传感器。
使用mpu6050时发现电机的转动对它的干扰较大,建议使用干扰较小的电机或者进行一定的抗扰处理。


touchfree  高级技师

发表于 2015-8-3 13:19:05

不错不错
回复

使用道具 举报

金轮法王  初级技师
 楼主|

发表于 2015-8-3 13:43:59


:lol:lol:lol
回复

使用道具 举报

山南水北阳光好  学徒

发表于 2023-10-7 16:59:59

请问有mind+的库吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail