facebook LinkedIN LinkedIN - follow
IT SYSTEMS 5/2018 , Plánování a řízení výroby

HiL pro testování aneb když potřebujete dostat do kanceláře autobus

Michaela Caltová


InventiPojďme společně nahlédnout do hodně specifického, nicméně velmi zajímavého prostředí, jakým je automatické testování embedded systémů, konkrétně vestavěných systémů v oblasti automotive. Testování s využitím HiLu lze totiž s velkým užitkem aplikovat právě na projektech, kde se vyvíjejí řídící nebo telematické jednotky a další HW pro použití ve vozidlech.


Co zkratka HiL vlastně znamená? Není to žádný kopec, ale zkratka pro Hardware-in-the-Loop, tedy jakýsi hardware ve smyčce. Jednoduše řečeno, HiL sestává z velmi výkonného PC, simulátoru a samotné testované jednotky, která je k PC připojena. Od situace běžné při manuálním testování, kdy bychom byli čistě jen připojeni se svým PC k testované jednotce a spouštěli na ní nejrůznější procesy či aplikace, se testy běžící na HiLu liší tím, že simulátor zajišťuje velmi přesnou imitaci elektromechanického prostředí, kde bude jednotka pracovat, například prostředí vozidla. V závislosti na konkrétním případu to může být produkce nejrůznějších signálů posílaných po sběrnici, simulace motoru, převodovky apod.

V oboru automotive se tedy jedná o jakýsi předstupeň field testů, kdy už je jednotka skutečně nainstalována na reálné vozidlo a vzdáleně se sleduje. V tomto stadiu už ale dnes bývá jednotka dost důkladně otestovaná právě díky HiLu, pokud do něj výrobní společnost investuje a používá jej. Sledovat simulaci reálného provozu de facto v laboratorních podmínkách je z hlediska času i komfortu k nezaplacení, nemluvě o tom, že lze díky simulátoru záměrně navodit i různé extrémní situace a chybové stavy – včetně zkratů, poruch a podobně.

Obvyklá je kombinace HiL simulace a automatických testů – už proto, že testy zde prováděné bývají velmi precizní a časově náročné. Lze je tedy nechat běžet například přes noc a ráno vyhodnotit výsledky.

Samotné modely procesů, nebo rovnou automatických testů, lze tvořit v libovolném softwaru zvládajícím takové modelování, často je k tomu používán dokonce i MATLAB. Jako stvořená je tato metoda testování také pro zátěžové a výkonnostní testy.

Obr. 1: Příklad použití HiL simulace
Obr. 1: Příklad použití HiL simulace

V Inventi jsme měli možnost se s tímto zajímavým nástrojem pro testování setkat například u jednoho zákazníka, kde byl na projektu HiL využíván opravdu hojně. Testy zde běžely prakticky nepřetržitě, protože základní sada testů se spustila každou noc po vydání nightly-buildu. Riziko problémů tak mohlo být odhaleno ihned po commitu změn a tím se ušetřil čas, který je v jiných případech zapotřebí k pátrání po tom, „který commit za to může“.

Nejen motory

Z hlediska využití je samozřejmě na první příčce oblast automotive. Testování na reálných vozidlech by se zde jen velmi těžko dalo převést do laboratorních podmínek. Navíc se jedná o obor, kde je testing opravdu stěžejní, protože na bezchybné funkčnosti softwaru zde závisí minimálně byznys celé firmy a v extrémních případech na ní mohou záviset i lidské životy.

Obr. 2: Testování ECU zařízení
Obr. 2: Testování ECU zařízení

Kromě odvětví automotive nachází HiL simulace využití u radarových systémů, v robotice, nebo dokonce v energetice, kde se ověřuje funkčnost a výkonnost elektrizačních soustav. Přímo u výrobců automobilů může být HiL výborným nástrojem k otestování provozu ještě před výrobou prvního prototypu daného vozidla. Časové i finanční úspory takového testování jsou tedy i zde nesporné.

Software k modelování

Jak už jsme zmínili, softwarových nástrojů, které přinášejí prostředí vhodné pro tvorbu modelů, je poměrně velký výběr – německé koncerny VW nebo ZF například využívají nástroj z dílny společnosti MicroNova nazvaný EXAM, který funguje na principu tvorby diagramů vycházejících z UML a následného strojového převodu do kódu v jazyce Python. Pomocí doplňku ho lze nakonfigurovat tak, že nápadně připomíná známé IDE Eclipse. S tímto nástrojem jsme se setkali u svého zákazníka i my, nicméně pro začínající test-inženýry obsluhující HiL, případně pro menší podniky bohatě poslouží i MATLAB, který navíc dává k dispozici řadu příkladů modelů online, dalo by se říci téměř tutoriálů.

Většina softwarových nástrojů, příkladem je třeba zmiňovaný EXAM, nabízí také generování velmi přehledných reportů o provedených testech. Základní sada knihoven pak nabízí předprogramované funkce, jako je například logování, restart a další univerzální procesy. Výhodou pak je, že si je tester nemusí psát sám, ale v softwaru již existují a lze si výsledný proces pouze „naklikat“. Rozšířením o další knihovny je pak možné získat i specifičtější funkce (typicky pro automotive).

Obr. 3: Nástroj EXAM. Zdroj: www.micronova.de
Obr. 3: Nástroj EXAM. Zdroj: www.micronova.de

Příklad modelu

Jako reprezentativní příklad si ukážeme grafické znázornění procesu simulujícího komunikaci přes sběrnice CAN, jistě dobře známé všem, kdo se kdy dotkli oblasti automotive. Právě pro nejrůznější zátěžové testy spojené se zpracováním signálů z CAN sběrnice byl u našeho zákazníka HiL hojně využíván. Sběrnice CAN je nejčastěji v roli vstupního zařízení, z něhož můžeme číst data, zároveň však lze na CAN i zapisovat.

Na obrázku níže vidíme právě přenos dat přes CAN sběrnici, přičemž se jedná o dvoukanálové zařízení. Vidíme zde dvě odlišné CAN messages s odlišnými identifikátory, které se odesílají (žlutá část) a následně přijímají (modrá část). Model by bylo možné v rámci HiLu rozběhnout také se dvěma PC, přičemž jedno by zajišťovalo odesílání dat a druhé příjem.

Obr. 4: Přenos dat přes CAN sběrnici
Obr. 4: Přenos dat přes CAN sběrnici

Pro účely efektivního testování komunikace s CAN sběrnicemi je vhodné mít HiL vybavený více kusy signálových karet. Pak může HiL disponovat například čtyřmi CANy, jak je běžné i u vozidel. Pokud na automatizovaných testech přes HiL pracuje více test-inženýrů současně anebo je třeba kontinuálně testovat více produktů, je vhodné uvažovat i nad pořízením více než jedné HiL soustavy.

Co se týká samotných testovacích případů zasazených do HiL modelu, je vhodným začátkem začít do automatizované podoby přepisovat stávající manuální test cases, případně situace známé z field testů (testů na reálných vozidlech). Tím tester pokryje základní sadu případů, seznámí se s prostředím i technologií a další scénáře bude moci rozpracovávat dle fantazie a momentálních potřeb týmu.

Michaela Caltová
Autorka článku působí v plzeňské pobočce Inventi. V IT oboru se pohybuje šestým rokem, a to obvykle mezi testingem a analýzou. V poslední době se soustřeďuje hlavně na embedded systémy.
Chcete získat časopis IT Systems s tímto a mnoha dalšími články z oblasti informačních systémů a řízení podnikové informatiky? Objednejte si předplatné nebo konkrétní vydání časopisu IT Systems z našeho archivu.