The most common meaning of protocol is “a system of rules that explain the correct conduct and procedures to be followed in formal situations,” Protocol, in computer science, a set of rules or procedures for transmitting data between electronic devices, such as computers. In order for computers to exchange information, there must be a preexisting agreement as to how the information will be structured and how each side will send and receive it.
Machine vision interface standards often include protocols or are themselves protocols that define how data is exchanged between cameras and host systems.
Digital technology has revolutionized the ability to capture, analyze and use, both visible and non-visible light energy, at high speed. This has enabled ever expanding application of vision technology to automate manufacturing, to streamline and optimize processes, and to drive ever expanding research into our physical environment. With the advent of this new technology in the late 1990s, it became apparent that there were great benefits to be derived from standardizing the more common elements of vision systems. This drove the development of camera interface standards that drove down costs, simplified system design/installation, and ensured component interoperability
Camera Vision Standards
A camera interface standard codifies how a camera is connected to a PC, providing a defined model that allows simpler, more effective use of vision technology. Vision applications require four basic tasks: finding & connecting to the camera; configuring the camera; grabbing images from the camera; and dealing with asynchronous events signalled by or to the camera.
Two layers of software help with these tasks. The first layer is the transport layer (TL) which enumerates the camera, provides access to the camera’s low-level registers, retrieves stream data from the device, and delivers events. The transport layer is governed by the hardware interface standard. The second layer is the image acquisition library which is part of a software development kit (SDK)
CAMERA LINK:
Released in 2000, Camera Link was the first interface built from the ground up for machine vision applications. Camera Link is a point-to-point parallel data interface (not packet-based like the other interfaces) and can be configured over one or two 26-pin connectors. In addition to image transmission, four of the signal pairs are used for control signals providing dedicated camera control with minimal latency. A camera-to-host connection can be configured with a single connector and cable (called Camera Link Base) supporting 2.04 Gbps. Two-cable configurations can include CL Medium at 4.08 Gbps, CL Full at 5.44 Gbps, and CL Deca at 6.8 Gbps (850 Mbytes/s).
Speed Camera Link was built for real-time, high speed communication. The high bandwidth of 255 Mbytes/s for one cable and up to 850 Mbytes/s for two cables assures fast transfer of images with no latency issues.
Requires a dedicated Frame grabber to be installed in the host system to talk to these CL cameras. Maximum cable length is in the range of 4 to 15 meters depending on camera clock rate between the camera and the frame grabber.
Connectors MDR 26-pin connector; SDR, HDR 26-pin connector (Mini Camera Link);
Power can be given separately or through PoCL cables.
Camera Link has optional GenICam support for plug and play interoperability
HS LINK:
The Camera Link HS standard was released in May 2012, improving on Camera Link by using off-the-shelf cables to extend reach and also increasing the bandwith using a single, low-cost fibre cable. Camera Link HS features include: single bit error immune protocols; 16 bidirectional General Purpose Input Output (GPIO) signals; system level functions such as synchronizing multiple parallel processing frame grabber; and frame by frame control of camera operating mode from the host. Camera Link HS is supported at 3.125 and 5.0 Gbits/s per lane with the M protocol and at 10.3, 12.5, 13.8, 15.9 Gbits/s per lane with the X protocol. Unencrypted VHSIC Hardware Description Language (VHDL) IP cores are available, reducing interconnection issues and development risks when integrating Camera Link HS into original equipment manufacturer (OEM) or custom implementations. Even though Camera Link HS is a packet based protocol, it achieves trigger jitter of ±3.2 nanoseconds (ns) using the IP core with typical latencies of 150 ns and GPIO latency and jitters in the 300 ns range. Data forwarding is achieved with low cost copper cabling to neighbouring PCs.
Speed Camera Link HS is designed for parallel processing and supports 1 through 8 cables with per-cable effective bandwidths of 1200/1850 Mbytes/s (F2 fiber), 2100/3300 Mbytes/s (C2 copper), or 8400 Mbytes/s (C3 copper/fiber)
Requires a dedicated Frame grabber to be installed in the host system to talk to these CL cameras. Cables – C2/C3 copper–15m/2m; Plug–on Active Optical Cable (AOC)-100m; F2 (SFP+) copper/fiber optic cable–5m/300m
Connectors: Copper cable: SFF-8470 (InfiniBand or CX4); Fiber optic cable: Plug on active optical or SFP+ connector/LC optical.
Coaxpress:
The CoaXPress (CXP) standard was released in December 2010. It provides a high speed interface between cameras and frame grabbers and allows long cable lengths. In its simplest form, CoaXPress uses a single coaxial cable to: transmit data from a camera to a frame grabber at up to 12.5 Gbits/s; simultaneously transmit control data and triggers from the frame grabber to the camera at up to 41.7 Mbits/s; and provide up to 13W of power to the camera. Version 2.1 adds support for GenICam GenDC.
CoaXPress already supports the fastest cameras on the market with significant headroom by allowing up to 7.2 Gbytes/s with 6 links in one cable.
Requires Frame grabber to connect to HOST System.
At 1.25 Gbits/s link speed (CXP-1), CoaXPress supports cable lengths of over 100m; at 3.125 Gbits/s (CXP-3), the maximum length is 85m; and even at the maximum 12.5 Gbits/s (CXP‑6), 25m cables with 7mm diameter can be used.
The small micro-BNC and the widely used BNC connectors can be used at all speeds up to 12.5 Gbits/s. The small DIN 1.0/2.3 can be used up to 6.25 Gbit/s and can also be combined into a multiway connector.
Support for GenICam including GenApi, SFNC and GenTL (including image streaming) is mandatory. GenICam GenDC and IIDC2 support is optional.
GigE VISION:
The GigE Vision standard is a widely adopted camera interface standard developed using the Ethernet (IEEE 802.3) communication standard. Released in May 2006, the standard was revised in 2010 (version 1.2), 2011 (version 2.0) and 2018 (version 2.1). GigE Vision supports multiple stream channels and allows for fast error-free image transfer over very long distances using standard Ethernet cables. Hardware and software from different vendors can interoperate seamlessly over Ethernet connections at various data rates. Other Ethernet standards, such as IEEE 1588, are leveraged to provide deterministic triggering.
Currently 1, 2.5, 5 and 10 Gbits/s systems are readily available
Advancements in GigE, like 25Gb and more are also happening.
PC (direct), with GigE interfaces built into almost all PCs and embedded systems. No Frame grabber needed.
Depending on the cable and number of cameras, GigE Vision allows cable lengths up to 100m (copper) and 5,000m (fiber optic) using a single camera.
Connectors available for GigE Vision: Copper Ethernet; Copper Ethernet with vision locking screws; Copper Ethernet with latch-lock; Copper Ethernet with environmental seal; 10 Gigabit Ethernet direct attach cable; Ethernet fiber optic cable.
USB3 Vision:
The USB3 Vision standard was initiated in late 2011, with version 1.0 published in January 2013. While the standard is new, the machine vision industry is not unfamiliar with USB technology. The USB interface brings broad levels of consumer awareness, easy plug and play installation, and high levels of performance. The expertise of many companies was combined to create a standard that accommodates the varied needs within the machine vision industry. This approach allows off-the-shelf USB host hardware and nearly any operating system to take advantage of hardware direct memory access (DMA) capabilities to directly transfer images from the camera into user buffers. Leveraging camera control concepts from the GenICam standard means end users can easily implement USB3 Vision into existing systems
The standard builds upon the inherent aspects of USB 3.0, bringing end-to-end data reliability at over 400 Mbytes/s. This transfer speed is further improved with 10Gbit/s and 20Gbit/s speeds standardized in USB 3.1 and 3.2.
With USB interfaces built into almost all PCs and embedded systems, no frame grabbers needed.
USB3 Vision type connectors: host side (standard A locking) and device side (micro-B locking). Locking Type-C connectors also defined by USB standard and optionally used by hosts and devices.
Standard passive copper cable 3-5m; active copper cable 8+m; multi-mode fiber optic cable 100m.
GEN<I>CAM – GenICam:
GenICam (Generic Interface for Cameras) provides a generic programming interface for all kinds of devices, mainly cameras, no matter what interface technology they are using or what features they are implementing. The result is that the application programming interface (API) will be identical regardless of interface technology.
SFNC (Standard Feature Naming Convention): This is the part of GenICam that most users see. It standardizes the name, type, meaning and use of device features so that devices from different vendors always use the same names for the same functionality.
GenApi (Application Programming Interface): This defines the mechanism used to provide the generic API via self-describing XML file in the device.
GenTL (Transport Layer): This standardizes the transport layer programming interface, which comes with a GenTL Producer Framework reference implementation for an easy start with GenTL. It is a low-level API to provide a standard interface to a device regardless of the transport layer (with or without a frame grabber).
GenCP (Control Protocol): This is a low-level standard to define the packet format for device control and is used by interface standards to save them needing to reinvent a control protocol for each new standard.
GenDC (Data Container): This is a low-level standard to define the data packet format to allow devices to send any form of data to a host system. It avoids the need for each interface standard to duplicate work on adding new data formats.
IIDC2:
The IIDC2 standard, which is a successor to IIDC for FireWire cameras, defines a flexible-fixed camera control register layout. All details are defined for how each feature, such as exposure time, is mapped to the register space, representing a very simple approach to camera control.
This is Usable on IEEE1394, USB3 Vision, CoaXPress and future interfaces. It is able to be mapped to a GenICam interface.
The standard offers an easy method for controlling cameras by only reading/writing to registers directly inside the camera .
When using IIDC2 registers with GenICam, the camera description file can be common for all cameras because the IIDC2 register layout is defined in the specification.
EMVA 1288 STANDARD:
EMVA 1288 is the Standard for Measurement and Presentation of Specifications for Machine Vision Sensors and Cameras. Customers and users of vision components benefit from the standard’s use as well as the component manufacturers. It creates transparency by defining reliable and exact measurement procedures as well as data presentation guidelines and makes the comparison of cameras and image sensors much easier.
Short form-factor pluggable plus (SFP+):
HS LINK and 10GigE are also available over a fiber-optic interface. The SFP+ interface module is derived from the SFP (short form-factor pluggable) module which is mainly used in telecommunications and data transfer. Depending on the application requirement, a very wide variety of SFP+ modules are available
The 10GBASE-SR standard-based transceivers can support very long transmission distances (up to 10 km). Very long cable lengths are helpful in industrial and outdoor environments. Being an optical fiber, the transmission noise is extremely low and stable over long distances, and there is high immunity to external noise sources including EMI and RFI that might be emitted by equipment in large factory environments.
MIPI Interface for Embedded applications:
MIPI CSI is a common interface for mobile applications to connect a smart phone module to an SOC. With MIPI CSI-2, which is the second-generation camera serial MIPI interface, a data rate of 300 MB/sec per lane can be supported
TCP/IP:
TCP/IP stands for Transmission Control Protocol/Internet Protocol and is a suite of communication protocols used to interconnect network devices on the internet. TCP/IP is also used as a communications protocol in a private computer network — an intranet or extranet. This is through which we use GigE Vision cameras and do send control output from cameras or Frame grabbers through host ethernet connection to different controls like PLC etc.
TCP/IP specifies how data is exchanged over the net by providing end-to-end communications that identify how it should be broken into packets, addressed, transmitted, routed and received at the destination. TCP/IP requires little central management and is designed to make networks reliable with the ability to recover automatically from the failure of any device on the network.
Internet Protocol Version 4 (IPv4) is the primary version used.
DHCP:
Dynamic host configuration protocol is relatively a commonly used protocol that is used by routers to distribute addresses to cameras and computers.
When a new GigE camera is first powered and initialized, a dynamic IP address is assigned to the camera according to the DHCP protocol.
This means that the IP address may change (within a range) every time the camera or computer is restarted. It may take up to one minute for the IP address to resolve and the camera to enumerate.
MODBUS:
Modbus or MODBUS is a client/server data communications protocol in the application layer. It was originally designed for use with programmable logic controllers (PLCs), but has become a de facto standard communication protocol for communication between industrial electronic devices in a wide range of buses and networks.
Modbus is popular in industrial environments because it is openly published and royalty-free. It was developed for industrial applications, is relatively easy to deploy and maintain compared to other standards, and places few restrictions on the format of the data to be transmitted.
Machine Vision software for application development generally includes this communication protocol to send the results from the vision systems to the other control systems.
The Modbus protocol uses serial communication lines, Ethernet, or the Internet protocol suite as a transport layer. Modbus supports communication to and from multiple devices connected to the same cable or Ethernet network.
PTP:
The Precision Time Protocol (PTP) camera feature allows you to synchronize multiple GigE cameras in the same network. The IEEE 1588 standard defines the protocol
The Precision Time Protocol (PTP) feature enables a camera to use the following features, if available:
How It Works
Through PTP, multiple devices (e.g., cameras) are automatically synchronized with the most accurate clock found in a network, the so-called master clock or best master clock.
The protocol enables systems within a network to do the following:
The master clock is determined by several criteria.
Timestamp Synchronization:
The basic concept of the Precision Time Protocol (IEEE 1588) is based on the exchange of PTP messages. These messages allow the slave clocks to synchronize their timestamp value with the timestamp value of the master clock.
If no device in the network is synchronized to a coordinated world time (e.g., TAI or UTC), the network will operate in the arbitrary timescale mode (ARB). In this mode, the epoch is arbitrary, as it is not bound to an absolute time. The timescale is relative and only valid in this network.
PROFINET:
Profinet (usually styled as PROFINET, as a portmanteau for Process Field Network) is an industry technical standard for data communication over Industrial Ethernet, designed for collecting data from, and controlling equipment in industrial systems, with a particular strength in delivering data under tight time constraints. The standard is maintained and supported by Profibus and Profinet International, an umbrella organization headquartered in Karlsruhe, Germany.
The Profinet protocol is designed for the fast data exchange between Ethernet-based field devices and follows the provider-consumer model.[1] Field devices in a subordinate Profibus line can be integrated in the Profinet system seamlessly via an IO-Proxy (representative of a subordinate bus system).
This blog is tried to cover Standards and Protocols that are used in MACHINE VISION based automation. It covers camera standards in terms of interfaces, in terms of protocols, in terms network protocols, in terms of control communication related protocols. As we all are aware, Machine Vision is not just finding defects or measuring or any task but also to give data or info to control to dictate the next action. Hence this blog is made in a such a way that all these topics are covered.
Note: As always, this blog is also a collection of information from a3a, VDMA,Wikipedia and many other web sites to give a consolidated summary for easy understanding and reference. Any errors in the blog or any content found not to be used here can be informed to us in mail to [email protected] and we shall consider and do the needful. This blog is more for informative purposes and not for any commercial purposes.
We'll be glad to help you! Please contact our Sales Team for more information.
We'll be glad to help you! Please contact our Sales Team for more information.