Lección 2: Uso de múltiples bucles While
Continuando por el laberinto de la pared
Ahora hemos utilizado un bucle mientras con el sensor de parachoques para hacer que el robot VR deje de conducir cuando llega a la pared. Sin embargo, para continuar a través del laberinto de pared, el robot VR necesita girar cuando llega a una pared, para que pueda cambiar de dirección y continuar.
-
Para comenzar, elimine el comando stop fuera del bucle while , y reemplácelo con un comando turn_for . Establezca los parámetros para que el robot VR gire a la izquierda 90 grados. Tu proyecto ahora debería verse así:
def main(): while not left_bumper.pressed(): drivetrain.drive(FORWARD) wait(5, MSEC) drivetrain.turn_for(LEFT, 90, DEGREES) - Inicie el Wall Maze Playground si aún no está abierto y ejecute el proyecto.
-
Observe cómo funciona el robot VR desde el inicio del laberinto de pared, deténgase cuando el sensor de parachoques sea presionado por la pared y gire a la izquierda 90 grados.

Múltiples bucles y el problema del laberinto de pared
Ahora el robot VR ha llegado a una pared y ha girado para poder seguir conduciendo por el laberinto. De la misma manera que se usaron los datos del sensor de parachoques en un bucle while para este primer paso en el laberinto, la misma estructura se puede usar varias veces en el mismo proyecto para hacer que el robot VR continúe a través del laberinto. Se pueden usar múltiples bucles while en el mismo proyecto.
-
A partir de la posición actual del robot de realidad virtual, el siguiente paso para resolver el laberinto de pared sería avanzar hasta la siguiente pared y girar a la derecha 90 grados. Los comandos existentes se pueden copiar y pegar debajo del comando anterior while loop y turn_for. Recuerde tener en cuenta la sangría y cambiar los nuevos parámetros Turn_for Command para girar 90 grados a la derecha. Tu proyecto ahora debería verse así:
def main(): while not left_bumper.pressed(): drivetrain.drive(FORWARD) wait(5, MSEC) drivetrain.turn_for(LEFT, 90, DEGREES) while not left_bumper.pressed(): drivetrain.drive(FORWARD) wait(5, MSEC) drivetrain.turn_for(RIGHT, 90, DEGREES) - Reinicie el Wall Maze Playground y vuelva a ejecutar el proyecto.
-
Observe el accionamiento del robot VR desde el inicio del laberinto de pared, deténgase cuando el sensor de parachoques sea presionado por la pared, gire a la izquierda 90 grados, avance hasta que el sensor de parachoques vuelva a ser presionado por una pared, luego gire a la derecha 90 grados y deténgase.

Mini desafío
Para este mini desafío, crea un proyecto en el que el robot VR conduzca desde el inicio hasta la letra 'A' en el laberinto de pared Patio de juegos usando múltiples bucles mientras ¡y el sensor de parachoques!

Sigue estos pasos para completar el mini desafío:
-
Mira el vídeo de la solución a continuación para ver cómo debe conducir el robot de realidad virtual para completar el mini desafío. En este videoclip, el robot VR comienza en el inicio en la parte inferior central del patio de recreo. Se mueve hacia adelante hasta que el sensor de parachoques es presionado por la pared opuesta, luego gira a la izquierda y se dirige a la siguiente pared frente a él. Cuando se presiona el parachoques en esa pared, el robot vuelve a girar a la izquierda y avanza hasta llegar a la pared final y a la letra A.
- Cree un proyecto añadiendo o eliminando los comandos necesarios al proyecto Unit4Lesson2.
- Iniciar el proyecto para probarlo.
- Si el proyecto no tiene éxito, edítelo e inténtelo de nuevo. Continúe revisando y ejecutando el proyecto hasta que el robot de realidad virtual conduzca con éxito desde el inicio hasta la letra "A".
- Guarde el proyecto una vez que el robot VR conduzca con éxito desde el inicio hasta la letra "A".
¡Felicidades! ¡Has resuelto EL mini desafío!
Preguntas
Seleccione un enlace a continuación para acceder al cuestionario de la lección.
Google Doc / .docx / .pdf