Sběrnicová serva - obecný pokec

Mex
Příspěvky: 10287
Registrován: 6. 2. 2014, 10:29

31. 1. 2016, 3:27

Rád bych tady pokecal s lidmi, kteří znají a hlavně používají sběrnicová serva v oblasti CNC.

S použitím serv v oblasti CNC nemám žádnou zkušenost, na své malé číňance a dalších domodělných hračkách mám zatím jen krokáče.
Ale protože dělám do řízení a automatizace v průmyslu, tak o servech něco vím.
A to mi přávě nedává moc smysl, proto tohle vlákno.

Svět se tlačí směrem ke sběrnicovým servům. Takže už žádné STEP/DIR řízení, ale prostě sběrnice od jednoho serva ke druhému, a nad tím několikavrstvé protokoly. Pro nasazení třeba v pohonech a nějaké automatizaci je to celkem OK. Ale jak je to v oblasti CNC?

Odhlížím teď od relativně pomalých sběrnic, jako je například Profibus.
Třeba za hodně rychlý protokol se považuje Sercos. A za největší hvězdu pak EtherCAT, který teď asi dost válcuje ostatní konkurenci.

Ten EtherCAT je fakt chytře vymyšlený. Jeden vyslaný paket tam obsahuje příkazy (tzv. PDO) pro všechna serva na sběrnici. Jak ten paket letí mezi servy na sběrnici, tak jim za letu předává příkazy a současně v téže chvíli sbírá od nich zpětné informace. Takže z přenosového pásma Ethernetu vyždímá co se dá. Jenže ani ten nejrychlejší EtherCAT podle mě není (z pohledu CNC) žádný zázrak.

Snad všechny ty sběrnice používají něco jako PDO (Proces Data Object), kde pořád dookola co nejrychleji přenášení real-time parametry. U pozičního řízení tedy souřadnice, kam má servo dojet, s jakým zrychlením a jakou rychlostí. Kromě toho se občas pomaleji pak posílají nějaká služební data (říká se jim v různých systémech různě, třeba SDO jako Service Data Object), která přenášejí informace kolem nastavení, diagnostiku atd.

No a teď jsme u jádra problému, kde mám nejasnost. Jednomu tomu vyslání PDO se říká cyklus. Ale ten cyklus je i na nejrychlejším EtherCATu třeba až v řádu stovek mikrosekund. Teď jsem zrovna dělal s nějakým hodně velkým servem, kde byla délka cyklu 1 ms. Tady to moc nevadilo, jede to v rychlostním režimu a je to určeno pro pohon. Ale i ta nejlepší serva mají cyklus kolem 30 us.

Pokud vezmu obráběcí stroj s rychlostí 1m/s, tak i to nejrychlejší servo urazí za svůj cyklus 30 um. A to se bavíme o nejrychlejší sběrnici a nejrychlejším servu.
To při řizení STEP/DIR jsem schopný dosáhnout výrazně lepších parametrů, tj. lepšího rozlišení a tedy lepšího sledování trajektorie u obecných tvarů.

Tak jak to teda je? Opravdu je to v praxi takhle nic-moc, nebo něco nechápu? Třeba na tom EtherCATu by se to dalo ještě trochu ošéfovat tím, že se v jednom paketu pošle víc PDO, takže to servo dostane nějaké zadání už dopředu. Ale nevím, jestli se to používá, skoro bych řekl, že ne.

Potěšilo by mě, kdyby někdo pustil nějaké informace z praxe (nebo i z teorie).
Díky.
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22402
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

31. 1. 2016, 6:27

napr fanuc pouziva optiku a FSSB nejake podrobnosti o tom jak to stihaji a jak je to porovnatelne se step/dir ale nemam
nicmene ten ethercat je vcelku dost rychly tusim ze jsem cetl cca 100kHz obnovovaci kmitocet vsech informaci na sbernici
kdyz to porovnas se zpetnovazebnimi smyckami serv zjistis ze ty serva jsou stejne pomalejsi takze nedokazi reagovat kdyby ta informace byla sebepodrobnejsi
Vsechna prava na chyby vyhrazena (E)
Mex
Příspěvky: 10287
Registrován: 6. 2. 2014, 10:29

31. 1. 2016, 7:55

No, 100 kHz neboli 10us cyklu uvěřím, až to uvidím v parametrech nějakého serva.
Zatím když to výrobci super vyladí na nějaké výstavě a použijí malou sběrnici, tak s bídou dosáhnou 15us. A je výrobce použije to nejlepší co má, a ještě to pořádně vymazlí.

Ta regulační smyčka u serv je opravdu tak pomalá, jak píšeš? Nedávno jsi tady chtěl dělat převodník sin/cos na kvadraturní signál a nestačila ti frekvence 1 MHz, a dokonce i u 3.2 MHz jsi měl pochybnost, jestli nemáš vzít ten s dvojnásobnou rychlostí. Pak by snad honění-se za vyšší frekvenci u enkodéru nemělo smysl, ne? Navíc to předpokládám nechceš do nějaké hypersuper mašiny.

