Saltar al contenido

Nombre: ______________________________

Fecha: ____________________

Semana 5

Hacer que los robots reaccionen

Combina sensores con ciclos y condiciones para que un robot reaccione al mundo por su cuenta.

70 a 85 minutos

Ideas clave

Ciclos: repetir sin volver a escribir

En la semana 3 escribiste todos los pasos uno tras otro. Eso funciona, pero si quieres que el robot revise su sensor cien veces, no vas a querer escribir el mismo paso cien veces. Un ciclo es un bloque que repite los pasos por ti.

Ciclos infinitos y ciclos de repetir-hasta

Un ciclo infinito repite sus pasos una y otra vez y nunca se detiene solo: sigue hasta que detienes el programa. Los robots usan ciclos infinitos para no dejar de observar el mundo, como "por siempre: lee el sensor y reacciona".

Las condiciones son verdaderas o falsas (booleanas)

Una condición es una pregunta sobre el mundo que solo se puede responder con sí o no; en programación decimos verdadero o falso. A un valor que solo puede ser verdadero o falso se le llama booleano.

Si y si/si no: elegir qué hacer

Un bloque si ejecuta sus pasos solo cuando su condición es verdadera. "Si la pared está cerca, gira a la derecha" significa que el robot gira únicamente cuando de verdad hay una pared cerca; si no, se salta el giro.

Evasión de obstáculos = ciclo + sensor + si/si no

Ahora junta todo. La evasión de obstáculos es un ciclo infinito que lee el sensor de distancia y usa si/si no para decidir: si hay algo cerca, apártate; si no, sigue avanzando. Como el ciclo se repite muchas veces por segundo, el robot reacciona en el instante en que aparece un obstáculo.

Seguimiento de línea: revisar sin parar y corregir el rumbo

El seguimiento de línea usa un sensor de luz o de color apuntando al piso. Una línea oscura refleja menos luz que un piso claro, así que el sensor puede distinguir "sobre la línea" de "fuera de la línea". El robot revisa una y otra vez, sin parar, y corrige el rumbo para mantenerse sobre la línea.

Palabras que hay que saber

Ciclo:
Un bloque que repite uno o varios pasos en lugar de que los escribas una y otra vez.
Ciclo infinito:
Un ciclo que sigue repitiendo sus pasos una y otra vez hasta que detienes el programa.
Repetir-hasta:
Un ciclo que repite sus pasos hasta que una condición se vuelve verdadera, y entonces se detiene y sigue adelante.
Condición:
Una revisión sobre el mundo, como "¿está cerca la pared?", que siempre es verdadera o falsa.
If:
Un bloque que ejecuta sus pasos solo cuando su condición es verdadera, y los salta cuando es falsa.
Si/si no:
Un bloque que ejecuta un conjunto de pasos cuando la condición es verdadera y otro conjunto distinto cuando es falsa.
Booleano:
Un valor que solo puede ser una de dos cosas: verdadero o falso. Las condiciones dan una respuesta booleana.
Evasión de obstáculos:
Un comportamiento en el que el robot repite en ciclo, lee un sensor de distancia y se aparta cuando algo está cerca.
Seguimiento de línea:
Un comportamiento en el que el robot revisa constantemente un sensor de luz o de color y se dirige para mantenerse sobre una línea marcada.
Comportamiento reactivo:
Cuando un robot cambia lo que hace según lo que percibe, en tiempo real, en lugar de seguir una lista fija.

Tu actividad

Programa de evasión de obstáculos

Meta: Programar un robot para que repita en ciclo, lea un sensor de distancia y use si/si no para girar cuando algo está cerca y avanzar cuando el camino está libre.

  1. El patrón siempre es el mismo: ciclo infinito, leer el sensor de distancia, y luego si/si no: si hay algo cerca, gira; si no, avanza.
  2. Primero decide tu regla de cercanía (por ejemplo, "a menos de 10 cm cuenta como cerca"). Después arma el ciclo para que el robot siga reaccionando todo el tiempo que esté funcionando.

Escribe qué pasó:

Exploración del seguimiento de línea

Meta: Usar un sensor de luz o de color con repetir-hasta y si para que un robot se mantenga sobre una línea marcada.

  1. El seguimiento de línea es un comportamiento de revisar sin parar: una y otra vez, lee el sensor de luz o de color y corrige el rumbo para quedarte sobre la línea.
  2. Con una regla sencilla basta: si el sensor está sobre la línea, curva hacia un lado; si no, curva hacia el otro. Métela en un ciclo de repetir-hasta que termine cuando el robot llegue a la marca final.

Escribe qué pasó:

Predice

Escribe tu conjetura antes de probar.

Antes de ejecutar el programa de obstáculos: cuando el robot se encuentre una pared, ¿qué predices que va a hacer, y por qué?

Predice: si sacas el leer sensor del ciclo, ¿cómo van a cambiar las reacciones del robot?

Prueba y registra

Prueba de confiabilidad de la evasión de obstáculos

Coloca el robot frente a un obstáculo y ejecuta el programa. Anota si se apartó a tiempo. Repítelo tres veces desde el mismo punto de partida.

Registra: En cuántos de los tres intentos el robot logró esquivar el obstáculo

Try¿Esquivó el obstáculo? (S/N)Qué fue lo que hizo
   
   
   

Comprobación de conocimientos

Responde cada pregunta. En las de opciones, encierra en un círculo la mejor respuesta.

  1. Decide si esta afirmación es verdadera o falsa.

    Un ciclo infinito se detiene solo después de unos segundos.

    Encierra una:   Verdadero   /   Falso

  2. ¿Qué hace un ciclo en un programa?

    • A.Hace que el robot se mueva más rápido
    • B.Repite uno o varios pasos en lugar de escribirlos una y otra vez
    • C.Detiene al robot
    • D.Le agrega un sensor nuevo
  3. ¿Cuál es la diferencia entre un ciclo infinito y un ciclo de repetir-hasta?

    • A.Un ciclo infinito se ejecuta una vez; uno de repetir-hasta se ejecuta dos veces
    • B.Un ciclo infinito se repite hasta que detienes el programa; uno de repetir-hasta se repite hasta que una condición se vuelve verdadera
    • C.Son exactamente lo mismo
    • D.Un ciclo infinito necesita un sensor y uno de repetir-hasta no
  4. Una condición como "¿está cerca la pared?" solo puede ser:

    • A.Un número en centímetros
    • B.Verdadera o falsa (un booleano)
    • C.Un color
    • D.Una velocidad de motor
  5. ¿Qué hace un bloque si/si no?

    • A.Ejecuta un conjunto de pasos cuando la condición es verdadera y otro distinto cuando es falsa
    • B.Repite un paso diez veces
    • C.Siempre ejecuta los dos conjuntos de pasos
    • D.Lee un sensor
  6. ¿Cómo funciona la evasión de obstáculos?

    • A.El robot recorre una ruta fija que le indicaron una sola vez
    • B.Un ciclo lee el sensor de distancia y, si hay algo cerca, el robot gira; si no, avanza
    • C.El robot espera a que una persona lo maneje para rodear cada obstáculo
    • D.El robot se apaga cuando ve un obstáculo

Reflexiona

¿Qué decisión toma tu robot una y otra vez, y qué información usa para tomarla?

¿Por qué un robot que reacciona necesita un ciclo alrededor de la revisión de su sensor, en lugar de revisar una sola vez?

Describe un robot real que reaccione al mundo y nombra la condición que revisa.