image

LEGO®-EV3-ROBOTER

Bauen und programmieren lernen mit LEGO® MINDSTORMS® EV3

Laurens Valk

Image

Laurens Valk

Lektorat: Dr. Michael Barabas
Übersetzung: G&U Language & Publishing Services GmbH, www.gundu.com
Satz: G&U Language & Publishing Services GmbH, www.gundu.com
Copy-Editing: Ursula Zimpfer, Herrenberg
Herstellung: Susanne Bröckelmann
Umschlaggestaltung: Helmut Kraus, www.exclam.de
Druck und Bindung: M.P. Media-Print Informationstechnologie GmbH, 33100 Paderborn

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.

ISBN:
Buch 978-3-86490-151-5
PDF 978-3-86491-593-2
ePub 978-3-86491-594-9

1. Auflage 2015
Copyright der deutschen Übersetzung © 2015 dpunkt.verlag GmbH
Wieblinger Weg 17 · 69123 Heidelberg

Copyright der amerikanischen Originalausgabe: © 2014 by Laurens Valk
Titel der Originalausgabe: The LEGO® MINDSTORMS® EV3 Discovery Book: a beginner’s guide to building and programming robots
No Starch Press, Inc. · 245 8th Street, San Francisco, CA 94103 l www.nostarch.com
ISBN-10: 1-59327-532-3
ISBN-13: 978-1-59327-532-7

Die vorliegende Publikation ist urheberrechtlich geschützt. Alle Rechte vorbehalten.
Die Verwendung der Texte und Abbildungen, auch auszugsweise, ist ohne die schriftliche Zustimmung des Verlags urheberrechtswidrig und daher strafbar. Dies gilt insbesondere für die Vervielfältigung, Übersetzung oder die Verwendung in elektronischen Systemen.
Es wird darauf hingewiesen, dass die im Buch verwendeten Soft- und Hardware- Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im Allgemeinen warenzeichen-, marken- oder patentrechtlichem Schutz unterliegen.

LEGO, LEGO-Figuren und LEGO-Bausteine sind Warenzeichen der LEGO-Gruppe.
Dieses Buch ist von der LEGO-Gruppe weder unterstützt noch autorisiert worden.

Alle Angaben und Programme in diesem Buch wurden mit größter Sorgfalt kontrolliert. Weder Autor noch Verlag können jedoch für Schäden haftbar gemacht werden, die im Zusammenhang mit der Verwendung dieses Buches stehen

5 4 3 2 1 0

Image

Zu diesem Buch – sowie zu vielen weiteren dpunkt.büchern – können Sie auch das entsprechende E-Book im PDF-Format herunterladen. Werden Sie dazu einfach Mitglied bei dpunkt.plus+:

www.dpunkt.de/plus

Der Autor

Image

Laurens Valk ist ein niederländischer Robotikingenieur mit einem Bachelor-Grad in Maschinenbau der technischen Hochschule in Delft. Er ist Mitglied der MINDSTORMS Community Partners (MCP), einer Gruppe ausgewählter MINDSTORMS-Enthusiasten, die dabei helfen, neue MINDSTORMS-Produkte zu testen und zu entwickeln. Mit dem Bau von Robotern auf der Grundlage des EV3-Systems hat er 2012 begonnen, ein Jahr vor der offiziellen Freigabe. Einer seiner Entwürfe ist auf der EV3-Verpackung als offizieller Bonus-Roboter zu sehen.

Laurens entwirft gern Roboter und gestaltet Anleitungen für ihren Bau und ihre Programmierung, damit Roboterfans aus aller Welt seine Entwürfe nachbauen und mehr über Robotik lernen können. Er hat an mehreren LEGO-Robotikbüchern mitgewirkt, darunter an der ersten Ausgabe dieses Buches, dem Bestseller LEGO-Roboter: Bauen und programmieren mit LEGO MINDSTORMS NXT 2.0 (dpunkt.verlag, 2011). Sein Blog über Robotik findest du auf http://robotsquare.com/.

Der Fachgutachter

Claude Baumann unterrichtet seit 15 Jahren Robotik mit LEGO MINDSTORMS für Fortgeschrittene in Abendschulkursen. Er hat ULTIMATE ROBOLAB erfunden, eine compilerübergreifende Umgebung, die die grafische Programmierung der LEGO RCX-Firmware ermöglichte, und damit das einzige selbstreplizierende Programm der Welt für LEGO RCX geschrieben (manche nennen es auch einen Virus). Vor kurzem hat er als MINDSTORMS Community Partner (MCP) an der Entwicklung des neuen intelligenten EV3-Steins mitgewirkt. Er hat als Gutachter verschiedene Robotikprojekte an weiterführenden Schulen bewertet und ist Autor von Eureka! Problem Solving with LEGO Robotics (NTS Press, 2013), mehrerer Artikel und Konferenzpräsentationen. Sein besonderes Interesse gilt der robotischen Ortung von Schallquellen. Claude leitet ein Netz von Wohnheimen für weiterführende Schulen in Luxemburg. Er ist verheiratet, hat drei Kinder und drei großartige Enkelkinder.

