28
Workshop Aufgabenstellung Blatt 1 LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl) Start Up – LEGO Mindstorm EV3 Aufgabe 1: Baue den Standard Roboter (Bauanleitung bis Seite 41, Link zur Anleitung (bis Seite 48)) http://robotsquare.com/wp-content/uploads/2013/10/45544_educator.pdf Aufgabe 2: Der Roboter soll für 2 Sekunden geradeaus fahren. Tipp: Verwende die Standardsteuerung. Aufgabe 3: Lass den Roboter im Kreis fahren. Tipp: Verwende den Großen Motor oder die Hebelsteuerung Zusatz: Der Roboter soll verschiedene Radien fahren können.

Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

  • Upload
    lemien

  • View
    227

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 1

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Start Up – LEGO Mindstorm EV3

Aufgabe 1:

Baue den Standard Roboter (Bauanleitung bis Seite 41, Link zur Anleitung (bis Seite 48))

http://robotsquare.com/wp-content/uploads/2013/10/45544_educator.pdf

Aufgabe 2:

Der Roboter soll für 2 Sekunden geradeaus fahren.

Tipp: Verwende die Standardsteuerung.

Aufgabe 3:

Lass den Roboter im Kreis fahren.

Tipp: Verwende den Großen Motor oder die Hebelsteuerung

Zusatz: Der Roboter soll verschiedene Radien fahren können.

Page 2: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 1

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Aufgabe 4:

10 Reifenumdrehungen nach vorne fahren, 1 Sekunde warten und dann wieder

zurückfahren.

Zusatz: Der Roboter soll sich um 180° drehen und dann zurückfahren.

Aufgabe 5:

Baue den Berührungssensor-Aufsatz (Bauanleitung Seite 73 – 76, Online PDF Seite 63 - 68)

Aufgabe 6:

Der Roboter soll für 4 Sekunden nach vorne fahren, es sei denn der Berührungssensor wurde

am Anfang des Programmablaufes betätigt, dann soll der Roboter für 4 Sekunden

rückwärtsfahren.

Tipp: Verwende den Schalter

Page 3: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 1

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Aufgabe 7:

Baue den Ultraschallsensor-Aufsatz (Bauanleitung Seite 42 – 47, Online PDF Seite 69 - 77)

Aufgabe 8:

Der Roboter soll solange geradeaus fahren bis der Ultraschallsensor ein Hindernis in einer

Entfernung von weniger als 50cm erkennt, seine Geschwindigkeit dann reduzieren und

solange weiterfahren bis der Berührungssensor ausschlägt. Der Roboter soll dann stehen

bleiben.

Tipp: Verwende eine Schleife mit einem Schalter

Zusatz: Nach Erreichen des Hindernisses zurückfahren und das Ganze wiederholen

Page 4: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Workshop #1

Grundlagen, Motorsteuerung, Schleifen

Inhalte des Workshops

• Bauen und Kennenlernen des EV3 System

• Einstieg in die grafische Programmieroberfläche

- Aufbau der grafischen Oberfläche

- Wie kommt das Programm auf den Roboter?

- Ansteuerung von Motoren

- Sequentielle Programmierung

- Programmierung von Schleifen

- Ausgabe über Text, Bild, Ton und Statusleuchten

Page 5: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Aufgabe 1: Aufbau des Standard Roboter

Baue den Standard Roboter (Bauanleitung bis Seite 41, Online PDF bis Seite 48)

Download Bauanleitung: http://goo.gl/Oc1GcH

Der Standard Roboter stellt die Basis für die 4 Workshops dar.

Aufgabe 2: Motoren – Standardsteuerung

Der Roboter soll für 2 Sekunden gerade aus fahren und anschließend stehen bleiben.

Probiere aus, wie sich die unterschiedlichen Einstellungen auswirken (Umdrehungen, Zeit, Grad).

Tipp: Mit Hilfe der Standardsteuerung können die beiden großen Motoren einfach angesteuert werden.

Standardsteuerung

Aufgabe 3: Motoren – Alternative Steuerungen

Der Roboter soll im Kreis fahren.

Zusatz: Finde heraus, wie sich die verschiedenen Einstellungen auf den Radius des Kreises

auswirken.

Tipp: Verwenden den Großen Motor oder die Hebelsteuerung, um die beiden großen Motoren einzeln

ansteuern zu können.

Großer Motor Hebelsteuerung

Aufgabe 4: Parcours – Eins nach dem Anderen

Der Roboter soll mehrere Schritte hintereinander ausführen:

1. 10 Umdrehungen nach vorne fahren

2. 3 Sekunden warten

Page 6: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

