Skip to main content

Lektion 3: Weiter abbiegen

Navigieren zum Abbiegeort

  • Fügen Sie Ihrem Projekt nach dem letzten turn_for-Befehl die folgenden Befehle hinzu. Stellen Sie sicher, dass die Einrückung der while-Schleifen mit denen im Projekt übereinstimmt. Sie können sie kopieren und in oder aus Ihrem vorhandenen Projekt einfügen oder in den Arbeitsbereich eingeben.  

        while front_distance.get_distance(MM) > 50:
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
    
        drivetrain.turn_for(LEFT, 90, DEGREES)
  • Wir können schätzen, dass der Abstand von der nächsten Wand zu unserem gewünschten Drehort im Labyrinth etwa 300 Millimeter (mm) beträgt. Eine Ansicht von oben auf den Wall Maze Playground mit dem Roboter in seiner Endposition, wobei eine schwarze Linie seinen Weg von Anfang an zeigt. Der Abstand von der Vorderseite des Roboters zum gegenüberliegenden Wandhindernis ist mit ca. 300mm bezeichnet. 

Zur Kenntnisnahme

Sie können die im Dashboard gemeldeten Abstandssensordaten verwenden, um den Abstand des VR-Roboters zu einem Objekt abzuschätzen. Stoppen Sie Ihr Projekt, wenn der VR-Roboter Ihren gewünschten Standort erreicht. Nach dem Stoppen zeigen die Werte im Dashboard die Sensorwerte für den VR-Roboter an, an dem er sich gerade befindet. Dies kann verwendet werden, um Sensorwerte zu beobachten und den Abstand zwischen dem VR-Roboter und einem Objekt zu einem bestimmten Zeitpunkt zu visualisieren.

Eine Draufsicht auf den Wandlabyrinth-Spielplatz mit dem VR-Roboter an der Hinderniswand unter dem Buchstaben B. Die Stopptaste in der unteren linken Ecke des Spielplatzfensters ist mit einem roten Kästchen hervorgehoben.

Wenn Sie das Projekt stoppen, wenn der VR-Roboter einen bestimmten Punkt erreicht, können Sie das Projekt anhalten, um zu sehen, welchen Wert der Abstandssensor in Echtzeit meldet. Im Falle des Wandlabyrinths kann dieser Wert im Operator größer als (>) verwendet werden, um den VR-Roboter in einem weiteren Abstand von der Wand anzuhalten.
Eine Draufsicht auf den Wall Maze Playground mit dem VR-Roboter, der ungefähr an der Stelle angehalten wurde, an der er sich drehen muss, um um die Wand und auf den Weg zum Buchstaben B zu fahren. Das Dashboard ist im Spielplatzfenster geöffnet und der ganz rechts gemeldete Wert für die Entfernung beträgt 272 mm.

  • Passen Sie den Wert im Endlaufvergleichsoperator auf 300 Millimeter (mm) an, wie unten gezeigt. Dadurch kann der VR-Roboter vorwärts fahren, während der Abstand zur Wand größer als 300 Millimeter ist. Wenn er weniger als 300 Millimeter beträgt, dreht der VR-Roboter an der gewünschten Abbiegestelle im Wandlabyrinth nach links.

        while front_distance.get_distance(MM) > 300:
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
    
        drivetrain.turn_for(LEFT, 90, DEGREES) 
  • Starten Sie den Wall Maze Playground , wenn er noch nicht geöffnet ist, und führen Sie das Projekt aus. Beachten Sie, wie der VR-Roboter an der gewünschten Abbiegestelle nach links abbiegt, so dass er bereit ist, durch das Labyrinth bis zum Buchstaben „B“ fortzufahren. VEXcode VR mit dem links im Arbeitsbereich gezeigten Projekt und der endgültigen Position des VR-Roboters auf dem Spielplatz. Der Roboter zeigt nun nach unten, innerhalb des offenen Weges, der zum Buchstaben B führt, und wird nicht durch eine Wand blockiert.
  • Fügen Sie Ihrem Projekt nach dem letzten turn_for-Befehl die folgenden Befehle hinzu, damit der VR-Roboter seinen Weg zum Buchstaben „B“ fortsetzt. Stellen Sie sicher, dass die while-Schleifen richtig eingerückt sind. 
  • 	while front_distance.get_distance(MM) > 50:
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
    
        drivetrain.turn_for(RIGHT, 90, DEGREES)
    
        while front_distance.get_distance(MM) > 50:
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
    
        drivetrain.turn_for(RIGHT, 90, DEGREES)
    
        while front_distance.get_distance(MM) > 50:
            drivetrain.drive(FORWARD)
            wait(5, MSEC)
    
        drivetrain.stop()
  • Starten Sie den Wall Maze Playground , wenn er noch nicht geöffnet ist, und führen Sie das Projekt erneut aus.

    Eine Draufsicht auf den Wandlabyrinth-Spielplatz mit dem VR-Roboter, der auf dem Buchstaben B gestoppt ist.
  • Der VR-Roboter fährt jetzt vom Anfang des Wandlabyrinth-Spielplatzes aus und stoppt auf dem Buchstaben „B“.
  • Beachten Sie, dass die Änderung des rechten Operanden auf 300 Millimeter es dem VR-Roboter ermöglichte, sich in einem Abstand weiter von der Wand zu drehen, was notwendig war, um sich an der richtigen Stelle zu drehen.
  • Der im Dashboard gemeldete Abstandswert kann verwendet werden, um zu beobachten, wie weit der VR-Roboter von einer Wand entfernt war, als er sich drehen musste, um zum Buchstaben „B“ zu gelangen.
    Das Spielplatzfenster mit dem VR-Roboter am Wendepunkt, um zum offenen Pfad zum Buchstaben B zu navigieren. Der im Armaturenbrett gemeldete Abstandswert beträgt 300 mm.

Wählen Sie die Schaltfläche Weiter um mit dem Rest dieser Lektion fortzufahren.