Ontwerp van een visiesysteem voor de kwaliteitscontrole van een autozetel veringsysteem Studiegebied Industriële wetenschappen en technologie Opleiding Master of Science in de industriële wetenschappen: elektrotechniek Afstudeerrichting Automatisering Academiejaar 2011-2012
Thomas Decraene
II
Ontwerp van een visiesysteem voor de kwaliteitscontrole van een autozetel veringsysteem Studiegebied Industriële wetenschappen en technologie Opleiding Master of Science in de industriële wetenschappen: elektrotechniek Afstudeerrichting Automatisering Academiejaar 2011-2012
Thomas Decraene
III
Voorwoord Voor het behalen van mijn Master of Science in de industriële wetenschappen is het tot een goed einde brengen van mijn masterproef een bekroning van vier jaar hard werken. Gelukkig heb ik beroep kunnen doen op een aantal mensen die mij hebben bijgestaan gedurende het volledige jaar. In de eerste plaats zou ik graag Björn Vansteenkiste, mijn externe promotor, en Kris Haumont, medewerker in Pullmaflex, willen bedanken voor hun steun en medewerking. Zonder hen en de firma Pullmaflex was deze masterproef niet mogelijk geweest. Evenzeer zou ik graag mijn interne promotor, Isabel Sweertvaegher willen bedanken omdat ze altijd klaar stond met raad en daad. Ook had ik graag nog Tor-Björn Johansson van de firma Phaer bedankt, die mij meer inzicht gaf omtrent visiesystemen en de mensen van de afdeling machinebouw voor de uitstekende sfeer, iets wat belangrijk is in tijden van stress. Als laatste zeg ik ook nog dankjewel aan mijn ouders, familie, vrienden en mijn vriendin Thea voor de mentale steun en het entertainment. Dit jaar werden heel wat nieuwe paden bewandeld. De studie, het ontwerpen, programmeren, het testen, kortom het tot stand laten komen van een visiesysteem brengt heel wat werk met zich mee. Er werd heel wat tijd in geïnvesteerd, iets wat zich uiteindelijk laat vertalen in deze thesis. Veel leesplezier! Thomas Decraene 30/06/2012 I
Abstract The company Pullmaflex, located in Wevelgem, produces car seat spring systems for the car manufacturing industry. An essential component of this spring system is a wire grid. This grid is made of several steel wires folded together. Nowadays every two hours a quality check is done to adjust the production process if needed. This quality check is done by the operators who control the machines. They use calibres, and callipers, a time consuming process which also causes a big standard deviation. Pullmaflex wants to automate this quality check by using a vision system. The goal of this master thesis is to investigate the possibility to design a vision system according to the requirements of the company concerning precision, flexibility and exchange of data. In a first stage, a theoretical research was done to find out what components are used for a vision system. That includes camera’s, lenses, exposure and software. Based on that knowledge a few systems were researched such as the use of a robot, several camera’s, a stereo vision setup with 3 dimensional measurement and a line scanner. Depending on flexibility, feasibility and the costs the stereo vision setup was chosen. Because the company already has some vision systems, it was logic to use the same software (Halcon). This software had to be learned. In a second stage, a test setup was build to test some programs and to find the limitations of a stereo vision setup. However this test setup was not sufficient so a final setup was created. With this setup the measurements of the wire grid were verified. The setup made it possible to investigate the requirements and to help Pullmaflex in the search for an automated quality test.
II
Inhoudstafel VOORWOORD .................................................................................................................................................. I ABSTRACT....................................................................................................................................................... II INHOUDSTAFEL ........................................................................................................................................ III FIGUREN .......................................................................................................................................................... VI TABELLEN ................................................................................................................................................... VIII WOORDENLIJST .......................................................................................................................................... IX 1
INLEIDING .................................................................................................................................................. 1
1.1. Het bedrijf ................................................................................................................................................. 1 1.2. Situering .................................................................................................................................................... 2 1.3. Doelstelling ............................................................................................................................................... 3 1.4. Productomschrijving.................................................................................................................................. 4
2
VISIE ............................................................................................................................................................. 5
2.1. Machinevisie ............................................................................................................................................. 5 2.2. Visiesysteem ............................................................................................................................................. 5 2.3. De camera ................................................................................................................................................. 5 2.3.1. Sensor........................................................................................................................................................ 6 2.3.1.1. CCD ..................................................................................................................................................... 6 2.3.1.2. CMOS.................................................................................................................................................. 6 2.3.1.3. Blooming ............................................................................................................................................ 7 2.3.2. De lens ....................................................................................................................................................... 7 2.3.2.1. Inleiding .............................................................................................................................................. 7 2.3.2.2. Lensafwijkingen .................................................................................................................................. 8 2.3.2.3. Lenseigenschappen ............................................................................................................................ 9 2.3.2.4. Parameters ....................................................................................................................................... 11 2.4. Belichting ................................................................................................................................................ 12 2.4.1. Soorten verlichting .................................................................................................................................. 13 2.4.1.1. Fluorescentielamp ............................................................................................................................ 13 2.4.1.2. Halogeenlamp .................................................................................................................................. 13 2.4.1.3. LED ................................................................................................................................................... 13 III
2.4.2. Belichtingstechnieken ............................................................................................................................. 14 2.4.2.1. Back Lighting of achtergrondbelichting............................................................................................ 14 2.4.2.2. Full bright field lighting of Diffuse lighting of indirecte belichting ................................................... 14 2.4.2.3. Partial bright field lighting of directe belichting .............................................................................. 15 2.4.2.4. Dark field lighting ............................................................................................................................. 15 2.5. Software .................................................................................................................................................. 16
3
VOORSTUDIE VAN VISIESYSTEMEN............................................................................................. 17
3.1. Inleiding .................................................................................................................................................. 17 3.2. Kalibreren................................................................................................................................................ 17 3.3. Visiesystemen ......................................................................................................................................... 18 3.3.1. De robot .................................................................................................................................................. 18 3.3.2. Meerdere vaste camera’s ....................................................................................................................... 20 3.3.3. Stereo visie .............................................................................................................................................. 22 3.3.4. 3D line scanner ........................................................................................................................................ 23 3.3.4.1. Time-of-flight ................................................................................................................................... 23 3.3.4.2. Triangulation .................................................................................................................................... 24 3.4. Conclusie ................................................................................................................................................. 25
4
UITVOERING........................................................................................................................................... 26
4.1. Inleiding .................................................................................................................................................. 26 4.2. Testopstelling .......................................................................................................................................... 26 4.3. Definitieve opstelling .............................................................................................................................. 27 4.3.1. Opstelling ................................................................................................................................................ 27 4.3.1.1. Camera’s .......................................................................................................................................... 27 4.3.1.2. Lenzen .............................................................................................................................................. 28 4.3.1.3. Frame ............................................................................................................................................... 29 4.3.1.4. Belichting.......................................................................................................................................... 30 4.3.1.5. Randapparatuur ............................................................................................................................... 30 4.4. Software .................................................................................................................................................. 31 4.4.1. Halcon ..................................................................................................................................................... 31 4.4.1.1. Program Editor ................................................................................................................................. 31 4.4.1.2. Operator Window ............................................................................................................................ 32 4.4.1.3. Graphics Window ............................................................................................................................. 33 4.4.1.4. Variable View ................................................................................................................................... 33 4.4.2. Kalibratie ................................................................................................................................................. 34 4.4.2.1. Kalibratiebeelden ............................................................................................................................. 34 4.4.2.2. Kalibreren ......................................................................................................................................... 35 4.4.3. 3D meten ................................................................................................................................................. 37 4.5. Metingen ................................................................................................................................................. 41 IV
4.5.1. MSA ......................................................................................................................................................... 41 4.5.2. Metingen op matten ............................................................................................................................... 43 4.6. Resultaten ............................................................................................................................................... 50
5
BESLUIT ................................................................................................................................................... 53
BRONNEN ...................................................................................................................................................... 55 BIJLAGEN....................................................................................................................................................... 57
V
Figuren Figuur 1: Situering van een mat in een autozetel.................................................................................................... 4 Figuur 2: Toepassing van machinevisie ................................................................................................................... 5 Figuur 3:Toepassing van OCR .................................................................................................................................. 6 Figuur 4: Werking CCD – CMOS............................................................................................................................... 7 Figuur 5: Sferische afwijking ................................................................................................................................... 8 Figuur 6: Chromatische afwijking............................................................................................................................ 9 Figuur 7: Brandpuntsafstand voor divergerende en convergerende lens ............................................................... 9 Figuur 8: Dept of field............................................................................................................................................ 10 Figuur 9: Field of view ........................................................................................................................................... 11 Figuur 10: Belichtingstechnieken .......................................................................................................................... 12 Figuur 11: Toepassing van belichting op een glanzend product ........................................................................... 12 Figuur 12: Back lighting......................................................................................................................................... 14 Figuur 13: Full bright field lighting ........................................................................................................................ 14 Figuur 14: Partial bright field lighting ................................................................................................................... 15 Figuur 15: Dark field lighting ................................................................................................................................. 15 Figuur 16: Kalibratieplaat ..................................................................................................................................... 17 Figuur 17: Toepassing van visie met behulp van een robot .................................................................................. 18 Figuur 18: Positioneren van de camera ten opzichte van het product .................................................................. 19 Figuur 19: Meetkundige oplossing van meetfouten.............................................................................................. 19 Figuur 20: Opstelling met meerdere camera's ...................................................................................................... 21 Figuur 21: Vereenvoudigde voorstelling van stereo visie ...................................................................................... 22 Figuur 22: Principe van triangulation .................................................................................................................... 24 Figuur 23: Testopstelling ....................................................................................................................................... 26 Figuur 24: Definitieve opstelling............................................................................................................................ 27 Figuur 25: Positionering van de camera’s ............................................................................................................. 28 Figuur 26: Frame van het visiesysteem ................................................................................................................. 29 Figuur 27: Opstelling van de belichting ................................................................................................................. 30 Figuur 28: Randapparatuur voor het visiesysteem ............................................................................................... 30 Figuur 29: Programmeeromgeving van Halcon .................................................................................................... 31 Figuur 30: Program Editor ..................................................................................................................................... 32 Figuur 31: Operator Window ................................................................................................................................ 32 Figuur 32: Graphics Window ................................................................................................................................. 33 Figuur 33: Variable View ....................................................................................................................................... 33 Figuur 34: Een serie kalibratiebeelden .................................................................................................................. 34 Figuur 35: Opbouw van een kalibratie .................................................................................................................. 35 Figuur 36: Opbouw van 3D-model ........................................................................................................................ 38 Figuur 37: Overeenkomstige punt zoeken............................................................................................................. 39 Figuur 38: Opmeten van een schuifmaat in verschillende posities ....................................................................... 41 Figuur 39: Verschil qua opening van een schuifmaat ........................................................................................... 42 Figuur 40: Overzicht van de uitgevoerde metingen .............................................................................................. 43 Figuur 41: Aanduiding van de draden voor meting 1 ............................................................................................ 44 Figuur 42: Meting 1 ............................................................................................................................................... 45 Figuur 43: Meting 2 ............................................................................................................................................... 46 Figuur 44: Meten met behulp van een aanslagblokje ........................................................................................... 46 Figuur 45: Aanduiding van de draden voor meting 3a .......................................................................................... 46 Figuur 46: Meting 3a – plooi ................................................................................................................................. 47 VI
Figuur 47: Meting 3a ............................................................................................................................................. 47 Figuur 48: Meting 6 ............................................................................................................................................... 48 Figuur 49: Figuur ter visualisatie van de cosinusregel........................................................................................... 48 Figuur 50: Aanduiding van de draden voor meting α............................................................................................ 49 Figuur 51: Meting α............................................................................................................................................... 49 Figuur 52: Inklemmen van de mat ........................................................................................................................ 51 Figuur 53: Het effect van een korte centerlijn ....................................................................................................... 52
VII
Tabellen Tabel 1: Diafragmagetallen .................................................................................................................................. 10 Tabel 2: Eigenschappen van het visiesysteem bekomen door middel van kalibratie ............................................ 37 Tabel 3: Metingen voor MSA-test ......................................................................................................................... 42 Tabel 4: Overzicht van de uitgevoerde metingen.................................................................................................. 44 Tabel 5: Analyse van de uitgevoerde metingen .................................................................................................... 50 Tabel 6: Verschillen tussen de metingen onderling ............................................................................................... 52
VIII
Woordenlijst SPC: MSA: OCR: CCD: CMOS: DOF: FOV: Led: 2D: 3D:
Statistic Process Control Measurement System Analysis Optical Character Recognition Charge Coupled Device Complementary Metal-Oxide Semiconductor Dept of Field Field of view Light Emitting Diode Twee dimensionaal Driedimensionaal
IX
1
Inleiding
1.1. Het bedrijf Pullmaflex is onderdeel van de ‘Leggett & Platt Automotive Group’ en werd in 1994 in de groep opgenomen. In de vestiging van Pullmaflex te Wevelgem worden veringsystemen voor autozetels geproduceerd, bedoeld als steun in autozetels voor zowel de rug als het zitvlak. Dergelijk veringsysteem is een vlechtwerk van staaldraad en wordt op de werkvloer een ‘mat’ genoemd. Doordat elk automerk naar een nog hoger comfort streeft bij elk nieuw type wagen, moet voor elk nieuw type wagen een nieuwe mat ontwikkeld worden. Pullmaflex produceert deze matten voor zowat het merendeel van de autoconstructeurs, goed voor een jaarlijkse omzet van meer dan 25 miljoen euro. Naast het produceren van matten bevindt zich in Wevelgem ook de afdeling machinebouw die de machines ontwikkelt en bouwt voor verschillende vestigingen van Leggett & Platt wereldwijd. Deze machines worden enkel binnen de groep gebruikt en worden dus niet gecommercialiseerd. Het is in deze afdeling van Pullmaflex dat deze masterproef doorgaat. Overzicht van de groei van Leggett & Platt Automotive Group tot op de dag van vandaag [1] 1985 1988 1994 2000 2002 2003 2004 2005 2006 2007
Oprichting van Leggett & Platt Automotive Group Verwerven van Flex-O-Lators, Carthage, Missouri Verwerven van Pullmaflex, Wevelgem, België Verwerven van Schukra Group Verwerven van Pneumatic Technology Oprichting van 3 JVs in China en 1 in Korea Leggett & Platt Wire Forms Hungary, Tarjan, Hongarije Uitbreiding naar L&H Guangzhou Verwerving van Korea JV, L&K Oprichting van L&I (JV in India)
1
1.2. Situering Omdat Pullmaflex een leverancier aan de auto-industrie is, moeten hun producten aan zeer strenge eisen voldoen. Dit gaat van de kwaliteit van de gebruikte materialen tot de afmetingen van hun producten. Om aan deze eisen te voldoen, worden de producten regelmatig via steekproeven gecontroleerd. Een vijftal matten van hetzelfde type worden volledig opgemeten met behulp van schuifmaten, kalibers, enz. Vervolgens worden deze gegevens verwerkt met een Statistic Process Control – programma (SPC) om de metingen ten opzichte van de toleranties te controleren. Op basis hiervan zal het programma al dan niet een melding geven tot het bijregelen van productieprocessen. Vooraleer er gemeten kan worden, wordt er een Measurement System Analysis (MSA) uitgevoerd. Measurement System Analysis MSA is een programma dat de gebruikte meetsystemen analyseert en quoteert. Dit programma houdt rekening met volgende zaken: -
meetmiddel: hier worden de nauwkeurigheid, de resolutie, enz. in acht genomen. meetmethode: repeatibility & reproducibility. repeatibility: de variatie van de metingen uitgevoerd door dezelfde operator en met hetzelfde meettoestel op hetzelfde stuk. reproducibility: de variatie van de metingen uitgevoerd door verschillende operatoren met hetzelfde meettoestel op hetzelfde stuk.
Het resultaat wordt procentueel weergegeven en is een indicatie of het gebruikte meetsysteem goed is. 0 – 10 % 10 – 20 % 20 – 30 % 30 – … %
zeer goed goed aanvaardbaar maar aanpassen indien mogelijk onaanvaardbaar
Een goed resultaat betekent correcte metingen, die worden geëist door klanten. Het bedrijf heeft er dus alle baat bij een zo laag mogelijke MSA – quotering te behalen. In Pullmaflex zijn er twee grote factoren die de MSA beïnvloeden: de operator en de flexibiliteit van de mat. Doordat in ploegverband bijna de klok rond geproduceerd wordt, moet er ook continu gecontroleerd worden. Een operator bedient een aantal productielijnen en controleert zelf de geproduceerde matten. Met drie ploegen betekent dit dat elk type mat gemiddeld door drie personen gecontroleerd wordt. Het probleem hierbij is de reproducibility van de meting. Een schuifmaat is dermate gevoelig dat het harder of zachter indrukken van de schuifmaat reeds een andere meting oplevert. Iedere persoon is verschillend en zal een schuifmaat dus anders hanteren. Een mat zelf bestaat uit veerstaaldraad en is dus zeer flexibel. Tijdens het meten moet de mat in verschillende posities vastgehouden worden. Door die flexibiliteit bestaat de kans dat de mat tijdens het meten tijdelijk vervormd wordt waardoor opnieuw een verkeerde meting ontstaat.
2
Statistic Process Control SPC is een statistische procescontrole die gebruikt wordt voor het controleren van een productielijn/bedrijf met behulp van een computerprogramma. Pullmaflex gebruikt dit om een voorspelling te doen wanneer een mat buiten tolerantie valt. Om dit te kunnen voorspellen worden elke twee uur vijf matten opgemeten door een operator. De resultaten worden onmiddellijk doorgestuurd naar het SPC-programma en verwerkt. Uit de metingen kan de standaardafwijking gehaald worden. Hoe kleiner deze standaardafwijking, hoe kleiner de variatie op de metingen en hoe beter het productieproces te regelen valt. Om nu te bepalen of een proces ontregeld is, kunnen een aantal parameters en voorwaarden worden ingevoerd. Zo kan een waarschuwing gegeven worden wanneer bijvoorbeeld na zeven opeenvolgende metingen de waarden stijgen, wat er dus kan op wijzen dat het proces ontregeld is.
1.3. Doelstelling Deze masterproef werd uitgeschreven om een oplossing te bieden voor de huidige problemen, met name de manier van meten. Om de reproducibility naar omlaag te helpen moet worden gezocht naar een systeem waarbij geen interactie is met operator. Binnen Pullmaflex werd beslist te kiezen voor een visiesysteem, omdat de kennis en technologie hieromtrent reeds aanwezig zijn. Het doel is om zo de meetvariatie te verkleinen zodat het bedrijf betere garanties kan bieden aan haar klanten inzake kwaliteitscontrole. Een tweede rechtstreeks gevolg van een visiesysteem is dat de operator geen tijd meer verliest om te meten. Interne bevindingen hebben aangetoond dat een operator gemiddeld 20 minuten nodig heeft om vijf matten volledig te controleren. Deze metingen gebeuren elke twee uur. Tijdens het meten kan de operator de machines niet bedienen waardoor deze kunnen stil liggen. Met een visiesysteem komt er dus meer tijd vrij om de machines te bedienen waardoor de productiviteit stijgt. Het visiesysteem moet aan een aantal eisen voldoen: -
Er is een minimale nauwkeurigheid van de metingen vereist: afstanden tot op 0,1mm, hoeken tot op 0,5°. Het meetstation moet de verschillende types matten kunnen opmeten door eenvoudige selectie van het type mat in de bedieningsoftware. Een nieuw productdesign moet op een eenvoudige manier kunnen toegevoegd worden in de database van het meetstation (geen programmeur vereist, eenvoudig configureerbaar). Het moet eenvoudig te kalibreren zijn (door de operator). De meetinformatie moet kunnen doorgegeven worden aan een SPC software.
Het tot een goed einde brengen van deze masterproef vereist het doorlopen van een aantal stappen: -
het aanleren van de huidige visiesoftware het kiezen van een visiesysteem na een grondige studie een testopstelling maken het uitwerken van een definitieve opstelling
3
1.4. Productomschrijving Alvorens een visiesysteem te kiezen, wordt eerst nagegaan wat moet worden opgemeten. Zoals reeds beschreven is een mat een vlechtwerk van veerstaaldraad dat met behulp van geplooide haken aan het frame bevestigd wordt (Figuur 1).
Figuur 1: Situering van een mat in een autozetel
Het volledig controleren van een mat houdt, afhankelijk van het type, volgende basismetingen in: -
de breedte op verschillende plaatsen de breedte tussen de onderste plooien de breedte van bepaalde specifieke plooien de lengte over de dwarsdraad op verschillende plaatsen de dikte van de lange haken de lengte van de haken de vorm van de haken de ligging van de haken de uiteinden van de middelste draad de vorm van de plooien
Daarnaast heeft elk type mat nog zijn eigen specificaties die ook moeten gecontroleerd worden. Een gedetailleerde beschrijving van de metingen is te vinden in bijlage 1 waar drie types zijn weergegeven.
4
2
Visie
2.1. Machinevisie Machinevisie is een overkoepelende term om verschillende soorten industriële visiesystemen te bundelen. Het is duidelijk dat bewakingscamera’s een visiesysteem zijn maar niet tot de machinevisie mag gerekend worden. Machinevisie wordt vandaag de dag veelvuldig gebruikt in alle takken van de industrie voor het aansturen van machines, robots, ed. maar ook voor het controleren van producten. Met behulp van een visiesysteem worden beelden genomen en verwerkt. De verkregen informatie wordt vervolgens doorgestuurd naar een overkoepelend systeem dat gepast ingrijpt. In het geval van figuur 2 wordt het niveau van een flesje gecontroleerd. Is het volume te hoog of te laag, dan wordt dit product uit productie genomen. [2]
Figuur 2: Toepassing van machinevisie
2.2. Visiesysteem Een visiesysteem is een systeem om beelden te maken en te verwerken. Het spreekt voor zich dat een visiesysteem een combinatie is van een aantal onderdelen die zodanig zijn ingesteld dat een optimale werking verkregen wordt. De belangrijkste van deze onderdelen zijn: -
de camera de software de belichting
2.3. De camera De camera is het toestel dat de opnames maakt, het is dus een cruciaal element in het visiesysteem. Voor het verwerken van de beelden kunnen twee types camera’s onderscheiden worden. Er zijn de ‘intelligente’ camera’s die een zekere intelligentie bezitten. Hierbij zijn een aantal metingen of ‘features’ meegeleverd die in de camera kunnen geladen worden. Dit betekent dat de camera de beelden maakt en verwerkt. Er is dus geen bovenliggende verwerkingssoftware nodig.
5
Zo kan bijvoorbeeld Optical Character Recognition (OCR) meegeleverd worden, het herkennen van karakters zoals letters, cijfers, symbolen enz. Met behulp van bijgeleverde software kan de camera karakters aangeleerd worden. Deze intelligentie wordt vervolgens in de camera geladen waarna de camera op zelfstandige basis, dus zonder de bijgeleverde software, karakters herkent. Zo zal in figuur 3 de camera in plaats van een beeld, de combinatie ‘010894’ uitsturen.
Figuur 3:Toepassing van OCR
Naast de ‘intelligente’ camera’s zijn er ook nog de ‘niet-intelligente’ camera’s of framegrabbers. Dit zijn camera’s die beelden maken en waarbij software nodig is om de beelden te verwerken. In het voorbeeld met OCR (Figuur 3) zal de camera het beeld doorsturen naar een softwarepakket. Het zal de software zijn die vervolgens de combinatie ‘010894’ uit het beeld haalt. De camera zelf bestaat uit twee onderdelen, de sensor en de lens.
2.3.1. Sensor Sensoren hebben één bedoeling: licht omzetten in een elektrische lading. Een sensor bestaat uit een aantal pixels, verticaal en horizontaal gerangschikt. In deze pixels wordt licht omgezet in een elektrische lading en uiteindelijk ontstaat hieruit een digitaal beeld. Het opvangen en het verwerken van licht kan op twee manieren gebeuren waardoor er twee types sensoren op de markt zijn: CCD-sensoren en CMOS-sensoren.
2.3.1.1. CCD CCD of Charge Coupled Device. Alle lichtfotonen die op de sensor invallen, worden omgezet in een elektrische lading en opgeslagen in condensatoren. Deze elektrische ladingen worden via een beperkt aantal uitgangspunten uitgelezen, in de meeste gevallen zelfs beperkt tot één. Elke lading wordt pixel per pixel naar dit punt getransporteerd waar de lading wordt omgezet in een spanning zoals in figuur 4 wordt aangetoond. Met een analoog-digitaal omzetter wordt dit signaal geconverteerd naar een digitaal signaal waarna met dit signaal een digitaal beeld gecreëerd wordt.
2.3.1.2. CMOS CMOS of Complementary Metal-Oxide Semiconductor. Hier vallen alle lichtfotonen in op fotodioden. Deze zetten de elektrische lading om naar spanning. Ook bij CMOS sensor worden de ladingen via een beperkt aantal uitgangspunten uitgelezen, ook meestal beperkt tot één punt. Het grote verschil is dat elke pixel rechtstreeks met dit punt verbonden is. In figuur 4 is elke pixel verbonden met een kanaal, de zwarte banen tussen de pixels, waarbij alle kanalen op het uitgangspunt zijn aangesloten. Het signaal moet dus niet over elke pixel getransporteerd worden zoals dit bij CCD wel het geval is.
6
Figuur 4: Werking CCD – CMOS
2.3.1.3. Blooming Bij zowel de CCD- als de CMOS-sensor moet rekening gehouden worden met het effect ‘blooming’. De hoeveelheid lading die een pixel kan opslaan is beperkt. Wanneer teveel licht op de pixel invalt, bestaat de kans dat deze de elektrische lading niet meer kan opslaan. Wanneer dit gebeurt, vloeit de lading naar de naastgelegen pixel. Hierdoor ontstaat een witte halo of een verticale streep die zich over een afstand van enkele pixels uitstrekt. Bovendien wordt het effect van chromatische aberratie (zie 2.3.2.2. ) versterkt. Blooming kan veroorzaakt worden bij overbelichting of bij een scherpe en abrupte overgang tussen donker en licht. Bij het meten, moet rekening gehouden worden met dit effect omdat de effectieve randen door deze halo kunnen bedekt zijn waardoor de rand zich schijnbaar ergens anders bevindt. Indien de desbetreffende meting gebruik moet maken van de rand, dan zal de meting niet correct zijn. De keuze tussen CCD-sensor en CMOS-sensor zal in de meeste gevallen prijsafhankelijk zijn. De CMOS-sensor zal over het algemeen goedkoper zijn doordat de productiemethode eenvoudiger is. CCD-sensoren zijn iets meer lichtgevoelig waardoor deze vaak hun toepassing vinden in de fotografie. CMOS-sensoren daarentegen zijn iets sneller qua beeldverwerking wat een belangrijke factor kan zijn in industriële toepassingen. [4][5]
2.3.2. De lens 2.3.2.1. Inleiding Een lens is een optisch element, meestal bestaande uit glas of transparant kunststof waarmee lichtstralen 1 2 gedivergeerd of geconvergeerd kunnen worden. Het merendeel van de lenzen zijn sferische lenzen, lenzen met twee bolle oppervlakken (Figuur 5). Met deze lenzen kunnen beelden vergroot of verkleind geprojecteerd worden op de sensor. De mate van de vergroting (S) is omgekeerd aan de brandpuntsafstand f (zie 2.3.2.3. ). [5][6]
= 1 2
(2.1)
Divergeren: na het invallen op een lens bewegen de lichtstralen zich van elkaar weg. Convergeren: na het invallen op een lens bewegen de lichtstralen zich naar elkaar toe. 7
Asferische lenzen daarentegen zijn lenzen waarbij één of beide vlakken van de lens niet-sferisch is. Het gebruiken van meerdere lenzen samen wordt vaak een objectief genoemd.
2.3.2.2. Lensafwijkingen Spherical aberration of sferische afwijking Lenzen zijn niet perfect en brengen een aantal afwijkingen met zich mee. Een van de belangrijkste is de sferische afwijking. Een bolvormige lens heeft in werkelijkheid geen perfect brandpunt zoals in figuur 5 wordt aangetoond. Dit heeft als gevolg dat het beeld niet scherp zal zijn. Deze afwijking kan tegengaan worden door meerdere lenzen na elkaar te plaatsen. Dit kan door zowel meerdere sferische lenzen met elkaar te combineren of door sferische en asferische lenzen te combineren. [7]
Figuur 5: Sferische afwijking
Chromatical aberration of chromatische afwijking Een andere afwijking is de chromatische afwijking. Deze afwijking ontstaat doordat de golflengtes van verschillende kleuren niet op eenzelfde manier worden afgebogen in de lens. Daardoor zullen de brandpunten van de verschillende golflengtes niet samenvallen. Dit uit zich vooral in een verkleuring van de randen en het wazig worden van de afbeelding. Ook dit kan gecorrigeerd worden door een lens te combineren met een achromatische lens die de afwijking tegengaat. Figuur 6(a) toont een schematische tekeningen van een chromatische afwijking bij een sferische lens. De figuur eronder toont aan welk effect dit heeft op een afbeelding van de maan. Figuur 6(b) is een schematische tekening van diezelfde lens samen met een achromatische lens met daaronder het resultaat. [8]
8
(a)
(b)
Figuur 6: Chromatische afwijking
2.3.2.3. Lenseigenschappen Een lens heeft een aantal eigenschappen waarmee rekening moet gehouden worden. In dit hoofdstuk worden de belangrijkste besproken. [5][9][10][11] Brandpuntsafstand De brandpuntsafstand f is de afstand tussen de lens en het punt waar de evenwijdig ingevallen stralen samenkomen en bevindt zich op de optische as van de lens. Op figuur 7(b) zijn twee evenwijdige lichtstralen te zien die invallen op een convergerende lens en na een afstand f samenkomen in het brandpunt. Een divergerende lens heeft een fictief brandpunt. Figuur 7(a) toont het fictieve brandpunt voor een divergerende lens. Na het invallen van de lichtstralen op de lens bewegen de stralen zich van elkaar weg. Het brandpunt is het punt vanwaar de divergerende lichtstralen schijnbaar vandaan komen.
(a)
(b)
Figuur 7: Brandpuntsafstand voor divergerende en convergerende lens
9
Dept of Field (DOF) Dept of Field (DOF) verwijst naar de afstand in de ruimte waarbij het voorwerp met een aanvaardbare scherpte wordt afgebeeld. Slechts vanaf een bepaalde minimale afstand zal een voorwerp duidelijk worden afgebeeld. Ook bestaat er een maximale afstand. Wordt deze afstand overschreden, dan wordt het voorwerp wazig afgebeeld. De afstand tussen de minimale en maximale afstand is de dept of field (Figuur 8).
Figuur 8: Dept of field
F-number F-number of diafragmagetal (f/#) is de verhouding van de brandpuntsafstand f op de effectieve diameter van het diafragma (D) f⁄# =
(2.2)
Het diafragma is de opening van de lens waardoor het licht invalt op de sensor. Het diafragma heeft zijn centerpunt op de optische as van de lens en bepaalt hoeveel licht doorgelaten of tegengehouden wordt. Hoe kleiner het diafragma, hoe meer de DOF toeneemt. Tabel 1: Diafragmagetallen
F-Number F/1 F/1,4
F/2 F/2,8
F/4 F/5,6
F/8 F/11
F/16
F/22
F/32
F/45
Voor een diafragmagetal van F/2 uit tabel 1 [6] en een brandpuntsafstand van 50 mm, zal de diameter van het diafragma 25 mm zijn. Het diafragmagetal heeft een invloed op drie belangrijke zaken: -
de helderheid van het beeld de ‘depth of field’ de resolutie van de lens
10
2.3.2.4. Parameters Aan de hand van een aantal parameters kan de lens gekozen worden. In dit hoofdstuk worden de belangrijkste besproken. [5][9][10] Field of view (FOV) Dit is de omgeving die op de sensor geprojecteerd wordt via de lens. Het zichtveld van een camera heeft beperkte afmetingen. De FOV is zeer afhankelijk van de afstand van het voorwerp tot de lens. Hoe dichter het voorwerp, hoe kleiner de FOV. Hoe verder het voorwerp, hoe groter de FOV. Deze parameter is belangrijk voor de nauwkeurigheid waarmee de afbeelding kan worden geprojecteerd. Ter illustratie: indien een voorwerp van 10 cm breed de helft van het beeld inneemt dan kan gesteld worden dat de FOV 20 cm breed is. Is dit voorwerp niet 10 cm maar bijvoorbeeld 10 m, dan zal de FOV 20 m zijn. De resolutie is een maat voor de nauwkeurigheid en wordt uitgedrukt in mm/pixel. Dit betekent dat voor een sensor met een breedte van 1000 pixels en een FOV van 1000 mm breed, een sensor tot op één mm nauwkeurig kan meten. Voor een FOV van 10000 mm breed betekent dit echter dat dezelfde sensor maar tot op 10 mm nauwkeurig kan meten. Working distance of werkafstand De werkafstand is de afstand van het voorwerp tot de lens. Deze afstand is vaak afhankelijk van de toepassing, vaak moet voldoende ruimte tussen het voorwerp en de lens gelaten worden omdat machines, gereedschappen, enz. deze ruimte nodig hebben om een bewerking uit te voeren. Natuurlijk moet er voor gezorgd worden dat het voorwerp binnen de DOF ligt. Deze afstand bepaalt eveneens de FOV (Figuur 9).
Figuur 9: Field of view
11
2.4. Belichting Belichting is bijna even belangrijk als de camera zelf. Afhankelijk van de vereisten, kan met de belichting gespeeld worden om bepaalde zaken te accentueren. Hierdoor is het beeld betrouwbaarder en gemakkelijker te verwerken door beeldverwerkingsoftware. De verwerkingssoftware mag nog perfect werken, zonder een goede belichting zal deze waardeloos zijn. In figuur 10 moeten de cijfers onderscheiden kunnen worden uit de rest van het beeld. Dit kan bijvoorbeeld door het contrast te verhogen met belichting. Figuur 10(a) toont een voorbeeld van diffuse belichting, (b) een voorbeeld van directe belichting (zie 2.4.2. ).
(b)
(a)
Figuur 10: Belichtingstechnieken
Het is dus belangrijk dat een juiste belichting wordt gebruikt. Om deze te kiezen, wordt rekening gehouden met een aantal eigenschappen van het product: -
Is het oppervlak effen, oneffen, gebogen? Is het oppervlak mat of glanzend? Wat is de kleur van het oppervlak? Is het een bewegend of een statisch voorwerp?
Aan de hand van deze eigenschappen kan de correcte belichting gekozen worden. Echte richtwaarden bestaan niet, maar meestal wordt op basis van ervaring en/of trial and error de belichting gekozen. De manier van belichten, de intensiteit van de lichtbron en de lichtkleur zijn daarbij belangrijke factoren. [12][13][14] Figuur 11 toont de onderkant van een blikje frisdrank. Het is een hol, glanzend oppervlak waarvan de letters moeten worden afgelezen. Figuur 11(a) toont het resultaat met een ‘partial bright field ringlight’ waarbij er niet in geslaagd wordt om de letters te onderscheiden van de achtergrond. In figuur 11(b) wordt gebruik gemaakt van een ‘diffuse light‘ waarbij het resultaat beduidend beter is. De aangehaalde termen komen in 2.4.2. aan bod.
(a)
(b)
Figuur 11: Toepassing van belichting op een glanzend product
12
Er bestaat een groot scala aan lichtbronnen maar slechts enkele daarvan worden frequent gebruikt voor visiesystemen [14]: Voor kleine applicaties: fluorescentielamp (TL) halogeenlamp LED - Light Emitting Diode Voor grote applicaties (niet van toepassing): metaalhalidelamp/ halogeenmetaaldamplamp xenon hoogdruknatriumlamp
2.4.1. Soorten verlichting 2.4.1.1. Fluorescentielamp De fluorescentielamp is een lamp gevuld met kwikdamp op lage druk. Wanneer een elektrische stroom (elektronen) botst met de elektronen van het gas, exciteren de gasmoleculen. Deze streven echter naar een lager energieniveau en geven hun energie terug af in de vorm van onzichtbare ultraviolette straling. Een laag coating aan de binnenkant van de lamp zet deze straling om in zichtbaar licht. Afhankelijk van het soort coating heeft dit licht een andere kleur. De bekendste toepassing is de TL-lamp. [15]
2.4.1.2. Halogeenlamp De werking van de halogeenlamp is bijna identiek als dat van een gloeilamp. Bij een gloeilamp wordt een elektrische stroom door een wolfraamdraad gestuurd. Deze draad warmt zodanig sterk op dat er licht (en warmte) wordt uitgezonden. Door deze verhitting zal het wolfraam geleidelijk verdampen en neerslaan op het glas waardoor het glas zwart wordt. De halogeenlamp is, in tegenstelling tot de gloeilamp, gevuld met een halogeengas. Dit gas zorgt ervoor dat het wolfraam van de gloeidraad bij verdamping door de warmte, terug neerslaat op de gloeidraad. Hierdoor wordt de levensduur langer en wordt de lamp minder snel zwart waardoor de lichtopbrengst langer gegarandeerd wordt. Door het gebruik van een infrarode coating worden de infrarode stralen in de lamp gehouden zodat deze de gloeidraad mee helpen opwarmen. Het gevolg is dat er minder energie nodig is om de draad op te warmen waardoor ook een hoger rendement wordt bekomen. [15]
2.4.1.3. LED LED of Light Emitting Diode is vrij vertaald een lichtgevende diode. De led bestaat uit twee halfgeleidermaterialen, met elk hun energieniveau, die samen een PN-junctie vormen met een anode en een kathode. Wanneer via de kathode een spanning wordt aangelegd, zullen elektronen van de elektronenbaan van de ene stof overgaan naar een lagere baan van de andere stof. Hierbij verliezen de elektronen energie in de vorm van licht. Een LED staat bekend om zijn uitstekende levensduur waardoor deze in veel toepassingen gebruikt wordt. [16] De soort belichting die gekozen wordt, draagt niet onmiddellijk bij tot de masterproef maar kan wel een factor zijn waarmee rekening moet gehouden worden in een productieomgeving. Bevindt de camera zich op een moeilijk te bereiken plaats of moet voor het vervangen van een kapotte belichting een machine stil gelegd worden, dan kan het belangrijk zijn om voor een duurzame belichting te kiezen. 13
2.4.2. Belichtingstechnieken 2.4.2.1. Back Lighting of achtergrondbelichting Zoals de naam reeds aangeeft, wordt vanuit de achtergrond belicht. Figuur 12 toont aan dat het voorwerp zich tussen de camera en de belichting bevindt. Het resultaat zal een beeld zijn waarop het voorwerp donker wordt afgebeeld op een heldere achtergrond. Hierdoor zullen de contouren van het voorwerp scherp afgebeeld worden. [12][14]
Voorwerp
Figuur 12: Back lighting
2.4.2.2. Full bright field lighting of Diffuse lighting of indirecte belichting De belichtingselementen bevinden zich tussen de camera en het voorwerp waarbij de belichting niet rechtstreeks op het voorwerp wordt gericht (Figuur 13). Deze manier van belichten wordt veel gebruikt bij glanzende oppervlaktes. Toepassingen van deze belichting zijn hemispherical dome (Figuur 13(a)) en cylinder or on-axis (Figuur 13(b)). Merk op dat voor deze manier van belichten de afstand voorwerp – belichting vrij klein moet zijn. [12][14]
belichtingselementen
Figuur 13: Full bright field lighting
14
2.4.2.3. Partial bright field lighting of directe belichting Dit is de meest toegepaste belichtingsmethode. Deze manier van belichten lijkt veel op deze van full bright field lighting maar in plaats van indirecte wordt directe belichting gebruikt. De belichtingselementen zijn rechtstreeks gericht op het voorwerp. Het voorwerp zal, in tegenstelling tot back lighting, helder worden afgebeeld. Wordt nu een donkere achtergrond gebruikt om het contrast tussen het voorwerp en de achtergrond zo groot mogelijk te maken, dan zullen de contouren van het voorwerp zeer duidelijk zijn. Deze manier van belichten wordt veel gebruikt voor het bepalen van afmetingen, detectie van bepaalde elementen, enz. Toepassingen van dit soort belichting zijn onder andere ringlight (Figuur 14(a)) en spotlight (Figuur 14(b)). [12][14]
(a)
(b)
Figuur 14: Partial bright field lighting
2.4.2.4. Dark field lighting Bright field lighting heeft als bedoeling dat de gebruikte verlichting rechtstreeks terug in de camera wordt opgevangen. Bij dark field lighting is dit niet de bedoeling. Het licht wordt onder een scherpe hoek op het voorwerp geprojecteerd zoals in figuur 15. Het licht wordt dus niet rechtstreeks opgevangen in de camera. Wel zullen de lichtstralen uiteen vallen door het niet effen zijn van het voorwerp. Het zullen deze lichtstralen zijn die op de sensor van de camera zullen invallen. Deze manier van verlichten is dus een goede manier om structuren te registreren. Dit soort belichting wordt ook gebruikt bij de verlichting van voertuigen waarbij de koplampen onder een scherpe hoek staan ten opzichte van het wegdek. [12][14]
Figuur 15: Dark field lighting
15
2.5. Software De software verwerkt, in het geval van ‘niet-intelligente’ camera’s, de verkregen beelden en stuurt de verkregen informatie door naar de gebruiker. De meeste fabrikanten van camera’s hebben hun eigen software maar er bestaat ook software die onafhankelijk is van deze fabrikanten. Voorbeelden van softwarepakketten zijn: Allied Vision Technologies, MVTec Software GmbH (Halcon), Cognex, NORPIX, enz. De mogelijkheden van dergelijke software zijn bijna onbeperkt: -
kleurinspectie OCR 2D meten/matching 3D meten/matching robot visie beveiliging …
Afhankelijk van de vereisten kunnen meerdere camera’s opgenomen worden in het programma. Ook is het mogelijk om de koppeling te maken naar de PLC en andere software zoals bijvoorbeeld Visual Basic. Pullmaflex werkt met Halcon, een visiesoftware die bij elk type camera kan gebruikt worden. Doordat in Pullmaflex reeds deze software aanwezig is, is het niet nodig om een afweging te maken tussen verschillende softwarepakketten. Het aanleren van dit softwarepakket is geen doelstelling op zich maar is een noodzaak om deze masterproef tot een goed einde te brengen.
16
3
Voorstudie van visiesystemen
3.1. Inleiding Een visiesysteem wordt veelal op maat gemaakt voor de klant waarbij moet worden meegedeeld wat het visiesysteem moet kunnen. Voor deze masterproef moeten een aantal zaken worden opgemeten, daarom wordt eerst een productstudie uitgevoerd (zie 1.4. ). Vervolgens kan niet zomaar een visiesysteem gekozen worden, er moeten een aantal pistes onderzocht worden want niet elk systeem is geschikt voor dit onderwerp. Niet alleen is de nauwkeurigheid van het systeem belangrijk, ook de flexibiliteit is belangrijk. Uit deze voorstudie zal blijken welke methodes haalbaar zijn en welke niet, en wat mogelijke problemen en oplossingen kunnen zijn. Een belangrijke factor daarbij is het kalibreren.
3.2. Kalibreren Cruciaal voor het meten met behulp van een visiesysteem is het kalibreren. Zoals reeds uitgelegd, brengen de meeste lenzen lensvervormingen met zich mee. Dit wordt opgelost door het kalibreren van de camera of het visiesysteem. Tijdens het kalibreren worden de cameraparameters, de mate waarmee het beeld vervormd is, bepaald. Deze worden opgenomen in een bestand dat later gebruikt wordt om te meten. Het kalibreren zelf gebeurt met behulp van een kalibratieplaat (Figuur 16). Dit is een witte plaat met zwarte randen en markeringen waarvan de afmetingen, diameters, tussenafstanden, enz. zijn opgenomen in een document dat wordt ingelezen door de software. Voor het ijken moeten een aantal beelden van deze kalibratieplaat genomen worden, waarbij de kalibratieplaat in verschillende posities wordt gehouden. Dit zijn de zogenaamde kalibratiebeelden. Een vereiste hierbij is dat de plaat 20 tot 25 procent van het beeld moet vullen. Vervolgens wordt een kalibratieprogramma doorlopen dat deze kalibratiebeelden gebruikt om de cameraparameters te bepalen. Eenmaal deze bepaald zijn, kan van een geijkte opstelling gesproken worden.
Figuur 16: Kalibratieplaat
Belangrijk is dat eenmaal de kalibratiebeelden genomen zijn, er niet meer aan de opstelling mag geraakt worden want er wordt gekalibreerd voor de huidige opstelling. Tijdens deze ijking worden een aantal cameraparameters bepaald. Het is dus logisch dat indien de opstelling verandert, ook deze parameters veranderen en dus een nieuwe kalibratie noodzakelijk zal zijn. [17][18][19] 17
3.3. Visiesystemen 3.3.1. De robot Een eerste mogelijke oplossing is het gebruik van een robot waarbij een camera op de arm bevestigd wordt (Figuur 17(a)). Voor elk type mat zal de robot een vooraf ingesteld traject afleggen. Telkens wanneer de arm zich op de juiste positie bevindt, wordt de software getriggerd en wordt een beeld genomen. Het grote voordeel is dat met een robot elk op te meten onderdeel optimaal in beeld kan worden gebracht. Moet een hoek opgemeten worden dan kan de camera loodrecht boven die hoek gepositioneerd worden. Grote afmetingen kunnen worden opgesplitst in een aantal beelden waarna softwarematig deze beelden tot één beeld gecompileerd kunnen worden. Een alternatief is de aparte beelden opmeten en de resultaten optellen. Bovendien kan de FOV klein worden gehouden omdat de camera dicht tot het product kan gebracht worden. Het gevolg hiervan is dat de resolutie minder groot hoeft te zijn waardoor de prijs van de sensor daalt. Toch weegt dit niet op tegen de kostprijs van een robot In het hoofdstuk omtrent kalibratie werd uitgelegd dat een visiesysteem moet gekalibreerd worden om te kunnen meten. Het probleem met een visiesysteem gemonteerd op een robotarm is dat het visiesysteem zich altijd in een andere positie zal bevinden. Op voorhand kalibreren kan dus niet. Een mogelijke oplossing is om kalibratiemarkeringen aan te brengen op de achtergrond van het volledige systeem. Zodanig dat telkens wanneer een beeld wordt gemaakt, enkele van die markeringen zichtbaar zijn op het beeld (Figuur 17(b)) waardoor dit beeld ook gebruikt kan worden om te kalibreren.
(a)
(b)
Figuur 17: Toepassing van visie met behulp van een robot
Om in dit geval een correcte meting te krijgen is het belangrijk dat de camera recht boven/ loodrecht voor het op te meten onderdeel gepositioneerd is omdat dit een pure twee dimensionale (2D) meting is. In figuur 18 wordt een haak opgemeten. De camera staat standaard gepositioneerd zoals zowel in figuur 18(c) en figuur 18 (d) te zien is. Figuur 18(c) geeft een situatie weer zonder productiefout waarbij de haak onder een hoek van 90° bevestigd is. Het vooraanzicht figuur 18(a) is correct en de gemeten lengte x zal overeenkomen met de werkelijke lengte. Figuur 18(d) geeft een situatie weer met een productiefout. De hoek is geen 90° maar 85°. Aangezien de robotarm standaard ingesteld staat, wordt geen rekening gehouden met een foute hoek. Uit het vooraanzicht (Figuur 18(b)) zal afgeleid worden dat de lengte x’ bedraagt terwijl dit in werkelijkheid x is.
18
(a)
(b)
(c)
(d)
Figuur 18: Positioneren van de camera ten opzichte van het product
Dit soort fouten kunnen opgelost worden door de positie van de robotarm afhankelijk te maken van de hoek. De hoek wordt opgemeten door loodrecht een beeld te maken en de hoek te meten waarna positieparameters van de robotarm worden aangepast. Een andere manier is het toepassen van meetkunde. Door de hoek α te meten (met behulp van de camera) uit figuur 19 is na het toepassen van de meetkundige rekenregel (3.1) uit te rekenen dat: = ⁄cos Met
(3.1]
a = de gemeten lengte, afgeleid uit het beeld dat de camera maakt b = de werkelijke lengte α = de hoekverschuiving door een mogelijke productiefout
Figuur 19: Meetkundige oplossing van meetfouten
Wat betreft de snelheid zal een robot een stuk sneller zijn dan een operator. De snelheid zal echter wel afhangen van de complexiteit van de mat. Een andere beperkende factor wat betreft de snelheid, is de verwerkingstijd bij de software. Bij elke positie moet gekalibreerd worden omdat de camera telkens van positie verandert. Om te meten tijdens de productie zal dit systeem niet snel genoeg zijn om elke geproduceerde mat op te meten. Als belichting kan een ringlight of spotlight gebruikt worden die naast de camera op de arm gemonteerd staat.
19
Het allergrootste nadeel aan een robot is de kostprijs. De aankoop ervan is niet goedkoop en bovendien moeten mensen in het bedrijf met een robot kunnen werken. Ook het toevoegen van een nieuw type mat kan kostelijk zijn want er moet telkens een nieuw traject geprogrammeerd worden. De tijd daarvoor nodig, is tijd waarin het meetstation niet kan gebruikt worden. De voordelen -
-
De camera kan in iedere gewenste positie gebracht worden waardoor maar één camera nodig is. Het gevolg hiervan is dat verwerkingsoftware vrij eenvoudig zal zijn. Per beeld zullen hoogstens enkele bewerkingen moeten gedaan worden. Elk type mat kan worden opgemeten waarbij enkel de reikwijdte van de robotarm een beperking is. De snelheid zal sneller zijn dan dat van een operator.
De nadelen -
-
Een robot is duur (robot, programmeur, enz.). Wanneer met een robot gewerkt wordt, moeten een aantal zaken in beschouwing genomen worden. De reikwijdte van een robot, wat een groot voordeel is, manifesteert zich ook in een aantal nadelen. Eerst en vooral moet een veilige zone afgebakend worden. Ook moet een chassis voorzien worden om deze robot veilig te verankeren. Dit zorgt er wel onmiddellijk voor dat het verplaatsen van het meetstation niet meer mogelijk is of veel werk inhoudt. Het kalibreren zal niet gemakkelijk te verwezenlijken zijn. De snelheid ten opzichte van andere visiesystemen zal waarschijnlijk een stuk lager zijn.
Conclusie Het plaatsen van een robot is een zeer flexibele oplossing waarbij waarschijnlijk elk type mat kan worden opgemeten binnen een redelijke tijd. Het gebruik van slechts één camera zal resulteren in een eenvoudig programma qua beeldverwerkingsoftware maar het gebruik van een robot voegt een extra complexiteit toe aan het geheel, namelijk de programmatie van de robot.
3.3.2. Meerdere vaste camera’s Een andere mogelijkheid is het plaatsen van meerdere camera’s op een frame, bij voorkeur op plaatsen waar iets moet gemeten worden. In feite is dit dezelfde manier als een visiesysteem gemonteerd op een robot, maar dan zonder robot. De robot plaatst de camera op elke plaats waar iets moet gemeten worden, bij dit systeem worden camera’s geplaatst op elke plaats waar iets moet gemeten worden. Om niet onnoemelijk veel camera’s te moeten plaatsen is de keuze van de FOV en de resolutie belangrijk. Er zal zeker moeten geprobeerd worden om meerdere zaken te meten met één camera. Figuur 20 geeft een mogelijke vereenvoudigde opstelling weer.
20
Figuur 20: Opstelling met meerdere camera's
Net als bij een visiesysteem met robot, zullen dezelfde problemen opduiken zoals bij het gebruik van een robot: door de flexibiliteit kunnen hoeken anders gepositioneerd zijn dan deze zouden werkelijk moeten zijn waardoor een vals beeld verkregen wordt. Hierbij is het echter niet mogelijk om de positie van de camera’s aan te passen en zal er dus een correctieberekening moeten worden gedaan. Het grote voordeel ten opzichte van een robot is de tijd om één mat op te meten. Er hoeft geen traject worden afgelegd, alle beelden kunnen gelijktijdig worden genomen. Het verwerken van de beelden kan langer duren omdat het programma iets complexer wordt doordat meerdere zaken moeten worden opgemeten per beeld. Aan de andere kant is het mogelijk om het systeem als geheel te kalibreren. Terwijl de robot bij het verwerken van elk beeld een kalibratie moet doorvoeren, hoeft het kalibreren van dit systeem maar één keer te gebeuren aangezien de camera’s vast staan opgesteld. Een ander voordeel is dat de kosten ten opzichte van een robot en alles daarrond (programmeren, beveiligingen, enz.) lager zullen zijn. Een zeer groot nadeel van dit systeem is het wegvallen van flexibiliteit. Bij een dergelijk systeem staan de camera’s ingesteld voor een bepaald type mat. Het opmeten van een ander type kan betekenen dat camera’s moeten bij- of verplaatst worden. De opstelling is veranderd, dus moet er opnieuw gekalibreerd worden. Dit visiesysteem is dus enkel toepasbaar voor één bepaald type mat. Natuurlijk biedt dit systeem wel 3 mogelijkheden voor in-line meten waarbij elke geproduceerde mat gecontroleerd zou kunnen worden. Eén productielijn produceert maar één type mat waardoor het visiesysteem maar één type mat moet meten. De keerzijde van medaille is echter dat indien elke lijn met dergelijk systeem wordt uitgerust, de kosten zeer groot zullen zijn door het grote aantal camera’s. Voordelen 3
De cyclustijd zal sneller zijn dan de cyclustijd van een robot. De kalibratie verloopt eenvoudig. Het zijn relatief eenvoudige programma’s waarbij enkel visiesoftware nodig is en geen software voor robots. Het is een eenvoudige constructie om de camera’s op te monteren waardoor het gemakkelijk te verplaatsen is of in te bouwen in de productielijn. Het is goedkoper dan een robot.
In-line meten: meten tijdens het productieproces. 21
Nadelen -
Het systeem biedt zeer weinig flexibiliteit. Er is een relatief groot aantal camera’s nodig om een volledige meting te kunnen uitvoeren. Bij onderhoud of onvoorzichtigheid bestaat de kans dat de positie van een of meerdere camera’s verandert, wat betekent dat opnieuw gekalibreerd moet worden.
Conclusie Het grote voordeel van dit systeem is dat de complexiteit van het te programmeren gedeelte vrij beperkt blijft. Ook kan de opstelling compact gehouden worden waardoor deze in de toekomst gemakkelijker te integreren is in een groter systeem. Echter een groot nadeel van deze oplossing is dat het niet flexibel is. Naar de toekomst toe is er geen zekerheid welke matten wel en niet kunnen worden opgemeten.
3.3.3. Stereo visie Een aantal camera’s wordt zodanig geplaatst dat een drie dimensionaal (3D) beeld kan gecreëerd worden. Om een 3D beeld te creëren, moet dat beeld ten minste vanuit twee verschillende aanzichten gemaakt worden. Met andere woorden moet het beeld overlapt worden door minstens twee camera’s naar analogie met het menselijk oog. Een mens is in staat om met twee ogen diepte of dus in 3D te zien doordat elk oog vanuit een andere punt kijkt. Er is sprake van stereo visie. Vervolgens kan met behulp van de juiste software een 3D beeld gemaakt worden. Een 3D beeld wordt opgebouwd vanuit twee of meerdere overlappende 2D beelden waaruit hun overeenkomstige punten worden gezocht waarna deze punten gereconstrueerd worden in de ruimte. Het resultaat is een 3D beeld waarmee verder kan gewerkt worden. Figuur 21 geeft een vereenvoudigde voorstelling weer van hoe stereo visie in zijn werk gaat.
Figuur 21: Vereenvoudigde voorstelling van stereo visie
Er kunnen echter een aantal problemen ontstaan in verband met het opbouwen van het 3D beeld. Een mogelijk probleem kan het in beeld brengen zijn van de haken, zoals in figuur 21(1). Onder de haken zit nog vrije ruimte die mogelijk niet gezien wordt of niet goed in beeld wordt gebracht. Een extra camera die haaks staat gericht op de haken kan dit misschien oplossen maar het verhoogt wel de complexiteit van het softwareprogramma. 22
Het grote voordeel van dit systeem is dat eerst een 3D beeld gemaakt wordt van de gewenste punten alvorens het te meten. Dit wil zeggen dat van eender welk type mat een 3D beeld gecreëerd kan worden zonder dat de opstelling verandert. Echter voor elk type mat moet een andere programma geschreven worden om een 3D beeld te creëren en daarbij horend metingen uit te voeren. Al bij al is dit een flexibele oplossing eenmaal de programma’s geschreven zijn. Een ander voordeel is dat deze opstelling slechts eenmaal hoeft gekalibreerd te worden, zolang er niets aan de opstelling verandert. Een andere mogelijkheid is om een kalibratieplaat te verwerken in het vlak waarop de mat gelegd wordt, en voor iedere meting een kalibratie te doen. Dit verhoogt de zekerheid op een correcte meting. De cyclustijd om één mat op te meten is iets waar weinig kan over gezegd worden. Veel hangt af van de tijd die nodig is om een 3D beeld te creëren en om de metingen uit te voeren. Is deze tijd vrij beperkt dan zou een inline meting een volgende stap kunnen zijn. Voordelen -
Het is een zeer flexibel systeem. Vrijwel elk type mat zal kunnen worden opgemeten. Het is gemakkelijk te kalibreren. De constructie om de camera’s op te monteren is eenvoudig waardoor het gemakkelijk te verplaatsen is of in te bouwen in de productielijn. Het is goedkoper dan een robot.
Nadelen -
De software is complex. Er is een relatief groot aantal camera’s nodig.
Conclusie Deze methode is waarschijnlijk de meest vernieuwende oplossing in vergelijking met de vorige oplossingen. Toch mag de complexiteit en de haalbaarheid niet onderschat worden. Het grote voordeel is dat elk type mat op te meten is zonder aanpassingen aan de structuur van de opstelling. [17][19][20] [21]
3.3.4. 3D line scanner Bij een 3D line scan wordt een laser gecombineerd met een camera. De laser, camera en het object staan in een driehoek geplaatst. De laser zendt licht uit op een voorwerp, dit licht wordt verstrooid teruggekaatst en opgevangen door de camera. Vervolgens zijn er twee mogelijke manieren om een beeld te vormen, via Timeof-flight of via triangulation.
3.3.4.1. Time-of-flight De tijd wordt gemeten tussen het verzenden van de lichtstraal en het terug opvangen via de sensor. De tijd staat dan als een maat voor de afstand tussen de laser en het oppervlak van het object. Als de afstand gekend is tussen de laser en het oppervlak waar het object op staat, is de hoogte van dat precieze punt van het object gekend. [22] 23
3.3.4.2. Triangulation Hier wordt niet de tijd gemeten maar de hoek waaronder het licht verstrooid wordt. De camera staat gericht op de plaats waar de laser het object raakt. Afhankelijk van hoe ver de laser het oppervlak raakt, zal de lichtstraal op een andere plaats de sensor raken. De afstand wordt dan als volgt berekend: de camera, de laser en de laserpunt staan in een driehoek. De hoek waaronder de camera staat en de afstand tussen de laser en de camera is ook gekend. Vervolgens wordt gekeken waar de laser invalt op de sensor van de camera. Daaruit kan dan de afstand of de hoogte afgeleid worden (Figuur 22). [23]
Figuur 22: Principe van triangulation
Beide manieren van meten gelden voor gewone ‘punt’ scanners, waar de laser een punt vormt en voor ‘lijn’ scanners waar de laser een lijn vormt. Het grote voordeel van ‘lijn’ scannen is dat het veel sneller gaat. Hierbij wordt een volledige lijn in één keer gescand. In feite wordt voortdurend een hoogtemeting uitgevoerd. Deze hoogtewaarden worden dan verwerkt tot een 3D beeld. Een groot nadeel bij dit soort meting is dat enkel volle voorwerpen kunnen gemeten worden. Hetzelfde probleem zal ontstaan zoals in figuur 21(1). De ruimte onder de haken zal niet gezien worden. Toch is dit nodig om bijvoorbeeld de hoeken van de haken te meten. Om dit probleem op te lossen is niet onmiddellijk een oplossing voor handen. Een volgend probleem is het feit dat enkel een lijn wordt gescand. Het zal dus noodzakelijk zijn om een voortbewegingsysteem te voorzien om het volledige product in beeld te brengen. Daarbij moet rekening gehouden worden met trillingen waarbij de camera kan meetrillen waardoor de metingen niet juist zal zijn. Dit systeem zou wel gemakkelijk in de productiemachine zelf in te bouwen zijn aangezien de matten reeds voortbewogen worden door de machine. Line scannen is net als stereo view niet afhankelijk van de opstelling en kan dus in principe elk type mat in beeld brengen. Het kalibreren van dergelijke camera wordt veelal gedaan door de fabrikant. Een ander voordeel is dat bij het gebruik van laser, geen rekening hoeft gehouden worden met externe lichtbronnen. De tijd nodig om één mat op te meten is afhankelijk van het voortbewegingsysteem en van het verwerken en het opmeten van het 3D beeld.
24
Voordelen -
De kalibratie is reeds gedaan en hoeft dus (in de meeste gevallen) niet zelf uitgevoerd worden. Er zijn geen lichtbronnen nodig en er hoeft ook geen rekening worden gehouden met reeds aanwezige lichtbronnen. Er zijn grote in-line mogelijkheden. Het is flexibel.
Nadelen -
Er is een grote onzekerheid omtrent de haalbaarheid doordat overkoepelende ruimtes niet gezien kunnen worden. De programmatie hangt in grote mate af van de mogelijkheden van camera’s en eventueel hun beeldverwerkingsoftware.
Conclusie Het gebruik van een 3D line scanner heeft enkele grote voordelen maar vertoont nog grotere nadelen. Deze gebreken zullen dan ook te zwaar doorwegen om te kiezen voor dit systeem.
3.4. Conclusie De bekendste en meest haalbare systemen zijn beschreven met hun voor- en nadelen. Een systeem dat niet beschreven werd is een systeem met 3D camera’s. De reden hiervoor is dat deze nog niet genoeg ontwikkeld zijn om aan de vereiste nauwkeurigheid te voldoen, namelijk een meetnauwkeurigheid van 0,1 mm. Om uiteindelijk een keuze te maken vallen 2 systemen af. Het systeem met meerdere camera’s gefixeerd op een frame (3.3.2. Meerdere vaste camera’s) door een gebrek aan flexibiliteit, en het systeem met line-scanners (3.3.4. 3D line scanner) omdat een volledige meting zeer moeilijk uit te voeren is door de complexiteit van het product. In eerste instantie gaat de voorkeur uit naar een stereo visiesysteem waarvoor een testopstelling zal gemaakt worden. Indien blijkt dat dit systeem niet aan de eisen voldoet, kan een testopstelling gemaakt worden met een robot.
25
4
Uitvoering
4.1. Inleiding Na de voorstudie rond visiesystemen werd beslist om een opstelling te bouwen met enkele camera’s om een mat op te meten in 3D. In afwachting van een definitieve opstelling werd een testopstelling gebouwd op kleine schaal met als doel te achterhalen waarop moet gelet worden bij het realiseren van een definitieve opstelling. Vervolgens werd de testopstelling vervangen door de huidige opstelling. In dit hoofdstuk komen vijf zaken aan bod. Eerst wordt de testopstelling kort beschreven. Vervolgens wordt de huidige opstelling beschreven. Een derde punt is de software waarbij het tot stand komen van een kalibratie, een 3D-model, enz. wordt besproken. Als vierde punt wordt de uitvoering van de metingen besproken. Ten slotte wordt afgesloten met de resultaten en hoe deze verkregen werden.
4.2. Testopstelling Om de mogelijkheden van het softwarepakket uit te testen en te bekijken wat er nodig was om tot een degelijk visiesysteem te komen, was het noodzakelijk om een kleinschalige testopstelling te maken. Deze bestond uit een constructie uit ITEM-profielen met daarop twee webcams gemonteerd (Figuur 23). De specificaties van deze webcams wat betreft resolutie, focaal enz. zijn overbodig omdat het niet de bedoeling was om met deze opstelling effectief metingen uit te voeren. Het doel van deze testopstelling was het uittesten van een aantal zaken zoals het inschatten van de grootte van de opstelling, het nemen van beelden, kalibreren, het kiezen van het type belichting, enz. Webcams
Figuur 23: Testopstelling
Met deze opstelling werden een aantal programma’s uitgetest en op punt gesteld. Dit waren programma’s om te kalibreren, om op een gemakkelijke manier beelden maken, enz. die later, mits kleine aanpassingen, kunnen gebruikt worden bij de definitieve opstelling. De testopstelling leende er zich niet toe om achtergrondbelichting te gebruiken. Wel was directe belichting toepasbaar maar meteen werd vastgesteld dat werken met directe belichting een grote kans op overbelichting veroorzaakte. Ook werd het kalibreren getest. Voor het kalibreren werd een kalibratiepatroon afgeprint en op een harde achtergrond gekleefd. 26
Dit gaf echter een aantal problemen onder andere qua nauwkeurigheid. Waarop werd beslist om over te gaan tot de aankoop van een kalibratieplaat.
4.3. Definitieve opstelling 4.3.1. Opstelling Voor de definitieve opstelling werd gekozen voor een opstelling met drie camera’s, geplaatst op een frame uit ITEM-profielen (Figuur 24).
Figuur 24: Definitieve opstelling
4.3.1.1. Camera’s Voor het visiesysteem werd een opstelling gemaakt met drie camera’s. Deze werden in een driehoek geplaatst om zo de mat optimaal in beeld te brengen. De keuze van drie camera’s is weloverwogen. Een 3D-meting kan al met behulp van twee camera’s, echter door de complexiteit van een mat zouden twee camera’s te weinig zijn om bepaalde zaken goed in beeld te brengen. Met drie camera’s moest dit wel lukken. Vier camera’s zou nog beter zijn, maar rekening houdende met de kostprijs werd voor een opstelling met drie camera’s gekozen. Het kiezen van de camera’s werd gedaan door Pullmaflex. Dit had verschillende redenen. Enerzijds omdat die persoon in kwestie dagelijks met visiesystemen bezig is en veel ervaring heeft op dat vlak. Anderzijds werd ook rekening gehouden met een eventuele mislukking. Daarom werden camera’s gekozen die ook gebruikt kunnen worden op machines in de fabriek. Volgende twee types werden gekozen uit het gamma van GigE uEye: -
-
UI-5480SE-M
(1 maal)
Resolutie: Sensor:
2560 x 1920 (5MP) 1/2” CMOS
UI-6280SE
(2 maal)
Resolutie: Sensor:
2448 x 2050 (5MP) 2/3” CCD 27
Qua resolutie zijn ze onderling evenwaardig, hoewel de verhouding van de beeldsensor iets anders ligt. Wel werd voor een ander sensortype gekozen, zodanig dat ze inzetbaar zijn op bepaalde machines (bepaalde machines eisen een snellere sensor dan andere), wat echter niets wijzigt aan de werking van de opstelling. Beide types camera’s werken op een voedingspanning van 24V DC en werden geleverd met voeding - en datakabel. Voor extra technische informatie wordt doorverwezen naar bijlage 2. Om de mat volledig in beeld te kunnen brengen werden de camera’s op een hoogte van 1100 mm geplaatst ten opzichte van het draagvlak in een schuine positie (Figuur 25).
Figuur 25: Positionering van de camera’s
4.3.1.2. Lenzen De lenzen werden wederom gekozen door Pullmaflex om dezelfde reden als bij de camera’s. Ook hier werd gekozen voor twee verschillende types: -
Cinegon 1.4/12 – High End 3D F-number: Focal Lenght: f’:
-
1.4 12 mm 12,7 mm
Cinegon 1.4/8 – High End 3D F-number: Focal Lenght: f’:
(tweemaal)
(éénmaal)
1.4 8 mm 8,2 mm
De lenzen komen, gemonteerd op de camera, op een hoogte van 1020 mm. Extra technische informatie is opgenomen in bijlage 3.
28
4.3.1.3. Frame De camera’s werden op een frame van 760 mm x 1200 mm x 780 mm uit ITEM-profielen geplaatst, ontworpen en gebouwd door Pullmaflex (Figuur 26). De camera’s werden op gelijke hoogte geplaatst, rekening houdende met de DOF. Er werden rondom zwarte panelen aan de zijkanten bevestigd (op figuur 26 zijn er slechts twee bevestigd) om natuurlijk licht tegen te houden. Dit natuurlijk licht kan voor ongewilde reflecties of overbelichting zorgen, wat nadelig is voor de metingen.
Camera
Camera
Zwart paneel Zwart paneel Profiel voor directe belichting Draagvlak Belichting
Belichting Figuur 26: Frame van het visiesysteem
Tevens werd er plaats voorzien om zowel directe belichting toe te passen als achtergrondbelichting. Voor de directe belichting werden regelbare profielen aan het frame bevestigd waaraan de lampen kunnen gemonteerd worden zoals aangeduid in figuur 26. Voor achtergrondbelichting werd ruimte onder het draagvlak voorzien om de lampen onder te leggen. Tijdens deze masterproef werden de lampen los onder de opstelling gelegd om zo de optimale manier van belichten te vinden. In een verder stadium waarbij dergelijke opstelling wordt geïmplementeerd in de fabriek moet de belichting uiteraard worden bevestigd. Het draagvlak waar de mat op komt te liggen, bestaat uit een doorzichtige maar mate plastic plaat om het licht gelijkmatig te verspreiden. Deze plaat is rondom bevestigd aan het frame op 250 mm hoogte en wordt niet ondersteund. Dit is niet nodig door het beperkte gewicht van de mat en omdat een eventuele ondersteuning zich als een donkere contour zou aftekenen wat de metingen kan hinderen.
29
4.3.1.4. Belichting De belichting bestaat uit twee TL-lampen van 18 Watt. Enerzijds omdat dit slechts een kleine opstelling is, anderzijds omdat dit soort lichtbron reeds voor een zekere verspreiding zorgt (langwerpige lichtbron). In combinatie met het draagvlak wordt dan een gelijkmatige verspreiding van het licht verkregen. De keuze van twee lampen is puur praktisch. Één lamp zorgde namelijk voor een zodanig heldere belichting in het centrum van de opstelling, dat er overbelichting ontstond met blooming (zie 2.3.1. Sensor) als resultaat. De intensiteit van de belichting rondom het centrum was echter geschikt voor de metingen. Door twee lampen te gebruiken en ze op een geschikte afstand uit elkaar te plaatsen, is het mogelijk dit gedeelte van beide lampen te gebruiken als belichting (Figuur 27). De lampen kunnen, zoals reeds in de vorige paragraaf aangehaald, zowel onder de opstelling als achtergrondbelichting dienen of boven het draagvlak in de daarvoor voorziene klemmen worden bevestigd als directe belichting.
Zone waar mat in komt te liggen
TL-lamp Zeer heldere zone Bruikbare zone
Figuur 27: Opstelling van de belichting
4.3.1.5. Randapparatuur Om het visiesysteem te vervolledigen is nog randapparatuur nodig. Voor de voeding van de camera’s is een gelijkspanning van 24V nodig. Deze werd geleverd door een regelbare spanningsbron (Figuur 28) van Velleman (PS 613), gevoed vanuit 230V AC. Om de data van de camera’s te kunnen ophalen werden deze een IP-adres toegewezen en via een switch (Figuur 28) van OmniStack (6300-24) binnengelezen in de pc. Deze zaken waren reeds in Pullmaflex aanwezig en moesten dus ook niet worden aangekocht. Daarnaast werd ook een laptop en de visiesoftware ter beschikking gesteld.
Spanningsbron
Switch
Figuur 28: Randapparatuur voor het visiesysteem
30
4.4. Software 4.4.1. Halcon Halcon is een softwarepakket die zich toespitst op visie en is van de ontwikkelaar MVTec. Dit softwarepakket is zoals reeds beschreven in de literatuurstudie, onafhankelijk van het type camera waarmee het mogelijk is elke soort van beeldverwerking toe te passen. Figuur 29 geeft een overzicht weer van de programmeeromgeving van Halcon. Deze bestaat uit vier onderdelen: -
program editor operator window graphics window variable view
Figuur 29: Programmeeromgeving van Halcon
4.4.1.1. Program Editor In dit scherm wordt het programma opgebouwd. Hierin wordt de code geschreven en overlopen tijdens de uitvoering van het programma (Figuur 30). In de program editor kunnen dan procedures worden opgeroepen, zeg maar deelprogramma’s. Die procedures kunnen standaardprocedures zijn of zelf ontwikkelde procedures. Het oproepen van deze procedures is echter geen noodzaak, de code ervan kan ook rechtstreeks worden geschreven, maar het is wel een manier om het overzicht te bewaren.
31
Figuur 30: Program Editor
4.4.1.2. Operator Window Dit scherm kan worden gebruikt voor het invoegen van functies in het programma. In de tekstbox bovenaan figuur 31 kunnen trefwoorden of delen van de functies worden getypt. Op die manier kan dan doelgericht worden gezocht naar de nodige functie. Wordt een functie geselecteerd, dan verschijnen de in te vullen variabelen voor die functie. Wanneer vervolgens op ‘Ok’ of ‘Apply’ wordt geklikt, wordt de functie toegevoegd aan de ‘Program Editor’. Merk op dat functies rechtstreeks in de ‘Program Editor’ kunnen worden getypt. Het ‘Operator Window’ dient als hulp bij het zoeken naar de nodige functie.
Input Output
Parameters
Figuur 31: Operator Window
32
4.4.1.3. Graphics Window Het ‘Graphics Window’ dient om veranderingen aan de camerabeelden te visualiseren wanneer het programma wordt uitgevoerd. Telkens een functie wordt uitgevoerd, zal de verandering in het ‘Graphics Window’ te zien zijn zoals in figuur 32. Dit scherm biedt ook de mogelijkheid om in en uit te zoomen met de ‘scroll’-knop van de muis.
Figuur 32: Graphics Window
4.4.1.4. Variable View Dit scherm bestaat uit twee delen (Figuur 33). Het ene deel bevat de ‘Iconic Variables’, dit zijn de variabelen in de vorm van een afbeelding. Wanneer een beeld bewerkt wordt in het programma door middel van een functie, wordt het verkregen beeld opgeslagen als een variabele. Zo kan een volgende bewerking met het resulterende beeld van de vorige bewerking verder werken. Een tweede deel bevat de ‘Control Variables’. Dit zijn alle andere variabelen die niet in de vorm van een afbeelding zijn. Dit kunnen variabelen zijn, gebruikt om een loop uit te voeren, pixelwaarden bij te houden, enz.
Figuur 33: Variable View
33
4.4.2. Kalibratie Het doel van een kalibratie is het bepalen van de parameters van de opstelling. Dit gaat van het bepalen van de afwijking per camera, tot het bepalen van de posities van de camera’s ten opzichte van elkaar. Dergelijke zaken zijn nodig om te komen tot een goede meting. Om te kalibreren is een kalibratieplaat nodig. Deze kan zelf gemaakt worden door bijvoorbeeld een kalibratiepatroon af te printen. De nauwkeurigheid daarbij is echter wel twijfelachtig. Daarom werd overgegaan tot de aankoop van een kalibratieplaat. Doordat een kalibratieplaat 20% - 25% van de FOV moet innemen werd een kalibratieplaat genomen van 200 mm x 200 mm. Voor deze plaat werden alle eigenschappen zoals de positie van de markeringspunten onderling nauwkeurig opgemeten door de fabrikant en meegeleverd met de kalibratieplaat. Deze eigenschappen worden later gelezen door het kalibratieprogramma. De details en eigenschappen van de kalibratieplaat zijn terug te vinden in bijlage 4. Een kalibratie bestaat uit twee onderdelen: -
het nemen van kalibratiebeelden het uitvoeren van de kalibratie
4.4.2.1. Kalibratiebeelden Het eerste onderdeel van het kalibreren is het nemen van de kalibratiebeelden. Dit zijn beelden met de kalibratieplaat in beeld. Bij het kalibreren zijn een aantal zaken belangrijk. Zo moet de kalibratieplaat in de hoeken voldoende in beeld worden gebracht aangezien daar de meeste vervorming optreedt. Ook is het belangrijk om de kalibratieplaat in verschillende posities te houden. Dit kan door de plaat vast te houden of door deze tegen een (klein) voorwerp te plaatsen. Merk op dat indien de plaat wordt vastgehouden de hand ook in beeld komt waardoor het beeld onbruikbaar kan worden tijdens het kalibreren. Een derde aandachtspunt is de schaalgrootte van de kalibratie. Hoe meer kalibratiebeelden, hoe preciezer de uitvoering van de kalibratie. Als vuistregel wordt een aantal van 30 goede beelden per camera gehanteerd, voor deze masterproef werden om en bij de 70 kalibratiebeelden per camera gemaakt. Figuur 34 toont een (beperkte) serie kalibratiebeelden voor één camera. Op de eerste vier beelden wordt de kalibratieplaat duidelijk in de hoeken geplaatst om zo de beeldvervormingen vast te leggen. Om de kalibratiebeelden te nemen, werd gebruik gemaakt van directe belichting. Omdat een kalibratieplaat niet doorzichtig is, is indirecte belichting niet geschikt. Om reflecties van het draagvlak te vermijden, werd een zwarte doek op het draagvlak gelegd.
Figuur 34: Een serie kalibratiebeelden
34
4.4.2.2. Kalibreren Het kalibreren van een visiesysteem is in feite het creëren van een kalibratiemodel dat later gebruikt wordt om correcte metingen uit te voeren. Dit kalibratiemodel bevat de belangrijkste informatie van het visiesysteem om de beelden correct te interpreteren. Om een kalibratiemodel te verkrijgen worden een aantal stappen doorlopen (Figuur 35) waarbij telkens een specifieke functie wordt opgeroepen.
Figuur 35: Opbouw van een kalibratie
Creëren van een kalibratiemodel In eerste instantie moet een leeg kalibratiemodel gegenereerd worden. Dit kan gezien worden als een voorlopig nog lege doos waarin alle data verzameld wordt. Het aanmaken van het kalibratiemodel gebeurt via onderstaande code: ‘Create_calib_data’ Aan deze code moeten een aantal variabelen worden meegegeven zoals het aantal camera’s, in dit geval drie, en het aantal kalibratieobjecten. Het aantal kalibratieobjecten is het aantal objecten die gezien worden door de camera’s en gebruikt om te kalibreren. Bij deze kalibratie wordt één kalibratieplaat gebruikt, dus het aantal kalibratieobjecten is dus ook één. Configureren van de kalibratiesetup De volgende stap is het configureren van de kalibratiesetup, uitgevoerd met de volgende code: ‘set_calib_data_cam_param’ ‘set_calib_data_calib_object’ Hierbij worden de originele cameraparameters meegegeven, de eigenschappen van de kalibratieplaat, en het lege kalibratiemodel.
35
Verzamelen van de kalibratiedata In de derde stap wordt de kalibratiedata verzameld en weggeschreven. Dit houdt in dat op alle kalibratiebeelden gezocht wordt naar de markeringen op de kalibratieplaat en dat de positie, richting, enz. worden weggeschreven. Het verzamelen van de data zelf gebeurt in twee stappen. In de eerste stap wordt gezocht naar het gebied waarin de markeringen zich bevinden. Dit gebied wordt gevonden door overgangen te zoeken in grijswaarden. Er bestaan vele soorten waarden waardoor een minimaal verschil kan worden ingesteld. Bij deze kalibratie staat die ingesteld op 90. Dit betekent dat het programma een gebied zal afbakenen waar het verschil in grijswaarde tussen twee pixels minstens 90 bedraagt. In de tweede stap gaat het programma binnen dit gebied op zoek naar de markeringen. Deze worden gevonden op basis van de eigenschappen van de kalibratieplaat zoals het aantal markeringen, maar ook terug op basis van het verschil in grijswaarden. Eenmaal de markeringen zijn gevonden, wordt de data daaromtrent bijgehouden met de volgende code: ‘set_calib_data_observ_points’ Uitvoeren van de kalibratie Eenmaal alle kalibratiebeelden zijn doorlopen, wordt de effectieve kalibratie uitgevoerd op basis van de verzamelde data uit de vorige stap. Het kalibreren gebeurt via volgende code: ‘calibrate_cameras’ Ophalen van de resultaten De laatste stap is het ophalen van de resultaten van de kalibratie en die in het kalibratiemodel gieten. Dit gebeurt met de volgende code: ‘get_calib_data’ Dit model bevat onder andere de initiële cameraparameters, de huidige cameraparameters, de posities van de camera’s ten opzichte van elkaar, informatie over de geobserveerde markeringspunten die uit de kalibratiebeelden werden gehaald, enz. Het model wordt opgebouwd vanuit een referentiepose, de manier waarop een kalibratieplaat ligt. De keuze van de referentiepose is belangrijk omdat al de gegevens ten opzichte van die referentiepose worden verzameld. Dit is belangrijk wanneer wordt gemeten. Die referentiepose moet het vlak voorstellen waarin hoofdzakelijk gemeten wordt. Wordt een horizontaal vlak bemeten dan zal de referentiepose een beeld zijn waarbij de kalibratieplaat horizontaal ligt. Moet een schuine oppervlakte bemeten worden, dan zal gerefereerd moeten worden naar een beeld waarbij de kalibratieplaat ook schuin ligt. Na het uitvoeren van een kalibratie worden de eigenschappen uit tabel 2 weggeschreven in het kalibratiemodel. Merk op dat de kalibratie een zeer cruciale schakel is in het systeem. De omstandigheden waarin de kalibratiebeelden zijn gemaakt zijn zeer belangrijk en kunnen het verschil maken tussen een geslaagde of een mislukte ijking.
36
Als de verkregen parameters bij benadering overeen komen met de technische gegevens van de lenzen en camera’s, dan kan de kalibratie als correct beschouwd worden. Uit de tabel kan bijvoorbeeld de resolutie gecontroleerd worden door de waarden Cx en Cy te verdubbelen (zo wordt de afmeting van de sensor bekomen worden). Tabel 2: Eigenschappen van het visiesysteem bekomen door middel van kalibratie
Parameters Focus
focus
Eenheid [m]
Camera 1
Camera 2
Camera 3
8,25E-03
1,27E-02
1,27E-02
Radiale distortie
k1
1,89E+03
7,03E+02
6,25E+02
parameters
k2
-3,93E+07
-1,12E+07
-3,11E+06
k3
2,89E+11
1,27E+11
-5,72E+10
Decentering
p1
-6,32E-03
-3,55E-02
1,81E-02
distortie parameters
p2
-4,37E-02
-6,23E-02
6,74E-02
Pixel afmeting
sx
[m]
2,20E-06
3,40E-06
3,40E-06
sy
[m]
2,20E-06
3,50E-06
3,50E-06
Centerpunt van de
cx
[pixel]
1294,31
1243,3
1235,9
sensor
cy
[pixel]
972,83
1028,58
1021,31
Centerpunt van het
tx
[m]
-0,0445
-0,378
0,298
beeld
ty
[m]
30,1
-0,307
-0,311
tz
[m]
-1,04
-1,04
-1,03
Rotatie van de
a
[°]
16,09
345,69
345,52
camera's
b
[°]
0,36
16,61
343,34
g
[°]
270,18
270,37
269,37
De programma’s die gebruikt worden om kalibratiebeelden te nemen, alsook het kalibratieprogramma en de kalibratiebeelden zijn opgenomen in bijlage 5 zowel in HDEV-bestand als in PDF.
4.4.3. 3D meten De reden waarom voor een 3D-meting is gekozen, is de aard van het op te meten stuk. Voor deze masterproef wordt een mat opgemeten zowel in breedte, lengte en hoogte. Ook moeten er hoeken uitgehaald worden. Al deze zaken leiden er toe om voor een 3D visiesysteem te kiezen. Om een mat op te meten in 3D wordt op een zelfde manier te werk gegaan als het manueel meten: er wordt gemeten tussen twee punten. Het is dus niet de bedoeling dat de volledige mat in een 3D-model wordt gegoten. Enkel de punten waartussen moet gemeten worden, worden in een 3D-model opgenomen. Hierbij krijgen deze punten een 3D-coördinaat, gesitueerd in de ruimte van dat 3D-model. Het verkrijgen van deze 3D-coördinaten gebeurt in een aantal stappen (Figuur 36) waarbij telkens een specifieke functie wordt opgeroepen.
37
Figuur 36: Opbouw van 3D-model
Cameraopstelling lezen In een eerste stap wordt het kalibratiemodel binnengelezen, dat werd aangemaakt tijdens het kalibreren, en in een camera setupmodel gegoten met de volgende code. 'read_camera_setup_model ‘ Daarbij wordt het pad waar dit bestand is opgeslagen, meegegeven alsook de naam van het bestand zelf. Stereo model creëren In de volgende stap wordt een leeg stereo model aangemaakt. Dit model dient om de punten (met 3Dcoördinaat) in op te bouwen. Dit wordt gegenereerd met de code: 'create_stereo_model’ De meegegeven variabelen zijn onder andere het camera setupmodel en de gebruikte methode om de punten op te bouwen ('points_3d'). Meetpunten uit de beelden halen In stap drie worden de gewenste punten uit de beelden gehaald. Het is de bedoeling dat uit elk aanzicht het overeenkomstige punt gehaald wordt. Hoe dit aangepakt wordt, komt aan bod bij het bespreken van de metingen. Figuur 37 toont een voorbeeld van een dergelijk overeenkomstig punt dat gezocht en gevonden werd op een schuifmaat.
38
Figuur 37: Overeenkomstige punt zoeken
Ieder gevonden punt zal een coördinaat uit elk aanzicht hebben, bestaande uit een kolomcoördinaat en een rijcoördinaat, te vergelijken met respectievelijk het x- en y-coördinaat uit een assenstelsel. Deze coördinaten komen in een zogenaamde tuple terecht. Een tuple is een manier om een aantal waarden onder één variabele op te slaan. Het is vergelijkbaar met een array maar waarbij de waarden naast elkaar worden weggeschreven, gescheiden door een komma. Een voorbeeld van een tuple staat hieronder. ‘Tuple := [123.4, 567.8, 543.2]’ De waarden van een tuple kunnen op een gelijk aardige manier worden opgeroepen zoals bij een array waarbij de index de positie in de tuple voorstelt. Zo zal tuplewaarde[0] gelijk zijn aan 123.4. Echter enkel deze coördinaten in een tuple wegschrijven is niet voldoende. Om de punten in een 3D-model te kunnen plaatsen moet ook nog geweten zijn welk punt tot welk aanzicht behoort en in welke volgorde ze voorkomen (indien meerdere punten per aanzicht gekozen worden). Dit resulteert in vier tuples die in een volgende stap tegelijk worden overlopen. Onderstaand voorbeeld toont het resultaat waarbij één punt per aanzicht wordt gekozen met drie verschillende aanzichten en eronder een voorbeeld waarbij twee punten per aanzicht worden gekozen. TupleRij:= TupleKolom:= TuplePuntIndex:= TupleCamIndex:=
[123.4 , 234.5 , 345.6] [456.7 , 567.8 , 678.9] [1 , 1 , 1] [1 , 2 , 3]
(alle rijcoördinaten van de punten) (alle kolomcoördinaten van de punten) (de volgorde per punt, per aanzicht) (de camera per punt per aanzicht)
TupleRij:= TupleKolom:= TuplePuntIndex:= TupleCamIndex:=
[123.4 , 234.5 , 345.6 , 456.7 , 567.8 , 678.9] [456.7 , 567.8 , 678.9 , 789.0 , 890.1 , 901.2] [1 , 2 , 1 , 2 , 1 , 2] [1 , 1 , 2 , 2 , 3 , 3]
Meetpunten in pixelwaarden omzetten naar 3D-coördinaten Na het invullen van de tuples worden deze gebruikt om de gevonden punten van een 2D-coördindaat om te zetten naar een 3D-coördinaat. Hiervoor wordt onderstaande code gebruikt. ‘Reconstruct_points_stereo’
39
Onder andere het camera setupmodel en de vier tuples worden hier meegegeven. Het resultaat zullen drie tuples zijn met de X-, Y- en Z-coördinaten van de gereconstrueerde punten. Afstand tussen de punten berekenen In de vorige stap werden de X-, Y- en Z-coördinaten gevonden van de punten. Hierop wordt de formule (4.1) voor de kortste afstand tussen twee punten op toegepast. = ( − ) + ( − ) + ( − )
(4.1)
Wanneer niet de verwachte waarden worden gevonden, is het nog mogelijk om de punten te laten visualiseren in het 3D-model. Zo kan soms duidelijk worden dat de punten niet op een correcte manier werden omgezet. Hierop zal niet verder worden gegaan omdat dit niet noodzakelijk is voor deze masterproef.
40
4.5. Metingen Vooraleer over te gaan op metingen moet het visiesysteem een Measurement System Analysis (MSA) doorstaan. Worden bepaalde eisen niet behaald, dan is het visiesysteem niet geschikt als meetsysteem. Pas daarna mag gemoeten worden.
4.5.1. MSA Eerst wordt een statistische proef uitgevoerd met als doel de degelijkheid van het meetsysteem te bepalen inzake de repeatibility en reproducibility. Het programma dat hiervoor werd gebruikt heet Minitab. Voor de uitvoering van de statistische proef werd beroep gedaan op iemand van Pullmaflex maar benodigde meetgegevens worden zelf verzameld. Normaal gezien wordt een MSA uitgevoerd met drie verschillende personen om de reproducibility te bepalen. Daarbij moet elke persoon tien verschillende maten/objecten drie keer opmeten zodanig dat de repeatibility kan bepaald worden. Het resultaat zullen 90 metingen zijn waarmee een procentuele score gegeven aan het meetsysteem, in het huidige geval de operatoren. Deze score staat in feite voor het procentuele aandeel dat het meetsysteem bijdraagt aan de standaardafwijking. Zoals eerder beschreven in de inleiding kan een score onder de 10% als zeer goed beschouwd worden. Dit zal de streefwaarde zijn voor het visiesysteem. Naast deze procentuele score wordt ook een zogenaamd ‘Number of distinct categories’ gegeven. Dit getal geeft weer in hoeveel categorieën een meting onder te verdelen is. Is dit getal ‘2’, dan betekent dit dat een meting qua lengte kan worden onderverdeeld in ‘lang’ en ‘kort’. Is dit getal ‘3’, dan kan de meting onderverdeeld worden in ‘lang’, ‘half lang’ en ‘kort’. Logischerwijs geldt dat hoe groter dit getal is, hoe beter. Vanuit de automobielsector wordt een getal geëist van minstens vijf. Dus ook hier wordt dit de streefwaarde voor het visiesysteem. Het huidige meetsysteem, namelijk het meten met behulp van operatoren, ondervindt veel last van repeatibility en reproducibility. Worden deze vervangen door een visiesysteem dan valt de factor reproducibility weg doordat er maar één meetsysteem is. Het meetsysteem zal dus enkel onderhevig zijn aan repeatibility. Tijdens de test werden tien verschillenden standen van een schuifmaat opgemeten. Omdat drie maal hetzelfde beeld aanbieden aan de visiesoftware geen zin heeft, werd de schuifmaat in drie verschillende richtingen gelegd (Figuur 38) om de repeatibility te simuleren.
Figuur 38: Opmeten van een schuifmaat in verschillende posities
41
Op een schuifmaat zijn er twee openingen die kunnen bemeten worden (Figuur 38). Beide openingen zijn gelijk maar voor het visiesysteem kan het opmeten van beide openingen leiden tot een verschillend resultaat. In figuur 39(a) is de ene kant te zien van een schuifmaat. Daarop is duidelijk te zien dat één been niet in een punt samenkomt maar dat er in feite twee punten zijn waarop kan gefocust worden tijdens een meting. Figuur 39(b) toont de andere kant van de schuifmaat. Daar is te zien dat het been wel in één punt samenkomt. Aan deze zijde bestaat er dus geen twijfel of het meetpunt correct gekozen is. Dit zorgt voor een nauwkeurigere meting waardoor voor de MSA de metingen op deze kant van de schuifmaat werden uitgevoerd. (a)
(b)
Figuur 39: Verschil qua opening van een schuifmaat
Het resultaat zijn 30 metingen die per drie gegroepeerd zijn (10 verschillende metingen die drie keer worden uitgevoerd) zoals in tabel 3 te zien is. Het zijn deze waarden die in Minitab worden ingevoerd. Uit deze waarden werd op voorhand het gemiddelde bepaald en de afwijking van de gemeten waarden op de originele maat vooraleer deze in Minitab werden in gevoerd. Daaruit kan worden afgeleid dat de metingen zeer nauwkeurig zijn. De vooropgestelde eis is een nauwkeurigheid van 0,1 mm terwijl de grootste afwijking in dit geval 0,06 mm is.
Instelling schuifmaat (mm) Positie 1 Positie 2 Positie 3 Gemiddelde Verschil
maat 1 62,95 62,97 63,01 62,99 62,99 0,04
maat 2 62,67 62,65 62,73 62,72 62,70 0,03
Tabel 3: maat 3 63,44 63,42 63,50 63,45 63,46 0,02
Metingen voor MSA-test maat maat maat 4 5 6 63,12 62,74 60,94 63,12 62,81 60,97 63,12 62,79 60,97 63,15 62,78 61,00 63,13 62,79 60,98 0,01 0,05 0,04
maat 7 62,54 62,62 62,56 62,61 62,60 0,06
maat 8 63,00 63,06 62,98 63,03 63,02 0,02
maat 9 64,61 64,64 64,62 64,70 64,65 0,04
maat 10 62,80 62,86 62,79 62,80 62,81 0,01
De 30 waarden werden vervolgens in Minitab ingevoerd. Hieruit blijkt dat voor de geleverde data het meetsysteem 3,9% bijdraagt tot de standaardafwijking wat betekent dat het visiesysteem tot de categorie ‘zeer goed’ behoort. Het ‘Number of distinct categories’ was nog spectaculairder en bedroeg maar liefst 38! Daarmee werden de vooropgestelde streefwaarden ruimschoots behaald. Deze twee resultaten gaven daarmee de doorslag om verder te gaan met dit systeem en over te gaan op het meten van de matten. Het MSA rapport is terug te vinden in bijlage 6, de Halconprogramma’s gebruikt voor de MSA zijn terug te vinden in bijlage 7.
42
4.5.2. Metingen op matten Uit de MSA is gebleken dat dit visiesysteem geschikt is om metingen uit te voeren. Om dit effectief na te gaan, worden een aantal metingen uitgevoerd op één type mat (41356, zie bijlage 1). Deze mat bestaat in feite uit twee delen, de mat zelf en een element dat aan de mat is bevestigd. Figuur 40 geeft een overzicht weer van de uitgevoerde metingen op de mat met in tabel 4 een verduidelijking van de metingen.
De mat (basis)
Element
Figuur 40: Overzicht van de uitgevoerde metingen
43
Tabel 4: Overzicht van de uitgevoerde metingen
Meting
Uitleg
1
Breedte aan de onderkant van de mat
2
Breedte in het midden van de mat
3a
Afstand fstand van het plooipunt tot de eerste dwarsdraad (links)
3b
Afstand van het plooipunt tot de eerste dwarsdraad (rechts)
4a
Afstand van het plooipunt tot de tweede dwarsdraad (links)
4b
Afstand van het plooipunt tot de tweede dwarsdraad (rechts)
5a
Afstand van het plooipunt tot de onderkant van de mat (links)
5b
Afstand van het plooipunt tot de onderkant van de mat (rechts)
6
Breedte eedte over het element
7
Breedte tussen de opstaande haken
8
Breedte tussen de platte haken
α
Grootte van de plooihoek van de haak
De plaatsing van de meetpunten zoals die in figuur 40 voorkomen, is niet willekeurig gekozen. De punten waarover manueel gemeten worden en, werden in de mate van het mogelijke gereproduceerd om te vermijden dat technische tekeningen in de toekomst moeten worden aangepast.. Ook werd rekening gehouden met vervorming van de mat op bepaalde plaatsen. Zo moet vermeden worden om te meten vlak na een plooi, plooi of daar waar twee draden samenkomen. De reden hiervoor is dat bij het plooien plooien van de draad het plastic omhulsel gaat vervormen. Het zal dunner worden aan a de buitenkant van de plooi, en dikker worden aan de binnenkant van de plooi. Min of meer hetzelfde effect komt voor wanneer een draad rond een andere draad geplooid wordt. Op p deze plaatsen meten, zou een foutief resultaat geven. aangegeven, is het essentieel om in alle drie de aanzichten de overeenkomstige Zoals reeds in 4.4.3. wordt aangegeven, meetpunten te vinden. Het zal dus belangrijk zijn om meetmethodes es te ontwikkelen zodat telkens de overeenkomstige punten uit de beelden kunnen worden gehaald. Meting 1: Breedte aan de onderkant van de mat Zoals de bemating op de technische tekening van de mat (bijlage 1) aangeeft, wordt de d mat smaller naar de bovenkant toe. Daarom wordt de breedte op twee plaatsen gecontroleerd waarbij meting 1 de breedte meet aan de onderkant van de mat. Om de werkwijze gemakkelijk te kunnen illustreren, illustreren, wordt gesproken van draad 1, 2 en 3 (Figuur 41).
Draad 1 Draad 2 Draad 3
Figuur 41: Aanduiding van de draden voor meting 1
44
Om de breedte te kunnen meten, moet zowel op draad 1 als op draad 3 een meetpunt gevonden worden waartussen kan gemeten worden. Deze meetpunten worden gevonden door zowel een snijpunt te vinden tussen draad 1 en 2 als tussen draad 2 en 3. Hiervoor worden drie gebieden afgebakend waarbinnen de draden vallen (Figuur 42(a)). Vervolgens worden binnen deze drie gebieden de randen (of contouren) van de draden gezocht. Zo worden in totaal zes randen gevonden, twee per draad (Figuur 42(b)). Meetpunt 1 wordt gedefinieerd als het snijpunt tussen draad 1 en draad 2 en meetpunt 2 als het snijpunt tussen draad 2 en 3. De meetpunten moeten zich aan de buitenkant van de mat bevinden zoals figuur 40 aantoont. Meetpunt 1 zal gevormd worden door het snijpunt van de buitenste contour van draad 1 met één van de contouren van draad 2 (Figuur 42(c)). Meetpunt 2 wordt gevormd door het snijpunt van de buitenste contour van draad 3 met één van de contouren van draad 2 (Figuur 42(e)). Er hoeft slechts één contour van draad 2 gebruikt te worden maar belangrijk is dat in elk aanzicht dezelfde contour wordt gebruikt. Theoretisch gezien is het mogelijk deze meetpunten te gebruiken maar zowel figuur 42(c) als (e) tonen aan dat deze punten zich niet op de mat bevinden. Op die manier zal het onmogelijk zijn om na te gaan of de meting correct is omdat er geen fysieke meetpunten zijn om na te meten. Daarom wordt een denkbeeldige lijn gecreëerd, evenwijdig met draad 2 waarmee de meetpunten worden bepaald. Deze lijn wordt zodanig gekozen dat de meetpunten effectief op de mat vallen (Figuur 42(d) en (f)). Op die manier wordt met het visiesysteem een breedte van 264,032 mm gemeten.
Figuur 42: Meting 1
Meting 2: Breedte in het midden van de mat Met meting 2 wordt opnieuw de breedte van de mat gecontroleerd, ditmaal in het midden van de mat. De meting wordt op een gelijkaardige manier uitgevoerd zoals meting 1. Opnieuw worden de meetpunten gevormd door de snijpunten van de contouren. Maar zoals reeds opgemerkt, treedt er vervorming op, op plaatsen waar twee draden rond elkaar geplooid worden waardoor de snijpunten uit figuur 43(c) en (e) niet kunnen gebruikt worden. Net als in meting 1 wordt een parallelle gecreëerd waardoor de meetpunten opschuiven (Figuur 43(d) en (f)) en geen invloed meer ondervinden van de vervorming. Op deze meting wordt een breedte van 257,584 mm opgemeten.
45
Figuur 43: Meting 2
Meting 3a: Afstand van het plooipunt tot de eerste dwarsdraad (links) Meting 3a is een maat die bemeten wordt vanaf va een plooi.. Om vanaf deze plooi te meten, meten wordt een aanslagblokje gebruikt die over de draad word bevestigd en tot tegen deze de plooi wordt geschoven (Figuur 44). Eenmaal het blokje op zijn plaats zit, zit kan van hieraf gemeten worden. Met een visiesysteem is het niet de bedoeling dergelijk aanslagblokje te gebruiken. Voor deze meting moet een andere manier gevonden worden om de meetpunten te definiëren.
Verschuifbaar aanslagblokje
Figuur 44: Meten met behulp van een aanslagblokje
Om de werkwijze opnieuw op een gemakkelijke manier te verduidelijken wordt gesproken van draad 1 en draad 2 (Figuur 45).
Draad 2 Draad 1 Plooi
Figuur 45: Aanduiding van de draden voor meting 3a
46
Ook voor deze meting moeten opnieuw twee meetpunten gevonden worden. Het eerste meetpunt, meetpunt 1, bevindt zich op draad 1 ter hoogte van de plooi, het tweede meetpunt, meetpunt 2, wordt gevormd door het snijpunt van beide draden. Om deze te vinden worden twee zoekgebieden afgebakend (Figuur 47(a)). Om meetpunt 1 te bepalen, wordt gebruik gemaakt van de centerlijn (of de middenlijn) van draad 1 (Figuur 47(c)). Deze centerlijn is vanzelfsprekend niet recht maar volgt de kromming van de plooi. In een volgende stap wordt de centerlijn opgesplitst in rechte stukken en niet-rechte stukken (Figuur 46). Op deze manier kunnen de bochten weg gefilterd worden zodat enkel de rechte stukken overblijven. Worden nu de snijpunten gezocht van de rechte stukken met elkaar, dan kan op die manier een meetpunt gedefinieerd worden. Figuur 47(d) toont het resultaat.
Figuur 46: Meting 3a – plooi
Meetpunt 2 wordt gevormd door het snijpunt van een rand van draad 2 met de centerlijn van draad 1 (Figuur 47(b)).
Figuur 47: Meting 3a
Wordt dit ook op de twee andere aanzichten toegepast, dan wordt een afstand van 144,109 mm opgemeten. Meting 3b, 4a, 4b, 5a en 5b Meting 4a en 5a vertrekken beide vanuit het hetzelfde meetpunt in de plooi zoals in meting 3a, enkel meetpunt 2 bevindt zich op een andere plaats. Dit meetpunt wordt echter op een gelijkaardige manier gevonden zoals in meting 3a. Hetzelfde geld voor meting 3b, 4b en 5b maar dan aan de andere zijde van de mat. De resultaten worden verder nog besproken. Meting 6: Breedte over het element Bij meting 6 wordt de afstand over het element bepaald. Er worden opnieuw twee zoekgebieden getekend, één voor elk uiteinde (Figuur 48(a)). Ditmaal worden voor elk zoekgebied zowel de contouren als de centerlijnen gezocht zoals in figuur 48(b) en (d). 47
Deze centerlijnen worden gevonden in een zoekgebied dat enkel een recht stuk van de draad bevat waardoor de centerlijn reeds recht zal zijn en een opsplitsing niet nodig is. Worden nu de snijpunten genomen van deze centerlijnen met hun contour, dan zijn beide meetpunten gedefinieerd (Figuur 48(c) en (e)). Deze methode geldt voor de overige twee aanzichten. De meting tussen deze twee punten levert vervolgens een breedte op van 408,998 mm.
Figuur 48: Meting 6
Meting α: Grootte van de plooihoek van de haak Bij deze meting wordt de hoek gemeten waaronder de haak geplooid is. Om deze hoek te meten wordt de cosinusregel toegepast waarbij = ( Met
! " # $ " % &" !$
)
(4.2)
α = hoek a = lengte van de overstaande zijde van de hoek b, c = lengte van de aanliggende zijden van de hoek (Figuur 49)
Figuur 49: Figuur ter visualisatie van de cosinusregel
Eerst worden draad 1, 2 en draad 3 en hoek α (Figuur 50) aangeduid om de werkwijze duidelijk te kunnen beschrijven.
48
Draad 2 Hoek α Draad 1
Draad 3
Figuur 50: Aanduiding van de draden voor meting α
Om formule 4.2 te kunnen toepassen, moet een driehoek gevormd worden die gedefinieerd wordt door drie punten. Opnieuw worden drie zoekgebieden gedefinieerd (Figuur ( 51(a)) die elk draad 1, 2 of 3 bevatten waarvan telkens de centerlijn wordt gezocht. Net als in meting 6 is het niet nodig deze op te splitsen omdat de zoekgebieden en enkel rechte stukken omvatten omvat (Figuur 51(b)). De meetpunten nten zijn dan de snijpunten van de centerlijnen met elkaar zoals in figuur 51(c). 51 Eenmaal deze meetpunten gedefinieerd zijn, zijn kan de onderlinge afstand berekend en ingevuld worden in de formule wat resulteert in een hoek van 51,0737°.
Figuur 51: Meting α
Meting 7 en 8: De breedte gemeten tussen de haken Meting 7 en 8 zijn de breedtes, gemeten tussen respectievelijk de opstaande haken en de platte haken. Deze metingen werden echter niet gerealiseerd omdat telkens het uiterste punt van de haken moet worden gevonden. Het probleem hierbij is dat er geen snijpunt of iets dergelijks kan gekozen worden in tegenstelling tot meting 6 waar de uiterste punten punte gevonden worden door het snijpunten van de contouren met hun overeenkomstige centerlijn. Wel kan bijvoorbeeld met behulp van projecties deze bematingen gevonden worden, maar hierop wordt dieper ingegaan in de resultaten.
De programma’s gebruikt om productiebeelden productiebeelden te nemen, alsook de meetprogramma’s en de beelden zijn opgenomen in bijlage 8 zowel in HDEV-bestand HDEV als PDF.
49
4.6. Resultaten Na het uitvoeren van de metingen worden deze metingen manueel gecheckt om te controleren of het visiesysteem voldoet aan de vooropgestelde eisen. Om de metingen te analyseren, worden deze vergeleken met de gecontroleerde waarden (Tabel 5). Tabel 5: Analyse van de uitgevoerde metingen
1
Volgens Halcon 264,032
Controle met schuifmaat 263,18
Verschil tussen de metingen 0,852
2
257,584
257,51
0,074
3a
144,109
146,15
2,041
3b
143,618
144,53
0,912
4a
183,631
185,18
1,549
4b
181,673
182,72
1,047
5a
460,221
461,79
1,569
5b
459,918
460,33
0,412
6
408,998
409,07
0,072
α
51,0737°
48,29°
2,7837°
Meting
Zoals tabel 5 aangeeft, wijken de metingen soms meer af dan de toegestane nauwkeurigheid van 0,1 mm. De reden hiervoor is tweeledig. Om een meting te kunnen uitvoeren, moet in elk aanzicht het overeenkomstige punt gevonden worden. Om de MSA uit te voeren op het visiesysteem werd een schuifmaat gebruikt. Dit instrument is perfect voor dergelijke meetmethodes omdat de bekken van de schuifmaat uitmonden in een punt. In dit geval bestaat er nauwelijks twijfel of het overeenkomstige punt in elk aanzicht hetzelfde is. De kans dat het gemarkeerde punt overeen komt met het werkelijke punt zal dus vrij groot zijn. Een mat daarentegen, is een gebogen werkstuk zonder scherpe rand of puntvormige uiteinden. De mat heeft dus geen duidelijk afgetekende punten waardoor het vinden van overeenkomstige punten veel moeilijker is. Bovendien is het in dit geval veel moeilijker om (visueel) te controleren of de overeenkomstige punten wel gelijk zijn. Bij de schuifmaat is dit beter te controleren. Om de meetpunten te definiëren worden een aantal methodes gebruikt. Zo wordt regelmatig gebruik gemaakt van de contour van een draad. Om deze contour te verkrijgen moeten enkele parameters ingesteld worden waarvan de grijswaarde er één van is. Vanaf deze bepaalde grijswaarde wordt het onderscheid gemaakt tussen de draad en omgeving. Omdat elke camera vanuit een ander aanzicht kijkt, kunnen schaduwen of andere factoren in het ene beeld zichtbaar zijn maar in het andere aanzicht niet. Daarom moet voor elk beeld een andere grijswaarde gekozen worden waarop het onderscheid tussen draad en omgeving wordt gemaakt. Hierdoor kunnen verschillen ontstaan omtrent wat nu effectief de rand is waardoor de nauwkeurigheid daalt. Wanneer een centerlijn wordt getekend, wordt deze gecreëerd aan de hand van de contouren van het beeld, met de bijhorende onnauwkeurigheid tot gevolg. Bovendien wordt het gemiddelde van deze centerlijn gebruikt bij bewerkingen. Hoe langer de oorspronkelijke centerlijn, hoe nauwkeuriger de gemiddelde centerlijn zal zijn. Dit kan vergeleken worden met het vinden van het gemiddelde van enkele meetpunten. Wordt het gemiddelde gezocht uit zes meetpunten, dan zal dit gemiddelde minder nauwkeuriger zijn dan wanneer een gemiddelde wordt gezocht uit 60 meetpunten. Hetzelfde geldt voor de centerlijnen.
50
De gemiddelde centerlijn van een centerlijn van zes pixels lang zal minder nauwkeurig zijn dan van een centerlijn van 60 pixels lang. Wanneer dus niet de mogelijkheid bestaat om een lange centerlijn te vinden, daalt de nauwkeurigheid nog meer. Een tweede reden van de grote afwijking kan de controle zijn. Het is in de realiteit moeilijk te achterhalen waar de meetpunten zich nu effectief op de mat bevinden. Omdat manueel dus niet over de gevonden meetpunten met het visiesysteem gemeten wordt, kan de controlemeting snel enkele honderdsten tot tienden van een millimeter afwijken. De verschillen zijn kleiner zijn dan 1 mm waardoor deze invloed niet verwaarloosd worden. Zo komt het dat meting 1 een grotere afwijking heeft dan 0,1 mm. Meting 2 en meting 6 behalen wel de vooropgestelde nauwkeurigheid en zijn dus duidelijk minder onderheven aan de eerder beschreven fenomenen. Meting 3a tot en met 5b zijn de metingen uitgevoerd vanaf de plooi. Bij deze meting is het bijna onmogelijk om die metingen manueel te controleren. Omdat het meetpunt in de plooi anders gevonden wordt met het visiesysteem dan manueel met het aanslagblokje, zullen beide punten zich fysisch op een andere plaats op de mat bevinden. Echter ter controle werden de metingen overgedaan op de manier waarop ze vandaag worden opgemeten: ingeklemd in een kaliber en waarna een aanslagblokje tot aan de plooi wordt geschoven (Figuur 52).
Verschuifbaar aanslagblokje Figuur 52: Inklemmen van de mat
Om nu toch enigszins te kunnen bepalen hoe nauwkeurig de metingen zijn wordt het verschil tussen de metingen onderling bepaald, zowel voor de metingen met het visiesysteem als voor de controlemetingen met het aanslagblokje (Tabel 6). Vervolgens worden de verschillen met elkaar vergeleken. Daaruit wordt duidelijk dat twee van de vier berekende verschillen de nauwkeurigheid van 0,1 mm behalen. Toch zegt deze manier van controleren weinig over de nauwkeurigheid van het visiesysteem. Omdat de mat bij het controleren wordt opgespannen, wordt niet onder dezelfde omstandigheden gemeten als bij het visiesysteem waarbij de mat los op het draagvlak ligt. Bovendien kan de meting waarbij het controleblokje wordt gebruikt, in vraag gesteld worden. De ervaring leerde dat dit aanslagblokje vrij gemakkelijk in het plastic omhulsel van de draad te duwen is waardoor de meting kan gemanipuleerd worden. Deze meting geeft eigenlijk geen uitsluitsel of het visiesysteem correct is, of de methode met het aanslagblokje. 51
Tabel 6: Verschillen tussen de metingen onderling
Onderlinge Meting met Meting met Verschil tussen metingen Halcon aanslagblokje de metingen 3a – 4a 39,522 39,03 0,492 4a – 5a 276,59 276,61 0,02 3b – 4b 38,055 38,19 0,135 4b – 5b 278,245 277,61 0,635 De laatste meting is de plooihoek α van een haak. Er werd een hoek opgemeten van 51,0737°, terwijl de controle een hoek van 48,29° opleverde. Dit is een verschil van 2,78° en dus veel meer dan de beoogde nauwkeurigheid van 0,5°. De grootste boosdoener is de zeer korte (6 pixels) centerlijn die gebruikt werd ter hoogte van de hoek (Figuur 53). Omdat het snijpunt met snijlijn 1 zeer ver ligt van de centerlijn wordt de onnauwkeurigheid versterkt en is de afwijking op het correcte snijpunt groot (Figuur 53). Wordt de snijlijn dichter naar de centerlijn geschoven, dan wordt nauwkeurigheid groter (snijlijn 2, Figuur 53). Zo is er een opmerkelijk verschil in afwijking te zien bij te snijpunten op snijlijn 2 ten opzichte van de snijpunten op snijlijn 1.
Centerlijn Snijlijn 2
Snijlijn 1 Verlengde van de centerlijn Figuur 53: Het effect van een korte centerlijn
De oplossing is dus om het snijpunt zo dicht mogelijk naar de korte centerlijn van de haak te verplaatsen door bijvoorbeeld van snijlijn 1 naar snijlijn 2 over te gaan, en in het beste geval een snijpunt te vinden die zich op de centerlijn bevindt waardoor de afwijking tot een minimum wordt gereduceerd. Hier werken met een evenwijdige lijn zoals in meting 1 (4.5.2. ) is niet gelukt omdat de haak zich anders gedraagt in de verschillende aanzichten. Een mogelijke oplossing zou een projectie zijn van een snijlijn op de haak. Daarbij wordt met behulp van een projector of laser een lijn op de hoek geprojecteerd. Deze lijn zal in alle aanzichten te zien zijn, en altijd met de haak snijden waardoor een snijpunt op de korte centerlijn van de haak te vinden is. Deze methode is niet in de praktijk getest maar zou in principe een correctere meting moeten opleveren. Het was niet mogelijk om meting 7 en 8 op te meten met de voor handen zijnde middelen. Wel kan bijvoorbeeld dezelfde methode als voor meting α worden toegepast: het projecteren van een snijlijn met behulp van een projector of laser. Door deze snijlijn op het uiteinde van de haak te laten vallen, is het mogelijk het snijpunt van deze lijn met de omtrek van de haak te laten snijden waaruit uiteindelijk de breedte tussen de haken kan worden afgeleid.
52
5
Besluit
Deze masterproef had als doel om te onderzoeken of een visiesysteem kan worden uitgewerkt die aan de vooropgestelde eisen van Pullmaflex voldoet. Er werd gestart met een studie rond alle componenten van een visiesysteem en de zaken waarop gelet moest worden. Een aantal voorstellen werden uitgewerkt waarna afhankelijk van de flexibiliteit, haalbaarheid en kostprijs gekozen werd voor een opstelling met drie camera’s waarbij de meetpunten in een 3D-model terecht kwamen en zo werden opgemeten. Uit het uitgevoerde onderzoek kunnen een aantal besluiten voltrokken worden. Deze masterproef toont aan dat de kalibratie cruciaal is voor het bekomen van correcte metingen. Het uitvoeren van de kalibratie bleek niet eenvoudig te zijn maar eenmaal de juiste instellingen gebruikt worden, is het slechts een kwestie van genoeg kalibratiebeelden te maken en het kalibratieprogramma uit te voeren. Uitgaande van deze ervaring kan gesteld worden dat een kalibratie in de praktijk door de operatoren mogelijk moet zijn. Door hen een referentielijst mee te geven met de eigenschappen van een geslaagde kalibratie kunnen ze zelf uitmaken of de kalibratie geslaagd is. Om vervolgens uit te maken of het visiesysteem geschikt is om te gebruiken als meetinstrument werd een MSA uitgevoerd. De resultaten toonden aan dat het visiesysteem zeker geschikt is om metingen uit te voeren. Bovendien wezen de metingen op de schuifmaat voor de MSA uit dat tot op 0,01 mm nauwkeurig kan gemeten worden. Daarbij kan de vraag gesteld worden of het nodig is zo nauwkeurig te kunnen meten en eventueel over te schakelen op minder nauwkeurige (en goedkopere) camera’s. Na de MSA werden metingen uitgevoerd op één type mat. De metingen wijzen uit dat het zeker mogelijk is om tot op 0,1 mm nauwkeurig te meten. Wel hebben voorlopig niet alle metingen de beoogde nauwkeurigheid behaald. Indien het meetprincipe wordt toegepast op gevonden meetpunten kan zeer zeker de vooropgestelde nauwkeurigheid behaald worden (zoals bij MSA), echter bij het opmeten van de mat blijkt dat vooral het vinden van die meetpunten problematisch is. Om deze in de toekomst gemakkelijker en nauwkeuriger te vinden, kan bijvoorbeeld gebruik gemaakt worden van een geprojecteerd raster. Wel staat vast dat met dit soort visiesysteem naar alle waarschijnlijk elke soort mat zal kunnen worden opgemeten maar tegen welke prijs? Afgaande van de ervaring die werd opgedaan tijden deze masterproef is het programmeren van alle soorten metingen tijdrovend. Bovendien zijn de metingen nog niet zelfzoekend waardoor er dus nog niet automatisch gezocht wordt naar de gewenste zoekgebieden. Dit houdt in dat indien de functies niet zelfzoekend zijn, elke opgemeten mat (van hetzelfde type) exact op dezelfde plaats moet liggen. Bovendien zullen de matten niet veel mogen afwijken van elkaar omdat op dit moment sommige zoekgebieden zo specifiek gekozen zijn (meting α) dat bij een afwijking meten niet meer mogelijk is. Voor Pullmaflex betekent dit dat aanvankelijk veel tijd (en geld) zal moeten geïnvesteerd worden in het ontwikkelen van de metingen. Daaruit volgt ook dat het niet eenvoudig wordt om een nieuwe mat aan het systeem toe te voegen. Echter indien voor elke soort meting een functie wordt geschreven, kan in de toekomst een nieuwe mat toevoegen slechts een kwestie zijn van de juiste functies te selecteren. Ten slotte moest ook onderzocht worden of gegevensuitwisseling met een SPC software mogelijk is. Wegens tijdsgebrek werd dit item achterwege gelaten. Wel werd verzekerd door de ontwikkelaars dat dergelijke uitwisseling geen probleem is. Zo bestaat onder andere de mogelijkheid om het programma te exporteren naar VB.NET of C#. Vanuit deze programmeeromgevingen kan op een eenvoudige manier verbinding gemaakt worden met de database waaruit de SPC software zijn gegevens haalt.
53
Algemeen kan uit deze masterproef besloten worden dat een eigen ontwikkeld visiesysteem dat voldoet aan de eisen van Pullmaflex, nog veraf is. Er moet nog verder onderzoek gedaan worden ontrent de metingen en het ontwikkelen van de zelfzoekende functies eist een investering. Bovendien komen er steeds meer kant-enklare visiesystemen op de markt die voldoen aan de eisen van Pullmaflex. Deze masterproef heeft aangetoond dat er zeker potentieel zit in de ontwikkeling van een eigen visiesysteem. Het geeft ook een overzicht wat de onzekerheden zijn en het stelt Pullmaflex in staat om reeds een voorzichtige prijscalculatie te maken omtrent een toekomstige studiekost. Afhankelijk van deze studiekost kan dan beslist worden of deze masterproef gebruikt wordt als basis voor toekomstig onderzoek of er wordt overgegaan tot de aankoop van een visiesysteem.
54
Bronnen [1] Automotive seating manufacturers. L&P Automotive Group - A Division of Leggett & Platt, Incorporated. (n.d.). . Retrieved October 13, 2011, from http://www.lpautomotive.com/. [2] Hornberg, A. (2006). Handbook of machine vision (p. 798). Wiley-VCH. Retrieved September 15, 2011, from http://books.google.com/books?id=x_1IauK-M2cC&pgis=1. [3] Drivers, R. (2001). CCD vs . CMOS : Choosing an imager means considering not only the chip , but. Photonics Spectra, (January). [4] Helmers, H. (2003). CMOS vs. CCD sensors in speckle interferometry. Optics & Laser Technology, 35(8), 587595. doi: 10.1016/S0030-3992(03)00078-1. [5] Vision, M. (n.d.). Machine Vision Lens Fundamentals, 6-15. [6] Delbarre, L. (2007). Voorwoord Inhoudsopgave. [7] Spherical aberration. (n.d.). . Retrieved October 20, 2011, from http://toothwalker.org/optics/spherical.html. [8] Chromatic aberrations. (n.d.). . Retrieved October 20, 2011, from http://toothwalker.org/optics/chromatic.html. [9] Optics, F. (n.d.). Fundamental Optics 1, 1-58. [10] Lenhardt, K., & Kreuznach, B. (n.d.). Optical measurement techniques with telecentric lenses Optical measurement technique with telecentric lenses. [11] Camera Aperture, F Number, and Depth of Field Explained » i Digital Photo. (n.d.). . Retrieved October 20, 2011, from http://www.idigitalphoto.com/aperture-explained/. [12] lighting.eng_US. (2000). , 2000. [13] Paper, T. W. (n.d.). Eight Tips for Optimal Machine Vision Lighting Tips for Choosing the Right Lighting. [14] Martin, D. (2007). A Practical Guide to Machine Vision Lighting. Manager. [15] Desmet, J. (n.d.). Verlichtingstechniek, 1-45. [16] De LED (Algemeen + de werking) | Electronica | Overige. (n.d.). . Retrieved November 17, 2011, from http://electronica.infoyo.nl/overige/14828-de-led-algemeen-de-werking.html. [17] Software, M., & Building, G. (n.d.). Solution Guide I. [18] Software, M., & Building, G. (n.d.). Solution Guide III-C. Focus. [19] Methods, C. C. (n.d.). CHAPTER 4, 1-15. [20] Vilaça, J. L., Fonseca, J., & Pinho, A. C. (2006). Stereo Vision Calibration Procedure for 3D Surface measurements. Mechanical Engineering, 3508-3513. [21] Cheng, F. S., & Chen, X. (2009). Integrating 3D Vision Measurements into Industrial Robot Applications by. Industrial Robot, 10. 55
[22] Industrial Machine Vision, Robotics and Automation Systems: 3D laser scanning. (n.d.). . Retrieved November 17, 2011, from http://machine-vision-adhiguna.blogspot.com/2008/09/1.html. [23] Boehler, W., & Marbs, A. (n.d.). 3D SCANNING INSTRUMENTS. Scanning, 3-6. [24] Jeong, D. H., Kim, Y. R., Lee, K. M., Jin, K. W., & Song, C. G. (n.d.). The Design and Implementation of a Linescan Camera based Real-time Image Scanning System. Image (Rochester, N.Y.), 1-10.
56
Bijlagen Alle bijlagen zijn terug te vinden op de cd-rom achteraan de ingebonden masterproef. Bijlage 1:
De technische tekening en een gedetailleerde beschrijving over het verloop van de metingen. 09072 11134 41356
Bijlage 2:
Technische details omtrent de aangekochte camera’s. GigE uEye UI-5480SE-C/M 1/2’’ CMOS sensor GigE UI-6280SE 2/3’’ CCD sensor
Bijlage 3:
Technische details omtrent de aangekochte lenzen. Cinegon 1.4/8 – High End 3D Cinegon 1.4/12 – High End 3D
Bijlage 4:
Technische details omtrent de aangekochte kalibratieplaat.
Bijlage 5:
Programma om kalibratiebeelden te maken, de kalibratiebeelden en kalibratieprogramma. kalibratiebeelden maken kalibratiebeelden camera settings kalibreren
Bijlage 6:
MSA rapport
Bijlage 7:
De Halconprogramma’s gebruikt voor de MSA. meting 1 - … - meting 10
Bijlage 8:
Programma om productiebeelden te maken, de productiebeelden en de meetprogramma’s. productiebeelden maken productiebeelden camera settings metingen
57