Definition der Peripherieadressen des DNP3 Treibers
Für die Definition der Peripherieadresse klicken Sie auf das Adressen-Config eines Datenpunktelements, selektieren Sie den Treiber-Typ DNP3 aus der Combobox und klicken Sie auf Parametrieren... In dem geöffnetem Panel (siehe Abbildung unten) kann nun die Peripherieadresse des DNP3 Treibers parametriert werden.
Die Peripheriedresse (Referenzstring) kann dabei entweder direkt in das Feld "Referenz" eingeben werden, oder mithilfe der Comboboxen und Spin-Buttons der einzelnen Komponenten (Station, Funktion, Gruppe, Variation, Index) zusammengestellt werden. Der Referenzstring ist folgendermaßen aufgebaut:
<Station>:<Funktion>.<Gruppe>:<Variation>.<Index>
Treibernummer
Nummer des zugehörigen Managers der den DNP3 Treiber startet (z.B. -num 4).
Station
Name des internen Datenpunktes für die Außenstation. Wird nach der Parametrierung des DNP3 Treibers automatisch zur Auswahl bereitgestellt.
Funktion (Funktionscode)
Optionale Eingabe. Normalerweise wird der Funktionscode von dem Objektgruppeneintrag abgeleitet. Die Spezifikation der Funktion ist nur dann erforderlich, wenn mehr als ein Funktionscode für einen Objektgruppeneintrag möglich sind (siehe Kompatibilität des DNP3 Treibers).
Für Ausgangsadressen muss in der Regel ein Funktionscode angegeben werden. Mögliche Funktionscodes sind:
- Write
- Select
- Operate
- Direct Operate
- Direct Operate, no Ack
- Freeze
- Freeze no Ack
- Freeze Clear
- Freeze Clear no Ack
Gruppe
Die Objektgruppe. Wenn sich verschiedenen Gruppen auf dieselben Daten beziehen (z.B. Binary Input und Binary Input Event) so kann nur Binary Input parametriert werden, da Daten aus beiden Gruppen dieselbe Eingangsadresse abgebildet werden.
Beim BinaryCommand und beim AnalogOutput muss der Rückmeldungsstatus auf eine Eingangsadresse abgebildet werden. Dies ist notwendig um den Befehlsstatus auszuwerten.
Variation
Optionale Eingabe. Die Variation der Objektgruppe definiert das Format der Daten eines DNP3-Punktes. Die Eingabe der Variation ist nur dann erforderlich, wenn die Daten in einem speziellen Format ausgegeben werden sollen (siehe Kompatibilität des DNP3 Treibers).
Eingangsseitig braucht man in der Regel keine Variation anzugeben, da die Daten in dem Format, in dem sie kommen, auf WinCC OA Datenpunktelemente abgebildet werden. Ausgangsseitig bestimmt die Variation in der Peripherieadresse das Format, in dem die Daten verschickt werden sollen. Deshalb ist hier eine Angabe der Variation in der Regel notwendig.
Index
Bestimmt den Index eines Objekts in einer Gruppe.
Transformation
Wählen Sie den Transformationstyp aus der Combobox. Der Transformationstyp ist eine Interpretation der Daten, die auf dem Peripheriegerät gelesen wurden. Die Transformation muss immer mit der Adresse übereinstimmen. (wenn z.B. 4 Bytes von der Außenstation gelesen werden, muss die Art der Transformation float oder int32 sein). Wenn die Adresse über die Comboboxen und Spin-Buttons definiert wird, wird auch die richtige Art der Transformation für die spezifische Adresse automatisch ausgewählt.
Wenn der Typ default aus der Combobox gewählt wird, bestimmt der Treiber die Transformationsart automatisch abhängig vom Wert im Referenz-Feld.
Low-Level-Vergleich
Diese Option kann nur aktiviert werden, wenn die Richtung auf Eingang oder Ein/Aus (bidirektionale periphere Kommunikation) gesetzt wurde. Diese Option bewirkt, dass Daten nur dann zum Event Manager gesendet werden, wenn sie sich geändert haben. Der Vergleich basiert auf Rohdaten ohne eine Konvertierung. Der Low-Level-Vergleich ist ein alt/neu-Vergleich und wird bereits mit den von der Außenstation empfangenen Daten durchgeführt (im Gegensatz zur Glättung wo die Daten bereits Datenpunkten zugewiesen werden).
Richtung
Definiert ob die Werte eines Datenpunktelements in die Senderichtung (Ausgang), in die Empfangsrichtung (Eingang) oder in beide Richtungen gesendet werden (Ein/Aus).
Bei der Parametrierung muss darauf Rücksicht genommen werden, dass für gewisse Gruppen nur Eingang und für andere nur Ausgang erlaubt ist.
Empfangsmodus
Der Empfangsmodus für den Empfangsrichtung (Eingang) kann auf Spontan, Polling oder Einzelabfrage gesetzt werden. Bei einer Einzelabfrage setzt der DNP3 Treiber das Einzelanfrage-Bit nicht.
Pollgruppe
Wählen Sie eine bereits existierende Pollgruppe. Wenn keine Pollgruppe zur Verfügung steht, muss eine mit spezifischen Polling-Parametern in einem eigenen Panel erstellt werden. Das Panel wird über die Schaltfläche Pollgruppen... geöffnet (siehe auch Pollgruppen für mehr Information über Pollgruppen und Pollingparameter).
Adresse aktiv
Bei angehakter Checkbox "Adresse aktiv" wird die Adresse vom Treiber verwendet (siehe Referenztabellen). Eine inaktive Adresse ist zwar möglich und die Attribute können gesetzt und abgefragt werden, jedoch werden sie vom Treiber nicht verwendet. Das bedeutet, dass für dieses Datenpunktelement keine Werte an die Außenstation gesendet oder von der Außenstation empfangen werden können.
Parametrierung spezieller DNP3 Gruppen
BinaryCommands
DNP3 Binary Commands (Gruppe 12, Variation 1) oder "Control Relay Output Block" (CROB) sind komplexe Objekte mit einer Vielzahl verschiedener Informationen. Die Abbildung dieser Informationen in der Peripherieadresse erfolgt über Subindizes. Zum Absetzen der Commands müssen die Werte wie in der Beschreibung der Tabelle angegeben auf das jeweilige Datenpunktelement geschrieben werden.
Der DNP Standard definiert folgende Felder:
Feld | WinCC OA Subindex | Beschreibung | DPE Typ | Richtung |
---|---|---|---|---|
OpType | 0 | Bestimmt zusammen mit TCC die Art der Operation Folgende Werte können zur Definition der Operation auf den entsprechenden Datenpunkt geschrieben werden: 0: NUL 1: PULSE_ON 2: PULSE_OFF 3: LATCH_ON 4: LATCH_OFF |
uint | Ausgang |
QU | 1 | Queue Field | bit | Ausgang |
CR | 2 | Clear Field | bit | Ausgang |
TCC | 3 | Trip-Close Code Field
0: NUL 1: CLOSE 2: TRIP 3: RESERVED |
uint | Ausgang |
Count | 4 | Definiert die Anzahl, wie oft die Außenstation die Operation ausführen soll. | uint | Ausgang |
On-Time | 5 | Definiert die Dauer (in Millisekunden) wie lange das Ausgabegerät aktive verbleibt. | uint | Ausgang |
Off-time | 6 | Definiert die Dauer (in Millisekunden) wie lange das Ausgabegerät inaktive verbleibt. | uint | Ausgang |
StatusCode | 7 | Dieses Feld wird ausgangsseitig immer fix mit 0 belegt. Eingangsseitig bekommt man den Fehlerstatus des Befehls zurück. | uint | Eingang |
Nähere Details zu CROBs sind der DNP3 Spezifikation zu entnehmen.