关于使用MPU6050加速度计测量角度时数据发生边缘跳变的问题
最近在使用MPU6050+STM32F103做角度测量,通过Timer3每5ms进行一次采样,串口打印数据并画图后发现加速度计计算角度时会出现边缘跳变,如图所示:
测试时角度移动范围在-3-0度,但边缘跳变的数据结果绝对值最大会到150多度。
代码是从正点原子的MPU6050例程移植的
陀螺仪摆放方式如下图所示:
inv_mpu.c 中,陀螺仪方向设置矩阵为:
static signed char gyro_orientation[9] = {0, -1, 0,
1, 0, 0,
0, 0, 1};
通过加速度计计算角度的方式为:
angle_acc =atan2(aacy,aacz) * 57.3;
之前以为是信号线接触不良导致的问题,但是更换杜邦线后数据仍会跳变
有大佬知道为什么会跳变吗?
先看看从寄存器读出的原始加速度数据是不是也这样跳变