单片机采集的MPU6050原始数据对应关系

Posted sawyer22

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机采集的MPU6050原始数据对应关系相关的知识,希望对你有一定的参考价值。

转自:https://blog.csdn.net/u013636775/article/details/69668860

单片机采集的MPU6050原始数据对应关系

1.陀螺仪

如下图,

技术分享图片

陀螺仪的范围有±250、±500、±2000可选,而对应的精度分别是131LSB/(°/s)、65.5LSB/(°/s)、32.8LSB/(°/s)、16.4 LSB/(°/s)

a.那么这个精度和范围的关系是什么? 
首先MPU6050数据寄存器是一个16位的,由于最高位是符号位,故而数据寄存器的输出范围是-7FFF~7FFF ,也既是-32767~32767;

b.如果选择陀螺仪范围是±2000,那么意味着-32767对应的是-2000(°/s),32767对应是2000(°/s),当读取陀螺仪的值是1000的,对应的角速度计算如下:32767/2000 =1000/x; 既x = 1000/16.4(°/s),可以看出32767/2000 = 16.4 ,对应手册中的精度 16.4 LSB/(°/s),其他范围的也是如此。

c.在四轴姿态计算中,我们通常要把角度换算成弧度。我们知道2Pi代表360度,那么1度换算成弧度就是: 
2Pi/360=(2*3.1415926)/360=0.0174532=1/57.30。

d.总结:当量程为-2000到+2000的范围,把陀螺仪获取的数据转换为真正的弧度每秒的公式:(gyro_x来代表从陀螺仪读到的数据): gyro_x/(16.40*57.30)=gyro_x*0.001064,单位为弧度每秒。

2.加速度计

如下图

技术分享图片

采用和陀螺仪同样的计算方法,当AFS_SEL=3时,数字-32767对应-16g,32767对应16g。把32767除以16,就可以得到2048, 即我们说的灵敏度。把从加速度计读出的数字除以2048,就可以换算成加速度的数值。举个例子,如果我们从加速度计读到的数字是1000,那么对应的加速度数据是1000/2048=0.49g。g为加速度的单位,重力加速度定义为1g, 等于9.8米每平方秒。



以上是关于单片机采集的MPU6050原始数据对应关系的主要内容,如果未能解决你的问题,请参考以下文章

STC单片机STC15单片机读取MPU6050模块数据并串口输出

STC8单片机基于开源库读取mpu6050数据

由于用mpu6050模块,所以要用上i2c通信原理。

51获取6050原始数据并通过匿名上位机显示波形

是否有将MPU-6050原始数据转换为0-259旋转数据的方法

有没有办法把MPU-6050的原始数据转换成0-359的旋转数据?