Danksagungen

An erster Stelle möchte ich den Lesern der ersten Ausgabe danken. Eure zahllosen E-Mails und Kommentare aus aller Welt stellten für mich eine Aufforderung dar, dieses Buch zu schreiben. Viele der neuen Themen sind durch eure Rückmeldung angeregt worden.

Dieses Buch folgt noch dem gleichen Grundprinzip und dem gleichen Aufbau wie die ursprüngliche Ausgabe, doch wegen des Wechsels von LEGO MINDSTORMS NXT zu EV3 war es notwendig, es von Grund auf neu zu schreiben. Das war nur dank der Hilfe vieler talentierter Personen möglich.

Mein großer Dank gilt Claude Baumann, der das Buch auf technische Genauigkeit durchgesehen und Verbesserungen vorgeschlagen hat. Ebenfalls möchte ich Marc-André Bazergui, Martijn Boogaarts, Kenneth Madsen und Xander Soldaat danken, die die Prototypen der in diesem Buch vorgestellten Roboter bereits 2012 getestet haben.

Weiterer Dank geht an die Mitarbeiter von No Starch Press, die die erste Ausgabe zu einem Erfolg gemacht und mit mir an dieser Neuausgabe gearbeitet haben. Danke an meinen Herausgeber William Pollock, meinen Lektor Seph Kramer, an Serena Yang, die das Projekt im Zeitplan gehalten hat, an Riley Hoffman und Alison Law für das Layout des Rohtextes auf bunten Seiten und an Leigh Poehler für die Beantwortung all meiner geschäftlichen Fragen im Laufe der letzten Jahre.

Danken möchte ich auch der LEGO-Gruppe, die einen so anregenden und lehrreichen Robotikbausatz entwickelt und die Community schon sehr früh in den Gestaltungsprozess einbezogen hat. Danke auch an das Team von LEGO MINDSTORMS EV3 – Camilla, David, Flemming, Henrik, Lars Joe, Lasse, Lee, Linda, Marie, Steven und Willem.

Des Weiteren bedanke ich mich bei der LDraw-Community, die die für die Erstellung der Bauanleitungen in diesem Buch erforderlichen Programme entwickelt hat. Insbesondere gilt mein Dank Philippe Hurbain, der die LDraw-3-D-Modelle für die EV3-Komponenten erstellt hat, Michael Lachmann für die Entwicklung von MLCad, Travis Cobbs für LDView, Keven Clague für LPub 4 und LSynth. Benso möchte ich John Hansen danken, dem Entwickler des EV3-Screenshotprogramms.

Abschließend möchte ich meinen Freunden und meiner Familie für ihre Unterstützung bei dem langwierigen Unternehmen danken, dieses Buch zu schreiben. Vor allem möchte ich Fabiënne danken, die nicht müde wurde, mich dazu zu ermutigen, das Projekt fertig zu stellen. Vielen Dank – du bist die Beste!

Übersicht

Einleitung

Teil 1        Erste Schritte

Kapitel 1       Deinen EV3-Kasten vorbereiten

Kapitel 2       Baue deinen ersten Roboter

Kapitel 3       Programme erstellen und ändern

Kapitel 4       Arbeiten mit Programmierblöcken: Aktionsblöcke

Kapitel 5       Warten, wiederholen, Eigene Blöcke und Multitasking

Teil 2        Roboter mit Sensoren programmieren

Kapitel 6       Wie Sensoren funktionieren

Kapitel 7       Den Farbsensor verwenden

Kapitel 8       Den Infrarotsensor verwenden

Kapitel 9       Die Stein-Tasten und Motorumdrehungssensoren verwenden

Teil 3        Techniken des Roboterbaus

Kapitel 10     Mit Balken, Achsen, Verbindern und Motoren arbeiten

Kapitel 11     Mit Zahnrädern und Getrieben arbeiten

Teil 4        Fahrzeuge und Robotertiere

Kapitel 12     Formel EV3: Ein Rennroboter

Kapitel 13     ANTY: Die Roboterameise

Teil 5        Fortgeschrittene Programme erstellen

Kapitel 14     Datenleitungen nutzen

Kapitel 15     Datenblöcke und Eigene Blöcke mit Datenleitungen verwenden

Kapitel 16     Konstanten und Variablen verwenden

Kapitel 17     Spiele auf dem EV3

Teil 6        Maschinen und menschenähnliche Roboter

Kapitel 18     Der SNATCH3R: Ein autonomer Roboterarm

Kapitel 19     LAVA R3X: Ein Maschinenmensch, der geht und spricht

Anhang A     Fehlerbehebung für Programme, den EV3-Stein und drahtlose Verbindungen

Anhang B     On-Brick-Programme erstellen

Index

Inhaltsverzeichnis

Einleitung

Wozu ist dieses Buch gut?

Ist dieses Buch etwas für dich?

Wie ist dieses Buch aufgebaut?

Selbst entdecken

Was ist in den einzelnen Kapiteln zu finden?

Die Begleitwebsite

Schlusswort

TEIL 1    ERSTE SCHRITTE

1
Deinen EV3-Kasten vorbereiten

