FB_IEC870_5_104TProtocol

FB_IEC870_5_104TProtocol 1:

Der Kommunikationsbaustein FB_IEC870_5_104TProtocol implementiert die ACPI-Funktionen der IEC 60870-5-104-Norm (Start/Stopp-Data Transfer, Test-Frames, Send/Receive Frame-Counter usw.). Beim Protokollfehler wird ein entsprechender Fehlercode am Ausgang des Funktionsbausteins ausgegeben und die Datenübertragung unterbrochen. Um den Datenaustausch erneut aktivieren zu können, muss die Aktion INIT aufgerufen werden. Es werden dabei z.B. die Framezähler, Sende- und der TX/RX-Datenpuffer zurückgesetzt. Der Kommunikationsbaustein erwartet eine TX/RX-Datenpuffervariable. Diese Variable muss per VAR_IN_OUT an den Baustein übergeben werden.

Der Funktionsbaustein besitzt folgende Aktionen:

Verbindungsaufbau

Mit einem gesonderten Baustein z.B. FB_ServerClientConnection muss die TCP/IP-Verbindung auf- und abgebaut werden. Die SPS-Applikation kann dadurch selber auf mögliche Protokollfehler reagieren und die Verbindung schließen oder z.B. den Dienst Process-Reset implementieren. Dieser Baustein liefert am Ausgang ein Verbindungshandle, den Verbindungsstatus und Informationen über Fehler die beim Verbindungsaufbau/-abbau aufgetreten sind.
Das Verbindungshandle wird von dem Kommunikationsbaustein benötigt.

Protokollkonfiguration

Der Kommunikationsbaustein besitzt eine protPara-Variable vom strukturierten Typ. Über diese Variable können Protokollparameter z.B. iK, iW, Start/Stopp-Datentransfer-Verhalten usw. konfiguriert werden.

VAR_IN_OUT

VAR_IN_OUT
    buffer  : ST_IEC870_5_101TBuffer;
END_VAR

buffer: TX/RX Datenpuffer.

VAR_INPUT

VAR_INPUT
    sSrvNetID : T_AmsNetID;
    hSocket   : T_HSOCKET;
    protPara  : ST_IEC870_5_104ProtocolParams;
    bOutDbg   : BOOL;
END_VAR

sSrvNetID: String mit der Netzwerkadresse des TwinCAT TCP/IP Connection Servers. Für den lokalen Rechner (default) kann auch ein Leerstring angegeben werden.

hSocket: Das TCP/IP-Verbindungshandle des Kommunikationspartners dessen Daten empfangen oder gesendet werden sollen.

protPara: IEC 60870-5-104-Protokollparameter.

bOutDbg:: Aktiviert/deaktiviert die Debug-Ausgabe der TCP/IP-Frames in der TwinCAT System Manager-Loggeransicht.

VAR_OUTPUT

VAR_OUTPUT
    bError   : BOOL;
    nErrID   : UDINT;
    eDTState : E_IEC870_5_104DataTransferState := eIEC870_STOPDT;
END_VAR

bError: Dieser Ausgang wird auf TRUE gesetzt, sobald ein Fehler bei der Datenübertragung aufgetreten ist.

nErrID: Liefert bei einem gesetzten bError-Ausgang einen Fehlercode;

eDTState: Status des IEC 60870-5-104-Datenaustauschs (STARTDT, STOPDT).

Beispiele:

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)