Spring navigationen over og gå direkte til indhold
Topbillede med nærfoto af Trio controller og EtherCAT logo

Forstå EtherCAT

Trio artikel om den åbne standard for Ethernet-baserede bus

I årenes løb har der været behov for en åben billig digital kontrolbus til automatisering og motion control. Nogle var tilgængelige, men havde proprietær teknologi med udstrakt ophavsretslig eller patentretlig beskyttelse.

Med introduktionen af EtherCAT er det blevet den accepterede åbne standard for Ethernet-baserede styrebusser.

EtherCAT sætter nye standarder for ydelser i realtid og topologisk fleksibilitet samtidig med at de møder eller ligger under andre niveauer af fieldbus-omkostninger.

Til formålet med denne artikel vil vi fokusere på brugen af EtherCAT, der kører CoE (CanOpen over EtherCAT) protokol i lukket sløjfe bevægelse og I/O kontrolsystemer. Andre EtherCAT-protokoller er også nævnt.

EtherCAT – Hvad er det?

EtherCAT er designet specifikt til deterministisk kontrol af industrielle perifere enheder, herunder men ikke begrænset til servo- og stepdrev, I/O-moduler, sensorer og encoder'e.

Grundlæggende kan enhver EtherCAT-enhed tilsluttes et givent netværk. Da EtherCAT er en åben teknologi, kan den håndtere flere funktioner ved hjælp af flere protokoller afhængig af systemarkitekturen.

EtherCAT har fået mere og mere accept af leverandører af automations- og kontrolkomponenter som den foretrukne bus. Blandt årsagerne er ydeevne, alsidighed og nem implementering. Når dette skrives, findes der over 80 I/O-forhandlere, 110 forskellige drevleverandører (slaver) og over 150 mastercontrollere tilgængelige.

EtherCAT er også blevet den accepterede standard for servo tekniske løsninger, hvilket gør den til det mest anvendte og implementerede industrielle kontrolnetværk.

EtherCAT-teknologi overvinder systembegrænsningerne for andre Ethernet-løsninger. Det vil sige, at Ethernet-datapakken ikke længere modtages, fortolkes og kopieres derefter som procesdata ved hver forbindelse. I stedet bliver Ethernet-Frame [telegrammet] behandlet on-the-fly af den nyudviklede FMMU (Fieldbus Memory Management Unit) i hver slave node, som læser de adresserede data, mens telegrammet videresendes til den næste enhed.

Frames er kun forsinket med en brøkdel af et mikrosekund i hver node, og mange noder kan adresseres med kun én frame.

Implementering

Det traditionelt lukkede servosystem består af den analoge kommando- og encoder positionsfeedback på 10 eller flere ledninger plus drevaktivering. For systemer med mange akser kan de enkelte forbindelser lægges sammen.

Ydeevnen er god i det analoge system, men der er mangler. Der er ingen mulighed for at læse eller skrive oplysninger om drevparameter.

Motion controlleren og drevet er to separate enheder i systemet. Systemets opløsning er typisk 12-16 bit for kommandoen og enkoder-pulstælling er ofte en afvejning med motorhastighed på grund af frekvensbegrænsning.

Efterhånden som kravene til systemopløsning stiger, og systemer med højere akseantal bliver mere almindelige, var 

Tegning af EtherCAT netværk med controller, servodrev og motorer

Illustration: Traditionelt 3-akset analogt servosystem kræver mindst 10 ledninger pr. akse.

behovet for en smartere grænseflade mellem bevægelses-/maskinstyring og servodrev påkrævet. EtherCAT opfylder dette behov ved at levere en enkel, fleksibel og billig digital grænseflade til en række forskellige perifere enheder, herunder drev og I/O-styring.

EtherCAT bringer nogle tydelige fordele til servosystemet:

●  Erstatter den analoge hastigheds- eller momentkommando til et servodrev, encoderpositionsfeedback og drevaktivering med et
    enkelt Cat5e-kabel.
