Industrial Ethernet Real-Time: un approccio universale

"Industrial Ethernet" è un termine generico che si riferisce a due tipi distinti di networking: o SRT (Soft-Real-Time), rivolto principalmente all'elaborazione di informazioni, e IRT (Isochronous Real-Time), che prevede uno scambio di messaggi con controllo deterministico, rivolto agli apparati di fabbrica ad alte prestazioni.
Un esempio di SRT può riguardare un magazzino un cui la rete aziendale deve scambiare informazioni con un sistema di scanner barcode localizzato nel reparto accettazione. In questo esempio, velocità di aggiornamento nell'ordine di secondi o minuti sono perfettamente accettabili. Negli ambienti di produzione possono essere invece presenti macchinari per i quali devono essere implementate caratteristiche IRT. In questi macchinari è necessario che i vari sensori e attuatori comunichino tra loro molto rapidamente e in modo deterministico. In questo caso vengono utilizzate comunicazioni basate su bus di campo quali Profibus, DeviceNet e CANopen. Queste configurazioni permettono il trasferimento dei dati di controllo tra i sensori e gli attuatori distribuiti sulle macchine nell'arco di pochi millisecondi. Per migliorare il throughput delle macchine oltre i data rate dei bus di campo, spesso i progettisti prendono in considerazione Ethernet come livello di trasporto dei messaggi.
Ethernet, inerentemente, è non-deterministico e non è in grado di garantire che tutti i nodi di una rete possano di accedere alla rete stessa nel giro di un tempo prefissato, specifica essenziale delle applicazioni IRT. Per aggirare questo limite sono state adottate delle misure che hanno portato alla nascita di vari standard Industrial Ethernet. Questi standard assicurano che tutti i nodi di una rete possano trasmettere i dati in meno di un millisecondo. Prestazioni più lente (cioè con cicli superiori al millisecondo) non giustificano i costi aggiuntivi che derivano dall'uso di dispositivi Ethernet a 32 bit e suggeriscono l'uso di dispositivi fieldbus IRT, più economici, a 8 o 16 bit. Un'eccezione può essere il numero di nodi richiesti. I sistemi fieldbus impongono delle limitazioni. Ethernet invece può gestire, nello stesso arco di tempo, molti più nodi rispetto a un fieldbus. Per esempio, un CANbus da 3 a 7 nodi può sostenere cicli di aggiornamento da 2 a 4 ms, lo stesso tempo richiesto da una rete Ethernet da 30 a 100 nodi.

Criteri prestazionali di un Industrial Ethernet IRT

I due criteri più importanti associati alle prestazioni di Ethernet IRT sono:

- tempo minimo di ciclo;
- numero di dispositivi sul bus che possono essere aggiornati durante un ciclo.


Tempo di ciclo -
La maggior parte delle applicazioni Ethernet IRT opera con cicli di 500 µs. In alcune applicazioni sono richiesti 200 µs, ma normalmente a fronte di un numero di nodi inferiore. Il tempo di ciclo è determinato dal totale di tutte le comunicazioni sul bus. Poiché ogni singolo nodo esegue task specifiche, è necessario considerare anche i processi interni, per esempio le attività di network management e il ciclo della macchina a stati. Quando si considera lo standard Ethernet IRT è importante calcolare tempi di ciclo che tengano conto di tutti gli eventi legati ai messaggi sul bus.

Numero di dispositivi - I costruttori di macchine e gli integratori di sistemi devono curarsi anche di rispettare il tempo di ciclo, imposto dalle specifiche del processo di produzione, in funzione del numero di dispositivi che possono essere presenti sul bus Ethernet.
Grazie alla possibilità di minimizzare i componenti di infrastruttura, come i gateway, più elevato è il numero di dispositivi sul bus, più il sistema sarà globalmente conveniente dal punto di vista economico. Per ottimizzare questi fattori, gli architetti degli standard Ethernet IRT integrano una porzione di data processing nella macchina a stati hardware di ogni nodo. Questo approccio garantisce che le comunicazioni di basso livello in ogni nodo siano totalmente deterministiche rispetto all'elaborazione dei messaggi e che vi sia un ordine prevedibile dei pacchetti durante il ciclo di comunicazione.
Poiché questa capacità di elaborazione basata sulla macchina a stati hardware non è normalmente disponibile negli attuali microcontrollori, è necessario integrare nel dispositivo di automazione degli Asic specifici o degli Fpga.

Gli standard Industrial Ethernet

