Aufgabengebiete
- Literaturstudie und technische Analyse für die Portierung der Echtzeit-Ethernet Lösung "openPOWERLINK"
- Aufbau und Programmierung einer Beispiel-Industrieanlage (Linux-basiert)
- Portierung von openPOWERLINK zu seL4/Fiasco.OC und Genode OS
- Beschleunigung der Software-basierten Portierung durch FPGA/ASIC
- Portierung der open-source PLC Software "OpenPLC"
- Aufbau und Programmierung einer zweiten Beispiel-Industrieanlage (L4-basiert)
- Integration der Echtzeit-Ethernet Lösung in einen bestehenden automotiven Versuchsträger
Erforderliche Kenntnisse
- Erfahrung mit Linux-Distributionen (z.B. Ubuntu)
- Grundkenntnisse in C++ und Python
- Vorlesung: Einführung in die Rechnerarchitektur (IN0004)
- Vorlesung: Grundlagen: Betriebssysteme und Systemsoftware (IN0009)
- Vorlesung: Grundlagen: Rechnernetze und Verteilte Systeme (IN0010)
Alternativ:
- Vorlesung: Betriebssysteme und hardwarenahe Programmierung für Games (IN0034)
- Vorlesung: Aspekte der systemnahen Programmierung bei der Spieleentwicklung (IN0035)
- Praktikum: Betriebssysteme - L4-Mikrokerne (IN0012, IN2106, IN4258)
Optionale Kenntnisse:
- ARM-Assembler
- FPGA-Entwicklung
- Erfahrungen mit SBCs (z.B. RaspberryPi)
- Erfahrungen mit dem Genode OS Framework
- Erfahrungen mit L4-Mikrokernen (z.B. Fiasco.OC, seL4)
Vergütung
Die Bezahlung erfolgt nach den üblichen Tarifen und in Abhängigkeit Ihres Abschlusses. Aktuell sind für die Stellen 16 Wochenstunden geplant, bei Bedarf kann die Zahl jedoch geringfügig nach oben/unten angepasst werden.
Projektlaufzeit
Projektzeitraum: 01.03.2020 bis 28.02.2021
Projektbeschreibung
Das Projekt EE4L4 beschäftigt sich mit der Portierung einer bestehenden Echtzeit-Ethernet Lösung (openPOWERLINK) auf ein L4-Mikrokern basiertes Betriebssystem (Genode OS Framework mit Fiasco.OC & seL4 als Kernel). Dass sich L4-Mikrokern basierte Betriebssysteme für den Einsatz in Fahrzeugen eignen zeigte das vorangegangene Projekt KIA4SM. Dieses nutzte die Konzepte der Hardwarekonsolidierung und der Softwarevirtualisierung für die protoypische Entwicklung einer Integrationsarchitektur für zukünftige automotive Hardware- und Softwaresysteme. Migration wurde dort eingesetzt, um Softwarekomponenten zwischen verschiedenen, universell einsetzbaren Steuereinheiten auszutauschen. KIA4SM liefert die prototypische Implementierung eines gesamten Migrationsprozesses, sowie eine Hybrid-Simulator-basierte Testumgebung für Migrationsszenarien. In der Testumgebung stellte sich die Verwendung von Standard-Ethernet als limitierenden Faktor für das Gesamtprojekt dar.
Standard-Ethernet stößt durch die Verwendung eines Kollisionserkennungs-Verfahren an seine Grenzen. Es kann bei mehreren Akteuren im Netzwerk nicht sichergestellt werden, dass immer nur ein Kommunikationsteilnehmer gleichzeitig aktiv ist. Echtzeit-Ethernet stellt im Gegensatz zu Standard-Ethernet sicher, dass nie zwei Akteure zur gleichen Zeit Informationen versenden. Dies ist möglich, indem z.B. ein Zeitmultiplex-Verfahren zum Einsatz kommt. Dies bedeutet, dass jeder Akteur im Netzwerk eine bestimmte Zeit zugewiesen bekommt, innerhalb der er Informationen versenden darf. Dies führt dazu, dass keine Kollisionen mehr erzeugt werden, eine deterministische Datenübertragung zustande kommt und berechenbare Latenzen möglich sind. Durch die Zuteilung von Zeit-Einheiten ist hierbei gleichzeitig eine Priorisierung von Teilnehmern möglich.
Durch die Portierung einer open-source Implementierung des Echtzeit-Ethernet Protokolls Ethernet Powerlink (openPOWERLINK) soll L4-Mikrokern basierten Betriebssystemen Echtzeitkommunikation ermöglicht und die Limitierung des vorangegangen Projekts aufgehoben werden. Gleichzeitig wird es nötig sein die Software-Portierung durch die Verwendung von FPGA- bzw. ASIC-Lösungen zu beschleunigen um IRT (isochronous real-time) Kommunikation zu erreichen. Eine rein Software-basierte Portierung erfüllt nicht die Anforderungen für harte Echtzeit.
Evaluiert wird das Ergebnis der Portierung an der bestehenden automotiven Testumgebung und zusätzlich soll ein neuer Versuchsträger in Form einer Beispiel-Industrieanlage auf Basis einer Fertigungsstraße entstehen. Hierfür fällt zusätzlich die Programmierung der SPS (Speicherprogrammierbare Steuerung) auf Basis der open-source Lösung OpenPLC an, welche ebenfalls für die Verwendung in Genode OS portiert werden soll.