Sprytne sterownie silnika krokowego

Jul 27, 2005 11 Replies

Witam!



Szyje sobie sterownik do krokowca. Żadna filozofia, jednak naszły mnie pewnę wątpliwości, na razie teoretyczne, ale .... kto wie:



Zakładam, że sterownik realizuje polecenie: przekręć silnik o n kroków i nie przekraczaj prękości v.



Zakładam, że znam moment bezwładności masy obracanej przez silnik.



No i teraz tak mnie naszło: zakładam, że chcę dotrzeć z pozycji p1 do pozycji p2. Nie mogę od razu wejśc na maksymalną prędkośc v. Może się okazać, że zgubie kroki. Powinienem więc powoli rozpędzać silnik i powoli hamować.



Jednak co, jesli mamy sporą masę do przekrecenia - silnik przy zwiększanej prędkości słabnie. Sugerowało by to, ze przyśpieszenie powinno maleć wraz ze zwiększaniem się prędkości.



Przypuszczam, że znając moment obrotowy silnika przy danej prędkości oraz moment bezwładności masy jestem w stanie bezpiecznie wyliczyć o ile można w danym momencie przyśpieszyć/wyhamować.



Pytanie 1: Czy tak to się robi w fabrycznych sterownikach ? Mam na myśli malejące przyśpieszenie wraz z rosnącą prędkością.



Pytanie 2: Czy istnieje gdzies opis algorytmu przyśpieszania/hamowania silnika krokowego z dużą masą ? Chodziło by mi o kształt charakterystyki prędkości w czasie/przyśpieszenia w czasie. Być może da się to jakoś aproksymować.



Na razie zrobiłem to tak, że przyśpieszenie jest stałe do osiągnięcia maksymalnej prędkości. Jednak obawiam się że przy większych masach na wirniku może zacząć gubić kroki pod koniec procesu przyśpieszania.


Poszukaj takiej ksiazki: " Pieñkos J., Moszczyñski S., Pluta A.: Uk³ady mikroprocesorowe 8080/8085 w modu³owych systemach sterowania. WKi£, Warszawa

1988", tam bylo kilka fajnych wskazowek dotyczacych sterowania silnikami krokowymi - na praktycznych przykladach - ksiazka dobrze opisywala rodzine 8080 na przykladzie polskich urzadzen do produkcji elementow polprzewodnikowych...

Chyba najlepiej bedzie jak pojdziesz na strone firm robiacych scalone kontrolery silnikow krokowych - mysle ze podziela sie choc czesciowo know-how zacznij moze na poczatek od

formatting link

Moze mikrokroki i lagodne rozpedzanie - silnik nie traci wtedy zbyt duzo z momentu a plynnie wejdzie na zadana predkosc.

U¿ytkownik "Sebastian Bialy" snipped-for-privacy@poczta.onet.pl> napisa³ w wiadomo¶ci news:dc91ls$hb9$ snipped-for-privacy@nemesis.news.tpi.pl...

uwazam, ze do krecenia znaczna masa, przy ryzyku gubienia krokow, lepszy bedzie silnik DC z przekladnia. Do tego doloz enkoder jakis dokladny i LM628/629, temat gubienia krokow, myslenia nad przyspieszeniami i masami odpada, mozna sie zajac czyms bardziej produktywnym. Sprawdzone, dziala, sluze schematem i procedurami w C (arrmii maupa tlen kropka pl)

pozdr

@

Oczywiście, dlatego założyłem że to problem czysto teoretyczny :) Po prostu zastanawiam się jak to można zrobić... ale nie koniecznie zrobie.

Co do DC+enkoder mam tak teraz :P

Będzie problem, ale pomęczę okoliczną bibliotekę.

Na razie rozmyślam sobie teoretycznie. Może coś mi się z tego wymyśli więc problem nie jest naglący.

Hmmm ale tak się zastanawiam co by miały mikrokroki do mojego problemu: ja nie potrzebuje zwiększać rozdzielczości sterownika, tylko znaleźć metodę nie gubienia kroków przy rozpędzaniu masy. W zasadzie powyżej pewnych predkości mikrokroki nie będą wyczuwalne.

Olaæ mikrokroki. Przy pozycjach przewidzianych na mikrokroki nie wszystkie uzwojenia pracuj± i wtedy dopiero siê traci na mocy. Zasadniczo mo¿na zwiêkszyæ pr±d, ale przecie¿ silnik ma swoje granice tak¿e mikrokroki to chyba nie najlepsze rozwi±zanie.

