"""
Nombre de la Práctica: Lectura de un sensor y control de un actuador mediante una condición
Explicación del funcionamiento: Se establece el Pin 2 del ESP32 como salida para los actuadores (Led y Relé),
y el Pin 34 como entrada para el sensor (MQ2)
Conclusión: Este ejercicio muestra de manera clara y sencilla como esta constituido un sistema con
un modelo del tipo "Entrada -> Procesamiento -> Salida", utilizando sensores y actuadores
en un ESP32 con MicroPython
Código de MycroPython: ...
"""
from machine import Pin, ADC # Modulo de MicroPython para controlar el hardware del microcontrolador
from time import sleep # Modulo de MicroPython que sirve para pausar por un tiempo definido las instrucciones del microcontrolador
MQ2 = ADC(Pin(34)) # Crear un objeto para monitorear y controlar el sensor MQ2. Establecer el pin del ESP32 en el que se encuentra conectado la señal de datos del sensor
led = Pin(2, Pin.OUT) # Configurar el Led
THRESHOLD = 3665 # Definir un umbral (El valor 3665 corresponde a un concentración de 501 ppm)
while True:
concentracion = MQ2.read() # Leer los valores del objeto del sensor MQ2 y asignar el valor de la concentración de gas a una variable
print(f"El valor de concentración de gases inflamables es: {concentracion}") # Imprimir el valor de la variable concentración
if concentracion >= THRESHOLD: # Definir una condición con base en el umbral (threshold)
led.value(1) # Encender Led
print("¡PELIGRO! Concentración de gases inflamables alta")
else:
led.value(0) # Apagar Led
print("No hay peligro")
sleep(2)