DNP3 protokol: arhitektura, rad, kodovi funkcija, format podataka i njegove primjene

Isprobajte Naš Instrument Za Uklanjanje Problema





DNP3 ili Distribuirani mrežni protokol3 lansirala je 1992. godine jedna japanska korporacija kako bi uspostavila protokol za komunikaciju između distribuiranih sustava. DNP3 je mrežni protokol za kontrolu uređaja koji se koristi za komunikaciju između uređaja i udaljenog ulazno/izlaznog uređaja. Ovaj protokol uglavnom ovisi o objektno orijentiranom modelu koji smanjuje mapiranje bitova podataka koje obično zahtijevaju drugi manje objektno orijentirani protokoli. Uglavnom se koristi između središnjih glavnih stanica kao i distribuiranih udaljenih jedinica gdje središnja glavna stanica jednostavno radi kao sučelje između ljudskog mrežnog upravitelja kao i sustava za nadzor. Distribuirana udaljena jedinica je sučelje između glavne stanice i fizičkog aparata koji se promatra i kontrolira u udaljenim područjima. Razmjenu podataka između ova dva može obaviti biblioteka zajedničkih objekata. Ovaj članak govori o pregledu DNP3 protokol – rad s aplikacijama.


Što je DNP3 protokol?

Skup komunikacijskih protokola koji se koriste između različitih komponenti unutar sustava automatizacije procesa poznat je kao DNP3 protokol. Ovaj protokol je uglavnom dizajniran za potrebe komunikacije između različitih vrsta opreme za prikupljanje podataka i kontrolu. Dakle u SCADA sustavi , ovaj protokol igra ključnu ulogu kada ga koriste RTU-ovi, SCADA-i i IED-ovi.



Arhitektura DNP3 protokola i njegov rad

DNP3 je treća verzija distribuiranog mrežnog protokola. Ima jednu anketu integriteta i tri razine ankete, gdje se anketa integriteta koristi za prikupljanje podataka u jednoj anketi.

  Arhitektura DNP3 protokola
Arhitektura DNP3 protokola

DNP3 mrežna arhitektura može biti unicast, multidrop i podatkovni konektor/hijerarhijska arhitektura.



Unicast arhitektura: je također poznata kao arhitektura jedan na jedan, ovdje glavna stanica može komunicirati samo s jednom vanjskom stanicom, dok u multidrop arhitektura glavna stanica može komunicirati s više od jednog uređaja izvan stanice što znači da može komunicirati s više uređaja izvan stanice. Podatkovni konektor/hijerarhijska arhitektura kombinacija je multidrop i unicast arhitekture.

Komunikacijski protokol DNP3 obično se koristi za elektroprivredu, vodovod i kanalizaciju, naftu i plin, transport i druga SCADA okruženja. Omogućuje vam pregled važnih razina u stvarnom vremenu i povijesno, što može biti temperatura, vlažnost, razina baterije, napon, razina goriva itd. Također vam omogućuje otkrivanje problema i njihovo brzo ispravljanje, a također možete ukloniti uska grla i neučinkovitosti.

Projektiranje DNP3 protokola može se izvršiti na temelju slojeva OSI modela kao što su podatkovna veza, transport, aplikacija i korisnički sloj. Ovaj protokol ima fleksibilnost za povezivanje jednog mastera preko najmanje jedne ili više vanjskih stanica iznad serijskih kao i Ethernet fizičkih medija.
Ostale moguće arhitekture uglavnom uključuju različite glavne veze s jednom izlaznom stanicom i peer-to-peer operacije. Obično glavni pokreće kontrolne naredbe kako bi zatražio podatke ili aktivirao uređaje kojima se upravlja putem vanjske stanice. Ova izvanstanica jednostavno reagira na mastera odašiljanjem odgovarajućih informacija.

  DNP3 slojevi protokola
DNP3 slojevi protokola

Na temelju OSI modela, DNP3 protokol uključuje četiri sloja podatkovne veze, transportne funkcije, aplikacijskog i korisničkog sloja. Ovdje će sloj podatkovne veze na dnu učiniti fizičku vezu pouzdanijom adresiranjem i otkrivanjem pogrešaka. Prijenosna funkcija jednostavno sastavlja okvire sloja veze u fragmente sloja aplikacije. Ovaj sloj preuzima cijelu poruku i navodi koji se podaci preferiraju u odnosu na gornji korisnički sloj. Svaka poruka može imati nekoliko tipova podataka kao što su analogni, binarni i brojački ulazi i izlazi.

