
1、用手机指南针确定正北方向,打开磁力计,在xy数值是否在某一范围跳动,稳定之后水平旋转90度,重复稳定操作,则此位置手机的前摄所指即为Y,前一步为X,数值上方为Z。
2、地球本身具有磁性,所以地球和近地之间存在着磁场,叫做地磁场。地磁场的强度和方向随地点(甚至随时间)而异。地磁场的北极,南极分别在地理南极,北极附近,批次并不重合,而且两者之间的偏差随时间不断在缓慢变化。
首先将磁铁放置在远离手机的位置,然后拿着手机在空中做"倒8"字运动(就是这个运动轨迹:)。这样做的目的就是标准化手机的磁感应器,因为磁感应装置很容易受到磁场的干扰变得不精准。
将手机放置平稳,然后记录当前的磁场强度,作为"原始磁场"(这个磁场必须精准可以取多次的平均值)。Android开发中需要用到SensorEventListener类。
然后将磁体放在距离手机20cm左右的距离,且磁铁位置在手机所在的水平线之上。之所以这么做是因为磁场强度和距离的k次幂成反比,如果太近会影响手机的磁感应器,太远磁场衰减的又太快。位于手机所在的水平线之上,是因为之前说过在xy平面上,上一篇所推的公式是不可用的。 记录当前的磁场作为"中心磁场", "中心磁场"减去"原始磁场"就是磁体在手机的磁感应器位置产生的磁场强度。然后根据上一篇的公式就可