Znaleziono 14 wyników

autor: drzasiek90
12 mar 2021, 08:53
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

Problem rozwiązany, Wymiana płytki arduino uno na nową pomogła. Czemu? Nie wiem.
autor: drzasiek90
08 mar 2021, 20:07
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

No więc ploter już gotowy (albo dopiero) i co prawda nie laser a nóż wleczony (koncepcja się zmieniła) ale działa całkiem dobrze. Mam jednak problem, nie wiem czy z cnc shield czy ze sterownikami. Otóż pojawiały mi się niekiedy na silnikach chwilowe momenty wyłączenia, tzn maszyna stoi i nagle któryś silnik puszcza i za około sekundę znowu zaczyna trzymać (tak jakby się resetował). Jednak nie jest to reset grbl tylko jednego sterownika. Wymieniłem wszystkie sterowniki (Stepstick A4988) i problem niby ustał jednak czasem pojawia się taki efekt. Czy to się zdarza komuś jeszcze czy po prostu muszę coś szukać indywidualnie u siebie? Wydaje mi się, że za dużo zabawek pracuje na grbl aby to był problem globalny, jednak nie mam pomysłu jaka może być przyczyna. Maszyny buduję nie od dziś, elektroniką zajmuję się również od dawna i nie zrobiłem tego na odwal się. Wszystkie przewody ułożone, spięte, do CNC Shield nie wpinane a przylutowane (ponieważ zauważyłem, że jak ruszam kablami to potrafiło tracić kontakt) Jedyne połączenia rozłączne to adruino <->cnc shield oraz CNC shield <-> sterowniki.
autor: drzasiek90
21 sty 2021, 08:31
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

TOP67 pisze:
20 sty 2021, 23:24
Ciesz się, że nie wybrałeś wersji do Arduino Nano. Tam dodatkowo zaminili sygnały STP i DIR we wszystkich osiach oraz podciągnęli jumpery od mikrokroku do masy zamiast +5V.

Gdybyś jednak wybrał konfigurację odpowiednią do swojej płytki, to napisy by się zgadzały. Tylko nie było by PWM.
Szczerze mówiąc to nic nie wybrałem, ponieważ decyzja o przygotowaniu takiego plotera trochę mi weszła w paradę i chciałem pójść po najniższej linii oporu. Kupiłem gotową ramę z silnikami i płytkami, dopiero później zacząłem się zastanawiać jak to podłączyć. Początkowo chciałem zrobić to na LinuxCNC, ale skoro płytka Arduino z CNC Shield była w zestawie, gdzieś tam widziałem że jest fajny program Laser GRBL więc postanowiłem spróbować.
Tym bardziej, że żona pracuje na Windowsie więc tutaj nie trzeba będzie dodatkowego komputera, dodatkowego programu CAM. Kupiłem ESP8266 (co też będzie dla mnie nowością) i spróbuje to jeszcze połączyć bezprzewodowo bo maszyna będzie stała w odległym od komputera miejscu pracowni więc jeden plątający się kabel mniej jeśli się uda.
autor: drzasiek90
20 sty 2021, 23:05
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

Wiem że autorzy GRBL nie produkują płytek, natomiast nie do końca wiedziałem skąd wynikają te zmiany bo nie śledzę tematu GRBL.
Może kiedyś będę miał czas się tym pobawić i zobaczyć jak to jest zrobione.
Tymczasem do tej pory GRBL znałem tylko z nazwy, Arduino omijałem szerokim łukiem.
Faktycznie oznaczenia na płytce nieco mylą, natomiast ze względu na moje minimalne zainteresowanie GRBL nie go końca zorientowałem się gdzie szukać tych informacji co jest na którym pinie w aktualnej konfiguracji.
Dzięki za pomoc i naprowadzenie.
autor: drzasiek90
20 sty 2021, 22:53
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

Ok, wygląda na to że działa.
Zabrakło mi informacji, że limit Z podłączony jest do D12.
Zrobię podsumowanie, może komuś się przyda za jakiś czas.

