Roboterspezifische Blöcke#

Einführung#

Der 123-Roboter umfasst einen Antriebsstrang, eine LED, einen Lautsprecher, einen Augensensor und einen Gyrosensor.

Alle Standard-VEXcode-VR-Blöcke können im 123 Playspace Playground verwendet werden.

Nachfolgend finden Sie eine Liste aller verfügbaren roboterspezifischen Blöcke:

Antriebsstrang – Den Roboter bewegen und drehen.

  • Aktionen

    • drive - Bewegt den Roboter unendlich vorwärts oder rückwärts.

    • fahren bis - Bewegt den Roboter vorwärts oder rückwärts, bis er ein Objekt, einen Zusammenstoß oder eine Linie erkennt.

    • drive for - Bewegt den Roboter vorwärts oder rückwärts über eine bestimmte Distanz.

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

    • Drehung um - Dreht den Roboter um eine bestimmte Anzahl von Grad nach links oder rechts.

    • Drehung in eine bestimmte Richtung – Dreht den Roboter in eine bestimmte Richtung zwischen -359 und 359 Grad. Der Roboter wählt dabei den kürzesten Weg, um die Zielrichtung zu erreichen.

    • Fahren stoppen - Stoppt die Bewegung des Roboters.

  • Einstellungen

    • set drive timeout - Legt fest, wie viele Sekunden der Roboter versucht, eine Bewegung abzuschließen.

    • set drive heading - Ändert die aktuelle Fahrtrichtung des Roboters auf eine neue Fahrtrichtung.

  • Werte

    • Fahrt beendet - Meldet, ob der Roboter seine Fahrt beendet hat.

    • Fahrrichtung - Meldet die aktuelle Fahrtrichtung des Roboters von 0 bis 359 Grad.

Ton – Spielt die integrierten Töne über den Lautsprecher des 123-Roboters ab.

  • Sound abspielen - Spielt einen der eingebauten Soundeffekte des Roboters ab.

LED – Steuert die mittlere LED des 123-Roboters.

  • glow - Legt die Farbe des LED-Lichts fest.

Aktionen – Den 123-Roboter voreingestellte Verhaltensweisen ausführen lassen.

  • act - Spielt verschiedene Emotionen aus.

Sensorik – Messwerte der Sensoren des 123-Roboters auslesen.

Antriebsstrang#

Der 123-Roboter verfügt über einen Zweiradantrieb, der ihm das Fahren und Wenden ermöglicht. Die Antriebsblöcke steuern die Bewegungen des Roboters.

Der Antriebsstrang kann Distanzen auf zwei Arten messen: Schritte und mm (Millimeter). Ein Schritt entspricht einem Kästchen auf einem 123-Feld.

Aktionen#

fahren#

Der Antriebsblock bewegt den Roboter endlos vorwärts oder rückwärts. Der Roboter bewegt sich so lange, bis ihm eine andere Aktion zugewiesen wird, wie z. B. Drehen oder Anhalten.

fahre [vorwärts v]

Parameter

Beschreibung

Richtung

Die Bewegungsrichtung des Roboters: vorwärts oder rückwärts.

Beispiel

wenn gestartet
[Drive for 2 seconds.]
fahre [vorwärts v]
warte (2) Sekunden
Fahren stoppen

fahren bis#

Der Anfahr-bis-Stapelblock bewegt den Roboter vorwärts, bis der Augensensor ein Objekt, eine Kollision oder eine Linie erkennt.

vorwärts fahren bis [Objekt v]

Parameter

Beschreibung

Zustand

Die Bedingung, die den Roboter stoppt:

  • Objekt – Der Augensensor erkennt ein Objekt.
  • Kollision – Der Roboter kollidiert mit einem Objekt.
  • Linie – Der Liniendetektor erkennt eine Linie unter dem Roboter.

Beispiel

wenn gestartet
[Reverse after a crash.]
vorwärts fahren bis [Aufprall v]
fahre [rückwärts v] für (1) [Schritte v]

Fahrt für#

Der Antriebsblock bewegt den Roboter vorwärts oder rückwärts über eine bestimmte Strecke. Das Projekt wartet, bis der Roboter seine Bewegung abgeschlossen hat, bevor der nächste Block im Stapel ausgeführt wird.

fahre [vorwärts v] für (1) [Schritte v]

