Cover

Inhalt

Titelei

Impressum

Inhalt

1 Einführung

1.1 Die faszinierende Welt der Robotik

1.2 Hinweise zum Arbeiten mit diesem Buch

2 Die Makeblock-Produktwelt

2.1 mBot – der Basisroboter

2.2 mBot Ranger – der große Bruder des mBot

2.3 Ultimate Robot Kit – für alle, die es ernst meinen

2.4 Kommt ein Airblock geflogen …

2.5 XY-Plotter Robot Kit

3 Die Sinne des mBot – Sensoren, Aktoren und Verbindungen

3.1 Die RJ-25-Buchsen

3.2 Der USB-Port

3.3 Die RGB-LEDs

3.4 Der Buzzer

3.5 Die Infrarotschnittstelle

3.6 Der Lichtsensor

3.7 Der Taster

3.8 Die Motoranschlüsse

3.9 Der Ein-/Aus-Schalter

3.10 Die externe Spannungsversorgung

3.11 Die Funkverbindung

4 Das Gehirn des mBot – die mBlock-Entwicklungsumgebung

4.1 Die Programmiersprache Scratch

4.2 Die Installation von mBlock

4.3 Die unterschiedlichen Wege, den mBot zu programmieren

4.4 Die Firmware an den mBot senden

4.5 Die Bluetooth-Verbindung herstellen

4.6 Der Arduino-Mode in mBlock

4.7 Die Arduino/Genuino-Entwicklungsumgebung

5 Den mBot über PC und Fernbedienung steuern (Projekt 1)

5.1 Die Steuerung über den PC

5.2 Die IR-Fernbedienung

5.2.1 Was benötigen wir?

5.2.2 Das mBlock-Skript – Einsatz ohne Ultraschallsensor

5.2.3 Das mBlock-Skript – Einsatz mit UItraschallsensor

5.2.4 Einen neuen Block anlegen

5.2.5 Einen neuen Block mit Argumenten anlegen

5.2.6 Varianten

6 Die Makeblock-App für Smartphones und Tablets

6.1 Installieren

6.2 Spielen

6.3 Erstellen

6.4 Bauen

6.5 Weitere Möglichkeiten

7 Der mBot folgt einer Linie – der Line-Finder-Sensor (Projekt 2)

7.1 Was benötigen wir?

7.2 Auf Linie bleiben – der Line-Finder-Sensor

7.3 Das mBlock-Skript

7.4 Weitere Ideen

8 Freifahrt für den mBot – der Ultraschallsensor (Projekt 3)

8.1 Was benötigen wir?

8.2 Das mBlock-Skript

8.3 Nützliche Zusatzinformationen

8.4 Mögliche Varianten

9 Von hell bis dunkel und alles dazwischen – der Lichtsensor (Projekt 4)

9.1 Was benötigen wir?

9.2 Der Lichtsensor auf dem mCore-Board

9.3 Das mBlock-Skript

9.4 Die Koordinatenumrechnung

9.5 Hell dreht schnell

9.6 Weitere Ideen

10 Analog gegen digital – Einsatz von Potenziometer, Joystick und Multimeter

10.1 Was benötigen wir?

10.2 Die ADC-Anschlüsse am Mikrocontroller

10.3 Die Zusammenhänge zwischen Spannung, Strom und Widerstand

10.4 Der Vergleich zwischen Potenziometer und Joystick

10.5 Das mBlock-Skript

10.6 Nützliche Zusatzinformationen

10.7 Fazit

11 Auf Schall reagieren – der Soundsensor (Projekt 5)

11.1 Was benötigen wir?

11.2 Ein zweiter Soundsensor kommt hinzu

11.3 Der tanzende mBot

12 Orientierung ist alles! Das Kompassmodul (Projekt 6)

12.1 Was benötigen wir?

12.2 Das mBlock-Skript

12.3 Nützliche Zusatzinformationen

12.4 Varianten

13 Wir bauen eine Soundmaschine (Projekt 7)

13.1 Was benötigen wir?

13.2 Das mBlock-Skript

13.3 Nützliche Zusatzinformationen

14 Periskop ausfahren! Der Rundumsicht-Scanner – Einsatz von Servomotor und Ultraschallsensor (Projekt 8)

14.1 Was benötigen wir?

14.2 Das mBlock-Skript

14.3 Das ScanLine-Skript

14.4 Das Ping-Skript

14.5 Nützliche Zusatzinformationen

14.6 Fazit

15 Sag es mit Farben! Die RGB-LEDs (Projekt 9)

15.1 Was benötigen wir?

15.2 Die Wahl des Moduls

15.3 Das mBlock-Skript

15.4 Varianten

16 Das Farbenspiel – weitere Einsatzmöglichkeiten der RGB-LEDs (Projekt 10)

16.1 Was benötigen wir?

16.2 Das mBlock-Skript