3. 10 Umdrehungen rückwärts fahren

Zusatz: Der Roboter soll sich um 180° drehen und dann zurückfahren.

Zusatz: Bau auf dem Boden einen Parcours mit verschiedenen Gegenständen (Federpenal,

LegoBausteine, Schultaschen, …). Programmiere den Roboter nun so, dass er sich durch den Parcours

bewegt, ohne die Gegenstände zu berühren.

Aufgabe 5: Parcours – Vereinfachung mit Schleifen

Bau auf dem Boden einen quadratischen Parcours. Programmiere den Roboter so, dass er einmal

komplett den Parcours abfährt und wieder an der Startposition zu stehen kommt.

Erweitere dein Programm so, dass der Roboter 2 x den Parcours abfährt.

Das Programm wird so ziemlich schnell unübersichtlich. Verwende den Baustein Schleife um den

Roboter 4 x hintereinander den Parcours absolvieren zu lassen.

Mit eine Schleife können Anweisungen wiederholt werden.

Aufgabe 6: Ausgabe

Gib einen beliebigen Text über den Baustein Anzeige auf dem Display des Bricks aus

Verwende den Baustein Klang, um einen beliebigen Ton für 3 Sekunden abzuspielen

Lass die Statusleuchten des Bricks in den Farben rot, gelb und grün blinken. Verwende dazu den

Baustein Stein-Statusleuchte.

Zusatz: Programmiere mit dem Baustein Klang die Melodie „Alle meine Entchen“ und spiele die Melodie

mit Hilfe einer Schleife 3 x hintereinander ab.

Zusatz: Programmiere mit dem Baustein Anzeige eine Laufschrift, die von rechts nach links durch den

Bildschirm läuft (x- und y-Werte verwenden). Verwenden eine Schleife, um die Laufschrift 5 x durch den

Bildschirm laufen zu lassen.

Ausgabe über das Display, den Statusleuchten und dem Lautsprecher

Page 7: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 2

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Start Up – LEGO Mindstorm EV3

Aufgabe 1:

Verwende den Roboter aus dem letzten Workshop mit Berührungs- und Ultraschall-Aufsatz.

Kontrolliere, ob noch alle Teile richtig angebracht sind und der Roboter vollständig ist.

Aufgabe 2:

Lass den Roboter immer solange gerade ausfahren, bis er ein Hindernis in weniger als 50cm

erkennt. Sobald er ein Objekt erkennt, soll er um eine beliebige Gradzahl wenden.

Aufgabe 3:

Baue den Farbsensor-Aufsatz (Bauanleitung Seite 69 – 76, Online PDF Seite 56 - 62)

Aufgabe 4:

Suche einen schwarzen flachen Gegenstand oder farbiges Papier, welchen/welches du als

Stop-Linie für deinen Roboter verwendest. Programmiere den Roboter nun so, dass er

solange geradeaus fährt, bis er eine schwarze Linie oder ein farbiges Papier erkennt.

Zusatz: Verwende statt dem Farbenvergleich den Vergleich des reflektierten Lichts um auch

Grautöne besser erkennen zu können.

Aufgabe 5:

Der Roboter soll nun auf 3 verschiedene Sensoren reagieren: den Berührungs-, Ultraschall-

und Farbsensor. Das heißt registriert der Berührungssensor einen Gegenstand oder bemerkt

der Ultraschallsensor einen Gegenstand in weniger als 50cm oder der Farbsensor erkennt

eine Linie / ein farbiges Papier, so soll der Roboter stehen bleiben.

Zusatz: Nach jeweiligem Erreichen eines Hindernisses soll der Roboter umdrehen und

weiterfahren, bis er wieder auf ein Hindernis stößt.

Page 8: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 2

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Aufgabe 6:

Verwende das Programm von vorhin, füge jedoch nun Töne hinzu, die erkennen lassen, was

der Roboter gerade erkannt hat.

Zusatz: Verwende auch die Tastenbeleuchtung um darzustellen, welcher Sensor gerade etwas

erkannt hat.

Tipp: Verwende den Klang- sowie den Stein-Statusleuchtenblock.

Zusatz: Verwende noch dazu die Anzeige des Roboters um verschiedene Symbole anzeigen zu lassen,

sobald ein Sensor ein Hindernis erkennt.

Page 9: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Workshop #2

Sensoren, Bedingungen

Inhalte des Workshops

• Verbauen und Kennenlernen der Sensoren des EV3 Systems

• Programmierkenntnisse

- Auslesen von Sensor-Werten

- Bedingungen – Reagieren auf Sensor-werte

- Wiederholung Schleifen

Page 10: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #2, Stand 24.11.2016 Seite 2 von 5

