diff --git a/OpenRobertaServer/src/main/resources/openRoberta.properties b/OpenRobertaServer/src/main/resources/openRoberta.properties index e5106ada01..1e6832193b 100644 --- a/OpenRobertaServer/src/main/resources/openRoberta.properties +++ b/OpenRobertaServer/src/main/resources/openRoberta.properties @@ -52,7 +52,7 @@ server.staticresources.dir = OpenRobertaServer/staticResources # For instance, if your school offers nxt, calliope2017 and calliope2016 robots, use this white list: # robot.whitelist = sim, nxt, calliope2017, calliope2016 # Usually overwritten by command line parameter -d -robot.whitelist = rcj, edisonv3, edisonv2, txt4, spike, spikePybricks, thymio, wedo, ev3lejosv1, ev3dev, ev3c4ev3, xNN, nxt, microbit, microbitv2, joycar, botnroll, nao, bob3, rob3rta, sensebox, mbot, mbot2, festobionic, festobionicflower, uno, nano, mega, nano33ble, calliope2017NoBlue, calliope2017, calliope2016, calliopev3, robotino +robot.whitelist = rcj, edisonv3, edisonv2, txt4, spike, spikePybricks, thymio, wedo, ev3lejosv1, ev3dev, xNN, nxt, microbit, microbitv2, joycar, botnroll, nao, bob3, rob3rta, sensebox, mbot, mbot2, festobionic, festobionicflower, uno, nano, mega, nano33ble, calliope2017NoBlue, calliope2017, calliope2016, calliopev3, robotino robot.default = ev3lejosv1 # account activation / verification / reset # server.iptocountry.dir path where the db is located, db name is fix: IpToCountry.cvs diff --git a/OpenRobertaServer/staticResources/help/progHelp_ev3_de.html b/OpenRobertaServer/staticResources/help/progHelp_ev3_de.html index 021880a28a..60cb441baf 100644 --- a/OpenRobertaServer/staticResources/help/progHelp_ev3_de.html +++ b/OpenRobertaServer/staticResources/help/progHelp_ev3_de.html @@ -1,1189 +1,855 @@ - - - + + - -
-
-

»Start«

-

Jedes Programm beginnt mit dem »Start«-Block, welcher nicht gelöscht werden kann. Den ersten Block, den - man verwenden möchte, verbindet man direkt mit der »Sequenzverbindung« am »Start«-Block.

+
+

»Start«

+

Jedes Programm beginnt mit dem »Start«-Block, welcher nicht gelöscht werden kann. Den ersten Block, den man verwenden möchte, verbindet man direkt mit der »Sequenzverbindung« am »Start«-Block.

Einstellmöglichkeiten:

-
    -
  • Erzeuge eine neue globale Variable.
  • -
  • Entferne die globale Variable.
  • -
  • Zeige Sensordaten - während des Programmablaufs werden im Display - die Werte der angeschlossenen Sensoren gezeigt.
  • -

+
    +
  • Erzeuge eine neue globale Variable.
  • +
  • Entferne die globale Variable.
  • +
  • Zeige Sensordaten - während des Programmablaufs werden im Display die Werte der angeschlossenen Sensoren gezeigt.
  • +
+

Wenn globale Variablen erzeugt wurden:

-
    -
  • Text, Name der Variablen.
  • -
  • Typ der Variablen.
  • -
  • Wert, Anfangswert der Variablen.
  • -

-
-
-

»Motor - Port ... an Tempo«

-

Mit dem Block »Motor Port ... an Tempo« programmierst du das Tempo (Geschwindigkeit) eines Motors. Dein - Roboter startet den gewählten Motor, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet - wird.

+
    +
  • Text, Name der Variablen.
  • +
  • Typ der Variablen.
  • +
  • Wert, Anfangswert der Variablen.
  • +
+
+

»Motor Port ... an Tempo«

+

Mit dem Block »Motor Port ... an Tempo« programmierst du das Tempo (Geschwindigkeit) eines Motors. Dein Roboter startet den gewählten Motor, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird.

Einstellmöglichkeiten und Eingabewert:

-
    -
  • Motor Port, wähle den Motor Port aus, an dem der Motor - angeschlossen ist.
  • -
  • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht - sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • -

-
-
-

»Motor Port ... an Tempo ... - Umdrehungen/Grad«

-

Mit dem Block »Motor Port ... an Tempo ... Umdrehungen/Grad« stellst du das Tempo (Geschwindigkeit) eines - Motors ein. Dein Roboter startet den gewählten Motor, bis er die eingestellte Anzahl Umdrehungen bzw. - Winkelgrade gemacht hat.

+
    +
  • Motor Port, wähle den Motor Port aus, an dem der Motor angeschlossen ist.
  • +
  • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
+
+

»Motor Port ... an Tempo ... Umdrehungen/Grad«

+

Mit dem Block »Motor Port ... an Tempo ... Umdrehungen/Grad« stellst du das Tempo (Geschwindigkeit) eines Motors ein. Dein Roboter startet den gewählten Motor, bis er die eingestellte Anzahl Umdrehungen bzw. Winkelgrade gemacht hat.

Einstellmöglichkeiten und Eingabewerte:

-
    -
  • Motor Port, wähle den Motorport aus, an dem der Motor - angeschlossen ist.
  • -
  • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht - sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • -
  • Umdrehungen oder Grad. 1 Umdrehung entspricht 360 Grad.
  • -
  • Zahl, Anzahl der Umdrehungen bzw. Winkelgrade. Es sind nur positive - Zahlen zugelassen.
  • -

-
-
-

»Gib Tempo Motor Port«

-

Der Block »Gib Tempo Motor - Port« liest das Tempo (Geschwindigkeit) eines Motors aus.

+
    +
  • Motor Port, wähle den Motorport aus, an dem der Motor angeschlossen ist.
  • +
  • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
  • Umdrehungen oder Grad. 1 Umdrehung entspricht 360 Grad.
  • +
  • Zahl, Anzahl der Umdrehungen bzw. Winkelgrade. Es sind nur positive Zahlen zugelassen.
  • +
+
+

»gib Tempo Motor Port«
+

+

Der Block »Gib Tempo Motor Port« liest das Tempo (Geschwindigkeit) eines Motors aus.

Einstellmöglichkeiten:

-
    -
  • Motor, wähle den Motor Port aus, dessen Tempo gelesen werden - soll.
  • -

+
    +
  • Motor, wähle den Motor Port aus, dessen Tempo gelesen werden soll.
  • +
+

Rückgabewert:

-
    -
  • Zahl; Geschwindigkeit , die am ausgewählten Motor Port eingestellt - ist.
  • -

-
-
-

»Setze Motor Port ... Tempo«

-

Der Block »Setze Motor Port ... - Tempo « setzt das Tempo - (Geschwindigkeit) eines Motors auf einen neuen Wert.

+
    +
  • Zahl; Geschwindigkeit , die am ausgewählten Motor Port eingestellt ist.
  • +
+
+

»Setze Motor Port ... Tempo«

+

Der Block »Setze Motor Port ... Tempo « setzt das Tempo (Geschwindigkeit) eines Motors auf einen neuen Wert. +

Einstellmöglichkeiten und Eingabewert:

-
    -
  • Motor, wähle den Motor Port aus, für den das Tempo eingestellt - werden soll.
  • -
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht - sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • -

-
-
-

»Stoppe Motor Port«

-

Der Block »Stoppe Motor - Port - « schaltet den Motor an einem ausgewählten Motor-Port aus. Du kannst - einstellen, ob der Motor langsam ausläuft oder gebremst wird.

+
    +
  • Motor, wähle den Motor Port aus, für den das Tempo eingestellt werden soll.
  • +
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
+
+

»Stoppe Motor Port«

+

Der Block »Stoppe Motor Port « schaltet den Motor an einem ausgewählten Motor-Port aus. Du kannst einstellen, ob der Motor langsam ausläuft oder gebremst wird. +

Einstellmöglichkeiten:

-
    -
  • Motor, wähle den Motorport aus, der ausgeschaltet werden soll. +
      +
    • Motor, wähle den Motorport aus, der ausgeschaltet werden soll.
    • +
    • Stoppmöglichkeiten; »auslaufen« sorgt dafür, dass der Motor langsam ausläuft; »bremsen« sorgt dafür, dass der Motor abrupt abgebremst wird.
    • -
    • Stoppmöglichkeiten; »auslaufen« sorgt dafür, dass - der Motor langsam ausläuft; »bremsen« sorgt dafür, dass der Motor abrupt abgebremst - wird.
    • -

    -
-
-

»Fahre ... Tempo«

-

Mit dem Block »Fahre ... Tempo« kannst du die Richtung und das Tempo (Geschwindigkeit) deines Roboters - programmieren. Dein Roboter fährt so lange vorwärts oder rückwärts, bis er gestoppt wird oder ein - anderer Block zum Fahren verwendet wird.

+ +
+

»Fahre ... Tempo«

+

Mit dem Block »Fahre ... Tempo« kannst du die Richtung und das Tempo (Geschwindigkeit) deines Roboters programmieren. Dein Roboter fährt so lange vorwärts oder rückwärts, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird.

»Fahre« steuert beide Motoren des Roboters gleichzeitig.

Einstellmöglichkeiten und Eingabewert:

-
    -
  • Richtung, wähle die gewünschte Fahrrichtung aus.
  • -
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen - sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt. -
  • -

-
-
-

»Fahre ... Tempo ... Strecke«

-

Mit dem Block »Fahre ... Tempo ... Strecke« kannst du zusätzlich zu Richtung und Tempo auch die - Fahrstrecke des Roboters programmieren. Dein Roboter fährt so lange, bis die eingestellte Strecke - gefahren ist. Die Geschwindigkeit kannst du im Feld Tempo einstellen. Wenn dieser Block »zu Ende« ist, - stoppen die Motoren automatisch.

+
    +
  • Richtung, wähle die gewünschte Fahrrichtung aus.
  • +
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
+
+

»Fahre ... Tempo ... Strecke«

+

Mit dem Block »Fahre ... Tempo ... Strecke« kannst du zusätzlich zu Richtung und Tempo auch die Fahrstrecke des Roboters programmieren. Dein Roboter fährt so lange, bis die eingestellte Strecke gefahren ist. Die Geschwindigkeit kannst du im Feld Tempo einstellen. Wenn dieser Block »zu Ende« ist, stoppen die Motoren automatisch.

»Fahre« steuert beide Motoren des Roboters gleichzeitig.

-

Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die - Roboter-Konfiguration, insbesondere den Raddurchmesser.

+

Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die Roboter-Konfiguration, insbesondere den Raddurchmesser.

Einstellmöglichkeiten und Eingabewerte:

-
    -
  • Fahrtrichtung, wähle die gewünschte Richtung.
  • -
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen - sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt. -
  • -
  • Zahl, Länge für die Strecke in cm.
  • -

-
-
-

»Stoppe«

-

Mit dem Block »Stoppe« werden die Motoren deines Roboters gestoppt. Das bedeutet, dein Roboter hält an. -

-
-
-

»Drehe ... Tempo«

-

Mit dem Block »Drehe ... Tempo« kannst du die Richtung (rechts/links), in der sich der Roboter drehen - soll, programmieren. Dein Roboter dreht sich so lange auf der Stelle, bis er gestoppt wird oder ein - anderer Block zum Fahren verwendet wird. Die Geschwindigkeit kannst Du im Feld »Tempo« einstellen. - »Drehe« steuert beide Motoren des Roboters gleichzeitig in entgegengesetzten Richtungen, dadurch dreht - sich der Roboter auf der Stelle.

+
    +
  • Fahrtrichtung, wähle die gewünschte Richtung.
  • +
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
  • Zahl, Länge für die Strecke in cm.
  • +
+
+

»Stoppe«

+

Mit dem Block »Stoppe« werden die Motoren deines Roboters gestoppt. Das bedeutet, dein Roboter hält an.

+

»Drehe ... Tempo«

+

Mit dem Block »Drehe ... Tempo« kannst du die Richtung (rechts/links), in der sich der Roboter drehen soll, programmieren. Dein Roboter dreht sich so lange auf der Stelle, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird. Die Geschwindigkeit kannst Du im Feld »Tempo« einstellen. »Drehe« steuert beide Motoren des Roboters gleichzeitig in entgegengesetzten Richtungen, dadurch dreht sich der Roboter auf der Stelle.

Einstellmöglichkeiten und Eingabewert:

-
    -
  • Drehrichtung, wähle die gewünschte Drehrichtung aus.
  • -
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht - sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen - -100 und 100 begrenzt.
  • -

-
-
-

Falls sich dein Roboter in die falsche Richtung dreht, sind die Motoren an die falschen Ports - angeschlossen. Es genügt dann, die Ports zu tauschen, damit der Roboter in die richtige Richtung - dreht.

+
    +
  • Drehrichtung, wähle die gewünschte Drehrichtung aus.
  • +
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
+
+
+
+

Falls sich dein Roboter in die falsche Richtung dreht, sind die Motoren an die falschen Ports angeschlossen. Es genügt dann, die Ports zu tauschen, damit der Roboter in die richtige Richtung dreht.

-
-

»Drehe ... Tempo ... Grad«

-

Mit dem Block »Drehe ... Tempo ... Grad« kannst du die Richtung (rechts/links), in der sich der Roboter - um die eigene Achse drehen soll, programmieren. Zusätzlich zur Richtung kann noch im Feld »Grad« - angegeben werden, um wie viel Grad sich dein Roboter (um die eigene Achse) drehen soll. Dies bedeutet, - dass du beispielsweise mit der Einstellung 360 Grad deinen Roboter einmal um die eigene Achse drehen - lassen kannst. Der Block »Drehe ... Tempo ... Grad« steuert beide Motoren des Roboters, damit sich der - Roboter um die eigene Achse dreht.

-

Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die - Roboter-Konfiguration, insbesondere den Raddurchmesser und die Spurbreite.

+

»Drehe ... Tempo ... Grad«

+

Mit dem Block »Drehe ... Tempo ... Grad« kannst du die Richtung (rechts/links), in der sich der Roboter um die eigene Achse drehen soll, programmieren. Zusätzlich zur Richtung kann noch im Feld »Grad« angegeben werden, um wie viel Grad sich dein Roboter (um die eigene Achse) drehen soll. Dies bedeutet, dass du beispielsweise mit der Einstellung 360 Grad deinen Roboter einmal um die eigene Achse drehen lassen kannst. Der Block »Drehe ... Tempo ... Grad« steuert beide Motoren des Roboters, damit sich der Roboter um die eigene Achse dreht.

+

Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die Roboter-Konfiguration, insbesondere den Raddurchmesser und die Spurbreite.

Einstellmöglichkeiten und Eingabewerte:

-
    -
  • Drehrichtung, wähle die gewünschte Drehrichtung aus.
  • -
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht - sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen - -100 und 100 begrenzt.
  • -
  • Gradzahl, um die der Roboter sich drehen soll. Negative Zahlen sind - nicht zugelassen.
  • -

-
-
-

»Steure ... Tempo links ... Tempo - rechts ...«

-

Mit dem Block »Steure ... Tempo links ... Tempo rechts ...« kannst du den Roboter so programmieren, dass - er eine Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte - setzt. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und - Raddurchmesser. Mit der Drehrichtung legst du die Fahrtrichtung fest.

+
    +
  • Drehrichtung, wähle die gewünschte Drehrichtung aus.
  • +
  • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
  • Gradzahl, um die der Roboter sich drehen soll. Negative Zahlen sind nicht zugelassen.
  • +
+
+

»Steure ... Tempo links ... Tempo rechts ...«

+

Mit dem Block »Steure ... Tempo links ... Tempo rechts ...« kannst du den Roboter so programmieren, dass er eine Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte setzt. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und Raddurchmesser. Mit der Drehrichtung legst du die Fahrtrichtung fest.

Einstellmöglichkeiten und Eingabewerte:

-
    -
  • Drehrichtung, wähle die gewünschte Drehrichtung aus.
  • -
  • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl - negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und - 100 begrenzt.
  • -
  • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl - negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und - 100 begrenzt.
  • -

-
-
-

»Steure ... Tempo links ... - Tempo rechts ... Strecke ...«

-

Mit dem Block »Steure ... Tempo links ... Tempo rechts ... Strecke ...« kannst du den Roboter so - programmieren, dass er eine vorgegebene Strecke als Kurve fährt, indem du das Tempo für den linken und - den rechten Motor auf unterschiedliche Werte setzt. Die Strecke bezieht sich auf die Mitte zwischen - beiden Rädern. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand - und Raddurchmesser. Mit der Richtung legst du die Fahrtrichtung fest.

+
    +
  • Drehrichtung, wähle die gewünschte Drehrichtung aus.
  • +
  • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
  • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
+
+

»Steure ... Tempo links ... Tempo rechts ... Strecke ...«

+

Mit dem Block »Steure ... Tempo links ... Tempo rechts ... Strecke ...« kannst du den Roboter so programmieren, dass er eine vorgegebene Strecke als Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte setzt. Die Strecke bezieht sich auf die Mitte zwischen beiden Rädern. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und Raddurchmesser. Mit der Richtung legst du die Fahrtrichtung fest.

Einstellmöglichkeiten und Eingabewerte:

-
    -
  • Richtung, wähle die gewünschte Fahrtrichtung aus.
  • -
  • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl - negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und - 100 begrenzt.
  • -
  • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl - negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und - 100 begrenzt.
  • -
  • Zahl, Strecke in Zentimetern, die zurückgelegt werden soll.
  • -

-
-
-

»Zeige Text«

-

Mit dem Block »Zeige Text« kannst du Text und Zahlen auf dem Display deines Roboters anzeigen lassen. - Dabei kannst du zusätzlich noch bestimmen, in welcher Spalte und in welcher Zeile der Text auf dem - EV3-Bildschirm erscheinen soll.

-

Das Display eines EV3 ist für Texte in mehreren Zeilen (von links nach rechts) und Spalten (von oben nach - unten) eingeteilt.

-

Wenn zuvor schon etwas auf dem Display angezeigt war, werden nur die Stellen überschrieben, in die der - Text geschrieben wird.

+
    +
  • Richtung, wähle die gewünschte Fahrtrichtung aus.
  • +
  • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
  • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
  • +
  • Zahl, Strecke in Zentimetern, die zurückgelegt werden soll.
  • +
+
+

»Zeige Text«

+

Mit dem Block »Zeige Text« kannst du Text und Zahlen auf dem Display deines Roboters anzeigen lassen. Dabei kannst du zusätzlich noch bestimmen, in welcher Spalte und in welcher Zeile der Text auf dem EV3-Bildschirm erscheinen soll.

+

Das Display eines EV3 ist für Texte in mehreren Zeilen (von links nach rechts) und Spalten (von oben nach unten) eingeteilt.

+

Wenn zuvor schon etwas auf dem Display angezeigt war, werden nur die Stellen überschrieben, in die der Text geschrieben wird.

Eingabewerte:

-
    -
  • Text, der im Display erscheinen soll.
  • -
  • Zahl, Spaltenummer, in der der Text beginnen soll zwischen 0 und 17. -
  • -
  • Zahl, Zeilennummer, in der der Text beginnen soll zwischen 0 und 7. -
  • -

-
-
-

»Zeige Bild«

-

Mit dem Block »Zeige Bild« kannst du eines von mehreren Bildern auf dem EV3-Display deines Roboters - anzeigen lassen. Verfügbare Bilder sind »Brille«, »Augen auf«, »Augen zu«, »Blumen«, »Tacho«.

+
    +
  • Text, der im Display erscheinen soll.
  • +
  • Zahl, Spaltenummer, in der der Text beginnen soll zwischen 0 und 17.
  • +
  • Zahl, Zeilennummer, in der der Text beginnen soll zwischen 0 und 7.
  • +
+
+

»Zeige Bild«

+

Mit dem Block »Zeige Bild« kannst du eines von mehreren Bildern auf dem EV3-Display deines Roboters anzeigen lassen. Verfügbare Bilder sind »Brille«, »Augen auf«, »Augen zu«, »Blumen«, »Tacho«.

Einstellmöglichkeiten und Eingabewerte:

-
    -
  • Bild, wähle ein Bild aus, das auf dem Display erscheinen soll. -
  • -
  • Zahl für x, die Spaltennummer, in der das Bild beginnen soll.
  • -
  • Zahl für y, die Zeilennummer, in der das Bild beginnen soll.
  • -

-
-
-

»Lösche Bildschirm«

-

Mit dem Block »Lösche Bildschirm« kannst du Text und Zahlen auf dem Display deines Roboters löschen. Das - Display ist anschließend leer.

-
-
-

»Spiele Frequenz ... Dauer«

-

Mit dem Block »Spiele Frequenz ... Dauer« kannst du die Frequenz (Höhe eines Tons) und die Zeit (wie - lange der Ton gespielt wird) programmieren. Der Ton wird über den eingebauten Lautsprecher deines LEGO - MINDSTORMS EV3 Steins abgespielt, bis die eingestellte Dauer erreicht ist.

-
-
-

Bitte beachte, dass das menschliche Gehör Frequenzen zwischen ca. 30 Hz bis ca. 15.000 Hz (15 - kHz) wahrnehmen kann - je nach Mensch und Alter kann dies unterschiedlich sein.

+
    +
  • Bild, wähle ein Bild aus, das auf dem Display erscheinen soll.
  • +
  • Zahl für x, die Spaltennummer, in der das Bild beginnen soll.
  • +
  • Zahl für y, die Zeilennummer, in der das Bild beginnen soll.
  • +
+
+

»Lösche Bildschirm«

+

Mit dem Block »Lösche Bildschirm« kannst du Text und Zahlen auf dem Display deines Roboters löschen. Das Display ist anschließend leer.

+

»Spiele Frequenz ... Dauer«

+

Mit dem Block »Spiele Frequenz ... Dauer« kannst du die Frequenz (Höhe eines Tons) und die Zeit (wie lange der Ton gespielt wird) programmieren. Der Ton wird über den eingebauten Lautsprecher deines LEGO MINDSTORMS EV3 Steins abgespielt, bis die eingestellte Dauer erreicht ist.

+
+
+

Bitte beachte, dass das menschliche Gehör Frequenzen zwischen ca. 30 Hz bis ca. 15.000 Hz (15 kHz) wahrnehmen kann - je nach Mensch und Alter kann dies unterschiedlich sein.

Eingabewerte:

-
    -
  • Zahl, gewünschte Frequenz in Hz (Hertz) eingeben.
  • -
  • Zahl, gewünschte Dauer des Tons in Millisekunden (ms) eingeben.
  • -

-
-
-

»Spiele Note ... «

+
    +
  • Zahl, gewünschte Frequenz in Hz (Hertz) eingeben.
  • +
  • Zahl, gewünschte Dauer des Tons in Millisekunden (ms) eingeben.
  • +
+
+

»Spiele Note ... «

Mit diesem Block kann dein Roboter eine Note abspielen.

Optionen:

-
    -
  • Option, wähle die Länge der Note aus.
  • -
  • Option, wähle die Note aus, die dein Roboter spielen soll. -
  • +
      +
    • Option, wähle die Länge der Note aus.
    • +
    • Option, wähle die Note aus, die dein Roboter spielen soll.
-
-

»Spiele Stück«

-

Mit dem Block »Spiele Stück« bringst du deinen Roboter dazu, einen von fünf hinterlegten Klängen zu - spielen.

+

»Spiele Stück«

+

Mit dem Block »Spiele Stück« bringst du deinen Roboter dazu, einen von fünf hinterlegten Klängen zu spielen.

Einstellmöglichkeiten:

-
    -
  • Zahl, Nummer für ein Stück zwischen 1 und 5 mit folgenden - Zuordnungen:
    1 - einfacher Piepton
    2 - doppelter Piepton
    3 - aufsteigender Klang aus 4 - Tönen
    4 - absteigender Klang aus 4 Tönen
    5 - einfacher tiefer Ton
  • -

-
-
-

»Setze Lautstärke«

-

Mit dem Block »Setze Lautstärke« kannst du die Lautstärke eines Tons programmieren. Die Lautstärke kann - von 0 (kein Ton) bis 100 (volle Lautstärke) eingestellt werden. Die Lautstärke bleibt so lange - eingestellt, bis du sie mit einem anderen Block »Setze Lautstärke« neu programmierst.

+
    +
  • Zahl, Nummer für ein Stück zwischen 1 und 5 mit folgenden Zuordnungen:
    1 - einfacher Piepton
    2 - doppelter Piepton
    3 - aufsteigender Klang aus 4 Tönen
    4 - absteigender Klang aus 4 Tönen
    5 - einfacher tiefer Ton +
  • +
+
+

»Setze Lautstärke«

+

Mit dem Block »Setze Lautstärke« kannst du die Lautstärke eines Tons programmieren. Die Lautstärke kann von 0 (kein Ton) bis 100 (volle Lautstärke) eingestellt werden. Die Lautstärke bleibt so lange eingestellt, bis du sie mit einem anderen Block »Setze Lautstärke« neu programmierst.

Eingabewert:

-
    -
  • Zahl für die Lautstärke. Der Wert wird intern auf den Bereich - zwischen 0 und 100 begrenzt.
  • -

-
-
-

»Gib Lautstärke«

-

Mit dem Block »Gib Lautstärke« kannst du die aktuell eingestellte Lautstärke auslesen. 0 = kein Ton, 100 - = maximale Lautstärke.

+
    +
  • Zahl für die Lautstärke. Der Wert wird intern auf den Bereich zwischen 0 und 100 begrenzt.
  • +
+
+

»gib Lautstärke«

+

Mit dem Block »Gib Lautstärke« kannst du die aktuell eingestellte Lautstärke auslesen. 0 = kein Ton, 100 = maximale Lautstärke.

Rückgabewert:

-
    -
  • Zahl, aktuell eingestellter Lautstärkewert.
  • -

-
-
-

»Setze Sprache - ... «

-

Mit diesem Block kannst du die Sprache deines Roboters steuern. - Wenn du C4EV3 als dein Robotersystem verwendest, musst du zusätzliche Dateien für die Sprachausgabe - herunterladen. Eine Anleitung dazu findest du hier. -

-

Optionen: -

-
    -
  • Option, wähle die Sprache der Sprachauswahl.
  • -

-
-
-

»Sage ... «

-

Mit diesem Block kannst du die Sprachausgabe deines Roboters steuern. Dabei verwendet der Roboter die - Sprache, die du mit dem »Setze Sprache ...« Block festgelegt hast. Die Standardsprache ist Deutsch.

+
    +
  • Zahl, aktuell eingestellter Lautstärkewert.
  • +
+
+

»Setze Sprache ... «

+

Mit diesem Block kannst du die Sprache deines Roboters steuern. Wenn du C4EV3 als dein Robotersystem verwendest, musst du zusätzliche Dateien für die Sprachausgabe herunterladen. Eine Anleitung dazu findest du hier.

+

Optionen: +

+
    +
  • Option, wähle die Sprache der Sprachauswahl.
  • +
+
+

»Sage ... «

+

Mit diesem Block kannst du die Sprachausgabe deines Roboters steuern. Dabei verwendet der Roboter die Sprache, die du mit dem »Setze Sprache ...« Block festgelegt hast. Die Standardsprache ist Deutsch.

Eingabewerte:

-
    -
  • Zeichenkette, der Text, den dein Roboter sagen soll.
  • -

-
-
-

»Sage ... - Sprechgeschwindigkeit ... Stimmlage ... «

-

Mit diesem Block kannst du die Sprachausgabe deines Roboters - steuern. Du kannst dabei auch die Stimmlage und die Sprechgeschwindigkeit deines Roboters - steuern.

-

Eingabewerte: -

-
    -
  • Zeichenkette, der Text, den dein Roboter sagen soll.
  • -
  • Zahl, Sprechgeschwindigkeit in Prozent, also meine Zahl zwischen 1 - und 100. Je höher die Zahl ist, desto schneller spricht der Roboter. Der Wert wird intern auf den - Bereich zwischen 0 und 100 begrenzt.
  • -
  • Zahl, Stimmlage des Roboters in Prozent. Zahl zwischen 1 und 100. Je - höher die Zahl, desto höher ist auch die Stimmlage des Roboters. Der Wert wird intern auf den - Bereich zwischen 0 und 100 begrenzt.
  • -

-
-
-

»Statusleuchte«

-

Mit dem Block »Statusleuchte« kannst du die Statusleuchte, also die Hintergrundfarbe der Knöpfe an deinem - EV3-Stein programmieren. Folgende Farben stehen zur Auswahl: grün, orange, rot. Zusätzlich kannst du - einstellen, wie die Statusleuchte leuchten soll: »an«, »blinkend« oder »doppel blinkend«.

+
    +
  • Zeichenkette, der Text, den dein Roboter sagen soll.
  • +
+
+

»Sage ... Sprechgeschwindigkeit ... Stimmlage ... «

+

Mit diesem Block kannst du die Sprachausgabe deines Roboters steuern. Du kannst dabei auch die Stimmlage und die Sprechgeschwindigkeit deines Roboters steuern. +

+

Eingabewerte: +

+
    +
  • Zeichenkette, der Text, den dein Roboter sagen soll.
  • +
  • Zahl, Sprechgeschwindigkeit in Prozent, also meine Zahl zwischen 1 und 100. Je höher die Zahl ist, desto schneller spricht der Roboter. Der Wert wird intern auf den Bereich zwischen 0 und 100 begrenzt.
  • +
  • Zahl, Stimmlage des Roboters in Prozent. Zahl zwischen 1 und 100. Je höher die Zahl, desto höher ist auch die Stimmlage des Roboters. Der Wert wird intern auf den Bereich zwischen 0 und 100 begrenzt.
  • +
+
+

»Statusleuchte«

+

Mit dem Block »Statusleuchte« kannst du die Statusleuchte, also die Hintergrundfarbe der Knöpfe an deinem EV3-Stein programmieren. Folgende Farben stehen zur Auswahl: grün, orange, rot. Zusätzlich kannst du einstellen, wie die Statusleuchte leuchten soll: »an«, »blinkend« oder »doppel blinkend«.

Einstellmöglichkeiten:

-
    -
  • Farbe, wähle eine Farbe aus.
  • -
  • Anzeige Wähle aus, wie die Statusleuchte leuchten soll.
  • -

-
-
-

»Statusleuchte aus«

-

Mit dem Block »Statusleuchte aus« kannst du die Statusanzeige an deinem EV3-Stein ausschalten.

-
-
-

»Setze Statusleuchte zurück«

-

Mit dem Block »Setze Statusleuchte zurück« kannst du die Statusanzeige auf den Standardwert zurücksetzen. -

-
-
-

»Berührungssensor«

-

Mit dem Block »Berührungssensor« kannst du einem anderen Block »mitteilen«, ob der Berührungssensor - gedrückt wurde oder nicht. Dieser Block gibt die logischen Werte wahr = gedrückt oder - falsch = nicht gedrückt zurück.

+
    +
  • Farbe, wähle eine Farbe aus.
  • +
  • Anzeige Wähle aus, wie die Statusleuchte leuchten soll.
  • +
+
+

»Statusleuchte aus«

+

Mit dem Block »Statusleuchte aus« kannst du die Statusanzeige an deinem EV3-Stein ausschalten.

+

»Setze Statusleuchte zurück«

+

Mit dem Block »Setze Statusleuchte zurück« kannst du die Statusanzeige auf den Standardwert zurücksetzen.

+

»Berührungssensor«

+

Mit dem Block »Berührungssensor« kannst du einem anderen Block »mitteilen«, ob der Berührungssensor gedrückt wurde oder nicht. Dieser Block gibt die logischen Werte + wahr = gedrückt oder falsch = nicht gedrückt zurück.

Einstellmöglichkeiten:

-
    -
  • Port, wähle den Sensorport aus, an dem dein Berührungssensor - angeschlossen ist.
  • -

-

Rückgabewert: -

-
    -
  • Logischer Wert: »wahr«, wenn der Berührungssensor gedrückt ist, - sonst »falsch«.
  • -

-
-
-

»Gib Abstand/Anwesenheit - Ultraschallsensor«

-

Mit dem Block »Gib Abstand/Anwesenheit Ultraschallsensor« kannst du einem anderen Block »mitteilen«, - welchen Abstand der Ultraschallsensor misst. Der Abstand wird als Zahl (in cm) übermittelt. Andererseits - kann dieser Block im Auswahlmenü auf »Anwesenheit« gestellt werden. Mit dieser Einstellung kann geprüft - werden, ob ein anderer Ultraschallsensor aktiv ist. In dieser Einstellung gibt er die logischen Werte - true = weiterer Ultraschallsensor anwesend oder false = kein weiterer Ultraschallsensor - anwesend zurück.

-
-
-

Ultraschall, der nicht vom eigenen Ultraschallsensor ausgesandt wurde, kann zu fehlerhaften - Messungen führen.

-
+
    +
  • Port, wähle den Sensorport aus, an dem dein Berührungssensor angeschlossen ist.
  • +
+ Rückgabewert: +
    +
  • Logischer Wert: »wahr«, wenn der Berührungssensor gedrückt ist, sonst »falsch«.
  • +
+
+

»gib Abstand/Anwesenheit Ultraschallsensor«

+

Mit dem Block »Gib Abstand/Anwesenheit Ultraschallsensor« kannst du einem anderen Block »mitteilen«, welchen Abstand der Ultraschallsensor misst. Der Abstand wird als Zahl (in cm) übermittelt. Andererseits kann dieser Block im Auswahlmenü auf »Anwesenheit« gestellt werden. Mit dieser Einstellung kann geprüft werden, ob ein anderer Ultraschallsensor aktiv ist. In dieser Einstellung gibt er die logischen Werte + true = weiterer Ultraschallsensor anwesend oder false = kein weiterer Ultraschallsensor anwesend zurück.

+
+
+

Ultraschall, der nicht vom eigenen Ultraschallsensor ausgesandt wurde, kann zu fehlerhaften Messungen führen.

Einstellmöglichkeiten:

-
    -
  • Messmethode, wähle Anwesenheit oder Abstand.
  • -
  • Port, wähle den Sensorport aus, an dem dein Ultraschallsensor - angeschlossen ist.
  • -

-

Rückgabewert: -

-
    -
  • -

    Wenn »Anwesenheit« gewählt wurde, wird ein logischer Wert zurückgegeben.

    -

    Wenn »Abstand« gewählt wurde, wird der Abstand zwischen Ultraschallsensor und Hindernis - angegeben.

    -
  • -

-
-
-

»Gib Farbe«

-

Mit dem Block »Gib Farbe« kannst du einem anderen Block »mitteilen«, welche Farbe der Farbsensor misst. - Die Farbe wird als Datentyp »Farbe« übermittelt. Zudem kann dieser Block im Auswahlmenü auf »Licht«, - »RGB« und »Umgebungslicht« gestellt werden. Diese drei zusätzlichen Typen übermitteln jeweils den - Datentyp »Zahl«. Die Zahlenwerte liegen je nach gewählter Messmethode zwischen 0 und 255. Mit diesen - verschiedenen Einstellung kann dieser Block je nach Anforderung eingestellt werden.

-

Im Modus »Farbe« sendet der Farbsensor Licht aus und erkennt, welche Grundfarbe unter dem Sensor erkannt - wurde. Die Grundfarbwerte sind BLACK, WHITE, RED, GREEN, BLUE, YELLOW, BROWN. Die Farbe GREY teugt an, - dass die gemessene Farbe keiner der Standardfarben entspricht.

-

Im Modus »Licht« sendet der Farbsensor mittels seiner roten LED Licht aus und misst die reflektierte - Lichtstärke auf einer Skala von 0 bis 100.

-

Im Modus »RGB« sendet der Farbsensor rotes, grünes und blaues Licht aus und misst das reflektierte Licht - entsprechend der Anteile Rot, Grün und Blau auf einer Skala von 0 bis 255 pro Farbe. Es wird eine Liste - mit drei Werten für die jeweiligen Farben ausgegeben.

-

Im Modus »Umgebungslicht« wird dieselbe Skala (0-100) wie im Modus Licht verwendet. Dabei wird das ins - Sensorfenster einfallende Umgebungslicht gemessen.

+
    +
  • Messmethode, wähle Anwesenheit oder Abstand.
  • +
  • Port, wähle den Sensorport aus, an dem dein Ultraschallsensor angeschlossen ist.
  • +
+ Rückgabewert: +
    +
  • Wenn »Anwesenheit« gewählt wurde, wird ein logischer Wert zurückgegeben.

    +

    Wenn »Abstand« gewählt wurde, wird der Abstand zwischen Ultraschallsensor und Hindernis angegeben.

  • +
+
+

»gib Farbe« +

+

Mit dem Block »Gib Farbe« kannst du einem anderen Block »mitteilen«, welche Farbe der Farbsensor misst. Die Farbe wird als Datentyp »Farbe« übermittelt. Zudem kann dieser Block im Auswahlmenü auf »Licht«, »RGB« und »Umgebungslicht« gestellt werden. Diese drei zusätzlichen Typen übermitteln jeweils den Datentyp »Zahl«. Die Zahlenwerte liegen je nach gewählter Messmethode zwischen 0 und 255. Mit diesen verschiedenen Einstellung kann dieser Block je nach Anforderung eingestellt werden.

+

Im Modus »Farbe« sendet der Farbsensor Licht aus und erkennt, welche Grundfarbe unter dem Sensor erkannt wurde. Die Grundfarbwerte sind BLACK, WHITE, RED, GREEN, BLUE, YELLOW, BROWN. Die Farbe GREY teugt an, dass die gemessene Farbe keiner der Standardfarben entspricht.

+

Im Modus »Licht« sendet der Farbsensor mittels seiner roten LED Licht aus und misst die reflektierte Lichtstärke auf einer Skala von 0 bis 100.

+

Im Modus »RGB« sendet der Farbsensor rotes, grünes und blaues Licht aus und misst das reflektierte Licht entsprechend der Anteile Rot, Grün und Blau auf einer Skala von 0 bis 255 pro Farbe. Es wird eine Liste mit drei Werten für die jeweiligen Farben ausgegeben.

+

Im Modus »Umgebungslicht« wird dieselbe Skala (0-100) wie im Modus Licht verwendet. Dabei wird das ins Sensorfenster einfallende Umgebungslicht gemessen.

Einstellmöglichkeiten:

-
    -
  • Messmethode, wähle aus, was gemessen werden soll.
  • -
  • Port, wähle den Sensorport aus, an dem dein - Lichtsensor/Farbsensor angeschlossen ist.
  • -

-

Rückgabewert: -

-
    -
  • Je nach gewählter Messmethode werden die zugehörigen Werte - ausgegeben.
  • -

-
-
-

»Gib Abstand/Anwesenheit - Infrarotsensor«

-

Mit dem Block »Gib Abstand/Anwesenheit Infrarotsensor« kannst du einem anderen Block »mitteilen«, welchen - Abstand der Infrarotsensor misst.

-

Im Modus »Abstand« wird der Abstand als Zahl zwischen 0 (ganz nah) und 100 (weit entfernt) übermittelt, - nicht als Entfernungsmaß in Zentimetern. Der Sensor kann Objekte bis zu einem Abstand von 70 cm - erkennen.

-

Zudem kann dieser Block im Auswahlmenü auf »Anwesenheit« gestellt werden. Mit dieser Einstellung kann - geprüft werden, ob ein Infrarotsender (Beacon) aktiv ist. Diese Einstellung gibt eine Liste (Array) von - 4 Wertepaaren, also insgesamt 8 Werte zurück. Jedes Wertepaar gibt mit dem ersten Wert die - Richtung und mit dem zweiten Wert den Abstand zum Infrarotsender an. - Das erste Wertepaar betrachtet dabei die Werte, die auf dem Kanal 1 des Senders übermittelt werden, das - zweite Wertepaar entsprechend Kanal 2 usw.. Die Richtung kann Werte von -25 bis +25 annehmen. Dabei - bedeutet 0, dass das Infrarotsignal direkt von vorne kommt. -25 bzw. +25 stehen für Winkel von 110° nach - links bzw. rechts. Der Abstand zum Sender ist ein Wert zwischen 0 (ganz nah) und 100 (weit entfernt). - Infrarotsignale von Sendern können aus bis zu 200 cm Entfernung empfangen werden.

-

Beispiel: Ergebnis einer Messung mit dem Infrarotsensor ist [ 0 0 -10 40 0 0 0 0 ]. Das - bedeutet, dass auf Kanal 2 die Richtung des Senders mit -10 gemessen wurde, was etwa 60 Grad links - entspricht, sowie ein Abstand von 40, was ungefähr 80 cm entspricht.

-
-
-

Ein exakte Messung der Abstände in cm ist mit dem Infrarotsensor nicht möglich. Die gemessenen - Abstände sind also ungefähre Werte.

-
+
    +
  • Messmethode, wähle aus, was gemessen werden soll.
  • +
  • Port, wähle den Sensorport aus, an dem dein Lichtsensor/Farbsensor angeschlossen ist.
  • +
+ Rückgabewert: +
    +
  • Je nach gewählter Messmethode werden die zugehörigen Werte ausgegeben.
  • +
+
+

»gib Abstand/Anwesenheit Infrarotsensor«

+

Mit dem Block »Gib Abstand/Anwesenheit Infrarotsensor« kannst du einem anderen Block »mitteilen«, welchen Abstand der Infrarotsensor misst.

+

Im Modus »Abstand« wird der Abstand als Zahl zwischen 0 (ganz nah) und 100 (weit entfernt) übermittelt, nicht als Entfernungsmaß in Zentimetern. Der Sensor kann Objekte bis zu einem Abstand von 70 cm erkennen.

+

Zudem kann dieser Block im Auswahlmenü auf »Anwesenheit« gestellt werden. Mit dieser Einstellung kann geprüft werden, ob ein Infrarotsender (Beacon) aktiv ist. Diese Einstellung gibt eine Liste (Array) von 4 Wertepaaren, also insgesamt 8 Werte zurück. Jedes Wertepaar gibt mit dem ersten Wert die + Richtung und mit dem zweiten Wert den + Abstand zum Infrarotsender an. Das erste Wertepaar betrachtet dabei die Werte, die auf dem Kanal 1 des Senders übermittelt werden, das zweite Wertepaar entsprechend Kanal 2 usw.. Die Richtung kann Werte von -25 bis +25 annehmen. Dabei bedeutet 0, dass das Infrarotsignal direkt von vorne kommt. -25 bzw. +25 stehen für Winkel von 110° nach links bzw. rechts. Der Abstand zum Sender ist ein Wert zwischen 0 (ganz nah) und 100 (weit entfernt). Infrarotsignale von Sendern können aus bis zu 200 cm Entfernung empfangen werden. +

+

+ Beispiel: Ergebnis einer Messung mit dem Infrarotsensor ist [ 0 0 -10 40 0 0 0 0 ]. Das bedeutet, dass auf Kanal 2 die Richtung des Senders mit -10 gemessen wurde, was etwa 60 Grad links entspricht, sowie ein Abstand von 40, was ungefähr 80 cm entspricht. +

+
+
+

Ein exakte Messung der Abstände in cm ist mit dem Infrarotsensor nicht möglich. Die gemessenen Abstände sind also ungefähre Werte.

Einstellmöglichkeiten:

-
    -
  • »Abstand« oder »Anwesenheit«. Stelle ein, wie der - Infrarotsensor messen soll.
  • -
  • Port, wähle aus, an welchem Port der Infrarotsensor - angeschlossen ist.
  • -

-

Rückgabewert: -

-
    -
  • -

    Zahl, bei »Abstand«, maximaler Abstand 70 cm.

    -

    Liste mit Zahlen, bei »Anwesenheit«.

    -
  • -

-
-
-

»Setze Drehsensor zurück«

-

Mit dem Block »Setze Drehsensor zurück« kann der interne Sensor (Motor-Encoder) eines Motors auf den Wert - 0 zurückgesetzt werden.

+
    +
  • »Abstand« oder »Anwesenheit«. Stelle ein, wie der Infrarotsensor messen soll.
  • +
  • Port, wähle aus, an welchem Port der Infrarotsensor angeschlossen ist.
  • +
+ Rückgabewert: +
    +
  • Zahl, bei »Abstand«, maximaler Abstand 70 cm.

    +

    Liste mit Zahlen, bei »Anwesenheit«.

  • +
+
+

»Setze Drehsensor zurück«

+

Mit dem Block »Setze Drehsensor zurück« kann der interne Sensor (Motor-Encoder) eines Motors auf den Wert 0 zurückgesetzt werden.

Einstellmöglichkeiten:

-
    -
  • Port, wähle aus, an welchem Port der Drehsensor/Motor - angeschlossen ist.
  • -

-
-
-

»Gib Umdrehungen/Grad/Abstand - Drehsensor Por«

-

Mit dem Block »Gib Umdrehungen/Grad/Abstand Drehsensor« kannst du einem anderen Block die - Motorumdrehungen »mitteilen«.

+
    +
  • Port, wähle aus, an welchem Port der Drehsensor/Motor angeschlossen ist.
  • +
+
+

»gib Umdrehungen/Grad/Abstand Drehsensor Port«

+

Mit dem Block »Gib Umdrehungen/Grad/Abstand Drehsensor« kannst du einem anderen Block die Motorumdrehungen »mitteilen«.

Wenn »Umdrehungen« eingestellt wurde, wird die Zahl der Umdrehungen ausgegeben.

-

Wenn »Grad« eingestellt wurde, wird die Gradzahl aller Umdrehungen ausgegeben, wobei eine volle Umdrehung - genau 360 Grad entspricht.

-

Wenn »Abstand« eingestellt wurde, wird berechnet, welche Strecke das Rad des Motors zurückgelegt hat. Das - ist natürlich abhängig davon, wie groß das Rad in der Roboterkonfiguration eingestellt ist.

+

Wenn »Grad« eingestellt wurde, wird die Gradzahl aller Umdrehungen ausgegeben, wobei eine volle Umdrehung genau 360 Grad entspricht.

+

Wenn »Abstand« eingestellt wurde, wird berechnet, welche Strecke das Rad des Motors zurückgelegt hat. Das ist natürlich abhängig davon, wie groß das Rad in der Roboterkonfiguration eingestellt ist.

Einstellmöglichkeiten:

-
    -
  • Messmethode, stelle ein, wie gemessen werden soll.
  • -
  • Port, stelle ein, an welchem Port der Drehsensor bzw. Motor - angeschlossen ist.
  • -

-

Rückgabewert: -

-
    -
  • Zahl, die je nach eingestellter Messmethode entweder die - Umdrehungszahl, die Gradzahl oder die zurückgelegte Strecke darstellt.
  • -

-
-
-

»Taste ... gedrückt?«

-

Mit dem Block »Taste« kannst du einem anderen Block »mitteilen« , ob die ausgewählte Taste auf dem EV3 - gedrückt wurde oder nicht. Dieser Block gibt die logischen Werte true = gedrückt oder false - = nicht gedrückt zurück. Auswahl aus »Mitte« / »Oben« / »Unten« / »Rechts« / »Links« / »Zurück« - / »irgendeine«.

+
    +
  • Messmethode, stelle ein, wie gemessen werden soll.
  • +
  • Port, stelle ein, an welchem Port der Drehsensor bzw. Motor angeschlossen ist.
  • +
+ Rückgabewert: +
    +
  • Zahl, die je nach eingestellter Messmethode entweder die Umdrehungszahl, die Gradzahl oder die zurückgelegte Strecke darstellt.
  • +
+
+

»Taste ... gedrückt?«

+

Mit dem Block »Taste« kannst du einem anderen Block »mitteilen« , ob die ausgewählte Taste auf dem EV3 gedrückt wurde oder nicht. Dieser Block gibt die logischen Werte + true = gedrückt oder + false = nicht gedrückt zurück. Auswahl aus »Mitte« / »Oben« / »Unten« / »Rechts« / »Links« / »Zurück« / »irgendeine«.

Einstellmöglichkeiten:

-
    -
  • Taste; wähle die Taste, die du überprüfen möchtest.
  • -

-


Rückgabewert: -

-
    -
  • Logischer Wert, »true«, wenn die gewählte Taste gedrückt ist, sonst - »false«.
  • -

-
-
-

»Setze Kreiselsensor Port ... zurück«

-

Mit dem Block »Setze Kreiselsensor zurück« kann der Kreiselsensor (auch Gyroskop genannt) auf den Wert 0 - zurückgesetzt werden.

+
    +
  • Taste; wähle die Taste, die du überprüfen möchtest.
  • +
+ Rückgabewert: +
    +
  • Logischer Wert, »true«, wenn die gewählte Taste gedrückt ist, sonst »false«.
  • +
+
+

»Setze Kreiselsensor Port ... zurück«

+

Mit dem Block »Setze Kreiselsensor zurück« kann der Kreiselsensor (auch Gyroskop genannt) auf den Wert 0 zurückgesetzt werden.

Einstellmöglichkeiten:

-
    -
  • Zahl, wähle den Sensorport, an dem der Kreiselsensor - angeschlossen ist.
  • -

-
-
-

»Gib Winkel/Drehrate Kreiselsensor«

-

Mit dem Block »Gib Winkel/Drehrate Kreiselsensor« kannst du einem anderen Block »mitteilen«, um welchen - Winkel der Kreiselsensor um seine vertikale Achse gedreht wurde. Der Winkel wird als Zahl übermittelt. - Zudem kann dieser Block im Auswahlmenü auf »Drehrate« gestellt werden. Mit dieser Einstellung wird statt - des Winkels die Drehung des Sensor in »Grad pro Sekunde« übermittelt.

-
-
-

Im Modus Drehrate können maximal 440 Grad/Sekunde erfasst werden. Im Modus Winkel beträgt die - Genauigkeit des Kreiselsensors +/- 3 Grad.

+
    +
  • Zahl, wähle den Sensorport, an dem der Kreiselsensor angeschlossen ist.
  • +
+
+

»gib Winkel/Drehrate Kreiselsensor«

+

Mit dem Block »Gib Winkel/Drehrate Kreiselsensor« kannst du einem anderen Block »mitteilen«, um welchen Winkel der Kreiselsensor um seine vertikale Achse gedreht wurde. Der Winkel wird als Zahl übermittelt. Zudem kann dieser Block im Auswahlmenü auf »Drehrate« gestellt werden. Mit dieser Einstellung wird statt des Winkels die Drehung des Sensor in »Grad pro Sekunde« übermittelt.

+
+
+

Im Modus Drehrate können maximal 440 Grad/Sekunde erfasst werden. Im Modus Winkel beträgt die Genauigkeit des Kreiselsensors +/- 3 Grad.

Einstellmöglichkeiten:

-
    -
  • Messmethode: »Winkel« oder »Drehrate«
  • -
  • Port, wähle den Port, an dem der Drehsensor angeschlossen ist. -
  • -

-

Rückgabewert: -

-
    -
  • Zahl, die je nach eingestellter Messmethode entweder Winkelgrade - oder die Grad pro Sekunde anzeigt.
  • -

-
-
-

»Gib Wert Zeitgeber ...«

-

Mit dem Block »Gib Wert Zeitgeber« kannst du einem anderen Block den aktuellen Stand des internen - Zeitgebers in Millisekunden »mitteilen«. Der Zeitgeber wird automatisch mit dem Beginn eines Programms - gestartet. Es stehen 5 Zeitgeber zur Verfügung.

+
    +
  • Messmethode: »Winkel« oder »Drehrate«
  • +
  • Port, wähle den Port, an dem der Drehsensor angeschlossen ist.
  • +
+ Rückgabewert: +
    +
  • Zahl, die je nach eingestellter Messmethode entweder Winkelgrade oder die Grad pro Sekunde anzeigt.
  • +
+
+

»gib Wert Zeitgeber ...«

+

Mit dem Block »Gib Wert Zeitgeber« kannst du einem anderen Block den aktuellen Stand des internen Zeitgebers in Millisekunden »mitteilen«. Der Zeitgeber wird automatisch mit dem Beginn eines Programms gestartet. Es stehen 5 Zeitgeber zur Verfügung.

Einstellöglichkeiten:

-
    -
  • Zeitgeber-Nummer, wähle den Zeitgeber aus, dessen Wert du - ermitteln möchtest.
  • -

-

Rückgabewert: -

-
    -
  • Zahl, Anzahl Millisekunden, die seit dem Programmstart oder dem - letzten Zurücksetzen des Zeitgebers vergangen sind.
  • -

-
-
-

»Setze Zeitgeber ... zurück«

-

Mit dem Block »Setze Zeitgeber« können die internen Zeitgeber (1 bis 5) auf den Wert 0 zurückgesetzt - werden.

+
    +
  • Zeitgeber-Nummer, wähle den Zeitgeber aus, dessen Wert du ermitteln möchtest.
  • +
+ Rückgabewert: +
    +
  • Zahl, Anzahl Millisekunden, die seit dem Programmstart oder dem letzten Zurücksetzen des Zeitgebers vergangen sind.
  • +
+
+

»Setze Zeitgeber ... zurück«

+

Mit dem Block »Setze Zeitgeber« können die internen Zeitgeber (1 bis 5) auf den Wert 0 zurückgesetzt werden.

Einstellmöglichkeiten:

-
    -
  • Zeitgeber-Nummer, wähle den Zeitgeber aus, den du zurücksetzen - möchtest.
  • -

-
-
-

»Gib Geräusch % - Geräuschsensor Port ... «

+
    +
  • Zeitgeber-Nummer, wähle den Zeitgeber aus, den du zurücksetzen möchtest.
  • +
+
+

»gib Geräusch % Geräuschsensor Port ... «

Mit diesem Block kannst du die Lautstärke abfragen, die der Geräuschsensor misst.

Optionen:

-
    -
  • Option, wähle den Port, an dem der Geräuschsensor - angeschlossen ist.
  • +
      +
    • Option, wähle den Port, an dem der Geräuschsensor angeschlossen ist.
    -

    Rückgabewert: +

    Rückgabewert:

    -
      -
    • Zahl, die gemessene Lautstärke in Prozent.
    • +
        +
      • Zahl, die gemessene Lautstärke in Prozent.
-
-

»Kalibriere HT - Kompasssensor Port ... «

-

Mit diesem Block kannst du einen angeschlossenen HT Kompasssensor neu kalibrieren. Dieser Sensor misst - das Erdmagnetfeld und berechnet aus dessen Verlauf eine aktuelle Orientierung deines Roboters. Damit - diese berechnung möglicht genau funktioniert, musst du den Kompasssensor zu Beginn deines Programms neu - kalibrieren, um störende Einflüsse wie z.B. Motoren zu reduzieren.

+

»Kalibriere HT Kompasssensor Port ... « +

+

Mit diesem Block kannst du einen angeschlossenen HT Kompasssensor neu kalibrieren. Dieser Sensor misst das Erdmagnetfeld und berechnet aus dessen Verlauf eine aktuelle Orientierung deines Roboters. Damit diese berechnung möglicht genau funktioniert, musst du den Kompasssensor zu Beginn deines Programms neu kalibrieren, um störende Einflüsse wie z.B. Motoren zu reduzieren.

Optionen:

-
    -
  • Option, wähle den Port, an dem der Sensor angeschlossen ist. -
  • +
      +
    • Option, wähle den Port, an dem der Sensor angeschlossen ist.
-
-

»Gib ... HT Kompasssensor Port - ... «

-

Mit diesem Block kannst du verschiedene Werte des Kompasssensors abfragen. Der Kompasssensor kann dabei - den Winkel und die Kompassorientierung deines Roboters messen. Allerdings solltest du den Sensor neu - kalibrieren, bevor du ihn in deinem Programm verwendest.

+

»gib ... HT Kompasssensor Port ... « +

+

Mit diesem Block kannst du verschiedene Werte des Kompasssensors abfragen. Der Kompasssensor kann dabei den Winkel und die Kompassorientierung deines Roboters messen. Allerdings solltest du den Sensor neu kalibrieren, bevor du ihn in deinem Programm verwendest.

Optionen:

-
    -
  • Option, wähle die Eigenschaft, die du messen möchtest. - Entweder der Winkel deines Roboters oder die Kompassorientierung.
  • -
  • Option, wähle den Port an dem dein Sensor angeschlossen ist. -
  • +
      +
    • Option, wähle die Eigenschaft, die du messen möchtest. Entweder der Winkel deines Roboters oder die Kompassorientierung.
    • +
    • Option, wähle den Port an dem dein Sensor angeschlossen ist.
    -

    Rückgabewert: +

    Rückgabewert:

    -
      -
    • Zahl, entweder der Winkel deines Roboters oder die - Kompassorientierung. Zahl zwischen 0 und 359.
    • +
        +
      • Zahl, entweder der Winkel deines Roboters oder die Kompassorientierung. Zahl zwischen 0 und 359.
-
-

»Gib ... HT Infrarotsensor - Port ... «

-

Mit diesem Block kannst du den HT Infrarotsensor deines Roboters abfragen. Dieser Sensor sendet und - empfängt Infrarot-Signale und kann so die Distanz zu einem Objekt berechnen.

+

»gib ... HT Infrarotsensor Port ... « +

+

Mit diesem Block kannst du den HT Infrarotsensor deines Roboters abfragen. Dieser Sensor sendet und empfängt Infrarot-Signale und kann so die Distanz zu einem Objekt berechnen.

Optionen:

-
    -
  • Option, wähle zwischen einem modulierten oder einem - unmodulierten Signal.
  • -
  • Option, wähle den Port deines Sensors.
  • +
      +
    • Option, wähle zwischen einem modulierten oder einem unmodulierten Signal.
    • +
    • Option, wähle den Port deines Sensors.
    -

    Rückgabewert: +

    Rückgabewert:

    -
      -
    • Zahl, Entfernung zum nächsten Objekt in Zentimetern.
    • +
        +
      • Zahl, Entfernung zum nächsten Objekt in Zentimetern.
-
-

»Gibt ... HT Farbsensor Port ... - «

-

Mit diesem Block kannst du den HT Farbsensor deines Roboters abfragen. Dieser Sensor verwendet mehrere - Leuchtdioden um den Untergrund zu beleuchten und misst dann, welche Farbe wie stark reflektiert wird. - Aus diesen Werten lassen sich Farben und RGB-Werte berechnen. Der Sensor kann außerdem die Helligkeit - des Untergrunds und der Umgebung messen.

+

»gibt ... HT Farbsensor Port ... «

+

Mit diesem Block kannst du den HT Farbsensor deines Roboters abfragen. Dieser Sensor verwendet mehrere Leuchtdioden um den Untergrund zu beleuchten und misst dann, welche Farbe wie stark reflektiert wird. Aus diesen Werten lassen sich Farben und RGB-Werte berechnen. Der Sensor kann außerdem die Helligkeit des Untergrunds und der Umgebung messen.

Optionen:

-
    -
  • Option, wähle welche Eigenschaft du messen möchtest. Du hast - die Wahl zwischen Farbe, Licht, Umgebungslicht und RGB-Aufspaltung.
  • -
  • Option, wähle den Port deines Sensors aus.
  • +
      +
    • Option, wähle welche Eigenschaft du messen möchtest. Du hast die Wahl zwischen Farbe, Licht, Umgebungslicht und RGB-Aufspaltung.
    • +
    • Option, wähle den Port deines Sensors aus.
    -

    Rückgabewerte: +

    Rückgabewerte:

    -
      -
    • Farbe, die Farbe des Untergrunds.
    • -
    • Zahl, die Helligkeit des Untergrunds oder der Umgebung.
    • -
    • Liste von Zahlen, die Aufspaltung der Farbe des Untergrunds in Rot, - Grün und Blau.
    • +
        +
      • Farbe, die Farbe des Untergrunds.
      • +
      • Zahl, die Helligkeit des Untergrunds oder der Umgebung.
      • +
      • Liste von Zahlen, die Aufspaltung der Farbe des Untergrunds in Rot, Grün und Blau.
-
-

»Wenn mache«

-

Mit dem Block »Wenn mache« kannst du gezielt Aktionen auslösen, die von einer - Bedingung abhängen. Der »Wenn mache«-Block benötigt einen logischen Wert als Eingabewert. Falls die - Bedingung in »Wenn« erfüllt (wahr) ist, wird der eingefügte Block (oder die Blöcke) ausgeführt. Bei - einem verschachtelten »Wenn mache« Block, also wenn eine weitere Unterscheidung eingefügt wurde, wird - zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist (Bedingung = falsch), - wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen - logischen Wert als Eingabewert.

-

Die Bedingungen können beliebig durch Anklicken des »+« Plus-Symbols erweitert - und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

-

Einstellmöglichkeiten und Eingabewerte: -

-
    -
  • Eine weitere Bedingung am Ende anfügen.
  • -
  • Die letzte Bedingung löschen.
  • -
  • Logischer Wert, »wahr« oder »falsch«.
  • -
  • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung - »wahr« ist.
  • +

    »Wenn mache«

    +

    Mit dem Block »Wenn mache« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache«-Block benötigt einen logischen Wert als Eingabewert. Falls die Bedingung in »Wenn« erfüllt (wahr) ist, wird der eingefügte Block (oder die Blöcke) ausgeführt. Bei einem verschachtelten »Wenn mache« Block, also wenn eine weitere Unterscheidung eingefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist (Bedingung = falsch), wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert.

    +

    Die Bedingungen können beliebig durch Anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

    +

    Einstellmöglichkeiten und Eingabewerte: +

    +
      +
    • Eine weitere Bedingung am Ende anfügen.
    • +
    • Die letzte Bedingung löschen.
    • +
    • Logischer Wert, »wahr« oder »falsch«.
    • +
    • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
    -
    -

    »Wenn mache sonst«

    -

    Mit dem Block »Wenn mache sonst« kannst du gezielt Aktionen auslösen, die von - einer Bedingung abhängen. Der »Wenn mache sonst«-Block benötigt hierfür einen logischen Wert als - Eingabewert. Falls die Bedingung erfüllt (wahr) ist, wird der dort eingefügte Block (oder die Blöcke) - ausgeführt, ansonsten (Bedingung nicht erfüllt = falsch) wird der Block (bzw. die Blöcke), der bei - »sonst« eingefügt wurde, ausgeführt. Bei einem verschachtelten »Wenn mache sonst« Block, also wenn eine - weitere Unterscheidung dazugefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls - diese nicht erfüllt ist, wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung - benötigt wieder einen logischen Wert als Eingabewert. Nur wenn beide Bedingungen nicht erfüllt sind, - wird der Block ausgeführt, der bei »sonst« eingefügt wurde.

    -

    Die Bedingungen können beliebig durch anklicken des »+« Plus-Symbols erweitert - und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

    -

    Einstellmöglichkeiten und Eingabewerte: -

    -
      -
    • Eine weitere Bedingung am Ende anfügen.
    • -
    • Die letzte Bedingung löschen.
    • -
    • Logischer Wert, »wahr« oder »falsch«.
    • -
    • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung - »wahr« ist.
    • -
    • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung - »falsch« ist.
    • +

      »Wenn mache sonst«

      +

      Mit dem Block »Wenn mache sonst« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache sonst«-Block benötigt hierfür einen logischen Wert als Eingabewert. Falls die Bedingung erfüllt (wahr) ist, wird der dort eingefügte Block (oder die Blöcke) ausgeführt, ansonsten (Bedingung nicht erfüllt = falsch) wird der Block (bzw. die Blöcke), der bei »sonst« eingefügt wurde, ausgeführt. Bei einem verschachtelten »Wenn mache sonst« Block, also wenn eine weitere Unterscheidung dazugefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist, wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert. Nur wenn beide Bedingungen nicht erfüllt sind, wird der Block ausgeführt, der bei »sonst« eingefügt wurde.

      +

      Die Bedingungen können beliebig durch anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

      +

      Einstellmöglichkeiten und Eingabewerte: +

      +
        +
      • Eine weitere Bedingung am Ende anfügen.
      • +
      • Die letzte Bedingung löschen.
      • +
      • Logischer Wert, »wahr« oder »falsch«.
      • +
      • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
      • +
      • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »falsch« ist.
      -
      -

      »Wiederhole unendlich oft« -

      -

      Mit dem Block »Wiederhole unendlich oft« kannst du Blöcke endlos von deinem - Roboter ausführen lassen. Alle Blöcke, die sich im »Wiederhole unendlich oft«-Block befinden, werden - immer wieder ausgeführt. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block - ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block. Deshalb wird dieser Block auch - »Endlosschleife« genannt.

      -

      Eingaben: -

      -
        -
      • Blöcke, die wiederholt ausgeführt werden.
      • +

        »Wiederhole unendlich oft«

        +

        Mit dem Block »Wiederhole unendlich oft« kannst du Blöcke endlos von deinem Roboter ausführen lassen. Alle Blöcke, die sich im »Wiederhole unendlich oft«-Block befinden, werden immer wieder ausgeführt. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block. Deshalb wird dieser Block auch »Endlosschleife« genannt.

        +

        Eingaben: +

        +
          +
        • Blöcke, die wiederholt ausgeführt werden.
        -
        -

        »Wiederhole n mal«

        -

        Mit dem Block »Wiederhole n mal« kannst du andere Blöcke beliebig oft von - deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole n mal« befinden, werden so - oft ausgeführt, wie im Eingabefeld eingestellt ist. Die Blöcke werden dabei von oben nach unten - ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, - bis die eingestellte Wiederholungszahl erreicht ist. Deshalb wird dieser Block auch »Schleife« genannt. -

        -
        -
        -

        Nur ganzzahlige Werte können eingegeben werden.

        -
        +

        »Wiederhole n mal«

        +

        Mit dem Block »Wiederhole n mal« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole n mal« befinden, werden so oft ausgeführt, wie im Eingabefeld eingestellt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, bis die eingestellte Wiederholungszahl erreicht ist. Deshalb wird dieser Block auch »Schleife« genannt.

        +
        +

        Nur ganzzahlige Werte können eingegeben werden.

        -

        Einstellmöglichkeiten und Eingabewerte: +

        Einstellmöglichkeiten und Eingabewerte:

        -
          -
        • Zahl, wie oft die enthaltenen Blöcke wiederholt werden sollen.
        • -
        • Blöcke, die wiederholt ausgeführt werden.
        • +
            +
          • Zahl, wie oft die enthaltenen Blöcke wiederholt werden sollen.
          • +
          • Blöcke, die wiederholt ausgeführt werden.
        -
        -

        »Wiederhole - solange/bis«

        -

        Mit dem Block »Wiederhole solange/bis« kannst du andere Blöcke beliebig oft von - deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole solange/bis« befinden, - werden immer wieder ausgeführt, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Die Blöcke - werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das - Programm wieder mit dem ersten Block, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Deshalb - wird dieser Block auch »bedingte Schleife« genannt.

        -

        Einstellmöglichkeiten und Eingabewerte: -

        -
          -
        • »solange« oder »bis«, um den Typ der bedingten Wiederholung zu - bestimmen.
        • -
        • Logischer Wert, »wahr« oder »falsch«.
        • -
        • Blöcke, die wiederholt ausgeführt werden.
        • +

          »Wiederhole solange/bis«

          +

          Mit dem Block »Wiederhole solange/bis« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole solange/bis« befinden, werden immer wieder ausgeführt, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Deshalb wird dieser Block auch »bedingte Schleife« genannt.

          +

          Einstellmöglichkeiten und Eingabewerte: +

          +
            +
          • »solange« oder »bis«, um den Typ der bedingten Wiederholung zu bestimmen.
          • +
          • Logischer Wert, »wahr« oder »falsch«.
          • +
          • Blöcke, die wiederholt ausgeführt werden.
          -
          -

          »Für Wert aus - der Liste«

          -

          Mit dem Block »Für Wert aus der Liste« werden nacheinander alle Werte einer - Liste an eine Variable übergeben und können dann in der so genannten Schleife verarbeitet werden. Mit - jedem Schleifendurchlauf wird das nächste Element aus der Liste geholt, bis die Liste vollständig - abgearbeitet ist. Der Wert des Listenelements wird an die Variable Element gebunden und kann in den - enthaltenen Blöcken verwendet werden.

          -

          Einstellmöglichkeiten und Eingabewerte: -

          -
            -
          • Typ der Listenelemente, »Zahl«, »Zeichenkette«, »logischer - Wert«, »Farbe«, »Verbindung«
          • -
          • Variable, frei wählbarer Name, an den nacheinander die Listenelemente - übergeben werden.
          • -
          • Liste, die Elemente des festgelegten Typs enthält. Wenn die - Listenelemente nicht den richtigen Typ haben, kann die Liste nicht als Eingabewert verwendet werden. -
          • -
          • Blöcke, die wiederholt ausgeführt werden.
          • +

            »Für Wert aus der Liste«

            +

            Mit dem Block »Für Wert aus der Liste« werden nacheinander alle Werte einer Liste an eine Variable übergeben und können dann in der so genannten Schleife verarbeitet werden. Mit jedem Schleifendurchlauf wird das nächste Element aus der Liste geholt, bis die Liste vollständig abgearbeitet ist. Der Wert des Listenelements wird an die Variable Element gebunden und kann in den enthaltenen Blöcken verwendet werden.

            +

            Einstellmöglichkeiten und Eingabewerte: +

            +
              +
            • Typ der Listenelemente, »Zahl«, »Zeichenkette«, »logischer Wert«, »Farbe«, »Verbindung«
            • +
            • Variable, frei wählbarer Name, an den nacheinander die Listenelemente übergeben werden.
            • +
            • Liste, die Elemente des festgelegten Typs enthält. Wenn die Listenelemente nicht den richtigen Typ haben, kann die Liste nicht als Eingabewert verwendet werden.
            • +
            • Blöcke, die wiederholt ausgeführt werden.
            -
            -

            »Zähle von bis«

            -

            Mit dem Block »Zähle von bis« kannst du andere Blöcke mehrfach von deinem - Roboter ausführen lassen. Alle Blöcke, die sich im Block »Zähle von bis« befinden, werden so oft - ausgeführt, bis die Zählung im Eingabefeld abgearbeitet ist. Die Blöcke werden dabei von oben nach unten - ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, - solange die Zählbedingung im Eingabefeld erfüllt ist, d.h. der Endwert der Zählung noch nicht erreicht - ist. Die Werte der Zählung werden jeweils an die Zählvariable gebunden, deren Name frei eingestellt - werden kann. Der Wert der Zählvariablen kann in den Blöcken der Schleife verwendet werden. Der letzte - Eingabewert gibt an, in welcher Schrittweite gezählt wird.

            -

            Einstellmöglichkeiten und Eingabewerte: -

            -
              -
            • Variable, frei wählbarer Name für die Zählvariable.
            • -
            • Zahl, Anfangswert der Zählschleife.
            • -
            • Zahl, Endwert der Zählschleife.
            • -
            • Zahl, Schrittweite für die Zählschleife.
            • -
            • Blöcke, die wiederholt ausgeführt werden.
            • +

              »Zähle von bis«

              +

              Mit dem Block »Zähle von bis« kannst du andere Blöcke mehrfach von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Zähle von bis« befinden, werden so oft ausgeführt, bis die Zählung im Eingabefeld abgearbeitet ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange die Zählbedingung im Eingabefeld erfüllt ist, d.h. der Endwert der Zählung noch nicht erreicht ist. Die Werte der Zählung werden jeweils an die Zählvariable gebunden, deren Name frei eingestellt werden kann. Der Wert der Zählvariablen kann in den Blöcken der Schleife verwendet werden. Der letzte Eingabewert gibt an, in welcher Schrittweite gezählt wird.

              +

              Einstellmöglichkeiten und Eingabewerte: +

              +
                +
              • Variable, frei wählbarer Name für die Zählvariable.
              • +
              • Zahl, Anfangswert der Zählschleife.
              • +
              • Zahl, Endwert der Zählschleife.
              • +
              • Zahl, Schrittweite für die Zählschleife.
              • +
              • Blöcke, die wiederholt ausgeführt werden.
              -
              -

              - »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren«

              -

              Mit dem Block »Die Schleife abbrechen/mit der nächsten Iteration der Schleife - fortfahren« kann eine Schleife vorzeitig beendet bzw. wieder zum Anfang der Schleife gesprungen werden. - Sobald dieser Block in einer Reihe von Blöcken erscheint, werden alle nachfolgenden Blöcke bis zum Ende - der Schleife ignoriert.

              -

              Einstellmöglichkeiten: -

              -
                -
              • Abbruchverhalten, »Die Schleife abbrechen« oder »mit der - nächsten Iteration der Schleife fortfahren«.
              • +

                »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren« +

                +

                Mit dem Block »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren« kann eine Schleife vorzeitig beendet bzw. wieder zum Anfang der Schleife gesprungen werden. Sobald dieser Block in einer Reihe von Blöcken erscheint, werden alle nachfolgenden Blöcke bis zum Ende der Schleife ignoriert.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Abbruchverhalten, »Die Schleife abbrechen« oder »mit der nächsten Iteration der Schleife fortfahren«.
                -
                -

                »Warte bis ... «

                -

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an - der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung - erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen - erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte - bis«-Blocks erfüllt ist.

                -

                Einstelmöglichkeiten und Eingabewert: -

                -
                  -
                • Eine weitere Wartebedingung am Ende anfügen.
                • -
                • Die letzte Wartebedingung löschen.
                • -
                • Logischer Wert, »wahr« oder »falsch«.
                • +

                  »Warte bis ... «

                  +

                  Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                  +

                  Einstelmöglichkeiten und Eingabewert: +

                  +
                    +
                  • Eine weitere Wartebedingung am Ende anfügen.
                  • +
                  • Die letzte Wartebedingung löschen.
                  • +
                  • Logischer Wert, »wahr« oder »falsch«.
                  -
                  -

                  »Warte ms ... «

                  -

                  Mit dem Block »Warte« kannst du dein Programm an der Stelle "anhalten", an der - du den Block eingefügt hast. Dein Programm bleibt dann für die angegebene Dauer an dieser Stelle stehen. - Nach Ablauf der angegebenen Zeit wird dann der nachfolgende Block ausgeführt. Beispielsweise kannst du - dadurch einen Text in dem Display deines Roboters exakt für diese Zeit anzeigen lassen.

                  -

                  Einstellmöglichkeiten: +

                  »Warte ms ... «

                  +

                  Mit dem Block »Warte« kannst du dein Programm an der Stelle "anhalten", an der du den Block eingefügt hast. Dein Programm bleibt dann für die angegebene Dauer an dieser Stelle stehen. Nach Ablauf der angegebenen Zeit wird dann der nachfolgende Block ausgeführt. Beispielsweise kannst du dadurch einen Text in dem Display deines Roboters exakt für diese Zeit anzeigen lassen.

                  +

                  Einstellmöglichkeiten:

                  -
                    -
                  • Zahl, Wartezeit in Millisekunden.
                  • +
                      +
                    • Zahl, Wartezeit in Millisekunden.
                  -
                  -

                  »Warte bis ... «

                  -

                  Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an - der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung - erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen - erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte - bis«-Blocks erfüllt ist.

                  -

                  Einstelmöglichkeiten und Eingabewert: -

                  -
                    -
                  • Eine weitere Wartebedingung am Ende anfügen.
                  • -
                  • Die letzte Wartebedingung löschen.
                  • -
                  • Logischer Wert, »wahr« oder »falsch«.
                  • +

                    »Warte bis ... «

                    +

                    Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                    +

                    Einstelmöglichkeiten und Eingabewert: +

                    +
                      +
                    • Eine weitere Wartebedingung am Ende anfügen.
                    • +
                    • Die letzte Wartebedingung löschen.
                    • +
                    • Logischer Wert, »wahr« oder »falsch«.
                    -
                    -

                    »Vergleiche«

                    -

                    Mit dem Block »Vergleiche« kannst du verschiedene Eingabewerte (Zahl, Farbe, - logischer Wert, Text) gleichen Typs miteinander vergleichen. Stimmt der Vergleich, wird der logische - Wert »wahr« zurückgegeben, sonst »falsch«.

                    -

                    Einstellmöglichkeiten und Eingabewerte: -

                    -
                      -
                    • Linker Eingabewert für den Vergleich.
                    • -
                    • Vergleich, wähle aus, wie verglichen werden soll.
                    • -
                    • Rechter Eingabewert für den Vergleich.
                    • -
                    -

                    Rückgabewert: +

                    »Vergleiche«

                    +

                    Mit dem Block »Vergleiche« kannst du verschiedene Eingabewerte (Zahl, Farbe, logischer Wert, Text) gleichen Typs miteinander vergleichen. Stimmt der Vergleich, wird der logische Wert »wahr« zurückgegeben, sonst »falsch«.

                    +

                    Einstellmöglichkeiten und Eingabewerte:

                    -
                      -
                    • Logischer Wert, »wahr« oder »falsch«.
                    • -

                    -
                    -
                    -

                    »und/oder«

                    -

                    Mit dem Block »und/oder« kannst du logische Werte zueinander in Beziehung - setzen. Der »und/oder« Block liefert bei der Einstellung »und« nur dann den logischen Wert »wahr«, wenn - beide Eingabewerte des Blocks gleichzeitig »wahr« sind. Bei der Einstellung »oder« genügt es, wenn einer - der beiden Eingabewerte »wahr« ist, damit der »und/oder« Block als logischen Wert »wahr« liefert.

                    -

                    Einstellmöglichkeiten und Eingabewerte: -

                    -
                      -
                    • Logischer Wert für die Verknüpfung.
                    • -
                    • Wähle die logische Verknüpfung.
                    • +
                        +
                      • Linker Eingabewert für den Vergleich.
                      • +
                      • Vergleich, wähle aus, wie verglichen werden soll.
                      • +
                      • Rechter Eingabewert für den Vergleich.
                      -

                      Rückgabewert: -

                      -
                        -
                      • Logischer Wert, »wahr« oder »falsch«.
                      • -

                      -
                    -
                    -

                    »nicht«

                    -

                    Mit dem Block »nicht« kannst du einen logischen Wert umkehren. Der logische - Wert ergibt sich aus der logischen Umkehrung des Eingabewertes, aus »wahr« wird »falsch« und umgekehrt. +

                    Rückgabewert:

                    -

                    Eingabewert: +

                      +
                    • Logischer Wert, »wahr« oder »falsch«.
                    • +
                    +
                    +

                    »und/oder«

                    +

                    Mit dem Block »und/oder« kannst du logische Werte zueinander in Beziehung setzen. Der »und/oder« Block liefert bei der Einstellung »und« nur dann den logischen Wert »wahr«, wenn beide Eingabewerte des Blocks gleichzeitig »wahr« sind. Bei der Einstellung »oder« genügt es, wenn einer der beiden Eingabewerte »wahr« ist, damit der »und/oder« Block als logischen Wert »wahr« liefert.

                    +

                    Einstellmöglichkeiten und Eingabewerte: +

                    +
                      +
                    • Logischer Wert für die Verknüpfung.
                    • +
                    • Wähle die logische Verknüpfung.
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Logischer Wert für die Umkehrung.
                    • +
                        +
                      • Logischer Wert, »wahr« oder »falsch«.
                      -

                      Rückgabewert: +

                    +

                    »nicht«

                    +

                    Mit dem Block »nicht« kannst du einen logischen Wert umkehren. Der logische Wert ergibt sich aus der logischen Umkehrung des Eingabewertes, aus »wahr« wird »falsch« und umgekehrt.

                    +

                    Eingabewert: +

                    +
                      +
                    • Logischer Wert für die Umkehrung.
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Logischer Wert, Ergebnis der Umkehrung.
                    • -

                    -
                    -
                    -

                    »wahr/falsch«

                    -

                    Mit dem Block »wahr/falsch« kannst du entweder den logischen Wert »wahr« oder - »falsch« an einen anderen Block übermitteln.

                    -

                    Einstellmöglichkeiten: -

                    -
                      -
                    • Logischer Wert, wähle den Wert, der ausgegeben werden soll. -
                    • +
                        +
                      • Logischer Wert, Ergebnis der Umkehrung.
                      -

                      Rückgabewert: +

                    +

                    »wahr/falsch«

                    +

                    Mit dem Block »wahr/falsch« kannst du entweder den logischen Wert »wahr« oder »falsch« an einen anderen Block übermitteln.

                    +

                    Einstellmöglichkeiten:

                    -
                      -
                    • Logischer Wert.
                    • -

                    -
                    -
                    -

                    »null«

                    -

                    Der Block »null« ist ein Platzhalter für eine Eingabe, die noch unbestimmt ist. - Wenn z.B. eine neue Verbindungsvariable für die Kommunikation erzeugt wird und noch nicht belegt ist, - wird der Anfangswert auf »null« gesetzt.

                    -

                    Rückgabewert: +

                      +
                    • Logischer Wert, wähle den Wert, der ausgegeben werden soll.
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Logischer Wert, »null«.
                    • +
                        +
                      • Logischer Wert.
                      -
                    -
                    -

                    »teste«

                    -

                    Mit dem Block »teste« kannst du einen Test durchführen und je nach Ergebnis - unterschiedliche Ergebnisse zurückgeben.

                    -

                    Eingabewerte: -

                    -
                      -
                    • Logischer Wert für den Test; wenn kein Block angegeben wird, wird - "wahr" angenommen.
                    • -
                    • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                    • -
                    • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                    • +
                    +

                    »null«

                    +

                    Der Block »null« ist ein Platzhalter für eine Eingabe, die noch unbestimmt ist. Wenn z.B. eine neue Verbindungsvariable für die Kommunikation erzeugt wird und noch nicht belegt ist, wird der Anfangswert auf »null« gesetzt.

                    +

                    Rückgabewert: +

                    +
                      +
                    • Logischer Wert, »null«.
                    -

                    Rückgabewert: -

                    -
                      -
                    • Wert von beliebigem Typ.
                    • -

                    -
                    -

                    »Wert«

                    -

                    Mit dem Block »Wert« kannst du Zahlen an einen anderen Block übermitteln.

                    -

                    Eingabewert: +

                    »teste«

                    +

                    Mit dem Block »teste« kannst du einen Test durchführen und je nach Ergebnis unterschiedliche Ergebnisse zurückgeben.

                    +

                    Eingabewerte:

                    -
                      -
                    • Zahl
                    • +
                        +
                      • Logischer Wert für den Test; wenn kein Block angegeben wird, wird "wahr" angenommen.
                      • +
                      • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                      • +
                      • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                      -

                      Rückgabewert: +

                      Rückgabewert:

                      -
                        -
                      • Zahl
                      • -

                      -
                    -
                    -

                    »Rechnen«

                    -

                    Mit dem Block »Rechnen« kannst du Zahlen addieren, subtrahieren, - multiplizieren, dividieren oder potenzieren. Dieser Block ist nur in Verbindung mit einem anderen Block - nutzbar, der eine Zahl als Eingabewert benötigt.

                    -

                    Einstellmöglichkeiten und Eingabewerte: -

                    -
                      -
                    • Zahl
                    • -
                    • Berechnung, wähle einen Operator aus.
                    • -
                    • Zahl
                    • +
                        +
                      • Wert von beliebigem Typ.
                      -

                      Rückgabewert: +

                    +

                    »Wert«

                    +

                    Mit dem Block »Wert« kannst du Zahlen an einen anderen Block übermitteln.

                    +

                    Eingabewert:

                    -
                      -
                    • Zahl, das Ergebnis der Berechnung.
                    • -

                    -
                    -
                    -

                    - »Mathematische Funktionen«

                    -

                    Mit dem Block »Mathematische Funktionen« können einige elementare mathematische - Funktionen berechnet werden.

                    -

                    Einstellmöglichkeiten und Eingabewert: -

                    -
                      -
                    • Mathematische Funktion, Quadratwurzel, Absolutwert, - Invertieren, ln (natürlicher Logarithmus), log10 (dekadischer Logarithmus), e^ (Exponentialfunktion) - 10^ (Zehner-Exponent)
                    • -
                    • Zahl, auf die die mathematische Funktion angewandt wird.
                    • +
                        +
                      • Zahl
                      -

                      Rückgabewert: +

                      Rückgabewert:

                      -
                        -
                      • Zahl, das Ergebnis der Funktion.
                      • -

                      -
                    -
                    -

                    - »Trigonometrische Funktionen«

                    -

                    Mit dem Block »Trigonometrische Funktionen« können Sinus, Cosinus, Tangens und - die zugehörigen Umkehrfunktionen berechnet werden. Die Eingabewerte werden im Bogenmaß erwartet (siehe - Hinweis oben).

                    -

                    Einstellmöglichkeiten und Eingabewert: -

                    -
                      -
                    • Trigonometrische Funktion, wähle eine Funktion aus.
                    • -
                    • Zahl, im Bogenmaß
                    • +
                        +
                      • Zahl
                      -

                      Rückgabewert: +

                    +

                    »Rechnen«

                    +

                    Mit dem Block »Rechnen« kannst du Zahlen addieren, subtrahieren, multiplizieren, dividieren oder potenzieren. Dieser Block ist nur in Verbindung mit einem anderen Block nutzbar, der eine Zahl als Eingabewert benötigt.

                    +

                    Einstellmöglichkeiten und Eingabewerte: +

                    +
                      +
                    • Zahl
                    • +
                    • Berechnung, wähle einen Operator aus.
                    • +
                    • Zahl
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Zahl, das Ergebnis der trigonometrischen Berechnung.
                    • -

                    -
                    -
                    -

                    »Konstanten«

                    -

                    Der Block »Konstanten« stellt einige mathematische Konstanten bereit. »π« - (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«.

                    -

                    Einstellmöglichkeiten: +

                      +
                    • Zahl, das Ergebnis der Berechnung.
                    • +
                    +
                    +

                    »Mathematische Funktionen«

                    +

                    Mit dem Block »Mathematische Funktionen« können einige elementare mathematische Funktionen berechnet werden.

                    +

                    Einstellmöglichkeiten und Eingabewert: +

                    +
                      +
                    • Mathematische Funktion, Quadratwurzel, Absolutwert, Invertieren, ln (natürlicher Logarithmus), log10 (dekadischer Logarithmus), e^ (Exponentialfunktion) 10^ (Zehner-Exponent)
                    • +
                    • Zahl, auf die die mathematische Funktion angewandt wird.
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Mathematische Konstanten, wähle eine Konstante aus.
                    • +
                        +
                      • Zahl, das Ergebnis der Funktion.
                      -

                      Rückgabewert: +

                    +

                    »Trigonometrische Funktionen«

                    +

                    Mit dem Block »Trigonometrische Funktionen« können Sinus, Cosinus, Tangens und die zugehörigen Umkehrfunktionen berechnet werden. Die Eingabewerte werden im Bogenmaß erwartet (siehe Hinweis oben).

                    +

                    Einstellmöglichkeiten und Eingabewert: +

                    +
                      +
                    • Trigonometrische Funktion, wähle eine Funktion aus.
                    • +
                    • Zahl, im Bogenmaß
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Zahl, Wert der mathematischen Konstante. Der Wert von Unendlich ist - »infinity«.
                    • -

                    -
                    -
                    -

                    - »Zahleneigenschaft«

                    -

                    Mit dem Block »Zahleneigenschaft« wird geprüft, ob eine eingegebene Zahl eine - bestimmte Eigenschaft aufweist. »gerade«, »ungerade«, »ist Primzahl«, »ganze Zahl«, »positiv«, - »negativ«, »teilbar durch«.

                    -

                    Einstellmöglichkeiten und Eingabewert: -

                    -
                      -
                    • Zahl, die mit einem Block geprüft wird.
                    • -
                    • Zahleneigenschaft, wähle, was geprüft werden soll.
                    • -
                    • Zahl; ein zweiter Eingabewert ist nur bei der Wahl von »ist teilbar - durch« erforderlich.
                    • +
                        +
                      • Zahl, das Ergebnis der trigonometrischen Berechnung.
                      -

                      Rückgabewert: +

                    +

                    »Konstanten«

                    +

                    Der Block »Konstanten« stellt einige mathematische Konstanten bereit. »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«.

                    +

                    Einstellmöglichkeiten: +

                    +
                      +
                    • Mathematische Konstanten, wähle eine Konstante aus.
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Logischer Wert, »wahr« oder »falsch«, je nachdem, ob die geprüfte - Zahl die untersuchte Eigenschaft hat.
                    • -

                    -
                    -
                    -

                    »Erhöhe um x«

                    -

                    Mit dem Block »Erhöhe um x« wird der Wert einer numerischen Variable um einen - Betrag erhöht.

                    -

                    Eingabewerte: +

                      +
                    • Zahl, Wert der mathematischen Konstante. Der Wert von Unendlich ist »infinity«.
                    • +
                    +
                    +

                    »Zahleneigenschaft«

                    +

                    Mit dem Block »Zahleneigenschaft« wird geprüft, ob eine eingegebene Zahl eine bestimmte Eigenschaft aufweist. »gerade«, »ungerade«, »ist Primzahl«, »ganze Zahl«, »positiv«, »negativ«, »teilbar durch«.

                    +

                    Einstellmöglichkeiten und Eingabewert: +

                    +
                      +
                    • Zahl, die mit einem Block geprüft wird.
                    • +
                    • Zahleneigenschaft, wähle, was geprüft werden soll.
                    • +
                    • Zahl; ein zweiter Eingabewert ist nur bei der Wahl von »ist teilbar durch« erforderlich.
                    • +
                    +

                    Rückgabewert:

                    -
                      -
                    • Variable, deren Wert verändert werden soll.
                    • -
                    • Zahl.
                    • +
                        +
                      • Logischer Wert, »wahr« oder »falsch«, je nachdem, ob die geprüfte Zahl die untersuchte Eigenschaft hat.
                      • +
                      +
                    +

                    »erhöhe um x«

                    +

                    Mit dem Block »Erhöhe um x« wird der Wert einer numerischen Variable um einen Betrag erhöht.

                    +

                    Eingabewerte: +

                    +
                      +
                    • Variable, deren Wert verändert werden soll.
                    • +
                    • Zahl.
                    -
                    -

                    »runden«

                    -

                    Mit dem Block »runden« können Werte gerundet werden. Beim Runden werden die - Nachkommastellen auf 0 gesetzt. Es wird je nach Größe der Nachkommastellen automatisch auf- oder - abgerundet. Man kann jedoch auch einstellen, dass stets auf- bzw. stets abgerundet werden soll.

                    -

                    Einstellmöglichkeiten und Eingabewert: -

                    -
                      -
                    • Art der Rundung, wähle, wie gerundet werden soll.
                    • -
                    • Zahl
                    • +

                      »runden«

                      +

                      Mit dem Block »runden« können Werte gerundet werden. Beim Runden werden die Nachkommastellen auf 0 gesetzt. Es wird je nach Größe der Nachkommastellen automatisch auf- oder abgerundet. Man kann jedoch auch einstellen, dass stets auf- bzw. stets abgerundet werden soll.

                      +

                      Einstellmöglichkeiten und Eingabewert: +

                      +
                        +
                      • Art der Rundung, wähle, wie gerundet werden soll.
                      • +
                      • Zahl
                      -

                      Rückgabewert: +

                      Rückgabewert:

                      -
                        -
                      • Zahl, gerundete Ganzzahl
                      • -

                      -
                      -
                      -

                      »Liste auswerten« -

                      -

                      Mit dem Block »Liste auswerten« können verschiedene Analysen einer Liste - vorgenommen werden:

                      -
                        +
                          +
                        • Zahl, gerundete Ganzzahl
                        • +
                        +
                      +

                      »Liste auswerten«

                      +

                      Mit dem Block »Liste auswerten« können verschiedene Analysen einer Liste vorgenommen werden:

                      +
                      • Summe - alle Werte der Liste werden zusammengezählt
                      • Minimalwert - der kleinste Wert der Liste wird ausgegeben
                      • Maximalwert - der größte Wert der Liste wird ausgegeben
                      • @@ -1192,761 +858,679 @@

                        Einstellmöglichkeiten und Eingabewert: +

                        Einstellmöglichkeiten und Eingabewert:

                        -
                          -
                        • Art der Listenauswertung
                        • -
                        • Liste mit Zahlen
                        • +
                            +
                          • Art der Listenauswertung
                          • +
                          • Liste mit Zahlen
                          -

                          Rückgabewert: -

                          -
                            -
                          • Zahl, Ergebnis der eingestellten Listenauswertung.
                          • -

                          -

                      -
                      -

                      »Rest von«

                      -

                      Der Block »Rest von« führt eine Division durch und liefert den Rest der - Division, der nicht mehr durch den Divisor geteilt werden konnte.

                      -

                      Eingabewerte: +

                      Rückgabewert:

                      -
                        -
                      • Zahl, die geteilt wird (Dividend)
                      • -
                      • Zahl, durch die geteilt wird (Divisor bzw. Teiler)
                      • +
                          +
                        • Zahl, Ergebnis der eingestellten Listenauswertung.
                        -

                        Rückgabewert: +

                      +

                      »Rest von«

                      +

                      Der Block »Rest von« führt eine Division durch und liefert den Rest der Division, der nicht mehr durch den Divisor geteilt werden konnte.

                      +

                      Eingabewerte: +

                      +
                        +
                      • Zahl, die geteilt wird (Dividend)
                      • +
                      • Zahl, durch die geteilt wird (Divisor bzw. Teiler)
                      • +
                      +

                      Rückgabewert:

                      -
                        -
                      • Zahl, Rest der Division
                      • -

                      -
                      -
                      -

                      »Begrenze«

                      -

                      Der Block »Begrenze« sorgt dafür, dass Grenzwerte nicht überschritten werden. - Er erfordert drei Eingabewerte:

                      -
                        +
                          +
                        • Zahl, Rest der Division
                        • +
                        +
                      +

                      »begrenze«

                      +

                      Der Block »Begrenze« sorgt dafür, dass Grenzwerte nicht überschritten werden. Er erfordert drei Eingabewerte:

                      +
                      1. zu prüfender Wert
                      2. untere Grenze
                      3. obere Grenze
                      -

                      Der Rückgabewert ist

                      -
                        +

                        Der Rückgabewert ist

                        +
                        • der zu prüfende Wert, wenn gilt: untere Grenze ≤ zu prüfender Wert ≤ obere Grenze
                        • untere Grenze, wenn zu prüfender Wert < untere Grenze
                        • obere Grenze, wenn zu prüfender Wert > obere Grenze
                        -

                        Eingabewerte: +

                        Eingabewerte:

                        -
                          -
                        • Zahl, die begrenzt wird.
                        • -
                        • Zahl, untere Grenze.
                        • -
                        • Zahl, obere Grenze.
                        • +
                            +
                          • Zahl, die begrenzt wird.
                          • +
                          • Zahl, untere Grenze.
                          • +
                          • Zahl, obere Grenze.
                          -

                          Rückgabewert: +

                          Rückgabewert: +

                          +
                            +
                          • Zahl, die innerhalb der eingestellten Grenzen liegt.
                          • +
                          +
                      +

                      »Ganzzahlige Zufallswerte«

                      +

                      Mit dem Block »Ganzzahlige Zufallswerte« können ganzzahlige Zufallswerte innerhalb selbst gewählter Grenzen erzeugt werden.

                      +

                      Eingabewerte: +

                      +
                        +
                      • Zahl, untere Grenze
                      • +
                      • Zahl, obere Grenze
                      • +
                      +

                      Rückgabewert: +

                      +
                        +
                      • Zahl, eine ganzzahlige Zufallszahl, die innerhalb der eingestellten Grenzen liegt
                      • +
                      +
                      +

                      »Zufallszahl«

                      +

                      Mit dem Block »Zufallszahl« wird eine Zufallszahl zwischen 0,0 und 1,0 bestimmt.

                      +

                      Rückgabewert:

                      -
                        -
                      • Zahl, die innerhalb der eingestellten Grenzen liegt.
                      • -

                      +
                        +
                      • Zahl, eine positive Zufallszahl kleiner oder gleich 1.
                      • +
                      -
                      -

                      - »Ganzzahlige Zufallswerte«

                      -

                      Mit dem Block »Ganzzahlige Zufallswerte« können ganzzahlige Zufallswerte - innerhalb selbst gewählter Grenzen erzeugt werden.

                      -

                      Eingabewerte: +

                      »wandle ... um in Zeichenkette«

                      +

                      Dieser Block wandelt eine Zahl in eine Zeichenkette um, die diese Zahl enthält. Als Beispiel wird die Zahl 123 in die Zeichenkette »123« umgewandelt.

                      +

                      Optionen und Eingabewerte:

                      -
                        -
                      • Zahl, untere Grenze
                      • -
                      • Zahl, obere Grenze
                      • +
                          +
                        • Zahl, die Zahl die in eine Zeichenkette umgewandelt werden soll.
                        -

                        Rückgabewert: + Rückgabewerte: +

                          +
                        • Zeichenkette, die Zeichenkette bestehend aus der gewählten Zahl.
                        • +
                        +
                      +

                      »wandle ... um in Zeichen«

                      +

                      Dieser Block wandelt eine einzelne Zahl den dazugehörigen ASCII-Buchstaben um. Falls es zu dieser Zahl kein dazugehöriges ASCII-Zeichen gibt, wird eine leere Zeichenkette weitergegeben. So wird z.B. die Zahl 97 in den Buchstaben »a« umgewandelt. +

                      +

                      Optionen und Eingabewerte:

                      -
                        -
                      • Zahl, eine ganzzahlige Zufallszahl, die innerhalb der eingestellten - Grenzen liegt
                      • -

                      +
                        +
                      • Zahl, der ASCII-Code, der in das dazugehörige Zeichen umgewandelt werden soll. Zahl zwischen 0 und 255.
                      • +
                      + Rückgabewerte: +
                        +
                      • Zeichen, das Zeichen das dem gewählten ASCII-Code entspricht.
                      • +
                      +
                      +

                      »Mache einen NN Schritt«

                      +

                      Mit diesem Block führst du eine Berechnungsschritt deines Neuronalen Netzwerks aus. Bevor du diesen Block verwendest, solltest du die Werte der Eingabe-Neuronen mit dem Block »Schreibe Wert Eingabe-Neuron ...« setzen. + Die Eingabe-Werte werden in das Netzwerk gegeben und die Werte der Ausgabe-Neuronen werden anhand des Netzes aus dem Tab »Neuronales Netz« berechnet. Eine detaillierte Beschreibung des Neuronalen Netzwerks findest du hier. Die Werte der Ausgabe-Neuronen kannst du nach der Berechnung mit dem Block »gib Wert Ausgabe-Neuron ...« abfragen. +

                      +

                      »Schreibe Wert Eingabe-Neuron ... «

                      +

                      Mit diesem Block kannst du den Wert eines Eingabeneurons setzen. Du kannst als Eingabewert entweder Variablen, Zahlen, Sensordaten oder mathematische Operationen verwenden, z.B. die Summe von zwei Zahlen.

                      +

                      Optionen und Eingabewerte: +

                      +
                        +
                      • Neuron, wähle das Eingabeneuron aus, dessen Wert du setzen möchtest.
                      • +
                      • Zahl, die als Eingabewert verwendet werden soll.
                      • +
                      -
                      -

                      »Zufallszahl«

                      -

                      Mit dem Block »Zufallszahl« wird eine Zufallszahl zwischen 0,0 und 1,0 - bestimmt.

                      -

                      Rückgabewert: +

                      »gib Wert Ausgabe-Neuron ... «

                      +

                      Mit diesem Block kannst du den Wert eines Ausgabe-Neurons abfragen. Du solltest diesen Block erst nach dem Block »Mache einen NN Schritt« verwenden, da sonst noch kein Wert für die Ausgabeneuronen berechnet worden ist.

                      +

                      Optionen: +

                      +
                        +
                      • Neuron, wähle das Ausgabeneuron, dessen Wert du abfragen möchtest.
                      • +
                      +

                      Rückgabewert:

                      -
                        -
                      • Zahl, eine positive Zufallszahl kleiner oder gleich 1.
                      • +
                          +
                        • Zahl, der Wert des gewählten Ausgabe-Neurons.
                      -
                      -

                      »wandle ... um in Zeichenkette« -

                      -

                      Dieser Block wandelt eine Zahl in eine Zeichenkette um, die diese - Zahl enthält. Als Beispiel wird die Zahl 123 in die Zeichenkette »123« umgewandelt. -

                      -

                      Optionen und Eingabewerte: -

                      -
                        -
                      • Zahl, die Zahl die in eine Zeichenkette umgewandelt werden soll.
                      • -

                      -

                      Rückgabewerte: -

                      -
                        -
                      • Zeichenkette, die Zeichenkette bestehend aus der gewählten Zahl. -
                      • -

                      +

                      »Schreibe Gewicht von ... nach ... «

                      +

                      Mit diesem Block kannst du das Gewicht einer Verbindung zwischen zwei Neuronen setzen, die direkt miteinander verbunden sind.

                      +

                      Optionen und Eingabewerte: +

                      +
                        +
                      • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                      • +
                      • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                      • +
                      • Zahl, auf den das Gewicht gesetzt werden soll.
                      • +
                      -
                      -

                      »wandle ... um in Zeichen«

                      -

                      Dieser Block wandelt eine einzelne Zahl den dazugehörigen - ASCII-Buchstaben um. Falls es zu dieser Zahl kein dazugehöriges ASCII-Zeichen gibt, wird eine leere - Zeichenkette weitergegeben. So wird z.B. die Zahl 97 in den Buchstaben »a« umgewandelt.

                      -

                      Optionen und Eingabewerte: -

                      -
                        -
                      • Zahl, der ASCII-Code, der in das dazugehörige Zeichen umgewandelt - werden soll. Zahl zwischen 0 und 255.
                      • -

                      -

                      Rückgabewerte: -

                      -
                        -
                      • Zeichen, das Zeichen das dem gewählten ASCII-Code entspricht.
                      • -

                      +

                      »Schreibe Bias ... «

                      +

                      Mit diesem Block kannst du den Bias eines Neurons setzen.

                      +

                      Optionen und Eingabewerte: +

                      +
                        +
                      • Neuron, das Neuron, dessen Bias du setzen möchtest.
                      • +
                      • Zahl, der Wert auf den der Bias gesetzt werden soll.
                      • +
                      -
                      -

                      »Text«

                      -

                      Mit dem einfachen »Text«-Block wird ein Stück Text bereitgestellt.

                      -

                      Eingabewert: +

                      »gib Gewicht von ... nach ... «

                      +

                      Mit diesem Block kannst du den aktuellen Wert des Gewichts einer Verbindung zwischen zwei Neuronen abfragen, die direkt miteinander verbunden sind.

                      +

                      Optionen:

                      -
                        -
                      • Zeichenkette, bestehend aus beliebigen Zeichen
                      • +
                          +
                        • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                        • +
                        • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                        -

                        Rückgabewert: +

                        Rückgabewert:

                        -
                          -
                        • Text, bestehend aus beliebigen Zeichen
                        • -

                        +
                          +
                        • Zahl, der Wert des Gewichts zwischen den beiden Neuronen.
                        • +
                      -
                      -

                      »Kommentar«

                      -

                      Dokumentiere dein Programm mit diesem Block, damit du und andere es später - leichter haben, dein Programm zu verstehen. Dieser Kommentar wird auch im generierten Source Code zu - sehen sein.

                      -

                      Eingabewert: +

                      »gib Bias ... «

                      +

                      Mit diesem Block kannst du den Bias eines Neurons abfragen.

                      +

                      Optionen:

                      -
                        -
                      • Zeichenkette, bestehend aus beliebigen Zeichen
                      • +
                          +
                        • Neuron, das Neuron, dessen Bias du abfragen möchtest.
                        • +
                        +

                        Rückgabewert: +

                        +
                          +
                        • Zahl, der Wert des Bias des gewählten Neurons.
                      -
                      -

                      »Erstelle Text«

                      -

                      Mit dem »Erstelle Text«-Block wird ein Stück Text aus verschiedenen - Eingabewerten zusammengesetzt. Mit dem +-Zeichen können weitere Eingabemöglichkeiten geschaffen werden. - Alle Eingaben werden zu einer kontinuierlichen Zeichenkette zusammengefügt.

                      -

                      Eingabewerte: -

                      -
                        -
                      • Weitere Eingabemöglichkeiten bereitstellen.
                      • -
                      • Letzte Eingabemöglichkeit entfernen (bei mehr als 2 Eingabemöglichkeiten). -
                      • -
                      • Beliebiger Wert, Zahl, Text, logischer Wert, Farbe.
                      • +

                        »Text«

                        +

                        Mit dem einfachen »Text«-Block wird ein Stück Text bereitgestellt.

                        +

                        Eingabewert: +

                        +
                          +
                        • Zeichenkette, bestehend aus beliebigen Zeichen
                        -

                        Rückgabewert: +

                        Rückgabewert:

                        -
                          -
                        • Zeichenkette, bestehend aus beliebigen Zeichen.
                        • -

                        -
                        -
                        -

                        »Text anhängen«

                        -

                        Mit dem »Text anhängen«-Block können Zeichenketten erweitert werden, z.B. indem - an empfangene Nachrichten eine Signatur angehängt wird.

                        -

                        Eingabemöglichkeiten: +

                          +
                        • Text, bestehend aus beliebigen Zeichen
                        • +
                        +
                        +

                        »Kommentar«

                        +

                        Dokumentiere dein Programm mit diesem Block, damit du und andere es später leichter haben, dein Programm zu verstehen. Dieser Kommentar wird auch im generierten Source Code zu sehen sein.

                        +

                        Eingabewert:

                        -
                          -
                        • Text, Zeichenkette, an die Text angehängt werden soll
                        • -
                        • Text, Zeichenkette, die an einen Text angehängt werden soll
                        • +
                            +
                          • Zeichenkette, bestehend aus beliebigen Zeichen
                        -
                        -

                        »wandle ... um in Zahl«

                        -

                        Dieser Block wandelt eine Zeichenkette in eine Zahl um, falls - dies möglich ist. Wenn eine Zeichenkette also nur Zahlen enthält, kann dieser Block die Zeichenkette - in eine Zahl umwandeln. Wenn der Block keine Zahlen enthält, gibt dieser Block »NaN« in der - Simulation des Open Roberta Labs weiter, kann aber auch ein anderes Verhalten aufweisen, welches von - der verwendeten Programmiersprache des Roboters abhängt. Falls die Zeichenkette zwar mit Zahlen beginnt, aber danach - weitere Zeichen enthält, die keine Zahlen sind, gibt dieser Block nur die Zahlen weiter und stoppt, - sobald das erste Zeichen in der Zeichenkette steht. Also als Beispiel macht dieser Block aus der - Zeichenkette »52abcd« die Zahl 52.

                        -

                        Optionen und Eingabewerte: -

                        -
                          -
                        • Zeichenkette, die nur aus Zahlen besteht und in eine Zahl umgewandelt - werden soll.
                        • -

                        -

                        Rückgabewerte: -

                        -
                          -
                        • Zahl, die zahl aus der die Zeichenkette bestand.
                        • -

                        -
                        -
                        -

                        »wandle Zeichen ... an - Position ... in Zahl«

                        -

                        Dieser Block wandelt einen Buchstaben oder ein Zeichen aus einer - Zeichenkette in die dazugehörige ASCII-Nummer um. Jedes Zeichen hat dabei eine dazugehörige Nummer - in der ASCII-Tabelle. So wird z.B. ein kleines »a« in die Zahl 97 umgewandelt.

                        -

                        Optionen und Eingabewerte: -

                        -
                          -
                        • Zeichenkette, aus dieser wird ein einzelnes Zeichen ausgewählt.
                        • -
                        • Zahl, die Stelle des Zeichens das umgewandelt werden soll. Beachte - das die Nummerierung bei 0 anfängt.
                        • -

                        -

                        Rückgabewerte: -

                        -
                          -
                        • Zahl, der ASCII-Code des ausgewählten Zeichens.
                        • -

                        -
                        -
                        -

                        »Erzeuge Liste«

                        -

                        Der Block »Erzeuge eine leere Liste« erzeugt eine Liste ohne Inhalt. Der Block »Liste« erzeugt eine Liste - mit einigen voreingestellten Werten. Mit + und - können weitere Listenelemente am Ende hinzugefügt bzw. - entfernt werden. Wenn das letzte Element einer Liste entfernt wurde, liegt eine leere Liste vor.

                        -

                        Einstellmöglichkeiten: +

                        »Erstelle Text aus ...«

                        +

                        Mit dem »Erstelle Text«-Block wird ein Stück Text aus verschiedenen Eingabewerten zusammengesetzt. Mit dem +-Zeichen können weitere Eingabemöglichkeiten geschaffen werden. Alle Eingaben werden zu einer kontinuierlichen Zeichenkette zusammengefügt.

                        +

                        Eingabewerte:

                        -
                          -
                        • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder - »Verbindung«.
                        • -
                        • Erzeuge ein weiteres Listenelement am Ende der bestehenden Liste.
                        • -
                        • Lösche das Listenelement am Ende der bestehenden Liste.
                        • -
                        • Werte, die dem Listentyp entsprechen. Hiermit können Anfangswerte - gesetzt werden.
                        • -

                        -

                        Rückgabewert: +

                          +
                        • Weitere Eingabemöglichkeiten bereitstellen.
                        • +
                        • Letzte Eingabemöglichkeit entfernen (bei mehr als 2 Eingabemöglichkeiten).
                        • +
                        • Beliebiger Wert, Zahl, Text, logischer Wert, Farbe.
                        • +
                        +

                        Rückgabewert: +

                        +
                          +
                        • Zeichenkette, bestehend aus beliebigen Zeichen.
                        • +
                        +
                        +

                        »werte ... als ...« +

                        +

                        Mit dem »werte ... als ...«-Block wird ein als Text eingegebener Ausdruck ("expression") ausgewertet und das Ergebnis zurückgegeben. Der Ausdruck kann z.B. "sqrt(a^2 + b^2)" sein. Er wird zu einer Zahl ausgewertet. Der Block ist sehr leistungsstark: nahezu alle Ausdrücke, die mit Blockly-Blöcken erzeugt werden können, lassen sich auch als Text schreiben.

                        +

                        Wie der Ausdruck aufgebaut werden kann, ist auf einer eigenen Wiki-Seite beschrieben. Bitte beachten: es gibt allgemeine Ausdrücke, die für jeden Roboter gültig sind, und spezifische Teile, die nur für den jeweils ausgewählten Roboter gelten. Das muss so sein, weil jeder Roboter eigene Sensoren und Aktoren unterstützt. Das ist detailliert auf der Wiki-Seite beschrieben. +

                        +

                        Der Benutzer muss in einem Drop-Down angeben, welchen Typ für das Ergebnis erwartet wird. Welche Typen möglich sind, hängt vom jeweils ausgewählten Roboter ab.

                        +

                        Eingabewerte: +

                        +
                          +
                        • Text, gib den Ausdruck als Text ein.
                        • +
                        +

                        Optionen:

                        -
                          -
                        • Leere Liste oder eine Liste mit Elementen gleichen Typs.
                        • -

                        +
                          +
                        • Typ, der gewünschte Rückgabetyp des Ausdrucks, z.B eine Zahl, ein logischer Wert oder eine Zeichenkette. +
                        • +
                        +
                        +

                        »Text anhängen«

                        +

                        Mit dem »Text anhängen«-Block können Zeichenketten erweitert werden, z.B. indem an empfangene Nachrichten eine Signatur angehängt wird.

                        +

                        Eingabemöglichkeiten: +

                        +
                          +
                        • Text, Zeichenkette, an die Text angehängt werden soll
                        • +
                        • Text, Zeichenkette, die an einen Text angehängt werden soll
                        • +
                        -
                        -

                        »Wiederhole Element in Liste«

                        -

                        Der Block »Wiederhole Element in Liste« erzeugt eine Liste mit gleichen Elementen.

                        +

                        »wandle ... um in Zahl«

                        +

                        Dieser Block wandelt eine Zeichenkette in eine Zahl um, falls dies möglich ist. Wenn eine Zeichenkette also nur Zahlen enthält, kann dieser Block die Zeichenkette in eine Zahl umwandeln. Wenn der Block keine Zahlen enthält, gibt dieser Block »NaN« in der Simulation des Open Roberta Labs weiter, kann aber auch ein anderes Verhalten aufweisen, welches von der verwendeten Programmiersprache des Roboters abhängt. Falls die Zeichenkette zwar mit Zahlen beginnt, aber danach weitere Zeichen enthält, die keine Zahlen sind, gibt dieser Block nur die Zahlen weiter und stoppt, sobald das erste Zeichen in der Zeichenkette steht. Also als Beispiel macht dieser Block aus der Zeichenkette »52abcd« die Zahl 52. +

                        +

                        Optionen und Eingabewerte: +

                        +
                          +
                        • Zeichenkette, die nur aus Zahlen besteht und in eine Zahl umgewandelt werden soll.
                        • +
                        + Rückgabewerte: +
                          +
                        • Zahl, die zahl aus der die Zeichenkette bestand.
                        • +
                        +
                        +

                        »wandle Zeichen ... an Position ... in Zahl«

                        +

                        Dieser Block wandelt einen Buchstaben oder ein Zeichen aus einer Zeichenkette in die dazugehörige ASCII-Nummer um. Jedes Zeichen hat dabei eine dazugehörige Nummer in der ASCII-Tabelle. So wird z.B. ein kleines »a« in die Zahl 97 umgewandelt. +

                        +

                        Optionen und Eingabewerte: +

                        +
                          +
                        • Zeichenkette, aus dieser wird ein einzelnes Zeichen ausgewählt.
                        • +
                        • Zahl, die Stelle des Zeichens das umgewandelt werden soll. Beachte das die Nummerierung bei 0 anfängt.
                        • +
                        + Rückgabewerte: +
                          +
                        • Zahl, der ASCII-Code des ausgewählten Zeichens.
                        • +
                        +
                        +

                        »Erzeuge Liste«

                        +

                        Der Block »Erzeuge eine leere Liste« erzeugt eine Liste ohne Inhalt. Der Block »Liste« erzeugt eine Liste mit einigen voreingestellten Werten. Mit + und - können weitere Listenelemente am Ende hinzugefügt bzw. entfernt werden. Wenn das letzte Element einer Liste entfernt wurde, liegt eine leere Liste vor.

                        Einstellmöglichkeiten:

                        -
                          -
                        • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder - »Verbindung«.
                        • -
                        • Listenelement, das mit dem eingestellten Listentyp übereinstimmt. - Dieser Wert wird in der Liste wiederholt.
                        • -
                        • Zahl, die angibt, wie oft der eingestellte Wert wiederholt werden - soll.
                        • -

                        -

                        Rückgabewert: +

                          +
                        • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                        • +
                        • Erzeuge ein weiteres Listenelement am Ende der bestehenden Liste.
                        • +
                        • Lösche das Listenelement am Ende der bestehenden Liste.
                        • +
                        • Werte, die dem Listentyp entsprechen. Hiermit können Anfangswerte gesetzt werden.
                        • +
                        + Rückgabewert: +
                          +
                        • Leere Liste oder eine Liste mit Elementen gleichen Typs.
                        • +
                        +
                        +

                        »Wiederhole Element in Liste«

                        +

                        Der Block »Wiederhole Element in Liste« erzeugt eine Liste mit gleichen Elementen.

                        +

                        Einstellmöglichkeiten:

                        -
                          -
                        • Eine Liste des spezifizierten Typs mit der eingestellten Anzahl von - gleichen Elementen.
                        • -

                        -
                        -
                        -

                        »Länge«

                        -

                        Der Block »Länge« gibt als Wert die Länge einer Liste zurück, die als Eingabewert angegeben wird. Eine - leere Liste hat die Länge 0.

                        +
                          +
                        • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                        • +
                        • Listenelement, das mit dem eingestellten Listentyp übereinstimmt. Dieser Wert wird in der Liste wiederholt.
                        • +
                        • Zahl, die angibt, wie oft der eingestellte Wert wiederholt werden soll.
                        • +
                        + Rückgabewert: +
                          +
                        • Eine Liste des spezifizierten Typs mit der eingestellten Anzahl von gleichen Elementen.
                        • +
                        +
                        +

                        »Länge«

                        +

                        Der Block »Länge« gibt als Wert die Länge einer Liste zurück, die als Eingabewert angegeben wird. Eine leere Liste hat die Länge 0.

                        Eingabewert

                        -
                          -
                        • Liste
                        • -

                        -

                        Rückgabewert: -

                        -
                          -
                        • Zahl, Anzahl der Listenelemente
                        • -

                        -
                        -
                        -

                        »ist leer?« -

                        +
                          +
                        • Liste
                        • +
                        + Rückgabewert: +
                          +
                        • Zahl, Anzahl der Listenelemente
                        • +
                        +
                        +

                        »ist leer?«

                        Eine als Eingabewert gegebene Liste wird geprüft, ob sie leer ist.

                        Eingabewert

                        -
                          -
                        • Liste.
                        • -

                        -

                        Rückgabewert: -

                        -
                          -
                        • Logischer Wert, entweder »wahr« oder »falsch«
                        • -

                        -
                        -
                        -

                        »Suche in der Liste«

                        -

                        Eine Liste wird durchsucht, ob ein Element darin enthalten ist. Wenn das Element enthalten ist, wird die - Listenposition zurückgegeben. Wenn das Element nicht enthalten ist, ist das Ergebnis -1.

                        +
                          +
                        • Liste.
                        • +
                        + Rückgabewert: +
                          +
                        • Logischer Wert, entweder »wahr« oder »falsch«
                        • +
                        +
                        +

                        »suche in der Liste«

                        +

                        Eine Liste wird durchsucht, ob ein Element darin enthalten ist. Wenn das Element enthalten ist, wird die Listenposition zurückgegeben. Wenn das Element nicht enthalten ist, ist das Ergebnis -1.

                        Einstellmöglichkeiten:

                        -
                          -
                        • Liste, die untersucht werden soll.
                        • -
                        • Position für den Treffer, entweder »ersten« oder »letzten« - Treffer suchen.
                        • -
                        • Wert, der mit den Listentyp übereinstimmt.
                        • -

                        -

                        Rückgabewert: -

                        -
                          -
                        • -

                          Zahl, die Position, an der das Element in der Liste steht.

                          -

                          Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                          -
                        • -

                        -
                        -
                        -

                        »Nimm Listenelement«

                        -

                        Mit diesem Block wird auf ein Element einer Liste zugegriffen. Das Element wird gegebenenfalls verändert. -

                        -

                        Es wird eine Liste als Eingabe übergeben. Danach wird per Drop-Down-Liste spezifiziert, was mit dem - Listenelement geschehen soll. Anschließend wird angegeben, in welcher Richtung die Liste durchsucht - werden soll, ob von vorn (links), von hinten (rechts) oder zufällig.

                        +
                          +
                        • Liste, die untersucht werden soll.
                        • +
                        • Position für den Treffer, entweder »ersten« oder »letzten« Treffer suchen.
                        • +
                        • Wert, der mit den Listentyp übereinstimmt.
                        • +
                        + Rückgabewert: +
                          +
                        • Zahl, die Position, an der das Element in der Liste steht.

                          +

                          Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                        • +
                        +
                        +

                        »nimm Listenelement«

                        +

                        Mit diesem Block wird auf ein Element einer Liste zugegriffen. Das Element wird gegebenenfalls verändert.

                        +

                        Es wird eine Liste als Eingabe übergeben. Danach wird per Drop-Down-Liste spezifiziert, was mit dem Listenelement geschehen soll. Anschließend wird angegeben, in welcher Richtung die Liste durchsucht werden soll, ob von vorn (links), von hinten (rechts) oder zufällig.

                        Einstellmöglichkeiten und Eingabewerte

                        -
                          -
                        • Liste, die bearbeitet werden soll.
                        • -
                        • Aktion für das gefundene Element: »nimm« liest das Element und - lässt es unverändert, »nimm und entferne« liest das Element und entfernt es aus der Liste, - »entferne« entfernt das Element aus der Liste.
                        • -
                        • Positionsbestimmung für das gefundene Element: »#te«, »#te von - hinten«, »erste«, »letzte« oder »zufälliges« .
                        • -
                        • -

                          Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« - als Position bestimmt wurde.

                          -

                          Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                          +
                            +
                          • Liste, die bearbeitet werden soll.
                          • +
                          • Aktion für das gefundene Element: »nimm« liest das Element und lässt es unverändert, »nimm und entferne« liest das Element und entfernt es aus der Liste, »entferne« entfernt das Element aus der Liste.
                          • +
                          • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                          • +
                          • +

                            Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.

                            +

                            Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                          • +
                          + Rückgabewert: +
                            +
                          • Das spezifizierte Listenelement, das an der angegebenen Listenposition gefunden wurde. »undefined« (undefiniert), wenn die Listenposition nicht existiert. +
                            Bei »entferne« wird kein Wert zurückgegeben; die bearbeitete Liste ist dann um dieses Listenelement reduziert.
                          • -

                          -

                          Rückgabewert: -

                          -
                            -
                          • Das spezifizierte Listenelement, das an der angegebenen - Listenposition gefunden wurde. »undefined« (undefiniert), wenn die Listenposition nicht existiert. -
                            Bei »entferne« wird kein Wert zurückgegeben; die bearbeitete Liste ist dann um dieses - Listenelement reduziert.
                          • -

                          -
                        -
                        -

                        »Setze Listenelement«

                        -

                        In einer als Eingabewert übergebenen Liste wird ein näher spezifiziertes Element durch einen neuen Wert - ersetzt bzw. es wird ein Wert eingefügt.

                        +
                      +
                      +

                      »Setze Listenelement«

                      +

                      In einer als Eingabewert übergebenen Liste wird ein näher spezifiziertes Element durch einen neuen Wert ersetzt bzw. es wird ein Wert eingefügt.

                      Einstellmöglichkeiten und Eingabewerte:

                      -
                        -
                      • Liste, die bearbeitet werden soll.
                      • -
                      • Aktion für das gefundene Element: »setze« verändert das - Element, »füge« fügt ein neues Element in die Liste ein.
                      • -
                      • Positionsbestimmung für das gefundene Element: »#te«, »#te von - hinten«, »erste«, »letzte« oder »zufälliges« .
                      • -
                      • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor - »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.
                        Beachte: Die Zählung der - Listenpositionen beginnt bei 0.
                      • -
                      • Listenelement, das an der zuvor bestimmten Listenposition gesetzt - oder eingefügt wird.
                      • -

                      -
                      -
                      -

                      »Erhalte Unterliste«

                      -

                      Aus einer als Eingabewert übergebenen Liste wird eine Unterliste erzeugt. In der Unterliste sind alle - Elemente enthalten, die den weiteren Spezifikationen dieses Blocks entsprechen.

                      +
                        +
                      • Liste, die bearbeitet werden soll.
                      • +
                      • Aktion für das gefundene Element: »setze« verändert das Element, »füge« fügt ein neues Element in die Liste ein.
                      • +
                      • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                      • +
                      • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.
                        Beachte: Die Zählung der Listenpositionen beginnt bei 0. +
                      • +
                      • Listenelement, das an der zuvor bestimmten Listenposition gesetzt oder eingefügt wird.
                      • +
                      +
                      +

                      »Erhalte Unterliste«

                      +

                      Aus einer als Eingabewert übergebenen Liste wird eine Unterliste erzeugt. In der Unterliste sind alle Elemente enthalten, die den weiteren Spezifikationen dieses Blocks entsprechen.

                      Einstellmöglichkeiten und Eingabewerte:

                      -
                        -
                      • Liste, die bearbeitet werden soll.
                      • -
                      • Position, Anfang der Unterliste: »von #«, »von # von hinten« - oder »vom Anfang«.
                      • -
                      • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »vom - Anfang« als Position bestimmt wurde.
                        Beachte: Die Zählung der Listenpositionen beginnt bei 0. +
                          +
                        • Liste, die bearbeitet werden soll.
                        • +
                        • Position, Anfang der Unterliste: »von #«, »von # von hinten« oder »vom Anfang«.
                        • +
                        • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »vom Anfang« als Position bestimmt wurde.
                          Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                        • -
                        • Position, Ende der Unterliste: »zu #«, »zu # von hinten« oder - »zum Ende«.
                        • -
                        • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »zum - Ende« als Position bestimmt wurde.
                          Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                        • -

                        -

                        Rückgabewert: -

                        -
                          -
                        • Liste, Unterliste gleichen Typs wie die als Eingabewert übergebene - Liste.
                        • -

                        -
                      -
                      -

                      »Farbwahl «

                      +
                    • Position, Ende der Unterliste: »zu #«, »zu # von hinten« oder »zum Ende«.
                    • +
                    • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »zum Ende« als Position bestimmt wurde.
                      Beachte: Die Zählung der Listenpositionen beginnt bei 0. +
                    • +
                    + Rückgabewert: +
                      +
                    • Liste, Unterliste gleichen Typs wie die als Eingabewert übergebene Liste.
                    • +
                    +
                    +

                    »Farbwahl «

                    Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                    Option:

                    -
                      -
                    • Option, wähle die Farbe aus, die du verwenden möchtest.
                    • +
                        +
                      • Option, wähle die Farbe aus, die du verwenden möchtest.
                      -

                      Rückgabewert: +

                      Rückgabewert:

                      -
                        -
                      • Farbe, die ausgewählte Farbe.
                      • +
                          +
                        • Farbe, die ausgewählte Farbe.
                    -
                    -

                    »Farbwahl «

                    +

                    »Farbwahl «

                    Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                    Option:

                    -
                      -
                    • Option, wähle die Farbe aus, die du verwenden möchtest.
                    • +
                        +
                      • Option, wähle die Farbe aus, die du verwenden möchtest.
                      -

                      Rückgabewert: +

                      Rückgabewert:

                      -
                        -
                      • Farbe, die ausgewählte Farbe.
                      • +
                          +
                        • Farbe, die ausgewählte Farbe.
                    -
                    -

                    »Farbwahl «

                    +

                    »Farbwahl «

                    Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                    Option:

                    -
                      -
                    • Option, wähle die Farbe aus, die du verwenden möchtest.
                    • +
                        +
                      • Option, wähle die Farbe aus, die du verwenden möchtest.
                      -

                      Rückgabewert: +

                      Rückgabewert:

                      -
                        -
                      • Farbe, die ausgewählte Farbe.
                      • +
                          +
                        • Farbe, die ausgewählte Farbe.
                    -
                    -

                    »Farbe mit Rot ... Grün - ... Blau ... Weiß ... «

                    -

                    Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau - mischst.

                    -

                    Eingabewerte: -

                    -
                      -
                    • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, die Helligkeit deiner Farbe. Wert zwischen 0 und 255.
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Farbe, die von dir erstellte Farbe.
                    • -

                    -
                    -
                    -

                    - »Farbe mit Rot ... Grün ... Blau ... «

                    -

                    Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau - mischst.

                    +

                    »Farbe mit Rot ... Grün ... Blau ... «

                    +

                    Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau mischst.

                    Eingabewerte:

                    -
                      -
                    • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Farbe, die von dir erstellte Farbe.
                    • -

                    -
                    -
                    -

                    - »Farbe mit Rot ... Grün ... Blau ... «

                    -

                    Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau - mischst.

                    +
                      +
                    • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                    • +
                    • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • +
                    • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • +
                    + Rückgabewert: +
                      +
                    • Farbe, die von dir erstellte Farbe.
                    • +
                    +
                    +

                    »Farbton Toleranz«

                    +

                    Roboter erkennen den genauen Farbton oft nicht Präzise. Durch die Lichtverhältnisse kann so eine Farbe als zu dunkel oder zu hell wahrgenommen werden. Dieser Block ermöglicht die Einstellung eines Toleranzbereichs für die zu erkennende Farbe, damit beispielsweise jeder Rotton als Rot erkannt wird.

                    Eingabewerte:

                    -
                      -
                    • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • -
                    • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Farbe, die von dir erstellte Farbe.
                    • -

                    +
                      +
                    • Farbe, von einem Sensor empfangene Farbe.
                    • +
                    • Farbe, festgelegte Farbe für den Vergleich mit Sensordaten.
                    • +
                    • Zahl, Toleranzwert für die Farberkennung.
                    • +
                    + Rückgabewert: +
                      +
                    • Wahrheitswert, »wahr«, wenn die Farbe im Toleranzbereich liegt, »falsch«, wenn Farbe zu stark abweicht.
                    • +
                    -
                    -

                    »Schreibe Variable«

                    -

                    Mit dem Block »Schreibe Variable« kannst du den Wert einer Variablen verändern. Je nach Typ der Variablen - (Zahl, Zeichenkette, logischer Wert, Liste, Farbe, Verbindung) kann der Variablen ein passender Wert - übergeben werden.

                    +

                    »Schreibe Variable«

                    +

                    Mit dem Block »Schreibe Variable« kannst du den Wert einer Variablen verändern. Je nach Typ der Variablen (Zahl, Zeichenkette, logischer Wert, Liste, Farbe, Verbindung) kann der Variablen ein passender Wert übergeben werden.

                    Einstellmöglichkeit und Eingabewert:

                    -
                      -
                    • Variable, deren Wert verändert werden soll.
                    • -
                    • Wert, auf den die Variable gesetzt werden soll.
                    • -

                    -
                    -
                    -

                    »Lies Variable«

                    -

                    Mit dem Block »lies Variable« kannst du den Wert einer Variablen an einen anderen Block übergeben. Der - Typ des Ausgabewertes entspricht immer dem Typ, mit dem die Variablen im Block »Start« initialisiert - wurde.

                    +
                      +
                    • Variable, deren Wert verändert werden soll.
                    • +
                    • Wert, auf den die Variable gesetzt werden soll.
                    • +
                    +
                    +

                    »Lies Variable«

                    +

                    Mit dem Block »lies Variable« kannst du den Wert einer Variablen an einen anderen Block übergeben. Der Typ des Ausgabewertes entspricht immer dem Typ, mit dem die Variablen im Block »Start« initialisiert wurde.

                    Einstellmöglichkeit:

                    -
                      -
                    • Variable, deren Wert gelesen werden soll.
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Wert, der in der Variablen gespeichert ist.
                    • -

                    -
                    -
                    -

                    - Funktionsblock ohne/mit Eingabe- und ohne Rückgabewert

                    -

                    In einem Funktionsblock ohne/mit Eingabe- und Rückgabewert wird eine Folge von Anweisungen - zusammengefasst. Die Eingabewerte werden durch die lokalen Variablen im Funktionsblock festgelegt. Mit - dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Lokale - Variablen werden nicht initialisiert.

                    -

                    Falls in einen Funktionsblock eine Wenn-Abfrage (siehe unten) eingebaut wird, kann es zu einem - vorzeitigen Abbruch der Funktion kommen.

                    -

                    Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur - Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                    +
                      +
                    • Variable, deren Wert gelesen werden soll.
                    • +
                    + Rückgabewert: +
                      +
                    • Wert, der in der Variablen gespeichert ist.
                    • +
                    +
                    +

                    Funktionsblock ohne/mit Eingabe- und ohne Rückgabewert

                    +

                    In einem Funktionsblock ohne/mit Eingabe- und Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Die Eingabewerte werden durch die lokalen Variablen im Funktionsblock festgelegt. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Lokale Variablen werden nicht initialisiert.

                    +

                    Falls in einen Funktionsblock eine Wenn-Abfrage (siehe unten) eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen.

                    +

                    Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                    Einstellmöglichkeiten:

                    -
                      -
                    • Funktionsname, ohne Leer- und Sonderzeichen
                    • -
                    • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert - zugewiesen wird.
                    • -
                    • Lösche eine lokale Variable.
                    • -

                    -
                    -
                    +
                      +
                    • Funktionsname, ohne Leer- und Sonderzeichen
                    • +
                    • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                    • +
                    • Lösche eine lokale Variable.
                    • +
                    +
                    +
                    +
                      -
                    • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im - Funktionsnamen sind nicht erlaubt.
                    • -
                    • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle - diese Werte beim Funktionsaufruf belegt werden.
                    • +
                    • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                    • +
                    • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle diese Werte beim Funktionsaufruf belegt werden.
                    -
                    -

                    - Funktionsblock ohne/mit Eingabe- und mit Rückgabewerten

                    -

                    In einem Funktionsblock ohne/mit Eingabe- und mit Rückgabewert wird eine Folge von Anweisungen - zusammengefasst. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock - erzeugt werden. Nachdem alle Anweisungen durchlaufen wurden, wird abschließend ein Wert als - Funktionswert zurückgegeben.

                    -

                    Falls in einen Funktionsblock eine Wenn-Abfrage eingebaut wird, kann es zu einem vorzeitigen Abbruch der - Funktion kommen, und es kann ein alternativer Funktionswert zurückgegeben werden.

                    -

                    Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur - Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                    +

                    Funktionsblock ohne/mit Eingabe- und mit Rückgabewerten

                    +

                    In einem Funktionsblock ohne/mit Eingabe- und mit Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Nachdem alle Anweisungen durchlaufen wurden, wird abschließend ein Wert als Funktionswert zurückgegeben.

                    +

                    Falls in einen Funktionsblock eine Wenn-Abfrage eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen, und es kann ein alternativer Funktionswert zurückgegeben werden.

                    +

                    Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                    Einstellmöglichkeiten:

                    -
                      -
                    • Funktionsname, ohne Leer- und Sonderzeichen
                    • -
                    • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert - zugewiesen wird.
                    • -
                    • Lösche eine lokale Variable.
                    • -
                    • Datentyp für den Rückgabewert. »Zahl«, »logischer Wert«, - »Zeichenkette«, »Farbe«, »Verbindung«, »Liste Zahl«, »Liste logischer Wert«, »Liste Zeichenkette«, - »Liste Verbindung«.
                    • -
                    • Wert, der dem eingestellten Datentyp des Rückgabewertes entspricht. -
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Wert, der im Rückgabeblock berechnet wurde.
                    • +
                        +
                      • Funktionsname, ohne Leer- und Sonderzeichen
                      • +
                      • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                      • +
                      • Lösche eine lokale Variable.
                      • +
                      • Datentyp für den Rückgabewert. »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe«, »Verbindung«, »Liste Zahl«, »Liste logischer Wert«, »Liste Zeichenkette«, »Liste Verbindung«.
                      • +
                      • Wert, der dem eingestellten Datentyp des Rückgabewertes entspricht.
                      • +
                      + Rückgabewert: +
                        +
                      • Wert, der im Rückgabeblock berechnet wurde.
                      -
                      -
                      +
                      +
                        -
                      • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im - Funktionsnamen sind nicht erlaubt.
                      • -
                      • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle - Werte beim Funktionsaufruf belegt werden.
                      • +
                      • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                      • +
                      • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle Werte beim Funktionsaufruf belegt werden.
                      -
                      -

                      Wenn-Abfrage innerhalb - einer Funktion

                      -

                      Die Wenn-Abfrage innerhalb einer Funktion ist von besonderer Bedeutung. Sobald der Funktionsablauf auf - eine Wenn-Abfrage trifft, wird die Gültigkeit der Bedingung geprüft.

                      -

                      Wenn-Abfrage innerhalb - einer Funktion mit Rückgabewert:

                      +

                      Wenn-Abfrage innerhalb einer Funktion +

                      +

                      Die Wenn-Abfrage innerhalb einer Funktion ist von besonderer Bedeutung. Sobald der Funktionsablauf auf eine Wenn-Abfrage trifft, wird die Gültigkeit der Bedingung geprüft.

                      +

                      Wenn-Abfrage innerhalb einer Funktion mit Rückgabewert:

                        -
                      • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird - beendet. Der zweite übergebene Wert wird als Funktionswert zurückgegeben. Ein eventuell mit der - Funktion definierter Rückgabewert wird nicht weiter berücksichtig. Der Rückgabewert-Typ wird durch - den Typ des Rückgabewerts der umgebenden Funktion festgelegt.
                      • -
                      • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt. Ein eventuell mit der - Funktion definierter Rückgabewert wird als Funktionswert zurückgegeben, wenn der Funktionsablauf das - Funktionsende erreicht.
                      • -
                      -

                      Wenn-Abfrage innerhalb - einer Funktion ohne Rückgabewert:

                      +
                    • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet. Der zweite übergebene Wert wird als Funktionswert zurückgegeben. Ein eventuell mit der Funktion definierter Rückgabewert wird nicht weiter berücksichtig. Der Rückgabewert-Typ wird durch den Typ des Rückgabewerts der umgebenden Funktion festgelegt.
                    • +
                    • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt. Ein eventuell mit der Funktion definierter Rückgabewert wird als Funktionswert zurückgegeben, wenn der Funktionsablauf das Funktionsende erreicht.
                    • +
                    +

                    Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert:

                      -
                    • Eine Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert hat nur die Bedingung als Eingabewert. -
                    • -
                    • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird - beendet.
                    • +
                    • Eine Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert hat nur die Bedingung als Eingabewert.
                    • +
                    • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet.
                    • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt.

                    Einstellgabewerte:

                    -
                      -
                    • Logischer Wert, der aus einer Bedingung bestimmt wird.
                    • -
                    • Wert, dessen Typ am Ende des Funktionsblock eingestellt - ist.
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                    • -

                    -
                    -
                    -

                    »Funktionsaufruf ohne - Rückgabewert «

                    -

                    Mit diesem Block kannst du eine vorher definierte Funktion aufrufen. Diese Funktion gibt dabei keinen - Wert zurück.

                    +
                      +
                    • Logischer Wert, der aus einer Bedingung bestimmt wird.
                    • +
                    • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                    • +
                    + Rückgabewert: +
                      +
                    • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                    • +
                    +
                    +

                    »Funktionsaufruf ohne Rückgabewert « +

                    +

                    Mit diesem Block kannst du eine vorher definierte Funktion aufrufen. Diese Funktion gibt dabei keinen Wert zurück.

                    Eingabewerte:

                    -
                      -
                    • Wert, abhängig von den Eingabewerte der vorher definierten Funktion. -
                    • +
                        +
                      • Wert, abhängig von den Eingabewerte der vorher definierten Funktion.
                    -
                    -

                    »Funktionsaufruf - mit Rückgabewert «

                    +

                    »Funktionsaufruf mit Rückgabewert «

                    Mit diesem Block kannst du eine vorher definierte Funktion aufrufen und den Rückgabewerte abrufen.

                    Eingabewerte:

                    -
                      -
                    • Wert, abhängig von den Eingabewerten der vorher definierten Funktion. -
                    • -

                    -

                    Rückgabewerte: -

                    -
                      -
                    • Wert, abhängig von dem Rückgabewert der definierten Funktion.
                    • -

                    -
                    -
                    -

                    Verbinde mit Robotername

                    -

                    Der Verbindungsaufbau wird von einem EV3-Roboter initiiert, wie z.B. ein Telefonanruf von einem Anrufer. - Dazu muss bekannt sein, wie der Kommunikationspartner heißt.

                    -

                    Die Verbindung zwischen zwei EV3-Robotern wird in einer globalen Variablen vom Typ "Verbindung" - gespeichert. Solange diese globale Verbindungsvariable gültig ist, "steht" die Nachrichtenverbindung. - Achte darauf, dass die Roboter unterschiedliche Namen haben.

                    +
                      +
                    • Wert, abhängig von den Eingabewerten der vorher definierten Funktion.
                    • +
                    + Rückgabewerte: +
                      +
                    • Wert, abhängig von dem Rückgabewert der definierten Funktion.
                    • +
                    +
                    +

                    Verbinde mit Robotername +

                    +

                    Der Verbindungsaufbau wird von einem EV3-Roboter initiiert, wie z.B. ein Telefonanruf von einem Anrufer. Dazu muss bekannt sein, wie der Kommunikationspartner heißt.

                    +

                    Die Verbindung zwischen zwei EV3-Robotern wird in einer globalen Variablen vom Typ "Verbindung" gespeichert. Solange diese globale Verbindungsvariable gültig ist, "steht" die Nachrichtenverbindung. Achte darauf, dass die Roboter unterschiedliche Namen haben.

                    Schritt 1: Erzeuge eine globale Variable vom Typ "Verbindung".

                    -

                    Schritt 2: Füge einen Verbindungsblock an. Gib als Eingabewert den Namen des EV3-Roboters ein, mit dem - die Nachrichtenverbingung aufgebaut werden soll.

                    -

                    Beim Kommunikationspartner wird die Verbindungsvariable automatisch über den Experten-Block "Warte auf - Verbindung" gesetzt. Die Verbindungsvariable wird gesetzt, wenn der rufende EV3-Roboter den Block - "Verbinde mit Robotername" ausgeführt hat.

                    +

                    Schritt 2: Füge einen Verbindungsblock an. Gib als Eingabewert den Namen des EV3-Roboters ein, mit dem die Nachrichtenverbingung aufgebaut werden soll.

                    +

                    Beim Kommunikationspartner wird die Verbindungsvariable automatisch über den Experten-Block "Warte auf Verbindung" gesetzt. Die Verbindungsvariable wird gesetzt, wenn der rufende EV3-Roboter den Block "Verbinde mit Robotername" ausgeführt hat.

                    Eingabewert:

                    -
                      -
                    • Text, Name des Roboters, zu dem eine Verbindung aufgebaut werden - soll.
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Verbindungsobjekt, das an eine globale Verbindungsvariable gebunden - werden kann
                    • -

                    -
                    -
                    -

                    Sende Nachricht über Verbindung -

                    -

                    Eine Nachricht wird über eine globale Verbindungsvariable übermittelt. Die Nachricht wird über einen - Block eingegeben, der dem Nachrichtentyp entspricht (gegenwärtig: Zeichenkette). Damit der Roboter weiß, - über welche Verbindung die Kommunikation stattfindet, wird der Wert der globalen Verbindungsvariablen - gelesen.

                    -
                    -
                    -

                    Es können gegenwärtig nur Textnachrichten via Bluetooth verschickt werden.

                    -
                    +
                      +
                    • Text, Name des Roboters, zu dem eine Verbindung aufgebaut werden soll.
                    • +
                    + Rückgabewert: +
                      +
                    • Verbindungsobjekt, das an eine globale Verbindungsvariable gebunden werden kann
                    • +
                    +
                    +

                    Sende Nachricht über Verbindung

                    +

                    Eine Nachricht wird über eine globale Verbindungsvariable übermittelt. Die Nachricht wird über einen Block eingegeben, der dem Nachrichtentyp entspricht (gegenwärtig: Zeichenkette). Damit der Roboter weiß, über welche Verbindung die Kommunikation stattfindet, wird der Wert der globalen Verbindungsvariablen gelesen.

                    +
                    +

                    Es können gegenwärtig nur Textnachrichten via Bluetooth verschickt werden.

                    Einstellmöglichkeiten und Eingabewerte:

                    -
                      -
                    • Nachrichtentyp, »Zeichenkette«.
                    • -
                    • Nachricht, Zeichenkette, die übermittelt werden soll.
                    • -
                    • Verbindungsmedium, »Bluetooth«.
                    • -
                    • Verbindung, Verbindungsvariable, über die die Kommunikation erfolgt. -
                    • -

                    -
                    -
                    -

                    Empfange Nachricht über - Verbindung

                    -

                    Eine Textnachricht wird über eine globale Verbindungsvariable übermittelt. Die Textnachricht wird an - einen Textblock übergeben. Damit der EV3-Roboter weiß, über welche Verbindung die Kommunikation - stattfindet, wird der Wert der globalen Verbindungsvariablen gelesen.

                    +
                      +
                    • Nachrichtentyp, »Zeichenkette«.
                    • +
                    • Nachricht, Zeichenkette, die übermittelt werden soll.
                    • +
                    • Verbindungsmedium, »Bluetooth«.
                    • +
                    • Verbindung, Verbindungsvariable, über die die Kommunikation erfolgt.
                    • +
                    +
                    +

                    Empfange Nachricht über Verbindung

                    +

                    Eine Textnachricht wird über eine globale Verbindungsvariable übermittelt. Die Textnachricht wird an einen Textblock übergeben. Damit der EV3-Roboter weiß, über welche Verbindung die Kommunikation stattfindet, wird der Wert der globalen Verbindungsvariablen gelesen.

                    Einstellmöglichkeiten und Eingabewert:

                    -
                      -
                    • Nachrichtentyp, »Zeichenkette«.
                    • -
                    • Verbindungsmedium, »Bluetooth«.
                    • -
                    • Verbindung, Verbindungsvariable, über die die Kommunikation erfolgt. -
                    • -

                    -

                    Rückgabewert: -

                    -
                      -
                    • Zeichenkette, Inhalt der empfangenen Nachricht.
                    • -

                    -
                    -
                    -

                    Warte auf Verbindung

                    -

                    Der Verbindungsaufbau wird von einem EV3-Roboter initiiert, wie z.B. ein Telefonanruf von einem Anrufer. - Ein angerufener Roboter wartet auf eine Verbindung.

                    -

                    Die Verbindung zwischen zwei EV3-Robotern wird in einer globalen Variablen vom Typ "Verbindung" - gespeichert. Solange diese globale Verbindungsvariable gültig ist, "steht" die Nachrichtenverbindung. -

                    +
                      +
                    • Nachrichtentyp, »Zeichenkette«.
                    • +
                    • Verbindungsmedium, »Bluetooth«.
                    • +
                    • Verbindung, Verbindungsvariable, über die die Kommunikation erfolgt.
                    • +
                    + Rückgabewert: +
                      +
                    • Zeichenkette, Inhalt der empfangenen Nachricht.
                    • +
                    +
                    +

                    Warte auf Verbindung

                    +

                    Der Verbindungsaufbau wird von einem EV3-Roboter initiiert, wie z.B. ein Telefonanruf von einem Anrufer. Ein angerufener Roboter wartet auf eine Verbindung.

                    +

                    Die Verbindung zwischen zwei EV3-Robotern wird in einer globalen Variablen vom Typ "Verbindung" gespeichert. Solange diese globale Verbindungsvariable gültig ist, "steht" die Nachrichtenverbindung.

                    Schritt 1: Erzeuge eine globale Variable vom Typ "Verbindung".

                    -

                    Schritt 2: Als Wert der globalen Verbindungsvariablen wird auf den Wert des Experten-Blocks "Warte auf - Verbindung" gesetzt.

                    -

                    Die Verbindungsvariable wird dann gesetzt, wenn der rufende EV3-Roboter die Verbindung aufgerufen hat - (siehe oben: Verbinde mit Robotername).

                    +

                    Schritt 2: Als Wert der globalen Verbindungsvariablen wird auf den Wert des Experten-Blocks "Warte auf Verbindung" gesetzt.

                    +

                    Die Verbindungsvariable wird dann gesetzt, wenn der rufende EV3-Roboter die Verbindung aufgerufen hat (siehe oben: Verbinde mit Robotername).

                    Rückgabewert:

                    -
                      -
                    • Verbindungsobjekt, das an eine Verbindungsvariable gebunden werden - kann.
                    • -

                    -
                    +
                      +
                    • Verbindungsobjekt, das an eine Verbindungsvariable gebunden werden kann.
                    • +
                    +
                    \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/help/progHelp_ev3_en.html b/OpenRobertaServer/staticResources/help/progHelp_ev3_en.html index bf4e9eb8d7..478a80938d 100644 --- a/OpenRobertaServer/staticResources/help/progHelp_ev3_en.html +++ b/OpenRobertaServer/staticResources/help/progHelp_ev3_en.html @@ -1,1851 +1,1553 @@ - - - + + - -
                    -
                    -

                    »Program start«

                    +
                    +

                    »Program start«

                    Each program starts with the red »Program start« block.

                    -

                    This block is always available in the Open Roberta Lab and cannot be deleted. The little triangle below - the start block is called »sequence connector«. The first block you want to use will be connected by - using the »sequence connector« at the start block. The sequence connector color changes to yellow when a - suitable block comes into its range.

                    +

                    This block is always available in the Open Roberta Lab and cannot be deleted. The little triangle below the start block is called »sequence connector«. The first block you want to use will be connected by using the »sequence connector« at the start block. The sequence connector color changes to yellow when a suitable block comes into its range.

                    Settings:

                    -
                      -
                    • create a new global variable
                    • -
                    • delete the global variable
                    • -
                    • show sensor data - while running a program the current values of - connected sensors will be shown on the display
                    • -

                    -

                    If global variables have been created: -

                    -
                      -
                    • Text, name of the variable
                    • -
                    • Type of the variable, »Number«, »Boolean«, »String«, »Color«, - »Connection«, »List Number«, »List Boolean«, »List String«, »List Connection«
                    • -
                    • Value, that corresponds to the variable type. This is the initial - value of the variable.
                    • -
                    -
                    -
                    -

                    »motor port ... - on«

                    -

                    With the »motor port ... on« block you can program the speed (velocity) of the selected motor. Your robot - starts the selected motor, until it is stopped or another block specifies new moving parameters.

                    +
                      +
                    • create a new global variable
                    • +
                    • delete the global variable
                    • +
                    • show sensor data - while running a program the current values of connected sensors will be shown on the display
                    • +
                    +
                    +

                    If global variables have been created: +

                    +
                      +
                    • Text, name of the variable
                    • +
                    • Type of the variable, »Number«, »Boolean«, »String«, »Color«, »Connection«, »List Number«, »List Boolean«, »List String«, »List Connection«
                    • +
                    • Value, that corresponds to the variable type. This is the initial value of the variable.
                    • +
                    +
                    +

                    »motor port ... on« +

                    +

                    With the »motor port ... on« block you can program the speed (velocity) of the selected motor. Your robot starts the selected motor, until it is stopped or another block specifies new moving parameters.

                    Options and Arguments:

                    -
                      -
                    • motor port, choose the port where the motor is connected to. -
                    • -
                    • value, speed between -100 to 100. Negative values let the motor turn - backwards. This value will be internally clipped to be between -100 and 100.
                    • +
                        +
                      • motor port, choose the port where the motor is connected to.
                      • +
                      • value, speed between -100 to 100. Negative values let the motor turn backwards. This value will be internally clipped to be between -100 and 100.
                    -
                    -

                    »motor - port ... on ... for«

                    -

                    With the »motor port ... rotation« block you can program the speed (velocity) of the selected motor. Your - robot starts the selected motor and rotates the motor until the specified number of rotations or degrees - is done.

                    +

                    »motor port ... on ... for« +

                    +

                    With the »motor port ... rotation« block you can program the speed (velocity) of the selected motor. Your robot starts the selected motor and rotates the motor until the specified number of rotations or degrees is done.

                    Options and Arguments:

                    -
                      -
                    • motor port, choose the one where the motor that you want to - program is connected to.
                    • -
                    • number, spped between -100 and 100. 100 is the maximum speed. - Negative values lets the motor rotate into the other direction. This value will be internally - clipped to be between -100 and 100.
                    • -
                    • rotation or degree. Choose the one which fits best. 1 rotation - is the same than 360 degrees.
                    • -
                    • number, rotations or degrees, only positive numbers are allowed.
                    • -
                    -
                    -
                    -

                    »get speed - motor port« -

                    -

                    The block »get speed motor port - « reads the speed (velocity) of the selected motor. The motor can have a speed from -100 - (rotating backwards) to 100.

                    +
                      +
                    • motor port, choose the one where the motor that you want to program is connected to.
                    • +
                    • number, spped between -100 and 100. 100 is the maximum speed. Negative values lets the motor rotate into the other direction. This value will be internally clipped to be between -100 and 100.
                    • +
                    • rotation or degree. Choose the one which fits best. 1 rotation is the same than 360 degrees.
                    • +
                    • number, rotations or degrees, only positive numbers are allowed.
                    • +
                    +
                    +

                    »get speed motor port«

                    +

                    The block »get speed motor port « reads the speed (velocity) of the selected motor. The motor can have a speed from -100 (rotating backwards) to 100. +

                    Options and Arguments:

                    -
                      -
                    • motor port, choose the port where the motor is connected to.
                    • -

                    +
                      +
                    • motor port, choose the port where the motor is connected to.
                    • +
                    +

                    Return value:

                    -
                      -
                    • number, the current speed of the motor.
                    • +
                        +
                      • number, the current speed of the motor.
                    -
                    -

                    »set motor - port speed«

                    -

                    The block »set motor port ... speed« sets the speed (velocity) of one selected motor to a new - value.

                    +

                    »set motor port speed«

                    +

                    The block »set motor port ... speed« sets the speed (velocity) of one selected motor to a new value.

                    Options and Arguments:

                    -
                      -
                    • motor port, choose the port where the motor is connected to. -
                    • -
                    • number, speed between -100 and 100. Negative values let the motor run - backwards. This value will be internally clipped to be between -100 and 100.
                    • +
                        +
                      • motor port, choose the port where the motor is connected to.
                      • +
                      • number, speed between -100 and 100. Negative values let the motor run backwards. This value will be internally clipped to be between -100 and 100.
                    -
                    -

                    »stop motor - port«

                    -

                    Using the block »stop motor port « switches off one selected motor. You can - decide the motor to run out slowly (float) or to break immediately

                    +

                    »stop motor port« +

                    +

                    Using the block »stop motor port « switches off one selected motor. You can decide the motor to run out slowly (float) or to break immediately +

                    Setting options:

                    -
                      -
                    • motor port, choose the port where the motor is connected - to.
                    • -
                    • float or brake; make your choice.
                    • +
                        +
                      • motor port, choose the port where the motor is connected to.
                      • +
                      • float or brake; make your choice.
                    -
                    -

                    »drive«

                    +

                    »drive«

                    With the »drive« block you can program the direction and also the speed (velocity) of your robot. - Your robot moves until it is stopped or another block specifies new driving parameters. The - driving speed can be set in the field »speed«.

                    + Your robot moves until it is stopped or another block specifies new driving parameters. The driving speed can be set in the field »speed«. +

                    Options and Arguments:

                    -
                      -
                    • direction, forwards or backwards. Choose the direction.
                    • -
                    • number, speed between -100 to 100. 100 is the maximum speed. - Negative values lets the motor rotate into the other direction. This value will be internally - clipped to be between -100 and 100.
                    • -
                    -
                    -
                    -

                    »drive distance«

                    -

                    With the »drive distance« block you can program the direction and the speed of the robot. The speed of - your robot is set in the »speed« parameter. Once the block has been executed the motors stop - automatically.

                    -

                    »drive distance« controls both motors of the robot at the same time, meaning that the settings you make - here apply to both motors of the robot. If the robot's actions don't correspond with the block's - settings when running the program, check the robot configuration settings, especially the wheel diameter - and the track width.

                    +
                      +
                    • direction, forwards or backwards. Choose the direction.
                    • +
                    • + number, speed between -100 to 100. 100 is the maximum speed. Negative values lets the motor rotate into the other direction. This value will be internally clipped to be between -100 and 100. +
                    • +
                    +
                    +

                    »drive distance«

                    +

                    With the »drive distance« block you can program the direction and the speed of the robot. The speed of your robot is set in the »speed« parameter. Once the block has been executed the motors stop automatically.

                    +

                    »drive distance« controls both motors of the robot at the same time, meaning that the settings you make here apply to both motors of the robot. If the robot's actions don't correspond with the block's settings when running the program, check the robot configuration settings, especially the wheel diameter and the track width.

                    Settings and input values:

                    -
                      -
                    • Drive, »forwards« or »backwards«. Select a direction.
                    • -
                    • Number, speed between -100 and 100. If the number is negative, the - motors will rotate backwards. This value will be internally clipped to be between -100 and 100. -
                    • -
                    • Number, the distance to drive in cm.
                    • +
                        +
                      • Drive, »forwards« or »backwards«. Select a direction.
                      • +
                      • Number, speed between -100 and 100. If the number is negative, the motors will rotate backwards. This value will be internally clipped to be between -100 and 100.
                      • +
                      • Number, the distance to drive in cm.
                    -
                    -

                    »stop«

                    +

                    »stop«

                    The »stop« block stops the motors immediately.

                    -

                    Settings: none

                    -
                    -
                    -

                    »turn«

                    -

                    With the »turn« block you set the direction (right/left) which the robot will turn. Your robot turns - until it is stopped or another block is used for driving. You can set the speed in the block parameter - field »speed«.

                    -

                    »turn« controls both motors of the robot at the same time, therefore the robot turns on the spot. If the - EV3 Robot's actions don't correspond with the block's settings when running the program, check the EV3 - robot configuration settings, especially the wheel diameter and the track width.

                    +

                    Settings: none

                    +

                    »turn«

                    +

                    With the »turn« block you set the direction (right/left) which the robot will turn. Your robot turns until it is stopped or another block is used for driving. You can set the speed in the block parameter field »speed«.

                    +

                    »turn« controls both motors of the robot at the same time, therefore the robot turns on the spot. If the EV3 Robot's actions don't correspond with the block's settings when running the program, check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                    Settings and input values:

                    -
                      -
                    • Turn, »right« or »left«. Select the desired direction for - turning.
                    • -
                    • Number, speed between -100 and 100. If the number is negative, the - robot will turn the other way around. This value will be internally clipped to be between -100 and - 100.
                    • -
                    -
                    -
                    -

                    If your robot turns into the wrong direction, then the motors are connected to the wrong ports. - Just swap the ports and your robot will turn into the right way.

                    +
                      +
                    • Turn, »right« or »left«. Select the desired direction for turning.
                    • +
                    • Number, speed between -100 and 100. If the number is negative, the robot will turn the other way around. This value will be internally clipped to be between -100 and 100.
                    • +
                    +
                    +
                    +

                    If your robot turns into the wrong direction, then the motors are connected to the wrong ports. Just swap the ports and your robot will turn into the right way.

                    -
                    -

                    »turn degree«

                    -

                    With the »turn degree« block you program the direction (right/left) that your robot will turn. In - addition to the direction you can also program the »degrees«, allowing you to program how many degrees - your robot should rotate (around its axis). This means that you do a complete rotation by setting a 360 - degree turn..

                    -

                    The »turn degree« block controls both motors of the robot in such a way that the robot turns around its - own axis. If the robot's actions don't correspond with the block's settings when running the program, - check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                    +

                    »turn degree«

                    +

                    With the »turn degree« block you program the direction (right/left) that your robot will turn. In addition to the direction you can also program the »degrees«, allowing you to program how many degrees your robot should rotate (around its axis). This means that you do a complete rotation by setting a 360 degree turn..

                    +

                    The »turn degree« block controls both motors of the robot in such a way that the robot turns around its own axis. If the robot's actions don't correspond with the block's settings when running the program, check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                    Settings and input values:

                    -
                      -
                    • Turn, »right« or »left«. Select the desired direction for - turning.
                    • -
                    • Number, speed between -100 and 100. If the number is negative, the - robot will turn the other way around. This value will be internally clipped to be between -100 and - 100.
                    • -
                    • Number, degrees the robot shall turn. Degree of 360 will perform a - full turn around. Negative numbers are not allowed.
                    • -
                    -
                    -
                    -

                    »steer ... speed - left ... speed right ...«

                    -

                    The block »steer ... speed left ... speed right ...« programs the robot to - drive a curve by setting different speeds for the left and right motor. The robot configuration - influences the radius of the curve depending from wheel distance and wheel diameter. The turning - direction will define the driving direction.

                    -

                    Settings and input values: -

                    -
                      -
                    • Turning direction, »forwards« or »backwards«. Select your - desired moving direction.
                    • -
                    • Number, speed between -100 and 100 for the left motor. If the number - is negative the motor will run backwards. This value will be internally clipped to be between -100 - and 100.
                    • -
                    • Number, speed between -100 and 100 for the left motor. If the number - is negative the motor will run backwards. This value will be internally clipped to be between -100 - and 100.
                    • -

                    -
                    -
                    -

                    - »steer ... speed left ... speed right ... distance ...«

                    -

                    The block »steer ... speed left ... speed right ... distance ...« programs the - robot to drive a curve by setting different speeds for the left and right motor and also a distance - related to the middle between both wheels. The robot configuration influences the radius of the curve - depending from wheel distance and wheel diameter. The turning direction will define the driving - direction.

                    -

                    Settings and input values: -

                    -
                      -
                    • Turning direction, »forwards« or »backwards«. Select your - desired moving direction.
                    • -
                    • Number, speed between -100 and 100 for the left motor. If the number - is negative the motor will run backwards. This value will be internally clipped to be between -100 - and 100.
                    • -
                    • Number, speed between -100 and 100 for the left motor. If the number - is negative the motor will run backwards. This value will be internally clipped to be between -100 - and 100.
                    • -
                    • Number, the distance in cm to be driven.
                    • -

                    -
                    -
                    -

                    »show text«

                    -

                    With the »show text« block you can display text and numbers on the display of your robot. You can also - specify in which column and row the text or numbers should be displayed on the robot screen.

                    +
                      +
                    • Turn, »right« or »left«. Select the desired direction for turning.
                    • +
                    • Number, speed between -100 and 100. If the number is negative, the robot will turn the other way around. This value will be internally clipped to be between -100 and 100.
                    • +
                    • Number, degrees the robot shall turn. Degree of 360 will perform a full turn around. Negative numbers are not allowed.
                    • +
                    +
                    +

                    »steer ... speed left ... speed right ...«

                    +

                    The block »steer ... speed left ... speed right ...« programs the robot to drive a curve by setting different speeds for the left and right motor. The robot configuration influences the radius of the curve depending from wheel distance and wheel diameter. The turning direction will define the driving direction.

                    +

                    Settings and input values: +

                    +
                      +
                    • Turning direction, »forwards« or »backwards«. Select your desired moving direction.
                    • +
                    • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                    • +
                    • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                    • +
                    +
                    +

                    »steer ... speed left ... speed right ... distance ...«

                    +

                    The block »steer ... speed left ... speed right ... distance ...« programs the robot to drive a curve by setting different speeds for the left and right motor and also a distance related to the middle between both wheels. The robot configuration influences the radius of the curve depending from wheel distance and wheel diameter. The turning direction will define the driving direction.

                    +

                    Settings and input values: +

                    +
                      +
                    • Turning direction, »forwards« or »backwards«. Select your desired moving direction.
                    • +
                    • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                    • +
                    • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                    • +
                    • Number, the distance in cm to be driven.
                    • +
                    +
                    +

                    »show text«

                    +

                    With the »show text« block you can display text and numbers on the display of your robot. You can also specify in which column and row the text or numbers should be displayed on the robot screen.

                    The EV3 display contains some rows and columns, counted from 0 in the top left corner.

                    -

                    If there was text on the display prior to the show text block then the former text will be overwritten. -

                    +

                    If there was text on the display prior to the show text block then the former text will be overwritten.

                    Input values:

                    -
                      -
                    • String, input of a text string to be shown in the display.
                    • -
                    • Number, column for the text to start between 0 and 17.
                    • -
                    • Number, row for the text to start between 0 and 7.
                    • +
                        +
                      • String, input of a text string to be shown in the display.
                      • +
                      • Number, column for the text to start between 0 and 17.
                      • +
                      • Number, row for the text to start between 0 and 7.
                    -
                    -

                    »show picture«

                    -

                    With the »show picture« block you can show one of some stored pictures on the EV3 display of your robot. - Avaliable pictures are »glasses«, »eyes open«, »eyes closed«, »flowers«, »tacho«.

                    +

                    »show picture«

                    +

                    With the »show picture« block you can show one of some stored pictures on the EV3 display of your robot. Avaliable pictures are »glasses«, »eyes open«, »eyes closed«, »flowers«, »tacho«.

                    Settings and input values:

                    -
                      -
                    • Picture, select one of the available.
                    • -
                    • Number for x, column, where the picture shall start.
                    • -
                    • Number for y, line, where the picture shall start.
                    • -
                    -
                    -
                    -

                    »clear display«

                    -

                    With the »clear display« block you can delete text and numbers on the display of your robot, therefore - nothing appears on your display.

                    -

                    Settings: none

                    -
                    -
                    -

                    »play frequency«

                    -

                    With the »play frequency« block you can program the frequency (pitch level) and the time (how long the - sound should be played) that a sound is played. The sound is played by the built-in speaker of your LEGO - MINDSTORMS EV3 brick for a defined of time. The frequency setting corresponds directly to the frequency - in Hertz, for example, setting the frequency to 400 corresponds to 400 Hertz. Example: 261 = C.

                    -
                    -
                    -

                    Note that the human ear can perceive frequencies from about 30Hz to about 15,000Hz (15kHz). - This can vary depending on the person and their age.

                    -
                    +
                      +
                    • Picture, select one of the available.
                    • +
                    • Number for x, column, where the picture shall start.
                    • +
                    • Number for y, line, where the picture shall start.
                    • +
                    +
                    +

                    »clear display«

                    +

                    With the »clear display« block you can delete text and numbers on the display of your robot, therefore nothing appears on your display.

                    +

                    Settings: none

                    +

                    »play frequency«

                    +

                    With the »play frequency« block you can program the frequency (pitch level) and the time (how long the sound should be played) that a sound is played. The sound is played by the built-in speaker of your LEGO MINDSTORMS EV3 brick for a defined of time. The frequency setting corresponds directly to the frequency in Hertz, for example, setting the frequency to 400 corresponds to 400 Hertz. Example: 261 = C.

                    +
                    +

                    + Note that the human ear can perceive frequencies from about 30Hz to about 15,000Hz (15kHz). This can vary depending on the person and their age. +

                    Settings:

                    -
                      -
                    • Number, desired frequency in Hz (Hertz) .
                    • -
                    • Number, desired duration in milliseconds (ms).
                    • +
                        +
                      • Number, desired frequency in Hz (Hertz) .
                      • +
                      • Number, desired duration in milliseconds (ms).
                    -
                    -

                    »play note ... «

                    +

                    »play note ... «

                    With this block you can make a robot play a note.

                    Options:

                    -
                      -
                    • Option, choose the duration of the note.
                    • -
                    • Option, choose the note that the robot should play.
                    • -

                    -
                    -
                    -

                    »play file« -

                    +
                      +
                    • Option, choose the duration of the note.
                    • +
                    • Option, choose the note that the robot should play.
                    • +
                    +
                    +

                    »play file« +

                    With the »play file« block your robot plays one of five stored sounds.

                    Settings:

                    -
                      -
                    • Option, choose between one of the following files:
                      1 = - single beep
                      2 = double beep
                      3 = increasing sound of 4 tones
                      4 = decreasing sound of 4 - tones
                      5 = single low tone
                    • +
                        +
                      • Option, choose between one of the following files:
                        1 = single beep
                        2 = double beep
                        3 = increasing sound of 4 tones
                        4 = decreasing sound of 4 tones
                        5 = single low tone +
                    -
                    -

                    »set volume«

                    -

                    With the »set volume« block you can program the sound volume played. The volume ranges from 0 (no sound) - to 100 (full volume). The volume setting remains unchanged until you change it with another »set volume« - block.

                    +

                    »set volume«

                    +

                    With the »set volume« block you can program the sound volume played. The volume ranges from 0 (no sound) to 100 (full volume). The volume setting remains unchanged until you change it with another »set volume« block.

                    Setting:

                    -
                      -
                    • Number, volume for loudness. 0 = no tone, 100 = maximum volume. This - value will be internally clipped to be between 0 and 100.
                    • +
                        +
                      • Number, volume for loudness. 0 = no tone, 100 = maximum volume. This value will be internally clipped to be between 0 and 100.
                    -
                    -

                    »get volume« -

                    +

                    »get volume«

                    With the »get volume« block you can read the currend sound volume level.

                    Return value:

                    -
                      -
                    • Number, currently adjusted volume. 0 = no tone, 100 = maximum volume -
                    • +
                        +
                      • Number, currently adjusted volume. 0 = no tone, 100 = maximum volume
                    -
                    -

                    »set language ... - «

                    -

                    With this block you can control the language of your robot. If you are using C4EV3 as your robot system, - you will need to download additional files for the speech. You can find instructions here.

                    +

                    »set language ... «

                    +

                    With this block you can control the language of your robot. If you are using C4EV3 as your robot system, you will need to download additional files for the speech. You can find instructions + here.

                    Options:

                    -
                      -
                    • Option, choose the language.
                    • -

                    -
                    -
                    -

                    »say text ... «

                    -

                    With this block you can control the voice output of your robot. The robot uses the language you set with - the "Set Language..." block. The default language is German.

                    +
                      +
                    • Option, choose the language.
                    • +
                    +
                    +

                    »say text ... «

                    +

                    With this block you can control the voice output of your robot. The robot uses the language you set with the "Set Language..." block. The default language is German.

                    Input values:

                    -
                      -
                    • String, the text you want your robot to say.
                    • -

                    -
                    -
                    -

                    » say text ... voice speed - ... voice pitch ... «

                    -

                    With this block you can control the voice output of your robot. You can also control your robot's voice - pitch and speaking speed.

                    +
                      +
                    • String, the text you want your robot to say.
                    • +
                    +
                    +

                    » say text ... voice speed ... voice pitch ... «

                    +

                    With this block you can control the voice output of your robot. You can also control your robot's voice pitch and speaking speed.

                    Input values:

                    -
                      -
                    • String, text your want your robot to say.
                    • -
                    • Number, speaking rate in percent, i.e. my number between 1 and 100, - the higher the number, the faster the robot speaks. This value will be internally clipped to be - between 0 and 100.
                    • -
                    • Number, voice pitch of the robot in percent. Number between 1 and - 100, the higher the number, the higher the voice pitch of the robot. This value will be internally - clipped to be between 0 and 100.
                    • -

                    -
                    -
                    -

                    »Brick light«

                    -

                    With the »brick light« block you can program the background light of the EV3 buttons. In addition to - color, you can also turn on and off the EV3 brick light. The EV3 brick light stays on until you - reprogram it. The following colors are available: »green«, »orange« or »red«.

                    +
                      +
                    • String, text your want your robot to say.
                    • +
                    • Number, speaking rate in percent, i.e. my number between 1 and 100, the higher the number, the faster the robot speaks. This value will be internally clipped to be between 0 and 100.
                    • +
                    • Number, voice pitch of the robot in percent. Number between 1 and 100, the higher the number, the higher the voice pitch of the robot. This value will be internally clipped to be between 0 and 100.
                    • +
                    +
                    +

                    »Brick light«

                    +

                    With the »brick light« block you can program the background light of the EV3 buttons. In addition to color, you can also turn on and off the EV3 brick light. The EV3 brick light stays on until you reprogram it. The following colors are available: »green«, »orange« or »red«.

                    Settings:

                    -
                      -
                    • Colour, select a colour.
                    • -
                    • Flash type, »on«, »flashing« or »double flashing«. Select a - flash type for the brick light.
                    • +
                        +
                      • Colour, select a colour.
                      • +
                      • Flash type, »on«, »flashing« or »double flashing«. Select a flash type for the brick light.
                    -
                    -

                    »Brick light off«

                    -

                    With the »brick light off« block you can turn off the brick light.

                    -
                    -
                    -

                    »reset EV3 brick light«

                    +

                    »Brick light off«

                    +

                    With the »brick light off« block you can turn off the brick light.

                    +

                    »reset EV3 brick light«

                    With the »reset EV3 brick light« block you can reset EV3 brick light back to the default settings.

                    -

                    Settings: none

                    -
                    -
                    -

                    »touch sensor«

                    -

                    With the block »touch sensor« you can "tell" another block whether the touch sensor is pressed or not. - This block returns the logical values true = pressed or false = not pressed. This - block can only be used in conjunction with another block which requires a logical value as an input - parameter, for example together with the »if then« block.

                    +

                    Settings: none

                    +

                    »touch sensor«

                    +

                    With the block »touch sensor« you can "tell" another block whether the touch sensor is pressed or not. This block returns the logical values + true = pressed or + false = not pressed. This block can only be used in conjunction with another block which requires a logical value as an input parameter, for example together with the »if then« block. +

                    Settings:

                    -
                      -
                    • Port, select the sensor port where your touch sensor is - connected.
                    • -

                    +
                      +
                    • Port, select the sensor port where your touch sensor is connected.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Boolean value: »true«, if the touch sensor is pressed, otherwise - »false«.
                    • -
                    -
                    -
                    -

                    »get distance/presence« ultrasonic - sensor

                    -

                    With the block »get distance/presence« you "tell" another block the distance the ultrasonic sensor - measures. The distance is transmitted as a number (in cm). In addition, this block can be set to - "presence" in the drop down menu. This setting can check whether another ultrasonic sensor is active. - This setting specifies the logical values true = another ultrasonic sensor is present or - false = no other ultrasonic is present back.

                    -
                    -
                    -

                    Ultrasound, which was not sent by the own ultrasonic sensor, can result in erroneous - measurements.

                    -
                    +
                      +
                    • Boolean value: »true«, if the touch sensor is pressed, otherwise »false«.
                    • +
                    +
                    +

                    »get distance/presence« ultrasonic sensor

                    +

                    With the block »get distance/presence« you "tell" another block the distance the ultrasonic sensor measures. The distance is transmitted as a number (in cm). In addition, this block can be set to "presence" in the drop down menu. This setting can check whether another ultrasonic sensor is active. This setting specifies the logical values + true = another ultrasonic sensor is present or false = no other ultrasonic is present back.

                    +
                    +
                    +

                    Ultrasound, which was not sent by the own ultrasonic sensor, can result in erroneous measurements.

                    Settings:

                    -
                      -
                    • Presence or distance; »presence« means that the presence of - another ultrasonic sensor will be checked. »Distance« means that the ultrasonic sensor measures the - distance to the next obstacle.
                    • -
                    • Port, select the sensor port where your ultrasonic sensor is - connected.
                    • -

                    +
                      +
                    • Presence or distance; »presence« means that the presence of another ultrasonic sensor will be checked. »Distance« means that the ultrasonic sensor measures the distance to the next obstacle.
                    • +
                    • Port, select the sensor port where your ultrasonic sensor is connected.
                    • +
                    +

                    Return value:

                    -
                      -
                    • -

                      If »presence« was selected, a boolean value: »true«, if another ultrasonic sensor was detected, - otherwise »false«.

                      -

                      If »distance« was selected, a number, indicating the distance between the ultrasonic sensor and - an obstacle in cm.

                      -
                    • +
                        +
                      • +

                        If »presence« was selected, a boolean value: »true«, if another ultrasonic sensor was detected, otherwise »false«.

                        +

                        If »distance« was selected, a number, indicating the distance between the ultrasonic sensor and an obstacle in cm.

                    -
                    -

                    »get colour light sensor / colour - sensor Port ... «

                    -

                    With the block »get colour« you can "tell" another block which color the light sensor measures. The color - is transmitted as type »colour« . In addition, this block provides within the drop down menu the - settings »light«, »RGB« and »ambient light«. These three additional settings transmit all the same type - »number«. The numerical values are between 0 (black) to 100(white). With these various settings this - block can be configured according to the specific requirements.

                    -

                    In mode »colour« the light sensor emits light and detects the basic colour under the sensor. Values for - basic colours are BLACK, WHITE, RED, GREEN, BLUE, YELLOW, BROWN. The colour GREY means, that the - registered colour doesn't match any of the predefined ones.

                    -

                    In mode »light« the light sensor emits light with its red LED and measures the light intensity of the - reflected light on a scale of 0 to 100.

                    -

                    In the mode »RGB« the light sensor emits red, green and blue light and measures the reflected light - corresponding to the components red, green and blue on a scale from 0 to 100 for each color. A list of - three numbers is returned.

                    -

                    In mode »ambient light« the same scale (0-100) as in the mode light is used. Here, the ambient light - inciding the sensor is measured.

                    +

                    »get colour light sensor / colour sensor Port ... «

                    +

                    With the block »get colour« you can "tell" another block which color the light sensor measures. The color is transmitted as type »colour« . In addition, this block provides within the drop down menu the settings »light«, »RGB« and »ambient light«. These three additional settings transmit all the same type »number«. The numerical values are between 0 (black) to 100(white). With these various settings this block can be configured according to the specific requirements.

                    +

                    In mode »colour« the light sensor emits light and detects the basic colour under the sensor. Values for basic colours are BLACK, WHITE, RED, GREEN, BLUE, YELLOW, BROWN. The colour GREY means, that the registered colour doesn't match any of the predefined ones.

                    +

                    In mode »light« the light sensor emits light with its red LED and measures the light intensity of the reflected light on a scale of 0 to 100.

                    +

                    In the mode »RGB« the light sensor emits red, green and blue light and measures the reflected light corresponding to the components red, green and blue on a scale from 0 to 100 for each color. A list of three numbers is returned.

                    +

                    In mode »ambient light« the same scale (0-100) as in the mode light is used. Here, the ambient light inciding the sensor is measured.

                    Settings:

                    -
                      -
                    • Mode of measurement, select the mode of measurement.
                    • -
                    • Port, select the sensor port where your light/colour sensor - is connected.
                    • -

                    +
                      +
                    • Mode of measurement, select the mode of measurement.
                    • +
                    • Port, select the sensor port where your light/colour sensor is connected.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Value, depending on the selected ode of measurement.
                    • -
                    -
                    -
                    -

                    »give distance/presence« infrared sensor -

                    -

                    With the block »give distance/presence« for infrared sensor you can "tell" another block which distance - the infrared sensor measures.

                    -

                    Working in the "distance" mode the distance is transmitted as a number with values between 0 (very close) - and 100 (far away). In this mode the sensor detects objects in a distance up to 70 cm.

                    -

                    In addition, this block can be set to "presence" mode in the drop down menu. With this setting you can - check whether an infrared sender/beacon is active. This setting returns a list of 4 pairs of values, - i.e. 8 numbers. Each pair of values indicates an orientation value and a - distance value of the infrared sender. The first pair of values is related to channel 1 - of the sender, the second pair to channel 2 etc. Orientation values are between -25 and +25. The value - of 0 indikates that the infrared signal comes directly from the front. Values out of the -25/+25 range - represent angles of 110° to the left or right, respectively. The distance value of the sender is a - relative value between 0 (very close) and 100 (far away). Infrared signals may be detected from a - maximum distance of 200 cm.

                    -

                    Example: Result of an infrared sensor measure is [ 0 0 -10 40 0 0 0 0 ]. This means that - on channel 2 the direction of the sender/beacon gives a value of -10, which is about 60 degrees to the - left, while the distance value of 35 has been found, which represents nearly 70 cm.

                    -
                    -
                    -

                    An exact measurement of distances in cm is not possible with the infrared sonsor.

                    -
                    +
                      +
                    • Value, depending on the selected ode of measurement.
                    • +
                    +
                    +

                    »give distance/presence« infrared sensor

                    +

                    With the block »give distance/presence« for infrared sensor you can "tell" another block which distance the infrared sensor measures.

                    +

                    Working in the "distance" mode the distance is transmitted as a number with values between 0 (very close) and 100 (far away). In this mode the sensor detects objects in a distance up to 70 cm.

                    +

                    In addition, this block can be set to "presence" mode in the drop down menu. With this setting you can check whether an infrared sender/beacon is active. This setting returns a list of 4 pairs of values, i.e. 8 numbers. Each pair of values indicates an + orientation value and a + distance value of the infrared sender. The first pair of values is related to channel 1 of the sender, the second pair to channel 2 etc. Orientation values are between -25 and +25. The value of 0 indikates that the infrared signal comes directly from the front. Values out of the -25/+25 range represent angles of 110° to the left or right, respectively. The distance value of the sender is a relative value between 0 (very close) and 100 (far away). Infrared signals may be detected from a maximum distance of 200 cm. +

                    +

                    + Example: Result of an infrared sensor measure is [ 0 0 -10 40 0 0 0 0 ]. This means that on channel 2 the direction of the sender/beacon gives a value of -10, which is about 60 degrees to the left, while the distance value of 35 has been found, which represents nearly 70 cm. +

                    +
                    +

                    An exact measurement of distances in cm is not possible with the infrared sonsor.

                    Settins:

                    -
                      -
                    • »Distance« or »presence«. Select the measuring mode for the - infrared sensor.
                    • -
                    • Port, select the sensor port where your infrared sensor is - connected.
                    • -

                    +
                      +
                    • »Distance« or »presence«. Select the measuring mode for the infrared sensor.
                    • +
                    • Port, select the sensor port where your infrared sensor is connected.
                    • +
                    +

                    Return value:

                    -
                      -
                    • -

                      »Distance« mode: number indicating the distance in cm, maximalum distance is 70 cm.

                      -

                      »Presence« mode: list of numbers.

                      -
                    • +
                        +
                      • »Distance« mode: number indicating the distance in cm, maximalum distance is 70 cm.

                        +

                        »Presence« mode: list of numbers.

                    -
                    -

                    »reset encoder«

                    +

                    »reset encoder«

                    With the block »reset encoder« the internal sensor (motor encoder) of a motor can be reset to 0 .

                    Setting:

                    -
                      -
                    • Port, select the sensor port where your motor is connected. -
                    • +
                        +
                      • Port, select the sensor port where your motor is connected.
                    -
                    -

                    »get rotation/degree« rotation sensor

                    -

                    With the block »get rotation/degree« you can "tell" another block the rotation of the motor. The distance - is transmitted as a number (in cm). In addition, this block can be set to »degree« in the drop down - menu. With this setting the number of degrees is transmitted instead of cm. This block can only be used - in conjunction with another block, which requires a number as an input parameter.

                    +

                    »get rotation/degree« rotation sensor

                    +

                    With the block »get rotation/degree« you can "tell" another block the rotation of the motor. The distance is transmitted as a number (in cm). In addition, this block can be set to »degree« in the drop down menu. With this setting the number of degrees is transmitted instead of cm. This block can only be used in conjunction with another block, which requires a number as an input parameter.

                    Settings:

                    -
                      -
                    • Measurement mode, »rotation«, »degree« or»distance«. Select - your mode of measurement.
                    • -
                    • Encoder port, select the sensor port where your motor/encoder - is connected.
                    • -

                    +
                      +
                    • Measurement mode, »rotation«, »degree« or»distance«. Select your mode of measurement.
                    • +
                    • Encoder port, select the sensor port where your motor/encoder is connected.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Number, that indicates according to the measurement mode the number - of rotations, the degrees, or the distance in cm.
                    • +
                        +
                      • Number, that indicates according to the measurement mode the number of rotations, the degrees, or the distance in cm.
                    -
                    -

                    »button« EV3 buttons

                    -

                    With the block »button« you can "tell" another block whether the selected button is pressed or not. - Available buttons are »enter« / »up« / »down« / »left« / »right« / »escape« / »any«. This block returns - logical values true = pressed or false = not pressed.

                    +

                    »button« EV3 buttons

                    +

                    With the block »button« you can "tell" another block whether the selected button is pressed or not. Available buttons are »enter« / »up« / »down« / »left« / »right« / »escape« / »any«. This block returns logical values + true = pressed or false = not pressed.

                    Settings:

                    -
                      -
                    • Button, select the button you want to check.
                    • -

                    +
                      +
                    • Button, select the button you want to check.
                    • +
                    +

                    Return value

                    -
                      -
                    • Boolean value, »true«, if the selected button has been pressed, - »false« otherwise.
                    • +
                        +
                      • Boolean value, »true«, if the selected button has been pressed, »false« otherwise.
                    -
                    -

                    »reset gyroscope«

                    +

                    »reset gyroscope«

                    With the block »reset gyroscope« the gyroscope (also called gyro sensor) can be reset to 0.

                    Settings:

                    -
                      -
                    • Port, select the sensor port where your gyroscope is - connected.
                    • -
                    -
                    -
                    -

                    »get angle/rate« gyroscope

                    -

                    With the block »get angle/rate gyroscope« you can "tell" another block the angle in which the gyro sensor - was rotated around its vertical axis. The angle is transmitted as a number. Alternatively the return - value can be set to »rate« in the drop down menu. This setting allows to send the rotation rate of the - sensor in "degrees per second" instead of the angle.

                    -
                    -
                    -

                    In mode »rate« a maximum of 440 degrees/second can be captured. In mode »angle« the accuracy of - the gyro sensor is +/- 3 degrees.

                    -
                    +
                      +
                    • Port, select the sensor port where your gyroscope is connected.
                    • +
                    +
                    +

                    »get angle/rate« gyroscope

                    +

                    With the block »get angle/rate gyroscope« you can "tell" another block the angle in which the gyro sensor was rotated around its vertical axis. The angle is transmitted as a number. Alternatively the return value can be set to »rate« in the drop down menu. This setting allows to send the rotation rate of the sensor in "degrees per second" instead of the angle.

                    +
                    +
                    +

                    In mode »rate« a maximum of 440 degrees/second can be captured. In mode »angle« the accuracy of the gyro sensor is +/- 3 degrees.

                    Settings:

                    -
                      -
                    • Measurement mode: »angle« oder »rate«
                    • -
                    • Port, select the sensor port where your gyroscope is - connected.
                    • -

                    +
                      +
                    • Measurement mode: »angle« oder »rate«
                    • +
                    • Port, select the sensor port where your gyroscope is connected.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Number, depending from the mode of measurement an angle in degrees - or the rate of turns per second.
                    • +
                        +
                      • Number, depending from the mode of measurement an angle in degrees or the rate of turns per second.
                    -
                    -

                    »get value« timer

                    -

                    With the block »get value« you can "tell" another block the current time in milliseconds of the internal - timer. 5 timers are available.

                    +

                    »get value« timer

                    +

                    With the block »get value« you can "tell" another block the current time in milliseconds of the internal timer. 5 timers are available.

                    Setting:

                    -
                      -
                    • Option, select the timer you want to read.
                    • -

                    +
                      +
                    • Option, select the timer you want to read.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Number, milliseconds since program start or since the last reset of - the selected timer.
                    • +
                        +
                      • Number, milliseconds since program start or since the last reset of the selected timer.
                    -
                    -

                    »reset timer«

                    +

                    »reset timer«

                    With the block »reset timer« the internal timer (1 to 5) can be reset to the value 0.

                    Setting:

                    -
                      -
                    • Timer number, select the timer you want to reset.
                    • +
                        +
                      • Timer number, select the timer you want to reset.
                    -
                    -

                    »get - sound % sound sensor port ... «

                    +

                    »get sound % sound sensor port ... «

                    This block allows you to query the volume that the sound sensor measures.

                    Options:

                    -
                      -
                    • Option. choose the Port the sensor is connected to.
                    • -

                    +
                      +
                    • Option. choose the Port the sensor is connected to.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Number, the volume of the robots surroundings in percent.
                    • -

                    -
                    -
                    -

                    - »calibrate HT compass sensor port... «

                    -

                    Use this block to recalibrate a connected HT compass sensor. This sensor measures the earth's magnetic - field and calculates a current orientation of your robot from its course. In order for this calculation - to be as accurate as possible, you must recalibrate the compass sensor at the beginning of your program - to reduce disturbing influences such as motors.

                    +
                      +
                    • Number, the volume of the robots surroundings in percent.
                    • +
                    +
                    +

                    »calibrate HT compass sensor port... « +

                    +

                    Use this block to recalibrate a connected HT compass sensor. This sensor measures the earth's magnetic field and calculates a current orientation of your robot from its course. In order for this calculation to be as accurate as possible, you must recalibrate the compass sensor at the beginning of your program to reduce disturbing influences such as motors.

                    Options:

                    -
                      -
                    • Option, choose the port your sensor is connected to.
                    • -

                    -
                    -
                    -

                    »get - ... HT compass sensor port ... «

                    -

                    With this block you can request different values of the compass sensor. The compass sensor can measure - the angle and compass orientation of your robot. However, you should recalibrate the sensor before using - it in your program.

                    +
                      +
                    • Option, choose the port your sensor is connected to.
                    • +
                    +
                    +

                    »get ... HT compass sensor port ... «

                    +

                    With this block you can request different values of the compass sensor. The compass sensor can measure the angle and compass orientation of your robot. However, you should recalibrate the sensor before using it in your program.

                    Options:

                    -
                      -
                    • Option, select the property you want to measure. Either the - angle of your robot or the compass orientation.
                    • -
                    • Option, choose the port your sensor is connected to.
                    • +
                        +
                      • Option, select the property you want to measure. Either the angle of your robot or the compass orientation.
                      • +
                      • Option, choose the port your sensor is connected to.
                      -

                      Return value: +

                      Return value:

                      -
                        -
                      • Number, either the angle of your robot or the compass orientation. - Number between 0 and 359.
                      • +
                          +
                        • Number, either the angle of your robot or the compass orientation. Number between 0 and 359.
                    -
                    -

                    »get - ... HT infrared sensor port ... «

                    -

                    With this block you can poll the HT infrared sensor of your robot. This sensor sends and receives - infrared signals and can calculate the distance to an object.

                    +

                    »get ... HT infrared sensor port ... «

                    +

                    With this block you can poll the HT infrared sensor of your robot. This sensor sends and receives infrared signals and can calculate the distance to an object.

                    Options:

                    -
                      -
                    • Option, choose between a modulated or an unmodulated signal. -
                    • -
                    • Option, choose the port your sensor is connected to.
                    • -

                    +
                      +
                    • Option, choose between a modulated or an unmodulated signal.
                    • +
                    • Option, choose the port your sensor is connected to.
                    • +
                    +

                    Return value:

                    -
                      -
                    • Number, distance to the nearest object in centimeters.
                    • -

                    -
                    -
                    -

                    »get - ... HT colour sensor port ... «

                    -

                    With this block you can query the HT color sensor of your robot. This sensor uses several light emitting - diodes to illuminate the background and then measures which color is reflected how much. From these - values you can calculate colors and RGB values. The sensor can also measure the brightness of the - background and the environment.

                    +
                      +
                    • Number, distance to the nearest object in centimeters.
                    • +
                    +
                    +

                    »get ... HT colour sensor port ... «

                    +

                    With this block you can query the HT color sensor of your robot. This sensor uses several light emitting diodes to illuminate the background and then measures which color is reflected how much. From these values you can calculate colors and RGB values. The sensor can also measure the brightness of the background and the environment.

                    Options:

                    -
                      -
                    • Option, select which property you want to measure. You have - the choice between color, light, ambient light and RGB splitting.
                    • -
                    • Option, choose the port your sensor is connected to.
                    • -

                    +
                      +
                    • Option, select which property you want to measure. You have the choice between color, light, ambient light and RGB splitting.
                    • +
                    • Option, choose the port your sensor is connected to.
                    • +
                    +

                    Return value:

                    -
                      -
                    • -

                      Colour, the colour of the underground.

                      +
                        +
                      • Colour, the colour of the underground.

                        Number, the brightness of the underground or surroundings.

                        -

                        List of numbers, splitting the color of the background into red, green and blue.

                        -
                      • -

                      -
                    -
                    -

                    »if do«

                    -

                    With the block »if do« you can selectively trigger actions to be executed by your robot. The »if do« - block therefore requires a logical value as an input parameter, the condition. Only if the condition of - the »if« statement is true, the inserted block will be executed. In a nested »if do« block, if a further - distinction was added, the first »if« condition is queried. If it is not fulfilled (condition = false), - the second »else if« condition will be checked. Also this second condition requires a logical value as - an input parameter.

                    -

                    The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces - the block.

                    +

                    List of numbers, splitting the color of the background into red, green and blue.

                    +
                  +
                  +

                  »if do«

                  +

                  With the block »if do« you can selectively trigger actions to be executed by your robot. The »if do« block therefore requires a logical value as an input parameter, the condition. Only if the condition of the »if« statement is true, the inserted block will be executed. In a nested »if do« block, if a further distinction was added, the first »if« condition is queried. If it is not fulfilled (condition = false), the second »else if« condition will be checked. Also this second condition requires a logical value as an input parameter.

                  +

                  The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                  Settings and input values:

                  -
                    -
                  • Insert an additional condition.
                  • -
                  • Delete the last condition.
                  • -
                  • Boolean value, »true« or »false«.
                  • -
                  • Blocks that will be executed
                  • -
                  -
                  -
                  -

                  »if do else«

                  -

                  With the block »if do else« you can selectively trigger actions which are executed by your robot. The »if - do then« block therefore requires a logical value as an input parameter. If the condition in »if« is - true the inserted block will be executed, otherwise (condition is not fulfilled = false) the block - connected to the »else« statement will be executed. In a nested »if do else« block with further - distinctions added, the first »if« condition is queried. If it is not true, the second condition »else - if« is checked. Also the second condition requires a logical value as an input parameter. Only when both - conditions are not true, the block which is inserted at the »else« statement will be executed.

                  -

                  The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces - the block.

                  +
                    +
                  • Insert an additional condition.
                  • +
                  • Delete the last condition.
                  • +
                  • Boolean value, »true« or »false«.
                  • +
                  • Blocks that will be executed
                  • +
                  +
                  +

                  »if do else«

                  +

                  With the block »if do else« you can selectively trigger actions which are executed by your robot. The »if do then« block therefore requires a logical value as an input parameter. If the condition in »if« is true the inserted block will be executed, otherwise (condition is not fulfilled = false) the block connected to the »else« statement will be executed. In a nested »if do else« block with further distinctions added, the first »if« condition is queried. If it is not true, the second condition »else if« is checked. Also the second condition requires a logical value as an input parameter. Only when both conditions are not true, the block which is inserted at the »else« statement will be executed.

                  +

                  The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                  Settings:

                  -
                    -
                  • Insert an additional if-do-else condition.
                  • -
                  • Delete the last if-do-else condition.
                  • -
                  • Boolean value, »true« or »false«.
                  • -
                  • Do blocks that will be executed if the according condition evaluates - to »true«.
                  • -
                  • Else blocks that will be executed if the according condition - evaluates to »false«.
                  • -
                  -
                  -
                  -

                  »repeat indefinitely«

                  -

                  With the block »repeat indefinitely« you can endlessly run the blocks on your robot. All blocks which are - within the »repeat indefinitely« block will be executed endlessly. The blocks are applied sequentially - from top to bottom. Once the last block has been executed, the program repeats with the first block - again. Therefore, this block is also called »loop«.

                  +
                    +
                  • Insert an additional if-do-else condition.
                  • +
                  • Delete the last if-do-else condition.
                  • +
                  • Boolean value, »true« or »false«.
                  • +
                  • Do blocks that will be executed if the according condition evaluates to »true«.
                  • +
                  • Else blocks that will be executed if the according condition evaluates to »false«.
                  • +
                  +
                  +

                  »repeat indefinitely«

                  +

                  With the block »repeat indefinitely« you can endlessly run the blocks on your robot. All blocks which are within the »repeat indefinitely« block will be executed endlessly. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                  Input:

                  -
                    -
                  • Blocks to be repeated indefinitely.
                  • -

                  -
                  -
                  -

                  »repeat n times«

                  -

                  With the block »repeat« you can run other block as many times as you like. All blocks in the »repeat« - block will be executed as often as defined in the entry field. The blocks are applied sequentially from - top to bottom. Once the last block has been executed, the program repeats with the first block again. - Therefore, this block is also called »loop«.

                  -
                  -
                  -

                  Only integer values can be entered.

                  -
                  +
                    +
                  • Blocks to be repeated indefinitely.
                  • +
                  +
                  +

                  »repeat n times«

                  +

                  With the block »repeat« you can run other block as many times as you like. All blocks in the »repeat« block will be executed as often as defined in the entry field. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                  +
                  +

                  Only integer values can be entered.

                  Settings and input:

                  -
                    -
                  • Number that indicates how often the contained blocks will be - repeated.
                  • -
                  • Blocks to be repeated as often as defined.
                  • -

                  -
                  -
                  -

                  »wait«

                  -

                  With the block »wait« you can "pause" your program at the point where you inserted the »wait« block. Your - program will then remain for the specified duration at this point. After the specified time the next - block will be executed. For example you can display text in the screen of your robot for exactly the - time you specified in the »wait« block.

                  +
                    +
                  • Number that indicates how often the contained blocks will be repeated.
                  • +
                  • Blocks to be repeated as often as defined.
                  • +
                  +
                  +

                  »wait«

                  +

                  With the block »wait« you can "pause" your program at the point where you inserted the »wait« block. Your program will then remain for the specified duration at this point. After the specified time the next block will be executed. For example you can display text in the screen of your robot for exactly the time you specified in the »wait« block.

                  Settings and input values:

                  -
                    -
                  • Number, waiting time in milliseconds.
                  • +
                      +
                    • Number, waiting time in milliseconds.
                  -
                  -

                  »wait until ...«

                  -

                  With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. - Your program then waits until the condition is true. The »wait until« block you can extended by click on - "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is - true.

                  +

                  »wait until ...«

                  +

                  With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                  Settings:

                  -
                    -
                  • Add a new condition.
                  • -
                  • Delete the last condition.
                  • -
                  • Boolean value, »true« or »false«.
                  • +
                      +
                    • Add a new condition.
                    • +
                    • Delete the last condition.
                    • +
                    • Boolean value, »true« or »false«.
                  -
                  -

                  »wait until ... «

                  -

                  With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. - Your program then waits until the condition is true. The »wait until« block you can extended by click on - "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is - true.

                  +

                  »wait until ... «

                  +

                  With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                  Settings:

                  -
                    -
                  • Add a new condition.
                  • -
                  • Delete the last condition.
                  • -
                  • Boolean value, »true« or »false«.
                  • +
                      +
                    • Add a new condition.
                    • +
                    • Delete the last condition.
                    • +
                    • Boolean value, »true« or »false«.
                  -
                  -

                  »break out/continue - with next iteration of loop«

                  -

                  With the block »break out/continue with next iteration of loop« a loop can be terminated ahead of - schedule. As soon as the block is entered within a sequence of blocks, all further blocks up to the end - of the loop will be ignored.

                  +

                  »break out/continue with next iteration of loop«

                  +

                  With the block »break out/continue with next iteration of loop« a loop can be terminated ahead of schedule. As soon as the block is entered within a sequence of blocks, all further blocks up to the end of the loop will be ignored.

                  Settings:

                  -
                    -
                  • Type of breaking behavior, »break out« or »continue with next - iteration«.
                  • +
                      +
                    • Type of breaking behavior, »break out« or »continue with next iteration«.
                  -
                  -

                  »count with from to«

                  -

                  With the block »count with from to« you can run other block as many times as you like. All blocks in the - »count with from to« block will be executed as long as the counting is in progress. The blocks are - applied sequentially from top to bottom. Once the last block has been executed, the program repeats with - the first block again if the counting is in progress. The last parameter declares the step width for - counting.

                  +

                  »count with from to«

                  +

                  With the block »count with from to« you can run other block as many times as you like. All blocks in the »count with from to« block will be executed as long as the counting is in progress. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the counting is in progress. The last parameter declares the step width for counting.

                  Settings:

                  -
                    -
                  • Variable, name of free choice; numbers of the counter will be delivered one - after the other to the variable.
                  • -
                  • Number, initial value of the counter.
                  • -
                  • Number, final value of the counter. As the counter exceeds this value - the loop ends.
                  • -
                  • Number, defining the increment. The variable value will increase by - this amount after every loop cycle.
                  • -
                  • Blocks that will be executed in every loop cycle.
                  • -
                  -
                  -
                  -

                  »for each item in list«

                  -

                  With the block »for each item in list« all list items will successively be bound to a variable. The - variable can be used within the loop. With each loop cycle the next item of the list will be bound until - all list elements have been processed.

                  +
                    +
                  • Variable, name of free choice; numbers of the counter will be delivered one after the other to the variable.
                  • +
                  • Number, initial value of the counter.
                  • +
                  • Number, final value of the counter. As the counter exceeds this value the loop ends.
                  • +
                  • Number, defining the increment. The variable value will increase by this amount after every loop cycle.
                  • +
                  • Blocks that will be executed in every loop cycle.
                  • +
                  +
                  +

                  »for each item in list« +

                  +

                  With the block »for each item in list« all list items will successively be bound to a variable. The variable can be used within the loop. With each loop cycle the next item of the list will be bound until all list elements have been processed.

                  Settings and input value:

                  -
                    -
                  • Type of list elements, »Number«, »String«, »Boolean«, - »Colour«, »Connection«
                  • -
                  • Variable, name of free choice; list elements will be delivered one after the - other to the variable.
                  • -
                  • List that contains elements of the desired type. If the list elements - are not of the correct type then the list will not fit to the input slot.
                  • -
                  • Blocks which will be executed as often as there are elements in the - list.
                  • -
                  -
                  -
                  -

                  »repeat while/until«

                  -

                  With the block »repeat while/until« you can run other block as many times as you like. All blocks in the - »repeat while/until« block will be executed as long as the condition in the entry field is true. The - blocks are applied sequentially from top to bottom. Once the last block has been executed, the program - repeats with the first block again if the condition is still true. Therefore, this block is also called - »conditional loop«.

                  +
                    +
                  • Type of list elements, »Number«, »String«, »Boolean«, »Colour«, »Connection«
                  • +
                  • Variable, name of free choice; list elements will be delivered one after the other to the variable.
                  • +
                  • List that contains elements of the desired type. If the list elements are not of the correct type then the list will not fit to the input slot.
                  • +
                  • Blocks which will be executed as often as there are elements in the list.
                  • +
                  +
                  +

                  »repeat while/until«

                  +

                  With the block »repeat while/until« you can run other block as many times as you like. All blocks in the »repeat while/until« block will be executed as long as the condition in the entry field is true. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the condition is still true. Therefore, this block is also called »conditional loop«.

                  Settings and input values:

                  -
                    -
                  • Option, »while« or »until«, defining the type of the - conditional repetition.
                  • -
                  • Boolean value, »true« or »false«.
                  • -
                  • Blocks that will be repeated while/until the condition evaluates to - »true«.
                  • +
                      +
                    • Option, »while« or »until«, defining the type of the conditional repetition.
                    • +
                    • Boolean value, »true« or »false«.
                    • +
                    • Blocks that will be repeated while/until the condition evaluates to »true«.
                  -
                  -

                  »comparison«

                  -

                  With the block »comparison« you can compare different parameters of the same type (number, color, logical - value, text). This block can only be used in conjunction with another block which requires a logical - value as an input parameter.

                  +

                  »comparison«

                  +

                  With the block »comparison« you can compare different parameters of the same type (number, color, logical value, text). This block can only be used in conjunction with another block which requires a logical value as an input parameter.

                  Settings and input values:

                  -
                    -
                  • Value for the left hand side.
                  • -
                  • Comparison, select one of =, ≠, <, ≤, >, ≥
                  • -
                  • Value for the right hand side.
                  • +
                      +
                    • Value for the left hand side.
                    • +
                    • Comparison, select one of =, ≠, <, ≤, >, ≥
                    • +
                    • Value for the right hand side.
                    -

                    Return value: +

                    Return value:

                    -
                      -
                    • Boolean value, »true« or »false«.
                    • +
                        +
                      • Boolean value, »true« or »false«.
                  -
                  -

                  »and/or«

                  -

                  With the block »and/or« you can interrelate logical values with each other. The »and/or« block with the - setting "and" will be true only if both logical parameters are "'true"'. If the block has the setting - »or« it is sufficient if one of the two parameters is "true", so that the »and/or« block will return - true.

                  +

                  »and/or«

                  +

                  With the block »and/or« you can interrelate logical values with each other. The »and/or« block with the setting "and" will be true only if both logical parameters are "'true"'. If the block has the setting »or« it is sufficient if one of the two parameters is "true", so that the »and/or« block will return true.

                  Settings:

                  -
                    -
                  • Boolean value on the left hand side.
                  • -
                  • Boolean function, »and« or »or«.
                  • -
                  • Boolean value on the right hand side.
                  • -

                  +
                    +
                  • Boolean value on the left hand side.
                  • +
                  • Boolean function, »and« or »or«.
                  • +
                  • Boolean value on the right hand side.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Boolean value »true« or»false«.
                  • +
                      +
                    • Boolean value »true« or»false«.
                  -
                  -

                  »true/false«

                  -

                  With the block »true/false« you can return either the logical value »true« or »false« to another block. -

                  +

                  »true/false«

                  +

                  With the block »true/false« you can return either the logical value »true« or »false« to another block.

                  Settings:

                  -
                    -
                  • Boolean value, make your choice.
                  • -

                  +
                    +
                  • Boolean value, make your choice.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Boolean value, »true« or »false«.
                  • +
                      +
                    • Boolean value, »true« or »false«.
                  -
                  -

                  »not«

                  +

                  »not«

                  Using the »not« lets you invert a logical value and pass this value to another block.

                  Input value:

                  -
                    -
                  • Boolean value, to be inverted.
                  • -

                  +
                    +
                  • Boolean value, to be inverted.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Boolean value, »true« or »false«; result of inverting.
                  • +
                      +
                    • Boolean value, »true« or »false«; result of inverting.
                  -
                  -

                  »test«

                  +

                  »test«

                  Using the »test« block will perform a test and returns a value which depends on the test result.

                  Input values:

                  -
                    -
                  • Boolean value for the test; if no input value is given "true" will be - assumed.
                  • -
                  • Arbitrary value, evaluated by a block.
                  • -
                  • Arbitrary value, evaluated by a block.
                  • -

                  +
                    +
                  • Boolean value for the test; if no input value is given "true" will be assumed.
                  • +
                  • Arbitrary value, evaluated by a block.
                  • +
                  • Arbitrary value, evaluated by a block.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Value of arbitrary type.
                  • +
                      +
                    • Value of arbitrary type.
                  -
                  -

                  »null«

                  -

                  The block »null« is a place holder for an input value that is not yet - specified. If for instance a new connection variable has been created and is not yet bound, the initial - value of this connection will be set to »null«.

                  -

                  Return value:: +

                  »null«

                  +

                  The block »null« is a place holder for an input value that is not yet specified. If for instance a new connection variable has been created and is not yet bound, the initial value of this connection will be set to »null«.

                  +

                  Return value::

                  -
                    -
                  • Boolean value, »null«.
                  • +
                      +
                    • Boolean value, »null«.
                  -
                  -

                  »parameter«

                  +

                  »parameter«

                  With the block »parameter« you can send numbers to another block.

                  Settings and input values:

                  -
                    -
                  • Number
                  • +
                      +
                    • Number
                    -

                    Return value: +

                    Return value:

                    -
                      -
                    • Number
                    • -

                    -
                  -
                  -

                  »calculating«

                  -

                  With the block »calculating« you can sum up, subtract, multiply, and divide numbers. This block can only - be used in conjunction with another block which requires a number as an input parameter.

                  +
                    +
                  • Number
                  • +
                  +
                  +

                  »calculating«

                  +

                  With the block »calculating« you can sum up, subtract, multiply, and divide numbers. This block can only be used in conjunction with another block which requires a number as an input parameter.

                  Settings and input values:

                  -
                    -
                  • Number, first number on the left you want to calculate with.
                  • -
                  • Option, mathematical operator, choose one of +, −, ×, ÷, ^. -
                  • -
                  • Number, second number on the right you want to calculate with.
                  • -

                  +
                    +
                  • Number, first number on the left you want to calculate with.
                  • +
                  • Option, mathematical operator, choose one of +, −, ×, ÷, ^.
                  • +
                  • Number, second number on the right you want to calculate with.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, result of the calculation.
                  • +
                      +
                    • Number, result of the calculation.
                  -
                  -

                  »mathematical function«

                  -

                  With the block »mathematical function« some elementary mathematical functions may be calculated. - Available functions are »square root«, »absolute«, »invert« (multiply by -1), »ln« (natural logarithm), - »log10« (decadic logarithm), »e^« (exponential function), »10^« (base 10 exponent)

                  +

                  »mathematical function«

                  +

                  With the block »mathematical function« some elementary mathematical functions may be calculated. Available functions are »square root«, »absolute«, »invert« (multiply by -1), »ln« (natural logarithm), »log10« (decadic logarithm), »e^« (exponential function), »10^« (base 10 exponent)

                  Settings and input value:

                  -
                    -
                  • Option, mathematical function, choose one.
                  • -
                  • Number to apply the function to.
                  • -

                  +
                    +
                  • Option, mathematical function, choose one.
                  • +
                  • Number to apply the function to.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, result of the function application.
                  • +
                      +
                    • Number, result of the function application.
                  -
                  -

                  »trigonometric functions«

                  -

                  With the block »trigonometric function« sine, cosine, tangent and their respective revers functions can - be calculated. Input values are expected in radian measure(see hint above).

                  +

                  »trigonometric functions«

                  +

                  With the block »trigonometric function« sine, cosine, tangent and their respective revers functions can be calculated. Input values are expected in radian measure(see hint above).

                  Settings and input value:

                  -
                    -
                  • Option, trigonometric function to choose from.
                  • -
                  • Number, in radian measure.
                  • -

                  +
                    +
                  • Option, trigonometric function to choose from.
                  • +
                  • Number, in radian measure.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, result of the trigonometric calculation.
                  • +
                      +
                    • Number, result of the trigonometric calculation.
                  -
                  -

                  »constant« -

                  -

                  With the »constant« block some mathematical constant values are available: »π« (3,1415...), »e« - (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«

                  +

                  »constant«

                  +

                  With the »constant« block some mathematical constant values are available: »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«

                  Settings:

                  -
                    -
                  • Option, mathematical constants, choose one.
                  • -

                  +
                    +
                  • Option, mathematical constants, choose one.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, value of the selected mathematical constant. Infinity will - return »infinity«.
                  • +
                      +
                    • Number, value of the selected mathematical constant. Infinity will return »infinity«.
                  -
                  -

                  »number property«

                  -

                  With the block »number property« you check whether a given number has a specific property: »even«, »odd«, - »prime«, »whole«, »positive«, »negative«, »divisible by«.

                  +

                  »number property«

                  +

                  With the block »number property« you check whether a given number has a specific property: »even«, »odd«, »prime«, »whole«, »positive«, »negative«, »divisible by«.

                  Settings and input values:

                  -
                    -
                  • Number, the property of this input value will be checked.
                  • -
                  • Option, number property, choose one.
                  • -
                  • Number, evaluated from a block. The second input value is only - required for the property »divisible by«.
                  • -

                  +
                    +
                  • Number, the property of this input value will be checked.
                  • +
                  • Option, number property, choose one.
                  • +
                  • Number, evaluated from a block. The second input value is only required for the property »divisible by«.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Boolean value, »true« or »false«, depending on the selected - property.
                  • +
                      +
                    • Boolean value, »true« or »false«, depending on the selected property.
                  -
                  -

                  »change by ... «

                  +

                  »change by ... « +

                  The block »change by ... « increments a numerical variable by a defined value.

                  Settings and input values:

                  -
                    -
                  • Variable name, which value is to be changed. Choose the variable to - be changed.
                  • -
                  • Number, given by a block.
                  • +
                      +
                    • Variable name, which value is to be changed. Choose the variable to be changed.
                    • +
                    • Number, given by a block.
                  -
                  -

                  »round«

                  -

                  With the block »round« values may be rounded. Rounding will set the decimal places to 0. It depends on - the value of the decimal places whether the block rounds up or down. You may also decide by settings to - always round up or down.

                  +

                  »round«

                  +

                  With the block »round« values may be rounded. Rounding will set the decimal places to 0. It depends on the value of the decimal places whether the block rounds up or down. You may also decide by settings to always round up or down.

                  Settings and input value:

                  -
                    -
                  • Type of rounding, choose a round mode.
                  • -
                  • Number you want to round.
                  • -

                  +
                    +
                  • Type of rounding, choose a round mode.
                  • +
                  • Number you want to round.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, rounded whole number, according to the round mode.
                  • +
                      +
                    • Number, rounded whole number, according to the round mode.
                  -
                  -

                  »list evaluation«

                  +

                  »list evaluation«

                  With the block »list evaluation« you may analyse a list.

                  Modes for list evaluation:

                  -
                    -
                  • sum - addition of all list values
                  • -
                  • min - smallest value in the list
                  • -
                  • max - largest value in the list
                  • -
                  • average - average of all list values
                  • -
                  • median - median of all list values
                  • -
                  • standard deviation - standard deviation of all list values -
                  • -
                  • random item - one list value randomly selected
                  • -

                  +
                    +
                  • sum - addition of all list values
                  • +
                  • min - smallest value in the list
                  • +
                  • max - largest value in the list
                  • +
                  • average - average of all list values
                  • +
                  • median - median of all list values
                  • +
                  • standard deviation - standard deviation of all list values
                  • +
                  • random item - one list value randomly selected
                  • +
                  +

                  Settings and input value:

                  -
                    -
                  • Mode of list evaluation, choose one mode.
                  • -
                  • List of numbers
                  • -

                  +
                    +
                  • Mode of list evaluation, choose one mode.
                  • +
                  • List of numbers
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, calculated according to the selected list evaluation mode. -
                  • +
                      +
                    • Number, calculated according to the selected list evaluation mode.
                  -
                  -

                  »remainder of«

                  +

                  »remainder of«

                  The block »remainder of« calculates a divison and returns the remainder of the division.

                  Input values:

                  -
                    -
                  • Number to be divided (dividend).
                  • -
                  • Number, divisor.
                  • -

                  +
                    +
                  • Number to be divided (dividend).
                  • +
                  • Number, divisor.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, rest of the division.
                  • +
                      +
                    • Number, rest of the division.
                  -
                  -

                  »constrain« -

                  +

                  »constrain«

                  The block »constrain« ensures that given boundaries will not be exceeded.

                  Input values:

                  -
                    -
                  • Number, that will be constrained.
                  • -
                  • Number, lower bound.
                  • -
                  • Number, upper bound.
                  • -

                  +
                    +
                  • Number, that will be constrained.
                  • +
                  • Number, lower bound.
                  • +
                  • Number, upper bound.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, constrained by the lower and the upper bound.
                  • +
                      +
                    • Number, constrained by the lower and the upper bound.
                  -
                  -

                  »random integer«

                  +

                  »random integer«

                  With the block »random integer« you may generate random integer numbers within defined limits

                  Input values:

                  -
                    -
                  • Number, lower bound
                  • -
                  • Number, upper bound
                  • -

                  +
                    +
                  • Number, lower bound
                  • +
                  • Number, upper bound
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, a whole random number from within the upper and lower - bounds.
                  • +
                      +
                    • Number, a whole random number from within the upper and lower bounds.
                  -
                  -

                  »random fraction«

                  +

                  »random fraction«

                  With the block »random fraction« a random value between 0.0 and 1.0 is calculated.

                  Return value:

                  -
                    -
                  • Number, positive random value between 0.0 and 1.0.
                  • +
                      +
                    • Number, positive random value between 0.0 and 1.0.
                  -
                  -

                  »cast ... to String«

                  -

                  This block converts a number into a string containing that number. So for example the number 123 would be - converted into the string »123«.

                  +

                  »cast ... to String«

                  +

                  This block converts a number into a string containing that number. So for example the number 123 would be converted into the string »123«.


                  Options and input values:

                  -
                    -
                  • Number, the number that you want to convert into a String containing - this number.
                  • -

                  +
                    +
                  • Number, the number that you want to convert into a String containing this number.
                  • +
                  +

                  Return value:

                  -
                    -
                  • String, the string containing the selected number.
                  • -

                  -
                  -
                  -

                  »cast ... to Char«

                  -

                  This block converts a single number to the corresponding ASCII letter. If there is no associated ASCII - character for this number, an empty string is passed on. So for example the number 97 gets converted - into the lower-case letter »a«.

                  +
                    +
                  • String, the string containing the selected number.
                  • +
                  +
                  +

                  »cast ... to Char«

                  +

                  This block converts a single number to the corresponding ASCII letter. If there is no associated ASCII character for this number, an empty string is passed on. So for example the number 97 gets converted into the lower-case letter »a«.

                  Options and input values:

                  -
                    -
                  • Number, the ASCII code that you want to convert into a character. -
                  • -

                  +
                    +
                  • Number, the ASCII code that you want to convert into a character.
                  • +
                  +

                  Return values:

                  -
                    -
                  • String, a single character that corresponds to the selected ASCII - number.
                  • -

                  +
                    +
                  • String, a single character that corresponds to the selected ASCII number.
                  • +
                  +
                  +

                  »make one NN step«

                  +

                  With this block you perform a calculation step of your neural network. Before you use this block, you should set the values of the input neurons with the block "set value input neuron ...". The input values are given into the network and the values of the output neurons are calculated using the network from the tab »Neural Network«. A detailed description of the neural network can be found + here. You can query the values of the output neurons after the calculation with the block »gett value output neuron ...«. +

                  +

                  »set value input neuron ... «

                  +

                  With this block you can set the value of an input neuron. You can use either variables, numbers, sensor data or mathematical operations as input values, e.g. the sum of two numbers.

                  +

                  Options and input values: +

                  +
                    +
                  • Neuron, select the input neuron whose value you want to set.
                  • +
                  • Number, the number that is too be used as input value.
                  • +
                  +
                  +

                  »get value output neuron ... «

                  +

                  With this block you can query the value of an output neuron. You should only use this block after the block »make one NN step«, otherwise no value has been calculated for the output neurons and the value is defaulted to 0.

                  +

                  Options: +

                  +
                    +
                  • Neuron, select the output neuron whose value you want to query.
                  • +
                  +

                  Return value: +

                  +
                    +
                  • Number, the value of the selected output neuron.
                  • +
                  +
                  +

                  »set weight from ... to ... « +

                  +

                  With this block you can set the weight of a connection between two neurons that are directly connected.

                  +

                  Options and input values: +

                  +
                    +
                  • Neuron, the first neuron from which the connection originates.
                  • +
                  • Neuron, the second neuron to which the connections leads.
                  • +
                  • Number, the value to which the weight is to be set.
                  • +
                  +
                  +

                  »set bias ... «

                  +

                  With this block you can set the bias of a neuron.

                  +

                  Options and input values: +

                  +
                    +
                  • Neuron, the neuron whose bias you want to set.
                  • +
                  • Number, the value to which the bias should be set.
                  • +
                  -
                  -

                  »Text«

                  +

                  »get weight from ... to ... « +

                  +

                  With this block you can query the current value of the weight of a connection between two neurons that are directly connected.

                  +

                  Options: +

                  +
                    +
                  • Neuron, the first neuron from which the connection originates.
                  • +
                  • Neuron, the second neuron to which the connections leads.
                  • +
                  +

                  Return value: +

                  +
                    +
                  • Number, the value of the weight between the two neurons.
                  • +
                  +
                  +

                  »get bias ... «

                  +

                  With this block you can query the bias of a neuron.

                  +

                  Options: +

                  +
                    +
                  • Neuron, the neuron whose bias you want to query.
                  • +
                  +

                  Return value: +

                  +
                    +
                  • Number, the value of the bias of the selected neuron.
                  • +
                  +
                  +

                  »Text«

                  The simple »Text« block creates a little text.

                  Input value:

                  -
                    -
                  • String, containing arbitrary characters.
                  • -

                  +
                    +
                  • String, containing arbitrary characters.
                  • +
                  +

                  Return value:

                  -
                    -
                  • String, containing arbitrary characters.
                  • +
                      +
                    • String, containing arbitrary characters.
                  -
                  -

                  »comment«

                  -

                  Document your program with this block, so that you and others will find it easier to understand your - program later. This comment will also be visible in the generated source code.

                  +

                  »comment«

                  +

                  Document your program with this block, so that you and others will find it easier to understand your program later. This comment will also be visible in the generated source code.

                  Input value:

                  -
                    -
                  • String, containing arbitrary characters.
                  • +
                      +
                    • String, containing arbitrary characters.
                  -
                  -

                  »create Text«

                  -

                  The »create text« block compiles a text from different input parameters. Using the + sign will insert - further input slots. All input parameters will be connected one after the other. Essentially the »create - text« block converts an arbitrary input value into a text string.

                  +

                  »create Text«

                  +

                  The »create text« block compiles a text from different input parameters. Using the + sign will insert further input slots. All input parameters will be connected one after the other. Essentially the »create text« block converts an arbitrary input value into a text string.

                  Input values:

                  -
                    -
                  • Arbitrary values [numbers, text, logical values, colours)
                  • -

                  +
                    +
                  • Arbitrary values [numbers, text, logical values, colours)
                  • +
                  +

                  Return value:

                  -
                    -
                  • String, containing arbitrary characters, compiled sequentially from - all input values.
                  • +
                      +
                    • String, containing arbitrary characters, compiled sequentially from all input values.
                  -
                  -

                  »append Text«

                  -

                  The »append text« block will append some string to a given string, for instance to extend a message with - a signature.

                  +

                  »eval .. as ...« +

                  +

                  The »value ... as ...« block evaluates an expression entered as text (”expression") and returns the result. The expression can be “sqrt(a^2 + b^2)”, for example. It is evaluated to a number. The block is very powerful: almost all expressions that can be generated with Blockly blocks can also be written as text.

                  +

                  How the expression can be constructed is described on a separate wiki page. Please note: there are general expressions that are valid for every robot and specific parts that are only valid for the selected robot. This is necessary because each robot supports its own sensors and actuators. This is described in detail on the wiki page. +

                  +

                  The user must specify in a drop-down menu which type is expected for the result. Which types are possible depends on the selected robot.

                  +

                  Input value: +

                  +
                    +
                  • Text, enter an expression.
                  • +
                  + Options: +
                    +
                  • Type, the desired return type of the expression, e.g. a number, a logical value or a string. +
                  • +
                  +
                  +

                  »append Text«

                  +

                  The »append text« block will append some string to a given string, for instance to extend a message with a signature.

                  Input values:

                  -
                    -
                  • String, to which some other text will be appended.
                  • -
                  • String, that shall be appended.
                  • -
                  -
                  -
                  -

                  »cast ... to Number«

                  -

                  This block converts a string into a number if this is possible. So if a string contains only numbers, - this block can convert the string into a number. If the block does not contain numbers, this block will - pass »NaN« when used in th Open Roberta Lab simulation and may have a different behavior depending on the programming language of the robot you are - currently using. If the string starts with numbers but - then contains other characters that are not numbers, this block will pass only the numbers and stop - as soon as the first character is in the string. So, as an example, this block makes the number 52 - out of the string »52abcd«.

                  +
                    +
                  • String, to which some other text will be appended.
                  • +
                  • String, that shall be appended.
                  • +
                  +
                  +

                  »cast ... to Number«

                  +

                  This block converts a string into a number if this is possible. So if a string contains only numbers, this block can convert the string into a number. If the block does not contain numbers, this block will pass »NaN« when used in th Open Roberta Lab simulation and may have a different + behavior depending on the programming language of the robot you are currently using. If the string starts with numbers but then contains other characters that are not numbers, this block will pass only the numbers and stop as soon as the first character is in the string. So, as an example, this block makes the number 52 out of the string »52abcd«. +

                  Options and input values:

                  -
                    -
                  • String, the string you want to convert into a number.
                  • -

                  +
                    +
                  • String, the string you want to convert into a number.
                  • +
                  +

                  Return values:

                  -
                    -
                  • Number, the converted number.
                  • -

                  -
                  -
                  -

                  »cast ... at index ... to Number« -

                  -

                  This block converts a letter or a character from a character string into the corresponding ASCII number. - Each character has an associated number in the ASCII table. For example, a lower-case »a« is converted - into the number 97.

                  +
                    +
                  • Number, the converted number.
                  • +
                  +
                  +

                  »cast ... at index ... to Number«

                  +

                  This block converts a letter or a character from a character string into the corresponding ASCII number. Each character has an associated number in the ASCII table. For example, a lower-case »a« is converted into the number 97.

                  Options and input values:

                  -
                    -
                  • String, from which a single character is selected.
                  • -
                  • Number, the digit of the character to be converted. Note that the - numbering starts at 0.
                  • -

                  +
                    +
                  • String, from which a single character is selected.
                  • +
                  • Number, the digit of the character to be converted. Note that the numbering starts at 0.
                  • +
                  +

                  Return values:

                  -
                    -
                  • Number, the ASCII number of to selected character. Number between 0 - and 255.
                  • -

                  -
                  -
                  -

                  »create list«

                  -

                  The block »empty list« creates a list with no content.The block »list« generates a list with some - predefined values.

                  +
                    +
                  • Number, the ASCII number of to selected character. Number between 0 and 255.
                  • +
                  +
                  +

                  »create list«

                  +

                  The block »empty list« creates a list with no content.The block »list« generates a list with some predefined values.

                  This block may only be used in the context of a »set variable« block.

                  Using »+« or »−« enables you to extend or reduce the list at its end.

                  Settings and input values:

                  -
                    -
                  • List type, »Number«, »String«, »Boolean«, »Colour«, - »Connection«.
                  • -
                  • Create further list element, append to the end of the list.
                  • -
                  • Delete list element at the end of the list.
                  • -
                  • Values, according to the list type. Here the input of initial values - is possible.
                  • -

                  +
                    +
                  • List type, »Number«, »String«, »Boolean«, »Colour«, »Connection«.
                  • +
                  • Create further list element, append to the end of the list.
                  • +
                  • Delete list element at the end of the list.
                  • +
                  • Values, according to the list type. Here the input of initial values is possible.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Empty list or list, containing elements of the specified list type. -
                  • +
                      +
                    • Empty list or list, containing elements of the specified list type.
                  -
                  -

                  »repeat element in list«

                  +

                  »repeat element in list«

                  The »repeat element in list« block generates a list of equal elements.

                  Settings and input values:

                  -
                    -
                  • List type, »Number«, »Boolean«, »String«, »Colour« or - »Connection«.
                  • -
                  • List element, according to the selected list type. This value - will be repeated in the list.
                  • -
                  • Number, defining how often the list element will be repeated.
                  • -

                  +
                    +
                  • List type, »Number«, »Boolean«, »String«, »Colour« or »Connection«.
                  • +
                  • List element, according to the selected list type. This value will be repeated in the list.
                  • +
                  • Number, defining how often the list element will be repeated.
                  • +
                  +

                  Return value:

                  -
                    -
                  • List of the specified list type, containing the specified number of - equal elements.
                  • +
                      +
                    • List of the specified list type, containing the specified number of equal elements.
                  -
                  -

                  »length of«

                  -

                  The »length of« block returns a value which is the length of the list given as parameter. An empty list - has a length of 0.

                  +

                  »length of«

                  +

                  The »length of« block returns a value which is the length of the list given as parameter. An empty list has a length of 0.

                  Input value:

                  -
                    -
                  • List, evaluated by an appropriate block.
                  • -

                  +
                    +
                  • List, evaluated by an appropriate block.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Number, number of list elements.
                  • -

                  -
                  -
                  -

                  »is empty?«

                  +
                    +
                  • Number, number of list elements.
                  • +
                  +
                  +

                  »is empty?«

                  A list given as parameter will be checked whether it is empty.

                  Input value:

                  -
                    -
                  • List, evaluated by an appropriate block.
                  • -

                  +
                    +
                  • List, evaluated by an appropriate block.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Boolean, either »true« or »false«.
                  • +
                      +
                    • Boolean, either »true« or »false«.
                  -
                  -

                  »find in list«

                  -

                  A list is searched for an item. If the item is in the list, the list position will be returned. If the - item is not in the list the result is -1.

                  +

                  »find in list«

                  +

                  A list is searched for an item. If the item is in the list, the list position will be returned. If the item is not in the list the result is -1.

                  Settings and input values:

                  -
                    -
                  • List, that will be examined.
                  • -
                  • Position of the occurrence, either »first« or »last«.
                  • -
                  • Value, list item to be found.
                  • -

                  +
                    +
                  • List, that will be examined.
                  • +
                  • Position of the occurrence, either »first« or »last«.
                  • +
                  • Value, list item to be found.
                  • +
                  +

                  Return value:

                  -
                    -
                  • -

                    Number, indicating the position where the element was found in the list.

                    -

                    Note: Counting list positions will start with 0.

                    -
                  • +
                      +
                    • Number, indicating the position where the element was found in the list.

                      +

                      Note: Counting list positions will start with 0.

                  -
                  -

                  »get list element«

                  +

                  »get list element«

                  This block accesses an item of a list. Depending on the settings this item may be altered.

                  -

                  A list is given as parameter. Then a drop-down-list specifies what will happen to the list item under - consideration.

                  +

                  A list is given as parameter. Then a drop-down-list specifies what will happen to the list item under consideration.

                  Settings:

                  -
                    -
                  • List, that is under consideration.
                  • -
                  • Option, action for the element found: »get« reads the element - and leaves it unchanged, »get and remove« reads the element and removes it from the list, »remove« - just removes the element from the list.
                  • -
                  • Option, position of the element found: »#«, »# from end«, - »first«, »last« or »random« .
                  • -
                  • -

                    Number, indicating the list position. This input value is not required if »first«, »last« or - »random« was selected as position.

                    -

                    Note: Counting of list positions starts with 0.

                    -
                  • -

                  +
                    +
                  • List, that is under consideration.
                  • +
                  • Option, action for the element found: »get« reads the element and leaves it unchanged, »get and remove« reads the element and removes it from the list, »remove« just removes the element from the list.
                  • +
                  • Option, position of the element found: »#«, »# from end«, »first«, »last« or »random« .
                  • +
                  • +

                    Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected as position.

                    +

                    Note: Counting of list positions starts with 0.

                  • +
                  +

                  Return value:

                  -
                    -
                  • -

                    List element that has been found at the specified list position; »undefined«, if the list - position does not exist.

                    -

                    With selection of »remove« there is no return value; instead the list will be shortened by this - list element.

                    -
                  • +
                      +
                    • +

                      List element that has been found at the specified list position; »undefined«, if the list position does not exist.

                      +

                      With selection of »remove« there is no return value; instead the list will be shortened by this list element.

                  -
                  -

                  »set list element«

                  +

                  »set list element«

                  In a list given as input parameter one specified element will be replaced by a new value.

                  Settings and input values:

                  -
                    -
                  • List, that will be changed.
                  • -
                  • Option, action for the element found; »set« changes the - element, »insert at« inserts a new element into the list.
                  • -
                  • Option, position for the element to be changed: »#«, »# from - end«, »first«, »last« or »random« .
                  • -
                  • Number, indicating the list position. This input value is not - required if »first«, »last« or »random« was selected.
                    Note: Counting of list positions begins - with 0.
                  • -
                  • List element, that will be set or inserted at the selected list - position.
                  • -
                  -
                  -
                  -

                  »get sublist«

                  -

                  From a list given as parameter a sublist will be created. The sublist contains all those elements that - match the further specifications of the block.

                  +
                    +
                  • List, that will be changed.
                  • +
                  • Option, action for the element found; »set« changes the element, »insert at« inserts a new element into the list.
                  • +
                  • Option, position for the element to be changed: »#«, »# from end«, »first«, »last« or »random« .
                  • +
                  • Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected.
                    Note: Counting of list positions begins with 0. +
                  • +
                  • List element, that will be set or inserted at the selected list position.
                  • +
                  +
                  +

                  »get sublist«

                  +

                  From a list given as parameter a sublist will be created. The sublist contains all those elements that match the further specifications of the block.

                  Settings and input values:

                  -
                    -
                  • List to be examined.
                  • -
                  • Position, start of the sublist: »#«, »# from end« or »first«. -
                  • -
                  • -

                    Number, indicating the list position. This input value is not required if »first« has been - selected.

                    -

                    Note: Counting of list positions starts with 0.

                    -
                  • -
                  • Position, end of the sublist: »#«, »# from end« or »last«.
                  • -
                  • -

                    Number, indicating the list position. This input value is not required if »last« has been - selected.

                    -

                    Note: Counting of list positions starts with 0.

                    -
                  • -

                  +
                    +
                  • List to be examined.
                  • +
                  • Position, start of the sublist: »#«, »# from end« or »first«.
                  • +
                  • Number, indicating the list position. This input value is not required if »first« has been selected.

                    +

                    Note: Counting of list positions starts with 0.

                  • +
                  • Position, end of the sublist: »#«, »# from end« or »last«.
                  • +
                  • Number, indicating the list position. This input value is not required if »last« has been selected.

                    +

                    Note: Counting of list positions starts with 0.

                  • +
                  +

                  Return value:

                  -
                    -
                  • List, a sublist of the same type as the given list.
                  • +
                      +
                    • List, a sublist of the same type as the given list.
                  -
                  -

                  »Colour picker «

                  +

                  »Colour picker «

                  With this block you can choose from a pool of predefined colours for your robot.

                  options:

                  -
                    -
                  • option, choose the colour you want to use.
                  • -

                  +
                    +
                  • option, choose the colour you want to use.
                  • +
                  +

                  Return value:

                  -
                    -
                  • colour, your selected colour.
                  • -

                  -
                  -
                  -

                  »Colour picker «

                  +
                    +
                  • colour, your selected colour.
                  • +
                  +
                  +

                  »Colour picker «

                  With this block you can choose from a pool of predefined colours for your robot.

                  options:

                  -
                    -
                  • option, choose the colour you want to use.
                  • -

                  -

                  Return value: +

                    +
                  • option, choose the colour you want to use.
                  • +
                  +
                  +

                  Return value:

                  -
                    -
                  • colour, your selected colour.
                  • -

                  -
                  -
                  -

                  »Colour picker «

                  +
                    +
                  • colour, your selected colour.
                  • +
                  +
                  +

                  »Colour picker «

                  With this block you can choose from a pool of predefined colours for your robot.

                  options:

                  -
                    -
                  • option, choose the colour you want to use.
                  • -

                  +
                    +
                  • option, choose the colour you want to use.
                  • +
                  +

                  Return value:

                  -
                    -
                  • colour, your selected colour.
                  • -

                  -
                  -
                  -

                  »Colour with red ... - green ... blue ... white ... «

                  -

                  With this block you can create your own colour by mixing red, green and blue.

                  -

                  Input values: -

                  -
                    -
                  • number, the red part in your color. Value between 0 and 255.
                  • -
                  • number, the green part in your color. Value between 0 and 255.
                  • -
                  • number, the blue part in your color. Value between 0 and 255.
                  • -
                  • number, the brightness of your color. Value between 0 and 255.
                  • -

                  -
                  -
                  -

                  »Colour with red ... green ... - blue ... «

                  +
                    +
                  • colour, your selected colour.
                  • +
                  +
                  +

                  »Colour with red ... green ... blue ... « +

                  With this block you can create your own colour by mixing red, green and blue.

                  Input values:

                  -
                    -
                  • number, the red part in your color. Value between 0 and 255.
                  • -
                  • number, the green part in your color. Value between 0 and 255.
                  • -
                  • number, the blue part in your color. Value between 0 and 255.
                  • -

                  -
                  -
                  -

                  »Colour with red ... green - ... blue ... «

                  -

                  With this block you can create your own colour by mixing red, green and blue.

                  +
                    +
                  • number, the red part in your color. Value between 0 and 255.
                  • +
                  • number, the green part in your color. Value between 0 and 255.
                  • +
                  • number, the blue part in your color. Value between 0 and 255.
                  • +
                  +
                  +

                  »Hue Tolerance«

                  +

                  Robots often do not recognise the exact colour tone precisely. The lighting conditions can cause a colour to be perceived as too dark or too light. This block allows you to set a tolerance range for the colour to be detected, so that every shade of red, for example, is detected as red.

                  Input values:

                  -
                    -
                  • number, the red part in your color. Value between 0 and 255.
                  • -
                  • number, the green part in your color. Value between 0 and 255.
                  • -
                  • number, the blue part in your color. Value between 0 and 255.
                  • -

                  +
                    +
                  • Colour, colour received from a sensor.
                  • +
                  • Colour, defined colour for comparison with sensor data.
                  • +
                  • Number, tolerance value for colour detection.
                  • +
                  + Return value: +
                    +
                  • Truth value, ‘true’ if the colour is within the tolerance range, ‘false’ if the colour deviates too much.
                  • +
                  -
                  -

                  »set variable«

                  -

                  Using the block »set variable« will assign a value to a variable. Depending on the variable type the - value may be assigned by an input connector.

                  +

                  »set variable«

                  +

                  Using the block »set variable« will assign a value to a variable. Depending on the variable type the value may be assigned by an input connector.

                  Settings and input value:

                  -
                    -
                  • Variable, which value is to be changed.
                  • -
                  • Value, new value for the variable, evaluated from a suitable block. -
                  • +
                      +
                    • Variable, which value is to be changed.
                    • +
                    • Value, new value for the variable, evaluated from a suitable block.
                  -
                  -

                  »get variable«

                  -

                  Using the block »get variable« returns the value of a variable to another block.The type of the output - parameter is equal to the type that has been assigned to the variable in the »start« block.

                  +

                  »get variable«

                  +

                  Using the block »get variable« returns the value of a variable to another block.The type of the output parameter is equal to the type that has been assigned to the variable in the »start« block.

                  Settings:

                  -
                    -
                  • Variable, that will be read. The value will not be changed by - reading.
                  • -

                  +
                    +
                  • Variable, that will be read. The value will not be changed by reading.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Value, stored in the variable.
                  • -

                  -
                  -
                  -

                  »Function - blocks with/without input parameters and no return statement«

                  -

                  In a function block with/without input parameter and without return parameter a sequence of program - statements will be condensed. The input parameters will be determined by the local variables of the - function block. Local variables may be generated by using the »+« sign of the function block. Local - variables will not be initialized.

                  +
                    +
                  • Value, stored in the variable.
                  • +
                  +
                  +

                  »Function blocks with/without input parameters and no return statement«

                  +

                  In a function block with/without input parameter and without return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized.

                  If a function block contains an if-block the function may be terminated before reaching it's end.

                  -

                  The function block is available in the »Functions« category immediately after its definition. Using - function blocks improves the readability of complex programs.

                  +

                  The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                  Settings:

                  -
                    -
                  • Function name, no special characters and white spaces allowed.
                  • -
                  • Generate new local variables, that will be assigned with the function call. -
                  • -
                  • Delete the associated local variable.
                  • -

                  -
                  -
                  +
                    +
                  • Function name, no special characters and white spaces allowed.
                  • +
                  • Generate new local variables, that will be assigned with the function call.
                  • +
                  • Delete the associated local variable.
                  • +
                  +
                  +
                  +
                    -
                  • -

                    The name of a function block has to start with a lower case letter. Special characters - are not allowed in a function block name.

                    +
                  • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.

                  • -

                    If the function block defines input parameters (local variables), all the parameter slots - have to be occupied when calling the function.

                    +

                    If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.

                  -
                  -

                  »Function - blocks with/without input parameters with return statements«

                  -

                  In a function block with/without input parameter and with return parameter a sequence of program - statements will be condensed. The input parameters will be determined by the local variables of the - function block. Local variables may be generated by using the »+« sign of the function block. Local - variables will not be initialized. After running through all the blocks of the function a value will be - returned.

                  -

                  If a function block contains an if-block the function may be terminated before reaching it's end. An - alternative value may be returned by the if-block.

                  -

                  The function block is available in the »Functions« category immediately after its definition. Using - function blocks improves the readability of complex programs.

                  +

                  »Function blocks with/without input parameters with return statements«

                  +

                  In a function block with/without input parameter and with return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized. After running through all the blocks of the function a value will be returned.

                  +

                  If a function block contains an if-block the function may be terminated before reaching it's end. An alternative value may be returned by the if-block.

                  +

                  The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                  Settings:

                  -
                    -
                  • Function name, no special characters and white spaces allowed.
                  • -
                  • Generate new local variables, that will be assigned with the function call. -
                  • -
                  • Delete the associated local variable.
                  • -
                  • Data type for the return value; choose one data type.
                  • -
                  • Block, that returns a value of the defined data type.
                  • -

                  +
                    +
                  • Function name, no special characters and white spaces allowed.
                  • +
                  • Generate new local variables, that will be assigned with the function call.
                  • +
                  • Delete the associated local variable.
                  • +
                  • Data type for the return value; choose one data type.
                  • +
                  • Block, that returns a value of the defined data type.
                  • +
                  +

                  Return value:

                  -
                    -
                  • Value of the defined data type, evaluated in an appropriate block. -
                  • -

                  -
                  -
                  +
                    +
                  • Value of the defined data type, evaluated in an appropriate block.
                  • +
                  +
                  +
                  +
                    -
                  • The name of a function block has to start with a lower case letter. Special characters are - not allowed in a function block name.
                  • -
                  • If the function block defines input parameters (local variables), all the parameter slots - have to be occupied when calling the function.
                  • +
                  • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.
                  • +
                  • If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.
                  -
                  -

                  »if block to be used within a function«

                  -

                  The if statement within a function is of special importance. As the function sequence meets an if - statement the validity of the condition will be checked.

                  -

                  If statement within a function with - return value:

                  +

                  »if block to be used within a function«

                  +

                  The if statement within a function is of special importance. As the function sequence meets an if statement the validity of the condition will be checked.

                  +

                  If statement within a function with return value:

                    -
                  • If the condition evaluates to »true« the rest of the function will be ignored and the function - terminates. The second input value of the if statement will be returned. A possibly defined return - value of the function will be ignored. The return value data type is determined by the return data - type of the function definition.
                  • -
                  • If the condition evaluates to »false« the sequence of the function blocks will be continued. The - return value of the function will be returned after reaching the end of the function.
                  • -
                  -

                  If statement within a function - with no return value:

                  +
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates. The second input value of the if statement will be returned. A possibly defined return value of the function will be ignored. The return value data type is determined by the return data type of the function definition.
                • +
                • If the condition evaluates to »false« the sequence of the function blocks will be continued. The return value of the function will be returned after reaching the end of the function.
                • +
                +

                If statement within a function with no return value:

                  -
                • An if statement within a function without return value has just the if statement as input parameter. -
                • -
                • If the condition evaluates to »true« the rest of the function will be ignored and the function - terminates.
                • +
                • An if statement within a function without return value has just the if statement as input parameter.
                • +
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates.
                • If the condition evaluates to »false« the sequence of the function blocks will be continued.

                Settings and input values:

                -
                  -
                • Boolean value, possibly evaluated by a condition.
                • -
                • Value of the specified data type.
                • -

                +
                  +
                • Boolean value, possibly evaluated by a condition.
                • +
                • Value of the specified data type.
                • +
                +

                Return value:

                -
                  -
                • Value of the specified data type.
                • -


                -
                -
                -

                »function call without return value «

                +
                  +
                • Value of the specified data type.
                • +
                +

                +

                »function call without return value «

                With this block you can call a previous defined function in your program.

                Input values:

                -
                  -
                • element, depending of the required input value of the function.
                • +
                    +
                  • element, depending of the required input value of the function.
                -
                -

                »function call with - return value «

                +

                »function call with return value «

                With this block you can call a previous defined function in your program.

                Input values:

                -
                  -
                • element, depending on the required input value of the function.
                • +
                    +
                  • element, depending on the required input value of the function.
                  -

                  Return value: +

                  Return value:

                  -
                    -
                  • element, depending on the return value of the function.
                  • +
                      +
                    • element, depending on the return value of the function.
                -
                -

                Connect to robot name

                -

                A message interchange connection is initiated by an EV3 robot, like a telephone call that is initiated by - the caller. You need to know the name of the communication partner.

                -

                The connection between two EV3 robots is stored in a global variable of type "connection". As long as - this global variable is valid the message connection is available.

                +

                Connect to robot name

                +

                A message interchange connection is initiated by an EV3 robot, like a telephone call that is initiated by the caller. You need to know the name of the communication partner.

                +

                The connection between two EV3 robots is stored in a global variable of type "connection". As long as this global variable is valid the message connection is available.

                Step 1: Create a global variable of type "connection".

                Step 2: Enter the name of an EV3 robot that is partner of the message exchange.

                -

                The connection variable of the communication partner will automatically be initiated by using the expert - block "wait for connection" (see below). The connection variable will be initiated when the calling EV3 - robot has established the connection by using the block "connect to robot name".

                +

                The connection variable of the communication partner will automatically be initiated by using the expert block "wait for connection" (see below). The connection variable will be initiated when the calling EV3 robot has established the connection by using the block "connect to robot name".

                Input value:

                -
                  -
                • String, name of a robot to which a connection shall be started.
                • -

                +
                  +
                • String, name of a robot to which a connection shall be started.
                • +
                +

                Return value:

                -
                  -
                • Connection object, bound to a global variable.
                • -

                -
                -
                -

                Data to send via connection

                -

                A text message will be transferred using a global connection variable. The text message will be entered - in a text block. To give the connection information to the EV3 robot the value of the global connection - variable will be read.

                -
                -
                -

                Currently only strings can be sent via bluetooth.

                -
                +
                  +
                • Connection object, bound to a global variable.
                • +
                +
                +

                Data to send via connection

                +

                A text message will be transferred using a global connection variable. The text message will be entered in a text block. To give the connection information to the EV3 robot the value of the global connection variable will be read.

                +
                +

                Currently only strings can be sent via bluetooth.

                Settings:

                -
                  -
                • Message data type, »String«.
                • -
                • String, message to be sent.
                • -
                • Connection type, »Bluetooth«.
                • -
                • Connection variable, established for the connection.
                • -

                -
                -
                -

                Data received via connection

                -

                A text message will be transferred using a global connection variable. The text message will be - transferred into a text block. To give the connection information to the EV3 robot the value of the - global connection variable will be read.

                +
                  +
                • Message data type, »String«.
                • +
                • String, message to be sent.
                • +
                • Connection type, »Bluetooth«.
                • +
                • Connection variable, established for the connection.
                • +
                +
                +

                Data received via connection +

                +

                A text message will be transferred using a global connection variable. The text message will be transferred into a text block. To give the connection information to the EV3 robot the value of the global connection variable will be read.

                Settings and input value:

                -
                  -
                • Message data type, »String«.
                • -
                • Connection type, »Bluetooth«.
                • -
                • Connection variable, established for the connection.
                • -

                +
                  +
                • Message data type, »String«.
                • +
                • Connection type, »Bluetooth«.
                • +
                • Connection variable, established for the connection.
                • +
                +

                Return value:

                -
                  -
                • String, content of the received message.
                • -

                -
                -
                -

                Wait for connection

                -

                A message interchange connection is initiated by an EV3 robot, like a telephone call that is initiated by - the caller. A robot that is called is waiting for a connection.

                -

                The connection between two EV3 robots is stored in a global variable of type "connection". As long as - this global variable is valid the message connection is available.

                +
                  +
                • String, content of the received message.
                • +
                +
                +

                Wait for connection

                +

                A message interchange connection is initiated by an EV3 robot, like a telephone call that is initiated by the caller. A robot that is called is waiting for a connection.

                +

                The connection between two EV3 robots is stored in a global variable of type "connection". As long as this global variable is valid the message connection is available.

                Step 1: Create a global variable of type "connection".

                Step 2: The value of the connection variable is set to the expert block "wait for connection".

                -

                The connection variable will be set when the calling EV3 robot has initiated the connection (see above: - connect to robot name).

                -

                Return value: +

                The connection variable will be set when the calling EV3 robot has initiated the connection (see above: connect to robot name).

                +

                Return value:

                -
                  -
                • Connection object that may be stored in a connection variable.
                • -

                -
                +
                  +
                • Connection object that may be stored in a connection variable.
                • +
                +
                \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/help/progHelp_microbitv2_de.html b/OpenRobertaServer/staticResources/help/progHelp_microbitv2_de.html new file mode 100644 index 0000000000..a61d6b269b --- /dev/null +++ b/OpenRobertaServer/staticResources/help/progHelp_microbitv2_de.html @@ -0,0 +1,427 @@ +

                »Start«

                Jedes Programm beginnt mit dem »Start«-Block, welcher nicht gelöscht werden kann. Den ersten Block, den man verwenden möchte, verbindet man direkt mit der »Sequenzverbindung« am »Start«-Block.

                Einstellmöglichkeiten: +

                  +
                • Erzeuge eine neue globale Variable.
                • Entferne die globale Variable.
                • +

                Wenn globale Variablen erzeugt wurden: +

                  +
                • Text, Name der Variablen.
                • Typ der Variablen.
                • Wert, Anfangswert der Variablen.
                • +

                »Zeige Text ... «

                Mit diesem Block kannst du einen Text auf dem Bildschirm des micro:bits ausgeben.

                Optionen und Eingabewerte: +

                  +
                • Option, Art und Weise wie du den Text auf dem Display darstellen möchtest. Bei »Text« wird der Text als Fließtext von rechts nach links wiedergegeben, bei »Zeichen« werden alle Zeichen nacheinander auf dem Bildschirm wiedergegeben.
                • Zeichenkette, Text den du auf dem Display darstellen möchtest.
                • +

                »Zeige Bild ... «

                Mit diesem Block kannst du ein Bild oder eine Animation auf dem Bildschirm des micro:bits darstellen.

                Optionen und Eingabewerte: +

                  +
                • Option, Art und Weise wie das Bild dargestellt werden soll. Bei »Bild« wird nur ein einzelnes Bild dargestellt, bei »Animation« wird eine Liste von Bilder hintereinander dargestellt.
                • Bild oder Liste von Bildern, Das Bild oder die Liste von Bildern, die dargestellt werden sollen.
                • +

                »Lösche Bildschirm«

                Mit diesem Block kannst du den Bildschirm deines micro:bits zurücksetzen. Dabei werden alle LEDs des Bildschirms ausgeschaltet.

                »Setze LED x ... y ... Helligkeit ... «

                Mit diesem Block kannst du die Helligkeit einer einzelnen LED des Bildschirms deines micro:bits steuern.

                Optionen und Eingabewerte: +

                  +
                • Zahl, x-Koordinate der LED. Die x-Achse läuft parallel zu den langen Seiten des micro:bits. Hier sind ganze Zahlen zwischen 0 und 4 möglich.
                • Zahl, y-Koordinate der LED. Die y-Achse läuft parallel zu den kurzen Seiten des micro:bits. Hier sind ganze Zahlen zwischen 0 und 4 möglich.
                • Zahl, gewünschte Helligkeit der LED. je höher die Zahl, desto heller leuchtet die LED; bei 0 wird die LED ausgeschaltet. Hier sind ganze Zahlen zwischen 0 und 9 möglich. Dieser Wert intern auf den Bereich zwischen 0 und 9 begrenzt.
                • +

                »Gib Helligkeit x ... y ... «

                Mit diesem Block kannst du die Helligkeit einer LED des Bildschirms deines micro:bits abfragen. Dieser Block gibt die Helligkeit an den verbundenen Block zurück.

                Optionen und Eingabewerte: +

                  +
                • Zahl, x-Koordinate der LED. Die x-Achse läuft parallel zu den langen Seiten des micro:bits. Hier sind ganze Zahlen zwischen 0 und 4 möglich.
                • Zahl, y-Koordinate der LED. Die y-Achse läuft parallel zu den kurzen Seiten des micro:bits. Hier sind ganze Zahlen zwischen 0 und 4 möglich.
                • +

                Rückgabewerte: +

                  +
                • Zahl, Helligkeit der LED, je höher die Zahl desto heller leuchtet die LED. Dieser Block gibt eine ganze Zahl zwischen 0 und 9 zurück. 0 bedeutet dabei, dass die LED aus ist.
                • +

                »Zeige auf Serial Monitor ... «

                Mit diesem Block kannst du einen Text auf deinem Computer ausgeben. Dieser Text wird per Serial Port auf deinen Computer übertragen. Wie du einen Serial Monitor einrichtest, kannst du hier nachlesen.

                Optionen und Eingabewerte: +

                  +
                • Zeichenkette, Text den du auf deinem Computer ausgeben möchtest.
                • +
                »Spiele Frequenz Hz ... Dauer ms ...«

                Mit diesem Block kannst du deinen Roboter einen Ton abspielen lassen. Du kannst dabei die Frequenz und die Länge des Tons frei wählen. Der Ton wird auf dem eingebauten Lautsprecher des Joy-Car wiedergegeben.

                Bitte beachte, dass das menschliche Gehör Frequenzen zwischen ca. 30 Hz und ca. 15.000 Hz (15 kHz) wahrnehmen kann - je nach Person und Alter kann dies variieren.

                Eingabewerte: +

                  +
                • Zahl, die Frequenz des Tons in Hz (Hertz).
                  • Zahl, die Dauer für die der Ton gespielt werden soll in Millisekunden (ms).
                • +

                »Spiele Note ...«

                Mit diesem Block lässt du deinen Roboter eine ganze, halbe, viertel, achtel oder sechzehntel Note spielen. Du hast dabei die Auswahl aus drei Oktaven.

                Optionen: +

                  +
                • Länge, die Dauer für die die Note gespielt werden soll.
                • Note, die Note die gespielt werden soll.
                • +
                »Spiele Stück ...«

                Mit diesem Block lässt du deinen Roboter eine vordefinierte Sounddatei abspielen.

                Optionen: +

                  +
                • Datei; wählen Sie die Datei aus, die abgespielt werden soll.
                • +

                »Spiele Geräusch ...«

                Mit diesem Block lässt du deinen Roboter eine vordefinierte Sounddatei abspielen.

                Optionen: +

                  +
                • Datei; wählen Sie die Datei aus, die abgespielt werden soll.
                • +

                »Setze Lautstärke % ...«

                Mit diesem Block kannst du die Lautstärke des Lautsprechers deines Roboters verändern.

                Optionen: +

                  +
                • Zahl, die Lautstärke des Lautsprechers in Prozent zwischen 0 und 100.
                • +

                »Schreibe ... Wert auf Pin ... «

                Mit diesem Block kannst du entweder einen digitalen oder analogen Wert auf einem der Pins deines micro:bits ausgeben.

                Optionen und Eingabewerte: +

                  +
                • Option, wähle aus, ob du einen »digitalen« oder »analogen« Wert auf deinem Pin ausgeben möchtest. Dabei bedeutet »digital« entweder 0 oder 1, »analog« heißt eine Zahl zwischen 0 und 1023, also eine Prozentzahl der Gesamtspannung von 3,3,V.
                • Option, Pin auf dem du diesen Wert ausgeben möchtest. beachte dabei, dass nicht alle Pins einen »analogen« Wert ausgeben können.
                • Zahl, Wert den du auf dem Pin ausgeben möchtest. Bei »digital« entweder 0 oder 1, bei »analog« zwischen 0 und 1023. Dieser Wert intern auf den Bereich zwischen 0 und 1023 begrenzt.
                • +

                »Schalte LED Matrix ...«

                Mit diesem Baustein kannst du deine LED-Matrix ein- und ausschalten.

                Optionen: +

                  +
                • an/aus; soll deine LED-Matrix an oder aus sein.
                • +

                »Taste ... gedrückt? «

                Mit diesem Block kannst du abfragen, ob ein Knopf gerade gedrückt wird oder nicht.

                Optionen: +

                  +
                • Option, Taste die du abfragen möchtest.
                • +

                Rückgabewert: +

                  +
                • Wahrheitswert, »wahr«, wenn die Taste gedrückt wird, sonst »falsch«
                • +

                »gib Geräusch % Mikrofon ...«

                Mit diesem Block kannst du das Mikrofon deines Roboters abfragen. Das Mikrofon misst die Lautstärke der Umgebungsgeräusche.

                Rückgabewert:

                +
                  +
                • Zahl, die Lautstärke der Umgebung in Prozent, zwischen 0 und 100.
                • +

                »gib ... Lage «

                Mit diesem Block kannst du den Lagesensor deines micro:bits abfragen. Dieser Sensor misst, in welcher Lage sich dein micro.bit befindet.

                Optionen: +

                  +
                • Option, Lage die du abfragen möchtest. Zur Auswahl stehen folgende Lagen: aufrecht; kopfüber; auf der Vorderseite; auf der Rückseite; geschüttelt; frei fallend.
                • +

                Rückgabewert: +

                  +
                • Wahrheitswert, »wahr«, wenn sich der micro:bit in dieser Lage befindet, sonst falsch.
                • +

                »gib Winkel Kompasssensor «

                Mit diesem Block kannst du den Kompasssensor deines micro:bits abfragen. Dieser Sensor kann den Winkel messen, um den sich dein micro.bit gedreht hat.

                Rückgabewert: +

                  +
                • Zahl, Winkel um den dein micro.bit gedreht worden ist. Eine zahl zwischen 0 und 360. Diese zahl steht für den gedrehten Winkel.
                • +

                »gib Wert ms Zeitgeber ... «

                Mit diesem Block kannst du den Wert eines Zeitgebers abfragen. Der erste Zeitgeber wird beim Start des Programms automatisch gestartet, alle andren müssen erst mit dem »Setze Zeitgeber ... zurück « gestartet werden.

                Rückgabewert: +

                  +
                • Zahl, Zeit seit dem der Zeitgeber gestartet oder zurück gesetzt worden ist. Die Zeit wird in Millisekunden angegeben.
                • +

                »Setze Zeitgeber ... zurück «

                Mit diesem Block kannst du den Zeitgeber zurücksetzen.

                »gib Wert Temperatursensor «

                Mit diesem Block kannst du den Temperatursensor des micro:bits abfragen. Dieser kann die Umgebungstemperatur messen.

                Rückgabewert: +

                  +
                • Zahl, Umgebungstemperatur gemessen in Grad Celsius.
                • +

                »Pin ... gedrückt? «

                Mit diesem Block kannst du abfragen, ob gerade einer der großen Pins des micro.bits gedrückt wird. nur die großen Pins mit Nummer 0 bis 2 haben die Sensoren, um eine Berührung zu registrieren.

                Optionen: +

                  +
                • Option, Nummer des Pins, der abgefragt werden soll.
                • +

                Rückgabewert: +

                  +
                • Wahrheitswert. »wahr« wenn der Pin gedrückt wird, sonst »falsch«.
                • +

                »Logo-Touch-Sensor gedrückt?«

                Mit diesem Block kannst du den Logo Touch Sensor des Roboters abfragen, ob er gerade gedrückt wird.

                Rückgabewerte: +

                  +
                • Wahrheitswert, »wahr«, wenn die Taste gedrückt wird, sonst »falsch«.
                • +

                »gib ... Wert Pin ... «

                Mit diesem Block kannst du einen Wert an einem der Pins der micro:bits auslesen. Dieser Wert kann entweder »digital« sein, das bedeutet eine 1 oder eine 0 sein, oder der Wert ist »analog«, kann also zwischen 0 und 1 liegen. Du kannst zudem die Zeit messen, wie lange entweder eine hohe, »Pulszeit HIGH«, oder eine niedrige, »Pulszeit LOW«, an dem Pin registriert wurde.

                Optionen: +

                  +
                • Option, wähle aus, ob du einen »digitalen« oder »analogen« Wert oder eine Pulszeit auslesen möchtest.
                • Option, wähle den Pin aus, an dem du messen möchtest. beachte dabei, dass nicht alle Pins einen analogen Wert messen können. Du kannst sehen, welcher Pin einen analogen Wert messen kann, indem du den analogen Wert auswählst und dann auf die Liste der Pins klickst.
                • +

                Rückgabewerte: +

                  +
                • Zahl, Wert der gemessen wurde. Bei einem digitalen Wert ist diese zahl entweder 0 oder 1, bei einem analogen Wert ist diese Zahl zwischen 0 und 1 und bei einer Pulszeit ist es die gemessene Zeit in Millisekunden.
                • +

                »gib Wert milli-g Beschleunigungssensor ... «

                Mit diesem Sensor kannst du eine Beschleunigung messen, die auf deinem micro:bit wirkt. Eine Beschleunigung äußert sich immer durch eine wirkende Kraft. Wenn du also z.B. deinen micro:bit in eine Richtung schiebst, übst du eine kraft auf ihn aus und damit eine Beschleunigung. Diese beschleunigung kann der Sensor messen und ihr Wert wird in Einheiten der Erdbeschleunigung gemessen. Dabei gilt 1000 milli-g = 1 g = 9,81 m/s²

                Optionen: +

                  +
                • Option, Richtung in die du eine Beschleunigung messen möchtest. Dabei ist x die links-rechts-Richtung, y die vorne-hinten-Richtung und z die oben-unten-Richtung. »Stärke« ist zudem die gesamte gemessene Beschleunigung aller Achsen zusammen.
                • +

                Rückgabewerte: +

                  +
                • Zahl, gemessene Beschleunigung als milli-g, also als tausendstel der Erdbeschleunigung.
                • +

                »gib Wert % Lichtsensor «

                Mit diesem Block kannst du den Lichtsensor deines micro:bits abfragen.

                Rückgabewerte: +

                  +
                • Zahl, relative Helligkeit der Umgebung in %.
                • +

                »Wenn mache«

                Mit dem Block »Wenn mache« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache«-Block benötigt einen logischen Wert als Eingabewert. Falls die Bedingung in »Wenn« erfüllt (wahr) ist, wird der eingefügte Block (oder die Blöcke) ausgeführt. Bei einem verschachtelten »Wenn mache« Block, also wenn eine weitere Unterscheidung eingefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist (Bedingung = falsch), wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert.

                Die Bedingungen können beliebig durch Anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Eine weitere Bedingung am Ende anfügen.
                • Die letzte Bedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
                • +

                »Wenn mache sonst«

                Mit dem Block »Wenn mache sonst« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache sonst«-Block benötigt hierfür einen logischen Wert als Eingabewert. Falls die Bedingung erfüllt (wahr) ist, wird der dort eingefügte Block (oder die Blöcke) ausgeführt, ansonsten (Bedingung nicht erfüllt = falsch) wird der Block (bzw. die Blöcke), der bei »sonst« eingefügt wurde, ausgeführt. Bei einem verschachtelten »Wenn mache sonst« Block, also wenn eine weitere Unterscheidung dazugefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist, wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert. Nur wenn beide Bedingungen nicht erfüllt sind, wird der Block ausgeführt, der bei »sonst« eingefügt wurde.

                Die Bedingungen können beliebig durch anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Eine weitere Bedingung am Ende anfügen.
                • Die letzte Bedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »falsch« ist.
                • +

                »Wiederhole unendlich oft«

                Mit dem Block »Wiederhole unendlich oft« kannst du Blöcke endlos von deinem Roboter ausführen lassen. Alle Blöcke, die sich im »Wiederhole unendlich oft«-Block befinden, werden immer wieder ausgeführt. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block. Deshalb wird dieser Block auch »Endlosschleife« genannt.

                Eingaben: +

                  +
                • Blöcke, die wiederholt ausgeführt werden.
                • +

                »Wiederhole n mal«

                Mit dem Block »Wiederhole n mal« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole n mal« befinden, werden so oft ausgeführt, wie im Eingabefeld eingestellt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, bis die eingestellte Wiederholungszahl erreicht ist. Deshalb wird dieser Block auch »Schleife« genannt.

                Nur ganzzahlige Werte können eingegeben werden.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Zahl, wie oft die enthaltenen Blöcke wiederholt werden sollen.
                • Blöcke, die wiederholt ausgeführt werden.
                • +

                »Wiederhole solange/bis«

                Mit dem Block »Wiederhole solange/bis« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole solange/bis« befinden, werden immer wieder ausgeführt, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Deshalb wird dieser Block auch »bedingte Schleife« genannt.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • »solange« oder »bis«, um den Typ der bedingten Wiederholung zu bestimmen.
                • Logischer Wert, »wahr« oder »falsch«.
                • Blöcke, die wiederholt ausgeführt werden.
                • +

                »Für Wert aus der Liste«

                Mit dem Block »Für Wert aus der Liste« werden nacheinander alle Werte einer Liste an eine Variable übergeben und können dann in der so genannten Schleife verarbeitet werden. Mit jedem Schleifendurchlauf wird das nächste Element aus der Liste geholt, bis die Liste vollständig abgearbeitet ist. Der Wert des Listenelements wird an die Variable Element gebunden und kann in den enthaltenen Blöcken verwendet werden.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Typ der Listenelemente, »Zahl«, »Zeichenkette«, »logischer Wert«, »Farbe«, »Verbindung«
                • Variable, frei wählbarer Name, an den nacheinander die Listenelemente übergeben werden.
                • Liste, die Elemente des festgelegten Typs enthält. Wenn die Listenelemente nicht den richtigen Typ haben, kann die Liste nicht als Eingabewert verwendet werden.
                • Blöcke, die wiederholt ausgeführt werden.
                • +

                »Zähle von bis«

                Mit dem Block »Zähle von bis« kannst du andere Blöcke mehrfach von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Zähle von bis« befinden, werden so oft ausgeführt, bis die Zählung im Eingabefeld abgearbeitet ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange die Zählbedingung im Eingabefeld erfüllt ist, d.h. der Endwert der Zählung noch nicht erreicht ist. Die Werte der Zählung werden jeweils an die Zählvariable gebunden, deren Name frei eingestellt werden kann. Der Wert der Zählvariablen kann in den Blöcken der Schleife verwendet werden. Der letzte Eingabewert gibt an, in welcher Schrittweite gezählt wird.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Variable, frei wählbarer Name für die Zählvariable.
                • Zahl, Anfangswert der Zählschleife.
                • Zahl, Endwert der Zählschleife.
                • Zahl, Schrittweite für die Zählschleife.
                • Blöcke, die wiederholt ausgeführt werden.
                • +

                »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren«

                Mit dem Block »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren« kann eine Schleife vorzeitig beendet bzw. wieder zum Anfang der Schleife gesprungen werden. Sobald dieser Block in einer Reihe von Blöcken erscheint, werden alle nachfolgenden Blöcke bis zum Ende der Schleife ignoriert.

                Einstellmöglichkeiten: +

                  +
                • Abbruchverhalten, »Die Schleife abbrechen« oder »mit der nächsten Iteration der Schleife fortfahren«.
                • +

                »Warte bis ... «

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                Einstelmöglichkeiten und Eingabewert: +

                  +
                • Eine weitere Wartebedingung am Ende anfügen.
                • Die letzte Wartebedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • +

                »Warte ms ... «

                Mit dem Block »Warte« kannst du dein Programm an der Stelle "anhalten", an der du den Block eingefügt hast. Dein Programm bleibt dann für die angegebene Dauer an dieser Stelle stehen. Nach Ablauf der angegebenen Zeit wird dann der nachfolgende Block ausgeführt. Beispielsweise kannst du dadurch einen Text in dem Display deines Roboters exakt für diese Zeit anzeigen lassen.

                Einstellmöglichkeiten: +

                  +
                • Zahl, Wartezeit in Millisekunden.
                • +

                »Warte bis ... «

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                Einstelmöglichkeiten und Eingabewert: +

                  +
                • Eine weitere Wartebedingung am Ende anfügen.
                • Die letzte Wartebedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • +

                »Vergleiche«

                Mit dem Block »Vergleiche« kannst du verschiedene Eingabewerte (Zahl, Farbe, logischer Wert, Text) gleichen Typs miteinander vergleichen. Stimmt der Vergleich, wird der logische Wert »wahr« zurückgegeben, sonst »falsch«.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Linker Eingabewert für den Vergleich.
                • Vergleich, wähle aus, wie verglichen werden soll.
                • Rechter Eingabewert für den Vergleich.
                • +

                Rückgabewert: +

                  +
                • Logischer Wert, »wahr« oder »falsch«.
                • +

                »und/oder«

                Mit dem Block »und/oder« kannst du logische Werte zueinander in Beziehung setzen. Der »und/oder« Block liefert bei der Einstellung »und« nur dann den logischen Wert »wahr«, wenn beide Eingabewerte des Blocks gleichzeitig »wahr« sind. Bei der Einstellung »oder« genügt es, wenn einer der beiden Eingabewerte »wahr« ist, damit der »und/oder« Block als logischen Wert »wahr« liefert.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Logischer Wert für die Verknüpfung.
                • Wähle die logische Verknüpfung.
                • +

                Rückgabewert: +

                  +
                • Logischer Wert, »wahr« oder »falsch«.
                • +

                »nicht«

                Mit dem Block »nicht« kannst du einen logischen Wert umkehren. Der logische Wert ergibt sich aus der logischen Umkehrung des Eingabewertes, aus »wahr« wird »falsch« und umgekehrt.

                Eingabewert: +

                  +
                • Logischer Wert für die Umkehrung.
                • +

                Rückgabewert: +

                  +
                • Logischer Wert, Ergebnis der Umkehrung.
                • +

                »wahr/falsch«

                Mit dem Block »wahr/falsch« kannst du entweder den logischen Wert »wahr« oder »falsch« an einen anderen Block übermitteln.

                Einstellmöglichkeiten: +

                  +
                • Logischer Wert, wähle den Wert, der ausgegeben werden soll.
                • +

                Rückgabewert: +

                  +
                • Logischer Wert.
                • +

                »null«

                Der Block »null« ist ein Platzhalter für eine Eingabe, die noch unbestimmt ist. Wenn z.B. eine neue Verbindungsvariable für die Kommunikation erzeugt wird und noch nicht belegt ist, wird der Anfangswert auf »null« gesetzt.

                Rückgabewert: +

                  +
                • Logischer Wert, »null«.
                • +

                »teste«

                Mit dem Block »teste« kannst du einen Test durchführen und je nach Ergebnis unterschiedliche Ergebnisse zurückgeben.

                Eingabewerte: +

                  +
                • Logischer Wert für den Test; wenn kein Block angegeben wird, wird "wahr" angenommen.
                • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                • +

                Rückgabewert: +

                  +
                • Wert von beliebigem Typ.
                • +

                »Wert«

                Mit dem Block »Wert« kannst du Zahlen an einen anderen Block übermitteln.

                Eingabewert: +

                  +
                • Zahl
                • +

                Rückgabewert: +

                  +
                • Zahl
                • +

                »Rechnen«

                Mit dem Block »Rechnen« kannst du Zahlen addieren, subtrahieren, multiplizieren, dividieren oder potenzieren. Dieser Block ist nur in Verbindung mit einem anderen Block nutzbar, der eine Zahl als Eingabewert benötigt.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Zahl
                • Berechnung, wähle einen Operator aus.
                • Zahl
                • +

                Rückgabewert: +

                  +
                • Zahl, das Ergebnis der Berechnung.
                • +

                »Mathematische Funktionen«

                Mit dem Block »Mathematische Funktionen« können einige elementare mathematische Funktionen berechnet werden.

                Einstellmöglichkeiten und Eingabewert: +

                  +
                • Mathematische Funktion, Quadratwurzel, Absolutwert, Invertieren, ln (natürlicher Logarithmus), log10 (dekadischer Logarithmus), e^ (Exponentialfunktion) 10^ (Zehner-Exponent)
                • Zahl, auf die die mathematische Funktion angewandt wird.
                • +

                Rückgabewert: +

                  +
                • Zahl, das Ergebnis der Funktion.
                • +

                »Trigonometrische Funktionen«

                Mit dem Block »Trigonometrische Funktionen« können Sinus, Cosinus, Tangens und die zugehörigen Umkehrfunktionen berechnet werden. Die Eingabewerte werden im Bogenmaß erwartet (siehe Hinweis oben).

                Einstellmöglichkeiten und Eingabewert: +

                  +
                • Trigonometrische Funktion, wähle eine Funktion aus.
                • Zahl, im Bogenmaß
                • +

                Rückgabewert: +

                  +
                • Zahl, das Ergebnis der trigonometrischen Berechnung.
                • +

                »Konstanten«

                Der Block »Konstanten« stellt einige mathematische Konstanten bereit. »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«.

                Einstellmöglichkeiten: +

                  +
                • Mathematische Konstanten, wähle eine Konstante aus.
                • +

                Rückgabewert: +

                  +
                • Zahl, Wert der mathematischen Konstante. Der Wert von Unendlich ist »infinity«.
                • +

                »Zahleneigenschaft«

                Mit dem Block »Zahleneigenschaft« wird geprüft, ob eine eingegebene Zahl eine bestimmte Eigenschaft aufweist. »gerade«, »ungerade«, »ist Primzahl«, »ganze Zahl«, »positiv«, »negativ«, »teilbar durch«.

                Einstellmöglichkeiten und Eingabewert: +

                  +
                • Zahl, die mit einem Block geprüft wird.
                • Zahleneigenschaft, wähle, was geprüft werden soll.
                • Zahl; ein zweiter Eingabewert ist nur bei der Wahl von »ist teilbar durch« erforderlich.
                • +

                Rückgabewert: +

                  +
                • Logischer Wert, »wahr« oder »falsch«, je nachdem, ob die geprüfte Zahl die untersuchte Eigenschaft hat.
                • +

                »erhöhe um x«

                Mit dem Block »Erhöhe um x« wird der Wert einer numerischen Variable um einen Betrag erhöht.

                Eingabewerte: +

                  +
                • Variable, deren Wert verändert werden soll.
                • Zahl.
                • +

                »runden«

                Mit dem Block »runden« können Werte gerundet werden. Beim Runden werden die Nachkommastellen auf 0 gesetzt. Es wird je nach Größe der Nachkommastellen automatisch auf- oder abgerundet. Man kann jedoch auch einstellen, dass stets auf- bzw. stets abgerundet werden soll.

                Einstellmöglichkeiten und Eingabewert: +

                  +
                • Art der Rundung, wähle, wie gerundet werden soll.
                • Zahl
                • +

                Rückgabewert: +

                  +
                • Zahl, gerundete Ganzzahl
                • +

                »Liste auswerten«

                Mit dem Block »Liste auswerten« können verschiedene Analysen einer Liste vorgenommen werden:

                • Summe - alle Werte der Liste werden zusammengezählt
                • Minimalwert - der kleinste Wert der Liste wird ausgegeben
                • Maximalwert - der größte Wert der Liste wird ausgegeben
                • Mittelwert - aus den Werten der Liste wird der Mittelwert bestimmt
                • Median - der Median (Zentralwert) einer Liste wird ausgegeben
                • Standardabweichung - die Standardabweichung (Varianz) der Listenwerte wird ausgegeben
                • Zufallswert - einer der Listenwerte wird per Zufall gewählt und ausgegeben

                Einstellmöglichkeiten und Eingabewert: +

                  +
                • Art der Listenauswertung
                • Liste mit Zahlen
                • +

                Rückgabewert: +

                  +
                • Zahl, Ergebnis der eingestellten Listenauswertung.
                • +

                »Rest von«

                Der Block »Rest von« führt eine Division durch und liefert den Rest der Division, der nicht mehr durch den Divisor geteilt werden konnte.

                Eingabewerte: +

                  +
                • Zahl, die geteilt wird (Dividend)
                • Zahl, durch die geteilt wird (Divisor bzw. Teiler)
                • +

                Rückgabewert: +

                  +
                • Zahl, Rest der Division
                • +

                »begrenze«

                Der Block »Begrenze« sorgt dafür, dass Grenzwerte nicht überschritten werden. Er erfordert drei Eingabewerte:

                1. zu prüfender Wert
                2. untere Grenze
                3. obere Grenze

                Der Rückgabewert ist

                • der zu prüfende Wert, wenn gilt: untere Grenze ≤ zu prüfender Wert ≤ obere Grenze
                • untere Grenze, wenn zu prüfender Wert < untere Grenze
                • obere Grenze, wenn zu prüfender Wert > obere Grenze

                Eingabewerte: +

                  +
                • Zahl, die begrenzt wird.
                • Zahl, untere Grenze.
                • Zahl, obere Grenze.
                • +

                Rückgabewert: +

                  +
                • Zahl, die innerhalb der eingestellten Grenzen liegt.
                • +

                »Ganzzahlige Zufallswerte«

                Mit dem Block »Ganzzahlige Zufallswerte« können ganzzahlige Zufallswerte innerhalb selbst gewählter Grenzen erzeugt werden.

                Eingabewerte: +

                  +
                • Zahl, untere Grenze
                • Zahl, obere Grenze
                • +

                Rückgabewert: +

                  +
                • Zahl, eine ganzzahlige Zufallszahl, die innerhalb der eingestellten Grenzen liegt
                • +

                »Zufallszahl«

                Mit dem Block »Zufallszahl« wird eine Zufallszahl zwischen 0,0 und 1,0 bestimmt.

                Rückgabewert: +

                  +
                • Zahl, eine positive Zufallszahl kleiner oder gleich 1.
                • +

                »wandle ... um in Zeichenkette«

                Dieser Block wandelt eine Zahl in eine Zeichenkette um, die diese Zahl enthält. Als Beispiel wird die Zahl 123 in die Zeichenkette »123« umgewandelt.

                Optionen und Eingabewerte: +

                  +
                • Zahl, die Zahl die in eine Zeichenkette umgewandelt werden soll.
                • +
                Rückgabewerte: +
                  +
                • Zeichenkette, die Zeichenkette bestehend aus der gewählten Zahl.
                • +

                »wandle ... um in Zeichen«

                Dieser Block wandelt eine einzelne Zahl den dazugehörigen ASCII-Buchstaben um. Falls es zu dieser Zahl kein dazugehöriges ASCII-Zeichen gibt, wird eine leere Zeichenkette weitergegeben. So wird z.B. die Zahl 97 in den Buchstaben »a« umgewandelt.

                Optionen und Eingabewerte: +

                  +
                • Zahl, der ASCII-Code, der in das dazugehörige Zeichen umgewandelt werden soll. Zahl zwischen 0 und 255.
                • +
                Rückgabewerte: +
                  +
                • Zeichen, das Zeichen das dem gewählten ASCII-Code entspricht.
                • +

                »Mache einen NN Schritt«

                Mit diesem Block führst du eine Berechnungsschritt deines Neuronalen Netzwerks aus. Bevor du diesen Block verwendest, solltest du die Werte der Eingabe-Neuronen mit dem Block »Schreibe Wert Eingabe-Neuron ...« setzen. Die Eingabe-Werte werden in das Netzwerk gegeben und die Werte der Ausgabe-Neuronen werden anhand des Netzes aus dem Tab »Neuronales Netz« berechnet. Eine detaillierte Beschreibung des Neuronalen Netzwerks findest du hier. Die Werte der Ausgabe-Neuronen kannst du nach der Berechnung mit dem Block »gib Wert Ausgabe-Neuron ...« abfragen.

                »Schreibe Wert Eingabe-Neuron ... «

                Mit diesem Block kannst du den Wert eines Eingabeneurons setzen. Du kannst als Eingabewert entweder Variablen, Zahlen, Sensordaten oder mathematische Operationen verwenden, z.B. die Summe von zwei Zahlen.

                Optionen und Eingabewerte: +

                  +
                • Neuron, wähle das Eingabeneuron aus, dessen Wert du setzen möchtest.
                • Zahl, die als Eingabewert verwendet werden soll.
                • +

                »gib Wert Ausgabe-Neuron ... «

                Mit diesem Block kannst du den Wert eines Ausgabe-Neurons abfragen. Du solltest diesen Block erst nach dem Block »Mache einen NN Schritt« verwenden, da sonst noch kein Wert für die Ausgabeneuronen berechnet worden ist.

                Optionen: +

                  +
                • Neuron, wähle das Ausgabeneuron, dessen Wert du abfragen möchtest.
                • +

                Rückgabewert: +

                  +
                • Zahl, der Wert des gewählten Ausgabe-Neurons.
                • +

                »Schreibe Gewicht von ... nach ... «

                Mit diesem Block kannst du das Gewicht einer Verbindung zwischen zwei Neuronen setzen, die direkt miteinander verbunden sind.

                Optionen und Eingabewerte: +

                  +
                • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                • Zahl, auf den das Gewicht gesetzt werden soll.
                • +

                »Schreibe Bias ... «

                Mit diesem Block kannst du den Bias eines Neurons setzen.

                Optionen und Eingabewerte: +

                  +
                • Neuron, das Neuron, dessen Bias du setzen möchtest.
                • Zahl, der Wert auf den der Bias gesetzt werden soll.
                • +

                »gib Gewicht von ... nach ... «

                Mit diesem Block kannst du den aktuellen Wert des Gewichts einer Verbindung zwischen zwei Neuronen abfragen, die direkt miteinander verbunden sind.

                Optionen: +

                  +
                • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                • +

                Rückgabewert: +

                  +
                • Zahl, der Wert des Gewichts zwischen den beiden Neuronen.
                • +

                »gib Bias ... «

                Mit diesem Block kannst du den Bias eines Neurons abfragen.

                Optionen: +

                  +
                • Neuron, das Neuron, dessen Bias du abfragen möchtest.
                • +

                Rückgabewert: +

                  +
                • Zahl, der Wert des Bias des gewählten Neurons.
                • +

                »Text«

                Mit dem einfachen »Text«-Block wird ein Stück Text bereitgestellt.

                Eingabewert: +

                  +
                • Zeichenkette, bestehend aus beliebigen Zeichen
                • +

                Rückgabewert: +

                  +
                • Text, bestehend aus beliebigen Zeichen
                • +

                »Kommentar«

                Dokumentiere dein Programm mit diesem Block, damit du und andere es später leichter haben, dein Programm zu verstehen. Dieser Kommentar wird auch im generierten Source Code zu sehen sein.

                Eingabewert: +

                  +
                • Zeichenkette, bestehend aus beliebigen Zeichen
                • +

                »Erstelle Text aus ...«

                Mit dem »Erstelle Text«-Block wird ein Stück Text aus verschiedenen Eingabewerten zusammengesetzt. Mit dem +-Zeichen können weitere Eingabemöglichkeiten geschaffen werden. Alle Eingaben werden zu einer kontinuierlichen Zeichenkette zusammengefügt.

                Eingabewerte: +

                  +
                • Weitere Eingabemöglichkeiten bereitstellen.
                • Letzte Eingabemöglichkeit entfernen (bei mehr als 2 Eingabemöglichkeiten).
                • Beliebiger Wert, Zahl, Text, logischer Wert, Farbe.
                • +

                Rückgabewert: +

                  +
                • Zeichenkette, bestehend aus beliebigen Zeichen.
                • +

                »werte ... als ...«

                Mit dem »werte ... als ...«-Block wird ein als Text eingegebener Ausdruck ("expression") ausgewertet und das Ergebnis zurückgegeben. Der Ausdruck kann z.B. "sqrt(a^2 + b^2)" sein. Er wird zu einer Zahl ausgewertet. Der Block ist sehr leistungsstark: nahezu alle Ausdrücke, die mit Blockly-Blöcken erzeugt werden können, lassen sich auch als Text schreiben.

                Wie der Ausdruck aufgebaut werden kann, ist auf einer eigenen Wiki-Seite beschrieben. Bitte beachten: es gibt allgemeine Ausdrücke, die für jeden Roboter gültig sind, und spezifische Teile, die nur für den jeweils ausgewählten Roboter gelten. Das muss so sein, weil jeder Roboter eigene Sensoren und Aktoren unterstützt. Das ist detailliert auf der Wiki-Seite beschrieben.

                Der Benutzer muss in einem Drop-Down angeben, welchen Typ für das Ergebnis erwartet wird. Welche Typen möglich sind, hängt vom jeweils ausgewählten Roboter ab.

                Eingabewerte: +

                  +
                • Text, gib den Ausdruck als Text ein.
                • +

                Optionen: +

                  +
                • Typ, der gewünschte Rückgabetyp des Ausdrucks, z.B eine Zahl, ein logischer Wert oder eine Zeichenkette.
                • +

                »Text anhängen«

                Mit dem »Text anhängen«-Block können Zeichenketten erweitert werden, z.B. indem an empfangene Nachrichten eine Signatur angehängt wird.

                Eingabemöglichkeiten: +

                  +
                • Text, Zeichenkette, an die Text angehängt werden soll
                • Text, Zeichenkette, die an einen Text angehängt werden soll
                • +

                »wandle ... um in Zahl«

                Dieser Block wandelt eine Zeichenkette in eine Zahl um, falls dies möglich ist. Wenn eine Zeichenkette also nur Zahlen enthält, kann dieser Block die Zeichenkette in eine Zahl umwandeln. Wenn der Block keine Zahlen enthält, gibt dieser Block »NaN« in der Simulation des Open Roberta Labs weiter, kann aber auch ein anderes Verhalten aufweisen, welches von der verwendeten Programmiersprache des Roboters abhängt. Falls die Zeichenkette zwar mit Zahlen beginnt, aber danach weitere Zeichen enthält, die keine Zahlen sind, gibt dieser Block nur die Zahlen weiter und stoppt, sobald das erste Zeichen in der Zeichenkette steht. Also als Beispiel macht dieser Block aus der Zeichenkette »52abcd« die Zahl 52.

                Optionen und Eingabewerte: +

                  +
                • Zeichenkette, die nur aus Zahlen besteht und in eine Zahl umgewandelt werden soll.
                • +
                Rückgabewerte: +
                  +
                • Zahl, die zahl aus der die Zeichenkette bestand.
                • +

                »wandle Zeichen ... an Position ... in Zahl«

                Dieser Block wandelt einen Buchstaben oder ein Zeichen aus einer Zeichenkette in die dazugehörige ASCII-Nummer um. Jedes Zeichen hat dabei eine dazugehörige Nummer in der ASCII-Tabelle. So wird z.B. ein kleines »a« in die Zahl 97 umgewandelt.

                Optionen und Eingabewerte: +

                  +
                • Zeichenkette, aus dieser wird ein einzelnes Zeichen ausgewählt.
                • Zahl, die Stelle des Zeichens das umgewandelt werden soll. Beachte das die Nummerierung bei 0 anfängt.
                • +
                Rückgabewerte: +
                  +
                • Zahl, der ASCII-Code des ausgewählten Zeichens.
                • +

                »Erzeuge Liste«

                Der Block »Erzeuge eine leere Liste« erzeugt eine Liste ohne Inhalt. Der Block »Liste« erzeugt eine Liste mit einigen voreingestellten Werten. Mit + und - können weitere Listenelemente am Ende hinzugefügt bzw. entfernt werden. Wenn das letzte Element einer Liste entfernt wurde, liegt eine leere Liste vor.

                Einstellmöglichkeiten: +

                  +
                • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                • Erzeuge ein weiteres Listenelement am Ende der bestehenden Liste.
                • Lösche das Listenelement am Ende der bestehenden Liste.
                • Werte, die dem Listentyp entsprechen. Hiermit können Anfangswerte gesetzt werden.
                • +
                Rückgabewert: +
                  +
                • Leere Liste oder eine Liste mit Elementen gleichen Typs.
                • +

                »Wiederhole Element in Liste«

                Der Block »Wiederhole Element in Liste« erzeugt eine Liste mit gleichen Elementen.

                Einstellmöglichkeiten: +

                  +
                • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                • Listenelement, das mit dem eingestellten Listentyp übereinstimmt. Dieser Wert wird in der Liste wiederholt.
                • Zahl, die angibt, wie oft der eingestellte Wert wiederholt werden soll.
                • +
                Rückgabewert: +
                  +
                • Eine Liste des spezifizierten Typs mit der eingestellten Anzahl von gleichen Elementen.
                • +

                »Länge«

                Der Block »Länge« gibt als Wert die Länge einer Liste zurück, die als Eingabewert angegeben wird. Eine leere Liste hat die Länge 0.

                Eingabewert +

                  +
                • Liste
                • +
                Rückgabewert: +
                  +
                • Zahl, Anzahl der Listenelemente
                • +

                »ist leer?«

                Eine als Eingabewert gegebene Liste wird geprüft, ob sie leer ist.

                Eingabewert +

                  +
                • Liste.
                • +
                Rückgabewert: +
                  +
                • Logischer Wert, entweder »wahr« oder »falsch«
                • +

                »suche in der Liste«

                Eine Liste wird durchsucht, ob ein Element darin enthalten ist. Wenn das Element enthalten ist, wird die Listenposition zurückgegeben. Wenn das Element nicht enthalten ist, ist das Ergebnis -1.

                Einstellmöglichkeiten: +

                  +
                • Liste, die untersucht werden soll.
                • Position für den Treffer, entweder »ersten« oder »letzten« Treffer suchen.
                • Wert, der mit den Listentyp übereinstimmt.
                • +
                Rückgabewert: +
                  +
                • Zahl, die Position, an der das Element in der Liste steht.

                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                • +

                »nimm Listenelement«

                Mit diesem Block wird auf ein Element einer Liste zugegriffen. Das Element wird gegebenenfalls verändert.

                Es wird eine Liste als Eingabe übergeben. Danach wird per Drop-Down-Liste spezifiziert, was mit dem Listenelement geschehen soll. Anschließend wird angegeben, in welcher Richtung die Liste durchsucht werden soll, ob von vorn (links), von hinten (rechts) oder zufällig.

                Einstellmöglichkeiten und Eingabewerte +

                  +
                • Liste, die bearbeitet werden soll.
                • Aktion für das gefundene Element: »nimm« liest das Element und lässt es unverändert, »nimm und entferne« liest das Element und entfernt es aus der Liste, »entferne« entfernt das Element aus der Liste.
                • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.

                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                • +
                Rückgabewert: +
                  +
                • Das spezifizierte Listenelement, das an der angegebenen Listenposition gefunden wurde. »undefined« (undefiniert), wenn die Listenposition nicht existiert.
                  Bei »entferne« wird kein Wert zurückgegeben; die bearbeitete Liste ist dann um dieses Listenelement reduziert.
                • +

                »Setze Listenelement«

                In einer als Eingabewert übergebenen Liste wird ein näher spezifiziertes Element durch einen neuen Wert ersetzt bzw. es wird ein Wert eingefügt.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Liste, die bearbeitet werden soll.
                • Aktion für das gefundene Element: »setze« verändert das Element, »füge« fügt ein neues Element in die Liste ein.
                • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                • Listenelement, das an der zuvor bestimmten Listenposition gesetzt oder eingefügt wird.
                • +

                »Erhalte Unterliste«

                Aus einer als Eingabewert übergebenen Liste wird eine Unterliste erzeugt. In der Unterliste sind alle Elemente enthalten, die den weiteren Spezifikationen dieses Blocks entsprechen.

                Einstellmöglichkeiten und Eingabewerte: +

                  +
                • Liste, die bearbeitet werden soll.
                • Position, Anfang der Unterliste: »von #«, »von # von hinten« oder »vom Anfang«.
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »vom Anfang« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                • Position, Ende der Unterliste: »zu #«, »zu # von hinten« oder »zum Ende«.
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »zum Ende« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                • +
                Rückgabewert: +
                  +
                • Liste, Unterliste gleichen Typs wie die als Eingabewert übergebene Liste.
                • +

                »Farbwahl «

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                Option: +

                  +
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • +

                Rückgabewert: +

                  +
                • Farbe, die ausgewählte Farbe.
                • +

                »Farbwahl «

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                Option: +

                  +
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • +

                Rückgabewert: +

                  +
                • Farbe, die ausgewählte Farbe.
                • +

                »Farbwahl «

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                Option: +

                  +
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • +

                Rückgabewert: +

                  +
                • Farbe, die ausgewählte Farbe.
                • +

                »Farbe mit Rot ... Grün ... Blau ... «

                Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau mischst.

                Eingabewerte: +

                  +
                • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                • +
                Rückgabewert: +
                  +
                • Farbe, die von dir erstellte Farbe.
                • +

                »Farbton Toleranz«

                Roboter erkennen den genauen Farbton oft nicht Präzise. Durch die Lichtverhältnisse kann so eine Farbe als zu dunkel oder zu hell wahrgenommen werden. Dieser Block ermöglicht die Einstellung eines Toleranzbereichs für die zu erkennende Farbe, damit beispielsweise jeder Rotton als Rot erkannt wird.

                Eingabewerte: +

                  +
                • Farbe, von einem Sensor empfangene Farbe.
                • Farbe, festgelegte Farbe für den Vergleich mit Sensordaten.
                • Zahl, Toleranzwert für die Farberkennung.
                • +
                Rückgabewert: +
                  +
                • Wahrheitswert, »wahr«, wenn die Farbe im Toleranzbereich liegt, »falsch«, wenn Farbe zu stark abweicht.
                • +

                »Schreibe Variable«

                Mit dem Block »Schreibe Variable« kannst du den Wert einer Variablen verändern. Je nach Typ der Variablen (Zahl, Zeichenkette, logischer Wert, Liste, Farbe, Verbindung) kann der Variablen ein passender Wert übergeben werden.

                Einstellmöglichkeit und Eingabewert: +

                  +
                • Variable, deren Wert verändert werden soll.
                • Wert, auf den die Variable gesetzt werden soll.
                • +

                »Lies Variable«

                Mit dem Block »lies Variable« kannst du den Wert einer Variablen an einen anderen Block übergeben. Der Typ des Ausgabewertes entspricht immer dem Typ, mit dem die Variablen im Block »Start« initialisiert wurde.

                Einstellmöglichkeit: +

                  +
                • Variable, deren Wert gelesen werden soll.
                • +
                Rückgabewert: +
                  +
                • Wert, der in der Variablen gespeichert ist.
                • +

                Funktionsblock ohne/mit Eingabe- und ohne Rückgabewert

                In einem Funktionsblock ohne/mit Eingabe- und Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Die Eingabewerte werden durch die lokalen Variablen im Funktionsblock festgelegt. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Lokale Variablen werden nicht initialisiert.

                Falls in einen Funktionsblock eine Wenn-Abfrage (siehe unten) eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen.

                Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                Einstellmöglichkeiten: +

                  +
                • Funktionsname, ohne Leer- und Sonderzeichen
                • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                • Lösche eine lokale Variable.
                • +

                • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle diese Werte beim Funktionsaufruf belegt werden.

                Funktionsblock ohne/mit Eingabe- und mit Rückgabewerten

                In einem Funktionsblock ohne/mit Eingabe- und mit Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Nachdem alle Anweisungen durchlaufen wurden, wird abschließend ein Wert als Funktionswert zurückgegeben.

                Falls in einen Funktionsblock eine Wenn-Abfrage eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen, und es kann ein alternativer Funktionswert zurückgegeben werden.

                Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                Einstellmöglichkeiten: +

                  +
                • Funktionsname, ohne Leer- und Sonderzeichen
                • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                • Lösche eine lokale Variable.
                • Datentyp für den Rückgabewert. »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe«, »Verbindung«, »Liste Zahl«, »Liste logischer Wert«, »Liste Zeichenkette«, »Liste Verbindung«.
                • Wert, der dem eingestellten Datentyp des Rückgabewertes entspricht.
                • +
                Rückgabewert: +
                  +
                • Wert, der im Rückgabeblock berechnet wurde.
                • +
                • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle Werte beim Funktionsaufruf belegt werden.

                Wenn-Abfrage innerhalb einer Funktion

                Die Wenn-Abfrage innerhalb einer Funktion ist von besonderer Bedeutung. Sobald der Funktionsablauf auf eine Wenn-Abfrage trifft, wird die Gültigkeit der Bedingung geprüft.

                Wenn-Abfrage innerhalb einer Funktion mit Rückgabewert:

                • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet. Der zweite übergebene Wert wird als Funktionswert zurückgegeben. Ein eventuell mit der Funktion definierter Rückgabewert wird nicht weiter berücksichtig. Der Rückgabewert-Typ wird durch den Typ des Rückgabewerts der umgebenden Funktion festgelegt.
                • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt. Ein eventuell mit der Funktion definierter Rückgabewert wird als Funktionswert zurückgegeben, wenn der Funktionsablauf das Funktionsende erreicht.

                Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert:

                • Eine Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert hat nur die Bedingung als Eingabewert.
                • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet.
                • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt.

                Einstellgabewerte: +

                  +
                • Logischer Wert, der aus einer Bedingung bestimmt wird.
                • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                • +
                Rückgabewert: +
                  +
                • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                • +

                »Funktionsaufruf ohne Rückgabewert «

                Mit diesem Block kannst du eine vorher definierte Funktion aufrufen. Diese Funktion gibt dabei keinen Wert zurück.

                Eingabewerte: +

                  +
                • Wert, abhängig von den Eingabewerte der vorher definierten Funktion.
                • +

                »Funktionsaufruf mit Rückgabewert «

                Mit diesem Block kannst du eine vorher definierte Funktion aufrufen und den Rückgabewerte abrufen.

                Eingabewerte: +

                  +
                • Wert, abhängig von den Eingabewerten der vorher definierten Funktion.
                • +
                Rückgabewerte: +
                  +
                • Wert, abhängig von dem Rückgabewert der definierten Funktion.
                • +

                »Sende Nachricht ... mit Stärke ... «

                Mit diesem Block kannst du eine Nachricht an andere Roboter in deiner Umgebung senden. Die Nachricht kann dabei entweder eine zahl, ein logischer Wert oder eine Zeichenkette sein.

                Optionen und Eingabewerte: +

                  +
                • Option, wähle den Datentyp aus, aus dem deine Nachricht bestehen soll.
                • Element von gewählten Datentyp, die Nachricht die du verschicken möchtest.
                • Option, Stärke mit dem du deine Nachricht senden möchtest. Je höher die Stärke ist, desto weiter wird deine Nachricht gesendet.
                • +

                »Empfange Nachricht ... «

                Mit diesem Block kannst du Nachrichten von anderen Robotern empfangen. Du kannst dabei einstellen, welche Daten die Nachricht enthalten soll.

                Optionen: +

                  +
                • Option, Datentyp der Nachricht.
                • +

                Rückgabewerte: +

                  +
                • Element des gewählten Datentyps.
                • +

                »setze Kanal auf ... «

                Mit diesem Block kannst du den Kanal ändern, auf dem dein Roboter seine Nachrichten sendet und empfängt. Du kannst nur mit anderen Robotern kommunizieren, die auf dem gleichen Kanal senden und empfangen.

                Eingabewerte: +

                  +
                • Zahl, Kanal auf dem du kommunizieren möchtest.
                • +

                \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/help/progHelp_microbitv2_en.html b/OpenRobertaServer/staticResources/help/progHelp_microbitv2_en.html new file mode 100644 index 0000000000..1a1352d9e7 --- /dev/null +++ b/OpenRobertaServer/staticResources/help/progHelp_microbitv2_en.html @@ -0,0 +1,1255 @@ +h + + + + +
                +

                »Program start «

                +

                Each program starts with the »Program start block«, which cannot be deleted. The first block to be used is connected directly to the »Sequence connection« on the program start block.

                +

                Settings: +

                +
                  +
                • Create a new global variable.
                • +
                • Remove the global variable.
                • +
                +

                If global variables have been created: +

                +
                  +
                • Text, name of the variable.
                • +
                • Type of the variable.
                • +
                • Value, initial value of the variable.
                • +
                +
                +

                »Show text ... «

                +

                With this block you can output a text on the screen of the micro:bit.

                +

                Options and Input values: +

                +
                  +
                • Option, the way you want the text to appear on the display. With »text« the text is displayed as a scrolling text from right to left, with »character« all characters are displayed one after the other on the screen.
                • +
                • String, text that you want to display on your micro:bit.
                • +
                +
                +

                »Show image ... «

                +

                With this block you can display an image or animation on the micro:bit screen.

                +

                Options and Input values: +

                +
                  +
                • Option, the way the image is to be displayed. With »image« only a single image is displayed, with »animation« a list of images is displayed one after the other.
                • +
                • Image or list of images, the image or the list of images you want to be displayed on your micro:bit.
                • +
                +
                +

                »Clear display«

                +

                With this block you can clear the display of your micro:bit, that means that all LEDs are turned off.

                +

                »Set LED x ... y ... brightness ... « +

                +

                With this block you can set the brightness of one specific LED to a desired value between 0 and 9, where 0 is off and 9 is the maximum brightness.

                +

                Options and input values +

                +
                  +
                • Number, x coordinate of the LED you want to control. The x-axis runs parallel to the long side ouf your micro:bit. Possible inputs are integers between 0 and 4.
                • +
                • Number, y coordinate of the LED you want to control. The y-axis runs parallel to the short side of your micro:bit. Possible inputs are integers between 0 and 4.
                • +
                • Number, desired brightness of the LED. 0 means off and 9 is the maximum brightness. This value will be internally clipped to be between 0 and 9.
                • +
                +
                +

                »Get LED brightness x ... y ... «

                +

                With this block you can querry the brightness of on of your micro:bits LEDs.

                +

                Options ans input values: +

                +
                  +
                • Number, x coordinate of the LED you want to control. The x-axis runs parallel to the long side ouf your micro:bit. Possible inputs are integers between 0 and 4.
                • +
                • Number, y coordinate of the LED you want to control. The y-axis runs parallel to the short side of your micro:bit. Possible inputs are integers between 0 and 4.
                • +
                +

                Return value: +

                +
                  +
                • Number, brightness of the chosen LED. This number can be an integer between 0 for off and 9 for maximum brightness.
                • +
                +
                +

                »Show on Serial Monitor ... « +

                +

                With this block you can display a text on your computer. This text is transferred to your computer via serial port. You can read how to set up a Serial Monitor + here.

                +

                Options and input values: +

                +
                  +
                • String, the String that you want to display on the connected computer.
                • +
                +
                +

                »play frequency Hz ... duration ms ...«

                +

                With this block you can program the frequency (pitch of a tone) and the time (how long the tone is played). The sound is played through the built-in speaker of the + Joy-Car chassis until the set duration is reached.

                +
                +
                +

                Please note that human hearing can perceive frequencies between about 30 Hz to about 15,000 Hz (15 kHz) - depending on the person and age, this may vary.

                +
                +
                +

                Input values: +

                +
                  +
                • Number, desired frequency in Hz (Hertz).
                • +
                • Number, desired duration in milliseconds (ms).
                • +
                +
                +

                »play ... note ...«

                +

                With this block you make your robot play a whole, half, quarter, eighth or sixteenth note.

                +

                Options: +

                +
                  +
                • Note length; select the length of the note that is going to be played.
                • +
                • Note pitch; select the note that is going to be played.
                • +
                +
                +

                »play file ...«

                +

                With this block you make your robot play a predefined sound file.

                +

                Options: +

                +
                  +
                • File; select the file that will be played.
                • +
                +
                +

                »Play Sound ...«

                +

                With this block, you can let your robot play a predefined sound.

                +

                Options: +

                +
                  +
                  +
                • Sound; select the sound that will be played.
                • +
                +
                +

                »set volume % ...«

                +

                With this block you can set the volume of your robots speaker.

                +

                Options: +

                +
                  +
                • Integer, from 0-100 as a percent of volume played.
                • +
                +
                +

                »Write ... value to pin ... « +

                +

                With this block you can output either a digital or analog value on one of the pins of your micro:bit.

                +

                Options and input values: +

                +
                  +
                • Option, select whether you want to output a »digital« or »analog« value on your pin. »Digital« means either 0 or 1, »analog« means a number between 0 and 1023, i.e. a percentage of the total voltage of 3,3,V.
                • +
                • Option, pin on which you want to output this value. Note that not all pins can output an "analog" value.
                • +
                • Number, the value that you want to write to the pin. With »digital« this means either 0 or 1 and with »analog« this means a number between 0 and 1023. This value will be internally clipped to be between 0 and 1023.
                • +
                +
                +

                »switch LED matrix ...« +

                +

                With this block you can turn your LED matrix on and off.

                +

                Options: +

                +
                  +
                • List; should your LED matrix be on or off.
                • +
                +
                +

                »Button .. pressed?«

                +

                With this button you can check whether a button is currently being pressed.

                +

                Options: +

                +
                  +
                • option, the button that you want to check.
                • +
                +

                Return value: +

                +
                  +
                • boolean, »true« if the button is being pressed, otherwise »false«
                • +
                +
                +

                »Get ... gesture «

                +

                With this block you can check whether your micro.bit is in a certain position or certain gesture is being done.

                +

                Options: +

                +
                  +
                • option, gesture or position that you want to check for.
                • +
                +

                Return value: +

                +
                  +
                • boolean, »true« if the micro:bit is in that position, »false« otherwise.
                • +
                +
                +

                »get angle ° compass sensor «

                +

                With this block you can check the compass sensor of your micro:bits. This sensor can measure the angle by which your micro.bit has rotated.

                +

                Return value: +

                +
                  +
                • number, angle by which your micro.bit has rotated. This value can be any number between 0 and 360 for a full rotation.
                • +
                +
                +

                »get value timer ... «

                +

                With this block you can query the value of a timer. The first timer is started automatically at the start of the program, all other timers have to be set first with the "Set timer ..." button. back " can be started.

                +

                Options: +

                +
                  +
                • option, choose the timer you want to check.
                • +
                +

                Return value: +

                +
                  +
                • number, time since the start or the last reset of the timer in millesconds.
                • +
                +
                +

                »reset timer ... «

                +

                With this block you can reset the timer of your micro:bit.

                +

                +

                »get value ° temperature sensor «

                +

                With this block you can check the temperature sensor for the ambient temperature.

                +

                Return value: +

                +
                  +
                • number, ambient temperature in degrees Celsius.
                • +
                +
                +

                »pin .. pressed? «

                +

                With this block you can check whether the chosen pin is pressed by a person. But be aware that not all pins can check whether they are being pressed.

                +

                Options: +

                +
                  +
                • option, pin that you want to check.
                • +
                +

                Return value: +

                +
                  +
                • boolena, »true« if the pin is pressed, »false« otherwise.
                • +
                +
                +

                »get ... value pin ... «

                +

                With this block you can read a value at one of the pins of the micro:bit. This value can be either »digital«, meaning 1 or 0, or the value can be »analog«, meaning between 0 and 1. You can also measure the time how long either a high, »pulse time HIGH«, or a low, »pulse time LOW«, was registered at the pin.

                +

                Options: +

                +
                  +
                • option, choose the type of value or which pulse time you want to check.
                • +
                • option, select the pin you want to measure against. Note that not all pins can measure an analog value. You can see which pin can measure an analog value by selecting the analog value and then clicking on the list of pins.
                • +
                +

                Return value: +

                +
                  +
                • number, value measured. With a digital value this number is either 0 or 1, with an analog value this number is between 0 and 1 and with a pulse time it is the measured time in milliseconds.
                • +
                +
                +

                »get value milli-g accelerometer ... «

                +

                With this sensor you can measure an acceleration that acts on your micro:bit. An acceleration is always expressed by an acting force. For example, if you push your micro:bit in one direction, you exert a force on it and thus an acceleration. The sensor can measure this acceleration and its value is measured in units of acceleration due to gravity. The following applies: 1000 milli-g = 1 g = 9.81 m/s²

                +

                Options: +

                +
                  +
                • option, direction in which you want to measure an acceleration. x is the left-right direction, y the front-back direction and z the top-down direction. »strength« is moreover the total measured acceleration of all axes together.
                • +
                +

                Return value: +

                +
                  +
                • number, measured acceleration as milli-g, i.e. as one thousandth of the acceleration due to gravity.
                • +
                +
                +

                »get value % light sensor«

                +

                With this block you can query the value of your light sensor.

                +

                Return value: +

                +
                  +
                • Number, relative brightness of the robots surroundings.
                • +
                +
                +

                »if do«

                +

                With the block »if do« you can selectively trigger actions to be executed by your robot. The »if do« block therefore requires a logical value as an input parameter, the condition. Only if the condition of the »if« statement is true, the inserted block will be executed. In a nested »if do« block, if a further distinction was added, the first »if« condition is queried. If it is not fulfilled (condition = false), the second »else if« condition will be checked. Also this second condition requires a logical value as an input parameter.

                +

                The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                +

                Settings and input values: +

                +
                  +
                • Insert an additional condition.
                • +
                • Delete the last condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                • Blocks that will be executed
                • +
                +
                +

                »if do else«

                +

                With the block »if do else« you can selectively trigger actions which are executed by your robot. The »if do then« block therefore requires a logical value as an input parameter. If the condition in »if« is true the inserted block will be executed, otherwise (condition is not fulfilled = false) the block connected to the »else« statement will be executed. In a nested »if do else« block with further distinctions added, the first »if« condition is queried. If it is not true, the second condition »else if« is checked. Also the second condition requires a logical value as an input parameter. Only when both conditions are not true, the block which is inserted at the »else« statement will be executed.

                +

                The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                +

                Settings: +

                +
                  +
                • Insert an additional if-do-else condition.
                • +
                • Delete the last if-do-else condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                • Do blocks that will be executed if the according condition evaluates to »true«.
                • +
                • Else blocks that will be executed if the according condition evaluates to »false«.
                • +
                +
                +

                »repeat indefinitely«

                +

                With the block »repeat indefinitely« you can endlessly run the blocks on your robot. All blocks which are within the »repeat indefinitely« block will be executed endlessly. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                +

                Input: +

                +
                  +
                • Blocks to be repeated indefinitely.
                • +
                +
                +

                »repeat n times«

                +

                With the block »repeat« you can run other block as many times as you like. All blocks in the »repeat« block will be executed as often as defined in the entry field. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                +
                +

                Only integer values can be entered.

                +
                +

                Settings and input: +

                +
                  +
                • Number that indicates how often the contained blocks will be repeated.
                • +
                • Blocks to be repeated as often as defined.
                • +
                +
                +

                »wait«

                +

                With the block »wait« you can "pause" your program at the point where you inserted the »wait« block. Your program will then remain for the specified duration at this point. After the specified time the next block will be executed. For example you can display text in the screen of your robot for exactly the time you specified in the »wait« block.

                +

                Settings and input values: +

                +
                  +
                • Number, waiting time in milliseconds.
                • +
                +
                +

                »wait until ...«

                +

                With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                +

                Settings: +

                +
                  +
                • Add a new condition.
                • +
                • Delete the last condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »wait until ... «

                +

                With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                +

                Settings: +

                +
                  +
                • Add a new condition.
                • +
                • Delete the last condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »break out/continue with next iteration of loop«

                +

                With the block »break out/continue with next iteration of loop« a loop can be terminated ahead of schedule. As soon as the block is entered within a sequence of blocks, all further blocks up to the end of the loop will be ignored.

                +

                Settings: +

                +
                  +
                • Type of breaking behavior, »break out« or »continue with next iteration«.
                • +
                +
                +

                »count with from to«

                +

                With the block »count with from to« you can run other block as many times as you like. All blocks in the »count with from to« block will be executed as long as the counting is in progress. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the counting is in progress. The last parameter declares the step width for counting.

                +

                Settings: +

                +
                  +
                • Variable, name of free choice; numbers of the counter will be delivered one after the other to the variable.
                • +
                • Number, initial value of the counter.
                • +
                • Number, final value of the counter. As the counter exceeds this value the loop ends.
                • +
                • Number, defining the increment. The variable value will increase by this amount after every loop cycle.
                • +
                • Blocks that will be executed in every loop cycle.
                • +
                +
                +

                »for each item in list«

                +

                With the block »for each item in list« all list items will successively be bound to a variable. The variable can be used within the loop. With each loop cycle the next item of the list will be bound until all list elements have been processed.

                +

                Settings and input value: +

                +
                  +
                • Type of list elements, »Number«, »String«, »Boolean«, »Colour«, »Connection«
                • +
                • Variable, name of free choice; list elements will be delivered one after the other to the variable.
                • +
                • List that contains elements of the desired type. If the list elements are not of the correct type then the list will not fit to the input slot.
                • +
                • Blocks which will be executed as often as there are elements in the list.
                • +
                +
                +

                »repeat while/until«

                +

                With the block »repeat while/until« you can run other block as many times as you like. All blocks in the »repeat while/until« block will be executed as long as the condition in the entry field is true. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the condition is still true. Therefore, this block is also called »conditional loop«.

                +

                Settings and input values: +

                +
                  +
                • Option, »while« or »until«, defining the type of the conditional repetition.
                • +
                • Boolean value, »true« or »false«.
                • +
                • Blocks that will be repeated while/until the condition evaluates to »true«.
                • +
                +
                +

                »comparison«

                +

                With the block »comparison« you can compare different parameters of the same type (number, color, logical value, text). This block can only be used in conjunction with another block which requires a logical value as an input parameter.

                +

                Settings and input values: +

                +
                  +
                • Value for the left hand side.
                • +
                • Comparison, select one of =, ≠, <, ≤, >, ≥
                • +
                • Value for the right hand side.
                • +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »and/or«

                +

                With the block »and/or« you can interrelate logical values with each other. The »and/or« block with the setting "and" will be true only if both logical parameters are "'true"'. If the block has the setting »or« it is sufficient if one of the two parameters is "true", so that the »and/or« block will return true.

                +

                Settings: +

                +
                  +
                • Boolean value on the left hand side.
                • +
                • Boolean function, »and« or »or«.
                • +
                • Boolean value on the right hand side.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value »true« or»false«.
                • +
                +
                +

                »true/false«

                +

                With the block »true/false« you can return either the logical value »true« or »false« to another block.

                +

                Settings: +

                +
                  +
                • Boolean value, make your choice.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »not«

                +

                Using the »not« lets you invert a logical value and pass this value to another block.

                +

                Input value: +

                +
                  +
                • Boolean value, to be inverted.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«; result of inverting.
                • +
                +
                +

                »test« +

                +

                Using the »test« block will perform a test and returns a value which depends on the test result.

                +

                Input values: +

                +
                  +
                • Boolean value for the test; if no input value is given "true" will be assumed.
                • +
                • Arbitrary value, evaluated by a block.
                • +
                • Arbitrary value, evaluated by a block.
                • +
                +
                +

                Return value: +

                +
                  +
                • Value of arbitrary type.
                • +
                +
                +

                »null«

                +

                The block »null« is a place holder for an input value that is not yet specified. If for instance a new connection variable has been created and is not yet bound, the initial value of this connection will be set to »null«.

                +

                Return value:: +

                +
                  +
                • Boolean value, »null«.
                • +
                +
                +

                »parameter«

                +

                With the block »parameter« you can send numbers to another block.

                +

                Settings and input values: +

                +
                  +
                • Number
                • +
                +

                Return value: +

                +
                  +
                • Number
                • +
                +
                +

                »calculating«

                +

                With the block »calculating« you can sum up, subtract, multiply, and divide numbers. This block can only be used in conjunction with another block which requires a number as an input parameter.

                +

                Settings and input values: +

                +
                  +
                • Number, first number on the left you want to calculate with.
                • +
                • Option, mathematical operator, choose one of +, −, ×, ÷, ^.
                • +
                • Number, second number on the right you want to calculate with.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, result of the calculation.
                • +
                +
                +

                »mathematical function«

                +

                With the block »mathematical function« some elementary mathematical functions may be calculated. Available functions are »square root«, »absolute«, »invert« (multiply by -1), »ln« (natural logarithm), »log10« (decadic logarithm), »e^« (exponential function), »10^« (base 10 exponent)

                +

                Settings and input value: +

                +
                  +
                • Option, mathematical function, choose one.
                • +
                • Number to apply the function to.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, result of the function application.
                • +
                +
                +

                »trigonometric functions«

                +

                With the block »trigonometric function« sine, cosine, tangent and their respective revers functions can be calculated. Input values are expected in radian measure(see hint above).

                +

                Settings and input value: +

                +
                  +
                • Option, trigonometric function to choose from.
                • +
                • Number, in radian measure.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, result of the trigonometric calculation.
                • +
                +
                +

                »constant« +

                +

                With the »constant« block some mathematical constant values are available: »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«

                +

                Settings: +

                +
                  +
                • Option, mathematical constants, choose one.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, value of the selected mathematical constant. Infinity will return »infinity«.
                • +
                +
                +

                »number property«

                +

                With the block »number property« you check whether a given number has a specific property: »even«, »odd«, »prime«, »whole«, »positive«, »negative«, »divisible by«.

                +

                Settings and input values: +

                +
                  +
                • Number, the property of this input value will be checked.
                • +
                • Option, number property, choose one.
                • +
                • Number, evaluated from a block. The second input value is only required for the property »divisible by«.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«, depending on the selected property.
                • +
                +
                +

                »change by ... «

                +

                The block »change by ... « increments a numerical variable by a defined value.

                +

                Settings and input values: +

                +
                  +
                • Variable name, which value is to be changed. Choose the variable to be changed.
                • +
                • Number, given by a block.
                • +
                +
                +

                »round«

                +

                With the block »round« values may be rounded. Rounding will set the decimal places to 0. It depends on the value of the decimal places whether the block rounds up or down. You may also decide by settings to always round up or down.

                +

                Settings and input value: +

                +
                  +
                • Type of rounding, choose a round mode.
                • +
                • Number you want to round.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, rounded whole number, according to the round mode.
                • +
                +
                +

                »list evaluation«

                +

                With the block »list evaluation« you may analyse a list.

                +

                Modes for list evaluation: +

                +
                  +
                • sum - addition of all list values
                • +
                • min - smallest value in the list
                • +
                • max - largest value in the list
                • +
                • average - average of all list values
                • +
                • median - median of all list values
                • +
                • standard deviation - standard deviation of all list values
                • +
                • random item - one list value randomly selected
                • +
                +
                +

                Settings and input value: +

                +
                  +
                • Mode of list evaluation, choose one mode.
                • +
                • List of numbers
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, calculated according to the selected list evaluation mode.
                • +
                +
                +

                »remainder of«

                +

                The block »remainder of« calculates a divison and returns the remainder of the division.

                +

                Input values: +

                +
                  +
                • Number to be divided (dividend).
                • +
                • Number, divisor.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, rest of the division.
                • +
                +
                +

                »constrain« +

                +

                The block »constrain« ensures that given boundaries will not be exceeded.

                +

                Input values: +

                +
                  +
                • Number, that will be constrained.
                • +
                • Number, lower bound.
                • +
                • Number, upper bound.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, constrained by the lower and the upper bound.
                • +
                +
                +

                »random integer«

                +

                With the block »random integer« you may generate random integer numbers within defined limits

                +

                Input values: +

                +
                  +
                • Number, lower bound
                • +
                • Number, upper bound
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, a whole random number from within the upper and lower bounds.
                • +
                +
                +

                »random fraction«

                +

                With the block »random fraction« a random value between 0.0 and 1.0 is calculated.

                +

                Return value: +

                +
                  +
                • Number, positive random value between 0.0 and 1.0.
                • +
                +
                +

                »cast ... to String«

                +

                This block converts a number into a string containing that number. So for example the number 123 would be converted into the string »123«.

                +


                Options and input values: +

                +
                  +
                • Number, the number that you want to convert into a String containing this number.
                • +
                +
                +

                Return value: +

                +
                  +
                • String, the string containing the selected number.
                • +
                +
                +

                »cast ... to Char«

                +

                This block converts a single number to the corresponding ASCII letter. If there is no associated ASCII character for this number, an empty string is passed on. So for example the number 97 gets converted into the lower-case letter »a«.

                +

                Options and input values: +

                +
                  +
                • Number, the ASCII code that you want to convert into a character.
                • +
                +
                +

                Return values: +

                +
                  +
                • String, a single character that corresponds to the selected ASCII number.
                • +
                +
                +

                »make one NN step«

                +

                With this block you perform a calculation step of your neural network. Before you use this block, you should set the values of the input neurons with the block "set value input neuron ...". The input values are given into the network and the values of the output neurons are calculated using the network from the tab »Neural Network«. A detailed description of the neural network can be found + here. You can query the values of the output neurons after the calculation with the block »gett value output neuron ...«. +

                +

                »set value input neuron ... «

                +

                With this block you can set the value of an input neuron. You can use either variables, numbers, sensor data or mathematical operations as input values, e.g. the sum of two numbers.

                +

                Options and input values: +

                +
                  +
                • Neuron, select the input neuron whose value you want to set.
                • +
                • Number, the number that is too be used as input value.
                • +
                +
                +

                »get value output neuron ... «

                +

                With this block you can query the value of an output neuron. You should only use this block after the block »make one NN step«, otherwise no value has been calculated for the output neurons and the value is defaulted to 0.

                +

                Options: +

                +
                  +
                • Neuron, select the output neuron whose value you want to query.
                • +
                +

                Return value: +

                +
                  +
                • Number, the value of the selected output neuron.
                • +
                +
                +

                »set weight from ... to ... «

                +

                With this block you can set the weight of a connection between two neurons that are directly connected.

                +

                Options and input values: +

                +
                  +
                • Neuron, the first neuron from which the connection originates.
                • +
                • Neuron, the second neuron to which the connections leads.
                • +
                • Number, the value to which the weight is to be set.
                • +
                +
                +

                »set bias ... «

                +

                With this block you can set the bias of a neuron.

                +

                Options and input values: +

                +
                  +
                • Neuron, the neuron whose bias you want to set.
                • +
                • Number, the value to which the bias should be set.
                • +
                +
                +

                »get weight from ... to ... «

                +

                With this block you can query the current value of the weight of a connection between two neurons that are directly connected.

                +

                Options: +

                +
                  +
                • Neuron, the first neuron from which the connection originates.
                • +
                • Neuron, the second neuron to which the connections leads.
                • +
                +

                Return value: +

                +
                  +
                • Number, the value of the weight between the two neurons.
                • +
                +
                +

                »get bias ... «

                +

                With this block you can query the bias of a neuron.

                +

                Options: +

                +
                  +
                • Neuron, the neuron whose bias you want to query.
                • +
                +

                Return value: +

                +
                  +
                • Number, the value of the bias of the selected neuron.
                • +
                +
                +

                »Text«

                +

                The simple »Text« block creates a little text.

                +

                Input value: +

                +
                  +
                • String, containing arbitrary characters.
                • +
                +
                +

                Return value: +

                +
                  +
                • String, containing arbitrary characters.
                • +
                +
                +

                »comment«

                +

                Document your program with this block, so that you and others will find it easier to understand your program later. This comment will also be visible in the generated source code.

                +

                Input value: +

                +
                  +
                • String, containing arbitrary characters.
                • +
                +
                +

                »create Text«

                +

                The »create text« block compiles a text from different input parameters. Using the + sign will insert further input slots. All input parameters will be connected one after the other. Essentially the »create text« block converts an arbitrary input value into a text string.

                +

                Input values: +

                +
                  +
                • Arbitrary values [numbers, text, logical values, colours)
                • +
                +
                +

                Return value: +

                +
                  +
                • String, containing arbitrary characters, compiled sequentially from all input values.
                • +
                +
                +

                »eval .. as ...«

                +

                The »value ... as ...« block evaluates an expression entered as text (”expression") and returns the result. The expression can be “sqrt(a^2 + b^2)”, for example. It is evaluated to a number. The block is very powerful: almost all expressions that can be generated with Blockly blocks can also be written as text.

                +

                How the expression can be constructed is described on a separate wiki page. Please note: there are general expressions that are valid for every robot and specific parts that are only valid for the selected robot. This is necessary because each robot supports its own sensors and actuators. This is described in detail on the wiki page. +

                +

                The user must specify in a drop-down menu which type is expected for the result. Which types are possible depends on the selected robot.

                +

                Input value: +

                +
                  +
                • Text, enter an expression.
                • +
                + Options: +
                  +
                • Type, the desired return type of the expression, e.g. a number, a logical value or a string. +
                • +
                +
                +

                »append Text«

                +

                The »append text« block will append some string to a given string, for instance to extend a message with a signature.

                +

                Input values: +

                +
                  +
                • String, to which some other text will be appended.
                • +
                • String, that shall be appended.
                • +
                +
                +

                »cast ... to Number«

                +

                This block converts a string into a number if this is possible. So if a string contains only numbers, this block can convert the string into a number. If the block does not contain numbers, this block will pass »NaN« when used in th Open Roberta Lab simulation and may have a different + behavior depending on the programming language of the robot you are currently using. If the string starts with numbers but then contains other characters that are not numbers, this block will pass only the numbers and stop as soon as the first character is in the string. So, as an example, this block makes the number 52 out of the string »52abcd«. +

                +

                Options and input values: +

                +
                  +
                • String, the string you want to convert into a number.
                • +
                +
                +

                Return values: +

                +
                  +
                • Number, the converted number.
                • +
                +
                +

                »cast ... at index ... to Number«

                +

                This block converts a letter or a character from a character string into the corresponding ASCII number. Each character has an associated number in the ASCII table. For example, a lower-case »a« is converted into the number 97.

                +

                Options and input values: +

                +
                  +
                • String, from which a single character is selected.
                • +
                • Number, the digit of the character to be converted. Note that the numbering starts at 0.
                • +
                +
                +

                Return values: +

                +
                  +
                • Number, the ASCII number of to selected character. Number between 0 and 255.
                • +
                +
                +

                »create list«

                +

                The block »empty list« creates a list with no content.The block »list« generates a list with some predefined values.

                +

                This block may only be used in the context of a »set variable« block.

                +

                Using »+« or »−« enables you to extend or reduce the list at its end.

                +

                Settings and input values: +

                +
                  +
                • List type, »Number«, »String«, »Boolean«, »Colour«, »Connection«.
                • +
                • Create further list element, append to the end of the list.
                • +
                • Delete list element at the end of the list.
                • +
                • Values, according to the list type. Here the input of initial values is possible.
                • +
                +
                +

                Return value: +

                +
                  +
                • Empty list or list, containing elements of the specified list type.
                • +
                +
                +

                »repeat element in list«

                +

                The »repeat element in list« block generates a list of equal elements.

                +

                Settings and input values: +

                +
                  +
                • List type, »Number«, »Boolean«, »String«, »Colour« or »Connection«.
                • +
                • List element, according to the selected list type. This value will be repeated in the list.
                • +
                • Number, defining how often the list element will be repeated.
                • +
                +
                +

                Return value: +

                +
                  +
                • List of the specified list type, containing the specified number of equal elements.
                • +
                +
                +

                »length of«

                +

                The »length of« block returns a value which is the length of the list given as parameter. An empty list has a length of 0.

                +

                Input value: +

                +
                  +
                • List, evaluated by an appropriate block.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, number of list elements.
                • +
                +
                +

                »is empty?«

                +

                A list given as parameter will be checked whether it is empty.

                +

                Input value: +

                +
                  +
                • List, evaluated by an appropriate block.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean, either »true« or »false«.
                • +
                +
                +

                »find in list«

                +

                A list is searched for an item. If the item is in the list, the list position will be returned. If the item is not in the list the result is -1.

                +

                Settings and input values: +

                +
                  +
                • List, that will be examined.
                • +
                • Position of the occurrence, either »first« or »last«.
                • +
                • Value, list item to be found.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, indicating the position where the element was found in the list.

                  +

                  Note: Counting list positions will start with 0.

                • +
                +
                +

                »get list element«

                +

                This block accesses an item of a list. Depending on the settings this item may be altered.

                +

                A list is given as parameter. Then a drop-down-list specifies what will happen to the list item under consideration.

                +

                Settings: +

                +
                  +
                • List, that is under consideration.
                • +
                • Option, action for the element found: »get« reads the element and leaves it unchanged, »get and remove« reads the element and removes it from the list, »remove« just removes the element from the list.
                • +
                • Option, position of the element found: »#«, »# from end«, »first«, »last« or »random« .
                • +
                • +

                  Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected as position.

                  +

                  Note: Counting of list positions starts with 0.

                • +
                +
                +

                Return value: +

                +
                  +
                • +

                  List element that has been found at the specified list position; »undefined«, if the list position does not exist.

                  +

                  With selection of »remove« there is no return value; instead the list will be shortened by this list element.

                • +
                +
                +

                »set list element«

                +

                In a list given as input parameter one specified element will be replaced by a new value.

                +

                Settings and input values: +

                +
                  +
                • List, that will be changed.
                • +
                • Option, action for the element found; »set« changes the element, »insert at« inserts a new element into the list.
                • +
                • Option, position for the element to be changed: »#«, »# from end«, »first«, »last« or »random« .
                • +
                • Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected.
                  Note: Counting of list positions begins with 0. +
                • +
                • List element, that will be set or inserted at the selected list position.
                • +
                +
                +

                »get sublist«

                +

                From a list given as parameter a sublist will be created. The sublist contains all those elements that match the further specifications of the block.

                +

                Settings and input values: +

                +
                  +
                • List to be examined.
                • +
                • Position, start of the sublist: »#«, »# from end« or »first«.
                • +
                • Number, indicating the list position. This input value is not required if »first« has been selected.

                  +

                  Note: Counting of list positions starts with 0.

                • +
                • Position, end of the sublist: »#«, »# from end« or »last«.
                • +
                • Number, indicating the list position. This input value is not required if »last« has been selected.

                  +

                  Note: Counting of list positions starts with 0.

                • +
                +
                +

                Return value: +

                +
                  +
                • List, a sublist of the same type as the given list.
                • +
                +
                +

                »Colour picker «

                +

                With this block you can choose from a pool of predefined colours for your robot.

                +

                options: +

                +
                  +
                • option, choose the colour you want to use.
                • +
                +
                +

                Return value: +

                +
                  +
                • colour, your selected colour.
                • +
                +
                +

                »Colour picker «

                +

                With this block you can choose from a pool of predefined colours for your robot.

                +

                options: +

                +
                  +
                • option, choose the colour you want to use.
                • +
                +
                +

                Return value: +

                +
                  +
                • colour, your selected colour.
                • +
                +
                +

                »Colour picker «

                +

                With this block you can choose from a pool of predefined colours for your robot.

                +

                options: +

                +
                  +
                • option, choose the colour you want to use.
                • +
                +
                +

                Return value: +

                +
                  +
                • colour, your selected colour.
                • +
                +
                +

                »Colour with red ... green ... blue ... «

                +

                With this block you can create your own colour by mixing red, green and blue.

                +

                Input values: +

                +
                  +
                • number, the red part in your color. Value between 0 and 255.
                • +
                • number, the green part in your color. Value between 0 and 255.
                • +
                • number, the blue part in your color. Value between 0 and 255.
                • +
                +
                +

                »Hue Tolerance«

                +

                Robots often do not recognise the exact colour tone precisely. The lighting conditions can cause a colour to be perceived as too dark or too light. This block allows you to set a tolerance range for the colour to be detected, so that every shade of red, for example, is detected as red.

                +

                Input values: +

                +
                  +
                • Colour, colour received from a sensor.
                • +
                • Colour, defined colour for comparison with sensor data.
                • +
                • Number, tolerance value for colour detection.
                • +
                + Return value: +
                  +
                • Truth value, ‘true’ if the colour is within the tolerance range, ‘false’ if the colour deviates too much.
                • +
                +
                +

                »set variable«

                +

                Using the block »set variable« will assign a value to a variable. Depending on the variable type the value may be assigned by an input connector.

                +

                Settings and input value: +

                +
                  +
                • Variable, which value is to be changed.
                • +
                • Value, new value for the variable, evaluated from a suitable block.
                • +
                +
                +

                »get variable«

                +

                Using the block »get variable« returns the value of a variable to another block.The type of the output parameter is equal to the type that has been assigned to the variable in the »start« block.

                +

                Settings:
                +

                +
                  +
                • Variable, that will be read. The value will not be changed by reading.
                • +
                +
                +

                Return value:
                +

                +
                  +
                • Value, stored in the variable.
                • +
                +
                +

                »Function blocks with/without input parameters and no return statement«

                +

                In a function block with/without input parameter and without return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized.

                +

                If a function block contains an if-block the function may be terminated before reaching it's end.

                +

                The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                +

                Settings: +

                +
                  +
                • Function name, no special characters and white spaces allowed.
                • +
                • Generate new local variables, that will be assigned with the function call.
                • +
                • Delete the associated local variable.
                • +
                +
                +
                +
                +
                  +
                • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.

                  +
                • +
                • +

                  If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.

                  +
                • +
                +
                +
                +
                +

                »Function blocks with/without input parameters with return statements«

                +

                In a function block with/without input parameter and with return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized. After running through all the blocks of the function a value will be returned.

                +

                If a function block contains an if-block the function may be terminated before reaching it's end. An alternative value may be returned by the if-block.

                +

                The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                +

                Settings: +

                +
                  +
                • Function name, no special characters and white spaces allowed.
                • +
                • Generate new local variables, that will be assigned with the function call.
                • +
                • Delete the associated local variable.
                • +
                • Data type for the return value; choose one data type.
                • +
                • Block, that returns a value of the defined data type.
                • +
                +
                +

                Return value: +

                +
                  +
                • Value of the defined data type, evaluated in an appropriate block.
                • +
                +
                +
                +
                +
                  +
                • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.
                • +
                • If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.
                • +
                +
                +
                +
                +

                »if block to be used within a function«

                +

                The if statement within a function is of special importance. As the function sequence meets an if statement the validity of the condition will be checked.

                +

                If statement within a function with return value:

                +
                  +
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates. The second input value of the if statement will be returned. A possibly defined return value of the function will be ignored. The return value data type is determined by the return data type of the function definition.
                • +
                • If the condition evaluates to »false« the sequence of the function blocks will be continued. The return value of the function will be returned after reaching the end of the function.
                • +
                +

                If statement within a function with no return value:

                +
                  +
                • An if statement within a function without return value has just the if statement as input parameter.
                • +
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates.
                • +
                • If the condition evaluates to »false« the sequence of the function blocks will be continued.
                • +
                +

                Settings and input values: +

                +
                  +
                • Boolean value, possibly evaluated by a condition.
                • +
                • Value of the specified data type.
                • +
                +
                +

                Return value: +

                +
                  +
                • Value of the specified data type.
                • +
                +

                +

                »function call without return value «

                +

                With this block you can call a previous defined function in your program.

                +

                Input values: +

                +
                  +
                • element, depending of the required input value of the function.
                • +
                +
                +

                »function call with return value «

                +

                With this block you can call a previous defined function in your program.

                +

                Input values: +

                +
                  +
                • element, depending on the required input value of the function.
                • +
                +

                Return value: +

                +
                  +
                • element, depending on the return value of the function.
                • +
                +
                +

                »send message ... with strength ... « +

                +

                With this block you can send a message to other robots in your environment. The message can be either a number, a logical value or a string.

                +

                Options and input values: +

                +
                  +
                • option, choose the data type of the message that you want to send.
                • +
                • element of the chosen data type, the message that you want to send to other robots.
                • +
                • option, strength with which you want to send your message. The higher the strength, the further your message will be sent.
                • +
                +
                +

                »receive message ... «

                +

                With this block you can receive messages from other robots. You can choose which data the message should contain.

                +

                Options: +

                +
                  +
                • option, data type of the message.
                • +
                +
                +

                Return values: +

                +
                  +
                • element of the data type, received message.
                • +
                +
                +

                »set channel to ...«

                +

                With this block you can change the channel on which your robot sends and receives its messages. You can only communicate with other robots that send and receive on the same channel.

                +

                Input values: +

                +
                  +
                • number, channel that you want to communicate on with other robots.
                • +
                +
                +
                + \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/help/progHelp_txt4_de.html b/OpenRobertaServer/staticResources/help/progHelp_txt4_de.html index 1bd85f7c77..3a6b5d1242 100644 --- a/OpenRobertaServer/staticResources/help/progHelp_txt4_de.html +++ b/OpenRobertaServer/staticResources/help/progHelp_txt4_de.html @@ -1,451 +1,1413 @@ -

                »Fahre ... Tempo % ... Strecke cm ...«

                Mit dem Block »Fahre ... Tempo ... Strecke« kannst du zusätzlich zu Richtung und Tempo auch die Fahrstrecke des Roboters programmieren. Dein Roboter fährt so lange, bis die eingestellte Strecke gefahren ist. Die Geschwindigkeit kannst du im Feld Tempo einstellen. Wenn dieser Block »zu Ende« ist, stoppen die Motoren automatisch.

                »Fahre« steuert beide Motoren des Roboters gleichzeitig.

                Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die Roboter-Konfiguration, insbesondere den Raddurchmesser.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Fahrtrichtung, wähle die gewünschte Richtung.
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • Zahl, Länge für die Strecke in cm.
                • -

                »Fahre ... Tempo % ...«

                Mit dem Block »Fahre ... Tempo« kannst du die Richtung und das Tempo (Geschwindigkeit) deines Roboters programmieren. Dein Roboter fährt so lange vorwärts oder rückwärts, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird.

                »Fahre« steuert beide Motoren des Roboters gleichzeitig.

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Richtung, wähle die gewünschte Fahrrichtung aus.
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • -

                »Stoppe«

                Mit dem Block »Stoppe« werden die Motoren deines Roboters gestoppt. Das bedeutet, dein Roboter hält an.

                »Steure ... Tempo links ... Tempo rechts ...«

                Mit dem Block »Steure ... Tempo links ... Tempo rechts ...« kannst du den Roboter so programmieren, dass er eine Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte setzt. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und Raddurchmesser. Mit der Drehrichtung legst du die Fahrtrichtung fest.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Drehrichtung, wähle die gewünschte Drehrichtung aus.
                • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • -

                »Steure ... Tempo links ... Tempo rechts ... Strecke ...«

                Mit dem Block »Steure ... Tempo links ... Tempo rechts ... Strecke ...« kannst du den Roboter so programmieren, dass er eine vorgegebene Strecke als Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte setzt. Die Strecke bezieht sich auf die Mitte zwischen beiden Rädern. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und Raddurchmesser. Mit der Richtung legst du die Fahrtrichtung fest.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Richtung, wähle die gewünschte Fahrtrichtung aus.
                • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • Zahl, Strecke in Zentimetern, die zurückgelegt werden soll.
                • -

                »Drehe ... Tempo % ... Grad«

                Mit dem Block »Drehe ... Tempo ... Grad« kannst du die Richtung (rechts/links), in der sich der Roboter um die eigene Achse drehen soll, programmieren. Zusätzlich zur Richtung kann noch im Feld »Grad« angegeben werden, um wie viel Grad sich dein Roboter (um die eigene Achse) drehen soll. Dies bedeutet, dass du beispielsweise mit der Einstellung 360 Grad deinen Roboter einmal um die eigene Achse drehen lassen kannst. Der Block »Drehe ... Tempo ... Grad« steuert beide Motoren des Roboters, damit sich der Roboter um die eigene Achse dreht.

                Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die Roboter-Konfiguration, insbesondere den Raddurchmesser und die Spurbreite.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Drehrichtung, wähle die gewünschte Drehrichtung aus.
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • Gradzahl, um die der Roboter sich drehen soll. Negative Zahlen sind nicht zugelassen.
                • -

                »Drehe ... Tempo % ...«

                Mit dem Block »Drehe ... Tempo« kannst du die Richtung (rechts/links), in der sich der Roboter drehen soll, programmieren. Dein Roboter dreht sich so lange auf der Stelle, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird. Die Geschwindigkeit kannst Du im Feld »Tempo« einstellen. »Drehe« steuert beide Motoren des Roboters gleichzeitig in entgegengesetzten Richtungen, dadurch dreht sich der Roboter auf der Stelle.

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Drehrichtung, wähle die gewünschte Drehrichtung aus.
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • -

                Falls sich dein Roboter in die falsche Richtung dreht, sind die Motoren an die falschen Ports angeschlossen. Es genügt dann, die Ports zu tauschen, damit der Roboter in die richtige Richtung dreht.

                »Motor Port ... an Tempo ... Umdrehungen/Grad«

                Mit dem Block »Motor Port ... an Tempo ... Umdrehungen/Grad« stellst du das Tempo (Geschwindigkeit) eines Motors ein. Dein Roboter startet den gewählten Motor, bis er die eingestellte Anzahl Umdrehungen bzw. Winkelgrade gemacht hat.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Motor Port, wähle den Motorport aus, an dem der Motor angeschlossen ist.
                • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • Umdrehungen oder Grad. 1 Umdrehung entspricht 360 Grad.
                • Zahl, Anzahl der Umdrehungen bzw. Winkelgrade. Es sind nur positive Zahlen zugelassen.
                • -

                »Motor Port ... an Tempo % ...«

                Mit dem Block »Motor Port ... an Tempo« programmierst du das Tempo (Geschwindigkeit) eines Motors. Dein Roboter startet den gewählten Motor, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird.

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Motor Port, wähle den Motor Port aus, an dem der Motor angeschlossen ist.
                • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • -

                »Motor ... an Tempo % ...«

                Dieser Block setzt das Tempo (Geschwindigkeit) eines Motors auf einen neuen Wert.

                Optionen und/oder Eingabewerte: -

                  -
                • Motor, wähle den Motor, den du steuern möchtest.
                • Zahl, Tempo zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • -

                »Stoppe Motor ...«

                Mit diesem Block kannst du einen Motor deines Roboters stoppen.

                Optionen: -

                  -
                • Motor; wähle den Motor, den du stoppen möchtest.
                • -

                »Setze Servomotor SG90 ... auf ° ...«

                Dieser Block steuert einen der Servomotoren. Wähle aus, welches Servo du betätigen willst und wie weit es sich bewegen soll.

                Optionen und/oder Eingabewerte: -

                  -
                • Motor Port, wähle einen Servomotor aus, den du in der Roboterkonfiguration angelegt hast.
                • Gradzahl, in die der Motor bewegt werden soll.
                • -

                »Zeige Text ... in Zeile ...«

                Mit dem Block »Zeige Text« kannst du Text und Zahlen auf dem Display deines Roboters anzeigen lassen. Dabei kannst du zusätzlich noch bestimmen, in welcher Zeile der Text auf dem Bildschirm erscheinen soll.

                Das Display ist für Texte in mehreren Zeilen (von links nach rechts) eingeteilt.

                Wenn zuvor schon etwas auf dem Display angezeigt war, werden nur die Stellen überschrieben, in die der Text geschrieben wird.

                Eingabewerte: -

                  -
                • Text, der im Display erscheinen soll.
                • Zahl, Zeilennummer, in der der Text beginnen soll zwischen 0 und 7.
                • -

                »Lösche Bildschirm«

                Mit diesem Block kann der Bildschirminhalt deines Roboters gelöscht werden.

                »Zeige auf Serial Monitor«

                Mit diesem Block kannst du Text auf dem Serial Monitor über USB anzeigen.

                Eingabewert: -

                  -
                • Text, der Text der auf dem Seriellen Monitor angezeigt werden soll.
                • -

                »Spiele Stück«

                Mit diesem Block kannst du den Roboter einen Klang aus dem Auswahlmenü abspielen lassen.

                Auswahlmöglichkeiten: -

                  -
                • Option, Wähle welches Stück gespiel werden soll.
                • -

                »Schalte LED an Bildschirm Farbe«

                Mit dem Block »Schalte LED an« kannst du die LED am Bildschirm deines Roboters anschalten und dabei die Farbe auswählen, in der sie leuchten soll.

                »Schalte LED aus Bildschirm«

                Mit diesem Button kannst du die LED am Bildschirm deines Roboters wieder ausschalten.

                »schalte Statusleuchte ... an Farbe ...«

                Mit dem Block »Statusleuchte« kannst du die Statusleuchte, also die Hintergrundfarbe des Bildschirms programmieren.

                Einstellmöglichkeiten: -

                  -
                • Bildschirm, wähle einen Bildschirm aus.
                • Farbe, wähle eine Farbe aus.

                • -

                »Statusleuchte aus«

                Mit dem Block »Statusleuchte aus« kannst du die Statusleuchte des Bildschirms ausschalten.

                Einstellmöglichkeiten:

                -
                  -
                • Bildschirm, wähle einen Bildschirm aus.
                • -

                »Bildschirmtaste ... gedrückt?«

                Mit diesem Block kannst du die Bildschirmtasten deines Roboters abfragen, ob sie gerade gedrückt werden.

                Optionen: -

                  -
                • Taste, wähle die Taste, die du abfragen möchtest.
                • -
                Rückgabewert: -
                  -
                • Wahrheitswert, »wahr«, wenn die Taste gedrückt wird, sonst »falsch«.
                • -

                »gib Abstand cm Ultraschallsensor ...«

                Mit diesem Block kannst du den Ultraschallsensor deines Roboters abfragen. Dieser Sensor misst die Entfernung zum nächsten Objekt, indem er Ultraschallwellen aussendet und aus der Reflexion dieser Wellen die Distanz zu dem Objekt berechnet.

                Rückgabewert: -

                  -
                • Zahl, die Entfernung zum nächsten Objekt in Zentimetern.
                • -

                »gib Linie Infrarotsensor ...«

                Mit diesem Block kannst du den Infrarotsensor deines Roboters verwenden, um eine Linie zu erkennen. Eine heller Bereich der Linie wird als »0« gelesen, ein dunkler Bereich wird als »1« gelesen.

                Optionen:

                -
                  -
                • Sensor, wähle den Sensor aus, den du abfragen möchtest.
                • -

                Rückgabewert:

                -
                  -
                • Wahrheitswert, »wahr«, wenn sich eine Linie vor dem Infrarotsensor befindet sonst falsch«.
                • -

                »Gib Umdrehungen/Grad/Abstand Drehsensor Port«

                Mit dem Block »Gib Umdrehungen/Grad/Abstand Drehsensor« kannst du einem anderen Block die Motorumdrehungen »mitteilen«.

                Wenn »Umdrehungen« eingestellt wurde, wird die Zahl der Umdrehungen ausgegeben.

                Wenn »Grad« eingestellt wurde, wird die Gradzahl aller Umdrehungen ausgegeben, wobei eine volle Umdrehung genau 360 Grad entspricht.

                Wenn »Abstand« eingestellt wurde, wird berechnet, welche Strecke das Rad des Motors zurückgelegt hat. Das ist natürlich abhängig davon, wie groß das Rad in der Roboterkonfiguration eingestellt ist.

                Einstellmöglichkeiten: -

                  -
                • Messmethode, stelle ein, wie gemessen werden soll.
                • Port, stelle ein, an welchem Port der Drehsensor bzw. Motor angeschlossen ist.
                • -

                Rückgabewert: -

                  -
                • Zahl, die je nach eingestellter Messmethode entweder die Umdrehungszahl, die Gradzahl oder die zurückgelegte Strecke darstellt.
                • -



                »Setze Drehsensor zurück«

                Mit dem Block »Setze Drehsensor zurück« kann der interne Sensor (Motor-Encoder) eines Motors auf den Wert 0 zurückgesetzt werden.

                Einstellmöglichkeiten: -

                  -
                • Port, wähle aus, an welchem Port der Drehsensor/Motor angeschlossen ist.
                • -

                »Gib Wert Zeitgeber ...«

                Mit dem Block »Gib Wert Zeitgeber« kannst du einem anderen Block den aktuellen Stand des internen Zeitgebers in Millisekunden »mitteilen«. Der Zeitgeber wird automatisch mit dem Beginn eines Programms gestartet. Es stehen 5 Zeitgeber zur Verfügung.

                Einstellöglichkeiten: -

                  -
                • Zeitgeber-Nummer, wähle den Zeitgeber aus, dessen Wert du ermitteln möchtest.
                • -

                Rückgabewert: -

                  -
                • Zahl, Anzahl Millisekunden, die seit dem Programmstart oder dem letzten Zurücksetzen des Zeitgebers vergangen sind.
                • -

                »Setze Zeitgeber ... zurück«

                Mit dem Block »Setze Zeitgeber« können die internen Zeitgeber (1 bis 5) auf den Wert 0 zurückgesetzt werden.

                Einstellmöglichkeiten: -

                  -
                • Zeitgeber-Nummer, wähle den Zeitgeber aus, den du zurücksetzen möchtest.
                • -

                »Gib Farbe Kamera«

                Mit dem Block »Gib Farbe Kamera« wird die Fabe eines in der Konfiguration festgelegten Areals des erfassten Bildes ausgegeben.

                Rückgabewert: -

                  -
                • Farbe, durchschnittliche Farbe des in der Konfiguration eingestellten Areals
                • -

                »Gib Anzahl Linien Kamera«

                Mit dem Block »Gib Anzahl Linien Kamera« kannst du die Kamera benutzen, um die vom Roboter erkannten Linien zu zählen. Dabei können maximal 4 Linien gleichzeitig erkannt werden.

                Rückgabewert: -

                  -
                • Zahl, Anzahl der Linien, die mit der Kamera erkannt werden (maximal 4)
                • -

                »Gib Informationen von Linie #«

                Mit dem Block »Gib Informationen von Linie #« kann einem andern Block die Position der Linie im Kamerabild, sowie die erkannte breite mitgeteilt werden. Die Maximal 4 von der Kamera erkannten Bilder werden mit den Zahlen 0-3 Indiziert.

                Dabei Ist zu beachten, dass die erste Linie den Index »0« hat, und die vierte den Index »3«.

                Eingabewert: -

                  -
                • Zahl, Index der Linie, von der die Position und die Breite zurückgegeben werden soll (0-3).
                • -
                Rückgabewert: -
                  -
                • Liste: Position [-100, 100] und Breite der Linie am angegebenen Index
                • -

                »Gib Farbe von Linie #«

                Mit dem Block »Gib Farbe von Linie #« kann einem anderen Block die Farbe einer Linie am ausgewählten Index (0-3) mitgeteilt werden.

                Dabei Ist zu beachten, dass die erste Linie den Index »0« hat, und die vierte den Index »3«.

                Eingabewert: -

                  -
                • Zahl, Index der Linie, von der die Farbe mitgeteilt werden soll (0-3)
                • -
                Rückgabewert: -
                  -
                • Farbe, Farbe der ausgewählten Linie
                • -

                »Gib Ball Informationen«

                Mit dem Block »Gib Ball Informationen« kann einem anderen Block die Position des Balls im Kamerabild sowie dessen vom Roboter gemessener Durchmesser mitgeteilt werden.

                Damit ein Ball erkannt wird, muss in der Konfiguration dessen Farbe festgelegt werden.

                Rückgabewert: -

                  -
                • Liste, Position des Balls [x,y] und Durchmesser
                • -

                »Gib Bewegung Kamera«

                Mit dem Block »Gib Bewegung Kamera« kann einem anderen Block mitgeteilt werden, ob der Roboter im Kamerabild eine Bewegung wahrnimmt.

                Rückgabewert: -

                  -
                • Wahrheitswert, »wahr«, wenn eine Bewegung erkannt wird, »falsch«, wenn keine Bewegung erkannt wird
                • -

                »Mini-Taster ... gedrückt?«

                Mit dem Block »Mini-Taster ... gedrückt?« kann einem anderen Block mitgeteilt werden, ob der ausgewählte Taster gedrückt wird.

                Eingabewert: -

                  -
                • Port, welcher Taster überprüft werden soll
                • -
                Rückgabewert: -
                  -
                • Wahrheitswert, »wahr«, wenn der Taster gedrückt wird, »falsch«, wenn er nicht gedrückt wird
                • -

                »Gib Wert % Lichtsensor«

                Mit dem Block »Gib Wert % Lichtsensor« kann einem anderen Block mitgeteilt werden, wie hell das Licht ist, das den Lichtsensor des Roboters trifft.

                Rückgabewert: -

                  -
                • Zahl, Prozentsatz der Lichtstärke als Zahl von 0-100
                • -

                »Gib ... Umweltsensor«

                Mit dem Block »Gib ... Umweltsensor« kann einem Block ein bestimmter Messwert des Umweltsensors mitgeteilt werden. Der Umweltsensor hat diverse Funktionen. Er kann die Temperatur, die Luftfeuchtigkeit, den Luftdruck und die Innenraumluftqualität messen.

                Rückgabewert: -

                  -
                • Temperatur, Zahl von -45° bis 80° Celsius
                • Luftfeuchtigkeit, Zahl als Prozentsatz der Luftfeuchtigkeit als Zahl von 0-100
                • Luftdruck, Zahl gibt Luftdruck in hpa an
                • Innenraumluftqualität, Zahl gibt IAQ-Wert der Luft an
                • Genauigkeit, Zahl gibt die Genauigkeit des Sensors in Prozent an
                • Kalibrierung erforderlich, Wahrheitswert gibt "wahr" aus, wenn eine Kalibrierung des Sensors erforderlich ist und "falsch" wenn nicht
                • -

                »Umweltsensor kalibrieren«

                Mit dem Block »Umweltsensor kalibrieren« kann der Umweltsensor neu kalibriert werden. Das ist am Anfang nötig und wenn er ungenaue Messwerte liefert. Die Kalibrierung dauert etwa 5 Minuten.


                »Gib ... RGB Gestensensor«

                Mit dem Block »Gib ... RGB Gestensensor« kann einem anderen Block diverse Rückgabewerte des RGB Gestensensors mitgeteilt werden. Der Sensor nimmt Farbe, Umgebungslicht, Geste, Nähe und RGB wahr.

                Rückgabewert: -

                  -
                • Farbe, gibt erkannte Farbe als Farbtyp zurück
                • Umgebungslicht, gibt Stärke des Umgebungslichts als Zahl von 0-100 zurück
                • Geste, Zahl codiert eine von 6 möglichen erkennbaren Gesten
                • Nähe, gibt die Nähe des Objekts vor dem Sensor als Zahl zurück
                • RGB, gibt die RGB-Werte des Objekts vor dem Sensor als Liste zurück
                • -

                »Gib Beschleunigung g Kombisensor ...«

                Mit dem Block »Gib Beschleunigung g Kombisensor« kann einem anderen Block mitgeteilt werden, wie schnell der mit Kombisensor ausgestattete Roboter beschleunigt.

                Eingabewert: -

                  -
                • x, y, z, Richtung, in die Beschleunigung gemessen wird
                • -

                Rückgabewert: -

                  -
                • Zahl, Beschleunigung in g
                • -

                »Gib magnetischer Fluss ° Kombisensor«

                Mit dem Block »Gib magnetischer Fluss °« kann über den Kombisensor anhand des Magnetfelds der Erde ermittelt werden, in welche Himmelsrichtung der Roboter gedreht ist.

                Rückgabewert: -

                  -
                • Zahl, Himmelsrichtung als Gradzahl
                • -

                »Gib gyroscope ° Kombisensor ...«

                Mit dem Block »Gib gyroscope °« kann einem anderen Block über den Kombisensor mitgeteilt werden, wie schnell sich der Roboter in eine bestimmte Richtung dreht. Die gemessene Achse (x,y,z) muss dabei angegeben werden.

                Eingabewert: -

                  -
                • x, y, z, Richtung, in die Geschwindigkeit gemessen wird
                • -
                Rückgabewert: -
                  -
                • Zahl, Drehgeschwindigkeit in Grad
                • -

                »Wenn mache«

                Mit dem Block »Wenn mache« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache«-Block benötigt einen logischen Wert als Eingabewert. Falls die Bedingung in »Wenn« erfüllt (wahr) ist, wird der eingefügte Block (oder die Blöcke) ausgeführt. Bei einem verschachtelten »Wenn mache« Block, also wenn eine weitere Unterscheidung eingefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist (Bedingung = falsch), wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert.

                Die Bedingungen können beliebig durch Anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Eine weitere Bedingung am Ende anfügen.
                • Die letzte Bedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
                • -

                »Wenn mache sonst«

                Mit dem Block »Wenn mache sonst« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache sonst«-Block benötigt hierfür einen logischen Wert als Eingabewert. Falls die Bedingung erfüllt (wahr) ist, wird der dort eingefügte Block (oder die Blöcke) ausgeführt, ansonsten (Bedingung nicht erfüllt = falsch) wird der Block (bzw. die Blöcke), der bei »sonst« eingefügt wurde, ausgeführt. Bei einem verschachtelten »Wenn mache sonst« Block, also wenn eine weitere Unterscheidung dazugefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist, wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert. Nur wenn beide Bedingungen nicht erfüllt sind, wird der Block ausgeführt, der bei »sonst« eingefügt wurde.

                Die Bedingungen können beliebig durch anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Eine weitere Bedingung am Ende anfügen.
                • Die letzte Bedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »falsch« ist.
                • -

                »Wiederhole unendlich oft«

                Mit dem Block »Wiederhole unendlich oft« kannst du Blöcke endlos von deinem Roboter ausführen lassen. Alle Blöcke, die sich im »Wiederhole unendlich oft«-Block befinden, werden immer wieder ausgeführt. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block. Deshalb wird dieser Block auch »Endlosschleife« genannt.

                Eingaben: -

                  -
                • Blöcke, die wiederholt ausgeführt werden.
                • -

                »Wiederhole n mal«

                Mit dem Block »Wiederhole n mal« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole n mal« befinden, werden so oft ausgeführt, wie im Eingabefeld eingestellt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, bis die eingestellte Wiederholungszahl erreicht ist. Deshalb wird dieser Block auch »Schleife« genannt.

                Nur ganzzahlige Werte können eingegeben werden.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Zahl, wie oft die enthaltenen Blöcke wiederholt werden sollen.
                • Blöcke, die wiederholt ausgeführt werden.
                • -

                »Wiederhole solange/bis«

                Mit dem Block »Wiederhole solange/bis« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole solange/bis« befinden, werden immer wieder ausgeführt, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Deshalb wird dieser Block auch »bedingte Schleife« genannt.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • »solange« oder »bis«, um den Typ der bedingten Wiederholung zu bestimmen.
                • Logischer Wert, »wahr« oder »falsch«.
                • Blöcke, die wiederholt ausgeführt werden.
                • -

                »Für Wert aus der Liste«

                Mit dem Block »Für Wert aus der Liste« werden nacheinander alle Werte einer Liste an eine Variable übergeben und können dann in der so genannten Schleife verarbeitet werden. Mit jedem Schleifendurchlauf wird das nächste Element aus der Liste geholt, bis die Liste vollständig abgearbeitet ist. Der Wert des Listenelements wird an die Variable Element gebunden und kann in den enthaltenen Blöcken verwendet werden.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Typ der Listenelemente, »Zahl«, »Zeichenkette«, »logischer Wert«, »Farbe«, »Verbindung«
                • Variable, frei wählbarer Name, an den nacheinander die Listenelemente übergeben werden.
                • Liste, die Elemente des festgelegten Typs enthält. Wenn die Listenelemente nicht den richtigen Typ haben, kann die Liste nicht als Eingabewert verwendet werden.
                • Blöcke, die wiederholt ausgeführt werden.
                • -

                »Zähle von bis«

                Mit dem Block »Zähle von bis« kannst du andere Blöcke mehrfach von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Zähle von bis« befinden, werden so oft ausgeführt, bis die Zählung im Eingabefeld abgearbeitet ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange die Zählbedingung im Eingabefeld erfüllt ist, d.h. der Endwert der Zählung noch nicht erreicht ist. Die Werte der Zählung werden jeweils an die Zählvariable gebunden, deren Name frei eingestellt werden kann. Der Wert der Zählvariablen kann in den Blöcken der Schleife verwendet werden. Der letzte Eingabewert gibt an, in welcher Schrittweite gezählt wird.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Variable, frei wählbarer Name für die Zählvariable.
                • Zahl, Anfangswert der Zählschleife.
                • Zahl, Endwert der Zählschleife.
                • Zahl, Schrittweite für die Zählschleife.
                • Blöcke, die wiederholt ausgeführt werden.
                • -

                »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren«

                Mit dem Block »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren« kann eine Schleife vorzeitig beendet bzw. wieder zum Anfang der Schleife gesprungen werden. Sobald dieser Block in einer Reihe von Blöcken erscheint, werden alle nachfolgenden Blöcke bis zum Ende der Schleife ignoriert.

                Einstellmöglichkeiten: -

                  -
                • Abbruchverhalten, »Die Schleife abbrechen« oder »mit der nächsten Iteration der Schleife fortfahren«.
                • -

                »Warte bis ... «

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                Einstelmöglichkeiten und Eingabewert: -

                  -
                • Eine weitere Wartebedingung am Ende anfügen.
                • Die letzte Wartebedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • -

                »Warte ms ... «

                Mit dem Block »Warte« kannst du dein Programm an der Stelle "anhalten", an der du den Block eingefügt hast. Dein Programm bleibt dann für die angegebene Dauer an dieser Stelle stehen. Nach Ablauf der angegebenen Zeit wird dann der nachfolgende Block ausgeführt. Beispielsweise kannst du dadurch einen Text in dem Display deines Roboters exakt für diese Zeit anzeigen lassen.

                Einstellmöglichkeiten: -

                  -
                • Zahl, Wartezeit in Millisekunden.
                • -

                »Warte bis ... «

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                Einstelmöglichkeiten und Eingabewert: -

                  -
                • Eine weitere Wartebedingung am Ende anfügen.
                • Die letzte Wartebedingung löschen.
                • Logischer Wert, »wahr« oder »falsch«.
                • -

                »Vergleiche«

                Mit dem Block »Vergleiche« kannst du verschiedene Eingabewerte (Zahl, Farbe, logischer Wert, Text) gleichen Typs miteinander vergleichen. Stimmt der Vergleich, wird der logische Wert »wahr« zurückgegeben, sonst »falsch«.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Linker Eingabewert für den Vergleich.
                • Vergleich, wähle aus, wie verglichen werden soll.
                • Rechter Eingabewert für den Vergleich.
                • -

                Rückgabewert: -

                  -
                • Logischer Wert, »wahr« oder »falsch«.
                • -

                »und/oder«

                Mit dem Block »und/oder« kannst du logische Werte zueinander in Beziehung setzen. Der »und/oder« Block liefert bei der Einstellung »und« nur dann den logischen Wert »wahr«, wenn beide Eingabewerte des Blocks gleichzeitig »wahr« sind. Bei der Einstellung »oder« genügt es, wenn einer der beiden Eingabewerte »wahr« ist, damit der »und/oder« Block als logischen Wert »wahr« liefert.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Logischer Wert für die Verknüpfung.
                • Wähle die logische Verknüpfung.
                • -

                Rückgabewert: -

                  -
                • Logischer Wert, »wahr« oder »falsch«.
                • -

                »nicht«

                Mit dem Block »nicht« kannst du einen logischen Wert umkehren. Der logische Wert ergibt sich aus der logischen Umkehrung des Eingabewertes, aus »wahr« wird »falsch« und umgekehrt.

                Eingabewert: -

                  -
                • Logischer Wert für die Umkehrung.
                • -

                Rückgabewert: -

                  -
                • Logischer Wert, Ergebnis der Umkehrung.
                • -

                »wahr/falsch«

                Mit dem Block »wahr/falsch« kannst du entweder den logischen Wert »wahr« oder »falsch« an einen anderen Block übermitteln.

                Einstellmöglichkeiten: -

                  -
                • Logischer Wert, wähle den Wert, der ausgegeben werden soll.
                • -

                Rückgabewert: -

                  -
                • Logischer Wert.
                • -

                »null«

                Der Block »null« ist ein Platzhalter für eine Eingabe, die noch unbestimmt ist. Wenn z.B. eine neue Verbindungsvariable für die Kommunikation erzeugt wird und noch nicht belegt ist, wird der Anfangswert auf »null« gesetzt.

                Rückgabewert: -

                  -
                • Logischer Wert, »null«.
                • -

                »teste«

                Mit dem Block »teste« kannst du einen Test durchführen und je nach Ergebnis unterschiedliche Ergebnisse zurückgeben.

                Eingabewerte: -

                  -
                • Logischer Wert für den Test; wenn kein Block angegeben wird, wird "wahr" angenommen.
                • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                • -

                Rückgabewert: -

                  -
                • Wert von beliebigem Typ.
                • -

                »Wert«

                Mit dem Block »Wert« kannst du Zahlen an einen anderen Block übermitteln.

                Eingabewert: -

                  -
                • Zahl
                • -

                Rückgabewert: -

                  -
                • Zahl
                • -

                »Rechnen«

                Mit dem Block »Rechnen« kannst du Zahlen addieren, subtrahieren, multiplizieren, dividieren oder potenzieren. Dieser Block ist nur in Verbindung mit einem anderen Block nutzbar, der eine Zahl als Eingabewert benötigt.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Zahl
                • Berechnung, wähle einen Operator aus.
                • Zahl
                • -

                Rückgabewert: -

                  -
                • Zahl, das Ergebnis der Berechnung.
                • -

                »Mathematische Funktionen«

                Mit dem Block »Mathematische Funktionen« können einige elementare mathematische Funktionen berechnet werden.

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Mathematische Funktion, Quadratwurzel, Absolutwert, Invertieren, ln (natürlicher Logarithmus), log10 (dekadischer Logarithmus), e^ (Exponentialfunktion) 10^ (Zehner-Exponent)
                • Zahl, auf die die mathematische Funktion angewandt wird.
                • -

                Rückgabewert: -

                  -
                • Zahl, das Ergebnis der Funktion.
                • -

                »Trigonometrische Funktionen«

                Mit dem Block »Trigonometrische Funktionen« können Sinus, Cosinus, Tangens und die zugehörigen Umkehrfunktionen berechnet werden. Die Eingabewerte werden im Bogenmaß erwartet (siehe Hinweis oben).

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Trigonometrische Funktion, wähle eine Funktion aus.
                • Zahl, im Bogenmaß
                • -

                Rückgabewert: -

                  -
                • Zahl, das Ergebnis der trigonometrischen Berechnung.
                • -

                »Konstanten«

                Der Block »Konstanten« stellt einige mathematische Konstanten bereit. »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«.

                Einstellmöglichkeiten: -

                  -
                • Mathematische Konstanten, wähle eine Konstante aus.
                • -

                Rückgabewert: -

                  -
                • Zahl, Wert der mathematischen Konstante. Der Wert von Unendlich ist »infinity«.
                • -

                »Zahleneigenschaft«

                Mit dem Block »Zahleneigenschaft« wird geprüft, ob eine eingegebene Zahl eine bestimmte Eigenschaft aufweist. »gerade«, »ungerade«, »ist Primzahl«, »ganze Zahl«, »positiv«, »negativ«, »teilbar durch«.

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Zahl, die mit einem Block geprüft wird.
                • Zahleneigenschaft, wähle, was geprüft werden soll.
                • Zahl; ein zweiter Eingabewert ist nur bei der Wahl von »ist teilbar durch« erforderlich.
                • -

                Rückgabewert: -

                  -
                • Logischer Wert, »wahr« oder »falsch«, je nachdem, ob die geprüfte Zahl die untersuchte Eigenschaft hat.
                • -

                »Erhöhe um x«

                Mit dem Block »Erhöhe um x« wird der Wert einer numerischen Variable um einen Betrag erhöht.

                Eingabewerte: -

                  -
                • Variable, deren Wert verändert werden soll.
                • Zahl.
                • -

                »runden«

                Mit dem Block »runden« können Werte gerundet werden. Beim Runden werden die Nachkommastellen auf 0 gesetzt. Es wird je nach Größe der Nachkommastellen automatisch auf- oder abgerundet. Man kann jedoch auch einstellen, dass stets auf- bzw. stets abgerundet werden soll.

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Art der Rundung, wähle, wie gerundet werden soll.
                • Zahl
                • -

                Rückgabewert: -

                  -
                • Zahl, gerundete Ganzzahl
                • -

                »Liste auswerten«

                Mit dem Block »Liste auswerten« können verschiedene Analysen einer Liste vorgenommen werden:

                • Summe - alle Werte der Liste werden zusammengezählt
                • Minimalwert - der kleinste Wert der Liste wird ausgegeben
                • Maximalwert - der größte Wert der Liste wird ausgegeben
                • Mittelwert - aus den Werten der Liste wird der Mittelwert bestimmt
                • Median - der Median (Zentralwert) einer Liste wird ausgegeben
                • Standardabweichung - die Standardabweichung (Varianz) der Listenwerte wird ausgegeben
                • Zufallswert - einer der Listenwerte wird per Zufall gewählt und ausgegeben

                Einstellmöglichkeiten und Eingabewert: -

                  -
                • Art der Listenauswertung
                • Liste mit Zahlen
                • -

                Rückgabewert: -

                  -
                • Zahl, Ergebnis der eingestellten Listenauswertung.
                • -

                »Rest von«

                Der Block »Rest von« führt eine Division durch und liefert den Rest der Division, der nicht mehr durch den Divisor geteilt werden konnte.

                Eingabewerte: -

                  -
                • Zahl, die geteilt wird (Dividend)
                • Zahl, durch die geteilt wird (Divisor bzw. Teiler)
                • -

                Rückgabewert: -

                  -
                • Zahl, Rest der Division
                • -

                »Begrenze«

                Der Block »Begrenze« sorgt dafür, dass Grenzwerte nicht überschritten werden. Er erfordert drei Eingabewerte:

                1. zu prüfender Wert
                2. untere Grenze
                3. obere Grenze

                Der Rückgabewert ist

                • der zu prüfende Wert, wenn gilt: untere Grenze ≤ zu prüfender Wert ≤ obere Grenze
                • untere Grenze, wenn zu prüfender Wert < untere Grenze
                • obere Grenze, wenn zu prüfender Wert > obere Grenze

                Eingabewerte: -

                  -
                • Zahl, die begrenzt wird.
                • Zahl, untere Grenze.
                • Zahl, obere Grenze.
                • -

                Rückgabewert: -

                  -
                • Zahl, die innerhalb der eingestellten Grenzen liegt.
                • -

                »Ganzzahlige Zufallswerte«

                Mit dem Block »Ganzzahlige Zufallswerte« können ganzzahlige Zufallswerte innerhalb selbst gewählter Grenzen erzeugt werden.

                Eingabewerte: -

                  -
                • Zahl, untere Grenze
                • Zahl, obere Grenze
                • -

                Rückgabewert: -

                  -
                • Zahl, eine ganzzahlige Zufallszahl, die innerhalb der eingestellten Grenzen liegt
                • -

                »Zufallszahl«

                Mit dem Block »Zufallszahl« wird eine Zufallszahl zwischen 0,0 und 1,0 bestimmt.

                Rückgabewert: -

                  -
                • Zahl, eine positive Zufallszahl kleiner oder gleich 1.
                • -

                »wandle ... um in Zeichenkette«

                Dieser Block wandelt eine Zahl in eine Zeichenkette um, die diese Zahl enthält. Als Beispiel wird die Zahl 123 in die Zeichenkette »123« umgewandelt.

                Optionen und Eingabewerte: -

                  -
                • Zahl, die Zahl die in eine Zeichenkette umgewandelt werden soll.
                • -

                Rückgabewerte: -

                  -
                • Zeichenkette, die Zeichenkette bestehend aus der gewählten Zahl.
                • -

                »wandle ... um in Zeichen«

                Dieser Block wandelt eine einzelne Zahl den dazugehörigen ASCII-Buchstaben um. Falls es zu dieser Zahl kein dazugehöriges ASCII-Zeichen gibt, wird eine leere Zeichenkette weitergegeben. So wird z.B. die Zahl 97 in den Buchstaben »a« umgewandelt.

                Optionen und Eingabewerte: -

                  -
                • Zahl, der ASCII-Code, der in das dazugehörige Zeichen umgewandelt werden soll. Zahl zwischen 0 und 255.
                • -

                Rückgabewerte: -

                  -
                • Zeichen, das Zeichen das dem gewählten ASCII-Code entspricht.
                • -

                »Mache einen NN Schritt«

                Mit diesem Block führst du eine Berechnungsschritt deines Neuronalen Netzwerks aus. Bevor du diesen Block verwendest, solltest du die Werte der Eingabe-Neuronen mit dem Block »Schreibe Wert Eingabe-Neuron ...« setzen. Die Eingabe-Werte werden in das Netzwerk gegeben und die Werte der Ausgabe-Neuronen werden anhand des Netzes aus dem Tab »Neuronales Netz« berechnet. Eine detaillierte Beschreibung des Neuronalen Netzwerks findest du hier. Die Werte der Ausgabe-Neuronen kannst du nach der Berechnung mit dem Block »gib Wert Ausgabe-Neuron ...« abfragen.

                »Schreibe Wert Eingabe-Neuron ... «

                Mit diesem Block kannst du den Wert eines Eingabeneurons setzen. Du kannst als Eingabewert entweder Variablen, Zahlen, Sensordaten oder mathematische Operationen verwenden, z.B. die Summe von zwei Zahlen.

                Optionen und Eingabewerte: -

                  -
                • Neuron, wähle das Eingabeneuron aus, dessen Wert du setzen möchtest.
                • Zahl, die als Eingabewert verwendet werden soll.
                • -

                »gib Wert Ausgabe-Neuron ... «

                Mit diesem Block kannst du den Wert eines Ausgabe-Neurons abfragen. Du solltest diesen Block erst nach dem Block »Mache einen NN Schritt« verwenden, da sonst noch kein Wert für die Ausgabeneuronen berechnet worden ist.

                Optionen: -

                  -
                • Neuron, wähle das Ausgabeneuron, dessen Wert du abfragen möchtest.
                • -

                Rückgabewert: -

                  -
                • Zahl, der Wert des gewählten Ausgabe-Neurons.
                • -

                »Schreibe Gewicht von ... nach ... «

                Mit diesem Block kannst du das Gewicht einer Verbindung zwischen zwei Neuronen setzen, die direkt miteinander verbunden sind.

                Optionen und Eingabewerte: -

                  -
                • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                • Zahl, auf den das Gewicht gesetzt werden soll.
                • -

                »Schreibe Bias ... «

                Mit diesem Block kannst du den Bias eines Neurons setzen.

                Optionen und Eingabewerte: -

                  -
                • Neuron, das Neuron, dessen Bias du setzen möchtest.
                • Zahl, der Wert auf den der Bias gesetzt werden soll.
                • -

                »gib Gewicht von ... nach ... «

                Mit diesem Block kannst du den aktuellen Wert des Gewichts einer Verbindung zwischen zwei Neuronen abfragen, die direkt miteinander verbunden sind.

                Optionen: -

                  -
                • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                • -

                Rückgabewert: -

                  -
                • Zahl, der Wert des Gewichts zwischen den beiden Neuronen.
                • -

                »gib Bias ... «

                Mit diesem Block kannst du den Bias eines Neurons abfragen.

                Optionen: -

                  -
                • Neuron, das Neuron, dessen Bias du abfragen möchtest.
                • -

                Rückgabewert: -

                  -
                • Zahl, der Wert des Bias des gewählten Neurons.
                • -

                »Text«

                Mit dem einfachen »Text«-Block wird ein Stück Text bereitgestellt.

                Eingabewert: -

                  -
                • Zeichenkette, bestehend aus beliebigen Zeichen
                • -

                Rückgabewert: -

                  -
                • Text, bestehend aus beliebigen Zeichen
                • -

                »Kommentar«

                Dokumentiere dein Programm mit diesem Block, damit du und andere es später leichter haben, dein Programm zu verstehen. Dieser Kommentar wird auch im generierten Source Code zu sehen sein.

                Eingabewert: -

                  -
                • Zeichenkette, bestehend aus beliebigen Zeichen
                • -

                »Erstelle Text«

                Mit dem »Erstelle Text«-Block wird ein Stück Text aus verschiedenen Eingabewerten zusammengesetzt. Mit dem +-Zeichen können weitere Eingabemöglichkeiten geschaffen werden. Alle Eingaben werden zu einer kontinuierlichen Zeichenkette zusammengefügt.

                Eingabewerte: -

                  -
                • Weitere Eingabemöglichkeiten bereitstellen.
                • Letzte Eingabemöglichkeit entfernen (bei mehr als 2 Eingabemöglichkeiten).
                • Beliebiger Wert, Zahl, Text, logischer Wert, Farbe.
                • -

                Rückgabewert: -

                  -
                • Zeichenkette, bestehend aus beliebigen Zeichen.
                • -

                »Text anhängen«

                Mit dem »Text anhängen«-Block können Zeichenketten erweitert werden, z.B. indem an empfangene Nachrichten eine Signatur angehängt wird.

                Eingabemöglichkeiten: -

                  -
                • Text, Zeichenkette, an die Text angehängt werden soll
                • Text, Zeichenkette, die an einen Text angehängt werden soll
                • -

                »wandle ... um in Zahl«

                Dieser Block wandelt eine Zeichenkette in eine Zahl um, falls dies möglich ist. Wenn eine Zeichenkette also nur Zahlen enthält, kann dieser Block die Zeichenkette in eine Zahl umwandeln. Wenn der Block keine Zahlen enthält, gibt dieser Block »NaN« in der Simulation des Open Roberta Labs weiter, kann aber auch ein anderes Verhalten aufweisen, welches von der verwendeten Programmiersprache des Roboters abhängt. Falls die Zeichenkette zwar mit Zahlen beginnt, aber danach weitere Zeichen enthält, die keine Zahlen sind, gibt dieser Block nur die Zahlen weiter und stoppt, sobald das erste Zeichen in der Zeichenkette steht. Also als Beispiel macht dieser Block aus der Zeichenkette »52abcd« die Zahl 52.

                Optionen und Eingabewerte: -

                  -
                • Zeichenkette, die nur aus Zahlen besteht und in eine Zahl umgewandelt werden soll.
                • -

                Rückgabewerte: -

                  -
                • Zahl, die zahl aus der die Zeichenkette bestand.
                • -

                »wandle Zeichen ... an Position ... in Zahl«

                Dieser Block wandelt einen Buchstaben oder ein Zeichen aus einer Zeichenkette in die dazugehörige ASCII-Nummer um. Jedes Zeichen hat dabei eine dazugehörige Nummer in der ASCII-Tabelle. So wird z.B. ein kleines »a« in die Zahl 97 umgewandelt.

                Optionen und Eingabewerte: -

                  -
                • Zeichenkette, aus dieser wird ein einzelnes Zeichen ausgewählt.
                • Zahl, die Stelle des Zeichens das umgewandelt werden soll. Beachte das die Nummerierung bei 0 anfängt.
                • -

                Rückgabewerte: -

                  -
                • Zahl, der ASCII-Code des ausgewählten Zeichens.
                • -

                »Erzeuge Liste«

                Der Block »Erzeuge eine leere Liste« erzeugt eine Liste ohne Inhalt. Der Block »Liste« erzeugt eine Liste mit einigen voreingestellten Werten. Mit + und - können weitere Listenelemente am Ende hinzugefügt bzw. entfernt werden. Wenn das letzte Element einer Liste entfernt wurde, liegt eine leere Liste vor.

                Einstellmöglichkeiten: -

                  -
                • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                • Erzeuge ein weiteres Listenelement am Ende der bestehenden Liste.
                • Lösche das Listenelement am Ende der bestehenden Liste.
                • Werte, die dem Listentyp entsprechen. Hiermit können Anfangswerte gesetzt werden.
                • -

                Rückgabewert: -

                  -
                • Leere Liste oder eine Liste mit Elementen gleichen Typs.
                • -

                »Wiederhole Element in Liste«

                Der Block »Wiederhole Element in Liste« erzeugt eine Liste mit gleichen Elementen.

                Einstellmöglichkeiten: -

                  -
                • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                • Listenelement, das mit dem eingestellten Listentyp übereinstimmt. Dieser Wert wird in der Liste wiederholt.
                • Zahl, die angibt, wie oft der eingestellte Wert wiederholt werden soll.
                • -

                Rückgabewert: -

                  -
                • Eine Liste des spezifizierten Typs mit der eingestellten Anzahl von gleichen Elementen.
                • -

                »Länge«

                Der Block »Länge« gibt als Wert die Länge einer Liste zurück, die als Eingabewert angegeben wird. Eine leere Liste hat die Länge 0.

                Eingabewert -

                  -
                • Liste
                • -

                Rückgabewert: -

                  -
                • Zahl, Anzahl der Listenelemente
                • -

                »ist leer?«

                Eine als Eingabewert gegebene Liste wird geprüft, ob sie leer ist.

                Eingabewert -

                  -
                • Liste.
                • -

                Rückgabewert: -

                  -
                • Logischer Wert, entweder »wahr« oder »falsch«
                • -

                »Suche in der Liste«

                Eine Liste wird durchsucht, ob ein Element darin enthalten ist. Wenn das Element enthalten ist, wird die Listenposition zurückgegeben. Wenn das Element nicht enthalten ist, ist das Ergebnis -1.

                Einstellmöglichkeiten: -

                  -
                • Liste, die untersucht werden soll.
                • Position für den Treffer, entweder »ersten« oder »letzten« Treffer suchen.
                • Wert, der mit den Listentyp übereinstimmt.
                • -

                Rückgabewert: -

                  -
                • Zahl, die Position, an der das Element in der Liste steht.

                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                • -

                »Nimm Listenelement«

                Mit diesem Block wird auf ein Element einer Liste zugegriffen. Das Element wird gegebenenfalls verändert.

                Es wird eine Liste als Eingabe übergeben. Danach wird per Drop-Down-Liste spezifiziert, was mit dem Listenelement geschehen soll. Anschließend wird angegeben, in welcher Richtung die Liste durchsucht werden soll, ob von vorn (links), von hinten (rechts) oder zufällig.

                Einstellmöglichkeiten und Eingabewerte -

                  -
                • Liste, die bearbeitet werden soll.
                • Aktion für das gefundene Element: »nimm« liest das Element und lässt es unverändert, »nimm und entferne« liest das Element und entfernt es aus der Liste, »entferne« entfernt das Element aus der Liste.
                • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.

                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                • -

                Rückgabewert: -

                  -
                • Das spezifizierte Listenelement, das an der angegebenen Listenposition gefunden wurde. »undefined« (undefiniert), wenn die Listenposition nicht existiert.
                  Bei »entferne« wird kein Wert zurückgegeben; die bearbeitete Liste ist dann um dieses Listenelement reduziert.
                • -

                »Setze Listenelement«

                In einer als Eingabewert übergebenen Liste wird ein näher spezifiziertes Element durch einen neuen Wert ersetzt bzw. es wird ein Wert eingefügt.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Liste, die bearbeitet werden soll.
                • Aktion für das gefundene Element: »setze« verändert das Element, »füge« fügt ein neues Element in die Liste ein.
                • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                • Listenelement, das an der zuvor bestimmten Listenposition gesetzt oder eingefügt wird.
                • -

                »Erhalte Unterliste«

                Aus einer als Eingabewert übergebenen Liste wird eine Unterliste erzeugt. In der Unterliste sind alle Elemente enthalten, die den weiteren Spezifikationen dieses Blocks entsprechen.

                Einstellmöglichkeiten und Eingabewerte: -

                  -
                • Liste, die bearbeitet werden soll.
                • Position, Anfang der Unterliste: »von #«, »von # von hinten« oder »vom Anfang«.
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »vom Anfang« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                • Position, Ende der Unterliste: »zu #«, »zu # von hinten« oder »zum Ende«.
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »zum Ende« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.
                • -

                Rückgabewert: -

                  -
                • Liste, Unterliste gleichen Typs wie die als Eingabewert übergebene Liste.
                • -

                »Farbwahl «

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                Option: -

                  -
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • -

                Rückgabewert: -

                  -
                • Farbe, die ausgewählte Farbe.
                • -

                »Farbwahl «

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                Option: -

                  -
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • -

                Rückgabewert: -

                  -
                • Farbe, die ausgewählte Farbe.
                • -

                »Farbwahl «

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                Option: -

                  -
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • -

                Rückgabewert: -

                  -
                • Farbe, die ausgewählte Farbe.
                • -

                »Farbe mit Rot ... Grün ... Blau ... «

                Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau mischst.

                Eingabewerte: -

                  -
                • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                • -

                Rückgabewert: -

                  -
                • Farbe, die von dir erstellte Farbe.
                • -

                »Farbton Toleranz«

                Roboter erkennen den genauen Farbton oft nicht Präzise. Durch die Lichtverhältnisse kann so eine Farbe als zu dunkel oder zu hell wahrgenommen werden. Dieser Block ermöglicht die Einstellung eines Toleranzbereichs für die zu erkennende Farbe, damit beispielsweise jeder Rotton als Rot erkannt wird.

                Eingabewerte: -

                  -
                • Farbe, von einem Sensor empfangene Farbe.
                • Farbe, festgelegte Farbe für den Vergleich mit Sensordaten.
                • Zahl, Toleranzwert für die Farberkennung.
                • -
                Rückgabewert: -
                  -
                • Wahrheitswert, »wahr«, wenn die Farbe im Toleranzbereich liegt, »falsch«, wenn Farbe zu stark abweicht.
                • -

                »Schreibe Variable«

                Mit dem Block »Schreibe Variable« kannst du den Wert einer Variablen verändern. Je nach Typ der Variablen (Zahl, Zeichenkette, logischer Wert, Liste, Farbe, Verbindung) kann der Variablen ein passender Wert übergeben werden.

                Einstellmöglichkeit und Eingabewert: -

                  -
                • Variable, deren Wert verändert werden soll.
                • Wert, auf den die Variable gesetzt werden soll.
                • -

                »Lies Variable«

                Mit dem Block »lies Variable« kannst du den Wert einer Variablen an einen anderen Block übergeben. Der Typ des Ausgabewertes entspricht immer dem Typ, mit dem die Variablen im Block »Start« initialisiert wurde.

                Einstellmöglichkeit: -

                  -
                • Variable, deren Wert gelesen werden soll.
                • -

                Rückgabewert: -

                  -
                • Wert, der in der Variablen gespeichert ist.
                • -

                Funktionsblock ohne/mit Eingabe- und ohne Rückgabewert

                In einem Funktionsblock ohne/mit Eingabe- und Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Die Eingabewerte werden durch die lokalen Variablen im Funktionsblock festgelegt. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Lokale Variablen werden nicht initialisiert.

                Falls in einen Funktionsblock eine Wenn-Abfrage (siehe unten) eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen.

                Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                Einstellmöglichkeiten: -

                  -
                • Funktionsname, ohne Leer- und Sonderzeichen
                • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                • Lösche eine lokale Variable.
                • -

                • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle diese Werte beim Funktionsaufruf belegt werden.

                Funktionsblock ohne/mit Eingabe- und mit Rückgabewerten

                In einem Funktionsblock ohne/mit Eingabe- und mit Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Nachdem alle Anweisungen durchlaufen wurden, wird abschließend ein Wert als Funktionswert zurückgegeben.

                Falls in einen Funktionsblock eine Wenn-Abfrage eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen, und es kann ein alternativer Funktionswert zurückgegeben werden.

                Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                Einstellmöglichkeiten: -

                  -
                • Funktionsname, ohne Leer- und Sonderzeichen
                • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                • Lösche eine lokale Variable.
                • Datentyp für den Rückgabewert. »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe«, »Verbindung«, »Liste Zahl«, »Liste logischer Wert«, »Liste Zeichenkette«, »Liste Verbindung«.
                • Wert, der dem eingestellten Datentyp des Rückgabewertes entspricht.
                • -

                Rückgabewert: -

                  -
                • Wert, der im Rückgabeblock berechnet wurde.
                • -
                • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle Werte beim Funktionsaufruf belegt werden.

                Wenn-Abfrage innerhalb einer Funktion

                Die Wenn-Abfrage innerhalb einer Funktion ist von besonderer Bedeutung. Sobald der Funktionsablauf auf eine Wenn-Abfrage trifft, wird die Gültigkeit der Bedingung geprüft.

                Wenn-Abfrage innerhalb einer Funktion mit Rückgabewert:

                • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet. Der zweite übergebene Wert wird als Funktionswert zurückgegeben. Ein eventuell mit der Funktion definierter Rückgabewert wird nicht weiter berücksichtig. Der Rückgabewert-Typ wird durch den Typ des Rückgabewerts der umgebenden Funktion festgelegt.
                • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt. Ein eventuell mit der Funktion definierter Rückgabewert wird als Funktionswert zurückgegeben, wenn der Funktionsablauf das Funktionsende erreicht.

                Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert:

                • Eine Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert hat nur die Bedingung als Eingabewert.
                • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet.
                • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt.

                Einstellgabewerte: -

                  -
                • Logischer Wert, der aus einer Bedingung bestimmt wird.
                • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                • -

                Rückgabewert: -

                  -
                • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                • -

                »Funktionsaufruf ohne Rückgabewert «

                Mit diesem Block kannst du eine vorher definierte Funktion aufrufen. Diese Funktion gibt dabei keinen Wert zurück.

                Eingabewerte: -

                  -
                • Wert, abhängig von den Eingabewerte der vorher definierten Funktion.
                • -

                »Funktionsaufruf mit Rückgabewert «

                Mit diesem Block kannst du eine vorher definierte Funktion aufrufen und den Rückgabewerte abrufen.

                Eingabewerte: -

                  -
                • Wert, abhängig von den Eingabewerten der vorher definierten Funktion.
                • -

                Rückgabewerte: -

                  -
                • Wert, abhängig von dem Rückgabewert der definierten Funktion.
                • -

                \ No newline at end of file + + + + +
                +

                »Start«

                +

                Jedes Programm beginnt mit dem »Start«-Block, welcher nicht gelöscht werden kann. Den ersten Block, den man verwenden möchte, verbindet man direkt mit der »Sequenzverbindung« am »Start«-Block.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Entferne die globale Variable.
                • +
                • Zeige Sensordaten - während des Programmablaufs werden im Display die Werte der angeschlossenen Sensoren gezeigt.
                • +
                + Wenn globale Variablen erzeugt wurden: +
                  +
                • Text, Name der Variablen.
                • +
                • Typ der Variablen.
                • +
                • Wert, Anfangswert der Variablen.
                • +
                +
                +

                »Fahre ... Tempo % ... Strecke cm ...«

                +

                Mit dem Block »Fahre ... Tempo ... Strecke« kannst du zusätzlich zu Richtung und Tempo auch die Fahrstrecke des Roboters programmieren. Dein Roboter fährt so lange, bis die eingestellte Strecke gefahren ist. Die Geschwindigkeit kannst du im Feld Tempo einstellen. Wenn dieser Block »zu Ende« ist, stoppen die Motoren automatisch.

                +

                »Fahre« steuert beide Motoren des Roboters gleichzeitig.

                +

                Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die Roboter-Konfiguration, insbesondere den Raddurchmesser.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Fahrtrichtung, wähle die gewünschte Richtung.
                • +
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                • Zahl, Länge für die Strecke in cm.
                • +
                +
                +

                »Fahre ... Tempo % ...«

                +

                Mit dem Block »Fahre ... Tempo« kannst du die Richtung und das Tempo (Geschwindigkeit) deines Roboters programmieren. Dein Roboter fährt so lange vorwärts oder rückwärts, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird.

                +

                »Fahre« steuert beide Motoren des Roboters gleichzeitig.

                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Richtung, wähle die gewünschte Fahrrichtung aus.
                • +
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, drehen sich die Motoren rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                +
                +

                »Stoppe«

                +

                Mit dem Block »Stoppe« werden die Motoren deines Roboters gestoppt. Das bedeutet, dein Roboter hält an.

                +

                »Steure ... Tempo links ... Tempo rechts ...«

                +

                Mit dem Block »Steure ... Tempo links ... Tempo rechts ...« kannst du den Roboter so programmieren, dass er eine Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte setzt. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und Raddurchmesser. Mit der Drehrichtung legst du die Fahrtrichtung fest.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Drehrichtung, wähle die gewünschte Drehrichtung aus.
                • +
                • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                +
                +

                »Steure ... Tempo links ... Tempo rechts ... Strecke ...«

                +

                Mit dem Block »Steure ... Tempo links ... Tempo rechts ... Strecke ...« kannst du den Roboter so programmieren, dass er eine vorgegebene Strecke als Kurve fährt, indem du das Tempo für den linken und den rechten Motor auf unterschiedliche Werte setzt. Die Strecke bezieht sich auf die Mitte zwischen beiden Rädern. Die Roboterkonfiguration beeinflusst den Radius der Kurve in Abhängigkeit von Radabstand und Raddurchmesser. Mit der Richtung legst du die Fahrtrichtung fest.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Richtung, wähle die gewünschte Fahrtrichtung aus.
                • +
                • Zahl, Wert zwischen -100 und 100 für den linken Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                • Zahl, Wert zwischen -100 und 100 für den rechten Motor. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                • Zahl, Strecke in Zentimetern, die zurückgelegt werden soll.
                • +
                +
                +

                »Drehe ... Tempo % ... Grad«

                +

                Mit dem Block »Drehe ... Tempo ... Grad« kannst du die Richtung (rechts/links), in der sich der Roboter um die eigene Achse drehen soll, programmieren. Zusätzlich zur Richtung kann noch im Feld »Grad« angegeben werden, um wie viel Grad sich dein Roboter (um die eigene Achse) drehen soll. Dies bedeutet, dass du beispielsweise mit der Einstellung 360 Grad deinen Roboter einmal um die eigene Achse drehen lassen kannst. Der Block »Drehe ... Tempo ... Grad« steuert beide Motoren des Roboters, damit sich der Roboter um die eigene Achse dreht.

                +

                Wenn die eingestellten Werte der Aktionen mit der Programmausführung nicht übereinstimmen, prüfe die Roboter-Konfiguration, insbesondere den Raddurchmesser und die Spurbreite.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Drehrichtung, wähle die gewünschte Drehrichtung aus.
                • +
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                • Gradzahl, um die der Roboter sich drehen soll. Negative Zahlen sind nicht zugelassen.
                • +
                +
                +

                »Drehe ... Tempo % ...«

                +

                Mit dem Block »Drehe ... Tempo« kannst du die Richtung (rechts/links), in der sich der Roboter drehen soll, programmieren. Dein Roboter dreht sich so lange auf der Stelle, bis er gestoppt wird oder ein anderer Block zum Fahren verwendet wird. Die Geschwindigkeit kannst Du im Feld »Tempo« einstellen. »Drehe« steuert beide Motoren des Roboters gleichzeitig in entgegengesetzten Richtungen, dadurch dreht sich der Roboter auf der Stelle.

                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Drehrichtung, wähle die gewünschte Drehrichtung aus.
                • +
                • Zahl, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Roboter in die entgegengesetzte Richtung. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                +
                +
                +
                +

                Falls sich dein Roboter in die falsche Richtung dreht, sind die Motoren an die falschen Ports angeschlossen. Es genügt dann, die Ports zu tauschen, damit der Roboter in die richtige Richtung dreht.

                +
                +
                +
                +

                + »Motor Port ... an Tempo ... Umdrehungen/Grad«

                +

                Mit dem Block »Motor Port ... an Tempo ... Umdrehungen/Grad« stellst du das Tempo (Geschwindigkeit) eines Motors ein. Dein Roboter startet den gewählten Motor, bis er die eingestellte Anzahl Umdrehungen bzw. Winkelgrade gemacht hat.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Motor Port, wähle den Motorport aus, an dem der Motor angeschlossen ist.
                • +
                • Tempo, Wert zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                • Umdrehungen oder Grad. 1 Umdrehung entspricht 360 Grad.
                • +
                • Zahl, Anzahl der Umdrehungen bzw. Winkelgrade. Es sind nur positive Zahlen zugelassen.
                • +
                +
                +

                »Motor ... an Tempo % ...«

                +

                Dieser Block setzt das Tempo (Geschwindigkeit) eines Motors auf einen neuen Wert.

                +

                Optionen und/oder Eingabewerte: +

                +
                  +
                • Motor, wähle den Motor, den du steuern möchtest.
                • +
                • Zahl, Tempo zwischen -100 und 100. Wenn die Zahl negativ ist, dreht sich der Motor rückwärts. Der Wert wird intern auf den Bereich zwischen -100 und 100 begrenzt.
                • +
                +
                +

                »Stoppe Motor ...«

                +

                Mit diesem Block kannst du einen Motor deines Roboters stoppen.

                +

                Optionen: +

                +
                  +
                • Motor; wähle den Motor, den du stoppen möchtest.
                • +
                +
                +

                »Setze Servomotor SG90 ... auf ° ...«

                +

                Dieser Block steuert einen der Servomotoren. Wähle aus, welches Servo du betätigen willst und wie weit es sich bewegen soll.

                +

                Optionen und/oder Eingabewerte: +

                +
                  +
                • Motor Port, wähle einen Servomotor aus, den du in der Roboterkonfiguration angelegt hast.
                • +
                • Gradzahl, in die der Motor bewegt werden soll.
                • +
                +
                +

                »Zeige Text ... in Zeile ...«

                +

                Mit dem Block »Zeige Text« kannst du Text und Zahlen auf dem Display deines Roboters anzeigen lassen. Dabei kannst du zusätzlich noch bestimmen, in welcher Zeile der Text auf dem Bildschirm erscheinen soll.

                +

                Das Display ist für Texte in mehreren Zeilen (von links nach rechts) eingeteilt.

                +

                Wenn zuvor schon etwas auf dem Display angezeigt war, werden nur die Stellen überschrieben, in die der Text geschrieben wird.

                +

                Eingabewerte: +

                +
                  +
                • Text, der im Display erscheinen soll.
                • +
                • Zahl, Zeilennummer, in der der Text beginnen soll zwischen 0 und 7.
                • +
                +
                +

                »Lösche Bildschirm«

                +

                Mit diesem Block kann der Bildschirminhalt deines Roboters gelöscht werden.

                +

                »Zeige auf Serial Monitor«

                +

                Mit diesem Block kannst du Text auf dem Serial Monitor über USB anzeigen.

                +

                Eingabewert: +

                +
                  +
                • Text, der Text der auf dem Seriellen Monitor angezeigt werden soll.
                • +
                +
                +

                »Spiele Stück«

                +

                Mit diesem Block kannst du den Roboter einen Klang aus dem Auswahlmenü abspielen lassen.

                +

                Auswahlmöglichkeiten: +

                +
                  +
                • Option, Wähle welches Stück gespiel werden soll.
                • +
                +
                +

                »Schalte LED an Bildschirm Farbe ...«

                +

                Mit dem Block »Schalte LED an« kannst du die LED am Bildschirm deines Roboters anschalten und dabei die Farbe auswählen, in der sie leuchten soll.

                +

                Optionen: +

                +
                  +
                  +
                • Farbe, Wähle die Farbe aus, in der die LED leuchten soll
                • +
                +
                +

                »Schalte LED aus Bildschirm«

                Mit diesem Button kannst du die LED am Bildschirm deines Roboters wieder ausschalten.
                +
                +

                »Setze LED ... Helligkeit % ...« +

                +

                Mit dem Block »Setze LED ... Helligkeit % ...« kannst du die Helligkeit der LED einstellen.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Zahl, Helligkeit zwischen 0 und 100 in Prozent.
                • +
                +
                +

                »Bildschirmtaste ... gedrückt?«

                +

                Mit diesem Block kannst du die Bildschirmtasten deines Roboters abfragen, ob sie gerade gedrückt werden.

                +

                Optionen: +

                +
                  +
                • Taste, wähle die Taste, die du abfragen möchtest.
                • +
                + Rückgabewert: +
                  +
                • Wahrheitswert, »wahr«, wenn die Taste gedrückt wird, sonst »falsch«.
                • +
                +
                +

                »gib Abstand cm Ultraschallsensor ...«

                +

                Mit diesem Block kannst du den Ultraschallsensor deines Roboters abfragen. Dieser Sensor misst die Entfernung zum nächsten Objekt, indem er Ultraschallwellen aussendet und aus der Reflexion dieser Wellen die Distanz zu dem Objekt berechnet.

                +

                Rückgabewert: +

                +
                  +
                • Zahl, die Entfernung zum nächsten Objekt in Zentimetern.
                • +
                +
                +

                »gib Linie Infrarotsensor ...«

                +

                Mit diesem Block kannst du den Infrarotsensor deines Roboters verwenden, um eine Linie zu erkennen. Eine heller Bereich der Linie wird als »0« gelesen, ein dunkler Bereich wird als »1« gelesen. +

                +

                Optionen:

                +
                  +
                • Sensor, wähle den Sensor aus, den du abfragen möchtest.
                • +
                +

                Rückgabewert:

                +
                  +
                • Wahrheitswert, »wahr«, wenn sich eine Linie vor dem Infrarotsensor befindet sonst falsch«.
                • +
                +
                +

                »gib Umdrehungen/Grad/Abstand Drehsensor ...«

                +

                Mit dem Block »Gib Umdrehungen/Grad/Abstand Drehsensor« kannst du einem anderen Block die Motorumdrehungen »mitteilen«.

                +

                Wenn »Umdrehungen« eingestellt wurde, wird die Zahl der Umdrehungen ausgegeben.

                +

                Wenn »Grad« eingestellt wurde, wird die Gradzahl aller Umdrehungen ausgegeben, wobei eine volle Umdrehung genau 360 Grad entspricht.

                +

                Wenn »Abstand« eingestellt wurde, wird berechnet, welche Strecke das Rad des Motors zurückgelegt hat. Das ist natürlich abhängig davon, wie groß das Rad in der Roboterkonfiguration eingestellt ist.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Messmethode, stelle ein, wie gemessen werden soll.
                • +
                • Port, stelle ein, an welchem Port der Drehsensor bzw. Motor angeschlossen ist.
                • +
                +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, die je nach eingestellter Messmethode entweder die Umdrehungszahl, die Gradzahl oder die zurückgelegte Strecke darstellt.
                • +
                +


                +

                »Setze Drehsensor ... zurück«

                +

                Mit dem Block »Setze Drehsensor zurück« kann der interne Sensor (Motor-Encoder) eines Motors auf den Wert 0 zurückgesetzt werden.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Port, wähle aus, an welchem Port der Drehsensor/Motor angeschlossen ist.
                • +
                +
                +

                »gib Wert Zeitgeber ...«

                +

                Mit dem Block »Gib Wert Zeitgeber« kannst du einem anderen Block den aktuellen Stand des internen Zeitgebers in Millisekunden »mitteilen«. Der Zeitgeber wird automatisch mit dem Beginn eines Programms gestartet. Es stehen 5 Zeitgeber zur Verfügung.

                +

                Einstellöglichkeiten: +

                +
                  +
                • Zeitgeber-Nummer, wähle den Zeitgeber aus, dessen Wert du ermitteln möchtest.
                • +
                +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, Anzahl Millisekunden, die seit dem Programmstart oder dem letzten Zurücksetzen des Zeitgebers vergangen sind.
                • +
                +
                +

                »Setze Zeitgeber ... zurück«

                +

                Mit dem Block »Setze Zeitgeber« können die internen Zeitgeber (1 bis 5) auf den Wert 0 zurückgesetzt werden.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Zeitgeber-Nummer, wähle den Zeitgeber aus, den du zurücksetzen möchtest.
                • +
                +
                +

                »Mini-Taster ... gedrückt?«

                +

                Mit dem Block »Mini-Taster ... gedrückt?« kann einem anderen Block mitgeteilt werden, ob der ausgewählte Taster gedrückt wird.

                +

                Eingabewert: +

                +
                  +
                • Port, welcher Taster überprüft werden soll
                • +
                + Rückgabewert: +
                  +
                • Wahrheitswert, »wahr«, wenn der Taster gedrückt wird, »falsch«, wenn er nicht gedrückt wird
                • +
                +
                +

                »gib Wert % Lichtsensor«

                +

                Mit dem Block »Gib Wert % Lichtsensor« kann einem anderen Block mitgeteilt werden, wie hell das Licht ist, das den Lichtsensor des Roboters trifft.

                +

                Rückgabewert: +

                +
                  +
                • Zahl, Prozentsatz der Lichtstärke als Zahl von 0-100
                • +
                +
                +

                »gib hell phototransistor ...« +

                +

                Dieser Block nutzt den Phototransistor, der dem Roboter angeschlossen werden kann, um einem anderen Block mitzuteilen, ob es hell ist.

                +

                Rückgabewert: +

                +
                  +
                • Wahrheitswert, ob es hell ist oder nicht
                • +
                +
                +

                »gib Temperatur º / Widerstand Ω NTC-Widerstand«

                +

                Der NTC-Widerstand enthält einen Heißleiter. Dieser zeichnet sich dadurch aus, dass er bei höheren Temperaturen Strom besser leitet als bei niedrigen. So kann der Roboter vom gemessenen Widerstand auch die Temperatur berechnen. Mit diesem Block können beide Werte jeweils zurückgegeben werden.

                +

                Rückgabewert: +

                +
                  +
                • Zahl, Temperatur in ºC oder Widerstand in Ω
                • +
                +
                +

                »gib ... Umweltsensor«

                +

                Mit dem Block »Gib ... Umweltsensor« kann einem Block ein bestimmter Messwert des Umweltsensors mitgeteilt werden. Der Umweltsensor hat diverse Funktionen. Er kann die Temperatur, die Luftfeuchtigkeit, den Luftdruck und die Innenraumluftqualität messen.

                +

                Rückgabewert: +

                +
                  +
                • Temperatur, Zahl von -45° bis 80° Celsius
                • +
                • Luftfeuchtigkeit, Zahl als Prozentsatz der Luftfeuchtigkeit als Zahl von 0-100
                • +
                • Luftdruck, Zahl gibt Luftdruck in hpa an
                • +
                • Innenraumluftqualität, Zahl gibt IAQ-Wert der Luft an
                • +
                • Genauigkeit, Zahl gibt die Genauigkeit des Sensors in Prozent an
                • +
                • Kalibrierung erforderlich, Wahrheitswert gibt "wahr" aus, wenn eine Kalibrierung des Sensors erforderlich ist und "falsch" wenn nicht
                • +
                +
                +

                »Kalibriere Umweltsensor«

                +

                Mit dem Block »Kalibriere Umweltsensor« kann der Umweltsensor neu kalibriert werden. Das ist am Anfang nötig und wenn er ungenaue Messwerte liefert. Die Kalibrierung dauert etwa 5 Minuten.

                +
                +

                »gib ... RGB Gestensensor«

                +

                Mit dem Block »Gib ... RGB Gestensensor« kann einem anderen Block diverse Rückgabewerte des RGB Gestensensors mitgeteilt werden. Der Sensor nimmt Farbe, Umgebungslicht, Geste, Nähe und RGB wahr.

                +

                Rückgabewert: +

                +
                  +
                • Farbe, gibt erkannte Farbe als Farbtyp zurück
                • +
                • Umgebungslicht, gibt Stärke des Umgebungslichts als Zahl von 0-100 zurück
                • +
                • Geste, Zahl codiert eine von 6 möglichen erkennbaren Gesten
                • +
                • Nähe, gibt die Nähe des Objekts vor dem Sensor als Zahl zurück
                • +
                • RGB, gibt die RGB-Werte des Objekts vor dem Sensor als Liste zurück
                • +
                +
                +

                »gib Beschleunigung g Kombisensor ...«

                +

                Mit dem Block »Gib Beschleunigung g Kombisensor« kann einem anderen Block mitgeteilt werden, wie schnell der mit Kombisensor ausgestattete Roboter beschleunigt.

                +

                Eingabewert: +

                +
                  +
                • x, y, z, Richtung, in die Beschleunigung gemessen wird
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, Beschleunigung in g
                • +
                +
                +

                »gib magnetischer Fluss ° Kombisensor«

                +

                Mit dem Block »Gib magnetischer Fluss °« kann über den Kombisensor anhand des Magnetfelds der Erde ermittelt werden, in welche Himmelsrichtung der Roboter gedreht ist.

                +

                Rückgabewert: +

                +
                  +
                • Zahl, Himmelsrichtung als Gradzahl
                • +
                +
                +

                »gib gyroscope ° Kombisensor ...«

                +

                Mit dem Block »Gib gyroscope °« kann einem anderen Block über den Kombisensor mitgeteilt werden, wie schnell sich der Roboter in eine bestimmte Richtung dreht. Die gemessene Achse (x,y,z) muss dabei angegeben werden.

                +

                Eingabewert: +

                +
                  +
                • x, y, z, Richtung, in die Geschwindigkeit gemessen wird
                • +
                + Rückgabewert: +
                  +
                • Zahl, Drehgeschwindigkeit in Grad
                • +
                +
                +

                »gib Farbe Farberkennung«

                +

                Mit dem Block »gib Farbe Farberkennung« kann einem anderen Block die erkannte Farbe mitgeteilt werden.

                +

                Rückgabewert: +

                +
                  +
                • Farbe, die erkannte Farbe
                • +
                +
                +

                »gib Anzahl Linien Linienerkennung«

                +

                Mit dem Block »gib Anzahl Linien« kann einem anderen Block mitgeteilt werden, wie viele Linien im eingestellten Kamerabild erkannt werden.

                +

                Rückgabewert: +

                +
                  +
                • Zahl, Anzahl erkannter Linien
                • +
                +
                +

                »gib Informationen von Linie #« +

                +

                Mit dem Block »Gib Informationen von Linie #« kann einem andern Block die Position der Linie im Kamerabild, sowie die erkannte breite mitgeteilt werden. Die Maximal 4 von der Kamera erkannten Bilder werden mit den Zahlen 0-3 Indiziert.

                +

                Dabei Ist zu beachten, dass die erste Linie den Index »0« hat, und die vierte den Index »3«.

                +

                Eingabewert: +

                +
                  +
                • Zahl, Index der Linie, von der die Position und die Breite zurückgegeben werden soll (0-3).
                • +
                + Rückgabewert: +
                  +
                • Liste: Position [-100, 100] und Breite der Linie am angegebenen Index
                • +
                +
                +

                »gib Farbe von Linie #«

                +

                Mit dem Block »Gib Farbe von Linie #« kann einem anderen Block die Farbe einer Linie am ausgewählten Index (0-3) mitgeteilt werden.

                +

                Dabei Ist zu beachten, dass die erste Linie den Index »0« hat, und die vierte den Index »3«.

                +

                Eingabewert: +

                +
                  +
                • Zahl, Index der Linie, von der die Farbe mitgeteilt werden soll (0-3)
                • +
                + Rückgabewert: +
                  +
                • Farbe, Farbe der ausgewählten Linie
                • +
                +
                +

                »gib Ball Informationen Ballerkennung«

                +

                Mit dem Block »Gib Ball Informationen« kann einem anderen Block die Position des Balls im Kamerabild sowie dessen vom Roboter gemessener Durchmesser mitgeteilt werden.

                +

                Damit ein Ball erkannt wird, muss in der Konfiguration dessen Farbe festgelegt werden.

                +

                Rückgabewert: +

                +
                  +
                • Liste, Position des Balls [x,y] und Durchmesser
                • +
                +
                +

                »gib Bewegung Bewegungserkennung«

                +

                Mit dem Block »Gib Bewegung Bewegungserkennung« kann einem anderen Block mitgeteilt werden, ob der Roboter im Kamerabild eine Bewegung wahrnimmt.

                +

                Rückgabewert: +

                +
                  +
                • Wahrheitswert, »wahr«, wenn eine Bewegung erkannt wird, »falsch«, wenn keine Bewegung erkannt wird
                • +
                +
                +

                »Wenn mache«

                +

                Mit dem Block »Wenn mache« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache«-Block benötigt einen logischen Wert als Eingabewert. Falls die Bedingung in »Wenn« erfüllt (wahr) ist, wird der eingefügte Block (oder die Blöcke) ausgeführt. Bei einem verschachtelten »Wenn mache« Block, also wenn eine weitere Unterscheidung eingefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist (Bedingung = falsch), wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert.

                +

                Die Bedingungen können beliebig durch Anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Eine weitere Bedingung am Ende anfügen.
                • +
                • Die letzte Bedingung löschen.
                • +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
                • +
                +
                +

                »Wenn mache sonst«

                +

                Mit dem Block »Wenn mache sonst« kannst du gezielt Aktionen auslösen, die von einer Bedingung abhängen. Der »Wenn mache sonst«-Block benötigt hierfür einen logischen Wert als Eingabewert. Falls die Bedingung erfüllt (wahr) ist, wird der dort eingefügte Block (oder die Blöcke) ausgeführt, ansonsten (Bedingung nicht erfüllt = falsch) wird der Block (bzw. die Blöcke), der bei »sonst« eingefügt wurde, ausgeführt. Bei einem verschachtelten »Wenn mache sonst« Block, also wenn eine weitere Unterscheidung dazugefügt wurde, wird zuerst die erste »Wenn« Bedingung abgefragt und, falls diese nicht erfüllt ist, wird die zweite »oder wenn« Bedingung geprüft. Auch diese zweite Bedingung benötigt wieder einen logischen Wert als Eingabewert. Nur wenn beide Bedingungen nicht erfüllt sind, wird der Block ausgeführt, der bei »sonst« eingefügt wurde.

                +

                Die Bedingungen können beliebig durch anklicken des »+« Plus-Symbols erweitert und durch das »-« Minus-Symbol wieder bis auf eine einzige Bedingung reduziert werden.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Eine weitere Bedingung am Ende anfügen.
                • +
                • Die letzte Bedingung löschen.
                • +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »wahr« ist.
                • +
                • Blöcke, die nur dann ausgeführt werden, wenn die zugehörige Bedingung »falsch« ist.
                • +
                +
                +

                »Wiederhole unendlich oft«

                +

                Mit dem Block »Wiederhole unendlich oft« kannst du Blöcke endlos von deinem Roboter ausführen lassen. Alle Blöcke, die sich im »Wiederhole unendlich oft«-Block befinden, werden immer wieder ausgeführt. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block. Deshalb wird dieser Block auch »Endlosschleife« genannt.

                +

                Eingaben: +

                +
                  +
                • Blöcke, die wiederholt ausgeführt werden.
                • +
                +
                +

                »Wiederhole n mal«

                +

                Mit dem Block »Wiederhole n mal« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole n mal« befinden, werden so oft ausgeführt, wie im Eingabefeld eingestellt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, bis die eingestellte Wiederholungszahl erreicht ist. Deshalb wird dieser Block auch »Schleife« genannt.

                +
                +

                Nur ganzzahlige Werte können eingegeben werden.

                +
                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Zahl, wie oft die enthaltenen Blöcke wiederholt werden sollen.
                • +
                • Blöcke, die wiederholt ausgeführt werden.
                • +
                +
                +

                »Wiederhole solange/bis«

                +

                Mit dem Block »Wiederhole solange/bis« kannst du andere Blöcke beliebig oft von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Wiederhole solange/bis« befinden, werden immer wieder ausgeführt, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange bzw. bis die Bedingung im Eingabefeld erfüllt ist. Deshalb wird dieser Block auch »bedingte Schleife« genannt.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • »solange« oder »bis«, um den Typ der bedingten Wiederholung zu bestimmen.
                • +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                • Blöcke, die wiederholt ausgeführt werden.
                • +
                +
                +

                »Für Wert aus der Liste«

                +

                Mit dem Block »Für Wert aus der Liste« werden nacheinander alle Werte einer Liste an eine Variable übergeben und können dann in der so genannten Schleife verarbeitet werden. Mit jedem Schleifendurchlauf wird das nächste Element aus der Liste geholt, bis die Liste vollständig abgearbeitet ist. Der Wert des Listenelements wird an die Variable Element gebunden und kann in den enthaltenen Blöcken verwendet werden.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Typ der Listenelemente, »Zahl«, »Zeichenkette«, »logischer Wert«, »Farbe«, »Verbindung«
                • +
                • Variable, frei wählbarer Name, an den nacheinander die Listenelemente übergeben werden.
                • +
                • Liste, die Elemente des festgelegten Typs enthält. Wenn die Listenelemente nicht den richtigen Typ haben, kann die Liste nicht als Eingabewert verwendet werden.
                • +
                • Blöcke, die wiederholt ausgeführt werden.
                • +
                +
                +

                »Zähle von bis«

                +

                Mit dem Block »Zähle von bis« kannst du andere Blöcke mehrfach von deinem Roboter ausführen lassen. Alle Blöcke, die sich im Block »Zähle von bis« befinden, werden so oft ausgeführt, bis die Zählung im Eingabefeld abgearbeitet ist. Die Blöcke werden dabei von oben nach unten ausgeführt. Sobald der letzte Block ausgeführt wurde, beginnt das Programm wieder mit dem ersten Block, solange die Zählbedingung im Eingabefeld erfüllt ist, d.h. der Endwert der Zählung noch nicht erreicht ist. Die Werte der Zählung werden jeweils an die Zählvariable gebunden, deren Name frei eingestellt werden kann. Der Wert der Zählvariablen kann in den Blöcken der Schleife verwendet werden. Der letzte Eingabewert gibt an, in welcher Schrittweite gezählt wird.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Variable, frei wählbarer Name für die Zählvariable.
                • +
                • Zahl, Anfangswert der Zählschleife.
                • +
                • Zahl, Endwert der Zählschleife.
                • +
                • Zahl, Schrittweite für die Zählschleife.
                • +
                • Blöcke, die wiederholt ausgeführt werden.
                • +
                +
                +

                »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren« +

                +

                Mit dem Block »Die Schleife abbrechen/mit der nächsten Iteration der Schleife fortfahren« kann eine Schleife vorzeitig beendet bzw. wieder zum Anfang der Schleife gesprungen werden. Sobald dieser Block in einer Reihe von Blöcken erscheint, werden alle nachfolgenden Blöcke bis zum Ende der Schleife ignoriert.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Abbruchverhalten, »Die Schleife abbrechen« oder »mit der nächsten Iteration der Schleife fortfahren«.
                • +
                +
                +

                »Warte bis ... «

                +

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                +

                Einstelmöglichkeiten und Eingabewert: +

                +
                  +
                • Eine weitere Wartebedingung am Ende anfügen.
                • +
                • Die letzte Wartebedingung löschen.
                • +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                +
                +

                »Warte ms ... «

                +

                Mit dem Block »Warte« kannst du dein Programm an der Stelle "anhalten", an der du den Block eingefügt hast. Dein Programm bleibt dann für die angegebene Dauer an dieser Stelle stehen. Nach Ablauf der angegebenen Zeit wird dann der nachfolgende Block ausgeführt. Beispielsweise kannst du dadurch einen Text in dem Display deines Roboters exakt für diese Zeit anzeigen lassen.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Zahl, Wartezeit in Millisekunden.
                • +
                +
                +

                »Warte bis ... «

                +

                Mit dem Block »Warte bis« kannst du dein Programm an der Stelle »anhalten«, an der du den »Warte bis«-Block eingefügt hast. Dein Programm wartet dann so lange, bis die Bedingung erfüllt (wahr) ist. Den »Warte bis«-Block kannst du mit dem »+«-Zeichen um zusätzliche Bedingungen erweitern. Dein Programm wartet dann solange, bis (mindestens) eine der Bedingungen deines »Warte bis«-Blocks erfüllt ist.

                +

                Einstelmöglichkeiten und Eingabewert: +

                +
                  +
                • Eine weitere Wartebedingung am Ende anfügen.
                • +
                • Die letzte Wartebedingung löschen.
                • +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                +
                +

                »Vergleiche«

                +

                Mit dem Block »Vergleiche« kannst du verschiedene Eingabewerte (Zahl, Farbe, logischer Wert, Text) gleichen Typs miteinander vergleichen. Stimmt der Vergleich, wird der logische Wert »wahr« zurückgegeben, sonst »falsch«.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Linker Eingabewert für den Vergleich.
                • +
                • Vergleich, wähle aus, wie verglichen werden soll.
                • +
                • Rechter Eingabewert für den Vergleich.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                +
                +

                »und/oder«

                +

                Mit dem Block »und/oder« kannst du logische Werte zueinander in Beziehung setzen. Der »und/oder« Block liefert bei der Einstellung »und« nur dann den logischen Wert »wahr«, wenn beide Eingabewerte des Blocks gleichzeitig »wahr« sind. Bei der Einstellung »oder« genügt es, wenn einer der beiden Eingabewerte »wahr« ist, damit der »und/oder« Block als logischen Wert »wahr« liefert.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Logischer Wert für die Verknüpfung.
                • +
                • Wähle die logische Verknüpfung.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Logischer Wert, »wahr« oder »falsch«.
                • +
                +
                +

                »nicht«

                +

                Mit dem Block »nicht« kannst du einen logischen Wert umkehren. Der logische Wert ergibt sich aus der logischen Umkehrung des Eingabewertes, aus »wahr« wird »falsch« und umgekehrt.

                +

                Eingabewert: +

                +
                  +
                • Logischer Wert für die Umkehrung.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Logischer Wert, Ergebnis der Umkehrung.
                • +
                +
                +

                »wahr/falsch«

                +

                Mit dem Block »wahr/falsch« kannst du entweder den logischen Wert »wahr« oder »falsch« an einen anderen Block übermitteln.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Logischer Wert, wähle den Wert, der ausgegeben werden soll.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Logischer Wert.
                • +
                +
                +

                »null«

                +

                Der Block »null« ist ein Platzhalter für eine Eingabe, die noch unbestimmt ist. Wenn z.B. eine neue Verbindungsvariable für die Kommunikation erzeugt wird und noch nicht belegt ist, wird der Anfangswert auf »null« gesetzt.

                +

                Rückgabewert: +

                +
                  +
                • Logischer Wert, »null«.
                • +
                +
                +

                »teste«

                +

                Mit dem Block »teste« kannst du einen Test durchführen und je nach Ergebnis unterschiedliche Ergebnisse zurückgeben.

                +

                Eingabewerte: +

                +
                  +
                • Logischer Wert für den Test; wenn kein Block angegeben wird, wird "wahr" angenommen.
                • +
                • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                • +
                • Beliebiger Wert, der mit einem Block bestimmt werden kann.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Wert von beliebigem Typ.
                • +
                +
                +

                »Wert«

                +

                Mit dem Block »Wert« kannst du Zahlen an einen anderen Block übermitteln.

                +

                Eingabewert: +

                +
                  +
                • Zahl
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl
                • +
                +
                +

                »Rechnen«

                +

                Mit dem Block »Rechnen« kannst du Zahlen addieren, subtrahieren, multiplizieren, dividieren oder potenzieren. Dieser Block ist nur in Verbindung mit einem anderen Block nutzbar, der eine Zahl als Eingabewert benötigt.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Zahl
                • +
                • Berechnung, wähle einen Operator aus.
                • +
                • Zahl
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, das Ergebnis der Berechnung.
                • +
                +
                +

                »Mathematische Funktionen«

                +

                Mit dem Block »Mathematische Funktionen« können einige elementare mathematische Funktionen berechnet werden.

                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Mathematische Funktion, Quadratwurzel, Absolutwert, Invertieren, ln (natürlicher Logarithmus), log10 (dekadischer Logarithmus), e^ (Exponentialfunktion) 10^ (Zehner-Exponent)
                • +
                • Zahl, auf die die mathematische Funktion angewandt wird.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, das Ergebnis der Funktion.
                • +
                +
                +

                »Trigonometrische Funktionen« +

                +

                Mit dem Block »Trigonometrische Funktionen« können Sinus, Cosinus, Tangens und die zugehörigen Umkehrfunktionen berechnet werden. Die Eingabewerte werden im Bogenmaß erwartet (siehe Hinweis oben).

                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Trigonometrische Funktion, wähle eine Funktion aus.
                • +
                • Zahl, im Bogenmaß
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, das Ergebnis der trigonometrischen Berechnung.
                • +
                +
                +

                »Konstanten« +

                +

                Der Block »Konstanten« stellt einige mathematische Konstanten bereit. »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Mathematische Konstanten, wähle eine Konstante aus.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, Wert der mathematischen Konstante. Der Wert von Unendlich ist »infinity«.
                • +
                +
                +

                »Zahleneigenschaft«

                +

                Mit dem Block »Zahleneigenschaft« wird geprüft, ob eine eingegebene Zahl eine bestimmte Eigenschaft aufweist. »gerade«, »ungerade«, »ist Primzahl«, »ganze Zahl«, »positiv«, »negativ«, »teilbar durch«.

                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Zahl, die mit einem Block geprüft wird.
                • +
                • Zahleneigenschaft, wähle, was geprüft werden soll.
                • +
                • Zahl; ein zweiter Eingabewert ist nur bei der Wahl von »ist teilbar durch« erforderlich.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Logischer Wert, »wahr« oder »falsch«, je nachdem, ob die geprüfte Zahl die untersuchte Eigenschaft hat.
                • +
                +
                +

                »erhöhe um x« +

                +

                Mit dem Block »Erhöhe um x« wird der Wert einer numerischen Variable um einen Betrag erhöht.

                +

                Eingabewerte: +

                +
                  +
                • Variable, deren Wert verändert werden soll.
                • +
                • Zahl.
                • +
                +
                +

                »runden«

                +

                Mit dem Block »runden« können Werte gerundet werden. Beim Runden werden die Nachkommastellen auf 0 gesetzt. Es wird je nach Größe der Nachkommastellen automatisch auf- oder abgerundet. Man kann jedoch auch einstellen, dass stets auf- bzw. stets abgerundet werden soll.

                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Art der Rundung, wähle, wie gerundet werden soll.
                • +
                • Zahl
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, gerundete Ganzzahl
                • +
                +
                +

                »Liste auswerten«

                +

                Mit dem Block »Liste auswerten« können verschiedene Analysen einer Liste vorgenommen werden:

                +
                  +
                • Summe - alle Werte der Liste werden zusammengezählt
                • +
                • Minimalwert - der kleinste Wert der Liste wird ausgegeben
                • +
                • Maximalwert - der größte Wert der Liste wird ausgegeben
                • +
                • Mittelwert - aus den Werten der Liste wird der Mittelwert bestimmt
                • +
                • Median - der Median (Zentralwert) einer Liste wird ausgegeben
                • +
                • Standardabweichung - die Standardabweichung (Varianz) der Listenwerte wird ausgegeben
                • +
                • Zufallswert - einer der Listenwerte wird per Zufall gewählt und ausgegeben
                • +
                +

                Einstellmöglichkeiten und Eingabewert: +

                +
                  +
                • Art der Listenauswertung
                • +
                • Liste mit Zahlen
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, Ergebnis der eingestellten Listenauswertung.
                • +
                +
                +

                »Rest von«

                +

                Der Block »Rest von« führt eine Division durch und liefert den Rest der Division, der nicht mehr durch den Divisor geteilt werden konnte.

                +

                Eingabewerte: +

                +
                  +
                • Zahl, die geteilt wird (Dividend)
                • +
                • Zahl, durch die geteilt wird (Divisor bzw. Teiler)
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, Rest der Division
                • +
                +
                +

                »begrenze«

                +

                Der Block »Begrenze« sorgt dafür, dass Grenzwerte nicht überschritten werden. Er erfordert drei Eingabewerte:

                +
                  +
                1. zu prüfender Wert
                2. +
                3. untere Grenze
                4. +
                5. obere Grenze
                6. +
                +

                Der Rückgabewert ist

                +
                  +
                • der zu prüfende Wert, wenn gilt: untere Grenze ≤ zu prüfender Wert ≤ obere Grenze
                • +
                • untere Grenze, wenn zu prüfender Wert < untere Grenze
                • +
                • obere Grenze, wenn zu prüfender Wert > obere Grenze
                • +
                +

                Eingabewerte: +

                +
                  +
                • Zahl, die begrenzt wird.
                • +
                • Zahl, untere Grenze.
                • +
                • Zahl, obere Grenze.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, die innerhalb der eingestellten Grenzen liegt.
                • +
                +
                +

                »Ganzzahlige Zufallswerte«

                +

                Mit dem Block »Ganzzahlige Zufallswerte« können ganzzahlige Zufallswerte innerhalb selbst gewählter Grenzen erzeugt werden.

                +

                Eingabewerte: +

                +
                  +
                • Zahl, untere Grenze
                • +
                • Zahl, obere Grenze
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, eine ganzzahlige Zufallszahl, die innerhalb der eingestellten Grenzen liegt
                • +
                +
                +

                »Zufallszahl«

                +

                Mit dem Block »Zufallszahl« wird eine Zufallszahl zwischen 0,0 und 1,0 bestimmt.

                +

                Rückgabewert: +

                +
                  +
                • Zahl, eine positive Zufallszahl kleiner oder gleich 1.
                • +
                +
                +

                »wandle ... um in Zeichenkette« +

                +

                Dieser Block wandelt eine Zahl in eine Zeichenkette um, die diese Zahl enthält. Als Beispiel wird die Zahl 123 in die Zeichenkette »123« umgewandelt.

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Zahl, die Zahl die in eine Zeichenkette umgewandelt werden soll.
                • +
                + Rückgabewerte: +
                  +
                • Zeichenkette, die Zeichenkette bestehend aus der gewählten Zahl.
                • +
                +
                +

                »wandle ... um in Zeichen«

                +

                Dieser Block wandelt eine einzelne Zahl den dazugehörigen ASCII-Buchstaben um. Falls es zu dieser Zahl kein dazugehöriges ASCII-Zeichen gibt, wird eine leere Zeichenkette weitergegeben. So wird z.B. die Zahl 97 in den Buchstaben »a« umgewandelt. +

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Zahl, der ASCII-Code, der in das dazugehörige Zeichen umgewandelt werden soll. Zahl zwischen 0 und 255.
                • +
                + Rückgabewerte: +
                  +
                • Zeichen, das Zeichen das dem gewählten ASCII-Code entspricht.
                • +
                +
                +

                »Mache einen NN Schritt«

                +

                Mit diesem Block führst du eine Berechnungsschritt deines Neuronalen Netzwerks aus. Bevor du diesen Block verwendest, solltest du die Werte der Eingabe-Neuronen mit dem Block »Schreibe Wert Eingabe-Neuron ...« setzen. + Die Eingabe-Werte werden in das Netzwerk gegeben und die Werte der Ausgabe-Neuronen werden anhand des Netzes aus dem Tab »Neuronales Netz« berechnet. Eine detaillierte Beschreibung des Neuronalen Netzwerks findest du hier. Die Werte der Ausgabe-Neuronen kannst du nach der Berechnung mit dem Block »gib Wert Ausgabe-Neuron ...« abfragen. +

                +

                »Schreibe Wert Eingabe-Neuron ... «

                +

                Mit diesem Block kannst du den Wert eines Eingabeneurons setzen. Du kannst als Eingabewert entweder Variablen, Zahlen, Sensordaten oder mathematische Operationen verwenden, z.B. die Summe von zwei Zahlen.

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Neuron, wähle das Eingabeneuron aus, dessen Wert du setzen möchtest.
                • +
                • Zahl, die als Eingabewert verwendet werden soll.
                • +
                +
                +

                »gib Wert Ausgabe-Neuron ... «

                +

                Mit diesem Block kannst du den Wert eines Ausgabe-Neurons abfragen. Du solltest diesen Block erst nach dem Block »Mache einen NN Schritt« verwenden, da sonst noch kein Wert für die Ausgabeneuronen berechnet worden ist.

                +

                Optionen: +

                +
                  +
                • Neuron, wähle das Ausgabeneuron, dessen Wert du abfragen möchtest.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, der Wert des gewählten Ausgabe-Neurons.
                • +
                +
                +

                »Schreibe Gewicht von ... nach ... «

                +

                Mit diesem Block kannst du das Gewicht einer Verbindung zwischen zwei Neuronen setzen, die direkt miteinander verbunden sind.

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                • +
                • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                • +
                • Zahl, auf den das Gewicht gesetzt werden soll.
                • +
                +
                +

                »Schreibe Bias ... « +

                +

                Mit diesem Block kannst du den Bias eines Neurons setzen.

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Neuron, das Neuron, dessen Bias du setzen möchtest.
                • +
                • Zahl, der Wert auf den der Bias gesetzt werden soll.
                • +
                +
                +

                »gib Gewicht von ... nach ... « +

                +

                Mit diesem Block kannst du den aktuellen Wert des Gewichts einer Verbindung zwischen zwei Neuronen abfragen, die direkt miteinander verbunden sind.

                +

                Optionen: +

                +
                  +
                • Neuron, das erste Neuron, von dem die Verbindung ausgeht.
                • +
                • Neuron, das zweite Neuron, zu (nach) dem die Verbindung hinführt.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, der Wert des Gewichts zwischen den beiden Neuronen.
                • +
                +
                +

                »gib Bias ... «

                +

                Mit diesem Block kannst du den Bias eines Neurons abfragen.

                +

                Optionen: +

                +
                  +
                • Neuron, das Neuron, dessen Bias du abfragen möchtest.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zahl, der Wert des Bias des gewählten Neurons.
                • +
                +
                +

                »Text«

                +

                Mit dem einfachen »Text«-Block wird ein Stück Text bereitgestellt.

                +

                Eingabewert: +

                +
                  +
                • Zeichenkette, bestehend aus beliebigen Zeichen
                • +
                +

                Rückgabewert: +

                +
                  +
                • Text, bestehend aus beliebigen Zeichen
                • +
                +
                +

                »Kommentar«

                +

                Dokumentiere dein Programm mit diesem Block, damit du und andere es später leichter haben, dein Programm zu verstehen. Dieser Kommentar wird auch im generierten Source Code zu sehen sein.

                +

                Eingabewert: +

                +
                  +
                • Zeichenkette, bestehend aus beliebigen Zeichen
                • +
                +
                +

                »Erstelle Text aus ...«

                +

                Mit dem »Erstelle Text«-Block wird ein Stück Text aus verschiedenen Eingabewerten zusammengesetzt. Mit dem +-Zeichen können weitere Eingabemöglichkeiten geschaffen werden. Alle Eingaben werden zu einer kontinuierlichen Zeichenkette zusammengefügt.

                +

                Eingabewerte: +

                +
                  +
                • Weitere Eingabemöglichkeiten bereitstellen.
                • +
                • Letzte Eingabemöglichkeit entfernen (bei mehr als 2 Eingabemöglichkeiten).
                • +
                • Beliebiger Wert, Zahl, Text, logischer Wert, Farbe.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Zeichenkette, bestehend aus beliebigen Zeichen.
                • +
                +
                +

                »werte ... als ...«

                +

                Mit dem »werte ... als ...«-Block wird ein als Text eingegebener Ausdruck ("expression") ausgewertet und das Ergebnis zurückgegeben. Der Ausdruck kann z.B. "sqrt(a^2 + b^2)" sein. Er wird zu einer Zahl ausgewertet. Der Block ist sehr leistungsstark: nahezu alle Ausdrücke, die mit Blockly-Blöcken erzeugt werden können, lassen sich auch als Text schreiben.

                +

                Wie der Ausdruck aufgebaut werden kann, ist auf einer eigenen Wiki-Seite beschrieben. Bitte beachten: es gibt allgemeine Ausdrücke, die für jeden Roboter gültig sind, und spezifische Teile, die nur für den jeweils ausgewählten Roboter gelten. Das muss so sein, weil jeder Roboter eigene Sensoren und Aktoren unterstützt. Das ist detailliert auf der Wiki-Seite beschrieben. +

                +

                Der Benutzer muss in einem Drop-Down angeben, welchen Typ für das Ergebnis erwartet wird. Welche Typen möglich sind, hängt vom jeweils ausgewählten Roboter ab.

                +

                Eingabewerte: +

                +
                  +
                • Text, gib den Ausdruck als Text ein.
                • +
                +

                Optionen: +

                +
                  +
                • Typ, der gewünschte Rückgabetyp des Ausdrucks, z.B eine Zahl, ein logischer Wert oder eine Zeichenkette. +
                • +
                +
                +

                »Text anhängen«

                +

                Mit dem »Text anhängen«-Block können Zeichenketten erweitert werden, z.B. indem an empfangene Nachrichten eine Signatur angehängt wird.

                +

                Eingabemöglichkeiten: +

                +
                  +
                • Text, Zeichenkette, an die Text angehängt werden soll
                • +
                • Text, Zeichenkette, die an einen Text angehängt werden soll
                • +
                +
                +

                »wandle ... um in Zahl«

                +

                Dieser Block wandelt eine Zeichenkette in eine Zahl um, falls dies möglich ist. Wenn eine Zeichenkette also nur Zahlen enthält, kann dieser Block die Zeichenkette in eine Zahl umwandeln. Wenn der Block keine Zahlen enthält, gibt dieser Block »NaN« in der Simulation des Open Roberta Labs weiter, kann aber auch ein anderes Verhalten aufweisen, welches von der verwendeten Programmiersprache des Roboters abhängt. Falls die Zeichenkette zwar mit Zahlen beginnt, aber danach weitere Zeichen enthält, die keine Zahlen sind, gibt dieser Block nur die Zahlen weiter und stoppt, sobald das erste Zeichen in der Zeichenkette steht. Also als Beispiel macht dieser Block aus der Zeichenkette »52abcd« die Zahl 52. +

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Zeichenkette, die nur aus Zahlen besteht und in eine Zahl umgewandelt werden soll.
                • +
                + Rückgabewerte: +
                  +
                • Zahl, die zahl aus der die Zeichenkette bestand.
                • +
                +
                +

                »wandle Zeichen ... an Position ... in Zahl«

                +

                Dieser Block wandelt einen Buchstaben oder ein Zeichen aus einer Zeichenkette in die dazugehörige ASCII-Nummer um. Jedes Zeichen hat dabei eine dazugehörige Nummer in der ASCII-Tabelle. So wird z.B. ein kleines »a« in die Zahl 97 umgewandelt. +

                +

                Optionen und Eingabewerte: +

                +
                  +
                • Zeichenkette, aus dieser wird ein einzelnes Zeichen ausgewählt.
                • +
                • Zahl, die Stelle des Zeichens das umgewandelt werden soll. Beachte das die Nummerierung bei 0 anfängt.
                • +
                + Rückgabewerte: +
                  +
                • Zahl, der ASCII-Code des ausgewählten Zeichens.
                • +
                +
                +

                »Erzeuge Liste« +

                +

                Der Block »Erzeuge eine leere Liste« erzeugt eine Liste ohne Inhalt. Der Block »Liste« erzeugt eine Liste mit einigen voreingestellten Werten. Mit + und - können weitere Listenelemente am Ende hinzugefügt bzw. entfernt werden. Wenn das letzte Element einer Liste entfernt wurde, liegt eine leere Liste vor.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                • +
                • Erzeuge ein weiteres Listenelement am Ende der bestehenden Liste.
                • +
                • Lösche das Listenelement am Ende der bestehenden Liste.
                • +
                • Werte, die dem Listentyp entsprechen. Hiermit können Anfangswerte gesetzt werden.
                • +
                + Rückgabewert: +
                  +
                • Leere Liste oder eine Liste mit Elementen gleichen Typs.
                • +
                +
                +

                »Wiederhole Element in Liste«

                +

                Der Block »Wiederhole Element in Liste« erzeugt eine Liste mit gleichen Elementen.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Typ, »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe« oder »Verbindung«.
                • +
                • Listenelement, das mit dem eingestellten Listentyp übereinstimmt. Dieser Wert wird in der Liste wiederholt.
                • +
                • Zahl, die angibt, wie oft der eingestellte Wert wiederholt werden soll.
                • +
                + Rückgabewert: +
                  +
                • Eine Liste des spezifizierten Typs mit der eingestellten Anzahl von gleichen Elementen.
                • +
                +
                +

                »Länge«

                +

                Der Block »Länge« gibt als Wert die Länge einer Liste zurück, die als Eingabewert angegeben wird. Eine leere Liste hat die Länge 0.

                +

                Eingabewert +

                +
                  +
                • Liste
                • +
                + Rückgabewert: +
                  +
                • Zahl, Anzahl der Listenelemente
                • +
                +
                +

                »ist leer?«

                +

                Eine als Eingabewert gegebene Liste wird geprüft, ob sie leer ist.

                +

                Eingabewert +

                +
                  +
                • Liste.
                • +
                + Rückgabewert: +
                  +
                • Logischer Wert, entweder »wahr« oder »falsch«
                • +
                +
                +

                »suche in der Liste«

                +

                Eine Liste wird durchsucht, ob ein Element darin enthalten ist. Wenn das Element enthalten ist, wird die Listenposition zurückgegeben. Wenn das Element nicht enthalten ist, ist das Ergebnis -1.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Liste, die untersucht werden soll.
                • +
                • Position für den Treffer, entweder »ersten« oder »letzten« Treffer suchen.
                • +
                • Wert, der mit den Listentyp übereinstimmt.
                • +
                + Rückgabewert: +
                  +
                • Zahl, die Position, an der das Element in der Liste steht.

                  +

                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                • +
                +
                +

                »nimm Listenelement«

                +

                Mit diesem Block wird auf ein Element einer Liste zugegriffen. Das Element wird gegebenenfalls verändert.

                +

                Es wird eine Liste als Eingabe übergeben. Danach wird per Drop-Down-Liste spezifiziert, was mit dem Listenelement geschehen soll. Anschließend wird angegeben, in welcher Richtung die Liste durchsucht werden soll, ob von vorn (links), von hinten (rechts) oder zufällig.

                +

                Einstellmöglichkeiten und Eingabewerte +

                +
                  +
                • Liste, die bearbeitet werden soll.
                • +
                • Aktion für das gefundene Element: »nimm« liest das Element und lässt es unverändert, »nimm und entferne« liest das Element und entfernt es aus der Liste, »entferne« entfernt das Element aus der Liste.
                • +
                • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                • +
                • +

                  Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.

                  +

                  Beachte: Die Zählung der Listenpositionen beginnt bei 0.

                • +
                + Rückgabewert: +
                  +
                • Das spezifizierte Listenelement, das an der angegebenen Listenposition gefunden wurde. »undefined« (undefiniert), wenn die Listenposition nicht existiert. +
                  Bei »entferne« wird kein Wert zurückgegeben; die bearbeitete Liste ist dann um dieses Listenelement reduziert. +
                • +
                +
                +

                »Setze Listenelement«

                +

                In einer als Eingabewert übergebenen Liste wird ein näher spezifiziertes Element durch einen neuen Wert ersetzt bzw. es wird ein Wert eingefügt.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Liste, die bearbeitet werden soll.
                • +
                • Aktion für das gefundene Element: »setze« verändert das Element, »füge« fügt ein neues Element in die Liste ein.
                • +
                • Positionsbestimmung für das gefundene Element: »#te«, »#te von hinten«, »erste«, »letzte« oder »zufälliges« .
                • +
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »erste«, »letzte« oder »zufälliges« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0. +
                • +
                • Listenelement, das an der zuvor bestimmten Listenposition gesetzt oder eingefügt wird.
                • +
                +
                +

                »Erhalte Unterliste«

                +

                Aus einer als Eingabewert übergebenen Liste wird eine Unterliste erzeugt. In der Unterliste sind alle Elemente enthalten, die den weiteren Spezifikationen dieses Blocks entsprechen.

                +

                Einstellmöglichkeiten und Eingabewerte: +

                +
                  +
                • Liste, die bearbeitet werden soll.
                • +
                • Position, Anfang der Unterliste: »von #«, »von # von hinten« oder »vom Anfang«.
                • +
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »vom Anfang« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0. +
                • +
                • Position, Ende der Unterliste: »zu #«, »zu # von hinten« oder »zum Ende«.
                • +
                • Zahl, Listenposition. Dieser Eingabewert entfällt, wenn zuvor »zum Ende« als Position bestimmt wurde.
                  Beachte: Die Zählung der Listenpositionen beginnt bei 0. +
                • +
                + Rückgabewert: +
                  +
                • Liste, Unterliste gleichen Typs wie die als Eingabewert übergebene Liste.
                • +
                +
                +

                »Farbwahl «

                +

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                +

                Option: +

                +
                  +
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Farbe, die ausgewählte Farbe.
                • +
                +
                +

                »Farbwahl «

                +

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                +

                Option: +

                +
                  +
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Farbe, die ausgewählte Farbe.
                • +
                +
                +

                »Farbwahl «

                +

                Mit diesem Block kannst du eine Farbe aus einer Auswahl von vordefinierten Farben auswählen.

                +

                Option: +

                +
                  +
                • Option, wähle die Farbe aus, die du verwenden möchtest.
                • +
                +

                Rückgabewert: +

                +
                  +
                • Farbe, die ausgewählte Farbe.
                • +
                +
                +

                »Farbe mit Rot ... Grün ... Blau ... « +

                +

                Mit diesem Block kannst du dir eine eigene Farbe erstellen, indem du deine Farbe aus Rot, Grün und Blau mischst.

                +

                Eingabewerte: +

                +
                  +
                • Zahl, der Rot-Anteil in deine Farbe. Wert zwischen 0 und 255.
                • +
                • Zahl, der Grün-Anteil deiner Farbe. Wert zwischen 0 und 255.
                • +
                • Zahl, der Blau-Anteil deiner Farbe. Wert zwischen 0 und 255.
                • +
                + Rückgabewert: +
                  +
                • Farbe, die von dir erstellte Farbe.
                • +
                +
                +

                »Farbton Toleranz«

                +

                Roboter erkennen den genauen Farbton oft nicht Präzise. Durch die Lichtverhältnisse kann so eine Farbe als zu dunkel oder zu hell wahrgenommen werden. Dieser Block ermöglicht die Einstellung eines Toleranzbereichs für die zu erkennende Farbe, damit beispielsweise jeder Rotton als Rot erkannt wird.

                +

                Eingabewerte: +

                +
                  +
                • Farbe, von einem Sensor empfangene Farbe.
                • +
                • Farbe, festgelegte Farbe für den Vergleich mit Sensordaten.
                • +
                • Zahl, Toleranzwert für die Farberkennung.
                • +
                + Rückgabewert: +
                  +
                • Wahrheitswert, »wahr«, wenn die Farbe im Toleranzbereich liegt, »falsch«, wenn Farbe zu stark abweicht.
                • +
                +
                +

                »Schreibe Variable«

                +

                Mit dem Block »Schreibe Variable« kannst du den Wert einer Variablen verändern. Je nach Typ der Variablen (Zahl, Zeichenkette, logischer Wert, Liste, Farbe, Verbindung) kann der Variablen ein passender Wert übergeben werden.

                +

                Einstellmöglichkeit und Eingabewert: +

                +
                  +
                • Variable, deren Wert verändert werden soll.
                • +
                • Wert, auf den die Variable gesetzt werden soll.
                • +
                +
                +

                »Lies Variable«

                +

                Mit dem Block »lies Variable« kannst du den Wert einer Variablen an einen anderen Block übergeben. Der Typ des Ausgabewertes entspricht immer dem Typ, mit dem die Variablen im Block »Start« initialisiert wurde.

                +

                Einstellmöglichkeit: +

                +
                  +
                • Variable, deren Wert gelesen werden soll.
                • +
                + Rückgabewert: +
                  +
                • Wert, der in der Variablen gespeichert ist.
                • +
                +
                +

                Funktionsblock ohne/mit Eingabe- und ohne Rückgabewert +

                +

                In einem Funktionsblock ohne/mit Eingabe- und Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Die Eingabewerte werden durch die lokalen Variablen im Funktionsblock festgelegt. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Lokale Variablen werden nicht initialisiert.

                +

                Falls in einen Funktionsblock eine Wenn-Abfrage (siehe unten) eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen.

                +

                Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Funktionsname, ohne Leer- und Sonderzeichen
                • +
                • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                • +
                • Lösche eine lokale Variable.
                • +
                +
                +
                +
                +
                  +
                • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                • +
                • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle diese Werte beim Funktionsaufruf belegt werden.
                • +
                +
                +
                +
                +

                Funktionsblock ohne/mit Eingabe- und mit Rückgabewerten +

                +

                In einem Funktionsblock ohne/mit Eingabe- und mit Rückgabewert wird eine Folge von Anweisungen zusammengefasst. Mit dem »+«-Zeichen können lokale Variablen als Eingabewerte für den Funktionsblock erzeugt werden. Nachdem alle Anweisungen durchlaufen wurden, wird abschließend ein Wert als Funktionswert zurückgegeben.

                +

                Falls in einen Funktionsblock eine Wenn-Abfrage eingebaut wird, kann es zu einem vorzeitigen Abbruch der Funktion kommen, und es kann ein alternativer Funktionswert zurückgegeben werden.

                +

                Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

                +

                Einstellmöglichkeiten: +

                +
                  +
                • Funktionsname, ohne Leer- und Sonderzeichen
                • +
                • Erzeuge eine lokale Variable, der über den Funktionsaufruf ein Wert zugewiesen wird.
                • +
                • Lösche eine lokale Variable.
                • +
                • Datentyp für den Rückgabewert. »Zahl«, »logischer Wert«, »Zeichenkette«, »Farbe«, »Verbindung«, »Liste Zahl«, »Liste logischer Wert«, »Liste Zeichenkette«, »Liste Verbindung«.
                • +
                • Wert, der dem eingestellten Datentyp des Rückgabewertes entspricht.
                • +
                + Rückgabewert: +
                  +
                • Wert, der im Rückgabeblock berechnet wurde.
                • +
                +
                +
                +
                  +
                • Der Name eines Funktionsblocks muss mit einem Kleinbuchstaben beginnen. Sonderzeichen im Funktionsnamen sind nicht erlaubt.
                • +
                • Wenn in einem Funktionsblock Eingabewerte (lokale Variablen) definiert werden, müssen alle Werte beim Funktionsaufruf belegt werden.
                • +
                +
                +
                +
                +

                Wenn-Abfrage innerhalb einer Funktion

                +

                Die Wenn-Abfrage innerhalb einer Funktion ist von besonderer Bedeutung. Sobald der Funktionsablauf auf eine Wenn-Abfrage trifft, wird die Gültigkeit der Bedingung geprüft.

                +

                Wenn-Abfrage innerhalb einer Funktion mit Rückgabewert:

                +
                  +
                • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet. Der zweite übergebene Wert wird als Funktionswert zurückgegeben. Ein eventuell mit der Funktion definierter Rückgabewert wird nicht weiter berücksichtig. Der Rückgabewert-Typ wird durch den Typ des Rückgabewerts der umgebenden Funktion festgelegt.
                • +
                • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt. Ein eventuell mit der Funktion definierter Rückgabewert wird als Funktionswert zurückgegeben, wenn der Funktionsablauf das Funktionsende erreicht.
                • +
                +

                Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert:

                +
                  +
                • Eine Wenn-Abfrage innerhalb einer Funktion ohne Rückgabewert hat nur die Bedingung als Eingabewert.
                • +
                • Wenn die Bedingung erfüllt ist, wird der weitere Funktionsablauf ignoriert und die Funktion wird beendet.
                • +
                • Wenn die Bedingung nicht erfüllt ist, wird der Funktionsablauf fortgesetzt.
                • +
                +

                Einstellgabewerte: +

                +
                  +
                • Logischer Wert, der aus einer Bedingung bestimmt wird.
                • +
                • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                • +
                + Rückgabewert: +
                  +
                • Wert, dessen Typ am Ende des Funktionsblock eingestellt ist.
                • +
                +
                +

                »Funktionsaufruf ohne Rückgabewert «

                +

                Mit diesem Block kannst du eine vorher definierte Funktion aufrufen. Diese Funktion gibt dabei keinen Wert zurück.

                +

                Eingabewerte: +

                +
                  +
                • Wert, abhängig von den Eingabewerte der vorher definierten Funktion.
                • +
                +
                +

                »Funktionsaufruf mit Rückgabewert «

                +

                Mit diesem Block kannst du eine vorher definierte Funktion aufrufen und den Rückgabewerte abrufen.

                +

                Eingabewerte: +

                +
                  +
                • Wert, abhängig von den Eingabewerten der vorher definierten Funktion.
                • +
                + Rückgabewerte: +
                  +
                • Wert, abhängig von dem Rückgabewert der definierten Funktion.
                • +
                +
                +
                + \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/help/progHelp_txt4_en.html b/OpenRobertaServer/staticResources/help/progHelp_txt4_en.html index 0dd305cf24..13a1c505d6 100644 --- a/OpenRobertaServer/staticResources/help/progHelp_txt4_en.html +++ b/OpenRobertaServer/staticResources/help/progHelp_txt4_en.html @@ -1,456 +1,1431 @@ -

                »Program start«

                Each program starts with the red »Program start« block.

                This block is always available in the Open Roberta Lab and cannot be deleted. The little triangle below the start block is called »sequence connector«. The first block you want to use will be connected by using the »sequence connector« at the start block. The sequence connector color changes to yellow when a suitable block comes into its range.

                Settings: -

                  -
                • create a new global variable
                • delete the global variable
                • show sensor data - while running a program the current values of connected sensors will be shown on the display
                • -

                If global variables have been created: -

                  -
                • Text, name of the variable
                • Type of the variable, »Number«, »Boolean«, »String«, »Color«, »Connection«, »List Number«, »List Boolean«, »List String«, »List Connection«
                • Value, that corresponds to the variable type. This is the initial value of the variable.
                • -

                »drive ... speed % ... distance cm ...«

                With the »drive distance« block you can program the direction and the speed of the robot. The speed of your robot is set in the »speed« parameter. Once the block has been executed the motors stop automatically.

                »drive distance« controls both motors of the robot at the same time, meaning that the settings you make here apply to both motors of the robot. If the robot's actions don't correspond with the block's settings when running the program, check the robot configuration settings, especially the wheel diameter and the track width.

                Settings and input values: -

                  -
                • Drive, »forwards« or »backwards«. Select a direction.
                • Number, speed between -100 and 100. If the number is negative, the motors will rotate backwards. This value will be internally clipped to be between -100 and 100.
                • Number, the distance to drive in cm.
                • -



                »drive ... speed % ...«

                With the »drive« block you can program the direction and also the speed (velocity) of your robot. Your robot moves until it is stopped or another block specifies new driving parameters. The driving speed can be set in the field »speed«.

                Options and Arguments: -

                  -
                • direction, forwards or backwards. Choose the direction.
                • number, speed between -100 to 100. 100 is the maximum speed. Negative values lets the motor rotate into the other direction. This value will be internally clipped to be between -100 and 100.
                • -


                »stop«

                The »stop« block stops the motors immediately.


                »steer ... speed left ... speed right ...«

                The block »steer ... speed left ... speed right ...« programs the robot to drive a curve by setting different speeds for the left and right motor. The robot configuration influences the radius of the curve depending from wheel distance and wheel diameter. The turning direction will define the driving direction.

                Settings and input values: -

                  -
                • Turning direction, »forwards« or »backwards«. Select your desired moving direction.
                • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • Number, speed between -100 and 100 for the right motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • -

                »steer ... speed left ... speed right ... distance ...«

                The block »steer ... speed left ... speed right ... distance ...« programs the robot to drive a curve by setting different speeds for the left and right motor and also a distance related to the middle between both wheels. The robot configuration influences the radius of the curve depending from wheel distance and wheel diameter. The turning direction will define the driving direction.

                Settings and input values: -

                  -
                • Turning direction, »forwards« or »backwards«. Select your desired moving direction.
                • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • Number, the distance in cm to be driven.
                • -


                »turn ... speed % ... degree ...«

                With the »turn degree« block you program the direction (right/left) that your robot will turn. In addition to the direction you can also program the »degrees«, allowing you to program how many degrees your robot should rotate (around its axis). This means that you do a complete rotation by setting a 360 degree turn..

                The »turn degree« block controls both motors of the robot in such a way that the robot turns around its own axis. If the robot's actions don't correspond with the block's settings when running the program, check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                Settings and input values: -

                  -
                • Turn, »right« or »left«. Select the desired direction for turning.
                • Number, speed between -100 and 100. If the number is negative, the robot will turn the other way around. This value will be internally clipped to be between -100 and 100.
                • Number, degrees the robot shall turn. Degree of 360 will perform a full turn around. Negative numbers are not allowed.
                • -

                »turn ... speed % ...«

                With the »turn« block you set the direction (right/left) which the robot will turn. Your robot turns until it is stopped or another block is used for driving. You can set the speed in the block parameter field »speed«.

                »turn« controls both motors of the robot at the same time, therefore the robot turns on the spot. If the EV3 Robot's actions don't correspond with the block's settings when running the program, check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                Settings and input values: -

                  -
                • Turn, »right« or »left«. Select the desired direction for turning.
                • Number, speed between -100 and 100. If the number is negative, the robot will turn the other way around. This value will be internally clipped to be between -100 and 100.
                • -

                If your robot turns into the wrong direction, then the motors are connected to the wrong ports. Just swap the ports and your robot will turn into the right way.



                »motor port ... on speed % ... for rotation/degree ...«

                With the »motor port ... rotation« block you can program the speed (velocity) of the selected motor. Your robot starts the selected motor and rotates the motor until the specified number of rotations or degrees is done.

                Options and Arguments: -

                  -
                • motor port, choose the one where the motor that you want to program is connected to.
                • number, spped between -100 and 100. 100 is the maximum speed. Negative values lets the motor rotate into the other direction. This value will be internally clipped to be between -100 and 100.
                • rotation or degree. Choose the one which fits best. 1 rotation is the same than 360 degrees.
                • number, rotations or degrees, only positive numbers are allowed.
                • -


                »motor port ... on speed % ...«

                With the »motor port ... on« block you can program the speed (velocity) of the selected motor. Your robot starts the selected motor, until it is stopped or another block specifies new moving parameters.

                Options and Arguments: -

                  -
                • motor port, choose the port where the motor is connected to.
                • value, speed between -100 to 100. Negative values let the motor turn backwards. This value will be internally clipped to be between -100 and 100.
                • -

                »stop motor port«

                Using the block »stop motor port « switches off one selected motor. You can decide the motor to run out slowly (float) or to break immediately

                Setting options: -

                  -
                • motor port, choose the port where the motor is connected to.
                • float or brake; make your choice.
                • -

                »set servo motor SG90 ... to° ...«

                This block controls the servo motors on your Robot. Choose what servo you want to actuate, and to what degree it should move.

                Options: -

                  -
                • Servo port, which servo you want to actuate.
                • Number, to what angle you want to set your servo.
                • -

                »show text ... in row ...«

                With the »show text« block you can display text and numbers on the display of your robot. You can also specify in which column and row the text or numbers should be displayed on the robot screen.

                Input values: -

                  -
                • String, input of a text string to be shown in the display.
                • Number, row for the text to start between 0 and 7.
                • -

                »clear display«

                With this block, you can delete what is shown on the display.

                »show on Serial Monitor«

                With this block you can display text on a Serial Monitor through USB.

                Input value: -

                  -
                • String, the text or numbers that should be displayed on the Serial Monitor.
                • -

                »play file ...«

                With this block you can make the robot play a sound of your choice.

                Options: -

                  -
                • option, choose which Sound file you want to play.
                • -

                » turn LED on display colour ...«

                With this block you can turn on the LED on your robot's display to a certain colour.

                »turn LED off display«

                With this block you can turn off the LED on your robot's display.

                »switch brick light ... on colour ...«

                With the »switch brick light« block you can program the background light of the display. The robot's brick light stays on until you reprogram it.

                Settings: -

                  -
                • Display, select a display
                • Colour, select a colour.
                • -

                »switch brick light ... off«

                With the »brick light off« block you can turn off the brick light.

                Settings:

                -
                  -
                • Display, select a display
                • -

                »display button ... pressed?«

                With this Block you can query one of the display buttons of your Robot, if it is currently being pressed.

                Options: -

                  -
                • Button, select which Button you want to query.
                • -

                Return value: -

                  -
                • Truth value, »True«, if the Button is pressed, else »False«.
                • -

                »get distance cm ultrasonic sensor ...«

                With this Block you can query an ultrasonic sensor. This sensor measures the distance to the closest object, by sending ultrasonic waves and capturing reflections to calculate distance to objects.

                Options: -

                  -
                • Sensor, select which Ultrasonic sensor you want to query.
                • -

                Return value: -

                  -
                • Value, the distance to the nearest object in Centimeters.
                • -

                »get line infrared sensor ...«

                With this block you can use the infrared sensors of your robot to detect a line. A light area of the line is read as "0", a dark area is read as "1".

                Options: -

                  -
                • Sensor, choose which sensor you would like to use.
                • -

                Returned Values: -

                  -
                • Truth value, "true" if the sensor is above a black line, "false" otherwise.
                • -

                »get rotation/degree« encoder port«

                With the block »get rotation/degree« you can "tell" another block the rotation of the motor. The distance is transmitted as a number (in cm). In addition, this block can be set to »degree« in the drop down menu. With this setting the number of degrees is transmitted instead of cm. This block can only be used in conjunction with another block, which requires a number as an input parameter.

                Settings: -

                  -
                • Measurement mode, »rotation«, »degree« or»distance«. Select your mode of measurement.
                • Encoder port, select the sensor port where your motor/encoder is connected.
                • -

                Return value: -

                  -
                • Number, that indicates according to the measurement mode the number of rotations, the degrees, or the distance in cm.
                • -

                »reset encoder«

                With the block »reset encoder« the internal sensor (motor encoder) of a motor can be reset to 0 .

                Setting: -

                  -
                • Port, select the sensor port where your motor is connected.
                • -

                »get value timer«

                With the block »get value« you can "tell" another block the current time in milliseconds of the internal timer. 5 timers are available.

                Setting: -

                  -
                • Option, select the timer you want to read.
                • -

                Return value: -

                  -
                • Number, milliseconds since program start or since the last reset of the selected timer.
                • -

                »reset timer«

                With the block »reset timer« the internal timer (1 to 5) can be reset to the value 0.

                Setting: -

                  -
                • Timer number, select the timer you want to reset.
                • -

                »get colour camera«

                With the block »get colour camera« you can "tell" another block the average colour of an area previously specified in the configurations.

                Return value: -

                  -
                • Colour, the average colour of the specified area.
                • -

                »get number of lines camera«

                With the block »get number of lines camera« you can "tell" another block the number of lines recognised using the camera. The robot can recognise up to 4 different lines.

                Return value: -

                  -
                • Number, number of lines recognised by the robot (up to 4)
                • -

                »get information by line #«

                With the block »get information by line #« you can "tell" another block the position of a chosen line as well as its' width. The up to 4 recognised lines are indexed by the numbers 0-3.

                You have to keep in mind, that the first line is indexed by "0" and the last by "3".

                Input value: -

                  -
                • Number, index of the line of which the position, as well as the width, shall be returned
                • -
                Return value: -
                  -
                • List: position [x,y] and width of the line at the specific index
                • -

                »get colour by line #«

                With the block »get colour by line #« you can "tell" another block the colour of a chosen line.The up to 4 recognised lines are indexed by the numbers 0-3.

                You have to keep in mind, that the first line is indexed by "0" and the last by "3".

                Input value: -

                  -
                • Number, index of the line (0-3) of which the colour shall be returned
                • -
                Return value: -
                  -
                • Colour, colour of the chosen line
                • -

                »get ball information«

                With the block »get ball information« you can "tell" another block the position of a ball in the robot's field of vision, as well as its' width

                In order to recognise a ball, you need to specify the ball's colour in the configurations.

                Return value: -

                  -
                • List, position of the ball [x,y], as well as its' width
                • -

                »get motion camera«

                With the block »get motion camera« you can "tell" another bock, whether the camera detects motion or not.

                Return value: -

                  -
                • Truth value, »true«, if a motion is detected, »false«, if no motion is detected
                • -

                »Mini-Switch ... pressed?«

                With the block »Mini-Switch ... pressed?« you can "tell" another block, whether the switch at a chosen port is currently being triggered or not. -

                  -
                • Port, which Switch shall be checked
                • -
                -
                  -
                • Truth value, »true«, if the switch is being triggered, »false«, if it is not being triggered
                • -

                »get value % light sensor«

                The »get value % light sensor« block can be used to tell another block how bright the light is that hits the robot's light sensor.

                Return value: -

                  -
                • Number, percentage of light intensity as a number from 0-100
                • -

                »get ... environmental sensor«

                With the block »get ... environmental sensor« block can be used to communicate a specific measured value of the environmental sensor to a block. The environmental sensor has various functions. It can measure the temperature, humidity, air pressure and indoor air quality.

                Rückgabewert: -

                  -
                • Temperature, number from -45° to 80° Celsius
                • Humidity, number as a percentage of the humidity as a number from 0-100
                • Air pressure, number indicates air pressure in hpa
                • Indoor air quality, number indicates IAQ value of the air
                • Accuracy, number indicates the accuracy of the sensor in per cent
                • Calibration required, truth value outputs "true" if calibration of the sensor is required and "false" if not
                • -

                »calibrate environmental sensor«

                The »calibrate environmental sensor« block can be used to recalibrate the environmental sensor. This is necessary at the beginning and if it delivers inaccurate measured values. Calibration takes about 5 minutes.

                »get ... RGB gesture sensor«

                With the block »get ... RGB gesture sensor« can be used to communicate various return values of the RGB gesture sensor to another block. The sensor detects colour, ambient light, gesture, proximity and RGB.

                Return value: -

                  -
                • Colour, returns detected colour as colour type
                • Ambient light, returns the strength of the ambient light as a number from 0-100
                • Gesture, number encodes one of 6 possible recognisable gestures
                • Proximity, returns the proximity of the object in front of the sensor as a number
                • RGB, returns the RGB values of the object in front of the sensor as a list
                • -

                »get acceleration g Combi-sensor ...«

                The »get acceleration g Combi-sensor« block can be used to tell another block how fast the robot equipped with the combi sensor is accelerating.

                Input value: -

                  -
                • x, y, z, -direction, in which acceleration shall be measured
                • -

                Return value: -

                  -
                • Number, acceleration in g
                • -

                »get magnetic flux ° Combi-sensor«

                The »get magnetic flux ° Combi-sensor« block can be used to determine the direction in which the robot is turned using the earth's magnetic field.

                Return value: -

                  -
                • Number, cardinal point as a degree
                • -

                »get gyroscope ° Combi-sensor ...«

                The »get gyroscope ° Combi-sensor« block can be used to tell another block via the combination sensor how fast the robot is turning in a certain direction. The measured axis (x,y,z) must be specified.

                Input value: -

                  -
                • x, y, z, Direction in which speed shall be measured
                • -
                Return value:
                  -
                • Number, rotational speed in degrees
                • -

                »if do«

                With the block »if do« you can selectively trigger actions to be executed by your robot. The »if do« block therefore requires a logical value as an input parameter, the condition. Only if the condition of the »if« statement is true, the inserted block will be executed. In a nested »if do« block, if a further distinction was added, the first »if« condition is queried. If it is not fulfilled (condition = false), the second »else if« condition will be checked. Also this second condition requires a logical value as an input parameter.

                The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                Settings and input values: -

                  -
                • Insert an additional condition.
                • Delete the last condition.
                • Boolean value, »true« or »false«.
                • Blocks that will be executed
                • -

                »if do else«

                With the block »if do else« you can selectively trigger actions which are executed by your robot. The »if do then« block therefore requires a logical value as an input parameter. If the condition in »if« is true the inserted block will be executed, otherwise (condition is not fulfilled = false) the block connected to the »else« statement will be executed. In a nested »if do else« block with further distinctions added, the first »if« condition is queried. If it is not true, the second condition »else if« is checked. Also the second condition requires a logical value as an input parameter. Only when both conditions are not true, the block which is inserted at the »else« statement will be executed.

                The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                Settings: -

                  -
                • Insert an additional if-do-else condition.
                • Delete the last if-do-else condition.
                • Boolean value, »true« or »false«.
                • Do blocks that will be executed if the according condition evaluates to »true«.
                • Else blocks that will be executed if the according condition evaluates to »false«.
                • -

                »repeat indefinitely«

                With the block »repeat indefinitely« you can endlessly run the blocks on your robot. All blocks which are within the »repeat indefinitely« block will be executed endlessly. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                Input: -

                  -
                • Blocks to be repeated indefinitely.
                • -

                »repeat n times«

                With the block »repeat« you can run other block as many times as you like. All blocks in the »repeat« block will be executed as often as defined in the entry field. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                Only integer values can be entered.

                Settings and input: -

                  -
                • Number that indicates how often the contained blocks will be repeated.
                • Blocks to be repeated as often as defined.
                • -

                »wait«

                With the block »wait« you can "pause" your program at the point where you inserted the »wait« block. Your program will then remain for the specified duration at this point. After the specified time the next block will be executed. For example you can display text in the screen of your robot for exactly the time you specified in the »wait« block.

                Settings and input values: -

                  -
                • Number, waiting time in milliseconds.
                • -

                »wait until ...«

                With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                Settings: -

                  -
                • Add a new condition.
                • Delete the last condition.
                • Boolean value, »true« or »false«.
                • -

                »wait until ... «

                With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                Settings: -

                  -
                • Add a new condition.
                • Delete the last condition.
                • Boolean value, »true« or »false«.
                • -

                »break out/continue with next iteration of loop«

                With the block »break out/continue with next iteration of loop« a loop can be terminated ahead of schedule. As soon as the block is entered within a sequence of blocks, all further blocks up to the end of the loop will be ignored.

                Settings: -

                  -
                • Type of breaking behavior, »break out« or »continue with next iteration«.
                • -

                »count with from to«

                With the block »count with from to« you can run other block as many times as you like. All blocks in the »count with from to« block will be executed as long as the counting is in progress. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the counting is in progress. The last parameter declares the step width for counting.

                Settings: -

                  -
                • Variable, name of free choice; numbers of the counter will be delivered one after the other to the variable.
                • Number, initial value of the counter.
                • Number, final value of the counter. As the counter exceeds this value the loop ends.
                • Number, defining the increment. The variable value will increase by this amount after every loop cycle.
                • Blocks that will be executed in every loop cycle.
                • -

                »for each item in list«

                With the block »for each item in list« all list items will successively be bound to a variable. The variable can be used within the loop. With each loop cycle the next item of the list will be bound until all list elements have been processed.

                Settings and input value: -

                  -
                • Type of list elements, »Number«, »String«, »Boolean«, »Colour«, »Connection«
                • Variable, name of free choice; list elements will be delivered one after the other to the variable.
                • List that contains elements of the desired type. If the list elements are not of the correct type then the list will not fit to the input slot.
                • Blocks which will be executed as often as there are elements in the list.
                • -

                »repeat while/until«

                With the block »repeat while/until« you can run other block as many times as you like. All blocks in the »repeat while/until« block will be executed as long as the condition in the entry field is true. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the condition is still true. Therefore, this block is also called »conditional loop«.

                Settings and input values: -

                  -
                • Option, »while« or »until«, defining the type of the conditional repetition.
                • Boolean value, »true« or »false«.
                • Blocks that will be repeated while/until the condition evaluates to »true«.
                • -

                »comparison«

                With the block »comparison« you can compare different parameters of the same type (number, color, logical value, text). This block can only be used in conjunction with another block which requires a logical value as an input parameter.

                Settings and input values: -

                  -
                • Value for the left hand side.
                • Comparison, select one of =, ≠, <, ≤, >, ≥
                • Value for the right hand side.
                • -

                Return value: -

                  -
                • Boolean value, »true« or »false«.
                • -

                »and/or«

                With the block »and/or« you can interrelate logical values with each other. The »and/or« block with the setting "and" will be true only if both logical parameters are "'true"'. If the block has the setting »or« it is sufficient if one of the two parameters is "true", so that the »and/or« block will return true.

                Settings: -

                  -
                • Boolean value on the left hand side.
                • Boolean function, »and« or »or«.
                • Boolean value on the right hand side.
                • -

                Return value: -

                  -
                • Boolean value »true« or»false«.
                • -

                »true/false«

                With the block »true/false« you can return either the logical value »true« or »false« to another block.

                Settings: -

                  -
                • Boolean value, make your choice.
                • -

                Return value: -

                  -
                • Boolean value, »true« or »false«.
                • -

                »not«

                Using the »not« lets you invert a logical value and pass this value to another block.

                Input value: -

                  -
                • Boolean value, to be inverted.
                • -

                Return value: -

                  -
                • Boolean value, »true« or »false«; result of inverting.
                • -

                »test«

                Using the »test« block will perform a test and returns a value which depends on the test result.

                Input values: -

                  -
                • Boolean value for the test; if no input value is given "true" will be assumed.
                • Arbitrary value, evaluated by a block.
                • Arbitrary value, evaluated by a block.
                • -

                Return value: -

                  -
                • Value of arbitrary type.
                • -

                »null«

                The block »null« is a place holder for an input value that is not yet specified. If for instance a new connection variable has been created and is not yet bound, the initial value of this connection will be set to »null«.

                Return value:: -

                  -
                • Boolean value, »null«.
                • -

                »parameter«

                With the block »parameter« you can send numbers to another block.

                Settings and input values: -

                  -
                • Number
                • -

                Return value: -

                  -
                • Number
                • -

                »calculating«

                With the block »calculating« you can sum up, subtract, multiply, and divide numbers. This block can only be used in conjunction with another block which requires a number as an input parameter.

                Settings and input values: -

                  -
                • Number, first number on the left you want to calculate with.
                • Option, mathematical operator, choose one of +, −, ×, ÷, ^.
                • Number, second number on the right you want to calculate with.
                • -

                Return value: -

                  -
                • Number, result of the calculation.
                • -

                »mathematical function«

                With the block »mathematical function« some elementary mathematical functions may be calculated. Available functions are »square root«, »absolute«, »invert« (multiply by -1), »ln« (natural logarithm), »log10« (decadic logarithm), »e^« (exponential function), »10^« (base 10 exponent)

                Settings and input value: -

                  -
                • Option, mathematical function, choose one.
                • Number to apply the function to.
                • -

                Return value: -

                  -
                • Number, result of the function application.
                • -

                »trigonometric functions«

                With the block »trigonometric function« sine, cosine, tangent and their respective revers functions can be calculated. Input values are expected in radian measure(see hint above).

                Settings and input value: -

                  -
                • Option, trigonometric function to choose from.
                • Number, in radian measure.
                • -

                Return value: -

                  -
                • Number, result of the trigonometric calculation.
                • -

                »constant«

                With the »constant« block some mathematical constant values are available: »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«

                Settings: -

                  -
                • Option, mathematical constants, choose one.
                • -

                Return value: -

                  -
                • Number, value of the selected mathematical constant. Infinity will return »infinity«.
                • -

                »number property«

                With the block »number property« you check whether a given number has a specific property: »even«, »odd«, »prime«, »whole«, »positive«, »negative«, »divisible by«.

                Settings and input values: -

                  -
                • Number, the property of this input value will be checked.
                • Option, number property, choose one.
                • Number, evaluated from a block. The second input value is only required for the property »divisible by«.
                • -

                Return value: -

                  -
                • Boolean value, »true« or »false«, depending on the selected property.
                • -

                »change by ... «

                The block »change by ... « increments a numerical variable by a defined value.

                Settings and input values: -

                  -
                • Variable name, which value is to be changed. Choose the variable to be changed.
                • Number, given by a block.
                • -

                »round«

                With the block »round« values may be rounded. Rounding will set the decimal places to 0. It depends on the value of the decimal places whether the block rounds up or down. You may also decide by settings to always round up or down.

                Settings and input value: -

                  -
                • Type of rounding, choose a round mode.
                • Number you want to round.
                • -

                Return value: -

                  -
                • Number, rounded whole number, according to the round mode.
                • -

                »list evaluation«

                With the block »list evaluation« you may analyse a list.

                Modes for list evaluation: -

                  -
                • sum - addition of all list values
                • min - smallest value in the list
                • max - largest value in the list
                • average - average of all list values
                • median - median of all list values
                • standard deviation - standard deviation of all list values
                • random item - one list value randomly selected
                • -

                Settings and input value: -

                  -
                • Mode of list evaluation, choose one mode.
                • List of numbers
                • -

                Return value: -

                  -
                • Number, calculated according to the selected list evaluation mode.
                • -

                »remainder of«

                The block »remainder of« calculates a divison and returns the remainder of the division.

                Input values: -

                  -
                • Number to be divided (dividend).
                • Number, divisor.
                • -

                Return value: -

                  -
                • Number, rest of the division.
                • -

                »constrain«

                The block »constrain« ensures that given boundaries will not be exceeded.

                Input values: -

                  -
                • Number, that will be constrained.
                • Number, lower bound.
                • Number, upper bound.
                • -

                Return value: -

                  -
                • Number, constrained by the lower and the upper bound.
                • -

                »random integer«

                With the block »random integer« you may generate random integer numbers within defined limits

                Input values: -

                  -
                • Number, lower bound
                • Number, upper bound
                • -

                Return value: -

                  -
                • Number, a whole random number from within the upper and lower bounds.
                • -

                »random fraction«

                With the block »random fraction« a random value between 0.0 and 1.0 is calculated.

                Return value: -

                  -
                • Number, positive random value between 0.0 and 1.0.
                • -

                »cast ... to String«

                This block converts a number into a string containing that number. So for example the number 123 would be converted into the string »123«.


                Options and input values: -

                  -
                • Number, the number that you want to convert into a String containing this number.
                • -

                Return value: -

                  -
                • String, the string containing the selected number.
                • -

                »cast ... to Char«

                This block converts a single number to the corresponding ASCII letter. If there is no associated ASCII character for this number, an empty string is passed on. So for example the number 97 gets converted into the lower-case letter »a«.

                Options and input values: -

                  -
                • Number, the ASCII code that you want to convert into a character.
                • -

                Return values: -

                  -
                • String, a single character that corresponds to the selected ASCII number.
                • -

                »make one NN step«

                With this block you perform a calculation step of your neural network. Before you use this block, you should set the values of the input neurons with the block "set value input neuron ...". The input values are given into the network and the values of the output neurons are calculated using the network from the tab »Neural Network«. A detailed description of the neural network can be found here. You can query the values of the output neurons after the calculation with the block »gett value output neuron ...«.

                »set value input neuron ... «

                With this block you can set the value of an input neuron. You can use either variables, numbers, sensor data or mathematical operations as input values, e.g. the sum of two numbers.

                Options and input values: -

                  -
                • Neuron, select the input neuron whose value you want to set.
                • Number, the number that is too be used as input value.
                • -

                »get value output neuron ... «

                With this block you can query the value of an output neuron. You should only use this block after the block »make one NN step«, otherwise no value has been calculated for the output neurons and the value is defaulted to 0.

                Options: -

                  -
                • Neuron, select the output neuron whose value you want to query.
                • -

                Return value: -

                  -
                • Number, the value of the selected output neuron.
                • -

                »set weight from ... to ... «

                With this block you can set the weight of a connection between two neurons that are directly connected.

                Options and input values: -

                  -
                • Neuron, the first neuron from which the connection originates.
                • Neuron, the second neuron to which the connections leads.
                • Number, the value to which the weight is to be set.
                • -

                »set bias ... «

                With this block you can set the bias of a neuron.

                Options and input values: -

                  -
                • Neuron, the neuron whose bias you want to set.
                • Number, the value to which the bias should be set.
                • -

                »get weight from ... to ... «

                With this block you can query the current value of the weight of a connection between two neurons that are directly connected.

                Options: -

                  -
                • Neuron, the first neuron from which the connection originates.
                • Neuron, the second neuron to which the connections leads.
                • -

                Return value: -

                  -
                • Number, the value of the weight between the two neurons.
                • -

                »get bias ... «

                With this block you can query the bias of a neuron.

                Options: -

                  -
                • Neuron, the neuron whose bias you want to query.
                • -

                Return value: -

                  -
                • Number, the value of the bias of the selected neuron.
                • -

                »Text«

                The simple »Text« block creates a little text.

                Input value: -

                  -
                • String, containing arbitrary characters.
                • -

                Return value: -

                  -
                • String, containing arbitrary characters.
                • -

                »comment«

                Document your program with this block, so that you and others will find it easier to understand your program later. This comment will also be visible in the generated source code.

                Input value: -

                  -
                • String, containing arbitrary characters.
                • -

                »create Text«

                The »create text« block compiles a text from different input parameters. Using the + sign will insert further input slots. All input parameters will be connected one after the other. Essentially the »create text« block converts an arbitrary input value into a text string.

                Input values: -

                  -
                • Arbitrary values [numbers, text, logical values, colours)
                • -

                Return value: -

                  -
                • String, containing arbitrary characters, compiled sequentially from all input values.
                • -

                »append Text«

                The »append text« block will append some string to a given string, for instance to extend a message with a signature.

                Input values: -

                  -
                • String, to which some other text will be appended.
                • String, that shall be appended.
                • -

                »cast ... to Number«

                This block converts a string into a number if this is possible. So if a string contains only numbers, this block can convert the string into a number. If the block does not contain numbers, this block will pass »NaN« when used in th Open Roberta Lab simulation and may have a different behavior depending on the programming language of the robot you are currently using. If the string starts with numbers but then contains other characters that are not numbers, this block will pass only the numbers and stop as soon as the first character is in the string. So, as an example, this block makes the number 52 out of the string »52abcd«.

                Options and input values: -

                  -
                • String, the string you want to convert into a number.
                • -

                Return values: -

                  -
                • Number, the converted number.
                • -

                »cast ... at index ... to Number«

                This block converts a letter or a character from a character string into the corresponding ASCII number. Each character has an associated number in the ASCII table. For example, a lower-case »a« is converted into the number 97.

                Options and input values: -

                  -
                • String, from which a single character is selected.
                • Number, the digit of the character to be converted. Note that the numbering starts at 0.
                • -

                Return values: -

                  -
                • Number, the ASCII number of to selected character. Number between 0 and 255.
                • -

                »create list«

                The block »empty list« creates a list with no content.The block »list« generates a list with some predefined values.

                This block may only be used in the context of a »set variable« block.

                Using »+« or »−« enables you to extend or reduce the list at its end.

                Settings and input values: -

                  -
                • List type, »Number«, »String«, »Boolean«, »Colour«, »Connection«.
                • Create further list element, append to the end of the list.
                • Delete list element at the end of the list.
                • Values, according to the list type. Here the input of initial values is possible.
                • -

                Return value: -

                  -
                • Empty list or list, containing elements of the specified list type.
                • -

                »repeat element in list«

                The »repeat element in list« block generates a list of equal elements.

                Settings and input values: -

                  -
                • List type, »Number«, »Boolean«, »String«, »Colour« or »Connection«.
                • List element, according to the selected list type. This value will be repeated in the list.
                • Number, defining how often the list element will be repeated.
                • -

                Return value: -

                  -
                • List of the specified list type, containing the specified number of equal elements.
                • -

                »length of«

                The »length of« block returns a value which is the length of the list given as parameter. An empty list has a length of 0.

                Input value: -

                  -
                • List, evaluated by an appropriate block.
                • -

                Return value: -

                  -
                • Number, number of list elements.
                • -

                »is empty?«

                A list given as parameter will be checked whether it is empty.

                Input value: -

                  -
                • List, evaluated by an appropriate block.
                • -

                Return value: -

                  -
                • Boolean, either »true« or »false«.
                • -

                »find in list«

                A list is searched for an item. If the item is in the list, the list position will be returned. If the item is not in the list the result is -1.

                Settings and input values: -

                  -
                • List, that will be examined.
                • Position of the occurrence, either »first« or »last«.
                • Value, list item to be found.
                • -

                Return value: -

                  -
                • Number, indicating the position where the element was found in the list.

                  Note: Counting list positions will start with 0.

                • -

                »get list element«

                This block accesses an item of a list. Depending on the settings this item may be altered.

                A list is given as parameter. Then a drop-down-list specifies what will happen to the list item under consideration.

                Settings: -

                  -
                • List, that is under consideration.
                • Option, action for the element found: »get« reads the element and leaves it unchanged, »get and remove« reads the element and removes it from the list, »remove« just removes the element from the list.
                • Option, position of the element found: »#«, »# from end«, »first«, »last« or »random« .
                • Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected as position.

                  Note: Counting of list positions starts with 0.

                • -

                Return value: -

                  -
                • List element that has been found at the specified list position; »undefined«, if the list position does not exist.

                  With selection of »remove« there is no return value; instead the list will be shortened by this list element.

                • -

                »set list element«

                In a list given as input parameter one specified element will be replaced by a new value.

                Settings and input values: -

                  -
                • List, that will be changed.
                • Option, action for the element found; »set« changes the element, »insert at« inserts a new element into the list.
                • Option, position for the element to be changed: »#«, »# from end«, »first«, »last« or »random« .
                • Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected.
                  Note: Counting of list positions begins with 0.
                • List element, that will be set or inserted at the selected list position.
                • -

                »get sublist«

                From a list given as parameter a sublist will be created. The sublist contains all those elements that match the further specifications of the block.

                Settings and input values: -

                  -
                • List to be examined.
                • Position, start of the sublist: »#«, »# from end« or »first«.
                • Number, indicating the list position. This input value is not required if »first« has been selected.

                  Note: Counting of list positions starts with 0.

                • Position, end of the sublist: »#«, »# from end« or »last«.
                • Number, indicating the list position. This input value is not required if »last« has been selected.

                  Note: Counting of list positions starts with 0.

                • -

                Return value: -

                  -
                • List, a sublist of the same type as the given list.
                • -

                »Colour picker «

                With this block you can choose from a pool of predefined colours for your robot.

                options: -

                  -
                • option, choose the colour you want to use.
                • -

                Return value: -

                  -
                • colour, your selected colour.
                • -

                »Colour picker «

                With this block you can choose from a pool of predefined colours for your robot.

                options: -

                  -
                • option, choose the colour you want to use.
                • -

                Return value: -

                  -
                • colour, your selected colour.
                • -

                »Colour picker «

                With this block you can choose from a pool of predefined colours for your robot.

                options: -

                  -
                • option, choose the colour you want to use.
                • -

                Return value: -

                  -
                • colour, your selected colour.
                • -

                »Colour with red ... green ... blue ... «

                With this block you can create your own colour by mixing red, green and blue.

                Input values: -

                  -
                • number, the red part in your color. Value between 0 and 255.
                • number, the green part in your color. Value between 0 and 255.
                • number, the blue part in your color. Value between 0 and 255.
                • -

                »Hue Tolerance«

                Robots often do not recognise the exact colour tone precisely. The lighting conditions can cause a colour to be perceived as too dark or too light. This block allows you to set a tolerance range for the colour to be detected, so that every shade of red, for example, is detected as red.

                Input values: -

                  -
                • Colour, colour received from a sensor.
                • Colour, defined colour for comparison with sensor data.
                • Number, tolerance value for colour detection.
                • -
                Return value: -
                  -
                • Truth value, ‘true’ if the colour is within the tolerance range, ‘false’ if the colour deviates too much.
                • -

                »set variable«

                Using the block »set variable« will assign a value to a variable. Depending on the variable type the value may be assigned by an input connector.

                Settings and input value: -

                  -
                • Variable, which value is to be changed.
                • Value, new value for the variable, evaluated from a suitable block.
                • -

                »get variable«

                Using the block »get variable« returns the value of a variable to another block.The type of the output parameter is equal to the type that has been assigned to the variable in the »start« block.

                Settings:
                -

                  -
                • Variable, that will be read. The value will not be changed by reading.
                • -

                Return value:
                -

                  -
                • Value, stored in the variable.
                • -

                »Function blocks with/without input parameters and no return statement«

                In a function block with/without input parameter and without return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized.

                If a function block contains an if-block the function may be terminated before reaching it's end.

                The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                Settings: -

                  -
                • Function name, no special characters and white spaces allowed.
                • Generate new local variables, that will be assigned with the function call.
                • Delete the associated local variable.
                • -

                • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.

                • If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.

                »Function blocks with/without input parameters with return statements«

                In a function block with/without input parameter and with return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized. After running through all the blocks of the function a value will be returned.

                If a function block contains an if-block the function may be terminated before reaching it's end. An alternative value may be returned by the if-block.

                The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                Settings: -

                  -
                • Function name, no special characters and white spaces allowed.
                • Generate new local variables, that will be assigned with the function call.
                • Delete the associated local variable.
                • Data type for the return value; choose one data type.
                • Block, that returns a value of the defined data type.
                • -

                Return value: -

                  -
                • Value of the defined data type, evaluated in an appropriate block.
                • -

                • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.
                • If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.

                »if block to be used within a function«

                The if statement within a function is of special importance. As the function sequence meets an if statement the validity of the condition will be checked.

                If statement within a function with return value:

                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates. The second input value of the if statement will be returned. A possibly defined return value of the function will be ignored. The return value data type is determined by the return data type of the function definition.
                • If the condition evaluates to »false« the sequence of the function blocks will be continued. The return value of the function will be returned after reaching the end of the function.

                If statement within a function with no return value:

                • An if statement within a function without return value has just the if statement as input parameter.
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates.
                • If the condition evaluates to »false« the sequence of the function blocks will be continued.

                Settings and input values: -

                  -
                • Boolean value, possibly evaluated by a condition.
                • Value of the specified data type.
                • -

                Return value: -

                  -
                • Value of the specified data type.
                • -


                »function call without return value «

                With this block you can call a previous defined function in your program.

                Input values: -

                  -
                • element, depending of the required input value of the function.
                • -

                »function call with return value «

                With this block you can call a previous defined function in your program.

                Input values: -

                  -
                • element, depending on the required input value of the function.
                • -

                Return value: -

                  -
                • element, depending on the return value of the function.
                • -
                \ No newline at end of file + + + + +
                +

                +

                »Program start«

                +

                Each program starts with the red »Program start« block.

                +

                This block is always available in the Open Roberta Lab and cannot be deleted. The little triangle below the start block is called »sequence connector«. The first block you want to use will be connected by using the »sequence connector« at the start block. The sequence connector color changes to yellow when a suitable block comes into its range.

                +

                Settings: +

                +
                  +
                • create a new global variable
                • +
                • delete the global variable
                • +
                • show sensor data - while running a program the current values of connected sensors will be shown on the display
                • +
                +
                +

                If global variables have been created: +

                +
                  +
                • Text, name of the variable
                • +
                • Type of the variable, »Number«, »Boolean«, »String«, »Color«, »Connection«, »List Number«, »List Boolean«, »List String«, »List Connection«
                • +
                • Value, that corresponds to the variable type. This is the initial value of the variable.
                • +
                +
                +

                »drive ... speed % ... distance cm ...«

                +

                With the »drive distance« block you can program the direction and the speed of the robot. The speed of your robot is set in the »speed« parameter. Once the block has been executed the motors stop automatically.

                +

                »drive distance« controls both motors of the robot at the same time, meaning that the settings you make here apply to both motors of the robot. If the robot's actions don't correspond with the block's settings when running the program, check the robot configuration settings, especially the wheel diameter and the track width.

                +

                Settings and input values: +

                +
                  +
                • Drive, »forwards« or »backwards«. Select a direction.
                • +
                • Number, speed between -100 and 100. If the number is negative, the motors will rotate backwards. This value will be internally clipped to be between -100 and 100.
                • +
                • Number, the distance to drive in cm.
                • +
                +

                +

                +

                »drive ... speed % ...«

                +

                With the »drive« block you can program the direction and also the speed (velocity) of your robot. + Your robot moves until it is stopped or another block specifies new driving parameters. The driving speed can be set in the field »speed«. +

                +

                Options and Arguments: +

                +
                  +
                • direction, forwards or backwards. Choose the direction.
                • +
                • + number, speed between -100 to 100. 100 is the maximum speed. Negative values lets the motor rotate into the other direction. This value will be internally clipped to be between -100 and 100. +
                • +
                +
                +

                +

                »stop«

                +

                The »stop« block stops the motors immediately.


                +

                »steer ... speed left ... speed right ...«

                +

                The block »steer ... speed left ... speed right ...« programs the robot to drive a curve by setting different speeds for the left and right motor. The robot configuration influences the radius of the curve depending from wheel distance and wheel diameter. The turning direction will define the driving direction.

                +

                Settings and input values: +

                +
                  +
                • Turning direction, »forwards« or »backwards«. Select your desired moving direction.
                • +
                • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • +
                • Number, speed between -100 and 100 for the right motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • +
                +
                +

                »steer ... speed left ... speed right ... distance ...«

                +

                The block »steer ... speed left ... speed right ... distance ...« programs the robot to drive a curve by setting different speeds for the left and right motor and also a distance related to the middle between both wheels. The robot configuration influences the radius of the curve depending from wheel distance and wheel diameter. The turning direction will define the driving direction.

                +

                Settings and input values: +

                +
                  +
                • Turning direction, »forwards« or »backwards«. Select your desired moving direction.
                • +
                • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • +
                • Number, speed between -100 and 100 for the left motor. If the number is negative the motor will run backwards. This value will be internally clipped to be between -100 and 100.
                • +
                • Number, the distance in cm to be driven.
                • +
                +
                +

                +

                »turn ... speed % ... degree ...«

                +

                With the »turn degree« block you program the direction (right/left) that your robot will turn. In addition to the direction you can also program the »degrees«, allowing you to program how many degrees your robot should rotate (around its axis). This means that you do a complete rotation by setting a 360 degree turn..

                +

                The »turn degree« block controls both motors of the robot in such a way that the robot turns around its own axis. If the robot's actions don't correspond with the block's settings when running the program, check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                +

                Settings and input values: +

                +
                  +
                • Turn, »right« or »left«. Select the desired direction for turning.
                • +
                • Number, speed between -100 and 100. If the number is negative, the robot will turn the other way around. This value will be internally clipped to be between -100 and 100.
                • +
                • Number, degrees the robot shall turn. Degree of 360 will perform a full turn around. Negative numbers are not allowed.
                • +
                +
                +

                »turn ... speed % ...«

                +

                With the »turn« block you set the direction (right/left) which the robot will turn. Your robot turns until it is stopped or another block is used for driving. You can set the speed in the block parameter field »speed«.

                +

                »turn« controls both motors of the robot at the same time, therefore the robot turns on the spot. If the EV3 Robot's actions don't correspond with the block's settings when running the program, check the EV3 robot configuration settings, especially the wheel diameter and the track width.

                +

                Settings and input values: +

                +
                  +
                • Turn, »right« or »left«. Select the desired direction for turning.
                • +
                • Number, speed between -100 and 100. If the number is negative, the robot will turn the other way around. This value will be internally clipped to be between -100 and 100.
                • +
                +
                +
                +

                If your robot turns into the wrong direction, then the motors are connected to the wrong ports. Just swap the ports and your robot will turn into the right way.

                +
                +
                +
                +

                +

                »motor port ... on speed % ... for rotation/degree ...«

                +

                With the »motor port ... rotation« block you can program the speed (velocity) of the selected motor. Your robot starts the selected motor and rotates the motor until the specified number of rotations or degrees is done.

                +

                Options and Arguments: +

                +
                  +
                • motor port, choose the one where the motor that you want to program is connected to.
                • +
                • number, spped between -100 and 100. 100 is the maximum speed. Negative values lets the motor rotate into the other direction. This value will be internally clipped to be between -100 and 100.
                • +
                • rotation or degree. Choose the one which fits best. 1 rotation is the same than 360 degrees.
                • +
                • number, rotations or degrees, only positive numbers are allowed.
                • +
                +
                +

                +

                »motor port ... on speed % ...«

                +

                With the »motor port ... on« block you can program the speed (velocity) of the selected motor. Your robot starts the selected motor, until it is stopped or another block specifies new moving parameters.

                +

                Options and Arguments: +

                +
                  +
                • motor port, choose the port where the motor is connected to.
                • +
                • value, speed between -100 to 100. Negative values let the motor turn backwards. This value will be internally clipped to be between -100 and 100.
                • +
                +
                +

                »stop motor port« +

                +

                Using the block »stop motor port « switches off one selected motor. You can decide the motor to run out slowly (float) or to break immediately +

                +

                Setting options: +

                +
                  +
                • motor port, choose the port where the motor is connected to.
                • +
                • float or brake; make your choice.
                • +
                +
                +

                »set servo motor SG90 ... to° ...« +

                +

                This block controls the servo motors on your Robot. Choose what servo you want to actuate, and to what degree it should move.

                +

                Options: +

                +
                  +
                • Servo port, which servo you want to actuate.
                • +
                • Number, to what angle you want to set your servo.
                • +
                +
                +

                +

                »show text ... in row ...«

                +

                With the »show text« block you can display text and numbers on the display of your robot. You can also specify in which column and row the text or numbers should be displayed on the robot screen.

                +

                Input values: +

                +
                  +
                • String, input of a text string to be shown in the display.
                • +
                • Number, row for the text to start between 0 and 7.
                • +
                +
                +

                »clear display«

                +

                With this block, you can delete what is shown on the display.

                +

                »show on Serial Monitor« +

                +

                With this block you can display text on a Serial Monitor through USB.

                +

                Input value: +

                +
                  +
                • String, the text or numbers that should be displayed on the Serial Monitor.
                • +
                +
                +

                »play file ...«

                +

                With this block you can make the robot play a sound of your choice.

                +

                Options: +

                +
                  +
                • option, choose which Sound file you want to play.
                • +
                +
                +

                » turn LED on display colour ...«

                +

                With this block you can turn on the LED on your robot's display to a certain colour.

                +

                »turn LED off display«

                +

                With this block you can turn off the LED on your robot's display.

                +

                »set LED brightness % ...«

                +

                Set the brightness of the robot's LED to a value from 0 to 100.

                +

                Settings: +

                +
                  +
                • Number, set the brightness with a Number from 0 to 100.
                • +
                +
                +

                »display button ... pressed?«

                +

                With this Block you can query one of the display buttons of your Robot, if it is currently being pressed.

                +

                Options: +

                +
                  +
                • Button, select which Button you want to query.
                • +
                +

                Return value: +

                +
                  +
                • Truth value, »True«, if the Button is pressed, else »False«.
                • +
                +
                +

                »get distance cm ultrasonic sensor ...«

                +

                With this Block you can query an ultrasonic sensor. This sensor measures the distance to the closest object, by sending ultrasonic waves and capturing reflections to calculate distance to objects.

                +

                Options: +

                +
                  +
                • Sensor, select which Ultrasonic sensor you want to query.
                • +
                +

                Return value: +

                +
                  +
                • Value, the distance to the nearest object in Centimeters.
                • +
                +
                +

                »get line infrared sensor ...«

                +

                With this block you can use the infrared sensors of your robot to detect a line. A light area of the line is read as "0", a dark area is read as "1".

                +

                Options: +

                +
                  +
                • Sensor, choose which sensor you would like to use.
                • +
                +

                Returned Values: +

                +
                  +
                • Truth value, "true" if the sensor is above a black line, "false" otherwise.
                • +
                +
                +

                »get rotation/degree encoder ...«

                +

                With the block »get rotation/degree« you can "tell" another block the rotation of the motor. The distance is transmitted as a number (in cm). In addition, this block can be set to »degree« in the drop down menu. With this setting the number of degrees is transmitted instead of cm. This block can only be used in conjunction with another block, which requires a number as an input parameter.

                +

                Settings: +

                +
                  +
                • Measurement mode, »rotation«, »degree« or»distance«. Select your mode of measurement.
                • +
                • Encoder port, select the sensor port where your motor/encoder is connected.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, that indicates according to the measurement mode the number of rotations, the degrees, or the distance in cm.
                • +
                +
                +

                »reset encoder«

                +

                With the block »reset encoder« the internal sensor (motor encoder) of a motor can be reset to 0 .

                +

                Setting: +

                +
                  +
                • Port, select the sensor port where your motor is connected.
                • +
                +
                +

                »get value ms timer«

                +

                With the block »get value« you can "tell" another block the current time in milliseconds of the internal timer. 5 timers are available.

                +

                Setting: +

                +
                  +
                • Option, select the timer you want to read.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, milliseconds since program start or since the last reset of the selected timer.
                • +
                +
                +

                »reset timer«

                +

                With the block »reset timer« the internal timer (1 to 5) can be reset to the value 0.

                +

                Setting: +

                +
                  +
                • Timer number, select the timer you want to reset.
                • +
                +
                +

                »Mini-Switch ... pressed?« +

                +

                With the block »Mini-Switch ... pressed?« you can "tell" another block, whether the switch at a chosen port is currently being triggered or not. +

                +
                  +
                • Port, which Switch shall be checked
                • +
                +
                  +
                • Truth value, »true«, if the switch is being triggered, »false«, if it is not being triggered
                • +
                +
                +

                »get value % light sensor«

                +

                The »get value % light sensor« block can be used to tell another block how bright the light is that hits the robot's light sensor.

                +

                Return value: +

                +
                  +
                • Number, percentage of light intensity as a number from 0-100
                • +
                +
                +

                »get light phototransistor«

                +

                This block uses the phototransistor that can be connected to the robot to tell another block whether it is bright.

                Return value: +

                +
                  +
                • Truth value, whether it is bright or not
                • +
                +
                +

                »get temperature ° / resistance Ω « +

                +

                The NTC resistor contains a thermistor. This is characterised by the fact that it conducts electricity better at higher temperatures than at lower temperatures. The robot can therefore also calculate the temperature from the measured resistance. Both values can be returned with this block.

                +

                Return value: +

                +
                  +
                • Number, temperature in ºC or resistance in Ω
                • +
                +
                +

                »get ... environmental sensor« +

                With the block »get ... environmental sensor« block can be used to communicate a specific measured value of the environmental sensor to a block. The environmental sensor has various functions. It can measure the temperature, humidity, air pressure and indoor air quality.
                +

                Rückgabewert: +

                +
                  +
                • Temperature, number from -45° to 80° Celsius
                • +
                • Humidity, number as a percentage of the humidity as a number from 0-100
                • +
                • Air pressure, number indicates air pressure in hpa
                • +
                • Indoor air quality, number indicates IAQ value of the air
                • +
                • Accuracy, number indicates the accuracy of the sensor in per cent
                • +
                • Calibration required, truth value outputs "true" if calibration of the sensor is required and "false" if not
                • +
                +
                +

                »calibrate environmental sensor« +

                +

                The »calibrate environmental sensor« block can be used to recalibrate the environmental sensor. This is necessary at the beginning and if it delivers inaccurate measured values. Calibration takes about 5 minutes.

                +
                +

                »get ... RGB gesture sensor« +

                With the block »get ... RGB gesture sensor« can be used to communicate various return values of the RGB gesture sensor to another block. The sensor detects colour, ambient light, gesture, proximity and RGB.
                +

                Return value: +

                +
                  +
                • Colour, returns detected colour as colour type
                • +
                • Ambient light, returns the strength of the ambient light as a number from 0-100
                • +
                • Gesture, number encodes one of 6 possible recognisable gestures
                • +
                • Proximity, returns the proximity of the object in front of the sensor as a number
                • +
                • RGB, returns the RGB values of the object in front of the sensor as a list
                • +
                +
                +

                »get acceleration g Combi-sensor ...«

                +

                The »get acceleration g Combi-sensor« block can be used to tell another block how fast the robot equipped with the combi sensor is accelerating.

                +

                Input value: +

                +
                  +
                • x, y, z, -direction, in which acceleration shall be measured
                • +
                +

                Return value: +

                +
                  +
                • Number, acceleration in g
                • +
                +
                +

                »get magnetic flux ° Combi-sensor« +

                +

                The »get magnetic flux ° Combi-sensor« block can be used to determine the direction in which the robot is turned using the earth's magnetic field.

                +

                Return value: +

                +
                  +
                • Number, cardinal point as a degree
                • +
                +
                +

                »get gyroscope ° Combi-sensor ...« +

                +

                The »get gyroscope ° Combi-sensor« block can be used to tell another block via the combination sensor how fast the robot is turning in a certain direction. The measured axis (x,y,z) must be specified.

                +

                Input value: +

                +
                  +
                • x, y, z, Direction in which speed shall be measured
                • +
                + Return value:
                +
                  +
                • Number, rotational speed in degrees
                • +
                +
                +

                »get colour colour detector«

                +

                With the block »get colour colour detector« you can "tell" another block the average colour of an area previously specified in the configurations.

                +

                Return value: +

                +
                  +
                • Colour, the average colour of the specified area.
                • +
                +
                +

                »get number of lines line detector«

                +

                With the block »get number of lines detector« you can "tell" another block the number of lines recognised using the camera. The robot can recognise up to 4 different lines.

                +

                Return value: +

                +
                  +
                • Number, number of lines recognised by the robot (up to 4)
                • +
                +
                +

                »get information by line #« +

                +

                With the block »get information by line #« you can "tell" another block the position of a chosen line as well as its' width. The up to 4 recognised lines are indexed by the numbers 0-3.

                +

                You have to keep in mind, that the first line is indexed by "0" and the last by "3".

                +

                Input value: +

                +
                  +
                • Number, index of the line of which the position, as well as the width, shall be returned
                • +
                + Return value: +
                  +
                • List: position [x,y] and width of the line at the specific index
                • +
                +
                +

                »get colour by line #«

                +

                With the block »get colour by line #« you can "tell" another block the colour of a chosen line.The up to 4 recognised lines are indexed by the numbers 0-3.

                +

                You have to keep in mind, that the first line is indexed by "0" and the last by "3".

                +

                Input value: +

                +
                  +
                • Number, index of the line (0-3) of which the colour shall be returned
                • +
                + Return value: +
                  +
                • Colour, colour of the chosen line
                • +
                +
                +

                »get ball information«

                +

                With the block »get ball information« you can "tell" another block the position of a ball in the robot's field of vision, as well as its' width

                +

                In order to recognise a ball, you need to specify the ball's colour in the configurations.

                +

                Return value: +

                +
                  +
                • List, position of the ball [x,y], as well as its' width
                • +
                +
                +

                »get motion motion detector«

                +

                With the block »get motion motion detector« you can "tell" another bock, whether the camera detects motion or not.

                +

                Return value: +

                +
                  +
                • Truth value, »true«, if a motion is detected, »false«, if no motion is detected
                • +
                +
                +

                »if do«

                +

                With the block »if do« you can selectively trigger actions to be executed by your robot. The »if do« block therefore requires a logical value as an input parameter, the condition. Only if the condition of the »if« statement is true, the inserted block will be executed. In a nested »if do« block, if a further distinction was added, the first »if« condition is queried. If it is not fulfilled (condition = false), the second »else if« condition will be checked. Also this second condition requires a logical value as an input parameter.

                +

                The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                +

                Settings and input values: +

                +
                  +
                • Insert an additional condition.
                • +
                • Delete the last condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                • Blocks that will be executed
                • +
                +
                +

                »if do else«

                +

                With the block »if do else« you can selectively trigger actions which are executed by your robot. The »if do then« block therefore requires a logical value as an input parameter. If the condition in »if« is true the inserted block will be executed, otherwise (condition is not fulfilled = false) the block connected to the »else« statement will be executed. In a nested »if do else« block with further distinctions added, the first »if« condition is queried. If it is not true, the second condition »else if« is checked. Also the second condition requires a logical value as an input parameter. Only when both conditions are not true, the block which is inserted at the »else« statement will be executed.

                +

                The conditions may arbitrarily be expanded by clicking the "+" plus symbol. The "-" minus symbol reduces the block.

                +

                Settings: +

                +
                  +
                • Insert an additional if-do-else condition.
                • +
                • Delete the last if-do-else condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                • Do blocks that will be executed if the according condition evaluates to »true«.
                • +
                • Else blocks that will be executed if the according condition evaluates to »false«.
                • +
                +
                +

                »repeat indefinitely«

                +

                With the block »repeat indefinitely« you can endlessly run the blocks on your robot. All blocks which are within the »repeat indefinitely« block will be executed endlessly. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                +

                Input: +

                +
                  +
                • Blocks to be repeated indefinitely.
                • +
                +
                +

                »repeat n times«

                +

                With the block »repeat« you can run other block as many times as you like. All blocks in the »repeat« block will be executed as often as defined in the entry field. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again. Therefore, this block is also called »loop«.

                +
                +

                Only integer values can be entered.

                +
                +

                Settings and input: +

                +
                  +
                • Number that indicates how often the contained blocks will be repeated.
                • +
                • Blocks to be repeated as often as defined.
                • +
                +
                +

                »wait«

                +

                With the block »wait« you can "pause" your program at the point where you inserted the »wait« block. Your program will then remain for the specified duration at this point. After the specified time the next block will be executed. For example you can display text in the screen of your robot for exactly the time you specified in the »wait« block.

                +

                Settings and input values: +

                +
                  +
                • Number, waiting time in milliseconds.
                • +
                +
                +

                »wait until ...«

                +

                With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                +

                Settings: +

                +
                  +
                • Add a new condition.
                • +
                • Delete the last condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »wait until ... «

                +

                With the block »wait until« you can "stop" your program at the point you insert the »wait until« block. Your program then waits until the condition is true. The »wait until« block you can extended by click on "+" symbol. Your program then waits until (at least) one of the condition of your »wait until« block is true.

                +

                Settings: +

                +
                  +
                • Add a new condition.
                • +
                • Delete the last condition.
                • +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »break out/continue with next iteration of loop«

                +

                With the block »break out/continue with next iteration of loop« a loop can be terminated ahead of schedule. As soon as the block is entered within a sequence of blocks, all further blocks up to the end of the loop will be ignored.

                +

                Settings: +

                +
                  +
                • Type of breaking behavior, »break out« or »continue with next iteration«.
                • +
                +
                +

                »count with from to«

                +

                With the block »count with from to« you can run other block as many times as you like. All blocks in the »count with from to« block will be executed as long as the counting is in progress. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the counting is in progress. The last parameter declares the step width for counting.

                +

                Settings: +

                +
                  +
                • Variable, name of free choice; numbers of the counter will be delivered one after the other to the variable.
                • +
                • Number, initial value of the counter.
                • +
                • Number, final value of the counter. As the counter exceeds this value the loop ends.
                • +
                • Number, defining the increment. The variable value will increase by this amount after every loop cycle.
                • +
                • Blocks that will be executed in every loop cycle.
                • +
                +
                +

                »for each item in list«

                +

                With the block »for each item in list« all list items will successively be bound to a variable. The variable can be used within the loop. With each loop cycle the next item of the list will be bound until all list elements have been processed.

                +

                Settings and input value: +

                +
                  +
                • Type of list elements, »Number«, »String«, »Boolean«, »Colour«, »Connection«
                • +
                • Variable, name of free choice; list elements will be delivered one after the other to the variable.
                • +
                • List that contains elements of the desired type. If the list elements are not of the correct type then the list will not fit to the input slot.
                • +
                • Blocks which will be executed as often as there are elements in the list.
                • +
                +
                +

                »repeat while/until«

                +

                With the block »repeat while/until« you can run other block as many times as you like. All blocks in the »repeat while/until« block will be executed as long as the condition in the entry field is true. The blocks are applied sequentially from top to bottom. Once the last block has been executed, the program repeats with the first block again if the condition is still true. Therefore, this block is also called »conditional loop«.

                +

                Settings and input values: +

                +
                  +
                • Option, »while« or »until«, defining the type of the conditional repetition.
                • +
                • Boolean value, »true« or »false«.
                • +
                • Blocks that will be repeated while/until the condition evaluates to »true«.
                • +
                +
                +

                »comparison«

                +

                With the block »comparison« you can compare different parameters of the same type (number, color, logical value, text). This block can only be used in conjunction with another block which requires a logical value as an input parameter.

                +

                Settings and input values: +

                +
                  +
                • Value for the left hand side.
                • +
                • Comparison, select one of =, ≠, <, ≤, >, ≥
                • +
                • Value for the right hand side.
                • +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »and/or«

                +

                With the block »and/or« you can interrelate logical values with each other. The »and/or« block with the setting "and" will be true only if both logical parameters are "'true"'. If the block has the setting »or« it is sufficient if one of the two parameters is "true", so that the »and/or« block will return true.

                +

                Settings: +

                +
                  +
                • Boolean value on the left hand side.
                • +
                • Boolean function, »and« or »or«.
                • +
                • Boolean value on the right hand side.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value »true« or»false«.
                • +
                +
                +

                »true/false«

                +

                With the block »true/false« you can return either the logical value »true« or »false« to another block.

                +

                Settings: +

                +
                  +
                • Boolean value, make your choice.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«.
                • +
                +
                +

                »not«

                +

                Using the »not« lets you invert a logical value and pass this value to another block.

                +

                Input value: +

                +
                  +
                • Boolean value, to be inverted.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«; result of inverting.
                • +
                +
                +

                »test«

                +

                Using the »test« block will perform a test and returns a value which depends on the test result.

                +

                Input values: +

                +
                  +
                • Boolean value for the test; if no input value is given "true" will be assumed.
                • +
                • Arbitrary value, evaluated by a block.
                • +
                • Arbitrary value, evaluated by a block.
                • +
                +
                +

                Return value: +

                +
                  +
                • Value of arbitrary type.
                • +
                +
                +

                »null«

                +

                The block »null« is a place holder for an input value that is not yet specified. If for instance a new connection variable has been created and is not yet bound, the initial value of this connection will be set to »null«.

                +

                Return value:: +

                +
                  +
                • Boolean value, »null«.
                • +
                +
                +

                »parameter«

                +

                With the block »parameter« you can send numbers to another block.

                +

                Settings and input values: +

                +
                  +
                • Number
                • +
                +

                Return value: +

                +
                  +
                • Number
                • +
                +
                +

                »calculating«

                +

                With the block »calculating« you can sum up, subtract, multiply, and divide numbers. This block can only be used in conjunction with another block which requires a number as an input parameter.

                +

                Settings and input values: +

                +
                  +
                • Number, first number on the left you want to calculate with.
                • +
                • Option, mathematical operator, choose one of +, −, ×, ÷, ^.
                • +
                • Number, second number on the right you want to calculate with.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, result of the calculation.
                • +
                +
                +

                »mathematical function«

                +

                With the block »mathematical function« some elementary mathematical functions may be calculated. Available functions are »square root«, »absolute«, »invert« (multiply by -1), »ln« (natural logarithm), »log10« (decadic logarithm), »e^« (exponential function), »10^« (base 10 exponent)

                +

                Settings and input value: +

                +
                  +
                • Option, mathematical function, choose one.
                • +
                • Number to apply the function to.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, result of the function application.
                • +
                +
                +

                »trigonometric functions«

                +

                With the block »trigonometric function« sine, cosine, tangent and their respective revers functions can be calculated. Input values are expected in radian measure(see hint above).

                +

                Settings and input value: +

                +
                  +
                • Option, trigonometric function to choose from.
                • +
                • Number, in radian measure.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, result of the trigonometric calculation.
                • +
                +
                +

                »constant«

                +

                With the »constant« block some mathematical constant values are available: »π« (3,1415...), »e« (2,718...), »φ« (1,618...), »sqrt(2)« (1,414...), »sqrt(½)« (0,7071...), »∞«

                +

                Settings: +

                +
                  +
                • Option, mathematical constants, choose one.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, value of the selected mathematical constant. Infinity will return »infinity«.
                • +
                +
                +

                »number property«

                +

                With the block »number property« you check whether a given number has a specific property: »even«, »odd«, »prime«, »whole«, »positive«, »negative«, »divisible by«.

                +

                Settings and input values: +

                +
                  +
                • Number, the property of this input value will be checked.
                • +
                • Option, number property, choose one.
                • +
                • Number, evaluated from a block. The second input value is only required for the property »divisible by«.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean value, »true« or »false«, depending on the selected property.
                • +
                +
                +

                »change by ... «

                +

                The block »change by ... « increments a numerical variable by a defined value.

                +

                Settings and input values: +

                +
                  +
                • Variable name, which value is to be changed. Choose the variable to be changed.
                • +
                • Number, given by a block.
                • +
                +
                +

                »round«

                +

                With the block »round« values may be rounded. Rounding will set the decimal places to 0. It depends on the value of the decimal places whether the block rounds up or down. You may also decide by settings to always round up or down.

                +

                Settings and input value: +

                +
                  +
                • Type of rounding, choose a round mode.
                • +
                • Number you want to round.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, rounded whole number, according to the round mode.
                • +
                +
                +

                »list evaluation«

                +

                With the block »list evaluation« you may analyse a list.

                +

                Modes for list evaluation: +

                +
                  +
                • sum - addition of all list values
                • +
                • min - smallest value in the list
                • +
                • max - largest value in the list
                • +
                • average - average of all list values
                • +
                • median - median of all list values
                • +
                • standard deviation - standard deviation of all list values
                • +
                • random item - one list value randomly selected
                • +
                +
                +

                Settings and input value: +

                +
                  +
                • Mode of list evaluation, choose one mode.
                • +
                • List of numbers
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, calculated according to the selected list evaluation mode.
                • +
                +
                +

                »remainder of«

                +

                The block »remainder of« calculates a divison and returns the remainder of the division.

                +

                Input values: +

                +
                  +
                • Number to be divided (dividend).
                • +
                • Number, divisor.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, rest of the division.
                • +
                +
                +

                »constrain«

                +

                The block »constrain« ensures that given boundaries will not be exceeded.

                +

                Input values: +

                +
                  +
                • Number, that will be constrained.
                • +
                • Number, lower bound.
                • +
                • Number, upper bound.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, constrained by the lower and the upper bound.
                • +
                +
                +

                »random integer«

                +

                With the block »random integer« you may generate random integer numbers within defined limits

                +

                Input values: +

                +
                  +
                • Number, lower bound
                • +
                • Number, upper bound
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, a whole random number from within the upper and lower bounds.
                • +
                +
                +

                »random fraction«

                +

                With the block »random fraction« a random value between 0.0 and 1.0 is calculated.

                +

                Return value: +

                +
                  +
                • Number, positive random value between 0.0 and 1.0.
                • +
                +
                +

                »cast ... to String«

                +

                This block converts a number into a string containing that number. So for example the number 123 would be converted into the string »123«.

                +


                Options and input values: +

                +
                  +
                • Number, the number that you want to convert into a String containing this number.
                • +
                +
                +

                Return value: +

                +
                  +
                • String, the string containing the selected number.
                • +
                +
                +

                »cast ... to Char«

                +

                This block converts a single number to the corresponding ASCII letter. If there is no associated ASCII character for this number, an empty string is passed on. So for example the number 97 gets converted into the lower-case letter »a«.

                +

                Options and input values: +

                +
                  +
                • Number, the ASCII code that you want to convert into a character.
                • +
                +
                +

                Return values: +

                +
                  +
                • String, a single character that corresponds to the selected ASCII number.
                • +
                +
                +

                »make one NN step«

                +

                With this block you perform a calculation step of your neural network. Before you use this block, you should set the values of the input neurons with the block "set value input neuron ...". The input values are given into the network and the values of the output neurons are calculated using the network from the tab »Neural Network«. A detailed description of the neural network can be found + here. You can query the values of the output neurons after the calculation with the block »gett value output neuron ...«. +

                +

                »set value input neuron ... «

                +

                With this block you can set the value of an input neuron. You can use either variables, numbers, sensor data or mathematical operations as input values, e.g. the sum of two numbers.

                +

                Options and input values: +

                +
                  +
                • Neuron, select the input neuron whose value you want to set.
                • +
                • Number, the number that is too be used as input value.
                • +
                +
                +

                »get value output neuron ... «

                +

                With this block you can query the value of an output neuron. You should only use this block after the block »make one NN step«, otherwise no value has been calculated for the output neurons and the value is defaulted to 0.

                +

                Options: +

                +
                  +
                • Neuron, select the output neuron whose value you want to query.
                • +
                +

                Return value: +

                +
                  +
                • Number, the value of the selected output neuron.
                • +
                +
                +

                »set weight from ... to ... «

                +

                With this block you can set the weight of a connection between two neurons that are directly connected.

                +

                Options and input values: +

                +
                  +
                • Neuron, the first neuron from which the connection originates.
                • +
                • Neuron, the second neuron to which the connections leads.
                • +
                • Number, the value to which the weight is to be set.
                • +
                +
                +

                »set bias ... «

                +

                With this block you can set the bias of a neuron.

                +

                Options and input values: +

                +
                  +
                • Neuron, the neuron whose bias you want to set.
                • +
                • Number, the value to which the bias should be set.
                • +
                +
                +

                »get weight from ... to ... «

                +

                With this block you can query the current value of the weight of a connection between two neurons that are directly connected.

                +

                Options: +

                +
                  +
                • Neuron, the first neuron from which the connection originates.
                • +
                • Neuron, the second neuron to which the connections leads.
                • +
                +

                Return value: +

                +
                  +
                • Number, the value of the weight between the two neurons.
                • +
                +
                +

                »get bias ... «

                +

                With this block you can query the bias of a neuron.

                +

                Options: +

                +
                  +
                • Neuron, the neuron whose bias you want to query.
                • +
                +

                Return value: +

                +
                  +
                • Number, the value of the bias of the selected neuron.
                • +
                +
                +

                »Text«

                +

                The simple »Text« block creates a little text.

                +

                Input value: +

                +
                  +
                • String, containing arbitrary characters.
                • +
                +
                +

                Return value: +

                +
                  +
                • String, containing arbitrary characters.
                • +
                +
                +

                »comment«

                +

                Document your program with this block, so that you and others will find it easier to understand your program later. This comment will also be visible in the generated source code.

                +

                Input value: +

                +
                  +
                • String, containing arbitrary characters.
                • +
                +
                +

                »create Text«

                +

                The »create text« block compiles a text from different input parameters. Using the + sign will insert further input slots. All input parameters will be connected one after the other. Essentially the »create text« block converts an arbitrary input value into a text string.

                +

                Input values: +

                +
                  +
                • Arbitrary values [numbers, text, logical values, colours)
                • +
                +
                +

                Return value: +

                +
                  +
                • String, containing arbitrary characters, compiled sequentially from all input values.
                • +
                +
                +

                »eval .. as ...«

                +

                The »value ... as ...« block evaluates an expression entered as text (”expression") and returns the result. The expression can be “sqrt(a^2 + b^2)”, for example. It is evaluated to a number. The block is very powerful: almost all expressions that can be generated with Blockly blocks can also be written as text.

                +

                How the expression can be constructed is described on a separate wiki page. Please note: there are general expressions that are valid for every robot and specific parts that are only valid for the selected robot. This is necessary because each robot supports its own sensors and actuators. This is described in detail on the wiki page. +

                +

                The user must specify in a drop-down menu which type is expected for the result. Which types are possible depends on the selected robot.

                +

                Input value: +

                +
                  +
                • Text, enter an expression.
                • +
                + Options: +
                  +
                • Type, the desired return type of the expression, e.g. a number, a logical value or a string. +
                • +
                +
                +

                »append Text«

                +

                The »append text« block will append some string to a given string, for instance to extend a message with a signature.

                +

                Input values: +

                +
                  +
                • String, to which some other text will be appended.
                • +
                • String, that shall be appended.
                • +
                +
                +

                »cast ... to Number«

                +

                This block converts a string into a number if this is possible. So if a string contains only numbers, this block can convert the string into a number. If the block does not contain numbers, this block will pass »NaN« when used in th Open Roberta Lab simulation and may have a different + behavior depending on the programming language of the robot you are currently using. If the string starts with numbers but then contains other characters that are not numbers, this block will pass only the numbers and stop as soon as the first character is in the string. So, as an example, this block makes the number 52 out of the string »52abcd«. +

                +

                Options and input values: +

                +
                  +
                • String, the string you want to convert into a number.
                • +
                +
                +

                Return values: +

                +
                  +
                • Number, the converted number.
                • +
                +
                +

                »cast ... at index ... to Number« +

                +

                This block converts a letter or a character from a character string into the corresponding ASCII number. Each character has an associated number in the ASCII table. For example, a lower-case »a« is converted into the number 97.

                +

                Options and input values: +

                +
                  +
                • String, from which a single character is selected.
                • +
                • Number, the digit of the character to be converted. Note that the numbering starts at 0.
                • +
                +
                +

                Return values: +

                +
                  +
                • Number, the ASCII number of to selected character. Number between 0 and 255.
                • +
                +
                +

                »create list«

                +

                The block »empty list« creates a list with no content.The block »list« generates a list with some predefined values.

                +

                This block may only be used in the context of a »set variable« block.

                +

                Using »+« or »−« enables you to extend or reduce the list at its end.

                +

                Settings and input values: +

                +
                  +
                • List type, »Number«, »String«, »Boolean«, »Colour«, »Connection«.
                • +
                • Create further list element, append to the end of the list.
                • +
                • Delete list element at the end of the list.
                • +
                • Values, according to the list type. Here the input of initial values is possible.
                • +
                +
                +

                Return value: +

                +
                  +
                • Empty list or list, containing elements of the specified list type.
                • +
                +
                +

                »repeat element in list«

                +

                The »repeat element in list« block generates a list of equal elements.

                +

                Settings and input values: +

                +
                  +
                • List type, »Number«, »Boolean«, »String«, »Colour« or »Connection«.
                • +
                • List element, according to the selected list type. This value will be repeated in the list.
                • +
                • Number, defining how often the list element will be repeated.
                • +
                +
                +

                Return value: +

                +
                  +
                • List of the specified list type, containing the specified number of equal elements.
                • +
                +
                +

                »length of«

                +

                The »length of« block returns a value which is the length of the list given as parameter. An empty list has a length of 0.

                +

                Input value: +

                +
                  +
                • List, evaluated by an appropriate block.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, number of list elements.
                • +
                +
                +

                »is empty?«

                +

                A list given as parameter will be checked whether it is empty.

                +

                Input value: +

                +
                  +
                • List, evaluated by an appropriate block.
                • +
                +
                +

                Return value: +

                +
                  +
                • Boolean, either »true« or »false«.
                • +
                +
                +

                »find in list«

                +

                A list is searched for an item. If the item is in the list, the list position will be returned. If the item is not in the list the result is -1.

                +

                Settings and input values: +

                +
                  +
                • List, that will be examined.
                • +
                • Position of the occurrence, either »first« or »last«.
                • +
                • Value, list item to be found.
                • +
                +
                +

                Return value: +

                +
                  +
                • Number, indicating the position where the element was found in the list.

                  +

                  Note: Counting list positions will start with 0.

                • +
                +
                +

                »get list element«

                +

                This block accesses an item of a list. Depending on the settings this item may be altered.

                +

                A list is given as parameter. Then a drop-down-list specifies what will happen to the list item under consideration.

                +

                Settings: +

                +
                  +
                • List, that is under consideration.
                • +
                • Option, action for the element found: »get« reads the element and leaves it unchanged, »get and remove« reads the element and removes it from the list, »remove« just removes the element from the list.
                • +
                • Option, position of the element found: »#«, »# from end«, »first«, »last« or »random« .
                • +
                • +

                  Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected as position.

                  +

                  Note: Counting of list positions starts with 0.

                • +
                +
                +

                Return value: +

                +
                  +
                • +

                  List element that has been found at the specified list position; »undefined«, if the list position does not exist.

                  +

                  With selection of »remove« there is no return value; instead the list will be shortened by this list element.

                • +
                +
                +

                »set list element«

                +

                In a list given as input parameter one specified element will be replaced by a new value.

                +

                Settings and input values: +

                +
                  +
                • List, that will be changed.
                • +
                • Option, action for the element found; »set« changes the element, »insert at« inserts a new element into the list.
                • +
                • Option, position for the element to be changed: »#«, »# from end«, »first«, »last« or »random« .
                • +
                • Number, indicating the list position. This input value is not required if »first«, »last« or »random« was selected.
                  Note: Counting of list positions begins with 0. +
                • +
                • List element, that will be set or inserted at the selected list position.
                • +
                +
                +

                »get sublist«

                +

                From a list given as parameter a sublist will be created. The sublist contains all those elements that match the further specifications of the block.

                +

                Settings and input values: +

                +
                  +
                • List to be examined.
                • +
                • Position, start of the sublist: »#«, »# from end« or »first«.
                • +
                • Number, indicating the list position. This input value is not required if »first« has been selected.

                  +

                  Note: Counting of list positions starts with 0.

                • +
                • Position, end of the sublist: »#«, »# from end« or »last«.
                • +
                • Number, indicating the list position. This input value is not required if »last« has been selected.

                  +

                  Note: Counting of list positions starts with 0.

                • +
                +
                +

                Return value: +

                +
                  +
                • List, a sublist of the same type as the given list.
                • +
                +
                +

                »Colour picker «

                +

                With this block you can choose from a pool of predefined colours for your robot.

                +

                options: +

                +
                  +
                • option, choose the colour you want to use.
                • +
                +
                +

                Return value: +

                +
                  +
                • colour, your selected colour.
                • +
                +
                +

                »Colour picker «

                +

                With this block you can choose from a pool of predefined colours for your robot.

                +

                options: +

                +
                  +
                • option, choose the colour you want to use.
                • +
                +
                +

                Return value: +

                +
                  +
                • colour, your selected colour.
                • +
                +
                +

                »Colour picker «

                +

                With this block you can choose from a pool of predefined colours for your robot.

                +

                options: +

                +
                  +
                • option, choose the colour you want to use.
                • +
                +
                +

                Return value: +

                +
                  +
                • colour, your selected colour.
                • +
                +
                +

                »Colour with red ... green ... blue ... «

                +

                With this block you can create your own colour by mixing red, green and blue.

                +

                Input values: +

                +
                  +
                • number, the red part in your color. Value between 0 and 255.
                • +
                • number, the green part in your color. Value between 0 and 255.
                • +
                • number, the blue part in your color. Value between 0 and 255.
                • +
                +
                +

                »Hue Tolerance«

                +

                Robots often do not recognise the exact colour tone precisely. The lighting conditions can cause a colour to be perceived as too dark or too light. This block allows you to set a tolerance range for the colour to be detected, so that every shade of red, for example, is detected as red.

                +

                Input values: +

                +
                  +
                • Colour, colour received from a sensor.
                • +
                • Colour, defined colour for comparison with sensor data.
                • +
                • Number, tolerance value for colour detection.
                • +
                + Return value: +
                  +
                • Truth value, ‘true’ if the colour is within the tolerance range, ‘false’ if the colour deviates too much.
                • +
                +
                +

                »set variable«

                +

                Using the block »set variable« will assign a value to a variable. Depending on the variable type the value may be assigned by an input connector.

                +

                Settings and input value: +

                +
                  +
                • Variable, which value is to be changed.
                • +
                • Value, new value for the variable, evaluated from a suitable block.
                • +
                +
                +

                »get variable«

                +

                Using the block »get variable« returns the value of a variable to another block.The type of the output parameter is equal to the type that has been assigned to the variable in the »start« block.

                +

                Settings:
                +

                +
                  +
                • Variable, that will be read. The value will not be changed by reading.
                • +
                +
                +

                Return value:
                +

                +
                  +
                • Value, stored in the variable.
                • +
                +
                +

                »Function blocks with/without input parameters and no return statement«

                +

                In a function block with/without input parameter and without return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized.

                +

                If a function block contains an if-block the function may be terminated before reaching it's end.

                +

                The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                +

                Settings: +

                +
                  +
                • Function name, no special characters and white spaces allowed.
                • +
                • Generate new local variables, that will be assigned with the function call.
                • +
                • Delete the associated local variable.
                • +
                +
                +
                +
                +
                  +
                • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.

                  +
                • +
                • +

                  If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.

                  +
                • +
                +
                +
                +
                +

                »Function blocks with/without input parameters with return statements«

                +

                In a function block with/without input parameter and with return parameter a sequence of program statements will be condensed. The input parameters will be determined by the local variables of the function block. Local variables may be generated by using the »+« sign of the function block. Local variables will not be initialized. After running through all the blocks of the function a value will be returned.

                +

                If a function block contains an if-block the function may be terminated before reaching it's end. An alternative value may be returned by the if-block.

                +

                The function block is available in the »Functions« category immediately after its definition. Using function blocks improves the readability of complex programs.

                +

                Settings: +

                +
                  +
                • Function name, no special characters and white spaces allowed.
                • +
                • Generate new local variables, that will be assigned with the function call.
                • +
                • Delete the associated local variable.
                • +
                • Data type for the return value; choose one data type.
                • +
                • Block, that returns a value of the defined data type.
                • +
                +
                +

                Return value: +

                +
                  +
                • Value of the defined data type, evaluated in an appropriate block.
                • +
                +
                +
                +
                +
                  +
                • The name of a function block has to start with a lower case letter. Special characters are not allowed in a function block name.
                • +
                • If the function block defines input parameters (local variables), all the parameter slots have to be occupied when calling the function.
                • +
                +
                +
                +
                +

                »if block to be used within a function«

                +

                The if statement within a function is of special importance. As the function sequence meets an if statement the validity of the condition will be checked.

                +

                If statement within a function with return value:

                +
                  +
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates. The second input value of the if statement will be returned. A possibly defined return value of the function will be ignored. The return value data type is determined by the return data type of the function definition.
                • +
                • If the condition evaluates to »false« the sequence of the function blocks will be continued. The return value of the function will be returned after reaching the end of the function.
                • +
                +

                If statement within a function with no return value:

                +
                  +
                • An if statement within a function without return value has just the if statement as input parameter.
                • +
                • If the condition evaluates to »true« the rest of the function will be ignored and the function terminates.
                • +
                • If the condition evaluates to »false« the sequence of the function blocks will be continued.
                • +
                +

                Settings and input values: +

                +
                  +
                • Boolean value, possibly evaluated by a condition.
                • +
                • Value of the specified data type.
                • +
                +
                +

                Return value: +

                +
                  +
                • Value of the specified data type.
                • +
                +

                +

                »function call without return value «

                +

                With this block you can call a previous defined function in your program.

                +

                Input values: +

                +
                  +
                • element, depending of the required input value of the function.
                • +
                +
                +

                »function call with return value «

                +

                With this block you can call a previous defined function in your program.

                +

                Input values: +

                +
                  +
                • element, depending on the required input value of the function.
                • +
                +

                Return value: +

                +
                  +
                • element, depending on the return value of the function.
                • +
                +
                +
                + \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/help/progHelp_txt4_es.html b/OpenRobertaServer/staticResources/help/progHelp_txt4_es.html index e0a5a7a0ab..123430ca03 100644 --- a/OpenRobertaServer/staticResources/help/progHelp_txt4_es.html +++ b/OpenRobertaServer/staticResources/help/progHelp_txt4_es.html @@ -1,9 +1,9 @@ -

                »Inicio del programa«

                Cada programa comienza con el bloque rojo "Inicio del programa".

                Este bloque está siempre disponible en el Open Roberta Lab y no se puede borrar. El pequeño triángulo debajo del bloque de inicio se llama "conector de secuencia". El primer bloque que desee utilizar se conectará mediante el "conector de secuencia" al bloque de inicio. El color del conector de secuencia cambia a amarillo cuando un bloque adecuado entra en su rango.

                Ajustes:


                  +

                  »Inicio del programa«

                  Cada programa comienza con el bloque rojo "Inicio del programa".

                  Este bloque está siempre disponible en el Open Roberta Lab y no se puede borrar. El pequeño triángulo debajo del bloque de inicio se llama "conector de secuencia". El primer bloque que desee utilizar se conectará mediante el "conector de secuencia" al bloque de inicio. El color del conector de secuencia cambia a amarillo cuando un bloque adecuado entra en su rango.

                  Ajustes:


                  • crear una nueva variable global
                  • borrar la variable global
                  • mostrar datos de sensores: mientras se ejecuta un programa, los valores actuales de los sensores conectados se mostrarán en la pantalla

                  Si se han creado variables globales:

                  • Texto, nombre de la variable
                  • Tipo de la variable, "Número", "Booleana", "Cadena", "Color", "Conexión", "Lista Número", "Lista Booleana", "Lista Cadena", "Lista Conexión"
                  • Valor, que corresponde al tipo de variable. Es el valor inicial de la variable.
                  • -

                  »mover ... velocidad % ... distancia cm ...«

                  Con el bloque "mover distancia" puedes programar la dirección y la velocidad del robot. La velocidad del robot se establece en el parámetro "velocidad". Una vez ejecutado el bloque, los motores se paran automáticamente.

                  El bloque "distancia de accionamiento" controla los dos motores del robot al mismo tiempo, lo que significa que los ajustes que realices aquí se aplican a los dos motores del robot. Si las acciones del robot no se corresponden con los ajustes del bloque al ejecutar el programa, comprueba los ajustes de configuración del robot, especialmente el diámetro de las ruedas y el ancho de la pista.

                  Ajustes y valores de entrada:


                    +

                  »mover ... velocidad % ... distancia cm ...«

                  Con el bloque "mover distancia" puedes programar la dirección y la velocidad del robot. La velocidad del robot se establece en el parámetro "velocidad". Una vez ejecutado el bloque, los motores se paran automáticamente.

                  El bloque "distancia de accionamiento" controla los dos motores del robot al mismo tiempo, lo que significa que los ajustes que realices aquí se aplican a los dos motores del robot. Si las acciones del robot no se corresponden con los ajustes del bloque al ejecutar el programa, comprueba los ajustes de configuración del robot, especialmente el diámetro de las ruedas y el ancho de la pista.

                  Ajustes y valores de entrada:


                  • Accionamiento, "hacia delante" o "hacia atrás". Seleccione una dirección.
                  • Número, velocidad entre -100 y 100. Si el número es negativo, los motores girarán hacia atrás. Este valor se recortará internamente para que esté entre -100 y 100.
                  • Número, la distancia a recorrer en cm.

                  »mover ... velocidad % ...«

                  Con el bloque "drive" puedes programar la dirección y también la velocidad de tu robot. El robot se mueve hasta que se detiene o hasta que otro bloque especifica nuevos parámetros de conducción. La velocidad de conducción puede ajustarse en el campo "velocidad".

                  Opciones y argumentos:

                    @@ -11,37 +11,36 @@

                  »para«

                  El bloque "para" detiene los motores inmediatamente.

                  »steer ... velocidad izquierda ... velocidad derecha ...«

                  El bloque "steer ... velocidad izquierda ... velocidad derecha ..." programa el robot para trazar una curva estableciendo distintas velocidades para el motor izquierdo y el derecho. La configuración del robot influye en el radio de la curva en función de la distancia y el diámetro de las ruedas. El sentido de giro definirá la dirección de conducción.

                  Ajustes y valores de entrada:

                  • Sentido de giro, "hacia delante" o "hacia atrás". Seleccione la dirección de desplazamiento deseada.
                  • Número, velocidad entre -100 y 100 para el motor izquierdo. Si el número es negativo el motor irá hacia atrás. Este valor se recortará internamente para que esté entre -100 y 100.
                  • Número, velocidad entre -100 y 100 para el motor derecho. Si el número es negativo el motor irá hacia atrás. Este valor se recortará internamente para que esté entre -100 y 100.
                  • -

                  »steer ... velocidad izquierda ... velocidad derecha ... distancia ...«

                  El bloque "steer ... velocdidad izquierda ... velocidad derecha ... distancia ..." programa el robot para trazar una curva estableciendo distintas velocidades para el motor izquierdo y el derecho y también una distancia relacionada con el centro entre ambas ruedas. La configuración del robot influye en el radio de la curva en función de la distancia y el diámetro de las ruedas. El sentido de giro definirá la dirección de conducción.

                  Ajustes y valores de entrada:


                    +

                  »steer ... velocidad izquierda ... velocidad derecha ... distancia ...«

                  El bloque "steer ... velocdidad izquierda ... velocidad derecha ... distancia ..." programa el robot para trazar una curva estableciendo distintas velocidades para el motor izquierdo y el derecho y también una distancia relacionada con el centro entre ambas ruedas. La configuración del robot influye en el radio de la curva en función de la distancia y el diámetro de las ruedas. El sentido de giro definirá la dirección de conducción.

                  Ajustes y valores de entrada:


                  • Sentido de giro, "hacia delante" o "hacia atrás". Seleccione la dirección de desplazamiento deseada.
                  • Número, velocidad entre -100 y 100 para el motor izquierdo. Si el número es negativo el motor irá hacia atrás. Este valor se recortará internamente para que esté entre -100 y 100.
                  • Número, velocidad entre -100 y 100 para el motor izquierdo. Si el número es negativo el motor irá hacia atrás. Este valor se recortará internamente para que esté entre -100 y 100.
                  • Número, la distancia en cm a recorrer.
                  • -

                  »gira ... velocidad % ... grado ...«

                  Con el bloque "grado de giro" programas la dirección (derecha/izquierda) en la que girará tu robot. Además de la dirección también puedes programar los "grados", lo que te permite programar cuántos grados debe girar tu robot (alrededor de su eje). Esto significa que puedes hacer una rotación completa programando un giro de 360 grados.

                  El bloque "grados de giro" controla ambos motores del robot de forma que éste gire alrededor de su propio eje. Si las acciones del robot no se corresponden con los ajustes del bloque al ejecutar el programa, comprueba los ajustes de configuración del robot EV3, especialmente el diámetro de las ruedas y el ancho de la pista.

                  Ajustes y valores de entrada:


                    +

                  »gira ... velocidad % ... grado ...«

                  Con el bloque "grado de giro" programas la dirección (derecha/izquierda) en la que girará tu robot. Además de la dirección también puedes programar los "grados", lo que te permite programar cuántos grados debe girar tu robot (alrededor de su eje). Esto significa que puedes hacer una rotación completa programando un giro de 360 grados.

                  El bloque "grados de giro" controla ambos motores del robot de forma que éste gire alrededor de su propio eje. Si las acciones del robot no se corresponden con los ajustes del bloque al ejecutar el programa, comprueba los ajustes de configuración del robot EV3, especialmente el diámetro de las ruedas y el ancho de la pista.

                  Ajustes y valores de entrada:


                  • Gira, "derecha" o "izquierda". Seleccione el sentido de giro deseado.
                  • Número, velocidad entre -100 y 100. Si el número es negativo, el robot girará en sentido contrario. Este valor se recortará internamente para que esté entre -100 y 100.
                  • Número, grados en los que girará el robot. Un grado de 360 realizará un giro completo. No se permiten números negativos.
                  • -

                  »gira ... velocidad % ...«

                  Con el bloque "gira" estableces la dirección (derecha/izquierda) en la que girará el robot. El robot gira hasta que se detiene o se utiliza otro bloque para conducir. Puedes ajustar la velocidad en el campo de parámetros del bloque "velocidad".

                  "girar" controla los dos motores del robot al mismo tiempo, por lo que el robot gira en el acto. Si las acciones del robot EV3 no se corresponden con los ajustes del bloque al ejecutar el programa, compruebe los ajustes de configuración del robot EV3, especialmente el diámetro de las ruedas y el ancho de la pista.

                  Ajustes y valores de entrada: +


                »gira ... velocidad % ...«

                Con el bloque "gira" estableces la dirección (derecha/izquierda) en la que girará el robot. El robot gira hasta que se detiene o se utiliza otro bloque para conducir. Puedes ajustar la velocidad en el campo de parámetros del bloque "velocidad".

                "girar" controla los dos motores del robot al mismo tiempo, por lo que el robot gira en el acto. Si las acciones del robot EV3 no se corresponden con los ajustes del bloque al ejecutar el programa, compruebe los ajustes de configuración del robot EV3, especialmente el diámetro de las ruedas y el ancho de la pista.

                Ajustes y valores de entrada:

                • Giro, "derecha" o "izquierda". Seleccione el sentido de giro deseado.
                • Número, velocidad entre -100 y 100. Si el número es negativo, el robot girará en sentido contrario. Este valor se recortará internamente para que esté entre -100 y 100.
                • -

                Si su robot gira en la dirección equivocada, entonces los motores están conectados a los puertos equivocados. Simplemente intercambia los puertos y tu robot girará en la dirección correcta.

                »motor ... encendido velocidad % ... para rotación/grado ...« [Bloque Experto]

                Con el bloque "motor ... rotación" puedes programar la velocidad del motor seleccionado. El robot arranca el motor seleccionado y lo hace girar hasta realizar el número de rotaciones o grados especificado.

                Opciones y Argumentos: +

              Si su robot gira en la dirección equivocada, entonces los motores están conectados a los puertos equivocados. Simplemente intercambia los puertos y tu robot girará en la dirección correcta.

              »motor ... encendido velocidad % ... para rotación/grado ...« [Bloque Experto]

              Con el bloque "motor ... rotación" puedes programar la velocidad del motor seleccionado. El robot arranca el motor seleccionado y lo hace girar hasta realizar el número de rotaciones o grados especificado.

              Opciones y Argumentos:

              • puerto motor, elige aquel al que está conectado el motor que quieres programar.
              • número, espaciado entre -100 y 100. 100 es la velocidad máxima. Valores negativos permiten al motor girar en la otra dirección. Este valor se recortará internamente para que esté entre -100 y 100.
              • rotación o grado. Elija el que más le convenga. 1 rotación es lo mismo que 360 grados.
              • número, rotaciones o grados, sólo se permiten números positivos.
              • -

              »motor ... en velocidad % ...« [Bloque Experto]

              Con el bloque "motor ... activado" puedes programar la velocidad del motor seleccionado. El robot arranca el motor seleccionado, hasta que se detiene u otro bloque especifica nuevos parámetros de movimiento.

              Opciones y Argumentos: +


            »motor ... en velocidad % ...« [Bloque Experto]

            Con el bloque "motor ... activado" puedes programar la velocidad del motor seleccionado. El robot arranca el motor seleccionado, hasta que se detiene u otro bloque especifica nuevos parámetros de movimiento.

            Opciones y Argumentos:

            • puerto motor, elige el puerto al que está conectado el motor.
            • valor, velocidad entre -100 y 100. Los valores negativos permiten que el motor gire hacia atrás. Este valor se recortará internamente para que esté entre -100 y 100.
            • -

            »para motor« [Bloque Experto]

            Con el bloque "para motor" se apaga un motor seleccionado. Puede decidir que el motor se apague lentamente (flotación) o que se pare inmediatamente

            Opciones de configuración: +


          »para motor« [Bloque Experto]

          Con el bloque "para motor" se apaga un motor seleccionado. Puede decidir que el motor se apague lentamente (flotación) o que se pare inmediatamente

          Opciones de configuración:

          • puerto del motor; elija el puerto al que está conectado el motor.
          • flotante o freno; haga su elección.
          • -

          »set servo motor SG90 ... to° ...« [Bloque Experto]

          Este bloque controla los servomotores de tu Robot. Elige qué servomotor quieres accionar y en qué grado debe moverse.

          Opciones: +

        »set servo motor SG90 ... to° ...« [Bloque Experto]

        Este bloque controla los servomotores de tu Robot. Elige qué servomotor quieres accionar y en qué grado debe moverse.

        Opciones:

        • Puerto de servo, qué servo quieres accionar.
        • Número, a qué ángulo quieres ajustar tu servo.

        »mostrar texto ... en fila ...«

        Con el bloque "mostrar texto" puedes mostrar texto y números en la pantalla de tu robot. También puede especificar en qué columna y fila debe mostrarse el texto o los números en la pantalla del robot.

        Valores de entrada:

        • Cadena, entrada de una cadena de texto que se mostrará en la pantalla.
        • Número, fila para que el texto comience entre 0 y 7.
        • -

        »borrar pantalla«

        Con este bloque, puede borrar lo que se muestra en la pantalla.

        »mostrar en Monitor Serie« [Bloque Experto]

        Con este bloque puedes mostrar texto en un Monitor Serie a través de USB.

        Valor de entrada:


          +

        »borrar pantalla«

        Con este bloque, puede borrar lo que se muestra en la pantalla.

        »mostrar en Monitor Serie« [Bloque Experto]

        Con este bloque puedes mostrar texto en un Monitor Serie a través de USB.

        Valor de entrada:


        • Cadena, el texto o números que deben mostrarse en el Monitor Serie.
        • -

        »reproducir achievo« [Bloque Experto]

        Puedes utilizar este bloque para que el robot reproduzca un sonido del menú de selección.

        Opciones de selección:
          +

        »reproducir achievo« [Bloque Experto]

        Puedes utilizar este bloque para que el robot reproduzca un sonido del menú de selección.

        Opciones de selección:
        • Opción, Seleccione qué pieza debe reproducirse.
        • -

        »switch luz de ladrillo ... encender color ...«

        Con el bloque "switch brick light" puedes programar la luz de fondo de la pantalla. La luz de ladrillo del robot permanece encendida hasta que la vuelvas a programar.

        Ajustes:


          -
        • Pantalla, selecciona una pantalla.
        • Color, selecciona un color.
        • -

        »switch luz de ladrillo ... apagardo«

        Con el bloque "apagar luz de ladrillo" puedes apagar la luz de ladrillo.

        Ajustes:

        -
          -
        • Pantalla, seleccione una pantalla
        • +

        »encender LED RGB pantalla color ...«

        Con el bloque «Encender LED», puedes encender el LED de la pantalla de tu robot y seleccionar el color en el que debe iluminarse.

        Ajustes:


          +
        • Color, selecciona un color.
        • +

        »apagar LED RGB pantalla«

        Con el bloque »apagar LED RGB pantalla« puedes apagar la luz de ladrillo.

        »set LED luminosidad % ...« [Bloque Experto]

        Con el bloque «set LED luminosidad % ...» se puede ajustar la luminosidad del LED.

        Opciones de ajuste:


          +
        • Número, brillo entre 0 y 100 en porcentaje.

        »display button ... pulsado?«

        Con este Bloque puedes consultar uno de los botones de visualización de tu Robot, si está siendo pulsado en ese momento.

        Opciones:

        • Botón, seleccione el botón que desea consultar.
        • @@ -53,7 +52,7 @@

        Valor de retorno:

        • Valor, la distancia al objeto más cercano en Centímetros.
        • -

        »obtener línea sensor de infrarrojos ...«

        Con este bloque, puede utilizar el sensor de infrarrojos de su robot para reconocer una línea. Un área clara de la línea se lee como «0», un área oscura se lee como «1».

        Opciones:

        +

      »obtener línea sensor de infrarrojos ...«

      Con este bloque, puede utilizar el sensor de infrarrojos de su robot para reconocer una línea. Un área clara de la línea se lee como «0», un área oscura se lee como «1».

      Opciones:

      • Sensor, seleccione el sensor que desea consultar.

      Valor de retorno:

      @@ -77,34 +76,34 @@

    »reiniciar temporizador ...«

    El bloque «Ajustar temporizador» permite poner a cero los temporizadores internos (1 a 5).

    Opciones de configuración:

    • Número de temporizador, seleccione el temporizador que desea restablecer.
    • -

    »obtener color cámera« [Bloque Experto]

    El bloque «obtener color cámara» da salida al color de una zona de la imagen capturada definida en la configuración.

    Valor de retorno: +


»obtener color cámera« [Bloque Experto]

El bloque «obtener color cámara» da salida al color de una zona de la imagen capturada definida en la configuración.

Valor de retorno:

  • Color, color medio de la zona establecida en la configuración
  • -

»obtener número de líneas cámera« [Bloque Experto]

Con el bloque «obtener número de líneas cámara», puedes utilizar la cámara para contar las líneas reconocidas por el robot. Se pueden reconocer un máximo de 4 líneas al mismo tiempo.

Valor de retorno: +

»obtener número de líneas cámera« [Bloque Experto]

Con el bloque «obtener número de líneas cámara», puedes utilizar la cámara para contar las líneas reconocidas por el robot. Se pueden reconocer un máximo de 4 líneas al mismo tiempo.

Valor de retorno:

  • Número, número de líneas reconocidas por la cámara (máximo 4)
  • -

»obtener información por linea # ...« [Bloque Experto]

El bloque «Dar información de la línea #» puede utilizarse para informar a otro bloque de la posición de la línea en la imagen de la cámara y de la anchura reconocida. El máximo de 4 imágenes reconocidas por la cámara se indexan con los números 0-3.

Tenga en cuenta que la primera línea tiene el índice «0» y la cuarta el índice «3».


Valor de entrada: +

»obtener información por linea # ...« [Bloque Experto]

El bloque «Dar información de la línea #» puede utilizarse para informar a otro bloque de la posición de la línea en la imagen de la cámara y de la anchura reconocida. El máximo de 4 imágenes reconocidas por la cámara se indexan con los números 0-3.

Tenga en cuenta que la primera línea tiene el índice «0» y la cuarta el índice «3».


Valor de entrada:

  • Número, índice de la línea de la que se debe devolver la posición y la anchura (0-3).
Valor de retorno:
  • Lista: Posición [-100, 100] y anchura de la línea en el índice especificado
  • -

»obtener color por linea # ...« [Bloque Experto]

El bloque «obtener color por línea #» puede utilizarse para indicar a otro bloque el color de una línea en el índice seleccionado (0-3).

Tenga en cuenta que la primera línea tiene el índice «0» y la cuarta el índice «3».

Valor de entrada: +

»obtener color por linea # ...« [Bloque Experto]

El bloque «obtener color por línea #» puede utilizarse para indicar a otro bloque el color de una línea en el índice seleccionado (0-3).

Tenga en cuenta que la primera línea tiene el índice «0» y la cuarta el índice «3».

Valor de entrada:

  • Número, índice de la línea a partir de la cual debe comunicarse el color (0-3)
Valor de retorno:
  • Color, color de la línea seleccionada
  • -

»obtener información del balón« [Bloque Experto]

El bloque «obtener información del balón cámara» puede utilizarse para informar a otro bloque de la posición de la pelota en la imagen de la cámara y de su diámetro medido por el robot.

Para que una bola sea reconocida, su color debe estar definido en la configuración.

Valor de retorno:


    +

»obtener información del balón« [Bloque Experto]

El bloque «obtener información del balón cámara» puede utilizarse para informar a otro bloque de la posición de la pelota en la imagen de la cámara y de su diámetro medido por el robot.

Para que una bola sea reconocida, su color debe estar definido en la configuración.

Valor de retorno:


  • Lista, posición de la bola [x,y] y diámetro
  • -

»obtener movimiento cámera« [Bloque Experto]

El bloque «obtener movimiento cámara» puede utilizarse para indicar a otro bloque si el robot detecta movimiento en la imagen de la cámara.

Valor de retorno:


    +

»obtener movimiento cámera« [Bloque Experto]

El bloque «obtener movimiento cámara» puede utilizarse para indicar a otro bloque si el robot detecta movimiento en la imagen de la cámara.

Valor de retorno:


  • Valor verdadero, «true» si se detecta un movimiento, «false» si no se detecta ningún movimiento.
  • -

»Mini-Switch ... pulsado?« [Bloque Experto]

El bloque «Mini-Switch ... ¿pulsado?» puede utilizarse para indicar a otro bloque si el botón seleccionado está presionado.

Valor de entrada:


    +

»Mini-Switch ... pulsado?« [Bloque Experto]

El bloque «Mini-Switch ... ¿pulsado?» puede utilizarse para indicar a otro bloque si el botón seleccionado está presionado.

Valor de entrada:


  • Puerto cuyo botón debe comprobarse
Valor de retorno:
  • Valor verdadero, «true» si el botón está pulsado, «false» si no lo está.
  • -

»obtener valor % sensor de luz« [Bloque Experto]

El bloque «Dar valor % sensor de luz» puede utilizarse para indicar a otro bloque la intensidad de la luz que incide sobre el sensor de luz del robot.

Valor de retorno: +

»obtener valor % sensor de luz« [Bloque Experto]

El bloque «Dar valor % sensor de luz» puede utilizarse para indicar a otro bloque la intensidad de la luz que incide sobre el sensor de luz del robot.

Valor de retorno:

  • Número, porcentaje de intensidad luminosa como un número de 0-100

»obtener ... sensor ambiental«

Con el bloque «Dar ... Sensor ambiental» se puede comunicar un valor medido específico del sensor ambiental a un bloque. El sensor ambiental tiene varias funciones. Puede medir la temperatura, la humedad, la presión atmosférica y la calidad del aire interior.

Valor de retorno: @@ -271,18 +270,18 @@

Valor de retorno:

  • Número, el valor de la neurona de salida seleccionada.
  • -

»establecer peso de ... a ...« [Bloque experto]

Con este bloque puedes establecer el peso de una conexión entre dos neuronas que están directamente conectadas.

Opciones y valores de entrada: +

»establecer peso de ... a ...« [Bloque experto]

Con este bloque puedes establecer el peso de una conexión entre dos neuronas que están directamente conectadas.

Opciones y valores de entrada:

  • Neurona, la primera neurona a partir de la cual se origina la conexión.
  • Neurona, la segunda neurona a la que conducen las conexiones.
  • Número, el valor al que debe fijarse el peso.
  • -

»establecer sesgo / bias« [Bloque experto]

Con este bloque puedes establecer el sesgo de una neurona.

Opciones y valores de entrada:


    +

»establecer sesgo / bias« [Bloque experto]

Con este bloque puedes establecer el sesgo de una neurona.

Opciones y valores de entrada:


  • Neurona, la neurona cuyo sesgo desea establecer.
  • Número, el valor al que debe fijarse el sesgo.
  • -

»obtener peso de ... a ...« [Bloque experto]

Con este bloque puede consultar el valor actual del peso de una conexión entre dos neuronas que están directamente conectadas.

Opciones: +

»obtener peso de ... a ...« [Bloque experto]

Con este bloque puede consultar el valor actual del peso de una conexión entre dos neuronas que están directamente conectadas.

Opciones:

  • Neurona, la primera neurona a partir de la cual se origina la conexión.
  • Neurona, la segunda neurona a la que conducen las conexiones.

Valor de retorno:

  • Número, el valor del peso entre las dos neuronas.
  • -

»obtener sesgo / bias ... « [Bloque experto]

Con este bloque puede consultar el sesgo de una neurona.

Opciones: +

»obtener sesgo / bias ... « [Bloque experto]

Con este bloque puede consultar el sesgo de una neurona.

Opciones:

  • Neurona, la neurona cuyo sesgo desea consultar.

Valor de retorno: @@ -385,10 +384,10 @@

Valor de retorno:

  • Valor almacenado en la variable.
  • -

Bloque de función sin/con entrada y sin valor de retorno [Bloque de Expertos]

Una secuencia de instrucciones se resume en un bloque de funciones sin/con valores de entrada y de retorno. Los valores de entrada se definen mediante las variables locales del bloque de funciones. El signo «+» puede utilizarse para crear variables locales como valores de entrada para el bloque de funciones. Las variables locales no se inicializan.

Si se incorpora una consulta if (véase más adelante) en un bloque de funciones, la función puede cancelarse antes de tiempo.

Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

Opciones de configuración: +

Bloque de función sin/con entrada y sin valor de retorno [Bloque de Expertos]

Una secuencia de instrucciones se resume en un bloque de funciones sin/con valores de entrada y de retorno. Los valores de entrada se definen mediante las variables locales del bloque de funciones. El signo «+» puede utilizarse para crear variables locales como valores de entrada para el bloque de funciones. Las variables locales no se inicializan.

Si se incorpora una consulta if (véase más adelante) en un bloque de funciones, la función puede cancelarse antes de tiempo.

Der Funktionsblock steht nach seiner Definition als zusätzlicher Block in der Kategorie »Funktion« zur Verfügung. Auf diese Weise kann die Lesbarkeit komplexer Programme wesentlich vereinfacht werden.

Opciones de configuración:

  • Nombre de la función, sin espacios ni caracteres especiales
  • Crea una variable local a la que se le asigna un valor a través de la llamada a la función.
  • Borrar una variable local.
  • -

  • El nombre de un bloque de funciones debe empezar por una letra minúscula. No se permiten caracteres especiales en los nombres de las funciones.
  • Si se definen valores de entrada (variables locales) en un bloque de función, todos estos valores deben asignarse al llamar a la función.

Bloque de funciones sin/con entrada y con valores de retorno [Bloque de Expertos]

Una secuencia de instrucciones se resume en un bloque de funciones con/sin un valor de entrada y con un valor de retorno. El signo «+» puede utilizarse para crear variables locales como valores de entrada para el bloque de funciones. Una vez ejecutadas todas las instrucciones, se devuelve un valor como valor de la función.

Si se incorpora una consulta if a un bloque de función, la función puede cancelarse antes de tiempo y devolverse un valor de función alternativo.

Tras su definición, el bloque de función está disponible como bloque adicional en la categoría «Función». Esto puede simplificar considerablemente la legibilidad de programas complejos.

Posibilidades de ajuste:


    +

  • El nombre de un bloque de funciones debe empezar por una letra minúscula. No se permiten caracteres especiales en los nombres de las funciones.
  • Si se definen valores de entrada (variables locales) en un bloque de función, todos estos valores deben asignarse al llamar a la función.

Bloque de funciones sin/con entrada y con valores de retorno [Bloque de Expertos]

Una secuencia de instrucciones se resume en un bloque de funciones con/sin un valor de entrada y con un valor de retorno. El signo «+» puede utilizarse para crear variables locales como valores de entrada para el bloque de funciones. Una vez ejecutadas todas las instrucciones, se devuelve un valor como valor de la función.

Si se incorpora una consulta if a un bloque de función, la función puede cancelarse antes de tiempo y devolverse un valor de función alternativo.

Tras su definición, el bloque de función está disponible como bloque adicional en la categoría «Función». Esto puede simplificar considerablemente la legibilidad de programas complejos.

Posibilidades de ajuste:


  • Nombre de la función, sin espacios ni caracteres especiales
  • Crea una variable local a la que se le asigna un valor a través de la llamada a la función.
  • Borrar una variable local.
  • Tipo de datos para el valor de retorno. «Número», «Valor lógico», «Cadena», «Color», «Conexión», «Lista número», «Lista valor lógico», «Lista cadena», «Lista conexión».
  • Valor que corresponde al tipo de datos establecido del valor de retorno.

Valor de retorno:

    diff --git a/RobotEdison/src/main/resources/edisonv3.properties b/RobotEdison/src/main/resources/edisonv3.properties index 58647023dc..0386cc17e6 100644 --- a/RobotEdison/src/main/resources/edisonv3.properties +++ b/RobotEdison/src/main/resources/edisonv3.properties @@ -1,4 +1,5 @@ #include classpath:/edison.properties robot.plugin.fileExtension.binary = wav robot.real.name = Edison V3 -robot.vendor = 0x16D0 \ No newline at end of file +robot.vendor = 0x16D0 +robot.announcement = beta \ No newline at end of file diff --git a/RobotFischertechnik/src/main/resources/txt4.properties b/RobotFischertechnik/src/main/resources/txt4.properties index ed4efecc3c..b447e1f090 100644 --- a/RobotFischertechnik/src/main/resources/txt4.properties +++ b/RobotFischertechnik/src/main/resources/txt4.properties @@ -12,7 +12,6 @@ robot.configuration.default = /txt4/configuration.default.xml #robot's long name to display robot.real.name = TxT 4.0 Controller robot.vendor = na -robot.announcement = beta robot.multisim = true robot.info.en = diff --git a/RobotMbed/src/main/resources/joycar.properties b/RobotMbed/src/main/resources/joycar.properties index b1fbe56230..2fd5a2500f 100644 --- a/RobotMbed/src/main/resources/joycar.properties +++ b/RobotMbed/src/main/resources/joycar.properties @@ -18,7 +18,6 @@ robot.real.name = micro:bit Joy-Car robot.vendor = 0xd28 # robot's info for further information robot.info.en = https://joy-it.net/en/products/mb-joy-car -robot.announcement = beta robot.configuration = true # either new or old- with ="S" for all robots but mbot, which needs "P" robot.configuration.type = new diff --git a/RobotSpike/src/main/resources/spikePybricks.properties b/RobotSpike/src/main/resources/spikePybricks.properties index 52f4d0c0da..7b069ccb59 100644 --- a/RobotSpike/src/main/resources/spikePybricks.properties +++ b/RobotSpike/src/main/resources/spikePybricks.properties @@ -13,7 +13,6 @@ robot.configuration.default = /spike/configuration.default.xml robot.real.name = Spike Prime / Robot Inventor / Pybricks #TODO: fix all the create agent parameters robot.vendor = na -robot.announcement = beta robot.info.en = robot.info.de =