FB_VN_ReadImage
This FB reads an image from a file on the target pc.
Syntax
Definition:
FUNCTION_BLOCK FB_VN_ReadImage
VAR_INPUT
sFilePath : STRING;
ipDestImage : Reference To ITcVnImage;
bRead : BOOL;
nTimeout : TIME;
END_VAR
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
nErrorId : UDINT;
END_VAR
Inputs
Name |
Type |
Default |
Description |
---|---|---|---|
sFilePath |
STRING |
|
Full path of the file or relative path to the default image directory on the target pc |
ipDestImage |
Reference To ITcVnImage |
|
Returns an image with the loaded content |
bRead |
BOOL |
|
Reading the file is triggered by a rising edge at this input. |
nTimeout |
TIME |
VISION_ADS_TIMEOUT |
Indicates the time before the function is cancelled. |
Outputs
Name |
Type |
Description |
---|---|---|
bBusy |
BOOL |
This output remains TRUE until the function block has executed a command, but at the longest for the duration supplied to the 'nTimeout' input. While bBusy = TRUE, no new command will be accepted at the inputs. |
bError |
BOOL |
This output is switched to TRUE as soon as an error occurs during the execution of a command. The command-specific error code is contained in ‘nErrorId’. If the function block has a timeout error, 'bError' is TRUE and 'nErrorId' is 1861 (hexadecimal 0x745). Is reset to FALSE by the execution of a command at the inputs. |
nErrorId |
UDINT |
Contains the ADS error code or the command-specific error code of the last executed command. Is reset to 0 by the execution of a command at the inputs. |
Further information
The function block FB_VN_ReadImage
loads an image from a file asynchronously into the PLC.
Loading of modified images When loading images, the Vision service caches the data internally. Loading changed images is therefore not possible in the standard system. To do this, adjust the cache settings or see the example Serial loading of images into the PLC for an alternative. |
Parameter
Some parameters are described centrally in the section File Access Parameters.
Destination image (return value)
The loaded image is reachable via the interface pointer ipDestImage
following successful reading.
Application
Loading an image from the path C:\TcVision\Image.bmp
looks like this, for example:
fbReadImage(
sFilePath := 'C:\TcVision\Image.bmp',
ipDestImage := ipImageIn,
bRead := TRUE,
nTimeout := T#500MS);
IF NOT fbReadImage.bBusy AND NOT fbReadImage.bError THEN
// image is accessible in ipImageIn
END_IF
Related function block: FB_VN_WriteImage for saving images.
Samples
Required License
TC3 Vision Base
System Requirements
Development environment | Target platform | PLC libraries to include |
---|---|---|
TwinCAT V3.1.4024.54 or later | PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU | Tc3_Vision |