LEGO®-EV3-Roboter - Laurens Valk - ebook

LEGO®-EV3-Roboter ebook

Laurens Valk

0,0

Opis

LEGO® MINDSTORMS hat die Art, wie wir über Robotik denken, radikal verändert, indem es jedermann ermöglicht, funktionierende Roboter zu bauen. Das neueste MINDSTORMS-Kit von LEGO - EV3 - ist mächtiger als je zuvor, und "LEGO-EV3-Roboter " ist der ideale Einstieg in das System. Bestseller-Autor und Robotik-Experte Laurens Valk vermittelt dir zuerst die Grundlagen der Programmierung und Robotik, indem du einen einfachen Roboter baust und programmierst, der sich bewegt und mit Sensoren auf seine Umwelt reagiert. Danach kommen zunehmend raffiniertere Roboter an die Reihe, an denen du fortgeschrittene Programmiertechniken wie Datenleitungen, Variable und Eigene Blöcke kennenlernst. Außerdem beschreibt Laurens Valk wichtige Bautechniken, um Balken, Zahnräder und Verbinder effektiv in deinen eigenen Kreationen einzusetzen. Für fünf tolle Roboter beschreibt das Buch Bau und Programmierung im Detail: • EXPLOR3R, ein Fahrzeug mit Rädern, das Sensoren verwendet, um in einem Raum zu navigieren und Linien zu folgen • FORMEL EV3 Rennroboter, ein schnittiger, ferngesteuerter Rennwagen • ANTY, eine sechsfüßige Roboterameise, die ihr Verhalten an ihre Umgebung anpasst • SNATCH3R, ein Roboterarm, der autonom ein Blinklicht finden, ergreifen und bewegen kann und • LAVA R3X, ein Maschinenmensch, der läuft und spricht. Außerdem werden dich mehr als 150 Entdeckungs- und Konstruktionsaufgaben anregen, kreativ zu denken und eigene Roboter zu erfinden, bei denen du das Gelernte anwenden kannst. Benötigt wird: • LEGO Mindstorms EV3 Set (LEGO Set 31313)

Ebooka przeczytasz w aplikacjach Legimi na:

Androidzie
iOS
czytnikach certyfikowanych
przez Legimi
Windows
10
Windows
Phone

Liczba stron: 401

Odsłuch ebooka (TTS) dostepny w abonamencie „ebooki+audiobooki bez limitu” w aplikacjach Legimi na:

Androidzie
iOS



LEGO®-EV3-ROBOTER

Bauen und programmieren lernen mit LEGO® MINDSTORMS® EV3

Laurens Valk

Laurens Valk

Lektorat: Dr. Michael BarabasÜbersetzung: G&U Language & Publishing Services GmbH, www.gundu.comSatz: G&U Language & Publishing Services GmbH, www.gundu.comCopy-Editing: Ursula Zimpfer, HerrenbergHerstellung: Susanne BröckelmannUmschlaggestaltung: Helmut Kraus, www.exclam.deDruck und Bindung: M.P. Media-Print Informationstechnologie GmbH, 33100 Paderborn

Bibliografische Information der Deutschen NationalbibliothekDie 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-5PDF 978-3-86491-593-2ePub 978-3-86491-594-9

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

Copyright der amerikanischen Originalausgabe: © 2014 by Laurens ValkTitel der Originalausgabe: The LEGO® MINDSTORMS® EV3 Discovery Book: a beginner’s guide to building and programming robotsNo Starch Press, Inc. · 245 8th Street, San Francisco, CA 94103 l www.nostarch.comISBN-10: 1-59327-532-3ISBN-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

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

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

1Deinen 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

2Baue 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

3Programme 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

4Arbeiten 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

5Warten, 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

6Wie 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

7Den 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

8Den 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

9Die 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

10Mit 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

11Mit 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

12Formel 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

13ANTY: 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

14Datenleitungen 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

15Datenblö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

16Konstanten 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

17Spiele 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

18Der 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

19LAVA 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

AFehlerbehebung 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

