我是Arduino的新手,我正在尝试转换加速度计的x,y和z引脚给出的电压。
我真正的问题是我不知道如何计算并将电压转换为度数。
它的工作方式非常简单:
让我们说当加速度计是平坦的水平时,我得到2V的电压,当它在一侧是平的时,我得到1V。如果它在另一侧是平的,我得到3V。 (这些数字仅供参考)。
现在我知道当电压为2V时,加速度计为0度,如果达到2.5V,则为45度,如果达到1.5V,则为-45度。
现在我明白了如何通过非常简单的逻辑来计算它。但无法在纸面上看出来。
转换它的计算是什么?
聚苯乙烯。我真的不需要有人为我编程整个事情,这不是我的问题,我只是问我们如何实际计算它。
答案 0 :(得分:2)
假设较高的电压(+90度)为b
且较低的电压为a
( - 90度)。因此,在电压范围(b-a)
内平均分配180度。因此每个单位电压等于180/(b-a)
度。电压点(b-a)/2
也是观察到0度的点。因此,为了计算所提供的电压的程度x
,我们需要找出与电压相对应的电压点到电压点的距离,并乘以每单位电压的度数。因此,相同的等式如下:
(x-((b-a)/2))*180/(b-a)
您可以将值b = 3V,a = 1V和x = 1.5 / 2.5V替换为获得问题中提到的值。
答案 1 :(得分:1)
所以2V => 0度,1V => -90,3V => 90
度= 90 *(V - 2);
请记住,在对值使用任何trig函数之前,您可能需要将度数转换为弧度。
以上答案纯粹基于您问题的信息。但是,我想你可能想知道更多关于Arduino中的加速度计的信息,特别是如果你想要做一些事情,比如计算俯仰,滚转,偏航等。
这个网站似乎有关于Arduino加速度计的有用信息:http://forum.arduino.cc/index.php?topic=58048.0