DNP3 protokoll: arhitektuur, töö, funktsioonikoodid, andmevorming ja selle rakendused

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





DNP3 ehk Distributed Network Protocol3 käivitas 1992. aastal Jaapani korporatsioon, et luua protokoll hajussüsteemide vaheliseks suhtluseks. DNP3 on võrgupõhine seadme juhtimisprotokoll, mida kasutatakse seadme ja kaugsisend-/väljundseadme vaheliseks suhtluseks. See protokoll sõltub peamiselt objektorienteeritud mudelist, mis vähendab andmete bittide vastendamist, mida tavaliselt nõuavad teised vähem objektorienteeritud protokollid. Seda kasutatakse peamiselt kesksete ülemjaamade ja hajutatud kaugseadmete vahel, kus keskne ülemjaam toimib lihtsalt liidesena nii inimvõrguhalduri kui ka seiresüsteemi vahel. Hajutatud kaugseade on liides põhijaama ja kaugetes piirkondades vaadeldava ja juhitava füüsilise aparatuuri vahel. Andmevahetust nende kahe vahel saab teha ühise objektide raamatukogu abil. Selles artiklis käsitletakse ülevaadet DNP3 protokoll – rakendustega töötamine.


Mis on DNP3 protokoll?

Sideprotokollide komplekti, mida protsesside automatiseerimissüsteemides erinevate komponentide vahel kasutatakse, tuntakse DNP3-protokollina. See protokoll oli mõeldud peamiselt erinevate andmehõive- ja juhtimisseadmete vaheliseks suhtluseks. Nii et sisse SCADA süsteemid , mängib see protokoll olulist rolli, kui seda kasutavad RTU-d, SCADA-d ja IED-d.



DNP3 protokolli arhitektuur ja selle töö

DNP3 on kolmanda versiooni hajutatud võrguprotokoll. Sellel on üks terviklikkuse küsitlus ja kolm küsitlustaset, kus terviklikkuse küsitlust kasutatakse ühe küsitluse andmete hankimiseks.

  DNP3 protokolli arhitektuur
DNP3 protokolli arhitektuur

DNP3 võrguarhitektuur võib olla unicast, multidrop ja andmepistiku/hierarhiline arhitektuur.



Unicast arhitektuur: on tuntud ka kui üks-ühele arhitektuur, siin saab peajaam suhelda ainult ühe välisjaamaga, samas kui sisse multidrop arhitektuur ülemjaam saab suhelda rohkem kui ühe välisjaama seadmega, mis tähendab, et see suudab suhelda mitme välisjaama seadmega. Andmekonnektor/hierarhiline arhitektuur on kombinatsioon multidrop- ja unicast-arhitektuuridest.

DNP3 sideprotokolli kasutatakse tavaliselt elektrivõrkude, vee ja kanalisatsiooni, nafta ja gaasi, transpordi ja muude SCADA keskkondade jaoks. See võimaldab teil reaalajas ja ajalooliselt vaadata olulisi tasemeid, milleks võivad olla temperatuur, niiskus, aku tase, pinge, kütusetase jne. Samuti võimaldab see tuvastada probleeme ja neid kiiresti parandada, samuti saate kõrvaldada kitsaskohad ja ebaefektiivsused.

DNP3 protokolli saab kujundada OSI mudeli kihtide alusel, nagu andmeside, transport, rakendus ja kasutajakiht. Sellel protokollil on paindlikkus ühe ülemseadme ühendamiseks vähemalt ühe või enama jada- ja Etherneti füüsilise andmekandja kohal oleva välisjaama kaudu.
Teised võimalikud arhitektuurid hõlmavad peamiselt erinevaid põhiühendusi ühe välisjaama ja võrdõigusoperatsioonidega. Tavaliselt käivitab ülem juhtkäsud, et nõuda andmeid või aktiveerida seadmeid, mida hallatakse läbi välisjaama. See välisjaam lihtsalt reageerib kaptenile sobiva teabe edastamisega.

  DNP3 protokollikihid
DNP3 protokollikihid

OSI mudelil põhinev DNP3-protokoll sisaldab nelja kihti andmeside, transpordifunktsioon, rakendus ja kasutajakiht. Siin muudab allosas olev andmelingi kiht füüsilise lingi adresseerimise ja veatuvastuse abil usaldusväärsemaks. Transpordifunktsioon koondab lingikihi raamid lihtsalt rakenduskihi fragmentideks. See kiht võtab kogu sõnumi ja määrab, milliseid andmeid eelistatakse ülaltoodud kasutajakihile. Igal sõnumil võib olla mitut tüüpi andmetüüpe, nagu analoog-, binaar- ja loenduri sisendid ja väljundid.

