Použitelná přesnost serva

Odpovědět
Uživatelský avatar
Cjuz
Příspěvky: 2434
Registrován: 17. 2. 2013, 6:27
Bydliště: Předklášteří
Kontaktovat uživatele:

14. 8. 2014, 7:03

Ahojte
Nejdříve trochu čísel :)

Servo má 20bit enkodér - 1.048.576 pulzů na otáčku.
Šroub má 10mm stoupání, rozlišení enkodéru serva je tedy v přepočtu na vzdálenost velmi malé
Interpolátor umí 200.000pulzů/s což bude jedna otáčka šroubu

Kdybych chtěl rozlišení kroku 1um musely by být otáčky jen 1200ot/min a rychlost 12m/min
Pokud bych točil jen 2000ot/min bude jeden krok z interpolátoru odpovídat 1,666um, rychlost bude 20m/min
Pokud bych chtěl zrychlit na 3000ot/min bude krok již 2,5um a rychlost 30m/min (to se mi zamlouvá víc)

Může mít takový "zanedbatelný" rozdíl vliv na kvalitu obrábění, nebo s klidem použít 3000ot/min
V G-kódu se s mikrometry běžně pracuje a tedy systém musí provádět korekci požadavku a možnosti stroje.
Na konci poznávacího procesu je omyl zcela vyvrácen a my nevíme nic. Zato to víme správně.
RaS
Příspěvky: 8589
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

15. 8. 2014, 5:49

to je dilema co? když už chceš rychlosti a přesnosti jak profi mašiny tak použíj profi interpolátor, kterej dá víc.. ve skutečnosti tu rychlost klidně ještě poděl třeba 3ma za předpokladu že ti budou odjíždět všechny tři osy rychloposuvem tak ten interpolátor na každou osu dá jen třetinu pulzů.. já mám třeba nastaveno 10m/min a 0,5mikronu krok a i když nastavím krok 5x takovej tak nepoznám rozdíl, můžu nastavit i méně, ale podle mě zbytečnost.. ty mikrony ti stejně vždycky někde propružej v řemenu v uložení, vůlích atd..
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
Tomis
Příspěvky: 188
Registrován: 14. 12. 2013, 11:11

26. 8. 2014, 4:26

Cjuz píše:Ahojte
Nejdříve trochu čísel :)

Servo má 20bit enkodér - 1.048.576 pulzů na otáčku.
Šroub má 10mm stoupání, rozlišení enkodéru serva je tedy v přepočtu na vzdálenost velmi malé
Interpolátor umí 200.000pulzů/s což bude jedna otáčka šroubu

Kdybych chtěl rozlišení kroku 1um musely by být otáčky jen 1200ot/min a rychlost 12m/min
Pokud bych točil jen 2000ot/min bude jeden krok z interpolátoru odpovídat 1,666um, rychlost bude 20m/min
Pokud bych chtěl zrychlit na 3000ot/min bude krok již 2,5um a rychlost 30m/min (to se mi zamlouvá víc)

Může mít takový "zanedbatelný" rozdíl vliv na kvalitu obrábění, nebo s klidem použít 3000ot/min
V G-kódu se s mikrometry běžně pracuje a tedy systém musí provádět korekci požadavku a možnosti stroje.
Ahoj, muzes mi prosim polopate vysvetlit, jak si dospel k vypoctu max rychlosti vs rychlost interpolatoru, mam v tom trochu zmatek a zajimalo by me to take... Dekuji
Uživatelský avatar
Cjuz
Příspěvky: 2434
Registrován: 17. 2. 2013, 6:27
Bydliště: Předklášteří
Kontaktovat uživatele:

26. 8. 2014, 5:24

Pokusím se to rozepsat:

Ideálně na příkladovém obrázku
šroub.png
Fixní hodnoty jsou stoupání šroubu, maximální otáčky motoru a rozlišení enkodéru u serva (u krokových motorů krok i když tam se ještě počítá s mikrokrokováním pomocí driveru)
Pevná hodnota je také maximální počet pulzů za sekundu z interpolátoru nebo třeba LPT na PC.

