LM35 временное уравнение Сеснора для Arduino Uno, который подключен к Matlab GUI

Привет, я новичок в Matlab GUI

Я пытаюсь создать график зависимости осей от LM35 через Arduino UNO и Matlab.

Я использовал следующий код, чтобы прочитать аналоговое напряжение, readVoltage(a,0)Я получаю значения около 0,28 - 0,30, но я не знаю точно, что именно эти значения означают, действительно ли это temperature/100 или что? Я знаю, что АЦП внутри Arduino преобразует входное напряжение в другой диапазон (0-1023), когда я использую analogRead() на стороне Arduino. Здесь тоже работает или нет? Я запутался в этой вещи, когда должен был предположить, что это 0-1023, или сразу получить показания.

1 ответ

АЦП Arduino считывает напряжение и выводит число в соответствии с

  1. опорное напряжение
  2. разрядность АЦП

в этом случае, я полагаю, что вы используете ссылку 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 больше.

Другие вопросы по тегам