parametros frame graber

Post on 27-Nov-2015

42 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

HALCON 11.0 / Image Acquisition Interfaces

Image Acquisition Interface for Silicon SoftwareBoards Interface: SiliconSoftware Revision: 5.4 Date: 2013-06-12 HALCON Version: 11.0

GeneralSystem RequirementsFeaturesLimitationsParameters for info_framegrabberParameters for open_framegrabberParameters for set_framegrabber_paramParameters for get_framegrabber_paramOperator set_framegrabber_lutOperator get_framegrabber_lutOperator set_framegrabber_callbackOperator get_framegrabber_callbackOperator grab_image_startOperator grab_imageOperator grab_image_asyncOperator grab_dataOperator grab_data_asyncOperator close_framegrabberParameterization of GigE Vision CamerasSupport of Binarization SmartApplet FamilySupport of Segmentation SmartApplet FamilySupport of 3D Triangulation SmartApplet FamilySupport of Multi RoI Visual Applet ModulesHDevelop Examples

Release Notes

GeneralThis page provides the documentation of the HALCON SiliconSoftware interface for accessing themicroEnable III, IV-A, and IV-V boards from Silicon Software GmbH. Registered customers can downloadthe latest revision of this interface from the MVTec WWW server.

System RequirementsIntel compatible PC with Windows XP/Vista/7 or Windows XP/Vista/7 x64 Edition. Successfully installed Silicon Software driver (version 5.2.1 or higher). Make sure the environmentvariable %SISODIR5% is set correctly to the Silicon Software base directory. Visual Studio C++ 2008 Redistributable Runtime Package, particularly msvcp90.dll. If this package isnot installed please download and install it from the Microsoft Download Center for Windows x86 orWindows x64. Note: It is not sufficient to copy the missing files! Suitable hardware applet, e.g., an acquisition applet, SmartApplet or a specific applet generated bySilicon Software VisualApplets together with the corresponding mcf-file. This configuration file can beeasily created via the Silicon Software microDisplay application. HALCON image acquisition interface hAcqSiliconSoftware.dll or hAcqSiliconSoftwarexl.dll,respectively. If you have properly installed the interface, both DLLs should reside in bin\%HALCONARCH%within the HALCON base directory %HALCONROOT% you have chosen during the installation ofHALCON.

Features

1

Support of microEnable frame grabber boards from Silicon Software with Camera Link and GigEinterface. Support of acquisition applets with more than one DMA channel. Approach of multiple frame grabber boards. Support of pre-processing functionality via SmartApplets and VisualApplets. Support of Segmentation SmartApplets via grab_data and grab_data_async to get also the pre-processed blob data. Support of Binarization SmartApplets via grab_image and grab_image_async to get the gray-value andthe binary image. Support of 3D Triangulation SmartApplets via grab_data and grab_data_async to get a disparity imagethat is calculated on the base of a laser line. Support of coprocessor functionality with microEnable IV-V frame grabber boards. Synchronous and asynchronous grabbing. External and software trigger. Cropping of image parts. Software control of the digital input and output lines.

LimitationsThe knee lut functionality not yet supported.

Parameters for info_framegrabber

Parameter Value List Type Kind Description

'bits_per_channel' [] Ignored.

'camera_type' ['CAMFILE:', 'mcf', 'C:\\'] string pre-defined Syntax for the camera configuration file.

'color_space' [] Ignored.

'defaults' [1, 1, 0, 0, 0, 0, 'interlaced', 8, 'gray',-1.0, 'false', '', '0', 0, 0]

mixed pre-defined Default values for open_framegrabber.

'device' ['0', '1', '2', '3'] string pre-defined Pre-defined list of possible device numbers.

'external_trigger' ['false', 'true'] string pre-defined Values for the external trigger.

'field' [] Unused.

'general' [] string pre-defined Information about the HALCONSiliconSoftware interface.

'generic' [' ', 'discovery_timeout=<ms>','num_buffers=<num>','num_dma_channels=<num>']

string pre-defined Value list for the Generic parameter.

'horizontal_resolution' 1 integer pre-defined Value list for horizontal resolution.

'image_height' [] Unsupported query.

'image_width' [] Unsupported query.

'info_boards' ['device:<device_id>board_type:<board_type>']

string dynamic A list of the available devices.

'parameters' ['<parameters>'] string pre-defined Pre-defined parameters of the HALCONinterface.

'parameters_readonly' ['<parameters>'] string pre-defined Pre-defined read-only parameters of theHALCON interface.

'parameters_writeonly' ['<parameters>'] string pre-defined Pre-defined write-only parameters of theHALCON interface.

'port' [0, 1, 2, 3] integer pre-defined Pre-defined list of possible port numbers.

'revision' '<revision>' string pre-defined Revision number of the SiliconSoftware

2

interface.

'start_column' [] Unsupported query.

'start_row' [] Unsupported query.

'vertical_resolution' 1 integer pre-defined Value list for vertical resolution.

Parameters for open_framegrabber

Parameter Values Default Type Description

Name 'SiliconSoftware' string Name of the HALCON interface.

HorizontalResolution 1 1 integer Ignored (the desired image resolution is set viathe microEnable configuration file specified in theCameraType parameter!).

VerticalResolution 1 1 integer Ignored (the desired image resolution is set viathe microEnable configuration file specified in theCameraType parameter!).

ImageWidth 0, <width> 0 integer Width of the desired image part ('0' stands for themaximum image height). This value has to beequal or smaller than the maximum imageheight. If the value does not fit in the step width,it is rounded to next valid value.

ImageHeight 0, <height> 0 integer Height of the desired image part ('0' stands forthe maximum image height). This value has to beequal or smaller than the maximum imageheight. If the value does not fit in the step width,it is rounded to next valid value.

