Antes de...
Justificación pedagógica
Esta actividad busca que el alumnado comprenda la aplicación de los flujos de aire en la regulación de condiciones ambientales para la preservación de materiales tecnológicos.
- Qué explicar. El docente explicará el "efecto escoba" del flujo de aire para favorecer la evaporación y reducir la humedad ambiental, evitando así la oxidación o fallos en componentes electrónicos sensibles.
- Qué hacer. El alumnado diseñará y programará un sistema automatizado que active ventiladores al detectar niveles críticos de humedad, simulando el proceso de secado y estabilización de un entorno técnico.
- Vinculación curricular. Se vincula con los saberes de efectos de la energía sobre la materia y cambios de estado (C.2.3.2) y el diseño de sistemas de control automático (Competencia específica 4, Criterio 4.1).
- Vínculo narrativo. Para garantizar la seguridad de la estación submarina, los técnicos deben secar urgentemente una sala inundada. Programaremos el sistema de ventilación para proteger los equipos electrónicos y permitir que las reparaciones comiencen antes de que ocurra un fallo general.
Objetivo
El objetivo principal es que el alumnado programe un dispositivo IoT con micro:bit para gestionar la ventilación automatizada de la base submarina, regulando los niveles de humedad para proteger la integridad de las instalaciones.
Para lograrlo, cada estudiante diseñará un sistema interactivo que asocie la detección de humedad con la activación de ventiladores, aplicando el "efecto escoba" del flujo de aire para favorecer la evaporación y evitar la rotura de componentes electrónicos.
Finalmente, mediante el uso de bloques de código y sensores, configurarán la respuesta del sistema para secar eficazmente la sala inundada, logrando así que los técnicos puedan reparar los daños y restablecer la seguridad de la estación.
Conocimientos previos Micro:bit y MakeCode
En esta sección encontramos todos los conocimientos necesarios para poder trabajar con Micro:bit y MakeCode:
- Presentación sobre el entorno Makecode y la placa Micro:bit.
- Vídeo cobre el funcionamiento y primeros pasos con la placa Micro:bit.
- Prácticas para familiarizarnos con entorno Makecode y la placa Micro:bit..
Para ver a pantalla completa clicamos en presentación.
Video que nos muestra el funcionamiento y primeros pasos con Micro:bit:
Para ver a pantalla completa clicamos en presentación.
Ya estamos listos para conocer el Kit IoT.
Conocimientos previos de Kit IoT Smart Science
Ahora veremos lo que necesitamos saber de Smart Science IoT:
- Presentación IoT Smart Science.
- Vídeo sobre el funcionamiento de los componentes del kit.
- Presentación con diferentes prácticas que nos ayudarán a entender las aplicaciones de este Kit.
¿Qué necesitas preparar?
Antes de la sesión de acompañamiento es conveniente:
- Mostrar al alumnado el kit Smart Science IoT y Micro:bit, su funcionalidad y uso. De este modo, comprenderán con menor dificultad lo que deben de hacer en la actividad.
- Mostrar al alumnado la interfaz de MakeCode. De esta forma, en el acompañamiento podremos centrarnos en cómo programar por bloques y la sesión será más ágil.
Además, necesitarás este material:
- Un portátil por cada dos alumnos/as (máximo 3) con conexión a internet para acceder a plataforma MakeCode.
- Documentos:
- Diario de aprendizaje
- Documento para el docente
Desarrollo de la actividad
- Desarrollamos los pasos que deberá seguir el alumnado para poder realizar con éxito la misión.
- Acceso a MakeCode : A través de la web MakeCode. Para descargar la aplicación y trabajar offline, habrá que ir a Descargar MakeCode y elegir el sistema operativo de nuestro dispositivo.
Paso 1. Añadir la extensión Environment-and-Science-IoT
Para poder programar la pantalla OLED en MakeCode necesitamos añadir una extensión especial.
- Tenemos que abrir nuestro proyecto o crearlo en Microsoft MakeCode for Microbit.
- Una vez dentro del proyecto, haz clic en el botón “Extensiones” (parte inferior del menú de bloques o desde la rueda dentada ⚙).
- Dentro del buscador de extensiones, escribe:
Environment-and-Science-IoT y haz clic sobre la extensión para que se instale directamente.
- Cuando añadimos la extensión, aparece una nueva opción en el menú de Categorías relacionada con sensores ambientales e IoT.
Dentro de esta categoría encontraremos los bloques para trabajar con la pantalla OLED, como por ejemplo:
- Inicializar pantalla OLED
- Mostrar texto
- Mostrar número
- Limpiar pantalla
- Mostrar en posición X, Y
- Inicializar pantalla OLED
De esta manera, ya podremos programar y mostrar información en la pantalla OLED desde MakeCode.
Paso 2. Configuración inicial de la pantalla
Ahora estableceremos los parámetros de encendido de la pantalla externa para asegurar que el texto se muestre con la resolución adecuada.
- Arranque del sistema. Mediante el bloque "al iniciar" de la categoría Básico (color azul), el programa ejecuta una sola vez la instrucción "initialize OLED with width 128 height 64" de la extensión OLED para preparar el panel de visualización.