To chyba zale¿y, czy masz tylko masê do obracania i musisz j± rozpêdziæ, czy masz sta³e obci±¿enie które dzia³a na wa³eczek z jak±¶ tam si³± jak tarcie. Je¶li tylko masê do rozpêdzenia, to w zasadze im bardzej zbli¿asz siê do zadanej prêdko¶ci, tym mniej energii Ci trzeba w³o¿yæ w rozpêdzanie. Wiêc nie wydaje siê, ¿e trzeba martwiæ siê o pzyspieszenie o ile jest sta³e a nie np. wyk³adnicze.

Widzia³em rozwi±zania, gdzie chc±c szybko rozpêdziæ silnik po prostu dajesz wiêkszy pr±d za to przez krótszy czas rozpêdzania.

Ale moment obr., energia w³o¿ona w rozkrêcenie masy mo¿e to kompensowaæ.

Sprawa nie jest trywialna... a w sterowaniu mikrokorokowym pozwole sobie zacytowac kawalek z drugiego linka: " Microstepping serves two purposes. First, it allows a stepping motor to stop and hold a position between the full or half-step positions, second, it largely eliminates the jerky character of low speed stepping motor operation and the noise at intermediate speeds, and third, it reduces problems with resonance." A wiec tak naprawde mikrokrok moze zwiekszyc rozdzielczosc silnika ale co wazne a czasem nawet wazniejsze pozwala na zlikwidowanie badz zminimalizowanie rezonansow - to wlasnie krytyczne jest z punktu widzenia gubienia krokow...

formatting link

Wydaje mi siê, ¿e tutaj chodzi o rezonanse przy du¿ych prêdko¶ciach, nie koniecznie przy du¿ym obci±¿eniu silnika. Po prostu je¶li chcesz wycisn±æ wiêksz± prêdko¶æ przy wysokich czêstotliwo¶ciach warto te¿ przechodziæ przez mikrokroki, ale nie bardzo pewien jestem, jak to siê ma do du¿ego obci±¿enia silnika np. przez tarcie. W sumie faktycznie. Je¶li wirnik bêdzie "przepychany" przez wiêcej pozycji, powinno to te¿ poniek±d mieæ lepszy wp³yw na mo¿no¶æ obci±enia go solidnie, tylko ¿e trzeba te¿ wtedy my¶leæ o czasie roz³adowywania uzwojeñ itp. (je¶li mowa o du¿ych prêdko¶ciach).

IMO caly czas obracamy sie wlasnie w polu kiedy silnik zachowuje sie jak silnik a nie przestaje reagowac na pobudzenie bo jest ono juz dla niego zbyt szybkie... , w praktyce moze sie okazac ze przy oczekiwanej predkosci silnik krokowy sie zupelnie nie sprawdzi, bo nawet przy sterowaniu mikrokrokowym nalezy pamietac ze jednak pelen obrot silnika sklada sie z ilus tam dyskretnych krokow... i absolutnie nie jest on w stanie konkurowac z normalnymi silnikami na tym polu... (w rozumieniu wiekszej predkosci)

Tylko ¿e to zale¿y tak¿e od obci±¿enia go (si³a, której przeciwdzia³a). Co innego bezpieczna prêdko¶æ max. nieobci±¿onego, a co innego bezpieczna prêdko¶æ max. przeciwdzia³aj±cego du¿ej sile. Trzeba te¿ pamiêtaæ, ¿e silnik dzia³a jak silnik póki ta si³a nie jest wiêksza, ni¿ dopuszczalna katalogowa. My dyskutujemy raczej o zachowaniach granicznych silnika krokowego teraz, prawda?

Pewnie i nie, choæ teraz jest ca³a masa ró¿nych rozwi±zañ dla silników krokowych, a silniki krokowe te¿ prze¿y³y ewolucjê. Zak³adam, ¿e skoro dyskutujemy o tym problemie, to kolega ma jaki¶ powód, by to by³ silnik krokowy - choæby powodem mia³aby byæ sama dyskusja nt. bo jest ... ciekawa(?)

no i w tym wlasnie klopot - hipotetycznie granicznych :D

Ciekawa ale na tym etapie mocno gdybajaca ;)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required