StartRow <row> 0 integer Row coordinate of the upper left pixel within thedesired image part.

StartColumn <column> 0 integer Column coordinate of the upper left pixel withinthe desired image part.

Field --- Ignored.

BitsPerChannel --- Ignored (the desired pixel depth will be setaccordingly to the parameter settings in themicroEnable configuration file).

ColorSpace --- Ignored (the desired color space will be setaccordingly to the parameter settings in themicroEnable configuration file).

Generic ' ', ['discovery_timeout=<ms>','num_buffers=<num>','num_dma_channels=<num>'], -1

-1 mixed discovery_timeoutWith the Generic parameter'discovery_timeout' a time in ms can bespecified to detect the devices connected toa Silicon Software GigE Vision board.Default: 2000. num_buffersWith the Generic parameter 'num_buffers' theactual number of image buffers used in theHALCON acquisition interface can be setbefore the camera is initialized. Note that theparameter must be specified as a string,e.g., 'num_buffers=5'. Note that depending onthe image size of the used camera a largenumber of buffers can exceed the availablememory size of your computer. Default: 2. num_dma_channelsWith the Generic parameter'num_dma_channels' the user can specifythe number of actual used DMA channelssupported by the applet (see also the use of

3

DmaToPC or SmartApplets). If an appletuses multiple DMA channels, the parameter'num_dma_channels' has to match thisnumber, e.g., if a SmartApplet with twooutput DMA channels is used, the user mustset 'num_dma_channels=2'. With the Portparameter value set to 0, the HALCONSiliconSoftware interface will provide a multi-channel image on the microEnable DMAchannels 0 and 1 on every call ofgrab_image or grab_image_async. Default:1.

ExternalTrigger 'false', 'true' 'false' string If set to 'true', the trigger mode will be set to'async_trigger', otherwise the configuration of thecamera file will be used.

CameraType '<mcf_file>' ' ' string Specify the name (including the full path name)of the desired camera configuration file (mcf file).To configure a specific camera setup please usethe microDisplay program which is part ofmicroEnable software.

Device '0', '1', ... '0' string Number of the frame grabber board (passed as astring!).

Port 0, 1, 2, 3 0 integer Specify the port the camera is connected to.Corresponds to the internally used DMA channel(0 for Port A, 1 for Port B, ...)

LineIn --- Ignored.

Parameters for set_framegrabber_paramNote that most parameters of this interface are generic, i.e. all implemented HALCON parameters can bequeried by calling info_framegrabber(...,'parameters',...). All actually available parameters and alsothe generic applet parameters can be queried by callingget_framegrabber_param(...,'available_param_names',...).

Parameter Values Type Description

'blob_area' 'disable', 'enable' string Controls the grab_data/grab_data_async datatuple. The area represents the number of pixelsfrom a detected blob. If this feature is disabled theinformation is not present. Note that thisfunctionality is only available in combination with aSegmentation SmartApplet (Blob).

'blob_bounding_box' 'disable', 'enable' string Controls the grab_data/grab_data_async datatuple. The bounding box is represented by theupper-left row, upper-left column, lower-left row, andlower-left column of each blob. If this feature isdisabled the four coordinates are not present. Notethat this functionality is only available incombination with a Segmentation SmartApplet(Blob).

'blob_center_of_gravity' 'disable', 'enable' string Controls the grab_data/grab_data_async datatuple. Returns the coordinate row and coordinatecolumn from the center of gravity of each blob. Ifthis feature is disabled the two coordinates are notpresent. Note that this functionality is onlyavailable in combination with a SegmentationSmartApplet (Blob).

'blob_contour_length' 'disable', 'enable' string Controls the grab_data/grab_data_async datatuple. The contour length is divided into aorthogonal and diagonal contour length. If thisfeature is disabled the two contour length valuesare not present. Note that this functionality is only

4

available in combination with a SegmentationSmartApplet (Blob).

'blob_region' 'disable', 'enable' string Controls the grab_data/grab_data_asyncHALCON regions. The region information is derivedby the bounding box given by the SegmentationSmartApplet. If this feature is disabled theHALCON regions are not present. Note that thisfunctionality is only available in combination with aSegmentation SmartApplet (Blob).

'cc0_select' 'clk', 'exsync', '!exsync', 'exsync2','!exsync2', 'flash', '!flash', 'gnd', 'vcc'

string Assign a particular signal to Camera Link's CC0line.

'cc1_select' 'clk', 'exsync', '!exsync', 'exsync2','!exsync2', 'flash', '!flash', 'gnd', 'vcc'

string Assign a particular signal to Camera Link's CC1line.

'cc2_select' 'clk', 'exsync', '!exsync', 'exsync2','!exsync2', 'flash', '!flash', 'gnd', 'vcc'

string Assign a particular signal to Camera Link's CC2line.

'cc3_select' 'clk', 'exsync', '!exsync', 'exsync2','!exsync2', 'flash', '!flash', 'gnd', 'vcc'

string Assign a particular signal to Camera Link's CC3line.

'continuous_grabbing' 'disable', 'enable' string Activate or deactivate the continuous grabbingmode. If the continuous mode is enabled, the framegrabber board will grab all the time and the imageswill queued in the internal given buffers (seeparameter 'num_buffers'). Note that in this modeyou can acquire images also from line scancameras without losing any image data. Default:'disable'.

'coprocessor' 'disable', 'enable' string Activate or deactivate the coprocessor mode. If thecoprocessor mode is active the parameter'do_process_image' can be used to send an imageto the frame grabber. The frame grabber specificapplet will process the image immediately. Theprocessed image must be fetched viagrab_image_async. During the activation of thecoprocessor mode the current image processingwill be stopped to adapt the buffer settingsaccordingly. Please check the Silicon Softwaredocumentation to get further information aboutgenerating an applet containing the coprocessorfunctionality. Up to now this functionality is onlyavailable with microEnable IV fx1/VD1 framegrabber.

