Trägheit#

Einführung#

Der VEX AIM Programmierroboter verfügt über einen eingebauten Inertialsensor. Dieser Sensor misst die Bewegungen und Drehungen des Roboters.

Der Inertialsensor nutzt dafür zwei Komponenten. Das Gyroskop misst Drehbewegungen wie Richtung, Rotation, Drehgeschwindigkeit und Ausrichtung des Roboters. Der Beschleunigungsmesser erfasst Bewegungsänderungen wie Beschleunigung, Abbremsen oder plötzliches Anhalten bei einem Aufprall.

Die Inertialblöcke können verwendet werden, um Kurven zu verfolgen, Beschleunigungen zu messen, Kollisionen zu erkennen und Kurs- oder Rotationswerte zurückzusetzen.

Nachfolgend finden Sie eine Liste aller Blöcke:

Werte – Meldedaten zu Orientierung und Bewegung.

  • heading — Gibt die Richtung an, in die der Roboter blickt, von 0 bis 359,99 Grad.

  • Rotation — Gibt an, wie weit sich der Roboter gedreht hat.

  • Beschleunigung — Gibt an, wie schnell der Roboter auf der ausgewählten Achse beschleunigt oder abbremst.

  • Drehgeschwindigkeit abrufen — Gibt an, wie schnell sich der Roboter um die ausgewählte Achse dreht.

  • orientation — Meldet den Roll-, Nick- oder Gierwinkel des Roboters.

Aktionen – Auf Abstürze reagieren oder Rundenwerte zurücksetzen.

Werte#

Überschrift#

Die Richtung, in die der Roboter blickt, wird in Grad von 0 bis 359,99 gemessen. Der Richtungsbericht meldet die aktuelle Richtung des Roboters.

Die Ausgangsrichtung beträgt 0 Grad. Wenn der Roboter über 359,99 Grad hinaus dreht, springt die Richtung wieder auf 0 Grad zurück.

Der Reporterblock „Überschrift“.#
Kurswinkel in Grad

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiele

wenn gestartet
[Turn right until the heading reaches 90 degrees.]
drehe [rechts v]
warte [0.05] Sekunden
warte bis <(Kurswinkel in Grad) [math_greater_than v] [90]>
alle Bewegungen stoppen

wenn gestartet
[Display the robot's heading as it is rotated by hand.]
für immer
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
drucke (Kurswinkel in Grad) auf Bildschirm ▶
warte [0.05] Sekunden

Drehung#

Die Rotation gibt an, um welchen Winkel sich der Roboter gedreht hat, gemessen in Grad. Im Gegensatz zur Ausrichtung kann die Rotation über 359,99 Grad steigen oder unter 0 Grad fallen. Zu Beginn eines Projekts ist der Rotationswert auf 0 Grad gesetzt. Der Rotationsbericht gibt die aktuelle Rotation des Roboters aus.

Eine Rechtsdrehung erhöht die Rotation, eine Linksdrehung verringert sie. Beispielsweise ergibt eine zweifache Rechtsdrehung eine Rotation von 720 Grad. Eine volle Linksdrehung von 0 Grad aus ergibt eine Rotation von -360 Grad.

Der Reporterblock „Rotation“.#
(Drehung in Grad)

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Print the rotation value as the robot turns.]
drehe [rechts v] für [480] Grad ◀ und nicht warten
für immer
Bildschirm löschen
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
drucke (Drehung in Grad) auf Bildschirm ▶

Beschleunigung#

Die Beschleunigung gibt an, wie schnell der Roboter beschleunigt oder abbremst. Der Beschleunigungs-Reporterblock meldet die Beschleunigung des Roboters entlang der ausgewählten Achse, von -4,00 G bis 4,00 G.

Ein G ist eine Einheit zur Messung der Beschleunigung. 1 G entspricht etwa der Beschleunigung, die man im Ruhezustand durch die Schwerkraft spürt.

