Leçon 3 : Tourner à une plus grande distance
Naviguer jusqu'à l'emplacement de virage
-
Ajoutez les commandes suivantes à votre projet, après la dernière commande turn_for . Assurez-vous que l'indentation des boucles while correspond à celles du projet. Vous pouvez copier et coller dans ou à partir de votre projet existant, ou les taper dans l'espace de travail.
tandis quefront_distance.get_distance (MM) > 50 :drivetrain.drive (FORWARD) wait(5, MSEC) drivetrain.turn_for(LEFT, 90, DEGREES)
- Nous pouvons estimer que la distance entre le mur suivant et notre emplacement de virage souhaité dans le labyrinthe est d'environ 300 millimètres (mm).
Pour votre information
Vous pouvez utiliser les données du capteur de distance comme indiqué dans le tableau de bord pour estimer la distance entre le robot VR et un objet. Arrêtez votre projet lorsque le robot VR atteint l'emplacement souhaité. Une fois arrêté, les valeurs dans le tableau de bord afficheront les valeurs de capteur pour le robot VR où il est actuellement positionné. Cela peut être utilisé pour observer les valeurs du capteur ainsi que pour visualiser la distance entre le robot VR et un objet à un certain moment.
-
Ajustez la valeur de l'opérateur de comparaison de boucle finale à 300 millimètres (mm), comme indiqué ci-dessous. Cela permettra au robot VR de rouler vers l'avant lorsque la distance au mur est supérieure à 300 millimètres. Lorsqu'il est inférieur à 300 millimètres, le robot VR tourne à gauche, à l'endroit souhaité dans le labyrinthe mural.
tandis quefront_distance.get_distance (MM) > 300 :drivetrain.drive (FORWARD) wait(5, MSEC) drivetrain.turn_for(LEFT, 90, DEGREES)
- Lancez le terrain de jeu Wall Maze s'il n'est pas déjà ouvert et exécutez le projet. Remarquez comment le robot VR tourne à gauche à l'emplacement de virage souhaité, de sorte qu'il est prêt à continuer à travers le labyrinthe jusqu'à la lettre « B ».
- Ensuite, ajoutez les commandes suivantes à votre projet, après le dernier tour_pour la commande, afin que le robot VR continue sur son chemin vers la lettre « B ». Assurez-vous que les boucles while sont correctement indentées.
-
while front_distance.get_distance(MM) > 50 : drivetrain.drive(FORWARD) wait(5, MSEC) drivetrain.turn_for (RIGHT, 90, DEGRÉS) while front_distance.get_distance (MM) > 50 : drivetrain.drive (FORWARD) wait(5, MSEC) drivetrain.turn_for (RIGHT, 90, DEGRÉS) while front_distance.get_distance (MM) > 50 : drivetrain.drive(FORWARD) wait(5, MSEC) drivetrain.stop()
-
Lancez le terrain de jeu Wall Maze s'il n'est pas déjà ouvert et relancez le projet.
- Le robot VR roule maintenant depuis le début de l'aire de jeux du labyrinthe mural et s'arrête sur la lettre « B ».
- Notez que le changement de l'opérande droit à 300 millimètres a permis au robot VR de tourner à une distance plus éloignée du mur, ce qui était nécessaire pour tourner au bon endroit.
- La valeur de distance indiquée dans le tableau de bord peut être utilisée pour observer à quelle distance le robot VR se trouvait d'un mur lorsqu'il devait se tourner pour atteindre la lettre « B ».
Sélectionnez le bouton Suivant pour continuer le reste de cette leçon.