Bewegung#

Einführung#

Der VEX AIM Programmierroboter nutzt einen holonomen Antriebsstrang, um sich vorwärts, rückwärts, links, rechts oder schräg zu bewegen und sich dabei auch selbstständig zu drehen. Bewegungsblöcke steuern die Bewegungen und Drehungen des Roboters, seine Geschwindigkeit und die Erfassung seiner x- und y-Position.

Kreisförmiger Kompass von 0–315 Grad umgibt ein dunkelgraues Display mit marineblauem Bildschirm. Die Vorderseite des Roboters zeigt auf 0 Grad des Kompasses.

Nachfolgend finden Sie eine Liste aller Blöcke:

Aktionen – Den Roboter bewegen und drehen.

  • move — Bewegt den Roboter unendlich vorwärts, rückwärts, links oder rechts.

  • move at angle — Bewegt den Roboter unendlich lange in einem bestimmten Winkel.

  • move for — Bewegt den Roboter in eine bestimmte Richtung über eine festgelegte Distanz.

  • move at angle for — Bewegt den Roboter in einem bestimmten Winkel über eine bestimmte Distanz.

  • turn — Dreht den Roboter endlos nach links oder rechts.

  • turn for — Dreht den Roboter um eine bestimmte Anzahl von Grad nach links oder rechts.

  • in eine bestimmte Richtung drehen — Dreht den Roboter so, dass er in eine bestimmte Richtung zeigt.

  • Mit Controller bewegen — Ermöglicht es, den Roboter mit Hilfe des Controllers zu steuern.

  • Bewegung vollständig stoppen — Stoppt jegliche Bewegung des Roboters.

Einstellungen – Bewegungs- und Drehgeschwindigkeit anpassen.

Position – Position des Roboters verfolgen und anpassen.

  • position — Gibt die aktuelle x- oder y-Koordinate des Roboters aus.

  • Roboterposition festlegen — Ändert die aktuelle x- und y-Position des Roboters auf neue Werte.

Werte – Bewegungsstatus prüfen.

Aktionen#

bewegen#

The move stack block moves the robot forward, reverse, left, or right forever using the current move velocity. The robot will continue to move until it is given another action, like moving in a different direction, turning, or stopping.

Stapelblock vorwärts bewegen#
bewege [vorwärts v]

Parameter

Beschreibung

Richtung

Die Bewegungsrichtung des Roboters:

  • vorwärts
  • rückwärts
  • links
  • rechts

Beispiel

Wenn man angefangen hat, geht es vorwärts#
wenn gestartet
[Move forward]
bewege [vorwärts v]

im Winkel bewegen#

The move at angle stack block moves the robot forever at a specific angle using the current move velocity. The angle is relative to the current position of the robot. The robot will continue to move until it is given another action, like moving in a different direction, turning, or stopping.

Block im 90-Grad-Winkel bewegen#
bewege bei (90) Grad

Parameter

Beschreibung

Winkel

Der Winkel, in Grad, um den sich der Roboter bewegt. Dies kann eine ganze Zahl oder eine Dezimalzahl zwischen -360 und 360 sein.

Beispiele

Nach dem Start bewegt es sich um 90 Grad nach rechts, wartet 1 Sekunde, bewegt sich dann um 0 Grad vorwärts, wartet 1 Sekunde und stoppt dann jegliche Bewegung.#
wenn gestartet
[Move right, then move forward and stop.]
bewege bei (90) Grad
warte (1) Sekunden
bewege bei (0) Grad
warte (1) Sekunden
alle Bewegungen stoppen

Nach dem Start bewegt es sich diagonal nach rechts in einem Winkel von 45,33 Grad, wartet 1 Sekunde und stoppt dann jegliche Bewegung.#
wenn gestartet
[Move diagonally to the right and stop.]
bewege bei (45.33) Grad
warte (1) Sekunden
alle Bewegungen stoppen

Bewegung für#

The move for stack block moves the robot forward, reverse, left, or right for a specific distance using the current move velocity. The direction is relative to the current position of the robot. The project will wait until the robot is done moving before the next block in the stack runs.

