Utilizziamo i cookie per rendere migliore la tua esperienza di navigazione. Per rispettare la nuova direttiva sulla privacy, è necessario chiedere il tuo consenso per impostare i cookie. Per saperne di più.
1. Che cos’è EtherCAT?
EtherCAT® (Ethernet for Control Automation Technology) è un Fieldbus Ethernet in tempo reale utilizzato nell’automazione industriale, nel motion control, nella robotica, nel test & measurement e nell’automazione di fabbrica. Si basa sullo standard Ethernet IEEE 802.3 ed è ottimizzato per uno scambio di dati ciclico rapido e deterministico.
EtherCAT utilizza un’architettura MainDevice/SubDevice: un EtherCAT MainDevice, come EC‑Master di acontis, invia comandi e dati di processo ai SubDevice come azionamenti, moduli I/O, sensori e attuatori, e riceve i loro dati in risposta. Grazie all’elaborazione “on‑the‑fly”, un singolo frame può essere utilizzato per scambiare dati con molti dispositivi in un unico ciclo.
La tecnologia è stata introdotta da Beckhoff Automation ed è oggi mantenuta come standard aperto dall’EtherCAT Technology Group. Migliaia di fornitori offrono hardware e software compatibili, rendendo EtherCAT una scelta ampiamente disponibile e conveniente.
Principali vantaggi di EtherCAT:
- Tempi di ciclo molto brevi e deterministici, adatti al controllo hard real‑time
- Elevata utilizzazione della banda grazie all’elaborazione on‑the‑fly
- Topologie di rete flessibili (linea, albero, stella) senza switch esterni
- Supporto per Distributed Clocks per una sincronizzazione precisa tra dispositivi
2. Fondamenti del protocollo EtherCAT
2.1 Struttura del frame

Come nella comunicazione Ethernet standard, EtherCAT utilizza frame Ethernet per trasmettere dati nella rete. I frame EtherCAT si basano sullo standard IEEE 802.3, ma sono strutturati in modo da ottimizzare la banda e ridurre i dati di processo ciclici. EtherCAT elimina stack protocollari più ingombranti come UDP/IP o TCP/IP: non è quindi un protocollo basato su IP, ma è più simile a un protocollo di livello 2 (Data Link Layer).
Il frame EtherCAT, o telegramma, è composto da un header Ethernet, seguito dai dati EtherCAT, e termina con una Frame Check Sequence (FCS). Il protocollo EtherCAT è identificato dal valore 0x88A4 nel campo EtherType dell’header Ethernet. Wireshark include un dissector per analizzare graficamente i frame EtherCAT.
I dati EtherCAT contengono un header specifico seguito dai datagrammi EtherCAT. L’header EtherCAT specifica la lunghezza totale e il tipo dei datagrammi successivi. Il datagramma EtherCAT contiene i dati effettivi da leggere o scrivere nella rete: indirizzi, tipo di comando (lettura, scrittura, lettura‑scrittura) richiesto dal MainDevice e dati di processo ciclici (PDO). Un singolo frame EtherCAT può contenere fino a 1.498 byte.
Se sono necessari più di 1.498 byte, il MainDevice invia più frame, ciascuno con indicatori che segnalano ai dispositivi se devono aspettarsi un frame successivo.
Il MainDevice EtherCAT è responsabile dell’assemblaggio dei frame e della loro trasmissione nella rete. Ogni frame inviato dal MainDevice attraversa tutti i nodi della rete (anello logico). Grazie alle topologie flessibili, non sono necessari switch o router, riducendo ulteriormente ritardi e costi hardware.
2.2 Principio di funzionamento

Oltre alla struttura del frame, EtherCAT si distingue per il suo metodo di scambio dati. Molti protocolli Ethernet richiedono un frame separato per ogni nodo e una risposta da ciascuno, generando traffico elevato e tempi di ciclo più lunghi. Inoltre, poiché ogni frame contiene dati per un solo nodo, l’utilizzo della banda è inefficiente.
EtherCAT utilizza l’elaborazione “on‑the‑fly”, che permette di inviare un solo frame a tutti i nodi. Il MainDevice assembla i frame e li invia: in ogni ciclo, il frame percorre la rete, attraversa ogni nodo e ritorna al MainDevice. I frame contengono informazioni per i SubDevice: indirizzi, tipo di comando EtherCAT e dati di processo. Ogni dispositivo estrae i dati a lui destinati e inserisce i nuovi dati nel frame mentre questo scorre a valle. L’ultimo nodo rimanda il frame al MainDevice tramite il full‑duplex Ethernet.
Questo principio offre benefici prestazionali e di costo: un singolo frame è spesso sufficiente per scambiare dati con tutti i nodi. Solo il MainDevice può inviare nuovi frame; gli altri dispositivi li ricevono, li elaborano e li inoltrano. Ciò elimina ritardi imprevisti e rende EtherCAT adatto ad applicazioni real‑time.
2.3 Topologia

