 |
|
 |
HALCON 5.2 FG interface for PXC200 and PXC200A boards |
This document provides some information about the HALCON framegrabber
interface Pxc.dll for the
Imagenation framegrabber boards
PXC200 and PXC200A. Registered customers can download the
latest
revision of this interface from the
MVTec WWW server.
Revision: 1.13
System Requirements
-
Intel compatible PC with Windows NT 4.0 (Service Pack 4)
or Windows 2000.
-
Successfully installed Imagenation driver pxc.sys.
-
Imagenation DLLs frame_32.dll and either
pxc2_nt.dll (for old driver pxc200.sys) or
pxc_nt.dll (for new driver pxc.sys).
These DLLs must be within your search path %PATH%. If you do not
have these DLLs, please contact Imagenation or the vendor from which
you bought the framegrabber board.
-
HALCON framegrabber interface Pxc.dll revision 1.12 or
higher.
Older revisions are not compatible with HALCON 5.2.
Note that you can check the current version of
the DLL after you opened the framegrabber via open_framegrabber using
get_framegrabber_param(FGHandle,'revision',Revision). If this
fails, you've got revision 1.4 or older. If you have properly
installed the interface, Pxc.dll should reside in bin\i486-nt4
within the HALCON base directory %HALCONROOT% you have chosen
during the installation of HALCON.
Features
-
Multiple framegrabber boards with multiple cameras.
-
Synchronous and asynchronous grabbing.
-
External trigger.
-
Subsampling (with automatic switch to field grabbing
increasing both quality and speed).
-
Software control of grabbing timeout.
-
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.
-
Software control of contrast and brightness.
-
Software control of where the digitizing should start.
Limitations
-
No cropping of image parts.
-
Due to PCI transfer problems you might encounter grabbing failures
('ERR_CORRUPT'). In this case try to decrease the PCI bus load (e.g.,
by using the 16 bit instead of the 24 bit grabbing mode).
-
No LUTs.
-
grab_region and grab_region_async not supported.
Description
Parameters for
open_framegrabber():
|
Name
|
'Pxc'
|
The name of the HALCON framegrabber 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
|
The width of the desired image part ('0' stands for the complete
image). Default: 0.
|
|
Height
|
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'
|
Specify with which field to start the next grab.
The default setting 'next' allows maximum speed, but can result in a
line jitter of one line. Default: 'next'.
|
|
Bits
|
8, 16, 24
|
Grayscale (8 bits) or color (16 or 24 bits). 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 RGB raw data
delivered by the PXC board is splitted and shifted to an 8-8-8
three channel RGB HALCON image inside the framegrabber interface).
Default: 24.
|
|
ColorSpace
|
'rgb'
|
The desired color space (fixed).
|
|
Gain
|
0.0 ... 2.0
|
The desired video gain (contrast) in ampere.
Please see also the HDevelop example program pxc_gain.dev in
examples\hdevelop\Image\Framegrabber. Default: 1.0.
|
|
ExternalTrigger
|
'true', 'false'
|
Activate/deactivate external triggering .
The digital input line used for external trigger signals
depends on the PXC version you have: Without the option package only
one line is available, which will be used for all input ports
(that is for all cameras connected to the board). With installed
option package (PXC200-F or PXC200-AF) the four
available input lines are used to provide individual trigger signals
for each camera, where camera x is mapped to the
corresponding input line x. Default: 'false'.
|
|
Generic
|
'NTSC', 'PAL', 'AUTO'
|
The generic parameter is used to specify the video signal:
'NTSC', 'PAL', or 'AUTO'. The latter will do an
automatic analysis of the signal. Default: 'AUTO'.
|
|
Device
|
'-1', 'board'
|
The number of the framegrabber board (passed as a string!) or
'-1' for an automatic detection (in case you have only one
PXC board installed in your PC). Default: '-1'.
|
|
Port
|
-1, 0, ..., 7
|
The desired input port: 0 - 3 are used for composite input signals,
the logical ports 4 - 7 (mapped to the physical ports 0 - 3) are
used for S-Video inputs. The value -1 (automatic detection) can
only be used for composite input! Default: -1.
|
|
LineIn
|
1
|
Fixed.
|
|
Parameters for
set_framegrabber_param():
|
'volatile'
|
'enable', 'disable'
|
Grayscale (8 bit) only.
In the volatile mode the two framegrabber 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!
|
|
'suppress_errors'
|
'true', 'false'
|
If the value 'true' is chosen, PCI transfer errors
are not reported. Default: 'false'.
|
|
'trigger_signal'
|
'falling', 'rising', 'low'
|
Specify the desired type of trigger signal for external triggering
(see the Imagenation documentation for details).
Default: 'low'.
|
|
'switch_camera_delay'
|
blanks
|
The number of vertical blanks after switching cameras.
This value depends on the differences between the cameras connected
to one framegrabber board concerning both the video format and the
sync (see the Imagenation documentation for details). Default: 0.
|
|
'grab_timeout'
|
timeout
|
Number of milliseconds (integer) after which a pending grabbing
command is aborted. The value -1 is used for 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.
Default: -1.
|
|
'brightness'
|
-0.5 ... 0.5
|
The desired video brightness (offset) in ampere.
Please see also the HDevelop example program pxc_gain.dev in
examples\hdevelop\Image\Framegrabber. Default: 0.
|
|
'gain'
|
0.0 ... 2.0
|
The desired video gain (contrast) in ampere.
Please see also the HDevelop example program pxc_gain.dev in
examples\hdevelop\Image\Framegrabber. Default: 1.0.
|
|
'show_internal_errors'
|
'true', 'false'
|
Specify whether the framegrabber interface should pop up an alert box
in case of an error or not. If you use your own
error management, we recommend to switch off the internal error
display. In this mode only the error code is returned by the
framegrabber operators, but the interface itself is "silent"
(important for inline applications etc.). Otherwise, the user has
to click on one of the buttons in the error dialog. On the other
side, activated internal error display will result in more
detailed and specific error messages for trouble shooting.
Default: 'true'.
|
|
'start_digitizing'
|
even number
|
The start position of the digitizing within each row. 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 framegrabber interface Pxc.dll.
|
|
Release Notes
-
Revision 1.13 (Oct 19, 2001):
-
Adaptation to Imagenation PXC driver Revision 3.0.
-
Revision 1.12 (Mar 23, 1999):
-
HALCON 5.2 version of the interface (included in the HALCON 5.2 CD).
-
Revision 1.11 (Sep 9, 1998):
-
New parameter: start_digitizing.
-
Revision 1.10 (Jul 24, 1998):
-
Compatible to the new Imagenation driver pxc.sys / pxc_NT.dll.
-
Software control of contrast (gain) and brightness; see parameters
'gain' and 'brightness'.
-
Parameter 'show_internal_errors'.
-
Revision 1.9 (May 29, 1998):
-
Subsampling in vertical direction is mapped to field grabbing which
enhances both quality and speed.
-
Revision 1.8 (May 27, 1998):
-
Bug concerning external triggering eliminated.
-
Timeout for grabbing (see also parameter 'grab_timeout').
-
Four independent trigger lines for boards with installed
option package (PXC200-F).
-
Optional: Internal 16 bit color grabbing to reduce the PCI bus load.
-
S-Video input signals can be handled correctly now (note that you
cannot use the port setting "-1" for such input signals).
-
Revision 1.7 (May 1998):
-
Bug concerning multiple cameras per board eliminated.
-
Adjustable number of vertical blanks (wait states) after switching
cameras connected to one framegrabber board
(parameter 'switch_camera_delay').
-
Revision 1.6 (March 1998):
-
Parameter 'revision' for get_framegrabber_param.
-
Minor bug fixes in error handling.
-
Revision 1.4 (March 10, 1998):
-
HALCON 5.1 version of the interface (included in the HALCON 5.1 CD).
|