16.3 Varianten

17 Der mBot zeigt Gesicht – die LED-Matrix (Projekt 11)

17.1 Was benötigen wir?

17.2 Das mBlock-Skript für „zeige Text“

17.3 Das mBlock-Skript für „zeige Zeit“

17.4 Das mBlock-Skript für „zeige Zeichnung“

17.5 Nützliche Zusatzinformationen

17.6 Mögliche Varianten

18 Das große Krabbeln – der mBot wird zum Käfer (Projekt 12)

18.1 Was benötigen wir?

18.2 Wir montieren die Kuppelstangen

18.3 Das große Krabbeln beginnt

19 Wir bauen einen Kameraroboter – das Ultimate Robot Kit (Projekt 13)

19.1 Was benötigen wir?

19.2 Aufbau

19.3 Eine Kamerafahrt steuern

19.4 Livestreams der Kamera übertragen

20 Ab in die Cloud! IoT-Anwendungen mit Makeblock und Microsoft Azure (Projekt 14)

20.1 Die Cloud-Computing-Plattform Microsoft Azure

20.2 Gesichtserkennung mit Makeblock und Microsoft Azure

21 Das mBot-Standardprogramm

21.1 Was benötigen wir?

21.2 Aktionen über die IR-Fernbedienung ausführen

21.3 Nützliche Zusatzinformationen

22 Der mBot wird zum Wachhund – ein Alarmsystem auf Basis des PIR-Motion-Sensors (Projekt 15)

22.1 Was benötigen wir?

22.2 Programmierung mit Python

22.3 Das mBlock-Skript

22.4 Der Arduino-Sketch

22.5 Das Python-Skript

22.6 Varianten

Erik Bartmann
Jörn Donges

Open Robots für Maker

Programmierspaß und smarte Elektronik mit Makeblock


Die Autoren:

Erik Bartmann,Brühl
Jörn Donges, Hamburg

Alle in diesem Buch enthaltenen Informationen, Verfahren und Darstellungen wurden nach bestem Wissen zusammengestellt und mit Sorgfalt getestet. Dennoch sind Fehler nicht ganz auszuschließen. Aus diesem Grund sind die im vorliegenden Buch enthaltenen Informationen mit keiner Verpflichtung oder Garantie irgendeiner Art verbunden. Autoren und Verlag übernehmen infolgedessen keine juristische Verantwortung und werden keine daraus folgende oder sonstige Haftung übernehmen, die auf irgendeine Art aus der Benutzung dieser Informationen – oder Teilen davon – entsteht.

Ebenso übernehmen Autoren und Verlag keine Gewähr dafür, dass beschriebene Verfahren usw. frei von Schutzrechten Dritter sind. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Buch berechtigt deshalb auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen­ und Markenschutz­Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.

Bibliografische Information der Deutschen Nationalbibliothek: Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.

Dieses Werk ist urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdruckes und der Vervielfältigung des Buches, oder Teilen daraus, vorbehalten. Kein Teil des Werkes darf ohne schriftliche Genehmigung des Verlages in irgendeiner Form (Fotokopie, Mikrofilm oder ein anderes Verfahren) – auch nicht für Zwecke der Unterrichtsgestaltung – reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden.

Lektorat: Julia Stepp
Herstellung: Isabell Eschenberg
Umschlagrealisation: Stephan Rönigk

ISBN 978-3-446-45489-7
E-Book-ISBN 978-3-446-45612-9
E-Pub-ISBN 978-3-446-45791-1

Verwendete Schriften: SourceSansPro und SourceCodePro (Lizenz)
CSS-Version: 1.0

Font License Zurück zum Impressum

Copyright 2010, 2012, 2014 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL ----------------------------------------------------------- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ----------------------------------------------------------- PREAMBLE The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. DEFINITIONS "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. "Reserved Font Name" refers to any names specified as such after the copyright statement(s). "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. PERMISSION & CONDITIONS Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. TERMINATION This license becomes null and void if any of the above conditions are not met. DISCLAIMER THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.

1.  Einführung
1.1 Die faszinierende Welt der Robotik

Wir leben in einem spannenden Zeitalter. Die Digitalisierung erfasst immer mehr Bereiche des alltäglichen Lebens und hat schon begonnen, die Gesellschaft nachhaltig zu verändern. Heutzutage ist nahezu jede Art von Fachwissen innerhalb von Sekunden verfügbar. Menschen auf der ganzen Welt sind miteinander vernetzt und tauschen sich in Echtzeit aus, egal, wie weit sie voneinander entfernt sind. Doch nicht nur die Kommunikation und das Arbeitsleben verändern sich durch die digitale Revolution. Wir sind mehr und mehr in der Lage, gefährliche oder auch sehr monotone Arbeiten auszulagern und an Maschinen abzugeben. In modernen Fabrikationshallen für Autos haben Menschen nur noch beaufsichtigende Funktionen. Es sind Roboter, die an den Fließbändern zielsicher die Fahrzeuge zusammensetzen. Auch in lebensfeindlichen Umgebungen tun sie ihren Dienst. Roboterfahrzeuge sind schon bis auf den Mond oder sogar zum Planeten Mars vorgedrungen. Auch im Haushalt treffen wir die kleinen Helfer immer häufiger an, sei es als intelligenter Staubsauger, als Rasenmäher oder Putzroboter.

 

