Distributed Control Lab (DCL)

Experimente mit Komponentensoftware
und mobilen Geräten

 

Andreas Polze
andreas@polze.de

 

Operating Systems and Middleware

Hasso-Plattner-Institute
at University Potsdam

 

Im Distributed Control Lab werden Softwareparadigmen und Entwurfsmuster untersucht, die eine Verbindung von Middleware-basierten Komponenten mit eingebetteten (mobilen) Steuerungssystemen ermöglichen. Im Mittelpunkt des Interesses steht die Frage, wie vorhersagbares Systemverhalten (Zeitverhalten, Fehlertoleranz, Ressourcenverbrauch – CPU/Speicher/Energie, Sicherheit) gewährleistet werden kann.

Die Bewertung der verschiedenen Ansätze erfolgt anhand von Fallstudien – Steuerungsszenarien, die im DCL aufgebaut werden. Dafür steht im DCL unter anderem folgende Ausstattung bereit:

 




 

 


Es werden Mitstreiter gesucht, die sich folgenden Fragestellungen widmen:

 

 


Initiale Phase:

 

 

 

 

Themenvorschläge für studentische Projektarbeiten:

 

 

1.      Fahralgorithmen für RCX-Roboter (lokal)
(verschiedene Arten der Fortbewegung, Schrittmotorenemulation, Kollisionserkennung/-vermeidung)

  1. Kommunikationsalgorithmen für RCX
    (Infrarot (IR) mit Host-PC, IR mit Pocket PC, Seriell mit Pocket PC)

 

 

Interaktionen verteilter Komponenten:

 

  1. Dynamische Netzwerkkonfiguration (ad-hoc networking)
    (Pocket PC zu Host PC über wireless LAN und IR)
  2. Komponentendienste auf Host-PCs
    (Routenplanung für Roboter, Bildverarbeitung, Steuerung)
  3. Behandlung von Eingabegeräten: Joystick, Stifteingabe auf Pocket PC
    (Komponentenmodell, Schnittstellendefinition)
  4. Bildverarbeitung von WebCam-Daten
    (VfW API, Image Tracking)

 

 

Vorhersagbares Verhalten verteilter Komponenten:

 

  1. Lokales vs. Globales Wissen: Wie kann eine globale Systemsicht mit lokalem Wissen etabliert werden
    (zeitbehaftete Konsensprotokolle)
  2. Fehlertoleranz: Behandlung von crash-Fehlern der Roboter
    (Erkennung, Strecke sperren)
  3. Fehlertoleranz: Behandlung von Softwarefehlern
    (Umkonfiguration, Strategie für online replacement von Komponenten)
  4. Koordination: wie lösen mehrere Roboter Aufgaben gemeinsam?
    (Heben von Steinen, Balancieren auf einer Wippe)
  5. Definition einer Komponentenarchitektur und Plattform die von Unterschieden verschiedener Robotertypen abstrahiert
    (Roboter haben unterschiedliche Fähigkeiten)

 

 

Form follows Function:

  1. Design von Robotern (R2D2)
  2. Entwürfe für Spezialaufgaben (Roboter-Sumo)

 

 

Termine:

            Projektvorstellung:       1.11., 10:00

            Demo-Day:                15.11., 11:00, Lab C.1.11