Aufgabe 1: Berührungssensor

Baue den Berührungssensor-Aufsatz (Bauanleitung Seite 73–76, Online PDF bis Seite 63–67)

Download Bauanleitung: http://goo.gl/Oc1GcH

Der Berührungssensor reagiert wie ein Schalter.

Aufgabe 1.a: Schalter – Reagieren auf eine Startbedingung

Ist der Berührungssensor beim Start des Programms gedrückt, so soll der Roboter 3 Sekunden vorwärts

fahren, sonst rückwärts. Anschließend soll der Roboter stehen bleiben.

Tipp: Mit einem Schalter kannst du auf verschiedene Sensor-Werte reagieren.

Schalter Oft ist es hilfreich, Schalter mit Schleifen zu kombinieren.

Aufgabe 1.b: Schalter – Kontinuierliche Überprüfung von Sensoren

Immer, wenn der Berührungssensor gedrückt ist, so soll die Statusleuchte rot aufleuchten. Ist der

Berührungssensor nicht gedrückt, so soll die Statusleuchte nicht leuchten.

Tipp: Verwende eine Schleife, damit der Roboter eine Aufgabe laufend erfüllen kann.

Page 11: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #2, Stand 24.11.2016 Seite 3 von 5

Aufgabe 2: Ultraschallsensor

Achtung: Sollte der Ultraschallsensor-Baustein nicht in der Programmieroberfläche vorhanden sein, so

muss der Treiber dafür installiert werden:

Der Treiber dafür ist unter https://www.lego.com/de-de/mindstorms/downloads im Bereich

EV3SOFTWAREBLÖCKE zu finden. Einfach herunterladen und in der Programmieroberfläche mit

Werkzeuge ⇨ Blöcke importieren auswählen und Importieren.

Baue den Ultraschallsensor-Aufsatz (Bauanleitung Seite 42–47, Online PDF bis Seite 68–76)

Mit dem Ultraschallsensor kann man Abstände messen.

Der Roboter fährt solange vorwärts, bis er ein Hindernis in weniger als 10cm Entfernung erkennt und

bleibt dann stehen. Sobald das Hindernis weg ist, soll der Roboter weiterfahren, bis wieder ein Hindernis

erkannt wird.

Zusatz: Der Roboter fährt bis auf 10 cm an ein Hindernis heran, fährt im Anschluss um 30 cm zurück,

dreht um 45 Grad und beginnt dann von neuem.

Zusatz: Verschachtelte Bedingung – Der Roboter fährt bis auf 50 cm an ein Hindernis heran und wird

dann mit abnehmender Distanz langsamer. Sobald der Berührungssensor aktiv wird, soll der Roboter sofort stehen bleiben.

Der gemessene Abstand kann zum Beispiel auch als Wert für die Geschwindigkeit verwendet werden.

Aufgabe 3: Farbsensor

Baue den Farbsensor-Aufsatz (Bauanleitung Seite 69–76, Online PDF bis Seite 60–66)

Page 12: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #2, Stand 24.11.2016 Seite 4 von 5

Der Farbsensor hat drei verschiedene Modi – Farbe, Stärke des reflektierten Lichts und Stärke des

Umgebungslichts.

Aufgabe 3.a: Farbe erkennen

Baue den Farbwürfel (Bauanleitung Seite 4–6)

Halte den Würfel vor den Farbsensor und gib die Farbe als Text am Bildschirm aus.

Tipp: Du kannst innerhalb eines Schalters einen weiteren Schalter verwenden.

Zusatz: Wird eine rote, eine gelbe oder eine grüne Farbe erkannt, so soll zusätzlich die entsprechende

Statusleuchte leuchten (rot-rot, gelb-gelb, grün-grün). Wir keine Farbe erkannt, so soll die Statusleuchte

nicht leuchten.

Aufgabe 3.b: Farbe als Stopp-Linie

Zusatz: Suche einen schwarzen flachen Gegenstand, ein schwarzes Papier oder ein Klebestreifen,

welchen/welches du als Stopp-Linie verwenden willst. Drehe den Farbsensor-Aufsatz so um, dass der Sensor nach unten misst und etwa 10mm vom Boden entfernt ist. Der Roboter soll jetzt solange fahren,

bis die Stopp-Linie erreicht ist und anschließend stehen bleiben.

Page 13: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #2, Stand 24.11.2016 Seite 5 von 5

Zusatz: Verwende statt dem Farbvergleich den Vergleich des reflektierenden Lichts.

Der Farbsensor wird so angebracht, dass er Richtung Untergrund misst.

Aufgabe 4: Kombinationen