Image

Bild 1.1 Greifarm eines modernen Industrieroboters (Quelle: Pixabay)

Die meisten Menschen denken beim Begriff Roboter zuerst an humanoide Roboter, also technische Nachbildungen des Menschen. Der Cyborg oder Android hat seinen festen Platz in der Science-Fiction-Literatur und bestimmt wohl auch deshalb die Vorstellungen, die wir von Robotern haben. Tatsächlich werden die humanoiden Roboter vor allem im technikbegeisterten Japan geliebt und perfektioniert.

 

Image

Bild 1.2 Ein humanoider Roboter (Quelle: Pixabay)

Doch auch dort, wo man es nicht auf den ersten Blick vermutet, verrichten Roboter ihre Arbeit. Es dauert nicht mehr lange, bis Autos in der Lage sein werden, vollkommen autonom zu fahren. Der Fahrer kann sich entspannt zurücklehnen und sich vom Auto ans Ziel bringen lassen. Er muss lediglich die Fahrt überwachen und in Ausnahmesituationen eingreifen. Zunehmend beliebter werden auch kleine Multicopter/Drohnen, die heutzutage aus Filmaufnahmen schon nicht mehr wegzudenken sind und die auch für Landvermessungen benutzt werden. Mit ihren Fähigkeiten, automatisch die Höhe zu halten oder einem Sender zu folgen, sind auch sie Roboter.

Letztlich fallen auch so profane Geräte wie Brotbackautomaten oder die intelligente Waschmaschine mit Schonprogramm in diese Kategorie: Es sind Maschinen, die von einem programmierbaren Controller gesteuert werden und sich daher in ihrem Verhalten flexibel an die Gegebenheiten anpassen können. Dies bezeichnen wir im weitesten Sinne als Roboter.

Sicher fallen dir noch weitere Beispiele ein. Alle haben eine gemeinsame Struktur. Da sind einmal die Sensoren, mit denen Roboter die Umgebung wahrnehmen und sich ein Bild von ihrer Umwelt machen können, bestehend aus Messwerten. Das können Temperatur, Druck oder Lichtsensoren sein, aber auch komplexere Geräte wie eine Kamera oder ein Radar. Alles, was dem Roboter hilft, seine Umwelt wahrzunehmen, bezeichnen wir als Sensor.

Das Gegenteil davon sind sozusagen die Gliedmaßen, also alle Teile, durch die der Roboter auf seine Umgebung einwirken und etwas verändern kann. Diese bezeichnen wir als Aktoren. Dazu zählen z. B. Motoren, Greifarme oder auch Lampen und Displays, die Informationen anzeigen.

Zwischen Sensoren und Aktoren steht eine mehr oder weniger intelligente Verarbeitung. Ein wesentlicher Aspekt von Robotern ist, dass sie programmierbar sind und damit die große Welt der Software mit ins Boot holen. Es sind Algorithmen, die darüber bestimmen, wie der Roboter auf die Umweltdaten reagiert und welche Handlungen er ausführt.

Die Einsatzgebiete sind nahezu unbegrenzt und halten Einzug in vielen unterschiedlichen Bereichen, um die Arbeit des Menschen zu erleichtern oder ihn komplett zu ersetzen.

1.2 Hinweise zum Arbeiten mit diesem Buch

Das erwartet dich in diesem Buch

Dieses Buch ist eine Einführung in die faszinierende Welt der Robotik. Du brauchst keine Vorkenntnisse, denn wir werden alles von Grund auf erklären und aufbauen. Doch auch wenn du schon ein wenig programmieren kannst und nun deine Ideen nicht nur am Bildschirm verwirklichen willst, sondern live und in 3D einen kleinen Roboter steuern willst, dann bist du hier richtig.

Es gibt diverse Hersteller kleiner Robotermodelle, die von purem Spielzeug bis hin zu fast professionellen Plattformen zur Entwicklung von Robotikprojekten reichen. Wir haben uns dafür entschieden, unsere Projekte mit den Robotern der Firma Makeblock zu verwirklichen. Die Makeblock-Roboter können dich einen sehr weiten Teil deiner Robotikkarriere begleiten. Sie sind einfach genug, um auch für Kinder einen spielerischen Einstieg ins Thema zu gewährleisten. Gleichzeitig bieten sie Fortgeschrittenen und Profis die notwendige Offenheit, um auch sehr komplexe Schaltungen und Programmierungen umzusetzen.

