Stany nieustalone w pracy sterowników mikrokrokowych - pyt.

Rozmowy na temat układów elektronicznych sterowania obrabiarek CNC

Autor tematu
mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 11
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

Stany nieustalone w pracy sterowników mikrokrokowych - pyt.

#1

Post napisał: mc2kwacz » 28 lip 2013, 14:27

Pytanie do praktyków i znawców tematu.
Mamy sobie taki popularny sterownik M542 z mikrokrokiem. Posiada on, oprócz wejść STEP i DIR, również wejście zezwolenia (a raczej wejście blokady) ENABLE.
Można to wejście zostawić nie podłączone, i wtedy sterownik zawsze jest aktywny, o ile ma zasilanie. Ale to amatorszczyzna, zostawiać wejście bezpieczeństwa nie podłączone. Poza tym w czasie przerw w pracy sterownik aktywny ciągle żre prąd i nabija licznik. Tak więc podłączamy i używamy. Jednakże pojawia się tu pewien kłopot, wcale nie marginalny. Otóż, gdy zatrzymamy maszynę z wyłączeniem ENABLE sterowników, a potem przywrócimy zezwolenie, osie wykonają w chwili aktywacji bardzo drobne gwałtowne ruchy. Słychać wyraźne "puknięcie" spowodowane wibracją, czasami silniejsze, czasami słabsze. Łatwo się domyślić, co sie wtedy stanie z delikatnym frezem zagłębionym w materiale. Albo, dla odmiany, z precyzyjnie obrabianym przy pomocy grubego freza materiałem.
Czyli wyglądałoby na to, że sygnału ENABLE po prostu nie da się używać bez istotnego ryzyka?

Pytanie dodatkowe - czy po stanie nieustalonym silnik wraca w dokładnie tę samą pozycję kątową (wynikająca z mikrokroku) która była przed wyłączeniem ENABLE? Czy może użycie ENABLE jest (może być) źródłem dodatkowego błędu przesunięcia na osiach, spowodowanego przez same sterowniki silników?

Pytanie kolejne, czy lepsze (droższe niż 250zł) sterowniki silników są czy nie są pozbawione tego niekorzystnego zjawiska, które opisałem?



Tagi:


Raven
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 681
Rejestracja: 24 paź 2011, 11:54
Lokalizacja: Warszawa

#2

Post napisał: Raven » 28 lip 2013, 19:15

Wyłączenie sterów a następnie włączenie właściwie skutkuje koniecznością ponownego bazowania maszyny.

Po wyłączeniu silniki krokowe przestają stawiać opór więc mogą dziać się wszelkie cuda.

Po ponownym załączeniu silnik nie ruszy od np. 3 z 8 mikro kroków tylko od zera, stąd to szarpnięcie.

Można i należy używać, ale na litość nie z narzędziem w materiale.

Bo i jaką masz gwarancję, że po wyłączeniu zasilania silnik nie zostanie obrócony przez układ napędu co spowoduje przesunięcie i np. złamanie freza lub wjazd w materiał...


Autor tematu
mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 11
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

#3

Post napisał: mc2kwacz » 28 lip 2013, 22:19

Nie mówię o WYŁĄCZENIU ZASILANIA tylko o wyłączeniu ENABLE. Jest to sygnał cyfrowy dla procesora sterującego driverem. Sam procesor jest cały czas zasilany, więc pamięta (powinien) w jakim procentowo mikropołożeniu się znajduje.
Pomijam, że nawet przy wyłączeniu zasilania dobry driver powinien pamiętać pozycję mikro kroku. Nie jest to żadna nadzwyczajna umiejętność cyfrowej elektroniki, wręcz klasyka.

Sytuacja jest taka - blokujemy sterowanie na nieruchomej maszynie. Nic mechanicznie się nie dzieje (byłoby słychać cokolwiek). Oczywiście silniki, siłą wbudowanych magnesów, mogą się obrócić w kierunku najbliższego pełnego kroku. Robią to po cichu. Normalna rzecz.