Kako radi DNP3 protokol?

DNP3 protokol jednostavno radi pomoću 27 osnovnih funkcijskih kodova za dopuštanje komunikacije između glavnih stanica i udaljenih jedinica. Tako da će neki funkcijski kodovi omogućiti glavnom uređaju da zatraži i dobije informacije o stanju s udaljenog uređaja, a drugi funkcijski kodovi će omogućiti glavnom uređaju da odluči ili ispravi konfiguraciju udaljene jedinice.

Nekoliko funkcijskih kodova se uglavnom koristi u glavnoj stanici DNP3 za upravljanje opremom ili udaljenom jedinicom na udaljenim mjestima. DNP3 glavna stanica šalje većinu komunikacije udaljenom uređaju DNP3. No, neželjena poruka (o/p poruka) pokreće se preko udaljene jedinice i generira alarm. Tako da ova poruka daje upozorenje glavnom uređaju kada se pojavi alarm.

Funkcijski kodovi

Funkcijski kodovi DNP3 uključuju sljedeće.

Kod funkcije

Opis

0x00

Potvrdite šifru funkcije.

0x01

Pročitajte kod funkcije.
0x02

Napišite kod funkcije.

0x03

Odaberite kod funkcije.

0x04

Upravljajte kodom funkcije.

0x05

Kod funkcije izravnog rada

0x0d

Kôd funkcije hladnog ponovnog pokretanja

0x0e

Kod funkcije toplog ponovnog pokretanja

0x12

Kod funkcije zaustavljanja aplikacije

0x1b

Brisanje koda funkcije datoteke

0x81

Kod funkcije odgovora

0x82

Kôd funkcije neželjenog odgovora

DNP3 format poruke

Struktura formata poruke DNP3 prikazana je u nastavku. Ako ispitamo ovu strukturu, možemo primijetiti da se poruke razmjenjuju između mastera i daljinskog upravljača. Serijski telemetrijski protokol (TBOS) je bajt-orijentiran razmjenom jednog bajta za komunikaciju.

Prošireni serijski telemetrijski protokoli kao što je TABS orijentirani su na pakete s paketima bajtova koji se razmjenjuju radi komunikacije. Ovi paketi obično uključuju zaglavlje, podatke i bajtove kontrolne sume. DNP3 protokol je orijentiran na pakete i koristi strukturu paketa koja je prikazana na sljedećoj slici.

  Format poruke DNP3
Format poruke DNP3

U gornjem dijagramu formata poruke, DNP3 ASDU (jedinica podataka usluge aplikacije) je vrijedan za prilagodbu pametnog sadržaja koji se kontrolira kroz kvalifikatore kao i kroz polja IndexSize. Dakle, ovaj dizajn će podatke aplikacije učiniti dostupnima unutar fleksibilnih konfiguracija.

Raspravimo sada o tome kako se razmjenjuju podaci, posebno u slojevitom komunikacijskom modelu.
Aplikacijski sloj u gornjem dijagramu kombinira ASDU (podatkovnu jedinicu aplikacijskog servisa) i zapakirani objekt pomoću APCI (kontrola aplikacijskog protokola) bloka kako bi napravio APDU (podatkovnu jedinicu aplikacijskog protokola).

Prijenosni sloj će rastaviti podatkovnu jedinicu usluge aplikacije ili APDU u različite segmente s maksimalnom veličinom od 16 bajtova i pakirati ih pomoću 8-bitnog kontrolnog zaglavlja prijenosa i 16-bitnih CRC separatora segmenta u prijenosni okvir.

Sloj veze preslikan je na 4-slojni model koji je razvijen kroz DoD (Ministarstvo obrane) kroz izostavljeni DoD Internet sloj. Ako se koristi serijski prijenos, tada se sklapanje paketa vrši i nalazi na prijenosnom mediju za isporuku.

Ako se paket prenosi preko LAN-a ili WAN-a, tada se 3 DNP3 sloja skupljaju u prvi sloj. Paket koji je sastavljen može se omotati unutar TCP-a (Transport Control Protocol) kroz transportni sloj koji je omotan unutar IP-a (Internet Protocol) kroz internetski sloj. UDP (User Datagram Protocol) također se može koristiti, ali predstavlja neke dodatne probleme povezane s pouzdanom isporukom unutar pakiranih mreža.

DNP3 format podataka

