MVTec Software GmbH
  Building Vision For Business
Halcon

HALCON 7.1 Frame Grabber Interface for Matrox Meteor-II Boards

This page provides the documentation of the HALCON MeteorII interface for the Matrox frame grabber board Meteor-II. Registered customers can download the latest revision of this interface from the MVTec WWW server.

Revision: 2.7

System Requirements

  • Intel compatible PC with Windows NT 4.0 (Service Pack 5), Windows 2000 or Windows XP.
  • Successfully installed Matrox driver Meteor.sys.
  • Matrox DLLs mil.dll, milmet2.dll, milvga.dll, and milvhook.dll.
    These DLLs must be within your search path %PATH% (typically, they reside in the directory C:\Winnt\system32). If you do not have these DLLs, please contact Matrox or the vendor from which you bought the frame grabber board. Note that this interface requires the Matrox DLLs version 7.5, i.e., MIL-Lite 7.5..
  • HALCON frame grabber interface HFGMeteorII.dll or parHFGMeteorII.dll, respectively.
    If you have properly installed the interface, both DLLs should reside in bin\i586-nt4 within the HALCON base directory %HALCONROOT% you have chosen during the installation of HALCON.

Features

  • Support of Matrox Meteor-II, Meteor-II/1394, Meteor-II/cl, Metor-II/dig, and Meteor-II/mc frame grabber boards.
  • Multiple compatible cameras per board (port switching).
  • Synchronous and asynchronous grabbing.
  • External trigger (with software override of the camera configuration file).
  • Support of multiple analog and digital cameras based on camera configuration files.

Limitations

  • Only one frame grabber instance per frame grabber board (except Meteor-II/1934 and Meteor-II/Multi-Channel boards). However, multiple compatible cameras can be accessed using port switching.
  • grab_region and grab_region_async not supported.
  • No LUTs.

Description

Parameters for open_framegrabber():

Name 'MeteorII' The name of the HALCON frame grabber interface.
HorizontalResolution --- Ignored.
VerticalResolution --- Ignored.
ImageWidth --- Ignored.
ImageHeight --- Ignored.
StartRow --- Ignored.
StartColumn --- Ignored.
Field --- Ignored.
BitsPerChannel --- Ignored.
ColorSpace 'gray', 'rgb' Desired color space. Default: 'gray'.
Gain --- Ignored.
ExternalTrigger 'true', 'false' Activate/deactivate external triggering. Note that this setting overrides the corresponding setup in the camera configuration file. Default: 'false'.
CameraType 'file' Specify the name (including the full path name) of the desired camera configuration file (e.g., 'c:\\temp\\rs170.dcf') or a predefined configuration (e.g., 'M_DEFAULT', 'M_RS170'). For possible values, please see the documentation of your Meteor-II board.
Device '<BoardType>:<nr>' The type ('METEOR_II', 'METEOR_II_1394', 'METEOR_II_CL', or 'METEOR_II_DIG') and the number ('0', '1', '2' ...) of the frame grabber board (passed as one string!), e.g., 'METEOR_II:0' or 'METEOR_II_1394:1'.
Port -1, 0, 1, ..., 23 Specifies the video input (or the number of the camera in the chain for Meteor-II/1394 boards respectively). For possible values and assignment, please see the documentation of your Meteor-II board. By specifying the default '-1' the corresponding setting of the camera configuration file is used. Default: -1.
LineIn --- Ignored.

Parameters for set_framegrabber_param():

