Softwarepraktikum LEGO Mindstorm SS 2005

Die erste Aufgabe

Unsere erste Aufgabe bestand im Bau eines Roboters, der sich über eine selbstprogrammierte Fernbedienung vom Computer aus über den Infrarot-Tower steuern lässt. Der Roboter sollte dabei Vorwärts- und Rückwärtsbewegungen sowie Drehungen ausführen können.

Grundgedanken zum Modell

Vor Programmierung und Bau des Roboters haben wir uns grundsätzliche Gedanken über die Aufteilung der Arbeit gemacht. Daraus entstanden ist ein Modell aus drei Modulen, die ausgehend von einem vorher vereinbarten Interface unabhängig voneinander entwickelt werden konnten.

Roboterklasse

Die Roboterklasse ist sozusagen das Gehirn des Roboters, die ihm die Fähigkeit verleiht, auf bestimmte Infrarotsignale zu reagieren.

Signalübertragung

Diese Klasse ist eine Art Dolmetscher zwischen Fernbedienung und Roboterklasse und stellt für die Fernbedienung eine Art Software-Abstraktion des Roboters dar. Sie übersetzt Anweisungen wie „fahre vorwärts“ in Byte-Codes und überträgt diese per Infrarot-Tower an den Roboter.

Fernbedienung

Die Fernbedienung ist der für den Benutzer sichtbare Teil des Programms, der eigentlich nur drei Aufgaben erfüllt: Sie zeigt „hört“ auf die Tastatureingaben, stellt sie in einem Applet graphisch dar und ordnet ihnen die unterschiedlichen Roboteranweisungen zu.

Erster Roboter

...

Erste Fernbedienung

Die Fernbedienung haben wir als Java-Applet realisiert. Zur Überwachung der Tastatureingaben wurde das Interface KeyListener implementiert. Die Funktionsweise der Fernbedienung soll an dieser Stelle am Beispiel der Geradeausfahrt erläutert werden:

Probleme:
Bei angeschlossenem Roboter war bei sehr kurzen Tastendrücken (unter 100 ms) die Zeit zu kurz, um die entsprechende Grafik anzuzeigen.