'current_buffer_index' 0 ... <num_buffers>-1 integer Index of the current image buffer, see alsoparameter 'num_buffers'.

'digital_output' 0, 1, 2, 3 integer Combination of the two digital output signals.

'do_abort_grab' --- Cancel current grab.

'do_exsync' 'disable', 'enable' string Switch on/off the exsync signal to the camera.

'do_flash' 'disable', 'enable' string Switch on/off the flash signal to the camera.

'do_force_trigger' --- Send a software trigger from the application to thecamera. This action parameter is only applicablewhen the trigger mode is set to'async_software_trigger'.

'do_process_image' <surrogate> integer Sends a HALCON image surrogate to the framegrabber for processing, see also parameter'coprocessor'. This surrogate should be generatedby calling the operator obj_to_integer.

'exposure' 0 ... 1000000 integer Exposure time in microseconds.

'exposure_signal' 'high_active', 'low_active' string Polarity of the exposure signal.

'flash_signal' 'high_active', 'low_active' string Polarity of the flash signal.

5

'frame_rate' 0.5 ... 20000.0 float Number of images per second.

'grab_timeout' <milliseconds> integer Specify the desired timeout in milliseconds foraborting a pending grab. Only values divisible by1000 are accepted. In any other case the value willbe rounded to the next lower value. If -1 isspecified, the timeout is set to INFINITE. Thesmallest possible timeout value is 2000. Default:5000.

'image_height' <height> integer Height of the desired image part. Note that due toimage buffer re-allocation this setting may takesome time.

'image_trigger' 'disable', 'enable' string Enable or disable the image trigger.

'image_trigger_input' 0, 1, 2, 3 integer Input source, if the image trigger is in externalmode.

'image_trigger_mode' 'async_gated', 'async_trigger','free_run'

string Image trigger for line scan cameras generates aso-called Image Gate, which groups all lines to avalid frame, if it is active. Specify the desired imagetrigger mode:

'async_gated': Image Gate is as long active asthe external trigger source is active. 'async_trigger': Image Gate is started by anexternal trigger signal. 'free run': Image Gate is valid all the time.

In all modes the Image Gate becomes inactive afterreaching an image height of N lines.

'image_trigger_signal' 'falling', 'rising' string Input signal of the image trigger, in case externalmode.

'image_width' <width> integer Width of the desired image part. Note that due toimage buffer re-allocation this setting may takesome time.

'line_downscale' 1 ... 255 integer If your external trigger signal is too fast, you canset the value of how often the frequency of thetrigger signal has to be divided.

'line_downscale_phase' 1 ... 255 integer In additional to the downscale value you can setthe phase position. For example, a value of 4means to turn the phase position about 90º.

'line_exposure' 0 ... 20000 integer Line exposure.

'line_period' 0 ... 4369.05 float Line period.

'line_trigger_delay' 0 ... 2184.517 float Delay of the line trigger.

'line_trigger_input' 0, 1, 2, 3 integer Input source of the line trigger.

'line_trigger_mode' 'grabber_controlled', 'async_trigger','grabber_controlled_gated'

string Specify the line trigger mode: 'grabber_controlled'means that a periodical signal is created, whichdefines the line frequency. In 'async_trigger' modethe signal is created by an external trigger.'grabber_controlled_gated' is similar to the'grabber_controlled' mode, except that it is onlyactive, if the Image Gate is active.

'line_trigger_signal' 'falling', 'rising' string Polarity of the line trigger signal.

'multi_roi_module_name' <string> string Specifies the base name of the RoI module. Thisfunctionality is only supported if a RoI module fromVisualApplets is used.

'multi_roi_num' 1 ... <num> integer Specifies the number of RoIs to request. Thisfunctionality is only supported if a RoI module fromVisualApplets is used.

6

'multi_roi_xlength' 1 ... <image_width> integer Specifies the xlength (width) for each RoI. In caseof multiple RoIs, the parameter values are specifiedas tuple. This functionality is only supported if aRoI module from VisualApplets is used.

'multi_roi_xoffset' 1 ... <image_width> integer Specifies the xoffset (start column) for each RoI. Incase of multiple RoIs, the parameter values arespecified as tuple. This functionality is onlysupported if a RoI module from VisualApplets isused.

'multi_roi_ylength' 1 ... <image_height> integer Specifies the ylength (height) for each RoI. In caseof multiple RoIs, the parameter values are specifiedas tuple. This functionality is only supported if aRoI module from VisualApplets is used.

'multi_roi_yoffset' 1 ... <image_heigth> integer Specifies the yoffset (start row) for each RoI Incase of multiple RoIs, the parameter values arespecified as tuple. This functionality is onlysupported if a RoI module from VisualApplets isused.

'num_field_parameter' 1 ... <num> integer Some generic applet parameter values are providedas parameter fields. To readout the parameter fieldsthe number of parameter values has to set inadvance since querying this information internallyis currently not supported by the Silicon SoftwareSDK. The number of field parameters can bedetermined by querying the generic parameterwhich contains the number of field parameters. It isalso sufficient to remember the number ofparameters if the values were set before. Pleasenote that in case of a erroneously set number, e.g.,a to height value, a misleading result will bereturned.

'num_scans' 1 ... <num> integer Controls the number of scans to define the heightof the disparity image. This parameter is onlyneeded by the 3D Triangulation SmartApplets incombination with the operators grab_data andgrab_data_async. In any other case thisparameter is ignored. Per default the 'num_scans'parameter is 1. In this case only one disparityimage with one disparity line and one cameraimage will be created. Please note that the'num_scans' parameter affects the number ofinternal grabbed images. In case of a slow cameraa high number of scans needs time to achieve theimages. See also the section "Support of 3DTriangulation SmartApplet Family" below.

