DNP3 Treiber Konfiguration
Öffnen sie das Parametrierpanel des DNP3 Treibers über das System Management-Panel, um das Gerät (Außenstation) in WinCC OA zu parametrieren.
Klicken Sie auf die Schaltfläche DNP3 Treiber.
Parametrieren Sie im folgenden Panel ein Peripheriegerät bzw. die Peripherieverbindung.
Das Parametrierpanel für den DNP3 Treiber ist in mehrere Bereiche aufgeteilt.
Gerät
Mit einem Klick auf die Schaltfläche "Erstellen" öffnet sich ein Fenster zum Erstellen eines neuen DNP3 Datenpunktes (in einem redundanten Projekt wird ein Datenpunkt mit Gerätename + "_2" automatisch für jedes Gerät erstellt). Nachdem das Gerät erstellt wurde, können weitere Parameter für die Peripherie gesetzt werden. Diese werden in dem internen Datenpunkt vom Typ "_Dnp3Station" gespeichert.
Zum Ändern der Einstellungen wählen Sie den Gerätenamen in der Combobox aus. Wenn Parameter der Verbindung geändert werden, dann werden diese erst beim nächsten Verbindungsaufbau übernommen. Also entweder bei Verbindungsverlust und -aufbau oder beim Inaktive/Aktiv schalten. Sobald ein neuer Verbindungsdatenpunkt erstellt wird, kann dieser sofort vom Treiber verwendet werden (kein Neustart erforderlich). Die Verbindung zur entsprechenden DNP3 Station wird erst dann aufgebaut, wenn auch eine Peripherieadresse für die Station parametriert wurde (siehe Definition der Peripherieadressen des DNP3 Treibers).
Die Schaltfläche "Entfernen" entfernt das ausgewählte Gerät.
Im Textfeld Gerätebeschreibung können Sie dem erstellten Gerät eine individuelle Beschreibung hinzufügen bzw. ändern (Default "_<Gerätename>.").
Einstellungen
Wählen Sie mit den Radioboxen TCP und Seriell Ihre Verbindungsart aus.
Geben Sie im Textfeld "Host"/"Gerät" die IP-Adresse/COM-Port des DNP3 Servers an.
Geben Sie im Falle einer TCP Verbindung im Feld "Port" die Portnummer zur DNP3 Außenstation ein.
Geben Sie im Eingabefeld "LA" die Linkadresse der Außenstation ein (Default = 0).
In der Checkbox "Aktiv" können Sie den Modus des Geräts ändern (aktiv/inaktiv). Das Gerät (Datenpunkt) wird nicht gelöscht und kann zu jedem beliebigen Zeitpunkt reaktiviert werden. Eine geänderte Verbindungsparametrierung wird erst beim nächsten Verbindungsaufbau gültig.
In den Checkboxen "Unsolicited Resp." können Sie die Klasse(n) bestimmen, welche spontan Daten senden soll (siehe Command.UnsolicitedResponse unter Interne Datenpunkte des DNP3 Treibers).
Hinweis
Die Verwendung der Option "Unsolicited Resp." kann bei manchen Geräten zu Verbindungsproblemen führen!
Bei einer Generalabfrage wird im Zuge dessen das Standardverhalten von DNP3 Endgeräten von Unsolicited Response auf Polling gewechselt. Manche Geräte unterstützen diese Umstellung aber nicht und ein Fehler tritt auf. Um dies zu verhindern, wird durch Setzen der Checkbox "inaktiv" der Wechsel unterdrückt und das spontane Senden von Daten deaktiviert.
Befehle
Die Schaltfläche "Generalabfrage" führt eine generelle Abfrage für die selektierte Verbindung aus. Eine Generalabfrage wird automatisch beim Verbindungsaufbau durchgeführt. Zum Deaktivieren dieser Funktion siehe Config-Eintrag integrityPollAtStartup. Bei einer Generalabfrage setzt der DNP3 Treiber das Generalabfrage-Bit nicht.
Bestimmen Sie in den Checkboxen die Klasse(n), für die die Generalabfrage durchgeführt werden soll (siehe auch Command.GQ unter Interne Datenpunkte des DNP3 Treibers). Die Klassen sagen aus, ob es sich um statische Daten oder ereignisorientierte Daten handelt. Statische Daten (Klasse 0) sind gegenwärtige Datenwerte. Ereignisorientierte Daten (Klasse 1-3) sind dagegen an ein Ereignis gebunden, z.B.:
-
Zustandsänderungen,
-
Überschreitung des Grenzbereichs eines Messwertes,
-
Änderung einer analogen Eingabe, die über den Grenzbereich hinausgeht,
-
Speicherauszug von Daten zu einer bestimmten Zeit,
-
Flüchtige Phänomene
-
oder neue verfügbare Informationen
Das bedeutet, dass eine Generalabfrage sich auf die Klasse 1 nur dann auswirkt, wenn sich der Wert einer zugeordneten Variable geändert hat - es werden nicht alle Variablen empfangen, die der Klasse 1 zugeordnet sind, sondern nur jene, deren Wert sich geändert hat.
"IIN Rücksetzen" setzt die entsprechenden Bits der internen Indikation am Gerät auf Null ("Restart" - setzt das Restartbit auf Null" "Need Time" - setzt das "Need Time"-Bit auf Null).
"Verzögerung" misst die Zeitverzögerung in Millisekunden (das Ergebnis wird nicht ausgegeben). Die Messung der Verzögerung wird nur beim seriellen Protokoll unterstützt.
"Kaltstart" führt einen erzwungenen Neustart der entsprechenden Außenstation durch.
Status
Im Bereich "Status" werden Informationen zu dem entsprechenden DNP3 Gerät ausgegeben. Unter "Zustand" wird der Verbindungsstatus angegeben.
Unter "Int. Indication" wird die Gruppe von Flags (Bits) der internen Indikation in binärer Form angezeigt. Die Bedeutung der einzelnen Bits ist im Tooltip-Text des Feldes ersichtlich.
Hinweis
In einem redundanten Projekt werden die Statusinformationen getrennt, nebeneinander für jeden Server ausgegeben.
DNP 3 - Erweiterung: Serielle Kommunikation über TCP Verbindung
Der DNP3-Treiber wurde dahingehend erweitert, dass es möglich ist das serielle Protokoll auch über eine TCP-Verbindung zu benutzen. Dies erleichtert die Handhabung von Ethernet-Seriell Konvertern, da keine virtuelle COM Schnittstelle mehr notwendig ist. Der Konverter kann dabei TCP Server oder TCP Client sein und transparent oder im RFC2217 Modus betrieben werden. Hierfür muss der Config-Eintrag "deviceSerial" angepasst werden.
deviceSerial = <Name des Gerätes> <serieller Port> <serieller Parameter>
Die Einstellungen für <Name des Gerätes> werden analog zur herkömmlichen seriellen Konfiguration vorgenommen. Der Eintrag für <serieller Port> muss wie unten beschrieben angepasst werden. Für die <seriellen Parameter> muss ein Leerstring ("") angegeben werden.
tcp[s][rfc]:<Host:Port (IPv4 oder IPv6)> [tcp timeout]
Element | Beschreibung |
---|---|
tcp | Präfix, welches angibt, dass die Kommunikation via TCP erfolgen soll. |
s | Zusatz der angibt, ob es sich um einen Server handelt. Wird s nicht gesetzt handelt es sich um eine Client-Verbindung. (optional) |
rfc | Zusatz der angibt, ob der RFC2217-Modus verwendet werden soll (optional). |
Host |
Name oder IP des Hosts Hinweis Bei einem Server kann der Hostname leer sein. Wenn einer angegeben wird so wird dieser ignoriert. D.h. der Server akzeptiert Verbindungen von beliebigen hostnamen. |
Port | Port der für die Verbindung verwendet werden soll. Bei einem Server ist diese Portnummer der "listening port". |
tcp timeout | Timeout welcher für die TCP Verbindung verwendet werden soll. Default: 10 Sekunden (optional). |
Beispiel
Nachfolgend 3 Beispiele zur Konfiguration der seriellen Parameter für die Verwendung einer TCP-Verbindung.
"tcp:127.0.0.1:3040" => Client mit 10sec timeout
"tcps:localhost:3041 5" => Server mit 5sec timeout
"tcprfc:[::1]:3042 2" => Client mit RFC2217-Modus, IPv6-Adresse und 2sec timeout