EV3: Aktion

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Abb. 1: Die Aktion

Autoren: Prof. Dr.-Ing. Schneider, K.-J. Thiemeyer

Einleitung

Im Reiter „Aktion“ findest du die Programmierblöcke, mit denen du das Verhalten deines EV3-Roboters direkt steuerst. Hier legst du fest, was der Roboter tun soll.

Mit den Aktionsblöcken kannst du beispielsweise:

  • die Motoren des Roboters steuern,
  • den Roboter vorwärts oder rückwärts fahren lassen,
  • Drehungen ausführen,
  • die Geschwindigkeit verändern,
  • den EV3-Stein Töne oder Geräusche abspielen lassen,
  • Anzeigen und Symbole auf dem Display darstellen.

Die Aktionsblöcke werden entsprechend der Reihenfolge im Programm ausgeführt. Der EV3 arbeitet die Anweisungen Schritt für Schritt ab. Mögliche Aktionen sind:

  • Mittlerer Motor
  • Großer Motor
  • Standardsteuerung
  • Hebelsteuerung
  • Anzeige
  • Klang und
  • Stein-Statusleuchte

Mittlerer Motor

Abb. 2: Mittlerer Motor

Der mittlere Motor des EV3 ist ein präzise steuerbarer Motor, der sich besonders für kleinere und bewegliche Mechanismen eignet. Während die großen Motoren häufig zum Antrieb des Roboters verwendet werden, kann der mittlere Motor beispielsweise einen Greifer, eine Klappe oder einen Hebel bewegen.

Der Motor kann über das Programm gezielt angesteuert werden. Dabei können unter anderem Drehrichtung, Leistung und Dauer der Bewegung festgelegt werden. Außerdem lässt sich die Bewegung über die Anzahl der Motorumdrehungen bzw. den Drehwinkel steuern.

