Lab Class: Augmented Reality, Mobile & Wearable Engineering Lab in cooperation with bitstars


The Lab will be in English. If no English needed the lab will be in German. English description will follow. Das Augmented Reality Praktikum findet in Zusammenarbeit mit dem StartUp bitstars statt. bitstars GmbH ist eine Ausgründung aus der Informatik der RWTH. So können Studierende aus den Erfahrungen von Software Engineers von bitstars lernen und sich mit Ihnen austauschen. Die Szenarien die im Praktikum umgesetzt werden sollen entsprechen wirklichen Software-Produkten.


Room:tba

Begin: Oktober 2014

Lecturer:
  • Prof. Dr. Bernhard Rumpe
Supervising Assistants: Course Type:Laboratory

Course ID:14ws-34386

Thema:
In dem Praktikum werden sie die Inhalte und Lernziele aus dem Modulhandbuch am Beispiel eines Softwareprojekts im Bereich Augmented Reality (AR) auf Android OS erarbeiten. Augmented Reality bezeichnet die computergestützte Erweiterung der Realität durch virtuelle Objekte und Signale. Hier ist ein Vortrag von uns zum Thema “Augmented-Reality-Szenarien und Entwicklung für Smartphone und SmartGlass” (http://youtu.be/qBVHCqKE2TM) Die virtuelle Erweiterung kann sowohl visuell als auch auditiv oder haptisch sein. Augmented Reality kann zum Beispiel in der Navigation genutzt werden um den Nutzer zu einem gewünschten Ziel zu führen, aber auch in anderen Szenarien wie der Reparatur/Wartung von Industrie-Maschinen und dient allgemein zur Visualisierung von Daten. Diese Daten können im Industrie Szenario z.B. direkt von der Maschine oder aus einer Datenbank kommen. In diesem Praktikum werden einige der interessanteren Anwendungs-Szenarien erarbeitet und umgesetzt werden.


https://www.youtube.com/watch?v=xPXVdL3GFUk
https://www.youtube.com/watch?v=EvXJUsqzfSs
http://www.youtube.com/watch?v=brlNkKmw8IY
http://www.youtube.com/watch?v=8GtVcQN0CpY
http://code.google.com/p/droidar/
http://jmonkeyengine.org/


Anmeldung und Vorbesprechung
Die Vergabe der Plätze erfolgt zentral über die Website der Fachgruppe Informatik per Online-Anmeldung. Bitte geben Sie dabei Auskunft über ihre aktuelle Fähigkeiten, Erfahrungen und Studiensituation (Programmierkenntnisse, Erfahrung mit mobilen Betriebssystemen z.B. Android). Falls Sie ein besonderes Interesse an dem Thema haben können Sie uns eine eMail schreiben oder das entsprechende Feld bei der Anmeldung ausfüllen. Studierende anderer Fächer z.B. TK, Geographie, Bio usw. sind ausdrücklich willkommen in diesem Praktikum. Beachten Sie die entsprechenden Anmeldefristen.

Bachelor-Studierende am Ende des Bachelor-Studiums sind herzlich willkommen.

Mögliche Gruppenprojekte:
  • Augmented Reality Anwendungen, die mit Hilfe der Opensource Game Engine jMonkey geschrieben und auf dem Desktop getestet werden können. Diese Anwendungen können als AR Anwendungen auf dem Smartphone geladen werden
  • M2M: Kommunikation zwischen einem Smartphone und einer Maschine (zB Roboterarm) mittels OPC UA und/oder BLE
  • Weiterentwicklung einer Webanwendung zur Erstellung von interaktiven 3D Szenen (die später auch im AR Kontext genutzt werden können). Die Webapp ist eine reine Ajax JS App die z.B. three.js zum Rendering des 3d Editors verwendet.
  • Weitere Projekt-Szenarien werden im Praktikum erarbeitet werden
Voraussetzungen:
  • Java Kenntnisse Voraussetzung, Android und Javascript Kenntnisse wünschenswert
  • Wenn sie die Vorlesungen Computer Vision oder Machine Learning gehört haben, schreiben sie das gerne in ihre Beschreibung
  • jmonkeyengine.org wird als Grundlage für viele der genannten Projekte verwendet werden
  • Bitte setzen sie sich bereits mit den im Abschnitt Gruppenprojekte genannten Technologien sowie dem Vortrag https://www.youtube.com/watch?v=EvXJUsqzfSs im Voraus des Praktikums auseinander
  • Frühzeitige Einarbeitung wünschenswert
Inhalt und Lernziele aus dem Modulhandbuch (B.Sc.):
Umgangssprachliche Formulierung der Anforderungen Fundierte Kenntnisse in einer Programmiersprache Entwurf einfacher Software-Architekturen Implementierung gemäß Programmierrichtlinien Entwicklung und Durchführung von Software-Tests Prüfung der erarbeiteten Ergebnisse durch Inspektionen Systematische, strukturierte Dokumentation des Codes sowie der vorausgehenden Anforderungen bzw. Architektur Umgang mit einer modernen Entwicklungsumgebung und Frameworks Präsentation der erarbeiteten Ergebnisse Gruppendynamische Effekte bei arbeitesteiliger Bearbeitung

Inhalt und Lernziele aus dem Modulhandbuch (M.Sc.):
Im Praktikum sollen die Studierenden selbstständig fachspezifische Kenntnisse und Methoden bei der Konzeption, der Implementierung und dem Test von Software- und Hardware-Systemen sowie bei der Durchführung von Experimenten und Messungen anwenden. Üblicherweise erfolgt die Bearbeitung einer Aufgabenstellung in Kleingruppen.
  • Fähigkeit zur selbständigen Anwendung von Kenntnissen und Methoden aus der Hard- und Softwareentwicklung.
  • Fähigkeit zur Zusammenarbeit im Team
Lernziele:
Der Schwerpunkt des Software-Projekts liegt zum einen darin, den Teilnehmenden fundierte Entwicklungkenntnisse zu vermitteln. Dies geschieht dadurch, dass ein größeres Programmsystem, das aus mehreren Bestandteilen besteht, erstellt wird. Die Teilnehmenden arbeiten sich dazu in die verwendete Programmiersprache – sofern diese neu ist – ein und sie wissen, wie diese anzuwenden ist. Weiterhin erlernen sie den Umgang mit modernen Entwicklungswerkzeugen, die Dokumentation sowie die Präsentation der erarbeiteten Ergebnisse. Um die Ergebnisse systematisch zu prüfen, führen die Teilnehmenden Software- Inspektionen und -Tests durch. Kurzum: Die Teilnehmenden lernen, dass eine Lösung nur zu erzielen ist, wenn Schnittstellen sorgfältig geplant, formuliert und eingehalten werden. Die Teilnehmenden lernen insbesondere die mit der Arbeitsteiligkeit verbundenen gruppendynamischen Effekte kennen (Ergebnis, auf das gewartet werden muss, trifft nicht oder verspätet ein, Teilnehmehmenden muss zur Lieferung „animiert“ werden etc.). Das Eintreten dieser Effekte ist insoweit garantiert, als jede Gruppe die Arbeitsteiligkeit selbst managen soll. Neben den gruppendynamischen Problemen werden Abstimmungen und Präsentationen eingeübt. Die Vorstellung von Ergebnissen erfolgt in der Gruppe, aber auch im Plenum.