A to se pořád nabíme o té nejrychlejší sběrnici. Ale běžná serva používají pomalejší sběrnice.
lubos
Sponzor fora
Příspěvky: 5091
Registrován: 2. 5. 2007, 3:47
Bydliště: Praha

31. 1. 2016, 8:12

Možná mi něco uniká, ale když si vemu velikost gkodu tam proč by ta sběrnice svou rychostí měla být nějak extrémně namáhaná. Zkrátka pro lince prijde požadovaná poloha xyz s danou rychlostí a drivery tam dojedou. Mezitím musí být dost času na to aby si drivery a systém mezi sebou v pohodě povídali ne?
Možná by pro inspiraci šlo kouknout třeba na toto.
http://granitedevices.com/wiki/SimpleMotion_V2" onclick="window.open(this.href);return false;
Již delší dobu šilhám po tom driveru Argon.
XpertMill, Gravos, Ninos, Galaad
IQ156
-1500Kč, -520Kč, -1čokoláda, - 28000Kč
www.freeair.cz www.rotexelectric.eu www.retrofitcnc.cz
Mex
Příspěvky: 10287
Registrován: 6. 2. 2014, 10:29

31. 1. 2016, 9:09

lubos píše:Možná mi něco uniká, ale když si vemu velikost gkodu tam proč by ta sběrnice svou rychostí měla být nějak extrémně namáhaná.
Servo jen umí dostat po sběrnici příkaz "udělaj počet kroku X max rychlostí Y s rampou Z".
Pokud pojedu rovně, tak skutečně stačí třeba 1 příkaz za sekundu. Ale pokud jedu obecný tvar, tak každý příkaz znamená jeden "zub" na křivce. Takže pokud jedu rychle do zatáčky, tak prostě potřebuju vysokou obnovovací frekvenci. Jinak bych místo koleček vyráběl rovnou ozubená kolečka.
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22402
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

1. 2. 2016, 9:23

k tomu ethercatu par cisel:
Performance
Short cycle times can be achieved since the host microprocessors in the slave devices are not involved in the processing of the Ethernet packets to transfer the process images. All process data communication is handled in the slave controller hardware. Combined with the functional principle this makes EtherCAT a high performance distributed I/O system: Process data exchange with 1000 distributed digital I/O takes about 30 µs, which is typical for a transfer of 125 byte over 100Mbit/s Ethernet. Data for and from 100 servo axis can be updated with up to 10 kHz. Typical network update rates are 1–30 kHz, but EtherCAT can be used with slower cycle times, too, if the DMA load is too high on your PC.
The bandwidth utilization is maximized, as each node and each date do not require a separate frame. Thus, extremely short cycle times of ≤ 100 µs are achievable. By using the full-duplex features of 100BASE-TX, effective data rates of more than 100 Mbit/s (> 90% user data rate of 2x100 Mbit/s) can be achieved.
The EtherCAT technology principle is scalable and not bound to 100 Mbit/s. A future extension to Gigabit Ethernet is possible, but is not in preparation at the moment since the EtherCAT performance is sufficient at 100 Mbit/s.
Vsechna prava na chyby vyhrazena (E)
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22402
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

1. 2. 2016, 9:28

jestli dobre pocitam tak pro update polohy pro 100 servomotoru na sbernici kazdou setinu milimetru je limitni rychlost stroje 6m/min
to je dobre pouzitelne skore
predpokladam ze poctem slave zarizeni muzu ovlivnovat delku datovych packetu a i rychlost update k lepsimu
Vsechna prava na chyby vyhrazena (E)
Mex
Příspěvky: 10287
Registrován: 6. 2. 2014, 10:29

1. 2. 2016, 10:56

Oni ti hoši od EtherCATu rádi uvádějí výpočty pro velké počty serv (jako třeba tady - 100 serv).
Je to tak asi proto, protože pro vysoké počty skutečně ten EtherCAT vychází hodně dobře, protože jeden paket prostě obslouží všechan serva na sběrnici.
Ale v praxi používáme (aspoň my hibíci) spíš mnohem menší konfigurace, řekněme tak do 5 serv. A tam už ty parametry nevypadají tak dobře (proti jiným řešením). Trochu se to kratšími pakety zrychlí, ale bojím se, že moc ne, protože omezení už bude v jednotlivých driverech.

Jinak parametry, které jsi napsal (6 m/min a zuby 0.01mm) mi zase tak výborné na špičkovou techniku nepřipadají.
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22402
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

2. 2. 2016, 7:16

no vyborne s nejakou velkou rezervou to urcite neni, pouzitelne je to urcite i v profi svete

u te optiky a fanucu jsem nasel ze se chlubi nanometrovym interpolatorem ale ke sbernici 0 informaci
v konecnem dusledku zkusmo rukou maji zpetnovazebni smycku pomalejsi nez analogove linuxcnc zavazane skrz softwarovou pid v jadru linuxu

ono by jsme se mozna divili jak jsou postavene dospele cnc
spousta novych i v dnesni dobe jede vselijak hybridne rizenych i s analogem a tak...