'exposure_time' nanoseconds Sets the time (in nanoseconds) for the active portion of the exposure signal (that is, the exposure time). By specifying 0, exposure is disabled and the grab is performed immediately. Note, that an error is returned if the specified exposure time cannot be generated.
'exposure_time_delay' nanoseconds Sets the delay (in nanoseconds) between the trigger and the start of exposure. Note, that an error is returned if the specified delay cannot be generated.
'external_trigger' 'true', 'false' Activate/deactivate external triggering.
'grab_timeout' milliseconds Specify the desired timeout (milliseconds passed as an integer) for aborting a pending grab. Default: 5000.
'port' -1, 0, 1, ..., 23 Switch to the video input (or the number of the camera in the chain for Meteor-II/1394 boards respectively). For possible values and assignment, please see the documentation of your Meteor-II board. Using this port switching you can access multiple cameras with one frame grabber board (see below).
'start_async_after_grab_async' 'enable', 'disable' By default, at the end of grab_image_async a new request for an asynchronous grab command is automatically given to the frame grabber board. If the parameter 'start_async_after_grab_async' is set to 'disable' this new grab command is omitted. This might be useful especially for random switching between several connected cameras. Default: 'enable'.
'start_field' 'even', 'odd', 'next', 'default' Specifies the field that the grabbing of a frame starts with. If the parameter 'start_field' is set to 'even' the grabbing starts with the even field, if it is 'odd' it starts with the 'odd' field, and in case of 'next' lthe grabbing starts with the next field. If 'start_field' is set to 'default' the grabbing starts with the board-specific default. For the actual default start field, please see the documentation of your Matrox frame grabber board. Default: 'default'.
'trigger_signal' 'default', 'rising', 'falling', 'high', 'low' 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 'high' ('low') an image can be acquired during the whole time the trigger is high (low). 'default' specifies the trigger mode in the DCF file or, if none, 'rising'.
'trigger_source' 'none', 'default', 'hw_port_camera', 'hw_port0', 'hw_port1', 'software', 'timer1', 'timer2' Defines the source of the input trigger. For details, please see the documentation of your Meteor-II board.
'do_abort_grab' --- Abort the current image acquisition.
'do_force_trigger' --- Forces an event trigger from the application, when using the external trigger. This might be useful for testing purposes. Note, that 'do_force_trigger' requires an asynchronous grab already pending!

The following parameters apply only to Matrox Meteor-II/1394 boards. Note that they (and also the valid parameter values!) depend on the capabilities of the used camera.

You can request the valid minimal and maximal integer values by calling get_framegrabber_param(...,'parameter_name_range',...) Note that the default values of most of the following parameters depend on the current camera settings!

'brightness' min ... max Sets the brightness value of the camera. If the used camera does not support brightness adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'exposure' min ... max Sets the auto exposure value of the camera. If the used camera does not support exposure adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'focus' min ... max Sets the focus value of the camera. If the used camera does not support focus adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'gamma' min ... max Sets the gamma value of the camera. If the used camera does not support gamma adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'hue' min ... max Sets the hue value of the camera. If the used camera does not support hue adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'iris' min ... max Sets the iris value of the camera. If the used camera does not support iris adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'saturation' min ... max Sets the saturation value of the camera. If the used camera does not support saturation adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'shutter' min ... max Sets the shutter value of the camera. If the used camera does not support shutter adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'ub' min ... max Sets the ub value of the camera. If the used camera does not support ub adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'video_gain' min ... max Sets the gain value of the camera. If the used camera does not support gain adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'vr' min ... max Sets the vr value of the camera. If the used camera does not support vr adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).
'zoom' min ... max Sets the zoom value of the camera. If the used camera does not support zoom adjustment, H_ERR_FGPARAM is returned (or an empty tuple in the corresponding call to get_framegrabber_param, respectively).

Parameters for get_framegrabber_param():

Additional parameters supported by get_framegrabber_param only. Note that all parameters supported by set_framegrabber_param except the ones with prefix 'do_' can also be accessed by get_framegrabber_param.

'board_type' board_type (long) Returns the actual board type.
'revision' revision (string) Revision of the HALCON MeteorII frame grabber interface.

The following parameters apply only to Matrox Meteor-II/1394 boards. Note that they depend on the capabilities of the used camera.

