Skip to main content

Lektion 2: Fahren Sie zur Nummer ‘5’

In dieser Lektion fährt der VR-Roboter zur Nummer ‘5‘ und zurück zur Nummer ‘1‘ auf dem Number Grid Map Playground!

Eine Draufsicht auf den Spielplatz der Zahlenrasterkarte, wobei die Zahl 5 durch ein rotes Feld hervorgehoben wird. Der VR-Roboter startet auf Nummer 1, und das Feld Nummer 5 ist vier Felder rechts.

Beachten Sie, dass sich der VR-Roboter entlang der X-Achse bewegt, wobei die X-Werte steigen, um sich auf dem Zahlenrasterkarten-Spielplatz auf die Zahl "5" zu bewegen.

Eine Draufsicht auf den Spielplatz der Zahlenrasterkarte, wobei das Feld mit der Nummer 5 durch eine schwarze Box hervorgehoben wird. Eine Linie zeigt Messungen über die X-Achse an, wobei der erste Abstand -900 Millimeter auf der X-Achse beträgt und der nächste -700 ist, der jedes Mal um 200 zählt. Der fünfte Raum befindet sich an einer X-Position von -100 Millimetern.

Der VR-Roboter fährt zur Position der Nummer ‘5‘ auf dem Number Grid Map Playground. Bevor der VR-Roboter jedoch zu dieser Nummer navigieren kann, muss dem VR-Roboter mitgeteilt werden, wo sich diese Nummer befindet. Beginnend in der Mitte des Spielplatzes sind die Koordinaten der Zahl ‘5’ (-100, -900).

Eine Draufsicht auf den Spielplatz der Zahlenrasterkarte mit zwei Achsenanzeigen, die die Position der fünften Felder markieren. Der VR-Roboter startet bei -900 X und -900 Y, während der fünfte Bereich bei -100 X und -900 Y liegt.
  • Um zu beginnen, muss der VR-Roboter der Zahl "5" gegenüberstehen. Ziehen Sie einen [Turn for] -Block in den Arbeitsbereich.

    VEXcode VR blockiert ein Projekt, das mit einem "When Started" -Block beginnt, gefolgt von einem "Turn For" -Block, um um 90 Grad nach rechts abzubiegen.
  • Ziehen Sie den Block [Drive] non-waiting in den Arbeitsbereich.

    Eine Fortsetzung des VEXcode VR-Blöcke-Projekts, jetzt mit einem Drive Forward-Block, der nach dem Turn For-Block hinzugefügt wurde. Das gesamte Projekt liest sich nun wie folgt: Wenn Sie begonnen haben, biegen Sie um 90 Grad nach rechts ab und fahren Sie dann vorwärts.
  • Bringen Sie einen [Warten bis] -Block unter dem [Laufwerk] -Block an.

    Eine Fortsetzung des VEXcode VR-Blöcke-Projekts, jetzt mit einem Wartezeit-Block, der nach dem Drive Forward-Block hinzugefügt wurde. Das gesamte Projekt liest sich nun wie folgt: Wenn Sie begonnen haben, biegen Sie um 90 Grad nach rechts ab und fahren Sie dann vorwärts. Schließlich gibt es jetzt einen Wartezeit-Block mit einem leeren booleschen Parameter.
  • Der Block [Warten bis] akzeptiert boolesche Bedingungen. Genau wie die Abstandssensoreinheit wird dieses Projekt die Bedingungszeichen verwenden, um durch den Number Grid Map Playground zu fahren. Ziehen Sie den <Greater than> Booleschen Reporterblock in den Block [Warten bis].

    Eine Fortsetzung des VEXcode VR-Blöcke-Projekts, jetzt mit einem Greater Than-Block, der in den Wait Until-Block eingefügt wird. Das gesamte Projekt liest sich nun wie folgt: Wenn Sie begonnen haben, biegen Sie um 90 Grad nach rechts ab und fahren Sie dann vorwärts. Schließlich gibt es jetzt einen Warten bis -Block mit einem Größer-als-Block darin, der lautet: "Leer ist größer als 50".
  • Beachten Sie, dass der <Greater than> Block anstelle des <Less than> Blocks verwendet wird, da der VR-Roboter von der linken Seite des Spielplatzes nach rechts fährt. Der VR-Roboter startet bei einem X-Wert von -900 Millimetern (mm). Wenn der VR-Roboter vorwärts fährt, steigen die X-Werte.

    Die gleiche Draufsicht auf den Spielplatz der Zahlenrasterkarte mit zwei Achsen, die die Position der fünften Felder von früher markieren. Der VR-Roboter startet bei -900 X und -900 Y, während der fünfte Bereich bei -100 X und -900 Y liegt.
  • Ziehen Sie den Block (Position des Roboters) in den <Greater than> Block.

    Eine Fortsetzung des VEXcode VR-Blöcke-Projekts, jetzt mit einer Position des Roboterblocks, der in den Größer-als-Block eingefügt wird. Das gesamte Projekt liest sich nun wie folgt: Wenn Sie begonnen haben, biegen Sie um 90 Grad nach rechts ab und fahren Sie dann vorwärts. Warten Sie schließlich, bis die X-Position des Roboters in Millimetern größer als 50 ist.

    Zur Kenntnisnahme

    Der (Position des Roboters) -Block ist ein numerischer Melderblock, der die X- oder Y-Koordinatenposition der Mitte des VR-Roboters meldet. Wählen Sie, ob die X- oder Y-Koordinatenposition gemeldet wird.

    Die Position des Roboterblocks mit geöffnetem Dropdown-Menü der Achse ändert die Messachse von X auf Y.

    Verwenden von Schalterblöcken 

    Dies ist der Schalter (Position des Roboters) -Block. Um den Parameter des Blocks (Position des Roboters) zu ändern, um die Y-Koordinate zu melden, geben Sie einfach "Y" für den Koordinatenwert ein oder wählen Sie den Koordinatenvorschlag aus, der angezeigt wird. 

    Eine Position des Roboter-Schalterblocks, um die automatische Vervollständigungsfunktion zu demonstrieren. Der Block liest 'location.position(X, MM)' und der Benutzer ändert den X-Parameter mithilfe der automatischen Vervollständigung in Y.

    Der Block (Position des Roboters) kann Werte in Millimetern (mm) oder Zoll melden.

    Die Position des Roboterblocks mit dem Dropdown-Menü der Messeinheit wird geöffnet, wodurch die Maßeinheit von Millimetern auf Zoll geändert wird.

    Sie können den Parameter für die Maßeinheit ändern, während Sie den Block Schalter (Position des Roboters) verwenden, indem Sie einfach "ZOLL" eingeben oder den angezeigten Vorschlag auswählen. Achten Sie darauf, bei der Eingabe von Parametern für Maßeinheiten alle Großbuchstaben zu verwenden.

    Eine Position des Roboter-Schalterblocks, um die automatische Vervollständigungsfunktion zu demonstrieren. Der Block liest "location.position(X, MM)", und der Benutzer ändert den Millimeterparameter mithilfe der automatischen Vervollständigung auf Zoll.

  • Setzen Sie den Parameter des <Greater than> Blocks auf -100.

    Eine Fortsetzung des VEXcode VR-Blöcke-Projekts, wobei nun der zweite Parameter des Greater Than-Blocks von 50 auf -100 geändert wurde. Das gesamte Projekt liest sich nun wie folgt: Wenn Sie begonnen haben, biegen Sie um 90 Grad nach rechts ab und fahren Sie dann vorwärts. Warten Sie schließlich, bis die X-Position des Roboters in Millimetern größer als -100 ist.
  • Ziehen Sie einen [Stop driving] -Block ein und fügen Sie ihn dem Projekt hinzu.

    Eine Fortsetzung des VEXcode VR Blocks Projekts, jetzt mit einem Stop Driving Block unterhalb des Wait Until Blocks. Das gesamte Projekt liest sich nun wie folgt: Wenn Sie begonnen haben, biegen Sie um 90 Grad nach rechts ab und fahren Sie dann vorwärts. Warten Sie schließlich, bis die X-Position des Roboters in Millimetern größer als -100 ist, und hören Sie dann auf zu fahren.
  • Öffnen Sie den Number Grid Map Playground , wenn er noch nicht geöffnet ist, und führen Sie das Projekt aus.
  • Beobachten Sie, wie der VR-Roboter auf dem Number Grid Map Playground zur Nummer „5“ fährt.

    Eine Draufsicht auf den Number Grid Map-Spielplatz, wobei der VR-Roboter zum fünften Platz gefahren ist.
  • In diesem Projekt fährt der VR-Roboter zur Nummer ‘5‘ auf dem Number Grid Map Playground. Der Block [Warten bis] wird verwendet, damit der VR-Roboter weiter vorwärts fährt, bis der X-Wert größer als der X-Wert der Koordinate ist, auf der die angegebene Zahl steht.
  • Sobald der X-Wert größer als -100 ist, wechselt das Projekt zum nächsten Block im Stapel, der ein [Stop driving] -Block ist. Da der X-Wert der Zahl ‘5‘ -100 ist, hört der VR-Roboter auf zu fahren, sobald der X-Wert größer als -100 ist.

