Robo4earth App

Progressive Web App (PWA)

Hier findest du Informationen zum Programmieren der Robo4earth Roboter mit der Robo4earth Web-App.

  • Über die Robo4earth Web-App
  • Systemvoraussetzungen
    • Benötigte Hardware
    • Browser
    • Betriebssystem
    • App offline verwenden
    • Robo4earth HEX Datei auf Micro:bit laden
  • Steuern der Robo4earth
    1. Die App öffnen
    2. Den Roboter verbinden
    3. Erstellen eines Programms
    4. Ausführen und Stoppen des Programms
  • Programm- und Menüfunktionen
    • Programm speichern
    • Programm laden
    • Programm löschen
    • Alle Programme löschen
  • Troubleshooting
    • Beim Drücken auf Verbinden passiert nichts
    • Die Verbindung reißt ab
    • Bilder werden nicht richtig angezeigt oder Klänge nicht richtig abgespielt
  • FAQ
    • Was ist eine HEX Datei?
    • Was sind synchrone/asynchrone Blöcke?
    • Programm abbrechen
    • Wo finde ich den Micro:bit Namen?
Header Image Robo4eart Educational Robotics

Robo4earth Programmieren

Hier findest du Informationen zum Programmieren mit der Robo4earth Web-App.

  • Über die Robo4earth Web-App
  • Systemvoraussetzungen
    • Benötigte Hardware
    • Browser
    • Betriebssystem
    • App offline verwenden
    • Robo4earth HEX Datei auf Micro:bit laden
  • Steuern der Robo4earth
    1. Die App öffnen
    2. Den Roboter verbinden
    3. Erstellen eines Programms
    4. Ausführen und Stoppen des Programms
  • Programm- und Menüfunktionen
    • Programm speichern
    • Programm laden
    • Programm löschen
    • Alle Programme löschen
  • Troubleshooting
    • Beim Drücken auf Verbinden passiert nichts
    • Die Verbindung reißt ab
    • Bilder werden nicht richtig angezeigt oder Klänge nicht richtig abgespielt
  • FAQ
    • Was ist eine HEX Datei?
    • Was sind synchrone/asynchrone Blöcke?
    • Programm abbrechen
    • Wo finde ich den Micro:bit Namen?

Auf dieser Seite findest du die Anleitung für Einsteiger*innen und jüngere Schüler*innen.

Fortgeschrittene können die Robo4earth auch in Make:Code mit JavaScript und Python programmieren.
Eine Anleitung dazu findest du hier.


Robo4earth Web-App


Robo4earth Web-App Übersicht
Robo4earth Web-App Übersicht

Die Web-App robo4earth.zimd.at ermöglicht die kabellose Programmierung der Robo4earth. Das Programm wird mit Anweisungsblöcken erstellt und über Bluetooth an den Roboter gesendet. Die App wird im Browser ausgeführt und muss nicht extra installiert werden.

Die Robo4earth App ist eine Progressive-Web-App (PWA). Das bedeutet, man kann sie nach dem einmaligen Laden über das Internet offline verwenden, indem man sie zum Startbildschirm hinzufügt.
Genaueres dazu findest du unter dem Punkt "Die App offline verwenden"


Systemvoraussetzungen



Hardware

Wir empfehlen, die Robo4earth Web-App auf einem mobilen Endgerät, vorzugsweise auf einem Tablet mit Android zu verwenden. Das verwendete Mobilgerät braucht eine Internetverbindung (zumindest einmal um die App zu laden) und Bluetooth.

Browser

Die App wird im Browser ausgeführt und muss nicht extra installiert werden. Wir empfehlen die Verwendung von Google Chrome. Die von der App verwendete Web Bluetooth API wird nicht von allen Browsern unterstützt. Kompatible Browser sind derzeit Chrome, Chrome Android, Opera Android und Samsung Internet.

Getestet wurde unsere Anwendung nur in Chrome und Chrome Android. Der aktuelle Stand der Web Bluetooth API - Browser Kompatibilität ist hier einzusehen: https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API#browser_compatibility.

Betriebssysteme

Kompatible Betriebssysteme sind Android, Chromebook und macOS (getestet mit High Sierra). Wobei von diesen drei nur Android ausgiebig von uns getestet wurde.

Die App funktioniert nicht auf iOS.
Auch nicht bei der Verwendung eines kompatiblen Browsers oder eines Web-BLE Browsers. Bei Verwendung eines Laptops mit Windows (getestet mit Windows 11) ist die Bluetooth Verbindung nicht stabil und es kann zu Aussetzern im Programm kommen.

Die Robo4earth Progressibe Web App (PWA) offline verwenden

Robo4earth Icon auf Startbildschirm
Robo4earth Icon auf Android-Startbildschirm

