 |
|
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):
|