'port' 0, 1 integer Switch to the camera with the specified number (0for Port A, 1 for Port B).

'shaft_encoder' 'disable', 'enable' string Switch the shaft encoder on/off. By enabling it theencoder compensation is reset.

'shaft_encoder_input' 0, 1, 2, 3 integer Selects the input signal for source B of the shaftencoder.

'shaft_encoder_leading_source' 0, 1, 2, 3 integer Determines the leading signal (direction) of theshaft encoder filter.

'start_async_after_grab_async' 'disable', 'enable' string By default a new asynchronous grab command isautomatically given to the acquisition device at theend of grab_image_async. If the parameter'start_async_after_grab_async' is set to 'disable',this new grab command is omitted.

'start_column' <column> integer Column coordinate of the upper left pixel within thedesired image part.

7

'start_row' <row> integer Row coordinate of the upper left pixel within thedesired image part.

'strobe_delay' <microseconds> integer Strobe pulse delay in microseconds.

'trigger_input' 0, 1, 2, 3 integer Channel of the trigger input signal.

'trigger_mode' 'async_software_trigger','async_trigger', 'free_run','grabber_controlled'

string Specify the desired trigger mode:

'async_software_trigger': the image acquisitionis performed by software via the actionparameter 'do_force_trigger'. 'async_trigger': the image acquisition is forcedby an external trigger signal. 'free_run': no signals are sent to the camera. 'grabber_controlled': the frame grabber sends asignal to the camera in order to control theimage acquisition.

'trigger_signal' 'falling', 'rising' string Polarity of the trigger signal.

'volatile' 'disable', 'enable' string Grayscale only. In the volatile mode the twoimage acquisition interface buffers are used directlyto store HALCON images. This is the fastest modeavoiding to copy raw images in memory. However,be aware that older images are overwritten againand again as a side-effect. Thus, you can onlyprocess one image while you grab another image.Older images are invalid!

Parameters for get_framegrabber_paramThere may exist additional read-only parameters with the following postfixes:

'_description': These parameters provide the tool-tip of the corresponding parameter as a string. '_range': These parameters provide the minimum, maximum, step width, and default values for thecorresponding integer or float parameter as a tuple with 4 elements, e.g.,get_framegrabber_param(..,'Shutter_range',..) will return the output tuple[min,max,step,default]. Optionally, this tuple can also contain additional valid string values like'auto' or 'manual'. '_values': These parameters provide the valid value list for the corresponding parameter as a tuple, e.g.,get_framegrabber_param(..,'volatile_values',..) will return the output tuple['enable','disable'].

All these postfixed parameter names are not returned when callinginfo_framegrabber(..,'parameters',..) and are used to enable the easy parameterization via ageneric graphical user interface, particularly the HDevelop Image Acquisition Assistant.

Parameter Values Default Type Kind Description

'applet_type' '<type>' string dynamic Type of the used applet if this parameter is actuallysupported by the used applet.

'available_param_names'

['<names>'] string dynamic A tuple containing the names of all availableparameters. In contrast to this, the call ofinfo_framegrabber(...'parameters',...)' returnsonly the pre-defined list of parameters, without theadditional applet-specific parameters.

'bits_per_channel' <default> 8 integer pre-defined The value is not used, so a default value is returned.

'blob_area' 'disable', 'enable' 'enable' string pre-defined Controls the grab_data/grab_data_async data tuple.The area represents the number of pixels from adetected blob. If this feature is disabled the informationis not present. Note that this functionality is onlyavailable in combination with a SegmentationSmartApplet (Blob).

'blob_bounding_b 'disable', 'enable' 'disable' string pre-defined Controls the grab_data/grab_data_async data tuple.

8

ox' The bounding box is represented by the upper-left row,upper-left column, lower-left row, and lower-left columnof each blob. If this feature is disabled the fourcoordinates are not present. Note that this functionalityis only available in combination with a SegmentationSmartApplet (Blob).

'blob_center_of_gravity'

'disable', 'enable' 'enable' string pre-defined Controls the grab_data/grab_data_async data tuple.Returns the coordinate row and coordinate column fromthe center of gravity of each blob. If this feature isdisabled the two coordinates are not present. Note thatthis functionality is only available in combination with aSegmentation SmartApplet (Blob).

'blob_contour_length'

'disable', 'enable' 'enable' string pre-defined Controls the grab_data/grab_data_async data tuple.The contour length is divided into a orthogonal anddiagonal contour length. If this feature is disabled thetwo contour length values are not present. Note thatthis functionality is only available in combination with aSegmentation SmartApplet (Blob).

'blob_region' 'disable', 'enable' 'enable' string pre-defined Controls the grab_data/grab_data_async HALCONregions. The region information is derived by thebounding box given by the Segmentation SmartApplet.If this feature is disabled the HALCON regions are notpresent. Note that this functionality is only available incombination with a Segmentation SmartApplet (Blob).

'board_type' '<type>' string dynamic Actual board type.

'camera_status' <status> integer dynamic Camera status on the used port: If the return value is 1an active camera on the specified port is found,otherwise the return value is 0.

'camera_type' '<mcf_file>' '<mcf_file>' string pre-defined Current camera type.

'cc0_select' 'clk', 'exsync','!exsync', 'exsync2','!exsync2', 'flash','!flash', 'gnd', 'vcc'

string dynamic Assign a particular signal to Camera Link's CC0 line.

'cc1_select' 'clk', 'exsync','!exsync', 'exsync2','!exsync2', 'flash','!flash', 'gnd', 'vcc'

string dynamic Assign a particular signal to Camera Link's CC1 line.