Nach einmaligem Hinzufügen der App auf den Startbildschirm des Geräts kann die App über das Robo4earth Icon auf dem Startbildschirm geöffnet werden. Man kann die App dadurch, wie eine native Android App, auch offline verwenden.

Um die App zum Startbildschirm hinzuzufügen, klicke bei geöffneter Web-App in Chrome auf die drei Punkte rechts oben in der Adresszeile von Chrome.

Robo4earth Icon auf Startbildschirm
Robo4earth Icon auf den Startbildschirm ziehen: Schritt 1

Wähle Zum Startbildschirm zufügen aus. Klicke danach auf Hinzufügen und danach noch einmal auf Automatisch hinzufügen.

Robo4earth Icon auf Startbildschirm
Robo4earth Icon auf den Startbildschirm ziehen: Schritt 2
Robo4earth Icon auf Startbildschirm
Robo4earth Icon auf den Startbildschirm ziehen: Schritt 3

HEX-Datei auf die Micro:bit übertragen

Damit der Micro:bit die Kommandos versteht, die von der App gesendet werden, muss die Robo4earth HEX-Datei auf den Micro:bit geladen werden. Eine HEX Datei enthält die Programmierung für den Micro:bit. Indem man die Datei per Drag and Drop auf den Micro:bit zieht, wird das enthaltene Programm auf den Micro:bit geladen. Während das Programm übertragen wird, blinkt die gelbe LED auf der Rückseite des Micro:bits schnell. Wenn die Übertragung abgeschlossen ist, wird der Text R4E über den Micro:bit gescrollt.

Du kannst die Rob4earth HEX Datei folgendermaßen herunterladen und auf den Micro:bit laden:

  1. Öffne die App auf deinem Gerät oder im Browser unter http://robo4earth.zimd.at und klicke auf Menü -> HEX Datei herunterladen. Speichere den heruntergeladenen Ordner an einem Ort ab, wo du ihn leicht wieder findest.

  2. Die geladene Robo4earth HEX Datei befindet sich im komprimierten Ordner microbit.zip. Entpacke die Zip-Datei.

  3. Verbinde den Micro:bit per USB-Micro-B Kabel mit deinem Computer oder Tablet. Der Micro:bit wird als externes Laufwerk im File-Explorer angezeigt.

  4. Ziehe die HEX Datei aus dem entpackten Ordner microbit per Drag & Drop auf das Micro:bit Laufwerk.

  5. Alternativ kannst du in Windows mit Rechtsklick auf die HEX Datei im File-Explorer klicken und Senden an -> MICROBIT (Laufwerk:) auswählen.
  6. Robo4earth HEX Datei auf micro:bit laden
    Robo4earth HEX Datei auf micro:bit laden

Steuern der Robo4earth


Zuerst muss die App geöffnet werden, anschließend kann der Roboter verbunden und das Programm erstellt werden.
Hier erfährst du, wie du dabei am besten vorgehst.

1. Robo4earth App öffnen

Robo4earth App im Chrome-Browser geöffnet
Robo4earth App im Chrome-Browser geöffnet

Die Robo4earth Web-App kann unter robo4earth.zimd.at in einem kompatiblen Browser (z.B. Chrome) geöffnet werden.

Robo4earth App als PWA über Widget geöffnet
Robo4earth App als PWA über Widget geöffnet

Alternativ kann die App über ein App Icon am Startbildschirm eines Mobilgerätes geöffnet werden. Dies ermöglicht die Verwendung der App offline als eigenständige App ohne Browser-Navigationsleiste. Mehr dazu im Abschnitt Die App offline verwenden.

2. Roboter verbinden

Robo4earth mit dem Mobilgerät verbinden
Roboter mit dem Mobilgerät verbinden

Beim Anklicken des blauen Verbinden Buttons werden alle eingeschalteten Micro:bits in der Nähe angezeigt. Bluetooth und Standortfreigabe müssen dafür am Gerät aktiviert sein. Jeder Micro:bit hat einen einzigartigen Namen, über den man ihn identifizieren und auswählen kann. Der Name wird in eckigen Klammern neben dem Micro:bit angezeigt. Um einen Micro:bit mit der App zu verbinden, klicke auf den gewünschten Micro:bit in der Liste und dann auf Koppeln.

Bei erfolgter Verbindung färbt sich der Verbinden Button grün und zeigt den Text "Verbunden" an, solange die Verbindung aufrecht ist.

3. Programm erstellen

Du kannst die Robo4earth mithilfe von Anweisungsblöcken steuern, die du zu Programmen zusammensetzen kannst. Die Blöcke sind auf der linken Seite der App in den Kategorien abgelegt. Alle Blöcke einer Kategorie haben dieselbe Farbe wie diese. Ziehe die Blöcke per Drag & Drop aus der jeweiligen Kategorie in den weißen Arbeitsbereich und setze sie dort zu Programmen zusammen.

