2016-04-03 83 views
0

我编码MPU-6050加速度计/陀螺仪,以提供加速度和旋转速度。现在代码的工作原理就是为我提供所有的加速度和角速度。MPU-6050不可能的读数树莓

但结果给我的边缘奇怪的结果。如果我将加速度计指向正z轴指向的位置,则我的高度偏低(低于9.7,但是我可以达到8.9左右)。现在,如果我打开加速度计,使正z轴的读数大于预期(我超过了10.1)。如果我沿重力点它们,所有其他轴也是如此。

低读数一开始并没有警告我,因为我认为加速度计不是完全平直的。但高于预期的读数肯定令人担忧。

这意味着加速度计中性点看起来有点不对(它在一边读取而另一边读取)。我需要校准加速度计吗?这看起来几乎是不可能的,因为永远不会让加速度传感器变得非常直。

请指教。你想看我的代码吗?

回答

0

经过许多小时的研究和摆弄,我发现几乎所有的电子传感器都有偏差。 (偏差是偏移)

现在即使加速度计显然有严重的偏移。所以我最终做的是建立一个由四个螺丝平衡的小测试台。通过运行一个活动的while循环,并从加速度计输出实时数据,我几乎可以将“另外两个”轴归零,这些轴在收集数据的同时并未沿着重心指向。一旦完成,我将程序运行数分钟,对结果取平均值,从而发现偏差。我在每个轴上做了4/5次,发现其余的错误是由于噪音造成的,不可恢复。我必须明确地为所有3轴做这个。

此外,我发现,我零后偏见的读数太高。我不确定我在这里所做的是否正确,但似乎是进步的合理途径。一旦所有的轴都被校准了,它们分别给了我不同的重力读数。我所做的只是添加一个校正因子,以获得我希望在我的高度得到的重力读数。这些修正因子非常小(例如0.966 .....),但在我看来仍然很重要。

希望这能帮助那些因为我而失去的人