• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[ARDUINO GRBL] Frezarka CNC, Ograniczniki krańcowe

Object Storage Arubacloud
+1 głos
1,103 wizyt
pytanie zadane 21 kwietnia 2021 w Sprzęt komputerowy przez Marak123 Stary wyjadacz (11,190 p.)

Witam :)

Mam małą frezarkę cnc która jest zbudowana na arduino uno i sterownikach z tego filmu https://www.youtube.com/watch?v=0K0s-RR0Puo (TB6600).

I działa dobrze tylko ze chcę zrobić jeszcze ograniczniki krańcowe(tak aby program wykrywał ze dalej np. oś x nie pojedzie i się zatrzymywał) tylko że mi nie wychodzi.

Znalazłem dużo różnego typu materiałów np. to i robiłem ograniczniki według tego pierwszego schematu na obrazku z tego linku, ale nie działa. Przestawiałem nawet $21, $22 na 1 i $23 na 3 tak jak to znalazłem tutaj, ale niestety też nie działa bo pokazuje w programie ze ALARM i nic się nie da zrobić nawet gdy ograniczniki są odłączone to i tak pokazuje ALARM dopiero gdy zmienię $21 na 0 to ALARM ustępuję. 

Ma ktoś może jakieś dobre materiały lub wie jak jak dobrze podłączyć ograniczniki krańcowe i skonfigurować tak aby one działały. 

Tylko że beż używania jakiś specjalnie zaprojektowanych płytek PCB do ograniczników krańcowych albo CNC Shield. Musi to być czyste połączenie ograniczników z arduino.

Będę wdzięczny za jakąkolwiek pomoc. Dzięki smiley

1 odpowiedź

+2 głosów
odpowiedź 21 kwietnia 2021 przez Oscar Nałogowiec (29,290 p.)
wybrane 22 kwietnia 2021 przez Marak123
 
Najlepsza
$21 czyli hard limit właśnie tak działa - aktywowanie dowolnej krańcówki powoduje zatrzymanie maszyny. Jest to właściwa reakcja podczas pracy - normalna procedura powinna trzymać się z daleka od krańców pola roboczego.

GRBL na instrukcję to zerowania alarmów i przywrócenia pracy. Jeśli jednak wjedziesz w krańccówkę z dużą szybkościa, silnik jeszcze się trochę przekręci i nie wystarczy 1 krok wstecz, trzeba powtarzać operację.

Problemem jest to, że na każdą oś jest jedno wejście, więc maszyna nie wie, do którego końca dojechała i, w związku z czym, nie wie jaki ruch jest bezpieczny a jaki nie.

$20 czyli soft limit jedynie zgłoszenie stanu krańcówek, jest niezbędny by wykonać HOME - ustawienie maszyny w ustaloną pozycję.

Masz jakieś pull-up-y? Albo jako rezystory, albo ustawione w sofcie?

PS. ja mam 3018.
komentarz 22 kwietnia 2021 przez Marak123 Stary wyjadacz (11,190 p.)
Podłączyłem to wszystko według schematu 2 i działa włączyłem jeszcze tylko zmienne $22 = 1 i $20 = 1 i gdy wciskam jeden z przycisków krańcowych to pokazuje się alarm w programie tytlko ze mam problem z home bo gdy naciskam home to on mi jedzie nie wiadomo gdzie. Da się to jakoś ustawić??

A gdy ponownie połączam arduino z programem universal g-code sender to pokazuje się zamiast idle to pokazuje się alarm i gdy chcę poruszyć którąś osią to pokazuje się taki błąd

An error was detected while sending '$J=G21G91Y1F25': (error:8) Grbl '$' command cannot be used unless Grbl is IDLE. Ensures smooth operation during a job. Streaming has been paused.
[Error] Error while processing response <An error was detected while sending '$J=G21G91Y1F25': (error:8) Grbl '$' command cannot be used unless Grbl is IDLE. Ensures smooth operation during a job. Streaming has been paused.>

 

A donośnie multimetru to mam.
komentarz 22 kwietnia 2021 przez Marak123 Stary wyjadacz (11,190 p.)

@Oscar, I dziwne bo gdy wyłączyłem zmienną $22 = 0 to działało poruszanie osiami i alarm tez się pojawiał tylko że nie zatrzymywało maszyny przy ręcznym poruszaniu osiami

1
komentarz 22 kwietnia 2021 przez Oscar Nałogowiec (29,290 p.)
HOME polega na ruszeniu maszyny aż do zadziałania krańcówek. Nie pamiętam, czy GRBL robi to pojedynczo, (wzdłuż poszczególnych osi) czy potrafi też na ukos. Kierunek ruchu, a także prędkości określają odpowiednie rejestry konfiguracyjne. Czy jeśli chcesz zatrzymać HOME musisz użyć krańcówek.
komentarz 22 kwietnia 2021 przez Marak123 Stary wyjadacz (11,190 p.)
Aha ok dzięki
komentarz 22 kwietnia 2021 przez Oscar Nałogowiec (29,290 p.)
Polecenie "$J=G21G91Y1F25" działa tylko w nowych wersjach GRBL, nie pamiętam dokładnie od której. Jest to specjalna instrukcja do tych "recznych" ruchów silników (JOG), zadziałanie krańcówek nie powoduje wtedy zgłoszenia alarmu. W starszych wersjach (np. w mojej maszynie) nie ma oddzielnych poleceń dla JOG-a. Do sterowania ja używan programu Candle, zaraz zainstaluje sobie ten UGS, zobaczę jak się obsługuje.

Podobne pytania

0 głosów
2 odpowiedzi 262 wizyt
pytanie zadane 29 stycznia 2022 w C i C++ przez kuras Początkujący (390 p.)
0 głosów
1 odpowiedź 98 wizyt
pytanie zadane 4 stycznia 2020 w JavaScript przez saseta00 Użytkownik (700 p.)
+3 głosów
0 odpowiedzi 262 wizyt
pytanie zadane 22 października 2018 w Mikrokontrolery przez Yashe Dyskutant (7,720 p.)

92,568 zapytań

141,424 odpowiedzi

319,634 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...