Robo4earth programmieren
Ausgeklappte Kategorie Steuerung
Robo4earth programmieren
Beispiel-Programm zum Testen der Robo4earth Funktionalität

4. Starten und Anhalten des Programms

Wenn du auf den grünen Start Button klickst, wird das Programm Zeile für Zeile über Bluetooth an die verbundene Robo4earth gesendet, die es ausführt. Alle Absätze des Programms, die einen Wenn Start gedrückt Anweisungsblock haben, werden dabei der Reihe nach von oben nach unten und von links nach rechts ausgeführt. Ein Absatz der keinen Wenn Start gedrückt Block hat wird ignoriert.

Das Programm stoppt automatisch, wenn der letzte Anweisungsblock im Arbeitsbereich ausgeführt wurde. Willst du das Programm früher stoppen, kannst du auf den roten Stopp Button drücken. Das Programm wird dann nach dem aktuell aktiven Anweisungsblock gestoppt.

Synchrone/Asynchrone Blöcke

In den Kategorien Anzeige und Klänge gibt es synchrone und asynchrone Anweisungsblöcke.

Robo4earth Synchrone und Asynchrone Blöcke
Tabelle: Synchrone und asynchrone Anweisungsblöcke der Robo4earth App

Synchrone Blöcke

Synchrone Anweisungen werden nach der Reihenfolge im Programm und bis zum Ende ausgeführt. Das Programm wird währenddessen pausiert (blockiert) und die nächste Anweisung wird erst dann gestartet, wenn die synchrone Anweisung ausgeführt wurde. Es wird also eine Anweisung nach der anderen ausgeführt.

Asynchrone Blöcke

Bei der Programmierung mit asynchronen Anweisungen muss darauf geachtet werden, dass sie genug Zeit haben, gehört oder gesehen zu werden. Des Weiteren sollte darauf geachtet werden, dass die LEDs nicht an bleiben, wenn das Programm fertig abgespielt wurde.

Asynchrone Anweisungen werden erledigt, wenn es gerade geht oder wichtig ist und das restliche Programm kann weiterlaufen, während man auf einen Input wartet oder wenn gerade nichts passiert. Also zum Beispiel wird auf ein Signal dann reagiert, wenn es anliegt oder ein Klang wird nur gestartet und dann sofort eine Bewegung ausgeführt. Das kann so schnell gehen, dass die Robo4earth dadurch scheinbar mehrere Dinge gleichzeitig tun kann. Zum Beispiel kann sie sich drehen, während sie einen Klang spielt und ein Bild zeigt.

Eine asynchrone LED-Anzeige-Anweisung wird aber nur so lange ausgeführt, bis die nächste Anweisung die vorangehende überschreibt. Wenn zum Beispiel der Block Schalte Display aus direkt nach dem Block Zeige Fröhlich liegt, wird das Bild Fröhlich nur den Bruchteil einer Sekunde oder gar nicht angezeigt. Auf der anderen Seite wird das Bild nicht mehr ausgeschaltet, wenn kein anderer synchroner Anzeigeblock oder ein Schalte Display aus später im Programm folgt. Asynchrone Klangbausteine werden immer fertig abgespielt. Das kann dazu führen, dass sich ein Klang und eine darauf folgende Melodie überlagern.


Programm- & Menüfunktionen


Programm speichern

Robo4earth Programm speichern
Erstmaliges Anklicken von Speichern nach Neu-Laden der App

Um ein Programm zu speichern, klicke auf den Speichern Knopf. Wenn noch kein Programm ausgewählt wurde (nach dem Neu-Laden der App zum Beispiel), fragt die App, wie sie das Programm nennen soll. Gib einen Namen ein und drücke Ok.

Wenn ein Programm gespeichert oder geladen wurde, dann wird dieses in der Programmauswahl (unter Wähle ein Programm) angezeigt und beim Klicken von Speichern überschrieben. Unter Programm -> Speichern Unter, kannst du das aktuelle Programm im Arbeitsbereich unter einem neuen Namen speichern.

Robo4earth App als PWA über Widget geöffnet
Das gespeicherte Programm wird in der Programmauswahl angezeigt

Die Programme werden beim Speichern auf dem Gerät im Cache abgelegt.

Programm laden

Um ein Programm zu laden, wähle es in der Programmauswahl aus und klicke auf Laden. Das Programm wird dann in den Arbeitsbereich geladen.
Aber Achtung!Alles, was zu dem Zeitpunkt im Arbeitsbereich ist, wird dabei überschrieben.

Programm löschen

Lösche einzelne Blöcke oder Abschnitte aus deinem Programm, indem du den Abschnitt über das Papierkorb Symbol rechts unten im Arbeitsbereich ziehst und dort loslässt oder sie nach links aus dem Arbeitsbereich ziehst und dort loslässt.

