V predchádzajúcej časti seriálu (ATP Journal 7/2021) sme sa venovali opisu stavového automatu a jednotlivým protokolom, ktoré vie EtherCAT do seba zahrnúť, tu opíšeme ich význam a možnosti použitia. Opísali sme aj synchronizačné skupiny (Sync Units), predovšetkým prácu s nimi, ich význam aj zmysel použitia. Hlavnou témou dnešného dielu je synchronizácia údajov na EtherCAT pomocou mechanizmu distribuovaných hodín. Tento veľmi komplexný mechanizmus je založený na niekoľkých všeobecných princípoch, ktorým sa budeme v článku venovať. Čitateľ tak bude mať možnosť spoznať aj vnútorný mechanizmus distribuovaných hodín.
Vo výpočte všetkých dôležitých pojmov, ktorým sa tento seriál venuje, chýba ešte opis redundancie na zbernici a funkcia Hot Connect Group, ktorej označenie nemá slovenský ekvivalent, preto sa budeme používať anglické označenie; ide o možnosť pripájať či odpájať definované časti topológie za plnej prevádzky. V závere opíšeme význam a zaradenie pojmov, ako sú EtherCAT P, EtherCAT G a EtherCAT 10 G.
Synchronizácia údajov na EtherCAT
Synchronizácia údajov na priemyselnej zbernici je pre zákazníka vždy veľmi dôležitá vlastnosť, ak v aplikácii vykonáva meranie, riadenie servopohonov atď. Meraný signál by mal byť čo najpresnejší vo svojom meracom rozsahu, ale pre určité vyhodnotenie je dôležitá aj časová hodnota (kedy bol daný signál na konkrétnej hodnote). O niektorých zberniciach sa hovorí, že sú deterministické. To však nemá nič spoločné so synchronizáciou prenášaných údajov. Z determinizmu priemyselnej zbernice vyplýva iba časová odozva na zbernici. Kedy bola aká hodnota odčítaná a ktorým zariadením, sa vďaka determinizmu nedozvieme.
Ak je pre aplikáciu dôležitá aj hodnota časovej značky a nielen hodnota meraného signálu, treba na zbernici zaviesť synchronizáciu údajov. Na EtherCAT sú nasledujúce tri možnosti riešenia:
- FreeRun mode,
- SM-Synchronous mode (Sync Manager – Synchronous mode),
- DC-Synchronous mode (Distributed Clock – Synchronous mode).
FreeRun: EtherCAT zariadenie číta a zapisuje na svoje fyzické vstupy alebo výstupy vo vlastnom cykle. Neprebieha teda žiadna synchronizácia s rámcom EtherCAT ani medzi ďalšími zariadeniami prepojenými v danej topológii EtherCAT.
SM-Synchronous mode: ide o synchronizáciu funkčne založenú na Sync Manager, ktorý je súčasťou EtherCAT Slave Controller (poznámka k minulým dielom: ESC – chip, ktorý spracováva rámec EtherCAT metódou On the Fly). Sync Manager slúži na odovzdanie údajov do/z rámca EtherCAT (opísané v predchádzajúcej časti). Rovnako ako sa prichádzajúcim rámcom môže obnovovať dohliadací časovač, možno nastaviť aj okamih, kedy má daný EtherCAT Slave Controller vykomunikovať údaje s Host Processor (poznámka k minulým dielom: to je tá aplikačné vrstva, keď ďalší mikroprocesor obstaráva fyzické vstupy a výstupy). Presnosť synchronizácie je daná pravidelnosťou (mierou rozkolísania), keď rámec EtherCAT prichádza do zariadenia EtherCAT. Pokiaľ tu bude minimálny rozptyl, môže aj tento spôsob poslúžiť ako efektívny nástroj synchronizácie. Z praxe však vieme, že to nie je odolné riešenie; povedzme, že je to prvý stupeň synchronizácie dát.
DC-Synchronous mode: na EtherCAT sa o synchronizáciu stará mechanizmus distribuovaných hodín (Distributed Clocks, DC). Je to komplexný mechanizmus, ktorý zaisťuje presnú synchronizáciu údajov s deklarovanou presnosťou nižšou ako 1 mikrosekunda. Praktickými meraniami sa v rámci jednej topológie EtherCAT opakovane potvrdila presnosť do 100 ns, ale nejde o oficiálne deklarovaný údaj.
Distribuované hodiny (Distributed Clock)
Distribuované hodiny sú založené na princípe jedného hlavného zdroja času. Zdrojom času nie je riadiaci IPC (priemyselný počítač), ale jedno zo slave zariadení (spravidla prvé v poradí), ktoré mechanizmus distribuovaných hodín podporuje. Hovorí sa mu zdroj referenčných hodín (Reference Clock). EtherCAT slave vkladá do rámca EtherCAT do pripraveného datagramu EtherCAT (EtherCAT Command typu AWMR) svoj vlastný čas a všetky ostatné EtherCAT zariadenia, ktoré sú pomocou distribuovaných hodín synchronizované, si tento čas prečítajú. Hodnotu referenčného času potom porovnajú s vlastným časom a započítajú ešte niekoľko ofsetov, ktoré zahŕňajú dopravné oneskorenie a pod. (Poznámka k predchádzajúcim dielom: ofsety sú nastavované počas EtherCAT State Machine, predovšetkým v Init mode, kde topológiou prejdú tisíce rámcov, pomocou ktorých prebehne meranie a precízne nastavenie týchto ofsetov, a ďalej sú priebežne kontrolované a opätovne merané.) Všetko je založené na použití podobne presných kryštálov, takže korekčné zásahy sú vždy len rádovo v desiatkach nanosekúnd. Výsledkom synchronizácie pomocou distribuovaných hodín sú presne definované a pre všetky zariadenia EtherCAT v reálnom čase jednotné prerušenia, tzv. SYNC 0/1. Pozor, Sync 0 má dvojaký význam, teda inú časovú hodnotu pre vstupy a inú časovú hodnotu pre výstupy. To preto, aby sa hodnoty vstupov v ESC aktualizovali chvíľu pred tým, než EtherCAT rámec dorazí k prvému EtherCAT zariadeniu. Hodnoty výstupov treba zapísať na fyzické výstupy, až keď EtherCAT rámec bezpečne opustí posledné EtherCAT zariadenie. Hodnoty ofsetov pre vstupné a výstupné Sync 0 musia platiť pre celú topológiu jednotne.
Mechanizmus distribuovaných hodín prináša používateľom jedinečný nástroj, vďaka ktorému môžu v PLC aplikácii prekladať jednotlivé merané hodnoty. Výhodou je istota, s akou časovou presnosťou porovnávaných hodnôt pracujú. To sa dá využiť pri rôznych aplikáciách: napríklad keď sa kontroluje výrobný proces pomocou priebehu meraných hodnôt alebo prebieha kontrola finálneho výrobku, alebo keď sa kontroluje hodnota sily, výšky atď. vzhľadom na pozíciu meracieho mechanizmu a tým sa dá jednoducho skontrolovať priebeh veličín daný technickými parametrami výrobku. Príkladov z praxe je veľa.
Time Stamp a Oversampling
Distribuované hodiny sú nadradený mechanizmus. Pre servomeniče a polohovacie úlohy funguje synchronizácia „na pozadí“. V prípade práce s digitálnymi a analógovými či enkodérovými signálmi (vstupnými i výstupnými) rozlišujeme dva základné pojmy: Time Stamp a Oversampling.
Time Stamp: má význam predovšetkým pri digitálnych signáloch. Vďaka funkcii Host Processor (mikroprocesor pre aplikačnú vrstvu) môže daný EtherCAT slave kontrolovať zmeny signálov a zaznamenávať vzostupné aj zostupné zmeny, tzv. hrany signálov. K týmto zmenám pridá presnú časovú značku (tzv. Time Stamp), ktorá má rozlíšenie na desiatky nanosekúnd. Používateľ si tak v nasledujúcom PLC cykle prečíta dve informácie: informáciu o zmene signálu, napríklad prechod z logická 0 do logická 1, a k tomu aj presný časový údaj, kedy k tejto zmene došlo. Využitie je rôzne, napr. rýchlo sa pohybujúci materiál možno takto detegovať vo vyššom rozlíšení, než poskytne PLC cyklus, a podľa rýchlosti a času, kedy k detekcii došlo, možno dopočítať presnú pozíciu na zastavenie, napr. na presný strih. Rovnakým spôsobom možno ovládať aj výstupy. Podľa polohy a rýchlosti pohybu mechanizmu možno aktivovať výstup podľa zadaného času. Ovládanie fyzických výstupov je potom v réžii daného EtherCAT slave, hodnota sa berie z ukončeného PLC cyklu. S každým PLC cyklom ju možno aktualizovať, čím sa stáva nezávislá od fixného PLC cyklu.
Oversampling: prakticky znamená čiastkové vzorkovanie. Digitálne aj analógové signály možno rozdeliť v pravidelných intervaloch vždy podľa zadaného počtu vzoriek. Počet vzoriek si volí používateľ. Obmedzením je fyzický limit vzorkovania daný samotným slave zariadením. To sa vždy líši podľa typu signálu, zariadenia EtherCAT aj podľa výrobcu. Výsledkom je pole hodnôt daného dátového typu, s ktorým sa pracuje v každom PLC cykle. Na jednotlivé vzorky nemožno reagovať okamžite, vždy sa spracovávajú spoločne v nasledujúcom PLC cykle. Vďaka tomu možno vyhodnotiť násobné množstvo hodnôt a lepšie vyhodnotiť priebeh signálu. Oversampling možno opäť využiť na strane vstupov aj výstupov.
Externá synchronizácia distribuovaných hodín
Z uvedeného vyplýva, že synchronizácia pomocou mechanizmu distribuovaných hodín prebieha vždy na úrovni EtherCAT master, hoci zdrojom referenčných hodín je EtherCAT slave. Je však mnoho situácií, keď je na jednom IPC použitých viac EtherCAT master alebo treba synchronizovať viac EtherCAT master na rôznych IPC. To všetko je možné, nakoľko distribuované hodiny možno navzájom synchronizovať. Princíp referenčných hodín pre každý EtherCAT master zostane zachovaný. Odovzdávať sa bude časový offset medzi tým EtherCAT master, ktorý je určený ako hlavný zdroj referenčného času, a ostatnými EtherCAT master a ich lokálnymi referenčnými časmi. Technických prostriedkov, ako prepojiť jednotlivé synchronizačné mechanizmy, je viac. Vo firme Beckhoff možno vykonať synchronizáciu pomocou riadiaceho systému TwinCAT Run Time interne, ďalšou možnosťou je použitie EtherCAT Bridge na prepojenie EtherCAT mastery, na veľmi presnú synchronizáciu možno použiť optimalizovaný RealTime Multiplier, napr. CU2508 od firmy Beckhoff.
Ak by bolo potrebné synchronizovať aj priestorovo oddelené topológie EtherCAT, je k dispozícii zdroj času PTP (Precision Time Protocol), ktorý možno napojiť na zdroj referenčných hodín na EtherCAT a synchronizovať ním dianie v jednej alebo vo viacerých topológiách EtherCAT.
Redundancia
Redundancia na zbernici prakticky znamená použitie kruhovej topológie. Ideálne nemá kruhová topológia žiadne odbočky, čiže konáre, ktoré by netvorili prirodzený kruh. Aby bola redundancia funkčná, na strane EtherCAT master treba nastaviť dva oddelené sieťové adaptéry alebo možno použiť RealTime Multiplier CU2508. Oba „konce“ (sieťové adaptéry) sa následne správajú ako dva EtherCAT mastery s tým, že sú navzájom zrkadlovo obrátené. Oba vysielajú svoj vlastný rámec EtherCAT, ktorý sa však nevracia cez celú topológiu späť, ako by to bolo v prípade všetkých ostatných typov topológie, ale putuje na príjem k protiľahlému sieťovému adaptéru s rozhraním EtherCAT. Oba rámce EtherCAT teda prinesú rovnaké hodnoty procesných dát, v Real Time oblasti V/V sa údaje skontrolujú a overí sa ich správnosť. V okamihu prerušenia kruhovej topológie nastane súhra fungovania zariadení EtherCAT slave a EtherCAT master. Zariadenie EtherCAT vie vďaka použitému EtherCAT Slave Controller (ESC) identifikovať problém na konkrétnom komunikačnom porte a tento nefunkčný či poškodený kanál uzavrieť. Pomocou acyklickej komunikácie túto informáciu odovzdá EtherCAT masterovi, ale zároveň sa z pohľadu putovania rámca EtherCAT topológiou EtherCAT zachová ako posledné zariadenie EtherCAT v bežnej topológii, teda obráti prichádzajúci rámec EtherCAT späť k EtherCAT masterovi. Výsledkom je, že sa na oba použité adaptéry EtherCAT vráti nimi odoslaný rámec, a tak možno opäť poskladať procesné údaje pre oblasť Real Time V/V a zachovať funkčnosť systému.
Hot Connect Group
Variabilnú topológiu možno vytvoriť dvojakým spôsobom. Ak sa správne nastavia synchronizačné skupiny na EtherCAT, budú V/V procesné údaje rozdelené do datagramov EtherCAT tak, aby funkčnému systému neprekážalo, že došlo k odpojeniu časti topológie. Odpojenie možno detegovať pomocou mechanizmu Working Counter, ktorý určuje, či sú procesné údaje každého datagramu EtherCAT overené. Z predchádzajúceho dielu vieme, že každý datagram EtherCAT je zakončený pomocou Working Couter. Druhá a komplikovanejšia možnosť nastane, ak sa určitá časť topológie EtherCAT bude pripájať zakaždým na iné miesto v danej topológii. Potom už je funkcia Hot Connect Group nutným riešením, pretože synchronizačné skupiny vychádzajú z pevne danej topológie. Hot Connect sú teda skupiny zariadení, ktoré možno za chodu odpájať aj pripájať. Pripojenie je možné na rôzne miesta, ale tiež možno vybrať jedno konkrétne miesto a kontrolovať, že daná skupina bola pripojená práve tu. Skupiny Hot Connect môžu byť použité aj v prípade, keď sa pripájajú variabilné časti systému, napr. viac výmenných súprav. Základom skupiny Hot Connect je jej adresa. To je prvýkrát v celom seriáli o EtherCAT, keď hovoríme o používateľskom adresovaní. Z logiky veci vyplýva, že variabilné časti sa musia navzájom odlišovať jedinečnou číselnou identifikáciou. Adresu možno zadať dvojakým spôsobom. Buď sa zvolí EtherCAT slave, ktorý má fyzické zadávanie adresy, alebo sa využije pamäť EEPROM a do príslušného registra pamäte sa uloží hodnota adresy. Akékoľvek pripojenie Hot Connect Group pre EtherCAT master znamená, že všetky EtherCAT slave musia prejsť všetkými stavmi EtherCAT State Machine (Init, Pre-OP, Safe-OP, Operational). Ak treba zredukovať čas potrebný na pripojenie skupiny k topológii EtherCAT, existujú optimalizované EtherCAT slave, ktoré podporujú tzv. Fast Hot Connect Group, keď je garantovaná plná funkčnosť pripojenej skupiny do jednej sekundy. To je v prípade väčšej skupiny a pri použití zložitejších zariadení EtherCAT, ako sú servomeniče či zložitejšie analógové meranie, podstatná vlastnosť.
EtherCAT P
Písmeno P znamená Power. Nejde však o výkonnejší variant. Je to kombinácia komunikácie EtherCAT a napájania. EtherCAT P je názorná ukážka, ako firma Beckhoff vstupuje do vývoja technológií EtherCAT. EtherCAT P vyvinula firma Beckhoff, aby túto technológiu následne prevzala pod svoju záštitu EtherCAT Group (ETG) a urobila z nej uznávaný štandard. Vývojári tu uplatnili know-how, ako modulovať jednotlivé úrovne signálov na seba, a tak vznikla technológia, ktorá spája všetky známe vlastnosti EtherCAT s prívodom napájania pre distribuované boxy v jednom kábli pri zachovaní minimálneho počtu žíl. Celkovo na štyroch vodičoch je 2 x 24 V DC a Tx aj Rx dvojica komunikácie EtherCAT, pričom to všetko je navzájom spojené. Vďaka premyslenému spôsobu kódovania konektorov nemôže nikdy dôjsť k prepojeniu kábla, ktorý je čisto komunikačný, s káblom, ktorý vedie aj napájanie 24 V DC. EtherCAT P vychádza z modulovania rôznych signálov na rovnakom vodiči. Výhodou EtherCAT P je, že zachováva všetky vlastnosti EtherCAT, teda kompletnú diagnostiku a pod. Zákazník ušetrí za kabeláž pre napájaciu časť. Boxy EtherCAT vo vyhotovení EtherCAT P a v štandardnom vyhotovení s dvojitou kabelážou sú spravidla cenovo identické. Okrem finančného zvýhodnenia sú situácie, keď je jeden kábel výhodou sám o sebe. Napríklad energetické žľaby môžu byť užšie, s menším počtom káblov majú menší odpor, montáž jedného kábla je vždy rýchlejšia ako montáž dvoch a v prípade kabeláže vedenej vnútri robotického ramena je benefit na strane EtherCAT P úplne jednoznačný.
EtherCAT P má viac variantov. Na prenos vyššieho silového napájania sú k dispozícii špeciálne káble, ktoré vedú oddelene komunikačnú a napájaciu časť. Stále je zachované riešenie jedného kábla. V takom prípade sa už nevyužíva modulácia napätia na komunikačné vodiče. Konektory sú v rôznych vyhotoveniach od M8 cez B12, B17, B23 až po B40 a úrovne napätia sa od 24 V DC presúvajú cez 48 V DC až po maximálnych 630 V AC alebo 850 V DC pri maximálnom prúde 72 A.
EtherCAT G a EtherCAT 10 G
Pozorní čitatelia si určite všimli nové označenie. Treba uviesť, že tým nevzniká žiadna nová verzia EtherCAT, je to stále ten istý EtherCAT, stále sa rámec EtherCAT spracováva metódou On the Fly, teda platí všetko, čo v našom seriáli opisujeme, len s tým rozdielom, že prenosová rýchlosť už nie je 100 Mbit/s, ale môže byť 1 Gbit/s alebo 10 Gbit/s. Prínosom vyššej prenosovej rýchlosti je skrátenie komunikačného meškania. Faktom je, že rámec EtherCAT s maximálnou dĺžkou 1 518 Byte sa pomocou 100 Mbit/s vysiela 122 mikrosekúnd, ale pri rýchlosti 1 Gbit/s je čas 10x kratší, teda iba 12,2 mikrosekundy. Základom EtherCAT G a EtherCAT 10 G budú tzv. jednotky Branch, ktoré zaistia následné vetvenia topológie a v rámci vetvenia umožnia aj kombináciu rôznych prenosových rýchlostí. Všetky varianty sú navzájom úplne kompatibilné, líšia sa iba prenosovou rýchlosťou.
Zdroje
Text článku bol preložený z pôvodného českého originálu.
Pokračovanie v ATP Journal 11/2021.
David Smělík
Beckhoff Automation s.r.o.