查看: 3884|回复: 1

地磁传感器应用篇

[复制链接]

该用户从未签到

发表于 2017-2-3 11:23:10 | 显示全部楼层 |阅读模式
分享到:
1.png

怎样读取地磁传感器的值和方向?
首先,确认地磁传感器的值如何变化,慢慢移动实际配置于Arduino的地磁传感器,并试着确认其值。上次使用的样本程序通过串行监视器确认时,因小数点变动而不便观察,所以改为了用整数型表示以用于确认。在动画中,预先通过使用了GPS或陀螺罗盘的方向检测精度较高的应用查找正确的北(正北)方,并记载于纸上。我们来看看在地磁传感器与该方向一致时,程序侧取得的XYZ轴的各值。

BM1422GMV的显示程序
2.png
看动画即可明白,在各传感器的最大值的显示位置,一边对Arduino的串行监视器中显示的数字进行确认,一边寻找最大值。

3.png
图1 地磁传感器的状态

4.png
图2 地磁気センサのX軸の最大値

动画中X轴的值成为最大值的位置在此角度。奇怪,正如图1所示,由于传感器的值表示地磁强度,因此本来指向正北时的值就应该是最大值…?搞不明白了。 这是怎么回事呢?试着慢慢移动传感器后,发现Y轴也大致与X轴在相同方向上停止了。 正在进行实验的该房屋内或许存在着某种与地球不同的磁场…。
查找Z轴表示最大值的部位时,发现其如照片1所示了。几乎颠倒。果真是从地面释放出了某种神秘的地磁吗…汗。

5.png
照片1 Z轴为最大值时的状态


变得有些令人害怕了,关于地磁传感器(看似)设法指示最大值的传感器的数值之谜,我决定通过学习地磁传感器的相关知识来解开这一谜团。

地磁传感器的二轴和三轴传感器的不同

首先,地磁传感器大致分为两类,即可使用二轴(XY)和三轴(XYZ)进行检测的两种类型。二轴型为XY轴,可简单地在水平状态下检测方向,但在倾斜状态等时不可正常检测方向。三轴型与XY轴相结合,增加了倾斜的Z轴,因此可根据Z轴的倾斜程度补正XY轴的值,从而检测出方向。
本次传感器评估套件中的传感器为三轴传感器,因此可处理比二轴传感器更详细的数据,嗯哼。


2.扰乱地磁传感器的结构~传感器的值的倾角和偏角是什么呢?
接下来我们深入研究一下传感器的最大值之谜。

首先,我们来看看究竟什么是地磁!?

的确,虽说我会使用地磁传感器,但完全不了解"地磁"本身是什么(羞愧…)。
是地球发出的磁力?或是磁场吗?我只有这样的模糊的概念…。

什么是地磁?
这里,我们将学习地磁本身及地磁传感器的结构。简单来说,地磁传感器是指可感应磁铁发出的磁力的传感器。如图4所示,地球好比一个巨大的磁铁,其周围环绕着磁力。地磁传感器如同指南针,是可以检测地磁的传感器。

6.png
图4 地球是一个巨大的磁铁

这里我们学习一点科学知识,实际上手持指南针指向北极点或南极点时,若保持方向不变,则无论何时都不可能到达北极点或南极点。这是地球结构暗藏的玄机。在国土地理院和气象厅的网站上刊登了浅显易懂的解说,地磁略偏离了地球中心。因受地球内部活动等的影响而发生了变化,根据2015年的数据,大约向西偏离了7度(后面详细解说)。真是不可思议呀。并且,以数万年~数十万年为单位,地磁可能发生反转。若是这样,即使使用地磁传感器制造出具有未来可永久保持耐久性的元器件,数万年后,也会因地球自身的轴偏离而必须进行补正…
了解地磁 – 国土地理院(日文网页)
http://vldb.gsi.go.jp/sokuchi/geomag/menu_01/
地球电磁的Q&A – 气象厅(日文网页)
http://www.kakioka-jma.go.jp/knowledge/qanda.html

7.png
图5 地球的磁铁与北极点略有偏离

另外,此处还可使用国家地理院的电子国土Web(日文网页)查看偏离程度。

8.png
图6 东京的磁北线


东京站刚好偏离了7.0°!
9.png
图7 宗谷岬的磁北线

哎呀,日本最北端的稚内并非7.0°,而是9.8°????
那么,南部又如何呢…

10.png
图8 那霸市的磁北线

冲绳那霸市并非7.0°,而是4.4°
真搞不明白,这到底是怎么回事呀…

这样,图正中央标记的红色数值表示偏离程度,东京站为7度,而日本最北端宗谷岬为9.8度,冲绳那霸市为4.4度,可以发现各值之间存在较大差异。
然而,这些偏离数值仅仅是告诉了我们偏离因地点的不同而异的现实。谜团更深了…。

