GigE set to rule?
Companies tested the interoperability of GigE Vision productions at a Plug Fest held at the Vision Show
The GigE Vision camera interface, developed by the Automated Imaging Association (AIA), was formally launched in Europe at the Vision Show in Stuttgart. A brief wander through the aisles of the exhibition and you could be forgiven for thinking that it was the one and only interface available.
The AIA was heavily promoting the standard during the show, hosting events including a GigE Vision ‘Plug Fest’, where vendors tested the interoperability of their products. The VDMA hosted a GigE Vision panel discussion, and many products sported a ‘Certified GigE Vision Licensee’ plaque.
Essentially, GigE Vision is the first standard to allow fast transfer (1,000 Mbps) of data using low-cost standard cables over very long lengths (up to 100m). With GigE Vision, hardware and software from different vendors can interoperate over GigE connections. The scalable interface will follow the growth of Ethernet bandwidth. As 10GigE becomes the mainstream protocol, GigE Vision will be the fastest connection in the industry.
‘I am pleased to see the high interest for GigE Vision products,’ said Eric Carey, smart products manager at Dalsa and chair of the GigE Vision Committee. ‘This interest has grown steadily since the specification was ratified last May and we now see a large number of products with the GigE Vision logo. Those products are currently being evaluated and deployed in the field. I think GigE Vision really fills an important need of the industry, especially to replace analogue cameras using long cables with an all-digital solution.’
The development of the GigE standard has been crucial to its almost instant success, as standards have been crucial in communication protocols. ‘The development of Camera Link was a first step in this direction,’ says Rupert Stelz of Stemmer Imaging. ‘It defined the hardware interface between the camera and the host. However, the software aspect was not catered for sufficiently, since Camera Link only defined serial communication, completely ignoring the functionality of the camera. The approach adopted in IEEE1394/FireWire was far more extensive, as it laid down a more or less fixed register layout for the functionality of the camera. But it was precisely this relatively inflexible structure to the register layout that proved to be problematic. The fatal flaw was the fact that there was no reference implementation, which led to the current situation where every manufacturer of FireWire products in principle supplies their own SDK. For the customer, this means that it is no longer a simple matter to exchange IEEE1394 hardware products.
Committing to GigE
Many camera manufacturers are now eschewing certain protocols in favour of others. For example, Petko Dinev, CEO of Imperx, says his company has committed itself to GigE and Camera Link protocols. ‘USB is more for consumer products,’ he says. ‘For us, it doesn’t have a future in the industrial camera market. Similarly, FireWire tops out at 800Mb/s, which is below the data rate of our cameras, and it also has a distance limitation. In addition, we believe that there is no guarantee that FireWire interfaces will remain as standard on PCs in the medium term, whereas we’re pretty sure Ethernet will stay around for a good while yet.’
Dinev believes that Camera Link still has a significant part to play. ‘It is the only high-speed data protocol that can transfer at 8-10Gb/s at the moment. It also guarantees that all data sent will be received by the frame grabber – something that even GigE cannot achieve.’
But he believes GigE’s main strength is in its flexibility in large-scale applications, because cable length can be up to 100m. ‘In something like the paper industry, where a huge floor space has to be covered, a GigE camera system is ideal as the cameras tap in to the existing network. This is why the paper industry has been an early adopter of GigE.’
‘This camera-to-PC interface has great potential, but users need to be aware of the challenges when developing with GigE Vision products,’ says Dwayne Crawford, product manager at Matrox Imaging.
‘GigE Vision cameras support connections to any standard network interface card (NIC), but not all NICs are created equal – some models are better suited to high-bandwidth cameras than others. When shopping, look for a NIC that supports jumbo frames, interrupt throttling (sometimes called moderation), and receiving descriptors.
‘Before developing a GigE Vision-based application, users should determine their I/O needs because standard NICs typically lack auxiliary I/O. This challenge is not new and has been a struggle for the IEEE 1394 community. Moving the I/O to the camera can be just as effective as having it on the frame grabber except that the camera may not have enough I/O, but more importantly, the camera’s decision-making capability is typically limited.
‘Users should also consider the processing requirements of the application. If the data throughput is exceedingly high, multiple cameras are implemented, or substantial processing is required, CPU intensive pre-processing tasks such as filtering, colour space conversions and transformations are not addressed with standard NICs.
‘For developers to implement GigE Vision they will need to understand its benefits and limitations and consider the extra costs associated with additional I/O and an overloaded CPU. Machine vision developers should buy their cameras from a reputable vendor, and they should to seek out a NIC vendor that understands the machine vision industry. But hardware and software go hand in hand – a software environment that implements the standard feature list and custom features as well will have the greatest advantage in what is likely to be a competitive market.
How GenICam Works
Rupert Stelz of Stemmer Imaging explains Genicam, a standard interface designed to work hand in hand with GigE Vision
GenICam is intended to create a generally valid software interface that allows the devices to communicate their functions to generic software using a standardised XML file. The combination of a uniform protocol and an XML definition thus makes it possible to use hardware-independent software from any manufacturer for such devices. This means that it would be easier to exchange the image processing hardware used.
An XML file is used to describe the camera features. This XML file ultimately describes a register map. The manufacturers store the properties of their products in this file in a format described in the standard and explain how and where these can be addressed. Thus, for instance, a register controlling the gain of the camera can be located anywhere in the register map for that camera. Using the XML file, the software is then able to adjust this gain.
Using a generic software product, it is then a simple matter to address any functions of the camera or to access parameters. GenICam is therefore responsible for, on the one hand, defining the layout of the XML file and, on the other, making available a reference implementation that is capable of controlling the camera and capturing data from the camera. In subsequent versions, GenICam will also abstract the communication layer to the camera and thus also become available for FireWire or Camera Link cameras.
To achieve this, the mechanisms required for communication with the camera will be abstracted and encapsulated in a special communication layer, the transport layer. Replacing this layer thus makes it possible to communicate not only with GigE Vision components but also with IEEE 1394 or other register-based devices. In a further step, the functionality will then be extended to support not only pure register access, but also the exchange of string tokens which would then allow GenICam to also be used for Camera Link.