Connexion à la concurrence : point tournant - Python
Capacités du robot
Le jeu Turning Point de la compétition de robotique VEX 2018 - 2019 demandait aux joueurs de basculer les drapeaux parmi d'autres éléments du jeu. Il y avait neuf drapeaux au total : trois drapeaux du bas qui pouvaient être basculés par le robot, et les six drapeaux hauts qui ne pouvaient être basculés qu'en les frappant avec des pièces de jeu de balle de compétition. Les équipes de compétition devaient trouver un moyen de frapper les drapeaux les plus hauts à l'aide d'un lanceur de balles. Si vous pouvez imaginer, programmer le robot pour frapper les drapeaux à l'aide de pièces de jeu de balle en mesurant peut ne pas toujours être précis. Si le robot fait un mauvais virage pendant la période autonome, il est possible qu'aucun des drapeaux ne soit touché car les calculs seraient désactivés. De même, pour le défi des compétences de conduite, il peut être difficile pour les équipes d'aligner manuellement le robot suffisamment pour lancer la balle correctement. Ainsi, des équipes compétentes programmeraient le robot à l'aide du capteur de vision pour détecter les drapeaux, puis aligneraient correctement le robot afin de prendre des photos précises.
Étendez votre apprentissage
Pour développer cette activité, demandez à vos élèves de concevoir et de décrire un projet qui permettra au robot de se déplacer vers les objets jaunes détectés qu'ils pourraient potentiellement utiliser pour ce jeu de compétition !
Demandez à vos élèves de faire ce qui suit :
-
Ouvrez le projet d'exemple de modèle Clawbot (groupe motopropulseur, 2 moteurs, pas de gyroscope).
- Utilisez l'exemple de projet Détection d'objets (Vision) comme référence lors de la programmation du capteur de vision. Utilisez l'exemple de projet Détection d'objets (Vision) comme référence lors de la programmation du capteur de vision (Google Doc / .v5python).
-
Ajoutez le capteur de vision à la configuration Clawbot (transmission, 2 moteurs, pas de gyroscope), puis configurez le capteur de vision pour détecter les objets rouges et bleus. Reportez-vous à l'article Configuration du capteur de vision pour plus d'informations.
- Programmez le Clawbot pour qu'il se déplace vers l'objet détecté. Le Clawbot peut même être programmé pour lever le bras comme s'il devait basculer un drapeau !
- Téléchargez et exécutez le projet pour observer si le capteur de vision peut détecter des objets jaunes comme les boules jaunes dans le jeu VRC Turning Point. Si le capteur de vision peut détecter des objets, le robot se déplace-t-il en fonction de ces objets détectés ? Pour obtenir de l'aide sur le téléchargement et l'exécution d'un projet, consultez cet article.
- Si le temps le permet, configurez un champ de jeu similaire au champ Point de virage. Entraînez-vous à utiliser le capteur de vision pour permettre au robot de se déplacer pour marquer des points !
Voir l'échantillon de solution ci-dessous :
# Library imports
from vex import *
# Begin project code
check_yellow = Event()
def check_yellow_callback() :
brain.screen.set_font (FontType.MONO40
) brain.screen.clear_row (3
) brain.screen.set_cursor (3, 1)
vision_5_objects = vision_5.take_snapshot (vision_5__ YELLOWBOX)
if (vision_5_objects)
: arm_motor.spin_for (FORWARD, 300, DEGREES
) claw_motor.spin_for (FORWARD, 100, DEGREES
) drivetrain.drive_for (FORWARD, 12,
INCHES) arm_motor.spin_for (REVERSE, 300,
DEGREES) claw_motor.spin_for (REVERSE, 100, DEGREES)
else : brain.screen.print ("No Yellow Object")
# system event handlers
check_yellow(check_yellow_callback)
# small delay to ensure that the event handlers are ready
to be used (15, MSEC)
# runs constantly to check for new sensor data
while
True : check_blue.roadband_wait
(105, MSEC) #