FastVision FastCamera13 Operation & User’s Manual
Text of the manual
�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������������������
FASTCAMERA SERIES
FASTCAMERA13
USER’S MANUAL
30002-50013
Copyright 2003 by FastVision, LLC.
All rights reserved. This document, in whole or in part, may not be copied, photocopied,
reproduced, translated, or reduced to any other electronic medium or machine-readable form
without the express written consent of FastVision, LLC.
FastVision makes no warranty for the use of its products, assumes no responsibility for any error,
which may appear in this document, and makes no commitment to update the information
contained herein. FastVision, LLC. retains the right to make changes to this manual at any time
without notice.
Document Name:
FastCamer13 User’s Manual
Document Number:
30002-50013
Revision History:
1.0
January 20,2003
1.1
March 26,2003
1.2
March 30,2003
1.3
April 9, 2003
Trademarks:
FastVision is a registered trademark of FastVision, LLC..
Channel Link is a trademark of National Semiconductor.
3M is a trademark of 3M Company
MS DOS is a registered trademark of Microsoft Corporation
SelectRAM is a trademark of Xilinx Inc.
Solaris is a trademark of Sun Microsystems Inc.
Unix is a registered trademark of Sun Microsystems Inc.
Virtex is a trademark of Xilinx Inc.
Windows, Windows 95, Windows 98, Windows 2000, Windows NT, and
Windows XP are trademarks of Microsoft
All trademarks are the property of their respective holders.
FastVision, LLC.
131 Daniel Webster Highway, #529
Nashua, NH 03060
USA
Telephone: 603-891-4317
Fax: 603-891-1881
Web Site:
http://www.fast-vision.com/
Email:
[email protected], or [email protected]
TABLE OF CONTENTS
Copyright Notice …………………………………………………………………………………..3
Table of Contents ………………………………………………………………………………... 5
1.
INTRODUCTION .................................................................................................................7
2.
FEATURES AND SPECIFICATIONS FASTCAMERA 13..................................................7
3.
POWER REQUIREMENTS ...............................................................................................11
4.
TIMING ..............................................................................................................................11
5.
TRIGGER MODES ............................................................................................................11
6.
CAMERA DATA FLOW ....................................................................................................13
7.
THE STANDARD CAMERA FUNCTIONALITY ...............................................................13
8.
EXPOSURE CONTROL....................................................................................................13
9.
PIXEL GAIN AND OFFSET ..............................................................................................15
10.
MEMORY OPTION (MEM?)..............................................................................................15
11.
LOOKUP TABLE OPTION (LUT?)...................................................................................16
12.
DATA FORMAT FUNNEL.................................................................................................16
13.
INTERNAL CAMERA MEMORY ......................................................................................17
14.
USB CAMERA OPTION ...................................................................................................22
15.
CAMERA CONTROL PROGRAM ....................................................................................23
16.
APPLICATION ENVIRONMENTS ....................................................................................24
17.
TROUBLESHOOTING ......................................................................................................28
18.
FASTVISION TECHNICAL SUPPORT.............................................................................29
The FastCamera13 is a 1.3 megapixel CMOS camera with internal memory and FPGA’s that
enable it to do real-time processing. Thus it is what one would term a “smart” camera. The
standard programming that is supplied with the base camera forms the basis of the most used
and demanded function for data processing. It is expected that each customer may wish to
customize this programming for its use. This can be achieved by purchasing additional IP from
FastVision or in-house development. Inquires or discussions are always welcome
2.
FEATURES AND SPECIFICATIONS FASTCAMERA 13
The block diagram below shows the major subsystems in the camera. The camera is designed to
support many different applications by customization of the programmable logic in the camera.
FastVision or the Customer can customize the size and content of the FPGAs and memory in the
camera to contain many different features, processing algorithms, and storage schemes. This
manual discusses the ‘Standard’ version of the cameras. Customization of the FPGAs, in the
camera, requires significant support from FastVision, please contact FastVision for a quote, for
the development tools and support.
1.3 MPixel
CMOS
Sensor
XC2VX000
FPGA
1-8 Million Gates
Camera
Control
LVDS
Link Receivers
(CC1-4)
(Async Serial)
66 MHz
Channel
Link Driver
66 MHz
Channel
Link Driver
(Optional)
128-1000MB
DDRAM
200 MHz
Three 85 MHz
Channel Link
Drivers
FPGA
Boot
Flash
Memory
Controller
FPGA
Power
Supply
2-4 MB
SRAM
CC1
CC2
CC3
CC4
•
The FastCamera13 uses a 1280H x 1024V (1.3 megapixel) CMOS digital image
sensor capable of 500 frames/second operation at full resolution
•
1280H x 1024V image resolution
12-micron-square active-pixel photodiodes
•
500+ frames per second, progressive-scan
•
At full resolution, frame rate can go up to 500,000 fps at 1 x 1280pixels
•
Monochrome or color (Bayer Pattern)
•
Ten (10) parallel output ports
•
Photobit® TrueColorTM Image Fidelity
•
On-chip TrueBit® Noise Cancellation
•
On-chip 10-bit analog-to-digital converters
•
FPGA and memory-based configurable interface formats and onboard
processing
•
Supported by a full range of software tools
•
Binning in order to achieve increased sensitivity at full frame rates
•
Optional SRAM for ultra fast processing
•
Optional additional DDRAM and increased FPGA size for additional processing
capability
•
Trigger-able global electronic shutter (sync./async. modes)
•
C holder mount (F with adaptor)
2.1
IMAGE SENSOR SPECIFICATIONS:
•
Uses Micron Imaging's MI-MV13 sensor
•
1280 x 1024 x 8 bits @ 500 fps (10 bits 400 fps)
•
15.36 mm x 12.29 mm active area
•
12-micron square active pixels
•
40% Fill Factor
•
Monochrome or color (Bayer Pattern)
•
On-chip Noise Cancellation
•
Dynamic range 59 db
•
Monochrome: 1000 bits per lux-second @ 550 nm
•
Shutter 99.9% efficiency
Noise 58 db (10 bit mode lowest sensor gain setting, nominal pixel of 512
counts)
2.3
Physical Specifications
12.7mm
0 ref
39.5m
m
74.0mm
0 ref
7mm
132mm
12.7mm
7mm
0 ref
0 ref
39.5mm
79.0mm
J3
J2
P2
FastCamera13
Front View
FASTCAMERA13 CASE AND
MOUNTING DIMENSIONS
FastCamera13
Side View
FastCamera13
Back Panel
FastCamera13
Bottom View
2.4.1 Power Connector HR10A-10R-12PB
Pin
Function
1
Ground
2
+5 Volts
3
Ground
4
Reserved for application dependent I/O
5
Ground
6
+5 Volts
7
Reserved for application dependent I/O
8
Ground
9
+5 Volts
10
Reserved for application dependent I/O
11
+5 Volts
12
Reserved for application dependent I/O
2.4.2 Data Connector J2
Pin
Signal
Pin
Signal
1
Ground
14
Ground
2
CL1_TXOUT0N
15
CL1_TXOUT0P
3
CL1_TXOUT1N
16
CL1_TXOUT1P
4
CL1_TXOUT2N
17
CL1_TXOUT2P
5
CL1_TXCLKOUTN
18
CL1_TXCLKOUTP
6
CL1_TXOUT3N
19
CL1_TXOUT3P
7
SERTCP
20
SERTCN
8
CC1N
21
SERTFGP
9
CC2P
22
CC1P
10
CC3N
23
CC2N
11
CC4P
24
CC3P
12
SERTFGN
25
CC4N
13
Ground
26
Ground
2.4.3 Data Connector J3
Pin
Signal
Pin
Signal
1
Ground
14
Ground
2
CL2_TXOUT0N
15
CL2_TXOUT0P
3
CL2_TXOUT1N
16
CL2_TXOUT1P
4
CL2_TXOUT2N
17
CL2_TXOUT2P
5
CL2_TXCLKOUTN
18
CL2_TXCLKOUTP
6
CL2_TXOUT3N
19
CL2_TXOUT3P
7
Application Specific
I/O (P)
20
Application Specific
I/O (N)
8
CL3_TXOUT0N
21
CL3_TXOUT0P
9
CL3_TXOUT1N
22
CL3_TXOUT1P
10
CL3_TXOUT2N
23
CL3_TXOUT2P
11
CL3_TXCLKOUTN
24
CL3_TXCLKOUTP
12
CL3_TXOUT3N
25
CL3_TXOUT3P
Power requirements are a strong function of the application, Camera is 15 Watts worst case, 5 to
10 Watts typical. Low noise +5 Volt input recommended. Internally the camera has high
frequency switching supplies that convert the 5 volt input to 3.3, 2.5 and 1.8 volts.
4.
TIMING
�
Camera Clock is configurable from 25 to 85 MHz depending on the application.
�
Pixel data is valid when LVAL, FVAL and DVAL are true.
�
Minimum two clocks LVAL and FVAL inactive between lines and frames.
�
CC4 reserved for application specific needs.
5.
TRIGGER MODES
Trigger modes are selected by serial commands.
Free Running, camera generates frames without triggers.
CC1 Positive edge triggered.
CC1 When active, expose, falling edge reads out the sensor.
Sensor readout can be in parallel with exposure.
The camera can be read out with 1,2, or 3 camera links, the serial port (for the really patient), or
via the USB port. Only image data from the selected ROI is sent. The camera can be configured
to read out when the image is taken, to read out from memory on serial command or the CC2
positive edge.
Data formats supported:
Mode
Camera Link Format
MSB -------------------------------- LSB
Read Out Mode
0
CL1_A[7:0]
Single tap 8 bits
(Basic) (default)
1
CL1_B[1:0],CL1_A[7:0]
Single tap 10 bits
(Basic)
2
CL1_A[7:0] even pixels (0,2,...)
CL1_B[7:0] odd pixels (1,3,...)
Two Taps 8 bits
(Basic)
3
CL1_B[1:0],CL1_A[7:0] even
CL1_B[5:4],CL1_C[7:0] odd
Two Taps 10 bits
(Basic)
4
CL1_A[7:0] Red, Y
CL1_B[7:0] Green, U
CL1_C[7:0] Blue, V
Three Taps 8 bits
(Color) (Basic)
5
CL1_B[1:0],CL1_A[7:0] Red, Y
CL1_B[5:4],CL1_C[7:0] Green, U
CL2_D[1:0],CL2_C[7:0] Blue, V
Three Taps 10 bits
(Color) (Medium)
6
CL1_B[7:0],CL1_A[7:0]
CL1_A[4:0] Red, U
CL1_B[2:0],CL1_A[7:5] Green, Y
CL1_B[7:3] Blue V
One tap 16 Bits
RGB565 (Basic)
CL1_A[7:0] pixels 4*n+0
CL1_B[7:0] pixels 4*n+1
CL1_C[7:0] pixels 4*n+2
CL2_A[7:0] pixels 4*n+3
Four Taps 8 bits
(Medium)
8
CL1_B[1:0],CL1_A[7:0] 4*n+0
CL1_B[5:4],CL1_C[7:0] 4*n+1
CL2_C[1:0],CL2_B[7:0] 4*n+2
CL2_C[4:5],CL2_A[7:0] 4*n+3
Four Taps 10 bits
(Medium)
9
CL1_A[7:0] pixels 5*n+0
CL1_B[7:0] pixels 5*n+1
CL1_C[7:0] pixels 5*n+2
CL2_A[7:0] pixels 5*n+3
CL2_B[7:0] pixels 5*n+4
Five Taps 8 bits
(Medium)
10
CL1_B[1:0],CL1_A[7:0] 5*n+0
CL1_B[5:4],CL1_C[7:0] 5*n+1
CL2_C[1:0],CL2_B[7:0] 5*n+2
CL2_C[4:5],CL2_A[7:0] 5*n+3
CL3_C[1:0],CL3_B[7:0] 5*n+4
Five Taps 10 bits
(Full)
11
CL1_A[7:0] R even
CL1_B[7:0] G even
CL1_C[7:0] B even
CL2_A[7:0] R odd
CL2_B[7:0] G odd
CL2_C[7:0] B odd
Six Taps 8 bits (Color)
(Medium)
12
CL1_B[1:0],CL1_A[7:0] R even
CL1_B[5:4],CL1_C[7:0] G even
CL2_C[1:0],CL2_B[7:0] B even
CL2_C[4:5],CL2_A[7:0] R odd
CL3_C[1:0],CL3_B[7:0] G odd
CL3_C[5:4],CL3_A[7:0] B odd
Six Taps 10 bits
(Color) (Full)
13
CL1_A[7:0] 8*n+0
CL1_B[7:0] 8*n+1
CL1_C[7:0] 8*n+2
CL2_A[7:0] 8*n+3
CL2_B[7:0] 8*n+4
CL2_C[7:0] 8*n+5
CL3_A[7:0] 8*n+6
CL3_B[7:0] 8*n+7
Eight Taps 8 bits (Full)
14
CL1_B[1:0],CL1_A[7:0] 8*n+0
CL1_B[5:4],CL1_C[7:0] 8*n+1
CL2_B[1:0],CL2_A[7:0] 8*n+2
CL2_B[5:4],CL2_C[7:0] 8*n+3
CL3_B[1:0],CL3_A[7:0] 8*n+4
CL3_B[5:4],CL3_C[7:0] 8*n+5
CL2_FVAL,CL2_LVAL,CL2_SP,CL1_SP,
CL1_B[7:6],CL1_B[3:2] 8*n+6
CL3_FVAL,CL3_LVAL,CL1_DVAL,CL3_SP
,
CL2_B[7:6],CL2_B[3:2] 8*n+7
Eight Taps 10 bits
(Full)
254
NA
Use Serial Port
255
NA
Use USB
Other modes are possible with custom FPGA configurations purchased from FastVision or
developed in-house.
CAMERA DATA FLOW
Sensor
128-1000MB
DDR
Memory
SRAM
LUT
By Pixel
Gain &
Offset
Data
Format
Funnel
Camera
Links
Mem
LUT
Exposure
Control
CC1
CC2
CC3
Read
Memory
Serial
Settings
DDR
Tables
Clear
Memory
Or
Stop Filling
Trigger
Frame
Capture
ROI
Serial
Settings
Frame
Rate
And
Exposure
Serial
Settings
DDR Memory can be organized as a FIFO or as a circular buffer. CC3 is used to clear the
memory (FIFO) or stop filling the memory (circular buffer). CC2 is used to read the top most
image from memory (FIFO) or to read the oldest non-read image from memory (Circular buffer).
The LUT converts the input pixels (10 Bits) to the output pixel size (8 or 10 Bits). These tables
can also be used to improve the linearity of the sensor, or to set the gamma of the camera.
DDR Memory can be used for image averaging. In this mode Images are summed into a 32 bit
per pixel buffers, which can be read out at any time (CC2) and/or cleared (CC3).CC1,CC2, and
CC3 can be replaced by Serial Commands, or can be always enabled or disabled, for free
running operation.
7.
THE STANDARD CAMERA FUNCTIONALITY
The ‘Standard’ Camera is a set of FPGAs designed to support most of the typical uses of the
camera. It is a good starting point for modifications. This design is copyrighted IP from FastVision
and forms the reference design, which is available from FastVision for use only with the
FastCamera13.
8.
EXPOSURE CONTROL
The frame rate and exposure can be controlled in several ways.
� Free Running Mode
� CC1 positive(or negative) edge triggered
� CC1 exposure control (positive or negative level triggered)
In Free running mode the frame rate and exposure time is set via the serial port and the camera
acquires images without further outside control. Frame readout occurs as fast as the selected
output format can support.
In CC1 edge triggered mode the camera is triggered by the selected edge polarity to expose for
the time selected by the serial setting. Each edge of the CC1 input will cause the acquisition of an
image. If CC1 is toggled faster then the exposure and readout rate allows, the additional triggers
are ignored. Frame readout may overlap exposure. The FastCamera 13 has both a rolling shutter
and a full frame shutter. The shutter speed granularity is approximately 2 microseconds. Finer
resolutions are possible by lengthening the line time, and slowing down the line rate. The shortest
supported exposure time is 2 microseconds.
In CC1 level triggered mode the exposure is set by the active time of the CC1 input. When CC1
is asserted (programmable level high or low) the sensor is reset and integration begins. When
CC1 is de-asserted the sensor is read out.
8.1
Rolling shutter
The FastCamera 13 supports rolling shutter mode. The rolling shutter allows the camera
to operate faster, by resetting each line a programmable delay (the exposure time) before
it is read out. This CMOS sensor use photo diodes as the active elements of the sensor.
When an exposure is started the diodes are emptied out by a reset process, which clears
all the stored charge from each diode. This reset process starts the exposure for a
particular pixel. After the exposure is complete, the charge in the photo diode is read out
to an amplifier and converter section in the sensor. This readout process also resets the
charge in the diode.
All the pixels in a line are readout and reset, or just reset at the same time. The rolling
reset process takes advantage of the readout process to set the exposure. When the
sensor is read out each line in turn is dumped into the converters to read out all the pixels
in a line. The sensor contains separate amplifiers and converters for each column in the
sensor (for the FastCamera 13 that is 1280 converters!). At the same time a line is read
out and reset from the sensor, a different line can be reset. By selecting the line to be
reset, to be a line to be read out and reset in the near future, the exposure time is set to
the number of line times between the current line, and the future line being reset.
While this process allows exposure to occur while frame data is being read out, it is at a
price. If your light source is continuous, you will see a compression or extension of a
moving object that moves in the opposite or same direction as the readout. Typically this
compression is only apparent at very high frame speeds, and / or object speeds. If your
light source is a flash the compression will not occur as you can make sure all the lines
are exposing, before the flash.
The fastest a line can be read out from the sensors is in the time it takes for the
converters to convert the charge from the photodiodes, into digital values. In the MV13
sensor this is 132 clocks. In the standard camera the sensor clock rate is 66.66 MHz, this
means the fastest the lines can be sampled is 1.98 microseconds per line. During this
time a full line can be read out in the FastCamera 13 (1280 pixels). (Strictly speaking the
converter time is 128 clocks, but there are additional overheads in reading out the line
which brings this time to 132, please see the data sheets for the sensors for the details.)
The sensor can not be read out faster than 1.98 microseconds per line.
8.2 Full Frame shutter
The sensor in the FastCamera13 allows an additional mode of operation, which is the
Full Frame shutter. During the last half of a line readout cycle, the whole sensor can be
reset, and integration started. During the last half of a following line (at least one) the
whole sensor can stop integration. When integration is stopped the charge stored in the
photodiodes is transferred to an array of storage elements, for eventual readout of the
sensor. It takes 64 clocks for the sensor to reset, or about one microsecond. Shutter
speeds are thus fixed at multiples of the line readout rate or 1.98 microseconds, or longer
if the line time is increased. Further the shortest shutter speed is 1.98 microseconds.
8.3
Shutter Speeds
The granularity of the shutter speed at the highest readout rate possible is 1.98
microseconds. This is not the whole story though. You may lengthen the line time by
programming the clocks per line register (see serial command 0x04 below). By slowing
down the line rate, you can dial the shutter speed (at the cost of maximum frame rate), to
any time above 132 clocks. So to get a shutter speed of 3.0 microseconds you would set
the clocks per line to 200 clocks. The highest full frame readout rate would be, 325
frames per second.
9.
PIXEL GAIN AND OFFSET
The offset and gain of each pixel can be calibrated by setting the pixel gain and offset arrays in
the DDR memory of the camera. It is a good idea to do this as the large number of converters,
need to be calibrated for best results. Note: only the pixels in the selected ROI are processed
(see serial commands 0x02 and 0x03).
The offset table is set by taking several images with no light input, averaging them and uploading
them to the offset (or dark field) table. These values are subtracted from the sensor pixel values
(clipped so less than zero values are zero), before applying the gain table values. The gain table
values are obtained by taking a defocused image of a uniform object, with enough light to get to
75% of saturation at most on the brightest point in the image. Using the resulting image gain
values are computed (in the simplest case the pixel values and the ratio with 75% of full scale
(191 (8 bit) or 768 (10 bits)) determines the gain.)
Note: It is assumed that you are trying for a uniformly lit field of view (i.e. a Flat Field). It is
important that you have as nearly as is practical, a uniform field of light, as large or small gain
values can introduce significant artifacts in your images.
The gain table contains 8 bit values, which are formatted unsigned 1.7 format, that is one binary
digit followed by 7 fractional digits. This makes the range of gains 1.992 down to 0.00390625.
The equation for the pixel gain and offset is:
CP[i,j] = Saturate((2*Gain[i,j]/256)* Clip (P[i,j] – Offset[i,j]))
CP = Corrected Pixel
P = Raw sensor Pixel
Clip = 0 if P[i,j]-Offset[i,j] is negative, otherwise its P[i,j]-Offset[i,j].
Saturate = FullScale if its input is greater than or equal to FullScale, other wise it is it’s input
alue.
FullScale = 255 for 8 bit pixels 1023 for 10 bit pixels.
10.
MEMORY OPTION (MEM?)
The camera has 120 MB (or more) memory, which can be used to store images, and do
averaging. Each mode of operation is explained in the following sections. If the memory option is
enabled, then sensor data goes to memory instead down stream.
10.1 FIFO memory mode
In this mode memory is used as a first in first out memory (FIFO). The memory fills with
images, until it is full, and then stops filling. At any time the user may request an image
from the FIFO with CC2, or via a serial command. This will make room for a new image,
which will be filled as soon as one is collected. This mode is typically used by systems
that can accept images in bursts, but can not accept a continuous stream of images. For
example your system might take 8 images very fast and then read them out at a slower
rate (via a single camera link for example), your average frame rate is slow, but your
peak rate is high. If the host activates CC2 (or sends the serial command), it can cause
the next image to be read out when it comes in (pre-trigger the readout).
10.2 Circular buffer memory mode
In this mode the memory is used as a circular buffer. Each time an image is presented to
the memory it is stored over-writing the oldest image in the buffer. When CC2 goes active
(or via a serial command), the filling operation stops, after a selected number of frames
are added to the memory buffer (delayed trigger).
After the memory image collection stops, each time CC2 toggles (or by serial command)
the oldest remaining image is sent to the host. After the first CC2 is sent the host may
send the next CC2 right away it does not have to wait for the filling to finish. Each image
will be sent to the host as it becomes available. After the memory is full the camera will
not accept any more images until it is read out or reset via CC3 (or serial command). If
the host is draining images as fast as they are coming in the image capture will never
stop. A reset (CC3) is required to re-arm the trigger and delay process.
10.3 Image summing memory mode
In this mode the memory is divided up into buffers the size of the selected ROI, but with
32 bit values. Each time an image is added to memory, it is added to the current average
buffer. When a programmed count of images is exceeded, the system advances to the
next buffer. When all the buffers are full, the system stops until it is read out (CC2) or
reset (CC3). Note: as each buffer is read out (CC2) it is reset. If the host reads out the
buffers faster than they are collected, image collection will not stop. For example you
can program the camera to total 10 images in each buffer, before passing it to the host.
The host triggers the readout via CC2 (or serial command).
The CC2 trigger may be sent at any time, the camera will provide a total buffer when it
becomes available.
11.
LOOKUP TABLE OPTION
If the lookup table option is enabled, the image data from up stream is passed through a lookup
table. This applies a point transformation to each pixel value, producing 10 bit results, from the 8
or 10 bit input. 32 Bit totals bi-pass the block. (Or better you should not enable this block if you
are doing image totaling, as it will only operate on the lower 10 bits of the total.)
12.
DATA FORMAT FUNNEL
The data format funnel takes the image data and parcels it out the camera links (or USB) as
selected by the Format Funnel mode. If 8 bit data is selected the upper 8 bits of each pixel is
sent. (Note if you don’t like that use the LUT to change this behavior).
32 Bit data total buffers are sent as 8 bit data in little endian (that is least significant byte first).
INTERNAL CAMERA MEMORY
The camera contains at least 128 MB of internal memory which can be expanded to 1000 MB,
which can be used to FIFO the input images, to allow burst exposure, and slow readout
operation. Only the image data in the selected ROI is stored. A serial command or the positive
edge of CC3 can be used to clear FIFO memory.
In addition the Camera contains LUTs for conversion from 8 to 10 bit data which can be uploaded
via the serial port.
13.1 Serial Commands
The following text will discuss the command and control commands to and from the
FastCamera40 via the Serial Interface.
For those commands that have multiple bytes of data associated with them the protocol
would be:
…..
In this example the command was 0x01 for configure DAC’s the 3 bytes of length are
necessary to accommodate being able to program the DATA FPGA via the Serial
Interface. In this instance the length would total 32 bytes. 32 bytes of data would follow.
The receiving machine will not go back to its idle state until 32 bytes of data are
transferred across the serial interface. The following table lists the commands and their
encoding:
13.2 0x00 Serial Command
Use this to reset the serial interface. If you send zero over and over until the camera
sends a ‘?’ (0x3f) you will be back in sync without effecting the camera state.
13.3 0x01 ADC settings Serial Command
If you need to adjust the control voltages of the sensor, then use this command. Note:
FastVision does NOT support using this command, if you change these values from the
factory values, the sensor will not work right and your image quality will be poor. So if you
don’t know what your doing don’t mess with this. If you mess with this, just power off the
camera and power it on again, and you will be out of trouble.
13.4 0x02 and 0x03 ROI Serial Commands
These commands set the start and end line (0x02) and the starting and ending column
0x03) of the sensor, read out and defines the size of the image. If you want the highest
possible frame rate, keep the last column in your ROI less than 2048 (40). This is not an
issue on the FastCamera13.
13.5 0x04 Line Length Serial Command
This sets the number of pixel clocks per line. If you are using the full sensor on the
FastCamera40 this must be greater than or equal to 153, or 132 on the FastCamera13.
Set this to larger values to slow the data rate from the camera or to get finer control of the
exposure.
13.6 0x05 Exposure Time Serial Command
This is the exposure time in pixel clocks. For the standard camera this is 1/66.66 MHz
steps or 15 ns steps. (Sorry it’s too hard to divide in the camera.) This must be greater
than the line time (that is the content of register 0x04). Default value is 1,066,666 (16
msec).
13.7 0x06 Exposure delay Serial Command
This sets the frame rate. The exposure time plus the exposure delay is the frame rate.
This is only used in free running mode. Set to 5,600,000 by default (10 frames per
second).
Note: Frame Rate = 1.0 / (15ns * (reg(5)+reg(6)))
13.8 0x07 Readout Image Serial Command
This command simulates an activation of CC2. See above for it’s effect, but it mostly
causes a stored image to be sent to the host.
13.9 0x08 Reset Memory Serial Command
This command simulates an activation of CC3. See above for it’s effects, but it mostly
erases or resets the image memory.
13.10 0x09 Set Data Funnel mode Serial Command
This sets the Data-Readout-Mode, see the section above, for the values.
13.11 0x10 Trigger Image Capture Serial Command
This simulates an activation of CC1. See above for it’s effect, but it mostly just causes an
image to be taken from the sensor, and sent to the host, or memory.
13.12 0x20 Set Trigger Mode Serial Command
This allows you set the trigger mode (CC1), the options are free run, CC1 edge or CC1
level. See the section on exposure above.
13.13 0x30 Write Flash Memory Serial Command
This allows the user to data to flash memory. This command is disabled in the standard
camera. The Flash memory holds the FPGA programs, and other values needed to make
the camera operate. Should you wish to store some data in the Flash there is room. For
more details contact FastVision.
13.14 0x31 Read Flash Memory Serial Command
This allows the user to read back what is in flash in the camera. This command is not
disabled, so if you like read it out. If you want to understand its content please contact
FastVision for details.
13.15 0x40 Load the Data FPGA Serial Command
This command allows custom FPGA code to be uploaded to the camera. In situations
where a user has more than one set of IP for use with the camera this command can be
used to upload the FPGA. Note this can take 5 minutes via the serial port at 115K baud.
13.16 Other Serial Commands
See the table below for additional serial commands.
Table 1 Serial Command Encoding
Encoding
Length
Description
0x00
NA
Single byte command indicating to reset the serial protocol
0x01
32
Command to modify the outputs of the DAC’s
Byte
Description
1
VREF1[7:0]
2
VREF1[9:8]
3
VLN2[7:0]
4
VLN2[9:8]
5
VREF2[7:0]
6
VREF2[9:8]
7
VTEST[7:0]
8
VTEST[9:8]
9
VREF3[7:0]
10
VREF3[9:8]
11
VBIAS1[7:0]
12
VBIAS1[9:8]
13
VREF4[7:0]
14
VREF4[9:8]
15
VBIAS2[7:0]
16
VBIAS2[9:8]
17
VLN1[7:0]
18
VLN1[9:8]
19
VBIAS3[7:0]
20
VBIAS3[9:8]
21
VLP[7:0]
22
VLP[9:8]
23
VBIAS4[7:0]
24
VBIAS4[9:8]
25
VCLAMP3[7:0]
26
VCLAMP3[9:8]
27
0x00
28
0x00
29
VRST_PIX[7:0]
30
VRST_PIX[9:8]
31
0x00
32
0x00
0x02
4
ROI Starting/Ending Sensor Line
1
Start[7:0]
2
Start[11:8]
3
End[7:0]
4
End[11:8]
ROI Starting/Ending Column
1
Start
2
End
0x04
2
Readout Rate (clocks per row read)
1
Rate[7:0]
2
Rate[15:8]
Exposure in Pixel Clocks
1
Exposure[7:0]
2
Exposure[15:8]
3
Exposure[23:16]
4
Exposure[31:24]
0x06
4
Exposure Delay in Pixel Clocks
1
Exposure Delay[7:0]
2
Exposure Delay[15:8]
3
Exposure Delay[23:16]
4
Exposure Delay[31:24]
0x07
1
Read out image from FIFO if any. Can be sent ahead of time, which will
cause image readout to occur when camera is triggered. If data byte
= 0, image readout will occur as soon as an image is ready.
0x08
0
Clear FIFO Memory
0x09
1
Set Read out mode (See section above)
0x10
0
Trigger Image collection
0x11
2
Trigger delay (circular buffer mode) 16 bits in frames
0x12
1
Serial Baud rate select
0=9600
1=115200
0x20
2
Trigger Mode
1
Bit 0:1:2:3 Trigger Mask
1 = Trigger 0= Ignore
2
mode
0 = free run
1 = cc1 positive edge
2 = cc1 exposure control
0x30
268
Write FLASH
1
Page Address[7:0]
2
Page Address[10:8]
3
Byte Address[7:0]
4
Byte Address[8]
5
Data Byte[1]
.
.
.
268
Data Byte[264]
0x31
4
Read FLASH Page
1
Page Address[7:0]
2
Page Address[10:8]
3
Byte Address[7:0]
4
Byte Address[8]
Data Coming out on SERTFG
Upload Data FPGA
1
Data Byte[1]
.
.
.
510324
Data Byte[510324]
0x80
NA
Byte 1
Read back Command Data on SERTFG
0x00
Cal Values from Sensor
0x01
DAC Values (From Uploaded values)
0x02
Sensor ROI Values
0x03
Serial Number
0x04
Manufacture Date
0x05
Part Number
Table 2 Serial Response Encoding
14.
USB CAMERA OPTION
All cameras are shipped with a USB interface for control and readout of the camera. This allows
the camera to be operated with or without a framegrabber, and helps diagnose system problems
when a framegrabber is being used.
A camera control program comes with the camera, which uses the serial port supported by the
framegrabber, if it supports the standard Camera Link DLL, or may be used with the USB port in
situations where the camera link serial port is not available, or too slow. In order to use this
option you must be using an operating system that supports USB, and have the correct drivers
installed. Currently this is supported under Windows and Linux only. The USB port may also be
used to obtain image data from the camera, you may select full images or an ROI to reduce the
image rate. The camera supports USB 2.0, which provides up to about 40 MBytes/sec transfer
rates. You will probably get less, it depends on your computer; typically the transfer rate is more
than 30 Mbytes/sec.
Encoding
Length
Description
0x00
1
Alive (every 10 Sec)
0x01
1
Triggered (Time permitting)
0x02
1
Camera hardware problem
0x3F
1
Command Refused or Error
0x3B
1
Acknowledge / done
CAMERA CONTROL PROGRAM
The Camera Control Program provides a GUI interface that allows you to send and receive
control data and images from the camera. Below is an example dialog from the Windows version.
In this section we will discuss several operating environments to give you an idea of what you
need to operate the camera with a PC.
16.1 USB operation
In this mode of operation you will need the following items:
�
The Camera and a lens
�
A power supply for the camera.
�
A USB cable
�
FastVision supplied USB software for your OS.
�
All of the above can be supplied to you by FastVision. The software (item #4) provides
two forms of access to the camera, via a library (DLL, or ActiveX control under Windows,
linkable library under other operating systems), and via the supplied application called
FastViewer.
16.1.5 The hardware connections are:
Camera
Power
Supply
Lens
Computer
USB
Cable
The software connections are:
USB
Device
In
Camera
Your
Software
Library,
DLL
Or
ActiveX
Control
Operating
System
Provided
USB
Drivers
FastVision
Provided
USB
Device
Driver
FastVision
FastViewer
Software
Library,
DLL
Or
ActiveX
Control
16.2 Using a FastVision supplied framegrabber
In this mode of operation you will need the following items, which can all be supplied by
FastVision.
� The Camera and a lens
� A power supply for the camera
� One or more Camera Link cables
� FastVision supplied framegrabber
� FastVision supplied framegrabber software.
The hardware connections are:
Camera
Lens
Your Computer
Power
Supply
FastVision
Provided
Frame Grabber
1 or 2
Camera Link
Cables
16.2.2
The software connections are:
Camera
Serial
And
Channel
Link
Devices
Driver
For
FastVision
Frame
Grabber
DLL, Library
or
ActiveX Control
For
FastVision
Frame Grabber
Your
Software
Camera
Control
Program
FastVision Application
Program Like FastViewer
16.3 Using a third-party framegrabber
In this mode of operation you will need the following items:
�
The Camera and a lens
�
A power supply for the camera.
�
One or more Camera Link cables.
�
Your third-party framegrabber.
�
AIA compliant software for your framegrabber.
�
FastVision supplied camera control program.
16.3.1 The hardware connections are:
Camera
Lens
Your Computer
Power
Supply
Third Party
Provided
Frame Grabber
1 or 2
Camera Link
Cables
16.3.2 The software connections are:
Camera
Serial
And
Channel
Link
Devices
Driver
for
Your Frame
Grabber
DLL or Library
For Your
Frame Grabber
Your
Software
Camera Link
Standard DLL
FastVision
Camera Control
Application
This will only work if your framegrabber supports the Camera Link standard serial
interface protocol, and your framegrabber vendor has provided the needed DLL.
Otherwise you will have to send commands to the camera in the way specified by
your framegrabber vendor.
17.
TROUBLESHOOTING
There are several things you can try before you call FastVision Technical Support for help.
_____
Make sure the computer is plugged in. Make sure the power source is on.
_____
Go back over the hardware installation to make sure that the system is properly
installed.
_____
Go back over the software installation to make sure you have installed all necessary
software.
_____
Run the Installation User Test to verify correct installation of both hardware and
software.
_____
Run the user-diagnostics test for your main board to make sure it’s working properly.
_____
Insert the FastVision CD-ROM and check the various Release Notes to see if there is
any information relevant to the problem you are experiencing.
The release notes are available in the directory: \usr\fastvision\alinfo
18.
FASTVISION TECHNICAL SUPPORT
FastVision offers technical support to any licensed user during the normal business hours of 9
a.m. to 5 p.m. EST. We offer assistance on all aspects of camera installation and operation.
18.1 Contacting Technical Support
To speak with a Technical Support Representative on the telephone, call the number
below and ask for Technical Support:
Telephone:
603-891-4317
If you would rather FAX a written description of the problem, make sure you address the
FAX to Technical Support and send it to:
Fax:
603-891-1881
You can email a description of the problem to
[email protected]
18.2 Returning Products for Repair or Replacements
Our first concern is that you be pleased with your FastVision products.
If, after trying everything you can do yourself, and after contacting FastVision Technical
Support, you feel your hardware or software is not functioning properly, you can return
the product to FastVision for service or replacement. Service or replacement may be
covered by your warranty, depending upon your warranty. The first step is to call
FastVision and request a “Return Materials Authorization” (RMA) number. This is the
number assigned both to your returning product and to all records of your
communications with Technical Support. When a FastVision technician receives your
returned hardware or software he will match its RMA number to the on-file information
you have given us, so he can solve the problem you’ve cited.
When calling for an RMA number, please have the following information ready:
_____ Serial numbers and descriptions of product(s) being shipped back
_____ A listing including revision numbers for all software, libraries, applications,
daughter cards, etc.
_____ A clear and detailed description of the problem and when it occurs
_____ Exact code that will cause the failure
_____ A description of any environmental condition that can cause the problem
All of this information will be logged into the RMA report so it’s there for the technician
when your product arrives at FastVision. Put the camera inside its anti-static protective
bags. Then pack the product(s) securely in the original shipping materials, if possible,
and ship to:
FastVision, LLC.
71 Spit Brook Rd, Suite 210
Nashua, NH 03060
USA
Clearly mark the outside of your package:
Attention RMA #XXX
Remember to include your return address and the name and number of the person who
should be contacted if we have questions.
18.3 Reporting Bugs
We at FastVision are continually improving our products to ensure the success of your
projects. In addition to ongoing improvements, every FastVision product is put through
extensive and varied testing. Even so, occasionally situations can come up in the fields
that were not encountered during our testing at FastVision.
If you encounter a software or hardware problem or anomaly, please contact us
immediately for assistance. If a fix is not available right away, often we can devise a
work-around that allows you to move forward with your project while we continue to work
on the problem you’ve encountered.
It is important that we are able to reproduce your error in an isolated test case. You can
help if you create a stand-alone code module that is isolated from your application and
yet clearly demonstrates the anomaly or flaw.
Describe the error that occurs with the particular code module and email the file to us at:
[email protected]
We will compile and run the module to track down the anomaly you’ve found.
If you do not have Internet access, or if it is inconvenient for you to get to access, copy
the code to a disk, describe the error, and mail the disk to Technical Support at the
FastVision address below. If the code is small enough, you can also FAX the code
module to us as indicated below.
If you are faxing the code, write everything large and legibly and remember to include
your description of the error.
When you are describing a software problem, include revision numbers of all associated
software.
For documentation errors, photocopy the passages in question, mark on the page the
number and title of the manual, and either FAX or mail the photocopy to FastVision.
Remember to include the name and telephone number of the person we should contact if
we have questions.
FastVision, LLC.
131 Daniel Webster Highway #529
Nashua, NH 03060
USA
Telephone: 603-891-4317
FAX: 603-891-1881
Web site:
http://www.fast-vision.com/
Electronic Mail:
[email protected]
[email protected]