Paso 3. Captura y visualización de la humedad
En esta etapa, el programa lee constantemente la cantidad de agua en el aire y la muestra gráficamente al usuario.
- Vigilancia y lectura. Dentro de un bloque "para siempre" de la categoría Básico, se utiliza el bloque "fijar [humedad] a" de la categoría Variables para almacenar el valor obtenido por el bloque "value of BME280 humiditi 0-100" de la extensión Environment-and-Science-IoT.

- Refresco de pantalla. Seguidamente, se emplean los bloques "clear OLED display" y "show string" (unido a un bloque "unir" de la categoría Texto) para limpiar la pantalla y mostrar el mensaje "Humedad: [valor] %", permitiendo un seguimiento visual directo.
Paso 4. Control automático del estado de secado
El corazón del código toma decisiones lógicas basadas en los datos recibidos para activar o desactivar componentes externos según sea necesario.
- Lógica de actuación. A través de un bloque "si / si no" de la categoría Lógica, el programa comprueba si la variable humedad es mayor a 60; si se cumple, ejecuta la "escritura digital pin P2 a 1" para encender el sistema de secado y muestra en pantalla "ESTADO: SECANDO...".
- Reposo del sistema. Si la humedad es igual o inferior a 60, el programa establece la "escritura digital pin P2 a 0" para apagar el dispositivo externo y actualiza el texto de la pantalla a "ESTADO: OK".
Paso 5. Estabilización de la ejecución
Finalmente, el código incluye un breve respiro para que las lecturas sean estables y el procesador no se sature.
- Pausa de control. Se añade el bloque "pausa (ms) 500" de la categoría Básico para que el ciclo completo se repita cada medio segundo, garantizando que el usuario pueda leer los mensajes sin que la pantalla parpadee.
Paso final. Conexiones
Es el momento de darle vida a nuestro proyecto físico. Sigue estos pasos para realizar la transferencia y el montaje:
- Descarga y transferencia a la placa Micro: una vez completados estos pasos, el código está listo para ser descargado a tu tarjeta Micro:bit. En esta presentación se explica las diferentes posibilidades
- Montaje de hardware: insertamos con cuidado la Micro:bit en la ranura de la placa de expansión IoT:bit.
- Conexión de sensores: conectamos el sensor BME280 y ventilador tal y como se muestra en la imagen.
Al conectar el sensor veremos los datos en al pantalla OLED
En este enlace podemos acceder al código completo.
Comencemos - Equipo de Física y Química
¡Atención, equipo!
La humedad en la sala de máquinas es crítica tras la inundación. Si no actuamos rápido, la corrosión destruirá los componentes electrónicos vitales de nuestra base.
Nuestra misión es diseñar un dispositivo IoT con micro:bit para gestionar la ventilación de forma automática. Nuestro objetivo es programar el sistema para que, al detectar niveles altos de humedad, se activen los ventiladores aplicando el "efecto escoba". De este modo, aceleraremos la evaporación para secar el ambiente y poder reparar los daños con total seguridad.
Aprenderemos cómo la energía influye en los cambios de estado de la materia para facilitar el secado de la sala. Utilizaremos el razonamiento científico y la resolución de problemas para proteger la integridad de los equipos electrónicos. Descubriremos cómo la tecnología y la experimentación son herramientas clave para intervenir en el entorno y cumplir nuestra misión.
¡Sistemas de ventilación listos!
Visualizamos el vídeo
El siguiente vídeo nos explica de una forma clara y dinámica los pasos que hay que seguir para resolver el reto.
Lectura facilitada
¡Atención, equipo de ingeniería de fluidos! Vuestro trabajo es fundamental para salvar la tecnología de la base.
Los analistas saben cuánto peligro hay, pero vosotros sois los que actuáis. De nada sirve saber que hay agua si no podemos secarla rápido antes de que rompa los cables.
🎯 ¿Cuál es nuestro objetivo?
Queremos que la placa Micro:bit funcione como un secador inteligente. El objetivo es que la estación sepa secarse sola cuando detecte un derrame de agua.
⚙️ ¿Cómo funciona el sistema?
Usaremos dos herramientas del Smart Science Kit:
- Sensor de humedad. Detecta si el suelo está mojado.
- Ventilador. Se enciende para mover el aire y hacer que el agua desaparezca (evaporación).
🧠 Las reglas de nuestra misión
Debemos convertir los datos del sensor en movimiento real. Programaremos esta regla:
- SI el sensor detecta que el suelo está muy húmedo...
- ENTONCES el ventilador debe encenderse a toda potencia.
¡Atención! Si el código es correcto, el ventilador evitará un cortocircuito (un chispazo que rompa las máquinas). Si fallamos, la humedad estropeará todos los sistemas de la base.
📋 Pasos para el equipo
- Conectar el equipo. Une el sensor de humedad y el ventilador a la placa Micro:bit.
- Programar la lógica. Escribe las instrucciones en MakeCode para que el ventilador sepa cuándo arrancar.
- Probar el secado. Echa unas gotas de agua cerca del sensor y comprueba si el ventilador se enciende solo.
¡Sistemas de ventilación listos! ¡Proteged los cables de la estación!
Nos preparamos
Estas presentaciones contienen todos los conocimientos necesarios para poder trabajar con Micro:bit y Smart Science IoT, así mismo estas disponen de un índice indicando los contenidos que veremos.
Para ver a pantalla completa clicamos en presentación.
Ahora veremos lo que necesitamos saber de Smart Science IoT.
Reto de la misión
Estos pasos nos guiarán para poder realizar nuestra misión.
Fase 0. Preparando nuestro entorno de desarrollo
Iniciamos nuestra misión en la estación Abyss-Zero configurando el cerebro de nuestro sistema para que pueda comunicarse con los dispositivos de monitorización ambiental.
- Nuestro reto. Instalar la extensión "Environment-and-Science-IoT" para disponer de todas las herramientas de control y visualización de nuestra estación.
- Pista de investigación. ¿En qué apartado del menú (representado por una rueda dentada o al final de la lista) podemos buscar nuevas capacidades? Investigamos cómo buscar el nombre exacto de la librería de IoT para que aparezcan los bloques de la pantalla OLED y los sensores ambientales.
- Comprobación / visualización. Comprobamos que, tras la carga, aparecen nuevas categorías con bloques específicos para manejar paneles visuales y medir la humedad.
Fase 1. Encendiendo el panel de control
Para que nuestro equipo de ingenieros pueda leer los niveles de humedad en los módulos de la colonia, primero debemos asegurarnos de que el panel visual se active correctamente al recibir energía.
- Nuestro reto. Configurar la inicialización de la pantalla OLED con su resolución nativa justo al arrancar el sistema.
- Pista de investigación. Buscamos en la categoría "Básico" el bloque que nos permite ejecutar órdenes una sola vez al inicio. Dentro de él, ¿qué bloque de nuestra nueva extensión nos sirve para ajustar el panel a un ancho y alto de 128x64?
- Comprobación / visualización. Observamos que la pantalla del kit se enciende y queda preparada para proyectar información en cuanto conectamos la placa.
Fase 2. Preparando la memoria de humedad
Antes de tomar decisiones automáticas, necesitamos que nuestra estación tenga un lugar donde anotar y recordar constantemente cuánta agua detectamos en el entorno.
- Nuestro reto. Crear una variable específica para la humedad y asegurar que el sistema vigile el entorno sin descanso.
- Pista de investigación. ¿Qué bucle de la categoría "Básico" nos permite repetir acciones de forma infinita? Dentro de él, investigamos en la categoría "Variables" cómo crear una nueva llamada "humedad" para empezar a usarla en nuestro programa.
- Comprobación / visualización. Observamos que la estructura de nuestro código ya tiene un hueco reservado para guardar los datos que recibiremos del exterior.
Fase 3. Capturando los datos del sensor
Ahora que tenemos nuestra variable lista, debemos "llenarla" con la información real que el sensor de suelo está captando en los módulos de la estación.
- Nuestro reto. Asignar a nuestra variable el valor de humedad captado por el sensor BME280.
- Pista de investigación. Dentro de nuestra categoría de sensores IoT, buscamos el bloque que mide la humedad (BME280) en un rango de 0 a 100. ¿Cómo podríamos encajarlo dentro del bloque de nuestra variable para que se actualice constantemente?
- Comprobación / visualización. Comprobamos que el sistema ya está leyendo activamente las condiciones físicas y transformándolas en datos numéricos internos.
Fase 4. Reflejando la información en el visor
Es el momento de que la información sea pública para toda la tripulación; vamos a organizar el texto para que la lectura sea clara y profesional.
- Nuestro reto. Limpiar los datos antiguos de la pantalla y mostrar el mensaje "Humedad:" junto al porcentaje real y el símbolo "%".
- Pista de investigación. Investigamos en nuestra extensión cómo "borrar la pizarra" antes de escribir. Para mostrar el resultado, ¿qué bloque de la categoría "Texto" nos permite "unir" palabras, nuestra variable de humedad y el símbolo de porcentaje en una sola línea?
- Comprobación / visualización. Percibimos que en la pantalla aparece un mensaje nítido y actualizado que nos informa de la cantidad de agua detectada en cada instante.
Fase 5. Activando el protocolo de secado automático
Nuestra estación debe ser capaz de reaccionar por sí sola: si hay demasiada humedad, activaremos los ventiladores de secado para proteger la estructura.
- Nuestro reto. Programar una decisión lógica para encender un dispositivo de secado en el pin P2 cuando la humedad supere el 60%.
- Pista de investigación. ¿Qué estructura de la categoría "Lógica" nos permite evaluar si se cumple una condición? Si la humedad es mayor a 60, investigamos en la categoría "Pines" cómo realizar una "escritura digital" en el puerto P2 para enviar energía (valor 1) y mostrar el mensaje "ESTADO: SECANDO...". ¿Qué deberíamos hacer en el apartado "si no" para apagarlo (valor 0)?
- Comprobación / visualización. Observamos que, al superar el límite de seguridad, el sistema reacciona cambiando el texto de la pantalla y activando la salida de energía.
Fase 6. Estabilizando el ciclo de trabajo
Para evitar que el procesador se agote y que la pantalla parpadee demasiado rápido, vamos a darle un ritmo constante de trabajo.
- Nuestro reto. Introducir una pausa de control para que el refresco de la información y la actuación del sistema sean fluidos.
- Pista de investigación. Buscamos en la categoría "Básico" un bloque que nos permita hacer que el programa "descanse" durante medio segundo (500 ms) antes de volver a empezar todo el ciclo de vigilancia.
- Comprobación / visualización. Comprobamos que los mensajes en el panel OLED se mantienen estables y el sistema de secado actúa de forma equilibrada.
Fase 7. Conectando la placa al mundo real
Ha llegado el momento de unir nuestro proyecto físico para que el código pueda interactuar con los elementos reales de la colonia.
- Nuestro reto. Conectar el sensor de humedad y el dispositivo de secado a nuestra placa para que el código cobre vida.
- Pista de investigación. Revisamos nuestro código: ¿en qué puertos hemos programado cada elemento? Conectamos el sensor BME280 a su puerto específico y el sistema de actuación (ventilador o LED) al puerto P2 de nuestra placa de expansión IoT, prestando mucha atención a la posición de los colores de los cables.
- Comprobación / visualización. Comprobamos que, al humedecer el sensor, el dispositivo conectado al pin P2 se activa automáticamente y la pantalla OLED refleja el cambio de estado.
Nuestras herramientas de apoyo
- Consejo lógico: Cuando programamos umbrales (como el 60%), estamos creando un "termostato" de humedad. Es importante elegir un número que no sea demasiado bajo para evitar que el sistema esté encendido todo el tiempo innecesariamente.
- Consejo hardware/físico: Los sensores de humedad funcionan por contacto. Asegúrate de que las puntas metálicas estén bien introducidas en el material que quieras medir, pero evita que el agua toque la parte superior donde están los cables.
Nuestra autocomprobación
- ¿Hemos identificado correctamente qué activador inicia cada secuencia lógica? (Sí/No)
- ¿Observamos que el comportamiento coincide con el orden lógico visible en la captura? (Sí/No)
- ¿Hemos configurado correctamente el pin P2 para que se apague (valor 0) cuando el entorno vuelve a estar en un estado seguro? (Sí/No)
Un poco de ayuda
Montamos nuestro código
Lee el código, encuentra la secuencia y construye uniendo las piezas.
Ahora toca comprobar que los hemos colocado correctamente y la pantalla muestra la información que recoge por los sensores.
Aprendo pienso y crezco
Aprendo , pienso y crezco
El diario de aprendizaje es nuestro Informe de Seguridad de la estación personal de "ingenieros". No sirve para copiar teoría, sino para reflexionar sobre cómo hemos aprovechado la química del agua para crear un sistema de defensa electrónico en la estación Abyss-Zero.
- Diario de aprendizaje (será necesario uno por grupo de alumnos o como especifique el docente)
Después de...
¡Atención, divisiones operativas!
Nuestros sistemas de respuesta mecánica y protocolos de emergencia están plenamente operativos. Ahora, debemos presentar los resultados de nuestro "Informe de Viabilidad y Seguridad" ante el Comité de Seguridad de la estación Abyss-Zero.
Organización de los equipos
- División de Fluidos (Física y Química). Presentaremos la lógica de las decisiones autónomas para la extracción de la humedad ambiente excesiva (usando los umbrales de humedad del suelo y la activación de los ventiladores de secado).
- División de Análisis (Matemáticas). Presentaremos la lógica del control de compuertas antes del colapso estructural (usando el mapeo del sensor nivel de agua y el cierre progresivo de las compuertas con servomotores).
Roles del equipo
La misión de supervivencia depende del trabajo conjunto. Repartimos estos roles para la defensa ante el Comité:
- La jefatura de estación (Portavocía). Explica el objetivo de seguridad de la misión y las conclusiones finales. Responde a la pregunta: "¿Es nuestra base capaz de defenderse de una brecha oceánica de forma 100% autónoma con este sistema?".
- La ingeniería de soporte vital (Parte técnica). Enseña el código en MakeCode y haz saltar el protocolo en directo (detectando la humedad o el nivel de agua para que el sistema encienda el motor o mueva el servo).
- El análisis de telemetría (parte lógica). Explica qué bloque de código es el cerebro de la placa (el bloque condicional) y responde a las dudas sobre los errores de cálculo o calibración cometidos durante las pruebas.
Objetivo y programación (causa y efecto)
Explicamos cómo hemos enseñado a nuestra estación a "pensar" para sobrevivir a la inmensa presión:
- ¿Qué queríamos automatizar y por qué? Explicamos el peligro. Por ejemplo: "Si el nivel de humedad sube, hay riesgo de corrosión masivo. Necesitábamos que el sistema detectara el derrame y tomara decisiones de secado por sí solo".
- Los bloques (Lógica condicional). Explicamos el corazón de nuestro sistema de soporte vital: el bloque "si... entonces... si no" (y las condiciones anidadas "si no, si" en el caso de las compuertas).
- La programación. ¿Cómo hemos fijado el límite del peligro? Explicamos la regla lógica de cada especialidad (ejemplo: "Si la humedad es mayor que 60, entonces envía energía al pin del ventilador" o "Si el porcentaje de nivel de agua es mayor que 50, entonces mueve el servo a 90 grados").
Diario de errores y calibración
Un sistema de soporte vital de élite no es perfecto a la primera. Contamos la verdad técnica de nuestros entrenamientos:
- Falsas detecciones. ¿Qué falló durante las pruebas? ¿El ventilador se encendía antes de tiempo? ¿El servomotor no cerraba la compuerta lo suficientemente rápido? ¿Los porcentajes en la pantalla OLED mostraban valores imposibles?
- Solución (Calibración). Explicamos cómo cambiamos los valores numéricos (los umbrales analógicos, los ángulos del servo o la fórmula de porcentaje) para que la respuesta de la base fuera precisa y eficiente.
Comprobación y conclusiones
Damos el veredicto final para autorizar el despliegue del sistema automático:
- Comprobación. Hacemos una simulación de peligro en la base. Colocamos agua en el sensor de nivel de agua o generamos humedad frente el sensor para que el Comité vea y escuche cómo la estación reacciona sola, enciende la extracción o sella el perímetro, y actualiza los mensajes en la pantalla OLED.
- Conclusión. ¿El sistema es totalmente fiable? ¿Creemos que la tecnología IoT es suficiente para frenar la presión hidrostática o el entorno oceánico es demasiado inestable para confiar solo en el código?
Formato de presentación (Elegimos una opción DUA)
Elegimos el formato que mejor demuestre nuestra competencia técnica como ingenieros de Abyss-Zero:
- Opción A - Simulacro en vivo (Live demo). Ponemos los sensores en la mesa de pruebas. Provocamos situaciones de riesgo en directo (llenado rápido del recipiente y humedad alta) y mostramos cómo la estación toma la decisión de salvarnos en tiempo real.
- Opción B - Mapa de Lógica de Emergencia (Póster visual). Creamos un gran esquema visual del algoritmo. Dibujamos el camino del dato: "Entrada del sensor (Humedad/Nivel de agua)" -> "Procesamiento (¿Es mayor que 80?)" -> "Respuesta física (Ventilador / Servomotor / OLED)".
- Opción C - Registro de Supervivencia (Audio o Vídeo). Grabamos un mensaje de voz o vídeo dramático, como si fuera la "Caja Negra de Abyss-Zero", relatando una inmersión nocturna en la que el código activó los sistemas de defensa automáticamente permitiéndonos sobrevivir a una fisura inminente.