Zero maszynowe
: 06 lis 2020, 15:49
Napotkałem problem i nie wiem co o nim myśleć.
Otóż używałem do tej pory Linuxcnc i tam było tak jak być powinno.
To znaczy w pliku konfiguracyjnym podawało się dla każdej osi HOME_OFFSET, czyli odległość od krańcówki referencyjnej do początku maszynowego układu współrzędnych, który dzięki temu był ustalony jednoznacznie i niezależnie od innych ustawień.
Teraz kupiłem sobie chińską frezareczkę CNC3018, którą steruje GRBL a krańcówek referencyjnych w standardzie nie ma.
Po zamontowaniu krańcówek puściłem cykl HOME i maszyna pojechała w kierunku +X,+Y, czyli szukała krańcówek w prawym górnym rogu stołu.
To jeszcze nic strasznego, bo może komuś pasować akurat tam je umieścić ...
Ponieważ jest możliwość odwrócenia kierunku szukania krańcówek, więc to zrobiłem i maszyna zbazowała się prawidłowo, znaczy się najechała na krańcówki i wróciła po milimetrze.
Niestety tutaj pojawił się problem, bo współrzędne maszynowe pokazywały X-199,Y-199,Z-1.
O ile w zetce niech sobie będzie minus jeden, to w X i Y wartości kompletnie z sufitu.
Zacząłem szukać HOME_OFFSET, ale w tym sterowaniu czegoś takiego nie ma.
Po dość długich i nerwowych poszukiwaniach sprawa się wyjaśniła.
Otóż GRBL uważa że zero maszynowe jest w górnym prawym rogu stołu, a jeśli krańcówki referencyjne są w lewym dolnym rogu stołu, to są w pozycji minus X soft limit i minus Y soft limit.
Faktycznie, Chińczyk uznał że skoro krańcówek nie zamontował, to limitów też nie musi ustawiać i było 200,200,200, czyli kompletnie od czapy.
Po wpisaniu limitów 301,181,35 wszystko zaczęło mieć ręce i nogi, czyli po bazowaniu maszyna stawała w pozycji maszynowej -300,-180,-1.
Nawiasem mówiąc, jest to także dokładnie pozycja Z-probe.
Gdyby to tylko o to chodziło, tobym sprawę olał i po prostu pamiętał że czujnik wysokości narzędzia jest w takich właśnie koordynatach maszynowych.
Tylko tyle, że ja w takich sprawach jestem zasadniczy i nie toleruję ukrytych zależności pomiędzy parametrami.
Raz w życiu udało mi się przefrezować stół, właśnie dlatego że jakiś debil piszący program sterujący wymyślił sobie dwa niezależne offsety osi Z (to był program do plotera obsługujący pliki HPGL).
Tutaj jest podobna sytuacja, zmieniając soft limity przesuwa się maszynowy układ współrzędnych, co się musi skończyć pięknym dzwonem przy pomiarze narzędzia.
Najzwyczajniej uważam, że taka sytuacja jest niedopuszczalna.
A teraz do rzeczy.
Poszukałem informacji na forum GRBL i się dowiedziałem, że to jest przemysłowy standard, tak musi być, a jak mi się nie podoba, to sobie mogę przekompilować GRBL.
No to chciałbym się spytać, czy faktycznie ktoś się z tym spotkał i we wszystkich maszynach ruch w maszynowym układzie współrzędnych odbywa się na ujemnych wartościach X,Y,Z i tylko LInuxcnc jest tutaj wyjątkiem ?
A jak to jest na maszynach przemysłowych ?
Otóż używałem do tej pory Linuxcnc i tam było tak jak być powinno.
To znaczy w pliku konfiguracyjnym podawało się dla każdej osi HOME_OFFSET, czyli odległość od krańcówki referencyjnej do początku maszynowego układu współrzędnych, który dzięki temu był ustalony jednoznacznie i niezależnie od innych ustawień.
Teraz kupiłem sobie chińską frezareczkę CNC3018, którą steruje GRBL a krańcówek referencyjnych w standardzie nie ma.
Po zamontowaniu krańcówek puściłem cykl HOME i maszyna pojechała w kierunku +X,+Y, czyli szukała krańcówek w prawym górnym rogu stołu.
To jeszcze nic strasznego, bo może komuś pasować akurat tam je umieścić ...
Ponieważ jest możliwość odwrócenia kierunku szukania krańcówek, więc to zrobiłem i maszyna zbazowała się prawidłowo, znaczy się najechała na krańcówki i wróciła po milimetrze.
Niestety tutaj pojawił się problem, bo współrzędne maszynowe pokazywały X-199,Y-199,Z-1.
O ile w zetce niech sobie będzie minus jeden, to w X i Y wartości kompletnie z sufitu.
Zacząłem szukać HOME_OFFSET, ale w tym sterowaniu czegoś takiego nie ma.
Po dość długich i nerwowych poszukiwaniach sprawa się wyjaśniła.
Otóż GRBL uważa że zero maszynowe jest w górnym prawym rogu stołu, a jeśli krańcówki referencyjne są w lewym dolnym rogu stołu, to są w pozycji minus X soft limit i minus Y soft limit.
Faktycznie, Chińczyk uznał że skoro krańcówek nie zamontował, to limitów też nie musi ustawiać i było 200,200,200, czyli kompletnie od czapy.
Po wpisaniu limitów 301,181,35 wszystko zaczęło mieć ręce i nogi, czyli po bazowaniu maszyna stawała w pozycji maszynowej -300,-180,-1.
Nawiasem mówiąc, jest to także dokładnie pozycja Z-probe.
Gdyby to tylko o to chodziło, tobym sprawę olał i po prostu pamiętał że czujnik wysokości narzędzia jest w takich właśnie koordynatach maszynowych.
Tylko tyle, że ja w takich sprawach jestem zasadniczy i nie toleruję ukrytych zależności pomiędzy parametrami.
Raz w życiu udało mi się przefrezować stół, właśnie dlatego że jakiś debil piszący program sterujący wymyślił sobie dwa niezależne offsety osi Z (to był program do plotera obsługujący pliki HPGL).
Tutaj jest podobna sytuacja, zmieniając soft limity przesuwa się maszynowy układ współrzędnych, co się musi skończyć pięknym dzwonem przy pomiarze narzędzia.
Najzwyczajniej uważam, że taka sytuacja jest niedopuszczalna.
A teraz do rzeczy.
Poszukałem informacji na forum GRBL i się dowiedziałem, że to jest przemysłowy standard, tak musi być, a jak mi się nie podoba, to sobie mogę przekompilować GRBL.
No to chciałbym się spytać, czy faktycznie ktoś się z tym spotkał i we wszystkich maszynach ruch w maszynowym układzie współrzędnych odbywa się na ujemnych wartościach X,Y,Z i tylko LInuxcnc jest tutaj wyjątkiem ?
A jak to jest na maszynach przemysłowych ?