Arduino UNO R4 - Sensor de llama

Este tutorial explica cómo usar un Arduino UNO R4 y un sensor de llama para detectar y medir llamas e incendios. Nos centraremos en los siguientes temas:

Sensor de llama para Arduino UNO R4

Luego, puedes cambiar el código para activar una sirena de advertencia (usando un relé) cuando detecte fuego.

Acerca del sensor de llama

módulo de sensor de llama infrarrojo

El sensor de llama puede detectar y medir la luz infrarroja de una llama, lo que puede utilizarse para la detección de incendios. También se le conoce como sensor de llama infrarrojo o sensor de incendio. Este sensor ofrece dos tipos de señales: una salida digital (LOW o HIGH) y una salida analógica.

Los sensores infrarrojos de llamas están diseñados para detectar tipos específicos de longitudes de onda de radiación infrarroja que provienen de las llamas. Están construidos para reducir falsas alarmas causadas por otras fuentes infrarrojas, como el calor corporal de las personas o luces. Sin embargo, estos sensores no son perfectos y, a veces, pueden generar alertas incorrectas ya sea al detectar algo que no está allí o al pasar por alto lo que sí está allí.

Diagrama de pines

Hay dos tipos de módulos detectores de llama disponibles:

El sensor de llama único tiene cuatro pines:

  • Pin VCC: Conéctalo a VCC (3.3V a 5V).
  • Pin GND: Conéctalo a GND (0V).
  • Pin DO: Este es un pin de salida digital. Muestra HIGH cuando no se detecta una llama y LOW cuando se detecta una llama. Puedes cambiar la sensibilidad de detección de llamas con un potenciómetro incluido en la placa.
  • Pin AO: Este es un pin de salida analógica. El valor de salida baja cuando el nivel infrarrojo disminuye y sube cuando el nivel infrarrojo aumenta.
Pinout del sensor de llama
image source: diyables.io

También tiene dos luces LED:

  • Un indicador PWR-LED muestra si la alimentación está encendida.
  • Un indicador DO-LED muestra si se detecta una llama.

El sensor de llama 5 en 1 integra cinco sensores de llama individuales en una sola placa de circuito impreso (PCB). Estos sensores comparten un potenciómetro común, VCC y conexiones GND, lo que garantiza una gestión de energía simplificada. Sin embargo, los pines DO (Salida Digital) y AI (Entrada Analógica) de cada sensor funcionan de forma independiente, lo que permite detecciones simultáneas y distintas de llamas. Además, cada sensor está orientado en una dirección diferente, lo que aumenta significativamente el rango de detección total.

Cómo funciona

Para el pin DO:

  • El módulo incluye un potenciómetro para ajustar el umbral infrarrojo (sensibilidad).
  • Si la intensidad infrarroja supera el umbral, se detecta la llama, el pin de salida del sensor está a nivel bajo y el DO-LED se ilumina.
  • Si la intensidad infrarroja está por debajo del umbral, no se detecta la llama, el pin de salida del sensor está a nivel alto y el DO-LED está apagado.

Para el pin AO:

  • Cuando haya más luz infrarroja alrededor, la lectura del pin AO será mayor.
  • Cuando haya menos luz infrarroja alrededor, la lectura del pin AO será menor.

El potenciómetro no cambia el valor en el pin AO.

Diagrama de Cableado

El módulo del sensor de llama tiene dos salidas, por lo que puedes usar una o ambas, según tus necesidades.

Diagrama de cableado del sensor de llama para Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Uno R4 y otros componentes.

Código de Arduino UNO R4 - Leer el valor del pin DO

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-flame-sensor */ #define DO_PIN 2 // The Arduino UNO R4 pin connected to DO pin of the flame sensor void setup() { // initialize serial communication Serial.begin(9600); // initialize the Arduino's pin as an input pinMode(DO_PIN, INPUT); } void loop() { int flame_state = digitalRead(DO_PIN); if (flame_state == HIGH) Serial.println("The flame is NOT present => The fire is NOT detected"); else Serial.println("The flame is present => The fire is detected"); }

Pasos R\u00e1pidos

Siga estas instrucciones paso a paso:

  • Si es la primera vez que usas el Arduino Uno R4 WiFi/Minima, consulta el tutorial sobre configurar el entorno para Arduino Uno R4 WiFi/Minima en el IDE de Arduino.
  • Conecta el sensor de llama al Arduino Uno R4 según el diagrama proporcionado.
  • Conecta la placa Arduino Uno R4 a tu computadora usando un cable USB.
  • Inicia el IDE de Arduino en tu computadora.
  • Selecciona la placa adecuada Arduino Uno R4 (por ejemplo, Arduino Uno R4 WiFi) y el puerto COM.
  • Copia el código de arriba y ábrelo en el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE de Arduino para transferir el código a Arduino Uno R4.
  • Apunta el sensor de llama hacia una llama.
  • Verifica los resultados en el Monitor Serial.
COM6
Send
The flame is present => The fire is detected The flame is present => The fire is detected The flame is NOT present => The fire is NOT detected The flame is NOT present => The fire is NOT detected The flame is NOT present => The fire is NOT detected The flame is present => The fire is detected The flame is present => The fire is detected The flame is present => The fire is detected
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Si ve que la luz LED permanece encendida todo el tiempo o se apaga incluso cuando el sensor apunta a una llama, puede girar el potenciómetro para ajustar qué tan sensible es el sensor.

Código de Arduino UNO R4 - Leer valor del pin AO

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-flame-sensor */ #define AO_PIN A0 // The Arduino UNO R4 pin connected to AO pin of the flame sensor void setup() { // initialize serial communication Serial.begin(9600); } void loop() { int flame_value = analogRead(AO_PIN); Serial.println(flame_value); }

Pasos R\u00e1pidos

  • Copia el código y ábrelo en el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE de Arduino para cargar el código al Arduino UNO R4.
  • Apunta el sensor de llama hacia una llama.
  • Comprueba el resultado en el monitor serial.
COM6
Send
145 206 226 513 697 959 965 1005 1006 1016 1019 661 545 341 172
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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.

Referencias de funciones

Tutoriales Relacionados

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!