Kuidas DNP3 protokoll töötab?

DNP3-protokoll lihtsalt töötab, kasutades 27 põhifunktsiooni koodi, mis võimaldavad sidet ülemjaamade ja kaugseadmete vahel. Nii et mõned funktsioonikoodid võimaldavad ülemal nõuda ja saada teavet kaugseadmest ning teised funktsioonikoodid võimaldavad ülemal otsustada või parandada kaugseadme konfiguratsiooni.

Mitmeid funktsioonikoode kasutatakse peamiselt DNP3 peajaamas seadmete või kaugseadme juhtimiseks kaugsaitidel. DNP3 peajaam annab suurema osa sidest DNP3 kaugseadmega. Kuid soovimatu sõnum (o/p sõnum) käivitatakse kaugseadme kaudu ja see genereerib häire. Nii et see teade annab häire ilmnemisel kaptenile hoiatuse.

Funktsioonikoodid

DNP3 funktsioonikoodid sisaldavad järgmist.

Funktsiooni kood

Kirjeldus

0x00

Kinnitage funktsioonikood.

0x01

Funktsiooni koodi lugemine.
0x02

Kirjutage funktsiooni kood.

0x03

Valige funktsiooni kood.

0x04

Funktsioonikoodi kasutamine.

0x05

Otsese töötamise funktsiooni kood

0x0d

Külm taaskäivitamise funktsiooni kood

0x0e

Soe taaskäivitamise funktsioonikood

0x12

Peata rakenduse funktsioonikood

0x1b

Kustutage faili funktsioonikood

0x81

Vastuse funktsiooni kood

0x82

Soovimatu vastuse funktsiooni kood

DNP3 sõnumivorming

DNP3 sõnumivormingu struktuur on näidatud allpool. Kui uurime seda struktuuri, näeme, et sõnumeid vahetatakse ülemate ja kaugjuhtimispultide vahel. Jadatelemeetriaprotokoll (TBOS) on baitidele orienteeritud, vahetades suhtlemiseks ühe baidi.

Laiendatud jadatelemeetriaprotokollid, nagu TABS, on pakettorienteeritud baitide pakettidega, mida vahetatakse suhtlemiseks. Need paketid sisaldavad tavaliselt päist, andmeid ja kontrollsumma baite. DNP3-protokoll on pakettorienteeritud ja kasutab paketistruktuuri, mis on näidatud järgmisel joonisel.

  DNP3 sõnumivorming
DNP3 sõnumivorming

Ülaltoodud sõnumivormingu diagrammil on DNP3 ASDU (rakendusteenuse andmeüksus) väärtuslik nutika sisu reguleerimiseks, mida juhitakse nii kvalifikaatorite kui ka indeksi suuruse väljade kaudu. Nii et see disain muudab rakenduste andmed kättesaadavaks paindlikes konfiguratsioonides.

Nüüd arutame, kuidas andmeid vahetatakse, eriti kihilises suhtlusmudelis.
Ülaltoodud diagrammi rakenduskiht ühendab APDU (rakendusprotokolli andmeüksuse) moodustamiseks ASDU (rakendusteenuse andmeüksus) ja pakitud objekti APCI (rakendusprotokolli juhtimine) ploki abil.

Transpordikiht jagab rakenduse teenuse andmeüksuse või APDU erinevateks segmentideks maksimaalselt 16-baidiseks ja pakendab need 8-bitise transpordijuhtimise päise ja 16-bitise segmendi CRC eraldajate abil transpordiraamiks.

Lingikiht on kaardistatud neljakihilise mudeliga, mis on välja töötatud kaitseministeeriumi (Department of Defense) kaudu, kasutades DoD Interneti-kihti, mis on välja jäetud. Kui kasutatakse seeriatransporti, tehakse pakettide kokkupanek ja see asub kohaletoimetamiseks transpordimeediumil.

Kui pakett edastatakse LAN-i või WAN-i kaudu, rullitakse esimeseks kihiks 3 DNP3-kihti. Kokkupandud paketti saab pakida TCP-sse (Transport Control Protocol) läbi transpordikihi, mis on mähitud IP-sse (Interneti-protokoll) läbi Interneti-kihi. Kasutada saab ka UDP-d (User Datagram Protocol), kuid see tekitab mõningaid lisaprobleeme, mis on seotud usaldusväärse edastamisega pakitud võrkudes.

DNP3 andmevorming

DNP-d kasutatakse laialdaselt keskjaama ja juhtseadmete vahel edastatavate sõnumite juhtimiseks. DNP3 andmevorming sisaldab peamiselt kahte jaotist päisest ja andmeosast. Lisaks on päis jagatud kuueks alajaotuseks.

  DNP3 andmevorming
