Skip to main content

Lección 3: Uso de sensores y el electroimán para recoger un disco

Uso del sensor ocular inferior con el electroimán

Esta Lección utilizará los comentarios de los sensores informados para resolver el mismo desafío que la Lección 2. El robot VR recogerá y moverá el primer disco azul a la portería azul.

  • Inicie un nuevo proyecto y seleccione Disk Mover Playground cuando se le solicite. El mosaico de selección de Disk Mover Playground, lee Disk Mover en la parte inferior.
  • Nombra el proyecto Unit8Lesson3.Barra de herramientas VEXcode VR con el cuadro de nombre del proyecto resaltado. El nombre del proyecto dice Unidad 8 Lección 3.

     

  • Añade cuatro comentarios al proyecto. Añade comentarios para cada uno de los pasos necesarios para que el robot VR se dirija al primer disco, lo recoja y lo devuelva al objetivo azul.

    def main():
        # 1. Unidad al primer disco
    
        # 2. Recoge el primer disco
    
        # 3. Conduce hasta el objetivo
    
        n .º 4. Suelta el disco en la meta

     

  • Arrastre o escriba un bucle while con una condición not en el espacio de trabajo debajo del primer comentario, para que su proyecto se vea así:

    def main():
        #1. Conduzca al primer disco
        mientras no esté en condiciones:
            espere(5, MSEC)
    
        # 2. Recoge el primer disco
    
        # 3. Conduce hasta el objetivo
    
        n .º 4. Suelta el disco en la meta
  • El  comando down_eye.near_object informa True cuando el sensor Down Eye del VR Robot detecta un disco de color en el Disk Mover Playground. Los discos están en el piso del patio de juegos y no pueden ser detectados por el sensor ocular frontal, por lo tanto, el sensor ocular inferior detectará los discos. Arrastre o escriba el comando down_eye.near_object como condición del bucle while , de modo que la primera sección de su proyecto se vea así:

    def main():
        #1. Drive to the first disk
        while not down_eye.near_object():
            wait(5, MSEC)
  • Los comandos dentro del bucle  mientras que se ejecutarán cuando el robot VR NO detecte un objeto. Para llegar a uno de los discos, el robot VR deberá avanzar hasta que se detecte el disco.

    Vista posterior del Disk Mover Playground, que muestra el VR Robot en la ubicación de inicio, y los tres discos azules en fila se extendían a lo largo del Playground frente al robot.
  • Arrastre o escriba un comando drive dentro del bucle  while , de modo que la primera sección de comentarios del proyecto se vea así:

    	#1. Drive to the first disk
        while not down_eye.near_object():
            drivetrain.drive(FORWARD)
            espera(5, MSEC)
  • Cuando se detecta un disco, el robot VR tendrá que dejar de conducir para recogerlo. Arrastre o escriba un comando stop fuera del bucle while , de modo que la primera sección de comentarios del proyecto se vea así:

    	#1. Drive to the first disk
        while not down_eye.near_object():
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
        drivetrain.stop()
  • Tenga en cuenta que los comandos drive y wait están sangrados debajo del encabezado del bucle while , lo que significa que los comandos están dentro del . La línea gris también puede ayudar a indicar qué comandos están sangrados correctamente y dentro de un bucle. El comando stop está en línea con el encabezado del bucle, lo que significa que el comando stop está fuera del bucle. Asegúrese de que los comandos estén sangrados correctamente, o es posible que el proyecto no se ejecute como se esperaba. 
  • Ahora, indique al robot VR que recoja el disco con el electroimán arrastrándolo o escribiendo el comando energize después del segundo comentario, de modo que la segunda sección del proyecto se vea así:

    	# 2. Recoge el primer disco
        magnet.energize(BOOST)
  • Abra la ventana del patio de recreo si aún no está abierta. Asegúrese de que Disk Mover Playground se abra y ejecute el proyecto.
  • El robot VR avanza hasta que el sensor Down Eye detecta el primer disco azul, deja de funcionar y energiza el electroimán para recoger el disco.

    Una vista lateral del robot VR en el patio de recreo en la primera ubicación del disco azul, con el disco conectado al electroimán.

Flujo del proyecto para recoger el primer disco

Observe cómo el bucle while con una condición no utiliza la retroalimentación del sensor para recoger con éxito el primer disco:

  • El robot VR avanza mientras que el sensor Down Eye no detecta ningún objeto.
  • Una vez que el sensor Down Eye del robot VR detecta un objeto, el proyecto pasa al siguiente comando fuera del bucle mientras y deja de avanzar.
  • El proyecto continúa, por lo que el robot VR activa el electroimán para recoger el disco.
Un diagrama de flujo del proyecto anterior, que ilustra el flujo con el bucle while. Las dos primeras secciones del proyecto se muestran a la izquierda y, a la derecha, la primera sección tiene una flecha cíclica roja que ilustra que, si bien el ojo inferior no detecta un objeto, el robot avanzará, ya que la condición informa como falsa. A continuación, una flecha verde hacia abajo junto al comando de parada indica que cuando el ojo hacia abajo detecta un objeto, el proyecto saldrá del bucle y el robot se detendrá. A continuación, una segunda flecha verde hacia abajo se alinea con la segunda sección del proyecto, lo que indica que el electroimán se energizará.

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