ST_IEC870_5_101HashTableKey

Ab der Produktversion: TwinCAT PLC Library IEC60870-5-104 Unterstation v3.0.0 / IEC60870-5-104 Zentralstation v1.0.0 und höher.

Applikationsobjekt-Datenbank-Lookup-Schlüssel. Mit Hilfe des Schlüssels können die Hash-Tabelleneinträge lokalisiert und modifiziert werden.

TYPE ST_IEC870_5_101HashTableKey :
STRUCT
    eType       : E_IEC870_5_101TcTypeID := ASDU_TYPEUNDEF;
    asduAddr    : DWORD := 0;
    objAddr     : DWORD := 0;
    group       : DWORD := 0;
    lookup      : DWORD := IEC870_LOOKUP_KEY_ALL_ON;
END_STRUCT
END_TYPE

eType: Applikationsobjekt Typ, ASDU identifier (z.B.: M_SP_NA_1 für Single-Point oder M_DP_NA_1 für Double-Point usw.).

asduAddr: Gemeinsame ASDU-Adresse.

objAddr: Objektadresse, frei wählbar.

group: Object-Group-Konfigurationsflags. Hier finden Sie die Beschreibung aller Group-Flags. Die Flags können mit OR-Verknüpfung kombiniert werden. Wenn dieser Parameter den Wert Null hat werden die group-Parameter ignoriert.  

lookup: Zusätzliche Lookup-Schlüsselparameter. Die verfügbaren Parameter sind als Konstanten deklariert (siehe untere Tabelle). Diese können mit OR-Verknüpfung kombiniert werden.

Konstante

Wert

Beschreibung

IEC870_LOOKUP_KEY_ALL_ON

0

Bei der Suche werden alle Parameter berücksichtigt (eType, asduAddr, objAddr, group).

IEC870_LOOKUP_KEY_TYPE_OFF

1

Bei der Suche wird der eType-Parameter ignoriert.

IEC870_LOOKUP_KEY_ASDUADDR_OFF

2

Bei der Suche wird der asduAddr-Parameter ignoriert.

IEC870_LOOKUP_KEY_GROUP_OFF

4

Bei der Suche wird der group-Parameter ignoriert.

IEC870_LOOKUP_KEY_OBJADDR_OFF

8

Bei der Suche wird der objAddr-Parameter ignoriert. Dieser Parameter ist nicht zu empfehlen da alle Datenpunkte über eine eindeutige Objektadresse identifizierbar sein müssen.

 

Beispiel in ST:

Siehe in der Beschreibung der Funktion: F_iecLookupTableEntry, F_iecRemoveTableEntry, F_iecGetPosOfTableEntry.

 

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS Bibliotheken

TwinCAT v2.10.0 Build >= 1301

PC or CX (x86)
CX (ARM)

TcIEC870_5_101.Lib
( Standard.Lib; TcBase.Lib; TcSystem.Lib; TcUtilities.Lib;  werden automatisch eingebunden )