Założenie jest takie:
Ploter 2 osie (X i Y), 2 silniki na osi Y, niezależne bazowanie silników aby zachować geometrię, sterowanie PWM do lasera.

Sprzęt:
Arduino UNO oraz CNC-Shield V3.

Konieczne działania sprzętowe:
Zamontować sterowniki do gniazd: X, Y oraz A
Na płytce CNC Shield należy połączyć wyjścia A3/A4 Arduino UNO (czyli CoolEn i SDA na CNC Shield V3) do wejść STEP i DIR sterownika silnika A za pomocą przewodów wpiętych na listwy kołkowe (rysunek poniżej)
Obrazek
Silnik X podłączyć do gniazda silnika X.
Silnik Y1 podłączyć do gniazda silnika Y.
Silnik Y2 podłączyć do gniazda silnika A.
Krańcówkę silnika X podłączyć do pinu D9 arduino UNO czyli do pinów X+ lib X- na cnc shield v3.
Krańcówkę silnika Y1 podłączyć do pinu D10 arduino UNO czyli do pinów Y+ lib Y- na cnc shield v3.
Krańcówkę silnika Y2 podłączyć do pinu D12 arduino UNO czyli do pinu SpnEn na cnc shield v3.
Wyjscie PWM podłączyć do pinu D11 Arduino UNO czyli do pinów Z_ lub Z- na cnc shield v3.

Poniżej schemat obrazkowy:
Obrazek

Zmiany w programie:
W pliku config:

Należy odkomentować lub wpisać następujące definicje:

Kod: Zaznacz cały

#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS))
#define ENABLE_DUAL_AXIS
#define DUAL_AXIS_SELECT  Y_AXIS
#define DUAL_AXIS_CONFIG_PROTONEER_V3_51
Dodane 6 minuty 40 sekundy:
tuxcnc pisze:
20 sty 2021, 22:13
Szlag mnie za chwilę trafi.
ARDUINO NIE MA PINÓW Z+ i Z- !!!!
Weź czymś wydrap te debilne napisy, albo wszystko będzie Ci się pieprzyć w nieskończoność !
Nie napisałem nigdzie, że Z+ i Z- to piny płytki arduino. Jeśli tak, to wskaż gdzie, może przez przypadek, może niefortunny zapis.
We fragmencie który zacytowałeś napisałem, że piny opisane Z+ i Z- na płyty CNC Shield V3 podłączone są do pinu D11 arduino. Czy to jest nieprawda?
Jeśli masz się flustrować to po prostu nie czytaj i nie pisz.

Generalnie całe to Arduino i CNC Schield to dość spory syf, bo skoro coś się opisuje na płytce to taką funkcję powinno mieć. Natomiast jeśli coś jest zmienne to nie powinno posiadać stałego opisu. Nie rozumiem jaki autorzy grbl maja problem, aby dla płytki CNC Shield trzymać się jej opisów. Chyba, że po prostu niektóre piny muszą być zamienione bo sprzętowo nie mogą zrealizować jakiejś funkcji. Nie analizowałem tego kodu.
autor: drzasiek90
20 sty 2021, 21:55
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

tuxcnc pisze:
20 sty 2021, 21:41
Jak będziesz patrzył na te debilne napisy, to nigdy do niczego nie dojdziesz.
Przecież napisałem tylko co jest na tych pinach, aby wiadomo było o które piny chodzi. Na płytce Z+ i Z- są połączone razem i podłączone do pin D11 płyty arduino a na tym wyjściu jest sygnał PWM więc nie może tam być krańcówka.
Wejścia X oraz Y krańcówek działają i nawet pasują do opisów. Są podłączone do pinów D9 i D10 płyty arduino.
Nie sugeruję się opisami tylko piszę co gdzie jest.
autor: drzasiek90
20 sty 2021, 21:35
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

