F_VN_ReadPharmaCode
Detect and interpret a pharma code within the provided image.
Can be canceled by Watchdog.
Can use available TwinCAT Job Tasks for executing parallel code regions.
Syntax
Definition:
FUNCTION F_VN_ReadPharmaCode : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipDecodedData : Reference To ITcVnContainer;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSrcImage |
Source image (1 channel (all element types) or 3 channel with elements of type TCVN_ET_USINT, TCVN_ET_UINT or TCVN_ET_REAL (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) |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Information
Die Funktion F_VN_ReadPharmaCode
detektiert und liest einen Pharmacode im Eingangsbild ipSrcImage
. Der Pharmacode ist ein Barcode-Standard. Er ist auf gute Lesbarkeit ausgelegt ist, kann jedoch nur Ganzzahlen im Bereich 3 bis 131070 kodieren. Das Ziel dieses Standards ist eine hohe Lesegeschwindigkeit bei wenig Fehllesungen.
Pharmacodes nicht verwechseln Verwechseln Sie den Pharmacode Standard nicht mit den Italienischen oder Schweizer Pharmacodes. Diese bezeichnen lediglich Arznei-Identifikationsnummern mit einer Code39-Darstellung. |
Aufbau von Pharmacodes
Ein Pharmacode besteht aus dicken und dünnen Balken (dunkel) sowie aus dazwischenliegenden Abständen (hell). Für eine gute Lesbarkeit werden ausreichende Größe und Kontrast des Codes im Bild empfohlen. Die Decodierung geschieht entsprechend folgender Tabelle:
Position | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
Dünne Linie | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Dicke Linie | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 |
Detaillierte Informationen zur Spezifikation von Pharma-Codes können Sie online abrufen: Pharma Code Leitfaden von Laetus
Parameter
Eingangsbild
Das Eingangsbild ipSrcImage
muss 1 oder 3 Kanäle haben. 3-kanalige Bilder müssen vom Typ USINT
, UINT
oder REAL
und im Farbraum RGB sein. Sie werden intern in ein Grauwertbild konvertiert.
Gelesene Daten (Rückgabewert)
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
.
Expert-Parameter
Die Expert-Variante F_VN_ReadPharmaCodeExp enthält zusätzliche Parameter.
Daten aus Container lesen
Wurde der Code erfolgreich gefunden und decodiert, wird der Codeinhalt im Container ipDecodedData
zurückgegeben und kann über die Funktion F_VN_ExportSubContainer_String in einen String exportiert werden.
hr := F_VN_ExportSubContainer_String( ipDecodedData, 0, sText, nMaxLength, hr);
Beispiele
Verwandte Funktionen
- F_VN_ReadPharmaCode zum Lesen von Pharma-Codes
- F_VN_ReadBarcode zum Lesen von Barcodes
- F_VN_ReadDataMatrixCode zum Lesen von Data-Matrix-Codes
- F_VN_ReadQRCode zum Lesen von QR-Codes
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 |