Construye un Termómetro LCD con Arduino y Sensor LM35/36
Componentes y materiales
| Componente | Cantidad | |
|---|---|---|
| Arduino UNO | 1 | |
| Sensor de temperatura LM35 o LM36 | 1 | Analógico |
| Pantalla LCD 16x2 (blanco sobre azul) | 1 | Estándar Adafruit |
| Cables jumper (genéricos) | 1 set | ~19 unidades |
| Protoboard (breadboard) | 1 | |
| Potenciómetro 10kΩ | 1 | Para contraste LCD (vale 50kΩ también) |
Sobre el proyecto

¡Hola a todos! Voy a mostrar cómo hacer un termómetro LCD con Arduino UNO y sensor analógico de temperatura LM35/36, usando jumpers y protoboard.
Este proyecto es ideal para principiantes con Arduino: no requiere conocimientos especiales de ingeniería ni programación y se monta en menos de 10 minutos (una vez tienes las piezas).
Paso 1: Reunir las piezas




Lista de materiales:
- 1x Placa Arduino UNO
- 1x Protoboard
- 1x Pantalla LCD 16x2
- 1x Sensor analógico de temperatura LM35 o LM36
- 1x Potenciómetro 10kΩ (para brillo/contraste del display)
- 19x Jumpers (para conexiones)
Todos vienen en el Kit de Inicio Oficial de Arduino (web de Arduino). También por separado en Adafruit, SparkFun, Aliexpress, Banggood, etc.
*Si no tienes potenciómetro de 10k, uno de 50k funciona igual.
Paso 2: Montar el termómetro

Siguiendo el esquema Fritzing:
- Conectar LCD en protoboard y cablear a Arduino con jumpers.
- Conectar potenciómetro: patas laterales a GND y +5V, central a pin de contraste del LCD (pin 3 / VO).
- Conectar sensor LM35/36: pata izquierda a +5V, derecha a GND, central a pin analógico A0 del Arduino.
¡Cuidado! Si lo conectas al revés, el sensor se calienta a 280°C+ (540°F) y puede dañarse.
Paso 3: Programar el Arduino

Sube uno de los dos códigos abajo usando el IDE de Arduino (descarga gratis en arduino.cc).
Si no ves nada en el LCD o ves rectángulos, gira el potenciómetro hasta que las letras se vean claras. ¡Ya tienes tu termómetro! Mide temperatura ambiente en casa o exterior.
Código 1 (por Gaige Kerns) - Funciona con LM35 y LM36:
#include <LiquidCrystal.h>
// Inicializar librería con pines de interfaz (RS, E, D4, D5, D6, D7)
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int sensorPin = 0; // A0
int tempC, tempF;
void setup() {
lcd.begin(16, 2); // 16 columnas, 2 filas
}
void loop() {
tempC = get_temperature(sensorPin);
tempF = celsius_to_fahrenheit(tempC);
lcd.setCursor(0, 0);
lcd.print(tempF);
lcd.print(" ");
lcd.print((char)223); // Símbolo grado
lcd.print("F");
delay(200);
}
int get_temperature(int pin) {
int temperature = analogRead(pin);
float voltage = temperature * 5.0;
voltage = voltage / 1024.0;
return ((voltage - 0.5) * 100); // Fórmula LM35/36
}
int celsius_to_fahrenheit(int temp) {
return (temp * 9 / 5) + 32;
}
Código 2 (versión simplificada, solo °C y °F):
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int inPin = 0; // A0
void setup() {
lcd.begin(16, 2);
}
void loop() {
int value = analogRead(inPin);
float millivolts = (value / 1024.0) * 5000;
float celsius = millivolts / 10; // 10mV/°C para LM35
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(celsius);
lcd.print("C");
lcd.setCursor(0, 1);
lcd.print((celsius * 9) / 5 + 32); // Convertir a °F
lcd.print("F");
delay(1000);
}
Nota: El LM35 entrega 10mV por grado Celsius. El LM36 tiene offset de 500mV a 0°C (fórmula del código 1).
Código
Ambos fragmentos de código disponibles arriba. El archivo FJXZ51IHQAX1RR7.txt contiene el código 1 completo.
Proceso de manufactura
- Construya un Sistema Rápido y Fiable de Detección de Incendios con Samsung SAMIIO, Arduino UNO y Raspberry Pi
- Panel de control para Flight Simulator 2020 con Arduino Nano: Pantallas LCD y CDI
- Construye un reloj en tiempo real con Arduino para horarios de oración islámica
- Crea Animaciones y Juegos en LCD 16×2 con Arduino UNO
- Cómo mostrar imágenes en una pantalla TFT LCD de 1.17 pulgadas con Arduino UNO
- Control Preciso de Servo con Arduino y MPU6050 (SG90 / MG996R)
- Módulo GPS u-blox LEA‑6H 02: Guía de integración con Arduino y Python
- Dominando reconocimiento y síntesis de voz en Arduino Due
- Control de Matriz LED 8×8 con Arduino Uno: Guía Paso a Paso
- Construye un reloj despertador fiable con RTC DS1302 y Arduino UNO
- Control de Ventilador PWM de 4 Pines a 25 kHz con Arduino Uno – Montaje, Código y Pruebas