Zasugerowałem się tym co pisał TOP67 oraz jest zapisane w pliku config:
It would best be implemented by sharing all limit switches
// on pins D9/D10 (as [X1,Z]/[X2,Y] or [X,Y2]/[Y1,Z]), home each axis independently, and
// updating lots of code to ensure everything is running correctly.
Na pinach opisanych na cnc shield v3 jako Z+ i Z- jest wyjście PWM.
autor: drzasiek90
20 sty 2021, 20:55
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

Coś mam kłopot z tym bazowaniem.
Krańcówkę X podłączam pod X-, krańcówkę Y1 podłączam pod Y+, krańcówkę Y2 podłączam pod X+
Oś X bazuje się dobrze.
Podczas bazowania osi Y kręcą obydwa silniki osi Y jednak nie reaguje na krańcówkę podpiętą do X+. Reakcja jest tylko na krańcówkę Y+, po czym się wyłącza bo jak widać zadziała zabezpieczenie zdefiniowane:
#define DUAL_AXIS_HOMING_FAIL_AXIS_LENGTH_PERCENT 5.0 // Float (percent)
#define DUAL_AXIS_HOMING_FAIL_DISTANCE_MAX 25.0 // Float (mm)
#define DUAL_AXIS_HOMING_FAIL_DISTANCE_MIN 2.5 // Float (mm)
autor: drzasiek90
19 sty 2021, 23:36
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

Coś pominąłem bo nie kręci drugim silnikiem Y.
Podsumuję co zrobiłem.
Na CNC Shield podłączyłem stepsticki na gniazdo X, Y,A oraz podłączyłem do nich silniki.
Połączyłem przewodami CoolEn(A3) do A.DIR oraz SDA(A4) do A.STEP, jak na rysunku:
Obrazek
W pliku config ustawiłem następujące opcje:

Kod: Zaznacz cały

#define ENABLE_DUAL_AXIS
#define DUAL_AXIS_SELECT  Y_AXIS
#define DUAL_AXIS_CONFIG_PROTONEER_V3_51
#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS))
Skompilowałem, wgrałem.
Silnik X kręci, silnik Y kręci, drugi silnik nie kręci.

Dodane 10 minuty 8 sekundy:
Ok, fałszywy alarm. Nie działało bo uszkodził się stepstick w międzyczasie. Po podmianie silniki kręcą.
Jutro spróbuję bazowanie i sprawdzę czy działa PWM.
Dzięki za pomoc, udało się uruchomić bez zagłębiania się w program jak to działa bo chwilowo nie mam na to czasu.
autor: drzasiek90
19 sty 2021, 22:37
Forum: Ogólne Dyskusje na Temat Systemów Sterowania CNC
Temat: GRBL - 2 silniki na oś i niezależne bazowanie
Odpowiedzi: 33
Odsłony: 4172

Re: GRBL - 2 silniki na oś i niezależne bazowanie

TOP67 pisze:
19 sty 2021, 21:16
Oficjalnie są dwie konfiguracje.
Dla płytki CNC Shield V3 bez PWM, ale ze sterowaniem na D12 i D13, które są wyprowadzona na zworki. Aby włączyć PWM trzeba by trochę pozmieniać w trzech plikach.
Dla Protoneer v3.3 z PWM, ale ze sterowaniem na A3 i A4. Zworek trzeba by połączyć kynarem wejścia stepsticka z portami A3 i A4 lub zmienić przypisania w cpumap.h
Ok, ja mam cnc shield V3 i potrzebuję PWM do sterowania mocą lasera.
Jaki jest najszybszy i najprostszy aby uruchomić sterowanie osią sklonowaną i mieć wyjście PWM?

Dodane 3 minuty 12 sekundy:
Czy wystarczy że skompiluję z opcją:
#define DUAL_AXIS_CONFIG_PROTONEER_V3_51
i podłączę piny A4 oraz A3 do do STEP i DIR sterownika A?

Wróć do „GRBL - 2 silniki na oś i niezależne bazowanie”