MINDSTORMS EV3 Set

Eine Sortiermaschine entwickeln

Eine Maschine konstruieren, bauen und programmieren, die mindestens drei verschiedene Farben von LEGO® Elementen erkennen und diese dann sortieren und an verschiedenen Orten ablegen kann.

120+ Min.
Fortgeschrittene
Klassen 11–13
1_Make_a_Sorting_Machine

Unterrichtsplan

Vorbereiten
- Lesen Sie diese Unterrichtsmaterialien durch.
- Falls Sie es für nötig erachten, planen Sie eine Unterrichtsstunde ein, in der Sie zur Einführung die Erste-Schritte-Materialien in der EV3 Desktop-Software oder der EV3 Programmier-App bearbeiten. Dies wird Ihren Schülerinnen und Schülern dabei helfen, sich mit LEGO® MINDSTORMS® Education EV3 vertraut zu machen.

Einführen (30 Min.)
- Nutzen Sie die unten stehenden Diskussionsideen, um ein Gespräch über den Inhalt dieses Projekts anzuregen.
- Erklären Sie das Projekt.
- Teilen Sie die Klasse in Zweierteams auf.
- Geben Sie den Schülerinnen und Schülern Zeit, um Ideen zusammenzutragen.

Erkunden (30 Min.)
- Lassen Sie die Teams mehrere Prototypen entwickeln.
- Regen Sie sie dazu an, sowohl beim Bauen als auch beim Programmieren zu experimentieren.
- Lassen Sie die Teams zwei Lösungen bauen und testen.
- Geben Sie ihnen drei flache Tassen oder andere Behälter, in denen die sortierten Objekte abgelegt werden sollen.

Erklären (60 Min.)
- Lassen Sie jedes Team seine Lösungen ausprobieren und anschließend die beste auswählen.
- Achten Sie darauf, dass sie in der Lage sind, eigene Tabellen für die Tests zu erstellen.
- Lassen Sie den Teams etwas Zeit, um ihre Projekte abzuschließen und Materialien zum Dokumentieren ihrer Arbeit zusammenzustellen.

Vertiefen (60 Min.)
- Geben Sie den Teams Zeit, um ihren Abschlussbericht zu erstellen.
- Lassen Sie die Teams einzeln ihre Ergebnisse vorstellen.

Beurteilen
- Geben Sie allen Schülerinnen und Schülern einzeln Rückmeldung zu ihrer jeweiligen Leistung.
- Zur Unterstützung können Sie hierfür die Bewertungsraster nutzen.

Eine Diskussion anregen

Sortiermaschinen können Gegenstände anhand verschiedener Eigenschaften sortieren, wie zum Beispiel Größe, Gewicht, Qualität oder Farbe. Sie nutzen verschiedene Sensoren, um diese Eigenschaften zu messen. Anschließend sortieren sie jeden Gegenstand einzeln in die entsprechende Kategorie ein.

Engage-Sorting-Machine-Cover

Regen Sie die Schülerinnen und Schüler dazu an, ihre Ideen auszutauschen.

Bitten Sie sie, über folgende Fragen nachzudenken:

  • Welche Farben sollen sortiert werden?
  • Elemente welcher Größe sollen sortiert werden?
  • Welcher motorisierte Mechanismus kann diese Elemente bewegen?
  • Wie kann die Maschine unterschiedliche Ablageorte wahrnehmen?
  • Welche Konstruktionsmerkmale werden sicherstellen, dass die Bewegungen der Maschine präzise und wiederholbar ausgeführt werden?

Ermutigen Sie die Teams dazu, ihre ersten Ideen zu dokumentieren und zu begründen, warum sie diese oder jene Lösung für den ersten Prototyp ausgewählt haben. Fragen Sie, wie man die ausgewählten Ideen im weiteren Verlauf des Projekts beurteilen könnte. Wenn die Teams später ihre Arbeit überprüfen und überarbeiten, haben sie so bereits genaue Anhaltspunkte, die sie zum Beurteilen ihrer Lösung heranziehen können. Darauf aufbauend können sie entscheiden, ob die Lösung ihren Zweck erfüllt oder nicht.

