Hi,
also die Selbstorganisation, ich schätze du hast beim Projekt SOSMAR reingeschaut, hat mit smirs direkt nicht viel zu tun. Mit smirs wird nur die Kommunikation geregelt, aber dabei wird einem schon viel abgenommen, wie zum Beispiel die Vernetzung mehrerer Roboter. Das System kümmert sich um die Synchronisation der Daten, ohne dass ein übergeordneter Rechner (Server) vorhanden sein muss.

In dem smirs Netzwerk senden die einzelnen Module Daten an andere Module, die diese weiterverarbeiten. Deshalb kann man auch von mehreren organisatorischen Ebenen der Module reden. Die einen übernehmen die Hardware ansteuerung, die anderen bestimmen das Verhalten des Roboters. Zum Testen des Roboter-verhaltens wäre es also theoretisch möglich, an die Stelle der Hardware-Module den Simulator zu stellen, ohne an der Verhaltenssteuerung was umzuprogrammieren. Schließlich spricht alles smirs.

Die GUI (Admin-Tool) ist ebenfalls ein Modul, wie die Verhaltensteuerung, wie die Hardwareansteuerung etc. Sie empfängt also auch die Daten, die alle anderen Module empfangen. Während alle normalen Module ja eine konkrete Aufgabe haben, ist das Admin-Tool zum Testen und Kontrollieren gedacht.

Denken wir uns mal ein Modul, das bestimmte Sensorwerte abruft und per smirs auf dem Roboter "broadcastet". Diese Daten werden dann beispielsweise von der Verhaltenssteuerung aufgeriffen und interpretiert. Parallel dazu kann das Admin-Tool auch diese Daten empfangen. Was damit passiert, muss der Benutzer ja entscheiden. Dieser kann jetzt ein Plugin für das Admin-Tool schreiben, dass ein Display zur Verfügung stellt, dass genau für die Sensorwerte gedacht ist.

Anderes Beispiel. Es gibt ein Hardware-Modul, dass die Motoren ansteuert. Die entsprechenden Befehle bekommt es von der Verhaltenssteuerung. Aber auch das Admin-Tool kann dort Befehle senden, womit eine Fernsteuerung möglich wird. Das tolle dabei ist, dass man sich selbst dabei nicht mehr darum kümmern muss, wie die Daten von dem Steuerrechner zum Roboter kommen.

Zur Selbstorganisation. Ich will ja smirs selbst auch auf meinem Roboter installieren, wenn er soweit ist, und dann Module programmieren, die eine Orientierung im Raum ermöglichen. Dies soll dann möglichst eigenständig geschehen. Das größte Problem dabei ist ja die Positionsbestimmung des Roboters. Da möchte ich mit der Auswertung von Kamerabildern und der Erkennung von Orientierungspunkten alias Landmarken arbeiten. (http://sosmar.mindrobots.com)

Natürlich habe ich schon viel zu viel gemacht. Ich werde wahrscheinlich nie mehrere Roboter kommunizieren lassen können, da schon einer teuer genug ist. Aber ich würde es gut finden, wenn auch andere an dem smirs System mitwirken wollen, sodass wir einen Software-Standard für Roboter erschaffen.

Wahrscheinlich ist das Ganze jedoch für relativ wenige interessant, da ja nicht alle einen ganzen Rechner auf dem Roboter transportieren.

Gruß
Johannes