Briefing de misión

Máquinas que sienten y deciden

Aprenderás a crear programas que toman decisiones, repiten acciones y reaccionan a lo que ocurre. Primero trabajarás en Scratch y después llevarás esas ideas al mundo real con Octabio.

Guía: 2 · Nivel 1
Duración: 3 horas y 30 minutos
Ruta: Scratch + Octabio
?

Pregunta guía: ¿cómo logramos que una máquina decida qué hacer dependiendo de lo que ocurre?

Recordemos

Antes de avanzar, activa lo que ya sabes

Algoritmo

Secuencia ordenada de pasos de un algoritmo para lograr un objetivo

Es una lista de pasos claros, precisos y en orden que una máquina sigue al pie de la letra para lograr un objetivo.

Si cambiamos de lugar un paso en un algoritmo, ¿qué ocurre?

Debugging

Proceso de depuración: probar, encontrar el error y corregir

Consiste en probar lo que hace un programa, localizar la instrucción que falla y corregirla hasta que funcione.

¿Qué significa depurar un programa?

Programación en bloques

Bloques de colores de Scratch que encajan como piezas de LEGO

Es programar encajando bloques de colores, como figuras de LEGO: cada bloque representa una instrucción.

¿Con qué bloque haces que varios objetos inicien su programación a la vez?

Condicionales

Tomamos decisiones todo el tiempo

Un condicional es una pregunta de sí o no: si la respuesta es verdadera, el programa hace una instrucción; si es falsa, hace otra.

🌧️ ¿Está lloviendo?

Sí: llevo paraguas.
No: me quedo en la casa.

🚦 ¿El semáforo está en verde?

Sí: avanzo.
No: espero.

🔑 ¿La contraseña es correcta?

Sí: permito el acceso.
No: bloqueo el acceso.

Robot educativo frente a un obstáculo, ilustración que muestra cómo decide entre detenerse o seguir avanzando
Nuevo concepto

Condicionales en Scratch

1 · Si <condición> entonces

El programa hace la pregunta: ¿la condición es verdadera? Si sí, ejecuta las instrucciones de adentro. Si no, las salta y continúa.

Bloque de Scratch: si condición entonces, que ejecuta las instrucciones de adentro solo cuando la condición se cumple

2 · Si <condición> entonces · si no

Elige entre dos caminos: si la condición es verdadera hace una cosa; si no, hace la otra.

Bloque de Scratch: si condición entonces, si no, que elige entre dos caminos según la condición

Comparadores

En la condición del bloque si puedes evaluar una variable o una comparación. Estos bloques de comparación te permiten ver si dos valores son iguales, si uno es más grande o más pequeño, o si se cumple una o dos condiciones. Le dan al condicional la respuesta que necesita.

= igual · ¿los dos valores valen lo mismo?

< menor que · ¿el primero vale menos que el segundo?

> mayor que · ¿el primero vale más que el segundo?

y · ¿las dos condiciones se cumplen a la vez?

o · ¿se cumple al menos una?

Comparadores de Scratch en vertical: igual, menor que, mayor que, Y y O
Miniproyecto 1

Frankestein cuida la entrada

Frankestein solo deja entrar a quien conoce la contraseña. Su programa evalúa una condición: ¿la contraseña es correcta? Tu misión es replicar este código y entender cómo usar los bloques condicionales.

Código · así se programa la condición
Código del programa con bloques para preguntar la contraseña, comparar la respuesta y decidir si el acceso es permitido o denegado
Ejecución del programa
Animación de la ejecución: el guardián con cara de Frankestein pregunta la contraseña, si es correcta deja pasar y si no, lo bloquea

Preguntar y esperar: muestra la pregunta en pantalla y espera a que se escriba la respuesta.

Respuesta: guarda lo que escribió la persona, para compararlo con la contraseña.

Puedes buscar cada bloque por su color en la lista de categorías.

Bloques de Scratch: preguntar y esperar y respuesta
Nuevo concepto · Bucles

Bucles: cómo reducir el código