Erweiterungen

Erweiterung: sprachliche Ausdrucksfähigkeit

Option 1
Um die sprachliche Ausdrucksfähigkeit zu fördern, können Sie die Schülerinnen und Schüler Folgendes tun lassen:

  • Mithilfe von schriftlichen Aufzeichnungen und/oder Fotos den Konstruktionsprozess zusammenfassen und einen Abschlussbericht erstellen
  • Ein Video erstellen, das den Konstruktionsprozess zeigt – von den ersten Ideen bis zum fertigen Projekt
  • Eine Präsentation über ihr Programm erarbeiten
  • Eine Präsentation erarbeiten, in der sie eine Verbindung zwischen ihrem Projekt und Anwendungen ähnlicher Systeme aus dem Alltag herstellen sowie neue Erfindungen beschreiben, die man auf Grundlage ihrer Arbeit entwickeln könnte

Option 2
Für diese Aufgabe haben die Teams eine Sortiermaschine gebaut. In der Lebensmittelbranche und Landwirtschaft kommen Sortiermaschinen zum Einsatz, um die Produktion und Verteilung von Produkten im großen Maßstab zu organisieren.
Um die sprachliche Ausdrucksfähigkeit zu fördern, können Sie die Schülerinnen und Schüler Folgendes tun lassen:

  • Das Ausmaß der ortsansässigen oder regionalen Lebensmittelbranche oder Landwirtschaft beschreiben
  • Ein bestimmtes Lebensmittel oder landwirtschaftliches Produkt auswählen, das in einem bestimmten Umfang produziert wird (von kleinen Betrieben bis hin zur nationalen oder internationalen Produktion), und dazu relevante Aspekte der Cybersicherheit recherchieren (z. B. wie man eine sichere, zuverlässige Lebensmittelproduktion sicherstellen kann)

Erweiterung: Mathematik

Für diese Aufgabe haben die Teams eine Sortiermaschine gebaut, die Gegenstände nach Farben sortieren kann. Das maschinelle Lernen ist ein Verfahren, mit dem Ingenieure Maschinen bauen können, die Gegenstände nach Eigenschaften sortieren, die noch komplexer sind als ihre Farbe. Zu diesem Zweck wenden Entwickler einen Prozess des maschinellen Lernens an, der als „Klassifikation“ bezeichnet wird.
Um mathematische Fähigkeiten zu fördern und das Klassifikationsverfahren zu erforschen, können Sie die Schülerinnen und Schüler Folgendes tun lassen:

  • Gegenstände einsammeln, die sortiert werden können (z. B. Steine, Obst, Armbänder) und dann eine Datentabelle mit beobachtbaren qualitativen und quantitativen Unterschieden zwischen diesen Gegenständen erstellen
  • Bestimmen, mit welchen beobachtbaren Unterschieden man jede Kategorie von Gegenständen in die Sortierkriterien „erwünscht“ und „unerwünscht“ (z. B. Gewicht, Farbe, Größe, Mängel) einordnen könnte
  • Eine neue Sortiermaschine entwerfen und ggf. bauen sowie einen Algorithmus programmieren, mit dem die Maschinen die Gegenstände nach weiteren Eigenschaften wie Größe oder Gewicht sortieren können

Bautipps

Anregungen zum Bauen
Geben Sie den Schülerinnen und Schülern die Möglichkeit, verschiedene Beispiele (siehe Links unten) zu bauen. Regen Sie sie dazu an, selbst zu erforschen, wie diese Systeme funktionieren. Anschließend sollen sie Ideen dazu sammeln, wie man diese Systeme zum Lösen der Konstruktionsaufgabe nutzen könnte.