Was ist drin?

Der EV3-Stein

Technic-Elemente sortieren

Das Mission-Pad

Steuerung des Roboters

Die EV3-Software herunterladen und installieren

Zusammenfassung

2
Baue deinen ersten Roboter

Die Bauanleitungen

Den EXPLOR3R bauen

Ausgabeanschlüsse, Eingabeanschlüsse und Kabel

Der EV3-Stein

Den EV3 an- und ausschalten

Programme auswählen und ausführen

Den Roboter mit der Fernsteuerung lenken

Zusammenfassung

3
Programme erstellen und ändern

Ein schnelles erstes Programm

Ein einfaches Programm erstellen

1. Programmierpalette

2. Startblock

3. Programmierbereich

4. Hardwareseite

Projekte und Programme

5. Dateiverwaltung

6. Werkzeugleiste

7. Der Inhalts-Editor

Die offiziellen EV3-Roboter und die Bonusmodelle bauen

Zusammenfassung

4
Arbeiten mit Programmierblöcken: Aktionsblöcke

Wie funktionieren Programmierblöcke?

Der Bewegungslenkungsblock

Der Bewegungslenkungsblock in Aktion

Wie Modus und Einstellung funktionieren

Richtige Drehungen ausführen

Selbst entdecken 1: Beschleunige

Selbst entdecken 2: Exakte Drehungen

Selbst entdecken 3: Beweg und dreh Dich

Selbst entdecken 4: Buchstabiere

Der Klangblock

Die Konfiguration des Klangblocks

Der Klangblock in Aktion

Selbst entdecken 5: In welche Richtung gehst Du?

Selbst entdecken 6: DJ spielen

Der Anzeigeblock

Die Konfiguration des Anzeigeblocks

Der Anzeigeblock in Aktion

Selbst entdecken 7: Untertitel

Selbst entdecken 8: Warten auf den Explor3r

Der Stein-Statusleuchte-Block

Selbst entdecken 9: Ampel

Die An- und Aus-Modi in Bewegungsblöcken

Selbst entdecken 10: Radio im Fahrmodus

Die Blöcke Hebellenkung, Großer Motor und Mittlerer Motor

Weitere Experimente

Selbst entdecken 11: Zeit, im Kreis zu fahren

Selbst entdecken 12: Navigator

Selbst entdecken 13: Robotänzer

Selbst konstruieren 1: Roboreiniger

Selbst konstruieren 2: Der Explor3r macht Kunst

5
Warten, wiederholen, Eigene Blöcke und Multitasking

Der Warteblock

Die Einstellungen des Warteblocks

Der Warteblock in Aktion

Das Programm WaitDisplay

Selbst entdecken 14: Hinterlasse eine Nachricht

Selbst entdecken 15: Timer für ein Brettspiel

Der Schleifenblock

Den Schleifenblock einsetzen

Der Schleifenblock in Aktion

Schleifenblöcke innerhalb von Schleifenblöcken

Selbst entdecken 16: Bewache den Raum

Selbst entdecken 17: Dreieck

Blöcke selbst machen: Eigene Blöcke

Eigene Blöcke erstellen

Eigene Blöcke in Programmen verwenden

Eigene Blöcke bearbeiten

Eigene Blöcke in Projekten verwalten

Selbst entdecken 18: Mein Quadrat

Selbst entdecken 19: Meine Melodie

Multitasking

Mehrere Startblöcke

Eine Weiterleitung verzweigen

Ressourcenkonflikte vermeiden

Weitere Experimente

Selbst entdecken 20: Multitasking

Selbst entdecken 21: Singletasking

Selbst entdecken 22: Komplizierte Muster

Selbst konstruieren 3: Mr. Explor3r

TEIL 2    ROBOTER MIT SENSOREN PROGRAMMIEREN

6
Wie Sensoren funktionieren

Was sind Sensoren?

Die Sensoren im EV3-Kasten

Funktionsweise des Berührungssensors

Die Stoßstange mit dem Berührungssensor bauen

Sensorwerte anzeigen

Sensoren programmieren

Sensoren und der Warteblock

Selbst entdecken 23: Hello und Goodbye

Selbst entdecken 24: Hindernisse und schlechte Laune vermeiden

Selbst entdecken 25: Einfach drücken

Sensoren und der Schleifenblock

Selbst entdecken 26: Lustige Melodien

Sensoren und der Schalterblock

Selbst entdecken 27: Bleiben oder gehen?

Selbst entdecken 28: Schwere Entscheidungen

Die Modi Vergleichen, Ändern und Messen

Weitere Experimente

Selbst entdecken 29: Die Richtung wählen

Selbst entdecken 30: Warten, Schleife oder Schalter?

Selbst entdecken 31: Stein-Tasten

Selbst konstruieren 4: Einbruchsalarm

Selbst konstruieren 5: Lichtschalter

7
Den Farbsensor verwenden

Den Farbsensor anschließen

Der Farbmodus

Innerhalb einer farbigen Linie bleiben

Selbst konstruieren 6: Bulldozer

Das Programm erstellen

Einer Linie folgen

Der Schalterblock im Messmodus

