Řízení vřetena přes PWM a spínání výstupů v EMC2

Odpovědět
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

17. 2. 2009, 1:40

Chvili jsem tu nebyl a vidim, ze jste toho probrali haba-kuk :D
OK, ja to teda zkusim sam a dam vedet.
Jdu na to ;)
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

17. 2. 2009, 2:18

No tam mam ted prave udelany servotester a ridim to potenciometrem. A prave resim jak prevezt PWM na výstup jako je ze servotesteru.
Martin
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

17. 2. 2009, 3:53

Tak uz mi to chodi primo, ale lepsi asi bude kdyz mi posles tvuj cely adresar (config), ja ti to do nej pripisu. Zazipuj ho a dej mi ho do mailu nebo ho soupni sem, treba se ostatni pridaji ;)
Naladil jsem to jenom baj-ocko, ale chodi to jakoz-takoz. Pokud by to nejak zlobilo, pak muzes pouzit moje zapojeni integracniho clenu a pripojit to jako nahradu za ten potak na tom servo-testeru.
No vsak uvidime co ti to bude delat s regulatorem. Ja jsem to ladil na servu, ale vysledek by mel byt stejny. (nechtelo se mi bastlit narychlo regl, taky je to bezpecnejsi to vyzkouset na nejakem levnem servu)
Problem trochu je, ze PWM-ko pro modelarske zarizeni ma rozsah pulzu 1-2ms (-150% - +150%) a zbytek nelze vyuzit, takze je to pak zbytecne rozkmitane v tak uzkem rozsahu (scale).
No vsak uvidis, ale maka to a docela i jemne na tu bidu. Dopisu ti tam i sibr na obrazovku, abys videl kolik od toho chces. Naladil jsem to od 10-30tis. Feedback kolik to toci v realu, tam zatim nebude na to mam ted malo casu.
Tak posilej...
:)
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

19. 2. 2009, 8:13

Tak tady je muj confign 8)
Přílohy
configs.zip
(49.28 KiB) Staženo 316 x
Martin
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

20. 2. 2009, 5:27

Tady ho mas s upravou... Rozbal to do configs jako novy adr. a nastartuj EMC s nim. Signal pro regl mas na pinu 16 pokud by hlasil regulator signal pro nastaveni, pravdepodobne je signal naopak, tak umaz tento radek, staci pred neho dat # takto:
#setp parport.0.pin-16-out-invert 1
radky
setp pwmgen.0.min-dc 0.036
setp pwmgen.0.max-dc 0.1
nastavuji rozsah signalu PWM, nejlepe by to bylo nakalibrovat na osciloskopu pro min.1 pro max.2ms Pokud nemas osciloskop pripoj k svemu servo-testeru nejake stare servo na paku dej spejli oznac si rozsah vychylek a serid hodnoty min-dc a max-dc tak, aby jsi mel stejne vychylky jako u servo testeru (a taky smer)
EMC bude pohybovat servem kdyz v manual rezimu zapnes vreteno F9 a F12 zvysujes otacky a F11 snizujes. (bez F9 PWM-ko nejede)
Pak teprve pripoj regl k LPT. Pokud ma tvuj regl BEC, NEPRIPOJUJ nikam +5V s regulatoru!!! pouze zem a signal na LPT pin 16
Do S10000 se ti nebude nic dit a nad S30000 uz taky ne, je to nutne vyladit primo namiste, snad si s tim nejak poradis, doufam, ze prirustky otacek budou dostatecne male, kdyz tak je jeste zmensime.
Pokud necemu nerozumis radeji se zeptej. Pouzij radeji stare vyrazene servo, vychylky pri ladeni jdou casto za rozsah mechaniky serva. Regulator pripoj az nakonec, az servo bude behat presne kam chces. Lehke chveni serva je zpusobene nestabilitou signalu PWM v tak malem rozsahu. Pokud by to reglu vadilo, prejdeme na plan B a do zapojeni vlozime tvuj servo tester, ale to az sklame tento primy pristup.
Ozvi se a pripadne doladime vtipnou konverzaci :)
Přílohy
martin_pwm.rar
(40.87 KiB) Staženo 314 x
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

21. 2. 2009, 9:32