Um ein ganzes Programm zu löschen, wähle es im Programm Dropdown Menü aus und klicke auf Löschen. Das Programm wird vom Gerät gelöscht und kann nicht wiederhergestellt werden.

Alle Programme löschen

Um alle erstellten Robo4earth Programme vom Gerät zu löschen, wähle Menü -> Speicher leeren.

Hast du schon Erfahrung mit JavaScript und/oder Python? - Dann könnte das für dich interessant sein! Fortgeschrittene können die Robo4earth auch in Make:Code mit JavaScript und Python programmieren.


Troubleshooting


Fehlerquellen können sein:

  • Die Chrome Version ist älter als Version 56. Wenn das letzte Update vor 2017 war, solltest du deinen Chrome Browser updaten.
  • Ihr Gerät hat kein Bluetooth.
  • Bluetooth oder Standortfreigabe ist nicht aktiviert.
  • Du verwendest keinen der folgenden Browser: Chrome, Opera oder Samsung Internet.
  • Du verwendest ein iOS-Gerät (iPad oder iPhone)

  • Bei der Programmierung über einen Laptop mit Windows kann es zu Problemen und Unregelmäßigkeiten bei der Bluetooth Verbindung kommen.
  • Die Batterien am Roboter sind leer oder schwach.
  • Die Internetverbindung ist schwach. Befolge die Schritte in Die App offline verwenden.

Überprüfe das Programm. Werden asynchrone Bild- oder Klang-Anweisungsblöcke verwendet? Um sicherzugehen, dass es nicht an der Programmierung liegt, tausche die asynchronen Blöcke im Testprogramm durch synchrone Blöcke aus (Schreibe … am Display, Zeige ... für ... Sekunden, spiele Melodie ...) und probiere es erneut. Worauf man beim Programmieren mit asynchronen Anweisungsblöcken achten muss, kannst du im Abschnitt: Was sind synchrone/asynchrone Blöcke? nachlesen.

Nachdem die HEX Datei erfolgreich auf den Micro:bit geladen wurde, kann man den Namen des Micro:bit über den Verbinden-Dialog der Web-App finden. Beim Drücken auf den blauen Verbinden Knopf in der Web-App werden alle aktiven Micro:bits, die sich in der Nähe befinden, mit ihrem Namen in eckigen Klammern angezeigt.


FAQs


Eine HEX Datei enthält die Programmierung für den Micro:bit in Maschinensprache (binäre Daten). Man benötigt eine HEX Datei, um den Micro:bit zu programmieren. Wer es ganz genau wissen will, kann auf Wikipedia nachlesen. Die Rob4earth HEX Datei kann man direkt von der Web-App beziehen indem man auf Menü klickt und HEX Datei herunterladen auswählt.

Das Programm kann über den Stopp Button in der App nur zwischen zwei Anweisungsblöcken gestoppt werden. Dauert ein Block sehr lange (zum Beispiel Vorwärts für 9 Sekunden) und will man den Roboter sofort stoppen, kann man am Roboter den rechten Micro:bit Button lange (ca. 2 Sekunden) gedrückt halten und dann loslassen. Damit wird das Programm am Roboter sofort abgebrochen und die Motoren gestoppt.

Nachdem die HEX Datei erfolgreich auf den Micro:bit geladen wurde, kann man den Namen des Micro:bit über den Verbinden-Dialog der Web-App finden. Beim Drücken auf den blauen Verbinden Knopf in der Web-App werden alle aktiven Micro:bits, die sich in der Nähe befinden, mit ihrem Namen in eckigen Klammern angezeigt.

Man kann die Robo4earth mit dem Micro:bit V1 mit unserer Robo4girls App programmieren. Diese findet man unter robo4earth.zimd.at. Hier findet man auch die richtige HEX Datei zum Herunterladen für den Micro:bit V1 unter Menü->HEX Datei herunterladen.

Die App ist fast gleich wie die Robo4earth App, unterstützt aber nur Funktionalitäten des Micro:bit V1 und sie wird von uns nicht mehr weiterentwickelt. Achtung! Die Motoren sind hier auf höchste Geschwindigkeit eingestellt und die Robo4earth zischt richtig ab. Nutze die Geschwindigkeitseinstellung in der Kategorie Einstellungen am Anfang deines Programms, um die Motorgeschwindigkeit zu verringern.

Der Micro:bit V1 hat keinen Onboard-Lautsprecher. Um Melodien hören zu können, musst du einen passiven Piezo Buzzer kaufen und ihn an den Pin 0 und GND am Micro:bit bzw. am Motor Driver Board anschließen. Dafür kannst du die Breakout Pins am Motor Driver Board verwenden.