Zusatz: Der Roboter soll jetzt auf alle drei Sensoren gleichzeitig entsprechend folgendem Pseudo-

Quelltext reagieren:

Schleife ( Unbegrenzt )

Schalter ( Abstand > 50 cm ) ?

JA:

Roboter fährt schnell

Aktuelle Farbe am Bildschirm ausgeben

NEIN:

Roboter fährt langsam Schalter (

Berührungssensor aktiv ) ?

JA:

Roboter bleibt stehen

Aktuelle Farbe am Bildschirm ausgeben

Ende Schleife

Zusatz: Denke dir weitere Aufgaben aus, die der Roboter erfüllen soll und setze diese um.

Page 14: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 3

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Start Up – LEGO Mindstorm EV3

Aufgabe 1:

Verwende den Roboter des letzten Workshops zur Weiterarbeit und kontrolliere diesen noch

einmal, ob alle Teile richtig angebracht sind. Nun baue den farbigen Legowürfel (Bauanleitung

Seite 1 ‐ 4).

Aufgabe 2:

Lass den Roboter mithilfe des Farbsensors den Würfels erkennen und die erkannte Farbe wie

folgt auswerten: • Rot: Der Roboter soll stehen bleiben.

• Blau: Eine Links-Kurve rückwärtsfahren.

• Gelb: Eine Rechts-Kurve rückwärtsfahren.

• Grün: Rückwärtsfahren.

Zusatz: Bei Grün soll der Roboter nicht beliebig weit zurückfahren, sondern bis zur Ausgangsposition.

Aufgabe 3:

Baue die Hebevorrichtung und bringe diese anstelle des Ultraschallsensors an (Bauanleitung

Seite 54 – 68, Online PDF Seite 78 - 98)

Aufgabe 4:

Versuche nun, die Hebevorrichtung wie folgt einzusetzen: • Rot: Der Roboter soll stehen bleiben.

• Blau: Eine Links-Kurve-rückwärtsfahren.

• Gelb: Eine Rechts-Kurve rückwärtsfahren.

• Grün: Die Hebevorrichtung über den Würfel klappen und mit diesem weiterfahren.

Tipp: Klappe die Hebevorrichtung nach oben, dreh den Roboter zur Seite des Würfels und klappe diese anschließend wieder nach unten.

Tipp: Gib die jeweilige Farbe am Display aus, um bei der eventuellen Fehlersuche schneller voranzukommen.

Page 15: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Workshop #3

Variablen

Inhalte des Workshops

• Programmierkenntnisse: Einführung in Variablen

- Schreibender Zugriff auf Variablen

- Lesender Zugriff auf Variablen

- Verarbeiten von Variablen

- Sensorwerte in Variablen speichern

- Logische Operatoren

Einführung in Variablen

Variablen – Ich packe in meinen Koffer …

Beim Programmieren ist es oft so, dass ich der Computer (Roboter) verschiedene Informationen verarbeiten

muss. Damit er jederzeit auf diese Informationen zugreifen kann, muss er sich zuerst diese Informationen merken und „in einen Koffer packen“. So ein Koffer wird in der Informatik Variable genannt.

Damit der Computer später den richtigen Koffer wieder findet, beschriftet er den Koffer. Bei Programmieren wird diese Beschriftung Variablenname genannt. Über diesen Variablennamen kann der Computer jetzt

jederzeit den richtigen Koffer öffnen und auf den Wert (Variablenwert) darin zugreifen.

Da in einen Koffer unterschiedliche Dinge gepackt werden können, gibt es unterschiedliche Arten von

Koffern, wie zum Beispiel eine Laptop-Tasche oder ein Reisekoffer. Genauso verhält es sich beim

Programmieren – hier unterscheiden sich die Variablen durch ihren Datentyp. Es können 3 unterschiedliche

Informationen in einer Variable gespeichert werden:

• Text ( z.B.: „Hallo Lego“)

• Numerischer Wert ( z.B.: 142 )

• Logischer Wert ( Ja oder Nein )

Eine Variable besteht also immer aus dem Variablennamen und dem zugehörigen Variablenwert und hat

eine bestimmten Datentyp.

Variablenname

Page 16: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #3, Stand 24.11.2016 Seite 2 von 5

Datentyp Variablenwert

Lesen und Schreiben von Variablen

Beim Programmieren gibt es zwei unterschiedliche Operationen, die du mit Variablen durchführen kannst.

Willst du Sachen in den Koffer packen, kannst du das mit der Operation Schreiben machen.

Mit der Operation Lesen kannst du nachsehen, was sich in einem Koffer befindet. Bevor du nachsehen