Tipps zum Testen der Lösung
Ermutigen Sie die Teams dazu, ein eigenes Testverfahren zu entwerfen, um die beste Lösung zu bestimmen. Diese Tipps können ihnen dabei helfen:

  • Stelle markieren, an der die Maschine die Gegenstände ablegen sollte
  • Sortierte Objekte in drei flachen Tassen oder anderen Behältern ablegen
  • Testtabellen zum Aufzeichnen der Beobachtungen vorbereiten
  • Präzision der Maschine auswerten, indem man die erwarteten Ergebnisse mit den tatsächlichen Ergebnissen vergleicht
  • Test mindestens dreimal wiederholen

Beispiellösung
Hier ist eine Beispiellösung, die alle Kriterien der Konstruktionsaufgabe erfüllt:

sorting-machine-solution-bi-cover
Sorting-Machine-Solution-Cover

Programmiertipps

Beispielprogramm mit EV3 MicroPython

#!/usr/bin/env pybricks-micropython

from pybricks import ev3brick as brick
from pybricks.ev3devices import Motor, TouchSensor, ColorSensor
from pybricks.parameters import (Port, Button, Color, ImageFile,
                                 SoundFile)
from pybricks.tools import wait

# The Color Squares are red, green, blue, or yellow.
POSSIBLE_COLORS = (Color.RED, Color.GREEN, Color.BLUE, Color.YELLOW)

# Configure the belt motor with default settings.  This motor drives
# the conveyor belt.
belt_motor = Motor(Port.D)

# Configure the feed motor with default settings.  This motor ejects
# the Color Squares.
feed_motor = Motor(Port.A)

# Set up the Touch Sensor.  It is used to detect when the belt motor
# has moved the sorter module all the way to the left.
touch_sensor = TouchSensor(Port.S1)

# Set up the Color Sensor.  It is used to detect the color of the Color
# Squares.
color_sensor = ColorSensor(Port.S3)

# This is the main part of the program.  It is a loop that repeats
# endlessly.
#
# First, it moves the 2 motors to their correct starting positions.
# Second, it waits for you to scan and insert up to 8 Color Squares.
# Finally, it sorts them by color and ejects them in their correct
# positions.
#
# Then the process starts over, so you can scan and insert the next set
# of Color Squares.
while True:
    # Initialize the feed motor.  This is done by running the motor
    # forward until it stalls.  This means that it cannot move any
    # further.  From this end point, the motor rotates backward by 180
    # degrees.  This is the starting position.
    feed_motor.run_until_stalled(120)
    feed_motor.run_angle(450, -180)

    # Initialize the conveyor belt motor.  This is done by first
    # running the belt motor backward until the Touch Sensor is
    # pressed.  Then the motor stops and the angle is reset to "0."  
    # This means that when it rotates backward to "0" later on, it
    # returns to this starting position.
    belt_motor.run(-500)
    while not touch_sensor.pressed():
        pass
    belt_motor.stop()
    wait(1000)
    belt_motor.reset_angle(0)

    # Clear all the contents from the Display.
    brick.display.clear()

    # Scanning a Color Square stores the color in a list.  The list is
    # empty to start.  It will grow as colors are added to it.
    color_list = []

    # This loop scans the colors of the objects.  It repeats until 8
    # objects are scanned and placed in the chute.  This is done by
    # repeating the loop while the length of the list is less than 8.
    while len(color_list) < 8:
        # Display an arrow that points to the Color Sensor.
        brick.display.image(ImageFile.RIGHT)

        # Display how many Color Squares have been scanned so far.
        brick.display.text(len(color_list))

        # Wait until the Center Button is pressed or a Color Square is
        # scanned.
        while True:
            # Store "True" if the Center Button is pressed or "False"
            # if not.
            pressed = Button.CENTER in brick.buttons()
            # Store the color measured by the Color Sensor.
            color = color_sensor.color()
            # If the Center Button is pressed or one of the possible
            # colors is detected, break out of the loop.
            if pressed or color in POSSIBLE_COLORS:
                break

        if pressed:
            # If the button was pressed, end the loop early.  It will
            # no longer wait for any Color Squares to be scanned and
            # added to the chute.
            break
        else:
            # Otherwise, a color was scanned, so it is added (appended)
            # to the list.
            brick.sound.beep(1000, 100, 100)
            color_list.append(color)

            # It should not register the same color again if it is
            # still looking at the same Color Square.  So, before
            # continuing, wait until the sensor no longer sees the
            # Color Square.
            while color_sensor.color() in POSSIBLE_COLORS:
                pass
            brick.sound.beep(2000, 100, 100)

            # Display an arrow pointing down and wait 2 seconds to
            # allow some time to slide the Color Square into the
            # motorized chute.
            brick.display.image(ImageFile.BACKWARD)
            wait(2000)

    # Play a sound and display an image to indicate that scanning is
    # complete.
    brick.sound.file(SoundFile.READY)
    brick.display.image(ImageFile.EV3)

    # Now sort the bricks using the list of colors that have been
    # stored.  Do this by looping over each color in the list.
    for color in color_list:

        # Wait for 1 second between each sorting action.
        wait(1000)

        # Run the conveyor belt motor to the position that corresponds
        # to the stored color.
        if color == Color.BLUE:
            brick.sound.file(SoundFile.BLUE)
            belt_motor.run_target(500, 10)
        elif color == Color.GREEN:
            brick.sound.file(SoundFile.GREEN)
            belt_motor.run_target(500, 132)
        elif color == Color.YELLOW:
            brick.sound.file(SoundFile.YELLOW)
            belt_motor.run_target(500, 360)
        elif color == Color.RED:
            brick.sound.file(SoundFile.RED)
            belt_motor.run_target(500, 530)

        # Now that the conveyor belt is in the correct position, eject
        # the colored object.
        feed_motor.run_angle(1500, 90)
        feed_motor.run_angle(1500, -90)

