Unterrichtseinsichten - Schuljahr 2011/2012 - Informatik-AG
Programmieren des LEGO-Mindstorms-Roboter mit Java (leJOS)
- Anmelden
von Motoren, Sensoren und weiteren Komponenten
- Programme aus der AG
Erstes Programm zur Einführung (TouchSensor und ColorSensor werden
noch gar nicht benötigt. Die Werte für die Abmessungen des
Wagens müssen noch an das konkrete Fahrzeug angepasst werden.)
Der Differential-Pilot lenkt den Wagen auf einer Bahn, die an eine
400-m-Laufbahn erinnert.
Der Navigator führt zu verschiedenen Orten, die durch x- und
y-Koordinaten gegeben sind.

- Anregungen zum Programm "Fahr zum Licht!"
- Zunächst sollte man mit dem Lichtsensor die Umgebung auf
Helligkeitswerte untersuchen.
Entweder dreht man mit einem Motor den Lichtsensor oder man lässt
den ganzen Wagen kreisen.
- Die Helligkeitswerte ruft man mit getRawLightValue() ab.
Da man aber nicht davon ausgehen kann, dass die Werte bis zur hellsten
Stelle kontinuierlich ansteigen und dann wieder kontinuierlich
abfallen, sollte (bzw. muss) man mehrere aufeinander folgende
Werte zusammenfassen und dann diesen Summenwert betrachten.
- Es macht wenig Sinn, ununterbrochen die Helligkeitswerte
bestimmen zu lassen.
Besser ist es, den Wagen zwischen 2 Messungen immer um einen bestimmten
Winkel (z. B. 3° oder 5°) drehen zu lassen und dann die Messung
durchzuführen.
- Die hellste Stelle sollte man sich merken und gleich dazu auch
noch den Winkel, um den sich der Wagen bis dahin gedreht hat.
- Nach Beendigung der Suche (sinnvoller Weise nach einem Winkel
von 360° [aber Vorsicht dabei, wenn der Sensor mit einem Motor
gedreht wird: das Kabel darf sich nicht zu sehr verdrehen!]) den Wagen
um so viel Grad drehen, wie als Winkel für die hellste Stelle abgespeichert ist.
- Dann nur noch vorwärts fahren...
- Hier ein (noch nicht optimales) Beispielprogramm für die "Fahrt zum Licht":