Für den Einstieg steht die grafische Programmierplattform mBlock mit der Programmiersprache Scratch bereit, für die du keinerlei Code eingeben musst. Die Anweisungen an den Roboter kannst du einfach grafisch am Bildschirm erstellen, indem du Funktionsblöcke mit der Maus verschiebst und verbindest. Dank der Nutzung von Arduino-Controllern als Hirn und Schaltzentrale der Makeblock-Roboter steht dir darüber hinaus als Maker das riesige Arduino-Universum zur Verfügung. Es gibt etliche interessante Arduino-Projekte in Büchern und im Internet, die du nachbauen und mit deinen Makeblock-Robotern verbinden kannst. Anregungen für eigene Projekte kannst du dir z. B. im Buch Mach was mit Arduino! (ISBN 978-3-446-45128-5) von Robert Jänisch und Jörn Donges holen, das ebenfalls im Hanser Verlag erschienen ist.

So ist dieses Buch aufgebaut

In Kapitel 2 werfen wir einen Blick auf die Makeblock-Produktwelt und gehen auf die unterschiedlichen Eigenschaften der Makeblock-Roboter und -Drohnen ein.

Kapitel 3 und 4 enthalten wichtige Grundlagen, die wir für die Verwirklichung unserer Projekte brauchen. Wir nehmen uns darin das kleine Roboterfahrzeugs mBot genauer vor. Wir stellen alle Sensoren und Anschlüsse sowie die Entwicklungsumgebung vor, mit der du den mBot und andere Robotermodelle steuern und programmieren kannst.

In Kapitel 5 springen wir mitten in die Praxis und entwickeln auf zwei unterschiedliche Weisen eine Fernsteuerung für den mBot.

Kapitel 6 ist dem Einsatz mobiler Geräte gewidmet. Es stellt die wichtigsten Apps genauer vor, die man beim Arbeiten mit Makeblock-Robotern verwenden kann.

Zu den Standardanwendungen für kleine Roboterfahrzeuge gehört das automatische Folgen einer Linie auf dem Boden oder das Erkennen von Hindernissen mit einem Ultraschall-Sensor. Diese Projekte stellen wir in Kapitel 7 und 8 vor.

In Kapitel 9 bis 12 widmen wir uns den einzelnen Sensoren und experimentieren mit dem Lichtsensor, dem Schallsensor und dem Kompass-Modul.

Mit der Soundmaschine erwartet dich in Kapitel 13 ein besonderes Projekt. Wir verwandeln den mBot in ein Keyboard zum Musik machen. Dieses Projekt stellt etwas höhere Anforderungen an deine Elektronik-Fertigkeiten. Du lernst, Schaltungsprototypen mit einer Lochrasterplatine aufzubauen.

Auch Kapitel 14 stellt ein Projekt für fortgeschrittene Maker vor. Der mBot erhält eine Radar-Antenne als Rundumsicht-Scanner.

Kapitel 15 bis 17 stehen im Zeichen von Licht und Farbe. Wir lernen die RGB-LEDs und ein Farbenspiel kennen. Danach verpassen wir dem mBot eine LED-Matrix, auf der wir Muster und Laufschriften zum Leben erwecken.

In Kapitel 18 kannst du deine mechanischen Fähigkeiten unter Beweis stellen und den mBot vom Radantrieb auf einen sechsbeinigen Antrieb umstellen.

Wenn du mit einer Filmkarriere liebäugelst, dann ist der Kamera-Bot aus Kapitel 19 etwas für dich. Darin konstruieren wir auf Basis des Ultimate Robot Kit einen praxistauglichen Kamerawagen für Smartphone oder Spiegelreflexkameras. Über eine Streaming-App werden wir das Kamerabild, das der Bot aufnimmt, in Echtzeit auf einem Bildschirm streamen.

Wenn du dich für Cloud-Anwendungen und das Internet of Things (IoT) interessierst, dann solltest du auf jeden Fall das Projekt in Kapitel 20 durcharbeiten, in welchem wir die Microsoft-Azure Cloud nutzen, um Gesichter auf einem Kamerabild zu erkennen.

Kapitel 21 widmet sich dem Programm, das auf dem mBot bei Inbetriebnahme standardmäßig installiert ist.

Zum Abschluss präsentieren wir mit dem Alarmsystem in Kapitel 22 ein anspruchsvolleres Projekt, bei dem du die Meldung eines Bewegungssensors über ein in Python programmiertes Skript automatisch per E-Mail verschicken kannst.

Los geht's!

Doch nun ist es an der Zeit, den Protagonisten unserer Reise durch die Roboterwelt genauer kennenzulernen. Es ist der mBot von Makeblock, mit dem fast alle Projekte in diesem Buch (bis auf den Kameraroboter aus Kapitel 19) realisiert werden. Er ist das kleinste Modell der Makeblock-Roboter, aber auch mit ihm lässt sich schon so einiges Interessantes anstellen. Wir wünschen dir viel Spaß beim Entdecken, Nachbauen und Experimentieren!

