Skip to main content
Portail des enseignants

Programmation à deux boutons

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant - Le but de cette activité

À la page précédente, l'étudiant programmait le bras pour qu'il tourne à l'aide du bouton Brain Up. Cette page s'appuiera sur le projet précédent pour programmer également le bras à tourner à l'aide du bouton Brain Down.

VEXcode IQ Si alors sinon bloquer de la boîte à outils

Cette activité initiera les élèves à la programmation avec des blocs [If then else] ainsi qu'à l'utilisation de blocs de détection et d'opérateur pour que le robot vérifie si les boutons Brain Up ou Down sont enfoncés. Si vous appuyez sur le bouton Brain Up, le bras du Clawbot se lèvera. Si vous appuyez sur le bouton Brain Down, le bras du Clawbot s'abaisse. Cela s'appuie sur l'activité précédente et posera également les bases du défi de l'interface utilisateur dans la section Repenser.

Pour le défi de l'interface utilisateur, les élèves devront programmer leur Clawbot pour lever le bras, abaisser le bras, ouvrir la griffe et fermer la griffe à l'aide des boutons du cerveau du robot IQ.

Pour plus d'informations sur les blocs [If then], [If then else]>, <Brain ou [Spin], consultez les informations d'aide dans VEXcode IQ. Pour plus d'informations sur cet outil d'aide intégré, cliquez ici.

Voici un aperçu de ce que vos élèves feront dans cette activité :

  • Utilisez l'ArmUp2 existant pour construire le  projet ArmUpDown fourni et prédire ce que le projet fera.
  • Affichez un organigramme pour aider à expliquer le flux des blocs dans le projet.
  • Affinez leurs explications sur ce que fait le projet ArmUpDown.
  • Regardez la vidéo du tutoriel If Then Else Blocks.
  • Modifiez leur projet à l'aide de blocs [If then else].
  • Arrêtez-vous et discutez: les élèves réfléchiront à leurs prédictions sur ce que le projet fera faire au Clawbot par rapport à leurs observations réelles.
  • Programmer la griffe en utilisant le même plan de projet que celui de la programmation du bras.
Matériel requis :
Quantité Matériel nécessaire
1

VEX IQ Super Kit

1

VEXcode IQ

1

Carnet d'ingénierie

1

Modèle Clawbot (groupe motopropulseur)

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant

Pour des suggestions sur les stratégies d'enseignement pour cette section, consultez la colonne Livraison du Guide de stimulation à faire ou à ne pas faire (Google / .docx / .pdf).

Le bras Clawbot est prêt à monter et descendre !

Cette activité vous donnera les outils pour programmer votre robot avec des comportements conditionnels.
Le bloc [If then else] est l'objectif principal de l'activité, mais d'autres blocs de détection, de contrôle et d'opérateur sont également utilisés.

Échantillon de blocs de la boîte à outils VEXcode IQ - Bouton Cerveau enfoncé, pas opérateur, attendez jusqu'à, si c'est le cas, et si c'est le cas, les blocs.

Vous pouvez utiliser les informations d'aide à l'intérieur de VEXcode IQ pour en savoir plus sur les blocs. Pour obtenir des conseils sur l'utilisation de la fonction d'aide, consultez le didacticiel Utilisation de l'aide.

Barre d'outils VEXcode IQ avec l'icône Tutoriels appelée dans une boîte rouge, à droite du menu Fichier.

Étape 1 : Programmation pour déplacer le bras vers le bas.

À la page précédente, vous avez programmé le bras du Clawbot pour qu'il tourne lorsque vous appuyez sur le bouton Brain Up. Mais, qu'en est-il aussi de l'abaissement du bras ? Revenons d'abord sur le projet ArmUp2 précédent.

hi

Serait-il possible d'utiliser le même bloc [If then] pour faire tourner le bras vers le haut pour faire tourner également le bras vers le bas ? Essayons ! Créez le projet ci-dessous en modifiant votre projet ArmUp2 déjà existant.