BOn-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 () können gewöhnlich dadurch gelöst werden, indem du ein Programm mit ähnlichen Techniken wie im Beispiel schreibst oder erweiterst. Der mittlere Schwierigkeitsgrad () ermutigt dich, weiter Ausschau zu halten und die neue Theorie mit einigen zuvor gelernten Techniken zu kombinieren. Schwierige Aufgaben () 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 () über mittel () zu lange (). 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 () und für die Programmierung () 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 15) und darüber, wie du den Roboter dazu bringst, sich etwas mithilfe von Variablen zu merken (Kapitel 16). In Kapitel 17 schließlich kombinierst du all diese Programmiertechniken, um einen Roboter zu bauen, mit dem du den EV3-Bildschirm ähnlich wie eine Zaubertafel verwenden kannst.

Teil VI: Maschinen und menschenähnliche Roboter

Nachdem du Motoren, Sensoren und anspruchsvolle Programmiertechniken kennengelernt hast, baust du in diesem Teil zwei komplizierte Roboter. In Kapitel 18 konstruierst und programmierst du den SNATCH3R, einen autonomen Roboterarm, der die Infrarotfernbedienung selbstständig finden, packen, anheben und transportieren kann.

In Kapitel 19 schließlich baust du den LAVA R3X, den menschenähnlichen Roboter vom Titelbild, der geht und spricht. Die Gestaltung geht auf den legendären Alpha Rex aus der vorherigen LEGO MINDSTORMS-Generation zurück.

Die Begleitwebsite