Takze prvni vysledky. Po chvilce dratovani a prepojovani uz vse funguje(zatim jen na ruku)

Pri nastaveni otacek v EMC 15 101 ot/min skutecnost 10 101 ot/min
Pri nastaveni otacek v EMC 26 000 ot/min skutecnost 36 000 ot/min

tak ted musim jeste doladit rozsah regulace. Jinak to chodi uplne super. Jemnost kroku mnohem lepsi nez pres servotester. Jen zustavaji k vyreseni dve veci.

Pokud zustane regl v rezimu konstatnich otacek musi nejprve byt posilany nejake impulsy pro rizeni a pak minimalne pro hodnotu 10 000 ot/min jinak se regl nerozbehne.
A nebo regulaci zavest pres PID v EMC a regl provozovat v normalnim rezimu.
Martin
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

21. 2. 2009, 10:33

krizma píše: Pokud zustane regl v rezimu konstatnich otacek musi nejprve byt posilany nejake impulsy pro rizeni a pak minimalne pro hodnotu 10 000 ot/min jinak se regl nerozbehne.
Tak slava :) Na to PID bych moc nespolehal vetsina lidi v USA PID se servy provozuje s podporou HW karet MESA m5i20 nebo 7i43 s FPGA poli.
Nerozumim presne tomu nahore vyselektovanemu textu. Co bys teda potreboval zmenit pro idealni rozbeh reglu. Kdyz zadas do MDI> M3S10000 tak to musi makat preci hned, pokud nemas nejaky debilni regl, ktery se pokazde inicializuje. Ja pouzivam na heli nove Spin44 ty nemaji po zapnuti inicializaci a makaji hned. Pokud by ti ten prikaz vyhovoval, tak ti pro rucni roztoceni muzu dopsat dve tlacitka na tu bocni listu pro manual start / stop vretene.
Ty rozdilne otacky pujdou urcite jeste priblizit vhodnou zmenou hodnot.
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

21. 2. 2009, 11:17

No tak rozbeh reglu je vyresen. S tim neni problem. Pustil jsem to do automatu a pohodicka...pekne si zapipa a bezi.( SPIN22) :D
Jen se me nejak nedari posunout ten rozsah aby to trochu odpovidalo.

setp pwmgen.0.min-dc 0.036
setp pwmgen.0.max-dc 0.1

zkousel jsem menit tyto hodnoty a zadna velka zmena. Nebo je to spatne?
Martin
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

21. 2. 2009, 4:19

Musis zmenit tento radek,
setp pwmgen.0.scale 300000
ale ne moc, bude se ti totiz s tim menit i jemnost krokovani. (vetsi cislo vetsi jemnost a naopak)
spis tu odchylku nejak dostanes lepe doprostred
Dale muzes zmenit rozsah zobrazovatka v souboru .xml
Neco by slo jeste novou inicializaci reglu na nove hodnoty min-dc a max-dc. Chce to trochu laborovat, treba na neco noveho jeste prijdes :) Musel bych to videt v realu, na slepo je to tezke to odhadnout, ale i tak jsem se celkem trefil :) Treba se nekdy uvidime az pojedu Slavkovem, tak se ti na to mrknu ;)
A jinak to teda bude asi pouzitelne ne?
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

21. 2. 2009, 5:33

Jasne ze je to pouzitelne. Jen ted laboruji s tim aby zacal regl tocit uz kolem 10 000. Vrchni otacky jsou ok. Ale zatim se me s tim to dostat nejak do mezi moc nedari. Mohl by jsi ty jednotlive parametry popsat pro " hloupe"? :D
Jj urcite se stav. Kamos te zna...

Ja tam mam otackomer tak to merim docela presne.
Martin
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

21. 2. 2009, 10:08