Brühl/Hamburg, Januar 2018

Erik Bartmann

Jörn Donges

2.  Die Makeblock-Produktwelt

Der mBot ist das erste Produkt der Firma Makeblock. Er wurde vom chinesischen Flugzeugkonstrukteur Jason Wang entwickelt, der sich über die Qualität der existierenden Roboterbausätze ärgerte und sich deshalb entschloss, einen eigenen Bausatz zu entwickeln. Herausgekommen ist der mBot. 2011 gründete er die Firma Makeblock, die in Shenzhen ansässig ist. Dort entwickeln ca. 100 Firmenangehörige Roboterbausätze, Zeichencomputer und 3D-Drucker.

Die Firma hat es sich zur Aufgabe gemacht, den Erfindungs- und Basteltrieb in Menschen zu wecken bzw. zu fördern. Kreative Bastler werden in der Szene Maker genannt. Sie zeichnen sich durch Experimentierfreudigkeit und den Spaß am Selbermachen aus. Die Philosophie der Firma Makeblock zielt auf das Bereitstellen einer Konstruktionsplattform ab, mit deren Hilfe auf sehr einfache und intuitive Weise sowohl mechanische als auch elektronische Bauteile miteinander kombiniert werden können. Dafür sind weder aufwendiges Werkzeug noch Lötarbeiten notwendig.

Mittlerweile besteht die Makeblock-Produktwelt aus einer Vielzahl weiterer Robotermodelle. Alle Roboter werden als Bausätze ausgeliefert, die relativ einfach zusammenzubauen sind. Damit du einen Eindruck bekommst, welche Produkte Makeblock im Angebot hat, werden wir nun einen Blick auf ausgewählte Modelle werfen und jedes kurz vorstellen.

2.1 mBot – der Basisroboter

Beginnen wir mit dem mBot. Die meisten werden wohl mit diesem Modell den Einstieg in die faszinierende Welt der Robotik finden. Er ist einfach zu programmieren und deshalb sowohl für Kinder als auch für Junggebliebene attraktiv. Von Haus aus verfügt er über zahlreiche Sensoren bzw. Aktoren und bietet viele Erweiterungsmöglichkeiten, was zum Experimentieren und Tüfteln anregt. Er kann z. B. per Funk über eine Infrarot-Fernbedienung oder über Bluetooth angesteuert werden, was ihn sehr flexibel macht. Auch per Smartphone kann er ferngesteuert werden, womit der kleine Roboter den Anschluss an die große Welt der mobilen Apps findet.

 

Image

Bild 2.1 Der mBot ist bereit! (© Makeblock Co., Ltd)

Aufgrund der vielen Vorzüge – und die genannten waren bei Weitem noch nicht alle – eignet sich dieses Roboterfahrzeug hervorragend zur ersten Kontaktaufnahme mit dem interessanten Gebiet der Robotik. Der mBot gibt sowohl zu Hause als auch in Klassenzimmer oder Workshops ein gutes Bild ab.

Wer früher einen eigenen Roboter bauen wollte, musste sich mit etlichen mechanischen und elektronischen Bauteilen auseinandersetzen. Man musste z. B. Schaltungen mit Arduino-Komponenten entwickeln, Code dafür schreiben und das Ganze mit mechanischen Komponenten verbinden. Dazu waren umfangreiche Verdrahtungs- und Lötarbeiten nötig. Zwischen der ersten Projektidee und der Realisierung stand eine lange Phase der Planung, der Entwicklung und des Schaltungsaufbaus.

 

Image

Bild 2.2 Beim mBot ist Löten nicht erforderlich.

Mit Makeblock-Komponenten sieht die ganze Sache entspannter aus. Alle Bauteile werden über einfache mechanische und elektrische Verbindungen zusammengesetzt. Da kann wirklich nichts mehr schiefgehen, und es kommt ganz sicher kein Frust auf. Im Regelfall ist lediglich ein kleiner mitgelieferter Multifunktionsschraubendreher erforderlich. Die elektrischen Verbindungen werden über ein ausgeklügeltes farbkodiertes Stecker-Buchsen-System realisiert, was die Sache gerade für Kinder und Jugendliche interessant macht. Maker sind jedoch in allen Altersgruppen auf der nach oben offenen Kreativskala vertreten. Je nach Kenntnisstand kann man natürlich beliebig von den vorgegebenen Bauplänen abweichen und eigene Ideen umsetzen, denn die Makeblock-Systeme bieten eine offene Plattform.

