IEC 60870-5 è uno standard internazionale emanato all’inizio degli anni ’90 dalla Commissione
Elettrotecnica Internazionale (IEC). Questo standard indica un profilo di comunicazione per il
telecontrollo e la teleprotezione, e le relative specifiche di comunicazione per i sistemi di
produzione di energia elettrica. Attualmente è utilizzato anche per altri tipi di infrastrutture, ad
esempio il settore delle acque in Europa e in Asia.
I protocolli IEC 60870-5-101 e IEC 60870-5-104 sono norme di accompagnamento degli standard
IEC 60870-5 relativi ai protocolli di trasmissione.
IEC 60870-5-101
Il protocollo IEC 60870-5-101 è basato sui requisiti EPA (Enhanced Performance Architecture).
Questo protocollo definisce solo il collegamento fisico e i livelli applicazione del modello OSI. IEC
60870-5-101 è utilizzato principalmente su collegamenti seriali con supporti di trasmissione
relativamente lenti. Questo standard è conforme a velocità di trasmissione fino a 9600 bit/s,
sebbene vengano utilizzate velocità di trasmissione molto più elevate (<115200 bit/s).
IEC 60870-5-104
Il protocollo IEC 60870-5-104 è un’estensione del protocollo IEC 60870-5-101. Contiene modifiche
a livello di trasporto, rete, livello di collegamento e livello fisico per reti aperte. Lo standard IEC
60870-5-104 consente la comunicazione tra le stazioni e le sottostazioni in una rete TCP/IP
standard. Il protocollo TCP è usato per la trasmissione dati a livello di collegamento per garantire
la connettività alle LAN e ai router con servizi diversi (frame relay, ecc.), effettuare il collegamento
alla WAN.
Il livello applicazione dell’IEC 104 è lo stesso dell’IEC 60870-5-101, ad eccezione del fatto che
alcuni tipi di dati e servizi non vengono utilizzati. Lo standard definisce livelli di collegamento
separati, il che facilita il trasferimento dei dati tramite Ethernet e le linee seriali.
Il protocollo IEC 60870-5-104 abilita la comunicazione tra IED, RTU, stazioni e sottostazioni di
controllo tramite rete TCP/IP. Il protocollo TCP è usato per le trasmissioni dati sicure di tipo
connection-oriented.
IEC 60870-5-104 protocol (IEC 104) fa parte degli IEC Telecontrol Equipment e System standard
IEC 60870-5 che fornisce un profilo di comunicazione per l’invio di messaggi di telecontrollo di
base tra due sistemi nei sistemi di automazione.
IEC 60870 parte 5 è una parte del IEC 60870 insieme di standard con i quali si definiscono sistemi
usati i sistemi SCADA.
La Parte 5 fornisce un profilo di comunicazione per l’invio di messaggi di telecontrollo di base tra
due sistemi, il quale usa circuiti dati permanentemente collegati direttamente tra due sistemi. The
IEC Technical Committee 57 (Working Group 03) ha sviluppato un protocollo standard per il
telecontrollo, la teleprotezione, e telecomunicazioni associate per sistemi elettrici. Il risultato del
lavoro è IEC 60870-5. Cinque documenti specifica la base di IEC 60870-5:
Caratteristiche salienti:
Facile da integrare;
Occupazione di memoria ridotta;
Segue i standard di codifica aziendali: efficiente e compatto, facile da leggere, capire e
debuggare
Scritto in ANSI-Standard C Source Code, e supporta C++, C# .NET (Wrapper Class);
Può essere usato con o senza Real Time Operating System (RTOS);
Alte performance, robusto and architettura scalabile;
Fornisce un semplice metodo per gli integratori di sistemi e OEMs per utilizzare tool
standard per implementare questi sistemi
Context-based event-driven model
Multiple Server and Client Simulation
In a Single Server(link) simulate Multiple Stations (Common Address)
Supports Background Scan, Cyclic Data Transmission, Double Transmission, Redundancy
and File transfer.
Communication with redundant control systems and interruption-free switch over
between redundant systems
Supports "Select-Before-Operate" and "Direct-Execute" command execution modes
In IEC 60870-5-104 Client Side, Data Mode and Test mode connection type available.
Complete file transfer support (file transfer - monitor and control direction)
IEC 60870-5-104 definisce differenti tipo di Application Service Data Unit (ASDU) definisce da
utilizzare nelle funzioni applicative di base esistenti:
Polling data;
Periodic transfer;
Spontaneous event transfer;
General interrogation;
Time synchronization;
Control command;
Counters;
Parameters loading;
Test command;
File transfer;
Transfer delay measurements.
1. Dopo la fase di reboot di una stazione remota, essa notificherà il centro di controllo di questo
evento inviando un END_ON_INIT. Questo messaggio indica al centro di controllo che è
necessario aggiornare l’immagine di processo della stazione remota utilizzando il general
interrogation process.
2. Il general interrogation process permette di ottenere lo stato corrente di tutti i segnali analogici
e digitali monitorati e inclusi nel general interrogation response fornito dalla stazione remota.
Ciò rende possibile l’aggiornamento dell’immagine del processo della stazione remota.
Figura Errore. Nel documento non esiste testo dello stile specificato..1- General interrogation process
3. Dopo la fase di general interrogation process, ogni cambiamento dello stato delle variabili in
una stazione remota sarà inviato al centro di controllo utilizzando differenti tipi di meccanismi,
come ad esempio: meccanismo di trasferimento periodico (utilizzato solo con le misure
analogiche) o trasferimento spontaneo (usato sia con segnali digitali che analogici attraverso la
configurazione di deadbands).
Figura Errore. Nel documento non esiste testo dello stile specificato..2 -Spontaneous transfer of measurement with deadband
4. Quando la stazione remota include misure integrate come i contatori di energia, la stazione
remota può inviare queste informazioni su richiesta o spontaneamente, dipende da come è
stata configurato la modalità del contatore.
5. Quando un operatore richiede di modificare il comportamento del sistema, può essere inviata
alla stazione remota un ASDU di comando (C_XX) o un cambiamento di parametro (P_XX).
Il protocollo IEC 104 IEC (2006) è implementato su application layer (Layer 7) of TCP/IP stack
usando Application Protocol Data Unit (APDU) and Application Service Data Unit (ASDU). Nel
protocollo IEC 60870-5-104 i pacchetti sono inviati come application protocol data units (APDUs), i
quali hanno una dimensione fino a 255 bytes e includono non solo dati, ma anche meta
informazioni. Ogni APDU consiste in un application protocol control information (APCI) e un
application service data unit (ASDU).
Figura Errore. Nel documento non esiste testo dello stile specificato..3-IEC 60870-5-1404: APDU
L’APCI contiene: un byte iniziale, la lunghezza dell’APDU, 4 byte di control field. Il byte iniziale è
settato a 68 in esadecimale. Si può notare che la lunghezza può solo essere fino a 253 bytes,
perché il byte iniziale e l’header non sono esplicitamente conteggiati. Il Control Fields contiene
uno di tre tipi di formato che sono definiti nella seguente lista:
Il primo formato è l’i-frame, che è usato per trasferire informazioni. Quindi, in questo
formato l’APDUs contiene sempre sia l’APCI che un ASDU. L’i-frame include 2 bits per
verificare il tipo di formato, 15 bits che rappresentano send sequence number (SSN), e altri
15 bit che rappresentano receive sequence number (RSN). Sia, i masters che gli slaves,
possono verificare se la quantità dei messaggi inviati e ricevuti è uguale comparando il loro
SSN/RSN con l’RSN/SSN ricevuto. È importante notare che fintanto che un APDU non viene
ricevuta, essa è memorizzata in un buffer per future azioni (esempio il rinvio del APDU).
Il secondo formato è l’s-frame, che è usato per le funzioni di supervisione numerate.
Quando si usa questo formato le APDU sono formate solo dall’APCI. L’s-frame include 2
bits per verificare il tipo di formato e 15 bits rappresentano la receive sequence number
(RSN). Le funzioni di supervisione indicano alla stazione opposta l’ultimo RSN ricevuto
correttamente. Sono utilizzate per riconoscere che un insieme di messaggi sono stati inviati
correttamente e per indicare che la trasmissione dei dati può continuare.
L’ultimo formato è l’u-frame, che è usato per le funzioni di controllo non numerate.
Quando si usa questo formato le APDUs sono formate solo dall’APCI. L’u-frame include 2
bits per verificare il tipo di formato e altri 6 bits per determinare il tipo di funzione di
controllo. Le funzioni di controllo utilizzabili sono: funzione di START per permettere il
flusso del traffico, funzione di stop STOP per bloccare ulteriori comunicazioni e una
funzione di TEST per verificare se la connessione è viva.
Figura Errore. Nel documento non esiste testo dello stile specificato..4 - IEC 60870-5-104: APCI
L’ASDU consiste di un type identification, the variable structure qualifier, a cause of transmission,
a common address, and information objects, che sono definiti dettagliatamente nel seguente
elenco:
The type identification è un byte e indica il tipo di ASDU. Ogni tipo è mappato con un
numero (per esempio 45 è single command), ed ogni tipo è progettato per essere usato o
dai masters o dagli slaves. Inoltre, molti tipi sono disponibili con e senza time-tags.
The variable structure qualifier è un byte che contiene la quantità di information object che
è vengono inviate dall’APDU. Un bit è riservato per il sequence bit, che indica se una
sequenza di information objects è inviata o meno. Se il bit è settato, tutte le information
objects dell’APDU sono indirizzare come un oggetto. Invece, se il bit non è settato, tutte le
information objects possono essere indirizzare individualmente.
Come indica il nome, cause of trasmission (COT) definisce la causa della trasmissione (per
esempio, periodica, spontanea, attivazione, interrogazione). Inoltre, è anche incluso un bit
per indicare se l’APDU è solo una APDU test e un bit che è usato per confermare se un
comando è stato eseguito con successo. Le COTs sono mappate con numeri definiti su 6
bits (per esempio 5 rappresenta la trasmissione su richiesta). Inoltre, la COT include un
byte che è usato come un originator address (indirizzo del mittente).
L’originator address è usato per identificare l’origine dei comandi, interrogazioni, ecc. è
utilizzato per indentificare il centro di controllo. Se l’originator address non è necessario,
esso può essere ignorato settandolo a 0.
Il common address of ASDU (CASDU) può essere usato per indirizzare singole stazioni, tutte
le stazioni contemporaneamente, o anche sottostazioni. Il common address è
rappresentato da 2 bytes. Un messaggio di broadcast è indicato settando tutti i bits a 1.
L’Information objects consistono in un Information object address (IOA), che identifica
l’indirizzo dei dati sella stazione remota, e, in base al tipo di ASDU, dati e information
elements.
Gli information elements sono definiti per vari scopi e in vari formati. Un esempio di un
information element può essere il quality descriptor, che è un bit che è settato se avviene
un overflow. Se il sequence bit è settato un solo IOA è usato per ogni information object.
Poiché un IOA è di 3 byte di lunghezza, l'uso di una sequenza raddoppia
approssimativamente la quantità di dati che possono essere inviati con un singolo APDU, al
costo di perdere l'indirizzamento diretto.
Figura Errore. Nel documento non esiste testo dello stile specificato..5 - IEC 60870-5-104: ASDU
I messaggi che sono inviati tramite IEC 60870-5-104 usano una di due direzioni di comunicazione:
Lo standard definisce differenti tipi di ASDUs per inviare differenti tipi di informazioni:
Il formato di un information object include l’address of the object (IOA), the field value, the quality
of the information, e opzionalmente il timestamp.
Figura Errore. Nel documento non esiste testo dello stile specificato..6 - Formato dell'information object
Ogni punto nel IEC 60870-5-104 è identificato tramite due indirizzi: il common address of
application (CASDU) e il information object address (IOA).
L’informazione della stazione remota può essere suddivisa nelle seguenti categorie:
Segnali Digitali;
Segnali Analogici;
Contatori;
Comandi and settaggi.
Tutti gli oggetti dati includono un quality bit che iddentifica se il valore è valido o meno. Allo stesso
tempo, dipende dal tipo di dato, diversi altri quality bit sono utilizzati:
IEC 60870-5-104 non accetta l’uso di ASDU con timestamp relativi con l’information element
CP24Time2A (24 bits). Ma è utilizzato un timestamp assoluto con l’information element
CP56Time2A (56 bits).
Cercare di sincronizzare una stazione remota attraverso il protocollo TCP/IP con il time
synchronization ASDU non è deterministico. Con un il profilo TCP/IP usato da IEC 60870-5-104 si
preferisce utilizzare altri protocolli come SNTP o NTP (Network Time Protocol) per la
sincronizzazione dell'ora. Quando è richiesta un’elevata accuratezza usualmente è scelto un GPS
clock ocn IRIG-B o PTP.
La tipica comunicazione IEC è rappresentata nella Tabella seguente che mostra alcune transizioni
IEC 104 (transizioni n. 2,6,8,10,14) scambiate tra il IEC 104 master and slave in entrambe le
direzioni: direzione di controllo e direzione di monitoraggio. Ogni transizione contiene almeno una
ASDU con un object indirizzato da un Information Object Address (IOA), Cause of Transmission
(COT) and transmitted value or command. Si nota che una ASDU può trasmettere diversi IOA
objects con diversi IOA addresses, COTs and data. The proposed monitoring system retrieves
interesting data from IEC 104 packets in order to create IEC104 flows for ICS monitoring.
Figura 8- Esempio di comunicazione IEC 104
• La gestione di un buffer di eventi (orodatati o no); le dimensioni totali del buffer (coda)
possono
raggiungere i 100.000 eventi (il valore massimo è 100.000 da RTU 1.5.
NOTA: È gestito un buffer eventi dedicato per applicazione client/master (sono supportati
fino
a 4 client per ogni Server).
• La post compilazione automatica dati eventi all’applicazione SCADA o alla stazione master
tramite servizio protocollo RTU (IEC 104).
Per la configurazione del server IEC 60870-5-104, ogni tipo di oggetto ha un’impostazione della
coda eventi indipendente. Per generare un evento, impostare una coda eventi per il tipo di
oggetto corrispondente.
Instradamento di eventi
Introduzione
Il componente di instradamento eventi permette di instradare gli eventi provenienti dalle
sottostazioni e diretti verso un sistema SCADA tramite un modulo BMX NOR 0200 H.
La soluzione consiste nel creare un server e client RTU logici in un solo modulo BMX NOR 0200 H.
Nel client logico vengono creati dei punti per rappresentare i punti nelle sottostazioni e nel server
logico vengono creati dei punti per simulare il comportamento dei punti nelle sottostazioni. La
componente di instradamento eventi ha il ruolo di riunire gli eventi nel Server logico. Questi eventi
vengono inviati dalle sottostazioni e attivano gli stessi eventi nel server logico.
Configurazione
Per l’instradamento di eventi, configurare almeno un canale Client e almeno un canale Server. Più
canali Client sono necessari affinché il sistema possa collegarsi a più sottostazioni e più canali
Server consentono la presenza più SCADA nel sistema.
Quando si configurano questi punti nel canale client, selezionare gli eventi del punto che deve
essere instradato e instradare gli eventi nel canale server corrispondente.
Ad esempio, se il canale client deve ricevere eventi dal sotto-Sever Binary Input point, instradarlo
nel canale dello Server logico in modo che diventi un evento di Binary Input point.
Limitazioni
• Gli eventi sono instradati all’interno del modulo. Questo significa che non è possibile
instradare gli eventi tra due o più moduli e anche che l’applicazione PLC nella CPU non può
recuperare ed elaborare gli eventi (la CPU può comunque recuperare il valore del punto
negli eventi proprio come il canale slave standalone).
• Gli eventi e i punti statici sono instradati. Le richieste (comandi) provenienti dal sistema
SCADA non sono instradati alle sottostazioni. Questo significa che all’interno del modulo
BMX NOR 0200 H non avviene nessun altro scambio di dati né nessun’altra comunicazione
tra il canale client e il canale server ad eccezione degli eventi.
• Nel sistema, SCADA non può comunicare con le sottostazioni. La soluzione utilizza il master
logico nel modulo BMX NOR 0200 H per simulare le sottostazioni, quindi SCADA può
comunicare solo con il server logico nel modulo BMX NOR 0200 H e la sottostazione può
comunicare solo con il client logico nel modulo BMX NOR 0200 H.
• Alcune informazioni relative agli eventi possono essere modificate. Le informazioni chiave
relative agli eventi come il valore dei punti, il flag e il timestamp vengono mantenute
durante l’instradamento. Altre informazioni relative agli eventi come il numero di punti, la
classe dell’evento e le variazioni, vengono modificate in funzione della configurazione del
canale del client.
1. L’applicazione PLC nella CPU M340 invia un comando General Interrogation al canale client.
2. Il canale client invia una richiesta General Interrogation al sotto-Server.
3. Il sotto-Server risponde alla richiesta con il valore degli ultimi punti.
4. Il database del Server logico viene sincronizzato mentre il canale client aggiorna il
database.
Nota:I valori dei punti sono sincronizzati ciclicamente tra il database del canale client e i
registri della CPU.
Modalità di trasmissione
Con il protocollo IEC104, il modulo BMX NOR 0200 H gestisce diversi modi per recuperare i dati
con le seguenti modalità di trasmissione:
Interrogazioni sollecitate
Interrogazioni sollecitate è il metodo di base per lo scambio dei dati. La stazione client richiede
dati a più dispositivi RTU interrogando periodicamente i Server remoti.