This document contains proprietary and confidential information of PixeLINK. The contents of this document may not be copied
nor duplicated in any form, in whole or in part, without prior written consent from PixeLINK.
By purchasing this product, the Purchaser(s) and/or any subsequent legitimate owner(s) of the product, henceforth referred to as
“the Purchaser,” agree(s) to abide by the terms of this Agreement and read and recognize the following set of definitions
appertaining to the intellectual-property items and trademark references as can be found throughout this System Guide.
PixeLINK provides the information and data included in this document for the Purchaser’s benefit, but it is not possible for PixeLINK
to entirely verify and test all of this information in all circumstances, particularly information relating to non-PixeLINK manufactured
products. PixeLINK makes no warranties or representations relating to the quality, content, or adequacy of this information. Every
effort has been made to ensure the accuracy of this Guide; however, PixeLINK assumes no responsibility for any errors or
omissions in this document. PixeLINK shall not be held liable for any errors or for incidental or consequential damages in
connection with the furnishing, performance, or use of this System Guide or the examples herein.
PixeLINK assumes no responsibility for any damage or loss resulting from the use of this System Guide, loss or claims by third
parties which may arise through the use of this product, any damage or loss caused by deletion of data as a result of malfunction or
repair, or any other damage related to the use of this product or associated documentation. The information in this document is
subject to change without notice.
Definitions of Intellectual Property and Trademark Attributions
This Section is intended to ensure proper attribution and honoring of any and all trademarks and intellectual-property items in terms
of attribution to their respective owners as mentioned in this System Guide. The reader is encouraged to consult this Section
whenever uncertainty presents itself as to the terms, their meaning within the System Guide, and the trademarks and intellectualproperty items they stand to identify, whether by themselves or in conjunction with other terms and items.
PixeLINK is either a trademark or a registered trademark of PixeLINK in Canada and/or other countries; IEEE is a registered
trademark or service mark of the Institute of Electrical and Electronics Engineers, Incorporated in the United States and/or other
countries; FireWire is a trademark of Apple Computer, Inc., registered in the U.S. and other countries; Microsoft, DirectShow, and
Windows are either trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries; TIFF
is a trademark or registered trademark of Adobe Systems Incorporated in the United States and/or other countries. All other
products, brand names, company names are trademarks or registered trademarks of their respective owners.
Definition of Terms
This Section is intended to define certain terminology used in this System Guide, while ensuring proper attribution and honoring of
any and all trademarks and intellectual-property items in terms of attribution to their respective owners as mentioned in this System
Guide.
The Purchaser shall hereby recognize the following definitions set herein, as can be found throughout this System Guide: Camera
shall henceforth refer to a PixeLINK Camera; API shall henceforth refer to the PixeLINK Camera Application Programming
Interface; Kit shall henceforth refer to a PixeLINK Camera Kit; FireWire shall henceforth refer to the IEEE 1394a interface
specification; DirectShow shall henceforth refer to the Microsoft DirectShow multimedia software; Windows shall henceforth refer to
a Microsoft Windows operating system.
The above Sections set forth Terms and Conditions, compliance with which constitutes a mandatory prerequisite for owning and/or
using the product for which the Guide was created. It is the Purchaser’s responsibility to ensure that the information contained
within the Sections is maintained as a part of the System Guide at all times—should the Purchaser discover that the page(s)
containing the Sections is (are) missing, and/or was not provided with the System Guide, and/or become illegible, PixeLINK shou
be contacted as soon as possible and the Sections requested. PixeLINK shall not be held liable for any and all copyright violations
that may ensue in relation to its products and/or the consequences of their intended and unintended usage.
June 2004
ld
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
FCC testing will be completed in 2004. All units shipped prior to the completion of FCC testing should be considered as prototypes
and will be marked with the statement that the FCC rating is pending. Note that the PL-A780 Series is materially similar to the PLA780 which has passed FCC and CE compliance testing.
When tested, the equipment will be measured against the limits for a Class B digital device, pursuant to part 15 of the FCC Rules.
These limits are designed to provide reasonable protection against harmful interference in a residential installation. Operation is
subject to the following two conditions: (1) This device may not cause harmful interference, and (2) this device must accept any
interference received, including interference that may cause undesired operation.
This equipment generates, uses and can radiate radio frequency energy and, if not installed and used in accordance with the
instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not
occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be
determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of the
following measures:
o Reorient or relocate the receiving antenna.
o Increase the separation between the equipment and receiver.
o Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.
o Consult the dealer or an experienced radio/TV technician for help.
Properly shielded and grounded cables and connectors must be used to meet FCC emission limits. PixeLINK is not responsible for
any radio or television interference caused by using other than recommended cables or connectors.
Unauthorized changes or modifications to the equipment could void the user’s authority to operate the equipment.
European Community (CE) Statement
Testing for product safety compliance in the European Community will be completed in 2004. Units shipped prior to the completion
of the testing should be considered as prototypes and will be marked indicating that the CE rating is pending. When tested, the
product will be measured for compliance with the following directives and standards:
Install the software you wish to use with the camera prior to connecting the camera
to the computer.
To properly configure the PL-A780 for optimum image quality:
1. Plug in the camera and open the software;
2. Start the preview window.
3. Configure the Region of Interest as required to get the proper field of view.
4. Set the lens, lighting, exposure, and gain so that no areas in the image are saturated.
Auto exposure will provide a good starting point;
5. Adjust the White Balance feature to match the temperature of the light source. The
default is incandescent 3200º Kelvin.
6. Adjust the white point with the Auto White Shading or Auto White Balance feature.
This feature uses the highest intensity areas of the scene to assess the white
shading. Ensure that these areas are white or gray in color. Replace high-intensity
colored objects with a gray or white card and ensure there is little or no saturation
occurring in the image (i.e. gray is better than bright white).
7. Adjust gamma and saturation controls as required to achieve the best image quality.
Note that the PL-A780 camera, like any CMOS device, is subject to the physics of the sensor
design. Fixed Pattern Noise (FPN), Photo Response Non Uniformity (PRNU), stuck pixels,
read noise and thermal noise are an inherent part of the sensor. The effects of the noise vary
with gain and exposure time. Uncorrected, these noise sources can cause significant image
artifacts.
The PL-A780 corrects for these noise artifacts with pixel-by-pixel flat field correction. Internal
to the camera, a gain and offset is applied to each pixel so that the overall sensor has a
uniform response. In addition, stuck pixels are corrected by replacing their value with the
average of the neighboring pixels.
The FFC is factory calibrated at zero gain with a standard diffuse light source and no lens.
While the calibration can be used at other camera settings, it is only valid for the gain and
exposure setting used during the calibration. At other settings, image artifacts may be
apparent.
For the best results, it is strongly
recommended that users of the PL-A780
perform a FFC calibration with the lens and
lighting that will be used in the field.
A software tool is available as part of the PixeLINK Demonstration Application or Developer’s
Kit installation. Instructions on the process are included in the application dialog boxes.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Before evaluating the camera on image quality, users should determine the exposure and
gain settings required based on the factory calibration for the lens and lighting used in their
application. Then, with the subject removed and with a uniform surface under examination,
perform the FFC calibration. Once this is complete, continue with the evaluation of the image
quality.
If a single gain and exposure setting is not possible, there will be practical limits on the gain
and exposure times that can be used before the noise artifacts cause unacceptable
degradation to the image quality.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The PL-A780 Series of cameras use a 6.6 megapixel CMOS sensor to achieve highresolution images for industrial inspection applications. The PL-A780 comes in monochrome
(PL-A781) and color (PL-A782) versions suitable for industrial machine vision applications.
The sensor used has 2208 (H) by 3000 (V) pixels with a pitch of 3.5 microns. The color
camera uses a Bayer mosaic pattern on the sensor to detect the various colors.
Connected by FireWire, the PL-A780 is fully controlled by software on the host computer.
The PL-A780 camera has a full set of controllable features, such as exposure time, gain,
gamma, saturation and white balance, as well as a number of advanced features not found
on ordinary machine vision cameras. These include:
• Flexible Region of Interest (ROI) controls and five levels of Pixel Addressing;
• On-board non-volatile memory for storage of camera settings; and
• Flat Field Correction (FFC) performed on each pixel on the sensor.
The high resolution allows the camera to resolve small features while maintaining a large field
of view. The selectable ROI and multiple Pixel Addressing modes can be used to control the
resolution of the camera or to maintain high frame rates with larger fields of view. The Pixel
Addressing modes allow the resolution to be reduced by factors of 4, 9, 16, or 36 either by
skipping (decimation), adding (binning), averaging or resampling the pixel data.
The on-board memory allows the camera to be configured on one computer and used on
another without the need for camera configuration files or other configuration data. For
example, the camera could be set up to provide a 648 x 480 field of view at 88 frames per
second with a particular exposure, gamma and white balance settings and these settings
programmed into the camera memory. The next time the camera is initialized, on any PC, it
will default to these settings.
On-board and real-time FFC (illumination correction) is applied to every pixel on the sensor to
provide image quality similar to high-end CCD cameras. For optimal image quality, the FFC
can be calibrated in the field.
The PL-A780 camera has a connector for an external trigger and two General Purpose
Outputs (GPO). The trigger and GPOs can be used to connect the camera to external
hardware for synchronization and control. Multiple cameras can be synchronized together or
lighting can be strobed by using these signals.
The PL-A780 cameras use standard FireWire interfaces for plug-and-play operation. The
FireWire interface provides power, data and control communication from the host computer
to the camera over a single cable. A second FireWire port on the camera can be used to
connect additional cameras in a “daisy chain” on a single FireWire bus.
Fully IEEE 1394 IIDC 1.3 (IIDC) compliant, the PL-A780 can also be used with third party
drivers compatible with the IIDC specification, such as the National Instruments IEEE 1394
for IMAQ driver.
However, to fully enable the camera features on Microsoft Windows systems, it is
recommended to use PixeLINK supplied drivers and the PixeLINK Application Programming
Interface (API) or PixeLINK Developer’s Application to control the PL-A780 camera.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
This Guide provides a reference for the PL-A780 specifications, operation, hardware and
connectors. It provides detailed information for developers who will be incorporating the
camera into a larger machine vision application or using the camera with IIDC drivers.
Users should consult this Guide …
• to understand the features of the PL-A780 camera
• when mounting the PL-A780 within a system or enclosure
• when planning to use an external trigger or GPO device (e.g., strobe) with the
PL-A780
• when developing IIDC drivers or software for the PL-A780
References in the PDF version of this Guide are hyperlinked for easy navigation and access.
For information on programming with the PixeLINK Application Programming Interface,
please refer to the PixeLINK API Reference Manual, Part Number 04326.
For information on the use of the PL-A780 with the PixeLINK Developer’s Application, please
consult the PixeLINK Developer’s Application User’s Manual, Part Number 04328.
2.3 Firmware and Hardware Versions & Variants
This guide refers to the following variants of the PL-A780.
Table 1 PL-A780 Variants
Product
Number
PL-A781 Monochrome camera in enclosure.
PL-A781-BL Monochrome board level OEM module with remote head.
PL-A782 Color camera in enclosure.
PL-A782-BL Color board level OEM module with remote head.
The specifications of the PL-A780 cameras may change without notice. Generally,
customers will not notice these changes. From time to time, PixeLINK may introduce new
features or upgrades to the cameras. Upgrades to the camera firmware (the internal
software that controls the camera) or the Field Programmable Gate Array (FPGA – the
programmable hardware that determines the camera’s features and processing) will be made
available to all PL-A780 customers on the PixeLINK web site. These updates can be
programmed into older cameras in the field.
The following tables list the version histories of the PL-A780 camera hardware, firmware and
Field Programmable Gate Array (FPGA).
Description Released
Table 2 Hardware Version History
Hardware
Version
129 July 04 Initial release with pre-production cameras.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
00.01.28.00 Initial release with the pre-production cameras.
Date Notes
Table 4 FPGA Version History
FPGA
Version
66.00.23 Initial release with the pre-production cameras.
Date Notes
2.4 Compatibility with PixeLINK Software & Drivers
PL-A780 cameras are compatible with the following PixeLINK drivers and API software:
• PixeLINK Camera Driver, Version 4.1 and later.
• PixeLINK API, Version 4.1 and later.
• PixeLINK Developer’s Application, Version 1.0.1.20 and later.
To determine the version of software and drivers installed on your host system, select Help,
About PixeLINK Dev App… from the main menu of the PixeLINK Developer’s Application.
To download the latest versions of the driver and application software, please visit the
PixeLINK web site (http://www.pixelink.com).
For more information on software and driver compatibility or host system requirements,
please refer to the PixeLINK API Reference Manual and the PixeLINK Developer’s Application User’s Manual.
2.5 Compatibility with 3rd Party Software & Drivers
Testing for compatibility with 3rd party software and drivers is on going. Please check
the PixeLINK web site for the current list of 3
compatible with the PL-A780 series cameras.
rd
party software packages that are
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The sensor used in the PL-A780 cameras is a Fill Factory IBIS4-6600. The IBIS4-6600 is a
6.6 megapixel solid-state CMOS image sensor with 2210 x 3002 active pixels. The image
size is fully programmable to a user-defined ROI. Pixels are on a 3.5 µm pitch.
The color version of the sensor uses a Bayer pattern to generate the RGB information. This
is a common approach to detect color with a single sensor and is used extensively in the
industry. The Bayer pattern consists of color filters placed over each pixel in alternating
green/red on the odd rows and blue/green on the even rows. To determine the RGB color of
any particular pixel, a Bayer to RGB conversion is performed where the color information of
neighboring pixels is used to determine the missing components of the RGB color for a
particular pixel. The Bayer to RGB conversion has the effect of a smearing filter and slightly
reduces the effective resolution or resolving power of the sensor. It also can introduce
colored artifacts into an image on the edges of high contrast areas. Resampling the image,
as discussed below, can reduce both of these effects.
The monochrome version of the sensor behaves in the same manner as the color version for
ROI, pixel addressing and resampling. The monochrome version does not use the Bayer
pattern and Bayer to RGB conversions are not applied.
3.2.1 ROI, Pixel Addressing and Resampling
The implementation of the sensor in the PL-A780 limits the active area to 2208 x 3000.
Within this Full Field of VIEW (FFOV), the ROI size and position has a granularity of 24
pixels. The minimum size of the horizontal or vertical dimensions of the ROI is 24. Possible
ROI sizes are 24 x 24, 24 x 48, 48 x 48, 48 x 72, … 2208 x 3000. The top left corner of the
ROI can be positioned on any row and column that is a multiple of 24.
The resolution can be reduced while maintaining the field of view by subsampling, (referred to
as decimation), resampling, binning or averaging blocks of pixels. Decimation is performed
by skipping blocks of pixels. The smallest block is a 2 x 2 square or four pixels. No
decimation has a factor of 1 meaning every pixel block is used. To reduce the resolution by a
factor of 2, every other block in a row of blocks is used and every other row of blocks is
skipped. The final resolution will be ¼ of the pixels in the ROI. Decimation of 3 will skip two
blocks of pixels.
The ROI can be decimated by factors of 1, 2, 3, 4 and 6. This will reduce the image size by
factors of 1, 4, 9, 16 and 36 respectively. For example, with a decimation mode of 6, the
FFOV ROI (2208 x 3000, 6.6 megapixels), can be reduced to 368 x 500 or 184,000 pixels
while maintaining the FFOV. As the resolution and ROI are reduced, the frame rate
increases as shown in Table 5 above (page on page 6).
The following figures demonstrate the effects of decimation and how the 2 x 2 pixel blocks
are determined.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The sensor ROI can also be resampled to combine the signals from a 2 x 2 or larger block of
pixels (GRBG) into one RGB triplet. To see how this has an effect, it is important to
understand that, for all other modes, the camera converts the Bayer pattern from the sensor
into RGB triplets for each pixel, taking the missing values of the triplet from the surrounding
pixels and creating three times the amount of image data. These RGB values are then color
corrected and processed before being converted to the selected output type or Color Coding
(see Section 5.1.3.2 on page 31) for transmission to the host. When the output type is Raw
or Bayer, the RGB image data is converted back to Bayer by dropping two thirds of the data
and only transmitting the remaining third as a Bayer pattern. At the host, the Bayer pattern is
converted back to RGB for display. The Bayer to RGB conversion uses algorithms that have
an effect similar to smoothing filters and image detail is slightly blurred each time the
conversion is performed.
When outputting in YUV422, no Bayer to RGB conversions are performed at the host. All the
intensity information is transmitted along with half the color information of the RGB image.
The resulting transmission uses more bandwidth and the frame rate will be reduced but the
image will have more detail.
By combining blocks of pixels to one RGB triplet, resampling does not use data from
neighboring pixels so no smoothing occurs. Resampling effectively reduces the image
resolution and increases the pixel size. Resampling also results in sharper image quality
compared to decimation or averaging which are affected by the Bayer to RGB conversions
discussed above. For the best results, the output type or Color Coding should be set to
YUV422 when using resampling.
Figure 6 below shows the effects of the various modes of Pixel Addressing on image quality.
The images are of a Nyquist chart. Figure 6 a. shows the full resolution image with no
decimation, averaging or resampling. The colors that appear in the chart are a result of the
Bayer pattern. They occur when the fine lines in the chart cover certain colors in the Bayer
mosaic on the sensor. The regular patterns in the Nyquist chart exaggerate the effect. The
appearance of the colors is an indication of good focus in the image, but they do detract from
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
image quality. Defocusing the lens slightly to blur the lines in the image can eliminate the
colors.
Decimation reduces the image resolution but will introduce more artifacts as seen in Figure 6
b. The image has been magnified to allow comparison with Figure 6 a. The benefit of using
decimation is mainly the increased frame rate possible with the reduced resolution.
Averaging, as shown in Figure 6 c., pretty much eliminates the artifacts from the Bayer
pattern. It has much the same effect as defocusing the lens and the image appears slightly
smeared.
Figure 6 d. shows that resampling provides the best overall image quality of the Pixel
Addressing modes. There are still Bayer artifacts but they are reduced and the sharpness in
the image is retained. For resampling to work properly, the Color Coding needs to be set to
YUV422.
a. 1248 x 288
Full resolution
b. 1248 x 288
Decimated by 3
Final image size 416
x 96
c. 1248 x 288
Averaged by 3
Final image size 416
x 96
d. 1248 x 288
Resampled by 3
(YUV422)
Final image size 416
x 96
Figure 6 Examples of the effects of Decimation, Resampling and Averaging on Image
Quality
Binning will provide image quality similar to the averaging mode, but the image will be much
brighter – by roughly the square of the Pixel Addressing factor. Note that in CMOS sensors,
the binning is performed off-chip (after the conversion from analog to digital), so there is no
increase in sensitivity or speed (frame rate) compared with the non-binning mode.
Which Pixel Addressing mode is used depends on the objectives. For the very best image
quality when capturing images for printing or analysis, use the full resolution. For fast video
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
preview at high frame rates with short exposure times, use the decimation mode. For slower,
high quality video preview or when exposure times are long, use resampling.
3.2.2 Bit Depth
The analog image data from the sensor is digitized to 12-bits and then truncated to 10-bits
prior to image processing in the camera electronics. Full gain and offset corrections are
performed along with pixel correction to eliminate fixed pattern noise (FPN) and Photo
Response Non Uniformity (PRNU). On color cameras, color corrections are performed to
convert sensor RGB to calibrated RGB for accurate color reproduction. The output data
stream can be set to either 8-bit or 10-bit mode. In 10-bit mode, the 10-bit data is padded
with zeros in the least significant bits to create 16-bit words. Compared to the 8-bit mode, the
10-bit mode requires twice the bandwidth on the FireWire bus and will result in a drop in
frame rate.
3.2.3 Timing, Performance and Data Rates
The PL-A780 sensor uses a 40 MHz pixel clock to read out pixel data at 25 nanoseconds per
pixel. Each row also has a delay of 7.3 µseconds and is padded with 10 isolation pixels. The
minimum row readout time, in microseconds, is given by
NpixelsnsµsµsoutTimeMinRowread
1000/)10(253.7)(
where Npixels is the number of active pixels in the row. For the full ROI, the row readout time
is 7.3+25*(2208+10)/1000 = 62.75 µs/row.
For Rolling Shutter operation (see Section 3.2.4 below) with very short exposures, the
minimum frame interval can be calculated by multiplying the minimum row readout time by
the number of rows in the image. For example, with a 1200 x 960 ROI, decimated by 2, the
output image would be 600 x 480. This ROI could be readout once every 480*(7.3
+25*600/1000)/1000 = 10.7 milliseconds or at a maximum frame rate of 93.4 frames per
second. In this example, the maximum frame rate is valid for exposures of 10.7 milliseconds
or less. For exposures greater than 10.7 milliseconds, the frame rate is a function of the
exposure time.
For Fast Reset Shutter operation (see Section 3.2.4 below), the minimum frame interval can
be found by adding together the row reset time of 3.55 µseconds/row, the integration time
and the minimum row readout time calculated above. Using the example above and
assuming a 2 millisecond exposure time, the minimum frame interval is 10.7 + 2 +
3.55*480/1000 = 14.40 milliseconds which gives a maximum frame rate of 69.5 frames per
second.
The above calculations determine the maximum frame rates possible. The actual frame
rates achieved depend on the camera’s bandwidth controls, other traffic on the FireWire bus,
and the resources available on the host computer.
3.2.4 Operating Modes - Rolling Shutter and Fast Reset Shutter
The PL-A780 has two shutter types:
• Rolling Shutter (free-running image capture activated when the trigger feature
is turned off); and
• Fast Reset Shutter (triggered image capture activated when the trigger feature
is turned on)
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
With a Rolling Shutter, only a few rows of pixels are exposed at one time. The camera builds
a frame by reading out the most exposed row of pixels (and ceasing exposure of that row),
starting exposure of the next unexposed row down in the ROI, then repeating the process on
the next most exposed row and continuing until the frame is complete. After the bottom row
of the ROI starts its exposure, the process “rolls” to the top row of the ROI to begin exposure
of the next frame’s pixels.
The exposure down each frame, and from frame-to-frame, remains consistent due to this
continuous read-out.
The row read-out rate is constant, so the longer the exposure setting, the greater the number
of rows being exposed, or integrated, at a given time. Rows are added to the exposed area
one at a time. The more time that a row spends being integrated, the greater the electrical
charge built up in the row’s pixels and the brighter the output pixels will be. As each fully
exposed row is read out, another row is added to the set of rows being integrated.
Example: A very short exposure may be obtained by having only three rows of
integration (see Figure 7 below). This means that as each row is being read
out, the three rows ahead of it are being exposed. As each row is read out,
another row is added to the group of rows being integrated.
• The arrowhead indicates the row currently being read out.
• Dashed lines indicate inactive rows.
• The three (solid) lines preceding the read-out row indicate the rows being integrated.
Figure 7 Rolling Shutter Integration and Read-Out
Because Rolling Shutter exposes rows in the integration area while reading out fully exposed
rows (that is, it does not stop exposure to perform read-out), it provides evenly exposed
image data with the greatest possible speed (under the given parameters).
Each row of pixels has a slightly different exposure start and end times from the adjacent
rows, so Rolling Shutter can produce a distorted effect when imaging moving subjects, even
with very short exposure times. The distortion is due to the comparatively lengthy process of
readout compared to exposure. For example, to readout the entire PL-A780 frame requires
approximately 250 milliseconds. While a short exposure may stop a moving object, the same
object can move appreciably in the quarter second that it takes to readout the frame resulting
in distortion in the direction of motion.
For best results, rolling shutter should be used with constant illumination and with a static
subject. If strobe illumination is required or the object is moving, the Fast Reset Shutter mode
should be used.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
With Fast Reset Shutter, all rows in the ROI are reset, row-by-row, then exposed
simultaneously for a specified time. At the end of the exposure time the pixel values are read
out row-by-row. The row-by-row reset is faster than the readout process but it is not instant
or global. It takes 3.5 µseconds per row to reset the array and rows at the top of the ROI start integration as soon as they are reset. For the full field of view, the reset operation will
take 11 milliseconds. Smaller ROIs or decimation will reduce the number or rows and hence,
the reset time required.
The integration time starts once the array has been fully reset. When the integration time is
complete, readout of the image data starts. During the readout period, the pixels that have not yet been read are still sensitive and will continue to integrate. The readout
period can be determined from the equation in Section 3.2.3 on page 12. For the full ROI,
the readout time is 62.75 µs/row or 188.2 milliseconds. All combined, the frame interval from
trigger to completion of readout is 199.2 milliseconds plus the integration time.
Fast Reset Shutter requires a trigger event to reset the pixel data and start exposure for the
entire ROI (as opposed to Rolling Shutter, in which exposure is an on-going process). This
trigger event can be generated internally in the camera hardware, externally via the trigger
input MV connector (Section 4.6.2) or by software. The PL-A780 provides a number of
features to control the trigger timing and synchronize with external devices through General
Purpose Outputs (GPOs). See Sections 5.1.3.10 and Section 5.1.4.4 for more information.
Careful attention to the illumination is required for the best results. In Fast Reset Shutter
mode, strobe illumination should be used and the ambient light should be minimized. If using
the camera in a brightly lit environment, a mechanical shutter may be required to achieve
acceptable image quality.
To simplify the control of lighting when using the Fast Reset Shutter, the PL-A780 GPOs can
output a Flash Window that indicates the period of time following the completion of the array
reset and the start of readout. The duration of this signal is equivalent to the integration time.
This signal can be used to fire a flash and control the duration of the flash to match the
exposure time. Hence, regardless of the number of rows in the ROI, the illumination will be
correctly applied. See Section 8.2.4 on page 55 for more information
If using an external system of the GPOs in Strobe mode, the delay from the start of
integration (the trigger event with zero delay) and the start of the flash should be set to 3.5 µs
x (N + 10), where N is the number of rows in the image. The flash duration should not
exceed the exposure time. This will ensure the flash fires after the reset sequence is
complete and completes firing before readout commences.
For example, assume the PL-A780 is being used to capture full resolution images of a
moving object. The object creates a trigger as it passes a detector and the detector is placed
such that the object will be in front of the camera 20 milliseconds after passing the detector.
To freeze the action, a strobe light is set to fire with a 20 microsecond pulse when
commanded by the camera. The camera is configured for a 4 millisecond exposure time and
a hardware trigger with a trigger delay (see Section 5.1.3.11 on page 34) of 8 milliseconds.
The GPO 1 control is set to strobe mode with a delay of 20 milliseconds to allow the sensor
to fully reset before the flash fires. When the trigger arrives at the camera, the camera will
wait for 8 milliseconds before commencing the fast reset of the sensor, which will be
completed approximately 11 milliseconds later (19 milliseconds after the trigger event). GPO
1 will wait for 20 milliseconds after the trigger before it fires the flash. 4 milliseconds after the
fast reset is complete, the readout begins and takes approximately 188 milliseconds to
complete. The whole process from trigger to end of readout takes 211 milliseconds.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The PL-A780 responds to visible light in the 400 – 1000 nm range. The chart of spectral
response is shown in Figure 8 below.
Performance figures for FPN, PRNU and dynamic range are currently being measured.
Accurate test data will be published as soon as it is available.
Spectral Response
0.14
0.12
0.1
0.08
0.06
Spectral response (A/W)
0.04
0.02
0
4005006007008009001000
Wavelength (nm)
QE 40%
QE 30 %
QE 20 %
QE 10%
3.5 µm × 3.5 µm
pixel array
(QE = Quantum Efficiency)
Figure 8 PL-A780 Spectral Response
3.4 Operating Environment
The PL-A780 camera is designed to operate in a dry industrial environment. The housing is
machined from aluminum and provides a rigid mounting structure for the internal electronics.
Vibration testing, temperature testing and EMC compatibility testing will all be completed in
2004. Check the PixeLINK web site for updates to this manual.
3.4.1 Operating Environment Objectives
Table 6 Operating Environment Conditions
Condition Limits
Temperature
Temperature change
Shock
Vibration
Humidity
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
• 6.6 Megapixel imager resolution (2208 H x 3000 V)
• FireWire interface (two six-pin connectors)
• Machine Vision interface for external trigger and GPO (strobe)
• Lens mount for a standard C-mount lens (1" × 32 tpi) [lens not included]
• Front and bottom mounting holes for a tripod or other mounting fixture
(M3 screws)
Accessories
Accessories such as trigger kits, tripod mounts, lenses, laptop accessory kits and hands-free
switches are available from PixeLINK. For a current list of accessories, visit the PixeLINK
Web site at http://www.pixelink.com/
or contact your PixeLINK vendor.
4.2 PL-A780 Hardware Dimensions
Measurements are ± 0.005 inches (0.15 mm).
Height.............................. 1.65 in /40.6 mm
Width............................... 1.97 in/50 mm
Length ............................. 4.017 in/102 mm
Weight............................. 7 oz/200 g (without lens)
Figure 9 PL-A780 Standard Configuration
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
ESD— Handle the PL-A780 using proper ESD procedures. Refer to ANSI/ESD S20.20
Class Type 3 (4000 V).
Cleaning
Housing: Clean the housing with a cloth dampened (not dripping) with reagent-
Glass: Clean the protective glass according to the instructions in Section 4.4.2.
Do not open the camera housing.
grade isopropyl alcohol.
4.4 Lens and Protective Glass
4.4.1 Lens
The Camera’s C-mount fits a standard C-mount lens (1" × 32 tpi). A 1” lens is
recommended.
4.4.2 Protective Glass
Each Camera is fitted with an IR cutoff filter to improve the color reproduction of the PL-A782
camera and protect the sensor. The PL-A781 monochrome camera is fitted with clear BK7
glass. The glass is not removable in the field.
Caution:
Removing the glass increases the likelihood of contaminating the image
sensor. If the glass is not place, operate the camera under clean-room
conditions only.
Cleaning the Glass:
Minor cleaning: 1. Carefully apply puffs of dry, compressed air to move particles off the
center of the glass.
2. Remove oils with a swab moistened with reagent-grade isopropyl
alcohol. The swab should be damp but not dripping.
Caution:
!
Do not
use acetone to clean the glass.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
As shown in Figure 12 on page 18 there are four M3 threaded holes on the bottom of the
PL-A780 Camera. These holes can be used to attach the camera to an optional ¼-20 thread
mounting plate (available from your PixeLINK vendor) or to mount the camera to a custom
fixture.
Sensor-Face Mount
As shown in Figure 11 on page 18, there are four M3 threaded holes surrounding the Cmount. These holes can be used to mount the Camera to a custom fixture.
Thermal Considerations
The camera dissipates 5 W. Heat affects image quality and results in visible pixel noise. For
optimal image quality and performance, consider heat dissipation when mounting the
camera. The camera should be mounted on a metal plate or fixture using the mounting holes
on the front or bottom surface. The plate should provide a conduction path to remove the
heat from the camera body. The tripod mount accessory is not an adequate mounting plate
for this purpose. Clearances for airflow will also help dissipate heat. The PL-A780 has an
internal temperature sensor that can be used to determine if the heat dissipation is adequate.
With good heat sinking, the sensor should be around 5º above the ambient temperature.
4.6 Electrical Connections
The PL-A782 Camera has the following connectors on the back, as shown in Figure 10 on
page 18.
• 2 six-pin FireWire Connectors—Combined power, data, and control signals
• A six-pin Hirose connector—Trigger and strobe
4.6.1 FireWire – Power, Data & Control
The PL-A780 has two six-pin FireWire connectors (ports), allowing several devices to be
daisy-chained. The FireWire cable carries image data, power and control signals.
The connectors are compatible with both regular and harness-type (latching) FireWire plugs.
You do not need to power down the computer to connect or disconnect a camera, nor do you
need to reboot after this is done.
Single camera connection: The FireWire connectors are functionally identical. Either one
of them can be used for a single connection. Do not make more than one connection
between the camera and the computer—the equipment will not be able to communicate
properly and the system can crash.
Multiple camera connections: When connecting multiple cameras, do not create a
functional loop. The number of cameras that may be managed simultaneously depends on
the total bandwidth and may be limited by power availability and the processing capabilities of
the host computer.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The host computer can supply power to the camera via the FireWire bus if the computer has
a six-pin FireWire connector and the total power demand on the bus does not exceed the bus
capacity.
Other systems—such as laptop computers or those with several FireWire devices daisychained—require an external 12 V supply to power the camera. This external power supply
must be connected to the FireWire bus. For information about laptop accessory kits that
include external power supplies, contact your PixeLINK vendor.
Power Demand
A single PL-A780 draws 5 watts from the FireWire cable or 417 mA @ 12 V.
Power Limitations
The power capacity of the bus depends on the FireWire adapter card installed in the host
computer. To comply with the FireWire specification, the adapter card may supply a
maximum of 1.5 A per FireWire port. However, it is permissible for the card’s limit to be lower
than 1.5 A per port (say, 1.0 A). Note that many cards do not state their current limits.
In a multiple camera system, the current required per camera increases with each
additional camera attached to the bus. Each additional camera causes the bus voltage
to drop, so the current demand is increased to maintain a constant power draw of 5 W
per camera.
Hence, most two-port FireWire adapter cards can be used to power two cameras
simultaneously.
If the current demand exceeds the card capacity, the status lights on the cameras will switch
off. The status light is located above the FireWire connectors as shown in Figure 10 on page
18.
4.6.2 Status LED
The PL-A780 has a Status LED that indicates the hardware and operational status of the
camera. The LED indicates the following behavior:
• Flashing orange indicates that the camera is initializing.
• Solid orange indicates that the camera is loading the FFC parameters from
memory. This process takes approximately 20 seconds.
• Solid green indicates that the camera is ready for operation.
• Flashing green indicates that the camera is performing a lengthy operation or
is streaming video data.
• Flashing red indicates that the camera has issued a warning on the latest
command received.
• Solid red indicates that the camera has experienced an unrecoverable error.
4.6.3 Machine Vision Connector - Trigger and GPOs
The PL-A780 is equipped with a 6-pin Hirose connector for external control of a trigger,
strobe or pulse as shown in Figure 10 on page 18.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The connector pinout is listed in Table 8 on page 23. The connector’s interface schematic is
shown in Figure 13 below. The mating plug for the connector is an HR10A-7P-6P, a 6-pin
round plug connector with solder-cup pins for the cable wires.
The trigger inputs are designed to work with a floating differential signal which will supply
between 5V and 12V across the trigger terminals. With the Trigger polarity set to Positive, a
rising voltage will cause a trigger. A falling voltage will cause a trigger if the trigger polarity is
negative.
The default trigger latency on the PL-A780 cameras is 8 microseconds from the change in
the trigger signal until the start of the image reset, assuming the Trigger Delay feature is set
to zero. The start of integration will be delayed by the reset delay. This latency is due to:
• Optical-isolation delay on the trigger input (assume 5 V turn-on) = 6 µs typical;
• Debounce delay (5 MHz default) = 1.0 – 1.2 µs;
• Synchronization delay to start of reset = 0.5 µs; and
• Reset delay = 3.55 µs/row x N rows, where N is the number of rows, after
decimation.
The trigger input can be either positive or negative pulse. The minimum pulse width depends
on the debounce delay set in the camera – typically at least 50 microseconds for analog
signals and at least 1 microsecond for TTL signals.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The debounce delay can be adjusted to allow for non-TTL signals to be used. To adjust the
debounce delay for use with analog signals, use the Debounce Delay Adjustment Tool
included with the PixeLINK software. A copy of the application is also available from the
PixeLINK Web Site at http://www.pixelink.com
. Look for the tool on the PL-A780 product
page. The tool adjusts the clock frequency used to determine a valid trigger signal. The
trigger detection circuit tests the value of the trigger at each clock tick and will only declare a
trigger event when the trigger signal changes and remains constant for 5 clock cycles. By
varying the clock frequency, the PL-A780 can use either analog trigger generators or digital
TTL type signals. The clock frequency can be set at values ranging from 156 Hz to 10 MHz.
For analog trigger sources, such as the Trigger Accessory included with the Developer’s and
Camera Kits, a clock setting of 100kHz or slower is required. For very clean digital triggers,
the clock can be increased to the maximum 10 MHz. The camera is shipped with the clock
set to 5 MHz.
Table 8 Pinout of the 6-Pin Hirose Connector
Pin Pin Name Function Comments
(Pinout as viewed
on the back of the
camera, or at the
solder-end of the
mating connector)
1 POWER
2 TRIGGER+
3 TRIGGER–
4 GROUND Logic and chassis ground o
5 GP1
6 GP2
FireWire cable power, 8–30
V DC (typically 12 V)
Positive terminal of
optically isolated trigger
input
Negative terminal of
optically isolated trigger
input
General Purpose Output
(GPO) 1, for strobe
General Purpose Output
(GPO) 2, for strobe
o Maximum current available from
this pin is 250 mA.
o To initiate a trigger, apply a voltage
of between 5 V and 12 V (4–11 mA)
to the trigger terminals.
o The optically isolated trigger input
circuit includes an internal 1 kΩ
series resistor.
o When using a voltage higher than
12 V, add an external resistor with
adequate power rating.
o A typical application of the trigger
input is to connect Pin 1 (POWER)
to Pin 2 (TRIGGER+) and use the
open collector output of an external
position sensor device to complete
the circuit from Pin 3 (TRIGGER–)
to Pin 4 (GROUND).
o Timing: See Section 8.1 on page
54.
o PixeLINK API--Refer to the
functions PxLSetFeature, PxLGetFeature
o Open-collector current sink output
from optical isolator. Provides
current sink to Pin 4 (GROUND)
when GP1/GP2 (as appropriate) is
active.
o Maximum current is 15 mA.
o Timing: See Section 8.2 on page 55
o PixeLINK API--Refer to the
functions PxLSetFeature,
PxLGetFeature
4.6.3.2 Trigger Connection Examples
The trigger inputs can accept floating signals that aren’t tied to the camera ground.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Using an analog trigger switch that connects to ground when a trigger occurs:
• Connect Pin 1 (Power) to Pin 2 (Trigger +)
• Connect trigger switch between Pin 3 (Trigger - ) and Pin 4 (Ground)
More sophisticated examples using TTL logic are shown in Figure 14 and Figure 15 below.
Figure 16 on page 25 shows an example using an optical trigger where the optical sensor is
used to trigger multiple cameras. Note that with such a device, there will be some noise as
the signal is switched and the camera’s debounce clock should be reduced to 100KHz to
avoid multiple triggers.
Figure 14 Trigger Input Example - TTL AND Gate
Figure 15 Trigger Input Example - TTL Inverter
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
Figure 16 Trigger Input Example - An optical trigger and multiple cameras
4.6.3.3 GPO Connection Examples
The GPO pins are open-collector current sink outputs. To use them, the output line must be
pulled high by the external circuit with a maximum current of 15 mA. Figure 17 below shows
the GPO outputs from the camera being used to output a TTL signal. Figure 18 on page 26
shows the GPO from one camera being used to trigger a second camera.
Figure 17 GPO Example - Output a TTL signal
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The PL-A780 camera is IIDC 1.31 compliant. All registers and communications follow the
IIDC 1.31 specification. Advanced Control and Status Registers (CSRs) are provided to
support custom features.
This section describes the features and controls of the PL-A780 camera. For each feature,
the set of values that define the feature in the IIDC specification are provided. In addition,
information not included in the IIDC specification is provided to improve usability.
The camera supports all the features listed here. Any IIDC feature not listed is not supported.
Features that are specific to a particular camera model are so indicated. The following
information defines the feature:
• Auto – whether the feature can be controlled automatically. E.G. Auto
exposure can maintain the correct exposure during changing illumination;
• Manual – whether the feature can be controlled manually. E.G. the Exposure is
set to 10 ms;
• One-time Auto – whether the feature can be controlled automatically for a short
period and then returned to manual mode. E.G. the exposure is set
automatically for the current illumination settings and then fixed at that value;
• Off – whether the feature can be turned off;
• Change in Descriptors (CiD) – whether the feature settings can change
between frames with descriptors;
• Parameters – whether the feature requires parameters. Each parameter has a
name, unit of measure, and a type (relative or absolute);
• Min value;
• Max Value;
• Default; and
• Step size.
5.1.1 Camera Initialization
The PL-A780 camera can be initialized on command. On initialization, the camera will load
the configuration parameters stored in Memory Channel 1. When the camera is delivered,
the configuration in Memory Channel 1 matches the factory defaults in Memory Channel 0.
Memory Channel 1 parameters can be set by the user so that the camera can be initialized to
a user-defined state. This allows the camera to be configured on one system and then used
on another computer without the need for camera configuration files on the two systems.
The camera can be initialized on command to the settings in Memory Channel 0 (factory
defaults) or Memory Channel 1. See Section 5.1.3.5 on page 32 for more information.
The following table shows the factory default settings for the controllable camera features of
the PL-A782.
Table 9 Default settings for PL-A780 features
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Note that for Format 0 operation, the sensor ROI is set to 1920 x 1440 with the Pixel
Addressing set to 3 or 6 for Modes 3 and 1 respectively. While in Format 0, the features that
would affect the ROI size, position, Pixel Addressing and pixel format (color coding) are
disabled.
5.1.3 IIDC Basic Features
The PL-A780 camera supports the following basic features:
• Color Coding (color versions only)
• Frame Rate
• Gain
• Gamma
• Memory Channel
• ROI
• Saturation (color versions only)
• Shutter
• Temperature
• Trigger
• Trigger Delay
• White Balance (color versions only)
• White Shading Compensation (color versions only)
Details about the registers and controls for these features can be found in the IIDC
specification. The following sections provide a description of how the features apply to
the PL-A780 camera, their parameters and limits.
Note that the IIDC specification allows two ways to control camera features. Feature
values can be written into the feature control registers or into absolute value registers.
The feature control registers are integer based and only allow positive integer values.
The absolute value registers use floating point numbers and can represent engineering
units. The PixeLINK PL-A780 camera will accept both methods of control. However,
some third party software applications only use the feature control register values. As a
result, the control sliders will have strange limits. For more information on the two types
of registers, see Section 6.5.2 and Section 6.5.3 on page 44.
Table 10 below shows the minimum and maximum limits on the IIDC features that use
feature control registers and the corresponding absolute value register values. Note that
the absolute value registers may have different limits as outlined in the following
sections.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The frame interval and the required bandwidth on the FireWire
bus are fixed by the Frame Rate value. The available frame rate
range depends on the current video format and/or video mode.
Programmers are recommended to check the ON/OFF setting
and minimum and maximum value after video format, ROI and/or
video mode have been changed.
When the Frame Rate feature is ON, the exposure time (Shutter)
is limited by the frame rate value dynamically. When the Frame
Rate value is changed, the minimum and maximum limits on the Shutter control will change
accordingly. The Shutter value will be forced to lie within these limits.
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD No
No
After a change to ROI, video format or video mode, the Frame Rate control will attempt to
maintain the same frame rate. If this is not possible, the Frame Rate control will be turned
OFF.
When the Frame Rate control is OFF, the frame rate value defaults to the maximum
isochronous frame rate. The frame rate is then a function of the exposure time for exposures
longer than the inverse of the frame rate value. For shorter exposure times, the frame rate will
be constant.
The absolute maximum frame rate is achieved by using asynchronous communication on the
FireWire bus. To set the maximum output frame rate, ensure the Frame Rate control is ON
and set the control to its maximum value.
The minimum frame rate (maximum frame interval) in rolling shutter mode (See Section 3.2.3
on page 12) is determined by the ROI height (number of pixel rows). The equation below
determines the maximum frame interval, in milliseconds, for a given ROI height.
8192.0
HeightROItervalMaxFrameIn
In Fast Reset Shutter mode (see Section 3.2.3 on page 12), the Frame Rate control can be
used to control the bandwidth on the FireWire bus. The frame interval can be effectively
controlled by the trigger or by adding delays to the internal trigger. The maximum internal
delay is 2.5 seconds.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
Parameter Unit Type Min Max Default Step Size Comments
Frame Rate fps Absolute
Varies
from 2
Varies
up to
8000
Max
ISO
Varies
Step size varies with the
number of rows in the image.
It is essentially the readout
time of one column.
5.1.3.2 Color Coding
The Color Coding feature selects the output type of the camera.
The PL-A782 supports the following types: 4:2:2 YUV (2), Raw8 (9)
and Raw16 (10).
The PL-A781 (monochrome) supports Mono8 (0) and Mono16 (5).
Parameter Unit Type Min Max Default Step Size Comments
Color coding
format
None Absolute N/A N/A N/A N/A
Auto No
Manual Yes
One-time
Auto
Off No
CiD No
No
5.1.3.3 Gain
Gain, or contrast, controls the sensitivity of the camera. Increasing
gain will increase the sensitivity but will also increase the noise in
the image.
The Gain control can be set to one of seventeen values: 0.0, 1.6,
3.1, 4.8, 6.3, 7.8, 9.2, 10.6, 12.0, 13.4, 14.8, 16.2, 17.6, 19.2, 20.7,
or 22.1 A setting of 0.0 represents the imager unity gain setting.
Parameter Unit Type Min Max Default Step Size Comments
Gain dB Relative 0 22.1 0 Non linear
Auto No
Manual Yes
One-time
Auto
Off No
CiD Yes
No
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Gamma controls the contrast in the image by translating pixel
values according to a logarithmic curve. A value of one is a linear
translation. Higher or lower values of gamma will result in missing
codes in the image histogram.
The Gamma curve is applied internally in the camera in the form of
a calculated look up table – the same table used by the Look Up
Table feature. When the Gamma feature is activated, the Look Up
Table feature is disabled and vice versa.
Parameter Unit Type Min Max Default Step Size Comments
Gamma None Absolute 0.1 4.0 2.2 0.1
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD No
No
5.1.3.5 Memory Channel
The memory channel feature stores all camera parameters into
non-volatile memory. Valid values are 0 for factory defaults or 1 for
memory channel 1.
Parameter Unit Type Min Max Default Step Size Comments
Memory
Channel
None Absolute 0 1 1 1
Auto No
Manual Yes
One-time
Auto
Off No
CiD No
No
5.1.3.6 Region of Interest
Under video format 7, the ROI control sets the area on the imager
that is active. Together with the Pixel Addressing mode and the
pixel format, the ROI control determines the total number of pixels
in a frame and the total size of the image. The smallest ROI
possible is 24 x 24 pixels. The ROI can be positioned with a
granularity of 24 pixels in both horizontal and vertical directions.
Parameter Unit Type Min Max Default Step Size Comments
Left Columns Absolute 0 2184 0 24
Top Rows Absolute 0 2976 0 24
Width Columns Absolute 24 2208 2208 24
Height Rows Absolute 24 3000 3000 24
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
Saturation controls the intensity of the hues in the image. The
saturation control allows the hue to be changed from full mono to
twice the normal hue.
Saturation is applicable to color cameras only.
Parameter Unit Type Min Max Default Step Size Comments
Alpha Percentage Relative 0 250 100 1
Auto No
Manual Yes
One-time
Auto
Off No
CiD No
No
5.1.3.8 Shutter
Shutter controls the integration time of the sensor. The shutter can
be controlled manually, once automatically or fully automatically. In
the auto modes, the camera will attempt to set the shutter feature
such that a small portion of the scene is saturated.
In rolling shutter mode (See the Trigger feature, Section 5.1.3.10
on page 34), the Shutter control determines the number of lines in
the ROI that are active at any time. In Fast Reset Shutter mode,
the Shutter control determines the length of time from the
completion of frame reset to the start of readout.
Auto Yes
Manual Yes
One-time
Auto
Off No
CiD Yes
Yes
When the Frame Rate control is active (ON), the Shutter control is
limited by the Frame Rate control setting. For example, if the
Frame Rate control is set to 50 fps, the maximum value of the
Shutter control will be limited to 20 ms. For unlimited control of the
Shutter feature, the Frame Rate control must be turned off.
Parameter Unit Type Min Max Default Step Size Comments
Integration
Time
Seconds Absolute 63 µs 2.0 0.1 Varies
The integration time step size
is the time required to read
out one row. See Section
3.2.3 on page 12.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The Temperature control is a read only control that provides an
indication of the temperature of the sensor chip.
Parameter Unit Type Min Max Default Step Size Comments
Temperature Deg. C. Absolute N/A N/A N/A N/A
Auto No
Manual No
One-time
Auto
Off No
CiD No
No
5.1.3.10 Trigger
Trigger controls the response of the camera to an external trigger
input. It also controls the rolling shutter or Fast Reset Shutter
behavior of the camera. Trigger modes and parameters are
described in detail in Section 8.1 on page 54. Turning the trigger
off enables the rolling shutter. Turning the trigger on enables the
Fast Reset Shutter.
Parameter Unit Type Min Max Default Step Size Comments
Parameter 1 Varies. Depends on the Mode. See Section 8.1 on page 54.
The PL-A780 only supports
Delay from trigger detection
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD Yes
Trigger Mode 0.
See Section 8.1.
to start of integration.
No
5.1.3.11 Trigger Delay
The Trigger Delay control adds a delay to start of integration from
the detection of the internal or external trigger event. See Section
8.1 on page 54 for more information. Turning the trigger delay off
disables the effects of the delay. This delay is in addition to trigger
latency discussed in Section 4.6.3.1 on page 22. To adjust the
trigger debounce delay, see Section 4.6.3.1 on page 22.
Parameter Unit Type Min Max Default Step Size Comments
Delay Ms Absolute 0 2.5 0 0.000001 See Section 8.1
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD Yes
No
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
White Balance defines the color temperature of the light source.
The camera uses this information to select form one of a number of
possible color correction matrices. Turning the White Balance off
disables the color correction.
The PL-A782 has color correction settings for 3200ºK
(incandescent) and 5000ºK (daylight). Minor variations in coloring
can be adjusted with the White Shading feature described in the
next section.
When the White Balance control is set in Auto Mode, it will control
the White Shading feature. This allows for consistent use of Auto
White Balance terminology.
Applies to color cameras only.
Parameter Unit Type Min Max Default Step Size Comments
White
Balance
Deg.
Kelvin
Absolute 3200 5000 3200 1800
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD No
Yes
5.1.3.13 White Shading
The White Shading feature provides control over the individual red,
green and blue channel gains so that non-standard color balance
can be achieved. One-push Auto will attempt to white balance the
gains (match the histogram peaks of each color channel) based on
the image data in the current ROI. The white shading control, as
described in the IIDC 1.31 specification, only provides for 8 bits of
shading data per channel. Additional CSRs are provided to allow
32-bit resolution in color channels. See Section 7.1.1.1 on page
52. The White Shading can also be set by the Auto mode of the
White Balance control mentioned above.
Setting a gain parameter to zero will effectively turn off that color
channel – it will output a zero value.
Applies to color cameras only.
Parameter Unit Type Min Max Default Step Size Comments
Gain Red None Absolute 0 4 1.42 0.0156
Gain Green None Absolute 0 4 1.0 0.0156
Gain Blue None Absolute 0 4 1.08 0.0156
Auto No
Manual Yes
One-time
Auto
Off No
CiD Yes
Yes
5.1.4 Advanced Features
The following features are not defined by the IIDC specification but are specific to PixeLINK
cameras and to the PL-A780 camera series. To access, read and/or control these features,
see Section 7.1 Extensions to the IIDC Version 1.31 Specification on page 52.
The advanced features include the following:
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
A block of CSRs provides read only access to basic camera information including:
• Camera Serial Number
• FPGA Version
• Firmware Version
• Camera Description
The camera serial number is a factory set string of numbers that uniquely identifies the
camera. The FPGA Version and Firmware Version identify the hardware and firmware
versions currently loaded in the camera. The FPGA and Firmware can be updated in the
field and these entries will reflect the versions currently loaded. The FPGA and Firmware
version numbers are stored as a 32 bit word and can be decoded in the form
Byte0.Byte1.Byte2.Byte3.
The camera description is a text string, up to 256 characters long, that provides a short
description of the camera type.
5.1.4.2 Camera Name
The name of the camera can be read and set from this feature. It is a text string of up to 256
characters in length.
5.1.4.3 Descriptors
A descriptor is a list of all the camera parameters. The Descriptor feature is a way to control
camera settings between frames without communication between the host computer and the
camera. This allows for rapid changes of camera parameters in a deterministic manner.
When in rolling shutter mode, if the changes affect the sensor, the camera will drop a frame
and send the next one, effectively halving the frame rate.
Descriptors also provide information about the current camera settings. Most of the camera
settings will be known to the host computer but a few, especially the features that are set to
Auto, may change without the host’s knowledge. The descriptor structure is set up in two
parts so that all the settings that can change are in the first part and all the known and static
settings are in the second. The complete descriptor can be written or read from camera
memory. It is important to check the version of the descriptor structure in order to use the
correct structure.
The first part of the descriptor structure is always appended to each frame. For more
information on the manner and format in which the data is appended to the frame, refer to
Section 9 on page 56.
For camera control, up to 14 descriptors can be created and stored in camera memory. The
camera will apply each descriptor in turn when capturing images. When multiple descriptors
are in use, the camera will encode a synchronization number in the first 16 bytes of image
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
data returned from the camera. The format of the synchronization code is shown in Section 9
on page 56.
Descriptors are created by increasing the number of descriptors in the descriptor
configuration CSR. A new descriptor will have the same values as the current descriptor or, if
it is the first descriptor created, the camera settings. With more than one descriptor, the
camera will cycle through the descriptors repetitively.
Descriptors can be changed by updating the descriptor values in camera memory.
To delete a descriptor, reduce the number of descriptors in the descriptor configuration CSR.
The highest indexed descriptors will be deleted first.
For more information on the descriptor structures, refer to Section 9.2 on page 57.
5.1.4.4 General Purpose Outputs
General Purpose Output (GPO) signals are controlled by this
feature. The output signal is defined by a mode, polarity and a
number of parameters that vary in meaning with the mode. For a
complete description of the PL-A780 GPO modes and settings, see
Section 8.2.
4 GPO signals can be controlled. GPO numbers 1 and 2 are
available externally. 3 and 4 are only available on the board-level
variant of the PL-A780.
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD Yes
No
Applies to PL-A780 cameras only.
Parameter Unit Type Min Max Default Step Size Comments
In the PL-A780, the Look Up Table (LUT) has 1024 2-byte entries that range in value from 0
to 1023 (10-bit depth). The LUT is used to implement the IIDC Gamma feature but it can also
be used to implement any LUT transfer function required.
The LUT is written to camera memory as a block of 1024 words at the address specified by
the Look Up Table Offset register, starting with Word 0 (Black).
When the LUT or Gamma function is active (ON), every pixel is converted according to the
transfer function stored in the LUT. With both functions off, the LUT is bypassed and a linear
transfer function is used.
Since both Gamma and the LUT use the same camera memory, whichever function was last
turned on will control the memory and the other function will be turned off. Turning on the
Gamma function will overwrite the LUT with the appropriate gamma values.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Turning on the LUT will disable Gamma but will leave the camera memory unchanged. If the
LUT is turned off, the LUT values will be retained in camera memory and will be applied
again once the LUT is turned on.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The Pixel Addressing feature controls the number of pixels that
are read from the ROI. See Section 3.2.1 on page 7 for more
information.
Pixel Addressing is controlled by two parameters – a Pixel
Addressing mode and a value. The mode of Pixel Addressing can
be decimate (0), averaging (1), binning (2) or resampling (3). The
Pixel Addressing value can be one of 1, 2, 3, 4 or 6.
With a Pixel Addressing value of 1, the Pixel Addressing mode has no effect and all pixels in
the ROI will be returned. For Pixel Addressing values greater than 1, the number of pixels
will be reduced by the square of the value. For example, a Pixel Addressing value of 2 will
result in ¼ of the pixels.
The Pixel Addressing mode determines how the number of pixels is reduced. The Pixel
Addressing value can be considered as the size of a block of pixels made up of 2x2 groups.
For example, a Pixel Addressing value of 3 will reduce a 6 x 6 block of pixels to a 2 x 2 block
– a reduction of 4/36 or 1/9.
The decimate mode will drop pixels all the pixels in the block except for the top-left group of
four. This creates the 2x2 blocks of pixels shown in Figure 2 to Figure 5 on page 8. At the
highest Pixel Addressing value of 6, a 12 x 12 block of pixels is reduced to 2 x 2. At this level
of reduction detail in the scene can be lost and color artifacts introduced.
Auto No
Manual Yes
One-time
Auto
Off Yes
CiD No
No
The averaging mode will average pixels with the similar color within the block resulting in a
2x2 Bayer pattern. This allows details in the blocks to be detected and reduces the effects of
the color artifacts.
The binning mode will sum pixels with similar color within the block reducing the block to a
2x2 Bayer pattern. Unlike binning with CCD sensors, this summation occurs after the image
is digitized so no increase in sensitivity will be noticed but a dark image will appear brighter.
The resampling mode uses a different approach involving the conversion of the Bayer pattern
in the blocks to RGB pixels. With a Pixel Addressing value of 1, resampling has no effect.
With a Pixel Addressing mode of 2 or more, resampling will convert the block of 10-bit pixels
to one 30-bit RGB pixel by averaging the red, green and blue channels. The 30-bit RGB
value is output from the camera when the video format is set to Y:U:V mode. Resampling will
create images with the highest quality and the least artifacts.
Pixel Addressing will reduce the amount of data coming from the camera. However, only the
Decimate mode will permit an increase in the frame rate. Averaging, binning and resampling
modes will have the same frame rate as if the Pixel Addressing value was 1 (no decimation.)
Pixel Addressing works in the same fashion with color or monochrome sensors.
Parameter Unit Type Min Max Default Step Size Comments
Mode None Absolute 0 3 0 1
Value None Absolute 1 6 1 1
0: Decimate, 1: Average, 2:
Bin, 3: Resample
Pixel Addressing Value of 5
is not supported.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
5.2 Non IIDC Features Accessible with the PixeLINK API
The following features are specific to the PL-A780 camera series. To access them, you will
need the PixeLINK Software Development Kit (PL-SDK-VERSION-4.1).
The PixeLINK API defines two functions that allow access to camera specific features. These
are PxLCameraRead and PxLCameraWrite. They can be used with the PL-A78X to turn on
or off flat field correction and determine what gain the camera was calibrated at.
5.2.1 Flat Field Correction
Flat Field Correction (FFC) applies a gain and offset correction per pixel to correct for
illumination and sensor irregularities. A factory calibration is performed and stored in the
camera memory. It is possible to perform FFC calibration in the field using a software tool
available with the CD that ships with –KIT and –DEV product bundles or from the PixeLINK
web site. Look for downloads associated with the PL-A781 or PL-A782 products. See
Section 1on page 1 for more information.
The data to transmit for flat field correction has in the following format:
struct
{
ULONG CommandCode;
ULONG FfcOn; // 1 = On, 0 = OFF
FLOAT FfcCalibrationGain; // Gain at which FFC was
// calibrated in dB
};
To turn flat field correction off or on, set FfcOn to 0 or 1 and CommandCode to
0x00008002.
To read the flat field correction settings set CommandCode to 0x00008001.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The purpose of this section is to give the reader a basic introduction to the IIDC (Digital
Camera) v1.31 specification and to provide a basic description of how software could be
written to communicate with an IIDC compliant camera.
To make use of the information presented here, please refer to the following related
documentation:
IIDC 1394-based Digital Camera Specification (Version 1.31)
IEEE 1394-1995 Serial Bus Specification
IEEE 1394a Supplement
CSR Architecture Specification – ISO/IEC 13212 (ANSI/IEEE 1212)
If you are using the PixeLINK SDK, you do not need to read this section.
The PixeLINK SDK is a high level Application Programming Interface (API)
compatible with C, C++ and Visual Basic. It provides low-level drivers and a
high-level software interface to the camera that simplifies the task of controlling
PixeLINK cameras. Details on the API functions can be found in the PixeLINK
API Reference Manual.
6.1 Introduction
The IIDC Specification was written to act as a design guide for digital camera makers wishing
to have cameras that would be interoperable across many different software applications and
systems. As a result it is fairly technical and assumes familiarity with 1394 and the control and
status register architecture. This does not make it well suited for developers with little or no
1394 experience who wish to understand how software communicates with an IIDC
compliant camera. There are also several sections in the specification that are vague enough
that they could be interpreted in several ways. This section will provide an overview of IIDC
and help in interpreting the IIDC specification.
6.2 Useful Definitions
• CSR – Control and Status Register – A 4 byte control register used in 1394
devices.
• Quadlet – A 4 byte value
• Configuration ROM – A portion of a 1394 device’s address space that contains
configuration information about the device.
• Bus Info Block – A portion of a 1394 device’s Configuration ROM that specifies
a variety of bus related capabilities.
• Root Directory – A portion of a 1394 device’s Configuration ROM that provides
information necessary for the device to be identified along with pointers to
other directories and data structures.
• Unit Directory – A portion of a 1394 device’s Configuration ROM that provides
information about a specific function of the device.
• Quadlet Offset – This term is used throughout the IIDC specification and
means the number of Quadlets from a specified base address. (I.e. if a quadlet
offset is determined to be 100h then the actual address offset would be 400h).
• IIDC Base Address – The base address of the IIDC address space to which
CSRs in the IIDC specification refer.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Essentially the IEEE - 1394 FireWire bus uses a memory mapped communication protocol.
1394 transactions can be considered to be a read or write of data to a specified memory
address. 1394 uses 64bits of addressing: 16 bits for bus and node addressing with each
node (or device) on the bus having 48 bits of address space. The IIDC specification defines
how the address space on an IIDC compliant camera is implemented.
NOTE: 1394 uses big-endian notation, that means that the most significant byte comes first
and the most significant bit is bit 0. The PC uses little endian notation, where the least
significant byte comes first.
6.4 Communication With a IIDC Camera
In order to begin communication with an IIDC camera it is first necessary to determine in
which portion of the address space the IIDC camera is located. To allow flexibility in device
implementation the IIDC address space is not the same between devices but can be selected
by the camera manufacturer.
The IIDC specification defines the base address of the IIDC address space as
FFFF Fxxx xxxh where the xxx xxxxh is determined from the camera’s Configuration ROM.
6.4.1 Navigating the Configuration ROM
The IIDC specification defines the format of the Configuration ROM for IIDC cameras. The
offsets listed in the Root Directory table are all relative to the base address FFFF F000 0000h.
To determine the location of the Unit Directory the unit_directory_offset field must be read
from offset 0424h (or address FFFF F000 0424h). This field consists of an identifying key
and a relative quadlet offset. The identifying key is an 8 bit value that for the unit directory
offset is D1h. So if the value in the unit_directory_offset field is D100 0004h then the offset
for the unit directory is 0424h + 4*04h = 0434h (or address FFFF F000 0434h).
To determine the location of the Unit Dependent Directory the
unit_dependent_directory_offset field must be read from offset 000Ch of the Unit Directory
(or address FFFF F000 0440h using the above example unit directory offset). The identifying
key for the unit dependent directory offset is D4h. So if the value in the
unit_dependent_directory_offset field is D400 0001h then the offset for the unit dependent
directory is 0440h + 04h = 0444h (or address FFFF F000 0444h).
The Unit Dependent Directory contains, among other things, the IIDC Base Address, which
can be read from the command_regs_base field of the Unit Dependent Directory. The
identifying key for the command_regs_base field is 40h. So if the value of that field is 4034
0000h then the offset of the IIDC address space is 00D0 0000h or the IIDC Base Address is
FFFF F0D0 0000h.
NOTE: This sample IIDC Base Address will be used in all further examples in this document.
6.4.2 IIDC Command Registers
In Section 1 of the IIDC specification all Command registers (or CSRs) are defined. The
offsets for all of these registers, unless otherwise specified, are relative to the IIDC Base Address. The IIDC CSRs consist of Inquiry Registers and Control Registers. The IIDC
specification is designed to support many different types of cameras with many different
features, the Inquiry registers are used by controlling software to determine which of these
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
features a specific camera supports and the Control registers are used to modify settings of
the supported features. The next section will go into more detail about some of these
registers.
6.5 Command Register Details
This section will give details on some of the different IIDC command registers, what they
mean and how to use them.
6.5.1 Video Formats
IIDC video formats are used to define what type of video data will be output from the camera.
Several different formats are defined based on image size:
• Format 0 – VGA (640x480) and smaller resolutions
• Format 1 – SVGA format 1 (from 800x600 to 1024x768)
• Format 2 – SVGA format 2 (from 1280x960 to 1600x1200)
• Format 6 – Still Images (not described in this document)
• Format 7 – Scalable image size (user defined size and position)
For each video format there are several defined modes. The mode specifies the exact size of
the video data and the size and color information of the pixels (i.e. Mono 8-bit, YUV422 16bit, etc.)
A given camera will only support some of the video formats and some of the modes for the
supported video formats. One of the first things controlling software should do is determine
which formats and modes are supported.
The IIDC specification defines the Inquiry Registry for Video Format. This register can be
read from offset 0100h (or address FFFF F0D0 0100h using the example IIDC base
address) and the value will indicate which formats are supported.
The IIDC specification defines the Inquiry Registers for Video Modes. There is a register for
each video format. If format 1 is supported then the register at offset 0184h (or address FFFF
F0D0 0184h) can be read to determine which modes are supported for format 1.
6.5.1.1 Formats 0, 1 & 2
For formats 0, 1 & 2 there are also pre-defined frame rates for each video mode. The IIDC
specification defines the Inquiry Registers for Video Frame Rates. There is a separate
register for each video mode. Read the registers for the supported video modes to determine
which frame rates the camera supports.
6.5.1.2 Format 7
Format 7 is very flexible, allowing the user to specify the width, height, position and pixel
format of the video data. A separate set of control registers exists for each format 7 mode. To
determine the location of these control registers for a given mode the offset can be read from
registers starting at offset 02E0h. For example, to determine the control register offset for
format 7 mode 0 read the register at offset 01E0h (or address FFFF F0D0 01E0h), if this
value was 0034 0280h then the offset for the control registers would be 00D0 0A00h (or
address FFFF F0D0 0A00h). Note that this offset is relative to the base address FFFF F000 0000h not the IIDC base address.
The format 7 control registers, as defined in the IIDC specification are mostly selfexplanatory. They provide information on the sizes and positions of video data supported, the
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
different types of pixel format supported, and provide controls to set all of these options. The
also provide information and control of isochronous streaming parameters (discussed later in
Section 6.6.2 on page 45).
For example to determine the current image width and height of the video data read the
register at offset 000Ch (or address FFFF F0D0 0A0Ch using the example format 7 mode 0
control register offset). If this value is 0500 0400h then the current width and height would be
1280 x 1024.
6.5.2 Camera Features
The camera features are used to control different functions of the camera, from things like
saturation and gamma to zoom and focus. A given camera will only support some of the
defined features so controlling software needs to determine which features are supported.
The IIDC specification defines the Inquiry Registers for feature presence. The values of these
registers will indicate which features are supported.
There are also separate inquiry registers for each feature defined in the IIDC specification.
The value of these registers will provide information about how the specific supported feature
can be controlled including: the minimum and maximum value of the feature, if the feature
can be controlled by the user (Manual_Inq), if the feature’s value can be adjusted
continuously by the camera (Auto_Inq), if the feature’s value can be adjusted once
automatically by the camera (One_Push_Inq), if the feature can be turned on and off
(On/Off_Inq) and if the feature can be controlled with its Absolute Value register (see Section
6.5.3 below).
A supported feature can be controlled through it’s control register. The registers allow
controlling software to set the value or change the mode of the feature.
6.5.3 Absolute Value CSRs
There can be a set of absolute value registers for each supported camera feature. The
absolute value registers allow for manual control of the feature using 32-bit IEEE floating
point values. This allows for exact values using engineering units instead of arbitrary values
(units for the absolute value registers are defined in Appendix B of the IIDC specification).
The IIDC specification defines the Absolute Value CSRs. Each set of absolute value CSRs
consist of three registers, a minimum value, a maximum value (both read only) and the
current value. The IIDC specification defines the offsets of the Absolute Value CSRs for each
of the camera features.
For example, to determine the location of the absolute value CSRs for the Brightness feature
read the register at offset 0700h (or address FFFF F0D0 0700h). If the value of this register
was 0034 0380h then the absolute value CSRs for Brightness would be located at offset 00D0 0E00h (or address FFFF F0D0 0E00h), note that this offset is relative to the base
address FFFF F000 0000h not the IIDC base address. If the values at offsets 0E00h, 0E04h,
and 0E08h were 0000 0000h, 4000 0000h, and 3F80 0000h respectively then the min value
would be 0.0, the max would be 2.0 and the current value would be 1.0.
6.5.4 Advanced Feature CSRs
Some camera vendors may wish to implement features that are not defined by the IIDC
specification. This is done through the advanced feature register space. The IIDC
specification defines the Inquiry Register for Basic Functions which indicates if the camera
supports these vendor defined features. If they are supported then the offset for the
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
advanced feature registers space is defined at offset 0480h (Note that this offset is relative to
the base address FFFF F000 0000h not the IIDC base address).
To be useful, the definition of the advanced features has to be supplied by the camera vendor
in a form similar to this document.
6.6 Video Transmission Details
This section will give details on different ways to tell an IIDC camera to send video data, the
way the data is transmitted and the format of the data.
6.6.1 Video Transmission Control
The IIDC Specification defines the general Status and Control Registers for the camera.
Some of these registers are used to control the isochronous transmission of video data. The
camera can either be setup to continuously output video frames, output a single frame, or
output several frames.
6.6.2 Isochronous Packet Size
The camera controller must know the size of the isochronous packets that will be transmitted
so that 1394 isochronous bandwidth can be allocated before instructing the camera to output
data. In formats 0, 1 and 2 the packet size can be determined based on the mode and frame
rate by consulting the appropriate table in the IIDC specification.
The packet size for format 7 can be determined from the format 7 control registers. These
registers will also provide the number of bytes per frame and the number of packets per
frame. Note that the packet size times the number of packets per frame may be greater than
the number of bytes per frame, the extra bytes may be used for padding in the last packet of
a frame and should be ignored.
6.6.3 Features That Affect Isochronous Packet Size or Format
The following list includes standard IIDC registers as well as PixeLINK extended registers:
Status and Control Registers
CUR_V_FRM_RATE
CUR_V_MODE
CUR_V_FORMAT
ISO_SPEED
Feature Status and Control Registers
FRAME_RATE
Format 7 Registers
IMAGE_SIZE
COLOR_CODING_ID
BYTE_PER_PACKET
Extended Registers
PIXEL ADDRESSING
DESCRIPTOR
When any of these registers are written to, ISO_EN, ONE_SHOT and MULTI_SHOT should
all be set to 0. Otherwise the written values will be ignored and an error will be returned.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Information in this section is based on the IIDC 1.31 specification. Please refer to the IIDC
1.31 specification for details on the meanings and use of CSRs.
The following table describes the Advanced Feature CSRs that are allowed under the IIDC
V1.31 specification as vendor specific. These CSRs are based at an offset found in the
Advanced Feature Offset value (register 0x480).
This table is common for all IIDC compliant PixeLINK cameras and is included to promote
compatibility. Not all the features listed in this table are available with the PixeLINK PL-A780 cameras. Check the presence bit of the inquiry register to determine if the feature is
supported on a particular camera.
Table 11 Advanced Feature CSRs
Offset Name Field Bit Description
000h
004h
008h Serial Number Offset Value [0..31]
00Ch Serial Number Length Value [0..31]
010h FPGA Version Value [0..31]
014h FW Version Value [0..31]
018h Camera Description Offset Value [0..31]
01Ch Camera Description Length Value [0..31]
020h
..
0FCh
100h Name Inquiry
104h Name Offset Value [0..31]
108h Name Length Value [0..31]
ACR [0..63]
CAMERA INFO REGISTERS (READ ONLY)
Reserved for future Camera Info registers.
ADVANCED FEATURE INQUIRY REGISTERS (READ ONLY)
Presence_Inq [0] Presence of this feature
[1..15] Reserved
Max_Length [16..31]
Advanced Feature Access Control
Register (See NOTE 1)
Quadlet offset of the Serial Number
string from the base address of the
initial register space
Length in bytes of the Serial Number
string
FPGA Version in format
Byte0.Byte1.Byte2.Byte3
Firmware Version in format
Byte0.Byte1.Byte2.Byte3
Quadlet offset of the Camera
Description string from the base
address of the initial register space
(See NOTE 2)
Length in bytes of the Camera
Description string
Maximum length of Camera Name in
bytes
Quadlet offset of the Camera Name
string from the base address of the
initial register space (See NOTE 2)
Length in bytes of the Camera Name
string (Read Only)
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
Bit_Depth [8..15] Bit depth of an entry in the lookup table
Number [16..31] Number of entries in the lookup table
144h Look Up Table Offset [0..31]
Presence_Inq [0] Presence of this feature
In_Desc_Inq [1]
148h Auto ROI Inquiry
14Ch Rotate Inquiry
[2..7] Reserved
Invalid_ROI [8]
[9..31] Reserved
Presence_Inq [0] Presence of this feature
In_Desc_Inq [1]
in different descriptors
1 = Yes, 0 = No
Quadlet offset of the first entry in the
lookup table. Each entry occupies a
whole number of bytes (e.g. a 10bit
entry occupies 2 bytes). The table
must be written to in order, starting
from byte 0.
Can this feature have different values
in different descriptors
1 = Yes, 0 = No
0 = Valid ROI, 1 = Invalid ROI
This feature will be ignored until a valid
ROI is set. The ROI must be within the
current image region. (See NOTE 5)
Can this feature have different values
in different descriptors
1 = Yes, 0 = No
[2..31] Reserved
150h Rotate Offset [0..31]
Presence_Inq [0] Presence of this feature
[1..7] Reserved
154h Frame Buffer Inquiry
158h Buffer offset Offset [0..31]
15Ch Buffer Size Value [0..31]
Buffer_Full [8]
[2..31] Reserved
Quadlet offset of the absolute value
CSR for Rotate
0 = Buffer Empty, 1 = Buffer Full
When the buffer is full the frame can be
read from the camera.
Quadlet offset of the memory address
for the frame data.
Length, in bytes, of the data stored at
the buffer address. This includes the
size of the stored frame plus any
descriptor information.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
Reserved for future Advanced Feature Control Registers
Clear buffer (automatically reset)
1 = Clear buffer
Setting this bit will empty the buffer so
that it can be filled with another frame.
This bit will be cleared once the buffer
is reset.
Value of the 1394 cycle time that when
reached will cause the camera to
capture a frame. This is only used in
trigger mode 15. A value of
0xFFFFFFFF in this register means the
camera will not begin output of a frame
until a valid value is programmed.
GPO 0 On/Off
1 = On, 0 = Off
GPO 0 Polarity
1 = Active High, 0 = Active Low
GPO X On/Off
1 = On, 0 = Off
GPO X Polarity
1 = Active High, 0 = Active Low
GPO 14 On/Off
1 = On, 0 = Off
GPO 14 Polarity
1 = Active High, 0 = Active Low
NOTE 1:
The Feature_Id field of the Advanced Feature Access Control Register is a 48bit value with the
following format:
0 – 7 8 – 15 16 – 23 24 – 31 32 – 39 40 - 47
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
For example: The Feature_Id field for the FLIP_INQ CSR would be 0x000168000114
NOTE 2:
You do not have to access the Access Control Register to Read/Write to the value at the offset
pointed to by the value in this register.
NOTE 3:
These are the offsets for the absolute value CSRs for the parameters of GPO 0. The absolute
value CSR offsets for GPO X can be calculated as follows : quadlet offset of Parameter N GPO X
= GPO_PARMN_ABS + 3 * X.
NOTE 4:
This is the offset for the absolute value CSR for the Extended Shutter Knee Point 0. The absolute
value CSR offsets for Knee Point X can be calculated as follows : quadlet offset of Knee Point X
= XSHUT_KNEE_ABS + 3 * X.
NOTE 5:
In all formats the Auto ROI must be within an image region that has Top and Left coordinates of
zero and Height and Width values that correspond to the current Video height and width.
NOTE 6:
Descriptors are added or removed by increasing/decreasing this value. When a descriptor is
created it will have the same values as the current descriptor (Current field) or the camera
settings if it is the first descriptor to be created. When the descriptor number is decreased then
the descriptors with a higher index are removed first.
NOTE 7:
Changing this feature can change the orientation of the Bayer pattern. The Format 7 Color Filter
ID register should be checked each time this feature is changed.
7.1 Extensions to the IIDC Version 1.31 Specification
The following sections describe PixeLINK extensions to the IIDC specification to allow for
extra functionality within the IIDC address space.
7.1.1 Determining which Features can change in a Descriptor
All feature element inquiry registers (Offset 500h to 5FFh) use bit 2 to indicate if the feature
can have different values in different descriptors as shown in Table 12 below.
Table 12 - Feature Element Inquiry CSRs (Section 4.5 in the IIDC 1.31 Spec.)
Offset Name Field Bit Description
[0..1] Same as IIDC Specification
Can this feature have different values
5XXh XX Inquiry Register
In_Desc_Inq [2]
[3..31]
7.1.1.1 Color Coding
The Color Coding Inquiry Register uses bit 31 to indicate if the color coding can change
between descriptors.
in different descriptors
1 = Yes, 0 = No
Same as IIDC Specification
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
Table 13 - Color Coding Inquiry CSR for Format_7 (Section 4.9 in the IIDC Spec.)
Offset Name Field Bit Description
Mono8 [0] Y only, Y=8bits, non compressed ID=0
4:1:1, Y=U=V=8bits, non
compressed
4:2:2, Y=U=V=8bits, non
compressed
4:4:4, Y=U=V=8bits, non
compressed
Y only, Y=16bits, non compressed
(signed integer)
R=G=B=16bits, non compressed
(signed integer)
Raw data output of color filter
sensor, 8bits/pixel (Bayer pattern)
Raw data output of color filter
sensor, 16bits/pixel (Bayer pattern)
Can the Color Coding ID have different
values in different descriptors
1 = Yes, 0 = No
ID=1
ID=2
ID=3
ID=7
ID=8
ID=9
ID=10
014h
Color Coding Inquiry
Register
4:1:1 YUV8 [1]
4:2:2 YUV8 [2]
4:4:4 YUV8
RGB8 [4] R=G=B=8bits, non compressed ID=4
Mono16 [5] Y only, Y=16bits, non compressed ID=5
RGB16 [6] R=G=B=16bits, non compressed ID=6
Signed Mono16
Signed RGB16
Raw8
Raw16
[9..30]
In_Desc_Inq [31]
[3]
[7]
[8]
[9]
[10]
7.1.2 White Shading Absolute Value Registers
The IIDC 1.31 specification defines White Shading as controlling three values, the red, green
and blue channel compensations, but only one absolute value register is defined for White
Shading. This does not allow for control of the separate channel compensations with
standard engineering units. So extra absolute value registers are defined as follows.
The offsets for the White_Shading absolute value CSRs are defined in the
ABS_CSR_HI_INQ_14 register (offset 738h). This will define the offsets for the red channel
compensation CSRs. The absolute value CSR offsets for the green and blue channels can
be calculated as follows : quadlet offset of green or blue CSRs = ABS_CSR_HI_INQ_14 + 3
* X (where X = 1 for green and X = 2 for blue).
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
The PL-A780 supported GPO modes are defined below. The PL-A780 supports modes 0
(Strobe), 1 (Normal), 3 (Busy) and 4 (Flash Window).
8.2.1 GPO MODE 0 (STROBE)
The GPO is set after a trigger occurs. The GPO pulse is delayed X (GPO Parameter 1)
seconds from the trigger and is Y (GPO Parameter 2) seconds in duration.
External
Trigger
Input
GPO Out
X Seconds Y Seconds
8.2.2 GPO Mode 1 (Normal)
The GPO is set to either low or high, depending on the value of Polarity.
8.2.3 GPO Mode 3 (Busy)
The GPO is set whenever the camera is unable to respond to a trigger. This is only useful
when using Trigger Type Hardware or Software, for all other modes it will always be set. The
busy period is defined as the period from the time a trigger is detected until the captured
frame has been read out and any internal housekeeping is completed. This mode can be
used to detect missed triggers. There are no parameters.
8.2.4 GPO Mode 4 (Flash Window)
In this mode, the GPO indicates the window in which a strobe light source may be fired. The
GPO signal will be set once the sensor has completed the reset and starts integrating and will
be deactivated at the end of the exposure time as readout of the array commences. There
are no parameters. For best results, the strobe flash duration plus any delay from the flash
window pulse to the start of the strobe flash should be less than the exposure (Shutter) time.
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE
A frame coming from the camera will have the following format:
Byte 0 Byte 1 Byte 2 … Byte N-2 Byte N-1
Frame Descriptor (See Descriptor Structure Format)
= IIDC 1.31 Frame padding region
N = Number of bytes per frame (width * height * bytes per pixel)
If multiple descriptors are being used then a synchronization code will be encoded in the first
four pixels. This code is to ensure that the driver knows which frame it is receiving from the
camera (in case the frame size changes between descriptors). The code is encoded as:
Byte 0 Bits 7 … 0
Byte 1 Bits 7 … 1 Code Bit 7
Byte 2 Bits 7 … 0
Byte 3 Bits 7 … 1 Code Bit 6
Byte 4 Bits 7 … 0
Byte 5 Bits 7 … 1 Code Bit 5
Byte 6 Bits 7 … 0
Byte 7 Bits 7 … 1 Code Bit 4
Byte 8 Bits 7 … 0
Byte 9 Bits 7 … 1 Code Bit 3
Byte 10 Bits 7 … 0
Byte 11 Bits 7 … 1 Code Bit 2
Byte 12 Bits 7 … 0
Byte 13 Bits 7 … 1 Code Bit 1
Byte 14 Bits 7 … 1
Byte 15 Bits 7 … 1 Code Bit 0
where Code is a 8 bit number (Bit 7 = MSB). The Code is zero for the first frame of a video
stream, and will increment by one each frame after that, rolling over once it reaches the
number of descriptors currently in use (i.e. if three descriptors are in use then the Code will
roll over once it reaches 2).
9.1.1 Byte Order
For 8-bit data, the byte order is straight forward with byte 0 being the top left pixel in the
image, byte 1 being the second pixel in the top row and so on.
The FireWire bus uses big-endian notation, that means that the most significant byte comes
first and the most significant bit is bit 0. The PC uses little endian notation, where the least
significant byte comes first. Hence, on a PC system, when receiving 16-bit data from the
camera, the bytes will be swapped.
Document No.: 04646-01PixeLINK PL-A780
MACHINE VISION CAMERA
The following C code example swaps the bytes and strips the trailing zeros to leave a 10-bit
pixel value in the range of 0 to 1023.
// Swap bytes and shift right to get a value in the range [0,1023]
inline U16 SwapAndShiftU16(U16 val)
{
return ((val & 0xFF) << 2) | ((val & 0xFF00) >> 14);
}
When interpreting image data from the camera, the Video Format (Section 5.1.2) or Color
Coding (Section 5.1.3.2) is used to determine the meaning and order of the data. In addition,
for Raw data formats, the Color Filter ID can be used to determine the order of the color
channels in the image. This is relevant for cameras that can flip or rotate the image data.
See the IIDC Specification - offset 058h from the Video Mode CSR for Format 7.
For the PL-A780 series cameras which do not support flip or rotate, the color data will always
be output with Filter ID = 2 (GR/BG) format.
9.2 Descriptor Structure Format
The Descriptor structure has two parts. The first part contains a list of all the features that can
change between descriptors and all other features in the second. The first section of the
structure is attached to the end of each frame sent to the driver. This part of the structure is
required to be as small as possible so only features that could change from frame to frame
and be unknown by the Host are included (i.e. features that could be in Auto mode).
The whole structure (first and second section) is used when accessing the Descriptor
structure located at the Descriptor Offset (See Table 11 on page 46).
The PL_A780 uses Descriptor Version 3. Versions 0 through 2 are subsets of this structure
and are used by other PixeLINK cameras. Refer to the PixeLINK API Reference Manual for
more information.
9.2.1 Descriptor Version 0x0003
typedef struct _DESCRIPTOR
{
const U16 wSize; // Size of this structure (in
bytes)
const U16 wVersion = 0x0003; // Version of this structure
float fWhiteBalance; // White Balance
float fSaturation; // Saturation
float fBrightness; // Brightness
float fShutter; // Shutter
float fGain; // Gain
float fRedGain; // Red Gain
float fGreenGain; // Green Gain
float fBlueGain; // Blue Gain
Tech Notes on a variety of topics are available on our Web site, at
http://www.pixelink.com/
Download the Latest Software and Firmware
The PL-A780’s onboard programming (firmware) can be upgraded at your computer.
Whether you have a tech support issue or not, we recommend that you check our
Web site (http://www.pixelink.com/
software and firmware.
Technical Questions
Please follow these steps before contacting our technical support team:
1. Review the relevant sections of the documentation.
2. Check the PixeLINK Web site for:
.
) regularly for the latest versions of your PixeLINK
a. new software and firmware;
b. applicable Tech Notes.
3. Carefully document the problem you are experiencing, noting any warning or
error messages that may appear during operation.
4. Have your Camera's serial number, where the camera was purchased and other
identifying information at hand. The serial number can be found on bottom of the
Camera.
PixeLINK Customer Support
Email: support@pixelink.com
Web: http://www.pixelink.com/
PixeLINK PL-A780 Document No.: 04646-01
MACHINE VISION CAMERA
SYSTEM GUIDE