'cc2_select' 'clk', 'exsync','!exsync', 'exsync2','!exsync2', 'flash','!flash', 'gnd', 'vcc'

string dynamic Assign a particular signal to Camera Link's CC2 line.

'cc3_select' 'clk', 'exsync','!exsync', 'exsync2','!exsync2', 'flash','!flash', 'gnd', 'vcc'

string dynamic Assign a particular signal to Camera Link's CC3 line.

'color_space' '<color_space>' 'gray' string pre-defined The value is not used, so a default value is returned.

'continuous_grabbing'

'disable', 'enable' 'disable' string pre-defined Activate or deactivate the continuous grabbing mode. Ifthe continuous mode is enabled, the frame grabberboard will grab all the time and the images will queuedin the internal given buffers (see parameter'num_buffers'). Note that in this mode you can acquireimages also from line scan cameras without losing anyimage data. Default: 'disable'.

'coprocessor' 'disable', 'enable' 'disable' string pre-defined Activate or deactivate the coprocessor mode. If thecoprocessor mode is active the parameter'do_process_image' can be used to send an image tothe frame grabber. The frame grabber specific appletwill process the image immediately. The processedimage must be fetched via grab_image_async. Duringthe activation of the coprocessor mode the current

9

image processing will be stopped to adapt the buffersettings accordingly. Please check the SiliconSoftware documentation to get further information aboutgenerating an applet containing the coprocessorfunctionality. Up to now this functionality is onlyavailable with microEnable IV fx1/VD1 frame grabber.

'current_buffer_index'

0 ...<num_buffers>-1

integer dynamic Index of the current image buffer, see also parameter'num_buffers'.

'device' '0', '1', ... '0' string pre-defined Current device id.

'digital_input' <digin> integer dynamic Read the current status of the digital input lines.

'digital_output' 0, 1, 2, 3 integer dynamic Combination of the two digital output signals.

'exposure' <microseconds> 4000 integer dynamic Exposure time in microseconds.

'exposure_signal' 'high_active','low_active'

'low_active' string pre-defined Polarity of the exposure signal.

'external_trigger' 'false', 'true' 'false' string pre-defined Status of the external trigger.

'field' '<default>' 'interlaced' string pre-defined The value is not used, so a default value is returned.

'flash_signal' 'high_active','low_active'

'low_active' string pre-defined Polarity of the flash signal.

'frame_rate' 0.5 ... 20000.0 float dynamic Number of images per second.

'generic' ' ',['discovery_timeout=<ms>','num_buffers=<num>','num_dma_channels=<num>'], -1

-1 mixed pre-defined Values of the Generic parameter.

'grab_timeout' <milliseconds> 5000 integer pre-defined Current grab timeout in milliseconds.

'horizontal_resolution'

<resolution> 1 integer pre-defined Current value of horizontal resolution.

'image_available' 0, 1 integer dynamic Status of the last asynchronous grab command. Thevalue 1 means that the image is already acquired andthus can be fetched by grab_image_async withoutdelay. Note that this parameter is especially useful incombination with external triggering.

'image_height' <height> 0 integer pre-defined Height of the desired image part ('0' stands for thecomplete image).

'image_tag' <number> integer dynamic Image tag of the most recently grabbed image.

'image_trigger' 'disable', 'enable' string dynamic Enable or disable the image trigger.

'image_trigger_input'

0, 1, 2, 3 integer dynamic Input source, if the image trigger is in external mode.

'image_trigger_mode'

'async_gated','async_trigger','free_run'

string dynamic Image trigger mode.

'image_trigger_signal'

'falling', 'rising' string dynamic Input signal of the image trigger, in case externalmode.

'image_width' <width> 0 integer pre-defined Width of the desired image part ('0' stands for thecomplete image).

'internal_device_pointer'

<pointer> integer dynamic Pointer to the device which enables direct deviceaccess. Use at your own risk!

'line_downscale' 1 ... 255 integer dynamic If your external trigger signal is too fast, you can setthe value of how often the frequency of the triggersignal has to be divided.

10

'line_downscale_phase'

1 ... 255 integer dynamic In additional to the downscale value you can set thephase position. For example, a value of 4 means toturn the phase position about 90º.

'line_exposure' 0 ... 20000 integer dynamic Line exposure.

'line_in' <default> 0 integer pre-defined The value is not used, so a default value is returned.

'line_period' 0 ... 4369.05 float dynamic Line period.

'line_trigger_delay'

0 ... 2184.517 float dynamic Delay of the line trigger.

'line_trigger_input'

0, 1, 2, 3 integer dynamic Input source of the line trigger.

'line_trigger_mode'

'grabber_controlled','async_trigger','grabber_controlled_gated'

string dynamic Specify the line trigger mode: 'grabber_controlled'means that a periodical signal is created, whichdefines the line frequency. In 'async_trigger' mode thesignal is created by an external trigger.'grabber_controlled_gated' is similar to the'grabber_controlled' mode, except that it is only active,if the Image Gate is active.

'line_trigger_signal'

'falling', 'rising' string dynamic Polarity of the line trigger signal.

'multi_roi_module_name'

<string> string dynamic Specifies the base name of the RoI module. Thisfunctionality is only supported if a RoI module fromVisualApplets is used.

'multi_roi_num' 1 ... <num> integer dynamic Specifies the number of RoIs to request. Thisfunctionality is only supported if a RoI module fromVisualApplets is used.

'multi_roi_xlength' 1 ... <image_width> integer dynamic Specifies the xlength (width) for each RoI. In case ofmultiple RoIs, the parameter values are specified astuple. This functionality is only supported if a RoImodule from VisualApplets is used.

'multi_roi_xoffset' 1 ... <image_width> integer dynamic Specifies the xoffset (start column) for each RoI. Incase of multiple RoIs, the parameter values arespecified as tuple. This functionality is only supportedif a RoI module from VisualApplets is used.