Armez le projet 2 avec un bloc If then supplémentaire ajouté sous le premier, dans la boucle Forever. Le deuxième bloc If then indique Si le bouton Brain Down est enfoncé, puis faites tourner le moteur du bras vers le bas, attendez que le bouton Brain Down ne soit pas enfoncé. Ensuite, le bloc moteur du bras d'arrêt se trouve sous l'If then.

  • Enregistrez le projet sous le nom ArmUpDown. Si les élèves ont besoin d'aide pour enregistrer le projet, reportez-vous au tutoriel Nommer et enregistrer.

    Boîte de dialogue Nom du projet dans la barre d'outils VEXcode IQ. L'emplacement 3 est affiché et le nom du projet indique Arm Up Down.

  • Vérifiez que le nom du projet ArmUpDown  est maintenant dans la fenêtre au centre de la barre d'outils.
  • Prédisez ce que le projet aura le Clawbot dans votre cahier d'ingénierie. Expliquez les comportements de l'utilisateur et du Clawbot.
  • Testez pour voir si votre prédiction de ce que le projet a fait avec le Clawbot est correcte.
    • Téléchargez le projet sur l' emplacement 3 sur le Clawbot, puis exécutez-le.
    • Pour obtenir de l'aide sur le téléchargement et l'exécution d'un projet, consultez le tutoriel dans VEXcode IQ qui explique comment télécharger et exécuter un projet.
      L'icône du tutoriel indique Télécharger et exécuter un projet avec une icône de téléchargement et une flèche ci-dessus.
  • Vérifiez vos explications du projet et ajoutez des notes pour les corriger au besoin.

Icône Conseils pour l'enseignant Conseils à l'enseignant

Si c'est la première fois que l'élève utilise VEXcode IQ, il peut également voir les tutoriels dans la barre d'outils pour apprendre d'autres compétences de base.

Barre d'outils VEXcode IQ avec l'icône Tutoriels appelée dans une boîte rouge, à droite du menu Fichier.

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant

Le projet que les élèves construisent ci-dessus fonctionnera. Lorsque le bouton Brain Up est enfoncé, le bras tourne vers le haut et lorsque le bouton Brain Down est enfoncé, le bras tourne vers le bas. Même si le projet fonctionne tel quel, il n'est pas écrit de manière optimale. Il pourrait y avoir un cas où les deux conditions peuvent être vraies en même temps. Notez également que puisque l'état du bouton Brain Up est d'abord enfoncé, si le bouton Brain Up est maintenu enfoncé, puis que le bouton Brain Down est également enfoncé, le bras continuera à tourner vers le haut. Cette action ne s'arrêtera pas tant que le bouton Cerveau haut ne sera pas relâché. Ainsi, le projet sera réécrit à l'étape suivante pour inclure un bloc [If then else] afin d'éviter ces problèmes potentiels.

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant - Arrêtez-vous et discutez

Maintenant que les élèves ont testé le projet, demandez-leur comment leurs prédictions se comparent à leurs observations. Facilitez la discussion en posant les questions suivantes :

  • Votre prédiction était-elle la même que votre observation ?

  • Qu'est-ce qui semble être heureux dans le projet ?

  • Les conditions d'enfoncement des boutons Haut et Bas ne sont-elles vérifiées qu'une seule fois ?

  • Pensez-vous que le projet pourrait être réorganisé pour fonctionner plus efficacement ?

Étape 2 : Comprendre le flux du projet.

À l'étape précédente, le projet a levé et abaissé le bras. Cependant, étant donné que l'état du bouton Brain Up est d'abord enfoncé, si le bouton Brain Up est maintenu enfoncé, puis que le bouton Brain Down est également enfoncé, le bras continuera à tourner car cette action ne s'arrêtera pas tant que le bouton Brain Up ne sera pas relâché. Affichez l'organigramme suivant qui explique le flux du projet.

