Nyt on CNC-foorumin tukeminen helppoa!
Maksu onnistuu PayPalin kautta myös kortilla
Konemies kiittää

Servoluuppien nopeuksista

Aloittaja Tugge, 05.06.19 - klo:19:05

« edellinen - seuraava »

0 Jäsenet ja 2 Vieraat katselee tätä aihetta.

Tugge

Moro taas. Tulipa tuossa töiden puolesta suunniteltua servostepperi ja rupesin tässä pohtimaan, että kuinkahan nopeat servoluupit on oikeissa työstökeskuksissa? Eli millä taajuudella positio, speed, accel ja jerk luupit mahtaa pyöriä? Kun rupesin laskemaan että jos positioluuppi pyörähtää 100Hz:n taajuudella, niin 1200 mm/min (eli 20 mm/sec) syötöllä positio muuttuu 0.2 mm per sykli. Se alkaa olemaan jo aika paljon jos ajetaan vaikka ympyrän kaarta.

Pikaisella googlauksella ei löytyny selvää vastausta, joten aattelin kysyä täältä ennwn kuin alan goolailemaan enemmän.

ttontsa

omassa koneessa on analogi setupilla linuxcnc ja siinä servo thread on "vakio" 1khz. Ihan tuunausmielessä kiinnostas itseäkin mikä on syy ja seuraus jos enkooderiresoluution tuplaisi ja servo threadin nostaisi 2khz, tuleeko sieltä vaan kiertokanki kupeesta pihalle?  Linuxcnc foorumia jonkun verran selasin, mutta eipä siellä eksaktin tiedonjyvän äärelle päässyt.

Tossakin asiaa ruodittu ja esitetty väittämä fanuc:n vehkeistä 32khz.

https://forum.linuxcnc.org/38-general-linuxcnc-questions/27626-maximum-servo-thread-frequency
Hitsaus&koneistus&Protopaja
www.tulinen.fi

Tugge

Niin tuossa torquelooppi oli tuon 32 kHz, ja nopeus puolet siitä ja positioluuppi neljännes nopeusluupista. Jostakin paperista, joka pohjasi itsensä säätöluuppien bodekäyriin, luin, että ylemmän tason suhde alempaan tasoon pitäisi olla n. 10. Eli jos positio pyörisi 1 kHz niin nopeus olisi n. 10 kHz.

Minkäslaiset ohjaimet sulla on ohjaamassa servoja? Mikä sykliaika niissä on? Itellä on rakenteilla kone johon tulis Omronin R88M tyyppiset servo-ohjaimet, joissa tuo speedluuppi on fiksattu 2 kHz:iin

ttontsa

mulla on delta asda-b2:t. Autotuning:lla viritetty, en oo muuten puuttunu. Analog input time constant 2.2us ...öö 450khz??🤪
Hitsaus&koneistus&Protopaja
www.tulinen.fi

Tugge

Hmm... Tuo analog input time constant taitaa olla sen analogi sisääntulon samplays taajuus. Tai se kuullostaisi järkevältä. Eli ei suoranaisesti vaikuta ohjausluuppeihin.

Viime viikolla töissä kävi Bosch Rexrothin kaverit kertomassa omista tuotteistaan ja kysyin samaa asiaa heiltä. Tänään tuli vähän tarkempaa tietoa asiasta.

https://www.boschrexroth.com/various/utilities/mediadirectory/download/index.jsp?object_nr=R911338962

Kappaleesta 5.2 sivulta 30 löytyy noita luuppiaikoja. Eli virta/vääntöluupit sykkii 16 kHz taajuudella, nopeusluuppi 8 kHz taajuudella, ja positioluuppi 4 kHz taajuudella. Eli kun positioluuppi pyörähtää, niin sen ulostulona on nopeus ja systeemillä on kaksi sykliä aikaa säätää nopeus kohdalleen. Ja kun nopeusluuppi pyörähtää, niin sen ulostulona on virta/vääntö, niin vääntöluupillakin on vain kaksi sykliä aikaa säätää se kohdalleen.


Hiekkaranta_92

Aivan näin triviaaliahan kaskadisäätimen toiminta ei ole. Periaatteessahan sykliaika vaikuttaa säätimien havahtumiseen takaisinkytkennässä ja stabiiliuteen. Mikäli vaikkapa virtalooppi ei kerkiä ohjearvoonsa tuossa sykliajassa siten, että nopeus säädin puuttuu peliin, kasvaa virtaloopin eroarvo (asetusarvo - oloarvo) ja siten tehdään voimakkaampi korjaus.

Näyttäisi että heidenhain 530 ohjaus pystyy parhaimillaan antamaan nopeusohjeen 10kHz pwm viestinä. Paikka looppin jakson aika vaikuttaa olevan parhaimmillaan 0,6ms eli 1.6kHz.

Tugge

No joo näinhän se on tietenkin. Eli ylemmät luupit vaikuttaa kanssa, mutta vasta viiveellä..

dzy

#7
Taitaa olla että monessa servo ohjaimessa maksimitaajuus millä IGBT siltaa ajetaan on siinä 8kHz - 1xkHz. Tämä rajoittaa sen miten virtoja kyetään ohjaamaan, ottamatta huomioon virranmittauksen taajuutta. Sillä ei sinänsä ole väliä vaikka virtoja mitattaisiin miljoona kertaa sekunnissa jos pulssitaajuus on maksimissaan tuo IGBT:llä. Toki virrat voidaan pysäyttää missä vaiheessa tahansa tuota 8kHz - 1xkHz sykliä, mutta päälle se pärähtää vasta syklin alussa. Sitten tulee induktanssi/massat ja moottorin arvot mitä vastaan virtojen pitää koittaa kyetä sitä säätämään.

Analogiservot huomaa nopeuden muutoksen takon kautta nopeampaa mutta tyristoriohjaus rajoittaa sitten muutoksen havainnoinnista itse muutokseen sen aika hyvin, 50Hz-100Hz riippuen tyristorikytkennästä ja syötöstä.

Oikeassa elämässä näitä servoja ei kuitenkaan ajeta kanttiaallolla, esimerkiksi että annetaan paikaksi 100mm ja sitten heti perään -100mm vaan kaikki on paljon jouhevampaa. Tässä kohtaa tulee ne kiihtyvyysarvot ja niiden kautta se millaista ohjearvoa servo pystyy milläkin koneella seuraamaan.

Tuossa joku älämölö video paikoituksesta...

https://youtu.be/yV1RtY6K2TU

Ja tuossa toinen dynaamisella nopeuden vaihtelulla

https://youtu.be/rBiC_ojSA1Q

S-curve ohjauksen laskut voidaan tehdä vakiokiihtyvyyden kaavoilla koska s-curve on symmetrinen kiihdytyksen kiihdytyksen ja kiihdytyksen hidastuksen osalta (jerk mitä ohjaa jounce ja tämä kaikki voidaan tehdä pelkällä yhteen ja vähennyslaskulla ilman sinejä ja kosineja). Se ettei nämä kiihdytysarvot ole samat lineaarisella kiihdytyksellä ja s-curve ohjauksella kokoajan ei muuta asiaa. Pitää vain ottaa huomioon milloin ne on samat.

Powered by EzPortal
SMF spam blocked by CleanTalk