Skip to main content

Leçon 4 : Déplacer un disque rouge et vert

  • Ensuite, le robot VR devra avancer vers le prochain objectif coloré. Notez que le robot VR devra faire avancer quatre carrés de grille, soit 800 millimètres (mm) afin de se rendre au centre du prochain objectif coloré.

    Vue de dessus du Disk Mover Playground, avec le VR Robot positionné au bord du but bleu après avoir déposé le premier disque bleu, face au but rouge vers la droite. Une flèche pointillée pointe de l'avant du robot VR vers le but rouge, indiquant le prochain mouvement prévu.
  • Ajoutez un bloc [Drive for] au code et définissez le paramètre sur 800 millimètres (mm).

    Le même projet VEXcode VR de la page précédente, avec un commentaire et Drive for block ajoutés à la fin de la pile. Les deux blocs supplémentaires indiquent Conduisez jusqu'au prochain objectif, puis avancez de 800 mm.
  • Le robot VR devra maintenant tourner pour faire face aux disques colorés.

    Vue de dessus du Disk Mover Playground, avec le VR Robot positionné dans la zone de but rouge. Une flèche incurvée pointe de l'avant du robot VR vers les disques rouges, indiquant le virage nécessaire pour faire face aux disques rouges.
  • Ajoutez un second bloc [Turn to heading] au code et définissez le paramètre sur zéro degré. Cela fera tourner le robot VR pour faire face aux disques colorés.

    Le même projet VEXcode VR, avec un bloc Commentaire et un bloc Activer le titre ajoutés à la fin de la pile. Ces deux blocs lisent Turn to disks, puis Turn to heading 0 degrees.
  • Ouvrez le Disk Mover Playground et exécutez le projet.
  • Le robot VR va ramasser et déplacer le premier disque bleu dans le but bleu, puis rouler sur le but rouge. Le robot VR se tournera également pour faire face aux disques rouges.

    Une vue de haut en bas du terrain de jeu Disk Mover avec la VR positionnée sur le bord avant du but rouge, face aux disques rouges.
  • Maintenant que le robot VR fait face aux disques rouges, le robot VR devra répéter les mêmes comportements que ceux utilisés pour collecter le disque bleu, afin de ramasser et de déplacer le disque rouge. Comportements consistant à avancer pour ramasser le disque, à faire demi-tour et à revenir au même objectif coloré pour déposer le disque.

    Une vue de haut en bas du terrain de jeu Disk Mover avec la VR positionnée sur le bord avant du but rouge, face aux disques rouges. Les flèches en pointillés indiquent les mouvements nécessaires à conduire pour ramasser le premier disque rouge, le livrer à l'objectif rouge, puis tourner et conduire vers l'objectif vert.
  • Une fois le premier disque rouge déplacé, le robot VR devra alors se diriger vers l'objectif vert et effectuer les mêmes actions que celles utilisées pour déplacer le disque bleu et le disque rouge, pour déplacer le premier disque vert.

    Une vue de haut en bas du terrain de jeu Disk Mover dans la configuration de départ, avec le robot dans l'emplacement de départ de l'objectif bleu. Les flèches en pointillés montrent les comportements répétés prévus pour que le robot prenne et livre le premier de chaque disque aux objectifs respectifs.
  • Afin de répéter les comportements plusieurs fois, un bloc [Répéter] peut être utilisé.

    Un bloc VEXcode VR Repeat de la boîte à outils, avec le paramètre défini sur la valeur par défaut de 10.
  • Ajoutez un bloc [Repeat] au code et définissez le paramètre sur ‘3’.

    Un aperçu de l'ajout d'un bloc Repeat au projet VR VEXcode existant, de sorte que tous les blocs nécessaires pour ramasser et déplacer le premier disque bleu vers l'objectif bleu, tourner pour passer à l'objectif suivant, puis tourner pour faire face au disque sont enveloppés dans le C du bloc Repeat. Le paramètre de bloc de répétition est défini sur 3.
  • Ouvrez le Disk Mover Playground et exécutez le projet.
  • Lorsque ce projet est exécuté, le robot VR ramasse et dépose un disque de chaque couleur dans son objectif coloré correspondant.

    Une vue de haut en bas du terrain de jeu Disk Mover montrant l'état final des disques et du robot après l'exécution du projet. Le premier de chaque disque de couleur se trouve dans l'objectif de couleur correspondant, et le robot VR se trouve sur le mur du terrain de jeu au bord de l'objectif vert.
  • Notez que le robot VR a continué à s'enfoncer dans le mur. Ce comportement est attendu puisque le projet a demandé au robot VR de tourner à droite et de se diriger vers le prochain objectif, trois fois. La première fois, vous passez du bleu au rouge. Le deuxième va du rouge au vert, et le troisième va du vert au mur, car il n'y a pas d'autre objectif coloré. Arrêtez le projet une fois que le robot VR a heurté le mur. Le projet pourrait être amélioré de sorte que le robot VR s'arrête après avoir ramassé et déplacé le disque vert, mais cela augmenterait la complexité globale du projet.

    La fenêtre Playground montrant le robot VR dans la zone d'objectif verte à la fin du projet, avec le bouton Stop mis en évidence par une case rouge indiquant l'arrêt du projet avant que le robot ne heurte le mur.

Pour votre information

Placer une boucle à l'intérieur d'une autre boucle est appelé imbrication. Lorsque vous « emboîtez » des boucles, la boucle externe contrôle le nombre de fois que la boucle interne s'exécute. Il existe de nombreux types de boucles qui peuvent être imbriquées. Par exemple, dans le code précédent ci-dessus, les blocs [Repeat until] sont imbriqués à l'intérieur d'un bloc [Repeat].

Le même projet VEXcode VR d'avant, montrant comment les blocs Repeat jusqu'à C sont imbriqués dans le bloc Repeat, permettant au robot de déplacer trois disques avec succès.

Un bloc [Répéter] peut également être imbriqué dans un autre bloc [Répéter]. Dans l'exemple suivant, étant donné que le bloc externe [Répéter] est réglé sur « 3 », le robot VR dessine trois cases sur le terrain de jeu.

À gauche, un projet montre un bloc de répétition défini sur 3, le bloc de répétition étant nécessaire pour coder le robot VR afin de dessiner un carré imbriqué dans celui-ci, illustrant le concept de boucles imbriquées. À droite, la fenêtre Playground montre les trois carrés dessinés par le robot à partir du projet.

Les boucles imbriquées sont utiles dans les projets où un robot VR répète les mêmes comportements plus d'une fois. Nesting Loops organise et condense un projet. Cela peut être utile pour mieux comprendre le contexte et l'objectif du code, ainsi que pour faciliter la recherche des erreurs.

Sélectionnez le bouton Suivant pour continuer le reste de cette leçon.