HobbyCNC fórum
FTP tárhely: http://cnctar.hobbycnc.hu v0.9.6 Régi HobbyCNC oldal: http://archiv.hobbycnc.hu

Új regisztráció / Átregisztráció a régi fórumról
    
   


DC szervó motoros vezérlés

Step/dir vezérlő programmal...

 

Időrend:
Oldal 266 / 266 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   262  263  264  265  266  

  Fórum főoldal  |  A lap aljára

Varsányi Péter | 11584    2007-01-20 18:12:00 [14]

Tényleg bonyolult...
A látja hogy egy kicsit kell mennie akkor nem szerencsés ha full gázzal teszi ezt?...
De biztos gyártanak olyn IC-ket amiben minden benne van...?

Előzmény: Amatőr, 2007-01-20 17:53:00 [7]


Törölt felhasználó    2007-01-20 18:11:00 [13]

Nos a válaszok:
A 100KHz-et csak példaként írtam, ez attól függ, milyen gyors a szervo elektronikád,
és digitális vagy analóg. Az analógnál nincs probléma, a legrosszabb is 1 Mhz fölött
szanbályzási sebességgel dolgozik. A digitális
az más világ, ott adott esetben 100 Khz is probléma lehet, attól függ mekkora a procid
teljesítménye is miket csinál. Ne felejtsd el,
integrálni, deriválni, osztani, szorozni, összadani, kivonni kell ilyen ütemben.
A nagy sebesség igény pedig már az előzőekből
kiderült. Egy átlagos 1000-es encodernél már
100 kHz -el is zúdulhatnak az inkremuntumok,
azaz már éppen határeset. Tehát minél gyorsabb
a jelfeldolgozás, egy teljes döntési ciklus
kivitelezése annál minőségibb és biztosabb a
szervó. Ezért általában egy PIC-el alig lehet
ezt a sok feladatot ilyen sebességgel
megoldani, valahol ott már kompromisszimukat
kell kötni.

Túllendülést úgy kell érteni, hogy ez max., 1-5
inkrementum lehet, és csak gyorsmenetben.
Munkaelőtoláskor szigorúan max. +- 0.5-1, erről
alapvetően a perecíz integrátor szabályzás
gondoskodik, és nullához közeli értékre
beszorítja a hibát.
Abban pedig tévedésben vagy, hogy egy léptető motor nem lendül túl, hiszen tömege van a
rotornak, vedd elő a mikronos mérőórádat, és mérd ki a stepközeli rezonanciákat, ha
kételkedsz.

Előzmény: Varsányi Péter, 2007-01-20 17:36:00 [3]


n/a (inaktív)    2007-01-20 18:08:00 [12]

Pontosan! Ez (is) a dolga a PID-nek, hogy mindenféle mathematikával igyekezzen a kívánt pozíciót megtartani és ilyenkor extra gyorsítással igyekszik a motort felpörgetni. A motor szabályzása PWM-el történik (nálam), ami azt jelenti, hogy a PWM kitöltési tényezőjével állítgatja a motor fordulatszámát (gerjesztését). A PID algoritmus ezt piszkálgatja (és a híd gerjesztési irányait is)!

Előzmény: Amatőr, 2007-01-20 18:05:00 [11]


Amatőr | 2184    2007-01-20 18:05:00 [11]

Köszönöm, ez egy gyertyaláng nekem a sötétben.
Tehát folyamatosan, a motor mozgása közben is mérni kell hogy mekkora a hibajel, és ennek függvényében kell piszkálni a motort. Mi történik ha szoftveresen nagyobb gyorsítást adok mint amennyit a motor/mechanika tud? Jó nagy lesz a hibajel és ezért nagyobb áramokat vagy nagyobb kitöltési tényezőjű PWM-t küld a vezérlő a motorra?

Előzmény: n/a (inaktív), 2007-01-20 17:56:00 [8]


n/a (inaktív)    2007-01-20 18:01:00 [10]

A szoftveres gyorsítás és lassítás nagyon sokat segít a PID-nek, de a servo pont azért jó, hogy brutálisabban lehet vele bánni, mint a léptetőmotorokkal.

Amatőr | 2184    2007-01-20 17:58:00 [9]

Ezt adta a Gugli elsőre a "pid algorithm" kérdésre, itt a hibajel képzése és kezelése volna látható.

Előzmény: Varsányi Péter, 2007-01-20 17:44:00 [5]


n/a (inaktív)    2007-01-20 17:56:00 [8]