DNP3 andmevorming

Andmeraami formaat ja iga välja vajalik suurus on näidatud ülaloleval joonisel. Sellel diagrammil on sünkroonimine esimene väli, mis on 1 bait ja see määrab kaadri alguse.
Selle välja väärtuseks on fikseeritud 0564, nii et kui sünkroonimisvälja asukohta uurides on kaader vastu võetud, saab kaardistada tõhusalt.

Välja pikkus annab kogu kaadri pikkuse, nii et sihtpunkti saab määrata konkreetse puhvri sissetulevate kaadrite hoidmiseks. Nii et teine ​​kaader on 'Juhtväli', mis kirjeldab vastuvõtja otsas nõutavat juhtimistoimingut.

Juhtväli sisaldab kuueteistkümnendväärtust 41, vastasel juhul 42 toimingu tüübi alusel. Pärast seda annab sihtkoha ja lähteaadressi väli kavandatud vastuvõtja aadressid ja saatva sõlme.
CRC ehk Cyclic Redundancy Check on viimane väli, mis aitab kaadri viga kontrollida. Edastamise ajal on sõnumiga ühendatud kontrollväärtus, mis vastuvõtvas otsas ristkontrollitakse. Kui see väärtus ühtib, määrab see kaadris vea puudumise. Andmete osa on 2 kuni 4 baiti, kuid sellel pole sõnumi edastamise kontrollimisel rolli.

Ülaltoodud joonisel on kujutatud juhtsõnum, mis edastatakse DNP3-vormingus ühest jaamast teise, nagu juhtseade sihtkohta. Erinevate toimingute edastamiseks sihtkohtadesse on väljad nagu juhtväli ja ka sihtkoha aadress, samas kui mõned väljad ei muutu kogu side puhul.

DNP3 seiresüsteemi näide

DNP3 põhi- ja kaugseiresüsteemi diagramm on näidatud allpool. Seda mudelit kasutatakse andmete edastamiseks kahe seadme, näiteks ülem- ja kaugseadme vahel, kasutades DNP3.

  DNP3 näide
DNP3 eksam a

DNP3 põhi- ja kaugseiresüsteemi diagramm on näidatud allpool. Seda mudelit kasutatakse andmete edastamiseks kahe seadme, näiteks ülem- ja kaugseadme vahel, kasutades DNP3. Siin on ülemseade arvuti ja alam- või kaugjuhtimisseade on välisjaam. Edastatud andmed on kas staatilised andmed, sündmuste andmed ja aktsepteerivad soovimatuid sündmuste andmeid.

DNP3-protokolli kasutatakse tavaliselt ülemseadme (arvuti) ja kaugjuhtimisseadme (välijaam) vahel. Siin kasutatakse juhtseadet nii inimvõrguhalduri kui ka seiresüsteemi vahelise liidese pakkumiseks. Kaugjuhtimispult pakub liidest nii juhtseadme kui ka kontrollitava või jälgitava füüsilise seadme vahel.

Nii juht- kui ka kaugjuhtimisseade kasutavad andmevahetuseks ühist objektide teeki. Siin on andmed DNP3 protokoll on küsitletud protokoll, mis sisaldab hoolikalt kavandatud võimalusi. Kui juhtjaam on kaugjuhtimispuldiga ühendatud, saab läbi viia terviklikkuse küsitluse, mis on DNP3 adresseerimisel väga oluline, kuna andmepunkti jaoks tagastavad nad kõik puhverdatud väärtused ja sisaldavad ka punkti praegust väärtust.

Üldiselt saavad DNP3 draiverid rutiinselt sooritada erinevaid küsitlusi, nagu terviklikkuse küsitlus, klass 1, klass 2 ja klass 3. Integrity Poll puhul palub DNP3 lihtsalt välisjaamal edastada oma klassi 1, klassi 2 ja klassi 3 sündmuste andmed ja klassi 0 staatilised andmed kronoloogilises järjekorras. Terviklikkuse küsitlust kasutatakse tavaliselt DNP3 ülem- ja alluvandmebaaside sünkroonimiseks ja seetõttu kiputakse sellele eraldama aeglast küsitlussagedust. Tavaliselt kasutatakse 1., 2. ja 3. klassi küsitlusi üksikute klassisündmuste taastamiseks muutuva kiirusega, lähtudes nende sündmuste tähtsusest. Suurema küsitlussagedusega klassidele määratakse kriitilisemad sündmused.

Erinevus DNP3 ja IEC 61850 vahel

Erinevus DNP3 ja IEC 61850 vahel hõlmab järgmist.

DNP3

