DNP3 Kommunikationsprotokoll Übersicht

Die Verwendung offener Standardkommunikationen für die Überwachung und Datenerfassung (SCADA) ist in einer zunehmenden Anzahl von Versorgungs- und Industriesektoren auf der ganzen Welt etabliert. Dies hat erhebliche Vorteile bei der Bereitstellung und dem Betrieb des Systems gebracht.

DNP3 ist einer der weltweit erfolgreichsten offenen SCADA-Standards. Insbesondere der Wassersektor hat DNP3 für die SCADA-Kommunikation auf breiter Basis übernommen. Der Einsatz von DNP3 im Gas- und Ölsektor hat ebenfalls an Boden gewonnen.

Konzept von DNP3

DNP3 ist ein häufig missverstandener Begriff, auf den Sie möglicherweise Bezug genommen haben, wenn Sie über SCADA- und Telemetriesysteme sprechen.

Wir haben hier einige Informationen eingefügt, um DNP3 für diejenigen zu entmystifizieren, die mit Telemetriesystemen nicht so technisch versiert sind. DNP steht für Distributed Network Protocol.

Zunächst werden wir die Analogie zweier kommunizierender Menschen verwenden, um zu verstehen, wo DNP3 passt.

Wenn wir miteinander kommunizieren, können wir eine Vielzahl verschiedener Kommunikationsmedien verwenden, wie z. B. ein Walkie-Talkie oder 2-Wege-Radio, eine Festnetztelefonleitung, eine Mobiltelefonleitung oder möglicherweise über das Internet mit Skype oder ähnlichem. Während sich das Medium, das wir verwenden, ändern kann, müssen wir in derselben Sprache kommunizieren, d. H. Englisch.

Wenn wir über die Kommunikation mit unseren SCADA- und Telemetriesystemen sprechen, können wir auch verschiedene Kommunikationsmethoden wie Ethernet-Kabel, Radio und öffentliche Telefonsysteme verwenden, genau wie wenn zwei Menschen kommunizieren.

In diesem Fall müssen wir jedoch auch dieselbe Sprache verwenden, und die Sprache, die wir häufig verwenden, ist DNP3.

Wenn sich also jemand auf DNP3 bezieht, bezieht er sich auf die Sprache, die Geräte und SCADA-Maschinen sprechen, und nicht auf das Kommunikationsmedium, das sie verwenden, wie Radio.

Dies ist ein weit verbreitetes Missverständnis für Leute, die DNP3 technisch nicht verstehen, und hoffentlich klärt diese Analogie die Dinge.

DNP3

DNP3 (Distributed Network Protocol) ist eine Gruppe von Protokollen. Es spielt eine wichtige Rolle in SCADA-Systemen, wo es zwischen Systemkomponenten verwendet wird. Das Protokoll wurde speziell entwickelt, damit RTUs miteinander sprechen können

DNP3 basiert auf einem Objektmodell, das die Bitzuordnung von Daten, die traditionell von anderen weniger objektorientierten Protokollen benötigt wird, stark reduziert. Es reduziert auch die große Ungleichheit der Statusüberwachungs- und Steuerungsparadigmen, die im Allgemeinen in Protokollen zu finden sind, die praktisch keine vordefinierten Objekte bereitstellen.

Puristen dieser alternativen Protokolle würden darauf bestehen, dass jedes erforderliche Objekt aus vorhandenen Objekten ‚gebaut‘ werden kann.

Mit einigen vordefinierten Objekten ist DNP3 jedoch ein etwas komfortableres Design- und Bereitstellungsframework für SCADA-Ingenieure und -Techniker.

DNP3 (Distributed Network Protocol) ist ein Satz von Kommunikationsprotokollen, die zwischen Komponenten in Prozessautomatisierungssystemen verwendet werden. Seine Hauptverwendung ist in Versorgungsunternehmen wie Elektro- und Wasserunternehmen. Die Verwendung in anderen Branchen ist nicht üblich.

Es wurde für die Kommunikation zwischen verschiedenen Arten von Datenerfassungs- und Steuergeräten entwickelt. Es spielt eine entscheidende Rolle in SCADAsystems, wo es von SCADA-Masterstationen (auch bekannt als Kontrollzentren), Remote Terminal Units (RTUs) und intelligenten elektronischen Geräten (IEDs) verwendet wird. Es wird hauptsächlich für die Kommunikation zwischen einer Masterstation und RTUs oder IEDs verwendet.