kannst, was sich in einem Koffer befindet, musst du natürlich erst einmal Sachen in den Koffer packen:

Nachdem ein Wert in die Variable Anzahl geschrieben wurden kann jederzeit darauf zugegriffen werden. Die

Ein- und Ausgänge der Bausteine werden mit Leitungen verbunden.

Sensoren-Werte merken

Um einen Sensor-Wert in eine Variable zu Schreiben, müssen eine Leitung vom Sensor zur Variable

gezogen werden. Der Wert, der jetzt in der Variable gespeichert ist, kann im späteren Programmverlauf zum

Beispiel als Wert für die Leistung eines Motors verwendet werden.

Der gemessen Abstand wird in der Der Inhalt der Variable Abstand wird als Wert für Variable Abstand

gespeichert. eine Einstellung bei einem Motor verwendet.

Aufgabe 1: Logische Werte

Verwende für diese Aufgabe den Berührungssensor-Aufsatz.

Zu Beginn der Programms soll überprüft werden, ob der Berührungssensor gedrückt ist oder nicht.

Page 17: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #3, Stand 24.11.2016 Seite 3 von 5

Im Anschluss wartet der Roboter 2 Sekunden, fährt dann für 3 Sekunden vorwärts und wartet wieder 2

Sekunden, egal wie der Zustand des Berührungssensors war.

War der Berührungssensor zu Beginn aktiv, so soll der Roboter sich um 180 Grad drehen und wieder für

3 Sekunden vorwärts fahren. War der Berührungssensor nicht gedrückt, so soll der Roboter 3 Sekunden

rückwärts fahren, ohne sich zu drehen.

Variable speichern ( Zustand Berührungssensor ) > Gedrueckt

2 Sekunden warten

3 Sekunden vorwärts fahren

2 Sekunden warten

Schalter ( Variable Gedrueckt ) ?

JA:

Umdrehen

3 Sekunden vorwärts fahren

NEIN:

3 Sekunden rückwärts fahren

Tipp: In einer Variable können auch logische Werte gespeichert werden. Ein logischer Wert hat nur zwei

mögliche Zustände: Ja / Nein. Die Variable kann sich so also gut merken, ob der Berührungssensor

gedrückt ist oder nicht.

Aufgabe 2: Schalter – Kontinuierliche Überprüfung von Sensoren

Hier soll der Roboter 2 Aufgaben ausführen!

1. Aufgabe: Es soll der Zustand des Berührungssensor laufend in die Variable mit dem Namen

Gedrueckt geschrieben werden.

2. Aufgabe: Der Zustand der Variable soll laufend ausgelesen werden –

Ist der Wert in der Variable „JA“, so soll die Statusleuchte des Bricks grün leuchten, ist der Wert „Nein“,

so soll die Statusleuchte des Bricks rot leuchten.

Zusatz: Der Roboter soll die beiden Aufgaben gleichzeitig ausführen.

Tipp: Um Aufgaben laufend durchzuführen, kannst du wieder eine Schleife verwenden.

Tipp: Damit der Roboter mehrere Aufgaben zur gleichen Zeit durchführen kann, kannst du mehrere

StartBausteine verwenden. Beim Herunterladen und Ausführen beginnen dann alle Start-Bausteine

gleichzeitig zu arbeiten.

Page 18: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #3, Stand 24.11.2016 Seite 4 von 5

Aufgabe 3: Schalter – Zählen mit Mathe

Es soll mitgezählt werden, wie oft der Berührungssensor gedrückt wurde. Die Anzahl der Berührungen

soll auf dem Display ausgegeben werden.

Zusatz: Führe die 2 Aufgaben gleichzeitig durch (Zählen, Am Display anzeigen).

Tipp: Mit dem Baustein Mathe kannst du verschiedene Rechnungen durchführen, wie zum Beispiel zwei

Zahlen addieren.

Tipp: Um den Inhalte von Variablen auf dem Display anzuzeigen, muss die Option "Per Leitung

übertragen" ausgewählt werden:

Anzeigen von Variablenwerten auf dem Display des Bricks.

Aufgabe 4: Schalter – Zählen und Vergleichen

Wurde der Berührungssensor weniger als 5 mal gedrückt, so soll die Statusleuchte grün leuchten, für

alle anderen Werte soll die Statusleuchte rot leuchten.

Zusatz: Wurde der Berührungssensor weniger als 5 mal gedrückt, so soll die Statusleuchte grün leuchten. Wurde er mehr als 10 mal gedrückt, so soll die Statusleuchte rot leuchten. Für alle Werte

dazwischen soll die Statusleuchte gelb leuchten.

