Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Eingebettete Systeme Qualität und Produktivität

Ähnliche Präsentationen


Präsentation zum Thema: "Eingebettete Systeme Qualität und Produktivität"—  Präsentation transkript:

1 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

2 War wir bislang hatten Einführungsbeispiel (Mars Polar Lander)
Automotive Software Engineering Domänen-Engineering Modellbasierte Entwicklung Anforderungsdefinition und -artefakte Lastenheft TSG Ziele und Szenarien Strategien Modellierung physikalische Modellierung Anwendungs- und Verhaltensmodellierung Berechnungsmodelle, zeitabhängige & hybride Automaten Datenflussmodelle

3 Beispiel Füllstandsregelung
Füllstandsanzeiger Zulauf Ablauf max min Randbedingungen 0  f(t)  h 0 < f(t) < h  f. (t)= k1*z(t) – k2*a(t) Steuerfunktionalität f(t)  min  z(t) = 1 f(t)  max  z(t) = 0 mid full emty ok high low Strecke Regelung f=h / f.= – k2a f=0 / f.= k1z f<h / f.= k1z – k2a f>0 / fmax / z=0 f<max fmin / z=1 f>min

4 Katze-und-Maus-Problem
fängt die Katze die Maus oder nicht? (trifft die Abwehrrakete das Projektil oder nicht?)

5 Modellierung Differentialgleichungssystem für diese Variablen
Konstante: vk, vm, xz, yz, xm(0), ym(0), xk(0), yk(0) Geschwindigkeitsvektor Maus vm2 = xm2+ym2 xm = xz-xm(0) , ym = yz-ym(0) dmz= sqrt(xm2+ ym2) xm/ vm= xm/ dmz , ym/vm = ym/ dmz Geschwindigkeitsvektor Katze vk2 = xk2+yk2 xk = xm-xk , yk = ym-yk dkm= sqrt(xk2+ yk2) xk/ vk= xk/ dkm , yk/ vk = yk/ dkm Katze Geschwindigkeit vk Position (xk(t),yk(t)) Ziel (xz,yz) Maus Geschw. vm Pos. (xm(t),ym(t)) Differentialgleichungssystem für diese Variablen

6 hybrider Automat Konstante: vk, vm, xz, yz, xm(0), ym(0), xk(0), yk(0)
Variable: xm, ym, xk, yk, xk, yk xm = xz-xm(0) , ym = yz-ym(0) dmz= sqrt(xm2+ ym2) xm = xm * vm / dmz ym = ym * vm / dmz xk = xm-xk yk = ym-yk dkm= sqrt(xk2+ yk2) xk= xk * vk/ dkm yk= yk * vk/ dkm nahrung *: xm=xm(0), ym=ym(0), xk=xk(0), yk=yk(0), xm = …, ym=… xk=… yk=… (xm,ym)=(xk,yk) start jagd * (xm,ym)=(xz,yz) rettung

7 Analysemöglichkeiten für HA
Hybride Automaten sind Turing-mächtig Für eingeschränkte Klassen (B limitiert) sind gewisse Probleme (z.B. Erreichbarkeit für Rechteckautomaten) noch analysierbar Im Allgemeinen ist die Analyse sehr komplex Heuristiken konzentrieren sich auf die internen Datenrepräsentationen (Difference Bound Matrices, Regionengraphen etc.)

8 Toolunterstützung HyTech: (eingeschränktes) Model Checking für hybride Automaten PHAVer: Polyhedral Hybrid Automaton Verifyer Interaktive Verifikation mit General-Purpose-Theorembeweiser (z.B. Isabelle) Synthese von Steuerungssoftware gRRT: neuere Arbeiten zur Testgenerierung

9 Datenflussmodellierung
Beispiel ist stark datenorientiert Kontrollfluss nur zum Abbruch Modellierung durch Datenflussdiagramm jede „Leitung“ entspricht einer Variablen Konstante als spezielle Variable Integratoren Rückkoppelungen

10

11 Simulationsergebnis

12

13 Abstraktion Hauptstärke von SimuLink besteht in der Möglichkeit, Blöcke zusammenzufassen Abstraktion von Verhalten baumartige Navigation Parametrisierung Modulbibliotheken externe Erweiterungen Codeanbindung Modelltransformation und –entwicklung!

14 Thanks for the slides: Daniela Weinberg
Codegenerierung Ziel: automatische Übersetzung von Modellen in ausführbaren (C-) Code zwei kommerzielle Produkte verfügbar Real Time Workshop (The MathWorks) TargetLink (dSPACE GmbH) Codegenerator ist „Compiler für Modelle“ Wiederverwendung schnelle Prototyp- und Produkterstellung erhöhte Zuverlässigkeit gegen Programmierfehler automatische Optimierung des generierten Codes Wie kann man sicherstellen, dass der generierte Code das Erwartete leistet? Thanks for the slides: Daniela Weinberg Quelle: dSPACE GmbH

15 modellbasierter Test Simulation /Ausführung des Modells und generierten Codes in verschiedenene Entwicklungsphasen MiL (Model in the Loop) SiL (Software in the Loop) PiL (Processor in the Loop) HiL (Hardware in the Loop) þ ý test output result comparison physical model implementation model test stimuli C code (target) ECU MiL (physical model) MiL (impl. model) SiL PiL C code (host)

16 Szenarien für Testautomatisierung
Requirements Modell Code Testsuite Requirements Modell Code Testsuite UseCases


Herunterladen ppt "Eingebettete Systeme Qualität und Produktivität"

Ähnliche Präsentationen


Google-Anzeigen