Parameter

Beschreibung

Richtung

Die Bewegungsrichtung des Roboters: vorwärts oder rückwärts.

Distanz

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

Einheit

Die Entfernungseinheit: Schritte oder mm.

Beispiel

wenn gestartet
[Drive back and forth.]
fahre [vorwärts v] für (3) [Schritte v]
fahre [rückwärts v] für (3) [Schritte v]

drehen#

Der Drehen-Stapelblock dreht den Roboter endlos nach links oder rechts. Der Roboter dreht sich so lange, bis ihm eine andere Aktion zugewiesen wird, z. B. Fahren oder Anhalten.

drehe [rechts v]

Parameter

Beschreibung

Richtung

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

Beispiel

wenn gestartet
[Turn for 2 seconds.]
drehe [rechts v]
warte (2) Sekunden
Fahren stoppen

wenden für#

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

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.

Beispiel

wenn gestartet
[Turn left, then turn around to the right.]
drehe [links v] für (90) Grad
drehe [rechts v] für (180) Grad

Zum Titel wechseln#

Die Ausrichtung des Roboters wird in Grad gemessen. Der Ausrichtungsblock richtet den Roboter auf eine bestimmte Ausrichtung zwischen -359 und 359 Grad aus. Der Roboter wählt dabei den kürzesten Weg, um die Zielausrichtung zu erreichen.

Die Ausgangsrichtung des Roboters beträgt 0 Grad.

drehe zu Kurswinkel (90) Grad

Parameter

Beschreibung

Überschrift

Die Richtung, in die der Roboter zeigen soll, in Grad. Dies kann eine ganze Zahl oder eine Dezimalzahl zwischen -359 und 359 sein.

Beispiel

wenn gestartet
[Turn to face the cardinal directions.]
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

Fahren Sie nicht mehr#

Der Stop-Drive-Stapelblock stoppt die Bewegung des Roboters.

Fahren stoppen

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Stop driving after 4 seconds.]
fahre [vorwärts v]
warte [4] Sekunden
Fahren stoppen

Einstellungen#

Laufwerks-Timeout festlegen#

Der Block „set drive timeout“ legt fest, wie viele Sekunden der Roboter versucht, eine Bewegung abzuschließen. Gelingt ihm dies nicht, bricht er den Versuch ab und fährt mit dem nächsten Block im Stapel fort. Dadurch wird verhindert, dass der Roboter bei einer Bewegung hängen bleibt.

setze Fahrzeitlimit auf (1) Sekunden

Parameter

Beschreibung

Zeit

Die Anzahl der Sekunden, die der Roboter versuchen kann, eine Bewegung abzuschließen. Dies kann eine ganze Zahl oder eine Dezimalzahl sein.

Beispiel

Beim Start wird die Fahrzeit auf 1 Sekunde begrenzt, anschließend dreht sich das Fahrzeug um 90 Grad.#
wenn gestartet
[Turn right after driving for 1 second.]
setze Fahrzeitlimit auf (1) Sekunden
fahre [vorwärts v] für (1000) [mm v]
drehe [rechts v] für (90) Grad

Fahrtrichtung festlegen#

Die Fahrtrichtung gibt die Blickrichtung des Roboters in Grad an. Der Fahrtrichtung festlegen-Block ändert die aktuelle Fahrtrichtung des Roboters auf einen neuen Wert.

Wenn sich der Roboter beispielsweise nach rechts gedreht hat, wird durch Einstellen der Ausrichtung auf 0 Grad diese Position nach rechts zum neuen 0-Grad-Wert. Anschließend kann der Roboter basierend auf dieser neuen Ausrichtung andere Positionen anfahren.

setze Fahrrichtung auf (0) Grad

Parameter

Beschreibung

Überschrift

Der für den Roboter einzustellende Kurswert in Grad. Dies kann eine ganze Zahl oder eine Dezimalzahl zwischen -359 und 359 sein.

Beispiel

wenn gestartet
[Face the new 0 degree heading.]
setze Fahrrichtung auf (90) Grad
drehe zu Kurswinkel (0) Grad

Werte#

Die Fahrt ist beendet.#

