Vai al contenuto
Progettazione di Sistemi di Automazione

Reti industriali: CAN, Ethernet industriale, OPC UA e sicurezza informatica

Arbitraggio non distruttivo del CAN dimostrato, velocità e lunghezza, EtherCAT con calcolo del ciclo, TSN, modello informativo OPC UA, zone e condotti IEC 62443.

Un impianto moderno ha migliaia di punti di misura e di comando sparsi su centinaia di metri. Collegarli uno a uno al PLC con un paio di fili ciascuno costava enormemente in cavi e in errori di cablaggio; le reti industriali portano tutto su pochi cavi. A differenza delle reti d’ufficio devono essere deterministiche: un comando deve arrivare entro un tempo garantito, sempre. In questa lezione vediamo il bus CAN con la dimostrazione del suo arbitraggio e il limite tra velocità e lunghezza, l’Ethernet industriale e EtherCAT con un calcolo del tempo di ciclo, OPC UA e la sicurezza informatica degli impianti.

Il bus CAN

Il CAN (controller area network), nato negli anni Ottanta per le automobili, è usato in auto, macchine agricole, apparecchiature mediche e automazione (CANopen). Tutti i nodi sono sullo stesso doppino, e il bus ha due livelli: dominante (0) e recessivo (1). Se anche un solo nodo trasmette 0, il bus vale 0: è un AND cablato. Ogni messaggio inizia con un identificatore che ne indica il contenuto e la priorità.

Arbitraggio sul bus CAN
I nodi A e B iniziano a trasmettere insieme i loro identificatori, bit per bit. Il bus, riga in basso, è lo AND dei due. Al quinto bit A trasmette 1 recessivo ma legge 0 sul bus: ha perso e smette di trasmettere (riquadro rosso); B prosegue senza accorgersi di nulla.

Teorema. Se più nodi iniziano a trasmettere insieme, vince il messaggio con l’identificatore numericamente più basso, e il suo invio prosegue senza alcun danno o ritardo.

Dimostrazione. Ogni nodo trasmette l’identificatore dal bit più significativo e confronta ogni bit trasmesso con quello letto sul bus. Finché tutti trasmettono gli stessi bit, il bus coincide con ciò che ciascuno trasmette. Al primo bit in cui gli identificatori differiscono, i nodi che trasmettono 0 vedono 0, quelli che trasmettono 1 vedono 0 (perché il dominante prevale): questi ultimi rilevano la differenza, smettono di trasmettere e riproveranno dopo. Restano i nodi con 0 in quella posizione e uguali in tutte le precedenti, cioè con identificatore più basso; ripetendo l’argomento sui bit successivi ne resta uno solo, quello con l’identificatore minimo. Per il vincitore il bus ha sempre avuto esattamente i suoi bit: il suo messaggio non ha subito alcuna alterazione. ∎

A differenza dell’Ethernet originale, dove le collisioni distruggevano i pacchetti (lezione su Ethernet di Reti di telecomunicazione), le collisioni del CAN non sprecano tempo, e i messaggi più importanti hanno un ritardo massimo calcolabile, con la stessa analisi a priorità fisse dei sistemi in tempo reale.

Velocità e lunghezza. L’arbitraggio funziona solo se ogni nodo vede, entro lo stesso bit, il bit dominante del nodo più lontano: il bit deve durare più del tempo di andata e ritorno del segnale sul cavo, più i ritardi dei ricetrasmettitori. Con circa 5 ns/m di propagazione, a 1 Mbit/s (bit di 1 µs) la lunghezza massima è di circa 40 m; a 125 kbit/s si arriva a 500 m. Il CAN FD aumenta la velocità solo nella parte dati del messaggio, dopo l’arbitraggio.

L’Ethernet industriale

L’Ethernet ha vinto anche in fabbrica, con protocolli che ne garantiscono il determinismo: PROFINET, EtherNet/IP, EtherCAT, POWERLINK, e lo standard TSN (time-sensitive networking), che aggiunge all’Ethernet ordinario la sincronizzazione degli orologi (IEEE 802.1AS) e finestre di tempo riservate al traffico critico.

EtherCAT usa un’idea elegante: un solo frame parte dal controllore e attraversa tutti i nodi in fila; ciascuno legge al volo i dati destinati a sé e scrive i propri nel frame mentre passa, con un ritardo di poche centinaia di nanosecondi, senza memorizzarlo. Il frame torna indietro dall’ultimo nodo con tutte le risposte.

Esempio. 100 nodi con 8 byte di dati ciascuno: 800 byte più circa 40 di intestazione. A 100 Mbit/s la trasmissione dura 840\cdot 8/10^8 \approx 67 µs; si aggiungono il ritardo di attraversamento dei nodi, dell’ordine di un microsecondo per nodo considerando andata e ritorno, e la propagazione nei cavi. Un ciclo completo sta in circa 200 µs: 800 ingressi e uscite aggiornati 5000 volte al secondo, con un unico frame.

OPC UA

Ai livelli superiori della piramide (lezione sull’architettura) serve scambiare non solo valori, ma il loro significato: unità di misura, campi, allarmi, struttura della macchina. OPC UA (IEC 62541) offre un modello informativo a oggetti, indipendente dal costruttore e dal sistema operativo, con servizi client-server e publish-subscribe, e sicurezza integrata (autenticazione, cifratura, firme). Le specifiche companion definiscono modelli standard per intere categorie di macchine (macchine utensili, robot, presse a iniezione), così un MES legge allo stesso modo macchine di costruttori diversi.

La sicurezza informatica

Gli impianti erano isolati, e i loro protocolli sono nati senza autenticazione: chiunque raggiunga la rete può mandare comandi a un PLC. Con la connessione degli impianti alle reti aziendali e a Internet, gli attacchi sono diventati reali (Stuxnet nel 2010 sabotò centrifughe modificando i programmi dei PLC). La norma IEC 62443 organizza la difesa:

  • divisione dell’impianto in zone con livelli di sicurezza diversi, collegate da condotti controllati (firewall, zone demilitarizzate tra rete d’ufficio e rete di fabbrica);
  • nessun accesso diretto da Internet ai dispositivi di campo; accesso remoto per la manutenzione solo attraverso punti controllati e registrati;
  • autenticazione degli utenti e dei dispositivi, aggiornamenti, inventario dei componenti;
  • protocolli sicuri dove possibile (OPC UA con cifratura) e monitoraggio del traffico, che in fabbrica è molto regolare e rende evidenti le anomalie.

In Europa la direttiva NIS2 e il regolamento sulla resilienza informatica rendono questi requisiti obbligatori per molti settori e prodotti.

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x