标题: 请教MPU6050传感器数据严重扰动问题 [打印本页]

作者: dasSpieler    时间: 2022-11-28 00:55
标题: 请教MPU6050传感器数据严重扰动问题
mpu6050 z轴数据漂移算是老生常谈的问题了,可能几分钟飘个1-2°,这个完全可以接受,但是我现在观察到的现象已经不能用漂移来形容了:
1、传感器装在小车上,直接用的pcb作为小车底盘,陀螺仪电路就做在pcb上,电机和驱动电路也在pcb上;
2、车轮静止的时候陀螺仪z轴数据几乎没有漂移,有漂移也在±1°以内;
3、车轮转动时陀螺仪z轴数据受到严重干扰,剧烈波动并朝某一个方向显著变化,偏差可达10°以上。
如图,将小车放在支架上静止测量,陀螺仪数据从最开始的1°左右在一分钟之内偏到8°,关停车轮后数据依然增大了一段时间之后波动减小(对应波形中间比较平滑的那一段),再次启动车轮,陀螺仪数据再次波动偏移,直到再次关停车轮。此期间车身始终保持静止。

我这里使用的是6050自带的dmp数据,应该是经过了互补滤波的。在电机未通电的时候数据也比较平稳。想请问一下,是否有可能是电机转动时候的电磁干扰影响了陀螺仪的运行?能否通过pcb上的某些处理解决问题?或者是否也有可能是个别现象,换个陀螺仪就会好一点?感谢大佬指点。

51hei截图20221128002105.png (342.31 KB, 下载次数: 71)

51hei截图20221128002105.png

作者: wufa1986    时间: 2022-11-28 08:11
这些传感器灵敏度都很高,需要高级算法来得到正确姿态,有2种方案,一是自己自己移植算法,二是向mpu6050刷入官方固件,他自己就能运行算法
作者: dasSpieler    时间: 2022-11-28 10:47
wufa1986 发表于 2022-11-28 08:11
这些传感器灵敏度都很高,需要高级算法来得到正确姿态,有2种方案,一是自己自己移植算法,二是向mpu6050刷 ...

我使用的是dmp库,每4ms查询一次返回值
作者: Y_G_G    时间: 2022-11-28 17:55
卡尔曼滤波
论坛有现成的平衡小车程序,你可以下载来参考一下
作者: glinfei    时间: 2022-11-28 19:00
应该是电机振动弄的,6050没有磁力计
作者: dasSpieler    时间: 2022-11-28 20:21
Y_G_G 发表于 2022-11-28 17:55
卡尔曼滤波
论坛有现成的平衡小车程序,你可以下载来参考一下

我试着用滑窗滤波处理dmp输出的值,发现效果不大。而且按我的理解,滤波算法并不会改变数据的中心值,而现在的情况是数据不仅有明显波动,中心值也发生了显著的改变。卡尔曼滤波可以处理这个问题吗?
作者: dasSpieler    时间: 2022-11-28 20:27
glinfei 发表于 2022-11-28 19:00
应该是电机振动弄的,6050没有磁力计

电机的机械振动会使得陀螺仪的数据中心值发生显著偏移吗?刚试了一下,把车轮拆下来,按理这样会让机械振动小很多,但数据异常偏移的情况依然存在,不过比原来小了一些。如果将陀螺仪单独放到一块小板子上或者给电机增加减震配置,是否就会改善这一情况呢
作者: dandan-tcb    时间: 2022-11-28 20:34
可以到B站搜索关键词【6050 滤波】和【6050 漂移】,有很多视频可以参考。
作者: ly7376    时间: 2022-11-28 21:04
我感觉应该是电机振动弄的,因为6050没有磁力计,希望能帮助到你
作者: dasSpieler    时间: 2022-11-28 22:57
ly7376 发表于 2022-11-28 21:04
我感觉应该是电机振动弄的,因为6050没有磁力计,希望能帮助到你

又试了一下用手按住陀螺仪,尽可能减小其振动,偏移似乎减小了一点,但没有完全消除。电机运转产生的振动造成的偏差真的可以达到±2°并且不断朝一个方向累计吗
作者: oohoh    时间: 2022-11-29 00:10
用锡纸一面贴透明胶做6050简易屏蔽,看漂移是否改善
作者: Y_G_G    时间: 2022-11-29 11:32
dasSpieler 发表于 2022-11-28 20:21
我试着用滑窗滤波处理dmp输出的值,发现效果不大。而且按我的理解,滤波算法并不会改变数据的中心值,而 ...

没有做过卡尔曼滤波,感觉有点复杂,水平有限,看不懂
但是,论坛的上的平衡小车都是有卡尔曼滤波的,我相信是可以的
滑窗滤波其实效果跟平均值滤波都是差不多不的,好不了多少的
你需要更加复杂的滤波算法
卡尔曼滤波或者是IIR滤波
作者: dasSpieler    时间: 2022-12-1 22:47
破案了,果然是电机振动的原因
太坑人了,现在考虑能不能自己用算法解决这个问题。。。。。。
作者: zilihangjian    时间: 2022-12-3 08:58
抖动引起的 ,换算法。
作者: glinfei    时间: 2022-12-8 13:00
dasSpieler 发表于 2022-12-1 22:47
破案了,果然是电机振动的原因
太坑人了,现在考虑能不能自己用算法解决这个问题。。。。。。

能啊,拟合一下呗




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1