Control de Riego y Luz
Reto 3. Control manual y automático del riego y la iluminación
Objetivo
Desarrollar un programa en MicroBlocks que permita controlar el sistema de riego y la iluminación del invernadero lunar, pudiendo alternar entre modo automático y modo manual mediante los botones de la ESP32 micro:STEAMakers.
De esta forma, el usuario podrá decidir si los actuadores funcionan según los sensores o si desea activarlos y desactivarlos manualmente.
Descripción del reto
El invernadero dispone de dos actuadores:
- Sistema de iluminación.
- Sistema de riego.
Cada uno de ellos puede funcionar en dos modos:
- Modo automático: el actuador se controla mediante los sensores correspondientes.
- Modo manual: el usuario decide cuándo encender o apagar el actuador.
La selección del modo se realizará utilizando los botones de la placa.
Funcionamiento de los botones
- Botón A (Iluminación). Cada pulsación del botón A cambiará el modo de funcionamiento de la iluminación.
- Botón B (Riego). Cada pulsación del botón B cambiará el modo de funcionamiento del riego. Cuando el riego esté en modo manual, una nueva pulsación permitirá alternar entre Riego activado y Riego desactivado.
Requisitos
El programa debe:
- Detectar las pulsaciones del botón A y del botón B.
- Permitir alternar entre modo automático y manual para cada actuador.
- Permitir encender y apagar manualmente la luz cuando se encuentre en modo manual.
- Permitir activar y desactivar manualmente el riego cuando se encuentre en modo manual.
- Mostrar en la NeoMatriz el estado actual de ambos sistemas.
- Actualizar la información en tiempo real.
Ejemplo de funcionamiento
El sistema se inicia con luz y riego en modo automático.
El usuario pulsa el botón A.
La iluminación pasa a modo manual.
Vuelve a pulsar el botón A.
La luz se enciende manualmente.
El usuario pulsa el botón B.
El riego pasa a modo manual.
Vuelve a pulsar el botón B.
El riego se activa manualmente.
Una nueva pulsación sobre cada botón devuelve el sistema al modo automático.
Ampliación opcional
Una vez completado el reto básico, puedes incorporar alguna de las siguientes mejoras:
- Mostrar el modo de funcionamiento en la pantalla OLED.
- Utilizar iconos específicos para representar luz y riego.
- Guardar el último modo seleccionado para recuperarlo tras reiniciar la placa.
- Emitir una señal acústica cada vez que se cambie de modo.
- Enviar el estado de los actuadores a una hoja de cálculo o plataforma IoT.
Competencias desarrolladas
- Programación mediante bloques con MicroBlocks.
- Gestión de eventos mediante pulsadores.
- Control de actuadores en sistemas embebidos.
- Diseño de interfaces de usuario para dispositivos electrónicos.
- Implementación de modos manuales y automáticos en sistemas automatizados.