image

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

DAS LEGO®-MINDSTORMS®-EV3-LABOR

Bauen, programmieren und experimentieren mit 5 tollen Robots

Daniele Benedettelli

Image

Übersetzung: G&U Language & Publishing Services GmbH, www.gundu.com

Satz: G&U Language & Publishing Services GmbH, www.gundu.com

Copy-Editing: Ursula Zimpfer

Lektorat: Dr. Michael Barabas

Herstellung: Frank Heidt

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

PDF 978-3-86491-472-0

ePub 978-3-86491-473-7

Deutsche Ausgabe der amerikanischen Auflage 2014

Translation copyright für die deutschsprachige Ausgabe © 2014 dpunkt.verlag GmbH

Wieblinger Weg 17

69123 Heidelberg

Copyright der amerikanischen Originalausgabe © 2014 by Daniele Benedettelli

Title of American original: The LEGO® MINDSTORMS® EV3 Laboratory

No Starch Press, Inc., San Francisco • www.nostarch.com

ISBN 978-1-59327-533-4

Die vorliegende Publikation ist urheberrechtlich geschützt. Alle Rechte vorbehalten.

Die Zusammenstellung der Software wurde nach bestem Wissen und Gewissen vorgenommen.

Bitte berücksichtigen Sie die jeweiligen Copyright-Hinweise, die bei den Programmen enthalten sind.

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 haft bar gemacht werden, die im Zusammenhang mit der Verwendung dieses Buches stehen.

5 4 3 2 1 0

Im Andenken an Nari

Der Autor Image

Daniele Benedettelli ist ein italienischer Robotiker, der weltweit für seine Lego-Mindstorms-Kreationen wie Lego Rubik Utopia (2007), Cyclops (2011) und Legonardo (2013) bekannt ist. Er lässt sich lieber Danny nennen, vor allem, um nicht mit einem Mädchen namens Danielle verwechselt zu werden. (In Bahrain wurde ihm einmal eine Plakette für »die Vermittlung ihrer Erfahrungen und Kenntnisse in der Robotik« überreicht.)

1992 schied sein Modell »Kater Tom« im Lego-Wettbewerb eines Spielwarenladens seiner Heimatstadt schon frühzeitig aus, aber er gab trotzdem nicht auf. Er spielte mit Begeisterung weiter, bis er in die »dunkle Lego-Phase« eintrat – die Zeit im Leben eines erwachsenen Lego-Fans, in der die Interessen der Realität (in seinem Fall Mädchen) die Leidenschaft für die Plastikbausteine verdrängten. Zumindest bis 2001, als er auf Lego Mindstorms RCX stieß.

Seit 2006 arbeitet Benedettelli als MCP (Mindstorms Community Partner) mit der Lego-Gruppe zusammen, um Lego-Mindstorms-Produkte zu testen und zu entwickeln. 2012 wurde er als externer Programmierer für Lego Education angeworben. Unter zwölf Fachleuten wurde er ausgewählt, um Lego Mindstorms EV3 zu testen. Er konstruierte die EL3CTRIC GUITAR, eines der Bonusmodelle für die im Einzelhandel erhältliche Version 31313.

2012 gelang es ihm mit der Hilfe des openPICUS-Teams, den NXT2WIFI über Spenden zu finanzieren und auf den Markt zu bringen. Dabei handelt es sich um einen WLAN-Adapter für den NXT, mit dem es möglich ist, Roboter über jedes browserfähige Gerät (Computer, Android-Smartphones, iPhones und iPads) zu steuern und Gruppen von vernetzten Robotern aufzubauen.

Zurzeit arbeitet er als Lehrer für Elektronische Systeme an einer High School und als freiberuflicher Lego-Designer für das Franchise-Unternehmen Bricks4Kidz. Er hat an vielen Lego-Veranstaltungen teilgenommen und wurde auch als Hauptredner und Workshop-Moderator zu Konferenzen in aller Welt eingeladen, die sich mit der Bildung im Bereich Informations- und Kommunikationstechniken beschäftigen. Sein YouTube-Kanal wird millionenfach aufgerufen, und seine Kreationen wurden überall auf der Welt in vielen Fernsehsendungen vorgestellt. Manchmal spielt Benedettelli auch Klavier und komponiert (vor allem die Begleitmusik zu seinen Videos). Er bastelt Origamifiguren und zeichnet Comics, wobei sich Letzteres bei diesem Buch als äußerst nützlich erwies. Darüber hinaus hat er bereits zwei Bücher verfasst: Creating Cool LEGO MINDSTORMS NXT Robots (Apress, 2008) und LEGO MINDSTORMS NXT Thinking Robots (No Starch Press, 2009). Mehr über ihn kannst du über folgende Links erfahren (in englischer Sprache):