jinak dalsi cnc alternativa je sercos protokol
Versions
sercos I was released in 1991. The transmission medium used is optical fiber. The data rates supported are 2 and 4 Mbit/s, and cyclic update rates as low as 62.5 microseconds. A ring topology is used. sercos I also supports a "Service Channel" which allows asynchronous communication with slaves for less time-critical data.[4]
sercos II was introduced in 1999. It expanded the data rates supported to 2, 4, 8 and 16 Mbit/s.[4][5]
sercos III merges the hard-real-time aspects of the sercos interface with the Ethernet standard.
Main article: SERCOS III
Features of sercos interface
Important features of the sercos interface include:
Collision-free communication through the use of a time-slot mechanism.
Highly efficient communication protocol (little overhead).
Extremely low telegram jitter (specified at less than 1 microsecond, in practice as low as 35 nanoseconds).
Highly developed standardized profiles agreed upon by multi-vendor technical working groups for dependable interoperability of devices from different manufacturers.
Ability to control, for example, 70 axes of motion at an update of 250 microseconds for each and every drive (sercos III).[6]
jestli tady dobre pocitam tak tam by ta setinka koncila na ctvrt metru/min tedy sakra malo
pritom ty cnccka bezne potkavam a obrabeji se na tom letecke soucastky z duralu
tak nevim jak toho docilili

v kazdem pripade vetsina profi stroju (to uz je dano hystoricky) proste rychloposuvy neinterpoluje
a rozdeluje strojni posuvy a jejich max rychlost od max rychlosti rychloposuvu
Vsechna prava na chyby vyhrazena (E)
Uživatelský avatar
picom
Příspěvky: 2110
Registrován: 11. 8. 2006, 2:07
Bydliště: Praha

2. 2. 2016, 4:43

Opravují stroje kde je optická sběrnice sercos ,ale neni to CNC
Informace o sběrnici a komunikaci bohužel nulové .
Pokud jeden zesilovač odejde tak je celá sběrnice mrtvá a je nutno zesilovač přemostit.
Stroj stihne vyrobit až 60 párků za vteřinu, ale to je omezeno mechanikou
atlan
Příspěvky: 3348
Registrován: 7. 2. 2011, 9:12

2. 2. 2016, 5:30

Lenze po tych zberniciach sa asi posiela obdoba Gkodu. Kazde servo ma prikazy na 500krokov dopredu co ma spravit, priebezne sa doplnaju informacie. V pripade nejakej chyby ktroeho kolvek cleny ide chybova hlaska pocelej zbernici takmer okamzite. Zaciatok je synchronizovany. Tak ze kazde servo spracovava prikazy synchrone s ostatnimi. Tym padom je mozne urobit obluk bez zubkov.
petr4753
Příspěvky: 11
Registrován: 3. 1. 2016, 7:21

2. 2. 2016, 6:05

Co se týká Sinumeriku tak tam je pro standardní servo s nejnovějším 840d sl (60m/min, 5m/s2) takt polohové smyčky 1ms a takt rychlostní a proudové 125us. Větší rychlosti nemají asi smysl, protože např. spínací PWM tranzistorů je 4kHz. Pro speciální aplikace např. vysokorychlostní vřetena lze jít až na 31us a PWM 16kHz, ale to je skutečně speciálka na běžném stroji nevídaná.

Petr
Mex
Příspěvky: 10287
Registrován: 6. 2. 2014, 10:29

2. 2. 2016, 11:04

On ten Sercos přežívá i ve světě EtherCATu. Nad fyzickou vrstvou EtherCAT jede další vrstva, přičemž jednou z nich je SoE, která se sice oficiálně jmenuje Servo over EthetCAT, ale používá se pro ni i označení Sercos over EtherCAT, protože používá téměř totožnou strukturu jako Sercos.

Takt 1ms u polohové smyčny Sinumeriku při rychlosti 60 m/s je docela mazec. Za tu milisekundu to ujede milimetr.

U toho Sercosu se mi líbí jednotky "60 párků/sec". ;-)
Což je teda mimochodem docela fičák.
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22402
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

3. 2. 2016, 6:36

jj
mel jsem takove tuseni ze nektere ty velke systemy nejsou takova hitparada
ale treba ten siemens je fakt hodne malo, to uz to predezene kdejake hobby reseni step/dir
Vsechna prava na chyby vyhrazena (E)
ZDENEK1.DOLEZAL
Příspěvky: 243
Registrován: 16. 12. 2013, 9:09

3. 2. 2016, 7:36

Nevím nejsem odborník na dané téma , ale hrabu se v tom ve volném čase.
Nechápu definici pomalosti.
Po sběrnici dorazí informace do serva kam má dojet a to z bodu A do bodu B po křivce o poloměru a zrychlení zpomalení - to samé do druhého .
Takže v čem je problém ? - důležitá je synchronizace serva - jiter a ta je do 1us mikrosekunda.
Odpovědět

Zpět na „Servomotory“