FG Camera Library
Loading...
Searching...
No Matches
e2v EV2S02M / EV2S05M

Overview

The following e2v Snappy sensor models are available for the VisionSensor PV3:

Supported sensors
SensorTypeeFG_CAMERA_TYPENumber of
pixels
Pixel sizeOptical format
EV2S02MBMonochromeFG_CAMERA_TYPE_1920_1080_IMAGO_VSx_EV2S02MB1920 x 10802.8 µm x 2.8 µm1/3"
EV2S02MCColorFG_CAMERA_TYPE_1920_1080_IMAGO_VSx_EV2S02MC
EV2S05MBMonochromeFG_CAMERA_TYPE_2560_1936_IMAGO_VSx_EV2S05MB2560 x 19361/1.8"
EV2S05MCColorFG_CAMERA_TYPE_2560_1936_IMAGO_VSx_EV2S05MC
Note
The SoC's sensor interface on the VisionSensor PV3 requires at least two image buffers in the aquisition queue to avoid dropped sensor frames. A third buffer is required at the end of a frame, so that there are still remaining at least two buffers after one is given back to the user.
In order to avoid any dropped frames during startup while adding the first buffers with FG_append_image(), the sensor aquisition start is delayed until the second buffer is added. A third buffer should be added before the first frame completes.

Features

  • Global Shutter with simultaneous integration and readout
  • 12-bit ADC with 8 bit image readout
  • Horizontal and vertical flipping
  • 2x2 pixel binning
  • Short integration times down to 12 µs
  • Constant trigger delay of 20 µs with very low jitter
  • Adjustable trigger input, edge sensitivity, trigger divider and trigger delay, see VisionSensor PV3 hardware trigger.
  • Line scan mode

Supported pixel formats

The supported pixel formats are listed below:

Supported pixel types
SensoreFG_PIXEL_TYPEOutput format
EV2S02MB / EV2S05MB (Monochrome)FG_PIXEL_TYPE_Y_81 byte per pixel
EV2S02MC / EV2S05MC (Color)FG_PIXEL_TYPE_Y_8Raw bayer, 1 byte per pixel
Note
  • For color sensors, the first line starts with R-G components if the Mirror option is 0.
  • For color sensors, there is no support for demosaicing in hardware. But the function FG_set_gain_rgb() can still be used to adjust the gain for each color component within the raw bayer pixels.

Frame rates

The frame rate can be increased be reducing the AOI size. Some examples are listed in the following table:

Maximum frame rate examples
AOI sizeEV2S02MEV2S05M
max. frame rateexposure timemax. frame rateexposure time
2560 x 1936--53 Hz18.5 ms
1920 x 1080115 Hz8.6 ms117 Hz8.4 ms
1920 x 768161 Hz6.1 ms165 Hz6 ms
1920 x 480256 Hz3.8 ms262 Hz3.7 ms
1920 x 240506 Hz1.9 ms514 Hz1.9 ms
1920 x 323.2 kHz295 µs3.1 kHz296 µs
1920 x 165.4 kHz167 µs5.1 kHz170 µs
1920 x 88.3 kHz103 µs7.5 kHz109 µs
1920 x 411.3 kHz71 µs9.8 kHz77 µs
1920 x 213.8 kHz55 µs11.6 kHz61 µs
1920 x 115.6 kHz47 µs12.8 kHz53 µs
2560 x 1--10.1 kHz70 µs
Note
  • For the 2MP sensor, the frame rate only depends on the AOI height. Using the full width of the 5MP sensor slightly decreases the frame rate.
  • The listed maximum exposure time settings are for free run mode only. In triggered mode or in line scan mode, the exposure time values have to be about 24 µs shorter in order to reach the frame rate.

Special features

The sensor supports the following special features.

Special features
Property nameDescriptionLibrary
MirrorFlips the image horizontally and / or vertically
0: no flipping (default)
1: flip horizontally
2: flip vertically
3: flip horizontally and vertically (rotation by 180°)
Note
The order of color components for raw Bayer format depends on this setting. Use FG_get_pixel_order() to get the order after the Mirror option is configured.
≥ 1.2.6.0
BinningBinning mode
1: no pixel binning (default)
2: 2x2 pixel binning
Note
  • The binning mode must be configured before the first buffer is allocated.
  • The parameters for FG_set_scan_param() and FG_set_aoi() refer to the reduced image size after binning is enabled.
  • For 2x2 binning, the pixel brightness increases by a factor of two (sum of four neighbour pixels divided by two).
  • Color information will be lost for color sensors.
≥ 1.5.1.0
ImageModeControls the digital test pattern:
0: Video output
1: Enable test pattern
≥ 1.2.6.0
FrameRateSets the desired sensor frame rate in Hertz. This setting is only applied in free run mode. The actual frame rate may be lower if the exposure time setting is too high, or if the sensor's limit is exceeded.
The lowest achievable frame rate is 16 Hz for line scan mode, else 2 Hz.
0: Use maximum frame rate
≥ 1: Desired frame rate in Hertz
≥ 1.2.7.0
ScanPeriodSets the desired sensor frame period in microseconds (similar to "FrameRate"). This setting is only applied in free run mode. The actual frame period may be longer if the exposure time setting is too high, or if the sensor's limit is exceeded.
The longest frame period is 65 ms for line scan mode, else 524 ms.
0: Use maximum frame rate
≥ 1: Desired frame period in µs
≥ 1.2.9.0

Additional features are described in the following sections:

Line scan mode

Choosing a smaller AOI height will increase the maximum frame rate significantly. This makes the sensor also suitable for line scan applications.

