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)
Montag, 14:00 - 16:00
Dienstag, 12:00 - 14:00
Ort: LC 137 (Vorlesung)
BC 303 (Übung)
LC 137 (Übung)
Beginn: 13.04.2016

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 Praxisprojekt Communication Middleware für Eingebettete Systeme

Dozent: Christopher Cichiwskyj
Stephan Schmeißer
Sprache: Deutsch/Englisch
Turnus: Sommersemester
Zeit: 12:00 - 14:00
Ort: BC 303
Beginn: 13.04.2016

Projektziel:

Ziel dieses Praxisprojekts ist es eine Middleware für eingebettete Systeme zu entwickeln, um von den spezifischen Eigenschaften eines Kommunikationsmediums wegzuabstrahieren und Softwareentwicklern eine vereinfachte Schnittstelle zum Datenaustausch zwischen einzelnen Geräten anbieten zu können. Diese Middleware soll auf 8-Bit Microcontroller von Atmel, wie sie auch in Arduino-Geräten eingesetzt werden, entwickelt werden. Zur Kommunikation werden Funkmodule des Standards IEEE 802.15.4 verwendet. In diesem Projekt soll zuerst eine Schnittstelle für die Funkmodule in nativen C-Code entwickelt werden, um diese anschließend in der zu entwickelnden Middleware einzusetzen.

Vorkenntnisse

Für die Entwicklung von sowohl der 802.15.4 Schnittstelle, als auch der darauf aufbauenden Middleware werden gute Kentnisse in C/C++ benötigt. Die Kommunikation von sowohl den dem Entwicklungs- mit dem Zielsystem, als auch dem Zielsystem mit dem Funkmodul werden Vorkenntnisse in Communication Interfaces, z.B. UART vorausgesetzt.

Sollten Sie dabei sein?

Sie interessieren sich für eingebettete Systeme und die Entwicklung eingebetterer Software? Sie möchten mehr über die Entwicklung von Middleware auf Hardware mit beschränkten Resourcen lernen? Sie haben an der Programmierung optimierter Systeme mit C/C++? Sie haben Spaß an der Programmierung optimierter Systeme mit C/C++? Sie möchten an einem Projekt mitarbeiten, dass nicht nur 'auf dem Papier' Ergebnisse liefert, sondern tatsächlich relevante Ziele 'in der echten Welt' verfolgt? Dann sollten Sie sich für dieses Projekt bei uns bewerben.

Die Vorbesprechung zum Projekt findet am
Mittwoch, den 13.04.2016
von 12:00-14:00 Uhr
im Raum BC 303
statt.

Nach geänderten Regelungen für die Teilnehmerzahlen in Projekten findet diesmal eine vorherige Anmeldung für das Projekt statt. Alle nötigen Informationen finden Sie im Moodle Kurs:

Moodle-Kurs zum Praxisprojekt CM

Schlüssel: cm_es16

Falls Sie Fragen habe, wenden Sie sich bitte an Herrn Christopher Cichiwskyj.

Bachelorseminar Seminar Eingebettete Systeme

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

 

Das Bachelorseminar behandelt Themen aus dem Gebiet der agilen Softwareentwicklung. Dabei werden im speziellen moderne Arbeitsweisen in der Softwareentwicklung beleuchtet, sowie Methoden zur Förderung der kollaborativen Softwareentwicklung. Einige Themen, die behandelt werden (aber nicht ausschließlich) sind:
 - Legacy Code
 - Refactoring
 - Zeit Management und Abschätzung
 - Organisation/Kommunikation in Entwicklerteams
 - Test-driven development
 - ...

Nach geänderten Regelungen für die Teilnehmerzahlen in Projekten findet diesmal eine vorherige Anmeldung für das Projekt statt. Alle nötigen Informationen finden Sie im Moodle Kurs:

Moodle-Kurs Seminar ES
Schlüssel: asd_es16

Falls Sie Fragen haben, wenden Sie sich bitte an Herrn Stephan Schmeißer.
 

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)
LE 120 (Übung)
Beginn: 13.04.2016

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) Praxisprojekt Test-Driven Development für Eingebettete Systeme

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

 

Projektziel:

Ziel dieses Praxisprojekts ist die Entwicklung deines Rahmenwerks für Test Driven Development(TDD) auf eingebetteten Systemen, insbesondere 8bit Microcontrollern von Atmel, die beispielsweise in Arduino Geräten verwendet werden. Dies beinhaltet ein sogenanntes Test-Harness, d.h. eine Ablaufumgebung für automatisierte Unit-Tests, Plugins für Entwicklungsumgebungen (z.B. Eclipse) und Bild-Systeme (z.B. Gradle), sowie ggf. eine Mockingbibliothek zur einfachen Erstellung von Test-Dummies. Das System soll es erlauben, Tests sowohl auf dem Entwicklungsrechner als auch auf dem Zielsystem (d.h. auf dem Mikrocontroller) auszuführen und Testergebnisse direkt und schnell zu erhalten. Ausgangspunkt der Arbeiten sind existierende TDD- und Mockup-Implementierungen.

Vorkenntnisse:

Für die Entwicklung der Testumgebung und Mockingbibliothek werden gute Kenntnisse in C/C++ benötigt. Für die Anbindung an die Entwicklungsumgebung (Eclipse) sowie das Build-System (Gradle) werden gute Kenntnisse in Java benötigt. Die Kommunikation zwischen Entwicklungs- und Zielrechner benötigt Vorkenntnisse in Communication Interfaces, z.B. UART. Bitte beachten Sie, dass im Projekt Teilgruppen gebildet werden, so dass Sie ggf. nicht Vorkenntnisse in all diesen Bereichen benötigen. Weitergehende Kenntnisse in der Entwicklung eingebetteter Software, über TDD und Mocking sind von Vorteil aber nicht unbedingt notwendig.

 

Sollten Sie dabei sein?

Sie interessieren sich für eingebettete Systeme und die Entwicklung eingebetteter Software? Sie möchten mehr lernen über Test Driven Development, Unit Testing und Mocking und damit etablierte Entwicklungsansätze besser verstehen? Sie haben Spaß an der Programmierung optimierter Systeme mit C/C++, insbesondere Systeme mit wenig Speicher. Sie möchten an einem Projekt mitarbeiten, dass nicht nur 'auf dem Papier' Ergebnisse liefert, sondern tatsächlich relevante Ziele 'in der echten Welt' verfolgt? Dann sollten Sie sich für dieses Projekt bei uns bewerben.

 

Die Vorbesprechung zum Projekt findet am
12.04.2016, 10:00 - 12:00 Uhr
Raum BC 523
statt.

Nach geänderten Regelungen für die Teilnehmerzahlen in Projekten findet diesmal eine vorherige Anmeldung für das Projekt statt. Alle nötigen Informationen finden Sie im Moodle Kurs:

Moodle-Kurs zum Praxisprojekt TDD

Schlüssel: tdd_es16

Falls Sie Fragen haben, wenden Sie sich bitte an Herrn Prof. Gregor Schiele.

Veranstaltungskalender

Kalender

Dezember 2024
SoMoDiMiDoFrSa
1234567
891011121314
15161718192021
22232425262728
2930311234