ICCP, das Inter-Control Center Communications Protocol (ein Teil von IEC 60870-6), wird für die Kommunikation zwischen Masterstationen verwendet.

 Distributed Network Protocol Communication

Was ist DNP3?

DNP3 ist ein Kommunikationsprotokoll, das in SCADA / „Remote Monitoring“ -Systemen verwendet wird. Es ist sehr beliebt geworden, weil es „offen“ ist. Jeder Hersteller kann DNP3-Geräte entwickeln, die mit anderen DNP3-Geräten kompatibel sind.

DNP3 verwendet ein Master/Remote-Modell.

DNP3 wird typischerweise zwischen zentralen Mastern und Fernbedienungen verwendet, die weit verbreitet sind. Der Master (denken Sie an „Operating Center“) verbindet den Menschen (Sie) und das Überwachungssystem. Die Fernbedienung (die „Substation“) stellt die Schnittstelle zwischen dem Master und den tatsächlichen Geräten dar, die überwacht oder gesteuert werden.

Der Master und der Remote verwenden beide eine Bibliothek gemeinsamer Objekte, um Daten auszutauschen. Das DNP3-Protokoll kann zuverlässig über Medien verwendet werden, die verrauschten Störungen unterliegen können.

DNP3 ist ein offenes, intelligentes, robustes und effizientes modernes SCADA-Protokoll. Es kann

  • mit mehreren Datentypen in einzelnen Nachrichten anfordern und antworten,
  • Nachrichten in mehrere Frames segmentieren, um eine hervorragende Fehlererkennung und -wiederherstellung zu gewährleisten,
  • nur geänderte Daten in Antwortnachrichten aufnehmen,
  • Datenelementen Prioritäten zuweisen und Datenelemente regelmäßig basierend auf ihrer Priorität anfordern,
  • ohne Anforderung antworten (unaufgefordert),
  • unterstützung zeit synchronisation und eine standard zeit format,
  • erlauben mehrere master und peer-to-peer operationen,
  • und erlauben benutzer definierbare objekte einschließlich datei Transfer.

Wie kommunizieren DNP3-Elemente?

DNP3 verwendet 27 grundlegende funktion codes zu austausch daten zwischen Master (denken „Control Center“) und Fernbedienungen (denken „pumpe hof“). Einige dieser Funktionscodes ermöglichen es einem Master, Statusinformationen von einer Fernbedienung anzufordern und zu empfangen. Andere Funktionscodes ermöglichen es einem Master, die Einstellungen einer Fernbedienung zu ändern.

Für einen DNP3-Master sind weitere Funktionscodes definiert, um die Fernbedienung – oder das Getriebe neben der Fernbedienung – zu steuern. Ein Funktionscode wird bereitgestellt, damit die Fernbedienung mit einer unerwünschten Nachricht auf bestimmte Ereignisse reagieren kann, die in ihrem Bereich auftreten.

Wie Sie sehen, werden die meisten Nachrichten vom DNP3-Manager ausgegeben. Da die unerwünschte Nachricht von einer Fernbedienung initiiert werden kann, wird sie normalerweise zum Melden von Alarmen verwendet.

Dies benachrichtigt den DNP3-Master, sobald ein Alarmzustand auftritt, anstatt auf die nächste Anforderung zu warten.

Verständnis der DNP3-Objektbibliothek.

Das DNP3-Framework enthält eine Bibliothek von Objekten, die in vielen SCADA-Systemen verwendet werden. Diese Bibliothek ist für Mitglieder der DNP-Benutzergruppe kostenlos. Besuchen www.dnp.org für mehr. Diese Standardobjekte enthalten binäre Eingänge. Diese melden Dinge, die zwei Zustände haben; Die Stromversorgung ist ein oder aus, ein Zugangspanel ist offen oder geschlossen.

Ein weiteres häufiges Objekt ist ein analoger Eingang, der verwendet wird, um Dinge zu melden, die einen Wertebereich haben. Die Drehzahl des Abluftventilators kann zwischen 40 und 400 U / min liegen. Die Hauptleistung kann von 110 bis 128 VAC variieren.

