GiGE, Camera Link of toch USB?

13/07/2018

Door Liam van Koert

Als het om het gebruik van visionstandaarden gaat, zijn er drie die er met kop en schouders bovenuit steken. We Hebben het dan over GiGe, Camera Link en USB. Van laatstgenoemde komen nu ook de eerste usb 3.0 camera’s op de Markt. Maar wat kies je? En waar moet je bij het maken van die keuze allemaal op letten?


     

Machinevision heeft een onmiskenbaar belangrijke rol gespeeld in het verbeteren van de kwaliteit van producten en de snelheid waarmee ze geproduceerd kunnen worden. Dit dankzij het steeds beter inzichtelijk maken van fouten en het steeds nauwkeuriger kunnen positioneren van componenten. Dit geldt voor tal van industrieën. Natuurlijk voor de maakindustrie, maar ook voor farma, land- en tuinbouw en elektronica. Bovendien blijft de impact van vision niet beperkt tot enkele deelprocessen, maar is het aantal toepassingen ongekend groot. Van inspectiesystemen in auto’s om recalls te verminderen, tot en met het sorteren van groenten en fruit. En zelfs ooit ambachtelijke processen als het maken van horloges doen tegenwoordig een belangrijk beroep op de kracht van vision.

Met het voortschrijden van de technologie ligt de focus daarbij niet meer alleen op het halen van een nog hogere nauwkeurigheid, maar spelen ook snelheid en kosten een hoofdrol. Foutpositieven worden voorkomen zonder de productielijn te vertragen. Verschillende factoren spelen hier een rol. De beeldsensor, hoe de cameramodule is geoptimaliseerd om het meeste uit de sensor te halen, maar ook het visionsysteem als geheel. Dus hoe wordt de belichting aangestuurd, wordt er gebruikgemaakt van meerdere camera’s die verschillende hoeken vastleggen en hoe zit het met multi-capture en postprocessing features zoals region of interest en wide dynamic range? Bovendien is ook de gegevensoverdracht van invloed.

Kortom, een geweldig beeld hangt van veel zaken af en een holistisch ontwerp dat het meeste uit de sensor haalt is essentieel. Een sleutelrol in dit ontwerp is weggelegd voor de manier waarop data wordt gestreamd, zonder dat er gegevens verloren gaan of er vertragingen optreden. Voor de EMEA-regio zijn de voorspellingen dat in 2019 slechts drie standaarden – te weten GigE Vision, Camera Link and USB Vision (gecombineerd 2.0 en 3.0) – het leeuwendeel van de toepassingen voor hun rekening zullen nemen. We praten dan – in termen van omzet – over een gezamenlijk marktaandeel van 85 procent. Wanneer we dit nog verder uitsplitsen, zien we dat alle andere standaarden een aandeel van minder dan 2 procent hebben, waaronder CoaxPress (de vierde meest toegepaste standaard) en FireWire (de vijfde meest toegepaste standaard).

 

De juiste balans

Een van de lastigste afwegingen bij elk visionproject is het spanningsveld tussen bandbreedte en de te overbruggen afstand. Daarnaast spelen natuurlijk ook kosten en complexiteit een belangrijke rol. Reden genoeg om de drie belangrijkste visionstandaarden, dus GigE, Camera Link en USB, eens naast elkaar te leggen. Meer bandbreedte maakt het mogelijk om meer features te integreren. De Sony XCL-SG510 gebruikt bijvoorbeeld de Camera Link-bandbreedte niet alleen om 5.1 megapixel beelden te versturen bij een frame rate van 54 fps, maar ook om features als wide dynamic range toe te passen. Hierbij worden meerdere beelden met meerdere belichtingsniveaus gecombineerd tot een composietbeeld om extra details naar voren te brengen. De nieuwe USB-module (XCU-CG160) helpt hier om de beschikbare bandbreedte nog verder op te schroeven. Dit is natuurlijk niet het complete plaatje. Compromissen moeten ook gekozen worden ten aanzien van kosten, het aantal camera’s dat op een netwerk kan worden aangesloten en de mogelijkheid de snelheid op te voeren door het toepassen van extra kabels. Bij de CoaXPress CXP-6 Quad standaard bijvoorbeeld kunnen vier coaxkabels worden ingezet om een snelheid van 25 Gbps (4×6.25) te halen. En ook bij Camera Link kunnen meerdere kabels worden toegepast voor een hogere overdrachtssnelheid. Hier hangt de totale snelheid echter af van de configuratie (base, medium, full of extended full) en is het geen kwestie van eenvoudigweg verdubbelen of verviervoudigen. Verder zijn er standaarden zoals IEEE1394b die het gebruik van meerdere kabels mogelijk maken, maar dan niet voor meer snelheid, maar uitsluitend voor daisy chaining-doeleinden. Dan is er ook de afweging om de mogelijkheid van GigE om IEEE1588 te gebruiken om de totale systeemkosten te drukken. Men kan hiermee namelijk de noodzaak voor aanvullende hardware elimineren – denk bijvoorbeeld aan een GPS timing chip – wanneer synchronisatie tussen verschillende camera’s of systeemcomponenten vereist is.

 

Nieuwe generatie standaarden

