2015-05-19 5 views
0

Привет Я новичок в GUI MatLabLM35 уравнение температуры sesnor для Arduino UNO, который подключен к MatLab GUI

Я пытаюсь создать оси построить температуру, которая исходит от LM35 через Arduino UNO в MatLab

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

ответ

1

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

  1. опорного напряжения
  2. ширина бит АЦП

в этом случае я полагаю, что вы используете 5V и 10-битный режим, поэтому

Vmeasured = NumberFromADC * 5V/1024 

Теперь, в соответствии с данными LM35 datashee т выходного напряжение

Vout = 10mV/°C * T 

инвертирование уравнения:

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

(конечно, выраженные в ° С)

Кстати я предлагаю вам изменить опорное напряжение к внутренним один, так как 5V не являются стабильными и достаточно точными, чтобы иметь хорошую измерительную систему. Больше информации here.

И, конечно, если вы измените опорное напряжение вам нужно будет изменить уравнение, так как сама ссылка не будет 5V больше.

+0

спасибо , но мой вопрос был о ADC и readVoltage() команде, которая на стороне Matlab я думаю, что это дает мне входное напряжение напрямую или что? –

+0

О, извините. Когда я читал Matlab, я думал, что вы используете только для отображения, а не для программирования Arduino. Виноват. Во всяком случае ... В Matlab у вас просто есть 'readVoltage', который дает вам преобразованное напряжение. В arduino IDE, с другой стороны, у вас есть «analogRead», который дает вам чтение ADC (то есть 0-1023). [Здесь] (http://it.mathworks.com/help/supportpkg/arduinoio/ref/readvoltage.html) вы можете найти документацию о функции 'readVoltage'. – frarugi87