Time of flight camerasysteem helpt robots zien in moeilijke omgevingen

Mon Dec 23 2024

12 23

Time of flight camerasysteem helpt robots zien in moeilijke omgevingen

29/01/2019

Door Liam van Koert

Al in de jaren tachtig wordt er over binpicking gesproken. En voor specifieke toepassingen zijn er sindsdien verschillende oplossingen bedacht en gebouwd. Maar een generieke methode die zonder bibliotheken feilloos werkt, ook in lastige omgevingen? Die heilige graal lijkt met easyEye van ervaren startup Teqram een stuk dichterbij.


     

 

// Factory Facts //

  • Binpicking van glimmende metalen onderdelen in variabele lichtcondities is moeilijk
  • Teqram uit Zwolle ontwikkelde daarom een 3D-visionsysteem gebaseerd op Time-of-Flight
  • Ook leveren ze robots en maatgemaakte grijpersystemen 
  • Voor het koppelen van alle systemen ontwikkelde ze een framework gebaseerd up een scriptingtaal uit de gamingindustrie (Lua)

“Eigenlijk is Teqram geboren uit pure noodzaak”, bekent Frans Tollenaar, directeur van het jonge robotvisionbedrijf. “We konden gewoonweg geen systeem vinden dat aan onze eisen voldeed. En we hebben echt heel goed gezocht. Jaren. En dat terwijl onze eisen helemaal niet afwijken van de behoefte die in de hele sector speelden en spelen.” De sector waar Tollenaar het over heeft? De metaalverwerkende industrie. Want daarin is moederbedrijf de Tollenaar Groep al decennialang succesvol. “We hebben binnen onze groep met maakbedrijven te maken met lage productvolumes, en heel veel variatie. Hoewel robotisering dan voor de hand ligt, bleek die combinatie toch een probleem. Een generiek probleem zelfs. Dus ook een gat in de markt. Gelukkig hadden we binnen eigen gelederen volop technisch talent met de juiste ideeën om dat probleem op te lossen en in enkele jaren een zeer robuuste oplossing – ook in lastige metaalbewerkende omgevingen – te ontwikkelen. easyEye is het resultaat.”

Bin Picking web

Binpicken van metalen onderdelen met Time-of-Flight // © Teqram

3D-surveillancesysteem

Als je er zo op het eerste gezicht naar kijkt, doet easyEye erg denken aan een surveillancesysteem. En vermoedelijk is dat ook precies de plek waar de bedenkers van het eerste uur hun inspiratie aan ontleende. Want zeg nou zelf: een 3D-camera in een draai- en kantelbare robuuste behuizing op een hoge sokkel zetten om de productie te bewaken is best een goed idee. Helemaal als je het 3D-deel doet op basis van time of flight met een laser en de hoge-resolutiecamera (2.4 Mp eff.) en een lens die tien keer optische zoom meegeeft. “In theorie kan je met easyEye tot 300 meter ver weg kijken. Maar in de praktijk volstaat het meestal om hem als een ‘alziend oog’ enkele meters boven je robotcel te laten waken. Je kunt hem hier bijvoorbeeld de door elkaar heen liggende producten in een bin of op een europallet laten identificeren. De verzamelde beelden en x,y,z,-coördinaten match je vervolgens met het coördinatenstelsel van de robot. Tot slot bepaal je de ophaal en aflegposities – dit kan je ook dynamisch door de software laten bepalen – en de robot gaat aan de slag.” Volgens Tollenaar maakt het hierbij niet uit om welk soort onderdelen het gaat. Er zijn geen bibliotheken nodig en er hoeft niets geclassificeerd en ‘getraind’ te worden. “Vergelijk het maar met een tafel vol eetgerei dat de vaatwasser in moet. Net zoals een mens dat kan, is easyEye ‘out of the box’ in staat borden, mokken, pannen en bestek te identificeren, ongeacht waar deze zich op de tafel bevinden. Vervolgens zet hij alles netjes in de vaatwasser, ook als deze al half gevuld is en er om bepaalde ruimtes heen moet worden gewerkt, omdat er bijvoorbeeld al een grote schaal staat.” Kanttekening is wel dat het systeem op basis van 3D-geometrie niet weet met welke materiaalstructuur het te maken heeft. Dat glas – om de tafelanalogie maar even door te trekken – is breekbaar. En ook die schoonmaakspons die toevallig op tafel ligt, heeft weer hele eigen unieke ‘handlingvereisten’. Maar in de grofstoffelijke metaalwereld kom je die niet snel tegen. Daar geldt vooral het kunnen omgaan met vervuiling, reflecties door olie op metaal – en dat dan op een grijs betonnen vloer - en sterk variërende lichtcondities omdat er ineens een bovenloopkraan voorbij komt zetten. Bovendien is er niets op tegen een 3D-geometrie aan een database met breekbare of sponsige producteigenschappen te koppelen en hier bijvoorbeeld een kracht-gestuurde grijper of een naaldgrijp voor te programmeren. Sterker nog: in 2019 komen er verschillende modules voor kracht-gestuurd grijpen en de software die Teqram gebruikt is namelijk zeer gebruiksvriendelijk, open en komt uit de gamingindustrie.

 

 

