#2 Sag Hallo!

Nachdem du jetzt weißt, wie du den mBot geradeaus fahren lässt, ist es an der Zeit eine andere Funktion auszuprobieren: Ton. Der Roboter lässt dich einfache Nachrichten abspielen, aber du kannst auch selbst Aufnahmen machen oder sogar Soundeffekte oder Noten nutzen. Die folgende Aufgabe ist dazu ein leichter Einstieg:

Den ersten Teil der Aufgabe kannst du jetzt schon selbst programmieren – du weißt ja bereits, wie du den mBot geradeaus steuerst. Wie sagt er aber „Hallo“? Suche dazu in den Kategorien nach einem Bereich, der etwas mit Ton zu tun hat!

Wenn du richtig gesucht hast, findest du bei AUDIO einen passenden Block:

Füge ihn in deinen Code zum geradeaus Fahren ein. Wenn du möchtest, kannst du auch weitere Soundeffekte einbauen. Dein fertiger Code sollte zumindest so aussehen:

Probiere ihn am mBot aus und freue dich darüber, dass der Roboter mit dir spricht und dich mit Musik unterhält! Auch diese Funktion kannst du dir für zukünftige Projekte merken – dein Wissen, das du immer wieder einsetzen kannst, wächst mit jedem Block!

Hier findest du nochmal einen Überblick der Blöcke, die du für diese Aufgabe verwenden konntest:

#1 Erste Schritte – vorwärts fahren

Aller Anfang ist leicht und so du kannst deine ersten Programme für den mBot 2 mit wenigen Blöcken erstellen!

Gehe dazu auf die Entwicklungsoberfläche von makeblock und füge deinen mBot über das Plus-Symbol auf der linken Seite hinzu.

Wähle im neuen Fenster dein mBot-Modell – du wirst vermutlich mit dem mBot 2 arbeiten.

Jetzt wählst du die Verbindung aus. Wenn du mit der Tablet- oder Smartphone-App arbeitest, kannst du dich direkt verbinden. Bist du auf einem Computer, wechselst du am besten zur direkten Verbindung und wählst Bluetooth- oder Kabelverbindung aus.

Wenn die Verbindung hergestellt ist, kannst du schon mit der ersten Aufgabe loslegen:

Deinen mBot in eine Richtung zu bewegen, ist nur eine Frage von drei Blöcken! Bevor du nach diesen suchst hilft es dir vielleicht zu überlegen, wie dein Programm genau funktionieren soll:

Wann startet der mBot mit der Bewegung?

Wie weiß der mBot, dass er genau 50 cm fahren soll?

Was passiert, nachdem die Vorwärtsbewegung abgeschlossen ist?

Für die erste Frage bietet dir die Entwicklungsoberfläche unter EREIGNISSE ein paar Möglichkeiten. Versuchen wir es mit dem Block:

Die zweite Frage führt dich zur Kategorie MBOT2 CHASSIS. Versuche selbst einen passenden Block zu finden, bevor du weiterliest – die Blöcke bieten dir viele Möglichkeiten die Aufgabe zu lösen, ein bestimmter Befehl hilft uns aber sie punktgenau zu erfüllen! Bist du bereit? Hier ist der passende Block:

Abschließend wollen wir dem mBot sagen, dass seine Aufgabe erledigt ist und das Programm beendet werden kann. Versuche auch hier wieder einen passenden Block zu finden, bevor die die Lösung ansiehst. Du findest ihn unter STEUERUNG:

Dein fertiges Programm sollte jetzt so aussehen – war doch gar nicht so schwer, oder?

Merke dir für zukünftige Aufgaben, dir das ‚Problem‘ in kleine Schritte aufzuteilen und dich nur auf das Wichtige zu fokussieren. Ab jetzt weißt du auch schon, wie du den mBot bewegst – du kannst dieses Wissen also in den späteren Aufgaben wieder anwenden und mit anderen Befehlen verbinden. Diese Art zu Denken und an Probleme heranzugehen nennt man Computational Thinking!

Gratulation, du hast deinen ersten Code zur Steuerung eines Roboters geschrieben! Gehe zu Aufgabe 2 und versuche auch diese Übung zu lösen!

Hier findest du nochmal einen Überblick der Blöcke, die du für diese Aufgabe verwenden konntest:

mBot 2 x BRG Gröhrmühlgasse

Führen Robotik, Coding und der Einsatz digitaler Medien wirklich zu einer Verblödung der Schüler*innen, hindern Kreativität sowie soziale Fähigkeiten und zerstören in Zukunft Arbeitsplätze? Wer so denkt, sollte besser nochmal die Schulbank drücken! Ein Projekt am BRG Gröhrmühlgasse zeigt, wie Computational Thinking mit dem mBot 2 Lernende auf die Zukunft vorbereitet!

