OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9373|回复: 26

mpu9250 MD6.12移植到STM32F103

[复制链接]

4

主题

18

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2016-5-6
在线时间
9 小时
发表于 2016-11-18 17:12:46 | 显示全部楼层 |阅读模式
昨天晚上,淘宝上买的MPU9250模块终于到手了,迫不及待上了自己的移植的代码试了一下,结果错误百出,经过今天一天的调试,终于完活了。上视频


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

18

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2016-5-6
在线时间
9 小时
 楼主| 发表于 2016-11-18 17:14:36 | 显示全部楼层
代码和硬件连接都在这里了,其中大量引用了原子哥的代码,如有侵权,请及时告知。
硬件连接.png

实验0-2 Template工程模板-调试章节使用.rar

6.23 MB, 下载次数: 11104

回复 支持 反对

使用道具 举报

4

主题

18

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2016-5-6
在线时间
9 小时
 楼主| 发表于 2016-11-18 19:26:00 | 显示全部楼层
自顶。。。
回复 支持 反对

使用道具 举报

0

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2016-8-22
在线时间
37 小时
发表于 2016-11-21 22:16:52 | 显示全部楼层
看视频里面  整得不错啊
回复 支持 反对

使用道具 举报

31

主题

187

帖子

0

精华

高级会员

Rank: 4

积分
699
金钱
699
注册时间
2014-9-19
在线时间
193 小时
发表于 2016-11-22 10:37:20 | 显示全部楼层
发个淘宝连接  宝贝。
回复 支持 反对

使用道具 举报

31

主题

187

帖子

0

精华

高级会员

Rank: 4

积分
699
金钱
699
注册时间
2014-9-19
在线时间
193 小时
发表于 2016-11-22 10:49:35 | 显示全部楼层
上位机资料上传下呗。 摸摸哒
回复 支持 反对

使用道具 举报

31

主题

187

帖子

0

精华

高级会员

Rank: 4

积分
699
金钱
699
注册时间
2014-9-19
在线时间
193 小时
发表于 2016-11-26 11:46:09 | 显示全部楼层
Yaw有漂移啊
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2017-2-9
在线时间
18 小时
发表于 2017-2-9 07:40:57 | 显示全部楼层
本帖最后由 ringudk 于 2017-2-9 07:47 编辑

还可以接受吧


回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2017-2-9
在线时间
18 小时
发表于 2017-2-9 07:47:45 | 显示全部楼层
本帖最后由 ringudk 于 2017-2-9 09:11 编辑
Boris 发表于 2016-11-18 17:14
代码和硬件连接都在这里了,其中大量引用了原子哥的代码,如有侵权,请及时告知。

9250.jpg
你好,我用你移植的代码在STM32F103C8是做了测试,发现如果按上图顺序旋转的在回到原位置的话会有问题,10次有5次以上会出问题。
用STM32F407VE测试motion_driver_6.12的代码没有出现这个问题。
初始状态四元数输出
quat:  0.9986  0.0040  0.0527  0.0072
quat:  0.9986  0.0039  0.0527  0.0072
quat:  0.9986  0.0039  0.0527  0.0072
quat:  0.9986  0.0040  0.0527  0.0072
quat:  0.9986  0.0040  0.0527  0.0072
quat:  0.9986  0.0040  0.0526  0.0072
quat:  0.9986  0.0039  0.0526  0.0072


按我上图顺序旋转后回原位置四元数输出
quat:  0.4227 -0.0466  0.0264  0.9047
quat:  0.4227 -0.0466  0.0264  0.9047
quat:  0.4227 -0.0466  0.0263  0.9047
quat:  0.4227 -0.0466  0.0263  0.9047
quat:  0.4227 -0.0465  0.0263  0.9047
quat:  0.4227 -0.0465  0.0263  0.9047
quat:  0.4227 -0.0465  0.0263  0.9047


麻烦你帮忙测试一下是否会出现和我一样的问题,我找不出原因为什么会这样。


刚刚尝试在inv_error_t inv_get_quaternion函数,把罗盘数据强制设置为
        rh.compass_correction[0]=        0x40000000;
        rh.compass_correction[1]=        0x0;
        rh.compass_correction[2]=        0x0;
        rh.compass_correction[3]=        0x0;
这样就不会出现上面的错误了,由此估计是罗盘数据有问题。



inv_error_t inv_get_quaternion(long *data)
{
       
        rh.compass_correction[0]=        0x40000000;
        rh.compass_correction[1]=        0x0;
        rh.compass_correction[2]=        0x0;
        rh.compass_correction[3]=        0x0;

    if (rh.status & (INV_COMPASS_CORRECTION_SET | INV_6_AXIS_QUAT_SET)) {
        inv_q_mult(rh.compass_correction, rh.gam_quat, rh.nav_quat);
        rh.status &= ~(INV_COMPASS_CORRECTION_SET | INV_6_AXIS_QUAT_SET);
    }
    memcpy(data, rh.nav_quat, sizeof(rh.nav_quat));
    return INV_SUCCESS;
}


回复 支持 反对

使用道具 举报

32

主题

883

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4031
金钱
4031
注册时间
2015-11-14
在线时间
545 小时
发表于 2017-2-9 08:17:43 | 显示全部楼层
回复 支持 反对

使用道具 举报

21

主题

299

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1834
金钱
1834
注册时间
2013-7-29
在线时间
278 小时
发表于 2017-2-9 08:46:09 | 显示全部楼层
为什么不用SPI方式?I2C方式速度慢。
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2016-5-26
在线时间
10 小时
发表于 2017-2-13 22:55:24 | 显示全部楼层
楼主这个软件是啥啊?
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2017-2-9
在线时间
18 小时
发表于 2017-2-14 20:42:33 | 显示全部楼层
牛宝宝 发表于 2017-2-13 22:55
楼主这个软件是啥啊?