Der Modus Stärke des reflektierten Lichts

Selbst entdecken 32: Erstelle deine eigene Teststrecke

Selbst entdecken 33: Am blauen Schild anhalten

Selbst entdecken 34: Nenne die Farbe

Selbst entdecken 35: SuperReflektor

Einen Schwellenwert festlegen

Sensorwerte mit einem Schwellenwert vergleichen

Der Linie etwas sanfter folgen

Der Modus Stärke des Umgebungslichts

Der Stärke des Umgebungslichts messen

Eine Morse-Programm

Selbst entdecken 36: Morgenalarm

Weitere Experimente

Selbst entdecken 37: Farbmarkierungen

Selbst entdecken 38: Ein Fingerabdruckscanner

Selbst entdecken 39: Farbmuster

Selbst entdecken 40: Hindernisse auf der Linie

Selbst entdecken 41: Ein verrückter Kurs

Selbst konstruieren 7: Türglocke

Selbst konstruieren 8: Ein sicherer Tresor

8
Den Infrarotsensor verwenden

Der Nähemodus

Hindernissen ausweichen

Sensoren kombinieren

Selbst entdecken 42: Nah heran

Selbst entdecken 43: Drei Sensoren

Der Fernsteuerungsmodus

Selbst entdecken 44: Die Fernbedienung sichern

Der Modus Signal-Nähe

Der Modus Signal-Richtung

Selbst entdecken 45: Sanfter Verfolger

Sensormodi kombinieren

Weitere Experimente

Selbst entdecken 46: Folge mir

Selbst entdecken 47: Echolot

Selbst konstruieren 9: Ein Bahnübergang

Selbst konstruieren 10: Ein narrensicherer Alarm

9
Die Stein-Tasten und Motorumdrehungssensoren verwenden

Die Stein-Tasten verwenden

Selbst entdecken 48: Eine lange Nachricht

Selbst entdecken 49: Eigenes Menü

Den Drehsensor verwenden

Die Motorposition

Die Motorposition zurücksetzen

Die Drehgeschwindigkeit

Selbst entdecken 50: Zurück zum Anfang

Selbst entdecken 51: Geschwindigkeit in Farbe

Funktionsweise der Geschwindigkeitsregelung

Geschwindigkeitsregelung in der Praxis

Einen blockierten Motor stoppen

Weitere Experimente

Selbst entdecken 52: Ferngesteuerte Stein-Tasten

Selbst entdecken 53: Hinderniserkennung bei geringer Geschwindigkeit

Selbst konstruieren 11: Vollautomatisches Haus

TEIL 3    TECHNIKEN DES ROBOTERBAUS

10
Mit Balken, Achsen, Verbindern und Motoren arbeiten

Balken und Rahmen verwenden

Balken verlängern

Rahmen verwenden

Konstruktionen mit Balken verstärken

Winkelbalken verwenden

Selbst entdecken 54: Größere Dreiecke

Das Lego-Raster

Selbst entdecken 55: Winkelkombinationen

Achsen und Kreuzlöcher verwenden

Verbinder verwenden

Achsen verlängern

Parallele Balken verbinden

Balken im rechten Winkel verbinden

Parallele Balken befestigen

Selbst entdecken 56: Konstruktive Verbinder

Halbe Lego-Einheiten nutzen

Selbst entdecken 57: Balken mit einem halben M

Dünne Elemente verwenden

Flexible Konstruktionen bauen

Mit Motoren und Sensoren bauen

Mit dem großen Motor bauen

Balken an den die Motorwelle anschließen

Mit dem mittleren Motor bauen

Mit Sensoren bauen

Verschiedene Elemente

Weitere Experimente

Selbst konstruieren 12: Raupenantrieb

Selbst konstruieren 13: Ein Tischreiniger

Selbst konstruieren 14: Ein Vorhangöffner

11
Mit Zahnrädern und Getrieben arbeiten

Getriebe-Grundlagen

Selbst entdecken 58: Zahnräder beobachten

Ein genauerer Blick auf Zahnräder

Das Übersetzungsverhältnis zweier Zahnräder berechnen

Die Geschwindigkeit des Ausgangszahnrads berechnen

Das benötigte Übersetzungsverhältnis berechnen

Die Rotationsgeschwindigkeit verringern und vergrößern

Selbst entdecken 59: Getriebemathematik

Was ist ein Drehmoment?

Größere Getriebe bauen

Selbst entdecken 60: Vorhersehbare Bewegung

Selbst entdecken 61: Gesamtrichtung

Reibung und Schlupf

Die Zahnräder im EV3-Kasten

Mit dem Einheitenraster arbeiten

Kegel- und Doppelkegelräder verwenden

Rechtwinklige Verbindungen im Einheitenraster

Selbst entdecken 62: Optionen für rechte Winkel

Selbst entdecken 63: Starke Getriebe

Kugelzahnräder verwenden

Schneckenräder verwenden

Selbst entdecken 64: Schneckenantrieb

Stabile Getriebekonstruktionen

Zahnräder mit Balken flankieren

Achsenverdrehung verhindern

Die Drehrichtung umkehren

