Teaching

Inhaltsverzeichnis

Übersicht

Seit Ende 2009 entwickeln und forschen wir mit LEGO MINDSTORMS Education NXT. Mindstorms sind von LEGO entwickelte programmierbare Roboter, die vielseitig als Spielzeug, zur Begleitung von Schulunterricht und Lehre sowie für die Forschung (u.a. Robotik) eingesetzt werden können.

Die Roboter werden mit diversen Sensoren und Motoren ausgeliefert. Diese kann man nach Belieben an den NXT, den programmierbaren Legostein, anschließen. Insgesamt bietet der NXT Anschlussmöglichkeiten für bis zu 3 Motoren und 4 Sensoren gleichzeitig.
Des Weiteren stellt der NXT ein USB-Port und ein Bluetooth-Modul bereit, um Programme auf den NXT zu übertagen und mit anderen NXTs, Handys, PCs, GPS-Empfänger usw. kommunizieren zu können.


Programmiert wird der NXT standardmäßig mit Robolab, einer von LEGO entwickelten Software, in welcher man bereits durch wenige Klicks erste einfache Programme entwickeln kann.
Mit dieser Software lässt sich zwar bereits vieles umsetzen, doch bei komplexeren Problemen stößt die Software schnell an ihre Grenzen.

Daher haben wir uns entschieden ein anderes Betriebssystem auf den Mindstorm aufzuspielen: LeJOS ermöglicht Programme der Programmiersprache Java, unter Verwendung mitgelieferter Klassen, für den NXT zu entwickeln.

Der Hauptfokus unserer Forschung mit den Midnstorms besteht nun darin eine vereinfachte Version eines Lager- und Transportsystems umzusetzen, in der NXTs sich in einer (unbekannten) Umgebung befinden und in Zusammenarbeit ein Objekt (bspw. ein Transportgut) von einer Startposition zu einer Endposition befördern.
Wichtig dabei ist, dass die NXTs auch auf unerwartete Ereignisse (Hindernisse) passend reagieren müssen. Beispielsweise möchte ein NXT zu einem Ziel, aber der geplante Weg ist plötzlich versperrt, also muss ein anderer Weg gefunden werden oder eventuell ein anderer NXT gerufen werden um den geplanten Weg wieder freizulegen.

Sensoren

Zur Übersicht alle Sensoren/Motoren mit einer kurzen Beschreibung, die im NXT Education-Set enthalten sind:

Name Anzahl Funktion Bild
Servo-Motor 3 Lässt sich mit vorgegebener Geschwindigkeit drehen. Hat eingebauten Rotationssensor, der sich bis auf 1° genau drehen lässt.
Berührungssensor 2 Prüft ob Taster gedrückt wurde
Lichtsensor 1 Misst Helligkeitswerte
Geräuschsensor 1 Misst Lautstärke
Ultraschallsensor 1 Kann Distanzen messen, so wie Bewegungen erkennen. Der Messbereich liegt zwischen 6-255cm.

Projekte

Transportszenario

Hauptziel unserer Forschung ist die Entwicklung eines vereinfachten Lager- und Transportsystem.
Die folgende Abbildung zeigt skizziert die Problemstellung:
Es gibt eine Startposition auf der ein Gegenstand liegt und dieser muss bis zu einer Zielposition transportiert werden. Es befinden sich 2 Mindstorms auf der Karte um diese Aufgabe zu erfüllen.
Getrennt sind die Mindstorms durch eine "niedrige Mauer". Die Roboter können die Mauer zwar nicht überqueren, aber das zu transportierende Objekt an dieser Stelle an einen anderen Mindstorm übergeben
  • Mindstorm1 fährt zum Start fahren und hebt dort den Gegenstand auf.
  • Mindstorm1 kommuniziert mit Mindstorm2 und beide treffen sich in der Mitte.
  • Mindstorm1 übergibt den Gegenstand an Mindstorm2.
  • Mindstorm2 fährt mit Gegenstand zum Ziel und legt ihn dort ab.
Bei dieser Aufgabenstellung gibt es mehrere Probleme zu lösen:
  • Welche Eigenschaften müssen Wegbegrenzungen usw. haben, damit sie von dem Mindstorm als solche erkannt werden?
  • Welche Sensoren sorgen für eine optimale Erkennung der Objekte/Hindernisse?
  • Wie kommunizieren die Mindstorms miteinander?
  • Woher wissen die Mindstorms überhaupt, wo sie sich befinden und wo sie hin müssen?

Braitenberg Vehicle

In diesem Video wird anhand eines Braitenberg Vehikels gezeigt, wie man bereits mit wenig Quelltext ein komplexes Problem lösen kann. Man kann wählen, ob die Fahrzeuge entweder zum Licht hinfahren, oder ob sie es meiden sollen. Der gesamte Quelltext für dieses Projekt beträgt gerade mal 80 Zeilen Code und kann hier heruntergeladen werden.

Magic Cube Solver

Zu Demonstrationszwecken haben wir auch ein paar Projekte aus dem Internet nachgebaut um zu zeigen, was alles mit diesen Robotern möglich ist.
Zwei sehr interessante Projekte sind der Cube Solver, so wie der Soduko Solver.
Die Seite Tilted Twister stellt zu diesen Projekten den Quelltext und eine komplette Bauanleitung zur verfügung.

Entwickelte Softwarepakete

Hier finden Sie unsere selbst entwickelten Softwarepakete.
NameFunktionDownload
Bluetooth Package Klassen zum einfachen versenden von Informationen über Bluetooth Click
Braitenberg Vehicle Braitenberg Vehicle Click

© TU Clausthal 2005-2011 · Impressum · Contact