极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: Ansifa

Arduino学习笔记A3 - Arduino连接HMC5883L三轴电子罗盘传感器

  [复制链接]
发表于 2012-7-11 14:45:49 | 显示全部楼层
本帖最后由 秋风 于 2012-7-11 14:50 编辑

但是角度如何校准啊?  我发现各个IC的角度变化率不一样, 这个要怎么 弄啊?
回复 支持 反对

使用道具 举报

发表于 2012-7-11 14:57:22 | 显示全部楼层
本帖最后由 pww999 于 2012-7-11 15:05 编辑

原来这5883 是与指南针原理一样的~
指南针   指向北 反向就是南...
回复 支持 反对

使用道具 举报

发表于 2012-7-16 19:36:28 | 显示全部楼层
为什么我编译的时候会报错,说:
error: 'class TwoWire' has no member named 'send'
C:\Users\Wu Dan\Desktop\arduino-1.0\libraries\HMC5883L\HMC5883L.cpp:129:
error: 'class TwoWire' has no member named 'receive'
回复 支持 反对

使用道具 举报

发表于 2012-7-16 20:40:50 | 显示全部楼层
cosailer 发表于 2012-6-16 16:06
用HMC5883L读数结果不正常,误差很大。就是手动偏转90读的话,读数变化不是90度,有时候是120度,也有的时候 ...

我看你说就试了一下,发现的确是这样的,可能是由于附近磁场干扰原因把,我把传感器远离干扰就好多了,基本准确,但是一接近干扰源角度就会增加或减少十几度。
回复 支持 反对

使用道具 举报

发表于 2012-7-17 12:06:09 | 显示全部楼层
wudan3551 发表于 2012-7-16 19:36
为什么我编译的时候会报错,说:
error: 'class TwoWire' has no member named 'send'
C:\Users\Wu Dan\D ...

嗯我换了0023版本,能调通了,谢谢大侠!
回复 支持 反对

使用道具 举报

发表于 2012-7-19 17:55:48 | 显示全部楼层
wudan3551 发表于 2012-7-16 20:40
我看你说就试了一下,发现的确是这样的,可能是由于附近磁场干扰原因把,我把传感器远离干扰就好多了,基 ...

后来问题我解决了,就是使用前要校准,八字校准法。我做的是小车,所以转两圈就好了,非常方便。下个月有空会把我的小车所有资料都发上来。
回复 支持 反对

使用道具 举报

发表于 2012-8-3 22:42:34 | 显示全部楼层
实际上直接买芯片就好了。。。。。。。模块真心贵。。。。最好的芯片也就是加了mic5219 3.3 这种芯片也就6毛钱。。。。。
回复 支持 反对

使用道具 举报

发表于 2012-8-16 14:14:05 | 显示全部楼层
cosailer 发表于 2012-7-19 17:55
后来问题我解决了,就是使用前要校准,八字校准法。我做的是小车,所以转两圈就好了,非常方便。下个月有 ...

我也是小车,具体怎么八字校正呢?给我讲一讲吧
回复 支持 反对

使用道具 举报

发表于 2012-9-19 22:19:16 | 显示全部楼层
好东西,顶
回复 支持 反对

使用道具 举报

发表于 2012-9-20 10:08:18 | 显示全部楼层
楼主,请问F:\arduino-1.0.1-windows\arduino-1.0.1\arduino-1.0.1\libraries\HMC5883L\HMC5883L.cpp: In member function 'void HMC5883L::Write(int, int)':
F:\arduino-1.0.1-windows\arduino-1.0.1\arduino-1.0.1\libraries\HMC5883L\HMC5883L.cpp:110: error: 'class TwoWire' has no member named 'send'
F:\arduino-1.0.1-windows\arduino-1.0.1\arduino-1.0.1\libraries\HMC5883L\HMC5883L.cpp:111: error: 'class TwoWire' has no member named 'send'
F:\arduino-1.0.1-windows\arduino-1.0.1\arduino-1.0.1\libraries\HMC5883L\HMC5883L.cpp: In member function 'uint8_t* HMC5883L::Read(int, int)':
F:\arduino-1.0.1-windows\arduino-1.0.1\arduino-1.0.1\libraries\HMC5883L\HMC5883L.cpp:118: error: 'class TwoWire' has no member named 'send'
F:\arduino-1.0.1-windows\arduino-1.0.1\arduino-1.0.1\libraries\HMC5883L\HMC5883L.cpp:129: error: 'class TwoWire' has no member named 'receive'是什么情况啊?谢谢
回复 支持 反对

使用道具 举报

发表于 2012-9-20 10:31:57 | 显示全部楼层
用0023调试的也报错sketch_sep20b.cpp:2:23: error: HMC5883L.h: No such file or directory
sketch_sep20b:2: error: 'HMC5883L' does not name a type
sketch_sep20b.cpp: In function 'void setup()':
sketch_sep20b:7: error: 'compass' was not declared in this scope
sketch_sep20b:7: error: 'HMC5883L' was not declared in this scope
sketch_sep20b:9: error: 'Measurement_Continuous' was not declared in this scope
sketch_sep20b.cpp: In function 'void loop()':
sketch_sep20b:13: error: 'MagnetometerRaw' was not declared in this scope
sketch_sep20b:13: error: expected `;' before 'raw'
sketch_sep20b:14: error: 'MagnetometerScaled' was not declared in this scope
sketch_sep20b:14: error: expected `;' before 'scaled'
sketch_sep20b:15: error: 'scaled' was not declared in this scope,请楼主帮忙,谢谢啊
回复 支持 反对

使用道具 举报

发表于 2012-9-20 20:51:46 | 显示全部楼层
zhangzhe0617 发表于 2012-9-20 10:31
用0023调试的也报错sketch_sep20b.cpp:2:23: error: HMC5883L.h: No such file or directory
sketch_sep20 ...

问题解决啦,把库文件放进去后要重新启动0023,还有数值读不对的另一个原因就是接触不良(这个可是害苦了我了,研究了好久代码)给后面的同学提个醒
回复 支持 反对

使用道具 举报

发表于 2012-10-16 21:37:15 | 显示全部楼层
问一下楼主,hmc5883数据不变时什么情况!谢谢
回复 支持 反对

使用道具 举报

发表于 2012-11-7 10:29:04 | 显示全部楼层
Randy 发表于 2012-4-28 11:48
焊接这几个针非常的简单,慢慢来!

使用4mm--6mm的风枪就可以啦
回复 支持 反对

使用道具 举报

发表于 2012-11-15 17:33:21 | 显示全部楼层
我的电子罗盘误差也很大啊,请问楼主这是什么问题啊
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2020-9-24 14:27 , Processed in 0.052025 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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