Image de flux de projet montrant comment le projet est exécuté pour prendre une décision. Le bouton brain up pressé est étiqueté comme condition, s'il est pressé/True, alors les blocs ci-dessous fonctionneront dans l'ordre jusqu'à la condition suivante. S'il n'est pas pressé/faux, une ligne rouge indique que les blocs sont sautés et que le projet se déplace pour vérifier la deuxième condition. La même ramification se produit pour la deuxième condition - si le bouton brain down est enfoncé.

Ainsi, le projet peut remplacer les blocs [If then] par des blocs [If then else ] afin qu'une seule instance puisse être vraie à tout moment.

Visionnez la vidéo de tutoriel suivante sur les blocs [If then else] :

Commencez par regarder la vidéo du tutoriel If-Then-Else dans VEXcode IQ.

L'icône du tutoriel indique If then else blocks en bas et affiche le contour des blocs en haut.

L'utilisation de blocs [If then else] éliminera également le besoin de blocs [Wait until] car le bras continuera à tourner jusqu'à ce que le bouton Brain Up soit relâché. Cela se produit parce que la partie « else » de [If then else] n' est jamais atteinte tant que la condition du bouton Brain Up n'est pas fausse (relâchée).

Le bloc [Forever] permet de vérifier en permanence la première condition.

Projet VEXcode IQ avec une boucle Forever attachée au bloc When started. À l'intérieur de la boucle Forever se trouve un bloc if then else. La branche Si indique Si le bouton Cerveau haut est enfoncé, puis faire tourner le moteur du bras vers le haut. La branche else contient un autre bloc if then else, lisant si le bouton brain Down est enfoncé puis faites tourner le moteur du bras vers le bas, sinon, arrêtez le moteur du bras.

Explorons la possibilité de modifier le projet en ajoutant des blocs [If then else]. Le moteur du bras va maintenant continuer à tourner jusqu'à ce que le bouton Cerveau haut ne soit plus enfoncé (relâché). En raison du blocage [Forever], cette condition continuera à être vérifiée jusqu'à ce qu'elle soit fausse.

Une fois que l'état du bouton Cerveau haut est faux, le projet passe au bloc suivant, qui consiste à vérifier l'état si le bouton Cerveau bas est enfoncé. Si l'état du bouton Brain Down sur lequel vous appuyez est vrai, le bras tournera vers le haut. Encore une fois, en raison du blocage [Forever], cette condition continuera à être vérifiée jusqu'à ce qu'elle soit fausse.