Diese Bibliothek erleichtert es dem Hersteller, den DNP3-Remote-Responder so zu entwerfen, dass er diese allgemeinen Objekte zum Melden an Upstream-Master verwendet. Es macht es auch einfacher für Master, die von Fernbedienungen gesammelten Daten zu integrieren und für Sie zu präsentieren.

Ohne diesen Rahmen gemeinsamer Objekte müssen Hersteller ihr eigenes Modell für die Meldung des Status und die Bereitstellung von Steuerungsfunktionen entwickeln. Diese oft sehr unterschiedlichen Modelle müssen dann in die Master ‚kompiliert‘ und in eine Art gemeinsame Objekte für ein effizientes Management umgewandelt werden.

Ein weiteres Werkzeug, das häufig in diesen ‚offenen‘ Frameworks zu finden ist, ist eine proprietäre Schnittstelle oder ein Übersetzungsmodul für den Zugriff und die Steuerung der Fernbedienung.

Objekte in der DNP3-Bibliothek sind in Gruppen und Variationen unterteilt. Beispielsweise verfügt die Analogeingangsgruppe über sechs Varianten, um 16- oder 32-Bit-Ganzzahl- oder Gleitkommawerte mit oder ohne Statusbitmap bereitzustellen.

Die analoge Ereignisgruppe verfügt über acht Varianten, um 16- oder 32-Bit-Ganzzahl- oder Gleitkommawerte mit einer Statusbitmap und mit oder ohne Zeitstempel bereitzustellen.

Beachten Sie, dass die analoge Ereignisgruppe keine Variationen ohne Statusbitmap enthält.

DNP3 Layered Communication verstehen

DNP3 verwendet das Layered Communication model:

  • Die Anwendungsschicht kombiniert mehrere Teile. Es handelt sich um eine Application Service Data Unit (ASDU). Dann gibt es das verpackte Objekt. Ein APCI-Block (Application Protocol Control Info) wird hinzugefügt, um eine APDU (Application Protocol Data Unit) zu erstellen.
  • Die Transportschicht unterteilt die APDU in Segmente mit einer maximalen Größe von 16 Byte und kombiniert sie mit einem 8-Bit-Transportsteuerungsheader und 16-Bit-Segment-CRC-Separatoren zu einem transportFrame.
  • Die Verbindungsschicht fügt den Steuerungs- und Adressinformationen einen Header hinzu. Das Paket ist nun zur Auslieferung bereit.

Diese Schichten können dem vom Verteidigungsministerium entwickelten Vierschichtmodell zugeordnet werden (Sie erinnern sich vielleicht an die Ursprünge des Internets im Verteidigungsministerium), wobei die Internetschicht des Verteidigungsministeriums weggelassen wird.

Wenn das Paket über ein LAN / WAN gesendet wird, werden die drei DNP3-Schichten in die Anwendungsschicht aufgerollt.

Das zusammengebaute Paket wird von der Transportschicht in das Transport Control Protocol (TCP) eingeschlossen, das wiederum von der (etwas offensichtlichen) Internetschicht in das Internet Protocol (IP) eingeschlossen wird.

Das User Datagram Protocol (UDP) kann ebenfalls verwendet werden, weist jedoch einige zusätzliche Probleme im Zusammenhang mit der zuverlässigen Bereitstellung in überlasteten Netzwerken auf.

Die vierte Schicht ist die Netzwerkschnittstellenschicht, in der das zusammengebaute Paket tatsächlich mit einer Art Transportmedium verbunden ist (z. B. Twisted-Pair-Kupfer, RG58-Koaxialkabel oder Glasfaser).

Während dieses mehrschichtige Modell ein wenig verwirrend erscheinen mag, isoliert es effektiv die Aufgaben der Kommunikation und hilft letztendlich beim Entwerfen und Implementieren eines Netzwerks.

Durchlaufen der Ebenen

Um dieses mehrschichtige Modell zu zeigen, schauen wir uns eine einzelne DNP3-Leseanforderung über ein LAN an. Der DNP3-Master möchte den Status der Stromversorgung der Fernbedienung kennen und bereitet eine Leseanforderungsnachricht für dieses Objekt vor.

