ESTADO: APROBADO (BAJO SUPERVISIÓN ADULTA)

CUTEBOT PREDATOR

"El Juego del Gato y el Ratón (Versión 2.0)"

Ingenieros: R. Fadrique & D. Galán
Mentor: El Crítico Supremo

Dificultad Lógica

Media-Alta. Requiere entender máquinas de estados. No apto para quien copia y pega sin leer.

Tiempo de Ejecución

2 Sesiones. (1 Programación + 1 Calibración de sensores y pánico porque no va).

Stack Tecnológico

MakeCode + Extensión Cutebot + Sonar.
*Pilas AAA requeridas (No incluidas en la magia).

01. LA MISIÓN

Programar un vehículo autónomo capaz de escanear el entorno, detectar intrusos humanos y perseguirlos. El usuario (la presa) debe desactivar el robot proyectando una sombra sobre sus sensores ("Shadow Kill") antes de ser tocado. Básicamente, un "pilla-pilla" donde si pierdes, la humillación es tecnológica.

02. NIVEL LEYENDA (FEATURES)

Feedback Visual

El robot no es mudo. Usa código de colores para comunicar sus "emociones". Azul (Radar), Rojo (Ira/Ataque), Verde (Derrota). Si no hay luces, el usuario no sabe si correr.

Seguridad Anti-Choque

Implementación de frenado de emergencia a < 5cm. Porque romper el robot el primer día baja la nota (y la moral).

Mecánica "Shadow Kill"

La innovación real. Usar el sensor de luz ambiental como "botón de apagado". Obliga a calibrar el hardware según la iluminación de la sala. Nota: No funciona en la oscuridad absoluta (obvio).

03. INGENIERÍA DEL NÚCLEO

1. Definición de Estados (Variable State)

STATE = 0
MODE: SEARCH
STATE = 1
MODE: ATTACK
STATE = 2
MODE: SLEEP

// FASE 0: ESCANEO (RADAR)

WHILE State == 0:

  • Light: BLUE (Cielo)
  • Motor: Girar Izquierda @ 25% // Lento para que el sonar lea bien
  • IF (Sonar_Distance < 60 cm) THEN:
  • Set State = 1

// FASE 1: PERSECUCIÓN (PREDATOR)

WHILE State == 1:

  • Action: Pausa 100ms (Encarar objetivo)
  • Light: RED + Sonido "Sirena"
  • Motor: Avanzar @ 80% // ¡A toda máquina!
  • CONDITION: TARGET CAUGHT
  • IF (Distance < 5 cm): Stop Motors, Light Orange (WIN)
  • CONDITION: TARGET LOST
  • IF (Distance > 80 cm): Set State = 0 (Back to Radar)

// INTERRUPCIÓN GLOBAL (Siempre activo)

EVENT: ON LIGHT LEVEL CHANGE

IF (Light_Level < 30) // Sombra detectada
THEN:
  1. State = 2 (Desactivado)
  2. Stop All Motors (Immediate)
  3. Light: GREEN + Sound "Power Up"
  4. Wait 5000ms
  5. State = 0 (Reiniciar sistema)

CHECKLIST DE MONTAJE

Challenge Final

¿Os funciona? Bien, ahora haced que parezca vivo. Implementad COMPORTAMIENTO ALEATORIO.

SI pierde al objetivo (Sonar > 80cm por 5 seg):

-> No volver a girar inmediatamente.

-> Moverse a una posición RANDOM (azar) o hacer un "baile".

-> LUEGO volver a buscar.