http://robotics.benedettelli.com/

http://music.benedettelli.com/

http://www.facebook.com/robotics.benedettelli/

http://twitter.com/DBenedettelli

Der Fachgutachter

Claude Baumann hat 15 Jahre lang Lego-Mindstorms-Robotik für Fortgeschrittene als Nachmittagsbetreuung unterrichtet. Er war am Betatest der am Center for Engineering and Outreach (CEEO) der Tufts University (http://ceeo.tufts.edu/) entwickelten ROBOLAB-Software beteiligt und hat ULTIMATE ROBOLAB erfunden, eine compilerübergreifende Umgebung, die die grafische Programmierung der Lego-RCX-Firmware ermöglichte. Damit hat er das weltweit einzige selbst reproduzierende Programm für Lego RCX entwickelt (manche nennen es auch einen Virus). Außerdem hat Claude auch als einer der Entwickler im NXT-Module-Team des CEEO mitgearbeitet. Vor Kurzem war er als MCP (Mindstorms Community Partner) an der Entwicklung des neuen intelligenten EV3-Steins beteiligt. Er war Gutachter für viele Robotikprojekte an High Schools und ist Autor von Eureka! Problem Solving with LEGO Robotics (NTS Press, 2013) sowie von mehreren Artikeln und Präsentationen auf Konferenzen. Außerdem ist er Leiter eines Verbundes mehrerer Internate in Luxemburg. Er ist verheiratet und hat drei Kinder und drei Enkelkinder.

Danksagungen

Ich hatte ganz vergessen, wie schwer es ist, ein Lego-Mindstorms-Buch zu schreiben – und jetzt obendrein noch eines mit einem Comic! Es gibt viele Menschen, denen ich dafür danken muss, dass sie dieses Projekt möglich gemacht haben. Als Erstes danke ich meiner Familie für ihre Unterstützung und Geduld während dieser Zeit: meinen in Sachen Lego völlig unerfahrenen Eltern, die die Bauanleitungen für die Roboter ausprobiert und mir dabei geholfen haben, sie glasklar zu gestalten; meinem Bruder, der mir ständig in den Ohren lag, mir doch einen vernünftigen Job zu suchen; meinen Großeltern, die entsetzt darüber waren, zu was sich Spielzeug entwickelt hat (vor allem meine Großmutter, die sich wie ein Ninja-Krieger von hinten an meinen Lego-Arbeitstisch heranschlich und mir zuflüsterte: »Was machst du da? Ist das Arbeit?«, wodurch meine Haare einen kleinen Tick grauer geworden sind). Nicht zu vergessen auch der unermüdlich liebenswürdige Haushund, der meinen Fußboden mit Fell und Sabber übersät und meine Lego-Roboter angebellt hat, als wären es Lebewesen.

Danke an das Team von No Starch Press, vor allem an Bill für den Glauben an dieses Projekt, für seine Kritiken und Vorschläge, und an Riley für ihre unermüdliche und freundliche Unterstützung.

Ein großes Dankeschön geht an Claude Baumann, einen renommierten Schulleiter, Lehrer und Autor, der die fachlichen Aspekte dieses Buches pünktlich und akribisch durchgesehen hat. Danke auch an die Gruppe twelve monkeys, deren stolzes Mitglied ich bin, für ihre Freundschaft und Anregung. Des Weiteren danke ich John Hansen für sein frühzeitig entwickeltes EV3-Screenshotprogramm und dem Team von Lego Mindstorms, vor allem Lee (dafür, dass ich als Programmierer für Lego Education arbeiten darf), Steven (für die Zustimmung zu meinen Projekten) sowie Camilla, Flemming B., Henrik, Jesper, Lars Joe, Linda, Marie, Oliver, Pelle und Peter.

Ein riesiges Dankeschön geht an alle Mitglieder der LDraw-Community, die Werkzeuge entwickelt haben, um qualitativ hochwertige Bauanleitungen zu erstellen, die aussehen wie von Lego selbst! Besonderer Dank gilt dabei dem Baumeister und Buchautor Philippe Hurbain (Philo), einem Könner in der 3D-Modellierung von Lego-Elementen, und Kevin Clague, dem Entwickler von LPUB4.

Danken möchte ich meinem lieben Freund, dem Fotografen Francesco Rossi (http://fr-ph.com/), für das großartige Foto auf dem Umschlag dieses Buches. Er hat mich schon mit verrückten und wunderbaren Fotos meiner Spitzenmodelle wie Cyclops und Legonardo unterstützt. Die Mädchen wollen immer nicht glauben, dass ich derjenige auf den Fotos bin, und wollen ihn sofort kennenlernen! Wirklich wahr!

Danke an Marco und Susanna, die mir geholfen haben, meine ersten Skizzen in eine komplette Bildergeschichte umzusetzen, und an Nicola für seine Hilfe in letzter Minute. Besonderer Dank auch an Cristiano für die Durchsicht der deutschen Fassung des Comic-Abenteuers.

Und zum Schluss geht mein Dank noch an den nichtsahnenden Eddie für die Inspiration zu Dexter. Für die anderen Gestalten in diesem Comic gilt wie üblich: Jegliche Ähnlichkeit mit lebenden oder verstorbenen Personen ist rein zufällig. Bei der Herstellung dieses Buches wurden keine Azubis verletzt.

Die Comiczeichner Image

Arte Invisibile oder »unsichtbare Kunst« (http://www.arteinvisibile.com/, http://www.facebook.com/AssociazioneArteInvisibile/) wurde 2007 gegründet und ist ein nicht kommerzieller Verband junger Künstler in der Toskana. Er hat über 100 Mitglieder.

Arte Invisibile organisiert Kurse für Comicgestaltung, Illustration, digitale Kunst, Drehbuchschreiben und Animation. Das Ziel besteht darin, junge Menschen die Kunst und damit verwandte Berufen näherzubringen. Im Laufe der Jahre hat der Verband verschiedene Publikationen herausgegeben sowie Ausstellungen und Workshops mit weltberühmten Künstlern organisiert. Außerdem unterhält er eine gut ausgestattete Comicbibliothek mit vielen seltenen Comicbüchern.

Übersicht

Einleitung

Der Praktikant des EV3L-Forschers

Kapitel 1      Das Lego-Mindstorms-EV3-Set

Kapitel 2      Den ROV3R bauen

Kapitel 3      Programmierung

Kapitel 4      On-Brick-Programmierung für Fortgeschrittene

Kapitel 5      EV3-Programmierung

Kapitel 6      Experimente mit den Infrarotbauteilen des EV3-Sets

Kapitel 7      Keine Magie – nur Mathematik!

Kapitel 8      Lego-Rezepte

Kapitel 9      Die WATCHGOOZ3 bauen

Kapitel 10     Die WATCHGOOZ3 programmieren

Kapitel 11     Das SUP3RCAR bauen

Kapitel 12     Das SUP3RCAR programmieren

Kapitel 13     Den SENTIN3L bauen

Kapitel 14     Den SENTIN3L programmieren

Kapitel 15     Den T-R3X bauen

Kapitel 16     Den T-R3X programmieren

Anhang A     Inhalt des EV3-Sets 31313

Anhang B     Unterschiede zwischen der Education- und der normalen Einzelhandelsausgabe von EV3

Index

Inhaltsverzeichnis

Einleitung

Spielen ohne Computer

Für wen ist dieses Buch gedacht?

Was du neben diesem Buch noch brauchst

Die EV3-Software

Der Aufbau dieses Buches

Die Begleitwebsite

Und los geht’s!

Der Praktikant des EV3L-Forschers

1
Das Lego-Mindstorms-EV3-Set

Bauen ohne Noppen

Bauen mit und ohne Noppen: konstruktive Unterschiede

Die Bezeichnungen der Teile

Balken

Verbinder

Kreuze und Löcher

Räder, Reifen und Raupenketten

Dekorative Elemente

Sonderteile

Elektronische Bauteile

Die Unterschiede zwischen der Education- und der Einzelhandelsversion von EV3

Zusammenfassung

2
Den ROV3R bauen

Das Grundmodul

ROV3R mit Rädern

Stoßstange mit Berührungssensor

ROV3R mit Stoßstange und Berührungssensor

Spurfolgemodul

ROV3R mit Spurfolgemodul

Vorderer IR-Sensor

ROV3R mit vorderem IR-Sensor

Wandfolgemodul

ROV3R mit Wandfolgemodul

Alternative: ROV3R mit Wand- und Spurfolgemodul

Fußbodenreiniger

ROV3R mit Fußbodenreiniger

Alternative 1: ROV3R mit Fußbodenreiniger und Berührungssensor-Stoßstange

Alternative 2: ROV3R mit Wandfolgemodul und Fußbodenreiniger

ROV3R mit Raupenketten

Geheimprojekt: Greifermodul

Zusammenfassung

3
Programmierung

Die Grundbausteine von Programmen

Reihen

Verzweigungen

Schleifen

On-Brick- Programmierung

Dein erstes Stein-Programm

Schnelleinführung in die On-Brick-Programmierung

Die Blockpalette

Aktionsblöcke

Warteblöcke

Experiment 3-1

Der Schleifenblock

Experiment 3-2

Zusammenfassung

4
On-Brick-Programmierung für Fortgeschrittene

ROV3R mit Berührungs-sensor-Stoßstange

Experiment 4-1

So fährt der ROV3R geometrische Pfade ab

So folgt der ROV3R vorgezeichneten Linien

Das Spurfolgeprogramm erstellen

Fließendere Bewegungen

Experiment 4-2

So fährt der ROV3R immer an der Wand entlang

Fließendere Bewegungen

Experiment 4-3

Zusammenfassung

5
EV3-Programmierung

Die EV3-Software einrichten

Überblick über die EV3-Software

Die Lobby

Die Programmieroberfläche

Programme kompilieren

Die Hardwareseite

Das Werkzeugmenü

Die Programmierpaletten

Projekteigenschaften

Den EV3-Stein an den Computer anschließen

Ein Stein-Programm importieren

Das importierte Stein-Programm untersuchen

Das importierte Stein-Programm bearbeiten

Blöcke loswerden

Hintergrundwissen: Den Parameter »Gradanzahl« zur genauen Bestimmung der Fahrtstrecke berechnen

Mehr Genauigkeit!

Experimente mit Aktionsblöcken

Hintergrundwissen: Den Parameter »Gradanzahl« zum genaueren Lenken berechnen

Experiment 5-1

Den Programmablauf steuern

Der Schalterblock

Experiment 5-2

Zusammenfassung

6
Experimente mit den Infrarotbauteilen des EV3-Sets

Die IR-Fernsteuerung

Die IR-Fernsteuerung als Fernbedienung verwenden

Sensorblöcke und Datenleitungen verwenden

Datenleitungen entwirren

Experiment 6-1

Fehlersuche mit der EV3-Software

Datenanzeige mit dem Textblock

Was sind Datentypen?

Hintergrundwissen: Dezimalzahlen

Datentypumwandlung

So folgt der ROV3R der IR-Fernsteuerung

Hintergrundwissen: Ortung für Roboter

Experiment 6-2

Die Grundoperationen des Matheblocks nutzen

Experiment 6-3

Zusammenfassung

7
Keine Magie – nur Mathematik!

Mit Messrauschen umgehen

Der Matheblock im erweiterten Modus

Der Rundungsblock

Hintergrundwissen: Mit Fehlern aus dem Matheblock umgehen

Der Vergleichsblock

Numerische in logische Werte umwandeln

Vergleiche in anderen Blöcken

Der Konstantenblock

Das Wandfolgeprogramm verbessern

Hintergrundwissen: Rückkopplungsregler

Experiment 7-1

Experiment 7-2

Experiment 7-3

Zusammenfassung

8
Lego-Rezepte

Die geheimen Eigenschaften von Winkelbalken

Hintergrundwissen: Ein LDraw-Rätsel ist gelöst!

Dreiecke versus Vierecke

Balken verlängern

Klammern

Kreuzverbinder

Noch ein Wort zu Zahnrädern

Eine gute Verzahnung erreichen

Zahnräder montieren

Zahnräder kombinieren

Rechtwinklige Verzahnung

Zahnradgetriebe

Schneckengetriebe

Bewegungen umwandeln

Bauideen für Motoren

Mittlerer Motor mit vorderem Ausgang (1)

Mittlerer Motor mit vorderem Ausgang (2)

Mittlerer Motor mit einzelnem seitlichem Ausgang

Mittlerer Motor mit doppeltem seitlichem Ausgang

Mittlerer Motor mit einfach untersetztem seitlichem Ausgang

Mittlerer Motor mit Getriebe

Mittlerer Motor mit mehreren Ausgängen

Großer Motor mit horizontalem Ausgang

Großer Motor mit Getrieben

Zusammenfassung

9
Die WATCHGOOZ3 bauen

Wie bewegt sich die WATCHGOOZ3?

Rechtes Bein

Linkes Bein

Rumpf

Linker Fuß

Rechter Fuß

Rumpf

Hintere Halterung

Vordere Halterung

Rumpf

Hals und Kopf

Rumpf

10
Die WATCHGOOZ3 programmieren

Das Stein-Programm für die WATCHGOOZ3

Das Programm

Die Funktionsweise

Ausführen und Fehler beheben

Das Programm in die EV3-Software importieren und bearbeiten

Eine Sicherungskopie anlegen

Das Programm abwandeln

Eigene Blöcke erstellen

Eigene Blöcke mit Ein- und Ausgängen erstellen

Ein- und Ausgänge automatisch zu Eigenen Blöcken hinzufügen lassen

Zusätzliche Konfiguration eines Eigenen Blocks

Ein erweitertes Programm erstellen

Der Eigene Block ResetBody

Einen erweiterten Eigenen Block für die Fortbewegung erstellen

Das endgültige Programm für die WATCHGOOZ3

Der Logikblock

Hintergrundwissen: Drehzahlregelung für Motoren

Experiment 10-1

Experiment 10-2

Der Zeitgeberblock

Zusammenfassung

11
Das SUP3RCAR bauen

Karosserie

Motorhaube

Karosserie

Autodach

Karosserie

Lenkung

Karosserie

R3MOTE

Zusammenfassung

12
Das SUP3RCAR programmieren

Elektronische und mechanische Differenziale

Hintergrundwissen: Drehzahlen für ein elektronisches Differenzial berechnen

Variablen

Arrays

Numerische und logische Arrays im Variablenblock

Der Arrayblock

Der Schalterblock mit mehreren Fällen

Reihen parallel ausführen (Multitasking)

Eigene Blöcke erstellen

Der Eigene Block ResetSteer

Der Eigene Block Steer

Der Eigene Block Drive

Der Eigene Block ReadRemote2

Das Auto für selbstständiges Fahren programmieren

Das Auto für den Einsatz der Fernsteuerung programmieren

Den Block ReadRemote mithilfe von Arrays aufräumen

Das Auto für die Verfolgung der Fernsteuerung programmieren

Der Eigene Block Sign

Der Eigene Block Saturation

Der Eigene Block ReadBeacon

Experiment 12-1

Der Block Bereich

Das Programm FollowBeacon

Das SUP3RCAR mit einer Sirene ausstatten

Experiment 12-2

Der Block zur Schleifenunterbrechung

Der Block zum Beenden des Programms

Zusammenfassung

13
Den SENTIN3L bauen

Rumpf

Rechtes Bein

Rumpf

Linkes Bein

Rumpf

Brust

Rumpf

Linker Arm

Rechter Arm

Rumpf

Rückenschild

Mittelteil des Rückenschilds

Rückenschild (Forts.)

Kopf

Rückenschild (Abschluss)

Rumpf

COLOR CUB3

Zusammenfassung

14
Den SENTIN3L programmieren

Der Dateizugriffsblock

Dateien erstellen, löschen und Daten schreiben

Daten aus einer Datei lesen

Das Dateiende erkennen

Der Zufallsblock

Eigene Blöcke erstellen

Der Eigene Block ResetLegs

Hintergrundwissen: Der Zusammenhang zwischen »Stromstärke« und Drehzahl

Der Eigene Block WalkFWD

Der Eigene Block Laser

Der Eigene Block Turn

Der Eigene Block PowerDownFX

Der Eigene Block WaitButton

Der Eigene Block SayColor

Der Eigene Block ExeCode

Der Eigene Block MakeProgram

Der Eigene Block RunProgram

Der Eigene Block MakePrgFile

Der Eigene Block ParseFile

Der Eigene Block RunPrgFile

Den SENTIN3L für Patrouillengänge programmieren

Farbprogrammierung des SENTIN3Ls zur Laufzeit

Experiment 14-2

Experiment 14-1

Experiment 14-3

Experiment 14-4

Dauerhafte Farbprogramme erstellen

Zusammenfassung

15
Den T-R3X bauen

Rumpf

Beingerüst

Rumpf

Linkes Bein

Rechtes Bein

Rumpf

Der EV3-Stein

Rumpf

Kopf und Vorderarme

Rumpf

Zusammenfassung

16
Den T-R3X programmieren

Die Eigenen Blöcke für das Programm Wander erstellen

Der Eigene Block Reset

Die Eigenen Blöcke MoveAbsolute und MoveAbsolute2

Der Eigene Block Step

Der Eigene Block Roar

Der Eigene Block Chew

Der Eigene Block Look

Der Eigene Block Right

Der Eigene Block Left

Der Eigene Block TurnUntil

Den T-R3X für die Fortbewegung programmieren

Das Verhalten des T-R3X gestalten

Hintergrundwissen: Verhaltensmodellierung mithilfe von Zustandsautomaten

Einen Zustandsautomaten einrichten

Allgemeiner Aufbau

Anfangszustand

Die Zustandsvariable

Zustandsübergänge

Sensorereignisse

Zeitgeberereignisse

Mit dem Zeitgeber gefilterte Ereignisse

Hintergrundwissen: Komplizierte logische Operationen mit dem Matheblock berechnen

Aktionen

Die Eigenen Blöcke für das endgültige Programm erstellen

Der Eigene Block Turn

Der Eigene Block ReadBeacon

Hintergrundwissen: Die Gesetze von De Morgan

Der Eigene Block INIT

Der Eigene Block IDLE

Der Eigene Block HUNGRY

Der Eigene Block SEEK

Der Eigene Block CHASE

Das Verhalten des T-R3X programmieren

Zustandsübergänge nach Priorität ordnen

Zusammenfassung

Experiment 16-1

Experiment 16-2

Experiment 16-3

Experiment 16-4

A
Inhalt des EV3-Sets 31313

B
Unterschiede zwischen der Education- und der normalen Einzelhandelsausgabe von EV3

Elektronische Geräte

Die EV3-Software

Vom Einzelhandelsset zum Education-Grundkasten

Vom Education-Grundkasten zum normalen Einzelhandelsset

Vom Education- Erweiterungsset zum normalen Einzelhandelsset

Index

Einleitung

Die Idee zu diesem Buch kam mir 2012 in Saudi-Arabien. Zu dieser Zeit half ich der Lego-Gruppe dabei, das neue Lego Mindstorms EV3 zu entwickeln und zu testen. Wegen eines Sandsturms war ich in meinem Hotel gefangen, und während ich auf besseres Wetter wartete, hörte ich mir Paul Dukas’ symphonische Vertonung von Goethes Ballade Der Zauberlehrling an. Das inspirierte mich zu der Geschichte eines Kindes, das die Gelegenheit bekommt, als Gehilfe eines Wissenschaftlers zu arbeiten. Diese Geschichte sollte den Hintergrund meines nächsten Buches über Lego Mindstorms bilden.

Spielen ohne Computer

Um alle Möglichkeiten des EV3-Sets nutzen zu können, brauchst du einen Computer mit schnellem Internetanschluss. Anders als die vorherigen Versionen ist die EV3-Software nur als Download erhältlich. Es wird auch keine gedruckte Bedienungsanleitung mitgeliefert, sondern nur ein Heftchen mit einer angedeuteten Bauanleitung für den einfachsten offiziellen Roboter, den TRACK3R, und einigen Hinweisen zur Programmierung direkt auf dem EV3-Stein.

Dank dieser neuen On-Brick-Programmierung kannst du aber auch ohne Computer mit den in diesem Buch vorgestellten Robotern herumspielen. Dies ist eine zwar eingeschränkte, aber doch brauchbare Möglichkeit, um Roboter direkt über das Menü auf dem EV3-Stein zu programmieren. In den Kapiteln 1 bis 4 und 8 bis 10 lernst du verschiedene Möglichkeiten kennen, um auch ohne Computer viel Spaß mit deinen Robotern zu haben.

Für wen ist dieses Buch gedacht?

Dieses Buch ist für alle gedacht, die sich für Roboter interessieren, gleich welchen Alters. Es zeigt dir, wie du Roboter mit der Einzelhandelsausgabe von Lego Mindstorms EV3 (Bestellnr. 31313) baust und programmierst.

Neben den spezifischen Bauanleitungen und Programmieranweisungen für die Roboter lernst du auch allgemeine Lego-Bautechniken sowie grundlegende und erweiterte Programmierprinzipien kennen. Selbst Experten und erfahrene Roboterkonstrukteure finden überall in diesem Buch Abschnitte mit Hintergrundwissen, die die einzelnen Themen noch vertiefen.

Was du neben diesem Buch noch brauchst

Um dieses Buch richtig nutzen zu können, brauchst du Lego Mindstorms EV3, und zwar die normale Version mit der Bestellnummer 31313. Außerdem benötigst du einen Computer mit Internetanschluss, um die EV3-Programmiersoftware herunterzuladen und zu installieren. Sie enthält auch die Anleitungen, um die fünf offiziellen Modelle dieses Sets zu bauen und zu programmieren. Lehrer und Schüler, die den Education-Grundkasten 45544 von Lego Mindstorms verwenden, finden in Anhang B eine Liste aller zusätzlichen Lego-Elemente, die sie brauchen, um ihren Satz auf den Umfang der Einzelhandelsausgabe 31313 zu erweitern.

In dem Set findest du auch ein USB-Kabel, mit dem du den EV3-Stein an deinen Computer anschließen kannst. Für eine Verbindung über Bluetooth braucht dein Computer einen eingebauten oder externen Bluetooth-Dongle. Willst du den EV3-Stein über WLAN anschließen, musst du dir noch einen USB-WLAN-Dongle beschaffen. Der einzige für den EV3-Stein geeignete Dongle ist zurzeit der Netgear WNA1100.

Die EV3-Software

Die EV3-Software wurde von National Instruments entwickelt, dem Unternehmen, das auch die Entwicklungsumgebung LabView geschrieben hat. Die EV3-Sprache basiert auf der grafischen Datenfluss-Programmiersprache G. National Instruments hat auch die Programmiersprache NXT-G entwickelt, die bei NXT zum Einsatz kommt, der vorherigen Generation von Lego Mindstorms.

Wenn du NXT kennst und schon mit NXT-G programmiert hast, wirst du die Programmierung in EV3 als viel klarer empfinden: Jetzt zeigen alle Blöcke sämtliche Einstellungen auf einen Blick, sodass du einen Block nicht erst auszuwählen brauchst, um dir seinen Konfigurationsbereich anzusehen. In der Software kannst du deine Programme vergrößert darstellen und den Bildausschnitt ändern, um besser die Übersicht zu bewahren. Außerdem bietet sie zusätzliche Programmfunktionen.

Der Aufbau dieses Buches

Dieses Buch ist sowohl ein Handbuch als auch ein Arbeitsbuch. Im Verlauf der Geschichte in dem Comic werden neue Prinzipien und Vorgehensweisen eingeführt. (Schau dir die Comics genau an, denn sie enthalten einige versteckte Hinweise auf Bonusmaterial, das du von der Begleitwebsite herunterladen kannst, darunter die menschenfressende Pflanze AUDR3Y, den L3AVE-ME-ALONE-Kasten usw.). Die Kästen mit dem Titel »Hintergrundwissen« erklären schwierigere Themen etwas ausführlicher. Wenn du schon ein Experte bist, kannst du die einführenden Kapitel überspringen und gleich mit den Kapiteln 9 bis 16 loslegen, in denen du erfährst, wie du die vier anspruchsvolleren Roboter baust und programmierst. In den Kapiteln findest du auch Anregungen für Experimente, in denen du deine neu erworbenen Kenntnisse anwenden und vertiefen kannst. Die einzelnen Kapitel haben folgenden Inhalt:

Die Begleitwebsite

Auf der Begleitwebsite http://EV3L.com/ (in englischer Sprache) findest du EV3-Projekte für Roboter, Hinweise zu Fehlern im Buch, zusätzliche Tipps und Tricks sowie Bonusmaterial.

Und los geht’s!

Willkommen an Bord! Begleite Dexter und Danny auf ihren Abenteuern und werde selbst zum Gehilfen eines EV3L-Wissenschaftlers!

Image
Image
Image
Image

1

Das Lego-Mindstorms-EV3-Set

Das EV3-Set 31313 von Lego Mindstorms enthält verschiedene Lego-Elemente, ein gedrucktes Handbuch (mit einer Anleitung für den Bau des offiziellen Robotermodells TRACK3R und einigen Hinweisen zur Verwendung des intelligenten EV3-Steins), ein USB/miniUSB-Kabel für den Anschluss des EV3-Steins an den Computer und einen Testbogen (einfach die Banderole um den Kasten entrollen) – aber keine Software! Wo ist die Software? Du kannst sie im Download-Bereich der offiziellen Website zu Lego Mindstorms EV3 (http://LEGO.com/mindstorms/) herunterladen. Bei den Lego-Technic-Elementen in dem Kasten handelt es sich um Balken, Pins, Zahnräder und Räder sowie um elektronische Bauteile wie Motoren, Sensoren, Kabel und den intelligenten EV3-Stein.

Bauen ohne Noppen

Wie du vielleicht schon weißt, gibt es im EV3-Kasten keine klassischen Lego-Steine. Die Balken haben auch keine Noppen. Wie also kannst du sie verbinden?

Seit dem Jahr 2000 sind Lego-Technic-Bausätze hauptsächlich aus »noppenlosen« Teilen konstruiert. Die guten, alten scharfkantigen Technic-Steine mit Noppen wurden nach und nach durch abgerundete, noppenlose Technic-Balken ersetzt, die den Modellen einen schnittigeren Look geben (siehe Abbildung 1-1).

Ich weiß noch, wie ich zum ersten Mal mit den noppenlosen Elementen versuchte zu bauen: Trotz jahrelanger Erfahrung mit »klassischen« Lego-Technic-Elementen hatte ich plötzlich das Gefühl, ich könnte selbst die einfachsten Dinge nicht mehr bauen. Es war frustrierend! Aber nachdem ich mir die offiziellen Lego-Technic-Modelle etwas genauer angesehen hatte, wurde ich nach und nach vertrauter mit den neuen Teilen. Natürlich musste ich erst eine ganz neue Art und Weise des Bauens lernen, aber das hat sich gelohnt. Bei der noppenlosen Bautechnik kommen leichte, solide und elegante Modelle heraus. Wenn du erst einmal damit angefangen hast, wirst du dich fragen, wie du je ohne noppenlose Teile hast leben können!

Image

Abbildung 1-1: Ein klassischer 8l-Technic-Stein im Vergleich zu einem noppenlosen 7L-Balken. Mit noppenlosen Teilen kannst du meistens nicht so einfach nach Gefühl bauen wie mit herkömmlichen Lego-Steinen und -Platten, die du nur von unten nach oben aufeinandersteckst. Tatsächlich erfordert das noppenlose Bauen ein dreidimensionales Vorstellungsvermögen von innen nach außen.

Bauen mit und ohne Noppen: konstruktive Unterschiede

Technic-Steine haben eine gerade Anzahl von Noppen und eine ungerade Anzahl von Löchern (ein Zwei-Noppen-Stein hat ein Loch, ein Sechs-Noppen-Stein fünf Löcher usw.). Als Längenangabe dient die Anzahl der Noppen. Technic-Balken dagegen sind die abgespeckten, noppenlosen Gegenstücke zu diesen Steinen. Als Längenangabe kannst du die Anzahl der Löcher verwenden, wie es in Abbildung 1-1 gemacht wurde. Ähnlich wie die Noppen von Lego-Steinen dienen Technic-Pins als »Leim«, der deine Lego-Modelle zusammenhält (siehe Abbildung 1-2).

Dank der abgerundeten Enden der Technic-Balken kannst du Strukturen und Mechanismen bauen, die viel kompakter und leichter sind als diejenigen, die sich mit herkömmlichen Lego-Steinen konstruieren lassen. Wenn du zwei Noppensteine nebeneinander drehbar auf Zapfen lagern willst, musst du mindestens zwei Löcher zwischen ihnen frei lassen (siehe Abbildung 1-3). Bei noppenlosen Balken dagegen können die Zapfen unmittelbar nebeneinanderliegen.

Image

Abbildung 1-2: Was die Noppen für die Steine, sind die Pins für die noppenlosen Balken: der »Leim«, der sie zusammenhält.

Image

Abbildung 1-3: Technic-Balken nehmen weniger Platz ein als steine, sodass du kompaktere strukturen bauen kannst.

Andererseits lassen sich mit Standardsteinen und -platten stabilere und festere Strukturen bauen. Je nachdem, was du konstruieren willst, kannst du Elemente mit und ohne Noppen verwenden oder beide Bautechniken kombinieren.

Die Bezeichnungen der Teile

Nehmen wir an, du möchtest einen Lego-Roboter bauen, dir fehlt dazu aber ein bestimmtes Teil. Du möchtest mich gern fragen, ob ich dieses Element habe, aber du kannst deine Bitte nur sehr ungenau formulieren: »Danny, könntest du mir wohl so ein Dingsda geben ... ein ... sag schnell, wie heißt das doch gleich ... äh ... also so ein Teil eben... äh ... so ein Dingsbums, nicht?« Dann wüsste ich wohl kaum, was du brauchst. Oder schlimmer noch; du musst Teile online kaufen und weißt nicht, wie du das gesuchte Element bezeichnen sollst. Dann wirst du deinen Roboter wohl nicht zu Ende bauen können.

Bezeichnungen sind wichtig. Du kannst die Lego-Bautechniken viel besser beherrschen, wenn du weißt, wie du Lego-Teile bezeichnen und bemessen kannst. Um einen Roman zu schreiben, musst du die Grammatik und den Wortschatz deiner Sprache kennen, und das Gleiche gilt auch für Lego: Du musst die Teile kennen.

Die Elemente im EV3-Set 31313 gehören in die folgenden Kategorien:

Balken: gerade Balken, Winkelbalken, Rahmen, dünne Balken und Verbindungsglieder

Verbinder: Pins, Achsen, Stopper, Achs- und Pinverbinder und Kreuzverbinder

Zahnräder: Stirnräder, Kegelräder und Schneckenräder

Räder und Raupenketten: Räder, Raupenketten und Reifen

Dekorative Elemente: Paneele, Zähne, Schwerter usw.

Sonderteile: Bälle, Ballmagazine, Ballschussgerät, Gummiband

Elektronische Teile: