artikel

Softwaretest tegen sjoemelaars?

Techniek 523

Nadat Volkswagen de volle stormwind van voren kreeg in de VS, wegens omzeilen van emissietests, komen steeds meer autoconcerns aan de beurt. De overheersende indruk was al snel dat waarschijnlijk iedereen sjoemelde. Nieuwe Europese wetgeving moet dat tegengaan, maar toch. Hoe ontdek je sjoemelsoftware snel en betrouwbaar? Een Duits/Amerikaans team zocht een antwoord, en stelt een detectieprogramma voor.

Softwaretest tegen sjoemelaars?
Emissietests op een hele auto kosten tijd en geld, en tonen nog altijd niet wat er precies gebeurt in de ‘black box’ van het motormanagement. Die zou je apart moeten kunnen testen. (foto Bosch)

We zijn alweer dik anderhalf jaar verder, na ‘dieselgate’, maar het lek is nog niet boven. Net weer zijn in de VS zaken wegens sjoemelen aangespannen tegen Fiat/Chrysler en General Motors. In Duitsland wordt nadrukkelijk gezocht bij Daimler. Volkswagen is bezig met diesels updaten, maar heeft lang niet iedereen overtuigd dat dit afdoende werkt.

Het is wel duidelijk dat motorsoftware een uitlaatgastest kan detecteren, om binnen en buiten de test heel verschillend gedrag op te roepen. Maar bij personenauto’s is die software een fabrieksgeheim, heel precies hoe dat werkt is nauwelijks te achterhalen.

Direct software testen

Onderzoekers van de Ruhr-Universität Bochum, en de University of California, San Diego stellen dat auto’s tegenwoordig minstens evenveel softwarematig als mechanisch gestuurd worden. Zou het niet mogelijk zijn direct die software te testen op een ‘defeat device’, sneller en effectiever dan de hele auto mechanisch testen op een rollenbank of op de weg?

Kun je in stuurapparaten sjoemelschakelingen vinden?

Met behoorlijk wat moeite onderzochten de universiteitsteams zo nauwkeurig mogelijk dieselsoftware van Volkswagen en van de Fiat 500X. Hoe merken de defeat devices een emissietest op, en wat doen ze dan? Als je dat weet, is de gedachte, zou je dan een testprogramma kunnen ontwikkelen om exact deze omschakeling te detecteren?

Ontwikkeld bij Bosch

Een aardige is dat het onderzoeksrapport een aantal algemene zaken uitlegt, over hoe een motorsturing ontstaat. Ze onderzochten de EDC17 van Bosch, het Electronic Diesel Control stuurapparaat dat zowel Volkswagen diesels als de Fiat 500X 2.0 JTD hebben.

Een autofabrikant koopt het EDC17 motormanagement, met het door Bosch ingebouwde programma. Aan dat programma kan de fabrikant niks doen, alleen met een aantal calibratiewaarden daarin past hij de werking aan bij de eigenschappen van de motor die bediend moet worden.

Hiermee is feitelijk al gezegd dat de ‘sjoemelschakelingen’ door Bosch worden ingebouwd. Er zit een voorwaardelijke 1-0 schakeling in, wel of geen emissietest, waardoor het motormanagement verschillende regelingen kan uitvoeren. Wanneer er wordt omgeschakeld kan de autofabrikant wel zelf instellen.

Rommelen met EGR, injectie, regeneratie

Buiten Bosch of autofabrikanten om snorden de onderzoekers functiediagrammen van een boel EDC17 varianten op. Deze diagrammen zijn niet openbaar. Ze werden gevonden op tuning-sites en Volkswagen’s erWin technische informatiesite. “We kunnen niet garanderen dat ze alle origineel zijn. Maar we hebben geen aanwijzing dat er wijzigingen in waren aangebracht, of dat een origineel stuurapparaat zich anders gedraagt dan deze schema’s aangeven.”

Zo vonden ze in het blokschema voor Volkswagen een variabele beschreven als ‘Kundenspezifischer Akustikbedingung’, die blijkt te werken als de 0-1 schakelaar voor testdetectie. Bij de Fiat variant vonden ze twee complete regellijnen, eentje voor testcondities en eentje voor ‘real driving’ op de weg. Die voor testcondities werkt maximaal 1600 seconden (26 min 40 s), de real driving lijn werkt permanent.

De schakelaar bij Volkswagen beïnvloedde meerdere regelingen, met name de hoeveelheid EGR en de inspuithoeveelheid. Het listige bij Fiat was dat regeneratie van de NOx opslagkatalysator veel minder vaak gebeurt in ‘real driving’, dan wanneer ook ‘testcondities’ staat ingeschakeld.

Omschakelen bij ‘geen testcondities’

Volgens de onderzoekers werkt sjoemelsoftware op een soort fail-safe systeem. Standaard staan ze in testcyclus-stand, tot ze vaststellen dat de auto zeker geen test aan het doorlopen is. Zie de tijdsfactor bij Fiat, langer dan emissietests duren. Ook gaat de testconditie modus daar uit zodra meer dan 1,3 liter brandstof is verbruikt..

Zie vooral profiel 9 dat de onderzoekers in de sjoemelsoftware vonden. Tien testcycli tot en met WLTP zitten erin, het witte gebied vertelt de software dat een test aan de gang kan zijn. Zie vooral profiel 9 dat de onderzoekers in de sjoemelsoftware vonden. Tien testcycli tot en met WLTP zitten erin, het witte gebied vertelt de software dat een test aan de gang kan zijn.

