GigE Vision : un standard émergeant pour la vision industrielle

Le lancement officiel du standard GigE Vision, développé par l’AIA (Automated Imaging Association), a eu lieu à l’occasion de l’évènement Vision Show East, qui s’est tenu du 9 au 11 mai dernier à Boston. Le lancement officiel du standard GigE Vision, développé par l’AIA (Automated Imaging Association), a eu lieu à l’occasion de l’évènement Vision Show East, qui s’est tenu du 9 au 11 mai dernier à Boston, Massachusetts. Jusqu’à la fin des années 90, la seule façon de relier une caméra numérique à une carte d’acquisition était l’adaptation d’interfaces parallèles LVDS (Low Voltage Differential Signaling). Il n’existait alors aucune norme, que ce soit en matière de connecteurs, de protocoles de communication, et encore moins de contrôle des caméras… Aujourd’hui, la situation a beaucoup évolué : plusieurs standards, répondant partiellement aux besoins des utilisateurs, ont fait leur apparition. Camera Link, avec un débit maximal théorique de 7.14 Gbits/s (en configuration Full), reste la solution de prédilection des applications « haut de gamme », nécessitant des vitesses d’acquisition et des résolutions très élevés. Pour les applications moins exigeantes, ou nécessitant la connexion de plusieurs caméras, c’est la solution FireWire qui l’emporte. Celle-ci permet en théorie de connecter jusqu’à 63 caméras à une seule et même carte d’acquisition, et présente en outre l’avantage de ne pas nécessiter de carte d’acquisition spécifique, ni de driver propre à chaque fournisseur comme dans le cas de Camera Link. Les composants matériels et logiciels d’interfaces de caméras FireWire sont standardisés et très courants ; certains PC en sont d’ailleurs équipés nativement. Du point de vue de la bande passante, avec un débit maximal de 400 Mbits/s, FireWire constitue une solution convenable pour un grand nombre d’applications de vision. L’intérêt d’Ethernet pour la vision Personne n’ignore ce qu’est Ethernet, puisqu’il s’agit du moyen le plus universellement utilisé pour connecter un ordinateur à un réseau. Bien plus encore que FireWire, la technologie Ethernet bénéficie d’une large démocratisation des composants nécessaires à sa mise en œuvre. Elle a d’ores et déjà été adaptée aux besoins de l’industrie dans de nombreux domaines, et est aujourd’hui utilisée entre autres pour la communication inter-automates, la remontée des informations vers la supervision, avec également des applications émergeantes dans le domaine du contrôle temps-réel. Pour quelle raison la vision industrielle échapperait-elle à ce raz de marrée ? Il est vrai que les premières générations d’Ethernet offraient malheureusement des débits (10 Mbps et 100 Mbps pour Fast-Ethernet) largement insuffisants. Mais avec l’arrivée d’Ethernet Gigabit la donne a changé. Offrant un débit maximal de 1000 Mbps ou 1 gigabit par seconde (Gbps), cette dernière génération du protocole Ethernet fournit désormais un moyen fiable de transmettre des données images en provenance de caméras de vision industrielle. Image GE_back_1342x948.jpg Mais, direz-vous, des caméras Ethernet et Gigabit Ethernet sont disponibles depuis un certain temps déjà. Alors qu’y a-t-il de nouveau ? Et qu’est-ce donc que ce nouveau standard GigE Vision ? Et bien jusqu’à présent, les caméras Ethernet ou Gibagit-Ethernet étaient équipées de calculateurs internes qui empaquetaient les données images puis les transmettaient vers une unité de traitement, sous une forme compressée et généralement pas en temps réel. Cette approche était souhaitable pour des « smart cameras », qui ne transmettent généralement pas de données images brutes, mais plutôt des données résultant de traitements effectués sur les images par un processeur embarqué. Plus récemment, de nouvelles caméras ont été commercialisées en mettant en avant la capacité à produire des flots de données images non compressées pour répondre aux besoins d’applications exigeantes de vision industrielle. Quoi qu’il en soit, ces caméras ne sont pour l’heure pas conformes au standard GigE Vision, et nécessitent une intégration personnalisée dans tous les cas. GigE Vision, kesako ? GigE Vision est un nouveau standard d’interface de vision industrielle, qui vient d’être publié par l’AIA (Advanced Imaging Association). A la différence de Gigabit Ethernet, qui représente simplement la structure réseau sur laquelle est construite l’interface, le standard GigE Vision couvre l’interfaçage Hardware et Software, les protocoles de communication et les registres de contrôle caméras. GigE Vision s’apparente au standards DCAM (IIDC) de FireWire, et présente un grand potentiel de réduction des coûts d’intégration des systèmes de caméras, et d’amélioration de la simplicité d’utilisation. Image GeniCAM.JPG Concrètement, le standard GigE Vision se décompose en deux grandes parties. La première concerne la définition de la couche transport ou Transport Layer, c’est à dire l’interaction et la communication avec la caméra à proprement parler : détection et identification, contrôle par lecture/écriture des registres. Elle couvre également la transmission du flot de donnée de la caméra vers l’hôte, au travers d’une connexion Ethernet. Notons qu’en réalité, bien que baptisée Transport Layer, cette partie va au-delà de la couche transport telle que définie dans le modèle OSI. La seconde partie du standard concerne quant à elle la description des caractéristiques (par exemple le gain) d’un équipement et la façon d’y accéder (au travers d’un plan de registres). Insistons sur le fait que cette partie est générique, et qu’elle peut être utilisée avec n’importe quelle couche transport. Cela signifie que celle-ci peut aussi bien servir à décrire le plan de registre d’une caméra Firewire, que celui d’une caméra Gigabit Ethernet. C’est la raison pour laquelle cette seconde partie est basée sur une structure de commande baptisée GenICam, qui établit une interface software commune, permettant aux éditeurs de logiciels de faire communiquer leurs produits avec les caméras des différents fournisseurs, sans qu’aucune customisation ne soit nécessaire. Une approche différente Typiquement, un standard doit apporter une réponse à la situation suivante, illustrée par la figure 1 : une application d’un éditeur A est connectée à une caméra d’un fournisseur C par le biais d’un driver proposé par un vendeur B, lequel est généralement accompagné d’un utilitaire graphique pour la configuration et le paramétrage. La solution traditionnellement proposée consiste à définir une interface caméra standard (un plan de registres) ainsi qu’une interface driver standard (c'est-à-dire une API). GigE Vision aurait pu se contenter de définir une nième interface caméra ainsi qu’une nième API. Mais cette approche n’apporte pas de réponse à deux problématique importantes qui sont : la rapidité et la simplicité d’extension des interfaces, ainsi que la possibilité de réutiliser les implémentations existantes. Image classic.jpg Les standards classiques tels que DCAM tentent de gérer l’augmentation des fonctionnalités en définissant un grand nombre de registres sensés couvrir toutes les éventualités. Beaucoup de fonctionnalités sont ainsi ajoutées longtemps avant qu’elles ne soient effectivement implémentées au sein des caméras. Mais puisque aucune caméra n’est disponible pour tester ces nouvelles fonctionnalités, beaucoup d’entre elles ne sont finalement jamais supportées par les vendeurs. A l’inverse, lorsqu’une nouvelle fonctionnalité doit être ajoutée pour les besoins d’un client OEM, le plus souvent celle-ci n’est pas supportée et doit être ajoutée à la caméra en tant que fonctionnalité non-standard. Dans ce cas, le constructeur de caméra doit trouver un fournisseur de driver acceptant de supporter cette nouvelle fonctionnalité. Mais si pour le constructeur de caméra il est facile de rentabiliser un investissement par la vente de caméras, il n’en va pas de même pour un vendeur de driver, dont le prix est de loin inférieur à celui d’une caméra. Cette difficulté a d’ailleurs conduit bon nombre de constructeurs de caméras 1394 à développer leur propre drivers dans le but de gagner en flexibilté, pour être à même d’ajouter de nouvelles fonctionnalités quand bon leur semble. Etait-ce vraiment cela l’objectif du standard DCAM ? Lorsque chaque constructeur se met à écrire son propre driver, on peut légitimement se poser des questions… Pour éviter cet écueil, le nouveau standard GigE Vision adopte une toute autre philosophie. Pour permettre aux drivers existants de supporter les nouvelles fonctionnalités de caméras qui ne sont pas encore mentionnées dans le standard, l’approche retenue consiste à fournir un moyen de décrire les interfaces plutôt que de les définir de façon rigide (Figure 2). Chaque caméra GigE Vision inclut donc une description de son interface. Le driver lit cette description et fournit un accès à la caméra pour l’application ou pour d’autre clients tels que des configurateurs graphiques. Avec un langage de description suffisamment puissant (en l’occurrence le langage XML), le constructeur de caméra souhaitant ajouter une nouvelle fonctionnalité n’aura alors qu’à ajouter cette fonctionnalité au fichier de description, pour que l’ensemble des drivers existants puisse y avoir immédiatement accès. Cela signifie également que les utilisateurs séduits par les fonctionnalités innovantes d’un nouveau modèle de caméra pourront changer leur matériel sans avoir à se préoccuper de la compatibilité du driver. Image New2.jpg Alors qu’y a-t-il de si génial avec Gigabit Ethernet ? Pour résumer, Gigabit Ethernet est très prometteur en matière de vision industrielle parce qu’il fournit un grand nombre de nouvelles caractéristiques jusqu’alors indisponibles dans une seule et même interface de caméra. La combinaison d’un haut débit, d’une interface hardware extrêmement répandue et d’un câblage peu coûteux font de Gigabit Ethernet une option attractive pour l’interfaçage de caméras. Avec le développement par l’association AIA (Advanced Imaging Association) d’un protocole de communication standardisé, baptisé GigE Vision, Gigabit Ethernet devient encore plus attractif pour la vision industrielle. Toutefois, Firewire est un standard utilisé en vision industrielle depuis plusieurs années déjà. En conséquence, un grand nombre de logiciels et de systèmes de vision supportent les caméras firewire compatibles DCAM (IIDC 1.30). Etant donné que GigE Vision est nouveau sur le marché, il y aura dans un premier temps un choix plus restreint d’outils supportant le nouveau standard. Encadré____________________________________________________________________ GigE Vision : quels bénéfices ? Voici en résumé quelques uns des bénéfices les plus probants apportés par le standard GigE Vision :  Un nombre croissant de PC et Laptop sont équipés de ports Ethernet Gigabit, ce qui élimine le besoin d’interfaces spéciales ou de coûteux/compliqués frame grabbers.  Gigabit Ethernet fournit une bande passante suffisante pour couvrir les besoins de 90% des applications de vision industrielle, éliminant le besoin d’utiliser des interfaces coûteuses du type CameraLink.  Gigabit Ethernet permet de transmettre des données images sur de grandes distances pouvant atteindre 100 mètres en utilisant un câblage peu coûteux de CAT5 ou CAT6. De telles longueurs de câbles ne sont pas envisageables avec CameraLink, Firewire ou USB excepté en utilisant des ponts à fibre optique, mais cela est très coûteux.  GigE Vision est compatible avec l’utilisation de switches ou de hubs, ce qui autorise la mise en réseau de plusieurs caméras. Cela est particulièrement utile dans des situations requérant de multiples vues.  Le nouveau standard GigE Vision offre une simplicité d’utilisation égale à celle des caméras firewire compatibles DCAM.  10 Gigabit Ethernet offrira bientôt des débits de 10 gigabits par seconde, ce qui signifie que des interfaces parallèles telles que Camera Link ne seront plus nécessaires pour des applications à grandes vitesses.