如何校准指南针

Posted

技术标签:

【中文标题】如何校准指南针【英文标题】:How to uncalibrate the compass 【发布时间】:2018-08-31 09:41:33 【问题描述】:

我正在构建一个使用磁罗盘的 android 应用(目前为 8 版)。在应用程序中,我添加了一项检查以确认指南针当前提供准确的结果,如果不是,则会提示用户执行“8 字形”校准序列。 为了正确测试这一点,我想取消校准指南针,以便我可以检查校准代码是否实际工作正常。有没有办法可靠地做到这一点?

与compass calibration 相关,尽管它指的是一个早已被取代的 Android 版本。

【问题讨论】:

compass calibration的可能重复 【参考方案1】:

如果您允许设备静止不动一段时间(您的应用不读取指南针),则可能会这样做。 你也可以把一些磁性的东西靠近它,把磁力计扔掉。 我对“校准”的理解如下:硬件(或低级驱动程序)知道地球磁场是均匀的,因此无论设备方向如何,产生的磁矢量的长度都应该是恒定的。如果有第二个磁场设备一起旋转,这两个磁场的总和将是恒定的;他们检测到这一点,并通过分析和场是如何扭曲的,从数学上减去第二个场。在图 8 中挥动提供了足够的不同方向的样本数据来实现这一点。

【讨论】:

以上是关于如何校准指南针的主要内容,如果未能解决你的问题,请参考以下文章

指南针应用程序等自定义指南针校准视图

如何查自己所在位置的经纬度

在 Arduino 中校准 Adafruit LSM303

有没有一种简单的方法可以在 phonegap 中获得手机的指南针航向精度?

ArduPilot开发指南1.2.5 完整的参数列表 - BARO参数

ArduPilot开发指南1.2.5 完整的参数列表 - BARO参数