Wer hat sich selbst nicht schon gefragt, wie ein Roboter tut, was er tut und ob Maschinen in Zukunft Menschen in der Arbeitswelt ersetzen werden? Im Zuge der Talenteförderung beschäftigen sich die Schüler*innen am BRG im Kurs Robotik für Anfänger:innen mit diesen Fragen und setzen sich das Ziel, einfache Programme zur Steuerung der mBot 2 Roboter zu erstellen, die vom Education Innovation Studio der Pädagogischen Hochschule Niederösterreich für dieses Projekt zur Verfügung gestellt werden. Als fester Bestandteil des Schulkonzepts legt das BRG den Fokus auf die individuelle Förderung und Entfaltung der persönlichen Stärken der Schüler*innen und unterstützt sie dabei, diese Fähigkeiten fächerübergreifend und produktorientiert wahrzunehmen – Kreativität, Kommunikation und Kollaboration inklusive.

Ausgehend vom Starten eines Programms über einen Tastendruck erlernen die Schüler*innen die Steuerung, den Einsatz von Ton, Licht und Bild sowie das „Zeichnen“ geometrischer Formen durch die Bewegungen des Roboters. Ein Highlight ist dabei der Einsatz der Sensoren des mBot 2. Die Jungforscher*innen programmieren den Ultraschallsensor, um Abstände zwischen Roboter und Hindernissen zu messen und diesen auszuweichen, wie auch den RGB-Sensor, um Farben,  Linien oder Buchstaben zu erkennen und selbstständig nachzufahren. Was sich zunächst wie eine Spielerei oder der Start eines automatisierten Logistikzentrums anhört, lässt die Schüler*innen aber über Zusammenhänge zwischen Anforderungen an den Roboter und dessen Interaktion mit der Umwelt nachdenken. Welche Befehle müssen so in Schleifen wiederholt und welche Situationen über bedingte Anweisungen verzweigt werden? Welche Informationen müssen in Variablen gespeichert werden, um Motoren und Sensoren punktgenau zu steuern? Wie können diese Konzepte genutzt werden, um die Sustainable Development Goals (SDGs) – die Ziele der nachhaltigen Entwicklung – der Vereinten Nationen umzusetzen und somit Technik in Einklang mit dem Bedürfnis nach einer besseren Welt zu bringen?

Das Hineinschnuppern in die Welt der Robotik und Programmierung bietet den Lernenden die Möglichkeit sich intensiv mit Computational Thinking auseinanderzusetzen und durch die aufbauenden Aufgaben Probleme zu zerlegen, Muster zu erkennen, das Wesentliche zu abstrahieren und letztendlich als Algorithmus – eine Schritt-für-Schritt-Anleitung – auszudrücken. Das Trainieren dieser Fähigkeiten stellt dabei auch die Vorbereitung der Schüler*innen auf die Herausforderungen der VUCA-Welt, eine Welt voller Schnelllebigkeit, Unsicherheit, Komplexität und Mehrdeutigkeit, dar, durch die  sie zukünftig sowohl im Arbeitsalltag als auch im Privatleben navigieren werden müssen. Kommunikation, Kollaboration, kritisches Denken und Kreativität bilden dabei die vier wichtigsten Fähigkeiten im 21. Jahrhundert, um sich zeitgenössischen Transformationen – nicht nur in der Sphäre der Technik – stellen zu können.

Weiterführendes Material

Tutorial zu Befehlen, Sensoren und komplexeren Aufgaben
Aufgabenkarten mit Hilfestellungen zu benötigten Blöcken
Buchstabenkarten zum Nachfahren mit dem 4-fach RGB-Sensor

Scratch

Scratch und Python:

Allgemeines und eine kurze Einführung zu Beetle Blocks

Beetle Blocks ist eine online frei zugängliche blockbasierte Programmierumgebung, ein Projekt von Eric Rosenbaum, Duks Koschitz und Bernat Romagosa mit zusätzlicher Softwareentwicklung von Jens Mönig. Beetle Blocks basiert auf Scratch und wurde mit Snap! und ThreeJS implementiert. Analog zu Scratch ist sie einfach in der Bedienung. Das Programm läuft im Browser, eine Installation ist nicht nötig. Die einzelnen Befehle werden per Drag & Drop zu Sequenzen verbunden, eine kindgerechte Bedienung steht im Vordergrund. Die Projekte können online oder lokal gespeichert werden.

Schritt für Schritt werden in dieser Serie mithilfe von Beetle Blocks 3D-Objekte erstellt, wobei auf die nachhaltige Einführung von Konzepten wie Variablen, Schleifen und Bedingungen besonders geachtet wird. Vor allem kommt dabei in weiterer Folge aber auch die Kreativität nicht zu kurz. Da man sich bei der Programmausführung in einem 3D-Grafikfenster bewegt, wird zusätzlich das räumliche Vorstellungsvermögen geschult.

Die Ergebnisse können als Grafik oder als STL-Dateien abgespeichert werden. Mithilfe eines 3D-Druckers lassen sich die Objekte auch ausdrucken und z.B. im Werk- oder Kunstunterricht weiterbearbeiten.

Zur Veranschaulichung sei hier ein Screenshot eingefügt:

