Ola,
Vou começar a publicar experimentos que eu faço com o Arduino UNO/Nano e Sensores, etc. Hoje fiz um termometro utilizando o LM35.
O LM35 é um sensor de temperatura de precisão, o mesmo varia 10mV por grau Celsius. Os pinos do mesmo podem ser visualizados na imagem.

O pino VCC você conecta no 5V do Arduino, o GND no GND do Arduino e o pino do meio você conecta em um pino Analogico, no meu caso utilizei o A0.
O mesmo não necessita de nenhum resistor entre o Arduino e o Sensor então basta fazer uma conexão direta. O ADC do Arduino UNO possui uma precisão de 10 bits, ou seja nesse caso 5V / 1024 que é aproximadamente 0.0049 será a precisão do mesmo. Para lermos a temperatura em Celsius fazemos o seguinte:
Temperatura = (pino * 0.0049)*100
Mas por que 100? Pino * 0.0049 vai nos dar a tensão na porta analogica em Volts. Se multiplicarmos por 1000 teremos millivolts, como o sensor varia 10mV/C dividimos os milivolts por 10. O que nos daria a temperatura, multiplicar por 1000 e dividir por 10 é o mesmo que multiplicar por 100. Entendeu? [Adicionado 12/12]
Para termos em farenheit temos que fazer a conversão que é:
TemperaturaF = (temperatura * 1.8) + 32.
O código utilizado no Arduino:
[code lang="c"]
int analogPin = 0;
int readValue = 0;
float temperature = 0;
float temperatureF = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
readValue = analogRead(analogPin);
//Serial.println(readValue);
temperature = (readValue * 0.0049);
temperature = temperature * 100;
temperatureF = (temperature * 1.8) + 32;
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.print("C ");
Serial.print(temperatureF);
Serial.println("F");
delay(1000);
}
[/code]
Espero que seja util.
Matheus
Referencias:
LM35 Datasheet
Arduino analog Read
Be First to Comment