Vorwärtsbewegung für 200 mm Stapelblock#
bewege [vorwärts v] für (200) [mm v] ▶

Parameter

Beschreibung

Richtung

Die Bewegungsrichtung des Roboters:

  • vorwärts
  • rückwärts
  • links
  • rechts

Distanz

Die vom Roboter zurückgelegte Strecke. Dies kann eine ganze Zahl oder eine Dezimalzahl sein.

Einheit

Die Entfernungseinheit: mm (Millimeter) oder Zoll.

und warte nicht

Wählen Sie den Pfeil ( ▶ ), um den Block zu erweitern und und warten Sie nicht anzuzeigen, damit der nächste Block im Stapel sofort ausgeführt wird.

Beispiel

Nach dem Start 200 mm Stapelblock vorwärts bewegen.#
wenn gestartet
[Move forward for 200 mm]
bewege [vorwärts v] für (200) [mm v] ▶

sich in einem Winkel bewegen für#

The move at angle for stack block moves the robot at a specific angle for a specific distance using the current move velocity. The angle is relative to the current position of the robot. The project will wait until the robot is done moving before the next block in the stack runs.

Bewegen Sie den Block schräg, um ihn zu stapeln.#
bewege bei (45) Grad für (200) [mm v] ▶

Parameter

Beschreibung

Winkel

Der Winkel, in Grad, um den sich der Roboter bewegt. Dies kann eine ganze Zahl oder eine Dezimalzahl zwischen -360 und 360 sein.

Distanz

Die vom Roboter zurückgelegte Strecke. Dies kann eine ganze Zahl oder eine Dezimalzahl sein.

Einheit

Die Entfernungseinheit: mm (Millimeter) oder Zoll.

und warte nicht

Wählen Sie den Pfeil ( ▶ ), um den Block zu erweitern und und warten Sie nicht anzuzeigen, damit der nächste Block im Stapel sofort ausgeführt wird.

Beispiele

Beim Start bewegt es sich 50 mm lang um 90 Grad nach rechts und anschließend 100 mm lang um 0 Grad nach vorn.#
wenn gestartet
[Move right, then move forward.]
bewege bei (90) Grad für (50) [mm v] ▶
bewege bei (0) Grad für (100) [mm v] ▶

