Mit Arduino und mBlock kannst Du auf einfache Art und Weise viele Projekte grafisch realisieren. Zudem könnte man die Programmierumgebung als eine Art Baukastensystem verstehen, in dem jeder Bauklotz eine unterschiedliche Funktion in einem Programm hat. Im Gegensatz zu anderen Umgebungen wird das Programm aber nicht eingetippt, sondern mit der Maus zusammengebaut.
Inhaltsverzeichnis
Wie kann man Arduino Projekte mit mBlock umsetzen?
Wenn Du Arduino Projekte mit mBlock realisieren möchtest, dann kommt an allererste Stelle immer die Idee. Danach folgt die eigentliche Denkarbeit, in der Du die Idee in einen logischen Ablaufplan mit Blöcken umsetzen musst. Die Umgebung mBlock nimmt Dir die Denkarbeit nicht ab, aber Du kannst Dich damit auf das Wesentliche konzentrieren. Wir zeigen dir hierzu anhand eines kleinen Beispiels mit Arduino, wie das funktioniert. Den richtigen Umgang mit dem PC und einzelne Basics im Coden kannst Du in unserem Computerkurs erlernen.
Arduino mit mBlock: Programm herunterladen und installieren
Um Arduino Projekte mit mBlock umsetzen zu können, musst Du zuerst das Programm herunterladen und installieren. Den Link dazu gibt’s hier. Der Anbieter stellt Dir drei Varianten von mBlock kostenlos zur Verfügung:
- Die Online-Variante für den Chrome Browser ohne Download
- Ein Programm zum Download für Windows und Mac
- Eine App für Android und iOs
Alle Varianten des Programms ähneln sich sehr stark, deshalb funktioniert das folgende Beispielprojekt auf allen Systemen gleich. Wir haben z.B. die Windows-Version von mBlock benutzt. Bitte wähle für Dein Coding Projekt aus einer der drei Möglichkeiten und installiere das Programm, wenn nötig, auf Deinem Rechner. Gerne helfen wir Dir auch beim Arduino Download.
Gewusst?
Es gibt Schulen, die Arduino mit mBlock in der Lehre einsetzen. Beispielsweise lernen Schüler am Gymnasium Oberursel in einem Kooperationsprojekt mit der Hochschule Darmstadt, wie Roboter mit Arduino mittels mBlock gesteuert werden können.
Voraussetzungen für Dein Arduino mit mBlock Projekt
Du willst bestimmt mit Arduino und mBlock starten. Deshalb wollen wir Dich nicht länger auf die Folter spannen und ein Beispiel sagt ohnehin mehr als viele Worte. Wenn man eine neue Coding-Sprache lernt, dann ist das „Hallo Welt“- Programm mittlerweile zu einer Tradition geworden. Hierbei lernt der Programmieranfänger, wie er die Worte „Hallo Welt“ per Programm auf den Bildschirm ausgeben kann.
Bei Arduino mit mBlock könnte man das Beispiel „Blinkende LED“ als „Hallo Welt“-Projekt bezeichnen, denn es ist einfach zu verstehen. Dafür wird eine Leuchtdiode (LED) an einen digitalen Ausgang am Arduino Board „UNO“ angeschlossen und per mBlock-Programm zum Blinken gebracht. Wenn alles fehlerfrei funktioniert, dann solltest Du mit anspruchsvolleren Elektronik Projekten weitermachen (vgl. Bartmann 2015).
Der Vorwiderstand
Um Deine Arduino Idee mit mBlock umsetzen zu können, solltest Du Dich mit dem Vorwiderstand auskennen. Denn eine Leuchtdiode ist relativ empfindlich und damit der Strom sie nicht kaputt macht, muss er mit einem Vorwiderstand begrenzt werden. Die entsprechenden Datenblätter im Internet besagen, dass rote Leuchtdioden Spannungen zwischen 1,6 V bis 2,1 V (Volt) benötigen und dabei Ströme von 10 mA bis 20 mA (Milliampere) fließen, je nach Bauart. Um die Schaltung in der Abbildung unten lesen zu können, solltest Du außerdem noch wissen, dass man in der Elektronik Spannungen mit „U“, Widerstände mit „R“ und Ströme mit „I“ angibt. Die dazugehörigen Einheiten heißen Volt (V), Ohm (Ω)und Ampere (A). Die blauen Pfeile sollen die Spannungen an den Bauteilen und zwischen PIN 13 und GND (Ground) darstellen.
Wir wählen für unseren realen Vorwiderstand 220 Ω, denn dieser Wert gehört zu einer Standardreihe und ist in vielen Elektronikbaukästen zu finden. So genau muss es nicht sein, da diese Bauteile ein bisschen mehr oder weniger Strom vertragen können. Die Widerstände unterscheidet man anhand des Farbcodes, den wir an dieser Stelle erst einmal noch nicht erklären, weil das für unser erstes Projekt zu weit führen würde. Es gibt jedoch unzählige Seiten im Internet, die Dir helfen, den Farbcode zu bestimmen. Unsere 220 Ω entsprechen wie bereits erwähnt dem Farbcode: „Rot, Rot, Braun, Gold. Nun kennst Du Dich mit dem Vorwiderstand aus und kannst Dein Arduino Projekt mit mBlock umsetzen.
Der Schaltungsaufbau
Für die Schaltung benötigst Du folgende Komponenten:
- Ein Arduino Uno Board mit Netzteil und USB-Datenkabel
- Eine rote Leuchtdiode
- Einen Widerstand mit 220 Ω (Ohm), Farbcode: Rot, Rot, Braun, Gold
- Eine Steckplatine (auf English auch als Breadboard bezeichnet)
Achtung
Bitte verwende den Lötkolben nur unter Aufsicht Deiner Eltern bzw. einer erwachsenen Person!
Du kannst die Bauteile auch verlöten, wenn Du keine Steckplatine zur Hand hast. Falls Du das noch nie gemacht hast, dann solltest Du dafür Deine Eltern um Unterstützung bitten. Benötigt werden dazu ein Lötkolben und etwas Lötzinn. Falls Du eine Steckplatine besitzt, dann baue die Schaltung so wie in folgender Abbildung auf. Dabei wird das lange Beinchen der Leuchtdiode als Anode (+) bezeichnet und mit dem Vorwiderstand an PIN 13 angeschlossen. Im Gegensatz dazu wird das kurze Beinchen als Kathode (-) bezeichnet und an GND (Ground) angeschlossen. Die Polung der Leuchtdiode ist wichtig, da sie nur leuchtet, wenn sie in Durchlassrichtung gepolt wird. Bei falscher Polung sperrt sie den Strom und wird deshalb nicht leuchten.
Dazu ist noch zu sagen, dass die vertikalen Lochreihen der Steckplatine miteinander elektrisch verbunden sind. Auf der Abbildung wurden sie mit der Farbe hellgrün hervorgehoben.
Falls Du keine Steckplatine aber einen Lötkolben zur Hand hast, dann kannst Du den Vorwiderstand mit der Leuchtdiode auch wie auf der folgenden Abbildung verlöten. Dafür solltest Du eDeine Eltern um Unterstützung bitten, falls Du Dich nicht damit auskennst. Danach stecke die beiden blanken Enden der Drähte in Pin 13 und GND des Gerätes. Achte dementsprechend bitte auf richtige Polung, wie oben bereits erklärt. Damit bist Du der Umsetzung Deines Arduino Projektes mit mBlock noch einen Schritt nähergekommen.
Arduino mit mBlock: Beispielprojekt in 6 Schritten
Nun geht es darum, auf Deinem Arduino mBlock zum Laufen zu bekommen. Starte zuerst mBlock und warte, bis es vollständig geladen wurde. Danach wähle den Tab „Geräte“ unten links aus und klicke auf „hinzufügen“.
Hierdurch öffnet sich ein Dialog, in dem alle Geräte angezeigt werden, die das Programm unterstützt. Wähle anschließend aus der Liste das Gerät „Arduino Uno“ aus. Falls Du dieses Gerät noch niemals zuvor ausgewählt hast, dann klicke zuerst auf den blauen Kreis mit dem Symbol „+“. Dadurch werden die entsprechenden Einstellungen heruntergeladen. Ansonsten wähle einfach „Arduino Uno“ aus und klicke auf „OK“.
Nun benötigt Dein Arduino noch mBlock: Das Programm, das die Leuchtdiode zum Blinken bringen soll. Wir zeigen Dir im Folgenden, wie Du das Programm erstellst und zum Laufen bringst. Hierzu folge einfach den Schritten 1 bis 6.
1. Wenn Arduino Uno startet
Klicke auf „Ereignisse“ und ziehe den Block „wenn Arduino UNO startet“ in den Bereich „Blöcke“ auf der rechten Seite des Fensters. Alle weiteren Programmblöcke, die an diesen Block angeheftet werden, kommen erst zur Ausführung, wenn der Arduino gestartet wurde.
2. Die „Wiederhole fortlaufend“- Schleife
Klicke nun auf „Steuerung“ und ziehe den Block „wiederhole fortlaufend“ in den Bereich „Blöcke“ auf der rechten Seite und hefte ihn an den ersten Block an. Dieser Block wird als Endlosschleife bezeichnet, weil alle Blöcke die sich innerhalb dieses Blockes befinden, endlos oft ausgeführt werden. Das „Endlos“ bedeutet in diesem Fall, solange Arduino mit mBlock eingeschaltet ist.
3. Pin 13 als „hoch setzen“
Klicke auf „Pin“ und ziehe den Block „digitalen Pin von Ausgang 9 als hoch setzen“ in den Bereich innerhalb des Blocks „wiederhole fortlaufend“. Ändere dann den Ausgang von 9 in 13. Ein digitaler Ausgang kann zwei Spannungswerte annehmen: fünf Volt bedeutet „hoch“ und null Volt bedeutet „niedrig“. Die Leuchtdiode wird durch ein „hoch“ am Pin 13 angeschaltet.
4. Warte eine Sekunde
Nun musst Du eine Sekunde lang warten, bis der nächste Block ausgeführt wird. Klicke dafür auf „Steuerung“ und ziehe den Block „warte 1 Sekunde(n)“ in den Bereich „Blöcke“ und hefte ihn an den blauen Block an.
Hilfreicher Tipp:
Mit einem Rechtsklick auf einem Block öffnet sich ein Kontextmenü. Wähle darin den Menüpunkt „Duplizieren“ aus, um ein oder mehrere Blöcke zu verdoppeln. Du kannst sie dann an einer anderen Stelle im Programm wieder einfügen. Das erspart Dir Arbeit und Du musst gleiche Blöcke nicht immer wieder von neuem heraussuchen und platzieren.
5. Pin 13 als „niedrig“ setzen und warten
Um mit Deinem Arduino Projekt mit mBlock fortzufahren, wiederhole die Schritte 3 und 4, indem Du noch einmal einen Block „digitalen Pin von Ausgang 9 als hoch setzen“ anheftest. Beachte aber, dass Du den Ausgang wieder auf 13 setzt und ihn dieses Mal auf „niedrig“ einstellst. Zum Schluss heftest Du noch einmal den Block „warte 1 Sekunde(n)“ an, damit das vollständige Programm so aussieht, wie in der folgenden Abbildung zu sehen ist:
6. Arduino mit mBlock: Beispielprojekt hochladen & starten
Vergewissere Dich noch einmal, dass das Board korrekt mit dem Kabel an den USB-Port des PCs angeschlossen ist. Das Board benötigt die Stromversorgung und die Datenverbindung des Ports. Wenn alles OK ist, dann klicke auf „Verbinden“.
Der korrekte USB-Port mit Deinem angeschlossenen Arduino sollte von mBlock automatisch erkannt werden. Diese Portnummer muss aber nicht unbedingt COM10 sein, so wie in der Abbildung zu sehen ist. Es könnte sich bei Deinem Computer um eine andere COM-Portnummer handeln.
Daraufhin klicke auf „Verbindung“, um die Datenverbindung zwischen PC und Arduino aufzubauen.
Mit einem Klick auf „Hochladen“ wird Dein Programm in den Speicher geladen. Auf der rechten Seite befindet sich der Button für den „Live Mode“, mit dem Du das mBlock-Programm bei der Ausführung Schritt für Schritt überwachen kannst. Dieser Modus wird für dieses Beispiel aber nicht benötigt. Klicke also nur auf „Hochladen“.
Wenn Du alles richtig gemacht hast, dann müsste die Leuchtdiode nun anfangen zu blinken. Sie ist dann eine Sekunde lang hell und eine Sekunde lang dunkel und das in ewiger Wiederholung. Wenn etwas nicht funktioniert, dann überprüfe, ob Du alle Kabel korrekt eingesteckt hast. Es könnte auch sein, dass Du die Leuchtdiode falsch herum angeschlossen hast.
Übersichtstabelle zu den mBlock-Anweisungen
In der folgenden Tabelle erhältst Du einen Überblick über alle Arduino mit mBlock Anweisungen, die im Beispielprojekt benutzt wurden. Die Programmierumgebung bietet noch etliche weitere Anweisungen, die wir eventuell in zukünftigen Projekten benutzen werden.
Tabelle 1: Übersicht aller Anweisungen für Arduino mit mBlock
mBlock-Anweisung | Kategorie | Erklärung |
„Wenn Arduino UNO startet“ | Ereignisse | Dieser Block wartet, bis der Arduino gestartet wurde. Danach werden alle Blöcke ausgeführt, die an diesen Block angeheftet sind. |
„Digitalen Pin von Ausgang 9 als hoch setzen“ | Pin | Hierdurch wird ein digitaler Ausgang mit einer bestimmten Nummer auf „hoch“ oder „niedrig“ gesetzt. Das entspricht den Spannungen 5 Volt oder 0 Volt. |
„Wiederhole fortlaufend“ | Steuerung | Alle Blöcke, die Du in diesem Block hineinheftest werden solange wiederholt, bis der Arduino ausgeschaltet wird. |
„Warte 1 Sekunde(n)“ | Steuerung | Dieser Block lässt das Programm für eine bestimmte Anzahl von Sekunden warten. |
Wir hoffen, dass Du bei der Umsetzung Deines ersten Arduino Projekts mit mBlock viel Spaß hattest. Du kennst nun schon einige Anweisungen und weißt, wie Du das Programm herunterladen und installieren kannst. Wenn Dir dieses Beispielprojekt gefallen hat, dann solltest du mit einer anspruchsvolleren Aufgabe weitermachen. Denn es gibt noch viel zu entdecken!
Literatur
Bartmann, Erik (2012): Das mBot-Buch.
Bartmann, Erik (2015): Faszinierende Elektronik-Projekte mit Scratch, Arduino & Raspberry Pi programmieren.
FAQs zu Arduino mit mBlock
MBlock ist besonders gut für Anfänger geeignet, da es sehr einfach zu erlernen ist. Weiterhin ist es grafisch sehr ansprechend und bunt, was Anfängern sehr viel Spaß macht.
Die neuste Programmierumgebung mBlock 5 unterstützt die folgenden Arduino Boards: Uno, Mega2560, Micro, Yun und Nano. Zusätzlich werden noch einige Arduino Nachbauten unterstützt. Das sind Boards, die technisch genauso funktionieren wie der originale Arduino, aber von einem anderen Hersteller angeboten werden.
Die Programmierumgebung mBlock wandelt Blöcke automatisch in die Programmiersprache Scratch um. Mit einem Klick auf das orange Symbol „</>“ kannst Du dir den entsprechenden Code anschauen. Das gleiche funktioniert auch mit der Sprache Python, die aber meist nur für mBlock-Programme genutzt wird, die nichts mit dem Arduino zu tun haben. Als Beispiel dafür könnte man Spiele nennen.
In mBlock gibt es zwei Modi, um ein Programm an den Arduino zu übertragen. Der erste nennt sich „Hochladen“ und der zweite „Live“. Bei „Hochladen“ wird das fertige Programm vollständig an den Arduino übertragen, woraufhin es startet. Im Gegensatz dazu wird im „Live-Modus“ Block für Block an den Arduino übermittelt und Du kannst in der Programmierumgebung beobachten, welcher Block gerade ausgeführt wird. Weiterhin hast Du die Möglichkeit, Dein Programm während es läuft zu ändern.
Der mBot ist ein fahrender Roboter von der Firma Makeblock, der durch einen Arduino gesteuert wird (vgl. Bartmann, 2012). Er wird von der Programmierumgebung mBlock unterstützt und eignet sich aufgrund seiner einfachen Bedienung besonders gut für Anfänger.