Modellbildung und Testautomatisierung für die Hardware-in-the ...
Modellbildung und Testautomatisierung für die Hardware-in-the ...
Modellbildung und Testautomatisierung für die Hardware-in-the ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Modellbildung</strong> <strong>und</strong> <strong>Testautomatisierung</strong> <strong>für</strong> <strong>die</strong> <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop<br />
Simulation<br />
Dr.-Ing. Clemens Gühmann, IAV GmbH<br />
Abstract. Im Software-Entwicklungsprozess werden heutzutage verstärkt <strong>die</strong> Methoden<br />
Model-<strong>in</strong>-<strong>the</strong>-Loop (MiL), Software-<strong>in</strong>-<strong>the</strong>-Loop (SiL) <strong>und</strong> <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop (HiL) Simulation<br />
e<strong>in</strong>gesetzt. Die E<strong>in</strong>satzmöglichkeit der Simulation ist nur dann gegeben, wenn <strong>die</strong><br />
verwendeten Simulationsmodelle den geforderten Detaillierungsgrad besitzen <strong>und</strong> vor allem<br />
rechtzeitig d.h. spätestens zum Beg<strong>in</strong>n der entsprechenden Entwicklungsprozessphasen<br />
(z.B. Softwaretestphase) vorliegen. Für <strong>die</strong> HiL Simulation wird <strong>die</strong> Gew<strong>in</strong>nung<br />
echtzeitfähiger Modelle <strong>für</strong> <strong>die</strong> Fahrzeuglängsdyamik (Getriebe <strong>und</strong> Motor) dargestellt.<br />
Die Vorteile der Simulation kommen jedoch erst dann zum Tragen, wenn <strong>die</strong> Tests automatisiert<br />
durchgeführt werden können. Neben der Beschleunigung des Entwicklungsprozesses<br />
werden Tests im Steuergeräteverb<strong>und</strong> beherrschbar <strong>und</strong> <strong>die</strong> Fehlerquote gesenkt.<br />
Es wird e<strong>in</strong> durchgängiger, automatisierter Testprozess <strong>für</strong> <strong>die</strong> HiL Simulation beschrieben.<br />
Mit Hilfe der Unified Modell<strong>in</strong>g Language (UML) wird <strong>die</strong> Spezifikation <strong>für</strong> das gesamte<br />
Testsystem erstellt. Als Anwendungsbeispiel wird e<strong>in</strong> HiL System der IAV GmbH zum Test<br />
von Getriebesteuerungen <strong>für</strong> Stufenautomaten vorgestellt.<br />
1 E<strong>in</strong>führung<br />
Bed<strong>in</strong>gt durch <strong>die</strong> steigenden Forderungen des Gesetzgebers sowie durch <strong>die</strong> hohen Erwartungen<br />
der K<strong>und</strong>en bezüglich Fahrkomfort, Leistung <strong>und</strong> Sicherheit nimmt <strong>die</strong> Komplexität<br />
des Antriebsstrangs moderner Kraftfahrzeuge rasant zu. Die geltenden <strong>und</strong> zukünftigen<br />
Umwelt-Gesetzgebungen können unter anderem nur durch moderne Motoren mit e<strong>in</strong>er Vielzahl<br />
steuerbarer Komponenten, wie z. B. e<strong>in</strong>er variablen Nockenwellenverstellung oder der<br />
Verwendung moderner Getriebesysteme erreicht werden. Die Anforderungen an moderne<br />
Kraftfahrzeuge können darüber h<strong>in</strong>aus nur durch e<strong>in</strong>e Vernetzung der Steuergeräte bzw.<br />
durch <strong>die</strong> Ausführung der über <strong>die</strong>se Steuergeräte verteilten Funktionen erfüllt werden.<br />
Zur Beherrschung der dadurch gestiegenen Komplexität der Steuergerätesoftware – verb<strong>und</strong>en<br />
mit kürzer werdenden Entwicklungszyklen – ist <strong>die</strong> Anwendung neuer Methoden bei der<br />
Entwicklung <strong>und</strong> Bedatung der Software notwendig. Aufgr<strong>und</strong> des zunehmenden Kostendrucks<br />
darf der hier<strong>für</strong> erforderliche Aufwand nicht erhöht werden. In Abkehr von der früher<br />
ausschließlich e<strong>in</strong>gesetzten Entwicklung <strong>und</strong> Prüfung im Fahrversuch wird heutzutage verstärkt<br />
<strong>die</strong> Simulation im Software- <strong>und</strong> Funktionsentwicklungsprozess e<strong>in</strong>gesetzt.<br />
Die zunehmenden qualitativen <strong>und</strong> quantitativen Vorgaben im Steuergerätetest können nur<br />
durch e<strong>in</strong>en optimierten Testprozess erreicht werden. E<strong>in</strong> Mittel zur Optimierung des Testprozesses<br />
bezüglich der Prüftiefe <strong>und</strong> des Aufwandes stellt der automatisierte Test <strong>in</strong> der<br />
<strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation dar. Die Prüftiefe der Tests hängt dabei stark von dem<br />
Detaillierungsgrad <strong>und</strong> der Verfügbarkeit der echtzeitfähigen Simulationsmodelle ab.<br />
Seite 1
2 Simulation im Software- <strong>und</strong> Funktionsentwicklungsprozess<br />
Der E<strong>in</strong>satz der Simulation lässt sich anhand des sogenannten V-Modells darstellen. In Abhängigkeit<br />
des Entwicklungsschrittes kommen verschiedene Simulationsarten zum Tragen.<br />
Ausgangspunkt der Softwareentwicklung s<strong>in</strong>d <strong>die</strong> Anforderungen des K<strong>und</strong>en, <strong>die</strong> zum Beg<strong>in</strong>n<br />
der Softwareentwicklung <strong>in</strong> Form e<strong>in</strong>es Lastenheftes vorliegen (Bild 1). Nach der<br />
Systemspezifikation erfolgt <strong>die</strong> Funktionsspezifikation, <strong>die</strong> durch <strong>die</strong> Model-<strong>in</strong>-<strong>the</strong>-Loop Simulation<br />
unterstützt werden kann (MiL 1). Bei der Model-<strong>in</strong>-<strong>the</strong>-Loop Simulation werden<br />
sowohl <strong>die</strong> zu spezifizierenden Funktionen als auch das Fahrzeug auf e<strong>in</strong>em PC/e<strong>in</strong>er Workstation<br />
simuliert. Die Funktionen werden dabei als Softwaremodell <strong>in</strong> grafisch orientierten<br />
Programmiersystemen wie MATLAB ® /Simul<strong>in</strong>k ® entwickelt. Es werden <strong>die</strong> Funktionen im<br />
Detail entworfen <strong>und</strong> festgelegt. Als Ergebnis liegt e<strong>in</strong> elektronisches, ausführbares Lastenheft<br />
vor.<br />
Seite 2<br />
1<br />
2<br />
Anforderung<br />
Systemspezifikation<br />
Funktionsspezifikation<br />
Model-<strong>in</strong>-<strong>the</strong>-Loop Simulation<br />
Fahrzeugmodell<br />
Rapid-Prototyp<strong>in</strong>g<br />
Regelstrecke<br />
im Fahrzeug<br />
Programmentwurf<br />
Softwarentwicklungsprozess<br />
Modell der<br />
Software<br />
5<br />
1<br />
Modulentwurf<br />
Modell der<br />
Software<br />
PC<br />
Steuer-<br />
Bypass- gerät<br />
Rechner<br />
K<strong>und</strong>e<br />
Rapid-Prototyp<strong>in</strong>g<br />
2<br />
Co<strong>die</strong>rung<br />
3<br />
4<br />
Offl<strong>in</strong>e-Simulation<br />
Bild 1: Software- <strong>und</strong> Funktionsentwicklungsprozess<br />
Modultest<br />
Fahrzeugmodell<br />
Kennfeldoptimierung<br />
Stellgrößen, z.B. Zündw<strong>in</strong>kel PC<br />
3<br />
4<br />
4<br />
Integrationstest<br />
Software-<strong>in</strong>-<strong>the</strong>-Loop Simulation<br />
Fahrzeugmodell<br />
<strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation<br />
Fahrzeugmodell<br />
4<br />
DSP<br />
4 5 Applikation<br />
Systemtest<br />
Funktionstest<br />
Software<br />
Seriencode<br />
PC<br />
Steuergerät<br />
Steuergerät<br />
Anschließend können <strong>die</strong> Softwaremodelle der Funktionen mit entsprechenden Soft- <strong>und</strong><br />
<strong>Hardware</strong>tools auf e<strong>in</strong>em Bypassrechner im Fahrzeug direkt getestet <strong>und</strong> optimiert werden<br />
(Rapid-Prototyp<strong>in</strong>g 2). Mit Hilfe der Model-<strong>in</strong>-<strong>the</strong>-Loop Simulation <strong>und</strong> des Rapid-Prototyp<strong>in</strong>g<br />
lassen sich <strong>in</strong> e<strong>in</strong>er frühen Phase Spezifikationsfehler auff<strong>in</strong>den <strong>und</strong> beseitigen.<br />
Das Softwaredesign <strong>und</strong> <strong>die</strong> Co<strong>die</strong>rung <strong>für</strong> das Zielsystem, d. h. <strong>die</strong> Umsetzung der Funktionen<br />
<strong>in</strong> e<strong>in</strong>e serientaugliche Software schließen sich <strong>in</strong> den Prozessschritten Programm-
entwurf, Modulentwurf <strong>und</strong> Co<strong>die</strong>rung an. Diese Schritte werden durch statische Analysen<br />
(Reviews) begleitet.<br />
Der folgende Modultest, beim dem das Moduldesign überprüft werden soll, kann durch <strong>die</strong><br />
Software-<strong>in</strong>-<strong>the</strong>-Loop Simulation (SiL3) unterstützt werden. Hierbei wird das zuvor <strong>in</strong> der<br />
Model-<strong>in</strong>-<strong>the</strong>-Loop Simulation verwendete Softwaremodell durch den späteren Seriencode<br />
ersetzt <strong>und</strong> <strong>in</strong> <strong>die</strong> Simulation e<strong>in</strong>geb<strong>und</strong>en.<br />
Beim anschließenden Integrationstest, der das Ziel besitzt, das ausführbare Programm im<br />
Zusammenspiel mit dem Betriebssystem <strong>und</strong> den verwendeten <strong>Hardware</strong>komponenten zu<br />
prüfen, wird der Software<strong>in</strong>genieur durch e<strong>in</strong>en <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop-Simulator (HiL 4) unterstützt.<br />
Auch <strong>die</strong> sich nun anschließenden Funktions- <strong>und</strong> Systemtests s<strong>in</strong>d ohne den E<strong>in</strong>satz<br />
e<strong>in</strong>es <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulators <strong>in</strong> der geforderten Prüftiefe nicht mehr zu bewältigen.<br />
Bei der Bedatung der Kennfelder <strong>und</strong> Kennl<strong>in</strong>ien wird <strong>in</strong> der Applikation verstärkt<br />
<strong>die</strong> Offl<strong>in</strong>esimulation 5 e<strong>in</strong>gesetzt [3], bei der <strong>die</strong> Optimierung der Kennfelder vorgenommen<br />
wird. Die Applikation an e<strong>in</strong>em HiL Simulationssystem ist <strong>in</strong> E<strong>in</strong>zelfällen auch durchführbar.<br />
Anhand des durchgängigen E<strong>in</strong>satzes der Simulation <strong>in</strong> der Funktions- <strong>und</strong> Softwareentwicklung<br />
wird <strong>die</strong> zunehmende Bedeutung der <strong>Testautomatisierung</strong> <strong>und</strong> der Verfügbarkeit<br />
echtzeitfähiger Simulationsmodelle deutlich.<br />
3 Gew<strong>in</strong>nung echtzeitfähiger Modelle <strong>für</strong> <strong>die</strong> HiL Simulation<br />
Durch <strong>die</strong> Forderung, <strong>die</strong> HiL Simulatoren sollten ca. um den Faktor 10 schneller se<strong>in</strong> als <strong>die</strong><br />
zu testenden Steuergeräte, ergeben sich bei den Taktzeiten moderner Steuergeräte des<br />
Antriebsstrangs von unter 10 ms Simulationsschrittweiten von ca. 500 µs. Die zu implementierenden<br />
Modelle müssen daher so e<strong>in</strong>fach wie möglich <strong>in</strong> ihrer ma<strong>the</strong>matischen Beschreibung<br />
se<strong>in</strong> <strong>und</strong> dennoch das dynamische Verhalten des Fahrzeuges unter E<strong>in</strong>beziehung aller<br />
Steuergrößen abbilden.<br />
In der HiL Simulation werden zu meist komb<strong>in</strong>ierte Modellstrukturen verwendet. E<strong>in</strong>e physikalische<br />
Gr<strong>und</strong>struktur wird durch <strong>die</strong> E<strong>in</strong>b<strong>in</strong>dung phänomenologischer Beschreibungsmodelle<br />
ergänzt. Die Methoden zur Modellierung werden im folgenden anhand der <strong>in</strong> der IAV<br />
GmbH entwickelten Modellbiblio<strong>the</strong>k VeLoDyn zum HiL-Getriebesteuergerätetest verdeutlicht.<br />
E<strong>in</strong> komplettes Modell <strong>für</strong> den Getriebesteuergerätetest enthält neben der re<strong>in</strong>en Längsdynamiksimulation<br />
<strong>in</strong>sbesondere <strong>für</strong> <strong>die</strong> automatisierte Testdurchführung e<strong>in</strong> Fahrermodell,<br />
<strong>die</strong> Berücksichtigung unterschiedlicher Strecken <strong>und</strong> Umweltbed<strong>in</strong>gungen sowie <strong>die</strong> Möglichkeiten,<br />
Fehler (z. B. Getriebefehler) zu simulieren.<br />
Das Simul<strong>in</strong>k ® -Gesamtmodell gliedert sich <strong>in</strong> zwei Teilsysteme, das Subsystem Getriebe-<br />
Steuergeraet <strong>und</strong> das Subsystem Fahrzeug <strong>und</strong> Umgebung (Bild 2). Das Subsystem Getriebe-Steuergeraet<br />
stellt <strong>die</strong> Anb<strong>in</strong>dung des Modells an das Steuergerät her. Es enthält Module,<br />
über <strong>die</strong> Aktuatorenansteuerungen <strong>in</strong>s Modell e<strong>in</strong>gelesen werden können, z. B. Dutycycle<br />
<strong>für</strong> Lastventile. Zudem werden hier <strong>die</strong> Sensorsignale wie z. B. Drehzahlsignale generiert.<br />
Das Subsystem Fahrzeug <strong>und</strong> Umgebung enthält das eigentliche Fahrzeuglängsdynamikmodell<br />
<strong>und</strong> darüber h<strong>in</strong>aus Module, über <strong>die</strong> <strong>die</strong> Fahrere<strong>in</strong>gaben e<strong>in</strong>gespeist werden.<br />
Es untergliedert sich <strong>in</strong> zwei weitere Teilsysteme.<br />
Seite 3
Über das Modul Be<strong>die</strong>nung <strong>und</strong> Umgebung wird das Fahrzeug gesteuert. Es wird hier <strong>die</strong><br />
Automatisierungsschnittstelle zur Verfügung gestellt, über <strong>die</strong> sowohl Pedalwertgeber<br />
(PWG), Bremse, Wahlhebel, Zündung, Anlasserwunsch als auch Umgebungsbed<strong>in</strong>gungen<br />
wie Gegenw<strong>in</strong>d <strong>und</strong> Steigung dem Modell vorgegeben werden. Zudem besteht <strong>die</strong> Möglichkeit,<br />
<strong>die</strong>se Vorgaben über verschiedene Automaten zu deaktivieren. Es können im Fahrzeug<br />
gemessene Profile anhand von PWG-, Brems- <strong>und</strong> Geschw<strong>in</strong>digkeitsvorgaben nachgefahren<br />
werden. Des Weiteren ist e<strong>in</strong> Fahrautomat (Bild 3) <strong>in</strong>tegriert.<br />
Seite 4<br />
In1 Out1<br />
Fahrzeug <strong>und</strong> Umgebung<br />
Out1<br />
Bild 2: Das VeLoDyn Simul<strong>in</strong>k ® -Fahrzeugmodell<br />
In1<br />
Getriebe-Steuergeraet<br />
1<br />
In1<br />
Bus_Input<br />
Bus_Umgebung<br />
Bus_Fahrzeug<br />
Fahrzeug-Laengsdynamik<br />
Bus_Fahrzeug<br />
Bus_Umgebung<br />
Bus_Input<br />
Be<strong>die</strong>nung <strong>und</strong> Umgebung<br />
Dieser generiert aus e<strong>in</strong>er Geschw<strong>in</strong>digkeitsvorgabe e<strong>in</strong>e Anforderung <strong>für</strong> PWG <strong>und</strong> Bremse.<br />
So lässt sich nicht nur e<strong>in</strong> def<strong>in</strong>ierter Fahrzustand herstellen, es können auch verschiedene<br />
Geschw<strong>in</strong>digkeitszyklen, wie z. B. MVEG oder zufällige Geschw<strong>in</strong>digkeitsprofile abgefahren<br />
werden.<br />
Bild 3: VeLoDyn Simul<strong>in</strong>k ® -Modell e<strong>in</strong>es Fahrautomaten<br />
1<br />
Out1
Das Subsystem Fahrzeug-Laengsdynamik (Bild 4) enthält mit dem Motor-, dem Getriebe-<br />
<strong>und</strong> dem Radmodell das Modell des kompletten Antriebstrangs. Ausgehend vom Motor werden<br />
jeweils Momente generiert, <strong>die</strong> von Teilsystem zu Teilsystem weitergereicht werden. Die<br />
Rückkopplung erfolgt über <strong>die</strong> Drehzahlen, <strong>die</strong> vom Rad <strong>in</strong> Richtung Motor übergeben werden.<br />
Auf <strong>die</strong>se Art <strong>und</strong> Weise ergibt sich <strong>die</strong> modulare Struktur des Triebstrangs.<br />
Bild 4: VeLoDyn Simul<strong>in</strong>k ® -Modell der Fahrzeuglängsdynamik<br />
3.1 <strong>Modellbildung</strong> - Motor<br />
Fahrzeug<br />
Für <strong>die</strong> Simulation e<strong>in</strong>es Verbrennungsmotors kann grob zwischen den physikalisch basierten<br />
Ansätzen <strong>und</strong> der phänomenologischen Beschreibung des E<strong>in</strong>gangs-/Ausgangsverhaltens<br />
durch ma<strong>the</strong>matische Modelle auf der Gr<strong>und</strong>lage beobachteter Messungen unterschieden<br />
werden. Bei der physikalischen <strong>Modellbildung</strong> werden noch <strong>die</strong> betrachteten Dimensionen<br />
(drei-, e<strong>in</strong>- <strong>und</strong> nulldimensional) unterschieden. Die Gew<strong>in</strong>nung <strong>und</strong> Parametrierung<br />
der Modelle re<strong>in</strong> aus Konstruktionsdaten haben sich <strong>in</strong> der Vergangenheit als sehr aufwändig<br />
erwiesen. Zum e<strong>in</strong>en s<strong>in</strong>d <strong>die</strong> damit verknüpften Simulationsmodelle meist nicht<br />
echtzeitfähig, zum anderen ist es oft nicht möglich, <strong>in</strong> kürzester Zeit <strong>die</strong> Konstruktionsdaten<br />
zu beschaffen.<br />
• E<strong>in</strong>satz der Statistischen Versuchsplanung<br />
•Neuronale Netze<br />
Bild 5: Komb<strong>in</strong>ierte Modellstruktur<br />
Seite 5
Für <strong>die</strong> HiL Simulation s<strong>in</strong>d auf Gr<strong>und</strong> des sehr hohen Rechenaufwandes <strong>die</strong> drei- <strong>und</strong><br />
e<strong>in</strong>dimensionalen Modelle ungeeignet. Bei den nulldimensionalen Modellen unterteilt man<br />
den Motor <strong>in</strong> Baugruppen (z.B. Zyl<strong>in</strong>der, Abgas-Turb<strong>in</strong>e etc.) <strong>und</strong> bestimmt <strong>die</strong> jeweils<br />
vorherrschenden Zustände [5]. Dieser Ansatz stellt e<strong>in</strong> Kompromiss zwischen<br />
Rechenaufwand <strong>und</strong> Rechengenauigkeit dar. In vielen Fällen werden nulldimensionale<br />
Modelle mit den phänomenologischen Modellen komb<strong>in</strong>iert.<br />
Während zur Beschreibung des Kraftstoffpfades <strong>und</strong> des Luftpfades e<strong>in</strong> nulldimensionales<br />
Modell verwendet wird (Bild 5), wird <strong>die</strong> Momentenerzeugung d.h. der Verbrennungsprozess<br />
durch e<strong>in</strong> phänomenologisches Submodell dargestellt. Für <strong>die</strong>se Modellierung können<br />
verschiedene ma<strong>the</strong>matische Ansätze wie Rasterkennfelder, Neuronale Netze oder auch<br />
Polynome verwendet werden. Durch <strong>die</strong> zunehmende Anzahl steuerbarer Komponenten<br />
e<strong>in</strong>es Motors nimmt zwangsläufig auch der Aufwand zur messtechnischen Modellgew<strong>in</strong>nung<br />
zu. Für <strong>die</strong> Bestimmung der Parameter e<strong>in</strong>es Polynommodells hat sich der E<strong>in</strong>satz der<br />
statistischen Versuchsplanung bewährt. Im Verhältnis zur Rastervermessung s<strong>in</strong>d nur<br />
wenige Messungen durchzuführen.<br />
3.1.1 Statistische Versuchsplanung<br />
Der Begriff „statistische Versuchsplanung” (auch DoE – Design of Experiments) bezeichnet<br />
e<strong>in</strong>e Vielzahl von Verfahren. Allen geme<strong>in</strong>sam ist jedoch das Ziel, e<strong>in</strong>e Aussage über <strong>die</strong><br />
Beziehung zwischen def<strong>in</strong>ierten Ausgangsgrößen <strong>und</strong> deren E<strong>in</strong>flussfaktoren aufgr<strong>und</strong> von<br />
wenigen Versuchen treffen zu können (Bild 6).<br />
Seite 6<br />
E<strong>in</strong>flussgrößen x i<br />
•Drehzahl<br />
• Last<br />
• Zündw<strong>in</strong>kel<br />
• E<strong>in</strong>lassnockenwellenspreizung<br />
• Auslassnockenwellenspreizung<br />
• Lambda<br />
Störgrößen u i<br />
• Umgebungstemperatur<br />
•<br />
y y 1 =<br />
1 = ff1 (x)<br />
1 (x) + e<br />
1 = ff1 (x)<br />
1 (x) + e<br />
1 = ff1 (x)<br />
1 (x) + e e 1 1<br />
y y 2 =<br />
2 = ff2 (x)<br />
2 (x) + e<br />
2 = ff2 (x)<br />
2 (x) + e<br />
2 = ff2 (x)<br />
2 (x) + e e 2 2<br />
y y N =<br />
N = ffN (x)<br />
N (x) + e<br />
N = ffN (x)<br />
N (x) + e<br />
N = ffN (x)<br />
N (x) + e e N<br />
N<br />
Bild 6: Modellansatz <strong>für</strong> <strong>die</strong> statistische Versuchsplanung<br />
Zielgrößen y i<br />
• Moment<br />
• spez. Kraftstoffverbrauch<br />
•HC, NO x –Emissionen<br />
• Abgastemperatur<br />
•Klopfgrenze<br />
•...<br />
Im vorliegenden Beitrag wurde <strong>die</strong> Methode der multiplen Regression <strong>in</strong> Verb<strong>in</strong>dung mit der<br />
Auswahl der optimalen Experimente (d-Optimalität) angewandt. Ausgehend von e<strong>in</strong>em ma<strong>the</strong>matischen<br />
Modell wählt man <strong>die</strong>jenigen Versuche aus, <strong>die</strong> zur Schätzung der Modellparameter<br />
am geeignetsten s<strong>in</strong>d. Im Allgeme<strong>in</strong>en wählt man e<strong>in</strong> Polynommodell, das l<strong>in</strong>ear <strong>in</strong><br />
den Parametern ist (Beispiel: Polynom 2. Ordnung mit zwei E<strong>in</strong>gangsgrößen)
2<br />
2<br />
y = a + a ⋅ x + a ⋅ x + a ⋅ x ⋅ x + a ⋅ x + a ⋅ x + ε = Xa+<br />
ε<br />
0<br />
1<br />
1<br />
2<br />
2<br />
12<br />
Konstante Haupteffekte Wechselwirkung quad. Effekte Fehler<br />
<strong>und</strong> schätzt dessen Parameter<br />
1<br />
2<br />
11<br />
T −1<br />
T<br />
aˆ<br />
= ( X X)<br />
X y<br />
(2)<br />
mit Hilfe der Methode der kle<strong>in</strong>sten Fehlerquadrate. Die d-Optimale Versuchsplanung maximiert<br />
dabei <strong>die</strong> Determ<strong>in</strong>ante der Fischer<strong>in</strong>formationsmatrix (X T ·X) -1 .<br />
Anschließend werden statistische Tests über <strong>die</strong> Signifikanz der e<strong>in</strong>zelnen Parameter durchgeführt.<br />
Nichtsignifikante Terme werden elim<strong>in</strong>iert. E<strong>in</strong>e Analyse der Residuen (Differenz<br />
zwischen Modellvorhersage <strong>und</strong> Messwert) gibt Aufschluss über <strong>die</strong> Qualität des Modells<br />
<strong>und</strong> <strong>die</strong> Vorhersagegenauigkeit. Danach erfolgt e<strong>in</strong>e Vali<strong>die</strong>rung des Modells: Messungen,<br />
<strong>die</strong> nicht zur Modellierung verwendet wurden, werden mit den Modellprädiktionen verglichen.<br />
Liegen <strong>die</strong> Messwerte <strong>in</strong>nerhalb des Vertrauensbereiches der Modellvorhersage, so kann<br />
das Modell angenommen werden. Ist das nicht der Fall, so liegt entweder e<strong>in</strong> Fehler bei der<br />
Modellierung vor (z.B. s<strong>in</strong>d signifikante E<strong>in</strong>flüsse nicht berücksichtigt) oder <strong>die</strong> Messwerte<br />
s<strong>in</strong>d fehlerhaft. Die Qualität des entstandenen Modells wird mit verschiedenen statistischen<br />
Testfunktionen wie z.B. dem Bestimm<strong>the</strong>itsmaß R 2 oder dem Effektivwert der Residuen<br />
überprüft.<br />
3.1.2 Umsetzung der Modelle <strong>für</strong> <strong>die</strong> Anwendung <strong>in</strong> der HiL Simulation<br />
Die empirische Beschreibung der Abhängigkeit der Zielgröße y von den E<strong>in</strong>flussgrößen ui<br />
(siehe Bild 6) erfolgt durch quasil<strong>in</strong>eare Polynome (Gleichung 1). Hierdurch lassen sich<br />
Nichtl<strong>in</strong>earitäten <strong>und</strong> Wechselwirkungen der E<strong>in</strong>flussgrößen darstellen. Die <strong>in</strong> der Technik<br />
häufig vorkommenden l<strong>in</strong>earen, quadratischen <strong>und</strong> kubischen Effekte werden mit Hilfe <strong>die</strong>ses<br />
Polynomansatzes sehr gut wiedergegeben. Die Umsetzung e<strong>in</strong>es Motormodells <strong>in</strong> e<strong>in</strong> <strong>für</strong><br />
<strong>die</strong> HiL Simulation geeignetes echtzeitfähiges Programm soll anhand e<strong>in</strong>es Beispiels dargestellt<br />
werden. Dieses Beispiel beschreibt <strong>die</strong> Modellierung des effektiven Moments MD e<strong>in</strong>es<br />
Ottomotors.<br />
Für <strong>die</strong> Modellierung des effektiven Motormoments <strong>in</strong> Abhängigkeit des Lastsignals (relative<br />
Füllung rl), der Drehzahl n <strong>und</strong> des Zündw<strong>in</strong>kels ZW ist <strong>für</strong> den Drehzahlbereich 720 m<strong>in</strong> -1 ≤<br />
n ≤ 4200 m<strong>in</strong> -1 e<strong>in</strong> Polynom 3. Ordnung mit Wechselwirkungen notwendig (Gleichung 3):<br />
M D<br />
=<br />
a<br />
0<br />
a ⋅n<br />
+ a ⋅ rl + a ⋅ ZW +<br />
a<br />
a<br />
a<br />
a<br />
a<br />
1<br />
11<br />
12<br />
123<br />
112<br />
111<br />
+<br />
2<br />
2<br />
2<br />
⋅n<br />
+ a ⋅rl<br />
+ a ⋅ ZW<br />
22<br />
⋅n<br />
⋅rl<br />
+ a<br />
3<br />
13<br />
2<br />
⋅n<br />
⋅rl<br />
+ a<br />
113<br />
3<br />
3<br />
⋅n<br />
+ a ⋅ ZW<br />
233<br />
<strong>für</strong> 720 m<strong>in</strong><br />
−1<br />
≤ n ≤ 4200 m<strong>in</strong><br />
−1<br />
3<br />
⋅n<br />
⋅rl<br />
⋅ ZW +<br />
33<br />
⋅n<br />
⋅ ZW + a<br />
23<br />
2<br />
+<br />
2<br />
⋅n<br />
⋅ ZW + a<br />
⋅rl<br />
⋅ ZW +<br />
⋅rl<br />
⋅ ZW<br />
2<br />
+ a<br />
223<br />
1<br />
2<br />
⋅rl<br />
⋅ ZW +<br />
22<br />
2<br />
(1)<br />
(3)<br />
Seite 7
Für <strong>die</strong> Bestimmung der Modellparameter waren 45 Messungen notwendig, wovon 5 Messungen<br />
zur Vali<strong>die</strong>rung verwendet wurden. Diese Modellgleichung gilt nur <strong>für</strong> den vorliegenden<br />
Motor <strong>in</strong> den def<strong>in</strong>ierten Grenzen. Im Allgeme<strong>in</strong>en muss jedoch <strong>für</strong> den Zündw<strong>in</strong>kele<strong>in</strong>fluss<br />
e<strong>in</strong>e fünfte Ordnung angesetzt werden.<br />
Nach der Bestimmung der Polynomkoeffizienten muss <strong>für</strong> den E<strong>in</strong>satz <strong>in</strong> der HiL Simulation<br />
aus <strong>die</strong>ser ma<strong>the</strong>matischen Beschreibung e<strong>in</strong> ausführbares Programm generiert werden.<br />
Hier<strong>für</strong> geeignet s<strong>in</strong>d <strong>die</strong> grafisch orientierten Simulationsprogramme wie z.B. ASCET-SD<br />
oder auch Simul<strong>in</strong>k ® . Das Bild 7 zeigt <strong>die</strong> Umsetzung des Modells zur Berechnung des<br />
effektiven Motormoments <strong>in</strong> Simul<strong>in</strong>k ® .<br />
Seite 8<br />
1<br />
n [1/m<strong>in</strong>]<br />
2<br />
rl [mg/AsZyl]<br />
3<br />
ZW [Grad KW]<br />
-1 ..1<br />
Normierung Drehzahl<br />
-1 ..1<br />
Normierung Last<br />
-1 ..1<br />
Normierung ZW<br />
Polynom effektives Motormoment<br />
720 1/m<strong>in</strong> < N < 4200 1/m<strong>in</strong><br />
M D<br />
f(u)<br />
Enable<br />
1<br />
effektives Motormoment<br />
= a + a ⋅n<br />
+ a ⋅ rl + a ⋅ ZW + ... ( Gleichung 3)<br />
Bild 7: Simul<strong>in</strong>k ® -Modell <strong>für</strong> <strong>die</strong> Bestimmung des effektiven Motormoments – Teilmodell <strong>für</strong> den<br />
Drehzahlbereich 720 m<strong>in</strong> -1 ≤ n ≤ 4200 m<strong>in</strong> -1<br />
0<br />
Die Nichtl<strong>in</strong>earitäten e<strong>in</strong>es Motors lassen sich jedoch häufig nicht vollständig durch e<strong>in</strong> Polynom<br />
wiedergeben, so dass <strong>in</strong> Abhängigkeit z.B. der Drehzahl verschiedene Polynome zur<br />
Modellierung notwendig s<strong>in</strong>d. Auch <strong>in</strong> dem hier diskutierten Beispiel wurden <strong>für</strong> <strong>die</strong> Drehzahlbereiche<br />
720 m<strong>in</strong> -1 ≤ n ≤ 4200 m<strong>in</strong> -1 <strong>und</strong> 4100 m<strong>in</strong> -1 ≤ n ≤ 6000 m<strong>in</strong> -1 jeweils e<strong>in</strong> Polynom<br />
bestimmt. Die Modellgrenzen werden derart gewählt, dass es zu e<strong>in</strong>er Überschneidung der<br />
Gültigkeitsbereiche kommt (Bild 8). Da an den Modellgrenzen <strong>die</strong> Momente nicht zw<strong>in</strong>gend<br />
den selben Wert annehmen, wird <strong>in</strong> dem Überschneidungs<strong>in</strong>tervall zur Vermeidung von Unstetigkeiten<br />
e<strong>in</strong>e Filterung beider Modellausgangswerte zu e<strong>in</strong>em Wert vorgenommen.<br />
2<br />
rl [mg/AsZyl]<br />
1<br />
n [1/m<strong>in</strong>]<br />
Modellauswahl<br />
3<br />
ZW<br />
Modell 1 [0/1]<br />
n [1/m<strong>in</strong>]<br />
Modell 2 [0/1]<br />
Modellgueltigkeit<br />
n [1/m<strong>in</strong>]<br />
rl [mg/AsZyl]<br />
ZW [Grad KW]<br />
1<br />
effektives Motormoment Bereich 1<br />
720 1/m<strong>in</strong>
3.2 <strong>Modellbildung</strong> – Stufenautomaten<br />
Um <strong>die</strong> dynamischen Vorgänge im Planetengetriebe während des Gangwechsels ausreichend<br />
wiederzugeben, müssen <strong>die</strong> e<strong>in</strong>zelnen Trägheiten der Zahnräder <strong>und</strong> <strong>die</strong> Verdreh-<br />
<strong>und</strong> Biegesteifigkeiten berücksichtigt werden. Die Abbremsung <strong>und</strong> Beschleunigung von<br />
Zahnräderkomb<strong>in</strong>ationen verläuft bei jeder Schaltung unterschiedlich, so dass der Vere<strong>in</strong>fachung<br />
des Systems Grenzen gesetzt s<strong>in</strong>d. E<strong>in</strong>e ausreichend genaue Simulation setzt das<br />
mechanische Ersatzmodell (Bild 9) voraus.<br />
M Motor<br />
J Motor +J Pumpe<br />
J Turb<strong>in</strong>e +J WK<br />
J Getriebee<strong>in</strong>g.welle<br />
J Kupp<br />
J Kupp<br />
J Kupp<br />
J Kupp / 2<br />
C<br />
B<br />
A<br />
E<br />
J / 2 Kupp<br />
D<br />
J kle<strong>in</strong>eSonne<br />
Bild 9: Mechanisches Ersatzmodell <strong>für</strong> e<strong>in</strong>en Stufenautomaten<br />
Das Verhalten von Wellen <strong>und</strong> Zahnräder wird durch ihre Massenträgheiten <strong>und</strong> Dämpfungseigenschaften<br />
bzw. Steifigkeiten gegenüber Verdrehbeanspruchungen beschrieben.<br />
H<strong>in</strong>zu kommen der Wandler sowie <strong>die</strong> Bremsen <strong>und</strong> Kupplungen.<br />
Bei der Modellierung wurde e<strong>in</strong>e modulare Struktur gewählt, bei der das Gesamtmodell aus<br />
den Modulen Kupplung, Torsionswelle, Wandler, <strong>und</strong> Massenträgheiten zusammengesetzt<br />
werden kann. Durch <strong>die</strong>se modulare Struktur ist <strong>die</strong> Modellierung verschiedener Getriebe<br />
<strong>und</strong> Getriebearten (CVT, automatisierte Handschaltgetriebe <strong>und</strong> Stufenautomaten) leicht<br />
möglich.<br />
Kupplung Torsionswelle Rad<br />
Modul A Torsionskoppl. Modul B<br />
M Aa<br />
M Ae<br />
ω Aa<br />
ω Ae<br />
ω e<br />
ω a<br />
J Steg<br />
Torsionselastische Kopplung der Module<br />
JPlanet1<br />
M T<br />
M T<br />
J großeSonne<br />
J Planet2<br />
M Ba<br />
M Be<br />
J Hohlrad<br />
Modul A Torsionskopplung<br />
Modul B<br />
Bild 10: Modularisierung des mechanischen Ersatzmodells<br />
Für jedes Modul wurden Simul<strong>in</strong>k ® -Modelle erstellt, <strong>die</strong> entsprechend der Getriebestruktur<br />
mite<strong>in</strong>ander komb<strong>in</strong>iert werden. Zur Steuerung der Kupplungen <strong>und</strong> Bremsen sowie des Ab-<br />
G<br />
J Kupp<br />
J Kupp / 2<br />
F<br />
J HohlradN S<br />
ω Ba<br />
ω Be<br />
J SonneNS<br />
J StegNS<br />
J PlanetNS<br />
M Fahrzeug<br />
Seite 9
laufes werden Zustandsautomaten e<strong>in</strong>gesetzt, <strong>die</strong> mit Hilfe des Werkzeuges Stateflow ® unter<br />
Simul<strong>in</strong>k ® e<strong>in</strong>geb<strong>und</strong>en werden können.<br />
4 Automatisierter Testprozess<br />
Die HiL Simulation zum Steuergerätetest muss wie <strong>die</strong> eigentliche Softwareentwicklung <strong>in</strong><br />
e<strong>in</strong>em def<strong>in</strong>ierten Prozess erfolgen. Zw<strong>in</strong>gend notwendig ist <strong>die</strong> Integration des Testprozesses<br />
<strong>in</strong> den Entwicklungsprozess (Bild 1). Damit <strong>in</strong> den Phasen Modultest, Integrationstest,<br />
Funktionstest <strong>und</strong> Systemtest <strong>die</strong> HiL Simulation e<strong>in</strong>setzbar ist, ist am Anfang e<strong>in</strong>es<br />
Projektes auch das Simulationssystem zu entwickeln.<br />
Durch <strong>die</strong> stark gestiegenen Qualitätsanforderungen <strong>und</strong> durch <strong>die</strong> hohe Komplexität der<br />
Steuergeräte s<strong>in</strong>d <strong>in</strong> den letzten Jahren <strong>die</strong> Testumfänge im Verhältnis zu den Softwareumfängen<br />
überproportional angestiegen [4]. Zur Beherrschung des Aufwandes muss unter Berücksichtigung<br />
der Kosten der Testprozess optimiert werden. E<strong>in</strong>e Qualitätssteigerung <strong>und</strong><br />
e<strong>in</strong>e Reduzierung des Aufwands lässt sich <strong>in</strong>sbesondere durch <strong>die</strong> Automatisierung des<br />
Testprozesses erreichen. Als Vorteile s<strong>in</strong>d<br />
Seite 10<br />
• M<strong>in</strong>imierung des Testaufwandes (Light Switch Off Tests),<br />
• Reproduzierbarkeit der Testergebnisse,<br />
• e<strong>in</strong>heitliche, automatische Testdokumentation,<br />
• M<strong>in</strong>imierung der Fehler bei der Testdurchführung � Erhöhung der Zuverlässigkeit,<br />
• Wiederverwendbarkeit der Tests oder von Teilen des Tests<br />
zu nennen.<br />
In dem Maße, <strong>in</strong> dem <strong>die</strong> Steuergeräte <strong>und</strong> Steuergerätenetze komplexer werden, gew<strong>in</strong>nen<br />
auch <strong>die</strong> HiL Simulationssysteme an Komplexität. Es müssen oft mehrere Hard- <strong>und</strong> Softwarekomponenten<br />
(Simulationshardware, Messgeräte, Applikationstools, Simulationsmodelle,<br />
Auswertetools etc.) mite<strong>in</strong>ander verb<strong>und</strong>en/vernetzt werden. Darüber h<strong>in</strong>aus müssen<br />
<strong>die</strong> <strong>für</strong> den Entwurf der Testsysteme notwendigen Informationen <strong>und</strong> <strong>die</strong> Testergebnisse<br />
<strong>in</strong> Datenbanksystemen verwaltet werden. Für den zielgerichteten Entwurf e<strong>in</strong>es HiL Tests <strong>in</strong><br />
allen Phasen bietet sich <strong>die</strong> Unified Model<strong>in</strong>g Language (UML) an. Der E<strong>in</strong>satz der UML<br />
• erzw<strong>in</strong>gt <strong>die</strong> Analyse des Testbedarfs<br />
• ermöglicht <strong>die</strong> Erfassung der Komplexität e<strong>in</strong>es Testsystems<br />
• ermöglicht <strong>die</strong> plattformunabhängige Beschreibung der Tests <strong>und</strong> des Testplatzes<br />
• liefert <strong>die</strong> Dokumentation zum Testplatz <strong>und</strong><br />
• erhöht <strong>die</strong> Wiederverwendbarkeit<br />
<strong>in</strong> e<strong>in</strong>er standardisierten Notation, <strong>die</strong> von Programmierern, Test<strong>in</strong>genieuren, Funktionsentwicklern,<br />
Applikateuren <strong>und</strong> Testplatzentwicklern verstanden wird.<br />
Der zu automatisierende Prozess gliedert sich <strong>in</strong> <strong>die</strong> Schritte Testspezifikation, Implementierung,<br />
Testdurchführung, Auswertung <strong>und</strong> Dokumentation (Bild 11). In dem folgenden Abschnitt<br />
wird auf <strong>die</strong> Spezifikation der e<strong>in</strong>zelnen Prozessschritte mittels der UML e<strong>in</strong>gegangen,<br />
um anschließend <strong>die</strong> Möglichkeiten der Automatisierung aufzuzeigen.
Spezifikation Implementierung Durchführung Auswertung Dokumentation<br />
Bild 11: Testprozess <strong>für</strong> <strong>die</strong> <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation<br />
Testspezifikation<br />
Die Phase der Testspezifikation stellt <strong>die</strong> Analysephase e<strong>in</strong>er objektorientierten Modellierung<br />
dar. Das dargestellte Vorgehen ist an den <strong>in</strong> [5] beschriebenen Vorgehensleitfaden angelehnt.<br />
An erster Stelle steht <strong>die</strong> Formulierung der Zielsetzung. Nach der Klärung der Ziele<br />
werden <strong>die</strong> Personen identifiziert <strong>die</strong> Anforderungen <strong>und</strong> Erwartungen an den hier als Ziel<br />
betrachteten automatisierten Testablauf e<strong>in</strong>es elektronischen Steuergerätes stellen könnten.<br />
Zu <strong>die</strong>ser Gruppe gehören z. B. <strong>die</strong> Personen, <strong>die</strong> den Test bisher von Hand durchgeführt<br />
haben oder <strong>die</strong> Entwickler der zu testenden Funktionalität. Ergänzend werden <strong>die</strong><br />
Funktionsspezifikationen herangezogen.<br />
Nachdem alle beteiligten Personen bekannt s<strong>in</strong>d, werden <strong>die</strong> Geschäftsprozesse ermittelt,<br />
<strong>die</strong> durch das automatisierte Testsystem unterstützt werden sollen <strong>und</strong> <strong>die</strong> beteiligten<br />
Akteure. E<strong>in</strong> Geschäftsprozess ist <strong>die</strong> Zusammenfassung von fachlich zusammenhängenden<br />
Aktivitäten, <strong>die</strong> gewöhnlich <strong>in</strong> e<strong>in</strong>er zeitlichen <strong>und</strong> logischen Abhängigkeit stehen <strong>und</strong><br />
notwendig s<strong>in</strong>d, um e<strong>in</strong>en konkreten Geschäftsvorfall (z. B. e<strong>in</strong>en OBDII-Test)<br />
durchzuführen. Bild 12 zeigt <strong>die</strong> Darstellung der wichtigsten Akteure <strong>und</strong> Geschäftsprozesse<br />
des zu realisierenden automatisierten Testsystems <strong>in</strong> e<strong>in</strong>em Anwendungsfalldiagramm der<br />
UML.<br />
Die gef<strong>und</strong>enen Geschäftsprozesse Test durchführen, Test auswerten, Test dokumentieren<br />
werden nun durch e<strong>in</strong>fache Aktivitätsdiagramme der UML näher beschrieben. Dabei wird <strong>die</strong><br />
Darstellung auf <strong>die</strong> wesentlichen Aktivitäten des Geschäftsprozesses beschränkt <strong>und</strong> noch<br />
ke<strong>in</strong>e Aussage darüber getroffen, wie e<strong>in</strong>e Aktivität durchgeführt wird. Die e<strong>in</strong>zelnen Aktivitäten<br />
des Geschäftprozesses s<strong>in</strong>d wieder Anwendungsfälle, <strong>die</strong> noch detaillierter untersucht<br />
werden.<br />
Die Abläufe der Geschäftsanwendungsfälle werden nun textuell <strong>in</strong> Szenarien beschrieben.<br />
E<strong>in</strong> Geschäftsanwendungsfall beschreibt e<strong>in</strong>e oder mehrere Anforderungen zumeist e<strong>in</strong>es<br />
Akteurs an das automatisierte Testsystem. Aus der abstrakten Beschreibung werden Auslöser,<br />
Vorbed<strong>in</strong>gungen <strong>und</strong> e<strong>in</strong>gehende Informationen sowie Ergebnisse, Nachbed<strong>in</strong>gungen<br />
<strong>und</strong> ausgehende Informationen der Anwendungsfälle bestimmt. Das Ergebnis sollte e<strong>in</strong>e<br />
Tabelle mit dem folgenden Inhalt se<strong>in</strong>: Der Name, e<strong>in</strong>e Kurzbeschreibung, <strong>die</strong> Akteure, <strong>die</strong><br />
Auslöser <strong>und</strong> <strong>die</strong> Ergebnisse des Geschäftsanwendungsfalles. Anschließend s<strong>in</strong>d auszuschließende<br />
Geschäftanwendungsfälle zu ermitteln, <strong>die</strong> nicht durch das automatisierte Testsystem<br />
unterstützt werden können.<br />
Seite 11
Anwendungsfalldiagramm<br />
Test<strong>in</strong>genie ur<br />
Seite 12<br />
Test Test durchführen<br />
durchführen<br />
Test auswerten<br />
Test dokumentieren<br />
Steuergerät<br />
HIL-Simulator<br />
Mess mittel<br />
Auswerte-Software<br />
Applikations-Software<br />
Diagnose-Software<br />
Dokumentati ons-Software<br />
Anwendungsfallbeschreibung<br />
«Schni ttstelle »<br />
ASAM-MC D 1MC<br />
Electr onic ControlUnit<br />
CalibrationSoftware ReportSoftware EvaluationSoftware DiagnosticSoftwar e<br />
«Schni ttstelle »<br />
ASAM-MC D 3MC<br />
1. Test durchführen<br />
Das Experiment w ird gestartet, das Simulationsmodell<br />
geladen <strong>und</strong> das Fahrzeug <strong>in</strong> den Betriebspunkt<br />
gebracht. Anschließend .....<br />
2. Testauswerten<br />
Die Testergebnisse werden zusammengestellt.<br />
Anschließend wird der Test ausgewertet, <strong>in</strong> dem ....<br />
3. Test dokumentieren<br />
Die Testreportdaten werden zusammengestellt.<br />
Anschließend wird der Testreport erstellt <strong>und</strong> ....<br />
«Schni ttstelle »<br />
Graphica lU serInterfac eAcces s<br />
«Schni ttstelle »<br />
CAN<br />
«Schni ttstelle »<br />
ActiveX<br />
AutomationSystem<br />
«Schni ttstelle »<br />
KWP2000<br />
«Schni ttstelle »<br />
DLL<br />
GraphicalUserInterface «Schni ttstelle »<br />
«Schni ttstelle »<br />
«Schni ttstelle »<br />
«Schni ttstelle »<br />
Rea lTimeProces sor Acces s R elais BoxAcces s Powe rSupplyU nitAcces s Data Captur eAccess<br />
«Schni ttstelle »<br />
Re alTimeSignalSeque nc eStim ulation<br />
Bild 12: Spezifikation der Tests unter UML<br />
Geschäftsklassendiagramm<br />
RealTimeProce ssor<br />
<strong>Hardware</strong>InTheLoopSimulator<br />
«Schni ttstelle »<br />
ISO914 1<br />
RelayBox PowerSupplyUnit<br />
Measur<strong>in</strong>gEquipment<br />
«Schni ttstelle »<br />
Meas ur<strong>in</strong> gEq ui pmen tAcces s<br />
Aktivitätsdiagramm<br />
Experiment starten<br />
Simulationsmodell laden<br />
Fahrzeug <strong>in</strong> Betriebspunkt br<strong>in</strong>gen<br />
Testablauf durchführen Datenerfassung durchführen<br />
Fahrzeug abstellen<br />
Nachdem alle Anwendungsfälle beschrieben s<strong>in</strong>d, werden <strong>die</strong> Geschäftsklassen identifiziert<br />
<strong>und</strong> <strong>in</strong> dem Klassendiagramm der UML dargestellt. Bei den Geschäftsklassen handelt es<br />
sich um <strong>die</strong> wichtigsten Klassen des zu erstellenden automatisierten Testsystems. Es handelt<br />
sich dabei z. B. um Gegenstände, Software oder Personen aus dem realen Umfeld. Die<br />
Geschäftsklassen werden während der Designphase weiter zerlegt <strong>und</strong> führen zu den Fachklassen.<br />
Im Klassenmodell werden auch <strong>die</strong> Schnittstellen der e<strong>in</strong>zelnen Klassen beschrieben.<br />
Am Ende der Analysephase steht <strong>die</strong> Komponentenbildung mit der Unterscheidung der gef<strong>und</strong>enen<br />
Komponenten <strong>in</strong> bereits existierende <strong>und</strong> noch zu erstellende. Die <strong>in</strong> Bild 12 (Klassendiagramm)<br />
dargestellten Klassen entsprechen weitgehend den im späteren Verlauf der<br />
Entwicklung des Testsystems verwendeten Komponenten.<br />
An <strong>die</strong> Analysephase schließt sich nun <strong>die</strong> Designphase an. In der Designphase werden <strong>die</strong><br />
Fachklassen <strong>und</strong> ihre Beziehungen identifiziert, <strong>die</strong> Operationen <strong>und</strong> Attribute der Klassen<br />
spezifiziert, <strong>die</strong> Objektzustände <strong>und</strong> Objekt<strong>in</strong>teraktionen sowie <strong>die</strong> Anb<strong>in</strong>dung e<strong>in</strong>er Datenbank<br />
z. B. zur Speicherung von persistenten Objekten modelliert.<br />
Den Abschluss der Designphase bildet <strong>die</strong> automatische Codegenerierung, <strong>die</strong> bei Verwendung<br />
e<strong>in</strong>es UML-Entwicklungswerkzeuges <strong>für</strong> viele Programmier- <strong>und</strong> Skriptsprachen auch<br />
<strong>für</strong> <strong>die</strong> hier verwendete Skriptsprache Python heute zur Verfügung steht.
5 Anwendungsbeispiel – HiL Simulator zum Test von Steuergeräten <strong>für</strong> Stufenautomaten<br />
Bild 13 zeigt das <strong>in</strong> der IAV GmbH betriebene automatisierte Testsystem zum Test von<br />
Getriebesteuergeräten. Im Zentrum steht das Automatisierungssystem mit den Schnittstellen<br />
zu den Komponenten Applikationssoftware (z. B. ETAS IncaPC), Diagnosesoftware (z. B.<br />
Soft<strong>in</strong>g DTS), Auswertesoftware (z. B. Mathworks Matlab ® ), Reportsoftware (z. B. Microsoft ®<br />
Office, HTML) <strong>und</strong> Be<strong>die</strong>noberfläche (z. B. dSPACE ControlDesk).<br />
Bild 13: Anwendung: <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation zum Test von Getriebesteuergeräten<br />
Der Zugriff auf <strong>die</strong> Applikationssoftware ermöglicht zusätzlich zur Datenerfassung<br />
steuergeräte<strong>in</strong>terner Daten auch den automatisierten Wechsel der Steuergerätesoftware. E<strong>in</strong><br />
Vergleich verschiedener Softwarestände ist damit automatisiert durchführbar. Darüber<br />
h<strong>in</strong>aus stehen Schnittstellen zu der Komponente <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop-Simulator (z. B.<br />
dSPACE ® MidSize-Simulator) zum Zugriff auf <strong>die</strong> Echtzeitvariablen, <strong>die</strong> Relaiskarte zur<br />
Fehlersimulation <strong>und</strong> dem Netzteil zu Simulation von Spannungse<strong>in</strong>brüchen zur Verfügung.<br />
Durch <strong>die</strong> <strong>in</strong> der IAV GmbH unternommenen Anstrengungen zur Erstellung e<strong>in</strong>es durchgängig<br />
mit der Notation der UML beschriebenen automatisierten Testsystems, ist es nun<br />
möglich, <strong>die</strong> <strong>in</strong> Bild 12 als Testablauf durchführen beschriebene Aktivität <strong>für</strong> neue Tests mit<br />
Hilfe der UML zu beschreiben, bestehende Tests anzupassen, zu erweitern <strong>und</strong> unter Verwendung<br />
e<strong>in</strong>es geeigneten Entwicklungswerkzeuges den Softwarecode automatisch zu generieren.<br />
Automatisierte Tests <strong>für</strong> Getriebesteuergeräte<br />
Mit dem spezifizierten System werden HiL Tests von<br />
• CAN-Bus-Fehlern<br />
• E<strong>in</strong>brüchen der Bordspannung<br />
• OBDII-Überprüfungen<br />
• mechanische Fehler<br />
• Leistungsfehlern<br />
durchgeführt. Exemplarisch wird anhand des Leitungsfehlertests der Ablauf beschrieben.<br />
Seite 13
Leitungsfehlertest<br />
Die Funktionsfähigkeit der Aktuatoren <strong>und</strong> Sensoren werden <strong>in</strong> elektronischen Steuergeräten<br />
ständig überwacht. Es müssen durch <strong>die</strong> Steuergerätediagnosen <strong>in</strong>sbesondere Kurzschlüsse<br />
<strong>und</strong> offene Leitungen erkannt werden. Im so genannten Leitungsfehlertest werden mittels der<br />
im Simulator <strong>in</strong>tegrierten Relaisbox Kurzschlüsse gegen Masse <strong>und</strong> gegen <strong>die</strong> Versorgungsspannung<br />
sowie offene Leitungen simuliert. E<strong>in</strong> typischer automatisierter Testverlauf stellt<br />
sich wie folgt dar: Das Fahrzeug wird über <strong>die</strong> Zündung gestartet. Bei e<strong>in</strong>em def<strong>in</strong>ierten Zustand<br />
wird der Fehler ausgelöst <strong>und</strong> <strong>die</strong> Reaktion des Steuergerätes bzw. des Fahrzeuges<br />
aufgezeichnet. Das Getriebesteuergerät sollte den Fehler erkennen, e<strong>in</strong>en Fehlerspeichere<strong>in</strong>trag<br />
durchführen <strong>und</strong> e<strong>in</strong>e Ersatzreaktion auslösen. Diese Ersatzreaktion <strong>und</strong> der automatisch<br />
ausgelesene Fehlerspeichere<strong>in</strong>trag wird mit der Sollvorgabe im Fehlerlastenheft<br />
verglichen. Der Fehlere<strong>in</strong>trag wird gelöscht <strong>und</strong> abschließend das Fahrzeug abgestellt. Das<br />
Ergebnis wird <strong>in</strong> e<strong>in</strong>em Testreport zusammengefasst <strong>und</strong> mit n.i.O. oder i.O. bewertet.<br />
Bild 14: Leitungsfehlertest, Kabelbruch Shiftventil.<br />
Seite 14<br />
1<br />
2<br />
3<br />
n G<br />
Konfiguration Relaisbox<br />
n Mot<br />
Fahrzeugverhalten<br />
Fehlerspeicher<br />
009 Shiftventil – Unterbrechung/Kurzschluss nach Plus<br />
L<strong>in</strong>k to tester closed<br />
Plot 1: Fehlerflag.<br />
Plot 2: Motordrehzahl nMot, Getriebee<strong>in</strong>gangsdrehzahl nG <strong>und</strong> Wandlerkupplung.<br />
Plot 3: Fahrgeschw<strong>in</strong>digkeit <strong>und</strong> Fahrgang.<br />
Bei e<strong>in</strong>er Volllastbeschleunigung e<strong>in</strong>es Fahrzeuges mit Automatikgetriebe wird im dritten<br />
Gang e<strong>in</strong> Shiftventil vom Getriebesteuergerät getrennt (siehe Bild 14, Plot 1). Das Steuergerät<br />
erkennt den Fehler, öffnet <strong>die</strong> Wandlerkupplung (siehe Bild 14, Plot 2) <strong>und</strong> schaltet <strong>in</strong><br />
den Notlauf, d. h. alle Ventile werden stromlos geschaltet. Damit wird automatisch der vierte<br />
Gang (Bild 14, Plot 3) e<strong>in</strong>gelegt, <strong>und</strong> es kann <strong>in</strong> <strong>die</strong>sem Gang weiter gefahren werden.<br />
Geht man davon aus, dass <strong>für</strong> <strong>die</strong> Freigabe e<strong>in</strong>es Softwarestandes sämtliche relevante P<strong>in</strong>s<br />
e<strong>in</strong>es Steuergerätes mit den Fehlerfällen „Kurschluss gegen Masse“, „Kurzschluss gegen <strong>die</strong><br />
Versorgungsspannung“ sowie „offene Leitung“ geprüft werden, wird der Vorteil der Automatisierung<br />
deutlich. Die Prüfzeiten konnten gegenüber e<strong>in</strong>en Simulator ohne Automatisierung<br />
um ungefähr den Faktor 10 reduziert werden.
6 Zusammenfassung <strong>und</strong> Ausblick<br />
Die HiL Simulation zum Steuergerätetest ist zu e<strong>in</strong>em festen Bestandteil des Softwareentwicklungsprozesses<br />
<strong>in</strong> der Automobilelektronik geworden. E<strong>in</strong> Mittel zur Optimierung des<br />
Testprozesses bezüglich der Prüftiefe <strong>und</strong> des Aufwandes stellt der automatisierte Test <strong>in</strong><br />
der <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation dar. Die Prüftiefe der Tests hängt dabei stark von dem<br />
Detaillierungsgrad <strong>und</strong> der Verfügbarkeit der echtzeitfähigen Simulationsmodelle ab. Die<br />
<strong>Modellbildung</strong> <strong>und</strong> <strong>Testautomatisierung</strong> s<strong>in</strong>d der Schlüssel zum erfolgreichen <strong>und</strong> effizienten<br />
E<strong>in</strong>satz der HiL Simulation.<br />
Die statistische Versuchsplanung ist zur Gew<strong>in</strong>nung echtzeitfähiger Motormodelle <strong>für</strong> den<br />
E<strong>in</strong>satz <strong>in</strong> der HiL Simulation geeignet. Die mit der statistischen Versuchsplanung<br />
gewonnenen Polynommodelle lassen sich direkt <strong>in</strong> <strong>die</strong> <strong>für</strong> <strong>die</strong> Echtzeitsimulation geeignete<br />
Programmiersprache Simul<strong>in</strong>k ® umsetzen.<br />
Für <strong>die</strong> Modellierung von Getrieben hat sich e<strong>in</strong>e Modularisierung <strong>in</strong> <strong>die</strong> Komponenten<br />
Kupplung, Bremse, Torsionswelle <strong>und</strong> Rad bewährt. Mit Hilfe <strong>die</strong>ser Modularisierung können<br />
alle gängigen Getriebearten CVT, Stufenautomaten, automatisierte Schaltgetriebe <strong>für</strong> <strong>die</strong><br />
Echtzeitanwendung dargestellt werden.<br />
Zur Beherrschung des Testaufwandes wurde e<strong>in</strong> durchgängiger, automatisierter Testprozess<br />
<strong>für</strong> <strong>die</strong> HiL Simulation dargestellt. Durch den E<strong>in</strong>satz der Unified Model<strong>in</strong>g Language können<br />
<strong>die</strong> Tests unabhängig von der Simulationsplattform analysiert <strong>und</strong> entworfen werden.<br />
Anhand des Beispiels der HiL Simulation zum Test e<strong>in</strong>er Getriebesteuerung <strong>für</strong><br />
Stufenautomaten s<strong>in</strong>d <strong>die</strong> Möglichkeiten des automatisierten Tests dargestellt worden.<br />
Die vorgestellte Vorgehensweise zur Analyse <strong>und</strong> zum Entwurf des Testsystems mit Hilfe<br />
der UML sollte zukünftig auch auf MiL <strong>und</strong> SiL Simulationen übertragen werden. Das<br />
vorgestellte HiL System ist um e<strong>in</strong>e automatische Codegenerierung aus der<br />
Beschreibungssprache UML heraus zu erweitern.<br />
7 Literatur<br />
[1] Gühmann, C.; Riese, J.: <strong>Testautomatisierung</strong> <strong>in</strong> der <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation.<br />
VDI/VDE Symposium Steuerung <strong>und</strong> Regelung von Motoren – Autoreg 2002. 15/16.<br />
April 2002.<br />
[2] Gühmann, C.; Röpke, K.; L<strong>in</strong>demann, M.: Gew<strong>in</strong>nung echtzeitfähiger Modelle <strong>für</strong> <strong>die</strong><br />
<strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulation mit Hilfe der statistischen Versuchsplanung. VDI<br />
Symposium Mess- <strong>und</strong> Versuchstechnik im Fahrzeugbau. VDI-Berichte Nr. 1616, 2001<br />
[3] Röpke, K; Fischer, M.: Effiziente Applikation von Motorsteuerungsfunktionen <strong>für</strong><br />
Ottomotoren, MTZ Motortechnische Zeitschrift 61, 9, 2000<br />
[4] Stahl, M.; Dornseiff, M.; Sax, E.: Durchgängige Testmethoden <strong>für</strong> komplexe Steuerungsgssysteme<br />
– Erhöhung der Prüftiefe durch <strong>Testautomatisierung</strong>. Tagungsband 3.<br />
Symposium Steuerungssysteme <strong>für</strong> den Antriebsstrang von Kraftfahrzeugen. 25-26<br />
Oktober 2001. Berl<strong>in</strong><br />
Seite 15
[5] Offer, T.; Häntschel, U.: Virtuelle Entwicklung <strong>und</strong> Test von Steuergerätefunktionen im<br />
dynamischen Fahrzeugbetrieb. VDI/VDE Symposium Steuerung <strong>und</strong> Regelung von<br />
Motoren – Autoreg 2002. 15/16. April 2002.<br />
[6] Oestereich, Bernd: Objektorientierte Softwareentwicklung: Analyse <strong>und</strong> Design mit der<br />
Unified Model<strong>in</strong>g Language - 4. aktualisierte Aufl. – München; Wien: Oldenbourg Verlag<br />
1998<br />
[7] Boot, R.; Richert, J.; Schütte, H.; Jegm<strong>in</strong>at, D.: E<strong>in</strong>e automatisierte Testumgebung <strong>für</strong><br />
Seriensteuergeräte auf Basis e<strong>in</strong>es <strong>Hardware</strong>-<strong>in</strong>-<strong>the</strong>-Loop Simulators. VDI Berichte<br />
1470, VDI-Gesellschaft Fahrzeug- <strong>und</strong> Verkehrstechnik, Mess- <strong>und</strong> Versuchstechnik<br />
im Fahrzeugbau, Kongress Ma<strong>in</strong>z, 29/30. April 1999<br />
Seite 16