F_iecMoveStreamToStream

F_iecMoveStreamToStream 1:

Diese Funktion kopiert Datenbytes von der source-Variablen zur target-Variablen und löscht anschließend die kopieren Datenbytes aus der source-Variablen. Der Speicherinhalt der source-Variablen wird verkleinert und der, der target-Variablen vergrößert.

Syntax

FUNCTION F_iecMoveStreamToStream : UDINT
VAR_INPUT
    cbCopy  : UDINT;
END_VAR
VAR_IN_OUT
    target  : ST_IEC870_5_101Stream;
    source  : ST_IEC870_5_101Stream;
END_VAR

F_iecMoveStreamToStream 2: Eingänge

cbCopy: Anzahl der Datenbytes die von der source-Variablen in die target-Variablen kopiert werden sollen.

Ein-/Ausgänge

target: Zieldatenpuffer.

source: Quelldatenpuffer.

Beispiel in ST

PROGRAM P_iecMoveStreamToStream
VAR
    target : ST_IEC870_5_101Stream := ( length := 2, data := [16#AA, 16#BB] );
    source : ST_IEC870_5_101Stream := ( length := 8, data := [1,2,3,4,5,6,7,8] );
    cbReturn : UDINT;
    bMove : BOOL := TRUE;
END_VAR
IF bMove THEN
    bMove := FALSE;
    cbReturn := F_iecMoveStreamToStream( source.length, target,  source );
END_IF

Inhalt der target-Variablen nach Programmstart:

length

data

10

16#AA

16#BB

16#01

16#02

16#03

16#04

16#05

16#06

16#07

16#08

...

IEC870_MAX_ASDU_DATA_BYTE

inhalt der source-Variablen nach dem Programmstart:

length

data

0

16#01

16#02

16#03

16#04

16#05

16#06

16#07

16#08

16#00

16#00

...

IEC870_MAX_ASDU_DATA_BYTE

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.4012.0

PC oder CX (x86, x64, ARM)

Tc2_IEC60870_5_10x (Communication->IEC60870)
Tc2_SerialCom (Communication->Serial)
Tc2_TcpIp (Communication->TcpIp)
Tc2_Utilities (System)