Une fois que l'état du bouton Brain Up est faux, le projet passe au bloc suivant, qui est le bloc [Stop motor]. Ainsi, le moteur du bras ne s'arrêtera que lorsque les deux conditions sont fausses (aucun bouton n'est enfoncé).

Image de flux de projet montrant comment le projet est exécuté pour prendre une décision. Tout d'abord, l'état du bouton Si le cerveau est enfoncé est vérifié, s'il est vrai, le projet se déplace pour faire tourner le moteur du bras vers le haut et revient au début. Si la condition est fausse, la deuxième condition du bouton Cerveau bas enfoncé est vérifiée. Si vous appuyez sur le bouton brain down/true, faites tourner le moteur du bras vers le bas, puis revenez au début. S'il n'est pas pressé faux, le bloc moteur du bras d'arrêt fonctionne.

Icône Motiver la discussion Motiver la discussion

Q : Quelle est la progression du flux de projet si l'état du bouton Brain Up sur lequel vous appuyez est FAUX (relâché) ?
R : Si la condition est fausse, le flux de projet continuera à vérifier l'état du bouton Brain Down sur lequel vous appuyez.

Q : Quel est le but des blocs [If then else] dans le projet ci-dessus ?
R : L'utilisation des blocs [If then else] permet à une seule instance d'être vraie à la fois. Ainsi, le bouton Brain Up et les boutons Brain Down ne peuvent pas être vrais en même temps à l'aide des blocs [If then else], car la deuxième condition d'appui sur le bouton Brain Down ne serait même pas une option à moins que la première condition d'appui sur le bouton Brain Up soit fausse. L'autre objectif est d'améliorer l'efficacité de la programmation.

Q : Quelle est la progression du flux de projet si les deux conditions des boutons Haut et Bas sont fausses ?
R : Si les deux conditions sont fausses, le flux du projet continuera vers le bloc [Arrêter le moteur] avant de revenir en haut de la pile en répétant pour toujours.

Étape 3 : Programmation avec des blocs [If then else].

Utilisons les blocs [If then else] :

  • Ajoutez les blocs [If then else] à votre projet ArmUpDown afin que votre projet ressemble à ce qui suit :

    Projet VEXcode IQ avec un bloc Forever attaché au bloc When started. À l'intérieur du bloc Forever se trouve un bloc If then else. La branche si indique si le bouton brain up est enfoncé, faire tourner le moteur du bras vers le haut. La branche else contient un autre bloc if then else qui indique si le bouton brain down est enfoncé, puis faites tourner le moteur du bras vers le bas, sinon arrêtez le moteur du bras.

  • Enregistrez le projet sous le nom ArmUpDown2. Si les élèves ont besoin d'aide pour enregistrer le projet, reportez-vous au tutoriel Nommer et enregistrer.

    Boîte de dialogue Nom du projet dans la barre d'outils VEXcode IQ. L'emplacement 4 est sélectionné et le nom du projet indique Arm Up Down 2.

  • Téléchargez le projet sur l' emplacement 4 sur le Clawbot, puis exécutez-le.
  • Pour obtenir de l'aide sur le téléchargement et l'exécution d'un projet, consultez le tutoriel dans VEXcode IQ qui explique comment télécharger et exécuter un projet.
    L'icône du tutoriel indique Télécharger et exécuter un projet en bas avec une icône de téléchargement et une flèche au-dessus.
  • Testez pour voir si le bras va maintenant tourner lorsque le bouton Brain Up est enfoncé et tourner vers le bas lorsque le bouton Brain Down est enfoncé.
  • Vérifiez que lorsque les boutons Cerveau haut et Cerveau bas ne sont pas enfoncés (relâchés), le moteur du bras s'arrête.
  • Écrivez vos observations sur la façon dont le Clawbot s'est comporté avant et après avoir ajouté les blocs if then else à votre projet dans votre cahier d'ingénierie.

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant - Arrêtez-vous et discutez

Une fois que les élèves ont testé le projet avant et après avoir ajouté le bloc [If then else], discutez avec les élèves de la façon dont cela permet au bras de continuer à tourner jusqu'à ce que le bouton Brain Up soit relâché. Demandez aux élèves de partager leurs observations à partir de leurs cahiers d'ingénierie. Animer une discussion en posant les questions suivantes :

  • Voyez-vous le Clawbot se comporter différemment entre l'utilisation des blocs [If then else] par rapport aux seuls blocs [If then] ?

  • Pourquoi pensez-vous que l'efficacité du programme est importante ?

  • La condition du bouton Cerveau haut n'est-elle vérifiée qu'une seule fois dans le projet ?

Les cahiers d'ingénierie des étudiants peuvent être maintenus et notés individuellement (Google / .docx / .pdf) ou en équipe (Google / .docx / .pdf). Les liens précédents fournissent une rubrique différente pour chaque approche. Chaque fois qu'une rubrique est incluse dans la planification de l'éducation, il est de bonne pratique d'expliquer la rubrique ou au moins d'en donner des copies aux élèves avant le début de l'activité.

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant

Les élèves peuvent ne pas voir beaucoup de différence dans la façon dont leur Clawbot se comporte entre l'utilisation des blocs [If then else] par rapport aux blocs [If then]. Si les élèves ne peuvent pas voir physiquement beaucoup de différence, animez une discussion sur l'efficacité de la programmation et sur la façon dont la simplification d'un projet peut conduire à l'utilisation de moins de blocs. L'utilisation de moins de blocs dans un projet peut réduire le nombre d'erreurs potentielles.

Étape 4 : Programmer la griffe.

À l'étape précédente, le projet a été optimisé pour fonctionner plus efficacement en utilisant des blocs [If then else]. Dans l'exemple précédent, le bras a été manipulé à l'aide des boutons Cerveau haut et Cerveau bas.

En utilisant exactement le même plan de projet, la griffe peut également être manipulée.

  • Passez en revue le projet ArmUpDown2 et changez les blocs [Spin] en ClawMotor au lieu de ArmMotor en utilisant le menu déroulant.

    Assurez-vous que le bouton Cerveau haut fait tourner la griffe « ouverte » et que le bouton Cerveau bas fait tourner la griffe « fermée » en utilisant les menus déroulants.

    Projet Arm Up Down 2 avec les blocs du moteur de rotation réglés sur le moteur à griffes. Le bloc du moteur d'arrêt a la sélection des paramètres ouverte avec le moteur de bras sélectionné.

  • Enregistrez le projet sous ClawUpDown. Si les élèves ont besoin d'aide pour enregistrer le projet, reportez-vous au tutoriel Nommer et enregistrer.

    Boîte de dialogue Nom du projet dans la barre d'outils VEXcode IQ. L'emplacement 1 est sélectionné et le nom du projet indique Claw Up Down.

  • Téléchargez le projet dans l' emplacement 1 sur le Clawbot, puis exécutez-le.
  • Pour obtenir de l'aide sur le téléchargement et l'exécution d'un projet, consultez le tutoriel dans VEXcode IQ qui explique comment télécharger et exécuter un projet.
    L'icône du tutoriel indique Télécharger et exécuter un projet en bas.
  • Testez pour voir si la griffe va maintenant s'ouvrir lorsque le bouton Cerveau haut est enfoncé et se fermer lorsque le bouton Cerveau bas est enfoncé.
  • Vérifiez que lorsque les boutons Cerveau haut et Cerveau bas ne sont pas enfoncés (relâchés), le moteur à griffes s'arrête.
  • Écrivez vos observations sur la façon dont le Clawbot s'est comporté avant et après avoir ajouté les blocs if then else à votre projet dans votre cahier d'ingénierie.

Icône Boîte à outils de l'enseignant Boîte à outils de l'enseignant

Maintenant que les élèves ont les compétences nécessaires pour manipuler le bras et la griffe à l'aide de boutons, demandez-leur de réfléchir à la façon dont ils peuvent effectuer les quatre actions dans le même projet (bras levé, bras baissé, griffe ouverte et griffe fermée).
Les élèves utiliseront un autre bloc [if then else] dans la section repenser pour permettre à leur robot d'effectuer les quatre actions.

Icône Étendre votre apprentissage Étendez votre apprentissage - Réglez le bloc d'arrêt du moteur

Si les élèves programment leur robot pour qu'il lève et abaisse le bras, le poids de la griffe pourrait faire dériver le bras vers le bas.
Dans ce cas, le bloc [Régler l'arrêt du moteur] peut être utilisé pour que le bras ne tombe pas en raison de la gravité et du poids de la griffe. Ce bloc peut être utilisé au début du projet et sera appliqué à tous les futurs blocs moteurs pour le reste du projet.

Début des informations d'aide pour le bloc d'arrêt du moteur réglé. Le bloc est affiché avec les paramètres réglés sur Moteur à griffes et l'arrêt réglé sur Frein. Le texte indique Définit le comportement du moteur intelligent VEX IQ une fois qu'il s'arrête de bouger.

Le bloc d'arrêt du moteur set a trois réglages :

  • Le frein provoque l'arrêt immédiat du moteur.
  • Coast laisse le moteur tourner progressivement jusqu'à l'arrêt.
  • Le maintien provoque l'arrêt immédiat du moteur et le ramène à sa position d'arrêt s'il est déplacé.