a. Increase the distance between HMC5883 and the adjacent components. If possible, keep at least 2~3 mm away.
b. Route pin 2 VDD trace away from the sensor (>1mm away).
c. Increase pin 10 to C1 cap trace width (~0.3 mm).
d. Increase pin 8 and 12 to C2 trace width (~0.3 mm).
a. Re-route traces for VDDIO and Set/Reset to go around the sensor. There should be no current carrying trace directly under the sensor in any layer.
b. If this is power or ground plane, remove copper area directly under the sensor. This is to reduce any possible current generated magnetic noise.
c. If possible, re-route traces so that there is no via under directly the sensor. This is to reduce any possible current generated magnetic noise.
If this is power or ground plane, remove copper area directly under the sensor. This is to reduce any possible current generated magnetic noise.
Re-route traces to go around the sensor. Same reason as9a.
Same as layer 5~8.
Remove components and traces directly under the sensor. There should be no ferrous material and current carrying traces directly under the sensor in any layer.
d.在旋转过程中对于每一所收集的数据点, 查找它们与 Rmean 的差和单独的弧,并命名为Delta_1, Delta_2, …., Delta_n, etc.
Delta_1 = R1 – Rmean
Delta_2 = R2 – Rmean
……..
Delta_n= Rn – Rmean
f. 使用校准的数据,重复相同的步骤(a 到 e) 。
g.对比两组的结果, 一个来自于校准旋转和另个来自于校准后的旋转.如果新的(校准后) Xoffset, Yoffset, 和 RMS value 接近于0,那么校准已经可以了,如果不是,则校准不成功。
2.如果校准的目的是进行“三维空间”,如:包括三轴,那么务必确保 Z轴能够出现变化。如,从小到大。然而,包括水平(水平的)方向,一个必须要么关于旋转平板 X (或 Y) 轴或平板 90 度 (以便 z 轴是水平)和水平旋转,如果不想用手进行旋转(因为它比较大)。那么可以拿着它找到合适的位置再沿着小圆圈转自己的身体。因此,可按照下述建议进行:
a.水平拿着平板同时转动身体(以收集 X 和Y的数据)。
b.转动平板90度(因此 Z轴水平)人再沿着圈转一圈以收集 Z轴数据。
a. 温度变化,对各向异性磁阻传感器(AMR传感器)产生的影响是“接近线性化”,简单的解决方法就是在温度差异的基础上在所有的磁场读取结果上应用一个综合的比例因子。这样内部的置位/复位一般将内部偏置减少了近 4μG。考虑到 HMC5883L 的杂音底层值(noise floor)比零偏漂移要高得多,因此零偏漂移可以忽略不计,因为它只能在原始传感器上测量。
b. 借助Self Test自测的数据进行补偿。通过把 Self Test 的输出数据与已知的工作温度下的数据比较,可以定期地用Self Test 来确定比例因子。例如,如果 Self Test 输出在常温下是715,在当前的温度下是 730,那么比例因子(715/730)可应用于所有当前磁场数据结果。用这种方法时就无须使用温度传感器。
c. 借用其他传感器自带的温度传感器进行补偿。如果设备里的其他传感器,如加速度,陀螺仪等需要温度补偿,那么在设备放置在多种温度值的情况下同时收集磁场传感器数据是有益的。用这种方法会得到更加精确的温度补偿。