Introduction: Temperatura Con Arduino UNO Y LCD

En este pequeño instructivo la idea es mostrar en español como hacer para registrar la temperatura ambiente usando un sensor LM35 y mostrarla en un display LCD de 16x2.

Step 1: Partes Del Proyecto

Las partes usadas para el proyecto son:

- Arduino Uno

- Display LCD de 16x2 (con pines soldados)

- Protoboard

- Potenciómetro de 10K Ohm

- Sensor de temperatura LM35

- Cables de protoboard macho macho

Step 2: Hacer Las Conexiones

Utilizando el breadboard y los cables, conectar el Arduino Uno al LCD y el sensor de acuerdo al siguiente esquema:

Sensor LM35

VCC a 5v de Arduino Uno

GND a GND de Arduino Uno

Salida Analógica a pin A5 del Arduino Uno

LCD

VSS -> GND de Arduino Uno

VDD -> 5v de Arduino Uno

A -> 5v de Arduino Uno

K -> GND de Arduino Uno

* Una vez conectados estos cuatro pines del LCD, encendiendo el Arduino deberia encenderse la pantalla.

VO -> Pin central del potenciometro

* Conectando el potenciómetro y encendiendo el Arduino, girando el potenciometro deberian verse unos cuadrados que contrastan con el fondo del display (en mi caso display azul, los cuadrados son blancos)

RS -> pin 7 del Arduino Uno

RW -> GND de Arduino Uno

E-> pin 8 del Arduino Uno

D4-> pin 9 del Arduino Uno

D5-> pin 10 del Arduino Uno

D6-> pin 11 del Arduino Uno

D7-> pin 12 del Arduino Uno

A -> 5v de Arduino Uno

K -> GND de Arduino Uno

Potenciómetro

Primer Pin -> GND de Arduino Uno

Pin Central -> VO del display LCD

Tercer Pin -> 5v Arduino Uno

Step 3: Cargar Programa En El Arduino

A continuación el código a cargar en el Arduino para registrar la temperatura, y mostrarla al mismo tiempo en el monitor serial y en el display LCD. Para utilizar el LCD incluimos la librería LiquidCrystal que contiene las funciones necesarias para utilizar el display.

// Medir temperatura con LM35 y mostrar en el display LCD

#include LiquidCrystal lcd(7, 8, 9, 10, 11 , 12);

const int sensorPin= A5;

void setup() {

Serial.begin(9600);

lcd.begin(16,2);

lcd.setCursor(0,0);

lcd.print("TEMPERATURA");

}

void loop() {

int value = analogRead(sensorPin);

float millivolts = (value / 1023.0) * 5000;

float celsius = millivolts / 10;

lcd.setCursor(0,1);

Serial.print(celsius);

Serial.println(" C");

lcd.print(celsius);

lcd.print(" C");

delay(5000);

}



Una vez cargado el sketck el display debería empezar a mostrar la temperatura, actualizada a intervalos de 5 segundos. Adicionalmente las lecturas pueden visualizarse en el Monitor Serial.

Si no se visualiza nada en el display, mover el potenciometro hasta que se vean los caracteres. En caso de seguir sin ver nada, verificar todas las conexiones.