Mach3 dla serwomotor closeloop

Połączenie urządzeń sterowanie

Ogólne tematy związane z maszynami CNC, maszyny o odmiennej konstrukcji czyli wszystko co nie pasuje do powyższych.
Tu możesz również przedstawić się i opisać swoją maszynę
Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 7781
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Mach3 dla serwomotor closeloop

#21

Post napisał: tuxcnc » 02 paź 2022, 12:20

No dobra, może się komuś innemu przyda...

1. Mikrokrok.
Praca napędu w zamkniętej pętli polega na porównaniu wartości zadanej położenia z wartością zmierzoną położenia i dokonaniu korekcji na podstawie obliczonego błędu.
W popularnych napędach serwokrokowych położenie mierzy się zwykle enkoderem 1000 cpr (tysiąc kresek na obwodzie tarczy pomiarowej).
Aczkolwiek przy odczycie kwadraturowym daje to 4000 rozróżnialnych pozycji, ale z uwagi na inne zjawiska występujące w napędzie, nie należy się spodziewać rzeczywistej dokładności pozycjonowania większej niż 1000 pozycji na obrót.
W amatorskich maszynach jest to więcej niż potrzeba, bo przy śrubie o skoku 10 mm daje to 0.01 mm dokładności, czyli dużo lepiej niż pozwalają budżetowe elementy i lekka konstrukcja.
W zależności od sterownika, mikrokrok może być podawany w impulsach na krok, albo w impulsach na obrót.
Silnik krokowy ma 200 pełnych kroków na obrót, a mikrokrok może być wyłącznie liczbą całkowitą, więc właściwymi ustawieniami jest 4 lub 8 (microstep) albo 800 lub 1000 (imp/rev).
Ustawienie wyższych wartości nie daje ŻADNYCH korzyści.
Wręcz przeciwnie, zupełnie niepotrzebnie zmuszamy elektronikę do pracy z częstotliwością dużo większą od potrzebnej.
Łatwo wtedy przekroczyć dopuszczalne parametry, ale przy wariackich ustawieniach to nawet dłuższe przewody mogą powodować cuda...

2. Przyspieszenie.
Zgodnie z drugą zasadą dynamiki, jeżeli na masę podziałamy siłą, to prędkość będzie się jednostajnie zmieniać.
Szybkość zmiany prędkości nazywa się przyspieszeniem i zależy od masy i siły, a jeśli masa się nie zmienia, to wyłącznie od siły. Aby nadać danej masie dwa razy większe przyspieszenie, trzeba podziałać dwa razy większą siłą.
Każdy napęd posiada ściśle określoną maksymalną siłę, więc istnieje ściśle określone maksymalne przyspieszenie przy danym napędzie i danej masie. Aby uzyskać wyższe przyspieszenie, trzeba dać mocniejszy napęd, albo zmniejszyć poruszaną masę.
Jeżeli ustawimy zbyt duże przyspieszenie, to sterowanie będzie próbowało poruszać masą szybciej niż jest to fizycznie możliwe.
W serwonapędach sprawa jest nieco bardziej skomplikowana, bo napęd ma własne ustawienia i rzeczywiste przyspieszenie może się różnić od zadanego przez sterowanie, ale tylko w granicach dopuszczalnego błędu położenia.
Dopuszczalny błąd położenia jest fabrycznie ustawiany na różnych wartościach, ale może to być nawet pełny obrót wału.
Żeby odczytać lub zmienić fabryczne ustawienia napędu potrzebny jest kabelek i program komputerowy. W chińskich produktach może być problem i z jednym i z drugim...
Czasem dostępny jest manual i tam są podane wartości domyślne czyli ustawiane fabrycznie.
Czasem nie ma żadnej dokumentacji i trzeba się domyślać...
Ogólnie z przyspieszeniem nie należy przesadzać ani w jedną, ani w drugą stronę i ustawić wartość jak najniższą, ale taką żeby rozpędzanie i hamowanie napędu nie trwało nieakceptowalnie długo.

3. Prędkość maksymalna.
W każdym silniku elektrycznym istnieje maksymalna prędkość obrotowa przy danym napięciu zasilającym, przy której moment na wale wynosi zero. Albo mówiąc inaczej, moment obrotowy napędu spada wraz z prędkością obrotową.
Przy serwokrokowcach użyteczny zakres prędkości obrotowej wynosi od 0-500 do 0-1000 obr/min.
To są wartości orientacyjne, zależą od typu napędu i oporów ruchu, ale dają pojęcie czego można się spodziewać, a czego na pewno nie.
Przy śrubie o skoku 10mm i właściwie dobranym napędzie, można się spodziewać 10 metrów na minutę, więcej raczej nie.
Z prędkością maksymalną też nie należy przesadzać, bo maszyna może długo działać prawidłowo, ale nagle zatrzymać się na byle paprochu...