In welchen Berufen sind diese Fähigkeiten gefragt?

Schülerinnen und Schüler, die sich für diese Aufgabe begeistern, könnten sich auch für folgende Berufszweige interessieren:

  • Landwirtschaft und Gartenbau (Landmaschinen und -technik)
  • Fertigungstechnik und Maschinenbau (Maschinenbau)

Leistungsbewertung

Checkliste für Beobachtungen
Erstellen Sie eine geeignete Bewertungsskala, wie zum Beispiel:

  1. Erwartungen zum Teil erfüllt
  2. Erwartungen vollständig erfüllt
  3. Erwartungen übertroffen

Nutzen Sie die folgenden Kriterien, um den Lernfortschritt der Schülerinnen und Schüler zu beurteilen:

  • Sie können konkurrierende Lösungen auf Grundlage von priorisierten Kriterien beurteilen. Dabei denken sie auch über Kompromisse nach, die sie eingehen müssen.
  • Sie können selbstständig eine kreative Lösung finden und entwickeln.
  • Sie können ihre Ideen klar und deutlich kommunizieren.

Selbsteinschätzung
Wenn die Teams einige Leistungsdaten zusammengetragen haben, geben Sie ihnen Zeit, um über ihre Lösungen nachzudenken. Geben Sie Impulse durch Fragen wie:

  • Erfüllt die Lösung die Kriterien aus der Konstruktionsaufgabe?
  • Könnte man die Bewegung(en) der Maschine noch präziser gestalten?
  • Wie haben andere Teams die Aufgabe gelöst?

Bitten Sie die Teams, Ideen dazu zu sammeln, wie sie ihre Lösungen verbessern könnten. Anschließend sollen sie zwei Verbesserungsmöglichkeiten dokumentieren.

Gegenseitiges Feedback
Regen Sie eine Art „Peer-Review“ an, bei der jedes Team das eigene Projekt und die Projekte der anderen Teams beurteilen soll. Dieser Beurteilungsprozess hilft den Schülerinnen und Schülern dabei, ihre Fähigkeit zu konstruktiver Kritik zu entwickeln. Außerdem lernen sie dabei, auf Grundlage objektiver Daten zu argumentieren und zu urteilen.

