La lógica del semáforo: enseñar máquinas de estados a niños de 10 años

Un semáforo es la primera máquina de estados perfecta: cada color es un estado, cada cambio una transición y el tiempo decide cuándo avanzar. Construye el ciclo fijo y luego añade un pulsador.
Un semáforo es la mejor primera máquina de estados que puede construir un niño, porque un crío de diez años ya se sabe todas las reglas de memoria. Cada color es un estado, cada cambio es una transición y el tiempo no es más que cuánto espera la máquina antes de pasar al siguiente. Nombra esas tres partes en voz alta y casi todo el código se escribe solo.
Las tres palabras que lo desbloquean
Una máquina de estados es una forma de describir algo que solo puede estar en una situación a la vez. Un semáforo está en rojo, o en verde, o en ámbar. Nunca en dos a la vez, y siempre sigue el mismo recorrido. Esa única regla es lo que lo convierte en una herramienta didáctica tan limpia.
Dibújalo en la pizarra como tres círculos con flechas entre ellos. Los círculos son los estados. Las flechas son las transiciones. Pregunta a la clase cuándo debe dispararse cada flecha y ya habrás descrito el programa entero antes de escribir una sola línea.
Construye primero el ciclo fijo
Empieza por la versión más sencilla: rojo cinco segundos, verde cinco segundos, ámbar dos, y vuelta al rojo, sin parar. Solo hay una luz encendida en cada momento. Esa restricción es la lección. Si se encienden dos luces a la vez, la máquina está en un estado imposible, y los niños detectan ese fallo enseguida.
Puedes montarlo con tres LED en una placa de pruebas, con las luces integradas de la placa sheenbot∞, o enteramente en el navegador con el editor de bloques cuando no hay hardware en el aula. El cableado cambia; el diagrama de estados no.
Añade el pulsador de peatones
Ahora ponlo interesante. Un pulsador de peatones es un evento, y los eventos son la razón por la que las máquinas de estados ganan a un simple bucle temporizado. Cuando alguien pulsa el botón durante el verde, la luz no debe saltar al rojo. Debe terminar su turno, pasar a ámbar y luego a rojo, y aguantar un poco más para que una persona pueda cruzar.
Esto enseña dos ideas a la vez. Primera, una transición puede dispararse por un evento y no solo por un temporizador. Segunda, algunas transiciones están condicionadas: la pulsación solo cuenta mientras la luz está en verde. Una máquina de estados para niños montada en torno a un semáforo es en realidad una lección sobre cuándo se aplica una regla, no solo sobre cuál es la regla.
Por qué este patrón está en todas partes
En cuanto un niño sabe ver estados y transiciones en un semáforo, empieza a encontrarlos por todos lados. Un microondas está inactivo, cocinando o en pausa. Un personaje de videojuego está de pie, corriendo o saltando, y no puede hacer dos cosas a la vez. Las máquinas expendedoras, las puertas de los ascensores y los mensajes que se envían los dispositivos entre sí funcionan con la misma forma. Es una de las pocas ideas de la informática que un niño de diez años y un ingeniero en activo dibujan exactamente igual.
Un plan de clase de 40 minutos
- Dibujad juntos el diagrama de tres estados antes de tocar nada de código, unos cinco minutos.
- Programad el ciclo fijo rojo-verde-ámbar y ejecutadlo hasta que los tiempos os cuadren.
- Encended a propósito dos luces a la vez para que la clase vea un estado imposible.
- Añadid el pulsador de peatones y decidid, en grupo, exactamente cuándo debe contar la pulsación.
- Terminad nombrando tres máquinas de casa que funcionen igual.
El proyecto entero cabe en una sesión y casi no exige vocabulario nuevo. Si quieres una versión lista para usar con fichas de trabajo, está dentro de nuestro plan de estudios de robótica, y puedes probar una clase antes con una clase de prueba gratuita.



