16961|13

503

帖子

1

TA的资源

一粒金砂(高级)

楼主
 

MPU6050陀螺仪数据抖动问题 [复制链接]

 
本帖最后由 曾经in 于 2016-6-10 22:36 编辑

最近在慢慢的搞四轴,但是不是太顺利,前段调24l01没法接收,估计硬件有问题买了模块来替换,现在又出状况了
一波还未平息
一波又来侵袭
茫茫人海狂风暴雨
一波还来不及
一波早就过去
一生一世如梦初醒


好吧,不感慨了
在四轴的的板上运行,静止时X轴陀螺仪数据抖动非常厉害,z轴有小抖动,y轴数据平稳
改用开发板+模块的话同样的代码,3轴数陀螺仪据都能正常接收而且非常平稳,

  1. #include "HAR_I2C.h"
  2. #include "MPU6050.h"

  3. #define MPU_INT PAin(10)

  4. #define MPU6050_ADDRESS         0x68
  5. #define MPU_RE_REG(reg,buf,num) IIC_ReadBuffer(buf,MPU6050_ADDRESS,reg,num)

  6. uint32_t MPU_WR_REG(uint8_t reg,uint8_t value)
  7. {
  8.         return I2C_WriteBuffer(&value,MPU6050_ADDRESS,reg,1);
  9. }

  10. void mpu6050_init(void)
  11. {
  12.         uint8_t test;
  13.         IIC_init();
  14.         MPU_WR_REG(POWER_MANAGEMENT_1,0x00);          //唤醒
  15.         MPU_WR_REG(SAMPLE_RATE_DIVIDER                ,0x07);          //采样率
  16.         MPU_WR_REG(CONFIGURATION                                ,0x07);          //低通滤波
  17.         MPU_WR_REG(GYROSCOPE_CONFIGURATION        ,0x00<<3);          //陀螺仪配置
  18.         MPU_WR_REG(ACCELEROMETER_CONFIGURATION,0x00);          //加速度计配置

  19. }

  20. void char2int(unsigned char *puc,uint16_t *pui)
  21. {
  22.         unsigned char  xy;
  23.         for(xy=6;xy>0;xy--)
  24.         {
  25.                 *pui=(*puc++)<<8;
  26.                 *(pui++)+=*(puc++);
  27.         }
  28. }
  29. void mpu6050_re(uint16_t *poin)
  30. {
  31.         unsigned char hc[12];        
  32.         MPU_RE_REG(ACCELEROMETERMEASUREMENTS,hc,6);
  33.         MPU_RE_REG(GYROSCOPE_MEASUREMENTS,hc+6,6);
  34.         char2int(hc,poin);
  35. }
复制代码
四轴上MPU6050部分原理图

四轴上读到的MPU6050陀螺仪数据:(整个过程都是静止的,但是数据抖动的很厉害)
用模块读到的数据:(后半部分是静止的,较平稳)


没什么头绪呢,大家什么看



此帖出自传感器论坛

最新回复

我的也是,下图是陀螺仪数据导数(角加速度)的波形,尖峰实在是没找到原因,分析了一下数据,怀疑是MPU6050寄存器更新一半的时候被IIC读了造成错误?链接是波形图 https://sm.ms/image/WTf3GXMimyPE5kI   详情 回复 发表于 2020-1-22 19:08
点赞 关注
 
 

回复
举报

483

帖子

0

TA的资源

纯净的硅(初级)

沙发
 
电源好好检查下,滤波做好
此帖出自传感器论坛

点评

都是USB供电,四轴SP6205稳压,开发板1117稳压  详情 回复 发表于 2016-6-11 02:27
 
 
 

回复

503

帖子

1

TA的资源

一粒金砂(高级)

板凳
 
yl20084784 发表于 2016-6-11 00:18
电源好好检查下,滤波做好

都是USB供电,四轴SP6205稳压,开发板1117稳压
此帖出自传感器论坛
 
 
 

回复

196

帖子

0

TA的资源

一粒金砂(中级)

4
 
模块是相同的吗?是不是模块布线的问题?
此帖出自传感器论坛

点评

一个是买的独立模块, 四轴上的mpu6050是画在四轴板一起的  详情 回复 发表于 2016-6-11 20:37
 
 
 

回复

503

帖子

1

TA的资源

一粒金砂(高级)

5
 
leifengfirst 发表于 2016-6-11 20:32
模块是相同的吗?是不是模块布线的问题?

一个是买的独立模块,
四轴上的mpu6050是画在四轴板一起的
此帖出自传感器论坛
 
 
 

回复

196

帖子

0

TA的资源

一粒金砂(中级)

6
 
那就是布线的问题了,参考单独模块的布线看看你的硬件,特别是地线
此帖出自传感器论坛
 
 
 

回复

36

帖子

0

TA的资源

一粒金砂(初级)

7
 
有原厂的参考吧
此帖出自传感器论坛
 
 
 

回复

36

帖子

0

TA的资源

一粒金砂(初级)

8
 
有原厂的参考吧 没有滤波的代码吗?
此帖出自传感器论坛

点评

不是滤波的问题,两是完全相同的程序,都是原始数据,效果完全不同  详情 回复 发表于 2016-6-12 20:50
 
 
 

回复

5979

帖子

8

TA的资源

版主

9
 
6050在PCB上 有没有方向的问题
此帖出自传感器论坛
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 
 
 

回复

503

帖子

1

TA的资源

一粒金砂(高级)

10
 
hinii23 发表于 2016-6-12 09:11
有原厂的参考吧 没有滤波的代码吗?

不是滤波的问题,两是完全相同的程序,都是原始数据,效果完全不同
此帖出自传感器论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

11
 
pcb布线的问题,信号线尽量远离电源线,再主要就是看看地线。
此帖出自传感器论坛
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

12
 
卡尔曼滤波
此帖出自传感器论坛

点评

硬件问题,估计芯片坏了  详情 回复 发表于 2016-9-21 21:32
 
 
 

回复

503

帖子

1

TA的资源

一粒金砂(高级)

13
 

硬件问题,估计芯片坏了
此帖出自传感器论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

14
 

我的也是,下图是陀螺仪数据导数(角加速度)的波形,尖峰实在是没找到原因,分析了一下数据,怀疑是MPU6050寄存器更新一半的时候被IIC读了造成错误?链接是波形图

https://sm.ms/image/WTf3GXMimyPE5kI

此帖出自传感器论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表