Vorlesung mit Übung im Bachelor AI Programmieren mit C/C++

Dozent: Prof. Dr. Gregor Schiele
Sprache: Deutsch
Turnus: Sommersemester
Zeit: Mittwoch, 10:00 - 12:00 (Vorlesung)
Dienstag, 12:00 - 14:00 (Übung)
Ort: LC 137 (Vorlesung)
LC 137 (Übung)
Beginn: 11.04.2018

Diese Bachelor-Vorlesung setzt die in den vorherigen Semestern gelernten grundlegenden Konzepte und Methoden der Programmierung in C/C++ um. Inhalte im Einzelnen:
C++ als Erweiterung von C, Zeigerkonzepte, Klassen, Klassen-Hierarchien, einfache und mehrfache Vererbung, Zugriffsschutzmechanismen, virtuelle Basisklassen, virtuelle Funktionen, statisches und dynamisches Binden, Typisierung und Typkonvertierungen, Funktions- und Operator-Überladen, Exception Handling, Templates

Praxisprojekt im Bachelor AI Design, Entwicklung und Umsetzung eines IoT-Sensornetzwerks

Dozent: Gregor Schiele
Sprache: Deutsch/Englisch
Turnus: Sommersemester
Zeit: 12:00 - 14:00
Ort: BC 303
Beginn: 11.04.2018

Eine Kernkomponente des Internet of Things (IoT) ist ein Netzwerk aus unzähligen Sensorknoten, welche den Zustand der Umgebung aufzeichnen und weiterleiten, damit Systeme wie eine Smart Home Umgebung darauf reagieren können. Ziel dieses Projekts ist es, ein solches Sensornetzwerk für eine gegebene Applikation nicht nur komplett zu entwickeln, sondern dieses auch aufzustellen, einzusetzen und mit den gesammelten Daten weitere Analysen durchzuführen. Dies ermöglicht einen Einblick in den Entstehungsprozess eingebetteter Systeme vom Design bis zum Einsatz mit allen notwendigen Komponenten.
Im einzelnen soll Hardware in Form der Sensorknoten direkt von den Studierenden selbst gebaut und gelötet werden. Zusätzlich soll auf das vorgegebene Szenario angepasste Software in embedded C entwickelt werden. Um die gemessenen Daten weiterverarbeiten zu können soll ein sogenannter Gatewayserver in Java entwickelt werden, bei dem auch Linked Data Techniken zum Einsatz kommen sollen.

Voraussetzungen für dieses Projekt sind:
Gute Vorkenntnisse in C (beispielsweise durch Besuch der Vorlesung "Programmieren mit C/C++")
Erfahrung in der Entwicklung von und dem Arbeiten mit eingebetteten Systemen wie Microcontrollern (beispielsweise durch Besuch der Vorlesung Embedded Systems)
Gute bis sehr gute Programmierkenntnisse in Java

Sie müssen nicht in allen Teilgebieten tiefgreifendes Vorwissen aufweisen, jedoch sollten Studierende mindestens in einem der Teilgebiete gute bis sehr gute Vorkenntnisse mitbringen.

Die Vorbesprechung für dieses Projekt wird am 11.04.2018 von 12:00-14:00 im Raum BC 303 stattfinden. Für die Teilnahme ist die Answesenheit im Kickoff-Meeting erforderlich, da ausschließlich dort Formalitäten für eine Anmeldung bekanntgegeben werden.

Vorlesung mit Übung im Master AI / ISE Internet of Things: Protocols and System Software

Dozent: Prof. Dr. Gregor Schiele (Vorlesung)
Sprache: Englisch
Turnus: Sommersemester
Zeit: Dienstag 16:00 - 18:00 (Vorlesung)
Mittwoch 14:00 - 16:00 (Übung)
Ort: LE 120 (Vorlesung)
LC 137 (Übung)
Beginn: 10.04.2018

