Skip to main content

Lección 4: Mueve un disco rojo y verde

  • A continuación, el robot de realidad virtual deberá avanzar hasta el siguiente objetivo de color. Tenga en cuenta que el robot VR tendrá que avanzar cuatro cuadrados de cuadrícula, u 800 milímetros (mm) para llegar al centro de la siguiente portería de color.

    Vista de arriba hacia abajo del Disk Mover Playground, con el VR Robot colocado en el borde de la portería azul después de dejar el primer disco azul, mirando a la portería roja a la derecha. Una flecha punteada apunta desde la parte frontal del robot de realidad virtual a la portería roja, lo que indica el siguiente movimiento previsto.
  • Añada un bloque [Drive for] al código y establezca el parámetro en 800 milímetros (mm).

    El mismo proyecto VEXcode VR de la página anterior, con un comentario y un bloque Drive for añadido al final de la pila. Los dos bloques adicionales leen Conducir al siguiente objetivo, luego conducir hacia adelante durante 800 mm.
  • El robot VR ahora tendrá que girar para enfrentarse a los discos de colores.

    Vista de arriba hacia abajo del parque de juegos Disk Mover, con el área de portería roja posicionada VR Robot. Una flecha curva apunta desde la parte frontal del robot VR hacia los discos rojos, indicando el giro necesario para enfrentar los discos rojos.
  • Añada un segundo bloque [Turn to heading] al código y establezca el parámetro en cero grados. Esto hará que el robot VR se oriente hacia los discos de colores.

    El mismo proyecto VEXcode VR, con un bloque Comment y un bloque Turn to heading añadido al final de la pila. Estos dos bloques leen Girar a discos, luego Girar a encabezado 0 grados.
  • Abra Disk Mover Playground y ejecute el proyecto.
  • El robot VR recogerá y moverá el primer disco azul a la portería azul y luego pasará por encima de la portería roja. El robot VR también girará para enfrentarse a los discos rojos.

    Una vista de arriba hacia abajo del Disk Mover Playground con la VR colocada en el borde frontal de la portería roja, frente a los discos rojos.
  • Ahora que el robot VR está frente a los discos rojos, el robot VR tendrá que repetir los mismos comportamientos que se utilizaron para recoger el disco azul, con el fin de recoger y mover el disco rojo. Los comportamientos de conducir hacia adelante para recoger el disco, darse la vuelta y conducir de vuelta al mismo objetivo de color para dejar el disco.

    Una vista de arriba hacia abajo del Disk Mover Playground con la VR colocada en el borde frontal de la portería roja, frente a los discos rojos. Las flechas punteadas indican los movimientos necesarios para conducir para recoger el primer disco rojo, entregarlo a la portería roja, luego girar y conducir hacia la portería verde.
  • Una vez que se mueve el primer disco rojo, el robot VR deberá conducir hasta el objetivo verde y realizar las mismas acciones que se utilizaron para mover el disco azul y rojo, para mover el primer disco verde.

    Una vista de arriba hacia abajo del Disk Mover Playground en la configuración inicial, con el robot en la ubicación inicial de la meta azul. Las flechas punteadas muestran los comportamientos repetidos previstos para que el robot recoja y entregue el primero de cada disco a los objetivos respectivos.
  • Para repetir comportamientos varias veces, se puede usar un bloque [Repeat].

    Un bloque VEXcode VR Repeat de la caja de herramientas, con el parámetro establecido en el valor predeterminado de 10.
  • Añade un bloque [Repeat] al código y establece el parámetro en ‘3’.

    Una descripción general de la adición de un bloque de repetición al proyecto VEXcode VR existente, de modo que todos los bloques necesarios para recoger y mover el primer disco azul al objetivo azul, girar para conducir al siguiente objetivo y luego girar para enfrentar el disco se envuelven dentro de la C del bloque de repetición. El parámetro de bloque de repetición se establece en 3.
  • Abra Disk Mover Playground y ejecute el proyecto.
  • Cuando se ejecuta este proyecto, el robot VR recoge y deja caer un disco de cada color en su objetivo de color correspondiente.

    Una vista de arriba hacia abajo de Disk Mover Playground que muestra el estado final de los discos y el robot después de ejecutar el proyecto. El primero de cada disco de color está en el objetivo de color correspondiente, y el robot VR está en la pared del patio de recreo en el borde del objetivo verde.
  • Tenga en cuenta que el robot VR continuó chocando contra la pared. Se espera este comportamiento ya que el proyecto instruyó al robot de realidad virtual para que girara a la derecha y condujera hacia la siguiente meta, tres veces. La primera vez es conduciendo de azul a rojo. El segundo es de rojo a verde, y el tercero es de verde a la pared, ya que no hay otra portería de color. Detenga el proyecto una vez que el robot VR golpee la pared. El proyecto podría mejorarse para que el robot VR se detenga después de recoger y mover el disco verde, pero esto aumentaría la complejidad general del proyecto.

    La ventana del patio de recreo que muestra el robot de realidad virtual dentro del área de meta verde al final del proyecto, con el botón Detener resaltado por un cuadro rojo que indica que se detiene el proyecto antes de que el robot se estrelle contra la pared.

Para su información

Colocar un bucle dentro de otro bucle se llama anidamiento. Cuando "anidas" bucles, el bucle exterior controla el número de veces que se ejecuta el bucle interior. Hay muchos tipos diferentes de bucles que se pueden anidar. Por ejemplo, en el código anterior, los bloques [Repetir hasta] están anidados dentro de un bloque [Repetir].

El mismo proyecto VEXcode VR de antes, que muestra cómo los bloques Repetir hasta C están anidados dentro del bloque Repetir, lo que permite al robot mover tres discos con éxito.

Un bloque [Repeat] también se puede anidar dentro de otro bloque [Repeat]. En el siguiente ejemplo, dado que el bloque exterior [Repetir] está configurado en ‘3’, el robot VR dibujará tres cuadrados en el patio de recreo.

A la izquierda, un proyecto muestra un bloque Repetir establecido en 3, con el bloque Repetir necesario para codificar el Robot VR para dibujar un cuadrado anidado dentro de él, ilustrando el concepto de bucles anidados. A la derecha, la ventana Playground muestra los tres cuadrados dibujados por el robot del proyecto.

Los bucles anidados son útiles en proyectos en los que un robot de realidad virtual repite los mismos comportamientos más de una vez. Los bucles de anidación organizan y condensan un proyecto. Esto puede ser útil para comprender mejor el contexto y el propósito del código, así como para facilitar la búsqueda de errores.

Seleccione el botón Siguiente para continuar con el resto de esta lección.