倾角和偏角的存在
实际上地球地磁的最大值和正北方的偏离角度被称为"倾角"和"偏角"。地磁的偏离量一般记载为7度,但实际上该偏离量因计测位置的不同而异。该偏离量被称为偏角。就日本国内而言,大致为越向北方偏离越大,越向南方偏离越小。另外,将东西南北视为左右(XY轴)时,上下水平(Z轴)也会偏离。其被称为倾角。倾角即为图4、图5所示的与地磁流所形成的角度,就东京而言,以陷入地面的形式倾斜了约49度。因此刚才Z轴近乎颠倒成为最大值正是与此相关的吧?
由此可见,表示正确方向时,由于该倾角和偏角密切相关,因此使用GPS在地球上哪个位置补正偏离是非常难把握的事情…。理清思路后,发现使用地磁传感器等时,若不能明确北是指正北还是磁北,则欲取得的数值就会出现错误。
  • 正北 ・・・ 地球的最北方
  • 磁北 ・・・ 电子磁铁或地磁传感器所示的北的位置(地磁最大的方向)


3.查找磁力传感器的最小值和最大值并检测方向
下面,我们实际使用磁力传感器,通过Arduino来实现方向的检测。
包括地磁传感器在内,电子零件传感器在通常状态下电阻值会发生变化,因此通过在Arduino侧计测基于该电阻变化的电压值,读出了传感器的值。我们试着来查找本次使用的地磁传感器的XYZ轴的最小值和最大值。查找的值有水平时和与水平无关时的两种。由于该数值因实验环境而异,因此实验时请将其与传感器实际相连。
11.png
本次将计算水平时的方向。下图9表示利用从串行监视器复制地磁传感器旋转一周后的值做成的XY轴的分布图。形成了一个漂亮的圆形。其为水平时,可通过使用反正切函数的公式计算角度。通过将以中点为轴、欲检测角度的点应用到公式中,计算角度。在程序侧,预先确认并设定中点和数值的范围后,需要将其写入Arduino。

12.png
图9 将地磁传感器的值绘制成图表


下面,我们尝试使用该公式通过Arduino进行实际安装!

4.尝试与步进电机组合制作罗盘
本次,我们尝试组合地磁传感器与步进电机制作罗盘。将Arduino和地磁传感器放置于圆木板上,通过使用步进电机旋转底座,尝试按照总是指向北方的规格进行实际安装。使步进电机颠倒,将装载Arduino等的底座置于其上。

13.png
照片2 成为基座的步进电机
14.png
照片3 装在底座上的Arduino、地磁传感器等元件

最初考虑采用一台步进电机的底座,但实际安装时检测出步进电机的磁力干扰地磁传感器的数值,因此拧入螺栓抬高至消除干扰的高度。

15.png
照片4 装有所有元件及设备的状态,使用螺栓抬高地磁传感器

使用程序检测角度,达到磁北时停止。若步进电机太快则可能超过磁北,因此在rd变量的if条件句内留有一定的余量。
19.png
18.png
19.png

这样,总是指向磁北的罗盘制作完成!为了使其更准确地指向正北方,要遵守先对偏角、倾角等的值进行调整的流程。

5.总结
本次为了帮助您理解地磁传感器而介绍了一些理科、数学等相关知识!另外,虽然仅通过Arduino制作罗盘只能说是车轮的再造,但基于这一基本动作,尝试思考相关应用也是件乐事。下次我将进一步使用传感器评估套件分享相关知识。
文章转自罗姆官网,原文链接:http://www.rohm.com.cn/web/china ... /device-plus/entry2

现在该套件爱板提供免费申请试用啦!
ROHM Sensor shield-EVK-001传感器套件免费申请
https://www.cirmall.com/bbs/thread-63300-1-1.html

回复

使用道具 举报

  • TA的每日心情
    开心
    2019-11-19 11:07
  • 签到天数: 226 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2017-2-3 13:38:46 | 显示全部楼层
    很好的实验,非常有意义。不过这种传感器的灵明度也就仅仅能够作为指北——像指南针的用途,而要想拿它来做地磁导航,灵明度太低了。大约是这样的:大约是这样的,地磁探测灵敏度达到10-exp5高斯相当于10个纳特时的定位在数100米数量级,1个纳特可以达到数10米数量级,只有达到0.1纳特的灵明度才能达到低于10米的定位精度。此外,地磁北与地球北不是一回事,需要较为复杂的计算,当然仅仅是指北计算要简单的多了。很有意义,支持支持!
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-20 15:16 , Processed in 0.130754 second(s), 21 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.