MVTec Software GmbH
  Building Vision For Business
Halcon

HALCON 5.2 frame grabber interface for FlashBus boards

This document provides some information about the HALCON frame grabber interface FlashBus.dll for the Integral Technologies frame grabber boards of the FlashBus MV family. Registered customers can download the latest revision of this interface from the MVTec WWW server.

Revision: 1.27

System Requirements

  • Intel compatible PC with Windows NT 4.0 (Service Pack 4).
  • Successfully installed FlashBus driver Flashbus.sys (version 3.30 or higher).
  • Integral DLL Fbus32.dll (version 3.9 or higher).
    This DLL must be within your search path %PATH%. If you do not have this DLL, please contact Integral or the vendor from which you bought the frame grabber board.
  • HALCON frame grabber interface FlashBus.dll.
    If you have properly installed the interface, FlashBus.dll should reside in bin\i486-nt4 within the HALCON base directory %HALCONROOT% you have chosen during the installation of HALCON.

Features

  • Multiple frame grabber boards with multiple cameras.
  • Synchronous and asynchronous grabbing.
  • Realtime grabbing (30 frames per second or 60 fields per second for NTSC).
  • External trigger.
  • Subsampling by a factor of 1, 2 or 4 in horizontal or vertical direction separatly.
  • Cropping of image parts.
  • Writing and reading LUTs.
  • Software control of the video gain (composite and S-Video only).
  • Sending or receiving TTL signals from the onboard pins.
  • Programming the serial interface.
  • Optional: automatic gain control.
  • Software control of hue, saturation, and brightness.
  • Software control of the intensity of the red-, green-, and blue- channel (for RGB-signal).
  • Software control of contrast and sharpness.
  • Optional: disable color decoding on a composite input.
  • Adjustment of frame grabber specific parameters.
  • Supporting strobe grabbing and asynchronous reset.

Limitations

  • grab_region() and grab_region_async() not supported.

Description

Parameters for open_framegrabber():

Name 'FlashBus' The name of the HALCON frame grabber interface.
FGWidth 1, 2, 4, width The desired image resolution. Use '1' for full resolution, '2' for subsampling by factor 2, '4' for subsampling by factor 4, or the corresponding absolute values 640, 320, 160 (NTSC) or 768, 384, 192 (PAL). Default: 1.
FGHeight 1, 2, 4, height The desired image resolution. Use '1' for full resolution, '2' for subsampling by factor 2, '4' for subsampling by factor 4, or the corresponding absolute values 480, 240, 120 (NTSC) or 576, 288, 144 (PAL). Default: 1.
Width 0, width The width of the desired image part (use '0' for the complete image). Default: 0.
Height 0, height The height of the desired image part (use '0' for the complete image). Default: 0.
StartRow 0, row The row coordinate of the upper left pixel within the desired image part (use '0' for the complete image). Default: 0.
StartColumn 0, column The column coordinate of the upper left pixel within the desired image part (use '0' for the complete image). Default: 0.
Field 'first', 'second', 'next', 'progressive' Specifies the alignment of the grabbed images ('first': grabbing starts with an even field, 'second': grabbing starts with an odd field, 'next': grabbing starts with the next available field). When subsampling by a factor of 2 or 4 a field grabbing is done (you can achieve full field rate grabbing in this case!). To avoid line jittering say 'first' or 'second' (in this case you only get even or odd fields when subsampling). If you use a progressive scan camera say 'progressive'. Default: 'next'.
Bits 8, 16, 24 Grayscale (8 bits) or color (16 and 24). The 16 bit mode is used to reduce the PCI bus load. You will get an 24 bit HALCON image in this case, too (the 5-6-5 bit encoded BGR raw data delivered by the FlashBus board is splitted and shifted to an 8-8-8 three channel RGB HALCON image inside the frame grabber interface). Default: 24.
ColorSpace --- Ignored.
Gain 0.0 - 63.0 The desired video gain (composite and S-Video only): Note that this parameter is of type floating point. However, only integer values are used. Remember to switch off AGC if you want to change the gain setting. Default: 11.0.
ExternalTrigger 'true', 'false' Activate/deactivate external triggering. Default: 'false'.
Generic 'AUTO', 'NTSC', 'PAL', 'PAL-LARGE', 'S-NTSC', 'S-PAL', 'S-PAL-LARGE', 'RGB-NTSC', 'RGB-PAL', 'RGB-PAL-LARGE', 'RS170-NTSC', 'RS170-PAL', 'RS170-PAL-LARGE' The generic parameter is used to specify the video signal: 'NTSC', 'PAL', or 'AUTO'. The latter will do an automatic analysis of the signal. The additional 'S-' or 'RGB-' specifies an S-Video or RGB input. Without the prefix a composite signal is assumed. For the PAL norm the suffix '-LARGE' leads to an image size of 768*576 pixels, whereas the normal size is assumed to be 760*570. Default: 'NTSC'.
Device '0', '1', '2', ... The number of the frame grabber board (passed as a string!). Default: '0'.
Port 0 - 5 The desired input port depends on the type of video signal you are using; the following ports are available for the different types: Composite: 0-5, S-Video: 0-2, RGB: 0, RS170: 0-1. Default: 1.
LineIn --- Ignored.

Parameters for set_framegrabber_param():