Pokud zvládne sežrat pohon (včetně driveru) stejný počet pulzů co umí interpolátor dá se pokračovat dál. Pokud nikoliv je třeba určit to technické maximum.
Např: krokový motor má 200kroků na ot a driver se naství např. na 10mikrokroků což je 2000kroků na otáčku. Driver umí pulzy do 300khz jenže to by znamenalo: 300.000pulz/s / 2000kr/ot = 150ot/s (9000ot/min)
Toto je nereálné tudíž musí proběhnout nějaké rozumné zkorigování dle toho co je v reálu.
Korekce:
Chci točit motor do 2000ot/min a mám LPT který umí 50.000pulz/s. Výpočet 2000ot/min / 60 = 33.33ot/s nyní je jasné že 50.000pulz/s / 33,33ot/s = 1500pulzů na jednu otáčku motoru na toto musím nastavit driver abych využil maximálně možnosti systému a zároveň měl požadované rychlosti otáčení, tedy: 1500pulz/ot / 200krok/ot = mikrokrokování 7,5. Pokud nejde použiji jiné a buď mohu jezdit rychleji a méně přesně a nebo naopak.

Máme tedy maximální otáčky motoru 2000ot/min
Šroub má stoupání 10mm/ot a rychlost je tedy 20m/min. Když se vrátíme v textu a povedlo se nám nastavit 1500pulzů/ot je jasné že 10mm/ot / 1500pulz/ot = 0,00666mm/krok

Vše je navzájem provázané.
Příklad I:
LPT má 50.000pulz/s, motor 3000ot/min ve spojení s driverem má rozlišení 5000kroků/otáčku a šroub stoupání 4mm. Rychlost bude 50.000/5000=10ot/s, 10x60=600ot/min, 600x4=2400mm/min (2,4m/min)
Příklad II:
interpolár má 200.000pulz/s, motor 3000ot/min ve spojení s driverem má rozlišení 5000kroků/otáčku a šroub stoupání 4mm. Rychlost bude 200.000/5000=40ot/s, 40x60=2400ot/min, 2400x4=9600mm/min (9,6m/min)
Jeden krok je pořád stejný 4mm / 5000 = 0,0008mm

Na závěr jedna poznámka, vypočítané hodnoty neznamenají že mašinka bude jezdit v takové přesnosti. :D
Na konci poznávacího procesu je omyl zcela vyvrácen a my nevíme nic. Zato to víme správně.
Tomis
Příspěvky: 188
Registrován: 14. 12. 2013, 11:11

27. 8. 2014, 7:04

Dekuji moc, za podrobne vysvetleni... Uz tomu rozumim.
Tomis
Příspěvky: 188
Registrován: 14. 12. 2013, 11:11

27. 8. 2014, 7:25

Dal jsem to do jednoduche XLS tabulky, mozna se to muze nekomu hodit, je to v priloze
Přílohy
Vypocet_presnosti_CNC.xls
(18 KiB) Staženo 459 x
ScreenHunter_168.jpg
Uživatelský avatar
Oliver Rovný
Příspěvky: 283
Registrován: 23. 11. 2010, 2:55
Bydliště: Okres Malacky, SK

14. 8. 2015, 11:31

Ahojte,
bol by som rád, ak by sa podarilo ešte trochu rozvinúť toto zaujímavé vlákno. Vrátim sa ešte k tomu príkladu, čo napísal Cjuz na začiatku, pretože dumám nad tým, ako súvisí frekvencia pulzov z enkóderu serva s frekvenciou pulzov z interpolátora. Podľa tých info, čo som doteraz vysnoril mi to pripadá, že sú to hodne nezávislé veci.
Ale k tomu Cjuzovmu príkladu:
Cjuz píše:
Servo má 20bit enkodér - 1.048.576 pulzů na otáčku.
Šroub má 10mm stoupání, rozlišení enkodéru serva je tedy v přepočtu na vzdálenost velmi malé
Interpolátor umí 200.000pulzů/s což bude jedna otáčka šroubu
Ak by malo servo 20bit enkóder a točilo by 3000 /min = 50 /s, tak z enóderu by šlo 50*2^20 = cca 52.430 kHz, čo driver spacuje. Interpolátor zasa kŕmi driver signálom s frekvenciou 200 kHz. A práve ten pomer 53.000 : 200 mi vŕta hlavou. Je to totiž dosť nepomer :? Jednému pulzu z interpolátora potom zodpovedá až 262 pulzov enkóderu. Pri použití HW generátora pulzov, ktorý dokáže dajme tomu desaťnásobok, teda 2 MHz, by bol pomer pulzov 1:26, čo sa mi zdá lepšie.

