F_VN_ReadBarcodeExp
Detect and interpret a 1d barcode within the provided image. Can be canceled by Watchdog.
Syntax
Definition:
FUNCTION F_VN_ReadBarcodeExp : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipDecodedData : Reference To ITcVnContainer;
ipContours : Reference To ITcVnContainer;
eBarcodeType : UDINT;
nCodeNumber : DINT;
eSearchDirection : ETcVnBarcodeSearchDirection;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSrcImage |
Source image (USINT elements, 1 channel or 3 channel (3 channel input is expected to be RGB and internally converted to Gray)) | |
ipDecodedData |
Reference To ITcVnContainer |
Returns the decoded code (ContainerType_Vector_String_SINT) |
ipContours |
Reference To ITcVnContainer |
Returns the code positions as contours (optional, set to 0 if not required; ContainerType_Vector_Vector_TcVnPoint2_DINT) |
eBarcodeType |
UDINT |
Types of barcode to search for (ETcVnBarcodeType) |
nCodeNumber |
DINT |
Number of 1d barcode that should be detected within the provided image (currently only 1 supported). |
eSearchDirection |
Barcode search direction. | |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_ReadBarcodeExp
ist die Expert-Variante von F_VN_ReadBarcode. Sie enthält zusätzliche Parameter zur Rückgabe der Codeposition und zum Einstellen der Suchrichtung.
Parameter
Eingangsbild
Das Eingangsbild ipSrcImage
muss ein 1-kanaliges oder 3-kanaliges Bild mit Element-Typ USINT
(8 Bit) sein. 3-kanalige Bilder werden als RGB interpretiert und intern in ein Grauwertbild konvertiert.
Gelesene Daten
Die aus dem Code gelesenen Daten werden als String in dem Container ipDecodedData
zurückgegeben. Der Container ist dabei vom Typ ContainerType_Vector_String_SINT
.
Barcode-Typ
Der Parameter eBarcodeType
definiert Barcode-Typen, nach denen im Bild gesucht werden soll. Alle Barcode-Typen im Enum ETcVnBarcodeType werden unterstützt. Die Auswahl von mehreren Typen ist möglich. Es wird empfohlen, die Auswahl auf die in der Endanwendung tatsächlich vorkommenden Typen zu beschränken, um die Laufzeit zu verbessern.
eBarcodeType := TCVN_BT_EAN13 + TCVN_BT_CODE128;
Um nach allen verfügbaren Barcode-Typen zu suchen, verwenden Sie TCVN_BT_ANY
.
Position des Codes
Der Parameter ipContour
gibt die gefundene Codeposition als Kontur zurück.
Anzahl von Codes
Der Parameter nCodeNumber
definiert, nach wie vielen Codes gesucht werden soll.
Suche nach mehreren Barcodes nicht unterstützt Die Suche nach mehreren Barcodes in einem Bild wird aktuell nicht unterstützt. Daher ist der Parameter nCodeNumber := 1 zu setzen. |
Suchrichtung
Über eSearchDirection
kann die Suchrichtung vorgegeben werden:
- Bei
TCVN_BSD_ANY
wird zunächst in horizontaler Richtung und anschließend in vertikaler Richtung gesucht. - Bei
TCVN_BSD_HORIZONTAL
wird nur in horizontaler Richtung gesucht. - Bei
TCVN_BSD_VERTICAL
wird nur in vertikaler Richtung gesucht.
Required License
TC3 Vision Code Reading
System Requirements
Development environment | Target platform | PLC libraries to include |
---|---|---|
TwinCAT V3.1.4024.59 or later | PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU | Tc3_Vision |