Nach Durchlaufen aller drei DNP3-Schichten wird die Nachricht an die TCP/UDP-Transportschicht übergeben. Die Transportschicht fügt einen Datenblock hinzu, der den Master-Port und den Port identifiziert, an dem erwartet wird, dass der Remote-DNP3-Prozess auf Nachrichten wartet. Das Paket wird dann an die IP-Schicht übergeben.

Hier wird ein Datenblock hinzugefügt, der die IP- und Medienzugriffsadressen des Masters und der Fernbedienung enthält. Dann wird das vollständige Paket an die Netzwerkschnittstellenschicht übergeben.

Die Netzwerkschnittstellenschicht überprüft den Medienzugriff und die Verfügbarkeit. Anschließend legt es das Paket zur Übertragung auf das Medium.

Nachdem es sich über Brücken und durch Router (so etwas wie „über den Fluss und durch den Wald“) basierend auf den IP-Informationen gearbeitet hat, kommt das Paket auf der Fernbedienung an.

Hier durchläuft es die gleichen vier Schichten in umgekehrter Reihenfolge wie beim Master. Zuerst wird es von der Netzwerkschnittstellenschicht vom Medium abgezogen. Nachdem überprüft wurde, ob das Paket intakt und gültig ist, übergibt die Netzwerkschnittstellenschicht es an die IP-Schicht.

Die IP-Schicht überprüft den Medienzugriff und die IP-Adresse und leitet sie an die TCP / UDP-Schicht weiter, wo der Zielport auf verbundene Anwendungen überprüft wird. Wenn eine App am Zielport lauscht, wird das Paket an die Anwendungsschicht übergeben. Wenn es sich bei der abhörenden App um den Remote-DNP3-Prozess handelt, wird die Leseanforderung übergeben.

Es bewegt sich durch seine drei Ebenen, um die Anforderung zu überprüfen und zu sehen, welche Informationen gesammelt werden müssen. Die Remote-Antwort folgt dann dem gleichen Pfad in umgekehrter Richtung, um den Master zu erreichen.

dnp3-communication

Eine DNP3-Nachricht durchläuft die Protokollschichten sowohl beim Manager als auch beim Agenten. Jede Schicht adressiert eine bestimmte Kommunikationsaufgabe.

Eine Hilfe zur Fehlersuche

Wenn Sie dieses mehrschichtige Modell von DNP3 kennen, können Sie Netzwerkprobleme leichter finden und beheben. Wenn es ein Problem gibt, können Sie es einfach nach unten, aus einem Ende, in und auf das andere verfolgen. LAN/WAN link und status lichter bieten zeigen sie zu die Netzwerk Interface schicht. ICMP-Echoanforderungen und -antworten (Pings) liefern einige Informationen zur ordnungsgemäßen Funktion der IP-Schicht.

DNP3-Verarbeitungsindikatoren können verwendet werden, um den Durchgang des DNP3-Pakets durch die TCP / UDP-Schicht und die Funktionsweise der Anwendungsschicht zu überprüfen.

Jeder Schritt kann unabhängig überprüft werden, bis alle Schritte für die End-to-End-Kommunikation korrekt funktionieren.

Vorteile von DNP3

DNP3 bietet Multiplexing, Datenfragmentierung und mehr.

DNP3 ist ein Layer-2-Protokoll. Dies bedeutet, dass es für:

  • Multiplexing.
  • Datenfragmentierung.
  • Fehlerprüfung.
  • Link-Steuerung.
  • Prioritätssortierung.

Es bietet auch Layer-2-Adressierungsdienste für Benutzerdaten.

DNP3 ermöglicht die Kommunikation der verschiedenen Geräte in Prozessautomatisierungssystemen. Das DNP3-Protokoll wird von Versorgungsunternehmen häufig für die Elektro-, Gas- und Wassertelemetrie verwendet. Es ist auch möglich, dass DNP3 in anderen Bereichen verwendet wird, obwohl es nicht so häufig ist.

Die SCADA-Kommunikation verwendet das DNP3-Protokoll.

SCADA-Systeme verwenden das DNP3-Protokoll für die Verwendung zwischen Systemkomponenten. Das DNP3-Protokoll ermöglicht die Kommunikation zwischen dem SCADA-Systemmaster, RTUs und intelligenten elektronischen Geräten (IEDs).

