Unterstation Verbindungs-Redundanz (Slave)

Eine komplexere Unterstation-Applikation mit unterschiedlichen Datenpunkten in beide Richtungen und zwei Verbindungen zur Zentralstation. Die Beispielapplikation verwendet das TwinCAT IEC 60870-5-104 High-Level Interface.

Download TwinCAT XAE Project (*.zip): TutorialSampleSlave104R.zip

Im Beispielprojekt sind folgende Stationsparameter für die Unterstation eingestellt:

Datenpunktkonfiguration (sollte gleich sein mit der Datenpunktkonfiguration der Zentralstation):

Beispielimplementierung folgender Dienste:

Folgende Tabelle beschreibt kurz die Hauptkomponenten des Projekts:

Komponente

Typ

Beschreibung

MAIN

PRG

Dieses Programmteil implementiert das Fernwirkprotokoll

hServer

T_HSERVER (STRUCT)

Das Server-Verbindungshandle.

fbServer

FB_IEC870_5_104SlaveGrp (FB)

Implementiert die Unterstation. Eine Instanz dieses Bausteins kann nur mit einer Zentralstation kommunizieren. Für jede weitere Zentralstation mit der kommuniziert werden soll wird eine weitere Instanz dieses Funktionsbausteins benötigt.

F_CreateServerHnd

FUNCTION

Diese Funktion initialisiert das Server-Verbindungshandle.

AODB

ARRAY OF ST_IEC870_5_101AODBEntry (STRUCT)

Applikationsobjektdatenbank. Es ist eine Array-Variable. Für jeden Datenpunkt wird ein Arrayelement benötigt.

F_iecInitAOEntry

FUNCTION

Im Initialisierungsschritt werden die einzelnen Datenpunkte der Station mit diesem Funktionsaufruf einmalig konfiguriert.

memory

ST_MemoryData (STRUCT)

Diese Struktur beinhaltet die empfangenen und die zu sendenden Prozessdaten die ständig aktualisiert werden.

F_iecSetAOQuality

FUNCTION

Diese Funktion demonstriert wie die Quality-Flags von M_SP_NA_1( IOA := 100) gesetzt/zurückgesetzt werden können.

F_iecGetAOQuality

FUNCTION

Diese Funktion demonstriert wie die Quality-Flags von M_SP_NA_1( IOA := 100) abgefragt werden können.

aConnections

ARRAY OF ST_IEC870_5_104ServerConnection (STRUCT)

Jedes Arrayelement repräsentiert eine Verbindung zur Zentralstation.