IEC 61850

DNP3 protokoll on avatud tööstusharu spetsifikatsioon. IEC 61850 on IEC standard.
DNP kasutajate rühm on DNP3 protokolli standardorganisatsioon. Rahvusvaheline elektrotehniline komisjon on IEC 61850 standardiorganisatsioon.
DNP3-protokoll on neljakihiline arhitektuur ja toetab ka seitsmekihilist TCP/IP või UDP/IP. IEC 61850 protokolli suhtlus põhineb OSI mudel .
DNP3, GOOSE, HMI, IEC, RTU ja SCADA on IEC 61850 sideprotokolli üldtingimused. Nutikas seade (IED), loogiline seade ja loogiline sõlm, andmeobjekt ja andmeatribuut on tasemed, mis määratlevad IEC 61850 hierarhilise teabemudeli.
Hajutatud võrguprotokolli kolmanda versiooni eelised on see, et pole vaja protokolli tõlkijaid, hooldus, testimine ja koolitus võtab vähem aega, süsteemi on lihtne laiendada ja toote kasutusiga on pikk. IEC 61850 protokolli eelised on laienduskulud, integreerimiskulud, seadmete migratsioonikulud ja madalad paigalduskulud.

Erinevus DNP3 ja Modbusi vahel

Erinevused DNP3 ja Modbusi vahel on järgmised.

DNP3

Modbus

Hajutatud võrguprotokolli töötas välja 1993. aastal Harris. Modbusi protokolli töötas välja 1979. aastal Modicon
Hajutatud võrguprotokoll kasutab bitte. Modbusi sideprotokoll kasutab andmete saatmiseks tekstikirjeldusi.
DNP3 koosneb kolmest kihist, need on füüsiline, andmeside- ja rakenduskiht. Modbusi sideprotokoll koosneb ainult rakenduskihist
DNP3-protokoll toetab mitut alamseadet, mitut ülemseadet ja peer-to-peer-sidet. Modbusi protokoll toetab ainult peer-to-peer sidet.
DNP3 protokollis nõutavad konfiguratsiooniparameetrid on halb kiirus, fragmendi suurus ja seadme aadressid. Modbusi protokollis nõutavad konfiguratsioonid on paarsusrežiim, ASCII režiim, RTU režiim ja andmeedastuskiirus.

DNP3 plussid ja miinused

The DNP3 protokolli eelised Ma sisaldan järgmist.

  • DNP3 on avatud standardprotokoll, nii et iga disainer saab kujundada DNP3 seadmeid, mis sobivad hästi teiste DNP3 seadmetega.
  • Tänu intelligentsele ja tugevale protokollile pakub DNP3 palju võimalusi.
  • See võib ühe sõnumiga taotleda ja vastata mitme andmetüübi kaudu
  • See võimaldab mitut põhi- ja võrdõigusoperatsiooni
  • See toetab standardset ajavormingut ja aja sünkroonimist.
  • Tarkvarakulud vähenevad.
  • Protokolli tõlkijatele ei nõuta.
  • Vähem hooldust ja katsetamist.

DNP3 protokolli puudused hõlmavad järgmist.

DNP3 kasutab jada-RTU-d ja uuendab seda Etherneti RTU (ERTU) kaudu. Kui ka sidekanali ribalaiust selle jaamani ei suurendata, on kasutajal aeglasem link DNP3 TCP/IP-ga mähimisel rakendatud lisakulude tõttu.

DNP3 rakendused

The DNP3 rakendused sisaldama järgmist.

  • DNP3 võimaldab erinevatel protsesside automatiseerimissüsteemide seadmetel suhelda.
  • Erinevad kommunaalettevõtted kasutavad seda protokolli laialdaselt gaasi-, elektri- ja vee-telemeetriasüsteemide jaoks.
  • Seda kasutatakse SCADA kommunikatsioonis.
  • DNP3 sideprotokolli kasutatakse kaug- ja SCADA seiresüsteemides.
  • See on rakendatav kogu SCADA keskkonnas, mis hõlmab master-st kaug- ja RTU-st IED-i sidet ja ka võrgurakendusi.

Seega on see kõik umbes ülevaade DNP3 protokollist – rakendustega töötamine. The DNP3 protokolli spetsifikatsioon sõltub peamiselt objekti mudelist. Seega vähendab see mudel lihtsalt andmete bittide vastendamist, mis on tavaliselt vajalik muude vähem objektorienteeritud protokollide puhul. SCADA tehnikute ja inseneride jaoks muudab mõnede eelnevalt määratletud objektide olemasolu DNP3 disaini- ja juurutamisraamistiku mugavamaks. Siin on teile küsimus, mis on protokoll?