'multi_roi_ylength' 1 ...<image_height>

integer dynamic Specifies the ylength (height) for each RoI. In case ofmultiple RoIs, the parameter values are specified astuple. This functionality is only supported if a RoImodule from VisualApplets is used.

'multi_roi_yoffset' 1 ...<image_heigth>

integer dynamic Specifies the yoffset (start row) for each RoI In case ofmultiple RoIs, the parameter values are specified astuple. This functionality is only supported if a RoImodule from VisualApplets is used.

'name' 'SiliconSoftware' string pre-defined Name of the HALCON interface.

'num_buffers' <number> 2 integer pre-defined Number of buffers used for the image acquisition.

'num_dma_channels'

<number> integer dynamic Number of internally used DMA channels.

'num_field_parameter'

1 ... <num> integer dynamic Some generic applet parameter values are provided asparameter fields. To readout the parameter fields thenumber of parameter values has to set in advancesince querying this information internally is currentlynot supported by the Silicon Software SDK. Thenumber of field parameters can be determined byquerying the generic parameter which contains thenumber of field parameters. It is also sufficient toremember the number of parameters if the values wereset before. Please note that in case of a erroneouslyset number, e.g., a to height value, a misleading resultwill be returned.

11

'num_scans' 1 ... <num> integer dynamic Controls the number of scans to define the height ofthe disparity image. This parameter is only needed bythe 3D Triangulation SmartApplets in combination withthe operators grab_data and grab_data_async. Inany other case this parameter is ignored. Per defaultthe 'num_scans' parameter is 1. In this case only onedisparity image with one disparity line and one cameraimage will be created. Please note that the'num_scans' parameter affects the number of internalgrabbed images. In case of a slow camera a highnumber of scans needs time to achieve the images.See also the section "Support of 3D TriangulationSmartApplet Family" below.

'port' 0, 1, 2, 3 0 integer pre-defined Port number.

'revision' '<revision>' string pre-defined Revision number of the SiliconSoftware interface.

'serial_number' '<serial>' string dynamic Serial number of the board.

'shaft_encoder' 'disable', 'enable' string dynamic Switch the shaft encoder on/off. By enabling it theencoder compensation is reset.

'shaft_encoder_input'

0, 1, 2, 3 integer dynamic Selects the input signal for source B of the shaftencoder.

'shaft_encoder_leading_source'

0, 1, 2, 3 integer dynamic Determines the leading signal (direction) of the shaftencoder filter.

'start_async_after_grab_async'

'disable', 'enable' 'enable' string pre-defined Status of 'start_async_after_grab_async'.

'start_column' <column> 0 integer pre-defined Column coordinate of the upper left pixel of the desiredimage part. If the value does not fit in the step width, itis rounded to next valid value.

'start_row' <row> 0 integer pre-defined Row coordinate of the upper left pixel of the desiredimage part. If the value does not fit in the step width, itis rounded to next valid value.

'strobe_delay' <microseconds> 0 integer dynamic Strobe pulse delay in microseconds.

'timestamp' <microseconds> integer dynamic Gets the timestamp (32bit) from the previously grabbedimage in microseconds. If 'continuous_grabbing' isenabled, the parameter returns always the most recenttimestamp.

'trigger_input' 0, 1, 2, 3 integer dynamic Channel of the trigger input signal.

'trigger_mode' 'async_software_trigger','async_trigger','free_run','grabber_controlled'

string dynamic Specify the desired trigger mode:

'async_software_trigger': the image acquisition isperformed by software via the action parameter'do_force_trigger'. 'async_trigger': the image acquisition is forced byan external trigger signal. 'free_run': no signals are sent to the camera. 'grabber_controlled': the frame grabber sends asignal to the camera in order to control the imageacquisition.

'trigger_signal' 'falling', 'rising' 'falling' string pre-defined Polarity of the trigger signal.

'vertical_resolution'

<resolution> 1 integer pre-defined Current value of vertical resolution.

'volatile' 'disable', 'enable' 'disable' string pre-defined Grayscale only. In the volatile mode the two imageacquisition interface buffers are used directly to storeHALCON images. This is the fastest mode avoiding tocopy raw images in memory. However, be aware thatolder images are overwritten again and again as a side-effect. Thus, you can only process one image whileyou grab another image. Older images are invalid!

12

Operator set_framegrabber_lutNot supported by this interface.

Operator get_framegrabber_lutNot supported by this interface.

Operator set_framegrabber_callbackNot supported by this interface.

Operator get_framegrabber_callbackNot supported by this interface.

Operator grab_image_startStarts a new asynchronous grab. See also grab_image_start.

Operator grab_imagegrab_image starts a new synchronous grab. See also grab_image. Note that the interface converts theimage from the device to the desired image format specified by the parameters 'image_width', 'image_height','start_row', 'start_column', 'bits_per_channel', and 'color_space'.

Operator grab_image_asyncgrab_image_async returns an image and starts the next asynchronous grab. See also grab_image_async.Note that the interface converts the image from the device to the desired image format specified by theparameters 'image_width', 'image_height', 'start_row', 'start_column', 'bits_per_channel', and 'color_space'.

Operator grab_dataThe behavior of the operator depends on the used SmartApplets family. The operator is needed to work withthe Segmentation and Triangulation SmartApplets family. Please see the section "Support of SegmentationSmartApplets Family" or "Support of Binarization SmartApplets Family" to get further information.

Operator grab_data_asyncSame return values as grab_data, but here an asynchronous grab is started.

Operator close_framegrabberThis operator closes the device. See also close_framegrabber.