EtherCAT offre topologie di rete flessibili, ideali per reti grandi e complesse. La rete contiene un MainDevice e vari SubDevice, che tipicamente dispongono di due o più porte per essere collegati tra loro. Le topologie possibili includono linea, albero, stella o combinazioni. Poiché EtherCAT opera in full‑duplex, qualsiasi topologia mantiene una struttura ad anello logico, garantendo il ritorno del frame al MainDevice. Questa flessibilità elimina la necessità di switch.
EtherCAT supporta anche funzionalità avanzate come Hot Connect e Hot Swap, che permettono di aggiungere, rimuovere o sostituire dispositivi mantenendo la rete operativa. Sono disponibili opzioni di ridondanza, tra cui ridondanza di cavo e di MainDevice, per proteggere da rotture di linea o guasti dei dispositivi.
2.4 Dati di processo

In ogni ciclo, il MainDevice assembla i dati nel frame e lo invia ai nodi. I nodi leggono i dati indirizzati a loro e scrivono i dati di ritorno nel frame mentre scorre a valle. Quando il frame ritorna al MainDevice, questo legge i nuovi dati e costruisce il frame successivo. Lo scambio di dati tra MainDevice e SubDevice è chiamato dati di processo ciclici.
I SubDevice, tramite le loro Fieldbus Memory Management Units (FMMU), leggono e scrivono i dati nella posizione corretta del frame: questo è il data mapping, essenziale per garantire che il MainDevice riceva un’immagine di processo ordinata ogni ciclo. I dati di processo possono essere configurati attivando oggetti PDO opzionali.
I SubDevice possono avere layout hardware e di processo diversi:
- dispositivi semplici (I/O digitali): hardware e layout fissi
- dispositivi complessi (azionamenti): hardware fisso, layout variabile
- dispositivi modulari (bus coupler, gateway): hardware e layout variabili
2.5 Profili di comunicazione e Protocolli Mailbox
Oltre ai dati ciclici, EtherCAT supporta comunicazione aciclica tramite vari protocolli mailbox. I profili EtherCAT sono stati introdotti per supportare un’ampia varietà di dispositivi e livelli applicativi. I SubDevice non devono supportare tutti i profili, ma solo quelli rilevanti per il loro caso d’uso. A differenza dei dati ciclici, i trasferimenti mailbox non hanno vincoli real‑time.
2.5.1 CAN Application Protocol over EtherCAT (CoE)
CANopen® è un protocollo molto diffuso nei sistemi embedded. Il profilo CoE permette di implementare il protocollo CANopen su una rete EtherCAT: include supporto per l’Object Dictionary, mapping dei PDO, messaggi di emergenza, diagnostica e SDO. Molti profili CANopen standard (es. CiA 402 per azionamenti, CiA 406 per encoder) possono essere riutilizzati in EtherCAT. CoE è spesso usato per inviare parametri specifici ai SubDevice all’avvio o per modificarli durante l’operatività.
2.5.2 Ethernet over EtherCAT (EoE)
EoE permette di trasmettere traffico Ethernet all’interno di una rete EtherCAT. Dispositivi switchport possono collegare PC o router al segmento EtherCAT. Lo switchport inserisce frammenti TCP/IP nel traffico EtherCAT. EoE è comunemente usato per accedere al web server di un SubDevice per configurazione e diagnostica.
2.5.3 File Access over EtherCAT (FoE)
FoE è un protocollo mailbox utilizzato principalmente per aggiornare il firmware dei dispositivi in una rete EtherCAT.
2.6 Sincronizzazione (Sync Managers and Distributed Clocks)
La sincronizzazione rende possibile il real‑time e consente processi precisi e coordinati. Garantisce che tutti i nodi lavorino con la stessa base temporale. Nelle applicazioni di motion control ad alta velocità, è essenziale che tutti gli azionamenti ricevano e inviino comandi simultaneamente.
Il meccanismo più preciso è basato sui Distributed Clocks (DC). Il clock di riferimento proviene dal primo SubDevice DC della rete. Il tempo viene distribuito a tutti i nodi con jitter inferiore a un microsecondo. I dispositivi compensano la deriva regolando periodicamente i propri clock. Con tutti i nodi sincronizzati, i dati di processo e i segnali di uscita possono essere applicati simultaneamente tramite un trigger periodico.
3. Implementazione EtherCAT
3.1 Architettura di sistema

