Programmation événementielle : communication entre les instructions - Python
Boîte à outils de l'enseignant
-
Le but de cette section
L'objectif de la section Repenser est que les élèves utilisent des boutons sur le contrôleur à l'aide d'une programmation basée sur des événements.
Cette section comprend :
-
Aperçu de la programmation événementielle
-
Exemple d' & aperçu des instructions de téléchargement du projet
-
Activités de remixage :
-
Attrapez un objet !
-
Gemmes colorées
-
Course de relais !
-
-
Questions Remix
Conseils à l'enseignant
- Le contrôleur peut être jumelé avec le cerveau du robot avant la classe pour gagner du temps. Décidez si vous souhaitez terminer cette étape ou si vous souhaitez que les élèves le fassent. Suivez les étapes ici. Vous pouvez faire imprimer cet article pour que les élèves puissent l'utiliser, si vous voulez qu'ils associent le contrôleur au cerveau.
- La programmation basée sur les événements donne au Clawbot la possibilité de déclencher des événements ou de réagir aux déclencheurs. Ce type de programmation permet à une instruction de communiquer avec d'autres instructions.
-
En d'autres termes, le Clawbot répond aux mouvements des joysticks du contrôleur. Le mouvement du joystick est le déclencheur, et le Clawbot réagit en conséquence.
# Library imports from vex import * # Begin project code # Create callback functions for each controller button event def controller_L1_Pressed(): arm_motor.spin(FORWARD) while controller_1.buttonL1.pressing(): wait(5, MSEC) arm_motor.stop() # Create Controller callback events - 15 msec delay to ensure events get registered controller_1.buttonL1.pressed(controller_L1_Pressed) wait(15, MSEC)Dans l'exemple ci-dessus, appuyer sur le bouton L1 est le déclencheur qui fait tourner le ARM_Motor vers le haut.
Pour en savoir plus sur les instructions, ouvrez les informations d' aide Python.

Programmation événementielle
Si votre chien vous apporte sa laisse ou s'assoit près de la porte, il vous fait savoir qu'il doit sortir. À l'école, lorsque votre professeur pose une question et vous voit lever la main, il croit que vous connaissez la réponse et aimerait y répondre. Ces comportements sont également connus sous le nom de « déclencheurs ».
Votre chien sait que le fait de vous apporter sa laisse ou de vous asseoir près de la porte est le déclencheur qui vous permet de savoir qu'il doit sortir. Donc, quand vous le voyez assis près de la porte avec sa laisse, vous réagissez à la gâchette en l'emmenant dehors. Lever la main est le déclencheur qui permet à l'enseignant de savoir que vous souhaitez répondre à la question. L'enseignant réagit alors à la gâchette en vous appelant.
La programmation événementielle en robotique est lorsque certains comportements du robot déclenchent le robot pour faire certaines choses ou réagir à certains déclencheurs.
Boîte à outils de l'enseignant
-
Révision des instructions
- Ouvrez l'exemple de projet Clawbot Controller with Events dans VEXcode V5.

- Dans le cadre de l'activité de classe, passez en revue les instructions de programmation avec les élèves. Dites aux élèves que plusieurs événements au sein du projet Clawbot Controller with Events peuvent être déclenchés en même temps, ce qui leur permet de contrôler le mouvement de conduite du Clawbot ainsi que le mouvement du bras et de la griffe du Clawbot.
Contrôleur : Clawbot Control
Maintenant, vous êtes prêt à explorer le projet d'exemple de contrôleur Clawbot avec événements et à utiliser le contrôleur pour faire fonctionner le Clawbot, son bras et sa griffe, tout en même temps !

Assurez-vous d'avoir le matériel nécessaire et votre ordinateur portable d'ingénierie. Ouvrez VEXcode V5.
| Quantité | Matériel nécessaire |
|---|---|
| 1 |
Clawbot |
| 1 |
Batterie de robot chargée |
| 1 |
Radio VEX V5 |
| 1 |
Contrôleur |
| 1 |
Câble d'attache |
| 1 |
VEXcode V5 |
| 1 |
Câble USB (si vous utilisez un ordinateur) |
| 1 |
Carnet d'ingénierie |
Avant de commencer l'activité...
Avez-vous chacun de ces éléments prêt ? Le Constructeur doit vérifier chacun des éléments suivants :
-
Tous les moteurs et capteurs sont-ils branchés sur le bon port ?
-
Les câbles intelligents sont-ils complètement insérés dans tous les moteurs ?
-
La batterie est-elle complètement chargée?
-
Le contrôleur est-il couplé au cerveau du robot ?