Chápem to tak, že čím je väčšie rozlíšenie enkóderu tým agresívnejšie sa dá nastaviť servoobvod, pri zachovaní prijateľnej stability a kvality regulácie. Ale nebol by zrovna tento príklad degradáciou servopohonu? Netreba také vysoké rozlíšenie spätnej väzby podporiť aj nejakým slušným tokom príkazov zo strany PC? Existuje nejaký "zdravý pomer", alebo je to úplne šum a fuk? Experimentoval s tým niekto? Veľmi by ma to zaujímalo :)
Uživatelský avatar
RKal
Příspěvky: 234
Registrován: 7. 4. 2014, 9:26
Bydliště: Krasov
Kontaktovat uživatele:

17. 8. 2015, 12:15

No a není to náhodou tak, že to že encoder je 20bitu nám říká vpodstatě jenom informaci na kolik dílků ve skutečnosti můžeš rozdělit jednu otáčku, úplně stejně jako reálný příklad 2F KM - 200 kroků * 16 mikrokroků = 3200 kroků na otáčku a výsledná min frekvence interpolátoru je max požadované otáčky za sekundu * počet kroků na jednu otáčku. takže např při 1500 n/min = 25n/s je pro výše uvedený KM min frekvence interpolátoru 25*3200 80.000 Hz a jak psal Ras tak toto je pro jednu osu, takže pokud interpolátor je schopen generovat pulsy max 250 kHz tak v případě napojení více os (třeba 3 najednou) už může být na hraně. Například ESS interpolátor je uváděn jako 4MHz nicméně těchto 4MHz potřebné podělit počtem řízených os.

Teda doufám že sem teď nenapsal nějakou shovadilost
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22950
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

17. 8. 2015, 12:26

U nekterych interpolatoru je treba ten udaj podelit poctem os u jinych ne
to je pak veliky rozdil
Vsechna prava na chyby vyhrazena (E)
Uživatelský avatar
Oliver Rovný
Příspěvky: 283
Registrován: 23. 11. 2010, 2:55
Bydliště: Okres Malacky, SK

17. 8. 2015, 9:27

2 RKal:
V prípade krokového motora, čo impulz, to krok motora - tak nejako zo zvyku som si pôvodne myslel, že aj v prípade serva je to podobne. Ale to som ešte nevedel, že sa používajú enkódery s rozlíšením milión impulzov na otáčku (možno aj viac?), kde by to zrejme nešlo splniť. Takže logicky sa núka otázka, aký pomer impulzov z PC k impulzom zo spätnej väzby je vlastne vhodný, alebo aký interval treba dodržať. Ak na tom nezáleží, tak aký je prínos tak veľkého rozlíšenia niektorých servomotorov?

2 robokop:
Nevedel by si povedať, ako je to v prípade Mesa kariet, napr. 5i25? Tam treba max. výstupnú frekvenciu deliť, alebo je to už rozrátané na jednu os? V manuáli som ani nenašiel hodnotu max. frekvencie, píšu len že je v úrovni MHz.
Uživatelský avatar
RKal
Příspěvky: 234
Registrován: 7. 4. 2014, 9:26
Bydliště: Krasov
Kontaktovat uživatele:

18. 8. 2015, 9:28

