illunis RMV-16000, RMV-11002, RMV-4020, RMV-2020, RMV-4021 Operation Manual

...
Operations
Manual– 4 Tap
Rugged Machine Vision
Advanced Digital Machine Vision Cameras
Firmware Revision: EF
Release 3/12/2014
Welcome to the RMV users manual. Our goal
is to provide the best possible documentation for the RMV cameras and we will update this document with your feedback. We welcome comments and criticism of this document.
This document covers the CCD versions of the RMV digital cameras. A separate document will cover the CMOS versions of the RMV.
Please direct your comments to: EMAIL: info@illunis.com
Special Notes
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 2
Specifications subject to change without notice.
About illunis:
Illunis is a privately held LLC located in beautiful Minnetonka Min­nesota, USA. Since it’s inception in 2000 illunis has grown into a tech­nological innovator in the digital camera arena. We value our cus­tomers and suppliers and offer state of the art products at the industries most competitive prices. As a self funded company, illunis is a stable, reliable source for demanding OEM’s who include the most pres­tigious names in the world. We in­vite you to visit us and together we can create a prosperous future.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 3
New Address
Illunis LLC 14700 Excelsior Blvd. Minnetonka, MN USA Zip Code: 55345 Phone: (952) 975-9203 Fax: (952) 294-8308
Internet
Web: www.illunis.com Email: info@illunis.com
Dave Krekelberg:dave@illunis.com Scott Elhardt: scott@illunis.com
RMV Release Notes
Thank you for purchasing the RMV digital camera from illunis. The RMV camera uses
the latest technology including the camera link (CL) and Gigabit Ethernet standards with the following features:
RMV Release operational notes
CCD sensors with one, two and four taps are supported. CCD sensors from Turesence: All 5.5um sensors and all 7.4um that have 4 tap capa-
bility. Color and monochrome.
Sensor data is sampled at 14bits giving a maximum dynamic range of 72dB Data is processed as 12 bit data and output as camera link data in 8,10, or 12 bits Digital data is tap reordered (TRO), corrected for bad pixels (PDM), and a lookup table
(LUT) is applied.
Image data can be overlaid with text, line plots and column plots. Image data is measured with specialized detectors for brightness, sharpness, tap
matching, noise, raster size and exposure time. These detectors can be read as raw data or as processed into appropriate scientific values.
Image exposure can be in free run and external triggered modes. Image data can be read as a partial scan (PS) on sensors that support the function. Image processing of DGO, PDM, LUT, PS can be enabled independently in free run
mode and trigger mode.
Analog processing includes gain, offset and dark current compensation. Analog gain is fixed at the factory and a digital gain is provided for the user Digital gain
(DGO) is from zero to 16 times and is performed in 12 bit resolution.
Analog and digital gain is performed independently for each sensor tap. Functions are provided for common control of gains and offsets. Data is output in the industry standard camera link format. Camera communication initializes at 9600 baud and can be increased to 115,200 baud. Image data is read as either active pixels or as all pixels in an over scan mode. Sensor dark current correction is performed with an automatic line or frame clamp. A STROBE output signal is available for applications that require a electronic signal in-
dicating actual exposure of the sensor.
A look up table (LUT) is provided at 12 bits resolution equal to the full dynamic range of
the data path.
The camera is communicated with in data packets that are error checked. The camera has a temperature sensor that is placed at the hottest part of the camera. The camera is set in modes and has five registers that indicate the current mode set. The camera has two registers that indicate operational status. The camera state can be saved to EEPROM and restored on power up. The camera state can be save to or loaded from a file. The camera state, as it left the factory, is saved by illunis and can be sent via email, A graphical user interface (GUI) is provided for convenient control of the camera func-
tions. This program is visual basic based and source code is available.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 4
RMV Document Revisions
1.14 FPGA Revision EF.70, Microprocessor Revision EF.40
RMV release new features
Support for 14Bit Analog Front End (AFE)
Newest release ADC hardware supported for exceptional low noise performance.
Histogram Equalization (HEQ)
Camera can auto equalize images based on histogram min/max measurements. This function utilizes the Master DGO to apply offset and gain.
Mechanical IRIS control + AE with IRIS
A PWD servo controller is provided to drive a mechanical IRIS using a RC Servo. AE is integrated with the IRIS to provide min/max/step/reverse/start functions.
Histogram AE coefficients
AE is supported with histogram bin calculations with coefficient multipliers
Master-Slave mode
This mode supports master-slave configurations of cameras where the master camera
runs AE, IRIS and HEQ functions and transmits this data to the slave cameras. This allows for large arrays of cameras to be configured and operated as a single imager. Data is framed and error checked.
Histogram OSD Plot The RMV incorporates a 512 point histogram that can be viewed on screen.
Master Digital Gain and Offset An additional digital gain and offset circuit is provided for the HEQ functions.
Option Board Support The new option board is supported with mechanical shutter drive, orientation sensors,
optically isolated strobe and pickle switch, servo drive and fan control.
Triggered Double Exposure System with Mechanical Shutter Special modes for the mechanical shutter to stop exposure on the second frame of the
TDE mode. Shutter delay is programmable.
Trigger arming function Trigger can be “armed” to prevent accidental use. Disarm is provided.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 5
Errata
Auto Tap Match: If camera is in 1 or 2 tap mode, that matcher will treats the camera as if it were in 4 tap
mode (Micro Version EF.42).
External Trigger In: The Power Supply board inverts the external trigger from the power connector. The
FPGA did not account for this inversion until EF (Micro Version EF.43).
GigE Support
Not Supported. GigE interface is not fast enough to support 4 tap CCD Readout.
Special Notes
4 Tap Readout:
4 Tap Readout in not four taps to the frame grabber. The RMV camera outputs the
CCD 4 taps on to CameraLink channels running at twice the speed of the CCD pixel clock.
Doing this allows the user to use a frame grabber in base mode (One connector). The user MUST be sure the CameraLink cable can support the 80Mhz data rate coming from the cam­era.
4 Paths at 40Mhz
2 Paths at 80Mhz
CCD
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 6
Camera
Electronics
Frame
Grabber
Older Document Revisions
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 7
Additional Information
Additional information is available for advanced features of the RMV cameras. They
are available as pdf files and include:
Advanced Auto Exposure
This application note describes the advanced AE modes including the mechanical IRIS control, Histogram Equalization, Master-Slave modes, and Histogram based AE calculations.
Advanced Timing
This application note describes the advanced trigger timing of the RMV cameras. The
advanced timing includes multiple TPD resolutions, timing diagrams and equations, and spe­cial states for flash strobe imaging. These features are available only for firmware revisions E7 and above.
Data On Screen Overlay
This application note describes the support for the Data overlay function added to the
rev E7 FPGA. The Data overlay or DOSD functions allow for the insertion of binary data into the video image. The data is inserted outside the normal active video area.
EEPROM User States
This application note describes the multi USER EEPROM state mechanism in the RMV
cameras. Up to 4 USER states are available for storing customize camera parameters. These features are available only for firmware revisions E7 and above.
Boot loader Information
This application note describes the use of the firmware boot loader. The boot loader is available for all firmware revisions and must be installed at the factory.
Custom Configuration files
This application note describes how to create a custom configuration file for loading
multiple cameras to the same user state without affecting the factory tuning parameters. This application note is relevant to all camera revisions.
Please contact info@illunis.com
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 8
Chapters:
1 RMV Overview 2 Hardware 3 Software and GigE 4 Image Exposure 5 Image Processing 6 Image Detectors 7 On Screen Displays 8 Camera Link 9 Timing Tables 10 Frame Grabber 11 FAQ’s
Table Of Contents
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 9
Signal
Processing
PCB
Sensor
PCB
Data Format and
Power
PCB
Introducing: Rugged Machine Vision
The RMV is our newest line of area scan cameras for industrial machine vision and photography. Designed from the ground up with the latest technologies, this line of cameras rep­resents a new standard in digital imaging. The RMV product line builds on the popular XMV prod­ucts by adding 14 bit analog sampling and 12bit data paths, advanced triggering and CCD readout control, built in detectors that analyze the camera’s performance, image processing to remove sensor defects, correct for flat field effects, and on screen tools for analyzing line/columns as well as text overlay. No longer are you required to depend on custom tools to setup and analyze your demanding imaging systems.
RMV Camera Architecture
The RMV camera is based on a modular design which allows for many different image sensors and output formats to be implemented. Through combinations of three different PCB’s many different cameras can be created. Each sensor is supported with its own unique circuit board which contains the circuitry needed to drive the sensor and output the digital image data. The Image Processing PCB is common to all cameras and supports the advanced features of the RMV. The data format and power PCB provides the camera link and other signal outputs. From these PCB combinations illunis can manufacture a family of advanced digital cameras.
Sensors Supported
Truesence CCD: All 5.5 um Sensors All 7.4 um Sensors with 4 tap readout.
RMV Camera Modularity Options
Data Formats Supported
Camera Link Base Mode 8/10/12 bits per tap 1 or 2 channels
* Coming in 2004
14 bit ADC’s and data path with Tap Reorder: The RMV supports full 14 bit signal sam-
pling and 12bit data paths throughout the signal processing path. This insures that the maximum signal quality is preserved in the processing chain. The tap data is reordered within the RMV to a single raster. Each ADC has programmable gain and programmable active black clamp.
Image Signal Processor (ISP): At the heart of the RMV camera is a very powerful image
signal processor that is implemented with a FPGA. The ISP provides all of the sensor control as well as image processing and diagnostics. The ISP is capable of processing all of its functions in a single pixel clock cycle at up to 80 million pixels per second. Any area sensor to 8Kx8K is sup­ported.
Micro Processor (uP) with FLASH data storage: Supporting the ISP is an advanced mi-
croprocessor. The uP is paired with FLASH memory that stores the data for the ISP. The uP also monitors the operation of the RMV and tracks the camera temperature and performance parame-
Chapter 1: Overview
ters.
Communication Interface and GUI: Control of the RMV is through a military spec packed
based command protocol. The operation of the RMV is represented as modes which can be read as status and written as commands. Packets are error checked and reply with ACK/NACK’s A Graphical User Interface (GUI) is included as source code to speed integration. The GUI allows for control of the camera with a standard windows interface.
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 10
1 or 2 tap Sensors:
The RMV supports any sensor with one, two or four video taps. The Truesence interline transfer CCD’s are supported with pro­grammable tap opera­tion so you can select the best output option for your application. The built in image detectors include tap boundary measure­ment and active tap balancing logic to in­sure that the two taps gain and offset match as close as possible.
Image
Sensor
CCD or
CMOS
(up to 4kx4 k)
ADC
(12bits )
ADC
(12bits)
Image Signal
Processor
(1M Gate FPGA)
Camera Link
(Upto 80M Pi x/sec)
uP
Drive
Built in Test and Industrial Grade Components: Designed for demanding applications, the RMV is built with military
derated passive components and industrial grade integrated circuits. Using surface mount technology and very a robust me­chanical assembly the RMV can withstand high G and vibration environments. With the design experience of several military level camera projects, we have added extensive built in test features to the RMV. The BIT coverage includes test patterns and CRC measurement for all features of the ISP. The RMV was designed for eRugged environments.
RMV Image Signal Processor Architecture
The RMV ISP is a data driven real time digital signal processor that process a pixel on every clock. The ISP is im-
plemented using a single Xilinx Vertex II FPGA with 1M gates of logic. Here are some of the features:
Custom Timing Generator: All timing signals to the sensor are created by a custom proprietary timing generator. The TG
provides complete control of exposure and readout modes of the sensor. Exposure modes include Free run, Free Run Trig­gered, Free Run Synchronized, Triggered Program Exposure, Triggered Manual/Controlled Exposure, and Triggered Double Exposure. The Trigger and Free run modes can have independent control of Binning, Image correction, LUT activation, Digital gain and offset and Partial Scanning. The RMV can operate in an Asynchronous Reset Mode where the camera free runs,
RMV Camera Architecture
any 12 bit value. The GUI can be used to generate simple LUTs such as gamma curves. LUTs are saved as text files.
On Screen Line/Column/Histogram Plots: Integrated into the ISP are on screen plots of line and column data. These
plots extend outside the image area and very useful for evaluating camera performance. The plots run in real time and are overlaid onto the video image. You no longer need to rely on capture cards or custom software to evaluate your image data.
On Screen Text: Another eRugged feature, the On screen text overlay is used to display image detector and or user data in
real time.
Raster Measurement: With the multitude of programmable features the RMV can present almost any sized raster to a
capture device. To ease integration the RMV includes a built in raster measurement circuit. This circuit provides the total and active lines and pixels within the image output to the camera link device.
Exposure Measurement: The RMV camera incorporates an exposure detector circuit that measures the exact time the
camera is exposing the photo diodes. The exposure detector measures the time from the end of the electronic erasure to the end of the photo diode transfer pulse. The exposure is measured in pixel clock periods, 25ns for a 40mhz camera and 33.3ns for a 30mhz camera.
Camera Link Format: The RMV image data is output to a base mode camera link chipset. The image data can be format-
ted in 8, 10, 12 bit pixels on one or two channels. The maximum data rate is 80 Mpix/sec. This allows the RMV to easily inter­face with any video capture card or custom circuit.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 11
with or without active valids, and upon a trigger signal changes modes and outputs a frame.
Tap Reorder (TRO) and Digital Gain/ Offset: The RMV camera has an integrated
programmable tap reorder circuit. The TRO linearizes the sensor data and allows for hori­zontal image flipping. This reordered image is used within the RMV for processing. The TRO circuit also includes a digital gain and offset .
Image Detectors: A powerful feature of the
RMV is a group of image detectors that meas­ure brightness, sharpness, tap matching, and signal to noise performance. In addition the RMV has a frame counter and cross hair over­lay for image center alignment..
Pixel Defect Correction: All sensors have
defects and the RMV includes a circuit to cor­rect gross defects through replication or aver­aging.
Look Up Table (LUT): The hardware LUT
built into the ISP can translate any 12 bit pixel to
RMV Sensor information:
The RMV camera’s are named by the sensor that is used within them. For example a RMV-2020 uses the Truesence KAI-2020 sensor. Here is a list of RMV camera names with the corresponding sensors. Note all sensors supported are not listed in this table.
RMV Camera models
Mega Pix Sensor # Sensor Mfg Camera name
2.0 KAI-2150 Truesence RMV-2150
2.0 KAI-2170 Truesence RMV-2170
4.0 KAI-4050 Truesence RMV-4050
4.0 KAI-4070 Truesence RMV-4070
29.0 KAI-29050 Truesence RMV-29050
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 12
The RMV EF Revision uses Truesence CCD sensors with a four tap outputs for­mat. The sensors can be used with either the single, dual or four taps readout modes.
The 4 tap sensor layout is shown below as displayed by the frame grabber. When the camera is in single tap mode, all sensor data is clocked out tap A. Sensor data is clocked out of taps A and B in dual tap mode. In four tap mode the data is clock out each tap.
For information on setting up the frame grabber, see the frame grabber section of this document.
Top Black Rows
Top Bufer Rows
Left Black
Left Buffer
Left Dummy
Taps A and C
Tap A
Tap C
Bottom Buffer Rows
Bottom Black Rows
Tap B
Tap D
Taps B and D
Right Black
Right Buffer
Active Imaging Area
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 13
1.1: RMV Overview
Firm Ware Updates
Firmware updates are available for all RMV cameras. Our goal is to provide the highest quality product as possible, however over the course of time and with a great deal of testing we do find bugs. As we swat these bugs we release new firmware that incorporate the fixes as well as new features. The FPGA and Microprocessor revision numbers are the key to knowing what version of the firmware you have. At the beginning of this manual you will find a change list that describes the new fea­tures added to the RMV cameras.
RMV cameras may be updated by the user using the illunis control application.
For more information please call at (952) 975-9203 or email: info@illunis.com
1.2: RMV Overview
Warranty
Warranty. illunis warrants that all products will perform in normal use in ac- cordance with specifications for a period of one year from date of shipment. This warranty does not cover failure due to those mechanical and electrical causes de­fined below as liability of the customer. If the device does not function properly dur­ing the warranty period, illunis will at it’s option, either repair or replace the unit. In the case of replacement, illunis reserves the right to re-use the original CCD serial number if found to be performing to specification. Illunis does not warranty glassless CCD’s. Please refer to the terms and conditions included with your quotation for full warrantee information.
Returns. Products will be considered for replacement for up to one year from the date of shipment. All returns require an RMA number. No returns will be accept­ed without an RMA number. Returns will be re-tested against the device acceptance criteria and if found to meet those criteria will be shipped back to the customer at the customer’s expense.
All returns should be sent to:
Illunis LLC
Attn: RMA coordinator
15713 Elodie Lane
Minnetonka, MN 55345
(952) 975-9203
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 14
1.3: RMV Overview
Camera link for Dummies !
A little Humor helps the frustration in setting up a new system, and certainly the basics of how to integrate a camera link camera for the first time. So here are some basic facts about camera link devices:
Camera link is controlled by the AIA: For more information go to
http://www.machinevisiononline.org
Camera Link is a wiring specification: The camera link (CL) spec defines
wires and signals for transporting video data in various formats over channel link integrated circuits.
Camera Link can be used in three modes: The CL spec defines a base
mode that uses a single CL cable, a medium mode and a full mode that use two CL cables.
Camera Link uses Channel Link Chips: Camera Link is based on the Na-
tional Semiconductor Channel Link chipset. These devices convert the video data from a source (camera), serialize the data, transmit the data using LVDS over twisted wires to a receiver device that converts the data back into the original format. For more information go to: www.national.com/lvds
The Camera Link Cable is data only: The CL cable does not include a pro-
vision for power to the camera. Thus all CL cameras must have a separate power connector. The RMV power connector has additional signals.
The Camera Link Cable includes communication: The CL cable provides a
serial communication link to the camera. This link is bidirectional and by de­fault is 9600 baud. The communication rate can be increased but must default to 9600 baud on system startup. The serial communication, from a user appli­cation to a CL device, is through a special windows DLL. Some CL capture card manufactures provide
The Camera link Cable includes trigger signals: The CL cable has four
camera control signals called CC1, CC2, CC3, and CC4. The RMV camera uses the CC1 signal for the trigger signal. Currently the other control signals are not used in the RMV.
The Camera link Cable can transmit one or two pixels per clock: The base
mode camera link used in the RMV can transmit one or two pixels per clock and each pixel can be 8, 10, or 12 bits in size.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 15
2.0 Hardware Overview
2.1 Case
2.2 CAD Models
2.3 Cables
2.3.1 Power Cable
2.3.2 Camera Link Cable
2.4 Considerations
2.5 Options
Chapter 2: Hardware
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 16
2.0: Hardware
Overview
Smaller is better
The RMV hardware design goal was to incorporate advanced features into the smallest size possible. Since the RMV product line incorporates sensors from 640x480 to 4008x2672 the small size of the camera PCB’s was dictated by the sensor package size. The RMV circuit design separates the camera into three circuit boards; A imager PCB that contains the electronics need by the specific sen­sor (this is unique to each sensor), A FPGA/microprocessor PCB that contains the timing generator, control processor, and image processing hardware, and the third PCB is the Power/Communication board which generates the many voltages needed in the CCD image sensor drive circuits and contains the digital image data drive circuits.
The RMV case is machined from 6061 T-6 aluminum on 5-axis CNC machinery. The case was designed using Pro-E CAD software. Solid models of any of the RMV cameras are available for cus­tomer use. To obtain a solid model contact the designer: scott@illunis.com
2.1: Hardware
Case
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 17
Exploded View
3 View
2.2: Hardware
CAD Models
CAD Models Detailed Drawings
The RMV case dimensions can be provided as a manufacturing drawings and as a solid model that can be imported into almost any CAD system. For access to these drawings please contact illunis at www.illunis.com , Phone (952) 975-9203, or email: info@illunis.com
CAD Models supported are STEP, IGES, ProE native, and many others
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 18
1 2 3 4
A
B
C
D
4321
D
C
B
A
Fax: 952. 294.8308
1
illuni s, LLC 15713 Elodie Lane Minnetonka, MN 55345 Phone: 9 52.975.9203 Fax: 952. 294.8308
1
A
28-Oc t-20 03 14: 59: 14D:\W orki ng\ R&D\ XMV\x mv-c ab les. ddb - Docum ent s\XMV_ 12Vpow er_A
Tit le
Size : Num ber:
Date :File :
Rev ision:
Shee t ofTim e :
A
XMV Power Supply rev. A
illunis LLC Confidential
DO NOT COPY
ENG INE ERING AP PROV AL MAN UFACTU RING AP PROV AL
WIT HOU T P ERMISSIO N
Error : il lun isweb. jpg fi le not fou nd.
12V
G N D
- suggested recept acle part numbers: Digikey J152-ND, J151-ND
coiled up power supply wire
- accepted 12V power supply part numbers Digikey T806-P5P-ND, Mouser 552-PSA-18U-120
- wires for 12V and GND will be terminated in female "banana" receptacles (red for 12V, black for GND)
- cut DC barrel connector off power supply , find out which wire is positive and which is negative
- solder red banana receptacle to the positive wire
- solder black banana receptacle to the negativ e wire
- cover wire/receptcacle joints with heat shrink (3/8 or 1/2 inch heat shrink works well) suggested Digikey A038C-4-ND
PROCEDURE:
12V DC switching power supply
2.3.1: Hardware
Power Connector and Cable Drawing
RMV Power Cable
This is the manufac­turing drawing for the cable for our RMV camera.
You can use this drawing as a basis for making your own cable.
Contact illunis for a pdf copy of this draw­ing.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 19
Power Supply
This is the manufacturing drawing for one possible power supply for the RMV camera. You can use this drawing as a basis for making your own.
CAMERA BACK PANEL
The camera back panel contains the Camera Link and power connectors as well as two dual color camera Status LED’s.
VSYNC = GREEN
TRIGMODE =ORANGE
INTERNAL ERROR = RED
POWER = GREEN
LED’s
There are four LED's on the back of the RMV-Camera. The Power LED indicates that the camera is receiving 12V DC. The VYSNC LED flashes when a frame is sent by the camera.
Power Connection
Camera Link
1
6
4 3
5 2
Back View
Connector pin out (from back view)
PIN 6 = GND PIN 5 = +12V DC PIN 4 = External Trigger In (3.3V LVTTL) PIN 3 = Strobe out (3.3V LVTTL) PIN 2 = RS232 RX PIN 1 = RS232 TX
LED Status Conditions
RED ORANGE GREEN Status
off off blinking Normal, no errors on off blinking Brownout reset on on blinking Watch Dog Timeout on on blinking JTAG reset on off on VSYNC timeout on on off Invalid EEPROM
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 20
2.3.2: Hardware
Camera Link Cables
Recommended Camera Link Cables
The RMV camera is very small and it’s case requires that the camera link cable be carefully se­lected. The Following cables have been tested and are recommended.
Intercon-1
Web: www.nortechsys.com/intercon/cameralinkmain.shtml
CLCP-1.0-P 1.0 Meter CLCP-2.0-P 2.0 Meter CLCP-3.0-P 3.0 Meter CLCP-4.5-P 4.5 Meter CLCP-5.0-P 5.0 Meter CLCP-7.0-P 7.0 Meter
CLCP-10-P 10 Meter
3M
Web: www.3M.com/interconnects/
14B26-SZLB-100-0LC 1.0 Meter 14B26-SZLB-200-0LC 2.0 Meter 14B26-SZLB-300-0LC 3.0 Meter 14B26-SZLB-450-0LC 4.5 Meter 14B26-SZLB-500-0LC 5.0 Meter 14B26-SZLB-700-0LC 7.0 Meter
14B26-SZLB-A00-0LC 10 Meter
B: Thumbscrew shell kit
NOT Recommended Camera Link Cables
3M
Web: www.3M.com/interconnects/
14T26-SZLB-100-0LC 1.0 Meter 14T26-SZLB-200-0LC 2.0 Meter 14T26-SZLB-300-0LC 3.0 Meter 14T26-SZLB-450-0LC 4.5 Meter 14T26-SZLB-500-0LC 5.0 Meter 14T26-SZLB-700-0LC 7.0 Meter
14T26-SZLB-A00-0LC 10 Meter
T: Thumbscrew over mold shell
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 21
2.4: Hardware
Considerations
● Do not open or disassemble the camera case or electronics as there are no user adjustments within the camera. This will void your warrantee.
● Care must be taken in handling as not to create static discharge that may permanently damage the device.
● Do not apply power with reversed polarity at this will render the camera non functional and void your warrantee.
● Camera Link is a DC based interface. The camera and capture device must share the same electrical ground. Failure to do so will destroy the camera link interface chips and/or camera and capture card.
Absolute Maximum Ratings
Input Voltage: 10 to 16V DC Storage Temperature: -40C to +70C
Recommended Maximum Ratings
Input Voltage: 11 to 14V DC Operating Temperature: -20C to +60C Most cameras operate beyond these temperature limits, please call illunis for details.
Recommended Operating Conditions
Input Voltage: 12V DC Operating Temperature -5C to 54C Relative humidity should not exceed 80% non-condensing
Thermal interface
The RMV camera contains many advanced circuits and performs at very high clock speeds and thus requires careful consideration for thermal cooling. The camera should be used either with a lens and/ or a solid mechanical mount that acts as a heat sink.
Power Consumption
The RMV camera was designed to be as small as possible and as such has a high energy density. The various operating modes of the RMV will change the power consumption from the base line. In particular the binning and partial scan modes require more power. The triggered modes are lowest in power when the camera is waiting for a trigger. Special versions of the RMV with lower clock speeds are available with lower power consumption.
Special notes for Rugged environmental use
The RMV cameras are designed using military 0.6 stress ratings on all passive components and uses industrial temperature range active components when ever possible. The RMV is assem­bled using standard commercial techniques that DOES NOT HARDEN the mechanical components against vibration. It is highly recommended that any use of the RMV in any application that requires high vibration and temperature ranges that the hardware be inspected and modified using adhesives to retain the mechanical components.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 22
2.5: Hardware
Options
Interline Sensor Options (All sensors are available in color and mono except where noted)
KAI-340 640 x 480 KAI-2001 1600 x 1200 KAI-2020 1600 x 1200 (new version of the 2001) KAI-2093 1920 x 1080 (HDTV color) KAI-2092 1920 x 1080 (HDTV mono) KAI-4010 2048 x 2048 KAI-4020 2048 x 2048 KAI-4011 2048 x 2048 (new version of the 4010) KAI-4021 2048 x 2048 (new version of the 4020) KAI-11002 4004 x 2672 KAI-16000 4872 x 3248
Full Frame Sensor Options
KAF-3200 2048 x 1536
Cable Options
Cable with strobe output Basic Power Only Cable
Lens Mounting Options* (Call for current solid models and drawings)
C-Mount C-Mount with 25mm filter mount
F-Mount (desktop) with 1/4-20 mount F-Mount with flange for RMV-11000 F-Mount with flange for RMV 340, 2001, 4010, 4020
No lens mount Color Blur Filter for the KAI-11000
Case Options (Call for solid models and drawings)
Standard case
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 23
Camera Link Repeater
A special test board is available for use as a camera link repeater (CLR) and for setup of camera link systems. The CLR is a circuit that de-serializes the camera link data, provides this data as LVTTL and then re-serializes the CL data for transmission to a capture card. The CLR also provides an option to redirect the communications data from the capture card to a standard windows serial port.
The CLR is powered with 12VDC.
DVAL
FVAL
CC1
CC2
CC3
CC4
LVAL
PCLK
Camera
Link
COM
SELECT
RS232
PC COM Port
Camera
Link
DA0
DA7
DB0
DB7
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 24
3.0 Software Overview
3.1 Serial Interface
3.2 Command packets
3.3 Command Table
3.4 System Status
3.5 Baud Rate
3.6 Graphical User Interface
3.6.1 Main Dialog
3.6.2 Exposure and Modes
3.6.3 Camera Information
3.6.4 Detectors and Displays
3.6.5 Image Corrections
3.6.6 Modes and Status
3.6.7 Communication
3.6.8 Files
3.6.9 Command Calculator
Chapter 3: Software ICD
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 25
3.0: Software ICD
Overview
The RMV software interface (commonly called a Inter-Connect-Description or ICD) was devel­oped for high reliability applications. The ICD incorporates error checking and a handshake protocol which responds with either a positive or negative acknowledge signal. The communication path from frame grabber to the RMV is through the Camera Link cable. The Camera Link committee has specified that devices connected must first communicate at 9600 baud. This default baud rate is certainly very slow for devices such as the RMV camera. The RMV has a selectable baud rate for faster communica­tion speeds.
The RMV microprocessor is a flash programmable device with many features vital to the opera­tion of the RMV camera. Some of these include:
A hardware UART used for serial communications. A watchdog timer used to monitor communication errors and system faults. Onboard RAM and EEPROM for saving camera settings Parallel data bus for high speed interfaces to the FPGA and NAND FLASH memories Brown out detection and reset
Command with checksum
Camera
Data and/or ACK/NACK
Capture
Device
SERIAL INTERFACE PROTOCOL
Implementation
Camera communication is accomplished via asynchronous serial communication according to EIA Standard RS 232 C through the Camera Link cable.
Data rate: Full Duplex, 9600 baud.
1 START bit. 8 DATA bits – The LSB (D0) is transfered first. 1 STOP bit. No parity.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 26
3.1: Software ICD
Serial Interface
3.2: Software ICD
Command Packets
Protocol
The camera is controlled through command packets. The camera is considered a slave device and never generates data without a read request. The data packet formatting is described in detail below – note That the checksum is calculated only on the 4 ascii characters comprising the Data.
Data Packets
Data packets are of either ‘read’ or ‘write’ types. For example to read the camera serial number, the packet sent to the camera would be {r07000002fe} to which the camera would respond by issuing an acknowledge character ! followed by the response {r0700sssscc}, where ssss is the camera serial number and cc is the checksum calculated in hex as 0x0100 – ( ss (high byte hex) + ss (low byte).
Start:
Size = 1 ascii character Value = 123 Decimal (ascii { ) Command:
Size = 1 ascii character Value = 114 Decimal (ascii r ) for Read Value = 119 Decimal (ascii w ) for Write Target:
Size = 2 ascii characters Index:
Size = 2 ascii characters Data:
Size = 4 ascii characters
Checksum of Data only (default) Size = 2 ascii characters - Intel-Standard - two’s compliment of sum of data.
Packet Format
1 Char 2 Char 2 Char 2 Char 4 Char 2 Char 1 Char 1 Char
Start Command Target Index Data Checksum End Ack/Nack
Indicates the Start of the frame
Command descriptor
Command descriptor
Command descriptor
Checksum of Command and Data: checksum( comandindex ) + checksum( data)
(0x100—(0x00 + 0x01)) = 0xFF
Checksum = lower byte of 0xFC + 0xFF => 0xFB
End Indicates the End of the frame
Example2: Data = 0000, checksum = lower byte of (0x100 – (0x00 + 0x00)) = 0x00 Example3: Data = fef0, checksum = lower byte of (0x100 – (0xfe + 0xf0)) = 0x12
Example4: Command = 0400, data = 0x0001 (0x100 – (0x04 + 0x00)) = 0xFC
Size = 1 ascii character
The data transferred
Example1: Data = 2002, checksum = lower byte of (0x100 – (0x20 + 0x02)) = 0xde
Value = 125 Decimal (ascii } )
Ack/Nack
Positive acknowledge - Negative acknowledge Size = 1 ascii character Ack Value = 33 Decimal (ascii ! )
Nack Value = 63 Decimal (ascii ? )
COMMAND DESCRIPTIONS
Read Command Structure
The camera parses the sequence byte by byte. An invalid read command, target or index will cause the camera to issue an NACK. The Host (You) will generate dummy data with a valid checksum then an end. The camera will respond with an ACK and re send the command with valid data and checksum. If the Host detects an error, it will re issue the command.
Host {r tt ii 0 0 0 0 cc}, camera issues ! Camera issues {r tt ii data data data data cc} (NOTE no ACK)
Write Command Structure
The camera parses the sequence byte by byte. An invalid write command, target, index or checksum will cause the cam-
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 27
era to issue a NACK, otherwise the write sequence will com­plete and the camera will issue an ACK after the command has been executed. The camera receives the checksum from the Host.
Host {w tt ii data data data data cc} camera issues !
Error Checking
The camera parser is character by character and will respond with an immediate NACK if any unrecognised command, tar­get, index or checksum occurs.
Communication Timeouts
The camera micro controller uses a hardware watchdog timer that will time out if the time between bytes are longer than ??? ms. When sending command frames to the camera the host must not have significant delays between bytes sent.
3.3: Software ICD
Command Table
Target Index Description Read
Write
Camera Control
04 00 Sensor Taps Write 0x0000 = One Tap
04 03 Readout Mode Select Write 0x0000 = Free Run
04 04 Mode Register
write lines to 0428 and 0429 prior to binning
M = 0 Common – both trigger and free run M = 8 Free Run Only M = 4 Trigger Only
Write 0xM000 = Bin enable
Modes
0x0001 = Two Tap 0x0003 = Four Tap
0x0001 = Trigger Program Exposure 0x0002 = Trigger Manual Exposure 0x0003 = Trigger Double Exposure 0x0004 = Reserved (Do Not Used) 0x0005 = Async Reset Enabled 0x0006 = Async Reset Disabled 0x0007 = Enable Runs Valids 0x0008 = Disable Runs Valids 0x0009 = Trigger Source CL 0x000a = Trigger source External (OEM 0x000b = Trigger Overlap Exposure Enable 0x000c = Trigger Overlap Exposure Disable 0x000d = Double Trig, Double Expos (OEM)
0xM001 = TBD 0xM002 = Disable bin 0xM003 = Enable partial Scan 0xM004 = Disable Partial Scan 0xM005 = Enable Digital Gain and offset 0xM006 = Disable Digital Gain and offset 0xM007 = Enable LUT 0xM008 = Disable LUT 0xM009 = Enable PDC enables once loaded (call 041c000b first which leaves PDC on in common mode) 0xM00a = Disable PDC 0x000F = Enable Bayer Bin 0x0010 = Disable Bayer Bin 0x0011 = Enable FFC (OEM Only) 0x0012 = Disable FFC (OEM Only)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 28
04 06 Test Pattern
Write 0x0000 = Normal Video
0x0001 = Input (CCD)Test Pattern 0x0002 = Output Test Pattern
04 07 Camera Temperature Read 04 08 Over scan mode Write
0x0000 = Disable overscan Mode 0x0001 = Enable overscan Mode
04 09 Baud Rate Write 0x0000 = 9600
0x0001 = 19200 0x0002 = 38400 0x0003 = 57600 0x0004 = 115200
04 D2 Set Camera Link Boot
Baud Rate (Requires re­boot)
R/W 0x0000 = 9600
0x0001 = 19200 0x0002 = 38400 0x0003 = 57600 0x0004 = 115200
04 D3 External Serial Boot Baud
Rate (Requires reboot)
R/W 0x0000 = 9600
0x0001 = 19200 0x0002 = 38400 0x0003 = 57600 0x0004 = 115200
04 0a Partial Scan Start Line R/W 04 0b Partial Scan Stop Line R/W 04 0c Micro BIT initiate Write 0x0000 = Clear Bit Status Register
0x0001 = PBIT 0x0002 = IBIT
04 0d Bit Depth Write 0x0000 = 12 bit mode
0x0001 = 10 bit mode 0x0002 = 8 bit mode 0x0003 = Enable bottom 8 bits 0x0004 = Disable bottom 8 bits
04 0e Strobe Control
Write 0x0000 = negative strobe polarity
0x0001 = positive strobe polarity 0x0002 = Active during free run 0x0003 = Disable during free run
04 11 OSD lines Write 0x0000 disable
0x0001 line plot 0x0002 column 0x0008 line display 0x0009 filled display 0x000a enable color mode 0x000b disable color mode
04 12 Line Plot Offset R/W 04 13 Line Plot Scale R/W 04 14 Line Plot Line of Interest R/W
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 29
04 15 OSD Text Write 0x0000 disable text overlay (All)
0x0001 enable OSD (Detectors)
0x0002 update display window 0x0003 enable 2X text size 0x0004 enable 1X text size
0x0005 enable OSD (Raster) 0x0006 enable OSD (Revision) 0x0007 enable OSD (Frame) 0x0008 enable OSD (GNU detector) 0x0009 enable OSD (AE) 0x000c enable OSD (AFE Serdes) 0x000d enable OSD (Black Clamp BIT)
04 16 OSD Text Window X location Read/Write 04 17 OSD Text Window Y location Read/Write 04 18 LUT load W Loads LUT based on mode (OEM Only)
04 45 LUT load mode R/W 0x0000 = load from com port (OEM Only)
0x0001 = load from com port (OEM Only) and save to EEPROM 0x0002 = load from EEPROM (OEM Only)
04 46 Load Gamma LUT Write Data is a 0-100 = gamma * 100 04 19 Show Detectors Write 0x0000 = Tap A Crack 0x0001 = Tap B
0x0002 = AE Window 0x0003 = AF Win 0x0004 = SNR Left 0x0005 = Right 0x0006 = Cross hair 0x0007 = AF Data 0x0008 = AF Data Full Screen 0x0009 = disable
04 1a Read Detectors Read 0x0000 = Tap A Crack 0x0001 = Tap B
0x0002 = AE Window 0x0003 = AF Win 0x0004 = Left SNR Sum 0x0005 = Left SNR Sum of Squares 0x0006 = Left SNR # of Samples 0x0007 = Right SNR Sum 0x0008 = Right SNR Sum of Squares 0x0009 = Right SNR # of Samples 0x000a = Frame Counter 0x000b = Left SNR Max Value 0x000c = Right SNR Max Value 0x000d = Number of saturated pixels
04 1b System Registers Read 0x0000 = Read Pixels/line
0x0001 = Read Active pixels/line 0x0002 = Read Lines per frame 0x0003 = Read Active lines per frame 0x0004 = Read TPW 0x0005 = TRO Left Start 0x0006 = TRO Right Start 0x0007 = TRO Size 0x0008 = LVAL Start 0x0009 = Stop 0x000a = FVAL Start 0x000b = Stop 0x000c = CCD Type 0x000d = FPGA Revision 0x000e = Read TPD 0x000f = SNR Left 0x0010 = SNR Right 0x0011 = Crack detector position 0x0012 = Read Exposure value low 0x0013 = Read Exposure value hi 0x0014 = Read CRC
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 30
04 1b System Registers
(continued)
Read 0x0019 = WB/GNU CLR0
0x001a = WB/GNU CLR1 0x001b = WB/GNU CLR2 0x001c = WB/GNU CLR3
04 1c Pixel Defect Write 0x0000 = Disable Column Mode
0x0001 = Enable Column Mode 0x0002 = Load PDM From EEPROM leaves PDC on in common mode 0x0003 = Disable PDC2 Column Mode 0x0004 = Enable PDC2 Column Mode 0x0005 = Disable all PDC
04 1d Auto Exposure Write 0x0000 = Disable AE
0x0001 = Enable Fast AE 0x0002 = Enable Slow AE 0x0003 = Enable small AED counter (1mpix) 0x0004 = Enable large AED counter(16mpix) 0x0005 = Enable AED averaging 0x0006 = Disable AED averaging
04 1e AE Set point R/W 04 1f AE Hysteresis R/W 04 20 AE max gain R/W In Digital Gain untis
04 21 AE min gain R/W 04 22 AE max exposure R/W (min erasure) 04 23 AE min exposure R/W (max erasure) 04 24 Common gain - Digital R/W 04 25 Free Run erasure R/W 04 26 AE detector Read 04 27 System Registers write
data to EEDATA 030c prior to calling
Write 0x0004 = Write TPW
0x0005 = Write TRO Left Start 0x0006 = Write TRO Right Start 0x0007 = Write TRO Size 0x0008 = Write LVAL Start 0x0009 = Write LVAL Stop 0x000a = Write FVAL Start 0x000b = Write FVAL Stop 0x000e = Write TPD 0x000f = SNR Left 0x0010 = SNR Right 0x0011 = Crack Location
04 28 Trigger V Bin / Dec R/W Read/Write values 1 - 13 04 29 Trigger H Bin / Dec R/W Read/Write values 1 - 16 04 2a Write Free Run V Bin R/W Read/Write values 1 - 13 04 2b Write Free Run H Bin R/W Read/Write values 1 - 16 04 2c Left Tap Digital gain R/W 04 2d Left Tap Digital offset R/W 04 2e Right Tap Digital gain R/W 04 2f Right Tap Digital offset R/W
04 36 Master Gain R/W 04 37 Master Offset R/W 04 38 Master DGO Enable R/W 1 = enable, 0 = disable
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 31
04 31 Mode presets – OEM
04 32 AE VSYNC Count R/W # of frames between AE changes
04 33 AE Exposure Denominator R/W 04 34 AE Gain Denominator R/W 04 35 WB/GNU Tap Select R/W 0x0000 = left tap (default on power up)
04 40 FFC table load W Activates FFC 04 41 FFC test W Loads entire FFC table with data.
04 42 FFC Master gain R/W Sets FFC master gain 04 43 FFC load mode R/W 0x0000 = load from com port
04 04 Mode Register W 0x0011 = Enable FFC
Write 0x0000 = N/A
0x0001 = Linear LUT 0x0002 = Inverted LUT 0x0003 = Preview LUT 0x0004 = Gamma LUT 0.45 0x0005 = Gamma LUT 0.60 0x0006 = Gamma LUT 0.70 0x0007 = Gamma LUT 0.80
Set to 3 for free run mode Set to 1 for triggered modes
0x0001 = right tap
Where 0x1000 = 1x, 0x1800 = 1.5x
0x0001 = load from com port and save to EEPROM 0x0002 = load from EEPROM
0x0012 = Disable FFC
Camera Mode and Status
05 00 Camera mode/status Read 0x0000 = read mode register 1
0x0001 = read mode register 2 0x0002 = read mode register 3 0x0003 = read mode register 4 0x0004 = read mode register 5 0x000B = read mode register 6 0x000C = read mode register 7 0x000D = read mode register 8 0x0007 = read status register 1 0x0008 = read status register 2 0x0009 = read status register 3 0x000A = read status register 4
Camera Configuration
07 00 Read 0x0000 = Camera Model
0x0001 = Camera Hardware rev 0x0002 = Camera Serial Number 0x0003 = Micro firmware rev 0x0004 = FPGA major revision 0x0005 = Sensor Serial Number 0x0006 = Clock Rate 0x0007 = FPGA Sub/minor revision 0x0008 = Micro Sub/minor revision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 32
Timing Generator
02 00 Set Trigger Time MS Read/Write ms * 100 (0x0064 = 1.0ms) 02 01 Set Trigger Time US Read/Write us 02 02 Set Free Run Time MS Read/Write ms * 100 02 03 Set Free Run Time US Read/Write us 02 04 Transfer Pulse Delay Read/Write 02 05 Soft Trigger Time Write Software trigger in ms
02 06 Set trigger high Write Sets internal trigger high (active) 02 07 Set trigger low Write Sets internal trigger low
02 0A TG Erasure Read/Write 02 0B Trigger Sub Pulse Delay Read/Write Default = 0x0001
Memory Management
03 00 Save Camera State Write Wait for acknowledge before re-
moving power
03 02 Restore Factory State Write Wait for acknowledge before re-
moving power
03 03 Copy User to Factory Write Wait for acknowledge before re-
moving power 03 04 Save substrate DAC value Write Dummy data 03 05 Copy factory to all USER Write Warning: This can take time ! 03 06 Copy USER# to USER# Write Top byte is SRC USER
Bottom byte is DST USER 03 07 Set USER # Write Copies USER to ACTIVE, loads
it, and performs soft reset
Bottom byte is USER#
03 08 Number of USER configs Read 4 is the current limit 03 09 Reset EEPROM CRC Write
03 20 Read 64 bytes from
EEPROM
03 0c EEPROM data and tempo-
rary location for operations requiring data and address
03 0d EEPROM Word Read/Write 0xaaaa = address
03 0e EEPROM Byte Read/Write 0xaaaa - address
03 FF EEPROM erase W Erases EEPROM with FF
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 33
Checksum = 0x00
Write
Read address directly
Write data word to 030c then
write 030d with address
Read address directly
Write data byte to 030c then write
030e with address
Very dangerous !
Special Commands
04 FF Base Reset Write Resets camera mode to:
free run, runs valid enabled, no binning, no partial scan, no line or text displays, no LUT, no PDC, no digital gain or offset, no test pattern, reset the LVAL and FVAL defaults. AE detector counter set to small size. enable strobe in free run mode Auto Tap Matcher off
04 D8 Checksum Mode
(Cleared on restart)
04 D0 Power Up Write Resets camera and powers up circuits 04 D1 Power Down Write Puts the camera into low power mode 09 00 Auto Tap Matcher R/W 0 = off, 1 = on
Write 0x0000 = Checksum of data
0x0001 = Checksum of command and data
There are additional ICD commands for specialized control of the RMV camera. Information on these commands require a nondisclosure agreement. Please contact illunis at email: info@illunis.com
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 34
External UART Commands (Rev >=E7 hardware only)
0x11 00 Init Baud Rate Write 0x0000 = 9600 (Default) 0x0001 = 19200
0x0002 = 38400 0x0003 = 57600
0x0004 = 115200 0x11 01 Put character Write Puts character to external UART 0x11 02 Clear buffer Write Clear receive buffer 0x11 03 Get character Read Returns character if buffered or 0 if buffer is empty 0x11 04 Get buffer count Read Returns number of characters in receive buffer 0x11 05 Get buffer size Read Returns total size of receive buffer
Canon Lens Control Commands (Rev >=E7 hardware only)
0x12 0x00 Canon Lens Init. Write Canon Lens Controller Initialization (required) 0x12 0x00 Read Lens error Read 0 = no error 5 = lens not initialized
1 = bad command 7 = no shutter in lens
2 = lens set to manual focus 8 = bad power
3 = no lens 9 = bad lens library
10 = lens communication error 0x12 0x01 Canon command Write Two character command. Top byte = first char. Bot-
tom byte = second char. Sent to controller as Ch1
Ch2 <cr>. 0x12 0x02 Lens ID Write Information is in the serial read buffer
0x12 0x03 Lens Hdw Vers. Write Information is in the serial read buffer 0x12 0x04 Focus to Infinity Write 0x12 0x05 Focus to Zero Write 0x12 0x06 Focus Absolute Write Data = Focus position 0x12 0x07 Position of Focus Write Information is in the serial read buffer 0x12 0x18 Focus Incremental Write Data = signed incremental position change
Positive number move focus to infinity.
Negative numbers move focus to zero. 0x12 0x08 Focus Distance Write Information is in the serial read buffer
0x12 0x0A Response Mode Write 0 = non-verbose, 1 = verbose 0x12 0x0B Aperture Open Write 0x12 0x0C Aperture Close Write 0x12 0x0D Aperture Absolute Write Data = Aperture position 0x12 0x18 Aperture Incre-
mental
0x12 0x0E Position of Aper-
ture
0x12 0x10 Image Stab. Write Image Stabilization 0x12 0x40 Auto Focus Write Requires free run mode and correct exposure
0x12 0x50 Auto IRIS Write Data = AE detector set-point. The IRIS will be driven
Write Data = signed incremental position change (negative
numbers open IRIS, positive numbers close IRIS)
Write Information is in the serial read buffer
Works only on static images. The AF algorithm will
scan the image in three passes to determine the best
focus. The AF may take up to 10 seconds to com-
plete.
so that the AE detector will match the set-point. The
desired brightness may not be possible as a change
in exposure may be needed.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 35
3.4: Software ICD
System & Status
System status can be read from mode registers
and from the system built in test status register.
Serial Commands
Target Index Command R/W Description
04 1b System Registers R 0x0000 = Read Pixels/line
Quick FAQ’s:
►These commands are very useful for determining
the state of the camera.
►The FPGA major and minor revision should be
checked by application software to match with ex­pected levels.
►The clock rate must be divided by 100
0x0001 = Read Active pixels/line (in LVAL) 0x0002 = Read Lines per frame 0x0003 = Read Active lines per frame (in FVAL) 0x0004 = Read TPW 0x0005 = TRO Left Start 0x0006 = TRO Right Start 0x0007 = TRO Size 0x0008 = LVAL Start 0x0009 = LVAL Stop 0x000a = FVAL Start 0x000b = FVAL Stop 0x000c = CCD Type 0x000d = FPGA Revision 0x000e = Read TPD 0x000f = SNR Left 0x0010 = SNR Right 0x0011 = Crack detector position 0x0012 = Read Exposure value low 0x0013 = Read Exposure value hi 0x0014 = Read CRC
07 00 Camera
Parameters
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 36
R 0x0000 = Camera Model
0x0001 = Camera Hardware rev 0x0002 = Camera Serial Number 0x0003 = Micro firmware rev 0x0004 = FPGA major revision 0x0005 = Sensor Serial Number 0x0006 = Clock Rate 0x0007 = FPGA Sub/minor revision 0x0008 = Micro Sub/minor revision
3.4: Software ICD
System & Status Continued
Serial Commands
Target Index Command R/W Description 07 00 Camera
05 00 Camera mode and
Parameters
status registers
R 0x0000 = Camera Model
0x0001 = Camera Hardware rev 0x0002 = Camera Serial Number 0x0003 = Micro firmware rev 0x0004 = FPGA/Timing Generator rev 0x0005 = Sensor Serial Number 0x0006 = Clock Rate 0x0007 = FPGA sub revision
R 0x0000 = read mode register 1
0x0001 = read mode register 2 0x0002 = read mode register 3 0x0003 = read mode register 4 0x0004 = read mode register 5 0x0005 = read status register 1 0x0006 = read status register 2 0x0007 = read status register 3 0x0008 = read status register 4 0x0009 = read status register 5 0x000A = read status register 6 0x000B = read mode register 6 0x000C = read mode register 7 0x000D = read mode register 8 0x000E = read hardware stataus register 2
Mode Register #1
Bit Name Description
15 Strobe Polarity 1 = Positive Strobe
14 On Screen Text Enabled
13 Output Test Pattern Enabled
12 Input Test Pattern Enabled
11 Large AED Detector 0 = small detector (1MP), 1 = large detector (16MP)
10 Dual Tap Enabled
9 TOE: Triggered Overlap Exposure
8 Fast AE algorithm 1 = fast, 0 = iterative
7 TDE: Trigger Double Exposure
6 TME: Trigger Manual Exposure
5 TPE: Trigger Program Exposure
4 Free Run Enabled Free Run Mode
3 Runs Valid Enabled Valids (FVAL/LVAL/DVAL) are enabled in Free Run Mode
2 AE Inside Hysteresis
1 AE Exposure Mode 1 = exposure mode, 0 = gain mode
0 AE Mode Enabled
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 37
Mode Register #2
Bit Name Description
15 4 Tap CCD Readout
14 2 Tap CCD Readout
13 1 Tap CCD Readout
12 Over Scan Enabled Sensor Over Scan
11 PDC Column Mode PDC: 0 = Pixel correction, 1 = column correction mode
10 Channel Swap Enabled Swaps camera link channels in dual channel mode
9 Not Used
8 Bottom 8 Readout Outputs the bottom 8 bits of the 12 bit ADC data as the 8 msb’s
7 8 Bit Readout Camera link readout mode
6 10 Bit Readout Camera link readout mode
5 12 Bit Readout Camera link readout mode
4 Tap Matcher Status 1 = on, 0 = off
3 Frame/Line Clamp Mode 0 = Line Clamp, 1 = Frame Clamp (Not recommended)
2 ASYNC RESET Enabled Allows triggered frames in Free Run Mode
1 LUT loaded OEM
0 OSD 2X Enabled
Mode Register #3
Bit Name Description
15 SRC Over scan Adds 16 lines of over scan to the sensor readout
14 SRC Wave
13 SRC Average Averages data in smear reduction circuit
12 OSD Filled Plot
11 SRC Enable Smear Reduction Correction
10 OSD Column Enabled
9 OSD Line Enabled
8 Free Run Partial Scan Enabled OEM Only
7 Trigger Source External
6 Flush Gate
5 OSD Color Mode Enlarges the tap match window to two pixels wide to handle Bayer patterns
4 Free Run PDC Enabled
3 Free Run LUT Enabled OEM Only
2 Free Run DGO Enabled DGO = Digital Gain & Offset
1 Free Run Decimation Mode
0 Free Run Bin Mode
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 38
Mode Register #4
Bit Name Description
15 Command + Data Checksum
14 115200 Baud Enabled
13 57600 Baud Enabled
12 38400 Baud Enabled
11 19200 Baud Enabled
10 9600 Baud Enabled
9 Trigger Overlap Exposure
8 Trigger Partial Scan Enabled
7 Not Used OSD screen type bit 2
6 Not Used OSD screen type bit 1
5 Not Used OSD screen type bit 0
4 Trigger PDC Enabled
3 Trigger LUT Enabled
2 Trigger DGO Enabled
1 Trigger Decimate
0 Trigger Bin
Mode Register #5
Bit Name Description
15 AE Time base algoritm Always 1 for Rev E
14 Trigger Bayer Bin
13 FFC Table loaded
12
11 Show AF data full screen
10 Show AF Data
9 Show SNR Right Detector Window
8 Show SNR Left Detector Window
7 Show AF Detector Window Auto Focus detector window
6 Show AE Detector Window Auto Exposure detector window
5 Show Tap B Crack Detector Window Tap B is the Left Tap of the CCD
4 Show Tap A Crack Detector Window Tap A is the Right Tap of the CCD
3 TBD
2 Power Down
1 AE Close IRIS Request Indicates to the user control software that the image is to bright
0 AE Open IRIS Request Indicates to the user control software that the image is to dim
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 39
Mode Register #6
Mode Register #6
Bit Name Description
Bit Name Description
15 TPD SEL1 TPD Resolution
15 TPD SEL1 TPD Resolution
14 TPD SEL 0
14 TPD SEL 0
13 BIN AVE 1 BIN1/0 average functions (00 = none, 01=DIV2, 10=DIV4, 11=DIV8).
13 BIN AVE 1 BIN1/0 average functions (00 = none, 01=DIV2, 10=DIV4, 11=DIV8).
12 BIN AVE 0
12 BIN AVE 0
11 CDC Enable Column Defect Corrector
11 CDC Enable Column Defect Corrector
10 Grey Code Enable Grey Code data transfer from AFE to FPGA enabled
10
9 Trigger Marker Line Mode
9 Trigger Marker Line Mode
8 Trigger Marker Enable
8 Trigger Marker Enable
7
7
6 Trigger Arm Enable
6 Trigger Arm Enable OEM Only
5
5 Trigger Arm OEM Only
4 AFE 14Bit Data path mode
4 AFE 14Bit Data path mode
3 PPS Strobe Delay Enabled
3 PPS Strobe Delay Enabled
2 PPS Shutter Delay Enabled
2 PPS Shutter Delay Enabled
1 PPS Interrupt Enabled
1 PPS Interrupt Enabled
0 Option Board #1 Enabled
0 Option Board #1 Enabled
Mode Register #7
Bit Name Description
15
14
13
12
11
10
9
8
7 TSE Mode
6 UART master enabled
5 UART slave enabled
4 Not Used
3 Histogram Equalization Enabled
2 AE Histogram Detector Enable
1 AE in IRIS mode
0 AE in gain mode
Mode Register #8 (Unused)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 40
Status Register #1
Bit Name Description
15 FACT_CRC_ERR CRC error in factory EEPROM area
14 AE_ERR Error in auto exposure operation
13 V5_ERR 5V power supply is out of range
12 V12_ERR 12V power supply is out of range
11 VH_ERR High voltage power supply is out of range
10 VL_ERR Negative voltage power supply is out of range
9 TDE Frame # Indicates which of the two TDE frames is being read out
8 DCM Locked DCM = Digital Clock Manager
7 DCM Timeout
6 VSYNC Timeout
5 UART Error 1 = receive buffer overflow
4 WDT Reset A watchdog timer reset has occurred
3 Normal Power Up
2 Brownout Reset A power brownout has occurred and reset the microprocessor
1 Xilinx Configuration Failed A very bad thing ! (The FPGA could not be configured)
0 WDT Enabled Watch Dog Timer
Status Register #2
Bit Name Description
15 USER_CRC_ERR CRC error in user EEPROM area
14
13
12
11
10
9
8
7
6
5 AMBER LED 1 = AMBER LED is on
4 RED LED 1 = RED LED is on
3 IBT 1 complete
2 PIO State Save Failed PIO = Parallel IO = Communication path from micro to FPGA.
1 ADC B State Save Failed ADC = Analog to Digital Converter
0 ADC A State Save Failed
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 41
Status Register #1
Bit Name Description
15 Factory EEPROM CRC
Error
14 AE Error
13 V5 Error
12 V12 Error
11 VH Error
10 VL Error
9 TDE Frame
8 DCM Lock FPGA Digital Clock Manager is locked
7 DCM Timeout DCM Error
6 Vsync Timeout
5 UART Error
4 WDT Error Watch Dog Timeout
3 Not Used
2 Brownout Reset
1 FPGA Configure Error
0 Not Used
Status Register #2
Bit Name Description
15 Not Used
14 Not Used
13 Not Used
12 Not Used
11 Not Used
10 Not Used
9 Not Used
8 Not Used
7 LED Amber On
6 LED Red On
5 IBIT Complete OEM Only
4 PIO Save State Failed Error Condition
3 ADC D State Save Fail Error Condition
2 ADC C State Save Fail Error Condition
1 ADC B State Save Fail Error Condition
0 ADC A State Save Fail Error Condition
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 42
Status Register #3
Bit Name Description
15 AFE D Serdes Sync High if AFE Serdes is working. Low is error
14 AFE C Serdes Sync High if AFE Serdes is working. Low is error
13 AFE B Serdes Sync High if AFE Serdes is working. Low is error
12 AFE A Serdes Sync High if AFE Serdes is working. Low is error
11 AFE D LVAL Error AFE LVAL sync stream not detected. ERROR
10 AFE C LVAL Error AFE LVAL sync stream not detected. ERROR
9 AFE B LVAL Error AFE LVAL sync stream not detected. ERROR
8 AFE A LVAL Error AFE LVAL sync stream not detected. ERROR
7 Not Used
6 Not Used
5 Not Used
4 Not Used
3 Not Used
2 Not Used
1 Not Used
0 Not Used
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 43
3.5: Software ICD
The Camera link 1.0 specification allows for serial communication at 9600 baud only. The 1.1 specification provides for faster rates.
The RMV camera allows for the setting of the baud rate to one of five rates. This setting can be made for only the current power cycle or for the boot cycle.
The RMV camera allows the user the option of saving the communication speed in the camera EEPROM. This can cause communication with the camera to be lost if the command is not used carefully. Note that only one of the baud rates will be used so that if communication is lost it can be restored by try­ing the other baud rates.
Once the EEPROM baud rate is set the camera must be re-powered to set the rate.
Quick FAQ’s:
►The Camera Link specification requires the camera
to always start up at 9600 baud.
DANGER ! The Camera link and external serial
port can be forced to start at a different rate. Note that this will disable the communication with your camera from some control applications.
USE WITH CAUTION ! ►The baud rate is set to 9600 from the factory.
Serial Commands
Target Index Command R/W Description 04 09 Set Current Baud
Rate
W 0x0000 = 9600
0x0001 = 19200 0x0002 = 38400 0x0003 = 57600 0x0004 = 115200
Baud Rate
04 D2 Set Camera Link
Boot Baud Rate (Requires reboot)
04 D3 External Serial
Boot Baud Rate (Requires reboot)
04 D0 Power Up W Resets camera and powers up circuits
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 44
R/W 0x0000 = 9600
0x0001 = 19200 0x0002 = 38400 0x0003 = 57600 0x0004 = 115200
R/W 0x0000 = 9600
0x0001 = 19200 0x0002 = 38400 0x0003 = 57600 0x0004 = 115200
3.6: Graphical User Interface
Overview and installation
Overview
The RMV cameras are feature rich and to some rather complicated to interface. To ease the introduction to the RMV command set and allow easy user control of the cameras illunis has provided a graphical user interface (GUI). The GUI is a application (C#) that consists of several windows, menus and dialog boxes for each of the many features of the RMV camera. The GUI is installed using a stand­ard windows installer program available from the illunis web site.
The complete installation and operating instructions for the GUI program are included in the “Quick Start Guide” to RMV cameras. Please contact info@illunis.com or call (USA) 952-975-9203.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 45
4.0 Overview
4.0.1 TPD Resolution
4.1 Free Run Modes
4.1.1 FRM
4.1.2 FRS
4.1.3 Set Free Run Exposure Time
4.2 Trigger Modes
4.2.1 TPE
4.2.2 TME
4.2.3 TDE
4.2.4 TOE
4.2.5 Set Trigger Exposure Time
4.2.6 Software Trigger
4.2.7 Trigger Sub Pulse Delay
4.3 ASYNC RESET
4.4 Partial Scan
4.5 Binning
4.6 Auto Exposure
4.6.1 Triggered AE
4.7 Strobe Output
4.8 Analog to Digital
4.8.1 Gain
4.8.2 Offset
4.8.4 Black Clamp
Chapter 4: Exposure
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 46
4.0: Exposure Modes
Overview
The RMV can be programmed to expose images in several different modes. These modes are grouped into two categories, free run modes and triggered modes. In the free run mode the RMV cam­era continuously exposes and outputs images. In the trigger modes the RMV waits for a trigger event. The begins a exposure/readout cycle on the trigger events edge. Some of the RMV exposure modes are listed below. Other custom OEM trigger mode may not be listed here.
RMV Exposure Modes
Mode Description
Free Run Mode: Camera generates all timing signals. Exposure is set by a register that specifies lines
FRM
FRS
TPE
TME
TDE
of erasure. Trigger signals are ignored.
Free Run Synchronize: Camera generates all timing signals. Exposure is set by a register that speci­fies lines of erasure. If the trigger is not asserted, then the image readout is halted at the 4th line. When the trigger is asserted the readout resumes. This mode allows multiple free running cameras to be synchronized with the trigger signal. FRS is enabled by selecting FRM and ASYNC RESET.
Triggered Program Exposure: The camera waits in an idle flush state for a trigger rising edge. On the trigger rising edge the photo diode array is erased and an exposure is made based on the value of the Triggered Pulse Delay (TPD) register. When the exposure is complete the image is transferred from the Photo diodes to the CCD, then read out of the CCD and passed to the camera link interface. The cam­era is reset and waits for another trigger signal to assert.
Triggered Manual Exposure: This mode is a superset of the TPE mode and operates exactly the same with the following difference. The exposure is extended by the width of the trigger signal. The programmed exposure is execute at the fall of the trigger pulse. To match the exposure of the image to the trigger pulse width the TPD register should be set to its minimum value (6).
Triggered Double Exposure: This mode is a superset of the TPE mode and operates exactly the same with the following difference. After the first frame is transferred from the Photo Diodes to the CCD a second image is exposed and read out. The exposure of the second frame is equal to the read out time of the first frame. In this mode two frames are exposed and read out for every trigger signal.
Triggered Overlap Exposure: This mode allows overlap of the exposure and readout of the sensor. In TOE mode the assertion of the trigger signal transfers the image data from the photo diodes into the
TOE
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 47
CCD and begins readout. The photo diodes then begin imaging. The time between trigger assertions defines the exposure. The trigger pulse width is not used..
The camera link control signal CC1 or external signal can be used to implement the trigger function.
Multiple RMV cameras can by synchronized with the CC1 signal.
In the trigger mode this is accomplished by sending the same trigger signal to multiple cameras at the same time.
Exposure control is performed differently for free run and trigger readout.
Free Run exposure control is set in lines of erasure. Consider the CCD sensor in free run mode. The sensor is exposing its photodiodes with a new image while at the same time the previous image is being read from the storage CCD. Because of the reading of the previous image the timing of the electronic shutter can only happen during the horizontal line blanking. Thus the electronic exposure can only hap­pen once every line. This results in a free run exposure time resolution of one line time. Now consider that the exposure of the new image starts at the first line of readout and continues until the electronic shutter signal is asserted. The time of the electronic shutter is defined as a line of readout. Thus the exposure time is set as the number of lines to erase, with the electronic shutter.
# lines of
erasure
# lines of
erasure
Unused
(Erased)
Exposure
Erasure
Pulse
# lines of
erasure
Image
Transfer
Unused
(Erased)
Exposure
Erasure
Pulse
Free Run exposure example: Long exposure
Unused
(Erased)
Exposure
# lines of
erasure
Time
Image
Transfer
Free Run exposure example: Short exposure
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 48
Erasure
Pulse
Image
Transfer
Erasure
Pulse
Time
Image
Transfer
Triggered exposure control is set in pixel clock increments. A special trigger clock in the RMV, equal to the pixel clock divided by 4/16/64/1024 is used to calculate the triggered exposure time. The triggered exposure is set with a register called the Transfer Pulse Delay (TPD). TPD is the time from the trigger to the transfer of the photodiode image data into the CCD storage area for readout. In the RMV trigger mode the camera waits for a trigger while simultaneously flushing the internal CCD. When a trigger is detected the TPD counter starts from zero. The TPD counter is used to time the elec­tronic erasure pulse that is used to clear the photo diodes and begin exposing a new image. This elec­tronic erasure pulse requires 6 TPD time periods. (Thus the minimum TPD is 6). The TPD counter is then incremented using the special trigger clock (1/64th the pixel clock) until the TPD counter is equal to the TPD register. When the TPD counter equals the TPD register the image transfer and readout cycles are started.
Trigger
rising edge
TPD
CCD Flush Erasure Exposure Image Readout CCD Flush
Time
Triggered exposure example: TPE
TPD determines the exposure
Trigger
TPD
CCD Flush Erasure Exposure Image Readout CCD Flush
Triggered exposure example: TME
Trigger pulse width plus TPD determines the exposure
Mode interactions:
FRM + ASYNC RESET = FRS (Free Run Synchronized mode)
TOE modifies TPE and TME modes
TME exposure time = TPD + Trigger Pulse Width
Time
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 49
A special feature of the RMV is a the ability to turn image processing features on and off in the exposure and trigger modes. Each mode has it’s own enables for:
RMV Exposure Specific Mode Enables
Mode Description and Example
Partial Scan: The PS mode can be used to increase frame rates for image feature
PS
DGO
LUT
searching. For example the PS mode could be used to search a small number of image lines at a high speed to find printed circuit board fiducials. Once found a full image can be used for inspection. Digital Gain and Offset: The DGO can be used in the portrait photography exam­ple to enhance the live preview mode image contrast (with no effect on the trig­gered image).. LUT : The look up tables can be used to apply a gamma function to a live preview and not to the triggered image. This is desirable when a good looking live image is needed but the final image is heavy software processed and only raw image data is needed.
PDC
BINNING
Commands to the camera can specify if the command is to be applied to the free run mode, the trigger mode or common to both modes.
Free Run Parameters
Pixel Defect Correction: The PDC circuit must be disabled in the binning modes.
Binning: Horizontal and Vertical binning can be specified separately for each
mode.
PS Enable
DGO enable
LUT Enable
PDC Enable
Horizontal Binning
Vertical Binning Single/Dual Tap
Trigger Parameters
PS Enable
DGO enable
LUT Enable
PDC Enable
Horizontal Binning
Vertical Binning Single/Dual Tap
SELECT
Sensor Timing Control
Readout Mode Free Run or Trigger
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 50
Mode Control Block Diagram
4.0.1: Exposure:Trigger Modes
TPD Time Constant
The trigger transfer pulse delay (TPD) is a register that is used to define a triggered exposure. The TPD register is set to an integer value that rep­resents a counter based on a value called the TPD unit time.
The TPD unit time is a programmable clock that is selectable between four different divisors of the master camera pixel clock. The divisors are 4, 16, 64, 1024. The range of divisors allow for very fine control to very long exposures.
For help on this command contact dave@illunis.com
Serial Commands
Target Index Command R/W Description 02 0E TPD resolution R/W 0x0000 = 4 clock periods
Quick FAQ’s:
►If your application requires very short exposures use the TPD clock divisor 4.
►If your application requires very long exposures use the TPD clock divisor 1024.
►Cameras previous to FPGA release E7 used a fixed TPD divisor of 64.
►Note that when using the TPD divisor 1024 the exposure time may be larger than the maximum the exposure detector can measure.
0x0001 = 16 clock periods 0x0002 = 64 clock periods 0x0003 = 1024 clock periods
TPD
= Pixel Clock Period * TPD
time
unit time
RMV TPD Time constants Pixel Clock 20Mhz 30Mhz 40Mhz
Pixel Period
TPD unit time (4 periods)
TPD unit time (16 periods)
TPD unit time (64 periods) default
TPD unit time (1024 periods)
Min TPD time (TPD = 1, 4 periods)
Max TPD time (TPD = 65535, 1024 periods)
0.050us 0.0333us 0.025us
0.200us 0.1333us 0.100us
0.800us 0.5333us 0.400us 3,200us 2.1333us 1.600us
51.2us 34.132us 25.6us
0.200us 0.1333us 0.100us
3,35 sec 2.23 sec 1.67 sec
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 51
4.1.1: Exposure: Free Run Modes
FRM: Free Run Mode
In Free Run Mode the camera generates all timing signals to the CCD and to the camera link port. The trigger signal is ignored. The exposure is set with the ERASURE register A minimum ERAS­URE value of 1 results in the maximum exposure time. The maximum ERASURE value, dependent on the CCD used, sets the minimum exposure time.
Serial Commands
Target Index Command R/W Description 04 03 Readout Mode Select W 0x0000 = Free Run Exposure
02 02 Set Free Run ms W Set FR time in milliseconds * 100 02 03 Set Free Run us W Set FR time in us 02 02 Get Free Run ms R Return actual time in milliseconds * 100 02 03 Get Free Run us R Return actual time in us (0xFFFF = to large).
Exposure
Read Out
Exposure N-1 Exposure N Exposure N + 1 Exposure N
Read Out N-2 Read Out N-1 Read Out N Read Out N + 1
Quick FAQ’s:
►FRM is sometimes called continuous mode. ►In FRM the exposure and readout are overlapped. ►FRM exposure is set in units of line timing ►The strobe signal can be used to determine frame
timing.
The exposure detector can be used to measure the
exact exposure in free run mode.
FVAL
Strobe
ERASURE
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 52
4.1.2: Exposure:Free Run Modes
FRS: Free Run Synchronize Mode
In Free Run Sync mode the camera generates all timing signals to the CCD and to the camera link port as in FRM with the following exception: After the image is transferred into the interline storage area of the CCD, the camera waits for the trigger to assert. Thus the camera waits for a SYNC signal - provided by the trigger - and thus allows several cameras to be slaved to the trigger signal.
Serial Commands
Target Index Command R/W Description 04 03 Readout Mode Select W 0x0004 = Free Run Synchronize
Quick FAQ’s:
►FRS is used to sync free running cameras. ►Cameras can be synced to one pixel clock period. ►Any number of cameras can be synchronized. ►The strobe signal can be used to determine frame
timing.
The strobe signal can be found on the RMV power
connector and is a 3.3V LVTTL signal.
►FRS mode works with Auto exposure in rev E9
(Note ASYNC reset will work)
Trigger period
Trigger
Synced by Trigger
FVAL
FRS Example: To Synchronize multiple free running cameras con­nect the triggers to the same source and set the cameras to FRS mode Not that the trigger timing is very critical and that the trigger period must be slightly greater than the free run frame in order to sync at the maximum possible rate.
Camera Link Trigger
Note: Trigger must fall be­fore the end of read out
RMV Camera
in FRM
RMV Camera
in FRM
RMV Camera
in FRM
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 53
4.1.3: Exposure:Free Run Modes
Set Free Run Exposure Time
The free run exposure time is set In lines of eras­ure. The resolution of the exposure is in horizontal line times. Two commands are provided for calculating the free run time from a specified time variable (milliseconds or microseconds). The closest availa-
ble time is selected and set in the internal time var­iable. The maximum free run time is dependent on
the sensor, readout mode, and pixel clock speed. The millisecond variable is set as ms*100 to give more res­olution to the command. This results in a maximum possible exposure of 655ms although the value is sen­sor dependant.
Serial Commands
Target Index Command R/W Description 02 02 Set Free Run ms W Set FR time in milliseconds * 100
02 03 Set Free Run us W Set FR time in us 02 02 Get Free Run ms R Return actual time in milliseconds * 100 02 03 Get Free Run us R Return actual time in us (0xFFFF = to large).
Quick FAQ’s: ►The strobe signal can be found on the RMV power
connector and is a 3.3V LVTTL signal.
Minimum exposure time is set by the photodiode
transfer to vertical CCD clock sequence.
Maximum exposure time is set by the sensor size
and line timing.
Note: The exposure time must be resent if you
change single/dual tap mode.
Example:
Set free run time to 10 ms
{w020203E815} 0x3E8 = dec 1000 = 10ms * 100
{w02032710C9} 0x2710 = dec 10000us = 10ms
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 54
4.2.1: Exposure:Trigger Modes
TPE: Triggered Programmed Exposure
TPE mode uses the trigger pulse to start a pro-
grammed expose/readout cycle. The exposure is set by the Transfer Pulse Delay (TPD) register. The TPD is set in increments of 4,16,64 or 1024 pixel clock periods.
Serial Commands
Target Index Command R/W Description 04 03 Readout Mode Select W 0x0001 = Trigger Program Exposure
02 04 Transfer Pulse Delay R/W 0x0007 to 0xFFFF 04 1B Transfer Pulse Width R 0x0004 = TPW (Preset at factory)
02 00 Set Trigger ms W Set TR time in milliseconds * 100 02 01 Set Trigger us W Set TR time in us 02 00 Get Trigger ms R Return actual time in milliseconds * 100 02 01 Get Trigger us R Return actual time in us (0xFFFF = to large). 02 0E TPD resolution R/W 0x0000 = 4 clock periods
Quick FAQ’s:
►Use the TPE mode to control exposure within the RMV camera. ►The rising edge of the trigger pulse determines the beginning of exposure. ►Multiple Cameras with the same trigger can be slaved together for very exacting applications
The strobe signal can be found on the RMV power
connector and is a 3.3V LVTTL signal.
0x0001 = 16 clock periods 0x0002 = 64 clock periods 0x0003 = 1024 clock periods
Trigger
TTSC
SUB (Erase)
TPD
Strobe
Transfer Pulse
TEXP
Exposure
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 55
TPW
TST
Read Out
4.2.2: Exposure:Trigger Modes
TME: Triggered Manual Exposure
TME mode uses the trigger pulse to start a pro-
grammed expose/readout cycle. The exposure is set by the width of the trigger pulse and Transfer Pulse Delay (TPD) register. TPD should be set to its minimum value so that the trigger pulse width controls the exposure. TME mode is the same as TPE mode with the exception that the exposure is extended by the trigger pulse width.
Serial Commands
Target Index Command R/W Description 04 03 Readout Mode Select W 0x0002 = Trigger Manual Exposure
02 04 Transfer Pulse Delay R/W 0x0007 to 0xFFFF 04 1B Transfer Pulse Width R 0x0004 = TPW (Preset at factory)
02 00 Set Trigger ms W Set TR time in milliseconds * 100 02 01 Set Trigger us W Set TR time in us 02 00 Get Trigger ms R Return actual time in milliseconds * 100 02 01 Get Trigger us R Return actual time in us (0xFFFF = to large). 02 0E TPD resolution R/W 0x0000 = 4 clock periods
Quick FAQ’s:
►Use the TME mode to control exposure with a cam-
era link capture device’s trigger signal.
►The rising edge of the trigger pulse determines the
beginning of exposure.
►The falling edge of the trigger pulse starts a TPE
cycle. Set TPD to a its minimum value.
The strobe signal can be found on the RMV power
connector and is a 3.3V LVTTL signal.
0x0001 = 16 clock periods 0x0002 = 64 clock periods 0x0003 = 1024 clock periods
PWT
Trigger
TTS
SUB (Erase)
Strobe
Transfer Pulse
TEXP
Exposure
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 56
TPD
TPW
TST
Read Out
4.2.3: Exposure:Trigger Modes
TDE: Triggered Double Exposure
TDE mode uses the trigger pulse to capture two
images in rapid succession. This is accomplished by capturing the first image in the Photo Diodes, transferring this image to the vertical CCD, and then capturing a sec­ond image in the Photo Diodes. The first image is read from the CCD as the second image is exposed. The second image is then transferred and read from the CCD. The second image exposure is fixed to the readout time of the first image.
Serial Commands
Target Index Command R/W Description 04 03 Readout Mode Select W 0x0003 = Triggered Double Exposure
02 04 Transfer Pulse Delay R/W 0x0007 to 0xFFFF 04 1B Transfer Pulse Width R 0x0004 = TPW (Preset at factory) 02 00 Set Trigger ms W Set TR time in milliseconds * 100 02 01 Set Trigger us W Set TR time in us 02 00 Get Trigger ms R Return actual time in milliseconds * 100 02 01 Get Trigger us R Return actual time in us (0xFFFF = to large). 02 0E TPD resolution R/W 0x0000 = 4 clock periods
Quick FAQ’s:
►Use the TDE mode with external illumination con-
trol to grab two closely timed images.
►The rising edge of the trigger pulse determines the
beginning of first exposure.
►The strobe signal can be used to determine frame
timing.
►The strobe signal is only valid for the first frame.
The Transfer Pulse Width (TPW) can be used to
minimize the frame to frame timing.
0x0001 = 16 clock periods 0x0002 = 64 clock periods 0x0003 = 1024 clock periods
Trigger
Image 1 Exposed As TPE cycle
Exposure
FVAL
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 57
Image 1 Transferred
Image 2 Exposed
Image 1 Read out
Image 2 Transferred
Image 2 Read out
4.2.4: Exposure:Trigger Modes
TOE: Triggered Overlap Exposure
TOE mode uses the trigger pulse to define a over-
lapped exposure and readout sequence. The TPD
must be set to 0x0006. The TOE mode modifies the
TPE and TME modes so no SUB (electronic erasure)
pulse is generated. This effectively creates a overlap-
ping exposure and readout. The time between trigger
pulses determines the exposure (time). Note that the
STROBE signal is not valid in TOE mode. To use
TOE mode both TPE/TME and TOE must be activat-
ed.
Serial Commands
Target Index Command R/W Description 04 03 Readout Mode Select W 0x000b = Trigger Overlap Exposure enable
04 03 Readout Mode Select W 0x000c = Trigger Overlap Exposure disable 02 04 Transfer Pulse Delay R/W 0x0007 to 0xFFFF 04 1B Transfer Pulse Width R 0x0004 = TPW (Preset at factory) 02 00 Set Trigger ms W Set TR time in milliseconds * 100 02 01 Set Trigger us W Set TR time in us 02 00 Get Trigger ms R Return actual time in milliseconds * 100 02 01 Get Trigger us R Return actual time in us (0xFFFF = to large).
Quick FAQ’s:
►Use the TOE mode to maximize triggered readout speed. Because the readout is overlapped with the exposure the triggered mode can run at nearly the speed of free run exposure. ►The rising edge of the trigger pulse determines the beginning of image readout and exposure of the next image. ►An initial frame must be read to start a sequence.
Trigger
Image Transfer
Readout
Exposure
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 58
4.2.5: Exposure:Trigger Modes
Set Trigger Exposure Time
The trigger run exposure time is set in incre­ments of the TPD Period. This unit of time is called the Transfer Pulse Delay (TPD).
Two commands are provided for calculating the triggered exposure time from a specified time varia­ble (milliseconds or microseconds). The closest available time is selected and set in the internal time variable. The maximum triggered time is dependent on the pixel clock speed. The millisecond variable is set as ms*100 to give more resolution to the com­mand. This results in a maximum possible exposure of 65535 TPD units.
Serial Commands
Target Index Command R/W Description 02 00 Set Trigger ms W Set TR time in milliseconds * 100
02 01 Set Trigger us W Set TR time in us 02 00 Get Trigger ms R Return actual time in milliseconds * 100
02 01 Get Trigger us R Return actual time in us (0xFFFF = to large). 02 0E TPD resolution R/W 0x0000 = 4 clock periods
Quick FAQ’s: ►The strobe signal can be found on the RMV power
connector and is a 3.3V LVTTL signal.
Minimum exposure time is set by the physics of the
photodiode transfer to vertical CCD clock sequence. The electronics can be set for any exposure downto zero.
Maximum exposure time is set by the TPD period
and the maximum TPD register value (65535).
0x0001 = 16 clock periods 0x0002 = 64 clock periods 0x0003 = 1024 clock periods
4.2.6: Exposure:Trigger Modes
Software Controlled Trigger
This command forces an internal trigger from a software command. The soft trigger pulse has a width in us as specified in the data field. The range is 1 to 65535 ms (65sec). The timing is approximate due to the inaccuracies in the microprocessor time function. The exposure time is set with the TDP reg­ister in TPE mode. The set trigger high/low can be used to create an arbitrary long exposure. The soft­ware trigger is logically OR’d with the CL hardware trigger so you must disable the hardware trigger on your capture card for this to function correctly.
Serial Commands
Target Index Command R/W Description 02 05 Soft Trigger W Issue a soft trigger with width in ms
02 06 Soft Trigger high W Sets trigger high 02 07 Soft Trigger low W Sets trigger low
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 59
Quick FAQ’s:
Minimum exposure time is set by the photodiode
transfer to vertical CCD clock sequence.
Maximum exposure time is set by the maximum
register value (65535).
Use an initlizing software trigger to reset the
camera.
NOTE: Beware of timeout conditions when using
long exposures !
NOTE: The trigger input must be set to CL for the
software trigger to work !
4.2.7: Exposure:Trigger Modes
Trigger Substrate Pulse Delay
The trigger substrate delay (TSUBD) pulse is useful in applications where a very powerful flash is used. Because a very bright flash will overpower the VCCD light shield and create unwanted smear the TSUBD is used to delay the photo diode erasure pulse (Substrate Pulse).
If the VCCD is clocked during a very bright flash then the sensor will contain smear within the VCCD. The TSUBD allows for the VCCD flush to stop before the flash thus preventing image smear (from the flash).
Serial Commands
Target Index Command R/W Description 02 0B SUB Delay R/W Default = 0x0001
02 0C Triggered VCCD on W VCCD clocks during triggered exposure 02 0D Triggered VCCD off W No VCCD clocks during triggered exposure
Quick FAQ’s:
►Use the TSUBD with applications that have very tight timing and very bright flash exposures. ►The TSUBD time units are the same as TPD. ►The substrate pulse is used to erase the photo diodes for the beginning of exposure. ►The default for normal operation of TSUBD is a register value of 0x0001 ►TheTSUBD must be zero for TME mode to function.
Normal Triggered Image
This scope plot shows a normal triggered im­age where exposure starts at the trigger and ends at the interline transfer. The VCCD is clocked throughout the exposure to minimize dark current buildup in the VCCD.
Yellow = Trigger, Blue = VCCD Clocks, Red = Exposure strobe, Green = FVAL
Triggered Image with VCCD off and TSUBD
This scope plot shows a triggered image where exposure is delayed from the trigger by the TSUBD register value (and ends at the interline transfer). The VCCD is stopped throughout the exposure to eliminate smear of the image in the VCCD.
Yellow = Trigger, Blue = VCCD Clocks, Red = Exposure strobe, Green = FVAL
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 60
4.3: Exposure:
Asynchronous Reset
The trigger modes may be used in a async reset where the RMV is operated in a free run mode and is reset by the trigger signal.
In this mode the camera runs as if in FRM and waits for a trigger.
Once the trigger signal is recognized the camera “resets” by flushing the internal CCD’s and erasing the photo diodes. The selected triggered im­age is then exposed and readout.
The camera then returns to FRM (free run mode).
Serial Commands
Target Index Command R/W Description 04 05 Readout Mode Select W Async Reset Enabled
04 06 Readout Mode Select W Async Reset Disabled 04 07 Readout Mode Select W Runs Valid Enabled 04 08 Readout Mode Select W Runs Valid Disabled
Quick FAQ’s:
►Some camera manufactures call their trigger mode
Async reset as they do not have different trigger and free run timing.
If the Async Reset mode is active in free run
mode then the Free Run Synchronize mode is active. The camera will sync to the trigger signal.
►The RUN VALS option controls the output of FVAL
and LVAL during async reset mode.
► Async Reset mode and Runs Valid disabled are
useful with auto exposure to allow the AE to run and still allow the use of triggered images.
►The strobe signal can be used to determine frame
timing.
Trigger
Exposure
Read Out
FVAL
Strobe
Trigger
Exposure
Read Out
FVAL
Strobe
Exposure N-1
Read Out N-2
Exposure N-1
Read Out N-2
Bad Triggered Exposure
Read Out N-1
Triggered Read Out Bad Data
Async Reset Mode with Run Valid Disabled
Bad Triggered Exposure
Read Out N-1
Triggered Read Out Bad Data
Async Reset Mode with Run Valid Enabled
Exposure N+1
Exposure N+1
Exposure N+2
Read Out N+1
Exposure N+2
Read Out N+1
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 61
4.4: Exposure:
Partial Scan
Partial Scan mode is used to read a selected
number of rows from the CCD. Using the fast dump gate feature of the Truesence Interline Transfer sensors the PS mode dumps or purges the lines before the start line. Then the lines between the start line and the stop line are read out. Finally the lines after the stop line are purged. Partial scan can be used to increase the frame rate by only reading the lines of interest to an application. There are separate PS enables for free run and trigger modes.
Serial Commands
Target Index Command R/W Description 04 04 Mode Register W 0xM003 = Enable Partial Scan 04 04 Mode Register W 0xM004 = Disable Partial Scan
M = 0: Common—both, M = 8: Free Run only, M = 4: Trigger only
04 0A PS Start Line R/W Sensor Dependent 04 0B PS Stop Line R/W Sensor Dependent. (> Start Line)
Quick FAQ’s:
►5p5 um CCDs do not have a fast dump gate. ►PS purges unwanted lines of video data. ►The stop line must be greater than the start line. ►PS of 1/2 the lines of the sensor does not result in
2X the frame rate bacause the purged lines require some time for the purge.
CCD’s have non-visable lines that can be selected
for purging in the PS mode.
Line 4
Start Line
Stop Line
VSIZE—4
Readout lines
Purged lines
Readout lines
Purged lines
Readout lines
Partial Scan line selection are readout area
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 62
4.5: Exposure:
Binning
BINNING uses the CCD sensor to combine adja-
cent pixels and lines to effectively create larger pixels. The RMV can bin video data independently in both horizontal and vertical modes. Vertical binning merges the charge from adjacent lines on the CCD and creates a composite line in the horizontal shift register on the CCD. This binned data is then read out as a standard line. Vertical binning can be performed in 1 to 32 line increments. Special care must be taken when binning very bright images as the charge in the horizontal shift register can overflow and cause image artifacts. Horizontal binning is performed as digital summation within the FPGA. There is no speed difference between digital and analog binning. Horizontal binning can be performed in 1 to 16 pixel increments. Your capture device must qualify the video data with the DVAL signal for horizontal binning to function. The H-bin math sums the pixel data. You can use the bin data average mode to average the binned pixel data. This will reduce noise and increase the dynamic range of the camera.
Serial Commands
Target Index Command R/W Description 04 04 Mode Register W 0xM000 = Enable Bin
04 04 Mode Register W 0xM002 = Disable Bin
M = 0: Common—both, M = 8: Free Run only, M = 4: Trigger only 04 28 Trigger Mode V Bin R/W Values 1 to 32 (1 is no binning) 04 29 Trigger Mode H Bin R/W Values 1 to 16 (1 is no binning)
04 2A Free Run Mode V Bin R/W Values 1 to 32 (1 is no binning) 04 2B Free Run Mode H Bin R/W Values 1 to 16 (1 is no binning) 04 52 Bin data average mode R/W 0x0000 = Sum binned horizontal pixel data
Quick FAQ’s:
►Binning can be independently set for any horizontal
and vertical combination.
►Horizontal binning in and two channel camera link
data modes do not function in all modes.
►Vertical binning can overload the HCCD in bright
images.
Binning can create super pixels in many sizes. Vertical binning will increase the power
consumption of the camera.
Vertical binning increases the frame rate. 2X
vertical binning is does not increase the frame rate by 2X as some time is needed to sum the image.
horizontal binning can be set to sum or to average
by using the divide function.
0x0001 = Divide sum by 2 0x0002 = Divide sum by 4 0x0003 = Divide sum by 8
Binning Example: Multi Spectral imaging
In a multi spectral imaging (MSI) application several camera are used, each with a different optical filter. Imag­es from each of the cameras are processed and merged. Examples of the MSI are vegetation detection and identification. Since MSI used optical filters of various wavelengths, the QE response of the sensor at these wavelengths will vary. To improve image brightness binning is used.
The RMV allows for independent binning in the horizontal and the vertical directions. The horizontal binning can be set from 1 to 16 pixels. The vertical binning can be set from 1 to 32 lines. Vertical binning is performed on chip in the HCCD and horizontal binning is performed as a digital summation of pixels with overflow checking.
The RMV can bin pixels in any shape such as 3x7 or 9x14. Please note that when the RMV is operating in Cam­era Link dual channel mode some horizontal binning modes are not available. This is due to the fact that the DVAL signal Is used in horizontal binning and the DVAL cannot distinguish between the active/inactive pixels on the two channels. DVAL is only valid for both pixels on the dual channel output. If this is a problem then use the single channel Camera Link readout mode.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 63
4.6: Exposure:
Auto Exposure: Overview
The RMV camera incorporates an auto exposure (AE) algorithm that allows the camera to auto­matically adjust exposure (and gain) for changing light levels. The AE uses the AED detector (section
6.1) to measure the brightness of an image by summing the pixels within a region of interest called the AED window. The AE algorithm compares the image brightness with a user defined minimum and maxi­mum brightness set-point. If the image is brighter than the maximum the AE algorithm will reduce the exposure or gain. If the image is darker than the minimum the AE algorithm will increase the brightness or gain.
If the image is brighter than the maximum the gain/ exposure is decreased
If the image is dimmer than the minimum the gain/exposure is increased
Diagram of AED value vs. Set-Point and Hysteresis
The AE algorithm can run in either gain mode or exposure mode. Gain mode is used if the expo-
sure reaches the user defined maximum exposure. At the point the AE is at maximum exposure it will switch to gain mode and increase the digital camera gain to attempt to brighten the image. At the limits of the gain and exposure modes the AE will set internal mode bits that indicate to the user that an external Iris should be opened or closed. If the user desires to disable gain or exposure mode they only need set the minimum and maximum values for that mode to the same value.
Maximum AED value
Maximum brightness = Set-Point + Hysteresis
Set-Point
Minimum brightness = Set-Point - Hysteresis
0
Open Iris Flag
Low light Bright light
Gain mode Exposure mode
Maximum
Gain
Diagram of exposure/gain modes and iris flags
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 64
Minimum
Gain = 1.0x
Maximum Exposure
Close Iris Flag
Minimum Exposure
4.6: Exposure:
Auto Exposure: Overview continued
The AE algorithm provides variables for the following:
Setting Comment
Minimum digital gain : Usually set to 1.0x Maximum digital gain : Limited by noise requirements Minimum exposure: Limited my smear requirements Maximum exposure: Motion blur sets maximum Set-Point: Target image brightness Hysteresis: Dead zone around set-point AE Detector: Last Frame Brightness AED Average: AED Average of previous frames. AE VSYNC count: Frame spacing between AE calculations AE Detector (AED) window: ROI on image to measure brightness Deterministic AE (Fast): Calculates next exposure/gain. Iterative AE (Slow): Steps to next exposure/gain. Exposure and gain denominator Used to determine iterative step size On Screen Display: Overlays AE data on image. Predefined Recce modes: Easy setup.
The AE algorithm calculates a new exposure, from the previous exposure, the set-point and the AED value. One of two methods for the new exposure calculation can be used. The first method is an iterative algorithm that uses the following equation:
NEW_EXPOSURE = CURRENT_EXPOSURE—(AED-SETPOINT) / EXP_DENOMINATOR NEW_GAIN = CURRENT_GAIN—(AED-SETPOINT) / GAIN_DENOMINATOR
In this algorithm the set-point is subtracted from the detector and divided by a scaling factor (denominator). This results in a calculated step that is applied to the exposure. The denominator value determines the step size. Setting the denominator to a larger number will reduce the step size and allow for a slower AE tracking. Reducing the denominator will increase the step size and increasing the AE tracking. However note that at some point, reducing the denominator the AE algorithm will be come un­stable. .
Iterative AE algorithm On Screen Display (Time Version)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 65
4.6: Exposure:
Auto Exposure: Overview continued
The second method is an deterministic algorithm that uses the following equation:
NEW_EXPOSURE = CURRENT_EXPOSURE * (SETPOINT/ AED) NEW_GAIN = CURRENT_GAIN * (SETPOINT/ AED)
In this algorithm the AE attempts to adjust to the change in light in a single step. The AE is changed by the ratio of the set-point to the detector. If the maximum/minimum of the gain/exposure limits are met by the ratio, then another step will be required to meet the correct exposure/gain setting
The AED window can be used in a small or large mode. The small mode is used for AED win­dows under 1Mega pixel in size. The large mode can be used for AED windows up to 16 million pixels in size. The AE Detector is a simply the sum of the pixels within the AED window. The AED set-point is a arbitrary number compared to the AED. As the AED window changes the maximum value of the AED will change. Set-point should change with it. Set-point is determined by the AED window size and User preference.
There are two major firmware versions of the AE algorithm. To determine the release version you can read more register 5, bit 15. If this bit is set then you have the new time-based algorithm.
The first release was based on primarily the free run mode and uses the free run erasure regis­ter as the basis for setting exposure values. The minimum and maximum exposure limits are set in units of erasure (not a simple concept). This first pass AE algorithm did not operate in trigger mode and re­quired an extensive knowledge of the camera operation.
The second release of the AE algorithm was a complete rewrite and uses time as the basis for all exposure calculations. The time units used are 16bit hexadecimal numbers that indicate time in mi­cro seconds x 10. Thus a time base number 0x3E8 = 1000 (decimal) = 10000 micro seconds = 10.00 milliseconds. This provides for a exposure range up to 0xFFFF = 65535 (decimal) = 65.535 millisec­onds. These time values are the same those used in the SetFreeRunTime and SetTriggeredTime com­mands. The new algorithm also supports the binning modes and partial scan modes (but not both at the same time).
Deterministic AE algorithm On Screen Display (Time version)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 66
4.6: Exposure:
Auto Exposure: Overview continued
The illunis GUI program can be used to setup and explore the AE algorithm. The Exposure and Readout dialog box contains the controls needed to activate and set the AE algorithm parameters.
In this example the AE is setup for the following:
MaxGain = 0x2000 = 2.0x maximum gain MinGain = 0x1000 = 1.0x minimum gain MaxExposure = 0x3F1 = 1009 dec = 10.09 ms maximum exposure MinExposure = 0x068 = 104 dec = 1.04 ms minimum exposure
MinBrightness = Setpoint—Hysteresis = 0x2000-0x0100 = 0x1F00 MaxBrightness = Setpoint + Hysteresis = 0x2000 + 0x100 = 0x2100 .
Exposure and Readout Dialog: AE controls
AE activation
Gain and Exposure Settings
Target brightness Settings
Status
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 67
4.6: Exposure:
Auto Exposure (Time Base)
Auto Exposure mode automatically adjusts the
brightness of the image through exposure and gain control. The limits of gain and exposure can be set. The AE algo­rithm uses the AE detector window to measure the bright­ness of the image. If the maximum exposure is reached the camera sets a status bit to indicate the iris be opened. There are two counter modes, a smaller mode for windows up to 1Mega pixel and a larger mode for windows up to 16 Mega pixels. The larger counter can cover the entire active area of the RMV-11000.
This function is quite complicated. For help contact dave@illunis.com.
Serial Commands
Target Index Command R/W Description
05 00 0x0004 = Mode Register #5
Bit# 15: AE Algorithm type
04 1d Auto Exposure W 0x0000 = Disable AE
04
04 1f AE Hysteresis R/W Added and subtracted from set point to de-
04 20 AE max gain R/W Maximum digital gain to use in AE
1e AE Set point R/W The detector value that the AE attempts to
Quick FAQ’s:
►The AE algorithm adjusts both exposure and gain
to control the image brightness.
►The limits of minimum and maximum gain can be
set. This allows for control of noise .
►AE does work in TPE mode, it does not work in
TME, TOE or TDE modes.
►AE uses digital gain (analog gain is fixed).
The exposure limits are set in us * 10 = ms / 100 Note: In free run mode (FRM) the max and min
exposures are checked and reset to the actual time calculated by the SetFreeRunTime function. So when you set a time, you can read it back to find the actual time used by the AE function.
R If Bit# 15 = 1 then AE algorithm is the newer
(time based) version.
0x0001 = Enable Fast AE 0x0002 = Enable Slow AE 0x0003 = Enable small AED counter (1mpix) 0x0004 = Enable large AED counter(16mpix) 0x0005 = Enable AED averaging 0x0006 = Disable AED averaging
reach (including hysteresis). The set-point is dependent on the AED win­dow size and AED maximum value
termine a stable area for the AE.
04 21 AE min gain R/W Minimum digital gain to use in AE (should be
04 22 AE max exposure R/W maximum exposure time 04 23 AE min exposure R/W Minimum exposure time 04 26 AE detector R Read by AE algorithm to determine bright-
04 31 AE detector Average R Running average of previous AED’s
04 32 AE Vsync Count R/W Set to 3 in FRM, 1 in TPE mode 04 33 AE exposure denominator R/W Use ~10 for indoor light
04 34 AE gain denominator R/W Use ~2 for indoor light
05 00 0x0004 = Mode Register #5
Bit# 1: AE Close IRIS Request
05 00 0x0004 = Mode Register #5
Bit# 0: AE Open IRIS Request
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 68
0x1000 = 1.0X gain)
ness of the image.
Use ~200 for outdoor lighting Smaller is faster, too small is unstable
Use ~20 for outdoor lighting
Indicates that the image is too bright for the
AE and the IRIS should be closed if possible.
Indicates that the image is to dim for the AE
and the IRIS should be opened if possible.
4.7: Exposure:
The RMV Strobe signal is a 3.3V LVTTL signal
that is active whenever the CCD is exposing and image. The strobe signal is very useful for analyzing and optimiz­ing imaging applications. The strobe can be used to acti­vate an illumination source. The strobe signal should cannot drive significant current and should be buffered if used in this fashion.
Serial Commands
Quick FAQ’s:
►The strobe signal can be used to determine frame
timing.
The strobe signal can be found on the RMV power
connector and is a 3.3V LVTTL signal.
The exposure detector measures the strobe signal
in increments of the pixel clock.
Target Index Command R/W Description 04 0e Strobe Control
Write 0x0000 = negative strobe polarity
0x0001 = positive strobe polarity 0x0002 = Active during free run 0x0003 = Inactive during free run (Always active during trigger)
Strobe Signal
Free Run Mode (FRM) STROBE:
Yellow = trigger, Blue = LVAL, Red = STROBE, Green = FVAL
Yellow = trigger, Blue = LVAL, Red = STROBE, Green = FVAL
CCD:4020 Exposure = 0x0400 lines
Trigger Programmed Exposure (TPE)
STROBE:
CCD:4020 TPD = 0x1000
Trigger Double Exposure (TDE) STROBE:
Yellow = trigger, Blue = LVAL, Red = STROBE, Green = FVAL
Free Run Synchronize (FRS) STROBE:
Yellow = trigger, Blue = LVAL, Red = STROBE, Green = FVAL
CCD:4020 TPD = 0x1000
CCD:4020 Exposure = 0x0400 lines
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 69
4.8: Exposure:
Analog to Digital Conversion
RMV cameras uses four analog to digital converters
(ADC) from Analog devices, one for each tap of the CCD sensor. Each ADC has a programmable analog gain stage that can be adjusted from 6dB to 40 dB. Each ADC also incorporates an active black clamp offset con­trol feature. The offset can be selected from 0 to 256 in 12 bit pixel space. The ADC also has a special feature for optimizing color sensor filter response.
Serial Commands
Target Index Command R/W Description 00 01 A: Gain R/W A channel controls 00 02 A: Clamp Level R/W 00 21 B: Gain R/W B channel controls 00 22 B: Clamp Level R/W 01 01 C: Gain R/W C channel controls 01 02 C: Clamp Level R/W 01 21 D: Gain R/W D channel controls 01 22 D: Clamp Level R/W
Quick FAQ’s:
►Single tap data is sent through the B tap only. ►Dual tap data is sent through both taps, with the B
tap on the left side and the A tap on the right side.
►Two tap data is reorded in the FPGA TRO circuit.
An ADC maximum gain of 40dB is 100X !
►Use the offset to raise the minimum signal above
zero to see all system noise.
12 bit
data
12 bit
data
The RMV uses Truesence CCD sensors with 4 tap readout. The A tap is the Left Top side and
the B tap is the Right Top side when viewed on the capture card. C tap is the Left Bottom side and D tap is the Right Bottom side when viewed on the capture card. Dual tap mode uses CCD Readout A and B. Single tap mode uses CCD Readout A .
ADC ‘A’
ADC ‘C’
ADC ‘B’
Active
Imaging
Area
ADC ‘D’
12 bit
data
12 bit
data
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 70
4.8.1: Exposure:
ADC: Gain
The ADG gain range is from 0 to 1023 counts which represents a gain of 2 to 36dB. The pre-gain of the CDS stage adds an additional 4dB of gain resulting in a range of 6 to 40dB. The gain curve follows a linear-in-dB characteristic.
ADC gain can be calculated with the following equation.
Gain (dB) = 5.1 + (0.0359 * code)
Where code is the range of 0 to 1023.
The optical black clamp loop removes residual offsets in the signal chain to track low frequency varia­tions in the CCD’s black level. During the optical black (shielded) pixel interval on each line, the ADC output is compared with a fixed black level reference, set by the offset value. The offset value can be programmed between 0 LSB and 255 LSB. The resulting error signal is filtered to reduce noise, and the correction value is applied to the ADC input through a D/A converter. The optical black clamp is turned on once per horizontal line.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 71
4.8.2: Exposure:
ADC: Offset
4.8.4: Exposure:
The ADC provides an active black clamping
circuit that removes the CCD’s optical black offset. This offset exists in the CCD’s shielded black reference pixels. The ADC removes this offset in the input stage to mini­mize the effects of gain change on the system black lev­el. During the optical black (shielded) pixel interval on each line, the ADC output is compared with a fixed black level reference selected by the value in the clamp regis­ter. The Clamp level is programmed in 8 bit resolution. If external digital clamping is used during the post pro­cessing the black clamp can be disabled.
Quick FAQ’s:
►Each tap has its own ADC and thus its own clamp-
ing circuit.
►Clamp values for each tap can be adjusted inde-
pendently. ►Clamp is often referred to as black offset. ►Use the clamp offset to raise the minimum signal
above zero to see all system noise. ►The DGO does not subtact the ADC clamp
value before gain and offset are applied !
Serial Commands
Target Index Command R/W Description
00 02 A: Clamp Level R/W 00 22 B: Clamp Level R/W 01 02 C: Clamp Level R/W 01 22 D: Clamp Level R/W
ADC: Black Clamp
CCD In
CDS VGA ADC
CLAMP CLAMP
RMV: Sensor, CDS, Analog to digital, and Clamping
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 72
2dB to 36 dB
12 bits
5.0 Overview
5.1 Tap Reorder
5.2 Digital Gain & Offset
5.3 Pixel Defect Correction
5.5 Look Up Table
5.5 Smear Reduction
5.6 Flat Field Correction
5.7 Automatic Tap Matcher
5.8 Histogram Equalization
Chapter 5: Image Processing
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 73
5.0: Image Processing
Overview
The RMV FPGA implements image processing features that are very useful to many imaging applications. These include reordering of the sensor image data, cor­rection of pixel defects and responses, mapping the video data using a programmable look up table, and video analysis tools.
The flow of image data from the CCD Taps to the LVDS output drivers is as follows:
a) Image data is read from the sensor in a raw form. The image data is represented as 12 bits
per pixel. The data is processed as 12 bits until the last stages where it is formatted into the selected Camera Link format.
b) Video Tap data is reorder to create a single corrected image
c) Video data is passed through the detectors in the reordered but unmodified format
d) The Video data is then optionally corrected for gross defects
d) The Video data is then optionally corrected for column gain.
d) The data is then passed through an optional look up table (LUT) . The LUT converts the 12-
bit video data to any 12-bit value.
g) The final processing stage formats the video data for the output LVDS circuitry. This stage
permits one or two channel output, bit and tap flipping, 8 and 12 bit/pixel formatting for cam­era link. This stage also provides the test pattern and on screen display functions
Notes: PIO = parallel IO from microprocessor.
Detectors
From ADC A ADC B
(a)
PIO
Tap
Reorder
(b)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 74
Image
(c)
Pixel
Defect
Correction
(d)
Column
Memories
Flat Field
Correction
(e)
Histogram
Look Up
Tables
(f)
On Screen Display
Camera
Link
Format
(g)
5.1: Image Processing
Tap Reorder
Tap Reorder (TRO) is used to combine the
two tap video output of the CCD into a single raster.
Serial Commands
Target Index Command R/W Description 04 00 Tap Enables W 0x0000 = Single Tap
04 1b System Registers R 0x0005 = TRO Left Start
Active
Imaging
Quick FAQ’s:
►TRO can be used to flip the image horizontally. ►TRO mode is automatic in two tap operation.
0x0001 = Dual Tap 0x0003 = Quad Tap
0x0006 = TRO Right Start 0x0007 = TRO Size
Area
ADC A
12 bit
data
Left Digital
Gain and
Offset
Tap Reorder and Digital Gain/Offset Circuits
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 75
Tap Reorder
Master Digital
Gain and
Offset
Note: This path shows A and B Taps being merged into one line at the Tap Reorder block. If the camera were in 4 tap mode, taps C and D are merged the same way. However, C and D start at the bottom of the image and work to the middle.
ADC ‘B’
Right Digital
Gain and
Offset
5.2: Image Processing
Digital Gain and Offset
Digital Gain and Offset (DGO) are used in
situations where analog gain and offset are either to course or not applicable. The digital gain ranges from
0.002 to 16x in 0.002 increments. The digital gain is rep­resented as a hex number where 0x1000 represents a gain of 1X. The digital offset ranges from –4095 to +4095 in increments on 1 count. These gain and offset ranges allow for full 12 bit precision without round-off error. There are separate DGO enables for free run and
Serial Commands
Target Index Command R/W Description 04 04 Mode Register W 0xM005 = Enable Digital Gain and offset
04 2c A Tap Digital gain R/W 04 2d A Tap Digital offset R/W 04 2e B Tap Digital gain R/W 04 2f B Tap Digital offset R/W
Master digital gain and offset (MDGO) are available on in FPGA revision E9 and above.
MDGO is independent of the Trigger and Free run modes. MDGO is used for histogram equilization.
04 36 Master Digital Gain R/W 04 37 Master Digital Offset R/W 04 38 Master DGO Enable R/W 1 = enable, 0 = disable
M = 0: Common—both, M = 8: Free Run only, M = 4: Trigger only
Quick FAQ’s:
►DGO can be used to match taps when ADC gain
and offset are not fine enough. ►DGO is applied to each tap before tap reorder. ►DGO can be set to be active in either free run
mode or triggered mode. ►DGO gain is applied first, then the offset is added. ►The DGO does not suptract the ADC clamp
offset before the gain/offset is applied. Thus
color processing may be incorrect unless ADC
clamp is set to zero.
►Master DGO affects both taps equally. ►Use Master DGO for gain and offset and individual
DGO for extra fine tap balancing.
0xM006 = Disable Digital Gain and offset
12 bit tap
video data
Digital Gain and Offset
Minimum
setting
Gain 0x0000 1/4096 1/4096 16x 1x 0x1000 0xFFFF Offset 0x8FFF -4095 1 +4095 +0 0x0000 0x0FFF
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 76
Minimum value
16 bit Gain 12 bit Offset
Digital Gain and Offset
Step Maximum
Maximum setting
value
12 bit
data
Nominal Value
Nominal Setting
5.3: Image Processing
Pixel and Column Defect Correction
Pixel defect correction (PDC) is used to correct
gross defects in an image sensor. The PDC circuit can force pixels to black or white, replace pixels with the left or right neighbor, or an average of their neighbors, or the last pixel corrected. There are separate PDC enables for free run and trigger modes. The PDC circuit can operate on either pixels or columns (not both). The column corrector is useful for DSC grade sensors. The PDC is loaded from a specially formatted file.
A Column defect corrector (CDC) can be used to
correct bad CCD columns. It uses the same correction codes. Row numbers are don’t care variables.
Serial Commands
Target Index Command R/W Description 04 1C PDM Mode W 0x0002 = Enable PDC
Quick FAQ’s:
►PDC is enabled for both trigger and free run
modes.
PDC operates on pixels. CDC operates on entire columns.
►Up to 511 pixels or columns can be corrected
►PDC is applied after the digital gain offset and
before Look Up Table. ► Defect data is stored in EEPROM. The load
commands below assume correction data is
already in EEPROM.
0x0006 = Disable PDC
0x0001 = Enable CDC 0x0003 = Disable CDC
Correction Type Code
No correction 0
Copy from right pixel 1
Copy from left pixel 2
Copy Average : (left+right)/2 3
Force White 4 Force Black 5
XOR pixel 6
Replicate 7
Copy Bayer Average : (2left+2right)/2 8
Copy Bayer right 9
Copy Bayer left 10
Not Defined 11-15
Pixel Defect Correction Values
Serial Number 4321 1,1, 4 ffff,ffff,ff
Pixel Defect Correction File
Example of white dot at sensor origin
Serial Number 4321 400,0,4 410,0,1 420,0,2 430,0,5 440,0,3 450,0,5 460,0,6 470,0,8 480,0,6 490,0,7 500,0,5 510,0,9 520,0,5 530,0,10 540,0,4 ffff,ffff,ff
Column Defect Correction File
Example of column
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 77
5.4: Image Processing
Look Up Table
Look Up Tables (OEM Only) are used to transform video data from sensor samples to any ar­bitrary value. Any 12bit value can be transposed into any other 12 bit value. LUT’s can be loaded from tables stored within the camera or directly from your application.
Serial Commands
Target Index Command R/W Description 04 04 Mode Register W 0xM007 = Enable LUT
04 18 LUT load command W 04 45 LUT mode R/W 0x0000 = load from com port
04 46 Gamma LUT W Loads a gamma LUT where data is a
M = 0: Common—both, M = 8: Free Run only, M = 4: Trigger only
Quick FAQ’s:
►LUT’s are 12 bit to 12 bit look up. ►The most common use for a LUT is gamma
correction.
►In FPFA revision E8 the LUT’s can be stored in the
camera EEPROM and can be reloaded each time the camera is powered with a single command.
►To save a LUT to EEPROM set the LUT mode to
0x0001 and load a LUT from the com port. The LUT will be saved to EEPROM and can be reload­ed from EEPROM with the LUT mode 0x0002
►When saving a LUT to EEPROM the load time will
be longer.
►The LUT EEPROM is not initialized for you.
0xM008 = Disable LUT
0x0001 = load from com port and save to EEPROM 0x0002 = load from EEPROM
number from 1-100 = gamma * 100 Note 45 dec = 0x2D hex
12 bit
data
(Some values omitted due to space constraints)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 78
4096 entry table
of 12 bit values
Look Up Table Block Diagram
0, 0 1, 96 2, 132 3, 159 4, 180 4093, 4094 4094, 4094 4095, 4095
Example LUT File of 0.45 gamma table
12 bit
data
5.4: Image Processing
Look Up Table Continued
The Look Up Table (LUT) is loaded using a sequence of character commands that are acknowledged with a return character from the camera. Each command com­ponent should wait for the return character and check its status.
The table must be loaded in two passed as the internal FPGA data path to the LUT memory is only a single byte wide. The high byte is loaded in the first pass, then the low nibble is loaded in the second pass.
The command sequence for loading the LUT is as follows:
Command Ack char Description
{w04450001FF} : ! Optional save to EEPROM while loading {w0418000000} : ! LUT load command > : ! Starts the LUT load sequence
Send 4096 entries for the LUT high byte
#xxxx : @ Loads a byte to the LUT where xxxx = hex number high byte Example: 0x1234 => 0x12
: $ Indicates end of first sequence
Send 4096 entries for the LUT low byte
&xxxx : * Loads a byte to the LUT where xxxx = hex number low byte Example: 0x1234 => 0x34
: % Indicates end of second sequence
Acknowledgement of load sequence
: ! Indicates end of LUT load
Once the LUT is saved into EEPROM it can be reloaded into the FPGA with:
Command Ack char Description
{w04450002FE} : ! Set to EEPROM load mode {w0418000000} : ! LUT load command from EEPROM
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 79
5.5 Image Processing
Misc. Functions
The Misc functions are provided for special applications .Please contact dave@illunis.com for specific implementation details on these functions.
Serial Commands
Target Index Command R/W Description 04 FF Base Reset Write Resets camera mode to:
Quick FAQ’s:
►The “Base Reset” is a convenient way to reset the
camera state.
free run, runs valid enabled, no binning, no partial scan, no line or text displays, no LUT, no PDC, no digital gain or offset, no test pattern, reset the LVAL and FVAL defaults. AE Detector set to small size. Auto tap matcher off
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 80
5.6: Image Processing
The CCD sensors with micro lens have a QE directly related to the angle of light entering the pixel. This angle dependency is due to the focus of the micro lens. Because the photo diode is narrower in the hori­zontal direction the QE changes much more on that axis. Thus a column based gain will correct this.
A Flat Field Correction circuit (FFC) applies a gain correction to each column based on a look up table (LUT). The FFC LUT is used to provide a gain curve to correct for the QE drop due to (light) angle into the micro lens pixel.
A master gain is provide for applications using a zoom lens that has variable aperture over the zoom range. By using the master gain the table values do not need to change with zoom position.
To create the FFC table image a flat field at 50%, average all lines within the image, smooth the data and create a compensation gain table to flatten the field. Generate the FFC LUT from the table.
Serial Commands
Flat Field Correction
Quick FAQ’s: ►The FFC correction is in the horizontal direc­tion only. Vertical FFC is very small compared to the horizontal FFC. ►The FFC data is loaded exactly like the LUT data. The maximum length of the FFC table size is a read command. All entries must be loaded. ►The FFC Master gain is formatted as
XXXX.YYYYYYYYYYYY where 1.000 = 1.0x, 1.800 = 1.5x ►In FPFA revision E8 the FFC can be stored in
the camera EEPROM and can be reloaded
each time the camera is powered with a single
command. ►To save a FFC to EEPROM set the LUT
mode to 0x0001 and load a FFC from the com
port. The FFC will be saved to EEPROM and
can be reloaded from EEPROM with the FFC
mode 0x0002 ►When saving a FFC to EEPROM the load
time will be longer. ►The FFC EEPROM is not initialized for you.
Target Index Command R/W Description 04 40 FFC table load W Loads FFC table based on mode
04 41 FFC test W Loads entire FFC table with data.
Where 0x1000 = 1x, 0x1800 = 1.5x 04 42 FFC Master gain R/W Sets master gain 04 43 FFC mode R/W 0x0000 = load from com port
0x0001 = load from com port
and save to EEPROM
0x0002 = load from EEPROM 04 44 FFC table size R Returns FFC table size
04 04 Mode Register W 0x0011 = Enable FFC
0x0012 = Disable FFC
Video
LVAL Start
DATA
Master FFC Gain
CNT
FFC LUT
FFC Corrected Data
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 81
Flat Field Correction Math
0
10
20
30
40
50
60
70
80
90
100
0 5 10 15 20 25 30
Angle (degrees )
Relative
Quantum
Efficiency
(% )
Horizontal
Vertical
5.6: Image Processing
Flat Field Correction Continued
Micro Lens QE roll off vs. incident light angle
the camera is re-powered. All 8192 values must be loaded from the com
port. The EEPROM load sequence can also be used once the EEPROM
Example FFC File with gain of 1x = 0x1000 = 4096 dec
Note: The table must be reloaded every time
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 82
0, 4096 1, 4096 2, 4096 3, 4096 4, 4096 5, 4096 6, 4096 7, 4096 8187, 4096 8188, 4096 8189, 4096 8190, 4096 8191, 4096
(values omitted due to space constraints)
table has been initialized.
5.6: Image Processing
Flat Field Correction Continued
The FFC circuit uses an internal (LVAL) signal within the camera to determine the starting column to apply the correction. The correction table is offset from image data by a certain number of pixels. so that the optical black area can be corrected.
The correction data offset does not change with LVAL start and is constant with the image raster. This data offset must be applied during the creation of the offset ta­ble. To create your own alignment test file simply create a FFC file, then edit the center pixel gain value to be 32000. A white line will appear at the center point.
Note that the leftmost number in the FFC file data is not used by the loader and can be used for user reference of offset data.
FFCC Data offset Camera Center pixel Offset
RMV-16000 2436 91 RMV-11002 59 2002 RMV-4020/4011 70 1023 RMV-2020/2001 46 799 RMV-2093/HDTV 61 959 RMV-340 66 319
0, 4096 1, 4096 2, 4096 3, 4096 4, 4096 2060, 4096 2061, 32000 2062, 4096 8187, 4096 8188, 4096 8189, 4096 8190, 4096 8191, 4096
Example RMV-11000 FFC
Test File with a mark at the
optical center of the table
(Some values omitted due to
space constraints)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 83
0, 4096 1, 4096 2, 4096 58, 4096 59, 6000 <- Start 60, 5999 2060, 4096 2061, 4096 <- Center 2062, 4096 8189, 4096 8190, 4096 8191, 4096 <- EOF
Example RMV-11000 FFC
Test File with offset data
(Some values omitted due to
space constraints)
5.6: Image Processing
Flat Field Correction Continued
The FFC table is loaded using a sequence of character commands that are
acknowledged with a return character from the camera. Each command component
should wait for the return character and check its status.
The table must be loaded in two passes as the internal FPGA data path to the LUT memory is only a single byte wide. The high byte is loaded in the first pass, then the low nibble is loaded in the second pass.
SIZE = 4096 for FPGA revisions < E8, 8192 for FPGA revisions > E8
The command sequence for loading the FFC table is as follows:
Command Ack char Description
{w04421000F0} : Sets the FFC master gain to 1.0x {w04430001FF} : ! Optional FFC mode = load from com port, save to EEPROM. {w0440000000} : ! FFC load command > : ! Starts the FFC load sequence
Send SIZE entries for the FFC LUT high byte
#xxxx : @ Loads a byte to the FFC LUT where xxxx = hex number high byte Example: 0x1234 => 0x12
: $ Indicates end of first sequence
Send SIZE entries for the FFC LUT low byte
&xxxx : * Loads a byte to the FFC LUT where xxxx = hex number low byte Example: 0x1234 => 0x34
: % Indicates end of second sequence
Acknowledgement of load sequence
: ! Indicates end of FFC load
Once the FFC is saved into EEPROM it can be reloaded into the FPGA with: (Note: FPGA revision E8 only !)
Command Ack char Description
{w04430002FE} : ! Set to FFC EEPROM load mode {w0440000000} : ! FFC load command
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 84
5.7: Image Processing
The two tap sensors require two sets of ana­log to digital converters and associated circuitry. Along with variances in the sensor manufacturing these two paths are rarely exactly the same. In addi­tion the effects of temperature, optics and gain can cause the tap imbalance to be visible.
Thus we need to balance the two taps through the use of analog gain. The Automatic Tap Matcher (ATM) uses the tap crack detectors to determine the tap mismatch and then applies analog gain to attempt to correct the imbalance.
The tap matcher runs at full speed of the crack detectors (every 7 frames).
4 Tap readout requires top/bottom matching. 4 Tap process matches taps B to A, D to C. When those are matched, D and C get moved together to match B and A.
Applications that will benefit from the ATM are Arial imaging, portrait photography, and microscopy. Applications that should not use ATM are PCB and LCD inspection, imaging with regular features and fixed patterns and PIV particle fields.
Automatic Tap Matcher
Quick FAQ’s: ►The ATM is designed to work with randomly changing images that present unstructured im­age data to the crack detectors. ►The crack detectors must be set to color mode if the sensor is a Bayer pattern color de­vice. It is a good idea to use the color mode all the time with the ATM. ►The ATM on/off state is saved with the cam­era state. ►The ATM will change the analog gains by no more than one count (up or down) on any given correction. ►The ATM correction is scene dependent. If the image data presented to the tap crack de­tectors is unbalanced then the ATM correction will cause the taps to become unbalanced. ►The ATM correction is performed by adjusting the right analog gain. ►NOTE: If the state of the camera is saved, the ATM modified analog gains will also be saved.
Serial Commands
Target Index Command R/W Description 09 00 Tap Match On/Off R/W 0 = off. 1 = on
05 00 Camera mode R 0x0000 = read mode register 1 04 11 OSD modes Write 0x000a enable color mode
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 85
Left
(B)
Mono Mode Crack
Detector
Right
(A)
0x000b disable color mode
Left
(B)
Color Mode Crack
Detector
Right
(A)
???
6.0 Overview
6.1 Brightness
6.2 Sharpness
6.3 Tap Matching
6.4 SNR
6.5 Raster Measurement
6.6 Temperature
6.7 Frame Counter
6.8 Built In Test
6.9 Exposure Time
6.10 White Balance/GNU
6.11 Saturated Pixel Count
Chapter 6: Detectors
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 86
6.12 Exposure Histogram
6.0: Image Detectors
Overview
The RMV incorporates several video "detectors" that analyze imagery in real time. The video detectors measure exposure, focus, SNR and tap-to-tap balance. The ex­posure detectors operate in several modes that allow the measurement of both im­age brightness and tap-to-tap matching. The focus detectors measure the sharpness of the image and can be used for auto focus optics. In addition to the detectors the windows of the detectors can be overlaid on the video image.
Detector Windows
Each detector has its own window that it uses for analyzing the video data. The Auto Exposure (AED) and Auto Focus (AFD) detectors and Signal to Noise Ratio (SNR) are updated on every image read from the sensor. The Tap Match (TMD) detectors monitor the taps cracks on A, B, C and D. There are also detec­tors along the lines at the middle of the image (top and bottom TMD). The detec­tor windows are:
SNR Window
TMD-Top
A
AED Window
TMD-A TMD-B
AFD
B
TMD-Top
D
C
TMD TMD-D
TMD-Bottom
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 87
TMD-Bottom
6.1: Image Detectors
Brightness Detector
Brightness detector measure the brightness of
the image within the auto exposure detector (AED) window. The AED sums the values of the image data within the win­dow. The top 15 bits of the summed data is output as the AED data. The MSb of the AED is a negative logic flag indicating that the data is valid. Thus if the highest bit (0x8000) of the AED is set then the AED value is INVALID. To change the AED position you must use the PIO twin command write, this requires writing the data first and then the address for the data second.
Serial Commands
Target Index Command R/W Description
04 1d Auto Exposure Detector
04 19 Show Detectors W 0x0002 = AE Window
04 1a Read Detectors R 0x0002 = AE Window 03
03 03
03 03
03 03
03
0c 13
0c 13
0c 13
0c 13
(Counter)
AE Detector Data Top Register Address
AE Detector data Right Register Address
AE Detector data Left Register Address
AE Detector data Bottom Register Address
Quick FAQ’s:
►Brightness is also called AED ►The AED window size is programmable. ►The small AED was designed to use a window size
of 1M pixel, thus a window of 1k x 1k pixels is
standard. ►The large AED window can measure up to 16Mpix, ►If the high bit of the AED is set then the data is not
vaild. Data can become invalid during a ASYNC
RESET mode and a triggered image . ►The AED window can be displayed as an overlay.
W 0x0003 = Enable small AED window
0x0004 = Enable large AED window
0x0009 = disable
R/W Location in units of 16 lines
0x003d = Set AE Top location
R/W Location in units of 16 pixels
0x003e = Set AE Right location
R/W Location in units of 16 pixels
0x003c = Set AE Left location
R/W Location in units of 16 lines
0x003F = Set AE Bottom location
TOP
BOTTOM
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 88
LEFT
RIGHT
AED Window
6.2: Image Detectors
Sharpness Detector
Sharpness detector uses a fixed window cen-
tered on the image area and 512 x 512 pixels in size. The sharpness detector can be used as a auto focus detector (AFD). The AFD calculates sharpness as the summation of the difference of the pixels within the window.. The top 15 bits of the summed data is output as the AFD data. The MSb of the AFD is a negative logic flag indicating that the data is valid. Thus if the highest bit (0x8000) of the AFD is set then the AFD value is INVALID.
Serial Commands
Target Index Command R/W Description 04 19 Show Detectors W 0x0003 = AF Window
04 1a Read Detectors R 0x0003 = AF Window
Quick FAQ’s:
►The AFD window size is fixed in the center of the
image.
►If the high bit of the AFD is set then the data is not
vaild. Data can become invalid during a ASYNC
RESET mode. ►The AFD window can be displayed as an overlay. ►The AFD data can be displayed as video data
showing either the first or second derivative. ►The AF value peaks sharply when the image is at
it’s maximum sharpness.
0x0007 = AF Data in AF Window 0x0008 = AF Data Full Screen 0x0009 = disable
Maximum
Sharpness
Detector
Value
AF
AFD Detector Window Location
Lens Focus Position
AFD Detector Derivative Image
(whole screen)
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 89
6.3: Image Detectors
Tap Matching Detectors
Tap Matching Detectors (TMD) are used to
determine how close the taps match in multiple tap sys­tems. The TMD are single (or double in the case of color mode) column and row wide windows that are located at the sensor tap boundary. The TMD sum all of the pixels in the window are over 4 frames. The TMD works best with images that are not static. The TMD data does not become valid until the 5th frame readout. The user must implement a matching algorithm using these detector values. It is recommended that the Digital Gain be used for this.
A two tap readout can ignore TMD C and D
along with the TMD Top and Bottom. Two tap readout only reads image data out of A and B taps.
Serial Commands
Target Index Command R/W Description 04 19 Show Detectors W 0x0000 = Tap A Crack
04 1a Read Detectors (Left—Right) R 0x0000 = Tap A/C Crack
FE 0D Read Detectors (Top– Bottom) R Top Line when BIT5 of PIO x57 is 0
04 11 OSD modes W 0x000a enable color mode
Quick FAQ’s:
►The TMD’s are used to determine the relative
brightness of the two and four sensor taps. ►The TMD’s can be displayed as an overlay. ►The color mode makes the TMD two pixels wide so
that the four colors of the Bayer pattern are sam-
pled. ►The TMD’s vertical limits are set by the AED win-
dow.
0x0001 = Tap B Crack 0x0009 = disable
0x0001 = Tap B/D Crack A and B when BIT5 of PIO x57 is 0 C and D when BIT5 of PIO x57 is 1
Bottom Line when BIT5 of PIO x57 is 1
0x000b disable color mode
TMD-Top
TMD-A
TMD-C
TMD-Bottom
TMD-B
TMD-D
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 90
Left
(B)
Mono Crack
Detector
Right
(A)
Left
(B)
Right
(A)
Color Crack
Detector
6.4: Image Detectors
SNR: Signal and Noise Detectors
The SNR detectors are used to measure sys-
tem noise and signal amplitude. From these measure­ments a signal to noise ratio can be calculated. See the following section for the mathematics required to calcu­late SNR. By dividing the SNR sum values be the num­ber of samples, the accuracy of the black clamping can be measured. There are separate detectors for the left and the right taps.
In 4 tap readout, there are two additional SNR
detectors.
Serial Commands
Target Index Command R/W Description 04 19 Show Detectors W 0x0004 = SNR Left
04 1a Read Detectors R 0x0004 = Left SNR Sum
Quick FAQ’s:
►SNR detectors are very useful for measuring cam-
era performance. ►SNR can be measured live and displayed as on
screen text.
The SNR window position is programmable. Thus
the active imaging area can be used to measure
noise. Call or email info@illunis.com for details. ►The SNR window vertical limits are set by the AED
window.
0x0005 = SNR Right 0x0009 = disable
0x0005 = Left SNR Sum of Squares 0x0006 = Left SNR Number of Samples 0x0007 = Right SNR Sum 0x0008 = Right SNR Sum of Squares 0x0009 = Right SNR Number of Samples 0x000a = Left SNR Max Value 0x000b = Right SNR Max Value
A and B when BIT5 of PIO x57 is 0 C and D when BIT5 of PIO x57 is 1
SNR Window
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 91
Optical Black Pixels
Active Pixels
The RMV can calculate SNR on each frame by analyzing the noise in the black clamp areas of the CCD and measuring the maximum pixel brightness in the image area. The detector measures:
N Number of pixels in SNR detector window
SUM Sum of the pixel values in the SNR window
SQR Sum of the square of the pixel values in the SNR window
MAX Maximum pixel value of the tap area intersected by AE window area
From these numbers we calculate
Bmean = SUM / N;
Bsdev = √ ((N * SQR - SUM * SUM) / ( N * (N -1)));
Bmean must be greater than Bsdev * 3
If it is not then the black clamp must be raised
SNR = 20 * log ((MAX - Bmean) / Bsdev)
DNR = ((MAX - Bmean) / Bsdev;
BITS = log (DNR) / log (2); where BITS < 4095
RMS noise in ADC counts = Bsdev—1.0
C Code to calculate SNR from detector values
// C Code to Calculate SNR in DB
fsum = (float) snr_sum * 16; // 16 is sum scale fsqr = (float) snr_sqr * 16 * 64; // 64 is mult scale, fn = (float) snr_n; fmax = (float) snr_max; fblk_mean = fsum/fn; fstd_dev = sqrt( (fn * fsqr - fsum * fsum) / (fn * (fn -1)));
if( fblk_mean > (3 * fstd_dev) ) // Make sure noise is measurable { fdr = (fmax - fblk_mean) / fstd_dev; fsnr = 20.0 * log10( fdr ); bits = log( fdr ) / log( 2 ); // ENOB }
System Noise Calculation:
The noise can be calculated as fstd_dev from above in counts. at 244.14uV/count we can get the uV of noise
For example the KAI-11000 color camera has a RMS count of 2.3, and 13uV/e
A count of 2.3 => 244.14*2.3 = 561uV of noise Then 561uV/13uV/e = 43e
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 92
6.5: Image Detectors
Raster Detectors
Raster detectors (RD) are used to measure the
size of the video image output by the RMV camera link signals. The RD’s count the number of pixels per line and the number of active pixels per line. The RD’s also count the number of lines per frame and the number of active lines per frame. Because the RMV can be set to any number of modes the RD circuit is vital to correctly configuring your capture device.
Serial Commands
Target Index Command R/W Description 04 1b System Registers R 0x0000 = Read Pixels/line
04 14 Line of Interest R/W Line number from top of image (Plus FVAL start)
Quick FAQ’s:
►LVAL = Line VALid: This Camera Link signal indi-
cates when pixel data is valid with a line.
►FVAL = Frame VALid: This Camera Link signal
indicates when line data is valid with a Frame.
►LVAL start and stop define a lines active pixels and
are in some weird internal FPGA counting unit.
►FVAL start and stop define a frames active lines
and are directly related to the sensor design.
The Raster line detectors use the “line of Inter-
est” line from the On Screen line plot function to determine which line is measured. The line of interest must be in the visible image data or these detectors will read zero !
0x0001 = Read Active pixels/line (in LVAL) 0x0002 = Read Lines per frame 0x0003 = Read Active lines per frame (in FVAL)
LVAL
Active Pixels Per Line
Active Area
FVAL
Lines Per Frame
Active Lines Per Frame
Pixels Per Line
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 93
6.6: Image Detectors
Temperature Detector
Temperature of the RMV camera is ob-
tained though a solid state device located on the CCD
PCB. The temperature sensor is located as close as possible to the warmest component in the camera. The temperature sensor doe not read the CCD temperature.
Serial Commands
Target Index Command R/W Description 04 07 Camera Temperature R Temperature in degrees Celsius
Example Read 0x003D = 61(decimal) degrees Celsius
Quick FAQ’s:
►Temperature is read in degrees Celsius. ►Temperature accuracy is 0.5 degrees.
6.7: Image Detectors
Frame Counter
A Frame Counter is implemented in the RMV
FPGA. Each frame read has a unique count. You can read the frame count immediately after the rising edge of FVAL. The frame counter is displayed in the On Screen
Quick FAQ’s:
►The frame counter is a 16 bit counter that rolls over
to zero when the maximum count of 65535 is reached.
Serial Commands
Target Index Command R/W Description 04 1A Read Detector R 0x000A = Frame Counter 04 1A Reset Frame Counter to Zero W 0x000A = Reset to Zero
6.8: Image Detectors
Built In Test
Built In Test (BIT) is a key feature of the RMV
cameras that indicate hardware, software and communi­cation faults. Use the status registers to determine the BIT status.
Serial Commands
Target Index Command R/W Description 04 0c Micro Power On
W 0x0000 = Clear Bit Status Register
BIT
Quick FAQ’s:
►PBIT = Initiated Power On BIT
0x0001 = PBIT
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 94
6.9: Image Detectors
Exposure Time Detector
Exposure Time of the RMV camera is meas-
ured with a very high resolution counter circuit. The counter contents are cleared on the electronic erasure pulse and saved on the photo diode transfer pulse. The count resolution is the pixel clock so a very accurate measurement of the exposure can be made.
Serial Commands
Target Index Command R/W Description 04 0x27 Camera Exposure R 0x12 = Low Word (2 bytes)
Trigger
SUB (Erase)
Strobe
Quick FAQs: Quick FAQ’s:
Temperature is read in degrees Celsius. ►Exposure is measure in pixel clock periods
Temperature accuracy is 0.5 degrees.
For a 40Mhz clock the period is 0.025us For a 30Mhz clock the period is 0.033us ►The maximum count is 4294967295 (0xFFFFFFFF) For a 40Mhz clock the maximum is 107 seconds For a 30Mhz clock the maximum is 143 seconds
0x13 = High Word (2 bytes)
Transfer Pulse
Exposure
Exposure counter is
cleared and count begins
Exposure counter is
saved and count ends
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 95
6.10: Image Detectors
White Balance / GNU
The RMV can be configured as a color camera by utilizing a Bayer patterned sensor. For optimum pro­cessing of the Bayer pattern the gains of the two green pixels within each pattern must be matched for uni­formity. The RMV incorporates a special circuit that measures a 32x32 pixel area (consisting of 16x16 Bayer quads) for brightness of each of the Bayer col­ors. Each of the Bayer colors is integrated over the 32x32 pixel area and are read from the CL detector circuit. The detector can be selected for the left side tap or the right side tap. Wait 2 VSYNCS after chang­ing this bit before reading the GNU/WB data.
Serial Commands
Target Index Command R/W Description 04 1b Read WB/GNU detector R 0x0019 = clr0 (GREEN-RED)
04 35 WB/GNU tap select R/W 0x0000 = left tap (Power on default)
Quick FAQ’s:
►To use the detectors for white balance place the
detector location on a calibrated gray color patch and adjust the RGB values to be the same.
►To use the detectors for GNU place the detector
location on a uniform green patch and balance the Green values to be the same.
►The detector window can be seen by activating the
AE detector window. The WB/GNU is the small window in the center.
►Wait 2 vsyncs after selecting or changing the WB/
GNU detector settings before reading the detector .
►The WB/GNU detector is read as 16 bit value while
the OSD is 8 bit.
►Note: Some sensors can have colors in another
order from the diagram below.
0x001a = clr1 (RED) 0x001b = clr2 (BLUE) 0x001c = clr3 (GREEN-BLUE)
0x0001 = right tap
CLR1 CLR0
CLR3 CLR2
The four colors of the Bayer pattern
Left Side GNU/WB
Detector
Right Side GNU/WB
Detector
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 96
6.11: Image Detectors
Saturated Pixel Counter
The Brightness detector is used to measure the
brightness of the image within the auto exposure detector (AED) window. The Saturated Pixel Counter (SPC) is used to count the number of saturated pixels within the AED win­dow. The SPC has a maximum value of 16 million pixels. The SPC represents the top 16bits of a 24 bit counter that counts pixels whose upper seven bits (of a twelve bit sam­ple) are all ones.
Serial Commands
Target Index Command R/W Description
04 1a Read Detectors R 0x000D = # Sat Pixels 04 1a Read Detectors R 0x001D = # Sat Pixels (older version)
03 03
03 03
03 03
03 03
0c 13
0c 13
0c 13
0c 13
AE Detector Data Top Register Address
AE Detector data Right Register Address
AE Detector data Left Register Address
AE Detector data Bottom Register Address
Quick FAQ’s:
►The Saturated Pixel Counter (SPC) uses the AE
window as the ROI for measurement. ►The AED window size is programmable. ►The SPC register value must be multiplied by 256
to calcutate the total number od saturated pixels. ►The SPC is useful for determining the set point in
the AE alogrithm.
R/W Location in units of 16 lines
0x003d = Set AE Top location
R/W Location in units of 16 pixels
0x003e = Set AE Right location
R/W Location in units of 16 pixels
0x003c = Set AE Left location
R/W Location in units of 16 lines
0x003F = Set AE Bottom location
TOP
BOTTOM
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 97
LEFT
RIGHT
AED Window
6.12: Image Detectors
Exposure Histogram Detector
The Brightness detector is used to measure the brightness of the image within the auto exposure detector (AED) window.
The Exposure Histogram Detector is used to measure the number of pixels at specific brightness levels through the concept of bins. Bins are used to count the number of pixels within two ADC values that occur in the AED window. The bin sizes are determined by three regis­ter values that define points in the ADC count. There are five bins. The typical usage of the bins are: BIN0 is used for black measurement, BIN1 and BIN2 are used to meas­ure mid range, BIN3 is used to measure bright points and BIN4 is used to measure saturated pixels.
In addition to the histogram bin counts a reference count of the number of pixels in the AED window is provid­ed. This reference count can be used easily to calculate percentages of pixel counts within the bins.
Serial Commands
Target Index Command R/W Description 04 1a Read Bin and AED size values R 0x0011 = Bin #0
03 03
04 19 Show Detectors W 0x000A = Blooming
0c 13
AE Histogram Point Register Address
Quick FAQ’s:
►The Saturated Pixel Counter (SPC) uses bin 4. ►The bin register values are in units of 16 DN. ►The PT1 value is usually 4X the black clamp ►The PT2 value is usually one half the max count ►The PT3 value is usually 85% the max count ►Typical register values for the points are
PT1: 0x08 = 0x08 * 16dec = 128 dec DN PT2: 0x80 = 0x80 * 16dec = 2048dec DN PT3: 0xE0 = 0xE0 * 16dec = 3568 dec DN
►The Auto exposure OSD displays the bin counts
and a new super cool bar graph display !
0x0012 = Bin #1 0x0013 = Bin #2 0x0014 = Bin #3 0x0015 = Bin #4 = # sat pixels 0x0016 = Number of pixels in
R/W Location in histogram bin point in units
of 16 DN 0x004A = Set AEH point #1 0x004B = Set AEH point #2 0x004C = Set AEH point #3
0x0009 = disable
BIN0
Pixels @ DN
DN
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 98
0
PT1
BIN1
PT2
BIN2
PT3 PT4 = 4094
BIN3
BIN4
4095
Chapter 7: OSDisplays
Rugged Machine Vision
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 99
7.0 Overview
7.1 Text
7.2 Line Plot
7.3 Column Plot
7.4 Synthetic Patterns
7.5 Detector Display
7.6 Histogram
7.0: On Screen Displays
Overview
The eRugged nature of the RMV name comes in part from the cameras ability to display perfor­mance and image data as on screen overlays. The RMV FPGA contains circuits that can do the follow­ing:
Display On Screen Text with:
Programmable character font.
128x32 character screen memory.
Screen memory can be positioned anywhere on image.
Text can be normal or double size.
Text can have transparent or opaque backgrounds.
Display a plot of video data with:
Horizontal (line plot) or Vertical (column plot) display.
Selectable line/column of interest for display.
Selectable baseline position for the plot data.
Scalable plot size from 1 pixel to full scale (4095).
Plot can be drawn as a single line or as a bar plot.
All data can be plotted, including the over scan areas.
In addition to the on screen displays the RMV has several image detectors that are used to calculate performance data in real time. The data is analyzed and displayed using the On Screen Text feature. The following screen image shows some of the on screen functions in operation.
RMV Operations Manual Revision Copyright illunis LLC, 2014 Page 100
Loading...