Strona 1 z 3

mnożnik kroków

: 17 kwie 2007, 19:26
autor: wood carver
są dostępne na rynku jakieś mnożniki kroków, będące osobnym modułem, który można by zastosowac wraz ze sterownikiem krokówki?

: 17 kwie 2007, 19:34
autor: rockykon
a jak dokładniej mialo by to działac ?

: 17 kwie 2007, 19:40
autor: Piotrjub
Gecko ma mnożnik kroku wbudowany w draiwerach.
Nigdzie nie spotkałem takiego układu osobno a ponieważ draiwery Gecko a dokładnie
właśnie mnożnik kroku w nich działał wadliwie, zrobiony mam własny mnożnik ale zintegrowany z całą płytą.

: 17 kwie 2007, 19:43
autor: markcomp77
mam coś takiego we wczesnej fazie oprogramowania...
sprzęt - to jednoukładowiec, na którego wejścia wpuszczamy sygnały STEP z płyty głównej... który po "przemnożeniu" ma pojawić się na wyjściu podłączonym do STEP sterownika

"przemnożenie" to zamiana jednego kroku wejściowego na N kroków na wyjściu

po co?

ano w celu wykorzystania możliwości sterowników takich jak M542 (popularny z list społecznych) i M880 (trochę mocniejszy)

każdy z tych sterowników ma podział krokowy możliwy do ustawienia 1/128 (1/256 m880)

a ze względu na sterownie z PC... i jego ograniczenia - szybkość wysyłanych impulsów step jest ograniczona...

np. dla mach2/3 (darmowy) do 25KHz
mach2/3(zapłacony) - 45KHz

to oznacza konieczność ograniczenia podziału krokowego do jedynie ok. 1/10 lub 1/20

dlatego mnożnik kroku np. N=12 => pozwoliłby zmienić nastawę 1/10 na 1/120
itp itd - a to poprawi płynność pracy silnika... i pozwoli stosować nasze ulubione programy sterujące: mach, turbocnc, EMC2(linux), kcam...

: 17 kwie 2007, 20:01
autor: rockykon
hmm ale chyba zeby to zrobić i płynnie działało musisz znać następny krok..

czy źle kombinuje ?

: 17 kwie 2007, 20:08
autor: wood carver
..włąsnie o M880 chodzi...
troche mi żal, że nie wykorzystuje sterownika w pełni.
faktem jest, że wraz z zwiększajacym podziałęm krokowym, wzrasta toleranja błędu, która przy rozdielczosci 1/128 już jest spora.

jednak ja do tej pory pracuje na 1/8 kroku, silnik zasilany prawie 70V, 6A, 8,5Nm...no i M880 :)
wkrecaja się w fascynujące predkosci...jednak na tym koniec...
jak zwiększe rozdzielczosc do 1/16...to juz nie moment, ale PC nie daje rady...bo co to jest 45 khz, kiedy można by pracowac prynajmniej na na 1/64

: 17 kwie 2007, 20:14
autor: markcomp77
rockykon pisze:czy źle kombinuje ?
algorytm nie jest bardzo prosty... i niema jednej jedynie słusznej drogi....
1. w najprostrzej wersji - program może robić N impulsów o równym interwale czasowym...

natomiast algorytm wypełniający N-kroczkami powinien działać jak pętla synchronizująca...

czyli próbujemy wypełniać przez aproksymację na podstawie danych z kroku poprzedniego...
a w przypadku błędu - dokonujemy korekty w kroku następnym
itd...

w oczywisty sposób widać, że jest gdzie popełnić błąd
jednak nawet w najprostrzej wersji - czyli w algorytmie przypominającym linisteper... warto jest robić nawet coś w rodzaju rampy między krokami

to jest okazja aby po dywagować na temat algorytmu mnożenia...
zapraszam do dyskusji

: 17 kwie 2007, 20:31
autor: jarekk
Ja robiłem mnożnik bezpośrednio w sterowniku - wtedy po prostu po osiągnięciu stabilizacji prądu generowałem wewnętrznie kolejne kroki.

W mojej ostatniej wersji zrezygnowałem z kroków poniżej 1/8 (odpadł przetwornik C/A, 1/8 robiona jest na potencjometrach)

: 17 kwie 2007, 20:57
autor: Leoo
Ciekawa sprawa.
Serwo Gecko faktycznie myli się mnożąc krok ale analizuąc mnożnik kroku jako moduł całkowicie zewnętrzny nie ma innej możliwości - musi się mylić.

Teraz po kolei. Powiedzmy, że silnik krokowy kręci się szybko i jednostajnie. Wszystko jest ok. Zaczynamy zwalniać. Nie ma możliwości wygenerować właściwej liczby kroków, gdyż poprzedni interwał był dłuższy a to na jego podstawie generujemy mikrokrok (regulacja wstecz). W takim wypadku procesor choćby 5GHz popełni błąd. Można usiłować korygować mikrokrok w następnym interwale, o ile charakterystyka hamowania będzie prostoliniowa ale nie ma się co oszukiwać, dobry sterownik posiada morfing - to jest koniec historii sprawnego mnożnika do krokowców. Pomijam fakt, że silnik krokowy może nie otrzymać impulsu STEP w czasie rotacji. Co się wówczas stanie - trudno przewidzieć ale na pewno będzie słychać.

Pisałem to już kilka razy ale pozwolę sobie powtórzyć: mnożnik kroku zmniejsza aktualną rozdzielczość silnika krokowego lub enkodera serwa.

Kolega Piotrjub posiada wbudowany mnożnik kroków ale z tego co wiem to "siedzi" on w serwie BLDC, to jest kompletnie inna maszyna!

Oczywiście mogę się mylić.

: 17 kwie 2007, 21:02
autor: markcomp77
jest jeszcze taka możliwość algorytmu:

dane sterowane (STEP/DIR ze wszystkich osi) idą do bufora
tam są analizowane - i następuje odpowiednia aproksymacja...

i po jakimś czasie trafia to do sterowników juz przetworzone