Skip to main content

Lección 2: Uso del sensor del ojo delantero con bucles While

En esta lección, creará un proyecto utilizando el sensor ocular frontal con un bucle while y una condición not  para navegar el robot VR a través del laberinto de discos . Su proyecto indicará al robot VR que gire a la derecha cuando el sensor del ojo delantero detecte un disco verde y a la izquierda cuando se detecte un disco azul. En el mini desafío, aplicarás estas habilidades para conducir el Robot VR a cada disco en el Disk Maze Playground y terminar en el disco rojo.

Vista lateral del robot VR en el Disk Maze Playground con flechas negras en el fondo que indican la ruta que ha recorrido el robot para moverse de un disco a otro. El robot está al final del laberinto frente al disco rojo.

Resultados de aprendizaje

  • Identifique que el bucle mientras que se puede utilizar con los sensores oculares.
  • Identifique que para usar los datos del sensor ocular para hacer que el robot VR tome una decisión en un proyecto, se debe usar una condición.
  • Describe cómo se puede utilizar la identificación de un patrón en un proyecto para simplificar tu código.

Navegación a los primeros cuatro discos

El sensor de ojo frontal se puede utilizar para hacer que el robot VR detecte los discos y sus colores, y para tomar decisiones basadas en esos datos. El robot VR puede navegar por el laberinto de discos utilizando la retroalimentación del sensor relacionada con los colores de los objetos que se detectan, para determinar el movimiento del robot. Esencialmente, los datos del sensor del ojo frontal se utilizarán para "codificar por colores" los giros del robot VR, por lo que cuando se detecta un color, gira a la izquierda, y cuando se detecta otro, gira a la derecha.

Para comenzar, veamos la ruta que recorrerá el robot de realidad virtual para navegar por la primera parte del laberinto de discos. Vista de arriba hacia abajo del patio de recreo del laberinto de discos. El robot está en la ubicación de inicio. Las flechas indican el camino que tomará el robot Vr, mostrando el avance hacia el primer disco verde, girando a la derecha, conduciendo hacia el disco azul, girando a la izquierda, conduciendo hacia un segundo disco azul, girando a la izquierda y deteniéndose en un tercer disco azul.

Para su información

El Disk Maze Playground contiene marcas de colores en el piso del Playground en cada una de las ubicaciones de los discos de colores levantados.Vista lateral del Robot VR en el Disk Maze Playground con una flecha negra que indica que el robot se dirigirá al disco verde y luego girará a la derecha. 

Utilizaremos el sensor ocular frontal para detectar los discos de esta unidad, pero también se podría utilizar la misma lógica y proyecto con el sensor ocular inferior. En lugar de detectar los discos elevados, el sensor Down Eye detectaría los colores en el suelo del patio de recreo y tomaría decisiones con esos datos. El sensor Down Eye no detecta el suelo del patio de recreo como un objeto, pero detectará los espacios coloreados. 

Uso de un bucle While con datos del sensor ocular

En unidades anteriores, se utilizó el bucle while  para hacer que el robot VR condujera mientras se cumplía una condición, o un bucle while con una not condición para conducir mientras no se cumplía una condición. Los datos de los sensores oculares se pueden utilizar de la misma manera. Veamos el primer paso en la ruta del laberinto de discos.

 Vista de arriba hacia abajo del robot de realidad virtual en el patio de juegos del laberinto de discos con una flecha negra que indica que el robot conducirá al disco verde directamente frente a la ubicación de inicio y luego girará a la derecha.

El robot VR debe avanzar mientras el sensor del ojo delantero  no detecte verde. Cuando el sensor del ojo delantero detecta verde, el robot VR debe girar 90 grados a la derecha para mirar hacia el siguiente disco en el laberinto.

Nombrar y guardar el proyecto

Comencemos a construir el proyecto usando el bucle mientras  para indicarle al robot VR que gire cuando el sensor ocular frontal detecte el primer disco de color (verde) en el patio de juegos del laberinto discos.

  • Inicie un nuevo proyecto y seleccione Disk Maze Playground cuando se le solicite. Mazo de selección de Disk Maze Playground de VEXcode VR.
  • Nombra el proyecto Unit7Lesson2.Barra de herramientas VEXcode VR con el cuadro de nombre del proyecto. El nombre del proyecto dice Unidad 7 Lección 2.

     

  • Para empezar, añade un comentario para describir el comportamiento del robot de realidad virtual. Este proyecto utilizará comentarios para recordar al usuario cuál es la intención de los comportamientos del Robot VR durante la siguiente sección del proyecto. Recuerda que los comentarios en VEXcode VR Python comienzan con un símbolo # (libra). 
def main():
    # Unidad al 1er disco (verde), gire a la derecha
  • El robot VR tendrá que conducir hacia el primer disco en el Disk Maze Playground. Arrastre o escriba un bucle while con una condición not en el espacio de trabajo. Recuerde incluir el comando wait como parte del bucle while , para garantizar que el Robot VR ejecute el proyecto correctamente.
def main():
    # Unidad al 1er disco (verde), gire a la derecha
    mientras no esté en condición:
        espere(5, MSEC)
  • Establezca la condición del bucle en el comando de detección  del sensor ocular frontal y configure el parámetro en "VERDE".
def main():
    # Unidad al 1er disco (verde), gire a la derecha
    mientras no estéfront_eye.detect (VERDE):
        espere(5, MSEC)
  • Dentro del bucle while , arrastre o escriba el comando sin espera drive para que su proyecto se vea así:
def main():
    # Unidad al 1er disco (verde), gire a la derecha
    mientras no estéfront_eye.detect (VERDE)
        :drivetrain.drive (FORWARD)
        espere(5, MSEC)
  • Fuera del bucle while , arrastre o escriba un comando turn_for  para indicarle al robot VR que gire 90 grados a la derecha cuando detecte un disco verde. Tu proyecto debería verse así:
def main():
    # Drive to 1st disk (green), turn right
    while not front_eye.detect(GREEN):
        drivetrain.drive(FORWARD)
        wait(5, MSEC)

    drivetrain.turn_for(RIGHT, 90, DEGREES)
  • Abra la ventana del patio de recreo si aún no está abierta. Asegúrese de que Disk Maze Playground seabra y ejecute el proyecto.
  • Observa cómo el VR Robot avanza hasta el primer disco verde y luego gira a la derecha.

    Vista lateral del Robot VR en el Disk Maze Playground con una flecha negra que indica que el robot se dirigirá al disco verde y luego girará a la derecha.
  • Observe que el robot VR avanza mientras el estado del color del sensor del ojo delantero indica Falso. Una vez que se detecta el disco verde, el color del sensor del ojo frontal informa True y sale del bucle. Luego, ejecuta el siguiente comando, que es girar a la derecha 90 grados.

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