BlocklyProp ist eine visuelle Programmiersprache (VPL) der Fa. Parallax, mit der sich die Programmiergrundlagen für Mikrocontroller und Sensoren leichter verstehen lassen. Wer bereits Scratch-Erfahrungen hat, wird sich in BlocklyProp sofort wohlfühlen. Man arbeitet mit sogenannten logischen Code-Blöcken, die wie Bausteine ineinander gefügt werden müssen. Das vereinfacht das Programmieren erheblich, da übliche Fehlerquellen (Groß- und Kleinschreibung, fehlende Kommata oder Semikolons, usw. ) nicht auftreten können und man sich nur noch auf das zu lösende Problem konzentrieren kann.
Darüber hinaus lässt sich über einen Button sofort von der VPL zur Quellcode-Seite umschalten und erfährt dort, wie das Programm in der Programmiersprache C aussieht.
Für Programmieranfänger ist die BlocklyProp Oberfläche ein optimaler kostenfreier Zugang, um erste Erfahrungen mit der Programmierung von Sensoren, Robotern oder anderen Geräten zu sammeln.
Anders, als sonst üblich, erfolgt die gesamte Projektentwicklung über das Internet (Internet of Things - IoT). Über einen kostenfreien Client, der zunächst auf dem eigenen Rechner installiert werden muss, bekommt man Zugang zur Programmoberfläche BlocklyProp. Entwickelt dort seine Projekte und speichert sie bei Bedarf auch dort ab. Der Projektentwickler entscheidet, ob sein Projekt in der BlocklyProp-Community öffentlich gemacht wird oder privat bleibt.
Wer bereits über ein Propellerboard verfügt (Propeller Activity Board, Propeller Board of Education), kann direkt in die visuelle Programmierung einsteigen. Das ist besonders für Schulen, die bereits über diese Hardware verfügen, interessant. Eine finanziell günstige Variante ist das Propeller FLiP-Modul, das sich auf einem Steckbrett mit beliebigen Sensoren, Tastern, grafischen Anzeigen etc. verbinden lässt.
Wie kann in der Schule damit gearbeitet werden?
Ist der BlocklyPropClient auf dem Rechner geladen, steht einer Projektentwicklung mit graphischer Oberfläche nichts mehr im Wege. Wie das geht, wird in den folgenden Übungen beschrieben.
In der ersten Übung soll einer der beiden fest verdrahteten LEDs (P26) auf dem Propeller Board of Education zum Blinken gebracht werden.
Einfacher Blinker | |
Material |
|
Aufgaben |
|
Wenn man sein Programm nicht der BlocklyProp Gemeinde zeigen möchte, belässt man die Sharing-Voreinstellung auf "Private" und beendet die Eingabe durch ein Klick auf den Button "Finish". Es öffnet sich die Arbeitsoberfläche von BlocklyProp.
Der rosa unterlegte Button im Programmkopf von BlocklyProp signalisiert, dass noch kein Client geladen ist ("BlocklyPropClient is not running").
Starte den BlocklyPropClient und klicke auf den Button "Connect". Der rote Hinweisbutton sollte nach einer kurzen Zeit verschwunden sein.
In der linken, grau unterlegten Spalte des BlocklyProp Editorfensters finden sich alle Blockoperatoren, jeweils zusammengefasst in spezifischen Untergruppen, mit denen sich ein Programm aufbauen lässt. Durch einfaches Anklicken werden sie angezeigt.
Wie lässt sich die LED P26 zum Blinken bringen?
Beschreibe dazu mit einfachen Worten, was der Propeller Controller tun muss, damit P26 blinkt. Eine mögliche Handlungsanweisung (Pseudocode) könnte so aussehen:
Noch etwas anders ausgedrückt ließe sich auch schreiben:
Die Übertragung der Befehlsfolge in den BlocklyProp Editor gestaltet sich einfach. Die Blockoperatoren für Repeat forever (wiederhole immer wieder) und Pause (ms) befinden sich im Registerfeld CONTROL, die für Make Pin 26 HIGH/LOW im Registerfeld PIN STATES. Durch einfaches anklicken werden sie in das Editorfeld gezogen und so "zusammengesetzt", wie in Abb. 3 gezeigt.
Um sich zu überzeugen, ob die Überlegungen alle richtig waren und der logische Programmaufbau korrekt, wird jetzt das Programm über den grünen nach unten weisenden Pfeil oberhalb der Blockoperatoren zum Laufen gebracht. Nach kurzer Zeit beginnt P26 zu blinken. Allerdings nicht im Sekundentakt, sondern alle zwei Sekunden.
Lösung
Im Feld des Blockoperators pause (ms) muss der Wert 1000 in 500 abgeändert werden. Dazu wird in das Fenster geklickt und der neue Wert hineingeschrieben.
Es gibt zwei pause (ms) - Operatoren; bei beiden muss der Wert 500 eingetragen sein.
Nach einem neuerlichen Start des Programms blinkt LED P26 im Sekundentakt.
Über das Terminal kannst du an den Propeller Controller Fragen stellen und Antworten bekommen. Der Controller antwortet aber nur das, was du ihm vorher einprogrammiert hast. Selbst findet er (noch) keine Antworten. In dieser Übung lernst du, wie man mit dem Controller "spricht" und das Terminal ansteuert.
Das Terminalfenster | |
Material |
|
Aufgaben |
|
Das Programm terminalausgabe
Ausgabe im Terminalfenster
Das Terminalfenster | |
Material |
|
Aufgaben |
|
Das Programm Dialog
Ausgabe im Terminalfenster
Die Textausgabe im Terminalfenster ist an einer Stelle nicht ganz fehlerfrei in der Darstellung. In der zweiten Zeile scheint ein Buchstabe zu fehlen; stattdessen wird ein kleines hochgestelltes Quadrat gezeigt. Das liegt daran, dass das Programm den deutschen Buchstaben "ß" nicht ausdrucken kann. Gleiches gilt übrigens auch für die deutschen Umlaute: ä, ö und ü.
Ändere den Text im BlocklyProp-Programm ab, indem statt "heißt" neu "heisst" geschrieben wird und starte das Programm noch einmal.
Jetzt bist du dran!
Denke dir selbst ein Gespräch aus, das du mit dem Controller führst und lasse es so aussehen, als ob der Controller "wirklich" mit dir spricht. Er könnte zum Beispiel
und entsprechende Antworten von dir in einem Folgesatz einbauen.
Einfache Blinkerschaltungen kennt jeder aus seinem täglichen Umfeld: Blinker im Autoverkehr, im Drucker, Warn-Leitsysteme auf Autobahnen usw. In Übung 1 wurde eine einfache Blinkerschaltung bereits vorgestellt. Die Blinkerschaltung dieser Übung wird auf einem Steckbrett nach Schaltskizze aufgebaut, die Blockoperatoren für das Programm im Editor zusammengestellt und - wenn alles gut läuft - fängt die LED nach einem Programmstart an zu blinken.
Ein einfacher Blinker | |
Material |
|
Aufgaben |
|
Schaltskizze
Schaltungsaufbau
Das Programm "einfacher Blinker"
Aufgaben
In dieser Übung werden drei LEDs auf dem Propeller Board of Education mit den Ports 8, 9 und 10 des Propeller-Controllers verbunden. Da die fest verdrahteten LEDs auf dem Board nicht in der Reihenfolge einer Ampel-Signalanlage verdrahtet sind, geht es nur darum, dass die Farbfolgen entsprechend richtig dargestellt werden. Alternativ können aber auch drei auf dem Steckbrett untereinander angeordnete LEDs mit einem Vorwiderstand von je 470 Ohm an die o.g. Ports angeschlossen werden.
Ampelschaltung | |
Material |
|
Aufgaben |
|
Schaltskizze
Schaltungsaufbau
Das Programm Ampelschaltung
Die folgende Übung besteht aus einem Taster und einer LED, die angeht, sobald der Taster gedrückt wird und ausgeht, wenn der Taster nicht gedrückt ist.
Der Schaltungsaufwand bleibt minimal, da die fest verdrahteten LEDs auf dem Parallax Board of Education benutzt werden. Benutzt man ein Parallax Activity Board muss der Schaltkreis aus LED und Vorwiderstand separat auf dem Steckbrett zusammen mit dem Taster aufgebaut werden.
Tasterschaltung | |
Material |
|
Aufgaben |
|
Schaltskizze
Schaltungsaufbau
Das Programm taster_1
Über den Umschalt-Button "Code" kann jederzeit von der Darstellung der Blockoperatoren auf den hinterlegten Propeller-C Code umgeschaltet werden.
Wer mehr über die Sprache C erfahren oder sie erlernen möchte, klickt hier.
In den folgenden Übungen wird mit Hilfe der visuellen Programmieroberfläche BlocklyProp eine Folientastatur programmiert. Interessiert? Dann geht es hier weiter ->