Unterstützung für Lehrkräfte

Die Schülerinnen und Schüler werden

  • den Konstruktionsprozess nutzen, um ein Problem mit Alltagsbezug zu lösen.

LEGO® MINDSTORMS® Education EV3 Set

Drei flache Tassen oder andere Behälter, in denen die sortierten Objekte abgelegt werden
Klebeband zum Markieren der Ablagestellen

Technik

Standards für inhaltsbezogene Kompetenzen
• Technische Innovation
◦ Einfluss von Grundlagenforschung auf die Produkt- und Anwendungsentwicklung
• Technische Systeme
• Optimierung und Automatisierung technischer Prozesse einzelner Systeme
• Systeme des Stoff-, Energie- und Datenumsatzes
◦ Transporttechnik
• Automatisierungstechnik
◦ Digitale Sensoren und Aktoren
◦ Logik-Bausteine, Speicher und Zähler
◦ Austausch elektronischer Daten
◦ Speicherprogrammierbare Systeme
• Entwicklungsfelder neuer Technologien, Zukunftstechnologien, Innovation
◦ Robotik
◦ Informations- und Kommunikationstechnologie

Informatik

Standards für inhaltsbezogene Kompetenzen
• Angewandte Informatik
• Softwaretechnik
◦ Planung und Durchführung kooperativer Arbeitsabläufe
• Programmiersprachen, formale Sprachen, Sprachen und Automaten, Datenstrukturen
• Objektorientierte Modellierung und Programmierung
• Technische Informatik
◦ Einblick in die Prozessdatenverarbeitung: Signal, Daten, Datentransport, Messen, Steuern, Regeln
• Algorithmen
◦ Sortieralgorithmen
◦ Suchalgorithmen
◦ Analyse, Entwurf und Implementierung einfacher Algorithmen
◦ Beherrschen der Implementierung ausgewählter Algorithmen in einer Programmierumgebung
• Informatik, Mensch und Gesellschaft
◦ Einsatz von Informatiksystemen
◦ Wirkungen und Grenzen der Automatisierung
• Vernetzung von Themenfeldern

Prozessbezogene Kompetenzen
• Argumentieren
• Modellieren
• Implementieren
• Darstellen und Interpretieren
• Kommunizieren und Kooperieren
• Projektorientierter Unterricht
◦ Kooperieren und Kommunizieren
◦ Kreatives Schaffen und Problemlösen

Biotechnologie und Bionik

Standards für inhaltsbezogene Kompetenzen
• Einführung Biotechnologie und Bionik
◦ Trends bei Robotik und Sensorik

Mathematik und Physik

• Diverse Grundlagen aus dem Mathematikunterricht
• Alle aufgeführten prozessbezogenen Kompetenzen

Naturwissenschaft und Technik (Schulversuch Leistungsfach und Basisfach Baden-Württemberg)

Standards für inhaltsbezogene Kompetenzen
• Denk- und Arbeitsweisen in NwT
◦ Systeme und Prozesse
◦ Technische und wissenschaftliche Handlungskompetenzen
◦ Technikfolgenabschätzung
• Technische Mechanik und Produktentwicklung
◦ Technische Mechanik
◦ Produktentwicklung
• Elektro- und Informationstechnik
◦ Messen, Steuern, Regeln
◦ Aufnahme und Verarbeitung von Signalen in der Messtechnik
◦ Datenkommunikation

Prozessbezogene Kompetenzen
• Erkenntnisgewinnung und Forschen
• Entwicklung und Konstruktion
• Kommunikation und Organisation
• Bedeutung und Bewertung

IMPLIZIT: Deutsch

Standards für inhaltsbezogene Kompetenzen
• Texte und andere Medien

Materialien für Schülerinnen und Schüler

Schülerarbeitsblatt

Als HTML-Webseite oder PDF-Datei zum Ausdrucken herunterladen, anzeigen oder weiterleiten.