4. Metodyka ustawienia maksymalnej prędkości i ustawienia.
Najszybciej ustawia się metodą potęg dwójki.
Zakładamy jakąś wartość początkową, tyle wpisujemy i sprawdzamy czy działa.
Jeśli działa to ustawiamy dwa razy więcej i sprawdzamy.
Jeśli dzieją się cuda, to odejmujemy połowę różnicy pomiędzy wartością obecną a poprzednią.
Jeśli po zmniejszeniu działa, to dodajemy połowę różnicy pomiędzy wartością obecną a poprzednią.
Przykład: 16,32,64(cuda), 48, 56(cuda), 52,54(cuda), 53.
Wynik uzyskaliśmy już po ośmiu próbach.
Oczywiście uzyskany wynik nie zawiera żadnego marginesu bezpieczeństwa i warto odjąć dziesięć czy dwadzieścia procent, żeby mieć pewność że byle co nie zakłóci pracy maszyny.
Ustawianie maszyny CNC na maksymalne wartości wcześniej czy później skończy się stratą czasu, materiału, narzędzia, lub uszkodzeniem maszyny.




Autor tematu
adam-opole
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 12
Posty: 80
Rejestracja: 28 cze 2018, 07:31
Lokalizacja: Opole

Re: Mach3 dla serwomotor closeloop

#22

Post napisał: adam-opole » 02 paź 2022, 17:02

Avalyah pisze:
02 paź 2022, 10:23
adam-opole pisze:Silniki krokowe obecnie max mogą jechać 6m/min powyżej wypadaja (brzęk i tracą kroki).
adam-opole pisze:1. Uzyskuję duże prędkości 6000mm/min

Czyli - nic się nie zmieniło?
na Arduino silniki były ustawione na 5700mm/min i 45mm/s2 przez co wolno ale jednostajnie rozpędzały się nie gubiąc krokow
adam-opole pisze:Czy kosztem dużych prędkości i przyspieszenia nie jestem w stanie zachować dokładności na krótkich podjazdach?

Skąd taki wniosek? Jak jedziesz wolniej to nic złego się nie dzieje? Może pokaż tę maszynę.
Ano właśnie przy tak dużych zrywach wolno się nie da, dotknięcie klawisza powoduje przejechanie osi o 11-13mm, stąd moje pytanie czy pomimo ustawień dużej prędkości osi i przyspieszenia mogę w opcjach mach3 zmienić rząd odległości z 10mm na np 0.1mm, tym samym na dokładne podjechanie na oczekiwane miejsce startu wrzeciona, dalej utrzymując duże prędkości przejazdu na pustych przejazdach po polu roboczym
adam-opole pisze:Czy oraz jak można aktywować te funkcję?

Jaką funkcję?
przykładowo chce ustawić oś X w miejscu 25.500 oraz Y 50.500 , wpisuje te rzędne kolejno w oknie współrzędnych w programie, uderzenie enter nie wywołuje przejazdu bramy w daje miejsce. Jak to aktywować? W openbilds chodziło to bez problemu. Mach 3 nigdy dotąd nie obsługiwałem, stąd trochę te mogę pytania pewnie kolegów z doświadczeniem denerwują.
Swoją drogą jakbyś miał kupować macha i inne graty to rozważyłbym może inne rozwiązanie, np. pikocnc. Nie odnośnie obecnego problemu, ale ogólnej wygody, bo jak wydać tysiak na macha to równie dobrze można coś lepszego sobie sprawić od razu.


Avalyah
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 2350
Rejestracja: 29 lis 2015, 00:38
Lokalizacja: Bielsko-Biała

Re: Mach3 dla serwomotor closeloop

#23

Post napisał: Avalyah » 02 paź 2022, 17:21

adam-opole pisze:Ano właśnie przy tak dużych zrywach wolno się nie da, dotknięcie klawisza powoduje przejechanie osi o 11-13mm, stąd moje pytanie czy pomimo ustawień dużej prędkości osi i przyspieszenia mogę w opcjach mach3 zmienić rząd odległości z 10mm na np 0.1mm, tym samym na dokładne podjechanie na oczekiwane miejsce startu wrzeciona, dalej utrzymując duże prędkości przejazdu na pustych przejazdach po polu roboczym

Adamie źle do tego podchodzisz. W przypadku macha Ci nie pomogę, chociaż na pewno jest jakiś tryb krokowy, że możesz sobie przejeżdżać po 0.01mm nawet, trzeba poszukać.

Natomiast jeśli Twoja frezarka zachowuje się inaczej na krótkim i długim dystansie to jest to problem, który należałoby rozwiązać, a nie obchodzić, bo w końcu się zemści. Jesteś pewien, że to nie kwestia mechaniczna? Ta brama jest przesuwna, na jednej czy dwóch śrubach? Najlepiej zrób krótki film co się dzieje, to może wtedy ktoś pomoże.


