Machine vision acquisition architectures come in many different forms, but they all have the same end goal — to transfer image data from a physical sensor into a processing unit that can analyze the image and take an action. This goal is the same for PC-based machine vision systems, embedded compact vision systems, and smart cameras.
Of these architectures, PC-based machine vision systems are the most popular because they provide the best performance and the most flexibility for the price. With that said, all physical architectures have the same starting point and ending point. You have a camera on one end and a processing unit on the other.
This article will explore the strengths and weaknesses of the five major camera buses — analog, Camera Link, USB, IEEE 1394, and GigE Vision — and describe the decisions and trade-offs you may need to make when deciding which camera bus is right for your application. The five camera buses will be compared over the following eight categories on a relative scale:
- Throughput — The rate at which image data can be transferred over the bus.
- Effective Cost — The overall component price of a system, including the camera, cables, frame grabbers, and software.
- Cable Length — The maximum possible distance between the camera and the PC without repeaters.
- Standardized Interface — A measure of ease of use and future scalability. Plug-and-play interfaces make some camera buses easier to use and allow for future system upgrades without significant rework.
- Power Over Cable — The ability of the camera bus to provide power to the camera over the same cable.
- Camera Availability — A measure of the number of different camera types available, how long the camera bus has been available, and the overall acceptance of the standard in the vision industry.
- CPU Usage — The amount of CPU available to process images during image acquisition.
- I/O Synchronization — The ease at which triggering and overall system communication is addressed and handled within the camera bus.
Each camera bus receives a relative score from one to five for each of the eight categories above, with five being the highest score and one being the lowest.
Analog Camera Buses
Industrial analog cameras use coaxial cable to transmit an analog video signal from the camera to an image acquisition device or monitor. The analog video signal transmitted by the camera uses the same composite video formats that TV stations use to broadcast video signals around the world. The two main video standards for color video signals are the National Television Systems Committee (NTSC) and Phase Alternative Line (PAL). NTSC is more common in North America and Japan, and PAL is more common in Europe.
Throughput: Analog cameras are suitable for low- to medium-bandwidth imaging applications. Pixel clock rates usually are less than 40 MHz, and most analog cameras transmit only one pixel per clock cycle. While exceptions exist, the vast majority of analog cameras follows one of the four major video standards described above. The largest throughput exists under the PAL standard, which transmits data at a little more than 11 MB/s. While this rate is acceptable for many vision applications, it is the lowest of the five major buses. Score: 1
Cost-effectiveness: Because analog cameras have been around for half a century, they are inexpensive. This low cost is often offset by the need for a frame grabber to convert the image into a digital representation and send it to system memory. The total system cost is still more than with other camera buses. Score: 3
Cable length: Analog camera cabling ranges from simple to complex. The most basic video connection to a standard analog camera requires only a single 75 Ω coaxial cable, often with standard BNC connectors. Nonstandard analog cameras sometimes require additional lines to carry the horizontal and vertical synchronization signals. The recommended maximum cable length for analog video signals varies widely. Some sources suggest a length of 10 m or less for the best video quality, while other sources say that runs of 100 m or more are acceptable with minimal loss in image quality. Score: 4
Standardized interface: Even though analog standards have existed for decades, the introduction of nonstandard analog cameras is more complicated because it requires additional horizontal and vertical synch signals. When compared to other camera buses that feature automatic camera discovery, digital image quality, and software camera configuration, analog camera buses leave much to be desired. Score: 3
Power over cable: Analog camera buses provide no means of powering a camera. Because of this, every analog camera needs an external power supply, usually 12 V. Score: 1
Camera availability: This is the strongest category for analog cameras and the reason why they continue to be successfully sold for machine vision applications. Because the technology is well-established and understood, it is very easy to find and use analog cameras. Score: 5
CPU usage: Analog cameras must plug into some sort of frame grabber to convert the image signal from analog to digital. These frame grabbers can also transfer the image data to memory using DMA channels that do not burden the computer’s CPU. Because of this, analog image acquisition uses very little of the system CPU. Score: 5
I/O synchronization: Some analog cameras designed for machine vision have features such as asynchronous reset and additional I/O lines. On top of this, because analog cameras require a frame grabber, there are often plenty of I/O lines for triggering and communication from the PC. On the down side, the analog camera buses do not provide any standard form of communication for setting camera features, which usually have to be set with DIP switches. Score: 3
The cost of custom cables and the broad range of digital transmission formats were the driving force behind the development of the Automated Imaging Association (AIA) standard for high-speed transmission of digital video. The AIA standard is known as Camera Link, which defines the cable, connector, and signal functionality between the camera and the frame grabber.
Throughput: Camera Link, a high-speed serial digital bus designed specifically for machine vision cameras, offers the highest throughput of any camera bus. Camera Link provides a three-tiered bandwidth structure (base, medium, and full) to address a variety of applications. Score: 5
Cost-effectiveness: Because Camera Link is designed for medium- to high-performance image acquisition, the cameras generally are more expensive than lower-performance cameras. Also, Camera Link requires a frame grabber that can handle the high data rates described above, which are often more expensive than analog frame grabbers. Score: 1
Cable length: The Camera Link standard replaces expensive, custom cables with a single, low-cost standard cable with fewer wires. Special components on the camera are used to serialize 28 parallel TTL signals into four high-speed differential pairs, which are transmitted across the cable. A similar component is used on the frame grabber to deserialize the data stream into parallel TTL signals. This reduces cable size and cost and increases noise immunity and maximum cable length. Score: 3
Standardized interface: The Camera Link specification defines a standard cable, connector, signal format, and serial communication API for configuring cameras. However, the communication between the camera and PC is not defined by the standard. This means that every Camera Link camera requires a special configuration file to explain to the software how to acquire images from the camera and which features can be modified. Score: 3
Power over cable: As of 2006, Camera Link does not provide power over the cable. The standardization committee is working to add this feature. Score: 1
Camera availability: Almost every major machine vision camera maker provides Camera Link cameras, and most high-resolution, high-speed, and linescan cameras are based on Camera Link. Score: 4
CPU usage: Camera Link cameras require the use of frame grabbers, which transfer the image data to memory using DMA channels that do not burden the computer’s CPU. Score: 5
I/O synchronization: Although serial signals are defined on the cable pinout, the specific serial commands for setting exposure, gain, and offset, for example, are not defined by the specification. The frame grabber driver software must be configured to accommodate a particular camera’s serial commands. Overall, Camera Link provides the most I/O flexibility and capability. Score: 5
Although USB originally was developed for the consumer market, it has also found a niche in the industrial market. While USB 1.1 did not have sufficient bandwidth for anything more than a basic Web camera, USB 2.0 has sufficient bandwidth for streaming video.
Throughput: USB 1.1 provided only 1.1 MB/s of data throughput; Version 2.0 provides bandwidths of up to 60 MB/s. Score: 2
Cost-effectiveness: USB cameras generally are low cost, especially if you do not need industrial features like triggering or extended temperature ranges. Also, they plug directly into any standard USB port, so no frame grabber is required. Score: 5
Cable length: Cable lengths for USB generally are less than 5 m without a repeater, similar to IEEE 1394. With a repeater or a hub, you could reach lengths up to 30 m. Score: 1
Standardized interface: While several USB ports are available on every PC built today, it is still the least standardized and least popular camera bus considered here. The one obstruction to the widespread adoption of USB for vision applications is the lack of a hardware specification for video acquisition devices. Each vendor has to implement its own hardware and software design, which means that a special driver must be written to connect each USB camera to each different software package. Score: 2
Power over cable: USB also provides power over the same cable, which eliminates the need for a separate power cable. Score: 5
Camera availability: While it is easy to find USB Webcams, most vision applications need more performance than that. Score: 1
CPU usage: Most image acquisition drivers for USB use utilities like DirectShow to acquire images into the PC. While these tools work well, they are a burden on the CPU. Score: 1
I/O synchronization: Utilities like DirectShow also do not provide any type of interface for triggering or communication. Because of this, without a special driver, it is very difficult to synchronize USB cameras with each other or the rest of a system. Score: 1
Unlike USB, IEEE 1394 was never intended for basic computer peripherals — it was designed for imaging equipment. The initial speed of IEEE 1394a was 100 Mb/s compared to the 1.5 Mb/s of USB 1.1. Because of the initial bandwidth advantages of IEEE 1394, it is now the widespread standard for vision systems today, even though USB 2.0 has caught up in terms of throughput.
Throughput: IEEE 1394a cameras offer similar or slightly higher throughput to analog cameras but with much greater flexibility to choose between resolution and frame rate. The IIDC specification for IEEE 1394 cameras (explained below) defines several standard frame rates that range from 1,875 frames/s to 240 frames/s as well as standard resolutions from 160 × 120 to 1,600 × 1,200. For many cameras, frame rate scales inversely with image resolution along a roughly constant curve. The IEEE 1394b specification doubles the available bandwidth to 800 Mb/s and the maximum frame rate at 640 × 480 to 200 frames/s. Score: 3
Cost-effectiveness: IEEE 1394 cameras, which offer digital image quality, are only slightly more expensive that analog cameras. On top of this, they do not require special frame grabbers to acquire images into a PC. Score: 4
Cable length: IEEE 1394 cameras use standard, low-cost cables that are widely available. Point-to-point connections for IEEE 1394a are limited to less than 5 m, with longer distances possible using hubs or repeaters. Score: 1
Standardized interface: Several years ago, the 1394 Trade Association formed a working group to define an industrial camera specification. The resulting 1394 Trade Association Industrial and Instrumentation specification for Digital Cameras (IIDC) defines a vendor-agnostic hardware register map that allows basic query and control of the camera. Several video and external triggering modes are supported. The vendor-agnostic nature of the specification promotes interoperability between different hardware and software. This hardware, software, and cabling standard makes IEEE 1394 the easiest camera bus to use and maintain. Score: 5
Power over cable: IEEE 1394 has power on the cable. Most cameras can draw power off the IEEE 1394 bus without the need for an external power source. Score: 5
Camera availability: IEEE 1394 has been an industry standard for more than five years, and, over this time, hundreds of different IEEE 1394 cameras have been introduced. Today, you can find infrared, linescan, megapixel, and high-speed IEEE 1394 cameras. Score: 3
CPU usage: IEEE 1394 does not require a frame grabber, which means it relies on the CPU to transfer images to system memory. Score: 3
I/O synchronization: Just like USB and GigE Vision, I/O synchronization is inherently more challenging without a frame grabber to broker communication signals and triggers. With that said, many IEEE 1394 cameras provide direct trigger input and output lines. Score: 2
Gigabit Ethernet is a new camera bus technology for machine vision systems With relatively high bandwidth, long cable lengths, and wide usage in the consumer and industrial applications, Gigabit Ethernet shows promise for security and long-distance vision applications. Ethernet does not offer plug-and-play notification. Device discovery requires additional protocols or user intervention.
Throughput: The theoretical maximum bandwidth of Gigabit Ethernet is 125 MB/s. With hardware limitations and software overhead, the practical maximum bandwidth is closer to 100 MB/s. Score: 3
Cost-effectiveness: The overall system cost of GigE Vision is very similar to IEEE 1394. The cameras may be slightly more expensive, but the cabling is cheaper. Neither requires a frame grabber. Score: 4
Cable length: Cable length is truly where GigE Vision excels. With cable lengths reaching 100 m, GigE Vision is the first camera bus to rival analog in terms of cable length. Score: 5
Standardized interface: Recently, the Automated Imaging Association, along with several member companies, defined an in-depth industrial camera standard built on top of Gigabit Ethernet called GigE Vision. The GigE Vision standard overcomes some of the shortcomings of Gigabit Ethernet by providing plug-and-play behavior, device discovery, error handling, and secure image transfer. Score: 5
Power over cable: One major drawback of GigE Vision is the inability to power the camera over the Ethernet cable. This means that every GigE Vision camera requires its own, separate power supply. Score: 1
Camera availability: The GigE Vision standard, completed in April 2006, is currently gaining acceptance in the industry. Score: 1
CPU usage: Different software implementations of the GigE Vision standard yield very different CPU loads. In general, there are two types of drivers for acquiring images from GigE Vision cameras: filtered and optimized. Filter drivers separate incoming image data packets from other traffic on the network at a high level. Optimized drivers written specifically for a dedicated network interface card (NIC) work at a much lower level. These drivers use very little of the CPU and are essential for image processing applications that are processor-intensive. Score: 2
I/O synchronization: Because GigE Vision applications often make use of the long distances between the PC and the camera, triggering and communication are a little more challenging. With Ethernet distances up to 100 m, it is more difficult to use the PC to condition a trigger signal between a proximity sensor and the GigE Vision camera. Score: 2
In general, low- to medium-bandwidth applications often are equally well-served by multiple camera buses. Analog and IEEE 1394a cameras accommodate applications that require bandwidth of up to about 40 MB/s. GigE Vision and IEEE 1394b cameras currently fill the gap between 40 MB/s and about 100 MB/s. For applications beyond 100 MB/s, medium- and full- configuration Camera Link becomes a compelling — and sometimes the only — choice.
The goal here was not to illustrate that one camera bus is better than another. On the contrary, it was to show that there are many suitable camera buses available today, and it is up to you to decide which one fits your application.