Mit Zahnrädern und EV3-Motoren bauen

Weitere Experimente

Selbst konstruieren 15: Dragster

Selbst konstruieren 16: Schneckenroboter

Selbst konstruieren 17: Ein Schornsteinkletterer

Selbst konstruieren 18: Drehscheibe

Selbst konstruieren 19: Roboterarm

TEIL 4    FAHRZEUGE UND ROBOTERTIERE

12
Formel EV3: Ein Rennroboter

Den Formel-EV3-Rennwagen bauen

Fahren und Lenken

Eigene Blöcke für die Lenkung erstellen

Die Eigenen Blöcke testen

Das Fernsteuerprogramm schreiben

Selbstständig fahren

Weitere Experimente

Selbst entdecken 65: Überlenkungsexperimente

Selbst entdecken 66: Nachtrennen

Selbst entdecken 67: Das verrückte Gaspedal

Selbst entdecken 68: Ein blinkendes Rücklicht

Selbst entdecken 69: Unfallerkennung

Selbst konstruieren 20: Schneller fahren

Selbst konstruieren 21: Ein Wagen-Upgrade

13
ANTY: Die Roboterameise

Der Laufmechanismus

ANTY bauen

ANTY zum Gehen bringen

Den gegenüberliegenden Eigenen Block erstellen

Hindernissen ausweichen

Das Verhalten programmieren

Futter suchen

Die Umgebung überwachen

Weitere Experimente

Selbst entdecken 70: Fernsteuerung

Selbst entdecken 71: Nachtwesen

Selbst entdecken 72: Hungrige Roboter

Selbst konstruieren 22: Eine Roboterspinne

Selbst konstruieren 23: Fühler

Selbst konstruieren 24: Fürchterliche Klauen

TEIL 5    FORTGESCHRITTENE PROGRAMME ERSTELLEN

14
Datenleitungen nutzen

Den SK3TCHBOT bauen

Erste Schritte mit Datenleitungen

Selbst entdecken 73: Klang je nach Entfernung

Mit Datenleitungen arbeiten

Den Wert in einer Datenleitung ansehen

Eine Datenleitung löschen

Datenleitungen zwischen Programmen

Mehrere Datenleitungen verwenden

Blöcke mit Datenleitungen wiederholen

Selbst entdecken 74: Balkengraphen

Selbst entdecken 75: Ein erweiterter Graph

Datenleitungstypen

Numerische Datenleitungen

Logische Datenleitungen

Selbst entdecken 76: Sanftes Anhalten

Textdatenleitungen

Numerische und logische Arrays

Typumwandlung

Sensorblöcke verwenden

Der Modus Messen

Der Modus Vergleichen

Der Wertebereich von Datenleitungen

Selbst entdecken 77: Ein Sensor-Gaspedal

Selbst entdecken 78: Eine eigene Anschlussansicht

Selbst entdecken 79: Größenvergleich

Fortgeschrittene Programmablaufblöcke

Datenleitungen und der Warteblock

Datenleitungen und der Schleifenblock

Datenleitungen und der Schalterblock

Selbst entdecken 80: IR-Beschleunigung

Der Schleifen-Interrupt-Block

Selbst entdecken 81: Unterbrechungen unterbrechen

Weitere Experimente

Selbst entdecken 82: Sensorübungen

Selbst entdecken 83: Leistung vs. Geschwindigkeit

Selbst entdecken 84: Die wirkliche Richtung

Selbst entdecken 85: SK3TCHBOT beobachtet dich

Selbst konstruieren 25: Bionische Hand

Selbst entdecken 86: Oszilloskop

15
Datenblöcke und Eigene Blöcke mit Datenleitungen verwenden

Datenblöcke verwenden

Der Matheblock

Selbst entdecken 87: 100%-Mathe

Selbst entdecken 88: Addierte Werte

Selbst entdecken 89: Infrarot-Geschwindigkeit

Selbst entdecken 90: Doppelte Infrarot-Geschwindigkeit

Selbst entdecken 91: Zuwachssteuerung

Selbst entdecken 92: Richtungssteuerung

Der Zufallsblock

Selbst entdecken 93: Zufallsfrequenz

Der Vergleichsblock

Selbst entdecken 94: Zufälliger Motor und Geschwindigkeit

Der Block Logische Verknüpfungen

Selbst entdecken 95: Logiksensoren

Selbst entdecken 96: Auf drei Sensoren warten

Der Bereichsblock

Der Rundungsblock

Der Textblock

Selbst entdecken 97: Countdown

Eigene Blöcke mit Datenleitungen erstellen

Ein Eigener Block mit Eingabe

Eigene Blöcke bearbeiten

Selbst entdecken 98: Eigene Einheiten

Selbst entdecken 99: Erweiterte Anzeige

Ein Eigener Block mit Ausgabe

Selbst entdecken 100: Entfernungsdurchschnitt

Selbst entdecken 101: Annäherungsrate

Ein Eigener Block mit Ein- und Ausgabe

Selbst entdecken 102: Kreisberechnungen

Strategien für Eigene Blöcke

Ausgangspunkte für Eigene Blöcke