Het Volkswagen sjoemelsysteem bleek behoorlijk ingewikkeld. Vijf voorwaarden bepalen of de motor omschakelt naar de test-modus. Nog vier voorwaarden kunnen de test-modus weer uitschakelen. Een daarvan bestaat uit grafieken van tijd tegen afgelegde afstand. Daarin staan krommen met ‘veiligheidsmarges’ er omheen. Elke kromme, tot tien (!) stuks afhankelijk van de softwareversie, komt overeen met een officiële meetprocedure. Binnen de marge rond de krommen blijft de test-modus erin, erbuiten gaat die uit. Zoiets stelde ook RDW vast met metingen.

Lage NOx geeft niet de beste motorprestaties

Later heeft Volkswagen nog een stuurhoekdetectie toegevoegd. Als het stuur meer dan 200 gedraaid wordt is dit ook een teken dat geen emissietest aan de gang kan zijn. De onderzoekers bekeken versies van EDC17CP04 P 531 tot EDC17C54, en de Fiat variant EDC17C69. In totaal 900 softwareversies, waarvan in 400 versies uit acht bouwjaren een defeat device werd gevonden.

Minder NOx, of minder deeltjes

Het onderzoek legt ook uit waarom er zo gesjoemeld werd (of nog wordt?). Het gaat bij diesels vooral om NOx, weten we. Dat bestrijdt je door EGR, terugvoer van uitlaatgas, of een NOx opslagkatalysator. Als je niet de effectiefste maar duurste oplossing wil, een SCR katalysator met AdBue injectie.

Sjoemelsoftware dient met name om belasting op het roetfilter, en verhoogd verbruik door regeneratie van roetfilter en NOx opslagkatalysator te verminderen. (foto BMW)

Sjoemelsoftware dient met name om belasting op het roetfilter, en verhoogd verbruik door regeneratie van roetfilter en NOx opslagkatalysator te verminderen. (foto BMW)

De allernieuwste Volkswagens met SCR werden hier niet onderzocht. Wat VW eerder deed was de EGR beperken, want meer EGR betekent ook meer roet. Dus vaker het roetfilter regenereren, wat brandstof kost, en eerder een roetfilter vol asresten dat niet meer regenereert onder de auto.

O ja, waarom werd de sjoemelschakeling ‘klantspecifieke akoestische voorwaarden’ genoemd? In de testcyclus meer EGR en andere inspuitstrategie, lagere verbrandingsdruk, dus minder dieselgeluid. Alsof alleen om het motorgeluid te beperken deze schakeling ingebouwd zat.

De weg die Fiat koos gaat over de NOx opslag. Deze katalysator moet uiterlijk elke vijf minuten ontdaan worden van de opgeslagen NOx, door de motor tot 10 seconden lang een rijk mengsel toe te voeren. Dus ook hier: hoger brandstofverbruik, hogere belasting van het roetfilter, dat dus ook vaker moet regenereren met nog meer brandstofverbruik.

Dan maar liever in het gewone verkeersgebruik sjoemelen met meer NOx , lager verbruik en betere motorprestaties.

Meer EGR voor minder NOx geeft extra roetvorming, vooral bij diesels met gekoelde EGR. En roetvervuiling, weten we uit de praktijk, geeft heel wat onderhoudsproblemen. (foto Denso)

Meer EGR voor minder NOx geeft extra roetvorming, vooral bij diesels met gekoelde EGR. En roetvervuiling, weten we uit de praktijk, geeft heel wat onderhoudsproblemen. (foto Denso)

CurveDiff testprogramma als voorbeeld

Dat brengt de onderzoekers uiteindelijk op de vraag of een programma te maken is dat het gedrag van een motormanagement controleert. Ze ontwikkelden CurveDiff. In de meeste bekeken EDC17 besturingen vond dat programma het detecteren van testomstandigheden, en hoe de motorsturing dan reageert.

Het is nog niet gezegd dat CurveDiff elk motormanagement even effectief kan controleren. De onderzoekers willen vooral een punt maken, dat softwarecontrole nodig wordt om ingewikkelde auto-elektronica te testen. Waarbij ze ook sturingen voor autonoom rijden noemen: doen die altijd alles wat wettelijk van ze  vereist wordt?

Er zullen voor inspecteurs methodes ontwikkeld moeten worden om afzonderlijk de werking van zulke stuurprogramma’s zowel in als buiten wettelijke tests te evalueren.

Elk testvoorschrift moet bekend zijn

Het kan niet anders, zeggen de onderzoekers, dan dat testprocedures voor auto’s openbaar zijn. Alleen dan weet elke fabrikant waaraan hij én elke concurrent zich te houden heeft. Maar dan kan hij ook een ‘defeat’ maken die elke testprocedure herkent. Het complete rapport voegen we hierbij [link naar diesel-sp17.pdf].

Het is niet werkbaar een zo uitgebreide test voor te schrijven dat die alle mogelijke rijomstandigheden ter wereld in elk seizoen dekt. Je kunt ook nooit wettelijke status geven aan een RDE-test op basis van ‘rij maar een stukje zoals het jou uitkomt’, daarop kun je geen auto’s ontwerpen.

Wat je wel zou moeten kunnen, luidt hier de conclusie, is checken op een (nu al verboden) ‘defeat’ in de elektronica die tests herkent en daarbij een ander gedrag instelt dan buiten de tests. Naast gedetailleerd omschreven tests om emissie- en verbruikscijfers te meten.

Reageer op dit artikel
Lees voordat u gaat reageren de spelregels