Wiadomo, że nie z narzędziem w materiale. Przynajmniej nie celowo. Ale można sobie wyobrazić różne sytuacje awaryjne. Np krótkotrwałe wyłączenie prądu z frezem typu odwrócony stożek w materiale. Za cholerę tego ręcznie nie przesuniesz, nie wyjmiesz przed uruchomieniem.

Po to właśnie jest ENABLE, którego niektórzy "zawodowcy" przez małe "z" nie używają żeby zezwolić driverom na jakąkolwiek akcję dopiero kiedy sterownik się całkowicie odpali i wszystkie wyjścia ustawią w przewidziane programem i działaniem układów elektronicznych stany. Każdy falownik ma takie zabezpieczenia, i każdy poprawnie zaprojektowany układ sterowania. NIC NIE DRGNIE w dobrze zaprojektowanym układzie elektromechanicznym. Gdyby takich zabezpieczeń nie było w układach, to większość driverów w układzie mostka, falowników, zasilaczy impulsowych, paliłaby się z efektami pirotechnicznymi po kilku, kilkudziesięciu najdalej, włączeniach.

Problem dużego ruchu po włączeniu (np w Megaplocie tak miałem - nic dziwnego, panowie nie raczyli użyć ENABLE) mam rozwiązany. Podobnie falownik jest zablokowany sprzętowo. Tak samo jak w drugą stronę - błąd/awaria falownika blokuje resztę systemu. Kiepsko się frezuje z nieruchomym wrzecionem ;)
Chodzi mi w tym wątku o mikro ruch w granicach jednego pełnego kroku. Teoretycznie w najgorszym przypadku 0,05mm przy skoku śruby 5mm. Zastanawiam się, czy nie ma tu jakiegoś dodatkowego efektu, i czy nie będzie z tego np 0,1mm. Bo już tego niektóre utwardzane miniaturowe frezy pewne by już nie wytrzymały.

Bazowanie maszyny po włączeniu w oparciu o mechaniczne krańcówki albo elektroniczne czujniki zbliżeniowe, to jeszcze gorsze niż błąd mikrokroku. Trzeba by użyć albo jakichś ultraprecyzyjnych krańcówek za chore pieniądze (powoli dojrzewam do potrzeby skonstruowania sobie czegoś takiego). Albo czujników liniałowych, jak w serwach.

No nic, chyba będę musiał zrobić jakieś pomiary.

Awatar użytkownika

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

#4

Post napisał: tuxcnc » 28 lip 2013, 23:03

Freza nie połamiesz jak wrzeciono będzie się kręcić.
Przy braku zasilania lub wyłączonym ENABLE da się ręcznie pokręcić śrubą i podnieść zetkę.
Przy śrubach kulowych, które nie są samohamowne używanie ENABLE do oszczędzania energii jest idiotyzmem i proszeniem się o kłopoty, wtedy faktycznie maszynę trzeba bazować po każdym takim numerze.

.

Awatar użytkownika

noel20
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 8
Posty: 1395
Rejestracja: 02 lip 2010, 07:15
Lokalizacja: Białystok

#5

Post napisał: noel20 » 28 lip 2013, 23:51

Wyłącznie enable powoduje że sterownik owszem jest wciąż zasilany, ale nie podaje prądu do silnika, więc można do lekko obrócić i w trakcie pracy maszyny coś takiego to pewne kłopoty. Dlatego używa się m.in. silników krokowych w maszynkach bo mimo, że się nie obracają to są zablokowane.
Podanie natomiast z powrotem sygnału enable powoduje ustawienie silnika w pełnym kroku (początek odliczania mikrokroku) przynajmniej w sterownikach z którymi miałem do czynienia.
A swoją drogą, jak silnik pobiera ok 40W jakiś większy, a wrzeciono 500 to oszczędności na prądzie marne.


