Ejemplos incluidos#

Esta página enumera los proyectos de ejemplo incluidos que demuestran cómo controlar el robot de codificación VEX AIM utilizando Python a través de WebSocket.

Básico#

Dentro del directorio basic , encontrará:

Nombre del archivo

Descripción

ai_vision_for_loops.py

Este proyecto utiliza un Python For Loop adecuado para iterar a través de los datos de AI Vision para calcular un punto medio entre un Orange Barrel y un Blue Barrel.

angled_moving.py

Este proyecto mueve el robot en ángulos de 45 grados a una velocidad del 100% para trazar una forma de diamante.

colorful_square.py

Este proyecto hace que el robot se mueva en una trayectoria cuadrada, cambiando el color del LED en cada color.

conditional_kicker.py

Este proyecto girará el robot AIM para que gire 180 grados a la derecha. Si el robot sostiene un barril naranja, lo pateará; de lo contrario, el robot no hará nada.

creating_timeouts.py

Este proyecto girará en su lugar mientras busca un barril naranja. Si no se encuentra ninguno en 10 segundos, se reproduce un sonido de “fallo” y se detiene la búsqueda.

emoji_reaction.py

Este proyecto muestra un emoji feliz cuando el ángulo del robot es estable y un emoji sorprendido cuando está inclinado.

emoji_touch.py

Este proyecto cambia el emoji de la pantalla en función de cuántas veces se ha pulsado la pantalla, mostrando una expresión diferente para cada pulsación.

get_blue_barrel.py

Este proyecto buscará barril azul, se moverá a él, celebra una vez que tenga el barril azul.

led_color_cycle.py

Este proyecto recorre cada color LED, haciendo una pausa de un segundo entre cada uno.

level_detector.py

En este proyecto, la pantalla mostrará un fondo verde con la palabra “FLAT” cuando el robot no esté inclinado. Si el robot se inclina, la pantalla se pondrá roja y dirá “INCLINADO”.

move_and_stop.py

Este proyecto mueve el robot hacia adelante 300 mm y reproduce el sonido “completo” una vez que ha completado el movimiento.

move_to_apriltag.py

Este proyecto gira el robot hasta que detecta AprilTag ID 1, luego se mueve hacia él.

multi_step_pickup.py

Este proyecto gira a la derecha hasta que se encuentra un barril naranja, se mueve hacia atrás y lo coloca.

musical_thread.py

Este proyecto reproducirá una canción (usando notas) en un hilo mientras conduce en otro hilo al mismo tiempo.

object_detection_alert.py

Este proyecto moverá el robot AIM hacia adelante hasta que se encuentre alguna carga. Cuando se detecta, el robot emitirá un pitido y detendrá todo el movimiento del robot.

obstacle_avoidance.py

Este proyecto moverá el robot AIM hacia adelante hasta que se encuentre alguna carga. Cuando se detecte, el robot girará a la derecha 45 grados.

screen_drawing.py

Este proyecto dibuja una línea, un cuadrado y un círculo en su pantalla, mostrando el nombre de cada forma mientras se dibuja.

sensor_monitor.py

Este proyecto imprimirá los valores del temporizador, el rumbo y la orientación de guiñada en la pantalla del robot.

tap_to_start.py

Este proyecto espera un toque en la pantalla táctil antes de avanzar 200 mm y mostrar un emoji al final.

timing_events.py

Este proyecto comienza a avanzar, pero se detiene automáticamente una vez que han transcurrido cinco segundos, luego muestra “¡Se acabó el tiempo!” en la pantalla.

Avanzado#

Dentro del directorio advanced , encontrará:

Nombre del archivo

Descripción

aim_example_base.py

Proporciona AimExample base AimExample, que analiza los argumentos, intenta encontrar la IP de AIM Robot e inicializa la aim.Robot instancia AIM.Robot.

fpv.py

Este proyecto permite al usuario controlar el robot mientras transmite imágenes desde la cámara. Los LED son verdes cuando el robot se está moviendo, rojos cuando el robot está parado.

multiple_robots.py

Este proyecto hace que dos robots se muevan en un camino cuadrado, cambiando el color del LED en cada color.

play_sounds.py

El robot reproducirá un archivo de sonido local y luego tocará algunas notas de la Sinfonía n .º 5 de Beethoven.

save_jpg.py

Guardar imagen en formato JPEG en el sistema de archivos dado por el nombre de archivo, por defecto a aim_img.jpg

stream_video.py

Transmisión de imágenes JPEG, usando opencv para mostrar en pantalla.