Jo v tom asi máš pravdu, že u serva to tak vlastně vůbec nemusí být jako u KM ale potomo vlastně nezáleží asi ani tak na samotném enkoderu ale na nastavení driveru který to servo pohání jak moc je schopen rozdělit jednu otáčku, v každém případě nemůže mít driver více kroků než enkoder to by asi nefungovalo. To je ale pouze moje doměnka se servy žádné velké zkušenosti zatím nemám bohužel.
RaS
Příspěvky: 8589
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

18. 8. 2015, 9:41

já mám pro představu mesu 5i20 šrouby stoupání 10mm, krok mám 0,0005mm a max rychlost 10m/min zrychlení 5000, převod motor/šroub 2:1.. takže šroub se otáčí max rychlostí 1000ot/min motor 2000ot/min =33,3 ot/s (maximum umí 3000 a stroj 15m/min to jsem ale omezil) a na 1mm mám 2000 kroků .. takže při plné rychlosti 10m/min = 166,6mm/s mám 333,3 kHz na jedné ose.. driver umí až 4MHz a kolik mesa to už si nepamatuju..
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
Uživatelský avatar
Oliver Rovný
Příspěvky: 283
Registrován: 23. 11. 2010, 2:55
Bydliště: Okres Malacky, SK

18. 8. 2015, 9:37

RaS píše:já mám pro představu mesu 5i20 šrouby stoupání 10mm, krok mám 0,0005mm a max rychlost 10m/min zrychlení 5000, převod motor/šroub 2:1.. takže šroub se otáčí max rychlostí 1000ot/min motor 2000ot/min =33,3 ot/s (maximum umí 3000 a stroj 15m/min to jsem ale omezil) a na 1mm mám 2000 kroků .. takže při plné rychlosti 10m/min = 166,6mm/s mám 333,3 kHz na jedné ose.. driver umí až 4MHz a kolik mesa to už si nepamatuju..
Vďaka za čísla, hneď je lepšia predstava. Ak si dobre pamätám, používaš servopohony Delta B2. Ja by som do nich tiež chcel ísť, vlastne jednu servozostavu Delta B2 som už kúpil na pokusy. Ale predajca ma lámal, aby som kúpil A2, že sú o dosť lepšie. Mne však pripadajú aj parametre tých B2 pomerne luxusné pre potreby amatérskeho cnc...

Píšeš, že si obmedzil max. otáčky serva z 3000 na 2000 /min. Nie je to ale škoda, takto nevyužiť plný výkon? Ak by si ponechal plných 3000 a dal prevod na skrutku viac do pomala, tak by sa zachovala rýchlosť posuvu, ale mal by si väčší moment na skrutke.
To je tiež jedna vec v ktorej nemám jasno - s akými otáčkami serva počítať pri návrhu, menovitými, alebo maximálnymi. Pri tých Deltách napríklad uvádzajú menovité otáčky 3000 a maximálne až 5000. Takže pri rýchloposuve môžem uvažovať 3000, alebo v pohode aj tých 5000 /min? Je fakt, že nad 3000 /min už klesá moment, ale pri rýcloposuve zas nie sú rezné sily.
RaS
Příspěvky: 8589
Registrován: 26. 3. 2009, 9:12
Bydliště: Úvaly

18. 8. 2015, 10:38

já mám motory jmenovité ot 2000, max 3000 takže zpřevodováním bych asi už tratil... dá se to provozovat na 3000 jenže je to na můj vkus moc rychlé 15m/min.. mám i sníženou akceleraci takže nepotřebuju větší sílu, největší síla je potřeba právě na akceleraci kdy servo jde i na 300% .. jo mám ASDA B2, to co umí A2 já asi nevyužiju...
jinak dneska jsem koukal na mesu a ta umí 10MHz po RS 422 takže celkem rezerva tam je :D
věčný rýpal,který musí mít poslední slovo, odpůrce low-cost zařízení končících v naprosté většině případů v hromadě šrotu
uživatelé hýbátek, kteří mají z mých příspěvků celoživotní trauma nechť si mé příspěvky VYPNOU
Odpovědět

Zpět na „Servomotory“