心之永恒 发表于 2012-11-21 16:21:12

编译不通过,什么原因呢

心之永恒 发表于 2012-11-21 16:28:02

楼上的解决了 把mpu6050.h和mpu6050.cpp替换成链接的

johnsonzzd 发表于 2012-11-21 20:59:02

对了,换成arduino ide最新的版本试试。

zrbwork 发表于 2012-12-17 12:23:53

请问为什么我的只看到这个:
Initializing I2C devices...
Testing device connections...
MPU6050 connection successful

Send any character to begin DMP programming and demo:

就没有别的内容了。我是用V5的传感器扩展板,接线上需要注意什么吗?

zrbwork 发表于 2012-12-17 12:51:06

一切都好了

zrbwork 发表于 2012-12-17 12:52:22

请问这个对DMP操作能输出三个轴向的旋转角度吗

johnsonzzd 发表于 2012-12-17 16:58:12

本帖最后由 johnsonzzd 于 2012-12-17 16:59 编辑

zrbwork 发表于 2012-12-17 12:52 static/image/common/back.gif
请问这个对DMP操作能输出三个轴向的旋转角度吗

程序第130行,从DMP里取出三个轴的角度放入数组ypr里

zrbwork 发表于 2012-12-17 22:00:48

johnsonzzd 发表于 2012-12-17 16:58 static/image/common/back.gif
程序第130行,从DMP里取出三个轴的角度放入数组ypr里

谢谢回头试试,我主要想得到水平的角度去驱动舵机

zrbwork 发表于 2012-12-17 22:01:33

johnsonzzd 发表于 2012-12-17 16:58 static/image/common/back.gif
程序第130行,从DMP里取出三个轴的角度放入数组ypr里

谢谢回头试试,我主要想得到水平的角度去驱动舵机

戊辰寒 发表于 2012-12-28 17:57:33

zrbwork 发表于 2012-12-17 22:01 static/image/common/back.gif
谢谢回头试试,我主要想得到水平的角度去驱动舵机

ypr[]中的ypr*180/M_PI是Z轴旋转角度,ypr*180/M_PI是Y轴的旋转角度,ypr*180/M_PI是X轴的旋转角度。
另外MPU6050的库都是使用的四元数矩阵得出的角度,如果想要四元数的程序直接打开mpu6050的库文件夹,里面的helper_3Dmath.h里面就有详细的说明。

另关于YawPitchRoll的说明:http://zh.wikipedia.org/wiki/%E6%97%8B%E8%BD%AC%E7%9F%A9%E9%98%B5

NEVER-ENDING_DR 发表于 2012-12-28 18:55:37

不知道这个读出的角度误差大不大?

戊辰寒 发表于 2012-12-30 19:08:27

utuu 发表于 2012-11-20 20:33 static/image/common/back.gif
知道问题出在哪没呢

之前我也是一样的,omiga不跳,alpha乱跳,原因是库文件问题。
去https://github.com/jrowberg/i2cdevlib
下载mpu6050的新版库文件就行了。

seuabb 发表于 2012-12-31 14:17:57

想问楼主这个DMP取得的Yaw,Pitch,Roll精度如何,采样率能到多少,噪声大吗,研究网上的卡尔曼滤波简化算法,研究了半天。得出的三个旋转角还是不准。

johnsonzzd 发表于 2012-12-31 22:56:07

seuabb 发表于 2012-12-31 14:17 static/image/common/back.gif
想问楼主这个DMP取得的Yaw,Pitch,Roll精度如何,采样率能到多少,噪声大吗,研究网上的卡尔曼滤波简化算法, ...

MPU6050DMP内部工作原理没有公开,最近才公开了寄存器功能。现在只知道,角速度输出速率为8kHz,若开启数字低通滤波功能,则降为1kHz。加速度输出速率1kHz。外部读的速度超过输出速率没有意义,读到的都是不变值。因此我认为DMP的输出速率原则上可以高到8kHz,滞后是不可避免的。

hdl 发表于 2013-1-1 01:15:50

我用最新i2cdev下载的6050DMP6代码在328P+6050板上测试,发现loop循环只有50Hz, mpu.getIntStatus(); 和mpu.getFIFOCount();这些都会等很久,搞不懂DMP不会这么慢吧?不知道是不是我板子有问题有没有人这样试过呢?    我是用示波器看      
   // blink LED to indicate activity
      blinkState = !blinkState;
      digitalWrite(LED_PIN, blinkState); 的频率的。
页: 1 [2] 3 4 5 6 7 8 9 10
查看完整版本: MPU 6050 读角度与单位换算