'volatile' 'enable', 'disable' Grayscale (8 bit) only. In the volatile mode the two frame grabber interface buffers are used directly to store HALCON images. This is the fastest mode avoiding to copy raw images in memory. However, be aware that older images are overwritten again and again as a side-effect. Thus, you can only process one image while you grab another image. Older images are invalid!
'hue' 0 - 63 Sets value for hue. Default: 0.
'saturation' 0 - 63 Sets value for saturation. Default: 32.
'brightness' 0 - 63 Sets value for brightness. Default: 34.
'contrast' 0 - 63 Sets value for contrast. Default: 35.
'redbright' 0 - 63 Sets red brightness value for RGB input. Default: 0.
'greenbright' 0 - 63 Sets green brightness value for RGB input. Default: 0.
'bluebright' 0 - 63 Sets blue brightness value for RGB input. Default: 0.
'sharpness' 0 - 7 Sets a sharpness filter. Default: 0.
'compmono' 'enable', 'disable' Enable or disable color decoding on a composite input. Default: 'enable'.
'syncmode' 0, 1 If syncmode is set to 1 the decoder changes its method of syncing to a video source (may produce better results with certain video equipment). Default: 0.
'gain' 0.0 - 63.0 Sets the gain (only valid for composite and S-Video inputs). AGC must be disabled! Default: 11.0.
'agc' 'enable', 'disable' Enables or disables automatic gain control. Default: 'disable'.
'trigger_signal' 'rising', 'falling', 'levelhigh', 'levellow' Defines the expected type of input trigger. 'rising' ('falling') requires the external trigger to go low (high) and high (low) again before the next image can be acquired; in case of 'levelhigh' ('levellow') an image can be acquired during the whole time the trigger is high (low).
'ttlio' dword Sets TTL level of the onboard pins. The setting is passed as a 32 bit value. The upper 16 bits are used as a mask, the lower 16 bits contain the bit pattern to be set. Only 8 bits are used. The pattern is as follows: UUUUUUUUMMMMMMMMUUUUUUUUVVVVVVVV (U: unused / M: mask / V: value).
'serial' string Sends a string to the serial port of the frame grabber board.
'serial_setup' 'nBaud:nData:nParity:nStop: nBytes:nTimeOut' Configures the serial port of the frame grabber board. Possible values:
nBaud: 50, 110, 134, 200, 300, 600, 1050, 1200, 2400, 4800, 7200, 9600, 38400
nData: 5, 6, 7, 8
nParity: 0 (none), 1 (odd), 2 (even)
nStop: 1, 2
nBytes: >=0
nTimeOut: >=0
Default: '9600:8:0:1:16:10'.
'camera_type' value Specifies the camera type. Default: 0.
'misc_param_##' value Sets other than the above parameters; replace ## by the number of the parameter you want to set. For a complete list of the available parameters see your documentation of your FlashBus frame grabber board. Attention: When using 'misc_param_##' the according parameter is set on the board and is NOT stored per instance!
'switch_camera_delay' 1 - 32768 The number of vertical blanks after switching between cameras connected to different ports. Make sure that the time needed to wait for the specified number of vertical blanks is smaller than the timeout for video synchronization (set by 'wait_for_sync'). Default: 1.
'wait_for_sync' timeout Timeout in ms to wait for video synchronization after switching ports. Make sure that this value is larger than the time needed by 'switch_camera_delay'. Default: 5000.
'grab_timeout' timeout Timeout for image acquisition in milliseconds. Default: 5000.
'non_async_grab' 0, 1 Enable (1) or disable (0) the acquisition mode for strobe grabbing and asynchronous reset. Default: 0.
'flash_type' flashtype Specifies the type of flash control desired (see FlashBus user manual for a detailed description). Default: 0.
'flash_fdelay' nrfields Number of fields to wait between firing the flash and grabbing the frame. Default: 0.
'flash_ldelay' nrlines Number of video lines to wait between firing the flash and grabbing the frame. Default: 0.

Parameters for get_framegrabber_param():

Additional parameters supported by get_framegrabber_param() only. Note that all parameters supported by set_framegrabber_param() can also be accessed by get_framegrabber_param().

'revision' revision The revision number of the HALCON frame grabber interface FlashBus.dll.
'libversion' version The version number of the FlashBus library Fbus32.dll.

Lookup Tables:

Lookup tables can be manipulated using the operator set_framegrabber_lut() and get_framegrabber_lut(). The FlashBus frame grabber boards use 256 entries per LUT, which are passed as an array of integers with a value range from 0-255. When using RGB input, three arrays are needed, in case of composite input or the 'RS170...' generic parameter only the red channel is used. Default: ramp with values from 0-255.

Release Notes

  • Revision 1.27 (Mar 30, 2000):
    • New parameter 'non_async_grab' to enable acquistion mode for strobe grabbing and asynchronous reset.
    • New parameters 'flash_type', 'flash_fdelay', and 'flash_ldelay' to specify the desired flash parameters.
    • Evaluation of the 'Field' parameter during open_framegrabber() to enable correct field alignment when grabbing with interlaced cameras.
  • Revision 1.26 (Jun 18, 1999):
    • New parameter 'grab_timeout'.
  • Revision 1.21 (May 4, 1999):
    • New parameters 'switch_camera_delay' and 'wait_for_sync'.
  • Revision 1.17 (Apr 23, 1999):
    • HALCON 5.2 version of the interface (included in the HALCON 5.2 CD).
    • Some bugfixes concerning the serial interface.
  • Revision 1.10 (Mar 22, 1999):
    • Prerelease of HALCON 5.2 version of the interface (included in the HALCON 5.2 prerelease CD).
    • Realtime grabbing; multiple cameras on multiple boards; external trigger; programming of the serial interface; programming of the onboard TTL pins; LUTs.
  • Revision 1.6 (August 1998):
    • First official release.

© Copyright 2012, MVTec Software GmbH, corporate/legal/privacy information