L’uso di comunicazioni standard aperte per il controllo di supervisione e l’acquisizione dati (SCADA) è ben consolidato in un numero crescente di settori di utilità e industria in tutto il mondo. Ciò ha fornito vantaggi significativi nella distribuzione e nel funzionamento del sistema.
DNP3 è uno degli standard aperti SCADA di maggior successo adottati in tutto il mondo. In particolare il settore idrico ha adottato DNP3 per le comunicazioni SCADA su larga scala. Anche l’uso di DNP3 nei settori del gas e del petrolio sta guadagnando terreno.
Concetto di DNP3
DNP3 è un termine comunemente frainteso a cui potresti aver sentito fare riferimento quando parli di SCADA e sistemi di telemetria.
Abbiamo incluso alcune informazioni qui per cercare di demistificare DNP3 per coloro che non sono tecnicamente esperti con i sistemi di telemetria. DNP sta per Distributed Network Protocol.
In primo luogo, useremo l’analogia di due esseri umani che comunicano per aiutare a capire dove DNP3 si adatta.
Quando comunichiamo tra di noi possiamo utilizzare una grande varietà di mezzi di comunicazione diversi come un walkie talkie o una radio a 2 vie, una linea telefonica fissa, una linea telefonica mobile o forse su Internet utilizzando skype o simili. Mentre il mezzo che usiamo può cambiare, sarà necessario per noi comunicare usando la stessa lingua, cioè l’inglese.
Quando parliamo di comunicare intorno ai nostri sistemi SCADA e telemetria possiamo anche utilizzare diversi metodi di comunicazione come il cavo Ethernet, la radio e i sistemi telefonici pubblici proprio come quando due esseri umani comunicano.
In questo caso però dobbiamo anche usare la stessa lingua e la lingua che usiamo comunemente è DNP3.
Quindi, quando qualcuno si riferisce a DNP3 si riferisce ai dispositivi linguistici e le macchine SCADA parlano e non al mezzo di comunicazione che usano, come la radio.
Questo è un malinteso comune per le persone non tecnicamente chiare su DNP3 e quindi speriamo che l’analogia chiarisca le cose.
DNP3
DNP3 (Distributed Network Protocol) è un gruppo di protocolli. Svolge un ruolo importante nei sistemi SCADA, dove viene utilizzato tra i componenti del sistema. Il protocollo è stato specificamente sviluppato in modo che le RTU potessero parlare tra loro
DNP3 si basa su un modello a oggetti che riduce notevolmente la mappatura dei bit dei dati tradizionalmente richiesta da altri protocolli meno orientati agli oggetti. Riduce anche l’ampia disparità dei paradigmi di monitoraggio e controllo dello stato generalmente presenti nei protocolli che non forniscono praticamente oggetti predefiniti.
I puristi di questi protocolli alternativi insistono sul fatto che qualsiasi oggetto richiesto può essere “costruito” da oggetti esistenti.
Avere alcuni oggetti predefiniti, tuttavia, rende DNP3 un framework di progettazione e distribuzione un po ‘ più confortevole per ingegneri e tecnici SCADA.
DNP3 (Distributed Network Protocol) è un insieme di protocolli di comunicazione utilizzati tra i componenti nei sistemi di automazione di processo. Il suo uso principale è nelle utility come le compagnie elettriche e idriche. L’utilizzo in altri settori non è comune.
È stato sviluppato per le comunicazioni tra vari tipi di acquisizione dati e apparecchiature di controllo. Svolge un ruolo cruciale in SCADAsystems, dove viene utilizzato da stazioni Master SCADA (centri di controllo aka), unità terminali remoti (RTU) e dispositivi elettronici intelligenti (IED). Viene utilizzato principalmente per le comunicazioni tra una stazione master e RTU o IED.
ICp, il protocollo di comunicazione Inter-Control Center (parte di IEC 60870-6), viene utilizzato per le comunicazioni inter-master station.
Che cos’è DNP3?
DNP3 è un protocollo di comunicazione utilizzato nei sistemi SCADA / “remote monitoring”. È diventato molto popolare perché è “aperto”. Qualsiasi produttore può sviluppare apparecchiature DNP3 compatibili con altre apparecchiature DNP3.
DNP3 utilizza un modello Master / Remoto.
DNP3 viene tipicamente utilizzato tra master centrali e note diffuse ampiamente. Il master (pensare “Centro Operativo”) collega l’umano (voi) e il sistema di monitoraggio. Il telecomando(si pensi “sub station”) fornisce l’interfaccia tra il master e il dispositivo reale (s) monitorato o controllato.
Sia il master che il remote utilizzano una libreria di oggetti comuni per scambiare dati. Il protocollo DNP3 può essere utilizzato in modo affidabile su supporti che possono essere soggetti a interferenze rumorose.
DNP3 è un protocollo SCADA moderno aperto, intelligente, robusto ed efficiente. Può
- richiesta e rispondere con più tipi di dati per i singoli messaggi,
- segmento di messaggi in più frame per garantire un’eccellente errore di rilevamento e recupero,
- includere solo i dati modificati nei messaggi di risposta,
- assegnare la priorità ai dati e la richiesta di elementi di dati periodicamente in base alla loro priorità,
- rispondere senza richiesta (non richiesto),
- supporto di sincronizzazione di tempo e un tempo standard di formato,
- consentire a più maestri e peer-to-peer operazioni,
- e consentire all’utente definibili di oggetti, tra cui file trasferimento.
Come comunicano gli elementi DNP3?
DNP3 utilizza 27 codici funzione di base per lo scambio di dati tra Master (si pensi “Centro di controllo”) e telecomandi (si pensi “pump yard”). Alcuni di questi codici funzione consentono a un Master di richiedere e ricevere informazioni sullo stato da un telecomando. Altri codici funzione consentono a un Master di modificare le impostazioni di un telecomando.
Altri codici funzione sono definiti per un master DNP3 per controllare il telecomando-o marcia accanto al telecomando. Viene fornito un codice funzione per consentire al telecomando di rispondere con un messaggio non richiesto a particolari eventi che si verificano nella sua area.
Come puoi vedere, la maggior parte dei messaggi sono emessi dal gestore DNP3. Poiché il messaggio non richiesto può essere avviato da un telecomando, in genere viene utilizzato per segnalare allarmi.
Questo avvisa il master DNP3 non appena si verifica una condizione di allarme, invece di attendere la richiesta successiva.
Comprensione della libreria di oggetti DNP3.
Il framework DNP3 include una libreria di oggetti utilizzati in molti sistemi SCADA. Questa libreria è gratuita per i membri del gruppo DNP Users. Visita www.dnp.org per di più. Questi oggetti standard includono input binari. Questi riporteranno cose che hanno due stati; l’alimentazione è accesa o spenta, un pannello di accesso è aperto o chiuso.
Un altro oggetto comune è un ingresso analogico che viene utilizzato per segnalare cose che hanno un intervallo di valori. La velocità della ventola di scarico può essere ovunque da 40 a 400 giri / min. L’alimentazione principale può variare da 110 a 128 VAC.
Questa libreria consente al produttore di progettare il risponditore remoto DNP3 per utilizzare questi oggetti comuni da segnalare ai master upstream. Inoltre, rende più facile per i master integrare i dati raccolti dai telecomandi e presentarli per te.
Senza questo quadro di oggetti comuni, i produttori devono sviluppare il proprio modello per la segnalazione dello stato e fornire capacità di controllo. Questi modelli, spesso molto diversi, devono quindi essere “compilati” nei Master e convertiti in una sorta di oggetti comuni per una gestione efficiente.
Un altro strumento che si trova spesso in questi framework più “aperti” è un’interfaccia proprietaria o un modulo di traduzione per accedere e controllare il telecomando.
Gli oggetti nella libreria DNP3 sono divisi in Gruppi e Variazioni. Ad esempio, il gruppo di input analogico ha sei varianti per fornire valori interi o in virgola mobile a 16 o 32 bit con o senza bitmap di stato.
Il gruppo di eventi analogici ha otto varianti per fornire valori interi o in virgola mobile a 16 o 32 bit con una bitmap di stato e con o senza un timestamp.
Si noti che il gruppo di eventi analogici non include variazioni senza bitmap di stato.
Comprensione della comunicazione a strati DNP3
DNP3 utilizza il modello di comunicazione a strati:
- Il livello di applicazione combina diverse parti. Ther è un application Service Data unit (ASDU). Poi c’è l’oggetto confezionato. Un blocco Application Protocol Control Info (APCI) viene aggiunto per creare un’unità dati Application Protocol (APDU).
- Il livello di trasporto suddivide l’APDU in segmenti con una dimensione massima di 16 byte e li combina con un’intestazione di controllo del trasporto a 8 bit e separatori CRC di segmento a 16 bit in un transportFrame.
- Il livello di collegamento aggiunge un’intestazione alle informazioni di controllo e indirizzo. Il pacchetto è ora pronto per la consegna.
Questi livelli possono essere mappati al modello a quattro livelli sviluppato dal Dipartimento della Difesa (è possibile ricordare le origini del DoD di Internet) con il livello Internet del DoD omesso.
Se il pacchetto viene inviato su una LAN / WAN, i tre livelli DNP3 vengono arrotolati nel livello dell’applicazione.
Il pacchetto assemblato viene avvolto nel protocollo di controllo del trasporto (TCP) dal livello di trasporto, che a sua volta viene avvolto nel protocollo Internet (IP) dal livello Internet (un po ‘ ovvio).
È possibile utilizzare anche il protocollo User Datagram Protocol (UDP), ma presenta alcuni problemi aggiuntivi relativi alla distribuzione affidabile nelle reti congestionate.
Il quarto strato è lo strato di interfaccia di rete in cui il pacchetto assemblato è effettivamente interfacciato a qualche tipo di supporto di trasporto (ad esempio, rame twisted pair, RG58 co-axial o fibra).
Sebbene questo modello multistrato possa sembrare un po ‘ confuso, isola efficacemente i compiti della comunicazione e, infine, aiuta a progettare e implementare una rete.
Attraversare i livelli
Per mostrare questo modello a strati, diamo un’occhiata a una singola richiesta di lettura DNP3 su una LAN. Il master DNP3 desidera conoscere lo stato dell’alimentazione del telecomando e prepara un messaggio di richiesta di lettura per quell’oggetto.
Dopo aver attraversato tutti e tre i livelli DNP3, il messaggio viene passato al livello di trasporto TCP/UDP. Il livello di trasporto aggiunge un blocco di dati che ID la porta master e la porta in cui si aspetta che il processo DNP3 remoto sia in ascolto per i messaggi. Il pacchetto viene quindi passato al livello IP.
Qui viene aggiunto un blocco dati contenente gli indirizzi IP e di accesso ai media del Master e del Telecomando. Quindi, il pacchetto completo viene passato al livello dell’interfaccia di rete.
Il livello dell’interfaccia di rete controlla l’accesso e la disponibilità dei supporti. Quindi posiziona il pacchetto sul supporto per la trasmissione.
Dopo aver lavorato attraverso i ponti e attraverso i router (qualcosa come “oltre il fiume e attraverso i boschi”) in base alle informazioni IP, il pacchetto arriva al Telecomando.
Qui, passa attraverso gli stessi quattro strati nell’ordine opposto come ha fatto al Master. Innanzitutto, viene estratto dal supporto dal livello dell’interfaccia di rete. Dopo aver controllato che il pacchetto sia intatto e valido, il livello dell’interfaccia di rete lo passa al livello IP.
Il livello IP controlla l’accesso al supporto e l’indirizzo IP e lo trasmette al livello TCP/UDP in cui viene controllata la porta di destinazione per le applicazioni collegate. Se un’app è in ascolto sulla porta di destinazione, il pacchetto viene passato al livello dell’applicazione. Se l’app di ascolto è il processo DNP3 remoto, la richiesta di lettura viene passata.
Si muove attraverso i suoi tre livelli per controllare la richiesta e vedere quali informazioni devono essere raccolte. La risposta remota segue quindi lo stesso percorso in senso inverso per raggiungere il Master.
Un messaggio DNP3 passa attraverso i livelli di protocollo sia al gestore che all’agente. Ogni livello affronta una specifica attività di comunicazione.
Un aiuto per la risoluzione dei problemi
Conoscere questo modello stratificato di DNP3 rende più facile trovare e risolvere i problemi di rete. Quando c’è un problema, puoi semplicemente rintracciarlo, uscire da un’estremità, dentro e sopra l’altra. LAN / WAN link e luci di stato forniscono mostrare al livello di interfaccia di rete. Le richieste e le risposte ICMP echo (Ping) forniscono alcune informazioni sul corretto funzionamento del livello IP.
Gli indicatori di elaborazione DNP3 possono essere utilizzati per verificare il passaggio del pacchetto DNP3 attraverso il livello TCP/UDP e il funzionamento del livello dell’applicazione.
Ogni passaggio può essere verificato in modo indipendente fino a quando tutti i passaggi funzionano correttamente per la comunicazione end-to-end.
Vantaggi di DNP3
DNP3 offre multiplexing, frammentazione dei dati e altro ancora.
DNP3 è un protocollo layer 2. Ciò significa che prevede:
- Multiplexing.
- Frammentazione dei dati.
- Controllo degli errori.
- controllo collegamento.
- Ordinamento priorità.
Fornisce anche servizi di indirizzamento di livello 2 per i dati degli utenti.
DNP3 consente ai vari dispositivi nei sistemi di automazione di processo di parlare. Il protocollo DNP3 è ampiamente utilizzato per la telemetria elettrica, del gas e dell’acqua da parte delle società di servizi. È anche possibile che DNP3 sia utilizzato in altre aree, anche se non è così comune.
SCADA Communications utilizza il protocollo DNP3.
I sistemi SCADA utilizzano il protocollo DNP3 per l’utilizzo tra i componenti del sistema. Il protocollo DNP3 prevede la comunicazione tra SCADA System master, RTU e Dispositivi elettronici intelligenti (IED).
DNP3 è stato sviluppato per soddisfare la necessità di un protocollo standard che consentisse ai componenti del sistema SCADA sviluppati da diversi fornitori di parlare. Utilizzando IEC 60870-5 come base, DNP3 è stato creato come protocollo aperto per l’uso in questi casi.
Questo protocollo era disponibile per un rapido utilizzo all’interno delle reti SCADA e rispondeva alle specifiche stabilite dalle organizzazioni nordamericane.
DNP3 fornisce l’affidabilità delle comunicazioni per le utility.
DNP3 garantisce l’affidabilità delle comunicazioni negli ambienti difficili delle utility. Il protocollo è in grado di evitare di essere distorto da EMI, componenti legacysystem e scarsa trasmissione a causa del formato di comunicazione di DNP3.
Sebbene il protocollo abbia il controllo degli errori, DNP3 non è protetto. Questa è una considerazione importante durante la pianificazione SCADA.
Perché è così popolare ?
Ci sono alcuni motivi per cui DNP3 è così potente e comunemente usato nei sistemi di telemetria:-
- È uno standard e aperto. Ciò significa che la” lingua ” è prontamente disponibile e tutti i dispositivi DNP3 comunicano utilizzando la stessa lingua. I primi RTU comunicavano utilizzando protocolli proprietari che significava che la lingua in cui comunicavano era nota solo ad altri prodotti prodotti dallo stesso fornitore. Oggi, molti dispositivi sono multilingue in quanto comunicheranno usando il loro protocollo proprietario ma permetteranno anche comunicazioni usando il protocollo DNP3, questo è stato fatto da molti fornitori per consentire un graduale aggiornamento della loro rete a DNP3 nel tempo.
- È un protocollo di routing. Questa è una caratteristica particolarmente importante e chiave del protocollo DNP3 in quanto può comunicare attraverso diverse reti di comunicazione per raggiungere la destinazione del messaggio. Ad esempio, la macchina SCADA può essere collegata a una connessione Ethernet ma l’RTU può essere su una connessione radio, DNP3 è in grado di essere instradato dalla connessione Ethernet alla connessione radio tramite un RTU intermedio. Questo suona complesso, ma in termini semplici sarebbe come se si parla attraverso una connessione telefonica al tuo amico, e loro inoltro il messaggio a qualcuno su un walkie-talkie nelle vicinanze. Il potere di DNP3 è che questo può essere fatto molto facilmente nella maggior parte dei moderni RTU senza la necessità di una complessa mappatura I/O.
- Fa buon uso del canale di comunicazione. DNP3 è stato progettato per essere in grado di operare sia su reti Ethernet ad alta velocità che su reti radio a bassa velocità ed è molto bravo a “comunicare solo quando necessario”. Ad esempio, quando una pompa si accende o si spegne, DNP3 invierà un messaggio notificando allo SCADA quella modifica. I protocolli di polling fissi, come MODBUS, non sono in grado di raggiungere questo obiettivo in quanto devono aggiornare costantemente tutti i dati mediante polling. Tornando alla nostra analogia umana, questo sarebbe come se chiedessi continuamente al tuo amico di dirti cosa mostra il semaforo, in un esempio di protocollo di polling l’amico avrebbe costantemente detto verde, verde, verde, verde poi rosso, rosso, rosso ogni secondo o giù di lì. Con DNP3, l’amico ti direbbe solo quando la luce cambia per questo usando molto meno larghezza di banda.
- Molti amici contemporaneamente. Ciò che questo punto numero 3 sopra significa è che potresti tenere conversazioni con molti amici contemporaneamente e questo è davvero il potere di DNP3, consentendo a molte stazioni di pompaggio, sottostazioni o pozzi di gas di comunicare sulla stessa rete.