Programmation de la griffe - Python
Boîte à outils de l'enseignant - Plan d'activité
-
Cette exploration présentera aux étudiants la programmation de base du moteur à griffes du V5 Clawbot.
-
Apprendre à programmer le moteur à griffes permet aux élèves de contrôler correctement la façon dont le V5 Clawbot saisit les objets dans son environnement.
Le Clawbot V5 est prêt à être saisi !
Cette exploration vous permettra de commencer à créer des projets intéressants qui utilisent la griffe du V5 Clawbot pour saisir des objets.
- Les commandes Python VEXcode V5 qui seront utilisées dans cette exploration incluent :
- claw_motor.set_position(0, DEGRÉS)
- claw_motor.spin_for(AVANT, 90, DEGRÉS)
- claw_motor.set_timeout(2, SECONDES)
-
Pour en savoir plus sur la commande, sélectionnez l'icône de point d'interrogation à côté d'une commande pour voir plus d'informations.
- Assurez-vous d'avoir le matériel requis, votre carnet d'ingénierie et VEXcode V5 téléchargé et prêt.
Quantité | Matériel nécessaire |
---|---|
1 |
Kit de démarrage pour salle de classe VEX V5 (avec micrologiciel à jour) |
1 |
Code VEX V5 |
1 |
Cahier d'ingénierie |
1 |
Exemple de projet Clawbot et Advanced TrainingBot (transmission à 2 moteurs, sans gyroscope) |
1 |
Canette en aluminium |
Étape 1 : Préparation de l'exploration
Avant de commencer l’activité, avez-vous chacun de ces éléments prêts ? Vérifiez chacun des éléments suivants :
-
Les moteurs sont-ils branchés sur les bons ports ?
-
Les câbles intelligents sont-ils complètement insérés dans tous les moteurs ?
-
Le cerveau est-il allumé?
-
La batterie est-elle chargée?
Conseils pour les enseignants
Modélisez chacune des étapes de dépannage pour les élèves.
Étape 2 : Démarrer un nouveau projet
Avant de commencer votre projet, sélectionnez le modèle de projet approprié. L'exemple de projet Clawbot et Advanced TrainingBot (Drivetrain 2-motor, No Gyro) contient la configuration du moteur du Clawbot. Si le modèle n'est pas utilisé, votre robot n'exécutera pas le projet correctement.
Procédez comme suit :
- Ouvrez le menu Fichier.
- Sélectionner Ouvrir Exemples.
- Sélectionnez et ouvrez l'exemple de projet Clawbot et Advanced TrainingBot (Drivetrain 2-motor, No Gyro).
- Puisque nous allons programmer pour contrôler la griffe, renommez votre projet ClawControl.
- Enregistrez votre projet.
- Vérifiez que le nom du projet ClawControl est maintenant dans la fenêtre au centre de la barre d’outils.
Conseils pour les enseignants
- Puisqu’il s’agit d’une activité d’initiation à la programmation, l’enseignant doit modéliser les étapes, puis demander aux élèves d’effectuer les mêmes actions. L’enseignant doit ensuite surveiller les élèves pour s’assurer qu’ils suivent correctement les étapes.
- Assurez-vous que les élèves ont sélectionné Ouvrir les exemples dans le menu Fichier.
- Assurez-vous que les étudiants ont sélectionné l'exemple de projet Clawbot et Advanced TrainingBot (Drivetrain 2-motor, No Gyro). Vous pouvez signaler aux élèves qu’il existe plusieurs sélections parmi lesquelles choisir sur la page Exemples. Au fur et à mesure qu’ils construisent et utilisent d’autres robots, ils auront la possibilité d’utiliser différents modèles.
- Vous pouvez demander aux élèves d’ajouter leurs initiales ou le nom de leur groupe au nom du projet. Cela aidera à différencier les projets si vous demandez aux étudiants de les soumettre.
Boîte à outils de l'enseignant - Arrêtez-vous et discutez
C'est le moment idéal pour faire une pause et demander aux groupes d'étudiants de revoir les étapes qui viennent d'être réalisées lors du démarrage d'un nouveau projet dans VEXcode V5.
Étape 3 : Programmez la griffe V5 pour l'ouvrir
Nous allons maintenant commencer par programmer la griffe pour qu'elle s'ouvre !
# Importation de bibliothèque
depuis vex import *
# Début du code du projet
claw_motor.set_position(0, DEGREES)
- Écrivez la commande claw_motor.set_position() comme indiqué ci-dessus dans la zone de programmation pour définir la position de départ de la griffe.
claw_motor.set_position(0, DEGRÉS)
claw_motor.set_timeout(2, SECONDES)
- Ajoutez la commande claw_motor.set_timeout() comme indiqué ci-dessus.
- Notez que cette instruction apparaît avant la commande claw_motor.spin_for() . Son but est de définir la durée pendant laquelle le moteur Claw peut fonctionner et de l'arrêter après ce temps. Ainsi, même si le moteur ne bouge pas de 60 degrés, le projet arrête le moteur Claw après deux secondes.
claw_motor.set_position(0, DEGRÉS)
claw_motor.set_timeout(2, SECONDES)
claw_motor.spin_for(REVERSE, 60, DEGRÉS)
- Écrivez la commande claw_motor.spin_for() comme indiqué ci-dessus pour ouvrir la griffe à 60 degrés.
- Sélectionnez l'emplacement dans lequel le projet sera téléchargé sur le V5 Robot Brain en sélectionnant l'icône encadrée 1 pour ouvrir tous les emplacements de projet disponibles et sélectionnez l'emplacement souhaité.
- Connectez le robot à votre ordinateur ou tablette. L'icône Cerveau dans la barre d'outils devient verte une fois qu'une connexion a été établie avec succès.
- Cliquez sur l'icône Télécharger à côté de l'icône Informations sur l'appareil pour télécharger le projet sur le V5 Robot Brain.
- Vérifiez que le projet ClawControl a été téléchargé dans le cerveau dans l'emplacement que vous avez choisi.
Boîte à outils de l'enseignant - Modèle d'abord
Modèle exécutant le projet devant la classe avant de demander à tous les élèves d'essayer en même temps. Rassemblez les élèves dans une zone et positionnez le Clawbot de manière à ce que sa griffe soit visible par tous. Si vous prévoyez de faire plusieurs démonstrations, vous pouvez pousser doucement la griffe pour la fermer entre les démonstrations.
Dites aux élèves que c’est maintenant leur tour de réaliser leurs projets.
- Exécutez le projet sur le Clawbot en vous assurant que le projet est sélectionné, puis appuyez sur le bouton Exécuter. Félicitations pour avoir créé votre premier projet de déplacement de la Griffe !
Étape 4 : essayez ceci : fermez la griffe V5
Maintenant que vous avez programmé la griffe pour s'ouvrir, vous allez maintenant la programmer pour qu'elle se ferme.
Maintenant que vous pouvez ouvrir la griffe, vous voudrez également la fermer.
- Revenez à votre projet ClawControl et ajoutez une commande claw_motor.spin_for() supplémentaire pour que le moteur à griffes tourne fermé pendant 30 degrés. La griffe doit se fermer à moitié car elle s'est initialement ouverte à 60 degrés.
- Vérifiez que votre projet révisé a la griffe ouverte à 60 degrés puis fermée à 30 degrés en téléchargeant et en exécutant votre projet ClawControl.
Boîte à outils de l'enseignant - solution
Auparavant, la Griffe s'ouvrait à 60 degrés. Ce projet comprenait une instruction de temporisation du moteur, car il s'agit d'une pratique importante de définir un délai d'attente lors de l'alimentation d'un manipulateur dont le mouvement pourrait être restreint d'une manière ou d'une autre. Le réglage d'un délai d'attente évite l'usure inutile d'un moteur.
Voici la solution de cette étape :
# Début du code du projet
claw_motor.set_position(0, DEGREES)
claw_motor.set_timeout(2, SECONDS)
claw_motor.spin_for(REVERSE, 60, DEGREES)
claw_motor.spin_for(FORWARD, 30, DEGREES)
Étape 5 : Essayez ceci : séquencer plusieurs mouvements
Tout ce que vous ramassez avec la griffe n’aura pas la même taille. Essayez d’ouvrir la griffe dans différentes positions le long de l’amplitude du mouvement.
- Faites tourner le moteur pour :
- Ouvert à 70 degrés
- Fermé pour 20 degrés
- Ouvert à 10 degrés
- Fermé pour 30 degrés
- Fermé pour 25 degrés
- Si le moteur à griffes démarre à 0 degré, à combien de degrés le moteur à griffes est-il ouvert à la fin du projet ?
- Commencez avec le moteur à griffes fermé.
Boîte à outils de l'enseignant - solution
La solution à cette étape est présentée ci-dessous.
Le moteur à griffes est toujours ouvert à 5 degrés à la fin du projet : 70 - 20 = 50 --> 50 + 10 = 60 --> 60 - 30 = 30 --> 30 - 25 = 5 degrés.
# Début du code du projet
# Prendre la position actuelle de la griffe comme zéro
claw_motor.set_position(0, DEGREES)
# Définir le délai d'expiration de la griffe
claw_motor.set_timeout(2, SECONDS)
claw_motor.spin_for(REVERSE, 70, DEGREES)
claw_motor.spin_for(FORWARD, 20, DEGREES)
claw_motor.spin_for(REVERSE, 10, DEGREES)
claw_motor.spin_for(FORWARD, 30, DEGREES)
claw_motor.spin_for(FORWARD, 25, DEGREES)
Étape 6 : Relever le défi Lock Tight
Le défi du verrouillage serré
- Programmez le Clawbot pour fermer en toute sécurité la griffe d'une canette en aluminium vide de 12 onces sans écraser les côtés.
- Demandez au Clawbot de tenir la canette pendant qu'il lève et abaisse son bras à 45 degrés.
- Le Clawbot doit alors relâcher la canette et s'éloigner d'elle.
- Commencez le défi avec une griffe ouverte et une canette vide à l'intérieur.
Conseils pour les enseignants
- Demandez aux élèves de commencer le défi avec une griffe ouverte et une canette vide à l’intérieur.
- Si la canette est écrasée ou tombe de la griffe, le défi doit être relancé après avoir ajusté le projet.
Boîte à outils de l'enseignant - solution
Voici un exemple de solution :
# Début du code du projet
# Prendre la position actuelle de la griffe comme zéro
claw_motor.set_position(0, DEGREES)
# Définir le délai d'attente de la griffe
claw_motor.set_timeout(2, SECONDS)
claw_motor.spin_for(FORWARD, 170, DEGREES)
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
claw_motor.spin_for(REVERSE, 150, DEGREES)
drivetrain.drive_for(REVERSE, 150, MM)
- Le projet définit le délai d'attente, ferme la griffe autour de la canette, soulève et abaisse la canette, la libère, puis recule.
-
Rubrique de programmation
(Google Doc / .docx / .pdf )