EV3: Ablauf-Regelung

Autoren: Prof. Dr.-Ing. Schneider, K.-J. Thiemeyer
Einleitung
Die Lego-Programmierumgebung bietet einige sinnvolle Icons zur Beeinflussung der Programmsteuerung, die hier im Einzelnen vorgestellt werden sollen.
Start
Mit Start beginnt das Programm.
Warten

Die Warteschleife stoppt das laufende Programm solange, bis die im Icon eingestellte Bedingung erfüllt ist. Im Beispiel rechts: nach 1 Sekunde. Anschließend wird das Programm weitergeführt.
Schleife

In eine Wiederholung lassen sich beliebig viele Aktionen einfügen. Das dadurch erstellte Unterprogramm wird wiederholt. Wie oft wiederholt wird, kann wiederum am Icon eingestellt werden. Im Beispiel rechts weist die liegende Acht darauf hin, dass hier unendlich oft wiederholt werden soll. Wenn man dies auswählt, sollte man im Programm selbst dafür sorgen, dass es keine "Endlosschleife" bleibt.
Schalter

Ein Schalter wird notwendig, wenn z.B. der Roboter in verschiedenen Situationen unterschiedlich reagieren soll. In dem Schalter-Icon wird zunächst die Bedingung abgefragt, unter der die verschiedenen Reaktionen erfolgen sollen. Im Beispiel rechts wird beim Tastsensor in Port 1 geprüft, ob der Taster gedrückt wurde oder nicht. Auch in das Schalter-Icon lassen sich beliebig viele Icons einfügen. Im oberen Strang wird das Unterprogramm eingefügt, das abgearbeitet werden soll, wenn der Tastsensor gedrückt wurde. In den unteren Strang wird entsprechend das Unterprogramm eingefügt, dass abgearbeitet wird, wenn der Taster nicht betätigt wurde.
Warteschleifen, Wiederholungen und Schalter lassen sich beliebig kombinieren. So kann in einem Schalter eine Wiederholung auftreten , genauso wie in einer Wiederholung ein Schalter genutzt werden kann.
Schleifen-Interrupt
Beim EV3-Schleifen-Interrupt kannst du eine laufende Schleife vorzeitig beenden.
Aufgabe 3.1 - Programmverständnis

Was macht das Programm in Abb. 5?
Aufgabe 3.2 - Immer weiter!
Programmiere den Roboter so, dass er innerhalb einer Schleife immer wieder folgendes macht:
- 1 Sekunde vorwärts fahren
- 1 Sekunde rückwärts fahren
- wiederholen
Verwende eine Endlosschleife.
Challenge: Baue zusätzlich einen Ton ein. Der Roboter soll bei jeder Wiederholung einen kurzen Ton abspielen.
Frage: Wie kannst du verhindern, dass dein Roboter unendlich lange fährt?
Aufgabe 3.3 - Der Roboter entscheidet
Der Roboter soll vorwärts fahren. Sobald du den Tastsensor drückst, soll er rückwärts fahren.
Der Roboter soll also ständig prüfen:
Taster gedrückt?
- Ja → rückwärts fahren
- Nein → vorwärts fahren
Challenge: Erweitere das Programm:
- Taster nicht gedrückt → vorwärts
- Taster gedrückt → rückwärts + Ton
Aufgabe 3.4 - Stoppen auf Kommando
Der Roboter soll ununterbrochen vorwärts fahren. Sobald der Tastsensor gedrückt wird, soll die Schleife beendet werden. Anschließend soll der Roboter anhalten und einen Ton abspielen.
Challenge: Ändere das Programm so, dass der Roboter nach dem Tastendruck:
- stoppt,
- einen Ton spielt,
- sich um 180° dreht,
- anschließend wieder losfährt.
→ zurück zum Hauptartikel: Lego Mindstorms EV3 Grundlagen