Der boolesche Block Fahrt beendet meldet, ob der Roboter seine Bewegung abgeschlossen hat. Dies kann genutzt werden, um den Zeitpunkt anderer Verhaltensweisen basierend auf der Roboterbewegung zu steuern.

  • Wahr — Der Roboter hat seine Bewegung beendet.

  • Falsch — Der Roboter bewegt sich noch.

Dieser Block funktioniert zusammen mit den folgenden Antriebsstrangblöcken: fahren für, fahren bis, drehen für, und drehen zu Richtung.

<Fahrt abgeschlossen?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Glow blue after a crash.]
vorwärts fahren bis [Aufprall v]
für immer
wenn <Fahrt abgeschlossen?> dann
leuchte [blau v]
sonst
leuchte [grün v]

Fahrtrichtung#

Die Fahrtrichtung gibt die Blickrichtung des Roboters in Grad an. Der Fahrtrichtungs-Reporterblock meldet die aktuelle Fahrtrichtung des Roboters zwischen 0 und 359 Grad.

Die Ausgangsrichtung des Roboters beträgt 0 Grad.

(Fahrtrichtung in Grad)

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Display the heading after turning.]
drehe [rechts v] für (450) Grad
drucke (Fahrtrichtung in Grad) ▶

Klang#

Ton abspielen#

Der Ton abspielen-Block spielt einen der eingebauten Töne des Roboters ab.

spiele Ton [Hupen v]

Parameter

Beschreibung

Klang

Einer der eingebauten Sounds wird unten angezeigt.

Klangname

Ton abspielen

hupen

Türklingel

Absturz

zufällig

Spielt einen zufälligen Ton aus den 3 oben genannten Tönen ab.

Beispiel

Beim Start Geräusch abspielen und fröhlich wirken.#
wenn gestartet :: hat events
[Play the doorbell sound.]
spiele Ton [Türklingel v]

LED#

glühen#

Der Leuchtblock legt die Farbe des LED-Lichts fest.

leuchte [grün v]

Parameter

Beschreibung

Farbe

Die einzustellende LED-Farbe:

  • Grün
  • Blau
  • Lila
  • Aus

Beispiel

wenn gestartet :: hat events
[Blink the LED light forever.]
für immer
leuchte [grün v]
warte [0.5] Sekunden
leuchte [aus v]
warte [0.5] Sekunden

Aktionen#

Akt#

Der act-Block dient dazu, traurig, fröhlich oder verrückt zu agieren, indem der 123-Roboter eine Abfolge von Fahr-, Dreh- und Geräuschverhalten ausführt.

agiere [traurig v]

Parameter

Beschreibung

Emotion

Die Emotion, die dargestellt werden soll.

  • traurig – Rückwärts fahren, links abbiegen, dann rechts, ein „Uh oh“-Geräusch abspielen und dann vorwärts fahren, um traurig zu wirken.
  • glücklich – Eine 360-Grad-Drehung nach rechts und ein Lachen abspielen, um glücklich zu wirken.
  • verrückt – Im Kreis links abbiegen, dann im Kreis rechts abbiegen und dabei ein „Loopy“-Geräusch abspielen, um verrückt zu wirken.
wenn gestartet :: hat events
[Act out a happy behavior.]
agiere [fröhlich v]

Sensorik#

Der virtuelle 123-Roboter hat außerdem Zugriff auf die Standard-Sensorblöcke Gehirn und Antrieb.

Gyro#

Der 123-Roboter nutzt Gyrosensorik, um plötzliche Stöße, wie beispielsweise das Aufprallen auf eine Wand oder ein anderes Objekt, zu erkennen.

Absturz erkannt#

Der boolesche Block erkannter Aufprall meldet, ob der Roboter einen plötzlichen Aufprall erkannt hat, z. B. das Aufprallen auf eine Wand oder ein Objekt, das so hart war, dass es seine Bewegung schnell ändern musste.

  • Wahr — Es wurde ein Absturz festgestellt.

  • Falsch — Es wurde kein Absturz festgestellt.

<Aufprall erkannt?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Back up after a crash.]
fahre [vorwärts v]
warte bis <Aufprall erkannt?>
fahre [rückwärts v] für (200) [mm v]

Auge#

Das Auge fand ein Objekt#

Der boolesche Block Auge hat ein Objekt gefunden gibt an, ob der Augensensor ein Objekt innerhalb seiner Reichweite erkennt oder nicht.

  • Wahr — Der Augensensor erkennt ein Objekt.

  • Falsch — Der Augensensor erkennt kein Objekt.

