Skip to main content

Laboratoire STEM
Boucle, ça y est ! Professeur

Portail des enseignants

Icône de la boîte à outils de l'enseignant Boîte à outils de l'enseignant  - plan d'activité

  • Cette exploration initiera les élèves à la programmation de comportements répétitifs en utilisant des boucles répétées ou indéfinies.

  • Apprendre à programmer en utilisant des boucles répétées et indéfinies permet aux étudiants de gagner du temps lors de la construction d'un projet utilisant les mêmes actions répétées. Pour plus d'informations sur les instructions utilisées dans un projet de texte, visitez les informations help .

Le Clawbot V5 est prêt à bouger !

Cette exploration vous donnera les outils nécessaires pour pouvoir commencer à créer des projets sympas utilisant des boucles.

  • Instructions Python VEXcode V5 qui seront utilisées dans cette exploration :

    • drivetrain.drive_for (AVANT, 300, MM)

    • drivetrain.turn_for (DROITE, 90, DEGRÉS)

    • claw_motor.spin_for (ARRIÈRE, 70, DEGRÉS)

    • arm_motor.spin_for(AVANT, 360, DEGRÉS)
      bumper_b.pressing()

    • tandis que Vrai : 

    • pour Repeat_count dans la plage (4) : 

    • attendez (5, SECONDES)

Vous pouvez utiliser les informations d'aide contenues dans VEXcode V5 pour en savoir plus sur les commandes individuelles Python . 

Image de l'aide de VEXcode V5 ouverte dans une fenêtre de projet Python

Icône Conseils pour les enseignants Conseils aux enseignants

Si c'est la première fois que l'étudiant utilise VEXcode V5, il peut lire une variété d'articles dans la bibliothèque VEX.

Image de la section VEXcode V5 de la bibliothèque VEX

Icône Conseils pour les enseignants Conseils aux enseignants  à Utilisation de la saisie semi-automatique

La saisie semi-automatique est une fonctionnalité de VEXcode V5 qui prédit le reste de la commande que vous tapez. Pendant que les étudiants travaillent avec VEXcode V5, encouragez-les à utiliser la fonction de saisie semi-automatique pour faciliter la syntaxe Python. Vous remarquerez peut-être une fonction de saisie semi-automatique lorsque vous commencez à saisir l'instruction. Utilisez vos touches « Haut » et « Bas » pour sélectionner le nom souhaité, puis appuyez sur « Tab » ou (Entrée/Retour) sur votre clavier pour effectuer la sélection. Pour plus d'informations sur l'utilisation de la saisie semi-automatique, consultez l'article Python.

Image de la fonctionnalité de saisie semi-automatique dans un projet Python

Assurez-vous que vous disposez du matériel requis, de votre cahier d'ingénierie et de VEXcode V5 téléchargés et prêts.

Matériaux nécessaires:
Quantité Les matériaux nécessaires
1

Kit de démarrage pour salle de classe VEX V5 (avec micrologiciel à jour)

1

VEXcode V5 (dernière version, Windows, macOS)

1

Cahier d'ingénierie

1

Exemple de projet de modèle Clawbot (entraînement à 2 moteurs, sans gyroscope)

Étape 1 :  Commençons la programmation avec des boucles

  • Avant de commencer votre projet, sélectionnez le projet modèle approprié. L'exemple de projet Clawbot Template (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.

  • Sélectionnez Fichier et Exemples ouverts.

    Image du menu Fichier ouvert dans VEXcode V5 avec les exemples ouverts en surbrillance

     

  • Faites défiler les différents Exemple projets. Ces projets démontrent une variété d'actions que votre Clawbot peut effectuer. Sélectionnez et ouvrez l'exemple de projet Clawbot Template (Drivetrain 2-motor, No Gyro) .

     

  • Nommez le projet RepeatingActions.

  • Tapez le code suivant :

    Image des commandes du projet d'actions répétitives dans un projet Python

Examinez le projet, puis effectuez les opérations suivantes dans votre cahier d'ingénierie.

  1. Prédisez ce que le projet demandera au Clawbot. Expliquez plus que le fait que le projet se répète.

    Qu'est-ce que ça répète ? Que fait le Clawbot ?

  2. Écrivez votre prédiction, mais ne divisez pas le court projet en plus de deux parties.