Der Wert kann positiv oder negativ sein, abhängig von der Beschleunigungsrichtung auf der ausgewählten Achse. In AIM sind die Achsenoptionen nach den Richtungen des Roboters benannt: vorwärts, rechts und abwärts.

Der Reporterblock „Beschleunigung“.#
(Beschleunigung der [vorwärts v]-Achse in g :: custom-controller-inertial-timer)

Parameter

Beschreibung

Achse

Die Achsen zur Messung der Beschleunigung:

  • vorwärts
  • rechts
  • abwärts

Ein VEX-Sensorgerät ist mit drei farbigen Pfeilen dargestellt, die die Richtung angeben. Ein roter Pfeil mit der Bezeichnung RECHTS zeigt diagonal nach links oben, ein grüner Pfeil mit der Bezeichnung VORWÄRTS zeigt diagonal nach rechts oben und ein blauer Pfeil mit der Bezeichnung ABwärts zeigt direkt von der Mitte nach unten.

Beispiel

wenn gestartet
[Show the change in acceleration as the robot begins to move.]
setze Cursor auf Zeile [4] Spalte [1] auf Bildschirm
drucke (verbinde [Resting: ] (Beschleunigung der [nach rechts v]-Achse in g :: custom-controller-inertial-timer)) auf Bildschirm ▶
setze Cursor in nächste Zeile auf Bildschirm
warte [0.5] Sekunden
bewege [rechts v] für [50] [mm v] ◀ und nicht warten
warte [0.1] Sekunden
drucke (verbinde [Startup: ] (Beschleunigung der [nach rechts v]-Achse in g :: custom-controller-inertial-timer)) auf Bildschirm ▶

Drehgeschwindigkeit ermitteln#

Die Drehgeschwindigkeit gibt an, wie schnell sich der Roboter dreht. Der Reporterblock Drehgeschwindigkeit abrufen gibt die aktuelle Drehgeschwindigkeit des Roboters um die ausgewählte Achse in Grad pro Sekunde \(dps\) als ganze Zahl aus.

Der Wert kann positiv oder negativ sein, je nachdem, in welche Richtung sich der Roboter um diese Achse dreht. Die Abbildung unten zeigt mithilfe von Pfeilen die Richtung der positiven Drehung für Rollen, Nicken und Gieren.

Ein VEX-Sensorgerät ist mit drei farbigen Pfeilen dargestellt, die seine Drehachsen anzeigen. Ein roter Pfeil mit der Bezeichnung „Neigung“ zeigt diagonal nach links oben, ein grüner Pfeil mit der Bezeichnung „Rolle“ zeigt diagonal nach rechts oben und ein blauer Pfeil mit der Bezeichnung „Gier“ zeigt direkt vom Zentrum nach unten.

Der Get Turn Rate-Reporterblock.#
(Drehrate der [Gier v]-Achse in dps)

Parameter

Beschreibung

Achse

Die Achsen, auf denen die Drehrate gemeldet wird:

  • Rollen
  • Nicken
  • Gieren

Beispiel

wenn gestartet
[Observe the yaw turn rate as the robot turns.]
drehe [rechts v] für [180] Grad ◀ und nicht warten
für immer
Bildschirm löschen
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
drucke (Drehrate der [Gier v]-Achse in dps) auf Bildschirm ▶

Orientierung#

Die Orientierung ist der aktuelle Winkel des Roboters um eine ausgewählte Drehachse. Der Orientierungs-Reporterblock gibt den Roll-, Nick- oder Gierwinkel des Roboters im Bereich von -180,00 bis 180,00 Grad als Dezimalzahl aus.

Rollen, Nicken und Gieren beschreiben verschiedene Arten, wie sich der Roboter neigen oder drehen kann. Die Abbildung unten zeigt mithilfe von Pfeilen die Richtung der positiven Rotation für Rollen, Nicken und Gieren an.

