Steuerzentrale, Befehlssystem und Framework zugleich · r-- ---- - LEntwicklung +Test 1111 AT~_ ATE...

2
ATE 11 11 Entwicklung + Test Steuerzentrale , Befehlssystem und Framework zugleich det _ _ t- I Bild 1. Für die Test-Skript-Entwicklung mit kTest kann die integrierte Open-Source-Entwicklungsumgebung EClIPSE verwendet werden. f) :.' ,;, ;= ""' 0 E::o.th l:l"- "" 0 sind klar - sie bedürfen keiner weite- ren Erläuterung . P=l'r::oe: t t'.lIIt rpu c: :"'1"1 V1 t b S t .lr.' -&J4 t': CZJ et cu r t"''" '' o.t r 1lJ .u>r ;).fJ: ($) stu't .l:.u:.orl!!r {s } ; /:115" :H o, r ec ol!<!er (.s] l' " .. t - r " e or d e.:: .. TeO SUU .1Dl tl s eJ t 7Tt:o · SUB dm:l) LV_TIlI_ .IlQ, _J.CT_nal . lDit LV_ TOI_P.ClI_ .lCT_ftClUulIll •• __ " 'l C(Io I"!lt H ----- -- -- --- - ----- --. ---- -_. -- h .;-e;oH:>eM la.ll:.ll .... - - (LV r ox, LV l OIl: ft eu, LV TQl p.a l l CT Ilal, Jl 3Z I!CU . TCO_SUBJ - r r; e c:u... c a ltl ev l:Jlp .CCl nfl g-lcal IlevbpVBrLUt, '1:"'.J tu t ell 'l "! \:::- ... l ...·.1.O:'. :'0.' unr .. TCO SlI1l. " et 186• .!a( = t'", : e TC,) !' ll'B' , 1IlI.l t I S .O, " I - " , ,,·;:.:. '!':-r r loe.:. Il lot..,::,.': l 1 c:otdc.o, 1I lllt(0.3, "I TCO••recrt c. 'teil t er .Jnt e:r4Ce> XC"_ ::UP ' I 1III. lt(3 .0, '" 1III.l t(2 . 0, ' t e il t e t' r e o:ur r e.'l:::" r ,l'. t ll 'l fk Edr: 5tucr 1I/1\'\'lte Selrrll Pydr.o AI6\ Wf'wbo, !rl I@' "\> ' Q. . ] <& t.> ' J,(" '1 " ;' &" t: r-z, ... 1:1 Die Historie der Automotive-Testsysteme ist kurz, aber komplex: Selbst- entwickelte Eigensysteme mutieren derzeit zu Standards, aber oft genug auch zu Pseudo-Standards. In Wirklichkeit aber herrscht noch ein wenig Wildwuchs, der sich mit der Bedienoberfläche kTest, die alles zusammen- zufügen vermag, lichten dürfte. Arbeit mit Testsystemen der Automobilbranche fällt nun leichter Von Eri ch Wildmose r und Kurt Emonts Logik und die Vorteile, die sich aus diesem Denkansatz ergeben (können), Der Ansatz für Testsysteme Im Grunde sind Testsysteme dazu da, den endlosen Bau von Prototypen ein- zuschränken und Erkenntnisse übe r das (gemeinsame) Funktionieren von Schaltun gen, Systemen, Steuerungen auf den Computer zu verlagern. Die D ie klassische Methode, mit der man einen Standard erarbeitet, beruht darauf, dass sich Her- steller an einen Tisch setzen, um sich auf einen gemeinsamen Standard zu ei- nigen. Die Marktmethode , die ebenfalls zu einem Standard führen kann, ist der "Ellenbogen" oder die Durchsetzungs- kraft des Markt- oder Branchenführers. Wenn die noch junge Branche der Testsoftware im Automobilmarkt nun auch nach einem Standard ruft , weil die bereits verfügbaren Wege in ihren einzelnen Ansätzen gut, aber selten als Ganzes optimal sind, dann wird das ei- gentliche Problem deutlich: Es ist die Suche nach der Lösung, welche die "besten Rosinen aus den besten Ku- chen herauspickt". Dr. Keil-IT hat sich mit kTest nun einen Weg ausgedacht, der nicht nur auf den ersten Blick recht intelligent ist: Man strebt die Vereinheitlichung oder die Standardisierung an, indem man nicht das Testsy stem vereinh eit- li cht , sondern dessen Ansteuerung. Darunter muss man sich so etwas wie einen Dietrich vorstellen - also einen .Llni versalschlüssel" - , der auf seine ureigenste Methode für eine Vielzahl von Türen passt. Dieser Dietrich stellt eine Art Framework - also eine Kom- mandozentr ale - dar , die von allen Testsystemen verstanden wird. wwvv.elektroniknet.de Elektronik automotive Z2007 43

Transcript of Steuerzentrale, Befehlssystem und Framework zugleich · r-- ---- - LEntwicklung +Test 1111 AT~_ ATE...

Page 1: Steuerzentrale, Befehlssystem und Framework zugleich · r-- ---- - LEntwicklung +Test 1111 AT~_ ATE 1111 Entwicklung +Test I listing 2.lnitialisierung derTestklasse __nJ I I Erich

ATE 11 11 Entwicklung + Test

Steuerzentrale,Befehlssystem

und Frameworkzugleich

~ det ~~~e tlll"H') l _ _ t-

'-J' I--::=tm'-:~' '.,,'~~_:;'=_';-='~' 'J ';,::;::::~~~'~_, .f!

I Bild 1.Für die Test-Skript-Entwicklung mit kTest kann die integrierte Open-Source-Entwicklungsumgebung EClIPSEverwendet werden.

f) sl~_ :.',;,;=""' 0 E::o.th l:l"- "" 0

sind klar - sie bedürfen keiner weite­ren Erläuterung .

P=l'r::oe: t t' .lIIt rpu c: :"'1"1 V1 t b S t .lr.'-&J4 t': CZJ e t cu rP.l: o:;~=e: ;J:e-~e (;orJe: t"''"''

(:cnt'j :.~.t J; ":::I o.t r 1lJ.u>r;).fJ: ( $ )

stu' t .l:.u:.orl!!r {s }

.l: .:;C'~J fI: ; /:115":H o, r ec ol!<!er (.s]l' " .. t - r " eor d e.:: l'h~ ..

Te O SUU.1Dltl s eJ t 7Tt:o · SUB dm:l)

LV_TIlI_.IlQ, _ J.CT_nal . lDit Is~l:t·. LV_ TOI_P.ClI_ .lCT_ftClUulIll

11~ •• ~ __ " · · - -l'r ~. - l 'l C(IoI"!lt H J:h~l ft -- - - - - - -- - - - - - - ----- --~ --~- --. ---- -_. - -

h .;-e;oH:>eM la.ll:.ll ....·.J,'I~ ~:1\.

c llltl ~vl lll' - Co.lbpl lI"J~.t"lI tr1 1el

cllltl~vl ll llVarLlst - (LV r ox, LV l OIl: fteu, LV TQl p.a l l CT Ilal , Jl 3Z I!CU .T3c()_GRD_~ctl,-TCO.TCO=ll crl-:- TCO_SUBJ -

~ r r; e c:u... ,,~ c:~.~:n"' !~(' .~ (;' , ~ H.~~ rs ~ ~ <1 ' .

c a ltl ev l:Jlp .CClnflg-lcal IlevbpVBrLUt, '1:"'.J t u t ell ' l"! \:::-... l ...·.1.O:'. ~~eJ't,::' :'0. ' ~~o:~~ unr !~.:..;~~ :- ::~.e t

~~Ö~~t~~~-:-~};:~'~;e~~~~r~::t:'~.: a ~er~ J.:: ~ u:. :"iI_~'''L.: .:-:_·~Oy 'J

TCO SlI1l. " e t 186• • t .:~t ('~ .!a( = t'", : e TC,) !' ll'B' ,1IlI.l t IS .O, " I -

" , ,,·;:.:. '!':-r r loe.:.cII.ID ~vE lll' .lItartP~ell Il lot..,::,.': ' I,~ l 1c:otdc.o,1Illlt(0.3, " ITCO••recrtc. 'teil t er .Jnt e:r4Ce> XC"_ ::UP ' I1III.lt(3 . 0 , '"1III.lt(2 . 0, ' t e il t e t' r eo:ur r e.'l:::"r ,l'. t ll 'lcII. ID~vExp. lIt Cl pP ll c l l

f k Edr: 5tucr p~aaern:;J 1I/1\'\' lte Selrrll ~t Pydr.o AI6\ Wf'wbo, ~

!rl .~~ J ~ I @' "\> ' o · Q. . ] <& t.>' J,(" '1 " ;' &" •.':C .~ .t: l'yt!wP~EQ:.~ r-z, ... 1:1

Die Historie der Automotive-Testsysteme ist kurz, aber komplex: Selbst­

entwickelte Eigensysteme mutieren derzeit zu Standards, aber oft genug

auch zu Pseudo-Standards. In Wirklichkeit aber herrscht noch ein wenig

Wildwuchs, der sich mit der Bedienoberfläche kTest, die alles zusammen­

zufügen vermag, lichten dürfte.

Arbeit mit Testsystemen der Automobilbranchefällt nun leichter

Von Erich Wildmoser und Kurt Emonts

Logik und die Vorteile, die sich ausdiesem Denkansatz ergeben (können),

Der Ansatz fürTestsysteme

Im Grunde sind Testsysteme dazu da,den endlosen Bau von Prototypen ein­zuschränken und Erkenntnisse übe rdas (gemeinsame) Funktionieren vonSchaltun gen, Systemen, Steuerungenauf den Computer zu verlagern. Die

Die klassische Methode, mit derman einen Standard erarbeitet,beruht darauf, dass sich Her­

steller an einen Tisch setzen, um sichauf einen gemeinsamen Standard zu ei­nigen. Die Marktmethode , die ebenfallszu einem Standard führen kann, ist der"Ellenbogen" oder die Durchsetzungs­kraft des Markt- oder Branchenführers.

Wenn die noch junge Branche derTestsoftware im Automobilmarkt nunauch nach einem Standard ruft , weildie bereits verfügbaren Wege in ihreneinzelnen Ansätzen gut, aber selten alsGanzes optimal sind, dann wird das ei­gentliche Problem deutlich: Es ist dieSuche nach der Lösung, welche die"besten Rosinen aus den besten Ku­chen herauspickt".

Dr. Keil-IT hat sich mit kTest nuneinen Weg ausgedacht, der nicht nurauf den ersten Blick recht intelligentist: Man strebt die Vereinheitlichungoder die Standardisie rung an, indemman nicht das Testsy stem vereinh eit­licht, sondern dessen Ansteuerung.Darunter muss man sich so etwas wieeinen Dietrich vorstellen - also einen.Llni versalschl üssel" - , der auf seineureigenste Methode für eine Vielzahlvon Türen passt. Dieser Dietrich stellteine Art Framework - also eine Kom­mandozentrale - dar, die von allenTestsystemen verstanden wird.

wwvv.elektroniknet.de Elektronik automotive Z2007 43

Page 2: Steuerzentrale, Befehlssystem und Framework zugleich · r-- ---- - LEntwicklung +Test 1111 AT~_ ATE 1111 Entwicklung +Test I listing 2.lnitialisierung derTestklasse __nJ I I Erich

r-- --- - -LEntwicklung + Test 1111 AT~_

------------- ---------== = = = =ATE 1111 Entwicklung + Test

----------

I listing 2.lnitialisierung derTestklasse

__nJI

I

Erich Wildmoserbegleitet die Szene der Testsysteme vomersten Tag an und ist im Hause Dr. Keil zustän­dig für das Produkt [email protected]

Die Methode "eva luation" (Lis­ting 4) definiert die Bedingungen fürdie Testfallbewertung. Wichtig ist hier­bei, dass die Evaluierung in mehrere,zeitl ich aufeinander folgende Phaseneingeteilt werden kann, und die Klasse.Eval'hase" die Bedingungen für Start­und Endzeitpunkt der jeweiligen Pha­se definiert. Die Klasse "TestReq" de­finiert die Bedingungen, die für einenerfolgreichen Test notwendig sind.

In dem bis dato gezeigten Beispielwird für Phase2 überprüft , ob das auf­gezeichnete Signal in einem vorgege­ben Toleranzfenster liegt. go

~ Post-Recorder Pha se: Hier könnenBerechnungen mit den aufgezeichne­ten Werten durchgeführt werden.

Kurt Emontsist freier IT-Fachjournalist und Autor in Saar­brü[email protected]

def eval uati on(self ) ;ep2 EvaPhase (phase ID = 'EP2', star tAnalyse = ep1.getEno ( ),

beginP ar = TCO, begi nOp erat or = '<' .beginVal = 73, whil ePar = LV_IGK,wh il eOperator = ' =' , wh i l eval = 1)

t est Req2 Test Req( ' t est of in t erf ace TCO_SU B', ' TR 2' )te stReq2.e vaTol Wi nSi g(TCO_MON, ep2.get Begi n() ,

[[ 91. 87.0 , 0]. [89 .5, 85.5", 0. 40].[B8 .0, 84. 0 , 0.80 ]. [8B.0 . 84. 0 , 1. 20J]. ep2)

I listing 4.Bei .evaluatlon" können mehrere aufeinanderfolgende Phasen eingeteilt werden

I1..----- - -

def st i mu lation(self);calDevExp = Cal Exp(sel f.test File)calDevExpVarLi st = [LV_ IG K. LV_ IG K_MON . LV_TOI _MON_ACT_MON , N_32_MO N,

T_T CO~G RD_MO N , TCO,TCO_MON, TCO_SUBJcalDev Exp.config (c alDevExpVarList , ' sw_it es t_cal ' )LLTOL~lOfLACT_MO N . set t l , ' t es t of i nterface LLTO Lt~O N_ACLfl0 N ' )

TCO. set (90 . ' t es t of i nterface TCO' )TCO_SUB. set (B6 , ' t est of i nt erf ace TeO_SUB ' )wait (5. 0 . " )ca l De vExp .s tart Rec() # start s th e recorderwait (0 .3, ")TCO. set (70. ' te st of i nt erface TCO_SUB' )\'iait (2.0 , ' t es t of recur r ency rate ')cal DevExp.stopRec()

- --- ----

I listing 3. Die Methode .stlmulation": eigentliche Testdurchführung

Die Methode "s timulation" führtdann den eigentlichen Test (Listing 3)durch, der wiederum in mehrere Pha­sen aufgeteilt ist:~ Pre-Recorder Pha se : Hier werden

das Experiment initialisiert und eineListe der verwendeten Variablen er­zeugt.

~ Recorder Configuration: Hier wirdder Recorder mit den Variablen kon­figuriert .

~ StartRec: Startet die Aufzeichnungder Testwerte.

~ Recorder Phase: Hier können Befeh­le angegeben werden, welche die auf- .zuzeichnenden Werte beeinflussen ­z.B. Änderungen von Steuergrößen.

~ StopRec : Beendet die Aufzeichnungder Test werte.

a Testskript-Strukturam Beispiel

Die Funk tionsweise des Test-Frame­work lässt sich so zus ammenfassen,dass kTest vorhandene (wie zukünf­tige) HiL-Systeme unter einem einzi­gen , universell eins etzbaren Frame­work mit nur einer Skriptsprache steu­ert (Bild 2). Test anforderungen kön­nen auf jedem PC geschrieben und ent­wickelt werden - nur für den eigent­lichen Testlauf wird das HiL-Sy stembenötigt.

Als Folge dessen ergeben sich beider Entwicklung von Tests keine Eng­pässe mehr: Nur der HiL-Durchlauf istmit einem Aufwand an Zeit, aber ohneAufwand an Manpower verbunden.Die Komm andozentrale kTest "ver­steht" die Anforderungen der am Marktverfügbaren Systeme und vermag die­se Systeme seinerseits zu steuern .kTest vereinigt also alle gängigen Test­Systeme im HiL-Bereich .

Zur Verdeutlichung wird im Fol­genden ein Testskript kurz angerissenund kommentiert. Es dient der Über­wachung der Kühlmitteltemperatur.Das vollständige Skript kann unterwww.drkeil-it.de/de/unsere-produkte/ktes tldow nload-ktes t-demos-scri ptlherunter geladen werden.

a Interesse der Industriefällt positiv aus

Für die Durchführung eines Tests wirdeine Testkl asse von .Testßase" abge­leitet. Diese Klasse enthält verschiede­ne Methoden, die für den individuellenTest überschrieben werden müssen .Die folgenden Code-Ausschnitte zei­gen beispielhaft, wie ein solcher Te-stablauf aussehen könnte : .

Für die Ausführung eines Tests wer­den zuerst die benötigten Module undKlassen importiert. "readCnfGeneral"liest die glob alen Einstellungen fürden Test aus einer XML-D atei (Lis­ting 1).

Die Methode .Jnit" ist für die In­itialisierung der Testklasse verantwort ­lieh (Listing 2). Hier werden zum Bei­spiel einerseits XML-Dateien angege­ben, welche die Stimulationsdaten ent­halten, und andererseits die entspre­chenden Variablen mit den Stimu­lationsdaten initialisiert.

hierzu notwendigen Software anzu­stoßen. Vielmehr haben die Beteilig­ten am Markt getüftelt , herumprobiert,Eigenentwicklungen fortgeschrieben ­und gleichzeitig alte proprietäre Denk­ansätze zum Schutz der investiertenZeit und Entwicklungskosten verwen­det.

Für die Erstellung der Testentwick­lung (Bild I) genügen bei kTest Com­puter-Arbeitsplätze mit der entspre­chenden Software . Hier können vieleMitarbeiter gleichzeitig unterschied­liche Aufgaben bearbeiten. Für dieHiL-Simulation allerdings bedarf eszeitaufwendiger Testläufe, die nur amTestsystem möglich sind; aber dieskann immerhin auch in der Nacht oderam Wochenende "ohne menschlicheBegleitung " geschehen .

kTest wurde konkret vor dem Hin­tergrund dieser Situation entwickelt.Es bietet dementsprechend die Off­line- Testskr iptentwicklung inklusiveDebugging, die den ökonomischenEins atz der HiL-Testwerkzeuge ver­bessert. Die Testsysteme können imOnl ine -Betrieb bleiben, währendScriptentwicklun gen offline durchge­führt werden. Darüber hinaus bietetkTest mit seinen umfangreichen ge­nerischen Bibl iotheken zur automa­tisierten Testfallbewertung eine zu­verlässige Basis für die effiziente Nut­zung.

kTest

Anwender Report

Der Ansatz geht noch weiter. Dasgemeinsame und reibungslose Funk­tionieren der einzelnen Steuergeräteeines Kfz, das man mit Hilfe der Test­systeme im Labor testet, muss sicher­gestellt werden , bevor der Bau vonPrototypen ansetzt. Die reale Fahr­zeug welt wird dabe i durch die HiL­Simulation (Hardware-in-the-Loop)ersetzt, die realitätsgetreu simuliert,was sich zwischen den Steuergerätenabspielt.

Den Nutzen daraus ziehen inzwi­schen alle Kfz-Hersteller und -Zuliefe­rer. Ohne diese Werkzeuge ist die kost­spielige Phase vor der Lancierung neu­er Modelle nicht mehr zu finanzieren.Allerdings hat sich bisher niemand mitseinem Wettbewerber an einen Tischgesetzt, um die Weiterentwicklung der

Datensätze

I Bild 2.Über­sicht des kTest­Framework mit

derAbgrenzungzuden Benutzer­und Testsystem­

Schnittstellen.

def tn t t Lsel f ) :se lf .stf Eds = ' sw_it es t_eds . xml·sel f .TCO_dsm = 'TC O_sl_dsm . xml 'se lf . TC O_S UB_dsm = 'TCO_SUB_s l_dsm. xm l 'se l f . LV_TOI_MON_AC T_MON_dsm = 'LV_TOI_MON_ACT_MO N_s l_dsm. xml 'se lf .eds Ha ndle r = EdsH andl er.(parent = se lf)se lf . edsHandl er . l oadAt t r i b(se l f. eds Fi le)st f . i nit(se l f.s t f Eds)TC O.i ni t (self.TCO_dsm )TCO_SU B.init (self. TCO_SUB_dsm)LV_TOI _MON_ACT_MON. i ni t (sel f.LV_TOI_MON_ACT_MON_dsm)

from ktes t . taLc nf impor t readCnf Genera lreadCnf Ge nera l ( "cnL genera l . xml ")>f rom ktest.t af_eds i mpor t EdsHandl er>f rom ktes t .taf_ca l_exp import Cal Exp>f rom ktest. ta Lge neral impor t wait>f rom ktest. t aL rel _t _eva l i mport EvaPhase, Test Req>f rom ktest. t af_test import TestBase>f rom kt est . t af_graph i mport plotS igna lsimpor t itest_stimu la t ion>f rom i test_st i mulat ion i mport stf , TCO_MO N, T_TC O_GRO_MO N, TCO, TCO_SU Bfr om t t est .is t imul at i on i mp ort N_3LMON , LL TOL t·lO N_ACL MON, L V_IGK_~10N . LV_IGK

I listing 1. Import derbenötigten Module und Klassen

44 Elektronik automotive 7.2007 www.elektroniknet.de www.elcktroniknet.de Elektronik automotive 7.2007