Genuino Arduino 101英特尔居里自动校准(Axe Ay Az)工艺如何运作?

时间:2017-02-08 16:46:39

标签: arduino accelerometer offset sensor calibration

我正在阅读英特尔为Arduino / Genuino 101制作的源代码文件CurieIMU.cpp#L409。我有一些问题:

  • 自动校准如何在这种特定情况下工作? 这对我来说不是很清楚。
  • 为什么偏移可以假设为线性
  • 是否有参考声明安全地假定1轴校准的线性偏移

CurieIMUgetAccelerometerOffset参考文献称灵敏度为3.9 mg。

鉴于+-2g的敏感度,我必须使用此公式

3,9*19,6/32767

为了转换m/s^2中的值。

以下是由英特尔制作的库代码,用于计算正确的偏移量:

{
    int bmiOffset = offset / 3.9;

    if (bmiOffset < -128) {
        bmiOffset = -128;
    } else if (bmiOffset > 127) {
        bmiOffset = 127;
    }

    if (axis == X_AXIS) {
        setXAccelOffset(bmiOffset);
    } else if (axis == Y_AXIS) {
        setYAccelOffset(bmiOffset);
    } else if (axis == Z_AXIS) {
        setZAccelOffset(bmiOffset);
    }

    setAccelOffsetEnabled(true);
}

0 个答案:

没有答案