motion_driver_6.12\eMPL-pythonclient\eMPL-client.py里面的pygame,要安装Python才能运行的。安装好后还要安装pygame-1.9.1.win32-py2.7.msi,pyserial-2.5.win32.exe或pyserial-3.2.1-py2.py3-none-any.whl。运行python eMPL-client.py 15 [15]是串口的端口号。
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-1-2
在线时间
5 小时
发表于 2017-2-15 20:44:33 | 显示全部楼层
楼主你好,我使用您的代码在串口打印的数据据丢失是怎么回事啊,请问楼主是否遇到同样的问题。谢谢
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2017-2-9
在线时间
18 小时
发表于 2017-2-16 00:38:21 | 显示全部楼层
yinqiying 发表于 2017-2-15 20:44
楼主你好,我使用您的代码在串口打印的数据据丢失是怎么回事啊,请问楼主是否遇到同样的问题。谢谢

楼主好像很久没来这里了。你如果串口打印出来是$+乱码是正常的,数据结构看源代码的
void eMPL_send_data(unsigned char type, long *data),eMPL-client.py里面有相应的转换代码。

回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-1-2
在线时间
5 小时
发表于 2017-2-16 11:44:46 | 显示全部楼层
ringudk 发表于 2017-2-16 00:38
楼主好像很久没来这里了。你如果串口打印出来是$+乱码是正常的,数据结构看源代码的
void eMPL_send_dat ...

eMPL-client.py  ,你好,eMPL-client.py这个我还不会使用,麻烦是否可以指教一下
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2017-2-9
在线时间
18 小时
发表于 2017-2-16 15:04:50 | 显示全部楼层
本帖最后由 ringudk 于 2017-2-16 15:07 编辑
yinqiying 发表于 2017-2-16 11:44
eMPL-client.py  ,你好,eMPL-client.py这个我还不会使用,麻烦是否可以指教一下

你的Python2.7安装好了吗?你下载一个motion_driver_6.12。在motion_driver_6.12\documentation\App Note 1 - Motion Driver 6.12 Getting Started.pdf里面有详细的使用说明。
回复 支持 反对

使用道具 举报

7

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2015-12-1
在线时间
15 小时
发表于 2017-5-10 15:02:18 | 显示全部楼层
本帖最后由 thy_1994 于 2017-5-10 15:04 编辑

你好,请问一下:用命令" python eMPL-client.py 4" 运行eMPL-client.py,有图上的错误信息提示是怎么回事?
按照App Note 1文档说明,安装了python2.7.13,用命令“pip install pyserial”和 “pip install pygame“安装了两个库,单片机里用的是你的程序,只是改了IIC的端口,串口里是有东西输出的,$开头的数据。
还望指点,谢谢
python.png



回复 支持 反对

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2017-5-10
在线时间
13 小时
发表于 2017-5-12 22:10:09 | 显示全部楼层
大神,用你的程序怎么显示inv enable 未定义啊什么的
回复 支持 反对

使用道具 举报

28

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
228
金钱
228
注册时间
2017-8-1
在线时间
50 小时
发表于 2018-6-17 21:56:31 | 显示全部楼层
ggsmida 发表于 2017-5-12 22:10
大神,用你的程序怎么显示inv enable 未定义啊什么的

需要添加lib文件
回复 支持 反对

使用道具 举报

28

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
228
金钱
228
注册时间
2017-8-1
在线时间
50 小时
发表于 2018-6-22 21:15:46 | 显示全部楼层
本帖最后由 1473421439 于 2018-6-24 12:51 编辑

静止不动时,yaw角会一直变化,角度一直增加,这是怎么回事?
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2018-9-10
在线时间
16 小时
发表于 2019-5-24 17:06:15 | 显示全部楼层
你好,我使用你的代码进行调试,python没有数据显示,python是从官网上下的,使用的motion_driver_6.12库里待的软件
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2018-9-10
在线时间
16 小时
发表于 2019-5-24 17:09:00 | 显示全部楼层
本帖最后由 J2366079297 于 2019-5-24 17:11 编辑

[/C:\Users\Administrator\Desktop\MPU9250-DMP\1b]
你好,我使用你的代码进行调试,python没有数据显示,python是从官网上下的,使用的motion_driver_6.12库里待的软件
1.png
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2018-9-10
在线时间
16 小时
发表于 2019-5-24 17:10:25 | 显示全部楼层
thy_1994 发表于 2017-5-10 15:02
你好,请问一下:用命令" python eMPL-client.py 4" 运行eMPL-client.py,有图上的错误信息提示是怎么回事 ...

同问!
回复 支持 反对

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2018-9-10
在线时间
16 小时
发表于 2019-5-24 18:22:00 | 显示全部楼层
J2366079297 发表于 2019-5-24 17:09
你好,我使用你的代码进行调试,python没有数据显示,python是从官网上下的,使用的motion_driver_6.12库 ...

自己找到原因了,python默认的波特率是115200,修改后好了
回复 支持 反对

使用道具 举报

2

主题

474

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
6466
金钱
6466
注册时间
2018-6-27
在线时间
547 小时
发表于 2019-6-29 17:34:16 | 显示全部楼层
学习学习,学习学习。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
78
金钱
78
注册时间
2020-3-2
在线时间
36 小时
发表于 2020-4-12 23:02:58 | 显示全部楼层
视频呢
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-25 05:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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