[:es]Objetivo:
Medir temperatura y mostrarla en un lcd, usando un LM35 y un Arduino Uno
Material:
Sensor de temperatura LM35
Arduino uno
LCD 16×2 o LCD Shield para arduino
Desarrollo:
Diagrama de conexión:

Codigo:
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
// pin 4 de la LCD (RS)---> pin 8 del arduino (salida digital, PWM)
// pin 5 de la LCD (RW) --> GND de la breadboard (fila -)
// pin 6 de la LCD (E)--> pin 9 de la placa Arduino UNO (PWM)
// pin 11 de la LCD (D4)--> pin 4 de la placa Arduino UNO (PWM)
// pin 12 de la LCD (D5)--> pin 5 de la placa Arduino UNO (PWM)
// pin 13 de la LCD (D6)--> pin 6 de la placa Arduino UNO (PWM)
// pin 14 de la LCD (D7)--> pin 7 de la placa Arduino UNO (PWM)
int analog_pin = A1;
float tempC;
float tempF;
int tempdigital;
void setup()
{
lcd.begin(16, 2);
}
void loop()
{
tempdigital = analogRead(analog_pin); // lectura digital del pin analogico ADC
tempC = (tempdigital * 5.0)*100.0/ 1024.0; //
//tempF = tempC * 9.0 / 5.0 + 32.0; // temperatura en grados F
//
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Temp");
lcd.setCursor(6, 0);
lcd.print(tempC);
delay(100);
}
Notas:
Se recomienda no alimentar el Sensor con los 5 Volts de arduino ya mete ruido.
Se recomienda usar un regulador de voltaje de 5 V para alimentar el sensor.
Se tienen que aislar bien las terminales del sensor si se quiere medir temperatura en agua.
Preguntas:
¿Como podrías evitar el ruido en las mediciones de temperatura?
¿Cuales son los rango de temperatura que puedes medir con el LM35?
¿Cual es la ecuación que relación temperatura con el voltaje que sale del sensor LM35 ?
¿Menciona una ventaja y desventaja de este tipo de sensor?
[:en]Objetivo:
Medir temperatura y mostrarla en un lcd, usando un LM35 y un Arduino Uno
Material:
LM35
Arduino uno
Desarrollo:
Diagrama de conexión:

Codigo:
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11 , 12);
// pin 4 de la LCD (RS)---> pin 7 del arduino (salida digital, PWM)
// pin 5 de la LCD (RW) --> GND de la breadboard (fila -)
// pin 6 de la LCD (E)--> pin 8 de la placa Arduino UNO (PWM)
// pin 11 de la LCD (D4)--> pin 9 de la placa Arduino UNO (PWM)
// pin 12 de la LCD (D5)--> pin 10 de la placa Arduino UNO (PWM)
// pin 13 de la LCD (D6)--> pin 11 de la placa Arduino UNO (PWM)
// pin 14 de la LCD (D7)--> pin 12 de la placa Arduino UNO (PWM)
int analog_pin = A0; // definimos el pin 0 que analogico como anolog_pin
float temperatura; // definimos variable temperatura como decimal
int tempdigital;
void setup () {
lcd.begin(16, 2); // se habilita el lcd
Serial.begin(9600); // habilitamos la transmisción serial
}
void loop() {
tempdigital = analogRead(analog_pin); // leemos lo que entrada en el pin y lo convertimos a digital
temperatura = (5.0*tempdigital*100)/1024.0; // calculamos la temperatura a partir de la lectura digital
lcd.setCursor(0,0); // se cola el sensor en el renglon cero y columna cero
lcd.print("temperatura");
lcd.setCursor(0,1); // en la segunda linea se escribe el valor de la temperatura
lcd.write(temperatura);
Serial.println(temperatura); // enviamos el valor de temperatura via serial y damos salto de linea y retorno de carro
delay(10); // pausa de 10 ms ( milisegundos) delay(ms);
}
[:]