Zusatz: Die Anzahl der Berührungen sollen zusätzlich am Display des Bricks angezeigt werden.

Zusatz: Führe die 3 Aufgaben gleichzeitig durch (Zählen, Am Display anzeigen, Statusleuchte).

Tipp: Um den Inhalte von Variablen zu Vergleichen, kannst du den Baustein Vergleichen verwenden:

Beispiel: Mit dem Baustein Vergleichen wird der Wert der Variable Gedrueckt mit dem Wert 3 verglichen.

Trifft das zu, so wird ein Motor angesteuert, sonst nicht.

Tipp: Verwende mehrere Schalter.

Page 19: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #3, Stand 24.11.2016 Seite 5 von 5

Aufgabe 5: Zählen und mehr …

Zusatz: Roboter soll in einer Schleife 2 Sekunden nach vor und dann zurück fahren. Im Display soll

angezeigt werden, wie oft er die Strecke schon gefahren ist.

Zusatz: Roboter soll in einer Schleife 2 Sekunden vorwärts fahren, umdrehen, 2 Sekunden

zurückfahren und wieder umdrehen.

Nach jedem Durchlauf soll der Roboter so oft piepsen, wie er Strecken gefahren ist.

Schleife (Unbegrenzt)

Variable speichern ( 0 ) > Anzahl

2 Sekunden vorwärts fahren

Umdrehen

2 Sekunden vorwärts fahren

Umdrehen

Variable speichern ( +1 ) > Anzahl

Schleife ( Anzahl )

Ton abspielen

1 Sekunde warten

Ende Schleife

Ende Schleife

Aufgabe 6: Farben lesen (Für die ganz Schnellen)

Zusatz: Zeige dem Roboter 10 mal nacheinander mit 5 Sekunden Pause dazwischen verschiedene

Farben. Die aktuelle Farbe soll immer am Display angezeigt werden.

Nach den 10 Durchläufen soll im Display angezeigt werden, wie oft die Farbe rot dabei war.

Zusatz: Lege eine farbige Fläche auf den Boden.

Der Roboter soll bis zur Fläche vorwärts fahren und dort die Farbe erkennen. Anschließend soll der

Roboter umdrehen und wieder zurückfahren. Am Ausgangspunkte angekommen, soll er die gelesene

Farbe am Display anzeigen.

Zusatz: Denke dir weitere Aufgaben aus, die der Roboter erfüllen soll und setze diese um.

Page 20: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 4

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Start Up – LEGO Mindstorm EV3

Aufgabe 1:

Baue den Berührungssensor Aufsatz (Bauanleitung Seite 77 – 79, Online PDF Seite 62 - 68). Entferne alle anderen Aufsätze zuerst.

Aufgabe 2:

Nun bauen wir einen Reaktionszeitmesser, daher soll der Roboter nach 3 Sekunden einen Ton

ausgeben und daraufhin solange warten, bis der Berührungssensor betätigt wird. Sobald der Berührungssensor betätigt wurde, soll der Roboter die Zeit am Bildschirm ausgeben, die zwischen Ton und betätigen des Sensors vergangen ist.

Tipp: Der Ton muss kürzer als die Reaktionszeit eines Menschen sein, aber trotzdem noch

lang genug um hörbar zu sein. (0,02 – 0,1)

Tipp: Verwende den Zeitgeber 2-mal. (Zurücksetzen nach Ton und Messen bei Sensordruck).

Tipp: Führe die gemessene Zeit des Zeitgebers in den Anzeige-Block (Anzeige Block bei Text

auf: Per Leitung übertragen).

Zusatz: Die Zeit, die vergeht, bis der Ton ausgegeben wird, soll zufällig gewählt

werden. (unter Daten-Operationen -> Zufall)

Page 21: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 4

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Aufgabe 3:

Programmiere das Programm nun so um, das der Roboter nach ausgeben des Tones losfährt. Nun soll verglichen werden, wer schneller ist, Mensch oder Roboter. Dazu soll die Zeit ausgeben werden die entweder durch Betätigen des Sensors oder einer Steintaste vergeht. Der Berührungssensor wird

betätigt, indem der Roboter auf eine Wand zufährt (Stelle den Roboter dazu dann ganz nah vor eine Wand). Die Steintaste soll von dir betätigt werden.

Tipp: Vergiss nicht, dass der Roboter stehenbleiben soll, sobald der Berührungssensor oder

eine Steintaste betätigt wurde.

Tipp: Vergiss nicht, irgendwie erkennbar zu machen, wer schneller war. (du kannst dazu

auf den Bildschirm schreiben lassen, wer es war.)

Zusatz: Taste dich an die Entfernung heran, die du brauchst, um schneller als der Roboter

