Skip to content

MT04

Tarea 5 – Detector de “Llama” Simulado con Respuesta de Emergencia

Actualizacion del pryecto 29-11-2025 - Finalizado

Introducción

El objetivo de esta actividad fue simular la detección de una llama (fuego) utilizando un sensor simple, la fotoresistencia (LDR), y programar una respuesta de emergencia automatizada en un microcontrolador ESP8266 (en este caso, una Wemos D1). La simulación consistía en activar una alarma visual (LED) y desplegar un mecanismo de “supresión” de incendios (Servo SG90)

Descripción general

- Ubicar la fotoresistencia cerca de la zona a monitorear.  
- Detectar un aumento brusco de luz respecto del nivel ambiente y considerarlo como “llama detectada”.  
- Al detectar la “llama”, encender varios LEDs como alarma visual.  
- El servo (o un motor DC si cuentan con controlador adecuado) gira para simular un mecanismo que intenta “apagar” el fuego.  
- El botón sirve para resetear el sistema y volver al estado de vigilancia.

Investigación y referencias

Para abordar este proyecto, la primera decisión clave fue utilizar la placa Wemos D1 (ESP8266). Esto requirió un proceso inicial de configuración del entorno de desarrollo que incluía:

  1. IDE de Arduino: Utilicé la versión más reciente para asegurar la compatibilidad.
  2. Controladores (Drivers): La instalación de los drivers CH340 fue crucial para que el ordenador reconociera la placa.
  3. Integración del ESP8266: Fue necesario añadir las URLs y los controladores de la tarjeta ESP8266 al gestor de tarjetas del IDE de Arduino. En cuanto al diseño del circuito, decidí utilizar el software KiCad para la creación de los esquemas eléctricos. Mi objetivo al usar KiCad, un software Open Source, fue asegurarme de tener una representación profesional y escalable del circuito, preparando los archivos para una posible fabricación de PCB en el futuro, si el proyecto escalara.

Referencias Utilizadas:
● Documentación de Arduino: https://www.arduino.cc/ (Para la sintaxis y funciones básicas).
● Documentación Wemos D1:
Para utilziar una esp8266 desde la ide de Arduino necesitamos algunas cosas.
1 El ide de Arduino, de preferencia en su versión mas reciente.
2 Instalar los controladores de los driver CH340 para el Wemos.
3 Los controladores del esp8266 para arduino.
https://www.wemos.cc/en/latest/d1/index.html
https://www.wemos.cc/en/latest/tutorials/d1/get_started_with_arduino_d1.html (Guía de inicio).
● Software de Diseño: https://www.kicad.org/ (Para el diseño del esquema).

Materiales para el desarrollo

Arrmar el circuito electrico para tener una idea de los materiales y las conexiones que deben existir entre ellos. Para el caso del circuito utilice un software OpenSource llamado Kicad, que ademas de permitir hacer los esquemas electricos permite armar y diselar PCB y exportar en Gerber directo para la produccion en masa. https://www.kicad.org/

**Esquema electrico**

Materiales utilizados - Protoboard
- Cables varios
- Resistencia LDR
- Resistencias de 10K y 240ohm
- Servo SG90
- 1 Led Rojo

El archivo de descarga de kicad esta en : https://www.wemos.cc/en/latest/tutorials/d1/get_started_with_arduino_d1.html

Circuito armado sin el servo Circuito Armado

Test de reconocimiento de luminocidad

  1. Test de Reconocimiento de Luminosidad (LDR)
    Se armó el circuito inicial solo con el LDR conectado a una entrada analógica del Wemos D1. La prueba consistió en monitorear los valores de lectura serial para establecer un umbral.
    ● Resultado: El LDR funcionó correctamente, demostrando un cambio brusco en la lectura al exponerlo a una fuente de luz (simulando la llama). Esto permitió establecer un umbral de detección fiable.

Evolucion del dibujo

Teste del led ente el cambio de luminocidad



  1. Integración del LED de Alarma En esta etapa, se añadió el LED Rojo. La lógica de control se programó para que, si la lectura del LDR superaba el umbral (detección de llama), el LED se encendiera inmediatamente. ● Resultado: El test fue exitoso. El LED respondía instantáneamente al cambio de luminosidad, confirmando que la lógica de detección y la respuesta visual estaban operativas.

  2. Integración Final del Servo (Actuador) Finalmente, se incorporó el Servo SG90, junto con el botón de reset. El servo se integró al firmware para que, al detectarse la “llama”, este realizará una “barrida” o un giro para simular el mecanismo de extinción, y solo regresará a su posición de vigilancia al presionar el botón de reset

Circuito Armado y completo
Circuito armado

Test final del circuito




Resultados y Errores

El circuito completo funcionó tal como se esperaba:
1. Estado de Vigilancia: El sistema se mantiene en reposo, monitoreando el LDR.
2. Detección: Al acercar una luz, el LED se enciende como alarma y el servo realiza un movimiento.
3. Reset: El sistema vuelve al estado de vigilancia tras presionar el botón.
Fallo Documentado: Limitación Física del Servo SG90
El error más significativo se encontró en el firmware durante la fase de control del actuador.
● Descripción del Error: Inicialmente, el código de programación se configuró para que el servo realizará una barrida entre 45 y 180 grados.
● Realidad: Este servo SG90 en particular, debido a sus limitaciones físicas internas o calibración, sólo alcanza un ángulo máximo de aproximadamente 100 grados. Al intentar forzarlo a 180 grados, el motor vibraba y no se movía, lo que generaba un ruido audible y un consumo de energía innecesario.
● Solución Aplicada: Tuve que modificar el código para limitar el rango de movimiento a un máximo seguro y funcional, ajustando la barrida entre 45° y 100° para evitar el sobreesfuerzo del SG90.

Reflexión Este proyecto me enseñó el conocimiento teórico de un componente (ej. un servo que generalmente permite 180°) a menudo debe ser ajustado por las limitaciones físicas y calibraciones del hardware específico que se está utilizando en el momento. No siempre la hoja de datos se traduce en un rendimiento idéntico en todos los modelos o lotes. Si repitiera el ejercicio, mejoraría la calibración del LDR creando un promedio de lecturas ambientales al inicio del programa, en lugar de utilizar un umbral fijo. Esto haría que el detector fuera más adaptativo a diferentes entornos de iluminación.

Archivos Todos los archivos del proyecto, incluyendo el esquema de KiCad (en formato editable y PDF), las capturas de pantalla de las pruebas, y el firmware (código Arduino), se encuentran disponibles en el repositorio:
Firmware (Código Arduino):
https://github.com/Juandeleon-utec/Juan_de_Leon/blob/main/docs/arduino_bombero/arduino_bom bero.ino
Archivos de Diseño (KiCad):
https://github.com/Juandeleon-utec/Juan_de_Leon/tree/main/docs/kicad/bomberos/bomberos.7z
Ubicacion de la carpeta de Github, con el material y videos:
https://juandeleon-utec.github.io/Juan_de_Leon/tecnicos/mt04/


Last update: November 29, 2025