Eigene Blöcke zwischen Projekten austauschen

Weitere Experimente

Selbst entdecken 103: Ist es eine ganze Zahl?

Selbst entdecken 104: Doppelt blockiert

Selbst entdecken 105: Reflextest

Selbst konstruieren 26: Roboter-Stoppuhr

16
Konstanten und Variablen verwenden

Konstanten verwenden

Variablen verwenden

Variablen definieren

Den Variablenblock einsetzen

Selbst entdecken 106: Alt vs. Neu

Selbst entdecken 107: Vorher vs. Neu

Variablenwerte ändern und erhöhen

Variablen initialisieren

Einen Durchschnitt berechnen

Weitere Experimente

Selbst entdecken 108: Hoch- und runterzählen

Selbst entdecken 109: Ein begrenzter Durchschnitt

Selbst entdecken 110: Zufallsprüfung

Selbst entdecken 111: Dichteste Annäherung

Selbst konstruieren 27: Ein eigener Zähler

17
Spiele auf dem EV3

Schritt 1: Einfache Zeichnungen erstellen

Eigener Block 1: Clear

Eigener Block 2: Coordinates

Das Basisprogramm fertigstellen

Schritt 2: Die Stiftsteuerung hinzufügen

Den Stift bewegen, ohne zu zeichnen

Den Stift in einen Radiergummi verwandeln

Den Bildschirm löschen

Die Stiftstärke festlegen

Selbst entdecken 112: Roboterkünstler

Selbst entdecken 113: Force Feedback

Selbst entdecken 114: Stiftzeiger

Weitere Experimente

Selbst entdecken 115: Ein Arcade-Spiel

Selbst entdecken 116: Ein Gehirntrainer

Selbst konstruieren 28: Ein Plotter

TEIL 6    MASCHINEN UND MENSCHENÄHNLICHE ROBOTER

18
Der SNATCH3R: Ein autonomer Roboterarm

Der Greifer

Der Greifmechanismus

Der Hubmechanismus

Den SNATCH3R bauen

Den Greifmechanismus steuern

Eigener Block 1: Grab

Eigener Block 2: Reset

Eigener Block 3: Release

Das Fernsteuerungsprogramm schreiben

Selbst entdecken 117: Erweiterte Fernsteuerung

Selbst entdecken 118: Geschwindigkeitsregelung über die Fernsteuerung

Probleme mit dem Greifer beheben

Die IR-Fernsteuerung suchen

Den IR-Käfer bauen

Eigener Block 4: Search

Selbst entdecken 119: Signalbestätigung

Das endgültige Programm schreiben

Weitere Experimente

Selbst entdecken 120: Den Roboter beschäftigt halten

Selbst entdecken 121: Einer Spur folgen

Selbst entdecken 122: Objekte in der Nähe finden

Selbst konstruieren 29: Bagger

19
LAVA R3X: Ein Maschinenmensch, der geht und spricht

Die Beine bauen

Den Roboter zum Gehen bringen

Eigener Block 1: Reset

Eigener Block 2: Return

Eigener Block 3: OnSync

Eigener Block 4: Left

Die ersten Schritte machen

Selbst entdecken 123: Der Eigene Block Walk

Selbst entdecken 124: Umkehren

Selbst entdecken 125: Rechts um!

Den Kopf und die Arme bauen

Den Kopf und die Arme steuern

Eigener Block 5: Head

Hindernissen ausweichen und auf Händeschütteln reagieren

Weitere Experimente

Selbst entdecken 126: Tanzende Roboter

Selbst entdecken 127: groß ist die Abweichung?

Selbst entdecken 128: Der Roboter als Aufpasser

Selbst entdecken 129: Der Roboter als Begleiter

Selbst entdecken 130: Arme und Beine synchronisieren

Selbst entdecken 131: Den Roboter fernsteuern

Selbst entdecken 132: Tamagotchi

Selbst konstruieren 30: Zweibeiniger Roboter

A
Fehlerbehebung für Programme, den EV3-Stein und drahtlose Verbindungen

Kompilierungsfehler beheben

Fehlende Eigene Blöcke

Fehler in Programmierblöcken

Fehlende Variablendefinitionen

Laufende Programme korrigieren

Fehlerbehebung auf dem EV3-Stein

Die Hardwareseite

Probleme mit der USB-Verbindung lösen

Den EV3-Stein neu starten

Die EV3-Firmware aktualisieren

Datenverluste mit einer microSD-Karte verhindern

Drahtlose EV3-Programmierung

Programme über Bluetooth auf den EV3-Stein herunterladen

Programme über eine WLAN-Verbindung auf den EV3-Stein herunterladen

Bluetooth oder WLAN?

Zusammenfassung

B
On-Brick-Programme erstellen

On-Brick-Programme erstellen, speichern und ausführen

Blöcke zu der Schleife hinzufügen

Die Einstellungen eines Blocks festlegen

Programme ausführen

Programme speichern und öffnen

On-Brick-Programmierblöcke verwenden

On-Brick-Programme importieren

Zusammenfassung

Index

Einleitung