zu sein.

Page 22: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Workshop #4

Anwenden, Line-Follower

Inhalte des Workshops

• Programmierkenntnisse

- Vertiefung Variablen

- Verwenden von Text-Bausteinen

- Durchführen von Berechnungen

• Anwenden der bereits erworbenen Kenntnisse

Page 23: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #4, Stand 8.12.2016 Seite 2 von 6

Aufgabe 1: Entlang der schwarzen Linie

Verwende für diese Aufgabe die Wettbewerbsmatte von 2016 und baue den Farbsensor-Aufsatz so um,

dass er nach unten zeigt und mittig vor dem Roboter angebracht ist. Der Sensor soll sich etwa 5-10 mm

über dem Boden befinden.

Spielfeldmatte „Rap the scrap“ Der Farbsensor-Aufsatz wird mittig

angebracht.

Um einer Linie zu folgen, gibt es verschiedene Methoden. Einige dieser Methoden benötigen zwei

Farbsensoren. Die folgende Methode kommt mit einem Farbsensor aus:

Folgende Schritte sind notwendig, damit der Roboter auch bei unterschiedlichen Lichtverhältnissen gut klar

kommt:

1. Kalibrieren des Farbsensors

2. Finden der schwarzen Linie

3. Folgen der schwarzen Linie

Aufgabe 1.a: Kalibrieren des Farbsensors

Die Lichtverhältnisse haben eine starken Einfluß auf die Werte der Farbsensoren. Darum ist es wichtig, diese Einflüsse auszugleichen und die Farbsensoren zu „kalibrieren“.

Wenn zwischen einer schwarzen Fläche und eine nicht schwarzen Fläche unterschieden werden soll, dann bietet es sich an den Modus Messen – Stärke des reflektierenden Lichts an.

Zeige die aktuelle Stärke des reflektierenden Lichts laufend am Display an.

Der Roboter soll die Anweisungen entsprechend folgendem Pseudo-Quelltext umsetzen:

Page 24: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #4, Stand 8.12.2016 Seite 3 von 6

"Weiss messen" am Bildschirm ausgeben

Schleife ( 5 Sekunden )

Messen Stärke des reflektierenden Lichts

Aktuelle Stärke des reflektierenden Lichts am Bildschirm ausgeben

Ende Schleife

Variable speichern ( Stärke des reflektierenden Lichts ) > Weiss

"Schwarz messen" am Bildschirm ausgeben

Schleife ( 5 Sekunden )

Messen Stärke des reflektierenden Lichts

Aktuelle Stärke des reflektierenden Lichts am Bildschirm ausgeben

Ende Schleife

Variable speichern ( Stärke des reflektierenden Lichts ) > Schwarz

Inhalt der Variablen Weiss und Schwarz am Bildschirm ausgeben

10 Sekunden warten

Abfolge der Anzeige zum Lesen und Speichern der Stärke des reflektierenden Lichts auf dem Brick.

Tipp: Um Texte miteinander zu verbinden kannst du den Baustein Text verwenden:

Aufgabe 1.b: Start – Finde die schwarze Linie

Ausgangsstellung

Der Roboter soll so positioniert werden, dass er sich mit einem der Räder auf der grünen Startfläche

befindet und der Farbsensor darüber hinaus steht. Der Sensor soll sich dabei links von der schwarzen

Linie befinden.

Page 25: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #4, Stand 8.12.2016 Seite 4 von 6

Schreibe in die Variablen Schwarz und Weiss die Werte, die in Aufgabe 1.a

ermittelt wurden.

Toleranzen einbauen

Bei der Erkennung der Farben ist es hilfreich eine gewisse Toleranz einzubauen –

Wenn der Wert für Schwarz z.B. 10 beträgt, so soll der Roboter bereits ab einem Wert von 15 Schwarz

erkennen. Die Toleranz ist die Differenz aus den beiden Werten – in diesem Fall also 5.

Erstelle eine Variable Toleranz und speichere den Wert 10 darin.

Addiere zum Variablenwert Schwarz die Toleranz und speichere das Ergebnis wieder in die Variable

Schwarz.

Subtrahiere vom Variablenwert Weiss die Toleranz und speichere das Ergebnis wieder in die Variable

Weiss.

Tipp: Um mit Variablen rechnen zu können kannst du den Baustein Mathe verwenden:

Die Inhalte der beiden Variablen werden addiert und anschließend wieder gespeichert.

Drehen bis Schwarz erkannt wird

Der Roboter dreht sich solange im Uhrzeigersinn, bis der Sensor eine schwarze Linie erfasst.