EMC poskytuje HAL komponentu pulz-generator, ktera se da nastavit do 3 typu a da se jich spustit v RT i vice nez jeden. Kazda komponenta vsak zatezuje hardware, takze to ma sve limity. Uzira zbytkovy(jeste nevyuzity) cas v preruseni.
Volne nastavitelny kmitocet je v tomto nasem pripade nastaven na 50Hz, coz je kmitocet pouzivany beznou modelarskou elektronikou(special serva maji jine opakovaci kmitocty), sirka impulsu pro rizeni pohybu serv(nebo rozsah regulatoru) je 1-2ms. Protoze vsak EMC ridi impuls v celem rozsahu od sirky 0ms(0V) do 200ms coz je max. time pro navolenych 50Hz (plnych 5V) muselo se zde nastavit entitou min-dc a max-dc omezeni pulsu do dolni oblasti celeho rozsahu ktery je v plnem rozsahu 0 - 1. Z toho vyplynulo 0.036 - 0.1. Hodnota scale pak rozdeluje celkovy rozsah pwm-ka na pocet skoku. Abychom dosahli dostatecne jemnosti nastavil jsem hodnotu na 300000, protoze vyuzita je pouze desetina to je 30000. Nevedel jsem kolik ti to toci na maximum. Jeto dane velikosti napajeciho napeti. Cim vic voltu tim vic max. otacek. Jestli ti to toci 36000, zkusil bych nastavit scale na 460000 hodnota 0.1 coz jsou 2ms pak bude pozadovanych 46000. Teoreticke minimum by melo zacinat na 0.05 coz je 1ms a to by melo byt 0 otacek, protoze ale tyto vysokoobratkove stridaky maji vysoke roztaceci minimum je cely rozsah zkresleny a mirne nelinearni. Regulatory se zapnutou auto-regulaci otacek maji jeste dalsi zkresleni zpusobene samotnym alegoritmem regulace, takze nakonec se musi trochu laborovat. Indikacni ukazatel na panelu by pak mel byt nastaveny na stejny rozsah jako je real, zbytek uz je na stesti a na Murphym :)
No myslim, kdyz to po sobe ctu, ze moc srozumitelne jsem to nevysvetlil. :D
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

22. 2. 2009, 7:14

Tak jsem trochu pocital a zkus tam nahazet toto, melo by to pak uz sedet.

setp pwmgen.0.scale 714000
setp pwmgen.0.min-dc 0.03619
setp pwmgen.0.max-dc 0.1
setp pwmgen.0.offset 0.03619

... a napis zpet vysledky, muzeme udelat jeste jednu dodatecnou korekci.
Hodnotu min-dc muzeme pak posunout az na min. otacky kdy se vreteno poprve pohne, aby hned prvni F11 reagovalo zvysenim. S timto setupem bude ladeni jeste jemnejsi.

A do panelu napis toto, aby sibr nesel za roh. Pokud ti to toci jeste vic tak tam dej klidne 50000

<min_>10000</min_>
<max_>40000</max_>
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

22. 2. 2009, 7:38

No ta jsem to snad pochopil. Dal jsem to do grafiky. :D
[/url]
Přílohy
PWM.jpg
Martin
Pupik
Příspěvky: 248
Registrován: 7. 12. 2008, 6:09
Bydliště: Ostrava
Kontaktovat uživatele:

22. 2. 2009, 7:47

hezka prace ;) ,tak jeste ty moje nove hodnoty nahaz rychle do masiny jestli se to zmenilo k lepsimu :)
krizma
Příspěvky: 172
Registrován: 7. 1. 2008, 7:12
Bydliště: Brno
Kontaktovat uživatele:

22. 2. 2009, 9:52

Tak uz je to mnohem lepsi.Krok je uplne super. Vretono jsem nastavil tak ze regl ma nejnizsi otacky 11 000 a nejvissi 45000. Takhle to chodi dobre. Vzhledem k parametrum motoru to nema cenu cpat nize. V teto oblasti funguje regulace/síla vřetena optimalne.( mel jsem trosku problem se SPINem...nekolikrat se sanm nastavil na tovarni hodnoty) Vreteno se ted roztaci cca kdyz je v EMC zobrazeno 6800 ot/min. Bohuzel otacky vzhledem ke konstatnimu rizeni trosku behaji podle toho jak si to nacte regl. V techto radech tisicu je to asi jedno a zanedbatelne. Rizeni je nelinearni. V dolni oblasti je to +- 1000 nahore to bezi cca 3000 rozdil mezi skutecnosti a pozadovanou rychlosti. :D
Martin
Odpovědět

Zpět na „LinuxCNC - drive pod nazvem EMC2“