EasyBot web2

Easybot is een gekalibreerde oplossing met easyEye // © Teqram

Scripten met Lua

Volgens Wikipedia is Lua een ‘dynamisch getypeerde, imperatieve scripttaal die veel als geïntegreerde scripttaal in applicaties gebruikt wordt, maar ook los gebruikt kan worden.’ Zonder al te diep in te gaan op wat dat precies betekent, is het interessant hier toch even bij stil te staan. Imperatief wil zoveel zeggen als dat de computer precies gezegd wordt wat hij in welke volgorde moet doen. Dynamisch getypeerd betekent dat een programma niet vooraf gecompileerd hoeft te worden, maar dit ‘on the fly’ tijdens het doorlopen van het programma kan. En high-level scriptingtalen tot slot zijn vooral zeer gebruiksvriendelijk omdat ze zo beschrijvend zijn, dat je ook als normaal mens snapt wat het programma doet als je het leest. In het geval van Lua is het bovendien een snelle, geheugenzuinige allesvreter – die volledig open source is. Voor de gamingindustrie een geweldige taal, omdat opnieuw compileren na elke kleine wijziging veel te tijdrovend is. En nu dus ook, naar zo blijkt, ideaal voor robotvision. Tollenaar: “Natuurlijk hebben we tal van functies op een grafisch fraaie manier voorbereid. Of het nu gaat om het snel inregelen van 3D-geometrie via ‘click & measure’ – geen teach pendant nodig – beeldbewerking, het visualiseren van procesdata of het werken met live streams en augmented reality, het is allemaal kant en klaar voor gebruik. Maar klanten kunnen ook heel gemakkelijk zelf dingen toevoegen of aanpassen in een taal die hen het beste ligt. Maximale en eenvoudige flexibiliteit dus, ook al ben je geen vision- of robotprogrammeur.”

 

Platformonafhankelijk

Het werken met Lua heeft volgens Tollenaar ook nog een andervoordeel. Het maakt easyEye onafhankelijk van andere systemen. Dit geldt voor IO en connectiviteit richting veldniveau – de sensoren dus – of juist naar boven richting MES en ERP. Maar het geldt ook voor de robots die easyEye-systemen in de meeste gevallen vergezellen. “Als Teqram passen we voornamelijk ABB toe. Daar hebben we historisch gezien vanuit de Tollenaar Groep de meeste ervaring mee. Maar eigenlijk maakt het voor easyEye helemaal niet uit welke robot hij van zicht moet voorzien. RobotStudio gebruiken we bijvoorbeeld helemaal niet. Het programmeren gebeurt vanuit een eigen omgeving en gaat door het gebruikmaken van API’s helemaal buiten de robotbesturing om. Dat is niet alleen handig voor ons omdat we zo precies de robot kunnen bieden die de klant graag wil, maar ook omdat er op elk moment van robotmerk gewisseld kan worden, zonder dat er maar een letter code veranderd hoeft te worden. Dat geldt ook voor de besturing van onze multifunctionele grijpers, die eigenlijk al ‘kleine’ machines op zich zijn.”

 

Smart Gripper web

Teqram ontwikkelt haar magnetische-, mechanische- en vacuümgrijpers helemaal modulair // © Teqram

Turnkey tooling