igen, ez a PID dolga!

Előzmény: Amatőr, 2007-01-20 17:53:00 [7]


Amatőr | 2184    2007-01-20 17:53:00 [7]

A szoftveresen a motorokra megadott gyorsítás, sebesség, lassítás egy dolog. Kell itt lennie a vezérlőben is valami trükknek hogy hogyan kezeli le a motor pillanatnyi pozíciója és az elérni kívánt közti különbséget/hibajelet.

Hozzáértők most evezzetek más oldalakra, két biciklista éppen arról tárgyal mire való egy Harley Davidson!

Előzmény: Varsányi Péter, 2007-01-20 17:44:00 [5]


n/a (inaktív)    2007-01-20 17:52:00 [6]

A Te szervódnál az eltérést (deviation-t) tudod valós időben mérni? Én erre kidolgoztam egy remek módszert, amivel valós időben is és rekorder formában is tudom mérni (PC-n keresztül), és lineáris P-taggal és időben lineáris I-taggal nem tudom nagy fordulaton 30 Step alá vinni az alapjelet. Mivel a motor látszólag állandó fordulaton is lengedezik, a 0-hoz közelítés fokozása rendkívül hajlamossá teszi lengésre a motort! És akkor még nem is beszéltünk a mechanika esetleges ütéséből származó lengések plusz hatásáról!

Előzmény: Törölt felhasználó, 2007-01-20 17:30:00 [2]


Varsányi Péter | 11584    2007-01-20 17:44:00 [5]

Ez alapvető szerintem egy szervó hajtásnál, hogy gyorsítani és lassítani is tudjon...
De szerintem ezt a szoftver teszi meg ahogy a lépetető motorral is.
Ha léptető motorod van akkor a túllengés nem is probláma... mert nincs mit csinálni... úgy szereted ahogy van...mert nem megy vissza...

Előzmény: Amatőr, 2007-01-20 17:37:00 [4]


Amatőr | 2184    2007-01-20 17:37:00 [4]

Ez a túllendülés a szoftver által meghatározott pozíción nem éppen kellemes dolog pl. egy gravírozás közben. Itt jön képbe a PIC vagy AVR által tárolt algoritmus hogy a közeledő pozíció előtt lefékezze a motort?

Előzmény: Törölt felhasználó, 2007-01-20 17:30:00 [2]


Varsányi Péter | 11584    2007-01-20 17:36:00 [3]

Tökéletes. köszi.
Csak egy kérdés:
"A szervo vezérlő állandóan (minimum 100 kHz-es
frekivel) azt kérdezi a számítógéptől..."

Ez a 100 Khz hol kérdezi aszámítógépet, hol megy bele? És miért ilyen szaporán... miért nem csak akkor csinál valamit amikor a step jel érkezik.
A többi mind világos...

Előzmény: Törölt felhasználó, 2007-01-20 17:30:00 [2]


Törölt felhasználó    2007-01-20 17:30:00 [2]

Nos akkor játékosan, egyszerűen próbálok
válaszolni.
A szervo vezérlő állandóan (minimum 100 kHz-es
frekivel) azt kérdezi a számítógéptől:
elmozduljak az adott pozícióba, amit adsz nekem?
Egyszercsak jön egy Step jel.
Erre észbe kap a vezérlő, és addig pofozgatja
impulzusokkal a szerencsétlen szervomotort, ameddig annak enkódere azt nem mondja: elég, a motor teljesítette a pozíció uatsítást.
Ha netán túlbuzgó lett volna a motor, és
túllendül, akkor a szervo ellentétes taslikkal
megint intézkedik, azaz állandóan egy adott
pozícióba (ezt nevezik alapjelnek) tekeri a
motort.
És ez így megy minadaddig, ameddig a főkacsoló
tápfeszt ad a rendszernek, azaz állandó
egyensúly fenntartására törekszik.
Ilyen egyszerű.:))

Előzmény: Varsányi Péter, 2007-01-20 16:58:00 [1]


Varsányi Péter | 11584    2007-01-20 16:58:00 [1]

Itt kellene elkezdeni...

Van egy step jel az LPT porton...
Ez egy lépés a léptetőmotornál (maradjunk egyszerűség kedvéért egész lépésesben...)
Hogyan fordul 1,8 fokot a DC motor...?


  Fórum főoldal  |  A lap tetejére

Időrend:
Oldal 266 / 266 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   262  263  264  265  266  


 ◊