我正在编写MPU-6050加速度计/陀螺仪,为我提供加速度和旋转速度。现在代码可以为我提供所有加速度和角速度。
但结果给了我一些奇怪的结果。如果我将加速度计指向正z轴指向上方,我的高度略低于预期读数(应该在9.7左右,但我得到8.9左右)。现在,如果我转动加速度计使正z轴I大于预期读数(我超过10.1)。如果我沿着重力指向它们,那么对于所有其他轴也是如此。
低读数一开始并没有让我惊慌,因为我认为加速度计没有完全平直。但高于预期的读数肯定令人担忧。
这意味着加速度计中性点似乎有点不对(它在一侧读取而在另一侧读取)。我需要校准加速度计吗?这似乎几乎是不可能的因为人们永远不会让加速度计完全变直。
请指教。你想看我的代码吗?
答案 0 :(得分:0)
经过多个小时的研究和摆弄后,我发现几乎所有的电子传感器都存在偏差。 (偏差是抵消)
现在连加速度计都显然有严重的偏差。所以我最终要做的是建造一个由四个螺丝平衡的小型试验台。通过运行一个活动的while循环,并从加速度计输出实时数据,我几乎可以将“另外两个”轴几乎归零,这些轴在收集数据的同时并未指向重力。一旦水平,我运行程序几分钟,平均结果,从而找到偏见。我每轴做了4/5次,发现剩下的错误是由噪音造成的,不可恢复。我显然必须为所有3轴做这个。
此外,我发现在我将偏差归零之后,读数太高了。我不确定我在这里所做的是否正确但似乎是合理的进步方式。一旦校准了所有3轴的所有轴,它们分别给出了不同的重力读数。我所做的只是添加一个校正因子来获得我期望在我的高度得到的重力读数。这些校正因子非常小(例如0.966 .....),但在我看来仍然很重要。
希望这可以帮助任何因我而迷失的人