Beispiel:
Das Programm erwartet einen mittleren Motor an Port A. Das Doppelkreuz (#) deutet an, dass das Programm eine bestimmte Anzahl von Motorumdrehungen abarbei-tet. Die Anzahl wurde hier auf eine Umdrehung eingestellt. Außerdem wurde hier die Leistung des Motors auf 50% gesetzt. Nach der Umdrehung bremst der Motor ab.

Großer Motor

Abb. 3: Großer Motor

Der Große Motor ist ein leistungsstarker „intelligenter“ Motor. Er verfügt über einen eingebauten Drehsensor mit einer Messgenauigkeit von 1 Grad, um eine präzise Steuerung zu ermöglichen. Der Große Motor ist optimal darauf ausgelegt, als Fahrgestell deiner Roboter zu dienen. Mithilfe der Bewegungslenkungs- und Hebellenkungs-Blöcke in der EV3-Software lassen sich die Aktionen von zwei Großen Motoren koordinieren und zeitlich perfekt aufeinander abstimmen.

Der Mittlere Motor enthält ebenfalls einen eingebauten Drehsensor (mit einer Messgenauigkeit von 1 Grad). Der Mittlere Motor ist jedoch kleiner und leichter als der Große Motor. Folglich ist er reaktionsfreudiger als der Große Motor, das heißt er spricht schneller auf Befehle an. Per Programmierung ist es möglich, den Mittleren Motor ein- und auszuschalten, ihn für eine bestimmte Anzahl an Sekunden oder Umdrehungen laufen zu lassen oder seine Leistungsstufe einzustellen.

Vergleich der beiden Motoren:

  • Der Große Motor läuft mit 160 bis 170 U/min, mit einem
  • Laufmoment von 20 Ncm sowie mit einem Kippmoment von 40 Ncm (langsamer, aber stärker).
  • Der Mittlere Motor läuft mit 240 bis 250 U/min, mit einem Laufmoment von 8 Ncm sowie mit einem Kippmoment von 12 Ncm (schneller, aber nicht ganz so leistungsstark).
  • Beide Motoren unterstützen die Automatische Erkennung bzw. werden automatisch erkannt.

Beispiel:
Das Programm lässt hier den großen Motor in Port D 1 Sekunde lang mit 50 % Leistung laufen. Danach bremst er ab.

Standardsteuerung

Abb. 4: Standardsteuerung

Die Standardsteuerung ermöglicht es, zwei Motoren gemeinsam zu steuern. Sie wird häufig verwendet, um einen Roboter mit zwei Antriebsrädern zu bewegen.

Statt jeden Motor einzeln zu programmieren, werden beide Motoren über eine gemeinsame Steuerung angesprochen. Mit den Einstellungen für Richtung und Leistung kann der Roboter vorwärts oder rückwärts fahren und Kurven ausführen.

Die Standardsteuerung eignet sich besonders für einfache Fahrbewegungen:

Fahre 2 Sekunden geradeaus und stoppe anschließend.

Die gemeinsame Ansteuerung erleichtert die Programmierung, da nicht für jeden Motor ein eigener Aktionsblock benötigt wird.

Beispiel:
Zwei große Motoren sind am EV3 an den Ports B und C angeschlossen. Beide drehen sich um 360 Grad, fahren dabei geradeaus mit einer Leistung von 50%. Anschließend bremsen die Motoren ab.

Hebelsteuerung

Abb. 5: Hebelsteuerung

Mit der Hebelsteuerung können zwei Motoren unabhängig voneinander in ihrer Leistung beeinflusst werden. Sie eignet sich insbesondere für Roboter, deren linker und rechter Antrieb getrennt gesteuert werden soll.

Die beiden Steuerwerte können beispielsweise über einen Wertebereich von −100 bis +100 eingestellt werden. Positive Werte lassen den Motor in eine Richtung drehen, negative Werte in die entgegengesetzte Richtung.

Werden beide Motoren gleich angesteuert, fährt der Roboter geradeaus. Wird ein Motor stärker als der andere angesteuert, fährt der Roboter eine Kurve. Werden die Motoren in entgegengesetzte Richtungen betrieben, kann sich der Roboter auf der Stelle drehen.

Die Hebelsteuerung bietet dadurch eine besonders flexible Möglichkeit, Fahrbewegungen und Drehungen zu programmieren.

Beispiel:
Zwei große Motoren sind an den Ports D und A angeschlossen. Sie wurden nur angestellt. Die Leistung der beiden Motoren lässt sich hier getrennt regeln. Im weiteren Programmablauf können die Motoren ebenfalls abgestellt werden

Anzeige

Mit dem Aktionsblock „Anzeige“ kann der Bildschirm des EV3-Steins programmiert werden. Der Roboter kann dadurch Informationen, Bilder oder Symbole anzeigen.

Die Anzeige kann beispielsweise verwendet werden, um:

  • einen Text auszugeben,
  • Zahlen darzustellen,
  • ein Symbol anzuzeigen,
  • ein Bild darzustellen,
  • den Bildschirm zu löschen.

Die Anzeige ist besonders hilfreich, um Informationen über den Programmablauf sichtbar zu machen.

Beispielsweise kann ein Roboter nach dem Start auf seinem Display

„START“

anzeigen und nach dem Erkennen eines Hindernisses

„STOPP“

darstellen.

Klang

Mit dem Aktionsblock „Klang“ kann der EV3-Stein Geräusche und Töne ausgeben. Dadurch kann ein Roboter akustisch auf bestimmte Ereignisse reagieren.

Es können beispielsweise Töne, Tonfolgen oder gespeicherte Klänge verwendet werden. Die Tonhöhe und Lautstärke können je nach gewählter Funktion eingestellt werden.

Ein typischer Einsatz ist die Rückmeldung an den Benutzer:

Der Roboter erkennt mit seinem Sensor ein Hindernis und gibt einen Warnton aus.

Auch beim Start oder Ende eines Programms kann ein Klang als Signal verwendet werden.

Der Klang erweitert damit die Kommunikation zwischen Roboter und Mensch und macht Programmabläufe unmittelbar hörbar.

Stein-Statusleuchte

Die Stein-Statusleuchte befindet sich am EV3-Stein und zeigt den aktuellen Zustand des Roboters durch eine farbige Leuchtanzeige an.

Über das Programm kann die Statusleuchte in unterschiedlichen Zuständen angesteuert werden. Die Farben können beispielsweise verwendet werden, um verschiedene Betriebszustände zu kennzeichnen. Eine mögliche Zuordnung ist:

Farbe Bedeutung
Grün Programm läuft/normaler Betrieb
Orange Aufmerksamkeit/Warnung
Rot Fehler oder Problem

Die konkrete Bedeutung der Farben wird dabei durch die Programmierung festgelegt. Die Statusleuchte kann deshalb als optische Rückmeldung verwendet werden.

Beispielsweise kann ein Roboter während des normalen Betriebs grün leuchten. Erkennt ein Sensor ein Hindernis, kann die Statusleuchte auf Rot wechseln.

Damit kann der Programmzustand auch dann erkannt werden, wenn gerade keine Anzeige oder kein Ton verwendet wird.

Aufgabe 2.1

  1. Dein Roboter fährt genau einen Meter geradeaus.
  2. Dein Roboter fährt ein Quadrat
    1. ohne Schleife
    2. mit Hilfe einer Zählschleife
  3. Dein Roboter fährt genau einen Meter geradeaus, dreht um 180 Grad, fährt zum Ausgangspunkt zurück und bleibt dort stehen. Hier signalisiert er durch ein akusti-sches Signal, dass er wieder „zu Hause“ ist!
  4. Der mittlere Motor soll einen Sekundenzeiger bekommen. Überlege zunächst, wie viel Grad der Sekundenzeiger nach Ablauf einer Sekunde auf dem Zifferblatt über-streicht. Erstelle einen Zeiger für den mittleren Motor, der sich frei über 360° be-wegen kann.
    1. Schreibe dann ein Programm, das den Zeiger sekundengenau weiterbewegt!
    2. Ergänze das Programm dahingehend, dass nach jeder Viertelminute ein hörba-rer Ton abgespielt wird!

Aufgabe 2.2

Ein Roboter soll ein Quadrat (oder: Haus vom Nikolaus) abfahren. Zur Verfügung steht der Roboter mit einem Radstand von 12 cm, d. h. die Räder sind 12 cm von einander entfernt. Dreht sich der Roboter auf der Stelle, führt er eine Kreisbewegung mit einem Durchmesser von 12 cm durch. Das Quadrat soll eine Seitenlänge von einem Meter haben. Das Programm soll ausschließlich mit den angegebenen Icons erzeugt werden. Der Radumfang beträgt 17,6 cm. Nun stellen sich verschiedene Fragen:

  • Wie viele Umdrehungen müssen durchgeführt werden, damit die Seitenlänge von genau einem Meter gefahren wurde?
  • Wie kann man Umdrehungen in Grad umrechnen? Diese Frage ist sinnvoll, da die Steuerung in Gradzahlen wesentlich genauer eingegeben werden kann.
  • Wie kann der Roboter dann auf der Stelle drehen? Welche Steuerung bietet sich dabei an? Wie geht man vor? Welche Längen sollten die Räder fahren? Welche Maßzahl an Umdrehungen/Grad ist einzustellen?

Aufgabe 2.3

Erstelle ein Programm, indem du Einstellungen in Abb. 4 und 5 übernimmst.

  • Kennst du Möglichkeiten das Programm zu vereinfachen?
  • Leistet dann der Roboter genau das Gleiche?

Aufgabe 2.4: Display, Klang und Steinlampen

  • Im Grünen Tab des Programmes EV3 Lobby findest Du die Aktuatoren. Erstelle im EV3-Programmiereditor ein Projekt "Aktoren" und sicheres es (Speichern unter...).
  • Erstelle dann nacheinander die drei Programme aus Abb. 1 und beschreibe, was beim Ablauf des Programms geschieht.
  • Experimentiere mit den Einstellungsmöglichkeiten. Notiere Dir das unterschiedliche Verhalten im Experiment.
  • Erstelle für alle Aufgaben der Lernzielkontrolle ein eigenes Programm in dem Projekt "Aktoren".
Abb. 1: Display, Klang und Steinlampen

Lernziele

Nach Durchführung dieser Lektion

  • kannst Du mit im Display einen Text ausgeben,
  • mit dem Brick eine Melodie spielen und
  • die Steinlampen zur Anzeige nutzen.

Lernzielkontrolle

1 Schreibe die drei Programme in Abb. 1 und variiere die Parameter. Erkunde dabei die Möglichkeiten.
2 Die Steinlampen sollen eine Verkehrsampel simulieren. Lasse die Lampen entsprechend wechselweise ihre Farbe ändern. Erkundige dich nach Schleifen (Programmablaufmenu), mit deren Hilfe die Ampel dauerhaft den Farbwechsel durchführt.
3 Zeichne auf das Display zwei sich berührende Kreise, die zusammen das Display möglichst vollständig ausfüllen.
4 Lass den EV3 ein dir bekanntes Kinderlied spielen.
5 Überlege dir selbst Aufgaben, die alle drei Ausgabeelemente (Display, Klang und Steinlampen) miteinander verknüpfen.


Musterlösung 2.4


→ zurück zum Hauptartikel: Lego Mindstorms EV3 Grundlagen