ESP32 - Sensor de llama
El sensor infrarrojo de llama puede detectar y medir la luz infrarroja proveniente de una llama. Es útil para detectar incendios y también se le conoce como sensor infrarrojo de llama o sensor de incendio. Este sensor proporciona dos tipos de información: una es como un interruptor simple (encendido o apagado), y la otra es una señal analógica que muestra la intensidad de la llama.
En este tutorial, aprenderemos a usar un ESP32 con un sensor de llama para detectar llamas. Específicamente, cubriremos estos pasos:
- Conectar el sensor de llama a un ESP32.
- Programar el ESP32 para reconocer incendios leyendo la señal de encendido/apagado del sensor de llama.
- Programar el ESP32 para medir la intensidad de la llama leyendo la señal analógica del sensor de llama.

Después, puedes modificar el código para activar una sirena de advertencia cuando se detecte un incendio.
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) |
Acerca del sensor de llama

El sensor de llama infrarrojo puede detectar una llama o comprobar cuánta luz infrarroja emite la llama. Por lo tanto, nos ayuda a detectar incendios. Este sensor ofrece dos opciones utilizando un pin de salida digital y un pin de salida analógico.
Estos sensores están diseñados para captar ciertos tipos de luz infrarroja emitida por llamas, mientras que ignoran otros tipos, como el calor de las personas o las luces interiores. Pero como cualquier sensor, tienen sus límites, y a veces pueden cometer errores, ya sea diciendo que hay un incendio cuando no lo hay (falso positivo) o pasando por alto un incendio cuando está allí (falso negativo).
Esquema de pines
Hay dos tipos de módulos de sensor de llama disponibles:
Un único sensor de llama incluye cuatro pines:
- Pin VCC: Debe conectarse a VCC (3.3 V a 5 V).
- Pin GND: Debe conectarse a GND (0 V).
- Pin DO: Es un pin de salida digital. Está en ALTO si no se detecta la llama y en BAJO si se detecta. El valor umbral para la detección de llama se puede ajustar mediante un potenciómetro incorporado.
- Pin AO: Es un pin de salida analógica. El valor de salida disminuye a medida que disminuye la intensidad infrarroja, y aumenta a medida que aumenta la intensidad infrarroja.

Además, cuenta con dos indicadores LED:
- Un indicador PWR-LED para la alimentación.
- Un indicador DO-LED para el estado de la llama en el pin DO: está encendido cuando hay llama.
El módulo de sensores de llama 5-en-1 combina cinco sensores de llama individuales en una sola placa de circuito impreso. Los sensores comparten un potenciómetro común, así como las conexiones VCC y GND, mientras que cada sensor tiene sus pines DO (Salida Digital) y AI (Entrada Analógica) independientes.
Cómo funciona
Para el pin DO:
- El módulo tiene un potenciómetro incorporado para ajustar el umbral infrarrojo (sensibilidad).
- Cuando la intensidad infrarroja está por encima del valor umbral, se detecta la llama, el pin de salida del sensor está en BAJO, y el DO-LED está encendido.
- Cuando la intensidad infrarroja está por debajo del valor umbral, la llama NO se detecta, el pin de salida del sensor está en ALTO, y el DO-LED está apagado.
Para el pin AO:
- Cuanto mayor sea la intensidad infrarroja en el entorno circundante, mayor será el valor leído desde el pin AO.
- Cuanto menor sea la intensidad infrarroja en el entorno circundante, menor será el valor leído desde el pin AO.
Tenga en cuenta que el potenciómetro no afecta el valor del pin AO.
Diagrama de Cableado
Como el módulo del sensor de llama tiene dos salidas, puedes elegir usar una o ambas, según lo que necesites.
- Cómo conectar ESP32 y sensor de llama usando placa de pruebas
El módulo de sensor de llama ofrece dos opciones de salida. Puedes usar una o ambas según lo que necesites.

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.
- Cómo conectar el ESP32 y un sensor de llama usando placa de breakout con terminales de tornillo

Código ESP32 - Leer valor desde el pin DO
Pasos R\u00e1pidos
- Si es la primera vez que usas ESP32, consulta cómo configurar el entorno para ESP32 en el IDE de Arduino.
- 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 subir el código al ESP32
- Apunta el sensor de llama hacia una llama.
- Ver el resultado en el monitor serie.
Tenga en cuenta que si nota que el estado del LED permanece encendido de forma constante o se apaga incluso cuando el sensor está orientado hacia una llama, puede ajustar el potenciómetro para afinar la sensibilidad del sensor.
Código ESP32 - Leer valor del pin AO
Pasos R\u00e1pidos
- Copie el código anterior y ábralo con Arduino IDE
- Haga clic en el botón Subir en Arduino IDE para subir el código al ESP32
- Dirija el sensor de llama hacia una llama.
- Vea el resultado en Monitor Serial.
※ Nota:
Este tutorial utiliza la función analogRead() para leer valores de un ADC (Convertidor analógico-digital) conectado a un sensor de llama. El ADC del ESP32 es adecuado para proyectos que no requieren alta precisión. Sin embargo, para proyectos que necesitan mediciones precisas, tenga en cuenta:
- El ADC del ESP32 no es perfectamente preciso y podría necesitar calibración para obtener resultados correctos. Cada placa ESP32 puede variar un poco, por lo que debe calibrar el ADC para cada placa individual.
- La calibración puede ser difícil, especialmente para principiantes, y podría no dar siempre los resultados exactos que desea.
Para proyectos que requieren alta precisión, considere usar un ADC externo (p. ej. ADS1115) con el ESP32 o usar un Arduino, que tiene un ADC más fiable. Si aún desea calibrar el ADC del ESP32, consulte ESP32 ADC Calibration Driver
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.