Mira el código de la izquierda: los tres primeros bloques resaltados se repiten 5 veces, y esto nos permite animar al ave del centro para que haga 5 secuencias de aleteo. Esto mismo lo podemos optimizar usando bucles: en la categoría de control encuentras el bucle repetir, que te permite repetir las veces que indiques los bloques que tiene dentro.

Código espagueti con bloques secuenciales para una animación corta; los tres primeros bloques resaltados crean cada imagen de la animación y se repiten cinco veces
Cada frame de la animación se hace con los tres primeros bloques; este código tan largo hace solo 5 frames.
Animación del ave aleteando cinco veces gracias a la repetición de los bloques secuenciales
Así se ve la animación de los 5 frames.
Código con el bloque repetir que indica cuántas veces ejecutar los bloques de adentro
Con repetir indico cuántas veces repito los bloques de adentro; este código hace lo mismo que el largo y puede repetirse aún muchas veces más.
Mini proyecto

Bucles infinitos en Scratch

Ya vimos un bloque que nos permite repetir las veces que queramos un grupo de instrucciones, pero existe un bloque que lo repite infinitamente, permitiendo hacer animaciones más largas.

!

Tu misión: replica el código de la izquierda y observa qué pasa; luego implementa el de la derecha y mira cómo cambia la animación.

Código con un bloque que repite la animación del vuelo una cantidad exacta de veces
El bucle infinito permite hacer la animación del vuelo infinitamente.
Animación del ave volando de un lado a otro sin detenerse gracias al bucle infinito
Así se ve la animación infinita del ave.
Código del vuelo infinito con dos bloques adicionales: girar en la dirección contraria y rebotar al tocar un borde
Hay dos bloques adicionales que necesitas para que se vea así: el primero hace que el ave se oriente en la dirección contraria cuando rote, y el último hace que rebote cuando llega a un borde.
Sensores virtuales

¿Cómo sabe el programa qué está ocurriendo?

Un sensor obtiene información del mundo real y se la entrega al programa. Los sensores de Scratch responden con verdadero, falso, un número o un texto, y con esa respuesta el programa decide qué hacer.

🖱️ Tocando el mouse

Pregunta si el puntero del mouse toca al objeto o viceversa.

Respuesta del sensor:FALSO

🎨 Tocando el color

Elige un color y pasa el mouse: se activa cuando toca un círculo de ese color.

Color a detectar
Respuesta del sensor:FALSO

📏 Distancia al mouse

Muestra las coordenadas del puntero y su distancia al centro del plano cartesiano.

Respuesta del sensor:
x: 0y: 0dist: 0

⌨️ Tecla presionada

Presiona las teclas A, S o D, los números o las flechas: el sensor resalta la tecla y la reporta.

A
S
D
1
2
3
Respuesta del sensor:
Sensores en Scratch

Los sensores de Scratch

Scratch tiene diferentes bloques para interactuar con el usuario y el entorno de la PC, permitiendo que los programas respondan en tiempo real a las respuestas del usuario: así se puede interactuar e incluso programar videojuegos.

Bloques de sensores en Scratch
  • Tocando el puntero del ratón: pregunta si el puntero toca un objeto.
  • Tocando el color: pregunta si toca un color determinado.
  • Distancia a puntero de ratón: mide qué tan lejos está el objeto del puntero.
  • Preguntar y esperar con respuesta: hace una pregunta y usa la respuesta en el programa.
  • Tecla espacio presionada: pregunta si se presionó una tecla (se puede elegir cualquiera).
  • Ratón presionado: pregunta si se mantiene presionado el clic del ratón.
  • Posición X del ratón y posición Y del ratón: las coordenadas del puntero.

Eventos activados por sensores

Bloques de eventos en Scratch

Así como el bloque al presionar la bandera inicia el código, estos bloques inician un programa cuando el sensor detecta el evento:

  • Al presionar la tecla [espacio]: inicia el programa cuando se presiona la tecla elegida.
  • Al hacer click en este objeto: inicia el programa cuando se hace clic sobre el objeto.
Mini reto

Controla al personaje con las flechas

Usa los eventos al presionar la tecla para mover un personaje con las flechas del teclado, tal como se muestra en la animación. Agrega un oso al escenario y replica los siguientes bloques.

