Präsentation herunterladen
1
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement
Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik
2
Übersicht 0. Einleitungsbeispiel (Mars Polar Lander)
1. Eingebettete Systeme 1.1. Definitionen (eingebettetes System, Realzeit, Prozess, Steuerung, …) 1.2. Anforderungsanalyse allgemeine Vorgehensweise Beispiel Türsteuergerät systematische Ansätze; Def. Modus, Kondition, Historie Anwendungsfallbeschreibungen 1.3. Modellierung Timed Automata, UPPAAL Hybride Automaten Datenflussmodelle, SimuLink
3
Time Petri Netze Modellierung von Realzeit mit Parallelität
Bipartiter Graph aus Stellen und Transitionen; Marken repräsentieren Prozesse Jede Transition hat eine eigene Uhr; zurückgesetzt sobald schaltbar früheste und späteste Schaltzeit (Intervall [0,) Transition kann erst nach Ablauf der frühesten, muss aber nach Ablauf der spätesten Schaltzeit schalten
4
Erweiterungen Zeitautomaten sind „fast optimal“
Stoppuhren unentscheidbar reelle Konstante unentscheidbar variable Geschwindigkeiten unentscheidbar Hybride Automaten geringfügige Erweiterungen Spezialprobleme entscheidbar Rechteckautomaten Automaten mit „Uhrenschlupf“
5
Hybride Automaten Anreicherung von Zeitautomaten um kontinuierliche Variablen z.B. doppelte Uhrgeschwindigkeit (multi-slope clocks) x=2 z.B. Stoppuhren (Anhaltemöglichkeit) x=0 z.B. nichtlineare Funktionen (gleichmäßige Beschleunigung) x=1 z.B. allgemeine Differentialgleichungen Zuweisungen in Transitionen Achtung: in Literatur auch „beim Betreten eines Ortes“ Spezialfall Uhrenvariable nur Zuweisungen x=0, globale Konstante x=1 x>2 / x´= 2 klick / x´= 0
6
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 / fmax / z=0 f<max fmin / z=1 f>min
7
Katze-und-Maus-Problem
fängt die Katze die Maus oder nicht? (trifft die Abwehrrakete das Projektil oder nicht?)
8
Modellierung Differentialgleichungssystem für diese Variablen
Konstante: vk, vm, xz, yz, xm(0), ym(0), xk(0), yk(0) Geschwindigkeitsvektor Maus vm2 = xm2+ym2 xm = xz-xm(0) , ym = yz-ym(0) dmz= sqrt(xm2+ ym2) xm/ vm= xm/ dmz , ym/vm = ym/ dmz Geschwindigkeitsvektor Katze vk2 = xk2+yk2 xk = xm-xk , yk = ym-yk dkm= sqrt(xk2+ yk2) xk/ vk= xk/ dkm , yk/ 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
9
hybrider Automat Konstante: vk, vm, xz, yz, xm(0), ym(0), xk(0), yk(0)
Variable: xm, ym, xk, yk, xk, yk xm = xz-xm(0) , ym = yz-ym(0) dmz= sqrt(xm2+ ym2) xm = xm * vm / dmz ym = ym * vm / dmz xk = xm-xk yk = ym-yk dkm= sqrt(xk2+ yk2) xk= xk * vk/ dkm yk= yk * vk/ dkm nahrung *: xm=xm(0), ym=ym(0), xk=xk(0), yk=yk(0), xm = …, ym=… xk=… yk=… (xm,ym)=(xk,yk) start jagd * (xm,ym)=(xz,yz) rettung
10
Pause!
11
Datenflussmodellierung
Beispiel ist stark datenorientiert Kontrollfluss nur zum Abbruch Modellierung durch Datenflussdiagramm jede „Leitung“ entspricht einer Variablen Konstante als spezielle Variable Integratoren Rückkoppelungen
12
Simulationsergebnis
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.