FB_IEC870_5_102TProtocol

FB_IEC870_5_102TProtocol 1:

Der Kommunikationsbaustein FB_IEC870_5_102TProtocol implementiert die Übertragungsprozeduren der Verbindungsschicht nach der IEC 60870-5-1 und IEC 60870-5-2-Norm.
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. Der Kommunikationsbaustein erwartet eine TX/RX-Datenpuffervariable. Diese Variable muss per VAR_IN_OUT an den Baustein übergeben werden.

Der Funktionsbaustein besitzt folgende Aktionen:

Protokollkonfiguration

Der Kommunikationsbaustein besitzt eine protPara-Variable vom strukturierten Typ. Über diese Variable können Protokollparameter z.B. RX/TX-Timeoutzeiten usw. konfiguriert werden.

VAR_IN_OUT

VAR_IN_OUT
    hSerial : T_HSERIALCTRL;
    buffer  : ST_IEC870_5_102TBuffer;
END_VAR

hSerial: Verbindungs-Handle zum FB_IEC870_SerialLineCtrl-Funktionsbaustein. Über diese Variable werden mit dem FB_IEC870_SerialLineCtrl-Funktionsbaustein die zu sendenden und empfangenen Daten ausgetauscht.

buffer: TX/RX Datenpuffer.

VAR_INPUT

VAR_INPUT
    protPara    : ST_IEC870_5_101ProtocolParams;
    bOutDbg     : BOOL;
END_VAR

protPara: IEC 60870-5-101/102-Protokollparameter.

bOutDbg:: Aktiviert/deaktiviert die Debug-Ausgabe der Frames im TwinCAT XAE->"Error List"-Fenster.

VAR_OUTPUT

VAR_OUTPUT
    bError  : BOOL;
    nErrID  : UDINT;
    eState  : E_IEC870_5_101SerialLinkState := eSERIALLINK_DISCONNECTED;
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.

eState: Verbindungsstatus zu dem Kommunikationspartner.

Beispiel (Low-Level Interface): IEC 60870-5-102 Zentralstation (master);

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)