Auf dieser Seite...
Modularität
Die Idee des s²mirs-Systems ist, dass sich die Implementierung von Verhalten bei Robotern effektiver gestalten lässt, wenn diese modular geschieht. Sinnvollerweise lässt sich die Entwicklung von Steuerprogrammen in drei Teile gliedern.
Auf unterster Ebene stehen die Programmteile, die die Hardware ansteuern, also Motoren bewegen oder Sensoren abfragen. Sie werden speziell für die verwendete Elektronik programmiert und sind mit Gerätetreibern beim PC vergleichbar. So einem Hardwaremodul kann am Ende ein Befehl gegeben werden, ohne dass man sich Gedanken machen muss, wie die Hardware im Einzelnen funktioniert. Ändert sich die Hardware, muss auch bzw. nur dieser Code umprogrammiert werden.
Daneben gibt es grundlegende Funktionen, wie zum Beispiel das Navigationssystem eines mobilen Roboters. Sie sind allgemein programmiert und können in mehreren Projekten verwendet werden.
Die übergeordnete Verhaltenssteuerung greift auf die Daten dieser Module zu und ist dafür verantwortlich, was der Roboter letztlich tut. Der Vorteil der Modularität wird hier sehr deutlich. Das Verhalten ist vollkommen unabhängig von der Hardware des Roboters und kann ebenso unabhängig davon programmiert und optimiert werden. Letztere kann beispielsweise in einem Simulator getestet werden, der anstelle der Hardware-Ansteuerung ein Interface hat, das einen virtuellen Roboter steuert.
Vernetzung
Neben der angesprochenen, modularen Entwicklung von Verhaltenssteuerungen soll das System das Arbeiten von mehreren Robotern im Team ermöglichen. Zwei Architekturen wären dafür denkbar.
Die übliche Methode sieht einen übergeordneten Rechner vor, über den die untergeordneten Einheiten kommunizieren. Diese haben also keine direkten Verbindungen zueinander. Der Nachteil dieses Aufbaus ist die Abhängigkeit der einzelnen Einheiten vom Hauptrechner. Fällt dieser einmal aus, so ist das ganze System lahm gelegt. Aus diesem Grund kommt bei s²mirs eine andere Architektur zum Einsatz.
Hier sind die einzelnen Einheiten untereinander vernetzt, ohne dass es ein übergeordnetes Element gibt, von dem alle abhängig sind. Neben dem kleineren Ausfallsrisiko bietet dies den Vorteil, dass der Bereich, in dem das System eingesetzt werden kann, nicht durch die Reichweite der Verbindung Roboter-Hauptrechner begrenzt ist. Sind die Entfernungen zu groß, so spaltet sich die Gruppe in zwei auf.
Nur die Einheiten 4 und 5 können dann noch kommunizieren, genauso wie die Einheiten 1, 2, 3 und 6. Es besteht jedoch keine Verbindung mehr beispielsweise zwischen E1 und E4.
Die hier angesprochene Vernetzung der Einheiten ermöglicht den Austausch von Daten. Beispielsweise ist es so möglich, dass mehrere Roboter zusammen eine gemeinsame Karte ihrer Umgebung aufzeichnen. Ein Roboter kann auf diese Weise Informationen über einen Bereich erhalten, in dem es selbst noch nicht war.
Teilt sich die Gruppe von Einheiten auf, so sind nicht mehr alle auf demselben Stand, da die Informationen nicht mehr zu jeder Einheit gelangen können. Die eine Roboter-Gruppe besitzt also über Informationen über einen Bereich, der anderen Gruppe fehlen jedoch diese, und umgekehrt. Die Aufgabe des Systems ist es somit, diese nicht abgeglichenen Daten zwischenzuspeichern und bei einem Zusammenschluss der beiden Gruppen deren Synchronisation nachzuholen.
Anwendungsbereiche
Neben der Steuerung von Robotern sind natürlich noch andere Einsatzmöglichkeiten für s²mirs denkbar. Schließlich bietet die modulare Implementierung auch in vielen anderen Bereichen Vorteile. Soll beispielsweise eine Aufgabe mit Hilfe mehrerer Rechner gelöst werden, da sie sehr rechenaufwändig ist, kann s²mirs deren Vernetzung übernehmen und den Datenaustausch regeln.