Bist du bereit, die faszinierende Welt der Robotik zu betreten? Wenn du dieses Buch liest, gehe ich davon aus, dass du den Robotikbausatz LEGO MINDSTORMS EV3 als Lernmittel ausgewählt hast – eine kluge Entscheidung.

Meinen ersten Kontakt mit MINDSTORMS hatte ich 2005 im Alter von 13 Jahren mit dem Robotics Invention System, das damals erhältlich war. Es begann als Hobby, ich fand Roboter so faszinierend, das ich mich zu einer Laufbahn als Ingenieur entschloss. LEGO MINDSTORMS bot eine hervorragende Möglichkeit, um mich mit vielen Prinzipien der Robotik und des Maschinenbaus vertraut zu machen, z.B. Programmierung und Verwendung von Motoren und Sensoren.

Dieses Buch soll dir helfen, die vielen Möglichkeiten von MINDSTORMS auszuprobieren. Ich hoffe, dass du dabei genauso viel Spaß mit diesem Robotikbausatz hast wie ich und dass du eine Menge dabei lernst!

Wozu ist dieses Buch gut?

Der Robotikbausatz LEGO MINDSTORMS EV3 enthält zahlreiche Teile sowie Anleitungen für fünf Roboter. Es macht zwar viel Spaß, diese Roboter zu bauen und zu programmieren, aber als Anfänger kann es eine ziemliche Herausforderung sein, auf eigene Faust über diese Modelle hinauszugehen. Der Baukasten enthält zwar alles, was du brauchst, um die Roboter zum Funktionieren zu bringen, aber die Bedienungsanleitung deckt nur einen Bruchteil dessen ab, was du wissen musst, um eigene Roboter zu bauen und zu programmieren.

Dieses Buch soll als Leitfaden dienen, mit dessen Hilfe du die Möglichkeiten von LEGO MINDSTORMS EV3 ausloten und lernen kannst, deine eigenen Roboter zu erfinden, zu bauen und zu programmieren.

Ist dieses Buch etwas für dich?

In diesem Buch werden keine vorherigen Erfahrungen mit dem Bau oder der Programmierung mit LEGO MINDSTORMS vorausgesetzt. Du gehst hier von grundlegender zu immer anspruchsvollerer Programmierung über und lernst immer kompliziertere Roboter zu bauen. Anfänger sollten mit Kapitel 1 beginnen und dann den Schritt-für-Schritt-Anleitungen in Kapitel 2 folgen, um einen einfachen Roboter zu bauen und zu programmieren. Wenn du bereits Erfahrungen mit MINDSTORMS hast, kannst du auch einfach mit einem Kapitel anfangen, dass dich interessiert, und von dort aus weitermachen. Die Kapitel zur erweiterten Programmierung in Teil V und die Roboterdesigns in Teil VI sind vor allem für Leser mit mehr Erfahrung interessant.

Wie ist dieses Buch aufgebaut?

Du kannst das Buch zwar auch zum Nachschlagen verwenden, aber es ist eigentlich als Arbeitsbuch angelegt. Ich habe Bau, Programmierung und Probleme der Robotik gemischt, um zu verhindern, dass du dich mühselig durch lange Kapitel voller Theorie kämpfen musst.

Beispielsweise lernst du grundlegenden Programmiertechniken kennen, während du erfährst, wie du deinen ersten Roboter in Bewegung setzen kannst, und erfährst mehr über fortgeschrittene Programmierer, während du weitere Roboter baust. Dieses Buch verfolgt den Ansatz des Lernens durch Ausprobieren, was meiner Meinung nach die beste Möglichkeit ist, um das Bauen und Programmieren von MIDNSTORMS-Robotern zu erlernen.

Selbst entdecken

Um die in den einzelnen Kapiteln besprochenen Prinzipien zu verinnerlichen, habe ich viele Aufgaben mit dem Titel Selbst entdecken eingestreut. Darin wirst du aufgefordert, die Beispielprogramme zu erweitern oder ganz neue Programme zu schreiben. Nachdem du beispielsweise gelernt hast, wie du Töne abspielst und Text auf dem Bildschirm anzeigst, wirst du dazu aufgefordert, ein Programm zu schreiben, mit dem der Roboter auf dem Bildschirm Untertitel anzeigt, während er spricht.

Am Ende vieler Kapitel findest du auch Aufgaben unter dem Titel Selbst konstruieren, die dir Anregungen geben, um den in dem Kapitel gebauten Roboter zu ändern oder zu verbessern. Beispielsweise wirst du dazu aufgefordert, einen Rennroboter schneller zu machen, indem du ein Getriebe zwischen Motor und Räder einschaltest, oder gar einen neuen Roboter zu bauen, der aus deinem EV3 eine Alarmanlage macht!

Schwierigkeitsgrad und Zeit

