Inhalt |
Moderne Steuerungs- und Überwachungssysteme für Geräte, Maschinen und Anlagen sowie für Embedded Systeme (z.B. elektronische Steuergeräte von Fahrzeugen) sind überwiegend Computersysteme. Ein Schwerpunkt bei der Entwicklung ist daher die Erstellung von Programmen mit den zu erfüllenden Anforderungen an die logische Korrektheit. Zusätzlich sind Forderungen nach Rechtzeitigkeit, Gleichzeitigkeit und zeitlichem Determinismus zu erfüllen. Dies bedeutet, dass nicht nur die Fehlerfreiheit oder einfache Bedienbarkeit eines Programms von Bedeutung sind, sondern dass die Ergebnisse auch rechtzeitig zur Verfügung stehen müssen (Echtzeitsysteme). Da bei solchen Anwendungen im Allgemeinen gleichzeitig mehrere Aufgaben zu erledigen sind (z.B. die zyklische Verarbeitung mehrerer Regelkreise, kontinuierliche Überwachung von Prozessgrößen oder Kommunikation mit anderen Systemen) sollte die quasi gleichzeitige Verarbeitung mehrerer Prozesse (Multitasking) möglich sein. Besonders digitale Abtastsysteme, wie sie etwa digitale Regler darstellen, stellen besondere Anforderungen an die Echtzeitbedingungen, hier drohen schwere Folgen, wie die Instabilität eines ganzen Regelsystems, werden diese harten Echtzeit-Bedingungen nicht eingehalten.
Im Rahmen der Lehrveranstaltung erhält der Studierende eine Einführung in die Methoden der Echtzeitprogrammierung, in der Automatisierungstechnik bzw. im Anwendungsbereich der Embedded Systeme. Es erfolgt eine Einführung in die Grundlagen der Echtzeitbetriebssysteme, deren vorrangige Aufgaben und Eigenschaften. Dabei werden wichtige Task-Scheduling Algorithmen vorgestellt und diese anhand konkreter Anwendungsbeispiele besprochen. Digitale Abtastsysteme mit ihren harten Echtzeitanforderungen werden besonders hervorgehoben, etwa bei der Realisierung des weit verbreiteten Standard PID Algorithmus der Regelungstechnik.
Lehrinhalte
Architektur moderner Automatisierungssysteme,
Spezifische Anforderungen an Echtzeitsysteme,
Methoden der Echtzeitverarbeitung: Zyklische Verarbeitung, zeitgesteuerte Verarbeitung, zyklische Verarbeitung mit Interrupts, Multitasking, Fixed Priority with/without Preemption FPP/FPN,
Time-Slice Scheduling, Earliest Deadline First EDF Scheduling
Task- und Ressourcen Synchronisation (Semaphores, Mutex), Task Kommunikation (Events, Message Queues), Grundlagen der Interruptverarbeitung,
Zugriff auf gemeinsam genutzte Daten,
Entwurfskriterien für Echtzeitsysteme,
Vorstellung der Echtzeitbetriebssysteme VxWorks, FreeRTOS und OSEK,
Realisierungsbeispiele. |