极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12721|回复: 0

MPU6050 DMP 解出来的yaw pitch roll 为什么与现实不符?

[复制链接]
发表于 2016-7-25 15:50:30 | 显示全部楼层 |阅读模式
用的 Jeff Rowberg 的库的Example :  MPU6050_DMP6.ino
// I2C device class (I2Cdev) demonstration Arduino sketch for MPU6050 class using DMP (MotionApps v2.0)
// 6/21/2012 by Jeff Rowberg <[email protected]>
// Updates should (hopefully) always be available at https://github.com/jrowberg/i2cdevlib



已经归零矫正了 三个加速度,三个陀螺仪角速度的offset。
串口上输出yaw pitch roll。可见,pitch为3.21度,roll为-11.80度,基本上是放平了的。

ypr        59.43        3.21         -11.80
ypr        59.43        3.21          -11.80
ypr        59.43        3.21          -11.80
ypr        59.43        3.22          -11.81
ypr        59.43        3.21          -11.80
ypr        59.43        3.21          -11.81
ypr        59.42        3.21          -11.81



当我把模块在3秒内改变90度时,例如,从水平开始加大pitch直到模块垂直90度,经历大约3秒。
但发现串口pitch值 并没有从3.21度变化到约90多度。只大约增加到60多度。
如果我动作再慢点,比如在6秒内改变90度。串口显示的pitch值最大可以冲到50多度。
如果我动作再快点,比如在0.5秒内改变90度。串口显示的pitch值最大可以冲到80多度。貌似这个和动作速度有关。
其他轴其他方向也是一样的效果。
难道DMP输出的yaw pitch roll 不是世界坐标系下的绝对度数吗?
我要获取世界坐标系下的 ypr值怎么获取?
回复

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-14 21:25 , Processed in 0.032744 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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