Als Entscheidungshilfe dafür, welche der Selbst-entdecken-Aufgaben du angehen möchtest, habe ich jeweils den Schwierigkeitsgrad angegeben. Leichte Aufgaben (Image) können gewöhnlich dadurch gelöst werden, indem du ein Programm mit ähnlichen Techniken wie im Beispiel schreibst oder erweiterst. Der mittlere Schwierigkeitsgrad (Image) ermutigt dich, weiter Ausschau zu halten und die neue Theorie mit einigen zuvor gelernten Techniken zu kombinieren. Schwierige Aufgaben (Image) stellen dich und deine Kreativität vor die Herausforderung, über die vorgestellten Beispiele hinauszugehen.

Bei der Einschätzung des Schwierigkeitsgrads bin ich davon ausgegangen, dass du die Kapitel in der vorgegebenen Reihenfolge liest. Eine Aufgabe, die in Kapitel 4 als schwer gekennzeichnet ist, ist daher im Gegensatz zu einer schweren Aufgabe aus Kapitel 19 ganz leicht.

Außerdem habe ich bei den Selbst-entdecken-Aufgaben jeweils angegeben, wie viel Zeit du in etwa zur Lösung brauchst. Auch hier reicht die Skala von kurz (Image) über mittel (Image) zu lange (Image). Bei kurzen Aufgaben ist es gewöhnlich nur erforderlich, einige wenige Änderungen an dem Beispielprogramm vorzunehmen, während du für die langwierigen ein komplett neues Programm erstellen musst.

Die Selbst-konstruieren-Aufgaben nehmen in der Regel mehr Zeit in Anspruch, da es hierbei um Bau und Programmierung geht. Bei ihnen habe ich jeweils den zu erwartenden Aufwand für das Bauen (Image) und für die Programmierung (Image) angegeben.

Lösungen finden

Bei einigen Aufgaben sind ein oder zwei Hinweise als Anhaltspunkte gegeben, aber es gibt jeweils viele Möglichkeiten, um sie zu lösen. Es spielt keine Rolle, wenn du dich nicht genau an die Orientierungshilfen hältst. Schließlich kann es durchaus sein, dass du auf eine innovative Lösung gekommen bist, die mir nicht eingefallen ist!

Die Schwierigkeitsgrade und Zeitangaben der Aufgaben sind nur Schätzwerte. Mach dir keine Sorgen, wenn du zur Lösung eines Problems etwas mehr Zeit brauchst. Hauptsache, du hast Spaß, wenn du diese Herausforderungen annimmst!

Lösungen für einige der Selbst-entdecken-Aufgaben findest du auf http://ev3.robotsquare.com/. Sie können dir als Ausgangspunkt dienen. Um Aufgaben zu lösen, für die keine Lösungen zum Download bereitstehen, musst du deine eigene Kreativität einsetzen.

Was ist in den einzelnen Kapiteln zu finden?

Die folgenden Abschnitte geben dir einen Überblick über die sechs Teile dieses Buchs. Einige der Begriffe, die hier fallen, sind dir vermutlich neu. Wenn du das Buch liest, wirst du aber erfahren, was es damit auf sich hat.

Teil I: Erste Schritte

Teil I beginnt mit der Beschreibung des Inhalts des Robotikbausatzes EV3 in Kapitel 1. In Kapitel 2 baust du deinen ersten Roboter und lernst den EV3-Stein kennen. Die EV3-Software zur Programmierung der Roboter wird in Kapitel 3 vorgestellt. In Kapitel 4 erfährst du, wie du diese Software dazu verwendest, um einen Roboter in Bewegung zu setzen, indem du dein erstes Programm mit den grundlegenden Programmierblöcken schreibst. In Kapitel 5 lernst du unverzichtbare Programmiertechniken kennen, z.B. um deinen Roboter Handlungen wiederholen oder mehrere Dinge gleichzeitig tun zu lassen.

Teil II: Roboter mit Sensoren programmieren

In diesem Teil lernst du alles über Sensoren, die wichtige Bestandteile von MINDSTORMS-Robotern sind. In Kapitel 6 fügst du dem zuvor gebauten Roboter einen Berührungssensor hinzu und lernst die zur Verwendung von Sensoren erforderlichen Programmiertechniken kennen. Danach geht es weiter mit dem Farbsensor in Kapitel 7, dem Infrarotsensor und dem Infrarotsender in Kapitel 8 und zwei Arten von eingebauten Sensoren in Kapitel 9.

Teil III: Techniken des Roboterbaus

Dieser Teil behandelt die LEGO Technic-Bauelemente, die im EV3-Kasten enthalten sind. Du lernst in Kapitel 10, wie du Balken, Achsen und Verbinder verwendest. Um Zahnräder geht es in Kapitel 11.

Teil IV: Fahrzeuge und Tierroboter

Nachdem du den Umgang mit Motoren und Sensoren gelernt hast, baust du zwei Roboter, mit denen du diese neuen Fähigkeiten unter Beweis stellst, nämlich das Formel-EV3-Rennauto in Kapitel 12 und die Roboterameise ANTY in Kapitel 13.

Teil V: Fortgeschrittene Programme

Teil V behandelt Programmiertechniken für Fortgeschrittene. Du erfährst hier etwas über Datenleitungen (Kapitel 14), über die Verarbeitung von Sensorwerten und über Berechnungen auf dem EV3-Stein (Kapitel 15Kapitel 16Kapitel 17