Answers:
您希望信号范围为0V至5V。我们不是都:-)吗?让我们采用一种不同的方法,看看能从哪里得到帮助。
起点:最便宜,最简单的解决方案。
那将是一个串联电阻来创建一个分压器。那是绝对的最小值。我注意到人们没有给电阻多加考虑,只是选择一个很好的舍入值,如10k。但是我发现有一个最佳值。
该曲线示出了最小和最大读数之间的电压差(9K和20K RESP。)作为串联电阻(在k的函数)。看,它确实具有最大值。如果您还记得那很容易找到
所不同的 -具有极值
解决给
美女!
因此,在本例中,串联电阻为13.42k,您可以在图表上进行检查。将电阻放置在0V至+ 5V之间,这将使我们的输出范围为[2V,3V]。这是使用1个电阻器(*)可获得的最大范围。
够了吗 Arduino具有10位ADC,因此该范围将为您提供200个离散电平的范围。对于DIY传感器,应该可以提供足够的精度。因此,不需要其他组件如运算放大器。
(*)可接受的答案给出了1.9V范围,但是方程式错误。使用1个电阻器和仅+ 5V的电源无法获得高于1V的范围。
您需要一个负电压才能使电阻分压器达到0V。我假设您有+ 5V和-5V可用。
将可变电阻器 + 5V和GND之间。现在,您需要找到一个介于GND和-5V之间的下拉电阻的值。现在很简单;当可变电阻为20k,您需要0V输出,因此下拉电阻也必须为20k因为整个过程都是对称的。
接下来,我们必须找出为9k时分压器的输出电压。我们注意到流经的电流与流经下拉电阻的电流相同,因此 Ω Ω - [R X Ω - [R X
计算得出的结果为。现在剩下要做的只是将0V..1.9V缩放到0V..5V。为此,我们使用RRIO(轨至轨I / O)运算放大器作为同相放大器
如果您选择和,则对于为20k ..9k您将获得0V..5V的输出电压范围。- [R 2 = 47 ķ Ω - [R X Ω Ω
我认为最简单的方法是使用一个分压器,该分压器在9k时为您提供5V电压,并随着电阻的增加而降低。您可以在此分压器计算器中使用各种电阻器组合。但是,这将是线性发展。