'brightness_range' [min (long), max (long), step (long), default (long)] Possible range for brightness. If the camera does not support brightness adjustment, an empty tuple is returned.
'exposure_range' [min (long), max (long), step (long), default (long)] Possible range for exposure. If the camera does not support exposure adjustment, an empty tuple is returned.
'focus_range' [min (long), max (long), step (long), default (long)] Possible range for focus. If the camera does not support focus adjustment, an empty tuple is returned.
'gamma_range' [min (long), max (long), step (long), default (long)] Possible range for gamma. If the camera does not support gamma adjustment, an empty tuple is returned.
'hue_range' [min (long), max (long), step (long), default (long)] Possible range for hue. If the camera does not support hue adjustment, an empty tuple is returned.
'iris_range' [min (long), max (long), step (long), default (long)] Possible range for iris. If the camera does not support iris adjustment, an empty tuple is returned.
'saturation_range' [min (long), max (long), step (long), default (long)] Possible range for saturation. If the camera does not support saturation adjustment, an empty tuple is returned.
'shutter_range' [min (long), max (long), step (long), default (long)] Possible range for shutter. If the camera does not support shutter adjustment, an empty tuple is returned.
'ub_range' [min (long), max (long), step (long), default (long)] Possible range for ub. If the camera does not support ub adjustment, an empty tuple is returned.
'video_gain_range' [min (long), max (long), step (long), default (long)] Possible range for gain. If the camera does not support gain adjustment, an empty tuple is returned.
'vr_range' [min (long), max (long), step (long), default (long)] Possible range for vr. If the camera does not support vr adjustment, an empty tuple is returned.
'zoom_range' [min (long), max (long), step (long), default (long)] Possible range for zoom. If the camera does not support zoom adjustment, an empty tuple is returned.

Multiple Cameras (Port Switching)

It is possible to connect more than one camera to a Meteor-II board. To access a specific camera, you have to specify the corresponding port. This setting can be changed dynamically using the operator set_framegrabber_param(...,'port',...) (port switching). However, in this case the used cameras must be compatible, that is of the same type or with similar features (if in doubt please contact your local vendor or Matrox).

With this mechanism you can access multiple cameras with one frame grabber handle. Note that a pending asynchronous job blocks the switching of the port. Therefore, it does not make much sense to use grab_image_async() in combination with port switching. Please see also the HDevelop example program meteor2_2ports.dev you will find in %HALCONROOT%\examples\hdevelop\Image\Framegrabber.

Meteor-II/1934 and Meteor-II/Multi-Channel boards also allow multiple frame grabber instances per frame grabber board, with different camera settings per frame grabber instance. Thus, multiple incompatible cameras can be accessed with one frame grabber board.

Release Notes

  • Revision 2.7 (Sep 5, 2007):
    • Bugfix in buffer handling.
    • New parameter 'board_type'.
  • Revision 2.6 (Jul 27, 2007):
    • Bugfix in open_framegrabber when accessing the actual board type.
  • Revision 2.5 (Mar 20, 2007):
    • Bugfix in grab_image and grab_image_async (grab_timeout).
    • Bugfix in buffer handling (M_GRAB_FRAME_END no longer used for buffer switching).
  • Revision 2.4 (Aug 14, 2006):
    • Improved use of double buffering.
    • New parameter 'start_field'.
    • Improved error messages.
    • M_GRAB_END event used for image transfer.
  • Revision 2.3 (Mar 21, 2006):
    • Bugfix to enable setting of the grab timeout.
  • Revision 2.2 (Dec 6, 2005):
    • Bugfix to enable multi-board configurations.
    • Compatibility check with underlying Matrox MIL version.
  • Revision 2.1 (Dec 8, 2004):
    • HALCON 7.1 version of the interface (included in HALCON 7.1 CD).
    • The query types 'bits_per_channel', 'camera_type', 'color_space', 'device', 'external_trigger', 'field', and 'port' for info_framegrabber provide now specific value lists for the corresponding parameters in open_framegrabber.
    • No more limitation for image height and width in open_framegrabber.
    • New parameter 'start_async_after_grab_async'.
  • Revision 2.0 (Jul 29, 2004):
    • First official release.

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