Bloques para mover un personaje con las flechas Con estos bloques el personaje se mueve con las flechas.
Oso moviéndose con las flechas Así se ve el oso moviéndose.
💡

Para que la animación se vea mejor cuando el objeto llegue a los extremos, usa dos bloques que ya conoces del ejercicio del ave: Fijar estilo de rotación a izquierda-derecha y Si toca un borde rebotar. Recuerda: el primero se usa al iniciar el programa y el segundo debe ir dentro de un bucle por siempre, porque se evalúa todo el tiempo. ¡A ti te toca hacer esta parte del código para mejorar la animación!

💡

Si quieres puedes seleccionar otro personaje, pero asegúrate de que tenga disfraces que simulen su movimiento.

Misión integradora

No te salgas de la pista

Construye un pequeño videojuego donde guiaremos a Chick por una pista de carreras controlándolo con las flechas del teclado, debemos completar una vuelta completa sin tocar el césped verde para ganar.

Esta misión la haremos en dos partes:

Primera parte: preparamos el escenario y los personajes del juego.
Segunda parte: programamos la mecánica del juego y evaluaremos la condición para perder.
Ejecución del videojuego de la pista Así se ve el juego: Chick avanza por la pista sin tocar el césped.
Misión integradora · Parte 1

Prepara el escenario y al personaje

Prepara los fondos

  • Agrega un fondo de pista de carreras.
  • Agrega un fondo oscuro y pon un letrero blanco que diga Game Over, como se muestra aquí:
Fondo de Game Over

Agrega el personaje

  • Agrega a Chick al escenario y ajusta su tamaño a 50 para que pueda pasar por la pista.
  • Debes hacer que cuando se presione la bandera Chick inicie siempre en el mismo lugar, para que si pierde no inicie donde perdió, porque volverá a perder.
  • Asegúrate de que en esta posición inicial Chick no esté tocando el césped verde.
Chick, el personaje del juego
Misión integradora · Parte 2

Programa la mecánica del juego

  • Al iniciar el programa, Chick inicia siempre en el mismo lugar y con el escenario de pista de carreras.
  • Programa que el personaje se mueva libremente con las flechas del teclado y pruébalo.
  • Crea un condicional que se evalúe por siempre: pregunta si el objeto está tocando el color del césped; si es así, cambia el fondo al fondo de Game Over.

Para tomar el color del césped, hazlo como se ve a continuación:

Cómo tomar el color del césped
Ejecución del videojuego La meta es que el juego funcione como puedes ver aquí.
Transición

Con Scratch puedes controlar un robot real

En Scratch

Animación del oso en Scratch
1Una tecla o un color entrega información.
2El programa decide.
3El sprite se mueve o cambia.

En Octabio

Animación del robot en Octabio
1Un botón, micrófono o sensor entrega información.
2El programa decide.
3Las luces, pantalla o sonido reaccionan.

ENTRADA

El sensor mide los cambios en el entorno y los reporta.

PROGRAMA

El programa analiza la información del sensor, evalúa las condiciones continuamente usando bucles.

SALIDA

El programa da la orden de encender una luz, decir algo en la pantalla o hacer un sonido.

Conoce a Octabio

Octabio: Programa, Crea y Aprende

Octabio es una plataforma robótica potenciada por IA que te permite aprender haciendo. Integra múltiples sensores, actuadores y piezas de construcción que te permiten desarrollar proyectos increíbles del mundo real.

🚀

Con Octabio puedes crear desde robots que se mueven hasta cohetes que vuelan y luego aterrizan a salvo.

Octabio en acción
Características

Característica de Octabio

Octabio y sus características
Componentes

Componentes

Componentes de Octabio
Primer programa

Crea tu primer programa con Octabio

Conecta tu Octabio al computador y construye el programa que se muestra en el video para que Octabio salude.

1. Conecta tu Octabio al computador con el cable USB‑C y haz clic en Conectar.

2. En la ventana emergente, selecciona el puerto COM de la tarjeta y haz clic en Conectar.

