100 likes | 233 Views
Eingebettete Systeme Qualität und Produktivität. Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik. War wir bislang hatten. Einführungsbeispiel (Mars Polar Lander) Automotive Software Engineering
E N D
Eingebettete SystemeQualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik
War wir bislang hatten • Einführungsbeispiel (Mars Polar Lander) • Automotive Software Engineering • Anforderungsdefinition und -artefakte • Lastenheft TSG • Ziele und Szenarien • Strategien • Modellierung • physikalische Modellierung • Anwendungs- und Verhaltensmodellierung • Berechnungsmodelle, zeitabhängige & hybride Automaten • Datenflussmodelle (Katze und Maus) • Regelungstechnik • PID-Regelung • HW für Regelungsaufgaben • speicherprogrammierbare Steuerungen
Eingebettete Systeme: Software • keine dynamische Speicherzuteilung, möglichst keine Zeiger • feste Instanziierung, festes Linking • Komponenten sind ereignisgetrieben, reagieren auf Unterbrechungen von Sensoren oder Uhren, indem sie ihren Zustand ändern und Nachrichten verschicken • Kommunikation über Nachrichten auf fest zugeteilten Speicherplätzen • Programmierung • in den allermeisten Fällen C, selten Assembler, manchmal Java Bytecode (JVM?), .Net? • Spezifikation durch Modelle (z.B. StateCharts, SimuLink) • Codegenerierung, Entwurfsmuster
Software-Entwurfsmuster • Control Loop • innerhalb einer festen Schleife werden die Sensorwerte abgelesen, Aktionen berechnet, und Aktuatorausgänge angesteuert • Special Task Agent • Prozess wird durch Ereignis angestoßen, führt Berechnung durch, legt sich wieder schlafen • Watchdog • Komponente, die regelmäßig angestoßen („gefüttert“) werden muss, ansonsten leitet sie eine Ausnahmebehandlung an („beißt“) • Sanity Check • eine Task rechnet, die andere überwacht die Plausibilität • TMR • dreifach modulare Redundanz mit Voting, siehe nachher
Beispiel SPS • speicherprogrammierbare Steuerungen (engl. PLC, programmable logic controller) • seit 1960-er Jahre Standard in der Automatisierungstechnik • normierte Anschlüsse 24V; hinter jedem Eingang Entprellung und elektrische Trennung; Ausgänge für Relais oder Halbleiter • EPROM programmierbar über serielle Schnittstelle • Feldbus- und Netzanbindungsmöglichkeiten • Ausführungsmodell: Control Loop • Start und Stoppzustand, SelbstdiagnoseProgrammierung während Stopp, Initialisierung beim Start • verschiedene Programmiermöglichkeiten (DIN EN 61131) • IL/AWL (Instruction List, Anweisungsliste), ST (strukturierter Text) • LD/KOP (Ladder Diagram, Kontaktplan), FBD/FUP (Funktionsplan), SFC/AS (Sequential Function Chart, Ablaufsprache)
SPS - Grundsätzlicher Aufbau aus: http://www.tfh-berlin.de/~msr/pdf-files/Steuerungstechnik/STE_Vorlesung%20Teil%2001.pdf
Reaktionszeiten • maximale Reaktionszeit setzt sich zusammen aus • Hardwareverzögerung an den Eingängen • Abfragezeit an den Eingängen • Systemverwaltungszeit • Signalverarbeitungszeit • Hardwareverzögerung an den Ausgängen