Autor tematu
mc2kwacz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 11
Posty: 2920
Rejestracja: 27 maja 2013, 22:18
Lokalizacja: gdzieś

#6

Post napisał: mc2kwacz » 29 lip 2013, 02:53

noel20 pisze:Dlatego używa się m.in. silników krokowych w maszynkach bo mimo, że się nie obracają to są zablokowane.
Silniki w serwach tez sa zabokowany, mimo że nie sa krokowe ;)
noel20 pisze:Podanie natomiast z powrotem sygnału enable powoduje ustawienie silnika w pełnym kroku (początek odliczania mikrokroku) przynajmniej w sterownikach z którymi miałem do czynienia.
I to jest odpowiedź na temat. Wreszcie ;)
Zrobiłem próby, i rzeczywiście tak jest. Przyznam, że jestem zaskoczony. Z drugiej strony, po zastanowieniu, dobrze zrobiony (niezawodny) mechanizm parkowania i odtwarzania położenia rotora po wznowieniu zasilania, to zadanie chyba przekraczające możliwości urządzenia za 250zł, nawet jeśli to 250zł za chiński wyrób.

Wnioski są następujące:
1. przy M542 nie ma absolutnie żadnego sensu używać sygnału ENABLE, bo można sobie tylko narobić szkody a zysk z tego praktycznie żaden
2. Wznowienie precyzyjnej pracy po zaniku zasilania lub na drugi dzień, wymaga bazowania, czyli precyzyjnych krańcówek. Przed tym nie da się uciec. Chyba żeby zastosować drivery, które potrafią przywrócić kąt rotora sprzed chwili wyłączenia.
3. Jeśli delikatny frez zatrzyma się w materiale (zanik napięcia zasilającego), i jest poważne ryzyko jego uszkodzenia przy ręcznym odsuwaniu osi, wtedy najlepiej najpierw rozpędzić wrzeciono na maksa (tymczasowo) a dopiero potem zezwolić na pracę driverów osi. I chyba taki przycisk awaryjnego restartu sobie zamontuję.

Awatar użytkownika

noel20
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 8
Posty: 1395
Rejestracja: 02 lip 2010, 07:15
Lokalizacja: Białystok

#7

Post napisał: noel20 » 29 lip 2013, 07:19

mc2kwacz pisze:Silniki w serwach tez sa zabokowany, mimo że nie sa krokowe
Ale gdy nie ma potrzeby nie jest na nie podawany prąd, więc to co chcesz zrobić czyli oszczędność prądu tam jest załatwiona automatycznie. Niestety sterowanie krokowcem jest prostsze i ogólnie sprzęt jest tańszy w porównaniu do serw, bo nie ma pętli ujemnego sprzężenia zwrotnego z koniecznością stosowania enkodera.

Poza tym jest jeszcze jedna sprawa. Gdy silnik stoi w mikrokroku, akurat 4 na 8, albo 8 na 16, choć rozbieżności też mogą być, to po zabraniu enable czyli prądu od silnika, silnik jeśli na mały opór stawiany dla osi przeskoczy w wygodną mu pozycję. I to będzie albo pół kroku w przód, albo w tył i po podaniu enable, gdyby sterownik wracał na pozycję 4 z 8 mikrokroków to nie mamy pewności, że będzie w tej samej pozycji, a nie na przykład cały krok do przodu czy do tyłu.
Dlatego producenci nie implementują tego w swoich sterownikach, bo jak napisałeś to drobnostka dla dzisiejszych układów. Zasada działania krokowca jest taka: zakładamy, że silnik jest tak bardzo przewymiarowany, że nie zgubi pozycji i podając mu ileś impulsów zakładamy, że jest w jakiejś pozycji. Dlatego w przypadku stosowania krokowców nie stosuje się enkoderów. Ale powyższy warunek jest spełniony jeżeli mamy przez cały czas kontrolę nad silnikiem, a zabranie sygnału enable to dla niego reset jak po odcięciu zasilania i po ponownym jego podaniu musimy założyć, że nie wiemy gdzie jesteśmy.

