Witam was po krótkie przerwie w trzeciej i ostatniej części poradnika jak zbudować amatorską frezarkę. Wspominałem w ostatnim wpisie o zmianach jakie zaszły. Niestety porzucam ten projekt dlatego część mechaniczną pozostawiam w takim stanie jakim jest. Nie ulepszam, nie inwestuję…
Jeśli mamy już swoją konstrukcję, wszystko podłączone i zasilone to znaczy, że od strony hardware’owej jesteśmy przygotowani – chyba :D. Teraz porzucamy śrubokręt wraz z wkrętarką i przesiadamy się do naszego komputera. Na samym początku wspomnę, że sterowanie maszyną z komputera używanego na co dzień może przysporzyć wiele problemów związanych z komunikacją a z czym idzie pracą maszyny. Ja do tego celu użyłem laptopa z czystym system Windows 7. Oprócz samego systemu będziemy potrzebować sterowniki USB dla naszego Arduino, interpreter kodu g-code oraz wsad hex do uC.
Cała przygodę zaczynamy od wyboru wersji GRBL’a dla Arduino. Aktualnie jest dostępna wersja 0.9C , w której jest dużo nowych opcji takich jak prędkości posuwu dla każdej osi oddzielnie, softlimit i wiele innych. Niemniej jednak dla naszej maszyny wystarczy wersja uboższa, prostsza w konfiguracji. Do obsługi od strony komputera użyję GRBLControler 3.5.1. Wszystko do pobrania z oficjalnego GitHub’a.
Po instalacji sterowników bez których nic nie zdziałamy, bierzemy się za zaprogramowanie Arduino. Do tego celu będzie potrzebny nam program XLoader.
(1) Podłączamy Arduino i włączamy program XLoader. Klikając w przycisk “…” tuż przy samym oknie ścieżki wskazujemy nasz plik z wsadem o rozszerzeniu .HEX.
(2) Wybieramy model naszej płytki – w moim przypadku Arduino UNO
(3) Wybieramy port COM pod którym widoczne jest Arduino. Można sprawdzić to w menadżerze urządzeń w panelu sterowania.
(4) Wartość ramki “Baud rate” domyślnie wybrana jest na “115200” i taką wartość pozostawiamy. Jest to prędkość pod jaką Arduino domyślnie komunikuję się.
(5) Klikamy przycisk “Upload” i czekamy. Może potrwać to nawet minutę.
(6) Po poprawnym wgraniu wsadu w dolnym lewym rogu na pasku powinna pojawić się ilość wgrany bajtów na nasz mikrokontroler.
Gdy już zainstalujemy Grbl Controller i uruchomimy go, zobaczymy główne okno programu. W lewy górnym rogu znajdziemy opcję komunikacji z sterownikiem.
Jak uprzednio: (1)wybieramy port COM, (2)wybieramy prędkość komunikacji, (3)Klikamy przycisk” OPEN”.
Po poprawnym podłączeniu w oknie poniżej powinna wyświetlić się aktualna konfiguracja sterownika. Kolejnym krokiem będzie konfiguracja. Do jej przeprowadzenia będzie nam potrzebna kilka informacji takich jak ilość kroków silnika na jeden pełny obrót, skok prętów napędowych, podłączenie silników.
Po prawej stronie okna przełączmy na zakładkę “Advenced” i klikamy “GRBL Settings”. Ujrzymy takie okno:
Lecimy po kolei.
1. x,y,z step/mm
Jest to ilość kroków jaką sterownik musi wygenerować aby posuw był równy 1mm. Wyliczamy go łatwy sposób. Pręt gwintowany M8 ma skok 1,25mm, moje stepsticki ustawiłem 1/8 mikrosteppingu co oznacza ,że jeden krok dzielony jest na 8 mini kroki. Silnik dla pełnego obrotu potrzebuje 200 kroków.
Gdy silnik wykona 200 kroków nakrętka przesunie się o 1,25mm, każdy nasz krok dzielimy przez 8 a więc ilość kroków pełnego obrotu to 1600. Musimy teraz wyliczyć ile kroków należy wykonać aby posuw był równy 1mm robimy to z równania 1,25X = 1 ,gdzie X=4/5. Zatem 1600 4/5 = 12800, otrzymany wynik wpisujemy w pola wartości dla osi X,Y oraz Z.
2. default feed, mm/min
Jest to prędkość z jaką będą przesuwały się nasze osie podczas pracy wrzeciona w materiale. Wartość trzeba dobrać eksperymentalnie tak aby silniki nie traciły kroków oraz powinny być dobrane pod technikę obróbki. Ja ustawiłem 240mm i jest to dla mnie optymalną prędkością.
3. default seek, mm/min
Jest to prędkość z jaką będą przesuwały się nasze osie podczas przejazdu wrzeciona nad materiałem. Można ustawić tą wartość zdecydowanie większą niż poprzednią ja jednak ustawiłem na 240 gdyż już trochę wyżej silnik zachowuję się niestabilnie.
4. acceleration, mm/sec^2
Jest to wartość przyspieszenia z jakim będą rozpędzane silniki. Wartość ustawiłem na 4, jest to opytmalnie najlepsza prędkość w przypadku moich silników, nie grzeją się i nie hałasują nadmiernie przy starcie.
5. hard limits, bool
Ustawiamy wartość “1” dzięki temu aktywujemy krańcówki które w razie przekroczenia granic pola roboczego zatrzymają ruch zapobiegając problemom.
6. homing cycle, bool
Ustawiamy wartość “1” dzięki temu aktywujemy funkcję “Go Home”. Czyli maszyna po skończonej pracy i naciśnięciu przycisku “Go Home” wróci do punktu 0,0,0.
7. homing feed,mm/min oraz homing seek, mm/min, ustawiamy na dowolną prędkość z jaką chcemy aby maszyna poruszała się w cyklu Go Home. Nie warto przesadzać z dużą prętkością gdyż czasem lepiej mieć trochę więcej czasu na reakcje w momencie gdy maszyna była błędnie wyzerowana.
Powyższe opcje są wystarczające aby maszyna mogła pracować w odpowiedniej skali z zadaną prędkością i przede wszystkim bezpiecznie.
Zatem po konfiguracji Wracamy do zakładki “Axis Control” gdzie znajduje się sterowanie osiami.
1. Machine Coordinates – w tym miejscu można odczytać mechaniczne położenie maszyny. Jest one prawdziwe tylko w momencie gdy maszyna przy podłączeniu znajduje się w punkcie 0,0,0.
2. Work Coordinates – określa ono miejsce w którym maszyna pracuje. Nie musi pokrywać się z wartością “Machine Coordinates”.
3.Sterowanie osiami: Zielone – oś X w lewo i prawo, Czerwone – oś Y w przód i w tył oraz Czarne – oś Z do góry w dół.
4. Tuż pod przyciskami sterowania osią Z znajduję się wartość” Step size” jest to wartość o jaką przesunie się maszyna w danej osie po jednym naciśnięciu przycisku wyrażona w milimetrach.
5. Na lewo opcja “Spindle On” służy do ręcznego włączania wrzeciona, przyciski Zero Position zeruje wartości “Work Coordinates”, przycisk Go Home ustawia pozycje maszyny w uprzednio ustaloną pozycję 0,0,0.
Poza sterowaniem przyciskamy mamy możliwość za pomocą okna “Command” wysyłać rozkazy w języku g-code. Jest to pewien znormalizowany język o którym możecie przeczytać co nieco tu. Niestety muszę zaznaczyć, że nasz sterownik nie obsługuję wszystkich komend a dostępne i działające są wypisane na stronie projektu GRBL na githubie.
Spradzamy jak to działa. Należy sprawdzić czy gdy naciskamy oś X w prawo czy faktycznie w tym kierunku się porusza, robimy tak z każdą osią. Jeżeli kierunki nie będą się zgadzać należy poprawić to. Sam problem polega na tym ,że podłaczyliśmy cewkę A jako B i analogicznie B jako A. Można to poprawić na dwa sposoby, fizycznie zmieniając podłaczenie oraz softowo. W tym celu na pasku klikamy: Tools -> Option i otworzy nam się takie okno:
Opcja Invert Axis odpowiada za odbicie – odwrócenie kierunku ruchu danej osi. Więc jeżeli któraś oś porusza się w przeciwnym kierunku należy zaznaczyć. Można było zrobić to też ustawieniach GRBL’a uprzednio pod nazwą “step port invert mask” jednak należy to robić wg specyfikacji dołączonej do wsadu.
Ponizęj można znaleźć opcję ” Use milimeter when sending manual commands” Należy ją zaznaczyć w naszym przypadku ponieważ używamy wsadu w wersji 0.8c. Od teraz pracujemy w jednostkach “mm”.
No i naszej konfiguracji koniec. Teraz ruszamy z pracą ! :)
Zaczynamy do wyzerowania maszyny. Ja punkt 0,0,0 ustaliłem maksymalnie blisko przedniej krawędzi odraz po lewej stronie dzięki temu projekty które tworzę umiejscawiam w pierwszej ćwiartce układu osi współrzędnych. Jeżeli mamy już zamocowany materiał a punkt 0,0,0 jest ustalony, ładujemy plik. Klikamy (1)”Choose file” i wskazujemy nasz plik i klikamy “Otwórz”. Jeżeli jesteśmy pewni, że wszystko jest w porządku klikamy (2)”Begin”.
I o to maszyna ruszyła! Teraz możesz śledzić jak maszyna wycina graweruje czy frezuje Twój projekt. Na podgladzie projektu możesz zobaczyć linie które są koloru zielonego (3) oznaczają one ilość linijek kodu jakie program już przeliczył gdzie uwzględnia przyspieszenia oraz prędkości w danym momencie. Czerwony punkt (4) to wizualizacja miejsca położenia wrzeciona. Jedynym minusem jest fakt, że program nie oblicza czasu do końca.
Drodzy majsterkowicze ! Niestety doszliśmy do końca serii dotyczącej naszej maszyny CNC. Żegnam się z wami a na sam koniec film z pracy maszyny
Pozdrawiam
TO kiedy poradnik jak zrobić drukarkę 3D
A widziałeś kiedyś by drukarka miała takie możliwości rozwojowe jak to urządzenie? Dzisiaj ma tam długopis, jutro nóż a za tydzień laser; i co nadal będziesz pisał, że to drukarka?
Dzisiaj atramentowa, jutro strugowa, a za tydzień laserowa
A jakie niby możliwości rozwojowe ma to urządzenie? Co ten laser miałby tam robić? Prowadnice osi Y uginają się pod ciężarem własnym + bramy o milimetr. Jaki sens ma mocowanie lasera, jeśli jego ognisko na środku stołu wypadać będzie milimetr niżej niż przy krawędzi?
To zadajmy pytanie; jaki jest sens tworzenia takich urządzeń? Ja nie pochwalam za jakość wykonania ani za zastosowane rozwiązania, podkreślam jedynie aby nie nazywać pochopnie urządzeń amatorskich – drukarkami; na dodatek pan którego skomentowałem edytował swój post; ponieważ przedtem miał zupełnie inną informacje i to jest typowe chamskie zachowanie internautów; tak jakbym ja teraz zrobił to samo;
Drukarka powstanie, kiedy nie wiem. Może mi to trochę zająć, a artykułu będzie można się spodziewać po poprawnym uruchomieniu drukarki. Na pewno nie bliżej niż 2-3 miesiące można szukać w poczekalni.
http://www.instructables.com/id/eWaste-60-3DPrinter/?ALLSTEPS
Czy po użyciu wałków o większej średnicy frezarka dałaby radę rzeźbić w aluminium ? ;) Planuję wykonać taką maszynę a następnie wycinać elementy w aluminium potrzebne do budowy większej i mocniejszej frezarki. Silniki, wałki itd. zostaną te same.
Jak byś użył wałków podpartych i zamiast płyty wiórowej sklejkę 18stke myślę, że na wolnych prędkościach i małym wybieraniu alu by żarło. Pytanie, skoro chcesz zrobić i tak finalną wersje większą i z alu czy nie lepiej od razu robić finalną wersje np na profilach BOSCH Rexroth lub innym podobnym systemie profili aluminiowych ?
jaki plik i w czym go stworzyć by maszyna zaczęła pracowac ,nie rozumiem tego nc co to za plik ,otwieram pliki g kod a tu nic niby pracuje a nic się nie dzieje cisza
Witam
Cały sprzęt mam już gotowy.
I chcę zając się software.
Wszystkie programy zainstalowane.
Ale nie mam pojęcia skąd wziąć ten
wsad (.hex)?
Z góry dzięki za odpowiedzi.
https://github.com/grbl/grbl/downloads tutak znajdziesz plik wsadowy hex
Mam pytanie czy mógłbyś opisać w jakim programie robisz projekty na cnc i w jakich formatach zapisujesz. Bo nie wiem skąd mam wziąć plik .hex
Świetny opis :)
Mam tylko jeden problem nie mogę pobrać programu Grbl Conntroler (brak dostępu). Można go pobrać z innego miejsca?
Rysunki techniczne na studia też robi?
Hej, czy jest możliwość ustawienia prędkości przesuwu podczas pracy ?
Jest niby opcja
default feed, mm/min (podzczas pracy)
default seek, mm/min (bez pracy)
Ale reaguje tylko opcja bez pracy- zmienia prędkość silników, natomiast opcja “feed” nie reaguje.
Gdzie może leżeć problem ?
Witam,
Czy jest możliwość podłączenia joystika do tego CNC aby można było manewrować bez konieczności klawiszy w komputerze?
Jeżeli tak, prosiłbym o małą radę jak można by było to zrobić lub podsunąć pomysł. Dzięki z góry
Witam, a skąd mogę zdobyć schemat lub opis konfiguracji tej przystawki do arduio
Wszystko fajnie, tylko skąd wziąć ten plik .HEX to jest pewnie firmware od jakiejś konkretnej wersji maszynki CNC, kupiłem części i złożyłem maszynkę (mini CNC 2417 + 2500mw laser CNC engraving machine Pcb Milling Machine Wood Carving machine with GRBL control) niechcący uszkodziłem płytkę sterującą Arduino NANO V3.0 16MHz-USB-ATmega328P-CH340, mam drugą nową ale bez “firmware” znalazłem w necie kilka plików do mini CNC z rozszerzeniem HEX ładują się przez Xloadera ale urządzenie na nich bardzo słabo działa, nie rozumie komend z komputera itp.
To było odnośnie tego fragmentu artykułu:
(1) Podłączamy Arduino i włączamy program XLoader. Klikając w przycisk „…” tuż przy samym oknie ścieżki wskazujemy nasz plik z wsadem o rozszerzeniu .HEX.
“1,25X = 1 ,gdzie X=4/5. Zatem 1600 4/5 = 12800” a mi mi wyszło 1280
Też od pewnego czasu badam temat przymierzam się do budowy frezarki cnc. Jednak jakoś ciągle wychodzą ważniejsze wydatki i plany są przekładne. Mam nadzieję, że uda się w końcu coś fajnego zbudować