打印

[小应用]GD32F103+MPU9150 四轴飞行器第一步:9DOF姿态融合

[复制链接]
楼主: zkcaptain
手机看帖
扫描二维码
随时随地手机跟帖
121
lz,你好!我是使用AD画的,怕自己画的封装不正确,所以能给我MPU-9150的封装吗(LGA24)?比较急用!谢谢!

使用特权

评论回复
122
zkcaptain|  楼主 | 2013-12-11 13:37 | 只看该作者
bing20138 发表于 2013-12-10 17:34
lz,你好!我是使用AD画的,怕自己画的封装不正确,所以能给我MPU-9150的封装吗(LGA24)?比较急用!谢谢! ...

我找了半天找不到了。。。给你说一下注意事项:
1.焊盘往芯片外部最好要多出1mm方便用烙铁焊接,如果有风枪,那么此处可以不多加焊盘长度
2.焊盘往芯片中心位置多加个0.5-0.7mm,因为MPU9150的引脚在芯片下面,此处焊盘加的少了,会发现一边的引脚焊上了另一边的没焊上,这个跟制板的工艺也有关,有时候两边焊盘给你做的并不是对称的。

如果不放心,画完PCB以后用1:1打印出来,拿个芯片放上去看行不行。

使用特权

评论回复
123
huangjia22| | 2013-12-11 23:58 | 只看该作者
好强大,赞一个

使用特权

评论回复
124
gongjinhua| | 2013-12-22 11:42 | 只看该作者
好强大

使用特权

评论回复
125
pengqihong2013| | 2013-12-22 11:51 | 只看该作者
只有膜拜了

使用特权

评论回复
126
173795469| | 2013-12-25 00:13 | 只看该作者
楼主的程序有问题啊,mpu9150的i2c从器件地址手册明明是0xd0,我用0xd0也是能正确读到数据的。但楼主程序里为什么定义的是0x68呢??这样也能读出数据?

使用特权

评论回复
127
zkcaptain|  楼主 | 2013-12-25 10:35 | 只看该作者
173795469 发表于 2013-12-25 00:13
楼主的程序有问题啊,mpu9150的i2c从器件地址手册明明是0xd0,我用0xd0也是能正确读到数据的。但楼主程序里 ...

这个我还是解释下吧,正规来说,MPU9150的地址应该是0xD0,但是一部分人(包括我)的程序里用的是I/O口模拟的I2C,在他们的程序里,对MPU9150的addr多做了一步“addr<<1”,这一部分人就用0x68来作为MPU9150的地址,而直接用addr的人,就需要用0xD0了,这主要看I2C的驱动怎么写了。

你仔细看下我的程序就明白了。

使用特权

评论回复
128
173795469| | 2013-12-25 14:36 | 只看该作者
zkcaptain 发表于 2013-12-25 10:35
这个我还是解释下吧,正规来说,MPU9150的地址应该是0xD0,但是一部分人(包括我)的程序里用的是I/O口模拟 ...

原来如此啊~ 麻烦问下,我看楼主的程序里磁力计的读取为         init_mx =(float)1.046632*mag[0]-1.569948;init_my =(float)mag[1]-8;init_mz =(float)mag[2];   不需要乘上最小LSB的0.3嘛??   还有我看手册上说磁力计的数据是以13位补码的形式给出,最高位13位为符号位,程序里不需要做相应的数据转换嘛??

使用特权

评论回复
129
zkcaptain|  楼主 | 2013-12-25 14:47 | 只看该作者
173795469 发表于 2013-12-25 14:36
原来如此啊~ 麻烦问下,我看楼主的程序里磁力计的读取为         init_mx =(float)1.046632*mag[0]-1.569 ...

乘以0.3是把磁场单位转换成高斯了,没必要,还增加了运算时间,算法里面对磁力计的数据做了归一化处理,所以对磁场强度的单位没要求,只需要做校准就可以了

使用特权

评论回复
130
173795469| | 2013-12-25 14:58 | 只看该作者
173795469 发表于 2013-12-25 14:36
原来如此啊~ 麻烦问下,我看楼主的程序里磁力计的读取为         init_mx =(float)1.046632*mag[0]-1.569 ...

我使用你的程序,读出的陀螺、加速度计的数据都是正确的,但是磁力计的数据感觉不对~ 表现在静止不动,磁力计的输出跳动非常大,不知为何~ 按理说虽然未做磁力计的校准,但静止的话起码数据应该比较稳定才对啊~

使用特权

评论回复
131
zkcaptain|  楼主 | 2013-12-25 15:02 | 只看该作者
173795469 发表于 2013-12-25 14:58
我使用你的程序,读出的陀螺、加速度计的数据都是正确的,但是磁力计的数据感觉不对~ 表现在静止不动,磁 ...

有各种你想象不到的干扰,磁力计本来就不是一个能在各个环境下提供可靠参考的东西。要真是数据不对,那就是代码的原因。

使用特权

评论回复
132
173795469| | 2013-12-25 15:40 | 只看该作者
楼主,我看你贴出来的图,航向角波动挺小的~  那你的磁力计静态下稳定么? 我使用你给出的程序, init_mx =(float)mag[0];  读出来的磁力计数据比如整体上是20, 会在18~23之间波动,这算正常么?

使用特权

评论回复
133
zkcaptain|  楼主 | 2013-12-25 15:45 | 只看该作者
173795469 发表于 2013-12-25 15:40
楼主,我看你贴出来的图,航向角波动挺小的~  那你的磁力计静态下稳定么? 我使用你给出的程序, init_mx = ...

很正常,磁场本来就不是恒定的。

使用特权

评论回复
134
ZZ4903| | 2013-12-28 14:14 | 只看该作者
谢谢楼主.

使用特权

评论回复
135
youluo235| | 2013-12-29 23:18 | 只看该作者
这个必须顶。飞行器还是有技术含量的。

使用特权

评论回复
136
ljs0370| | 2013-12-30 00:54 | 只看该作者
楼主您好!请问您的代码在俯仰90度有奇异点吗?谢谢!

使用特权

评论回复
137
zkcaptain|  楼主 | 2013-12-30 09:47 | 只看该作者
ljs0370 发表于 2013-12-30 00:54
楼主您好!请问您的代码在俯仰90度有奇异点吗?谢谢!

有,请仔细看楼主位的帖子

使用特权

评论回复
138
zclmn| | 2014-1-3 11:37 | 只看该作者
楼主,出了板子给寄块玩呗,3Q...

使用特权

评论回复
139
lxy923800| | 2014-1-7 21:26 | 只看该作者
谢谢分享

使用特权

评论回复
140
jianjunzaixian| | 2014-1-8 15:31 | 只看该作者
mark一下    后续有资金了    自己也整一套玩玩

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则