Odnośnie twoich wniosków. Pierwszy jak najbardziej poprawny. Drugi, hmm... Należy mieć sprzęt z enkoderem absolutnym, nie inkrementalnym, a i to nie załatwi sprawy. Należałoby na osiach założyć liniały. Trzeci też wydaje mi się jedynym sensownym rozwiązaniem po zaniku zasilania.
Chyba, żeby zbazować maszynę, odciąć zasilanie sterowników i podać z powrotem. Maszyna będzie zbazowana, a silniki w pierwszym mikrokroku. Zawsze po robocie jak odprowadzisz maszynę w to samo miejsce i do następnej roboty jak stoi bez prądu nikt niczym nie pokręci, to po odpaleniu zasilania jest duże prawdopodobieństwo, że będziesz dokładnie w tej samej pozycji co ją wyłączyłeś. Warunek tego jest jeden. Sterownik się uruchamia w pierwszym z mikrokróków, więc musisz mieć pewność, że wyłączyłeś sterownik też w pierwszym mikrokroku, a powyższa sekwencja to zapewnia. Przynajmniej tak mi się wydaje. Nie mam wystarczająco dokładnej maszyny, żeby to sprawdzić w praktyce.

Awatar użytkownika

ursus_arctos
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 1
Posty: 2083
Rejestracja: 11 cze 2011, 18:29
Lokalizacja: Warszawa / Lublin

#8

Post napisał: ursus_arctos » 29 lip 2013, 12:59

Podanie natomiast z powrotem sygnału enable powoduje ustawienie silnika w pełnym kroku (początek odliczania mikrokroku) przynajmniej w sterownikach z którymi miałem do czynienia.
Pomyliło Ci się Enable z Reset. W sporej części sterownikóe (nie wiem, jak w tym konkretnym) Enable tylko wyłącza prąd - faza jest zapamiętana. Natomiast po resecie silnik nie tylko wróci do pełnego kroku, ale do pełnej wielokrotności czterech kroków.
W niektórych konstrukcjach z powodzeniem można używać enable do redukcji prądu postojowego - podając tam PWM o odpowiedniej częstotliwości i wypełnieniu ;)
Jak się po prostu wyłączy sterowanie, to silnik "wskoczy" w najbliższy pełny krok. Zależnie od tego, jak daleki ten krok jest od ostatniego mikrokroku, różne będzie szarpnięcie przy ponownym włączeniu. Tego na pewno nie należy robić.

Awatar użytkownika

noel20
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 8
Posty: 1395
Rejestracja: 02 lip 2010, 07:15
Lokalizacja: Białystok

#9

Post napisał: noel20 » 29 lip 2013, 13:52

ursus_arctos pisze:Pomyliło Ci się Enable z Reset.
Fakt, tu masz całkowitą rację. Pomieszało mi się z reset. Po samym odpięciu enable sterownik pamięta ostatnią pozycję i później zaczyna gdzie skończył.
Nie zmienia to faktu, że w trakcie pracy maszyny, odłączanie enable nie jest dobrym pomysłem


Raven
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 681
Rejestracja: 24 paź 2011, 11:54
Lokalizacja: Warszawa

#10

Post napisał: Raven » 29 lip 2013, 14:26

Sterownik tak - ale silnik już nie i stąd będzie szarpnięcie.

PWM na enable lub zmiana napięcia odniesienia aby ograniczyć prąd i problem będzie zmniejszony.

Jeżeli osie samohamowne to można ograniczyć prąd i powinno być ok, dla tocznych trzeba by wybadać kiedy silnik wypadnie z pozycji w której był.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Elektronika CNC”