Neben den elektronischen Komponenten stellt das Makeblock-System auch Bauteile für die Mechanik bereit. Sie sind für die Stabilität des Roboters zuständig, aber auch für seine Bewegung. Mit robusten Aluminiumprofilen verschiedener Länge kannst du tragende Strukturen aufbauen und Halt für die Aufbauten schaffen, die du am mBot anbringen möchtest. Das können Sensoren sein, die dir Daten aus der Umgebung deines Roboters liefern, aber auch weitere aktive Bauteile, wie z. B. Motoren, die einen Greifarm oder eine rotierende Radarantenne steuern.

Die Bauteile sind allesamt aufeinander abgestimmt, sodass eine Vielzahl an Kombinationsmöglichkeiten untereinander besteht. Wir werden auf dieses Thema noch detaillierter eingehen. Der Grundgedanke, der hinter allem steckt, fußt auf der sogenannten Open-Source-Technologie. Die Hard- bzw. Software wird nicht aus rein kommerziellen Gesichtspunkten entwickelt, sondern steht jedem mehr oder weniger frei zur Verfügung und kann nach Belieben angepasst werden. Entstehen dadurch neue und innovative Projekte, so werden sie in der Regel der Community zur Verfügung gestellt und ggf. weiterentwickelt, optimiert oder mithilfe anderer Mitglieder Probleme diskutiert und gelöst. Der Wissenstransfer, der Erfahrungsaustausch und das Lernen voneinander haben oberste Priorität. Von außen betrachtet, mutet diese Community wie ein lebender Organismus an, der sich weiterentwickelt, der wächst und Nachwuchs bekommt. Es handelt sich um eine sehr aktive und lebendige Angelegenheit, die entweder zu Hause oder in sogenannten FabLabs oder Hackerspaces betrieben wird.

Image

Unter folgendem Link ist eine kurze Vorstellung des mBot zu finden: https://youtu.be/j1Cr4h_gddE

Intuitive Programmierung mit mBlock

In Kapitel 1 haben wir schon kurz angesprochen, dass man den mBot programmieren kann, ohne eine einzige Codezeile einzugeben. In der Programmiersprache Scratch kannst du die einzelnen Befehle mit der Maus aus einem Vorrat ziehen und damit Programmabläufe zusammenstellen.

Angenommen, wir möchten den mBot bewegen und ihn auch einen Ton von sich geben lassen, würde ein entsprechendes Skript aussehen wie in Bild 2.3.

 

Image

Bild 2.3 Ein einfaches Scratch-Skript

Das sieht doch sehr übersichtlich und verständlich aus, oder? Die einzelnen Befehle, Blöcke genannt, werden von oben nach unten abgearbeitet und fügen sich wie Puzzleteile zusammen. Dazu haben die Blöcke kleine Nasen bzw. Ausbuchtungen, die wie eine Verbindung arbeiten. Die Nase rastet in einer Ausbuchtung ein. Dadurch sind die Codeblöcke zusammengefügt und werden nacheinander vom mBot ausgeführt. Über die Entwicklungsumgebung lassen sich nur die Blöcke zusammenfügen, die logisch zueinanderpassen, was unsinnige Konstrukte verhindert. Dadurch vermeidest du typische Anfängerfehler bei der Programmierung, denn Dinge, die nicht gehen, können gar nicht erst als Code zusammengestellt werden.

Scratch stellt jedoch leider von Haus aus keine Blöcke zur Ansteuerung der Komponenten des mBot zur Verfügung. Zum Glück haben die Entwickler die Sprache Scratch aber erweiterbar gemacht. Über sogenannte Extensions lassen sich neue Funktionen hinzufügen. Die fertige Entwicklungsumgebung mit der mBot-Extension nennt sich mBlock. Unter http://mblock.cc kannst du sie herunterladen.

Mit mBlock kannst du über Scratch nicht nur den mBot ansteuern, sondern noch andere elektronische Komponenten, wie z. B. den Arduino. Detailliertere Informationen zu mBlock erhältst du in Kapitel 4.

 

Image

Bild 2.4 Das Arduino/Genuino-Board