Ein Diagramm, das den Ablauf der Logik im Projekt VEXcode VR Blocks visualisiert. Das Projekt beginnt, indem es sich um 90 Grad nach rechts dreht und dann vorwärts fährt, und hält diesen Befehl, bis die X-Position des Robotersensors in Millimetern größer als -100 ist, wonach ein Stop-Driving-Block den Drive-Forward-Befehl beendet.

Verwenden von Schalterblöcken 

In dieser Lektion haben Sie gelernt, wie Sie den Block VEXcode [Warten bis] mit einer booleschen Bedingung verwenden, um dem Roboter zu befehlen, zu warten, bis der Roboter eine Position von mehr als -100 auf der X-Achse erreicht, bevor Sie zum nächsten Verhalten übergehen.

VEXcode VR-Block, der Wait Until X Position des Roboters in Millimetern liest, ist größer als -100.

Die folgende Abbildung zeigt den Block Switch [Wait until] mit den gleichen Befehlen in Python. Innerhalb des Switch-Blocks, obwohl nicht location.position (X, MM) > -100: ist der erste Python-Befehl, der überprüft, ob die Position des Roboters entlang der X-Achse größer als -100 ist.

Der eingerückte Befehl wait (5, MS) unterbricht die Ausführung der Prüfung für eine bestimmte Zeit. In diesem Beispiel prüft das Projekt alle 5 MS, ob die Position des Roboters größer als ein X-Wert von -100 ist. Diese Codezeile wird unter der ersten Codezeile eingerückt, da dieser Befehl das Verhalten ist, das wiederholt wird, bis die Bedingung (ein X-Koordinatenwert von größer als -100) erfüllt ist. 

VEXcode VR-Schalterblock mit Python-Code, der lautet 'while not location.position (X, MM) > -100: wait(5, MS)'.

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