DNP se intenzivno koristi u kontroli poruka koje prolaze između središnje stanice i kontrolnih jedinica. Format podataka DNP3 uglavnom uključuje dva odjeljka zaglavlje i odjeljke podataka. Nadalje, zaglavlje je podijeljeno u šest pododjeljaka.

  DNP3 format podataka
DNP3 format podataka

Format podatkovnog okvira i potrebna veličina svakog polja prikazani su na gornjoj slici. U ovom dijagramu, sinkronizacija je prvo polje koje ima 1 bajt i specificira početak okvira.
Ova vrijednost polja je fiksna na 0564, tako da kada se okvir primi ispitivanjem položaja sinkroniziranog polja, mapiranje se može učiniti učinkovito.

Duljina polja daje cijelu duljinu okvira tako da se određeni međuspremnik može dodijeliti na odredištu za držanje dolaznih okvira. Dakle, drugi okvir je 'Kontrolno polje' koje opisuje kontrolnu akciju koju treba zatražiti na strani primatelja.

Kontrolno polje uključivat će heksadecimalnu vrijednost 41 inače 42 na temelju vrste akcije. Nakon toga, polje odredišne ​​i izvorne adrese pružit će željene adrese primatelja i čvor za slanje.
CRC ili Cyclic Redundancy Check posljednje je polje koje će pomoći u provjeri pogreške okvira. Kontrolna vrijednost povezana je s porukom u trenutku slanja koja će biti unakrsno provjerena na primateljskoj strani. Jednom kada se ova vrijednost podudara, tada specificira nepostojanje greške unutar okvira. Dio podataka je od 2 do 4 bajta, ali nema nikakvu ulogu u kontroli prijenosa poruka.

Gornja slika prikazuje kontrolnu poruku koja se prenosi unutar formata DNP3 od jedne stanice do druge kao kontrola do odredišta. Za komunikaciju raznih radnji s odredištima, polja poput kontrolnog polja kao i odredišne ​​adrese, dok se neka polja neće promijeniti za sve komunikacije.

Primjer DNP3 sustava nadzora

Dijagram glavnog DNP3 i sustava daljinskog nadzora prikazan je u nastavku. Ovaj se model koristi za prijenos podataka između dva uređaja kao što su glavni i daljinski koristeći DNP3.

  Primjer DNP3
DNP3 ispit the

DNP3 master i dijagram sustava daljinskog nadzora prikazani su dolje. Ovaj se model koristi za prijenos podataka između dva uređaja kao što su glavni i daljinski koristeći DNP3. Ovdje je glavno računalo, a podređeno ili udaljeno mjesto je izlazna stanica. Podaci koji se prenose su ili statični podaci, podaci o događajima i prihvaćaju neželjene podatke o događajima.

Protokol DNP3 obično se koristi između glavnog (računala) i daljinskog (Outstation). Ovdje se master koristi za pružanje sučelja između ljudskog mrežnog upravitelja kao i sustava za nadzor. Daljinski upravljač osigurava sučelje između glavnog i fizičkog uređaja koji se kontroliraju ili nadziru.

I glavni i daljinski koriste zajedničku biblioteku objekata za razmjenu podataka. Ovdje su podaci. DNP3 protokol je anketirani protokol koji uključuje mogućnosti koje su pažljivo dizajnirane. Jednom kada je glavna stanica povezana s daljinskim upravljačem, tada se može izvršiti anketa integriteta koja je vrlo značajna za adresiranje DNP3 jer za podatkovnu točku vraćaju sve vrijednosti međuspremnika i također sadrže trenutnu vrijednost točke.

Općenito, DNP3 upravljački programi mogu rutinski izvoditi različita ispitivanja kao što su ispitivanje integriteta, klasa 1, klasa 2 i klasa 3. U ispitivanju integriteta, DNP3 jednostavno zahtijeva od vanjske stanice da prenese svoje podatke klase 1, klase 2 i klase 3 podaci o događajima & statički podaci klase 0 unutar kronološkog slijeda. Anketa integriteta se obično koristi za sinkronizaciju baza podataka DNP3 master & slave i stoga ima tendenciju da joj se dodijeli spora stopa ankete. Obično se ankete klase 1, klase 2 i klase 3 koriste za oporavak pojedinačnih događaja klase po promjenjivim stopama na temelju važnosti tih događaja. Više kritičnih događaja dodjeljuje se klasama koje imaju bržu stopu ankete.

Razlika između DNP3 i IEC 61850

Razlika između DNP3 i IEC 61850 uključuje sljedeće.