Diese Master-Vorlesung vermittelt eine Einführung in das Themengebiet des „Internet der Dinge“ (IoT), in dem Milliarden eingebetteter Systeme (Sensoren, Aktuatoren) in Echtzeit kontinuierlich Daten über die reale Welt im Internet verfügbar machen. Behandelte Themen sind insbesondere: Hardwareplattformen (z.B. SBCs, Sensorknoten), Kommunikationsprotokolle (z.B. IEEE 802.15.4(e), 6LoWPAN, CoAP, MQTT), Datenmodellierung (z.B. linked data, RDF, SSN), Datenverwaltung und –zugriff (z.B. SPARQL, kontinuierliche Anfragen mit CQELS, „Big Data“), Systemsoftware und Softwareplattformen (z.B. Eclipse Ponte, Xively, BASE, PCOM), Zukunfts-ausblick: „programmable world“. Neben der Vermittlung theoretischen Wissens, wird in der Übung auch die praktische Programmierung von IoT-Systemen vermittelt, z.B. mit Arduino-Geräten, Raspberry Pies oder Beagle Bones.

Praxisprojekt im Master Angewandte Informatik (MAI) Computer Vision on Edge Computing Devices

Dozent: Prof. Dr. Gregor Schiele
Sprache: Deutsch/Englisch
Turnus: Sommersemester
Zeit: Dienstag 10:00-12:00
Ort: BC 523
Beginn: 10.04.2018

Das Ziel dieses Projekts ist es zu untersuchen, welche Edge Computing Hardwareplattformen geeignet sind, um Computer Visison Techniken innerhalb des Netzwerks selbst durchzuführen. Das Projekt soll dabei existierende Bibliotheken und Implementationen wie OpenCV verwenden, um diese miteinander vergleichen zu können, sowie um einen Mindestmaßstab für die Usability zu haben. Für die Datenaggregation wird eine bestehende Linked Data Datenbank eingesetzt, für die ein Interface in einer High Level Sprache entwickelt wird. In der Evaluation soll genauer untersucht werden, ob die Plattformen geeignet sind, um Computer Vision Techniken in Echtzeit auf eingehende Bilder anwenden zu können. Das beinhaltet den Durchsatz unterschiedlicher Techniken zu evaluieren.

Voraussetzungen für dieses Projekt:

Da die Implementation in diesem Projekt in C ist, ist gutes bis sehr gutes Vorwissen in C voraussetzung für alle Teilnehmer.
Vorkenntnisse in Computer Vision sind von Vorteil aber nicht zwingend notwendig können während des Projekts erarbeitet werden.
Die Linked Data Interface Implementierung benötigt Vorkenntnisse in einer High Level Programmiersprache wie Java, Python oder Vergleichbares.

Die Vorbesprechung für dieses Projekt wird am 10.04.2018 von 10:00-12:00 im Raum BC 523 stattfinden. Für die Teilnahme am Projekt ist Answesenheit im Kickoff-Meeting erforderlich, da ausschließlich dort Formalitäten für eine Anmeldung bekanntgegeben werden.

Bachelor- und Masterseminar Seminar Eingebettete Systeme

Dozent: Prof. Dr. Gregor Schiele
Sprache: Deutsch/Englisch
Turnus: Sommersemester
Zeit: Di, 14:00 - 16:00
Ort: BC 103
Beginn: 10.04.2018

Um die kommenden Herausforderungen von Applikationen im Internet of Things bewältigen zu können, müssen weitere Hardwareklassen mit einbezogen werden, die gewisse Problemklassen effizienter berechnen können. Eine Alternative zu den klassischerweise eingesetzten Microcontrollern stellen rekonfigurierbare Hardware wie Field-Programmable Gate Arrays (FPGA) dar. Thema dieses Seminars ist die Entwicklung von Applikationen für rekonfigurierbare Hardware mit Fokus auf FPGAs. Dabei werden nicht nur die theoretischen Grundlagen des FPGAs und der Entwicklungssprache VHDL beleuchtet, sondern es soll auch praktisch mit diesen Geräten im Seminar gearbeitet und in VHDL programmiert werden, um die theoretisch erlernten Konzepte direkt und praktisch zu vertiefen. Während des Seminars soll ein Extended Abstract geschrieben und eine in VHDL geschriebene Applikation entwickelt werden.

Die Vorbesprechung für dieses Seminar wird am 10.04.2018 von 14:00-16:00 im Raum BC 303 stattfinden. Für die Teilnahme ist die Answesenheit im Kickoff-Meeting erforderlich, da ausschließlich dort Formalitäten für eine Anmeldung bekanntgegeben werden.