Ein VEX-Sensorgerät ist mit drei farbigen Pfeilen dargestellt, die seine Drehachsen anzeigen. Ein roter Pfeil mit der Bezeichnung „Neigung“ zeigt diagonal nach links oben, ein grüner Pfeil mit der Bezeichnung „Rolle“ zeigt diagonal nach rechts oben und ein blauer Pfeil mit der Bezeichnung „Gier“ zeigt direkt vom Zentrum nach unten.

Der Reporterblock der Orientierungsveranstaltung.#
Ausrichtung von [Gier v] in Grad

Parameter

Beschreibung

Achse

Die zu meldende Orientierungsachse:

  • Rollen
  • Nicken
  • Gieren

Beispiel

wenn gestartet
[Display the robot's orientation as it is rotated by hand.]
für immer
lösche Zeile [1] auf Bildschirm
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
drucke (Ausrichtung von [Roll v] in Grad) auf Bildschirm ▶
warte [0.05] Sekunden

Aktionen#

wenn abgestürzt#

Der bei einem Aufprall aktivierte Hutblock führt den zugehörigen Stapel aus, sobald der Roboter einen plötzlichen Aufprall oder eine Kollision erkennt. Die Aufprallerkennung nutzt den Beschleunigungsmesser und die aktuelle Aufprallempfindlichkeit.

Der Block “Wenn der Hut abstürzt”.#
bei Aufprall

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Start moving forward.]
setze Fahrgeschwindigkeit auf [100]%
bewege [vorwärts v]

bei Aufprall
[Respond when a crash is detected.]
alle Bewegungen stoppen
spiele Ton [Aufprall v] ▶

Crash-Empfindlichkeit einstellen#

Der Einstellung der Crash-Empfindlichkeit-Block legt fest, wie viel plötzliche Beschleunigung erforderlich ist, damit der Roboter einen Zusammenstoß erkennt.

Der Block „Set Crash Sensitivity“ (Stapelblock für Absturzempfindlichkeit).#
setze Aufprallempfindlichkeit auf [niedrig v]

Parameter

Beschreibung

Empfindlichkeit

Empfindlichkeit des Roboters bei der Kollisionserkennung:

  • niedrig – Erkennt nur stärkere Stöße.
  • mittel – Erkennt mittlere Stöße.
  • hoch – Erkennt kleinere Stöße.

Beispiel

wenn gestartet
[Move slowly with high crash sensitivity.]
setze Fahrgeschwindigkeit auf [35]%
setze Aufprallempfindlichkeit auf [hoch v]
bewege [vorwärts v]

bei Aufprall
[Respond when a crash is detected.]
alle Bewegungen stoppen
spiele Ton [Aufprall v] ▶

Überschrift zurücksetzen#

Der Richtungsrücksetzungsblock setzt die aktuelle Ausrichtung des Roboters auf 0 Grad zurück. Nach Ausführung dieses Blocks entspricht die aktuelle Blickrichtung des Roboters der neuen Ausrichtung von 0 Grad.

Der Block „Zurücksetzen“ (Überschrift: Stack).#
Kurswinkel zurücksetzen

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Face left before turning around.]
drehe zu Kurswinkel [270] Grad ▶
Kurswinkel zurücksetzen
warte [1] Sekunden
drehe zu Kurswinkel [180] Grad ▶

Rotation zurücksetzen#

Der Rotation zurücksetzen-Block setzt den aktuellen Rotationswert des Roboters auf 0 Grad zurück. Nach Ausführung dieses Blocks berechnet der Roboter zukünftige Drehungen ausgehend von diesem neuen Rotationswert von 0 Grad.

Der Reset-Rotationsstapelblock.#
Drehung zurücksetzen

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Turn for 480 degrees before resetting rotation.]
drehe [rechts v] für [480] Grad ▶
Drehung zurücksetzen
für immer
Bildschirm löschen
setze Cursor auf Zeile [1] Spalte [1] auf Bildschirm
drucke (Drehung in Grad) auf Bildschirm ▶