Beim Start fährt das Fahrzeug 100 mm in einem Winkel von 0 Grad vorwärts, während alle LEDs rot blinken.#
wenn gestartet
[Drive forward and blink all LEDs red.]
bewege bei (0) Grad für (100) [mm v] ◀ und nicht warten
setze [lightall v] LED-Farbe auf [rot v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [rot v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden

drehen#

Der Drehen-Block dreht den Roboter mit der aktuellen Drehgeschwindigkeit unendlich oft nach links oder rechts. Der Roboter dreht sich so lange, bis ihm eine andere Aktion zugewiesen wird, z. B. Vorwärtsfahren oder Anhalten.

Rechts abbiegen, Blockstapel#
drehe [rechts v]

Parameter

Beschreibung

Richtung

Die Richtung, in die sich der Roboter dreht: links oder rechts.

Beispiel

Nach dem Start dreht es sich nach links, wartet 1 Sekunde und stoppt dann jegliche Bewegung.#
wenn gestartet
[Turn left, then stop.]
drehe [links v]
warte (1) Sekunden
alle Bewegungen stoppen

wenden für#

Der Drehungsprozess-Block dreht den Roboter um eine bestimmte Gradzahl nach links oder rechts, wobei die aktuelle Drehgeschwindigkeit verwendet wird. Die Drehung erfolgt relativ zur aktuellen Blickrichtung des Roboters. Das Projekt wartet, bis der Roboter die Drehung abgeschlossen hat, bevor der nächste Block im Stapel ausgeführt wird.

Biegen Sie rechts ab und stapeln Sie den Block im 90-Grad-Winkel.#
drehe [rechts v] für (90) Grad ▶

Parameter

Beschreibung

Richtung

Die Richtung, in die sich der Roboter dreht: links oder rechts.

Winkel

Die Gradzahl, um die sich der Roboter dreht. Dies kann eine ganze Zahl oder eine Dezimalzahl sein.

und warte nicht

Wählen Sie den Pfeil ( ▶ ), um den Block zu erweitern und und warten Sie nicht anzuzeigen, damit der nächste Block im Stapel sofort ausgeführt wird.

Beispiele

Nach dem Start dreht es sich um 90 Grad nach links und anschließend um 180 Grad nach rechts.#
wenn gestartet
[Turn left, then turn around to the right.]
drehe [links v] für (90) Grad ▶
drehe [rechts v] für (180) Grad ▶

Beim Start dreht es sich um 180 Grad nach rechts, während alle LEDs blau blinken.#
wenn gestartet
[Turn right and blink all LEDs blue.]
drehe [rechts v] für (180) Grad ◀ und nicht warten
setze [lightall v] LED-Farbe auf [blau v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [blau v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden

Zum Titel wechseln#

Die Richtung, in die der Roboter zeigt, wird in Grad gemessen. Der Drehung in Richtung dreht den Roboter mithilfe der aktuellen Drehgeschwindigkeit in eine bestimmte Richtung. Der Roboter dreht sich auf dem kürzesten Weg, um die Zielrichtung zu erreichen.

Die Ausgangsrichtung des Roboters beträgt 0 Grad.

Das Projekt wartet, bis der Roboter seine Drehung abgeschlossen hat, bevor der nächste Block im Stapel ausgeführt wird.

Drehen Sie sich in Richtung 90 Grad und stapeln Sie den Block#
drehe zu Kurswinkel (270) Grad ▶

Parameter

Beschreibung

Überschrift

Die Richtung, in die der Roboter zeigen sollte, von -360 bis 360 Grad.

und warte nicht

Wählen Sie den Pfeil ( ▶ ), um den Block zu erweitern und und warten Sie nicht anzuzeigen, damit der nächste Block im Stapel sofort ausgeführt wird.

Beispiele

wenn gestartet
[Turn to face each cardinal direction.]
drehe zu Kurswinkel (90) Grad ▶
warte (2) Sekunden
drehe zu Kurswinkel (180) Grad ▶
warte (2) Sekunden
drehe zu Kurswinkel (270) Grad ▶
warte (2) Sekunden
drehe zu Kurswinkel (0) Grad ▶
warte (2) Sekunden

Beim Start dreht es sich schnell um 180 Grad, während alle LEDs grün blinken.#
wenn gestartet
[Turn around quickly and blink all LEDs green.]
drehe zu Kurswinkel (180) Grad ◀ und nicht warten
setze [lightall v] LED-Farbe auf [grün v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [grün v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden

Mit dem Controller bewegen#

Der Steuerungsblock ermöglicht die Steuerung des Roboters mit dem Ein-Stick-Controller. Dieser Block liest die Controller-Eingabe nur einmal, es sei denn, er befindet sich in einer Schleife, beispielsweise einer Endlosschleife. Wenn die Schleife endet und keine anderen Blöcke dem Roboter eine Bewegung signalisieren, fährt der Roboter in die zuletzt vom Joystick gesteuerte Richtung weiter.

mit Controller bewegen

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Drive with the controller for five seconds.]
Timer zurücksetzen
solange <(Timer in Sekunden) [math_less_than v] [5]>
mit Controller bewegen
Ende
alle Bewegungen stoppen

Jegliche Bewegung einstellen#

Der Bewegung stoppen-Stapelblock stoppt jegliche Bewegung des Roboters.

Alle Bewegungen stoppen, Blockieren#
alle Bewegungen stoppen

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

Nach dem Start dreht es sich nach rechts, wartet 1 Sekunde und stoppt dann jegliche Bewegung.#
wenn gestartet
[Turn right, then stop.]
drehe [rechts v]
warte (1) Sekunden
alle Bewegungen stoppen

Einstellungen#

Bewegungsgeschwindigkeit festlegen#

Der Bewegungsgeschwindigkeit festlegen-Block gibt dem Roboter vor, wie schnell er sich bewegen soll. Ein höherer Prozentwert beschleunigt den Roboter, ein niedrigerer Prozentwert verlangsamt ihn.

Jedes Projekt beginnt standardmäßig damit, dass sich der Roboter mit 50 % Geschwindigkeit bewegt.

Eine Bewegungsgeschwindigkeit von 100 % entspricht 200 Millimetern pro Sekunde (mmps).

Bewegungsgeschwindigkeit auf 50 % des Blockstapels einstellen#
setze Fahrgeschwindigkeit auf (50)%

Parameter

Beschreibung

Geschwindigkeit

Die Geschwindigkeit, mit der man sich von 0 % auf 100 % bewegt.

Beispiel

wenn gestartet
[Move forward at the default velocity.]
setze Fahrgeschwindigkeit auf (50)%
bewege bei (0) Grad für (100) [mm v] ▶
warte (1) Sekunden
[Move slower.]
setze Fahrgeschwindigkeit auf (20)%
bewege bei (0) Grad für (100) [mm v] ▶
warte (1) Sekunden
[Move faster.]
setze Fahrgeschwindigkeit auf (100)%
bewege bei (0) Grad für (100) [mm v] ▶
warte (1) Sekunden

Kurvengeschwindigkeit einstellen#

Der Drehgeschwindigkeit festlegen-Block gibt dem Roboter vor, wie schnell er sich drehen soll. Ein höherer Prozentwert beschleunigt die Drehung, ein niedrigerer Prozentwert verlangsamt sie.

Jedes Projekt beginnt standardmäßig damit, dass sich der Roboter mit 50 % Geschwindigkeit dreht.

Eine Drehgeschwindigkeit von 100 % entspricht 150 Grad pro Sekunde \(dps\).

Drehgeschwindigkeit auf 50 % des Blocks einstellen#
setze Drehgeschwindigkeit auf (50)%

Parameter

Beschreibung

Geschwindigkeit

Die Geschwindigkeit, mit der von 0 % auf 100 % gedreht werden soll.

Beispiel

wenn gestartet
[Turn around at default velocity.]
setze Drehgeschwindigkeit auf (50)%
drehe [rechts v] für (180) Grad ▶
warte (1) Sekunden
[Turn around slower.]
setze Drehgeschwindigkeit auf (20)%
drehe [rechts v] für (180) Grad ▶
warte (1) Sekunden
[Turn around faster.]
setze Drehgeschwindigkeit auf (100)%
drehe [rechts v] für (180) Grad ▶
warte (1) Sekunden

Position#

Position#

Der Positionsberichtblock meldet die aktuelle x- oder y-Koordinate des Roboters.

Zu Beginn eines Projekts werden die x- und y-Positionen des Roboters auf 0 gesetzt. Die Positionswerte ändern sich während der Bewegung des Roboters und können mit dem Block set robot position festgelegt werden.

x-Position in mm Reporterblock#
[x v] Position in [mm v]

Parameter

Beschreibung

koordinieren

Die anzugebende Koordinatenachse: x oder y.

Einheit

Die Positionseinheit: mm (Millimeter) oder Zoll.

Beispiel

Beim Start fährt das Gerät 200 mm vorwärts, stellt die Position wieder her, bewegt sich diagonal um 45 Grad um 200 mm und gibt die aktualisierten X- und Y-Koordinaten auf dem Bildschirm aus.#
wenn gestartet
bewege bei (0) Grad für (200) [mm v] ▶
[Move forward and print the new coordinate and heading.]
Roboterposition x: [0] y: [0] setzen
bewege bei (45) Grad für (200) [mm v] ▶
drucke ([x v] Position in [mm v]) auf Bildschirm ▶
setze Cursor in nächste Zeile auf Bildschirm
drucke ([y v] Position in [mm v]) auf Bildschirm ▶

Roboterposition festlegen#

Der Roboterposition festlegen-Block ändert die aktuelle x- und y-Position des Roboters auf neue Werte.

Hat sich der Roboter beispielsweise von seinem Startpunkt entfernt, so wird durch Setzen von x und y auf 0 seine aktuelle Position zur neuen Position (0, 0). Anschließend kann der Roboter zukünftige Positionen anhand dieses neuen Wertes berechnen.

Position des Stapelblocks festlegen#
Roboterposition x: [0] y: [0] setzen

Parameter

Beschreibung

X

Der für den Roboter einzustellende x-Positionswert in mm.

y

Der für den Roboter einzustellende y-Positionswert in mm.

Beispiel

wenn gestartet
[Reset the robot's position after moving.]
bewege [vorwärts v] für [60] [mm v] ▶
Roboterposition x: [0] y: [0] setzen
drucke ([y v] Position in [mm v]) auf Bildschirm ▶

Werte#

Bewegung aktiv#

Der boolesche Block move active meldet, ob sich der Roboter bewegt. Dies kann genutzt werden, um den Zeitpunkt anderer Verhaltensweisen basierend auf der Bewegung des Roboters zu steuern.

  • Wahr — Der Roboter bewegt sich.

  • Falsch — Der Roboter bewegt sich nicht.

Dieser Block funktioniert zusammen mit Motion-Blöcken, die den Parameter und nicht warten haben.

ist ein aktiver Reporterblock#
<Bewegung aktiv?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

Nach dem Start fährt der Roboter 200 mm vorwärts, während alle LEDs rot blinken. Die LEDs schalten sich während der Bewegung alle 0,5 Sekunden ein und aus und bleiben nach dem Stillstand des Roboters aus.#
wenn gestartet
[Blink all of the LEDs when the robot is moving.]
bewege bei (0) Grad für (200) [mm v] ◀ und nicht warten
solange <Bewegung aktiv?>
setze [lightall v] LED-Farbe auf [rot v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden
Ende
setze [lightall v] LED-Farbe auf [aus v]

aktivieren#

Der boolesche Block turn active meldet, ob sich der Roboter dreht. Dies kann genutzt werden, um den Zeitpunkt anderer Verhaltensweisen basierend auf der Bewegung des Roboters zu steuern.

  • Wahr — Der Roboter dreht sich.

  • Falsch — Der Roboter dreht sich nicht.

Dieser Block funktioniert zusammen mit Motion-Blöcken, die den Parameter und nicht warten haben.

Aktiven Reporterblock aktivieren#
<Drehung aktiv?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

Beim Start dreht sich das Fahrzeug um 180 Grad nach rechts, während alle LEDs rot blinken. Die LEDs blinken während der Drehung alle 0,5 Sekunden und erlöschen nach Abschluss der Drehung.#
wenn gestartet
[Blink all of the LEDs while the robot is turning.]
drehe [rechts v] für (180) Grad ◀ und nicht warten
solange <Drehung aktiv?>
setze [lightall v] LED-Farbe auf [rot v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [aus v]
warte (0.5) Sekunden
Ende
setze [lightall v] LED-Farbe auf [aus v]

gestoppt#

Der boolesche Block stopped meldet, ob sich der Roboter weder bewegt noch dreht. Dies kann genutzt werden, um den Zeitpunkt anderer Verhaltensweisen basierend auf der Bewegung des Roboters zu steuern.

  • Wahr — Der Roboter bewegt sich nicht und dreht sich nicht.

  • Falsch — Der Roboter bewegt sich oder dreht sich.

Reporterblockade gestoppt#
<gestoppt?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

Nach dem Start fährt der Roboter 200 mm vorwärts und führt dabei eine Lichtshow aus. Anschließend dreht er sich um 180 Grad nach rechts, wobei die Lichtshow fortgesetzt wird. Die LEDs wechseln während der Bewegung und Drehung alle 0,5 Sekunden zwischen Grün und Lila. Sobald der Roboter anhält, endet die Lichtshow und die LEDs erlöschen.#
Definiere light show
[Flash LEDs while the robot is moving or turning.]
wiederhole bis <gestoppt?>
setze [lightall v] LED-Farbe auf [grün v]
warte (0.5) Sekunden
setze [lightall v] LED-Farbe auf [lila v]
warte (0.5) Sekunden
Ende


wenn gestartet
[Blink all the LEDs while the robot is moving or turning.]
bewege bei (0) Grad für (200) [mm v] ◀ und nicht warten
light show
drehe [rechts v] für (180) Grad ◀ und nicht warten
light show