<Auge hat Objekt gefunden?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Stop driving after detecting an object.]
setze Augenlicht [ein v]
fahre [vorwärts v]
warte (0.1) Sekunden
warte bis <Auge hat Objekt gefunden?>
Fahren stoppen

Das Auge erkennt Farben#

Der boolesche Block Auge erkennt Farbe gibt an, ob der Augensensor eine bestimmte Farbe erkennt, basierend auf dem erkannten Farbtonwert.

  • Wahr – Der Augensensor erkennt die angegebene Farbe.

  • Falsch – Der Augensensor erkennt die angegebene Farbe nicht.

Um den vom Augensensor erfassten genauen Farbtonwert zu überprüfen, verwenden Sie den Reporterblock eye hue.

<Auge erkennt [rot v]?>

Parameter

Beschreibung

Farbe

Die zu erkennende Farbe:

  • Rot – Ein erkannter Farbtonwert zwischen 340° und 20°.
  • Grün – Ein erkannter Farbtonwert zwischen 80° und 145°.
  • Blau – Ein erkannter Farbtonwert zwischen 160° und 250°.

Beispiel

wenn gestartet
[Stop driving after detecting a green object.]
setze Augenlicht [ein v]
fahre [vorwärts v]
warte (0.1) Sekunden
warte bis <Auge erkennt [grün v]?>
Fahren stoppen

Augenfarbe#

Der Augenfarbton-Reporterblock meldet den vom Augensensor erfassten Farbton als Zahl zwischen 0 und 359 Grad.

Der Farbton ist eine Methode, Farben mithilfe von Zahlen auf einem Farbkreis zu beschreiben.

Ein kreisförmiges Farbrad, das ein vollständiges Farbspektrum anzeigt, wobei die Gradwerte am Rand in 30-Grad-Schritten von 0° oben bis 360° ansteigen.

(Augenfarbton in Grad)

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Display if an object is pink.]
für immer
lösche alle Zeilen
wenn <[290] [math_less_than v] (Augenfarbton in Grad) [math_less_than v] [350]> dann
drucke [Pink!] ▶
warte (0.1) Sekunden
sonst
drucke [Not pink!] ▶
warte (0.1) Sekunden

helles Objekt#

Der Boolesche Block eye bright object gibt an, ob das vom Augensensor erkannte Objekt hell ist.

Ein Objekt gilt als hell, wenn es mehr als 70 % seiner Helligkeit zum Augensensor zurückreflektiert.

  • Wahr — Das erkannte Objekt reflektiert mehr als 70 % der Helligkeit.

  • Falsch — Das erkannte Objekt reflektiert 70 % oder weniger der Helligkeit.

Dies kann vor der Farbprüfung verwendet werden, um sicherzustellen, dass das Objekt genügend Licht reflektiert, damit der Augensensor die Farbe zuverlässig erkennen kann.

<Auge erkennt helles Objekt?>

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Display whether a detected object is bright.]
setze Augenlichtleistung auf (100) %
fahre [vorwärts v]
warte bis <Auge hat Objekt gefunden?>
warte (0.1) Sekunden
wenn <Auge erkennt helles Objekt?> dann
drucke [Bright object!] ▶
sonst
drucke [Object not bright.] ▶

Augenhelligkeit#

Der Augenhelligkeits-Reporterblock meldet, wie viel Licht zum Augensensor zurückreflektiert wird, und zwar als Prozentsatz von 0 % bis 100 %.

Ein höherer Prozentsatz bedeutet, dass mehr Licht zum Augensensor zurückreflektiert wird. Ein niedrigerer Prozentsatz bedeutet, dass weniger Licht zurückreflektiert wird.

(Augenhelligkeit in %)

Parameter

Beschreibung

Dieser Block hat keine Parameter.

Beispiel

wenn gestartet
[Display whether a detected object is bright.]
setze Augenlichtleistung auf (100) %
fahre [vorwärts v]
warte bis <Auge hat Objekt gefunden?>
warte (0.1) Sekunden
wenn <(Augenhelligkeit in %) [math_less_than v] [70]> dann
drucke [Object not bright.] ▶
sonst
drucke [Bright object!] ▶