●  Meget højere systemopløsninger kan opnås i hastighedsstyrede systemer - 32 bit vs. 12-16bit hastighedsreference.
●  Ledningsomkostninger er stærkt reduceret og forenklet. Kan nemt udvides.
●  Mastercontrolleren kan læse og skrive parametriske data til drevene, hvilket gør et mere alsidigt og integreret system.
●  Drevparametre kan sendes ved opstart af masteren, hvilket forenkler konfiguration og udskiftning.
●  Gennemsigtigt for brugeren – Et EtherCAT-system kører det samme som et analogt system fra et brugerprogramsynspunkt.


EtherCAT-enheder kan tilsluttes i linje-, stjerne- eller trætopologi.

Det mest almindelige i motion kontrolsystem er linjekonfigurationen, også kaldet daisy chained vist nedenfor. I denne konfiguration er der ikke behov for yderligere Ethernet-switche, hvilket holder systemomkostningerne lave.

En trækonfiguration kan nemt oprettes ved hjælp af standard EtherCAT-enheder, eller en stjernekonfiguration ved hjælp af en speciel EtherCAT-understøttet switch til at håndtere telegrampakkeoverførslen. Uanset den fysiske topologi er der et enkelt EtherCAT-telegram, som videresendes rundt i hele netværket på én 'logisk' vej.

Mastercontrolleren vil finde slaverne i rækkefølge på denne sti og automatisk tildele dem en adresse baseret på deres position på denne sti gennem netværket. Alternativt kan en slaveenhed indstilles til en bestemt nodeadresse via hardware-switches.

Tegning af EtherCAT netværk med controller, servodrev og motorer

Illustration: Den mest almindelige EtherCAT-konfiguration, der bruges i bevægelseskontrol, er "Line"-forbindelsen.

Da 100Base-T Ethernet fysisk lag bruges kan afstanden mellem to vilkårlige noder være op til 100 m. Hvis et EtherCAT-netværk er forbundet i en ringkonfiguration (kræver to porte på masterenheden), kan det give kabelredundans. I de fleste systemer er denne redundans typisk ikke brugt eller nødvendig.

En EtherCAT-master kan implementeres i software på en pc eller indlejret controller ved hjælp af enhver standard Ethernet MAC. For slaveenheder kræves en EtherCAT Slave Controller (ESC) for at udføre "processing on the fly"-princippet. Dette implementeres typisk ved hjælp af en FPGA, ASIC eller mikroprocessor.

I den almindeligt anvendte linjekonfiguration vil den sidste slave i kæden automatisk lukke en åben port og returnere Ethernet-Frame, hvis der ikke detekteres nogen downstream-enhed. Slavenheder har typisk to porte, men har muligvis kun én, designet til at sidde for enden af et netværk. 

EtherCAT overvinder den ikke-deterministiske karakter af standard Ethernet TCP/IP ved hjælp af en distribueret clock.

Præcis synkronisering og lav jitter < 1μs

EtherCAT-netværk giver den præcise tidssynkronisering mellem master og slaver for at garantere deterministisk drift, som kræves til koordineret bevægelseskontrol.

Den distribuerede clock-teknik fører til en meget lav jitter, på væsentligt mindre end 1μs, mellem den synkroniserede master og slaver, selvom kommunikationscyklussen jitter. Den typiske proces med at etablere et distribueret ur initieres ved, at masteren sender en udsendelse til alle slaver til en bestemt adresse. Ved modtagelse af denne besked vil alle slaver låse værdien af deres interne ur to gange, én gang når beskeden modtages og én gang når den vender tilbage.

Masteren kan derefter læse alle låste værdier og beregne forsinkelsen for hver slave. Denne proces kan gentages så mange gange som det er nødvendigt for at reducere jitter og gennemsnitlige output-værdier. Samlede forsinkelser beregnes for hver slave afhængigt af deres position i slaveringen og vil blive uploadet til et offsetregister. Til sidst udsender masteren en udsendelseslæse/skrivning på systemuret.