Parameterization of GigE Vision CamerasThe generic parameters of a GigE Vision camera can also be handled via the HALCON operatorsget_framegrabber_param and set_framegrabber_param. In this case the user has to add the prefix 'gbe:'to the parameter name, e.g., use set_framegrabber_param(...,'gbe:Gain',42) to set the cameraparameter "Gain" to the value 42 or get_framegrabber_param(...,'gbe:Gain',...) to query the currentvalue.

To execute a write-only GigE Vision command parameter via the operator set_framegrabber_param, theuser has to add the prefix 'gbex:' to the parameter name, e.g., use

13

set_framegrabber_param(...,'gbex:TriggerSoftware',‐1) to send a software trigger to a GigE Visioncamera. The value of the parameter will be ignored.

Note that the list of available camera parameters can not be queried in advance, e.g., by callingget_framegrabber_param(...'available_param_names'...) orinfo_framegrabber(...,'parameters',...). To list all actually available camera parameters you can usethe Silicon Software GigE Explorer application.

Support of Binarization SmartApplet FamilyWith the Binarization SmartApplets family, the HALCON SiliconSoftware interface will deliver also a binaryimage which is calculated by the FPGA. With the Port parameter value set to 0, the interface will provide foreach call of grab_image or grab_image_async a multi-channel image corresponding to the microEnableDMA channels 0 and 1. The first channel contains the standard image data. The second channel providesthe calculated binary image. The specific settings (e.g., the threshold) ca be adjusted in the configuration fileor by setting the generic Binarization SmartApplets parameters via set_framegrabber_param.

Support of Segmentation SmartApplet FamilyWith the Segmentation SmartApplets family, the user has the possibility to get preprocessed blob informationby calling grab_data or grab_data_async.

A Segmentation SmartApplet will find blobs which are based on a user specific parameterisation. Thespecific settings can be adjusted in the the configuration file or by setting the generic SegmentationSmartApplets parameter via set_framegrabber_param.

To accelerate the call of grab_data/grab_data_async the calculation of these features can be disabled viathe parameters 'blob_region', 'blob_center_of_gravity', 'blob_contour_length', 'blob_area', and'blob_bounding_box'. By default, all features except the integer values for the bounding box are enabled. If allfeatures are enabled, the region tuple will return the detected blobs and the data tuple will return the followinginteger values for each blob: cogx, cogy, conto, contd, area, bbx0, bby0, bbx1, bby1.

Parameter Type Count Description

'image' 1 Returns the grabbed image from DMA channel 0.

'contours' not used

'region' HALCON regions which are based on the bounding boxes of the blobs which aredelivered by the Segmentation SmartApplets.

'data' tuple with integers Special data about each blob. The provided information about each blob will be deliveredsuccessively by one HALCON Tuple. Each blob provides the following information:

Center of gravity (cogx,cogy) Contour length of the blob (conto,contd) Area size of the blob (area) Bounding box (bbx0,bby0,bbx1,bby1).

Support of 3D Triangulation SmartApplet FamilyWith the 3D Triangulation SmartApplets family, the HALCON SiliconSoftware interface will deliver also adisparity image that is calculated by the FPGA. The user has the possibility to receive this pre-processedimage by calling grab_data or grab_data_async. To receive an image with multiple disparity lines at once, the number of disparity lines can be set viaset_framerabber_param(...,'num_scans',...). The default is 1. Please use the generic 3D Triangulation SmartApplets parameter 'FG_3D_IMAGE_OUTPUT' to enable ordisable the output of images which correspond to the calculated disparity image lines. By default, theparameter 'FG_3D_IMAGE_OUTPUT' is enabled, and grab_data or grab_data_async returns multiple

14

images. The first image is always the disparity image. Please note, if you change the parameter'FG_3D_IMAGE_OUTPUT' after calling grab_data_async, a current pending grab will be aborted. Please use the generic 3D Triangulation SmartApplets parameter 'FG_3D_THRESHOLD' to set thethreshold parameter that influences the detection of the laser line. The default value for this parameter is 155. The image width of the camera and the corresponding disparity image is always aligned (reduced) to adivisible value of 8 pixels.

Parameter Type Count Description

'image' float Contains the disparity information in the first channel of the image parameter. The content of theimage parameter is controlled by the HALCON parameter 'num_scans' and the genericSmartApplets parameter 'FG_3D_IMAGE_OUTPUT'. If the 'FG_3D_IMAGE_OUTPUT' parameter isset to 0 (laserline and image), the image parameter provides a multichannel image.

'contours' not used

'region' not used

'data' not used

Support of Multi RoI Visual Applet ModulesWith the Multi RoI module provided by VisualApplets the HALCON SiliconSoftware image acquisitioninterface supports the request of multiple Region of Interests (RoI) for each buffered image. The RoIs areaccessible via images returned by grab_data and grab_data_async. The configuration of the RoI modulecan be done by using the parameters listed in the table below. Please use the set_parameter_param andget_framegrabber_param operators as usual. To get further information about the RoI functionality, pleaseread the module section provided in the VisualApplets documentation. Please use the following parameters toconfigure the RoI module:

multi_roi_module_name: Specifies the base name of the RoI module stringmulti_roi_num: Specifies the number of RoIs to request integermulti_roi_xlength: Specifies the xlength (width) for each RoI integer tuplemulti_roi_xoffset: Specifies the xoffset (start column) for each RoI integer tuplemulti_roi_ylength: Specifies the ylength (height) for each RoI integer tuplemulti_roi_yoffset: Specifies the yoffset (start row) for each RoI integer tuple

Please note, if you have trouble setting the parameter 'multi_roi_num', please check the maximum number of RoIsprovided by the RoI module. The maximum number can only be changed before the applet is generated. If anapplet with RoI functionality is used, the parameter 'continuous_grabbing' is not supported. The multi RoIparameters are not accessible by the HALCON Image Acquisition Assistant.

