Nieuws
Iteratieve controle doet wonderen voor nauwkeurigheid laserlasrobot
12 december 2008
Gerobotiseerd laserlassen mag zich verheugen op veel belangstelling van de materiaalverwerkende industrie. Maar ook werktuigbouwkundigen kunnen hun hart eraan ophalen: het moet alsmaar sneller en nauwkeuriger. De Twentse promovendus Wouter Hakvoort zette er zijn tanden in. Onder begeleiding van Ronald Aarts paste hij de principes van Iterative Learning Control toe op een laserlasrobot.
‘Kijk, hier zie je het verschil. Zie je hoe de lasrobot hier moeite heeft om de bocht in te zetten en bij deze niet? En hij vliegt er ook een beetje uit’, zegt Wouter Hakvoort, promovendus in dienst bij het Materials Innovation Institute (M2I) en gestationeerd bij de Universiteit Twente (UT). Op tafel liggen twee laswerkstukjes, op het eerste gezicht vrijwel identiek. Het ene aluminiumplaatje is uit twee delen aan elkaar gelast met een standaard industriële robot voorzien van een laserlasapparaat. Om het een beetje moeilijk te maken is de lasnaad niet kaarsrecht, maar een ruime bocht van negentig graden. Het andere plaatje is met dezelfde robot gedaan, maar dan wel voorzien van de upgrades van Hakvoort. Hij besteedde zijn promotieonderzoek aan de toepassing van Iterative Learning Control (ILC) op laserlasrobots.
Nadere inspectie wijst inderdaad uit dat de twee plaatjes niet even netjes gelast zijn. De ‘standaard’ naad oogt slordiger en aan de achterkant blijkt de afdichting niet volledig te zijn. Niet erg handig als de las waterdicht moet zijn. Of als je geen behoefte hebt aan nabewerking met bijvoorbeeld een slijptol om een cosmetisch mooi resultaat te krijgen. Vooral opvallend is een kleine slinger die de robot heeft gemaakt toen hij aan de bocht begon. Deze knik ontbreekt helemaal in de naad die gemaakt is met de robot die mocht profiteren van Hakvoorts onderzoek. De las oogt gewoon strakker.
Laserlassen heeft een aantal voordelen ten opzichte van andere lastechnieken, zoals acetyleen- of booglassen. Een keur van verschillende materialen kunnen ermee met elkaar verbonden worden, hulpmaterialen zijn meestal overbodig, de warmte-inbreng is laag en de penetratie in het metaal diep, zodat dikke platen geen probleem zijn. Dat laatste maakt ook sleutelgatlassen (keyhole welding) mogelijk. In Nederland last Corus rollen staal met een laser aan elkaar voordat deze gevoerd worden aan de productielijn, maar de techniek is dankzij zijn snelheid vooral in trek bij de auto-industrie. Natuurlijk doen robots daar het zware werk.
De industrie wil graag lasrobots gebruiken vanwege hun snelheid en de complexe bewegingen die ze kunnen maken, maar de nauwkeurigheid wil nog wel eens iets te wensen over laten. Het vereist complexe regeltechniek om die twee eisen met elkaar te verenigen. ‘In het laserlassen worden de vermogens steeds hoger en de spotjes steeds kleiner’, vertelt Ronald Aarts, universitair docent van de Twentse vakgroep Werktuigbouwkundige Automatisering en begeleider van Hakvoort. ‘Deze ontwikkelingen bijten elkaar een beetje. Door het hogere vermogen moet het lassen sneller, maar door de kleinere spots moet de positionering nauwkeuriger. Het is niet eenvoudig om deze eisen tegelijk in te willigen.’
In de toekomst kijken
Dat realiseerde ook staalgigant Corus zich enkele jaren geleden en kaartte het probleem van de onnauwkeurige manipulatoren aan binnen het Netherlands Institute for Metals Research (NIMR). Dat zorgde voor de financiering van Hakvoorts promotieproject. In februari van dit jaar ging het NIMR op in het bredere Materials Innovation Institute (M2I).
Aarts en zijn collega’s van de UT-vakgroep hadden evenwel al eerder de uitdaging aangenomen. Vorig jaar nog promoveerde Menno de Graaf op een zelflerend en zelfcorrigerend lassysteem door een optische sensor te koppelen aan een ingekochte zesassige Stäubli-robot voorzien van een laserlaskop (zie Mechatronica Magazine 4, 2007). De sensor, die vlak voor de laserbundel uit mat, greep direct in op de besturing van de robotarm en hield hem zo op het juiste pad. Dat is niet noodzakelijkerwijs ook het rechte pad, want lasrobots worden geacht complexe driedimensionale lasoperaties uit te kunnen voeren. Het Twentse systeem zette een nauwkeurigheidsrecord, terwijl de kostenefficiëntie en het gebruiksgemak alleen maar toenamen.
Het onderzoek van Hakvoort is een andere insteek op hetzelfde probleem. ‘De doelstellingen en hardware voor mijn onderzoek waren vergelijkbaar als die van Menno. Ook wij wilden performanceverbeteringen halen. Het gaat dan met name om de volgnauwkeurigheid van de commerciële robot op te voeren, het liefst natuurlijk zonder aan snelheid in te boeten’, zegt Hakvoort. Hij en Aarts kozen wel voor een fundamenteel andere insteek dan die van De Graaf. ‘Menno bracht zijn correcties realtime aan door de regellus bij te sturen. Ik bereken de correcties achteraf en gebruik die als invoer voor een volgende testrun. Deze procedure herhalen we tot de maximale, of gewenste, nauwkeurigheid is behaald.’ De leermethode staat bekend als ILC.
De laserlasrobot doet het stapsgewijs steeds beter dankzij Iterative Learning Control (ILC). Links leert hij een zigzagtraject te volgen, rechts een bocht zoals menig robot die in de auto-industrie moet maken.
Voor mechatronici is ILC een goede bekende: zij passen het regelmatig toe in machines die nauwkeurige, repeterende bewegingen uitvoeren. Bijvoorbeeld de chipindustrie plukt daar de vruchten van, want waferstages en de bewegende delen van pick-en-placemachines moeten heel nauwkeurig worden gepositioneerd. De combinatie van ILC en gerobotiseerd laserlassen is niet helemaal nieuw, maar nieuw genoeg voor een promotieproject. ‘In feite accepteren we de inherente onnauwkeurigheid van de robot en laten we die voor wat ze is. We hebben op geen enkele manier aan het binnenwerk gesleuteld; we hebben alleen zaken aan de buitenkant toegevoegd. Het enige wat we doen, is een speciale vorm van regeltechniek op het lassysteem los te laten’, aldus Aarts.
De aanpak van Hakvoort en Aarts is als volgt. Uit een Cad-tekening krijgt een standaard robot zijn coördinaten die hij achtereenvolgens moet aflopen, de zogenaamde setpoints. In de eerste ‘droge’ run volgt een optisch sensorsysteem gemonteerd op de robotarm deze beweging. Het oogje meet precies op de plek waar wordt gelast, alleen wordt er natuurlijk niet gelast tijdens het leren. Dat zou immers de sensor volkomen verblinden. ‘We hebben een relatief sterke laser gecombineerd met de sensor, dus eventueel is het wel mogelijk net voor het lasspotje te meten – net als bij Menno. Maar als je geen reden hebt om vooruit te lopen op de las, moet je dat ook niet doen. En aangezien wij niet realtime ingrijpen, is die reden er niet’, legt Hakvoort uit.
De data van de eerste run wordt vervolgens geanalyseerd op volgfouten, die zich op hun beurt laten vertalen naar een nieuwe serie setpoints. En deze procedure wordt net zo lang herhaald totdat de gewenste nauwkeurigheid is bereikt. ‘Kind kan de was doen, nietwaar?’, glimlacht Aarts gemeen. ‘Je zou misschien denken dat als de robot te veel naar rechts zit, je een tikje naar links moet bijsturen. Dat is ook wel zo, alleen weet je niet hoe de robot reageert op je correctie. De lasoperatie gebeurt bij hoge snelheden van twintig centimeter per seconde tot misschien wel een meter per seconde. Bovendien hangt de robotdynamica af van de stand van de arm. Als hij uitgestrekt staat, is hij als het ware veel zwaarder. Dat maakt de robot veel minder voorspelbaar dan je zou verwachten.’
Het is dus maar de vraag hoever je naar links moet bijsturen als je te veel naar rechts zit. Hakvoort: ‘Misschien moet je zelfs wel naar rechts sturen! Stel bijvoorbeeld dat de arm in een trilling zit. Dan moet je in tegenfase bijsturen.’ ILC, mits goed toegepast, ondervangt dit probleem. ‘We corrigeren aan de hand van een model van de robot, dat vertelt hoe de robot reageert op input. Voor een correctie moet je precies het omgekeerde doen, het model inverteren met andere woorden. De volgfout, gemeten door de sensor, vormt de input voor het model.’
Het ‘k+1-ste’ traject wordt als volgt berekend op basis van de run k die daaraan voorafging:
correctiek+1 = correctiek + (model)-1 x volgfoutk
Hiermee is gelijk inzichtelijk hoe het verleden (lees: eerdere testruns) wordt meegewogen. Dat is gelijk het sterkte punt van ILC. ‘Met een feedbackcontroller reageer je per definitie altijd te laat. Met ILC kun je als het ware in de toekomst kijken. Reageert je systeem traag, dan kun je proactief een correctie aanbrengen, zodat de robot toch op het juiste traject blijft’, legt Aarts uit.
Zigzagtraject
Er is wel een probleempje: modelfouten. Met een goed genoeg model kun je elke fout wegregelen, maar te veel vertrouwen in je model wordt bestraft met divergentie van de aansturing. Aarts: ‘Als je te ver naar links zit, je corrigeert naar rechts, maar de arm gaat om wat voor reden dan ook nog verder naar links, dan vlieg je de volgende iteratie nog verder uit de bocht. Je stapelt fout op fout.’
Er zijn trucjes om modelfouten te ondervangen: een filter bijvoorbeeld waarbij je boven een bepaalde frequentie maar niet meer reageert. Die frequentie refereert naar de manier waarop wordt gemodelleerd. De robotarm wordt voorgesteld als massa’s aan veren, omdat de onderdelen van de arm en hun ophanging niet volkomen stijf zijn. Het is echter ondoenlijk om alle onderdelen mee te nemen in het model. De filter treedt in werking vanaf het moment dat de benodigde simplificaties niet meer goed genoeg werken. Een ander trucje is om een weegfactor te introduceren in de term voor geïnverteerd-model-maal-volgfout.
‘Die filter en weegfactor zijn als het ware knoppen waar je aan kunt draaien om te finetunen. Je kunt ze ook zien als instelparameters, waarvoor je een soort educated guess moet maken. Stel je ze te laf in, dan duurt het een eeuwigheid voordat je een fatsoenlijk traject hebt. Ben je te agressief, dan krijg je mogelijk divergerend gedrag’, vervolgt Aarts. Vanzelfsprekend hebben de filter en weegfactor ook invloed op de nauwkeurigheid die je haalt. Vaker herhalen levert wat dat betreft iets op.
‘De industrie staat overigens niet te springen om dat soort instelmogelijkheden. Die willen een makkelijk apparaat die geen bijzondere expertise vraagt om te bedienen’, zegt Aarts. Hakvoort ontwikkelde daarom ook een methode uit om de filter en weegfactor automatisch te laten bepalen. ‘Het doel daarvan blijft om zo snel mogelijk te leren. Maar het is uiteindelijk een afweging tussen hoe snel je wilt leren, dus hoeveel iteraties je wilt doorlopen, en tot welke frequentie je nog wilt corrigeren, dus welke nauwkeurigheid je haalt. Die twee parameters staan niet helemaal los van elkaar. Als je bijvoorbeeld ingeeft dat je in tien herhalingen uitgeleerd wilt zijn, dan bepaalt het systeem zelf tot welke bandbreedte hij gaat.’
In zijn meest optimale afstelling doet de ILC-methode veel goeds voor de nauwkeurigheid van de robot. Hij haalt dezelfde nauwkeurigheid als de som van herhaalnauwkeurigheid (of reproduceerbaarheid) van de sensor en van de robot: hij wijkt minder dan 0,1 millimeter af van de ideale koers. Een indrukwekkende prestatie, want meer valt er niet uit te slepen.
Eén dingetje blijft Hakvoort steken. Hij moet per traject een nieuw model aanmaken, een universele versie bestaat niet. Het model voor een zigzagtraject is niet geschikt voor een bochtig. Erg moeilijk is het niet om het model aan te passen aan de dynamica van een andere route, maar het zou toch zo mooi zijn. Wordt ongetwijfeld vervolgd.





