termometro LM35 arduino lcd

Termómetro Arduino con pantalla LCD

Esto es un pequeño manual para crear un termómetro con Arduino a partir de un sensor de temperatura LM35. Para ello vamos a necesitar el siguiente material:

  • Arduino UNO
  • Resistencia de 220 Ω
  • Pantalla LCD de 16×2
  • Potenciómetro de 10KΩ
  • Sensor de temperatura LM35

Sensor de temperatura LM35

El sensor de temperatura LM35 tiene el siguiente patillaje.

sensor LM35

A parte del patillaje debemos saber como funciona este sensor. Es un sensor de temperatura que tiene una precisión de 1ºC de entre -55ºC y 155ºC. Básicamente lo que recibimos es una tensión comprendida entre -550mV y 1500mV y para saber la temperatura debemos convertir este voltaje en la temperatura correspondiente. Para ello utilizamos la siguiente formula:

(5.0 * analogRead(PIN_SENSOR) * 100.0) / 1024.0

En el código he simplificado la formula.

Circuito electrónico del sensor de temperatura y la pantalla LCD

He omitido la explicación del conexionado de la pantalla LCD ya que conlleva una explicación especifica. Para más información en el post de Como conectar una pantalla LCD a Arduino UNO.

El circuito de montaje del termómetro es el siguiente:

Esquema termómetro arduino LM35

Código Arduino

Podemos descargar el código aquí, es el siguiente:

Finalmente el resultado del termómetro Arduino es el siguiente:

Termómetro arduinoEncima del Arduino tengo colocada una shield para otra cosa que tengo en proyecto que ya os mostraré cuando la realice pero en este caso seria innecesaria, debéis conectar directamente al Arduino.

 

7 comentarios en “Termómetro Arduino con pantalla LCD”

  1. Hola antonio por casualidad tienes el codigo para el sensor DS18B20?, me cuesta programarlo. Un saludos (patricio.sanmartin1996@gmail.com)

  2. Dejo el código para el sensor DS18B20, el diagrama es básicamente lo mismo solo que lleva una resistencia de 4.7KΩ entre el positivo y el cable de datos. Al ser un sensor digital el cable de datos se conecta a un pin digital de nuestra placa.


    /** Termometro usando un sensor DS18B20 que muestra por un LCD de 16x2 la temperatura**/

    #include
    #include
    #include
    #define Pin 9

    //Declarar LCD y pines

    LiquidCrystal lcd(7,6,5,4,3,2);
    OneWire ourWire(Pin);
    DallasTemperature sensors(&ourWire);

    void setup() {
    delay(1000);
    //Iniciamos el sensor
    sensors.begin();
    //Definir las dimensiones del LCD (16x2) y los caracteres que deben salir en las lineas
    lcd.begin(16,2);
    lcd.print("Temperatura");
    lcd.setCursor(0,1);
    lcd.print("C=");
    }

    void loop() {
    sensors.requestTemperatures();
    float temp= sensors.getTempCByIndex(0);
    //Sacamos por pantalla los grados
    lcd.setCursor(2,1);
    lcd.print(temp);
    //Lo realizamos cada segundo
    delay(1000);
    }

    Notese que debemos descargar las librerías DallasTemperature y OneWire.

Deja un comentario