Beetle Blocks hat einen Blockteil links, einem Editor in der Mitte und einem Graphikfenster rechts.
Im Blockteil können die verschiedenen Kategorien (Motion, Control, Shapes, …) geöffnet und dann die einzelnen Befehle in den Editor geschoben werden. Die graphische Auflösung ist zwar nicht optimal, aber die Möglichkeiten sehr vielfältig. Da in der Kartenserie Objekte aus dem Bereich „Shapes“ genutzt werden, seien diese hier kurz vorgestellt:

Erzeugt einen Würfel mit dem Durchmesser 0.5
Erzeugt einen Quader mit der Länge 1, der Breite 0.5 und der Höhe 0.3
Erzeugt eine Kugel mit dem Durchmesser 0.5
Erzeugt ein Rohr der Länge 2 mit dem äußeren Durchmesser 1 und dem inneren Durchmesser 0.5
Erzeugt eine dreidimensionale Spur des zurückgelegten Weges des Käfers (beetle). Statt „curves“ kann auch „lines“ gewählt werden.

Die Objekte können durch direktes Anklicken im Editor oder durch Verschachtelung mit Befehlen aus dem Bereich „Control“ aktiviert werden, also durch Klick auf die Fahne in diesem Beispiel. Der Befehl „reset“ dient dabei zum Löschen eventuell bereits vorhandener Graphiken und kann standardmäßig genutzt werden, um Verwirrung zu vermeiden.

Noch geschickter und sehr empfehlenswert ist es in vielen Fällen, das Löschen des Grafikfensters mit einer getrennten Befehlsfolge zu erledigen, die wie hier oben aussehen könnte.

Link zur Startseite: http://beetleblocks.com/run/

Link zu Beispielprojekten: http://beetleblocks.com/

#1 Jump and Run Spiele

Wie der Name schon sagt, steht beim MakeyMakey das Selbermachen im Vordergrund.

Der MakeyMakey ist aus technischer Sicht ein Tastaturersatz an Stelle der Standardtastatur können die einzelnen Tasten dann Bananen, Äpfel, Plastilin, Alufolie oder Personen sein. Die Platine ist ein vereinfachter Arduino, Treiber sind nicht nötig. Auf der Vorderseite finden sich die sechs typischen Spielcontrollertasten, auf der Rückseite zusätzlich Anschlüsse mit der Belegung W, A, S, D, F, den Maustasten und Bewegungstasten. Der Einstieg erfolgt meist mit vorgegebenen Beispielen, die anschließend abgewandelt werden und schließlich Ideengeber für eigene Kreationen sein können.

dav

Jump and Run: für diese Spiele genügt es, wenn für die Pfeilschaltflächen und für die Leertaste jeweils ein Stück Alufolie verwendet wird und mit dem MakeyMakey verbunden wird.

Super Mario: https://scratch.mit.edu/projects/31583772/

Flappy Bird: https://scratch.mit.edu/projects/38729886/

Pacman: https://scratch.mit.edu/projects/14608394/

Spannender wird es, wenn die Spiele mit mehreren Personen gespielt werden und jede/r für eine Taste zuständig ist. Die Felder können auch am Boden ausgelegt werden und man spielt mit den Füßen. Statt Alufolie geht beispielsweise auch Plastilin.

#2 Ein Obstklavier

Wir kombinieren den MakeyMakey und Scratch. Für Tasten können alle stromleitenden Materialien verwendet werden, also auch Äpfel, Bananen usw. so kann man sich bspw. eine einfache Klaviatur aus Bananen bauen.

In Scratch genügt es, wenn die einzelnen Tasten mit jeweils einem Ton belegt werden. Dazu muss man die Erweiterung Musik in Scratch aktivieren.

Hier kann man dann auch mit Soundeffekten, selbst aufgenommenen Klängen und Schlagzeugeffekten experimentieren.

#4 Buzzer

Der Buzzer ist das ideale Hilfsmittel für ein Wissensquiz. Je nach Anzahl der Mitspieler kannst du dir Buzzerflächen basteln (bspw. mit Alufolie o. ä.). Für den Quizmaster gibt es eine Startschaltfläche. Alle Mitspieler/innen und der Quizmaster müssen mit der Erde verbunden sein.

mde

Ablauf: der Quizmaster startet die Runde mit dem Berühren der Start Schaltfläche. Er stellt die Quizfrage. Wer glaubt, die Antwort zu wissen, drückt möglichst schnell seinen Buzzer und hat anschließend Zeit seine Antwort zu geben.

Das wäre ein möglicher Code für einen Buzzer:

Auch hier sind wieder viele Varianten möglich: mit Punktzähler, Zeitvorgabe, …

#5 Heißer Draht

Dieses Geschicklichkeitsspiel kennst du bestimmt! Dafür benötigst du einen Parcours, diesen kannst du aus Alufolie oder mit einem Draht bauen. Dann brauchst du eine Schlaufe, die durch den Parcours bewegt werden soll. Schließlich ist noch ein Start- und ein Zieltaster vonnöten. Die Schlaufe verkabelst du mit der Erde, die restlichen Teile mit jeweils einer Taste.


So könnte der Code in Scratch aussehen: