ESP32 - Sistema de Calefacción
En esta guía, aprenderemos a hacer un sistema de calefacción que controle la temperatura de la habitación utilizando un ESP32, un sensor de temperatura DS18B20 y un elemento calefactor. Es tan simple como esto: cuando la habitación se sienta demasiado fría, encenderemos el elemento calefactor, y cuando se caliente, lo apagaremos. Puedes ajustar el código para que funcione con otros sensores de temperatura como el DHT11, DHT22 o LM35, para que tengas la flexibilidad de elegir el sensor que mejor se adapte a tus preferencias.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Buy Note: Many DS18B20 sensors available in the market are unreliable. We strongly recommend buying the sensor from the DIYables brand using the link provided above. We tested it, and it worked reliably.
Acerca del elemento calefactor y del sensor de temperatura DS18B20
El elemento calefactor que estamos usando en este tutorial funciona con una fuente de alimentación de 12 voltios. Cuando se suministra energía al elemento calefactor, genera calor. Para permitir el control del ESP32 sobre el elemento calefactor, necesitamos usar un relé. Este relé actúa como el interruptor que permite al ESP32 encender o apagar el elemento calefactor según sea necesario.
Si no conoces el sensor de temperatura y el elemento calefactor (disposición de pines, cómo funciona, cómo programar ...), aprende sobre ellos en los siguientes tutoriales:
Diagrama de Cableado
- Diagrama de cableado con placa de pruebas

This image is created using Fritzing. Click to enlarge image
Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.
- Diagrama de cableado con adaptador (recomendado)

This image is created using Fritzing. Click to enlarge image
Cómo funciona el sistema
- ESP32 lee la temperatura del sensor de temperatura
- Si la temperatura cae por debajo de un umbral inferior, ESP32 enciende los elementos de calefacción
- Si la temperatura sube por encima de un umbral superior, ESP32 apaga el elemento de calefacción
El proceso anterior se repite infinitamente en el bucle.
Código ESP32 para sistema de enfriamiento con sensor DS18B20
En el código anterior, el ESP32 enciende el elemento calefactor cuando la temperatura cae por debajo de 15 °C y mantiene el elemento calefactor encendido hasta que la temperatura esté por encima de 20 °C.
Pasos R\u00e1pidos
- Si es la primera vez que usas ESP32, consulta cómo configurar el entorno para ESP32 en Arduino IDE.
- Realiza el cableado tal como se muestra en la imagen anterior.
- Conecta la placa ESP32 a tu PC mediante un cable micro USB.
- Abre el Arduino IDE en tu PC.
- Selecciona la placa ESP32 correcta (p. ej. ESP32 Dev Module) y el puerto COM.
- Haz clic en el icono Bibliotecas en la barra izquierda del IDE de Arduino.
- Busca “DallasTemperature” en el cuadro de búsqueda, y luego busca la biblioteca DallasTemperature de Miles Burton.
- Haz clic en el botón Instalar para instalar la biblioteca DallasTemperature.

- Se le pedirá que instale la dependencia. Haga clic en el botón Instalar todo para instalar la biblioteca OneWire.

- Copia el código anterior y ábrelo con el IDE de Arduino
- Haz clic en el botón Subir en el IDE de Arduino para cargar el código en el ESP32
- Haz que el entorno alrededor del sensor esté más caliente o más frío
- Comprueba la temperatura del elemento calefactor y de tu habitación
Conocimiento avanzado
El método de control anterior es el controlador on-off, también conocido como señalador o controlador 'bang-bang'. Este método es muy sencillo de implementar.
Existe un método alternativo llamado controlador PID. Con el controlador PID, la temperatura deseada es más estable, pero es muy difícil de entender e implementar. Por lo tanto, el controlador PID no es popular en el control de temperatura.