A dedicated line scan mode was introduced which provides the following benefits:

  • Concatenation of lines from multiple sensor frames into a larger images is handled by the library.
  • Reduces the risk of loosing sensor frames, because the image buffers can be much bigger.
  • Lowers the number of interactions with the driver which reduces the acquisition overhead.
  • An additional frame trigger signal can be used to start aquisition of one image.

A sensor scan height greater than one can be useful to increase the effective line rate. For example, an AOI size of 1920 x 4 allows a scan rate of 11 kHz which results in an effective line rate of 44 kHz.

Note
  • Line scan mode requires FPGA version ≥ 1.0.0.68.
  • If the scan height is greater than one, the effective line rate has to match the object speed to avoid image distortions. This can be achieved by using a rotational encoder as the trigger source for example.
  • The exposure time needs to be short enough to avoid in-motion unsharpness. It should not exceed the reciprocal of the effective line rate.

Activating line scan mode

Line scan mode is enabled by configuring the AOI with FG_set_scan_param() instead of FG_set_aoi(). The parameter image_scan_count specifies the number of sensor frames that will be concatenated into the larger destination image. A value of 1 disables line scan mode.

Example:

The following example configures a scan AOI of 1024 x 4 at the sensor's center location:

UINT32 sensor_width, sensor_height;
UINT32 scan_x, scan_y, scan_width, scan_height, image_scan_count;
UINT32 image_width, image_height;
eFG_PIXEL_TYPE pixel_type;
// read the default values to get the sensor size:
FG_get_scan_param(NULL, NULL, &sensor_width, &sensor_height, NULL, &pixel_type);
// the sensor AOI size:
scan_width = 1024;
scan_height = 4;
// set x/y offsets to the sensor's center:
scan_x = (sensor_width - scan_width) / 2;
scan_y = (sensor_height - scan_height) / 2;
// use a scan count of 250 which results in an image height of 1000 lines:
image_scan_count = 250;
// configure AOI for line scan mode:
FG_set_scan_param(scan_x, scan_y, scan_width, scan_height, image_scan_count, pixel_type);
// calculate the image size (same as FG_get_image_size())
image_width = scan_width;
image_height = image_scan_count * scan_height;
@ FG_CAMERA_TYPE_X_X_IMAGO_Vxx_AUTO
IMAGO VisionCam/Sensor (automatic)
Definition FG_CameraInterface.h:54
eFG_PIXEL_TYPE
The data format for storing images in memory, see FG_set_scan_param() and FG_set_aoi()
Definition FG_CameraInterface.h:125
UINT32 DLL_FG_API FG_install_camera(enum eFG_CAMERA_TYPE camera_type,...)
Opens and initializes the camera.
Definition FG_CameraInterface.cpp:278
UINT32 DLL_FG_API FG_set_scan_param(UINT32 scan_x, UINT32 scan_y, UINT32 scan_width, UINT32 scan_height, UINT32 image_scan_count, enum eFG_PIXEL_TYPE pixel_type)
Sets the area of interest and output format.
Definition FG_CameraInterface.cpp:774
UINT32 DLL_FG_API FG_get_scan_param(UINT32 *scan_x, UINT32 *scan_y, UINT32 *scan_width, UINT32 *scan_height, UINT32 *image_scan_count, enum eFG_PIXEL_TYPE *pixel_type)
Returns the area of interest and the output format.
Definition FG_CameraInterface.cpp:788
Note
  • FG_get_aoi() returns the sensor scan AOI in line scan mode, the image height can be obtained with FG_get_image_size().
  • It's possible to change the AOI position after the aquisition has started.

Sensor trigger

In line scan mode with hardware or software trigger enabled, each trigger event will start acquisition of one sensor frame containing the configured sensor scan height number of lines. Multiple trigger events are required before the image is complete and returned to the user.

The trigger input, edge sensitivity and a trigger divider can be controlled to adapt the the trigger signal to the desired scan rate, see VisionSensor PV3 hardware trigger.

The scan height acts like a trigger multiplier for the effective line rate.

Frame trigger

In line scan mode, an additional frame trigger can be used to start acquisition of an image. The trigger can be software based or hardware based using the digital input signal IN1. Frame trigger works independently from the sensor trigger mode. An additional frame start delay is also available.

The frame trigger is configured using the following special features:

Special features for frame trigger in line scan mode
Property nameDescriptionVersion requirements
FPGALibrary
FrameTriggerModeSets the frame trigger mode, used for starting frames in line scan mode.
0: Don't use frame trigger, frames are captured continuously (default)
1: Frames are software triggered by using the special option FrameTrigger
2: Use rising edge on input IN1
3: Use falling edge on input IN1
Additional values for the VisionSensor PV3 with I/O Expansion:
100...115: VIB::Multiplexer output line 0...15, rising edge
200...215: VIB::Multiplexer output line 0...15, falling edge
≥ 1.0.0.68≥ 1.2.9.0
FrameTriggerDelayFrame start delay after receiving the frame trigger. The number determines how many sensor trigger events are ignored after each frame trigger.
0...65535 (default: 0)
FrameTriggerTriggers a frame in software controlled frame trigger mode (write only).
Only the value 0 is valid.
Note
Frame trigger mode and the TriggerDelay option can't be used simultaneously.

Example:

// Setup hardware based frame trigger using rising edge on IN1:
FG_set_special_option("FrameTriggerMode", 2);
// Delay frame start by 100 sensor scan frames
FG_set_special_option("FrameTriggerDelay", 100);
UINT32 DLL_FG_API FG_set_special_option(const char *option, INT64 arg)
Configures a special camera property.
Definition FG_CameraInterface.cpp:972