Esistono diciannove protocolli Industrial Ethernet proposti da vari fornitori. Solo sei di questi sono considerati standard aperti. EtherNet/IP, Profinet IO e MODbus TCP sono le soluzioni SRT più diffuse. Ethernet Powerlink (Epl), Sercos III, EtherCAT e Profinet IRT sono stati utilizzati in applicazioni IRT quali il motion control (si veda la Tabella).
Le strategie di implementazione sottolineate in questo articolo illustrano come un fornitore di Fpga e un fornitore di protocolli abbiano lavorato insieme per sviluppare una piattaforma Fpga unica per i protocolli aperti SRT e IRT elencati. Gli Fpga mettono a disposizione una soluzione flessibile e completa che permette ai fornitori di apparati di progettare un'unica piattaforma hardware che può essere installata con protocolli ORT e SRT application-relevant. Questo processo evita onerosi sviluppi e permette di incrementare in modo sostanziale la flessibilità di comunicazione dei prodotti di Oem e fornitori senza intaccare i processi applicativi.

Architettura Fpga per un mix flessibile

Gli Fpga allo stato dell'arte sono qualcosa di più di una semplice risorsa programmabile dotata di un certo numero di celle logiche. I soft core caricabili offrono agli utenti la possibilità di creare all'interno dell'Fpga un microcontrollore scalabile e di arricchire lo stesso silicio di periferiche ultra veloci quali Ethernet Controller, Dram Controller o Uart.
Gli utenti Industrial Ethernet possono usufruire dei benefici di questa architettura per implementare i meccanismi specifici, e talvolta proprietari, richiesti dagli standard IRT Ethernet e non disponibili nelle normali piattaforme di microcontrollo. Oltre a questo, un Fpga offre varie interfacce di connessione ai microcontrollori come ad esempio SPI o in mappatura di memoria.

Protocolli SRT su FPGA

I protocolli ProfiNet IO "Device" e EtherNet/IP "Adapter" possono essere totalmente eseguiti su un processore embedded Nios II integrato su Fpga. Senza specifiche esigenze di prestazioni in tempo reale, entrambi utilizzano uno stack standard TCP/UDP/IP. Per ottimizzare le prestazioni, i dati di I/O ciclici sono comunicati direttamente con l'Ethernet Controller bypassando lo stack Profinet o Ethernet/IP (cammino di sinistra) mentre i dati di configurazione o di servizio passano attraverso lo stack. Oltre a questo, l'implementazione Fpga di ProfiNet ed Ethernet/IP offre un cammino di comunicazione TCP/IP diretto che può essere utilizzato per protocolli general purpose quali http o ftp.

Protocolli IRT su FPGA

L'implementazione di un Powerlink Controlled Node (Slave) su Fpga offre una soluzione molto potente e flessibile. L'Fpga contiene un hub Ethernet e un Ethernet Controller/ packet handler Epl. Oltre a questo, nell'Fpga è presente anche un core Cpu a 32 bit. Questo core di elaborazione offre la flessibilità necessaria per eseguire una quantità di software scalabile. Per I/O più lenti, è possibile implementare l'intero stack Epl più il software applicativo di I/O senza Cpu host. Per i nodi più veloci, deve essere implementato solo lo stack Epl. Il vantaggio più importante legato a questo approccio è dato dal fatto che la Cpu host è isolata dai processi real-time critici dell'Ethernet Powerlink.
La Fig. 2 illustra la Cpu host con l'Fpga aggiuntivo contenente il core Cpu. Il codice applicativo viene eseguito sulla Cpu host mentre lo stack Epl è eseguito sull'Fpga. Questo permette di ottenere cicli più rapidi, fino a 250µs. Oltre a questo l'Fpga contiene un Ethernet Controller ottimizzato con filtro hardware IP che offre un meccanismo di risposta veloce e un Hub: il tutto garantisce tempi di risposta ultra veloci, inferiori a 1 µs. La latenza dell'hub è di circa 400 ns.
Sercos III ed EtherCAT sono due protocolli IRT che vantano le specifiche real time più avanzate. Per raggiungere queste prestazioni sono richiesti dei Mac Ethernet specifici. Questi Mac Ethernet specifici, disponibili sotto forma di net list, sono stati implementati su Fpga. La Fig. 3 illustra come EtherCAT possa essere implementato su un Fpga mentre la Cpu esegue il software di protocollo CoE (CANopen over EtherCAT): l'applicazione viene eseguita sulla Cpu host. Il protocollo EtherCAT può essere scalato in base alle esigenze dei vari tipi di dispositivo. Il consumo tipico in termini di celle logiche per un drive servo sincronizzato è di 12-15 kcelle.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome