Antes de...
Justificación pedagógica
Esta actividad busca que el alumnado integre el conocimiento de la historia contemporánea y las transformaciones económicas de la Revolución Industrial con el pensamiento computacional y la electrónica, desarrollando maquetas que permitan comprender las duras condiciones de trabajo en el siglo XIX y el origen del movimiento obrero.
- Qué explicar. El docente se centrará en explicar cómo la Revolución Industrial afectó a las condiciones de vida, abordando la evolución de los modos de vida y la lucha por los derechos laborales y sociales de los trabajadores. Además, detallará el surgimiento de las protestas obreras, los cambios culturales y los movimientos sociales frente a estas transformaciones tecnológicas. Por último, guiará a los alumnos en la conexión del dispositivo y les enseñará a aplicar la lógica de programación mediante la placa Micro:bit y el sensor de luz del kit IoT.
- Qué hacer. El alumnado construirá un dispositivo interactivo simulando una planta textil del siglo XIX utilizando hardware IoT y la micro:bit. Configurarán el programa para que el sensor de luz simule las horas de jornada laboral en la fábrica: cuanta más luz detecte, el motor funcionará más rápido, simulando el ritmo de la maquinaria y acumulando un medidor interno de "fatiga". Al apagar las luces, se simulará el tiempo de descanso, logrando que la fatiga se reduzca. En el caso de que la exposición a la luz sea prolongada y la fatiga alcance un punto crítico, responderá deteniendo por completo el motor para simular que los trabajadores se han puesto en huelga.
- Vinculación curricular. Se vincula con los saberes básicos de la materia relativos a «la transformación humana del territorio y la distribución desigual de los recursos y del trabajo [...] La lucha por los derechos laborales y sociales: el estado del bienestar» (B.3.4.1), «las transformaciones científicas y tecnológicas [...] Cambios culturales y movimientos sociales» (B.2.4.7), y la «dignidad humana y derechos universales» (C.3.4.1).
- Vínculo narrativo. Para comprender verdaderamente los grandes esfuerzos que ha hecho la humanidad por mejorar nuestra realidad y calidad de vida, debemos echar la vista atrás y ponernos en la piel de la clase obrera del siglo XIX. Las interminables jornadas en las fábricas llevaban a las personas hasta el límite físico y mental de su resistencia. ¡Utilicemos este simulador interactivo para monitorizar la fatiga acumulada en una planta textil, descubramos el punto de quiebre exacto que originó las primeras huelgas y evidenciemos la importancia histórica de luchar por nuestros derechos laborales!
Objetivo
El objetivo principal es que el alumnado construya una maqueta interactiva para fomentar la empatía y la conciencia histórica, facilitando que puedan comprender las duras condiciones de la clase obrera y el origen del movimiento sindical durante la Revolución Industrial.
Para lograrlo, cada estudiante identificará la relación histórica entre las interminables jornadas de trabajo y el desgaste físico, simulando una planta textil mediante el uso de la placa micro:bit y los actuadores y sensores del kit IoT (sensor de luz y motor). De este modo, construirán una interfaz física y digital donde la monitorización ambiental y la acumulación de fatiga sean los elementos centrales.
Finalmente, cuando el usuario interactúe modificando la iluminación sobre el sensor del dispositivo (simulando más o menos horas de jornada laboral), el simulador de la micro:bit responderá aumentando la velocidad del motor y la fatiga, o deteniéndolo por completo para simular el descanso o una huelga. Así, se logrará que el alumnado evidencie con claridad el punto de quiebre humano y adquiera una comprensión crítica sobre los grandes esfuerzos y sacrificios históricos realizados para conseguir nuestros derechos laborales y mejorar la calidad de vida actual.
Conocimientos previos microbit y Make Code
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 Microbit.
- Vídeo sobre el funcionamiento y primeros pasos con la placa Microbit.
- Prácticas para familiarizarnos con entorno Makecode y la placa Microbit..
Comencemos con los conocimientos imprescindible de Makecode y Microbit:
Para ver a pantalla completa clicamos en presentación
Video que nos muestra el funcionamiento y primeros pasos con Microbit:
Prácticas sencillas para trabajar con makecode y Microbit:
Ya estamos listos para conocer el Kit IoT
Para ver a pantalla completa clicamos en presentación
Conocimiento previos de Kit IoT Smart Science
Ahora veremos lo que necesitamos saber de Smart Science IoT:
- Presentación IoT Smart Science
- Video sobre el funcionamiento de los componetes 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:
- Presentar el REA al alumnado.
- Mostrar al alumnado el kit Smart Science IoT y Micro:bit. Su funcionalidad y uso, de este modo comprederá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.
- Documentos:
- Documento para el alumnado
- Diario de aprendizaje (será necesario uno por grupo de alumnos o como especifique el docente)
Desarrollo de la actividad
- Producción y Luz. Es el paso inicial. Deben programar la lectura del sensor de luz para que dictamine la velocidad del ventilador. A más luz (más horas de jornada), el motor gira más rápido.
- El Límite de Fatiga. En lugar de dejar la máquina girando infinitamente, creamos una variable que sume puntos de "agotamiento" mientras la velocidad esté al máximo.
- La Huelga Obrera. Utilizamos un bloque condicional. Si la variable de fatiga supera el límite establecido por los alumnos, el sistema corta la energía del motor y muestra el mensaje "Huelga Obrera" en la pantalla de la placa.
Programación de la actividad
- Hardware requerido. Micro:bit v2, motor con ventilador.
- Objetivo. Simular las condiciones laborales de la Revolución Industrial relacionando intensidad lumínica, velocidad de producción y el estallido de una huelga.
Paso 1. Preparación del entorno y configuración de extensiones
En esta fase inicial configuramos las herramientas necesarias para que el proyecto pueda interactuar con una pantalla externa y procesar datos del entorno mediante la extensión de Environment-and-Science-IoT.
- Abrir o crear el proyecto: Accede a MakeCode para micro:bit y asegúrate de estar dentro del área de programación antes de continuar.
- Instalar las extensiones: Haz clic en el botón “Extensiones”, situado en el menú de engranaje o en la parte inferior del listado de categorías.

- Añadir las extensiones necesarias: Para que el proyecto funcione, debemos añadir la extensión Environment-and-Science-IoT para obtener los bloques de medición de sonido y ruido.

- Verificar las extensiones: Una vez añadidas, aparecerán nuevas categorías de bloques en el menú lateral que permitirán programar la visualización y la lectura del sensor.

Paso 2. Creación y gestión de variables del proyecto
Para que el programa pueda almacenar, recordar y procesar la información mencionada anteriormente, debemos crear estos "contenedores" de datos siguiendo este procedimiento general:
- Definición de nuevas variables: Accede a la categoría Variables (color rojo) situada en el menú lateral de bloques y pulsa el botón "Crear una variable..." que aparece en la parte superior del panel.

- Asignar un nombre: En la ventana emergente, escribe el nombre identificativo que represente el dato que deseas guardar (como "luzSolar") y pulsa Aceptar. Este proceso se debe repetir para cada dato diferente que necesites guardar; una vez creadas, MakeCode generará automáticamente los bloques ovalados con sus nombres y los bloques de "fijar" y "cambiar" específicos para gestionarlas en tu código.

Paso 3. Inicialización de variables y pantalla
Al arrancar el programa, prepararemos las variables que controlarán el sistema de fatiga del motor y configuraremos la pantalla OLED para mostrar información desde el inicio.
- Arrastra el bloque fijar limiteFatiga a 2500 de la categoría Variables dentro del bloque al iniciar para establecer el umbral máximo de funcionamiento a alta potencia.
- Inserta el bloque fijar tiempoMaxPotencia a 0 de la categoría Variables para inicializar el contador de esfuerzo del motor en cero.
- Añade el bloque initialize OLED with width 128 height 64 de la categoría OLED para enviar la orden física que activa la comunicación con la pantalla.