Anschließend soll der Roboter aufhören sich zu drehen

Zusatz: Zeige laufend den aktuelle Stärke des reflektierenden Lichts sowie den Inhalt der Variable

Schwarz an.

Aufgabe 1.c: Los geht’s – Folge der schwarzen Linie

Nachdem der Roboter die schwarze Linie erkannt hat, soll er nun der Linie folgen.

Der Roboter folgt der Linie entsprechend der folgenden Grafik:

Page 26: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #4, Stand 8.12.2016 Seite 5 von 6

Schleife ( Unbegrenzt ) Schalter ( Stärke des reflektierenden

Lichts > Schwarz ) ?

JA:

Roboter fährt nach vorwärts und rechts

NEIN:

Roboter fährt nach vorwärts und links

Ende Schleife

Tipp: Verwende den Modus AN der Hebelsteuerung.

Zusatz: Der Roboter soll der Linie so schnell wie möglich folgen.

Zusatz: Stelle die Werte so ein, dass der Roboter bei der ersten kreuzenden schwarzen Linie gerade

aus weiterfährt.

Zusatz: Der Roboter soll möglichst schnell die grüne Fläche am anderen Ende der Matte erreichen.

Zusatz: Folge einer Linie, die mit dem Klebeband auf dem Fussboden aufgeklebt wird.

Aufgabe 2: Explorer (Für die ganz Schnellen)

Ausgangsstellung

Der Roboter soll so positioniert werden, dass er sich mit einem der Räder auf der grünen Startfläche

befindet und der Farbsensor darüber hinaus steht. Der Sensor soll sich dabei links von der schwarzen

Linie befinden.

Auf den ersten Kreuzungspunkt der schwarzen Linien wird ein farbiges Plättchen gelegt.

Aufgabe

Der Roboter fährt der schwarzen Linie entlang, bis er ein farbiges Plättchen erkennt. Anschließend

merkt sich der Roboter die Farbe und fährt wieder in den Startbereich zurück, wo er die Farbe des

Plättchens auf dem Display ausgibt.

Zusatz: Der Roboter befindet sich vollständig über dem grünen Startbereich.

Zusatz: Der Roboter fährt auf den Zielbereich mit der Farbe, die das Plättchen angibt.

Page 27: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop #4, Stand 8.12.2016 Seite 6 von 6

Tipp: Für die Ermittlung der Farben muss der Farbsensor auf einen anderen Modus umgeschalten werden.

Page 28: Start Up LEGO Mindstorm EV3 - HTL Andorf … · - Wie kommt das Programm auf den Roboter? ... Parcours – Vereinfachung mit Schleifen Bau auf dem Boden einen quadratischen ... ein

Workshop Aufgabenstellung Blatt 5

LEGO® LEAGUE DISTRICT SCHÄRDING (mit freundlicher Genehmigung der HTBLA Braunau, Christian Hanl)

Einführung in Variablen

Variablen werden bei der Programmierung der Lego Roboter benötigt, um Zahlen, Zeichen oder Werte zwischen

zu speichern, um diese später im Programm wieder abrufen zu können.

1. Variablen hinzufügen

Bevor wir eine Variable benutzen können müssen wir eine solche zuerst hinzufügen. Dazu ziehen wir uns aus dem Reiter Daten-Operation den Block Variable in unser Programm und fügen eine neue Variable durch einen Klick in das leere weiße Feld des Blockes hinzu und benennen diese.

2. Werte speichern

Um nun einen Wert in die Variable einzuspeichern (in unserem Fall die

Variable var) wählen wir unter der Option Schreiben + Numerischer

Wert aus und geben entweder den Wert direkt ein oder ziehen den Wert

von einem anderen Block heran (z.B. den Messwert des

Entfernungsmessers).

3. Werte auslesen

Um an einem späteren Programmabschnitt nun den Variablenwert auslesen

zu können, müssen wir an der gewünschten Stelle noch einen Variablen-

Block hineinziehen und bei diesem die Option Lesen + Numerischer

Wert auswählen. Der ausgelesene Wert kann jetzt auf dieselbe Weise wie

beim Einspeichern herausgezogen werden, um Beispielsweise die

Geschwindigkeit eines Motors zu steuern.

Dies waren auch schon die grundlegenden Informationen, die man zur Benutzung von Variablen bei der Lego

Mindstorms Programmierung braucht. Doch da wir nicht nur Werte abspeichern und auslesen wollen, sondern

auch mathematische Operationen ausführen wollen, bietet die Lego Software auch noch viele andere Blöcke

unter dem Reiter Daten Operation, wie den Mathe-Block, den Vergleichen-Block oder den Runden-Block.