Icône de la boîte à outils de l'enseignant Boîte à outils de l'enseignant  - réponses

  1. Ce projet aura le robot : avancer de 300 millimètres, tourner à droite de 90 degrés, puis attendre 5 secondes 4 fois pour compléter un carré. Au lieu d'utiliser les mêmes 3 instructions 4 fois, l'instruction répétition réduit le montant à une seule fois. L’instruction répétition répète les actions consistant à avancer puis à tourner.

  2. La prédiction pourrait simplement être « Le Clawbot se déplace dans un carré ». Ce serait une façon succincte de capturer les mouvements répétés du Clawbot sans aucun contexte.

Les cahiers d'ingénierie des étudiants peuvent être tenus à jour et notés individuellement ou en équipe . Les liens précédents fournissent une rubrique différente pour chaque approche. Chaque fois qu’une rubrique est incluse dans la planification éducative, il est de bonne pratique de l’expliquer ou au moins d’en remettre des copies aux élèves avant le début de l’activité.

  • Enregistrez, téléchargez et exécutez le projet Repeating Actions.

  • Vérifiez vos explications du projet dans votre cahier d'ingénierie et ajoutez des notes pour les corriger si nécessaire.

Étape 2 : Exécutez le projet et observez le robot

Image de deux projets utilisant des boucles

Regardez à nouveau le projet Repeating Actions (le deuxième projet). Ce projet répétera le comportement avant puis tournant quatre fois. Une structure de boucle "répétition" (utilisant une boucle pour ) est utilisée lorsque vous souhaitez utiliser un ensemble de comportements un certain nombre de fois.

Si la structure de répétition est remplacée par une structure de boucle while , le robot répétera les comportements en avant puis en virage « tant que » la condition est vraie. Vous pouvez également définir la condition sur "true" pour que la boucle tandis que continue indéfiniment.

Dans le premier projet, l'entrée d'un capteur est utilisée pour déterminer quand commencer à tourner. Le projet de droite utilise une distance de transmission fixe pour déterminer quand commencer à tourner.

Afin de vérifier en permanence l'entrée d'un capteur, une instruction if else est utilisée avec une boucle while. Dans le projet de gauche, le robot tournera à droite lorsque le capteur "bumper_b" est enfoncé, sinon le robot avancera indéfiniment si le capteur "bumper_b" n'est pas enfoncé. Pour vérifier en permanence la valeur du capteur bumper_b, l'instruction if se situe dans une boucle while .

Le premier projet est un cas d'utilisation pratique d'une structure qui se répète indéfiniment – ​​en utilisant ensemble les instructions while et if . Imaginez une balayeuse autonome qui continue d'avancer jusqu'à ce qu'elle heurte un mur ou un objet, puis tourne avant de continuer à rouler.

Icône Étendez votre apprentissage Prolongez votre apprentissage

Pour explorer plus en détail comment utiliser des boucles avec des conditions, demandez aux élèves de créer un projet Floor Sweeper dans VEXcode V5.

Si les élèves ont besoin d'aide avec l'une des instructions, référez-les aux informations Aide .

Demandez aux élèves de télécharger et d'exécuter le projet pour observer comment le robot se déplace. Ensuite, lancez une discussion en classe et demandez aux élèves d’expliquer pourquoi la structure pour toujours a été utilisée au lieu d’une structure répétitions .

Les étudiants doivent noter qu'une structure pour toujours est utilisée car ce projet vérifie en permanence si l'interrupteur du pare-chocs est enfoncé.

Étape 3 : Le défi des boucles carrées !

  • Demandez à votre Clawbot de conduire sur une place.

  • Avant chaque tour, la griffe doit être ouverte et fermée, et le bras doit être levé et abaissé.

  • Le Clawbot ne peut pas parcourir un côté de la place plus d'une fois.

  • Vous pouvez utiliser le projet RepeatingActions ci-dessus comme point de départ, mais enregistrez-le sous SquaredLoops avant d'apporter des modifications.

Dans votre cahier d'ingénierie, prévoyez les éléments suivants :

  • Planifiez votre solution et prédisez ce que chaque instruction de votre projet fera faire au Clawbot.

  • Téléchargez et exécutez votre projet pour le tester avant de le soumettre.

  • Apportez les modifications nécessaires au projet et prenez des notes sur ce qui a été modifié pendant les tests.

Icône de la boîte à outils de l'enseignant Boîte à outils de l'enseignant  - Solution

Voici une solution potentielle au Squared Loops Challenge :

Image de l'exemple de solution du projet Squared Loops Python

Vous pouvez fournir aux étudiants une grille de programmation  pour noter leurs projets.
Les cahiers d'ingénierie des étudiants peuvent être tenus à jour et notés individuellement ou en équipe .