Camera Link, FireWire tackle data transfer
Kyle Voosen, Machine Vision Product Manager, National Instruments, Austin, TX -- Test & Measurement World, 2/1/2004
Machine-vision hardware technology has become more complex in recent years. Ten years ago, machine-vision engineers would choose an inexpensive analog camera that followed one of the broadcast-video standards (RS-170, CCIR, NTSC, or PAL). Analog cameras simplified frame-grabber cabling, communication, and configuration. Unfortunately, the technology precluded high speeds, high image resolutions, or high pixel accuracies. The solution, a digital machine-vision camera, comes with major tradeoffs as well. Although digital cameras provide increased speed and resolution, they are not bound by any particular standard, so connecting a camera to a frame-grabber requires custom cables and driver software.
Early industrial digital cameras transmitted pixel information as parallel digital RS-422 differential signals, usually requiring more than 50 parallel signals between camera and frame grabber. The resulting cables were bulky, inflexible, and specific to each camera, producing an excessively large cable matrix. For example, National Instruments sells custom cables for over 100 different digital cameras. Clearly, the industry needed a common standard. Now, it's getting not one but two—Camera Link and FireWire.
Camera Link leads the wayA high-speed serialized cable and protocol standard, Camera Link simplifies connectivity and communication and handles the incredible data rates that accompany high-speed and high-resolution applications. Currently maintained by the Automated Imaging Association, the standard defines electrical signals for cameras and frame grabbers, specifies connector and cable types, and includes specifications for triggering and other real-time camera controls.
The Camera Link interface can operate at three levels: base, medium, and full. Each level includes a clock signal, a serial port, and four unidirectional control signals from the computer to the camera. The base configuration provides 28 data lines—three bytes (24 lines) for video and four timing bits. The medium level adds 28 more data lines (three bytes and four timing bits), and the full level adds another 20 data lines (two bytes and four timing bits).
The three levels accommodate the wider data paths required by multi-tap cameras (with more than one video-output stream) and allow for future expansion. The full Camera Link configuration achieves an effective bandwidth of 4.8 Gbps.
Camera Link greatly simplifies digital-camera cabling, but each Camera Link camera still requires a special software driver for each compatible frame grabber. In its most basic form, this driver tells the frame grabber how to arrange the acquired bits into an image.
These special drivers can also broker communications between camera and application software by abstracting serial commands and pulse trains that change camera modes and set parameters like frame rate and exposure time.
IIDC enters the pictureWhile Camera Link customers certainly benefit from standardized cabling, a broader standard that also encompasses machine-vision hardware and software would simplify image acquisition further. The IEEE 1394 Trade Association's Instrumentation and Industrial Digital Camera (IIDC) specification for FireWire addresses this issue, mapping out communication and data-transfer registers between IIDC-compliant FireWire cameras and host computers. With this design specification, third-party PC software can easily function with many different cameras. Through IIDC registers, third-party software can read information such as a camera's image formats and control ranges. The software can also configure register values on IIDC-compliant cameras to select image formats, frame rates, and camera-control parameters like shutter speed and triggering. With the IIDC register set, users can forego custom drivers.
Many people know FireWire as a consumer standard bus for high-speed hard drives and camcorders. The IIDC standard for FireWire cameras builds a sturdy foundation on which camera makers and machine-vision software providers can build their products. This standard brings machine vision to an entirely new group of customers by lowering its price and complexity.
Recent product releases show that camera makers have adopted the FireWire standard more readily than other standard buses, such as USB and Ethernet. The current version of FireWire—IEEE 1394—defines a deterministic, high-speed bus for transmitting large amounts of data. 1394a has a bandwidth of 400 Mbps, while the next-generation 1394b boosts the bandwidth to 800 Mbps.
Firewire also permits isochronous data transfer, which guarantees bandwidth for data transmission, allowing for real-time image transfer with minimum bus overhead. This lack of overhead reduces streaming data handshaking and error detection, which results in fewer provisions for data integrity. But according to Edison Hudson, president of MetaControl Technologies (Ref. 1), the lack of error correction and handshaking is a small price to pay for a large guaranteed bandwidth and a bit error rate of 10-12. Isochronous data transmission also guarantees that data packets arrive in the proper order when multiple cameras are attached to the bus. Neither Ethernet nor USB can provide that capability.
In addition to FireWire's inherent communication benefits, the standard specifies a register map that defines a camera's features and attributes. With these parameters defined in hardware, a single software driver can support all IIDC-compliant FireWire cameras. Upgrading a camera as an application expands, for example, does not require a user to install a new driver or change the code.
The specification's versatility allows camera makers to customize their cameras through open registers. These registers can be accessed through the driver software, permitting undefined (custom) features such as radiometric data, lens control, and test-pattern generation.
The stability and versatility of the IIDC standard for FireWire and the lack of any such standard for USB or Ethernet has led the machine-vision industry to embrace FireWire for low-cost, medium-performance applications. Camera Link remains dominant for applications requiring high performance.
Both standards are still evolving. The IIDC standard will soon encompass IEEE 1394b, and the 1394 Trade Association (www.1394ta.com) works closely with camera manufacturers and software providers to ensure FireWire's continued dominance. The Automated Imaging Association's Camera Link Committee meets regularly to keep that standard moving forward (www.machinevisiononline.org).
What's happening today?It's easy to find industrial digital cameras that comply with either the Camera Link or IIDC specification. FireWire succeeds best in applications that once used analog equipment. Digital cameras not only offer better image quality and more features than analog solutions, when you factor in the cost of an analog frame grabber, they often cost less as well. For cameras that provide higher resolutions, RGB color, or high frame rates, Camera Link remains the preferred standard.
Digital camera standards in machine vision are still fairly new, but they are already having a profound effect on productivity. With standard cameras, engineers need not contend with custom cabling, software incompatibilities, or difficult upgrades.
| Author Information |
| Kyle Voosen is the machine vision product manager at National Instruments. kyle.voosen@ni.com. |
| Reference |
|


















