program-gopigo-scratch-generation-robots-1

Scratch-Programmierung mit dem Raspberry Pi und dem GoPiGo

This entry was posted in Bildung & Robotik on by Vanessa Mazzari.

Dexter Industries hat die Scratch-Programmierung und den Roboter GoPiGo für das Betriebssystem Raspbian for Robots optimiert. Sie können die neueste Version herunterladen und anhand dieser Anweisungen auf einer Speicherkarte installieren. In dem nachstehend beschriebenen Verfahren gehen wir davon aus, dass Sie Raspbian for Robots verwenden.

Anschluss Ihres GoPiGo

Bevor Sie mit der Programmierung in Scratch mit dem GoPiGo und dem Raspberry Pi beginnen, müssen Sie das Set per WiFi oder Ethernet anschließen. Wir empfehlen Ihnen, einen Blick in unser Tutorial für die Konfiguration und den Anschluss des GoPiGo per WiFi zu werfen. Bitte sehen Sie sich die nachstehende Playlist auf YouTube an.

Scratch starten

Zum Starten reicht ein Doppelklick auf das Scratch-Icon auf Ihrem Desktop.

scratch-gopigo-desktop


Jetzt öffnet sich das Fenster “Scratch for Robots”. Der Terminal Scratch Controller (schwarzes Fenster mit weißem Text) geht ebenfalls auf: nicht schließen! Im Scratch Controller-Fenster können Sie Ihren Roboter auswählen (das Bild GoPiGo muss wie im nachstehenden Beispiel angezeigt werden).

Sie können direkt mit dem Programmieren beginnen, indem Sie auf “Start Programming” klicken. Sie können auch ein Programmbeispiel auswählen, indem Sie auf “Open Examples” klicken. So erhalten Sie Zugriff auf eine Reihe von Beispielen.

gopigo Programmierung

Wenn Sie auf ein Scratch-Programm in der Liste oder auf ein von Ihnen gespeichertes Programm doppelklicken, wird ein Scratch Pop-up-Fenster angezeigt.

Scratch GoPiGo
GoPiGo Scratch Programmierung
scratch-gopigo-warning
gopigo-scratch-example-program


Jetzt öffnet sich die Roboter-Auswahl “Scratch for Robots”. Wählen Sie Ihren Roboter im Dropdown-Menü und klicken Sie dann auf “Start Programming!”.

Eine Warnmeldung informiert Sie, dass alle laufenden Scratch-Programme geschlossen werden. Sie können nur ein Scratch-Programm gleichzeitig ausführen.
Klicken Sie auf “OK”. Das Programmbeispiel wird angezeigt. Eine Warnmeldung gibt an, dass die Kommunikation eingerichtet wurde. Klicken Sie auf “OK”, jetzt sind Sie an der Reihe! Zum Einstieg wird ein Beispielauto angezeigt.

Gedächtnishilfe für Blöcke: Scratch-Anweisungen (“Broadcasts”)

Nachstehend finden Sie eine Gedächtnishilfe für die in Scratch verfügbaren Blöcke für GoPiGo. Sie können auch personalisierte Blöcke erstellen.

Weiter
Envoyez le broadcast “FORWARD” pour faire avancer le GoPiGo.

fwd-gopigo-1
back-gopigo-scratch

Zurück
Senden Sie den Broadcast “BACKWARD”, um den Roboter rückwärts zu bewegen.

left-gopigo-scratch

Nach links
Senden Sie den Broadcast “LEFT”, um den GoPiGo nach links zu bewegen.

turn_right-gopigo-scratch

Nach rechts
Senden Sie den Broadcast “STOP”, um den Roboter anzuhalten.

stop-gopigo-scratch

GoPiGo stoppen
Senden Sie den Broadcast “STOP”, um den Roboter anzuhalten.

Beschleunigen
Senden Sie den Broadcast “INCREASE SPEED”, um die Geschwindigkeit des Roboters um 10 Einheiten zu steigern.

inc-gopigo-scratch
dec-gopigo-scratch

Verlangsamen
Senden Sie den Broadcast “DECREASE SPEED”, um die Geschwindigkeit des Roboters um 10 Einheiten zu bremsen.

Leuchtstärke der LED
Ändern Sie die Leuchtkraft der LED, indem Sie den Broadcast der ID der jeweiligen LED sowie die Lichtstärke senden.
Sie haben die Wahl zwischen “LEDL” (LED links) und “LEDR” (LED rechts) und können eine Leuchtstärke zwischen 0 und 255 wählen.

led-gopigo-scratch

Erzeugen personalisierter Anweisungen auf Scratch

Auf Scratch können problemlos personalisierte Anweisungen für den GoPiGo generiert werden.
Ein im Hintergrund ausgeführtes Python-Programm gewährleistet die Zusammenarbeit mit Scratch ( GoPiGoScratch.py ). Dieses fängt die Befehle der Scratch-Schnittstelle ab und führt sie auf dem Roboter aus. Das Programm startet automatisch, wenn Sie das Scratch-Bildsymbol in Raspbian for Robots anklicken.
Um einen personalisierten Befehl zu erstellen, genügt es, eine Bedingung im Python-Code hinzuzufügen.

Beispiel:

FORWARD-Block in Scratch:

fwd-gopigo-scratch

Dem liegt folgender Python-Code zugrunde:
if msg==”FORWARD”:
if en_gpg:
fwd()
if en_debug:
print msg
Auf dieselbe Art und Weise können Sie auf dem GoPiGo kinderleicht eigene Blöcke generieren und ausführen.