I nogle systemer er den første slave reference-clock, der tvinger alle andre slaver til at indstille deres interne ur korrekt med den nu kendte offset. Andre stand-alone EtherCAT-mastere såsom Trio's MCx-serie initierer og vedligeholder reference-uret.

EtherCAT-telegrammet

En forenklet Ethernet-frame indeholdende EtherCAT-data som vist her under. EtherCAT-protokollen bruger en officielt tildelt EtherType på 0x88A4 inde i Ethernet-frame'n.

Når en slaveenhed modtager Ethernet-frame'n, ser den først på EtherTypen for at afgøre, om den skal behandle dataene. Ellers bliver pakken sendt afsted og intet bliver gjort. Fordelen ved den unikke EtherType tillader transport af kontroldata direkte inden for Ethernet-frame'n uden at omdefinere standard Ethernet-frame'n.




Et typisk telegram, der bruges til motion-kontrol med lukket sløjfe, vil indeholde flere datagrammer, et for hver kommando, der sendes. Antallet af datagrammer vil variere baseret på de funktioner, der udføres.

Længden af datagrammerne skal variere afhængigt af antallet af slaveknudepunkter i systemet (en slaveknude til vores formål er defineret som et servodrev, eksternt I/O-modul eller enkoder).

Specifikke kommandoer sendes af masteren til motion-kontrol med lukket sløjfe. Disse omfatter et distribueret system-ur, procesdataobjekter (PDO'er) og en postkasse til servicekanaltypedata.

EtherCAT datagram stukturen

Hvert datagram begynder med en 10-byte header, der indeholder en specifik EtherCAT-kommando. Alle nødvendige data for den kommando følger derefter. En arbejdstæller (WKC) afslutter hvert datagram. WKC'en gør det muligt for masteren at overvåge antallet af vellykkede hukommelsestransaktioner, der fandt sted, mens telegrammet blev sendt rundt i netværket, og tillader også masteren at detektere manglende noder på netværket.

I vores eksempel er det distribuerede clock (DC) den første datagram kommando. DC synkroniserer alle slaver til masteren som tidligere nævnt.

Det næste datagram er den logiske læse/skrive (LRW) kommando, der bruges til at skrive en ny kommandoposition og tilbage-læse den faktiske position fra et servodrev.

Det tredje datagram i motion control-telegrammet er postkassen. Postkassen i telegrammet er en mekanisme til at læse eller skrive asynkrone data med en hvilken som helst node på netværket. Et brugerprogram, der kører i masteren, vil muligvis anmode om data fra en slave.

I et servodrev kan dette for eksempel være motormoment eller busspænding. Da EtherCAT-protokollen for bevægelse er baseret på CiA402 CanOpen-standarden, kan ethvert gyldigt objekt i slavens ordbog bruges til at udveksle data med masteren.


Initialisering af netværket

Før EtherCAT-netværket kan fungere skal det først initialiseres. Netværket initialiseres af masteren enten automatisk ved opstart eller under brugerkontrol ved at gå gennem en serie på fire tilstande.

Før netværksinitialisering kræver masteren parametre for at identificere og konfigurere slaverne.

Producenten af slaveenheden leverer en ESI (EtherCAT Slave Information) datafil til dette formål.

ESI-filen indlæses i mastercontrolleren før opstartsprocessen i de fleste mastere.

Trio MCx-Controller serien opretholder et bibliotek af forudindlæste ESI-parametre til mange almindeligt anvendte slaver for at lette automatisk konfiguration, hvilket forenkler idriftsættelsen af et nyt netværk betydeligt. 

Init tilstanden 

Ved opstart går masteren først ind i initialiseringstilstanden (Init) for at identificere alle slaveenheder på netværket. I Init-tilstanden er lavniveau-postkasser konfigureret til dataudveksling i ESC-slave-chippen.

Pre-Op-tilstanden

Efter vellykket afslutning af Init-tilstanden, indtastes Pre-Op-tilstanden, som får adgang til postkasserne og opsætter slavens CoE-objekter.

Safe-Op-tilstanden

Den tredje tilstand er Safe-Op, og masteren begynder cyklisk dataoverførsel inklusive I/O-data.

Overførselshastigheden er servoperioden som defineret af den pågældende master.

Den endelige tilstand er Operationel, hvilket sætter slaverne i fuld driftstilstand.

Et eksempel på systeminitialisering er vist nedenfor med konfi-gurationsoutput udskrevet til et terminalvindue fra en Trio MCx EtherCAT-master. Her identificerer controlleren et system med netværks-I/O ved node 0 og flere drev ved node 0-5.

EtherCAT ydeevne

EtherCAT egner sig til korte cyklustider, idet slaveenhedernes hoved-mikroprocessorer ikke er involveret i behandlingen af Ethernet-pakkerne til at overføre procesbillederne.

Procesdatakommunikation håndteres i slave ESC-chiphardwaren med meget lave udbredelsesforsinkelser (< 1μs). På grund af denne meget lille reaktionstid og høje båndbreddeudnyttelse kan EtherCAT prale af nogle imponerende tal. Det er muligt at adressere:

                 100 servoakser (hver med 8bytes ind + ud) i 100 μS og
              1.000 digitale I/O-punkter i 30 μS

Opdateringshastighed, positions- og feed-back opløsning

Selvfølgelig kan andre faktorer begrænse systemets ydeevne. Det typiske EtherCAT motion kontrolsystem har en cyklisk opdateringshastighed på 1-5kHz, med de fleste, der ligger i 1-2kHz området. Opdateringshastigheden, som også er servo-perioden, indstilles af masteren og skal generelt ikke ændres, selvom det er en brugerindstillelig parameter i masteren.

Fordi EtherCAT er en fuldt digital grænseflade, er høj positionsopløsning opnåelig. Protokollen er baseret på at sende og modtage 32-bit positionskommandoer, hvilket resulterer i en maksimal position på 4.294.967.296 counts.

Mange servodrev understøtter feedback-opløsning på 20-bit, hvilket giver op til 1.048.576 counts pr. motoromdrejning. Højhastigheds frekvensbegrænsninger, såsom systemer med traditionelle encodere, er ikke et problem i det digitale domæne.

Systemer med meget høje akseantal og mere komplekse bevægelser såsom gearing, CAM og interpolation kan opleve, at opdateringshastigheden skal justeres.

Justeringen er for at imødekomme den øgede telegramstørrelse og overhead-beregninger, som kræves af masteren.

Foto af Trio controllere og MX-motor

EtherCAT Protokoller

EtherCAT er bygget på standard IEEE 802.3 Ethernet-frame og kan understøtte flere protokoller samtidigt. Disse omfatter;

1. CanOpen over EtherCAT (CoE)
2. File over EtherCAT (FoE)
3. Safety over EtherCAT (FSoE)
4. Servo (Sercos) over EtherCAT (SoE)
5. Ethernet over EtherCAT (EoE).

Selvom EtherCAT-specifikationen definerer alle disse protokoller, skal en slave kun implementere dem, der er nødvendige for dens succesfulde drift.

1. CoE - CanOpen over EtherCAT

Udviklet af CAN In Automation-gruppen (CiA), omfatter CoE den underliggende CanOpen Application Layer og Communication Profile (CiA 301) og flere enhedsprofiler, herunder CanOpen Profile for Drives and Motion Control (CiA 402).

CoE er den primære protokol, der bruges i EtherCAT-kontrolsy-stemer og som drager fordel af den veldefinerede CanOpen-specifikation for cyklisk bevægelseskontrol. At tilpasse protokol-len til at køre over EtherCAT var ligetil for mange leverandører, der allerede var bekendt med CanOpen. Standard CanOpen-objekter bruges til at udveksle data med slave-enheder.

2. FoE – Fil over EtherCAT

Fil over EtherCAT tillader filoverførsel med enheder såsom servodrev. Dette kan bruges til at uploade firmware eller lignende filer fra masteren til slaver.

3. FSoE – Functional Safety over EtherCAT

Datagrammerne, der er skitseret for motion, indeholder det der anses for at være ikke-sikker information. Det vil sige at de data, der modtages og udføres på slaven, ikke valideres mellem enheder. FSoE, der er kendt som Functional Safety over EtherCAT, definerer et sikkerhedskommunikationslag eller sort kanal til transport af sikkerhedsprocesdata mellem understøttende FSoE-enheder.

FSoE opfylder kravene i standard IEC 61508 Safety Integrity Level (SIL) og muliggør overførsel af sikker og standard information på det samme kommunikationssystem uden begrænsninger med hensyn til overførselshastighed og cyklustid.

Sikkerhed over EtherCAT bruger et master/slave-forhold 

mellem to FSoE-enheder. Det sikres, at hver enhed først returnerer sin egen nye besked når en ny og gyldig besked er modtaget.

Den komplette overførselsvej mellem master og slave overvåges således i hver cyklus. Dette muliggør en meget slank implementering af protokollen med moderate krav adgang til kommunikationssystemet, da der ikke er behov for hårde timings for tidssynkronisering.

EtherCAT-masteren behøver ikke at være sikkerhedsmasteren, hvilket betyder at certificerede FSoE-enheder kan tilføjes til ethvert passende aktiveret EtherCAT-netværk uden, at EtherCAT-masteren selv kræver certificering.

4. SoE – Servo (Sercos) over EtherCAT

SoE-protokollen anvender en Sercos-lignende standard over EtherCAT især til motion control-applikationer. Adgang til alle parametre og funktioner i drevet er baseret på EtherCAT-postkassen. Ligesom CanOpen er fokus på kompatibilitet med den eksisterende protokol (adgang til værdi, attribut, navn, enheder osv. af IDN'erne).

Få mastere understøtter SoE, da der er få muligheder for drev og perifere slaver sammenlignet med den meget mere populære CoE-protokol.

5. EoE – Ethernet over EtherCAT

EtherCAT-teknologien er fuldt Ethernet-kompatibel. Der er ingen begrænsning for typer af Ethernet-enheder, der tilsluttes et EtherCAT-net via en EtherCAT-switchport. Ethernet-frame er tilknyttet via EtherCAT-protokol, som er standardtilgang til internetapplikationer. EtherCAT-netværket er transparant for Ethernet-enheden, og realtidsegenskaberne forringes ikke.

Konklusion

EtherCAT vinder fortsat mere og mere accept, som den foretrukne digitale bus med den højeste accept og implementeringshastighed af ethvert industrielt kontrolnet-værk. Der tænkes her på leverandører af automations- og kontrolkomponenter.

Fordelene omfatter:

Højeste ydeevne: Ved at behandle Ethernet-frame'n on-the-fly.
Lavere installationsomkostninger: Ved at eliminere behovet for switches.
Forenklet forbindelse: Af master- og slaveenheder med afskærmet Ethernet-kabling.

Derudover tilføjes noder nemt til et eksisterende system for at øge akseantal og system I/O. Tilføj dertil: filoverførsel (FoE), sikkerhed (FSoE) og EtherCAT tilbyder fleksibiliteten til at imødekomme behovene på markedet for maskin- og motion styring. Det gælder nu og langt ud i fremtiden. Brugere vil have den ultimative fordel af det store udvalg med tilgængelige enheder, efterhånden som flere sælgere anvender EtherCAT.