搜索
bottom↓
回复: 7

MPU9250的DMP数据滞后严重如何解决

[复制链接]

出0入0汤圆

发表于 2017-11-30 09:10:57 | 显示全部楼层 |阅读模式
本帖最后由 zhangyh89 于 2017-11-30 09:17 编辑

最近用到MPU9250,只用到了陀螺仪Z轴的数据,刚开始只使用9250的裸数据,效果还行。后来想到DMP出来的陀螺仪数据会不会更稳定,然后移植了官网最新的DMP库,
结果数据看起来很稳定但是无法使用,数据有很大的延迟,滞后把陀螺仪的裸数据和DMP后的数据都读出来做了下对比,转动PCB查看数据果然有很大的延迟,下面的数据中Nak后面是裸数据,
后面跟的是陀螺仪X Y Z轴数据。DMP设置的滤波设置已经改成最低了还是这样,不知道有没有什么解决办法

DMP:-203 -152 -1821
Nak:-669  115 -1029

DMP:-240 -129 -1811
Nak:-480  194 -1023

DMP:-286  -85 -1780
Nak:-244  -57 -1036

DMP:-159  167 -1994
Nak:-316  -24 -776

DMP:-228  130 -2053
Nak: -50  166 -709

DMP:-265  -20 -1834
Nak:  84   34 -888

DMP:-151  -44 -1889
Nak: 223   96 -788

DMP:-385 -133 -1768
Nak: 349   72 -790

DMP:-500   31 -1427
Nak: 220  -52 -736

DMP:-482  180 -1268
Nak: 128  222 -600

DMP:-611   57 -1193
Nak: 240  418 -558

DMP:-649  103 -1065
Nak: 185  196 -555

DMP:-251   95 -1128
Nak: 113  152 -526

DMP:-225  -69 -1072
Nak: 151  228 -508

DMP:-231  136 -644
Nak:  91   -6 -435

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2017-11-30 10:51:27 | 显示全部楼层
"DMP设置的滤波设置已经改成最低了还是这样"这句话DMP自带LPF滤波截止频率越低,延时岂不是越大?

出0入0汤圆

 楼主| 发表于 2017-11-30 11:02:36 | 显示全部楼层
zzipeng 发表于 2017-11-30 10:51
"DMP设置的滤波设置已经改成最低了还是这样"这句话DMP自带LPF滤波截止频率越低,延时岂不是越大?{:shocked ...


写错了。。。最高,5种滤波频率都试过了,效果都差不多。刚又测了下数据,快速的来回旋转PCB,可以看到裸数据已经反向了,DMP的数据还没反向
DMP: 130 -400  132
Nak: 510 -118 -3408

DMP:1007 -553 2218
Nak: 561 -585 -4341

DMP:1185 -617 3536
Nak: 759 -1062 -5567

DMP:1273 -537 4510
Nak: 786 -1206 -5985

DMP:1026  133 5544
Nak: 354 -1753 -5835

DMP: 891  654 5931
Nak:  86 -1839 -5152

DMP: 333 1488 5424
Nak:-130 -1585 -4166

DMP:  90 1775 4567
Nak:-557 -636 -1503

DMP:  65 1788 2416
Nak:-584 -296 -273

DMP: 264 1446  671
Nak:-364   86 2069

DMP: 523  430 -2523
Nak:-289    3 3428

DMP: 527 -130 -3444
Nak: -10 -106 5500

出0入0汤圆

发表于 2017-11-30 12:03:32 | 显示全部楼层
我之前试过,没问题的,照样可以做四轴~~统一用DMP解算出来的姿态以及角速度数据就行了

出0入0汤圆

 楼主| 发表于 2017-11-30 17:30:15 | 显示全部楼层
zzipeng 发表于 2017-11-30 12:03
我之前试过,没问题的,照样可以做四轴~~统一用DMP解算出来的姿态以及角速度数据就行了 ...

那你有没有遇到过四元数,结算出来的Pitch Roll会慢慢飘的情况,程序里已经执行过校准函数了。静止状态上电后Pitch Roll会慢慢的飘到1度,然后再慢慢回到0。当我迅把板子倾斜一个角度后迅速放水平发现Pitch Roll不能立刻回0 ,而是慢慢的从10度20度左右慢慢的回到0,回到0大概需要10秒左右的时间。之前用过MPU6050的DMP就没有种种这些情况。。。难道是最新的DMP库有问题?

出0入0汤圆

发表于 2017-11-30 20:09:38 | 显示全部楼层
没有遇到这个问题

出0入0汤圆

 楼主| 发表于 2017-12-1 09:54:52 | 显示全部楼层
zzipeng 发表于 2017-11-30 20:09
没有遇到这个问题

您用的哪个版本的DMP库,还有mpu_init初始化成功后大概执行了哪些操作

出0入0汤圆

发表于 2019-8-8 16:45:05 | 显示全部楼层
最近在调试DMP遇到了这个问题,摸索下发现:
①DMP(不带磁力计)的读取模式下,无论读取频率,数据的实时性都很好,但Yaw有漂移;
②MPL(带磁力计)的读取模式下,读取mpu fifo频率越低,读出的数据滞后越严重。当我把读取循环中的延时函数从100ms降低到1ms,然后再让stm32每读20次才输出1次,这时候输出的实时性和准确性都不错。但延迟在100ms读一次的时候,输出的数据要半分钟才能稳定。
网上查了几天,有不少人出现这种问题,但还没人回复根本的原因,我猜想是跟fifo的读取频率有关,过慢了数据就异常了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 21:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表