Auf der Begleitwebsite (http://ev3.robotsquare.com/) findest du Links zu anderen hilfreichen Websites, herunterladbare Versionen aller Beispielprogramme in diesem Buch und Lösungen für einige der Selbst-entdecken-Aufgaben.

Schlusswort

MINDSTORMS regt die Kreativität und Erfindungsgabe von Konstrukteuren aller Altersstufen an. Schnapp dir also deinen EV3-Robotikbausatz, fang bei Kapitel 1 an zu lesen und betritt die kreative Welt von LEGO MINDSTORMS. Ich hoffe, dieses Buch dient dir als Anregung!

TEIL IErste Schritte

1Deinen EV3-Kasten vorbereiten

Alle Roboter dieses Buchs können mit nur einem Lego-Mindstorms-EV3-Kasten gebaut werden (Lego-Katalognummer 31313). Wenn du diesen Kasten, gezeigt in Abbildung 1-1, besitzt, kann es schon losgehen. Wenn du die Schulversion des Kastens hast (#44554), findest du unter http://ev3.robotsquare.com/ eine Liste mit den zusätzlich erforderlichen Teilen für die Projekte dieses Buchs.

In diesem Kapitel lernst du den EV3-Stein und die anderen Bestandteile des Kastens kennen. Außerdem wirst du die Software, die für die Roboterprogrammierung notwendig ist, herunterladen und sie installieren.

Was ist drin?

Der Lego-Mindstorms-EV3-Kasten wird mit vielen Technic-Bauteilen und Elektronikkomponenten geliefert, wie z.B. Motoren, Sensoren, dem EV3-Stein, einer Fernsteuerung und Kabel (siehe Abbildung 1-2). Im Verlauf dieses Buches liest, lernst du die einzelnen Komponenten kennen. Zusätzlich findest du auf der Innenseite des Rückumschlags eine vollständige Liste der Bauteile.

EV3-Roboter verwenden große oder mittlere Motoren um ihre Räder, Arme und andere bewegliche Komponenten anzutreiben. Sie können mittels Sensoren ihre Umgebung wahrnehmen, z.B. die Farbe einer Oberfläche oder den ungefähren Abstand zu einem Objekt. Mit Kabeln werden die Motoren und Sensoren an den EV3-Stein angeschlossen. Die Infrarotfernsteuerung, oder einfach Fernsteuerung, steuert einen Roboter aus der Distanz.

Abbildung 1-1: Der Lego-Mindstorms-EV3-Kasten (#31313) enthält alle Teile für die in diesem Buch vorgestellten Roboter.

Der EV3-Stein

Der EV3-Stein, oder einfach der EV3, ist ein kleiner Computer, der die Motoren und Sensoren eines Roboters steuert, sodass er selbsttätig umherfahren kann. Zum Beispiel wirst du in Kürze einen Roboter bauen, der sich automatisch von einem Objekt wegbewegt, das seinen Weg kreuzt. Wenn ein Sensor dem EV3 mitteilt, dass sich ein Objekt in der Nähe befindet, aktiviert der EV3 den Motor, und der Roboter fährt davon.

Dein Roboter führt diese Aktionen mittels eines Programms aus, also einer Liste von Anweisungen, die dem Roboter normalerweise nacheinander gegeben werden. Programme erstellst du mit einem Computer, auf dem die Programmiersoftware des Lego Mindstorms EV3 installiert ist. Wenn du mit dem Erstellen eines Programms fertig bist, sendest du es über ein dem Kasten beiliegendes USB-Kabel an den EV3-Stein, und dein Roboter sollte dann tun, was die Programmierung vorsieht.

Abbildung 1-2: Der EV3-Kasten enthält grundlegende Technic-Elemente wie Motoren, Sensoren, den EV3-Stein eine Fernsteuerung und Kabel.

Um deinen EV3 mit Strom zu versorgen, legst du entweder sechs AA-Batterien ein (wie in Abbildung 1-3 gezeigt) oder verwendest den Lego-EV3-Akku (#45501) und das Ladegerät (#8887). Die Form des Akkupacks macht den EV3-Stein etwas größer. Die Roboter können alle auch mit dem Akkupack gebaut werden, mit Ausnahme des TRACK3R-Roboters, der auf dem Baukasten gezeigt wird. Für dieses Modell musst du die Konstruktion ein wenig anpassen, um Platz zu schaffen.

Die Infrarotfernsteuerung versorgst du mittels zweier AAA-Batterien mit Strom.

Abbildung 1-3: Du kannst den EV3-Stein mithilfe von sechs AA-Batterien oder dem EV3-Akkupack mit Strom versorgen.

Technic-Elemente sortieren

Um bei der Suche nach speziellen Technic-Teilen Zeit zu sparen, solltest du die Bauteile, wie in Abbildung 1-4 gezeigt, in einem Kasten sortieren. Dadurch wird es leichter, die Modelle dieses Buchs nachzubauen und später auch deine eigenen Roboter zu entwerfen. Du kannst so auf einen Blick sehen, wenn ein spezielles Bauteil zur Neige geht, und verschwendest keine Zeit damit, nach Teilen zu suchen, die du nicht hast.

Du sortierst die Elemente am besten nach ihrer Funktion. Zum Beispiel kannst du jeweils Balken, Zahnräder, Achsen usw. getrennt lagern. Wenn du nicht genügend Fächer für die einzelnen Elementtypen hast, legst du solche Teile zusammen, die sich leicht unterscheiden lassen. Lege beispielsweise kurze graue Achsen und kurze rote Achsen in ein gemeinsames Fach statt grauer Achsen verschiedener Längen.

Abbildung 1-4: So könnte ein Sortierkasten für die Technic-Elemente eines EV3-Kastens aussehen.

Der EV3-Kasten wird mit einer Reihe von Aufklebern geliefert, jeweils einer pro weißes Paneel-Element. Klebe die Aufkleber jetzt auf die Paneele, wie in Abbildung 1-5 gezeigt. Die Aufkleber helfen dir dabei, zu erkennen, welches Paneel (klein oder groß) du später in diesem Buch verwenden wirst.

Abbildung 1-5: Um die Aufkleber passend auf die Paneele zu kleben, fügst du zuerst zusammengehörige Elemente mittels zweier schwarzer Pins zusammen, sodass sie besser ausgerichtet werden können. Anschließend entfernst du die Pins.

Das Mission-Pad

Die EV3-Schachtel enthält ein Mission-Pad, das du innen im Karton um den Kasten findest, wie es Abbildung 1-6 zeigt. Du kannst deine Roboter so programmieren, dass sie mit dem Pad interagieren und z.B. der dicken roten Linie folgen (siehe Kapitel 7). Für die Projekte dieses Buchs kannst du auch dein eigenes Pad verwenden, das du unter http://ev3.robotsquare.com/ herunterladen und ausdrucken kannst.

Abbildung 1-6: Das Mission-Pad. Du findest es auf der Innenseite des Umkartons des EV3-Kastens (markiert durch eine gestrichelte Linie und eine kleine Schere).

Steuerung des Roboters

Mit dem EV3-Kasten kannst du deinen Roboter auf verschiedene Weise steuern (siehe Abbildung 1-7). In diesem Buch lernst du mit der EV3-Programmiersoftware Anweisungen zu schreiben, die deinen Roboter bestimmte Dinge automatisch tun lassen. Du lernst aber auch, wie du deine Roboter mit einer Fernsteuerung steuerst. Du kannst deinem Roboter mit der Infrarotfernsteuerung aus dem EV3-Kasten Anweisungen geben, aber auch mit einer App, die dein Smartphone oder Tablet in eine solche Fernsteuerung verwandelt. Diese Anwendungen ermöglichen die Steuerung der Motoren und Sensoren deines Roboters und können auch als Spezialfernsteuerung eingesetzt werden (siehe auch http://ev3.robotsquare.com/, wo du eine App-Liste findest).

Die EV3-Software herunterladen und installieren

Bevor du Programme für deinen Roboter schreiben kannst, musst du die EV3-Software herunterladen und installieren. Für die folgenden Schritte benötigst du eine Internetverbindung.

(Wenn der Computer, den du für die Programmierung verwendest, nicht mit dem Internet verbunden ist, führe die Schritte 1 und 2 auf einem Computer mit Internetzugang aus und laden die Installationsdateien auf einen USB-Stick mit mindestens 1 GB Speicher. Dann kopiere sie auf den anderen Computer und fahre mit Schritt 3 fort.)

Abbildung 1-7: Du kannst deinen Roboter mittels Programmen automatisch steuern oder manuell mit der Fernsteuerung.

1. Gehe zu http://LEGO.com/MINDSTORMS/, klicke auf Downloads, wähle die EV3-Software und klicke auf Herunterladen (siehe Abbildung 1-8).

Abbildung 1-8: Die Download-Seite auf der Website von Lego Mindstorms EV3. Hier kannst du auch Zusatzmaterial herunterladen, wie Bedienungsanleitungen und Programmierblöcke.

2. Auf der folgenden Seite wählst du dein Betriebssystem und die gewünschte Sprache aus (siehe Abbildung 1-9). Du kannst jede gewünschte Sprache anklicken, in diesem Buch wird jedoch Deutsch verwendet. Für Windows XP, Vista, Windows 7 und Windows 8 wählst du Win32 und klickst dann auf die Datei mit der Endung .exe. Für Mac OS 10.6 oder höher wähle OSX und klicke auf die Datei mit der Endung .dmg. Eine neue Seite mit einer Download-Schaltfläche erscheint. Klicke auf diese Schaltfläche und speichere die Datei auf deinem Computer.

Abbildung 1-9: Wähle Betriebssystem und Sprache. Die 01-01 im Dateinamen bedeutet, dass es sich um Version 1.01 handelt. Wenn du die Software herunterlädst, wähle immer die neuestmögliche.

Abbildung 1-10: Der Installationsvorgang. Starte den Installer durch Doppelklick auf die Installationsdatei, die du heruntergeladen hast.

HINWEISWenn der Download sehr lange dauert, kannst du auch schon mit Kapitel zwei weitermachen und mit dem Bauen beginnen. Kehre an diese Stelle zurück, wenn der Download abgeschlossen ist.

3. Unter Windows doppelklicke auf die gerade heruntergeladene Datei und installiere die Software gemäß den Anweisungen auf dem Bildschirm (siehe Abbildung 1-10). Auf einem Mac doppelklicke auf die .dmg-Datei und dann auf das erscheinende Paket. Folge den Anweisungen auf dem Bildschirm, um die Software zu installieren.

4. Wenn die Installation abgeschlossen ist (und du deinen Computer nach der Aufforderung neu gestartet hast), sollte eine Verknüpfung namens LEGO MINDSTORMS EV3 Home Edition auf deinem Desktop sein. Doppelklicke auf sie, um die Software zu starten. Dazu ist keine Internetverbindung mehr notwendig.

HINWEISUm die Software auf eine neuere Version zu aktualisieren, lade einfach die neueste Version herunter und installiere sie wie hier gezeigt. Du musst die alte Fassung nicht manuell entfernen.

Zusammenfassung

Jetzt ist alles bereit, um einen Roboter zu bauen und ein Programm zu schreiben, das ihn steuert. Legen wir also los. In Kapitel 2 erfährst du mehr über den EV3-Stein, Motoren und die Fernsteuerung und baust deinen ersten Roboter.

2Baue deinen ersten Roboter

In Kapitel 1 hast du gelernt, dass Roboter aus Motoren, Sensoren und dem EV3-Stein bestehen. Damit du besser verstehst, wie diese zusammenarbeiten, setzen wir sie im ersten Roboter nicht alle auf einmal ein.

In diesem Kapitel verwendest du den EV3-Stein und zwei große Motoren, um ein Radfahrzeug namens EXPLOR3R zu bauen, wie in Abbildung 2-1 gezeigt. Du baust außerdem einen Empfänger für die Fernsteuerung. Wenn du den Roboter fertiggestellt hast, lernst du, ihn mittels der Knöpfe über die Fernsteuerung zu bewegen.

Abbildung 2-1: Der EXPLOR3R bewegt sich mit zwei Vorderrädern und einem Stützrad hinten.

Die Bauanleitungen

Der Lego-Mindstorms-EV3-Kasten enthält viele Balken und Achsen in unterschiedlichen Längen. Damit du das richtige Element findet, ist die Länge in der Bauanleitung angegeben, so wie in Abbildung 2-2 gezeigt.

Um die Länge eines Balkens zu ermitteln, zählst du einfach seine Löcher (in der Abbildung wird die Länge des Balkens mit 11 angegeben). Um die Länge einer Achse herauszufinden, legst du sie neben einen Balken und zählst die Anzahl der Löcher, die verdeckt werden (in der Abbildung beträgt die Länge der Achse 3 Löcher).

Wenn du Balken oder andere Elemente mit Pins verbindest, achte darauf, den richtigen Pin anhand seiner Farbe auszuwählen, wie in Abbildung 2-3 gezeigt. Das ist wichtig, da frei drehbare Pins (für drehbare Verbindungen) und Pins mit Reibung (die bei festen Konstruktionen zum Einsatz kommen) unterschiedliche Einsatzzwecke haben.

Abbildung 2-2: Balken und Achsen gibt es in unterschiedlichen Längen, sodass du bei der Auswahl aufpassen solltest. Ermittle die Länge, wie hier gezeigt, oder verwende das Diagramm auf der Innenseite des Umschlags.

Den EXPLOR3R bauen

Um mit dem Bau zu beginnen, wählst du die Teile anhand der Bauteilliste in Abbildung 2-4 aus. Dann folgst du den einzelnen Schritten, die auf den folgenden Seiten gezeigt werden.

Abbildung 2-3: Der EV3-Kasten enthält fixe und drehbare Pins. Wenn du die Modelle dieses Buchs nachbaust, achte darauf, die richtige Sorte anhand der Farbe auszuwählen.

Abbildung 2-4: Bauteilliste für den EXPLOR3R

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

10

11

12

13

14

Verbinde die Kabel wie hier gezeigt. (Die Kabel haben nicht die angegebene Farbe. Die Farben sollen dir aber dabei helfen, sie richtig anzuschließen.)

Ausgabeanschlüsse, Eingabeanschlüsse und Kabel

Herzlichen Glückwunsch – du hast den EXPLOR3R fertig gebaut!

Jetzt wollen wir uns mit den Kabeln beschäftigen, die du gerade an den EV3-Stein angeschlossen hast. Du hast zwei große Motoren an die Ausgabeanschlüsse B und C des EV3-Steins angeschlossen. Große und mittlere Motoren sollten immer mit den Ausgabeanschlüssen A, B, C oder D verbunden werden, wie in Abbildung 2-5 gezeigt. Sensoren sollten an die Eingabeanschlüsse 1, 2, 3 oder 4 angeschlossen werden. (Sensoren erkläre ich detailliert in Teil II dieses Buchs.)

Der EV3-Kasten enthält drei Sorten von Kabeln: vier kurze Kabel (25 cm), zwei mittlere (35 cm) und ein langes Kabel (50 cm). Wickle die Kabel immer um den Roboter herum, sodass sie nicht mit sich drehenden Elementen in Kontakt kommen (z. B. Rädern) und nicht auf dem Boden schleifen, wenn sich der Roboter bewegt.

Der EV3-Stein hat zwei USB-Anschlüsse. Der eine mit PC beschriftete oben auf dem EV3 (siehe Abbildung 2-5) dient zur Übertragung von Programmen vom Computer auf den Roboter. Der USB-Anschluss an der Seite des EV3 dient zur Verbindung mit externen Geräten, wie einem WIFI-Dongle. Neben dem USB-Anschluss gibt es einen Steckplatz für micro SD-Karten, mit denen du den Speicher des EV3 um 4 MB vergrößern kannst. (Der interne Speicher des EV3 reicht aber für alle Experimente dieses Buchs aus.)

Der EV3-Stein

Bevor wir mit der Programmierung in Kapitel 3 beginnen, probieren wir die Tasten auf dem EV3-Stein aus (siehe Abbildung 2-6) und bewegen uns durch Menüs und starten gespeicherte Programme.

Abbildung 2-5: Du verbindest Motoren mit Ausgabeanschlüssen und Sensoren mit Eingabeanschlüssen. Der USB-Anschluss mit der Bezeichnung PC dient zur Übertragung von Programmen vom PC auf den EV3.

Abbildung 2-6: Das EV3-Display, die EV3-Tasten und die Statusleuchte um die Tasten herum

Abbildung 2-7: Der EV3-Stein wird über die Mitte-Taste eingeschaltet, worauf ein Menü mit vier Registerkarten erscheint. Das RegisterZuletzt verwendet, das rechts gezeigt wird, enthält die zuletzt verwendeten Programme.

Den EV3 an- und ausschalten

Um den EV3 anzuschalten, drückst du die Mitte-Taste, wie in Abbildung 2-7 gezeigt. Die Statusleuchte sollte rot leuchten, während der EV3 hochfährt. Wenn der EV3 hochgefahren ist (nach etwas 30 Sekunden), leuchtet die Statusleuchte grün und du solltest ein Menü mit vier Registerkarten auf dem EV3-Display sehen. Diese Menüs werden in den nachfolgenden Kapiteln beschrieben. Jede Registerkarte enthält eine Reihe besonderer Funktionen, hier von links nach rechts aufgelistet:

Zuletzt verwendet: Dieses Register enthält zuletzt ausgeführte Programme.

Datei-Navigation: Dieses Register enthält für jedes auf den EV3 übertragene Programmierprojekt einen Ordner. In jedem Ordner findest du Programme und die dazugehörigen Dateien, wie Klänge.

Stein-Anwendungen: Dieses Register enthält Anwendungen, um Sensoren auszulesen und Motoren manuell oder per Fernsteuerung zu lenken.

Einstellungen: Dieses Register enthält Voreinstellungen des Benutzers, wie die Bluetooth-Sichtbarkeit und Lautstärke.

Abbildung 2-8: Den EV3-Stein ausschalten

Um den EV3 auszuschalten, gehst du zurück ins Menü Zuletzt verwendet und hältst die Zurück-Taste gedrückt. Wenn das Ausschalt-Symbol erscheint, wählst du entweder das Häkchen aus, um den EV3 auszuschalten, oder das X zum Abbrechen (siehe Abbildung 2-8). Wenn du den EV3 ausschaltest, um die Batterien zu ersetzen, solltest du unbedingt warten, bis die rote Statusleuchte erloschen ist, sonst verlierst du alle Programme, die seit dem Einschalten auf den EV3 übertragen wurden.

Programme auswählen und ausführen

Du kannst mit den Rechts- und Links-Tasten zwischen den Registerkarten umschalten. Ein Druck auf die Zurück-Taste bringt dich zurück zum Register Zuletzt verwendet. Elemente auf den Registerkarten wählst du mit den Auf- oder Ab-Tasten aus. Um ein ausgewähltes Element zu aktivieren, drückst du die Mitte-Taste.

EV3-Roboter beginnen mit dem Ausführen ihrer Aktionen, wenn du ein auf den EV3-Stein übertragenes Programm auswählst und startest. Auch wenn du bis jetzt noch kein Programm auf den EV3 übertragen hast, kannst du ein Beispielprogramm namens Demo ausprobieren, das sich schon auf dem EV3-Stein befindet. Um deinen EXPLOR3R zu testen, führst du dieses Programm aus, indem du zum Datei-Navigation-Register gehst und dort das Programm Demo auswählst, wie in Abbildung 2-9 gezeigt.

Wenn du alles richtig gebaut hast, sollte dein Roboter einige Kreise fahren, sich vorwärts bewegen, zwei Mal nach links fahren und auf dem Display zwei Augen anzeigen. Die grüne Statusleuchte blinkt, während das Programm läuft. Um ein laufendes Programm abzubrechen, drückst du die Zurück-Taste. (Nachdem du das Programm jetzt ein Mal ausgeführt hast, sollte es auch unter der Registerkarte Zuletzt verwendet auftauchen.)

HINWEISDas Programm Demo wurde direkt auf dem EV3-Stein erstellt, verhält sich jedoch genau wie Programme, die du auf deinem Computer schreibst.

Den Roboter mit der Fernsteuerung lenken

Wenn du mit dem Bau des Roboters fertig bist, ist es wichtig, seine mechanische Funktion zu testen, bevor du mit dem Programmieren beginnst. So stellst du fest, ob vielleicht Kabel oder Zahnräder falsch montiert sind.

Du kannst die Motoren des Roboters per Hand mit den Anwendungen Motor Control oder IR Control steuern, wie in Abbildung 2-10 gezeigt. Motor Control aktiviert die einzelnen Motoren über die EV3-Tasten. IR (Infrarot) Control ermöglicht das Lenken des Roboters mit der IR-Fernsteuerung. Wähle IR Control auf der Registerkarte Stein-Anwendungen und verwende die IR-Fernsteuerung, um deinen Roboter zu lenken (siehe Abbildung 2-10). Es ist nicht nur einfach, deinen Roboter fernzusteuern, es macht auch Spaß!

HINWEISDer Infrarotsensor fungiert als Empfänger für die Infrarotfernsteuerung. Du kannst die Fernsteuerung nicht ohne Sensor benutzen. Für die IR Control-Anwendung muss der Sensor an Eingang 4 angeschlossen sein, wie bei der Konfiguration für den EXPLOR3R.

Abbildung 2-9: Um das ProgrammDemozu starten, wechselst du zum RegisterDatei-Navigation, wählst den OrdnerBrkPro_Save, öffnest ihn mit derMitte-Taste, wählst dasDemo-Programm über dieUnten-Taste und drückst dieMitte-Taste. Du findest deine eigenen Programme auch auf der RegisterkarteDatei-Navigation. (In der Abbildung kannst du ein Projekt sehen, das ichTestProjectgenannt habe.)

Abbildung 2-10: Um den Fernsteuerungsmodus einzuschalten, navigierst du zu den Stein-Anwendungen und wählst IR Control. Wenn das Display unten rechts nicht Ch1 + 2 anzeigt, drückst du erneut dieMitte-Taste. In dieser Konfiguration steuerst du die Motoren an den Anschlüssen B und C mit der Fernsteuerung auf Kanal 1. (Der rote Schalter befindet sich ganz oben.)

Zusammenfassung

In diesem Kapitel hast du zwei wichtige Roboterkomponenten kennengelernt: den EV3-Stein und die Motoren. Als du das Demo-Programm gestartet hast, aktivierte der EV3 die Motoren, wodurch sich der Roboter bewegte. In Kapitel 3 und 4 lernst du, wie diese Programme funktionieren und wie du mit der EV3-Software deine eigenen Programme schreibst. Der Infrarotsensor und die Infrarotfernsteuerung kommen in Teil II dieses Buchs wieder.

3Programme erstellen und ändern

Wenn du deinen Roboter gebaut hast, kommt als Nächstes das Programm. Ein Programm bringt den EXPLOR3R zum Beispiel dazu, erst vorwärts und dann nach links oder rechts zu fahren.

In diesem Kapitel lernst du, wie mit der EV3-Software Programme geschrieben und geändert werden. Auch wenn du Programme direkt auf dem EV3 ohne Computer schreiben kannst, sind diese doch recht eingeschränkt und bieten nicht alle Funktionen des EV3-Steins. (Eine Einführung in die Direktprogrammierung, auch On-Brick-Programmierung genannt, findest du in Anhang B.)

Ein schnelles erstes Programm

Zuerst erstellst du ein kleines Programm und lädst es auf den Roboter. Um das Programm zu erstellen, führst du folgende Schritte aus:

1. Schließe den Roboter mit dem mitgelieferten USB-Kabel an den Computer an (siehe Abbildung 3-1) und prüfe, dass der EV3-Stein eingeschaltet ist. (Du musst den Roboter jedes Mal an den Computer anschließen, wenn du ein Programm darauf übertragen willst.)

Abbildung 3-1: Der Roboter wird mit dem mitgelieferten USB-Kabel an den Computer angeschlossen. Verwende den Anschluss oben auf dem EV3, wie hier gezeigt.

2. Starte die EV3-Software, indem du die Desktopverknüpfung zu Lego Mindstorms EV3 Home Edition anklickst. Wenn die Software geladen ist, siehst du die Lobby, wo du neue Programme erstellen oder bestehende öffnen kannst.

3. Öffne ein neues Programmierprojekt, indem du auf das +-Symbol klickst, wie in Abbildung 3-2 gezeigt.

HINWEISWenn du ein Pop-up siehst, in dem steht: »Bitte die Firmware-Version des EV3 aktualisieren«, folge einfach den Schritten unter »Die EV3-Firmware aktualisieren« auf Seite 355.

4. Wähle einen Programmierblock Bewegungslenkung und platziere ihn, wie in Abbildung 3-3 gezeigt. Bedenke, dass ein Programm eigentlich aus einer Reihe von Anweisungen besteht, die der Roboter ausführt. Dieser Block stellt eine Anweisung dar, durch die sich der Roboter vorwärts bewegt.

5. Klicke jetzt auf die Schaltfläche Herunterladen und ausführen (siehe Abbildung 3-4). Dein Computer sollte dieses einfache Programm auf deinen Roboter laden und dieser sich vorwärts bewegen. Um das Programm erneut herunterzuladen und auszuführen, klicke einfach wieder auf diese Schaltfläche.

Wenn sich dein erster Roboter eine kleine Strecke vorwärts bewegt, hast du dein erstes Programm geschrieben. Herzlichen Glückwunsch!

HINWEISWenn du dein Programm nicht auf den EV3 laden kannst und das EV3-Symbol auf deinem Computer grau dargestellt () wird, und nicht rot (), stimmt etwas mit der USB-Verbindung nicht. Entferne das USBKabel und stecke es wieder in den Anschluss. Wenn auch das nicht hilft, schalte den EV3 aus und wieder ein. Weitere Unterstützung findest du in Anhang A.

Abbildung 3-2: Die Lobby der EV3-Software. Klicke auf das +-Symbol, um ein neues Projekt zu beginnen.

Abbildung 3-3: Einen Block in ein programm Platzieren. Wenn du klickst, um einen Block abzulegen, sollte er sich mit dem orangefarbenen Startblock verbinden, der immer am Anfang eines neuen programms steht.

Abbildung 3-4: Ein programm wird auf den Roboter geladen und gestartet. Die Buchstaben EV3 in roter Schrift zeigen an, dass der Roboter korrekt mit dem Computer verbunden ist.

Ein einfaches Programm erstellen

Gut, dein Roboter hat sich bewegt. Aber wie hast du das gemacht? In den folgenden Abschnitten erkläre ich verschiedene Teile der EV3-Software, damit du zunächst einfache Programme verstehst und verändern kannst, bevor wir zu komplizierteren übergehen.

Dein Bildschirm sollte wie in Abbildung 3-5 aussehen, wenn das Programm gestartet wurde. Ich erkläre jetzt die einzelnen markierten Abschnitte.

Abbildung 3-5: Das Fenster der EV3-Software besteht aus mehreren Abschnitten. Du hast alle beschrifteten Abschnitte verwendet, als du dein erstes programm geschrieben hast.

1. Programmierpalette

Deine EV3-Programme bestehen aus Programmierblöcken. Jeder Block weist den Roboter an, etwas anderes zu tun, zum Beispiel sich vorwärts zu bewegen oder einen Klang abzuspielen. Du findest die Blöcke in der Programmierpalette (siehe Abbildung 3-6).

Es gibt mehrere Kategorien von Blöcken, hinter jedem farbigen Register eine. Du wirst die Aktionsblöcke (grün), Programmablaufblöcke (orange) und Eigene Blöcke (hellblau) in Kapitel 4 und 5 kennenlernen. Programmablaufblöcke zur Steuerung von Sensoren lernst du in Teil II dieses Buchs kennen.

Sensorblöcke (gelb) und Datenblöcke (rot) werden in Teil V vorgestellt und einige der Erweiterungsblöcke (dunkelblau) findest du überall in diesem Buch.

Abbildung 3-6: Die programmierpalette

2. Startblock

Deine Programme beginnen immer mit einem Startblock. Wenn du den ersten Block aus der Programmierpalette auswählst, fügst du ihn an den Startblock an, wie in Abbildung 3-7 gezeigt. Der Roboter führt die Blöcke nacheinander aus, von links nach rechts, und beginnt mit dem Block, der mit dem Startblock verbunden ist.

Wenn du den Startblock versehentlich löschst, holst du dir einfach einen neuen aus dem orangenen Register der Programmierpalette.

Abbildung 3-7: Wenn du einen Block aus der programmierpalette ausgewählt hast, platzierst du ihn im programmierbereich. ist es der erste programmierblock, platziere ihn rechts vom Startblock.

3. Programmierbereich