DNP3

IEC 61850

DNP3 protokol je otvorena industrijska specifikacija. IEC 61850 je IEC standard.
Grupa DNP korisnika je standardna organizacija DNP3 protokola. Međunarodna elektrotehnička komisija standardna je organizacija IEC 61850.
DNP3 protokol ima četveroslojnu arhitekturu i također podržava sedam slojeva TCP/IP ili UDP/IP. Komunikacija u IEC 61850 protokolu temelji se na OSI model .
DNP3, GOOSE, HMI, IEC, RTU i SCADA uobičajeni su pojmovi komunikacijskog protokola IEC 61850. Inteligentni uređaj (IED), logički uređaj i logički čvor, objekt podataka i atribut podataka razine su koje definiraju hijerarhijski informacijski model IEC 61850
Prednosti treće verzije protokola distribuirane mreže su da nisu potrebni prevoditelji protokola, održavanje, testiranje i obuka će trajati manje vremena, jednostavno proširenje sustava i dug životni vijek proizvoda. Prednosti IEC 61850 protokola su troškovi proširenja, troškovi integracije, troškovi migracije opreme i niski troškovi instalacije.

Razlika između DNP3 i Modbusa

Razlika između DNP3 i Modbusa uključuje sljedeće.

DNP3

Modbus

Distribuirani mrežni protokol razvio je Harris 1993. Modbus protokol razvio je Modicon 1979
Distribuirani mrežni protokol koristi bitove. Modbus komunikacijski protokol koristi tekstualne opise za slanje podataka.
DNP3 se sastoji od tri sloja, a to su fizički, podatkovni sloj i aplikacijski sloj. Komunikacijski protokol Modbus sastoji se samo od aplikacijskog sloja
DNP3 protokol podržava više podređenih, više nadređenih i peer-to-peer komunikaciju. Modbus protokol podržava samo peer-to-peer komunikaciju.
Konfiguracijski parametri potrebni u DNP3 protokolu su loša brzina, veličina fragmenta i adrese uređaja. Konfiguracije potrebne u Modbus protokolu su paritetni način, ASCII način, RTU način i brzina prijenosa podataka.

DNP3 za i protiv

The prednosti DNP3 protokola Uključujem sljedeće.

  • DNP3 je otvoreni standardni protokol, tako da svaki dizajner može dizajnirati DNP3 opremu koja je dobro usklađena s drugom DNP3 opremom.
  • DNP3 pruža mnoge mogućnosti zahvaljujući inteligentnom i robusnom protokolu.
  • Može zahtijevati i odgovarati kroz nekoliko vrsta podataka unutar jedne poruke
  • Omogućuje nekoliko master i peer-to-peer operacija
  • Podržava standardni format vremena i sinkronizaciju vremena.
  • Troškovi softvera će se smanjiti.
  • Nema zahtjeva za prevoditeljima protokola.
  • Manje održavanja i testiranja.

Nedostaci DNP3 protokola uključuju sljedeće.

DNP3 koristi serijski RTU i nadograđuje ga putem Ethernet RTU (ERTU). Ako propusnost komunikacijskog kanala do te stanice nije također poboljšana, tada će korisnik imati sporiju vezu zbog opterećenja implementiranog u omatanju DNP3 kroz TCP/IP.

DNP3 aplikacije

The DNP3 aplikacije uključuju sljedeće.

  • DNP3 omogućuje komunikaciju različitih uređaja unutar sustava automatizacije procesa.
  • Različite komunalne tvrtke naširoko koriste ovaj protokol za plinske, električne i vodene telemetrijske sustave.
  • Koristi se u SCADA komunikacijama.
  • DNP3 komunikacijski protokol koristi se u daljinskim i SCADA nadzornim sustavima.
  • Ovo je primjenjivo u cijelom SCADA okruženju koje uključuje od glavne do daljinske i RTU do IED komunikacije te također u mrežnim aplikacijama.

Dakle, ovo je sve o tome pregled DNP3 protokola – rad s aplikacijama. The Specifikacija DNP3 protokola uglavnom ovisi o objektnom modelu. Dakle, ovaj model jednostavno smanjuje mapiranje bitova podataka koje je obično potrebno s drugim manje objektno orijentiranim protokolima. Za SCADA tehničare i inženjere, postojanje nekih unaprijed definiranih objekata učinit će DNP3 ugodnijim dizajnom i okvirom za implementaciju. Evo jedno pitanje za vas, koji je protokol?