Ejemplos incluidos#

Esta página enumera los proyectos de ejemplo incluidos que demuestran cómo controlar el robot de codificación VEX AIM usando Python sobre WebSocket.

Básico#

Within the basic directory, you will find:

Nombre del archivo

Descripción

ai_vision_for_loops.py

Este proyecto utiliza un bucle For de Python adecuado para iterar a través de los datos de AI Vision para calcular un punto medio entre un barril naranja y un barril azul.

angled_moving.py

Este proyecto mueve el robot en ángulos de 45 grados al 100% de velocidad 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 hará que el robot AIM gire 180 grados a la derecha. Si el robot sostiene un barril naranja, lo pateará; de lo contrario, no hará nada.

creating_timeouts.py

Este proyecto girará en el mismo lugar mientras busca un barril naranja. Si no encuentra ninguno en 10 segundos, emitirá un sonido de “fallo” y detendrá 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 los emojis de la pantalla según la cantidad de veces que se presiona la pantalla, mostrando una expresión diferente para cada pulsación.

get_blue_barrel.py

Este proyecto buscará el barril azul, se moverá hacia él y celebrará una vez que tenga el barril azul.

led_color_cycle.py

Este proyecto recorre cada color de LED, deteniéndose durante 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 volverá roja y mostrará “TILTED”.

move_and_stop.py

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

move_to_apriltag.py

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

multi_step_pickup.py

Este proyecto gira a la derecha hasta encontrar 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 se conduce en otro hilo al mismo tiempo.

object_detection_alert.py

Este proyecto moverá el robot AIM hacia adelante hasta encontrar cualquier carga. Al detectarla, el robot emitirá un pitido y detendrá todo movimiento.

obstacle_avoidance.py

Este proyecto moverá el robot AIM hacia adelante hasta encontrar carga. Al detectarla, el robot girará 45 grados a la derecha.

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 transcurridos cinco segundos, luego muestra “¡Se acabó el tiempo!” en la pantalla.

Avanzado#

Within the advanced directory, you will find:

Nombre del archivo

Descripción

aim_example_base.py

Provides AimExample base class, which parses arguments, tries to find the IP of AIM Robot, and initializes aim.Robot instance.

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 está en movimiento y rojos cuando está detenido.

multiple_robots.py

Este proyecto hace que dos robots se muevan en una trayectoria cuadrada, 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

Save image in JPEG format to filesystem given by filename, defaulting to aim_img.jpg

stream_video.py

Flujo de imágenes JPEG, utilizando OpenCV para mostrarlas en la pantalla.