En dat breng ons op een laatste punt waar Tollenaar met Teqram echt het verschil ten opzichte van andere aanbieders denkt te kunnen maken: het zelfstandig turnkey kunnen opleveren van complete robotcellen, inclusief veiligheidstechniek, machine-integratie en natuurlijk één of meerdere (3D)-visionsystemen. Alles uit één hand dus. Tollenaar: “easyEye kost slechts een fractie van de gangbare op de markt zijnde systemen, en ik betwijfel of ze net zo ‘metal proof’ als easyEye zijn. Want dat is uiteindelijk zijn belangrijkste USP. Het maakt easyEye ook gewild in grotere projecten, waar de visioninvesteringen klein zijn ten opzichte van het totaal en de visionprijs dus niet echt een argument is. Daar speelt dan weer wel, dat Teqram als één van de weinigen het complete plaatje in de vingers heeft. Ook ons modulair opgebouwde grijpersassortiment liegt er namelijk niet om. Vacuüm, mechanisch, magnetisch, met vision of andere sensoren in de grijper; voor elk handlingprobleem hebben we snel de juiste grijper samengesteld. Dit kunnen er natuurlijk ook meerdere met een wisselstation zijn. En uiteraard zijn ook oplossingen met meerdere easyEyes mogelijk.”

Waarom Teqram er als één van de weinige partijen in Nederland wel in slaagt complete robotvisionprojecten turnkey te leveren? “Testen, testen en nog eens testen. En goed werkgeverschap natuurlijk. Want zonder de juiste mensen met de juiste kennis begin je natuurlijk weinig.” Tollenaar legt uit dat elke productiecel voor dat hij de deur uit gaat eerst volledig in Zwolle worden opgebouwd. Pas nadat alles grondig is doorgelicht en afgevinkt, mag hij de deur uit. “We willen absoluut geen verrassingen tijdens installatie bij de klant. Daar moet de impact op de productie tot een absoluut minimum worden beperkt.”

Zijn het tot slot alleen metaalklanten die bij Teqram terechtkunnen? “Nee, absoluut niet!”, verzekert Tollenaar. “We krijgen juist steeds meer klanten van buiten de metaal die de robuustheid, het gebruikersgemak en de turnkey-aspecten waarderen. Dus heb je een robotvisionprobleem? Leg het bij ons neer. We gaan dan eerst kijken of het überhaupt kan en als we na testen concluderen dat dit het geval is, dan gaan we ervoor!”

 


Praktijkvoorbeelden

Een typisch easyEye-project dat onlangs is gerealiseerd, is het beladen en ontladen van richtmachines. Dit is lastig te automatiseren: je weet op voorhand niet precies hoe de doorbuiging is. Soms moet een onderdeel maar één keer door de machine, soms drie keer. En soms moet het onderdeel ook tussentijds gedraaid worden voordat het wordt afgelegd. Of dit het geval is en hoeveel graden wordt bepaald door het meetsysteem in de richtmachine. Naast het kunnen herkennen van niet-gepositioneerde onderdelen op een europallet of balken die gewoon op de grond liggen, moest het systeem kunnen omgaan met lastige lichtcondities en hele specifieke grijpereisen.

Een tweede, recentelijk opgeleverd project betreft het beladen vaneen dieptrekpers met binpicken. Uit een bak, die niet immuun bleek voor heftrucks, lagen de onderdelen schots en scheef. Hier zijn twee easyEyes toegepast. Eén voor het controleren van de oriëntatie van gatenpatronen in de op te pakken onderdelen, een tweede voor het correct afleggen in de pers.

 

Enkele easyEye-specificaties


Camera
Sensor: 1920 x 1080, WDR
Signaal systeem: 1080p/60
Lens: tot 10x optische zoom

Bereik
Pan: Azimuth range >270°
Tilt: Elevation >150°
Afstand: tot 300 meter

Bediening: Toetsenbord of muis
Software: Plug & Play via USB, met vele voor geïnstalleerde modules
Besturingssysteem: EasyFlexibleFramework (EFF) op basis Lua en C++
Robot interfacing: Robot Driver Modules (API) voor alle bekende robotmerken
Netwerk: easyEye® zet eigen WLAN met WPA2 op -met DHCP of static IP en een ongelimiteerd aantal cliënts
Voeding: 24 V
Beschermingsgraad: IP 45 / IP 57
HMI / UI: Live beeld met projectinformatie