13.02.2013 Aufrufe

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 ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!