L’architettura EtherCAT comprende tre componenti principali: file di configurazione, MainDevice e SubDevice. I file di configurazione sono usati dal MainDevice per configurare e inizializzare la rete. Contengono informazioni dettagliate sui SubDevice e sulla topologia. Il MainDevice gestisce la rete, scambia dati con i SubDevice e interagisce con le applicazioni esterne. I SubDevice sono sensori, azionamenti, attuatori e I/O che svolgono funzioni specifiche.
3.2 EtherCAT SubDevice Information (ESI)
Un file ESI è un file XML che descrive funzionalità e impostazioni di un SubDevice. È fornito dal produttore e contiene informazioni su tipo di dispositivo, protocolli mailbox supportati, impostazioni di sincronizzazione e mapping dei PDO. Se include l’Object Dictionary, contiene l’elenco completo degli oggetti.
3.3 EtherCAT Network Information (ENI)
Un file ENI definisce la topologia della rete, la posizione dei SubDevice e la struttura dei dati di processo. È generato da un tool di configurazione EtherCAT che rileva i SubDevice o li aggiunge manualmente, e utilizza le informazioni dei file ESI. Il MainDevice usa l’ENI per configurare e inizializzare la rete.
3.4 MainDevice
Un EtherCAT MainDevice (es. EC‑Master) è un PC, microprocessore embedded, PLC o motion controller che gestisce la rete EtherCAT. Comunica con i SubDevice, invia comandi, riceve dati, gestisce il clock di rete, la sincronizzazione e gli errori (watchdog, retry). Utilizza ENI ed ESI per comprendere topologia e capacità dei dispositivi.
3.5 SubDevice
Un SubDevice EtherCAT è un dispositivo collegato alla rete e controllato dal MainDevice. Può essere un sensore, un azionamento, un attuatore o un I/O. Per supportare l’elaborazione on‑the‑fly, richiede un EtherCAT SubDevice Controller (ESC), implementato come ASIC, IP Core FPGA o integrato nel processore. L’ESC abilita varie topologie e la ridondanza.
I SubDevice leggono e scrivono dati nei frame mentre scorrono nella rete e possono comunicare anche tra loro. Ogni SubDevice riceve automaticamente un indirizzo univoco. L’ESI definisce la sua funzionalità. I SubDevice includono meccanismi di gestione errori come watchdog e retry automatici.
3.6 Rilevamento errori e diagnostica

EtherCAT include funzionalità avanzate di diagnostica che semplificano troubleshooting e manutenzione. Durante il boot, EtherCAT confronta la topologia reale con quella configurata, rilevando problemi di cablaggio o livello fisico.
EtherCAT può identificare il nodo esatto in cui si è verificato un errore (error localization). L’ESC verifica i frame tramite checksum: se un frame contiene errori, incrementa il contatore e informa i nodi successivi. Il MainDevice rileva il frame errato e lo scarta, analizzando i contatori per localizzare il guasto.
Il Working Counter permette di verificare la coerenza dei datagrammi: ogni nodo indirizzato incrementa automaticamente il contatore. Se il valore non è quello previsto, il MainDevice segnala la discrepanza e può determinare la causa tramite informazioni di stato ed errore.
Grazie all’elevata efficienza della banda, la probabilità di errori di bit è molto più bassa rispetto ad altre tecnologie Ethernet industriali. Con tempi di ciclo brevi, il recupero dagli errori è più rapido.
Poiché EtherCAT utilizza frame Ethernet standard, il traffico può essere registrato con strumenti gratuiti. Wireshark include un interprete EtherCAT che mostra informazioni come Working Counter e comandi in chiaro.
EtherCAT MainDevice Implementation Guide
Tecnologix offre supporto gestito direttamente dal Team di sviluppo.
Non esitare a metterti in contatto con i nostri esperti.
Basta chiedere qui



