Unterstation Minimal (Slave)
Einfache Unterstation-Applikation die das TwinCAT IEC 60870-5-104 High-Level Interface nutzt.
Download TwinCAT XAE Project (*.zip): MiniSlaveSample104.zip
Im Beispielprojekt sind folgende Stationsparameter für die Unterstation eingestellt:
- Server host address (IP-Adresse der Unterstation): 127.0.0.1(Sie müssen mindestens diesen Parameter an Ihre Zielplattform anpassen!) .
- Server port address (Portadresse der Unterstation): 2404.
- k: 12.
- w: 8.
- t0: 30s.
- t1: 15s.
- t2: 10s.
- t3: 20s.
- Cause of transfer size: 2 octets (inclusive originator address).
- Common ASDU address size: 2 octets.
- Information object address size: 3 octets.
- Originator address: 1.
- Common ASDU address: 7.
- Max. APDU length: 253.
Datenpunktkonfiguration (sie sollte gleich sein mit der Datenpunktkonfiguration der Zentralstation):
- Single point information: M_SP_NA_1 (IOA := 100).
- Single command: C_SC_NA_1 (IOA := 10).
Beispielimplementierung folgender Dienste:
- End of Initialization (M_EI_NA_1) wird einmalig gesendet.
- Testbefehl (C_TS_TA_1) .
- Uhrzeitsynchronisationsbefehl (C_CS_NA_1).
- Generalabfragebefehl (C_IC_NA_1) der Gruppe: Allgemein (eIEC870_QOI_INROGEN).
- Zählerabfragebefehl (C_CI_NA_1) der Gruppe: Allgemein (eIEC870_RQT_REQCOGEN). Zählerabfrage Mode C.
- Einzelbefehl-Bearbeitung (C_SC_NA_1) (direkte Kommandoausführung)
- Das Senden spontaner Daten vom Typ (M_SP_NA_1, IOA := 100) bei Wertänderung an der bSPI -Variablen.
Folgende Tabelle beschreibt kurz die Hauptkomponenten des Projekts:
Komponente | Typ | Beschreibung |
---|---|---|
MAIN | PRG | Dieses Programmteil implementiert das Fernwirkprotokoll (langsame Task). |
fbServer | FB_IEC870_5_104Slave (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. |
bSPI | BOOL | Der zu sendende ON/OFF-Wert wird direkt von der an der Merkeradresse AT%MX1.5 dieser lokierten SPS-Variablen gemappt. |
bSCS | BOOL | Der empfangene ON/OFF-Wert wird in diese SPS-Variable direkt an die lokierte Merkeradresse: AT%MX0.0 gemappt. |
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. |