FB_FileSeek

FB_FileSeek 1:

The function block FB_FileSeek sets the file pointer of an open file to a definable position.

FB_FileSeek 2:

This function block is only suitable for logging in real-time to a limited extent.
For good performance, we recommend using the TF3500 TwinCAT Analytics Logger product, which is subject to a charge.

FB_FileSeek 3: Inputs

VAR_INPUT
    sNetId    : T_AmsNetId;
    hFile     : UINT;
    nSeekPos  : DINT;(* new seek pointer position *)
    eOrigin   : E_SeekOrigin:= SEEK_SET;
    bExecute  : BOOL;
    tTimeout  : TIME := DEFAULT_ADS_TIMEOUT;
END_VAR

Name

Type

Description

sNetId

T_AmsNetId

String containing the AMS network ID of the target device to which the ADS command is addressed (type: T_AmsNetId).

hFile

UINT

File handle, which was generated when the function block FB_FileOpen was created.

nSeekPos

DINT

New position of the file pointer

eOrigin

E_SeekOrigin

Relative position, to which the file pointer is to be moved (type: E_SeekOrigin).

bExecute

BOOL

The function block is activated by a rising edge at this input.

tTimeout

TIME

States the length of the timeout that may not be exceeded by execution of the ADS command.

FB_FileSeek 4: Outputs

VAR_OUTPUT
    bBusy  : BOOL;
    bError : BOOL;
    nErrId : UDINT;
END_VAR

Name

Type

Description

bBusy

BOOL

When the function block is activated, this output is set to TRUE and remains set until feedback is received. As long as bBusy is TRUE, no new command can be executed.

bError

BOOL

If an error occurs during command execution, this output is set, once the bBusy output has been reset.

nErrId

UDINT

Returns the ADS error code or the command-specific error code when the bError output is set.

Command-specific error code

Possible cause

0x703

Invalid or unknown file handle.

0x70E

File was opened with wrong method (e.g. with obsolete FILEOPEN function block).

Example of calling the function block in FBD:

PROGRAM Test
VAR
    fbFileSeek       : FB_FileSeek;
    hFile            : UINT;
    nSeekPos         : DINT;
    bFileSeek        : BOOL;
    bFileSeekBusy    : BOOL;
    bFileSeekError   : BOOL;
    nFileSeekErrorId : UDINT;
END_VAR
FB_FileSeek 5:

Requirements

Development environment

Target system type

PLC libraries to include (Category group)

TwinCAT v3.1.0

PC or CX (x86, x64, ARM)

Tc2_System (System)