 |
|
HALCON 8.0 Image Acquisition Interface for Imagenation PX510,
PX610, and PX610A Boards
This page provides the documentation of the HALCON PX image acquisition
interface for the
PX510,
PX610, and PX610A frame grabber boards from
CyberOptics.
Registered
customers can download the
latest revision
of this interface from the
MVTec WWW server.
Revision: 3.1
System Requirements
-
Intel compatible PC with Windows NT 4.0 (Service Pack 4) or
Windows 2000.
-
Successfully installed Imagenation PX500.sys driver
(version 3.0 or higher).
-
Imagenation DLL Wpx5_nt.dll (version 3.0 or higher).
This DLL must be within your search path %PATH%. If you do not have
this DLL, please contact CyberOptics or the vendor from which
you bought the frame grabber board.
-
HALCON image acquisition interface hAcqPX.dll or
parhAcqPX.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 of HALCON.
Features
-
Multiple frame grabber boards with multiple cameras.
-
Synchronous and asynchronous grabbing.
-
External trigger.
-
Support of progressive scan cameras (PX610 and PX610A only).
-
Subsampling (with automatic switch to field grabbing
increasing both quality and speed).
-
LUTs.
-
Software control of grabbing timeout.
-
Software control of gain and video offset.
-
Software control of the type of trigger signal.
-
Software control of field to be grabbed (first).
-
Software control of wait states after switching between cameras.
Limitations
-
No cropping of image parts.
-
grab_data and grab_data_async not supported.
Description
Parameters for
open_framegrabber():
|
Name
|
|
'PX'
|
|
The name of the HALCON image acquisition interface.
|
|
HorizontalResolution
|
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 like 640, 320, 160 (NTSC) or
768, 384, 192 (PAL). Default: 1.
|
|
VerticalResolution
|
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 like 480, 240, 120 (NTSC) or
576, 288, 144 (PAL). Default: 1.
|
|
ImageWidth
|
0
|
The width of the desired image part ('0' stands for the complete
image). Default: 0.
|
|
ImageHeight
|
0
|
The height of the desired image part ('0' stands for the complete
image). Default: 0.
|
|
StartRow
|
0
|
The row coordinate of the upper left pixel within the desired image
part ('0' obviously results in delivering the complete image).
Default: 0.
|
|
StartColumn
|
0
|
The column coordinate of the upper left pixel within the desired
image part ('0' obviously results in delivering the complete image).
Default: 0.
|
|
Field
|
'first', 'second', 'next', 'interlaced', 'progressive'
|
Specify with which field to start the next grab.
Use 'progressive' for progressive scan cameras only. Note that for
progressive scan cameras the value 'auto' is not allowed for the
parameter 'CameraType'. Default: 'next'.
|
|
BitsPerChannel
|
8
|
Fixed (PX boards are 8 bits grayscale only!). Default: 8.
|
|
ColorSpace
|
'gray'
|
Fixed (PX boards are 8 bits grayscale only!). Default: 'gray'.
|
|
Generic
|
---
|
Ignored.
|
|
ExternalTrigger
|
'true', 'false'
|
Activate/deactivate external triggering. Default: 'false'.
|
|
CameraType
|
'ntsc', 'pal', 'auto', 'bl:xxx'
|
Specify the video signal: 'ntsc', 'pal', or 'auto'. The latter
will do an automatic analysis of the signal. Note that the
'auto' mode is not allowed for progressive scan cameras (see
parameter Field). For non-standard cameras,
use 'bl:xxx' to specify a blank length of 'xxx' lines. In this
case you must specify the absolute image resolution
via HorizontalResolution and VerticalResolution.
Default: 'auto'.
|
|
Device
|
'-1', 'board'
|
The number of the frame grabber board (passed as a string!) or
'-1' (default) for an automatic detection (in case you have only one
PX board installed in your PC).
|
|
Port
|
-1, 0, 1, 2, 3
|
The desired input port or -1 for an automatic detection.
Default: -1.
|
|
LineIn
|
---
|
Ignored.
|
|
Parameters for
set_framegrabber_param():
|
'external_trigger'
|
|
'true', 'false'
|
|
Activate/deactivate external triggering.
|
|
'gain'
|
0.5 - 7.97
|
A floating point number in the range of [0.5,7.97].
This value changes the video gain (see the Imagenation documentation
for details).
|
|
'grab_timeout'
|
timeout
|
Number of milliseconds (integer) after which a pending grabbing
command is aborted. The default setting is -1 (no timeout). Note
that the interface measures the time interval between the start of
the grabbing command and the delivery of the image in the next
grab_image or grab_image_async operator.
It cannot take into account the time when an asynchronous grab
was actually finished (which can be long before the image is accessed
with the next grabbing command). Thus, timeout settings shorter than
the time passing between consecutive grabbing calls might will lead to
false timeout alarms when grabbing asynchronously.
|
|
'start_async_after_grab_async'
|
'enable', 'disable'
|
By default, at the end of grab_image_async a new
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 switching between several connected cameras.
Default: 'enable'.
|
|
'suppress_errors'
|
'true', 'false'
|
If the value 'true' is chosen, PCI transfer errors
are not reported. Default: 'false'.
|
|
'switch_camera_delay'
|
blanks
|
The number of vertical blanks after switching cameras.
This value depends on the differences between the cameras connected
to one frame grabber board concerning both the video format and the
sync (see the Imagenation documentation for details).
Default: 0.
|
|
'trigger_signal'
|
'falling', 'falling_db', 'rising', 'rising_db', 'low', 'high'
|
Specify the desired type of trigger signal for external triggering.
See the Imagenation documentation for details.
Default: 'high'.
|
|
'video_offset'
|
-128 - 127
|
An integer value in the range of [-128,127].
This value changes the video offset, that is the D.C. video level.
(see the Imagenation documentation for details). Default: -8.
|
|
'volatile'
|
'enable', 'disable'
|
In the volatile mode the two image acquisition 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!
|
|
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.
Furthermore, corresponding to the
parameters supported by set_framegrabber_param, there may
exist additional read-only parameters with the following postfixes:
-
'_description': These parameters provide the tooltip of the
corresponding parameter as a string.
-
'_range': These parameters provide the minimum, maximum,
stepwidth, and default values for the corresponding integer or float
parameter as a tuple with 4 elements, e.g.,
get_framegrabber_param(..,'exposure_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 calling
info_framegrabber(..,'parameters',..) and are used
to enable the easy parameterization via a generic graphical user
interface, particularly the HDevelop Image Acquisition Assistant.
|
'revision'
|
|
revision
|
|
The revision number of the HALCON PX image acquisition interface.
|
|
Lookup Tables:
Lookup tables can be manipulated using the operators
set_framegrabber_lut()
and
get_framegrabber_lut().
The PX boards use 256 entries per LUT. It is possible to change only
a part of a LUT with set_framegrabber_lut: To do this, entries
at the beginning of the LUT that should not be changed must be set to -1.
Release Notes
-
Revision 3.1 (Apr 22, 2008):
-
Added read-only parameters with postfix '_description', '_range',
and '_values' to enable the easy parameterization via a generic
graphical user interface.
-
Revision 3.0 (May 15, 2007):
-
HALCON 8.0 version of the interface (included in HALCON 8.0 DVD).
-
Revision 2.2 (Dec 9, 2004):
-
HALCON 7.1 version of the interface (included in HALCON 7.1 CD).
-
New parameter 'start_async_after_grab_async'.
-
Default value for parameter 'grab_timeout' changed from -1 to 5000.
-
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.
-
Revision 2.1 (Nov 9, 2000):
-
HALCON 7.0 version of the interface (included in HALCON 7.0 CD).
-
HALCON 6.1 version of the interface (included in HALCON 6.1 CD).
-
Activate/deactivate external triggering via
set_framegrabber_param.
-
Query board information via info_framegrabber.
-
Revision 2.0 (Jul 15, 2000):
-
Adaptation to the HALCON 6.0 frame grabber integration interface.
-
Revision 1.8 (May 3, 2000):
-
Adaptation to Imagenation driver 3.0.
-
Support for the PX610A frame grabber board.
-
Bug concerning grabbing full resolution images
with Field='first' or Field='second' eliminated.
-
Revision 1.7 (Mar 23, 1999):
-
HALCON 5.2 version of the interface (included in the HALCON 5.2 CD).
-
Revision 1.6 (Sep 7, 1998):
-
Explicit acquisition of PAL images (see 'Generic' parameter in
open_framegrabber) is now possible.
-
Revision 1.5 (May 28, 1998):
-
Subsampling of images is now mapped to field grabbing (which
increases both speed and quality).
-
Timeout for grabbing (see also parameter 'grab_timeout').
-
Trigger signals 'falling_db' and 'rising_db'.
-
Support of non-standard cameras: Now it is possible to specify
both the resolution and the number of blank lines explicitly
(this way you should be able to cope with most [progressive scan]
cameras on the market).
-
LUTs.
-
Revision 1.4 (May 1998):
-
Adjustable video offset and gain.
-
Adjustable number of vertical blanks (wait states) after switching
cameras connected to one frame grabber board.
-
Revision 1.3 (Apr 1998):
-
Bug concerning multiple cameras per board eliminated.
-
Revision 1.1 (Mar 10, 1998):
-
HALCON 5.1 version of the interface (included in the HALCON 5.1 CD).
|