De keuze voor een transmissiestandaard moet ook passen in de bestaande infrastructuur. In de grafiek is weliswaar het gebruik van het hele EMEAgebied weergegeven, maar er zijn ook significante verschillen per regio. In het verre oosten is vooral Camera Link populair, terwijl GigE in Europa een marktaandeel van 50 procent heeft. Wel zijn er ook hier pragmatische gebruikers die overwegen naar Camera Link over te stappen – mits de toepassing het toestaat – om gebruik te maken van de hogere frame rate die de standaard ondersteund. Hier komt nog bij dat er ook een hele nieuwe generatie visionstandaarden aan de deur klopt. Denk aan 10 GigE, en Camera Link HS, die beide snelheden van 10 Gbps (afhankelijk van de configuratie) mogelijk maken over grotere afstanden. In het geval van 10 GigE is dit zelfs 100 meter. Niet alle nieuwe standaarden zijn echter backwards compatible en dit kan uiteindelijk invloed hebben op de toepasbaarheid. Nu is 10 GigE dit wel, waardoor het naadloos in bestaande infrastructuur kan worden geïntegreerd, maar geldt dit bijvoorbeeld niet voor Camera Link HS. Dit is niet simpelweg een voortborduren op de vorige 2.0-versie, wat waarschijnlijk betekent dat de adoptatie ervan meer tijd vergt.

 

Een coherent systeem

Of het je het nu over land- en tuinbouw, verkeerssystemen of robots in de fabriek hebt, steeds vaker worden er meerdere camera’s samengevoegd tot één compleet systeem voor een beter geïnformeerd beeld. Het is daarom van toenemend belang dat ze ook onderling kunnen communiceren. Bij kwaliteitscontrole van groenten bijvoorbeeld neemt een inspectierobot de slechte producten van de lopende band, waarbij de continue groentenstroom vaak nog bedekt is met aarde. Er zijn dan meerdere beelden van meerdere camera’s nodig om nauwkeurig te bepalen welke groenten aan de strenge supermarkteisen voldoen en welke niet. Van welke wordt vervolgens sap gemaakt en welke zijn beschadigd, ziek of beschimmeld? Om dit met zo min mogelijk foutpositieven en zelfs nog minder foutnegatieven uit te voeren, zijn kleurencamera’s nodig, nabij-infraroodcamera’s en misschien zelfs gepolariseerde en/of hyperspectrale camera’s om een onderscheid te kunnen maken tussen een normale vlek, een kneuzing, een infectie of zelfs een onderhuids object. De mogelijkheid van camera’s om precies op hetzelfde moment een plaatje te schieten en zo precies over hetzelfde beeld te beschikken, is voor dergelijke applicaties cruciaal. Een standaard camera beschikt over een interne klok. De kloksnelheden zijn arbitrair en uniek voor elke camera, zonder vast verband tussen de verschillende apparaten. En omdat dus elk apparaat op een netwerk zijn eigen klok heeft, kan je niet programmeren dat een module precies op een specifiek moment activeert. Traditioneel wordt dit ondervangen door een hardwarematige trigger, gebaseerd op technologie zoals GPS. Dit is tot op de nanoseconde nauwkeurig, maar levert substantiële extra kosten op en introduceert bovendien een ‘single point of failure’ in het systeem.

Het alternatief is om software te gebruiken op basis van het precision timing protocol IEEE1588, dat met de GigE v2.0 standaard kan worden geïmplementeerd. Er wordt dan dynamisch een master klok toegewezen (hiermee wordt het falen op componentniveau ondervangen) en op vaste intervallen worden alle componenten in het systeem met dezelfde klok gesynchroniseerd. Door het gebruiken van dit protocol is het mogelijk om op de microseconde precies te werken. Hoewel minder nauwkeurig dan de nanoseconde die met een GPS-chip wordt gehaald, is het nauwkeurig genoeg voor veruit de meeste machinevisiontoepassingen. Bovendien wordt het protocol gebruikt om niet alleen camera’s, maar ook andere systeemcomponenten te synchroniseren. Dit kunnen lenzen en belichtingsmodules zijn, maar bijvoorbeeld ook robots. Individuele componenten kunnen parameters uitwisselen via ethernet en kunnen ook via ethernet getriggerd worden. Zo wordt het bijvoorbeeld mogelijk om heel precies de lichtpulsen met de camera te synchroniseren en snel ‘on the fly’ aanpassingen te doen. In machinevisionsystemen waren camera’s traditioneel alleen in staat om als IEEE1588 slave te acteren. Hierbij was er dedicated hardware nodig als master, inclusief een back-up voor in het geval van storingen. Ook dit bracht natuurlijk de nodige kosten met zich mee. In 2016 lanceerde Sony echter haar eerste camera die ook als master kon fungeren. En in wordt met de XCG-CG510 en XCG-CG240 een vervolgstap gezet door een acquisitie-scheduler, een software-trigger, GPO-control en UserSet load actioncommando’s te combineren. Hiermee konden hun GSCMOS-camera’s zeer precies vooraf geplande beeldacquisitie met de echte wereld synchroniseren. Dit enkele honderden keren nauwkeuriger dan de gangbare systemen.