Für (angehende) Experten steht zudem die Arduino-Entwicklungsumgebung (https://www.arduino.cc) zur Verfügung und bietet mithilfe der von Makeblock zur Verfügung gestellten Bibliotheken nahezu unbegrenzte Programmier- und Entfaltungsmöglichkeiten, die keine Wünsche offen lassen.

2.2 mBot Ranger – der große Bruder des mBot

Der mBot ist der ideale Einstieg in die Welt der Robotik, weil er vergleichsweise günstig zu haben ist, dir aber mit seiner Programmierbarkeit und seiner Anbindung an das Arduino-Universum genug Spielraum bietet, um deine Ideen zu verwirklichen. Durch seine mechanische Einfachheit ist er auch in Kinderhänden gut aufgehoben. Wenn du deine Herausforderung jedoch in der Konstruktion komplexer mechanischer Aufbauten siehst, dann kommt das vorgefertigte Chassis des mBot schnell an seine Grenzen, denn viel mehr als ein kleines Fahrzeug kann man damit nicht bauen.

Wenn wir uns in der Welt der Roboter umschauen, dann ist sie sehr vielfältig. Denk nur an die Roboterarme in der industriellen Fertigung oder auch an große Kranaufbauten in modernen, vollautomatischen Containerhäfen. Letztlich sieht natürlich auch unser humanoider Roboter ganz anders aus als ein kleines Fahrzeug auf Rädern.

Hier kommen die großen Brüder des mBot ins Spiel. Die Firma Makeblock hat ein mechanisches Konstruktionssystem im Angebot, das aus Aluminiumbauteilen und Verbindungen besteht. Damit kannst du Tragegerüste und bewegliche Teile aufbauen. Das heißt, die Roboter basieren nicht mehr auf einem Chassis, sondern sind individuell aus kleinen mechanischen Bauteilen zusammengebaut. Dadurch lassen sich auch komplexere Aufbauten, wie z. B. das Modell eines Hafenkrans, realisieren. Durch den flexiblen Aufbau sind die großen Brüder des mBot sehr wandlungsfähig.

Als Erstes wäre der mBot Ranger zu nennen. Es handelt sich um ein sehr robustes Kettenfahrzeug mit einem Aluminium-Chassis (siehe Bild 2.5).

 

Image

Bild 2.5 Der mBot Ranger (© Makeblock Co., Ltd)

Das mCore-Board des mBot wird ersetzt durch das sogenannte Me Auriga-Board. Dies ist eine erweiterte und verbesserte Version der Zentraleinheit, die mit noch mehr Sensoren ausgestattet ist und auch zusätzliche Kommunikations-Ports bietet (siehe Bild 2.6).

 

Image

Bild 2.6 Das Me Auriga Baseboard, die Zentraleinheit des mBot Ranger (© Makeblock Co., Ltd)

Besonders interessant ist hierbei der Gyroskop-Sensor. Dieser Baustein kann Beschleunigungen sehr exakt messen. Damit lässt sich z. B. der zurückgelegte Weg des Roboters sehr genau mitverfolgen, um etwa Navigationssysteme aufzubauen. Alternativ verwendest du ihn dazu, den Ranger auf zwei Rädern balancieren zu lassen. Der Sensor registriert die Fallrichtung und ermöglicht dem Motor, sehr genau gegenzusteuern. So erhält man das Modell Nervous Bird, der auf zwei Rädern stabil balancieren und sich fortbewegen kann.

In der Standardausführung kannst du aus dem Ranger-Kit drei verschiedene Roboter bauen. Der Aufbau des Rangers ist aufgrund der Vielfalt an Möglichkeiten etwas komplexer als der des mBot, was aber nicht bedeutet, dass es ein schwieriges Unterfangen ist. Die Einzelteile sind in Bild 2.7 zu erkennen, wobei der Zusammenbau mit ca. einer Stunde zu Buche schlägt. Auch hier gibt es standardmäßig einen Ultraschallsensor und eine Infrarot-Fernbedienung, sodass ohne den Zukauf von weiteren Modulen sofort viele interessante Experimente möglich sind.

 

Image

Bild 2.7 Bestandteile des mBot-Ranger-Kits (© Makeblock Co., Ltd)

2.3 Ultimate Robot Kit – für alle, die es ernst meinen

Hast du mit dem mBot oder dem Ranger bereits Erfahrungen gesammelt und möchtest jetzt deine Roboterbautätigkeit ausweiten? Oder du willst es von Anfang an genauer wissen? Dann lohnt sich der Einstieg mit dem Ultimate Robot Kit. Hierbei handelt es sich um eine Grundausstattung für einen Roboter mit komplexerem Aufbau. Während der Ranger und der mBot nur zwei Motoren haben und damit nur für die Fortbewegung motorisiert sind, stellt das Ultimate Robot Kit einen weiteren Motor bereit, mit dem du Greifarme, Kräne oder bewegliche Aufbauten realisieren kannst. Dazu gibt es ein umfangreiches Set an Aluminiumstangen und Verbindern, mit denen du die Tragestruktur aufbauen kannst. Bild 2.8 zeigt einen möglichen Aufbau des Ultimate Robot Kit.

Die Denk- und Schaltzentrale des Ultimate Robot Kit ist ein sogenanntes MegaPi-Board. Es kann mit bis zu vier Motor-Controllern ausgestattet werden, die Bestandteil des Ultimate Robot Kit sind. Damit kannst du neben den obligatorischen zwei Antriebsmotoren weitere bewegliche Teile in deine Projekte einbauen.

 

Image

Bild 2.8 Das Ultimate Robot Kit (© Makeblock Co., Ltd)

Beispielsweise enthält das Kit neben drei Gleichstrommotoren auch einen Greifer, den du motorgesteuert öffnen und schließen kannst. Dieser Robotergreifarm ist eine der Standardbauanleitungen des Ultimate Robot Kit. Der entstehende Roboter kann per App ferngesteuert oder individuell programmiert werden, sodass er mit dem Greifarm kleinere Gegenstände aufnehmen, transportieren und woanders wieder ablegen kann. Zusätzlichen Sensoren zur Erweiterung der Funktionalität sind kaum Grenzen gesetzt. Du wirst in den folgenden Kapiteln viele Sensoren und ihre Anwendung in der Robotik genauer kennenlernen.

2.4 Kommt ein Airblock geflogen …

Kleine, vollautomatische Fluggeräte, die sogenannten Drohnen, waren noch vor wenigen Jahren unbezahlbare Werkzeuge für Spezialisten. Sie werden bei Filmaufnahmen, aber auch in der Landvermessung eingesetzt. Doch mit dem Siegeszug des Internets der Dinge (Internet of Things, IoT) sind auch die Drohnen kleiner und erschwinglicher geworden. Es gibt inzwischen eine ganze Reihe von Modellen für Hobbyanwender, die über ein Smartphone gesteuert werden können.

Wenn du einen Schritt weitergehen willst und deine Drohne selbst programmieren und mit Modulen ausstatten willst, kannst du die Airblock-Drohne von Makeblock verwenden (siehe Bild 2.9). Dies hätte den Vorteil, dass du deine am mBot gewonnenen System- und Programmierkenntnisse gleich an einem sehr spannenden Modell umsetzen und erweitern kannst. In diesem Buch soll es allerdings nur um die Geschwister des mBot gehen, die am Boden bleiben.

 

Image

Bild 2.9 Wer wird denn gleich in die Luft gehen? Der Airblock (© Makeblock Co., Ltd)

Falls du über die Anschaffung einer Flugdrohne nachdenkst, informiere dich bitte über die einzuhaltenden gesetzlichen Bestimmungen und die in Deutschland herrschende Versicherungspflicht. Informationen hierzu erhältst du z. B. bei den Verbraucherzentralen.

2.5 XY-Plotter Robot Kit

Kommen wir zu einem letzten, sehr interessanten Produkt von Makeblock, dem XY-Plotter Robot Kit. Der XY-Plotter besteht aus einem festen Rahmen, auf dem ein Stift präzise über eine Fläche gesteuert wird. Damit lassen sich fortgeschrittene Anwendungen verwirklichen, die über eine reine Spielerei weit hinausgehen (siehe Bild 2.10).

 

Image

Bild 2.10 Der XY-Plotter für fortgeschrittene Maker (© Makeblock Co., Ltd)

Neben dem Erstellen von faszinierenden Bildern oder dem Übertragen von Zeichnungen lässt sich auch ein Laser-Engraver daraus erstellen oder sogar ein 3D-Drucker sowie ein Präzisionsbohrer für das Maker-Labor. Wie alle Makeblock-Produkte ist auch der Plotter mit Arduino kompatibel, da er über das bereits bekannte Auriga Baseboard verfügt.

Standardmäßig besitzt der XY-Plotter einen Stifthalter, der z. B. einen Bleistift oder Filzschreiber aufnehmen und über einen kleinen Servomotor abgesenkt bzw. angehoben werden kann. Die Genauigkeit bei diesem XY Plotter ist durch die stabile Konstruktion und präzise Ansteuerung recht hoch.

Image

HINWEIS: Der Zusammenbau und das spätere Konfigurieren bzw. Justieren zieht sich über einen längeren Zeitraum hin. Wir würden einen kompletten Tag einplanen.

Steuerung des XY Plotters mit mDraw

mDraw ist eine speziell für den mDrawBot und den XY-Plotter entwickelte Zeichensoftware von Makeblock. Der mDrawBot ist ein Roboterarm, der einen Stift halten und zeichnen kann.

mDraw bietet eine grafische Oberfläche, um den XY-Plotter direkt anzusteuern. Dazu kannst du entweder mit der Maus oder mit einem Grafiktablett auf den Bildschirm zeichnen. Die Software überträgt die gezeichneten Linien direkt an den Plotter.

Natürlich kannst du auch eine Grafikdatei importieren und den Roboter ihren Inhalt zeichnen lassen. Dafür müssen die Grafiken im Format SVG oder BMP vorliegen.

In diesem Buch verwendete Makeblock-Produkte

Damit ist unser Streifzug durch die Makeblock-Produktwelt abgeschlossen. Darüber hinaus gibt es noch mehr Bausätze und Erweiterungssets, auf die wir leider nicht alle eingehen können.

Image

Am besten legst du dir erst einmal den mBot zu, denn bis auf Kapitel 19 (Kameraroboter) werden alle Projekte in diesem Buch mit dem mBot realisiert.

3.  Die Sinne des mBot – Sensoren, Aktoren und Verbindungen