DNP3 wurde entwickelt, um die Notwendigkeit eines Standardprotokolls zu erfüllen, mit dem SCADA-Systemkomponenten, die von verschiedenen Anbietern entwickelt wurden, kommunizieren können. Mit IEC 60870-5 als Basis wurde DNP3 als offenes Protokoll für den Einsatz in diesen Fällen erstellt.

Dieses Protokoll war für den sofortigen Einsatz in SCADA-Netzwerken verfügbar und entsprach den Spezifikationen nordamerikanischer Organisationen.

DNP3 bietet Kommunikationszuverlässigkeit für Versorgungsunternehmen.

DNP3 gewährleistet die Zuverlässigkeit der Kommunikation in rauen Umgebungen von Versorgungsunternehmen. Das Protokoll ist in der Lage, Verzerrungen durch EMI, Legacysystem-Komponenten und schlechte Übertragung aufgrund des DNP3-Kommunikationsformats zu vermeiden.

Obwohl das Protokoll über eine Fehlerprüfung verfügt, ist DNP3 nicht gesichert. Dies ist ein wichtiger Aspekt bei der SCADA-Planung.

Warum ist es so beliebt ?

Es gibt einige Gründe, warum DNP3 so leistungsstark ist und häufig in Telemetriesystemen verwendet wird:-

  1. Es ist ein Standard und offen. Dies bedeutet, dass die „Sprache“ leicht verfügbar ist und alle DNP3-Geräte in derselben Sprache kommunizieren. Frühe RTUs kommunizierten mit proprietären Protokollen, was bedeutete, dass die Sprache, in der sie kommunizierten, nur anderen Produkten desselben Herstellers bekannt war. Heutzutage sind viele Geräte mehrsprachig, da sie über ihr proprietäres Protokoll kommunizieren, aber auch die Kommunikation über das DNP3-Protokoll ermöglichen.
  2. Es ist ein Routing-Protokoll. Dies ist ein besonders wichtiges und zentrales Merkmal des DNP3-Protokolls, da es über verschiedene Kommunikationsnetze kommunizieren kann, um das Ziel der Nachricht zu erreichen. Zum Beispiel kann die SCADA-Maschine mit einer Ethernet-Verbindung verbunden sein, aber die RTU kann auf einer Funkverbindung sein, DNP3 kann von der Ethernet-Verbindung zur Funkverbindung über eine Zwischen-RTU durchgeroutet werden. Das klingt komplex, aber in einfachen Worten wäre es, als würden Sie über eine Telefonverbindung mit Ihrem Freund sprechen, und sie leiten die Nachricht an jemanden in einem nahe gelegenen Walkie-Talkie weiter. Die Stärke von DNP3 besteht darin, dass dies in den meisten modernen RTUs sehr einfach durchgeführt werden kann, ohne dass eine komplexe E / A-Zuordnung erforderlich ist.
  3. Der Kommunikationskanal wird gut genutzt. DNP3 wurde entwickelt, um sowohl in Hochgeschwindigkeits-Ethernet-Netzwerken als auch in langsamen Funknetzen arbeiten zu können und ist sehr gut darin, „nur bei Bedarf zu kommunizieren“. Wenn sich beispielsweise eine Pumpe ein- oder ausschaltet, sendet DNP3 eine Nachricht, indem es den SCADA über diese Änderung informiert. Feste Polling-Protokolle wie MODBUS können dies nicht erreichen, da sie alle Daten ständig durch Polling aktualisieren müssen. Zurück zu unserer menschlichen Analogie, dies wäre so, als würden Sie Ihren Freund ständig bitten, Ihnen zu sagen, was die Ampel zeigt, In einem Beispiel für ein Abfrageprotokoll würde der Freund ständig grün sagen, grün, grün, grün dann rot, rot, rot jede Sekunde oder so. Mit DNP3 würde der Freund Ihnen nur sagen, wenn sich das Licht ändert, wodurch viel weniger Bandbreite verbraucht wird.
  4. Viele Freunde auf einmal. Dieser Punkt Nummer 3 oben bedeutet, dass Sie Gespräche mit vielen Freunden gleichzeitig führen können, und dies ist in der Tat die Leistung von DNP3, sodass viele Pumpstationen, Umspannwerke oder Gasbohrungen im selben Netzwerk kommunizieren können.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.