Adam Domański
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 7
Posty: 712
Rejestracja: 04 lut 2008, 20:26
Lokalizacja: Rzeszów

Re: Mach3 dla serwomotor closeloop

#24

Post napisał: Adam Domański » 02 paź 2022, 17:31

adam-opole pisze:wpisuje te rzędne kolejno w oknie współrzędnych w programie, uderzenie enter nie wywołuje przejazdu bramy w daje miejsce.

Witam w jakim oknie (zrób zrzut ekranu) to wpisujesz, bo inaczej to wróżenie z fusów. U sponsora forum są linki do filmików z konfiguracją mach3. Adam FX na swoim kanale też częściowo tłumaczy to zagadnienie.

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 7781
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Mach3 dla serwomotor closeloop

#25

Post napisał: tuxcnc » 02 paź 2022, 18:24

adam-opole pisze:
02 paź 2022, 17:02
przykładowo chce ustawić oś X w miejscu 25.500 oraz Y 50.500 , wpisuje te rzędne kolejno w oknie współrzędnych w programie, uderzenie enter nie wywołuje przejazdu bramy w daje miejsce.
Ucz się g-kodów a nie będziesz miał tak kretyńskich problemów...


kszumek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 382
Rejestracja: 04 kwie 2006, 18:08
Lokalizacja: Białystok

Re: Mach3 dla serwomotor closeloop

#26

Post napisał: kszumek » 02 paź 2022, 18:31

Witam
Wydaje mi się że problem autora leży w dostrojeniu silników i ustawieniach Macha
na moje oko masz poustawiane za duże prędkości i przyśpieszenia w machu ,
(zakładka config i motor tuning)
następnie da się ustawić prędkość roboczą i joga oraz tryb pracy krokowy
np:posuw o 1 mm jeśli chcesz,
pod tab-em masz ustawiania prędkości joga w % prędkości maksymalnej ustawionej w motor tuning)
masz zakładkę mdi i tam możesz wpisać swój ruch np G1 x50 y100 f100 pojedzie ci na zadana pozycje z prędkością 100
w głównym oknie jak wpisujesz wartości w okna xyz to zmieniasz tylko w ten sposób offset roboczy
pozdrawiam

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 7781
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Mach3 dla serwomotor closeloop

#27

Post napisał: tuxcnc » 02 paź 2022, 18:35

kszumek pisze:
02 paź 2022, 18:31
masz zakładkę mdi i tam możesz wpisać swój ruch np G1 x50 y100 f100 pojedzie ci na zadana pozycje z prędkością 100
Zasadniczo G90 G1...
Ale nie zmienia to faktu, że zadziała zawsze i wszędzie.


Autor tematu
adam-opole
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 12
Posty: 80
Rejestracja: 28 cze 2018, 07:31
Lokalizacja: Opole

Re: Mach3 dla serwomotor closeloop

#28

Post napisał: adam-opole » 02 paź 2022, 18:54

W sprawie maszyny: wszystkie osie na walkach podpartych 20mm, śruby kulowe 1610.
Obrazek

W kwestii okna gdzie chce wpisywać koordynaty to chodzi o główne okno :
Obrazek

Ale słuszna i bardzo pomocna podpowiedź kszumek że skrótem TAB. Jutro to spróbuję.

A co do zmian, to z pewnością zastosuje sugestie kolegi Tuxcnc w sprawie zmiany podziału mikrokroków na sterownikach z 6400 na 1000, jak również obnize trochę prędkości jazdy i przyspieszenie.

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 7781
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Mach3 dla serwomotor closeloop

#29

Post napisał: tuxcnc » 02 paź 2022, 18:59

adam-opole pisze:
17 wrz 2022, 10:52
1x sterownik HBS57
1x silnik 57HBS30
Jakim napięciem to zasilasz?


Autor tematu
adam-opole
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 12
Posty: 80
Rejestracja: 28 cze 2018, 07:31
Lokalizacja: Opole

Re: Mach3 dla serwomotor closeloop

#30

Post napisał: adam-opole » 02 paź 2022, 19:26

tuxcnc pisze:
02 paź 2022, 18:59
adam-opole pisze:
17 wrz 2022, 10:52
1x sterownik HBS57
1x silnik 57HBS30
Jakim napięciem to zasilasz?
Zasilanie:
1szt zasilacz 48V 480W na 2 silniki krokowe
1szt zasilacz 48V 480W na 1 silnik zamknięta pętla

Układ sterowany:
2x sterownik Dm556
1x sterownik HBS57

2x silnik krokowy 2.1Nm na osi X i Z
1x silnik zamknięta pętla 57HBS30 na osi Y

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „NASZE AMATORSKIE MASZYNY CNC”