3. Sabrás que se conectó cuando aparezcan los botones Subir programa y Desconectar.

4. En el editor no tenemos el bloque al presionar la bandera: el programa inicia cuando se enciende o reinicia Octabio. Usa el bloque Al iniciar de eventos y Escribir en el centro de la pantalla de pantalla para escribir el mensaje.

5. Sube el programa con Subir programa y comprueba el resultado.

Cómo conectar Octabio y armar el programa
Mini reto

Un saludo más dinámico

Haz una versión más dinámica del saludo: agrega un bloque Animar LEDs y un bloque Tocar sonido para que Octabio ilumine y suene al saludar. Replica el código que se muestra a continuación.

Código del saludo dinámico con LEDs y sonido
💡

Prueba diferentes tipos de animación y de sonidos. Recuerda seleccionar repetir en el bloque de la animación.

Saludo dinámico de Octabio
Luces

Los NeoPixel de Octabio

Un NeoPixel es un LED inteligente. En Octabio hay 8 NeoPixels organizados como un aro de luz. Lo interesante es que puedes controlar cada uno por separado o todos al mismo tiempo. Es como tener 8 mini bombillos artistas que obedecen exactamente lo que tú programes. Los bloques de LEDs de Octabio permiten encenderlos, cambiar colores, animarlos y desplazar patrones.

Aro de ocho NeoPixels de Octabio
  • Animar LEDs: aquí se selecciona el tipo de animación y cuánto se repite.
  • Todos los LEDs a color: enciende todos los LEDs del mismo color.
  • Establecer LEDs a: aquí se selecciona el color para cada uno de los LEDs del aro.
  • Desplazar LEDs en sentido horario: mueve los colores del aro; se selecciona horario o antihorario.
  • Tiempo entre pasos de animación: controla la velocidad de la animación.
  • Apagar LEDs: apaga todos los LEDs.
Mini reto

Secuencias de colores

Crea una animación donde todos los LEDs se encienden de un color, esperan un tiempo y cambian de color. Replica el código que se muestra en la imagen.

💡

Puedes ajustar el tiempo entre animaciones y agregar o eliminar colores para hacer una animación más creativa.

Código de secuencia de colores en Octabio
Animación de secuencia de colores en Octabio
Mini reto

Arcoíris rotativo

Selecciona un color diferente para cada uno de los 8 LEDs del aro y luego haz que esos colores roten en sentido horario o antihorario, creando una animación rotativa fluída como se muestra en el video. Replica el siguiente código y selecciona los colores que más te gusten.

Código de arcoíris rotativo en Octabio
Animación de arcoíris rotativo en Octabio
Misión

Semáforo inteligente

Crea una animación que simule la operación de un semáforo para ayudar a mejorar la movilidad en la ciudad. Usa bloques para cambiar los colores de los LEDs, esperas para los tiempos de la secuencia y un bucle infinito para que la animación se repita indefinidamente.

💡

La secuencia es: verde (3 s) → naranja (1.5 s) → rojo (3 s) → naranja (1.5 s) y se repite indefinidamente.

Cuando ya tengas la secuencia funcionando, añade notificaciones en la pantalla. Usa el bloque "Escribir en el centro de la pantalla" para indicar el estado, como se muestra en el segundo semáforo.

💡

Al escribir muchas veces en la pantalla necesitas primero limpiarla: antes de escribir, usa primero el bloque "Limpiar pantalla".

Solo luces
ALTO
ESPERA
AVANZA
Luces + pantalla
MiniTest de misión

Comprueba lo aprendido

Reporte de misión

Hoy programaste sistemas que reaccionan

Usaste condicionales para decidir, bucles para repetir, sensores virtuales para percibir y después transferiste esa lógica al aro de luces y a la pantalla de Octabio.

CondicionalesBuclesSensoresNeoPixelsPantalla

Reflexión final

En el semáforo combinaste esperas, colores y un bucle infinito para resolver un problema real. Ahora piensa en otro problema de tu entorno: ¿qué información debería detectar un dispositivo para resolverlo, qué decisión tomaría con condicionales y bucles, y cómo lo comunicaría usando luces o la pantalla?