Unterrichts- und Lernmaterial für Mikrocontroller
Unterrichts- und Lernmaterial fürMikrocontroller

Einführung in die Scratch Programmierung mit mBlock

Das kostenfreie Programm mBlock ist eine graphisch Benutzeroberfläche, die auf dem Open Source Code Scratch 2.0 basiert. Mit ihr ist es möglich, Arduino Projekte - ohne eine einzige Programmzeile klassischer Programmiersprachen wie C, C++, Python o. a. zu benutzen - nur durch das puzzlemäßige Aneinanderfügen algorithmischer Bausteine so umzusetzen, dass der Mikrocontroller auf dem Arduino Board genau das tut, was man von ihm erwartet. mBlock eignet sich besonders gut für Anfänger, da sich die algorithmischen Bausteine nur syntaktisch korrekt kombinieren lassen.

Die Benutzeroberfläche

Nach dem Herunterladen des Programms aus dem Internet wird die Installation durch einen Doppelklick auf die EXE-Datei gestartet. Die Installation schließt ab mit einem Klick auf den Button "Fertigstellen". Wird zusätzlich das Feld "mBlock starten" markiert, erfolgt ein erster Start des Programms mBlock, das sich dann mit folgendem Startbildschirm meldet, der sich aus vier Bereichen zusammensetzt.

Links oben befindet sich die "Stage", in der Zeichnungen und bewegte Bilder (Sprites) angezeigt werden.

Links unten ist das sogenannte "Sprite-Panel". Dort lassen sich neue Sprites anlegen.

Ganz rechts ist der "Script-Bereich"; hier werden alle Befehlsblöcke per Drag und Drop aus dem mittleren Fenster abgelegt.

Das mittlere Fenster enthält drei Register: Skripte, Kostüme und Klänge. Das Register Skripte enthält zehn verschieden Kommandoblöcke. Wann man welchen nutzt, werden wir in der ersten Übung genauer untersuchen.

Abbildung 1 - Startbildschirm von mBlock

Die Oberflächensprache ist nach der Installation Englisch; sie lässt sich über das Hauptmenü "Language - Deutsch" umstellen.

Abbildung 2 - Einstellung der Benutzersprache für das Programm mBlock.

Über das Hauptmenü wird als nächstes über Boards - Arduino UNO die benutzte Computing Plattform ausgewählt. In meinem Fall ist es der Arduino UNO. Die Verbindung des PC oder Laptop mit dem gewählten Board wird über das Hauptmenü Verbinden - serieller Port und Auswahl des zugeordneten COM-Ports hergestellt.

Mit dem letzten Schritt wird die Firmware aktualisiert. Dazu wird über das Hauptmenü Verbinden - Upgrade Firmware aufgerufen und solange gewartet, bis der Vorgang abgeschlossen ist.

Damit ist das Programm jetzt startbereit für eine erste Übung.

Übung 1 - Eine LED einschalten

Als erste Übung soll eine mit einem Vorwiderstand versehene LED eingeschaltet werden. Ihre Anode ist mit dem digitalen Pin 3, die Kathode mit GND verbunden. Über diese einfache Schaltung lernt man die Oberfläche von mBlock und die Möglichkeit mit Befehlsblöcken grafisch zu arbeiten kennen. Die dazugehörige Schaltung zeigt das folgende Bild.

Schaltbild

Abbildung 3 - LED-Schaltung
Eine LED einschalten
Material
  • 1x  Steckbrett
  • 1x  LED rot
  • 1x  Widerstand, 220 Ohm (rot-rot-braun)
  • 2x  Steckdraht
  • 1x  Arduino UNO Board mit USB-Kabel
Aufgabe
  • Baue die Schaltung nach Schaltskizze auf.
  • Verbinde das Arduino UNO Board mit dem PC.
  • Starte die Software mBlock und setze die Befehlsblöcke so, wie in Abb. 4 gezeigt.
  • Speichere die Ablauffolge unter LED_An.sb2 auf der Festplatte ab.
  • Starte das Programm über die grüne Flagge im Stage-Fenster (oben links).

Anordnung der Befehlsblöcke

Bemerkungen

Der Zugang zur Problemlösung der Aufgabenstellung erfolgt über die Formulierung von frei formulierten Handlungsanweisungen, die auf Kenntnissen der Beschaltung einer LED basieren.

  • Eine LED leuchtet nur dann, wenn ihre Anode mit dem Pluspol und die Kathode mit dem Minuspol der Schaltung verbunden sind.

Die Kathode ist in der Schaltung über den Widerstand mit GND verbunden. Die Anode ist mit dem digitalen Ausgang 3 des Arduino UNO verbunden, der bei Programmstart immer auf 0 liegt.

  • Setze den digitalen Pin3 auf 1 (HIGH)

schaltet die LED durch, sie leuchtet. Wann sie das tun soll, muss dem Controller ebenfalls gesagt werden. Im Programm mBlock zukünftig immer dann, wenn die grüne Flagge angeklickt wird:

  • Wenn grüne Flagge angeklickt wird, dann ...
  • setze den digitalen Pin3 auf HIGH

bewirkt, dass die LED zu leuchten beginnt.

Weiterführende Aufgaben

  1. Ordne Befehlsblöcke so an, dass die LED für 3 Sekunden eingeschaltet wird und dann wieder ausgeht. Wie sieht ein möglicher Ablaufplan aus?
  2. Ordne Befehlsblöcke so an, dass die LED in ständigem Wechsel eine Sekunde ein- und eine Sekunde ausgeschaltet wird. Wie muss ein Ablaufplan dazu aussehen?
  3. Ordne Befehlsblöck so an, dass drei LEDs (rot, gelb und grün) sich wie eine Ampelanlage verhalten. Das heißt, die rote Phase leuchtet 10s, rot-gelb leuchtet 1s, grün leuchtet 10s und gelb leuchtet 1s.

Mögliche Lösungen zu den weiterführenden Aufgaben

Aufgabe 1

Aufgabe 2

Aufgabe 3

Übung 2 - Ein Taster schaltet eine LED ein und aus

Mit einem Taster wird eine LED ein- bzw. ausgeschaltet. So lange die Taste gedrückt wird, leuchtet die LED, ansonsten erlischt sie.

Ein Taster schaltet eine LED ein und aus
Material
  • 1x  Steckbrett
  • 1x  LED rot
  • 1x  Widerstand, 220 Ohm (rot-rot-braun)
  • 1x  Widerstand, 10 kOhm (braun-schwarz-orange)
  • 1x  Taster
  • 7x  Steckdraht
  • 1x  Arduino UNO Board mit USB-Kabel
Aufgaben
  • Baue die Schaltung nach Schaltskizze auf.
  • Verbinde das Arduino UNO Board mit dem PC.
  • Starte die Software mBlock und setze die Befehlsblöcke so, wie in Abb. 5 gezeigt.
  • Speichere die Ablauffolge unter LED_Taster_1.sb2 auf der Festplatte ab.
  • Aktualisierte über das Hauptmenü Verbinden - Upgrade Firmware die Firmware.
  • Starte das Ausführungsprogramm über die grüne Flagge im Stage-Fenster oben links.
  • Überprüfe, ob die rote LED aufleuchtet, solange die Taste gedrückt wird.

Schaltskizze

Abbildung 4 - Beschaltung von LED und Taster. Dx bezeichnet den digitalen Pin x.

Anordnung der Befehlsblöcke

Abbildung 5 - Anordnung der Befehlsblöcke für einen Taster und eine LED.
Druckversion | Sitemap
© Reinhard Rahner - Gettorf