Paso 4. Lectura y mapeo de intensidad
Vamos a crear el ciclo principal que medirá continuamente un valor de entrada (como la intensidad de luz) y lo transformará en una velocidad adecuada para el motor.
- Introduce el bloque fijar velocidadMotor a de la categoría Variables dentro del bloque para siempre para procesar datos en tiempo real.
- Acóplale el bloque mapear value of light intensity(0~100) at pin P1 con el rango de 0 a 100 a un rango de 0 a 1023 de las categorías Matemática e IoT para escalar la señal del sensor a los valores de potencia del motor.

Paso 5. Control de seguridad por fatiga
Programaremos una condición de seguridad para que, si el motor ha estado demasiado tiempo a máxima potencia, se detenga automáticamente para evitar daños.
- Añade un bloque condicional si tiempoMaxPotencia >= limiteFatiga entonces de la categoría Lógica para que la placa tome una decisión basada en el esfuerzo acumulado.
- Dentro del "entonces", coloca escritura analógica pin P9 a 0 de la categoría Pines para enviar la orden física de detener el motor inmediatamente.
- Inserta los bloques show string "Huelga Obrera", pausa (ms) 500 y clear OLED display de la categoría OLED para mostrar un aviso visual de la parada por seguridad.

Paso 6. Gestión del esfuerzo y recuperación
Si el motor no ha llegado al límite, evaluaremos su velocidad actual para aumentar su fatiga si va rápido o permitir que se recupere si va despacio.
- En la sección si no del bloque anterior, añade show number velocidadMotor para monitorizar la potencia en tiempo real en la pantalla OLED.
- Introduce un bloque si velocidadMotor > 800 entonces para detectar el funcionamiento a alta potencia, sumando 100 a la variable tiempoMaxPotencia y mostrando un icono de esfuerzo en la matriz LED.
- En el si no de esta subcondición, añade lógica para que si tiempoMaxPotencia > 0, se reste 50 al contador, permitiendo que el motor se "recupere" y mostrando un icono de descanso.
- Finaliza el ciclo con una pausa (ms) 500 de la categoría Básico para estabilizar las lecturas y el comportamiento del motor.

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: Inserta con cuidado la Micro:bit en la ranura de la placa de expansión IoT.
- Conexión de sensores: Conecta el sensor de luz y el LED como se muestra en la imagen.
La pantalla OLED nos muestra los mensajes que hemos programado.
En este enlace podemos encontrar el resultado de la actividad al completo.
Comencemos - Juristas de Geografía e Historia
¡División de Geografía e Historia, nuestra labor es vital!
Debemos preparar una herramienta que nos ayude a todos a comprender y visibilizar las duras condiciones de trabajo de la época.
Nuestra misión es simular las interminables horas de trabajo empleando un sensor de luz y, cuando interactuemos prolongando la iluminación de la fábrica, el simulador de la micro:bit responderá haciendo girar un motor cada vez más rápido, acumulando de forma interna la fatiga de los trabajadores. Si no apagamos las luces para simular el descanso, la fatiga llegará a un punto de quiebre y el motor se detendrá por completo, emulando una huelga. Así, pondremos en valor la lucha histórica por los derechos laborales, logrando que todos podamos formarnos una imagen clara de los sacrificios humanos del pasado y adquiramos una mayor conciencia sobre nuestro estado del bienestar.
Aprenderemos a reconocer cómo transformó la Revolución Industrial nuestra sociedad y a programar eventos de control automatizado vinculando sensores lumínicos y motores. Desarrollaremos destrezas esenciales mediante el montaje físico de maquetas y la programación sencilla de dispositivos electrónicos. Descubriremos cómo construir soluciones prácticas que sirvan para evidenciar y comprender un problema social desde el desarrollo tecnológico, y lograremos que todo nuestro equipo esté perfectamente preparado para valorar los derechos adquiridos y afrontar el futuro con éxito.
- 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
🏭 Nuestra misión con la Micro:bit
Tenemos que crear una herramienta para entender cómo era el trabajo en el pasado. Usaremos un simulador para mostrar que, sin descanso, los trabajadores se agotan y las fábricas se detienen.
🔍 ¿Qué debemos comprender?
Para que nuestro simulador funcione bien, necesitamos relacionar la tecnología con la historia:
- Sensor de luz. Representa la luz de la fábrica. Mientras hay luz, el motor gira y simula que se está trabajando.
- Acumulación de fatiga. Es el cansancio de los obreros. Cuanto más tiempo esté la luz encendida, el motor girará más y más rápido.
- Punto de quiebre (Huelga). Si no apagamos la luz para "descansar", el motor se parará por completo para representar una huelga por los derechos laborales.
📝 Pasos a seguir:
- Montar la maqueta. Conectar físicamente el sensor de luz y el motor a nuestra placa Micro:bit.
- Programar el sensor. Crear un código para que el motor se mueva cuando detecte iluminación en la fábrica.
- Configurar el control. Programar que la velocidad del motor aumente según el tiempo que pase, simulando el agotamiento.
- Simular el descanso. Programar el sistema para que, al apagar las luces, el nivel de fatiga baje y el motor pueda seguir funcionando después.
📋 Conciencia social
Es muy importante usar la tecnología para comprender problemas sociales del pasado. Así aprenderemos a valorar los derechos que tenemos hoy y entenderemos mejor cómo la Revolución Industrial cambió nuestra sociedad.
¡Programamos para valorar nuestros derechos y el bienestar!
Nos preparamos
Estas presentaciones contienen todos los conocimientos necesarios para poder trabajar con Micro:bit y Smart Science IoT, así mismo esta dispone de un índice indicando los contenidos que veremos.
Para ver a pantalla completa clicamos en presentación
Ya estamos listos para conocer el Kit IoT.
Ahora veremos lo que necesitamos saber de Smart Science IoT. Especialmente importante revisar la programación de los proyectos 2 y 3 para la medición de parámetros ambientales y visualización por pantalla OLED.
Fase 0. Preparando nuestro entorno de la revolución industrial.
Antes de arrancar los motores de nuestra fábrica simulada, necesitamos equipar nuestro taller digital con las herramientas adecuadas para leer sensores y mostrar información.
- Nuestro reto. Añadir las extensiones especiales a nuestro entorno para poder controlar la pantalla digital y medir los datos ambientales.
- Pista de investigación. ¿En qué sección del menú podemos buscar las palabras clave "iot-environment-kit" para que aparezcan los bloques necesarios en nuestras categorías?
- Comprobación / visualización. Observamos que, al cargar las extensiones, nuestro menú lateral se llena de nuevos bloques preparados para leer el mundo físico y escribir en pantallas inteligentes.
Fase 1. Creando la memoria de nuestra fábrica.
Para que nuestra máquina de vapor funcione correctamente y los trabajadores tengan un límite de aguante, necesitamos crear "cajas" donde guardar esos datos numéricos importantes desde el primer momento.
- Nuestro reto. Crear las variables necesarias para el proyecto y establecer los valores iniciales de fatiga y tiempo justo al encender la placa.
- Pista de investigación. Investigando en la categoría variables, ¿cómo podemos crear y fijar el límite de fatiga a 2500 y el contador de tiempo a 0 dentro del bloque de inicio? Pensemos también en qué bloque de la categoría OLED necesitamos para que la pantalla se despierte al arrancar el sistema.
- Comprobación / visualización. Comprobamos que, al encender la placa, el cerebro digital ya conoce los límites de esfuerzo y la pequeña pantalla se inicializa correctamente.
Fase 2. Transformando la luz en movimiento.
El ritmo de producción de nuestra fábrica estará marcado por la luz del día; necesitamos que el motor gire más rápido cuanta más luz reciba nuestro sensor ambiental.
- Nuestro reto. Leer la intensidad de luz de forma continua y adaptar esa escala a la potencia real de nuestro motor.
- Pista de investigación. Dentro de un ciclo que se repite para siempre, ¿qué bloque de la categoría matemática nos permite "mapear" o transformar la señal del sensor de luz (de 0 a 100) en valores de potencia del motor (de 0 a 1023), guardando el resultado en nuestra variable de velocidad?
- Comprobación / visualización. Percibimos que la variable que guarda la velocidad del motor se actualiza constantemente y en tiempo real según la luz que proyectamos sobre el sensor.
Fase 3. El colapso y la huelga obrera.
La maquinaria y los trabajadores no pueden soportar una explotación extrema para siempre; si superamos el nivel de fatiga permitido, todo el sistema de producción debe detenerse por completo.
- Nuestro reto. Programar una condición de seguridad que apague el motor y muestre un aviso de huelga cuando el cansancio alcance el límite establecido.
- Pista de investigación. ¿Qué estructura de la categoría lógica nos ayuda a decidir si el tiempo a máxima potencia es mayor o igual al límite de fatiga? Si es así, investiguemos cómo usar los bloques de la categoría pines para cortar la energía al instante y la categoría OLED para escribir un mensaje de advertencia.
- Comprobación / visualización. Observamos que, al mantener el motor a máxima potencia demasiado tiempo, este se detiene en seco y la pantalla muestra claramente el mensaje de huelga obrera.
Fase 4. Gestionando el esfuerzo y la recuperación.
Si todavía no hemos llegado a la huelga, debemos calcular cómo va subiendo el cansancio cuando la máquina va muy rápido y cómo los trabajadores descansan cuando el ritmo es menor.
- Nuestro reto. Sumar puntos a la fatiga si la velocidad supera un nivel crítico o restarlos si el motor funciona de forma suave, actualizando la energía del pin.
- Pista de investigación. En la ruta alternativa de nuestra condición principal, ¿cómo evaluamos si la velocidad es mayor a 800 para sumar 100 puntos al contador de tiempo usando los bloques de variables? Pensemos también en cómo enviar esa misma velocidad analógica al pin P9 para que el motor físico reciba la orden de girar.
- Comprobación / visualización. Comprobamos que, al aplicar mucha luz, aparece un icono de esfuerzo en la matriz y la fatiga sube velozmente, mientras que al tapar el sensor, aparece una cara sonriente y el contador se reduce.
Fase 5. Conectando la placa al mundo real.
Ha llegado el momento de unir nuestro proyecto a los componentes electrónicos para dar vida a nuestra fábrica inteligente.
- Nuestro reto. Conectar nuestra placa micro:bit a la expansión IoT y enlazar los sensores y motores correspondientes.
- Pista de investigación. Investigamos cómo acoplar la placa a la base de expansión IoT. Luego, utilizando los cables jumper, conectamos el sensor de luz al puerto P1 y el módulo del motor al puerto P9, asegurándonos de que los colores de los cables coincidan con los pines de señal, voltaje y tierra.
- Comprobación / visualización. Comprobamos que, al encender el interruptor de la placa de expansión, el sistema reacciona de forma autónoma a la luz ambiental de la clase y el motor gira a distintas velocidades de forma fluida y segura.
Nuestras herramientas de apoyo
- Consejo lógico. Imaginamos la variable de fatiga como un vaso de agua; cuando la velocidad es alta, echamos agua al vaso muy rápido. Si el motor va lento, vamos vaciando el vaso poco a poco. Si el vaso rebosa, el sistema se bloquea por seguridad.
- Consejo hardware/físico. Cuando conectemos el módulo del ventilador o motor al pin P9 mediante el cable jumper, nos aseguramos de que las aspas tengan espacio libre para girar sin chocar con nuestros dedos ni con los demás cables para evitar accidentes.
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 anidado correctamente la condición del límite de esfuerzo antes de evaluar los aumentos y descensos de la fatiga? (Sí/No)
Un poco de ayuda
Montamos nuestro código
Aquí tenemos una actividad para facilitar el montaje del código. Vamos a colocar los bloque correctamente y habremos superado la misión
Aprendo, pienso y crezco
Aprendo , pienso y crezco
El diario de aprendizaje es nuestro registro de evidencias personal del veredicto temporal. No sirve para copiar teoría. Sino para reflexionar sobre cómo hemos aprendido a traducir la lógica y la tecnología en una experiencia interactiva capaz de restaurar la línea del tiempo.
- Diario de aprendizaje (será necesario uno por grupo de alumnos o como especifique el docente)
Después de...
Una vez que nuestra maquinaria de la Revolución Industrial funciona y el hardware responde a los sensores, realizamos una sesión de validación ante el Consejo del Tiempo. Es el momento de exponer la solidez de nuestras pruebas y la calidad de nuestra programación para demostrar ante el tribunal que merecemos recuperar nuestro futuro.
Organización de los equipos por áreas de peritaje
- División de Geografía e Historia: presentaremos la lógica de nuestra evidencia. Explicaremos cómo la programación de la placa Micro:bit controla los datos de luz y fatiga para que el jurado comprenda la dureza del contexto histórico y la necesidad de nuestros derechos laborales.
- División de Lengua Castellana: presentaremos la narrativa del veredicto. Demostraremos cómo hemos sincronizado los datos térmicos del sensor BME280 con nuestros argumentos y descripciones realistas, aportando un análisis crítico irrebatible sobre el clima laboral de las fábricas.
- División de Inglés: presentaremos nuestro protocolo de comunicación global. Mostraremos cómo nuestro sistema de seguridad lanza alertas y mensajes técnicos en la pantalla OLED en lengua extranjera mediante condicionales, demostrando la estandarización internacional de la protección al trabajador.
Guía de presentación: qué debemos incluir en nuestro informe
Roles del equipo
Para la exposición, dividimos el trabajo en tres misiones para que todo el mundo participe:
- La Portavocía (Comunicación): explica el objetivo de la prueba, por qué es útil para el juicio y cómo mejora la comprensión del caso.
- La Parte Técnica (Programación): maneja el simulador en directo y muestra la estructura del código (Scratch o MakeCode) ante el Consejo.
- El Análisis (Depuración): explica cómo funcionan las variables internas y responde a las dudas sobre posibles fallos.
Objetivo y programación (¿qué y por qué?)
Explicamos la lógica de nuestro código y su utilidad para la misión:
- El Objetivo: aclararemos qué queríamos conseguir al recrear esta maquinaria y cómo nos ayuda a convencer al consejo de nuestra evolución.
- La Lógica: detallaremos qué bloques hemos usado en MakeCode y cómo las entradas de los sensores del kit Smart Science IoT generan las salidas exactas en nuestro motor y pantalla OLED.
Diario de errores y soluciones
Documentamos las dificultades que hemos superado durante las pruebas:
- Depuración: registraremos las dificultades superadas. ¿Tuvimos problemas con la lectura de los sensores ambientales o con los bucles de nuestro código?
- Solución: explicaremos cómo ajustamos la programación o las conexiones a la placa IoT:bit para que nuestra fábrica simulada fuera completamente estable.
Comprobación y conclusiones
Analizamos si el robot es fiable en su navegación. Comparamos los resultados:
- Fiabilidad: ¿es nuestra maquinaria intuitiva? Reflexionaremos sobre si el tribunal entenderá los datos obtenidos y si estas pruebas son suficientes para emitir un veredicto a favor de nuestra línea temporal.
Formato de presentación (opciones DUA)
- Opción A. Demo en vivo. Realizaremos una prueba real en clase, proyectando el funcionamiento de nuestra Micro:bit y el software simultáneamente.
- Opción B. Anatomía del código. Usaremos capturas de pantalla de nuestra programación para explicar el flujo lógico y los condicionales que controlan la fábrica.
- Opción C. Diagrama de flujo. Generaremos un esquema visual que explique de forma gráfica y sencilla la toma de decisiones de nuestro programa para defender el caso.