Diese Diplomarbeit dokumentiert ausführlich die Entstehung eines multimedialen Chatprogramms, welches audiovisuelle und Textdaten in einer 1-zu-1 Sitzung zwischen zwei Gesprächspartnern ohne zusätzlich laufenden Server übermittelt. Es bietet die Möglichkeit
eine Roboterplattform, wie z.B. den ER1 von Evolution Robotics an eine oder beide Seiten anzuschließen und somit zusätzliche Anwendungsoptionen zu erhalten. Das vollständig auf
Java basierende Programm bietet eine vordefinierte OSGI Schnittstelle, so dass diese Roboteranwendung als beispielhafte OSGI-Bundle Implementierung dienen kann.
Die Arbeit bietet einen umfassenden Einblick in die Thematik der Robotik, fasst den allgemeinen technischen Stand zusammen und zeigt Berührungspunkte und Grundlagen für die hier entwickelte Lösung. Danach dokumentiert sie detailliert die Ausgangs- und
Zielsituation, sowie die gewählte Lösungsstrategie. Nach einem ausführlichen wissenschaftlich qualitativen Performancetest gibt sie zum Schluss einen Ausblick auf mögliche Erweiterungen und andere Anwendungen.
Das Ergebnis ist ein multimediales Chatprogramm, das vollständig in Java entwickelt wurde. Die Lösung der Verbindung basiert auf bewährten Java Socket Technologien und einer möglichst verlustfreien Netzkommunikation durch TCP/IP. Der multimediale Datentransfer verwendet vor allem Java Media Framework Lösungen, eine Erweiterung des bestehenden JDK. Mit Hilfe des JMF wurden Echtzeitübertragungen und Streaming implementiert, die Audio- und Videoübertragungen parallel zum Textchat erlauben. Der Roboter wird als mobiles Chat-System mit Anrufsignalisierung durch motorische Aktionen integriert. Zur Sicherung der Verlustfreiheit wurden unter anderem Programmierkonzepte wie das Cubbyhole verwendet.
Inhaltsverzeichnis
1. Einführung
1.1 Was ist Robotik
1.1.1 Das physische Design
1.1.2 Die Verhaltenssoftware
1.2 Übersicht aktueller Robotikprojekte
1.3 Was ist OSGI
2. Verbindung von Robotik und OSGI
2.1 Anforderungsanalyse
2.2 Darstellung IST – Situation vor der Diplomarbeit
2.3 Konkretisierung SOLL – Situation nach der Diplomarbeit
3. Lösungsvorstellung
3.1 Gesamtübersicht
3.2 Dokumentation wichtiger Klassen
3.3 Begründung der Implementierungsstrategie und Alternativen
4. Qualitativer Performancetest
4.1 Hintergrund und Einleitung
4.2 Erläuterung des Vorgehens
4.3 Resultate der Versuche
4.4 Auswertung und Schlussfolgerungen
5. Ausblick
5.1 Fazit der Diplomarbeit
5.2 Mögliche Weiterentwicklungen der Diplomarbeit
6. Quellen
6.1 Überblick
6.2 Quellenangaben und Inhalte
7. Anhang
7.1 Dokumentierung und Begründung der Arbeitsschritte
7.2 JMF Guide und JavaDoc
7.3 Source Code
Zielsetzung & Themen
Das Hauptziel dieser Arbeit ist die Entwicklung eines multimedialen Chatprogramms in Java, das als beispielhaftes OSGI-Bundle fungiert. Die zentrale Forschungsfrage besteht darin, wie eine Roboterplattform (wie der ER1 von Evolution Robotics) als mobiles Chat-System mit audiovisueller Signalübertragung in eine netzunabhängige Service-Gateway-Umgebung integriert werden kann, ohne dabei auf dedizierte Server angewiesen zu sein.
- Architektur und Implementierung eines multimedialen Java-Chatprogramms.
- Integration von Roboter-Sensorik und Aktorik (z.B. ER1) in das Kommunikationssystem.
- Analyse und Anwendung des OSGI-Frameworks zur netzunabhängigen Diensteintegration.
- Qualitative Performance-Evaluation hinsichtlich CPU- und Speicherauslastung.
- Entwicklung von Strategien zur verlustfreien Datenübertragung mittels Java-Threads und CubbyHole-Konzepten.
Auszug aus dem Buch
1.1 Was ist Robotik
Als einer der zentralen Begriffe im Thema der Diplomarbeit steht die Robotik. Was genau ist Robotik und was definiert einen „Heimroboter“ und unterscheidet ihn möglicherweise von anderen Robotern. Diese grundlegende Fragestellung: „Was ist Robotik“ ist von hoher Relevanz und grenzt das Hauptthema der Diplomarbeit ein.
Der Bereich der Robotik ist längst nicht mehr begrenzt auf wenige automatisierte Werksmaschinen. Die moderne Robotik umfasst eine ernorme Menge an verschiedenen Einsatzmöglichkeiten. Roboter finden sich in sehr vielen Bereichen des modernen Lebens wieder. In erster Linie ist Robotik die Wissenschaft der Maschinen; Maschinen, die je nach Situation und Gebrauchszweck zugeschnitten werden und möglichst automatisiert und effektiv spezialisierte Aufgaben erledigen.
Der aller erste und auch gleichermaßen bekannteste Einsatzzweck der Maschinen ist die industrielle Massenproduktion. Hierbei übernehmen Roboter feste, vordefinierte Handlungsabläufe (meist Fließbandarbeiten) und steigern durch enorme Geschwindigkeit, Präzision und Zuverlässigkeit die Produktionsrate massiv. Doch dieser Einsatzort ist lediglich einer von vielen. Moderne Roboter finden Einsatzzwecke in fast allen Bereichen, angefangen von medizinischen Chirurgieassistenten bis hin zur Sonde auf dem Mars, selbst im Entertainmentbereich haben Roboter bereits ihren Einzug gefunden. Die Einsatzbereiche der Roboter sind also außerordentlich mannigfaltig geworden, die wichtigste zu klärende Frage bleibt, worin unterscheiden sich die verschiedenen Roboter und wie werden sie auf ihren Einsatz ‚zugeschnitten’?
Zusammenfassung der Kapitel
1. Einführung: Definition der Grundlagen der Robotik und OSGI sowie ein Überblick über aktuelle Projekte im Robotiksektor.
2. Verbindung von Robotik und OSGI: Analyse der Anforderungen, Darstellung der Ausgangssituation und Konkretisierung der Zielsetzung für das Diplomprojekt.
3. Lösungsvorstellung: Dokumentation der technischen Implementierung, einschließlich der Klassenstruktur des Chatprogramms und der gewählten Strategien.
4. Qualitativer Performancetest: Ausführliche Analyse der Systemanforderungen hinsichtlich Multitasking, Speicherbedarf und Prozessorgeschwindigkeit.
5. Ausblick: Kritische Reflexion der erreichten Ergebnisse und Identifikation potenzieller zukünftiger Erweiterungsmöglichkeiten.
6. Quellen: Auflistung der verwendeten Hard- und Software sowie detaillierte Angaben zu wissenschaftlicher Literatur.
7. Anhang: Detaillierte zeitliche Dokumentation und Begründung aller Arbeitsschritte sowie Verweise auf JavaDoc und den Source Code.
Schlüsselwörter
Robotik, OSGI, Heimroboter, Java, Chatprogramm, Multimediadaten, Echtzeitübertragung, TCP/IP, Java Media Framework (JMF), Service Gateway, ER1, Software-Architektur, Performance-Analyse, Thread-Management, CubbyHole.
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit befasst sich mit der Entwicklung eines multimedialen Chatprogramms in Java, das speziell darauf ausgelegt ist, eine Roboterplattform als Endgerät und Kommunikationsschnittstelle in einer OSGI-basierten Netzwerkumgebung zu nutzen.
Was sind die zentralen Themenfelder?
Die Schwerpunkte liegen auf der Mensch-Roboter-Interaktion, der Integration von Hardware-Schnittstellen in ein OSGI-Framework sowie der Optimierung von Multimedia-Streaming unter Java.
Was ist das primäre Ziel der Forschungsarbeit?
Das Ziel ist die Schaffung eines lauffähigen, beispielhaften OSGI-Bundles, das es Benutzern ermöglicht, über einen Roboter mittels Audio- und Video-Streaming zu kommunizieren, ohne auf einen zentralen Server angewiesen zu sein.
Welche wissenschaftliche Methode wird verwendet?
Die Autor verwendet einen iterativen Entwicklungsansatz kombiniert mit einer strukturierten Anforderungsanalyse (SWOT-Analyse), gefolgt von einer qualitativen Performance-Evaluation unter verschiedenen Hardware- und Betriebssystemkonfigurationen.
Was wird im Hauptteil behandelt?
Der Hauptteil dokumentiert die detaillierte Klassenhierarchie der Software, die Implementierung der Thread-gesteuerten Kommunikation (unter Verwendung des CubbyHole-Prinzips) und die rationale Begründung der technologischen Entscheidungen.
Welche Schlüsselwörter charakterisieren die Arbeit?
Robotik, OSGI, Java, Echtzeit-Streaming, Interoperabilität und System-Performance.
Warum wurde Java als Programmiersprache gewählt?
Java wurde primär aufgrund seiner Plattformunabhängigkeit und der nativen Unterstützung durch das OSGI-Framework sowie der mächtigen JMF-Bibliothek (Java Media Framework) für die Audio- und Videoverarbeitung gewählt.
Welche Bedeutung hat das CubbyHole-Konzept in diesem Projekt?
Das CubbyHole-Konzept sorgt für eine sichere, verlustfreie Kommunikation zwischen den verschiedenen Programm-Threads, um Synchronisationsfehler und Datenverluste bei der Nachrichtenübermittlung zwischen Client und Server zu verhindern.
- Quote paper
- Dr. Tobias Fritsch (Author), 2004, Der Heimroboter im Spannungsfeld zwischen Endgerät und OSGI Schnittstelle, Munich, GRIN Verlag, https://www.grin.com/document/142186