与MATLAB GUI相连的Arduino Uno的LM35 Temp Sesnor方程



嗨,我是新来的matlab gui

我试图创建一个轴绘制从LM35到Arduino Uno到Matlab

的温度

我使用以下代码读取模拟电压,readVoltage(a,0)我得到的值约为0.28-0.30,但我不知道这是什么含义是真正的temperature/100还是什么?我知道当我在Arduino侧使用analogRead()时,Arduino内部的ADC将输入电压转换为另一个范围(0-1023)。它在这里也有效吗?当我应该假设它是0-1023或直接获取阅读时,我对此感到困惑。

arduino adc读取电压并根据

输出数字
  1. 参考电压
  2. ADC的位宽度

在这种情况下,我想您正在使用5V参考和10位模式,所以

Vmeasured = NumberFromADC * 5V / 1024

现在,根据LM35数据表,输出电压为

Vout = 10mV/°C * T

反转公式:

T = Vout / (10mV/°C) = NumberFromADC * 5V / 1024 / (10mV/°C) = NumberFromADC * 500 / 1024

(当然在°C表示)

顺便说一句,我建议您将电压引用更改为内部电压,因为5V不稳定且精确,以具有良好的测量系统。更多信息在这里。

,当然,如果您更改参考电压,则需要更改方程式,因为参考本身将不再是5V。

相关内容

  • 没有找到相关文章

最新更新