HDevelop ExamplesFor this interface there are the following examples available:

siliconsoftware_continuous.hdev - Grabbing images with continuous grabbing. siliconsoftware_gige_vision.hdev - Shows usage of a Silicon Software GigE Vision frame grabber. siliconsoftware.hdev - Benchmark siliconsoftware_parameters.hdev - Lists all parameters of a device. siliconsoftware_simple.hdev - A simple example to show the usage of the interface. siliconsoftware_smartapplets.hdev - Shows usage of Silicon Software SmartApplets. siliconsoftware_multiroi.hdev - Shows usage of Silicon Software VisualApplets' RoI functionality. siliconsoftware_fieldparameter.hdev - Shows how to access the Silicon Software generic field parameter. siliconsoftware_objectmodel3d.hdev - Shows usage of Silicon Software Triangulation SmartApplets, andhow to create a HALCON 3D object model.

Release NotesRevision 5.4 (Jun 12, 2013):

Fixed bug in continuous grabbing mode. In case of a Standard Acquisition Applet with a single camera

15

that is not connected to Camera Link port A, a wrong DMA channel was internally selected. Fixed bug in buffer allocation during the activation of continuous grabbing. Added missing parameter 'do_process_image_values'. Fixed bug in close_framegrabber.

Revision 5.3 (May 24, 2013): Adapted to Silicon Software SDK 5.2.1. Added support of VisualApplets modules with RoI functionality. Improved the 'generic' Silicon Software parameter configuration by adding access to field parameters.Added parameters 'multi_roi_module_name', 'multi_roi_num', 'multi_roi_xlength', 'multi_roi_xoffset','multi_roi_ylength', 'multi_roi_yoffset', and 'num_field_parameter'. Added new HDevelop example programs 'siliconsoftware_multiroi.hdev' and'siliconsoftware_fieldparameter.hdev'. Fixed bug if an unknown 'description' parameter was used. Corrected documentation of the Generic parameter. Fixed bug in close_framegrabber when using more than one camera in case of Silicon SoftwareGigE Vision boards. Fixed bug in open_framegrabber: The horizontal_resulution and vertical_resolution parameters arenow ignored as documented. Adapted and unified all existing HDevelop example programs.

Revision 5.2 (Oct 29, 2012): Fixed bug in parameter 'available_param_names'. Adapted evaluation of 'applet_type' parameter inside HDevelop example'siliconsoftware_smartapplets.hdev'. Added generic parameter 'discovery_timeout'. Fixed bug in open_framegrabber. Cleanup the already opened device handles, if the initialization of aconnected device or the initialization of the Silicon Software GigE Vision board fails. Added new example 'siliconsoftware_objectmodel3d.hdev'.

Revision 5.1 (Jul 18, 2012): Extended grab_data and grab_data_async to support the 3D Triangulation SmartApplets family. Added parameter 'num_scans' to control the number of disparity lines.

Revision 5.0 (May 15, 2012): HALCON 11 version of the interface (included in HALCON 11 DVD). Fixed thread safety problem in grab_image and grab_image_async that can occur if grabbing wasaborted via the 'do_abort_grab' parameter of set_framegrabber_param. Adapted return value if grab_image or grab_image_async was aborted by the user. The return valuenow is H_ERR_FGF ("Failed grabbing of an image").

Revision 4.4 (Feb 04, 2012): Fixed bug in the continuous grabbing mode. If a timeout occurred the internal used acquisition enginewas erroneously restarted and the previously queued images were discarded. Added parameter 'image_available'. Improved error handling in open_framegrabber.

Revision 4.3 (May 30, 2011): Improved continuous grabbing mode: Now, this mode supports to queue an arbitrary number of triggersignals (corresponding to the parameter 'num_buffers'). Added parameter 'image_tag'. Added support of GigE Vision command parameters.

Revision 4.2 (Mar 15, 2011): Implemented grab_data and grab_data_async to enable the use of Segmentation SmartApplets(Blob). Added parameters 'blob_contour_length', 'blob_center_of_gravity', 'blob_area', 'blob_bounding_box',and 'blob_region' to control the Data and Region output parameters of grab_data andgrab_data_async. Added parameter 'applet_type'. Fixed bug in 'continuous_grabbing'.

Revision 4.1 (Sep 8, 2010): Adapted to Silicon Software SDK 5.1.

16

Support of Silicon Software GigE Vision boards including generic parameterization. Added functionality to use the SmartApplets or other applets with multiple DMA channels. Updated error handling in coprocessor mode, i.e., in this mode grab_image and grab_image_startwill return the error H_ERR_FNS. Adapted the board names to new Silicon Software product names. HALCON 10 version of the interface (included in HALCON 10 DVD).

Revision 4.0 (Mar 16, 2010):

First official release.

Legal disclaimer regarding hyperlinks: This page may provide users with access by hypertext links to external, non-MVTec websites. Anysuch access is provided with the understanding that the contents of non-MVTec sites are beyond the control of MVTec Software GmbH,that MVTec Software GmbH makes no representations whatsoever about such sites, and that users shall proceed at their own risk.MVTec Software GmbH is not responsible for the privacy practices or the content of external, non-MVTec websites.

Copyright notes: © Copyright MVTec Software GmbH. All rights reserved. Unless otherwise stated, the copyright and similar rights in thecontents of this page, including but not limited to all text, designs and images appearing herein, are copyrighted works owned by MVTecSoftware GmbH. "MVTec Software GmbH", "HALCON", and "ActivVisionTools" are registered trademarks of MVTec Software GmbH. Allother brand names, designs, service marks and trademarks (whether or not registered) referenced or used herein are the property of theirrespective owners.

acqdump 1.2 / hdoc 1.1 / Generated: Tue Jul 9 17:49:32 CEST 2013

17

top related