Problem z g-codem (grbl) (Arduino+Ramps 1.4+A4988) POMOCY!

Dyskusje dotyczące programowania G-Code

Autor tematu
matetuh
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 9
Rejestracja: 30 kwie 2015, 23:57
Lokalizacja: woj. Łódzkie

Problem z g-codem (grbl) (Arduino+Ramps 1.4+A4988) POMOCY!

#1

Post napisał: matetuh » 08 cze 2015, 23:09

Witam, od pewnego czasu mam pewien problem. Posiadam zestaw Arduino Mega 2560 + RAMPS 1.4+ 3* A4988. Wszystko zamówione w chinach, przyszło elegancko opakowane, aż miło :p. Jest to cały zestaw elektroniki do drukarki 3d. Do tego silniki 1.76V, 2 A, dla osi XYZ. Wszystko razem fajnie śmiga, ale tylko dla jednej komendy wysłanej z Arduino (1.5.3), mianowicie

#define X_STEP_PIN 54
#define X_DIR_PIN 55
#define X_ENABLE_PIN 38
#define X_MIN_PIN 3
#define X_MAX_PIN 2

#define Y_STEP_PIN 60
#define Y_DIR_PIN 61
#define Y_ENABLE_PIN 56
#define Y_MIN_PIN 14
#define Y_MAX_PIN 15

#define Z_STEP_PIN 46
#define Z_DIR_PIN 48
#define Z_ENABLE_PIN 62
#define Z_MIN_PIN 18
#define Z_MAX_PIN 19

#define E_STEP_PIN 26
#define E_DIR_PIN 28
#define E_ENABLE_PIN 24

#define Q_STEP_PIN 36
#define Q_DIR_PIN 34
#define Q_ENABLE_PIN 30

#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13

#define FAN_PIN 9

#define PS_ON_PIN 12
#define KILL_PIN -1

#define HEATER_0_PIN 10
#define HEATER_1_PIN 8
#define TEMP_0_PIN 13 // ANALOG NUMBERING
#define TEMP_1_PIN 14 // ANALOG NUMBERING

void setup() {
pinMode(FAN_PIN , OUTPUT);
pinMode(HEATER_0_PIN , OUTPUT);
pinMode(HEATER_1_PIN , OUTPUT);
pinMode(LED_PIN , OUTPUT);

pinMode(X_STEP_PIN , OUTPUT);
pinMode(X_DIR_PIN , OUTPUT);
pinMode(X_ENABLE_PIN , OUTPUT);

pinMode(Y_STEP_PIN , OUTPUT);
pinMode(Y_DIR_PIN , OUTPUT);
pinMode(Y_ENABLE_PIN , OUTPUT);

pinMode(Z_STEP_PIN , OUTPUT);
pinMode(Z_DIR_PIN , OUTPUT);
pinMode(Z_ENABLE_PIN , OUTPUT);

pinMode(E_STEP_PIN , OUTPUT);
pinMode(E_DIR_PIN , OUTPUT);
pinMode(E_ENABLE_PIN , OUTPUT);

pinMode(Q_STEP_PIN , OUTPUT);
pinMode(Q_DIR_PIN , OUTPUT);
pinMode(Q_ENABLE_PIN , OUTPUT);

digitalWrite(X_ENABLE_PIN , LOW);
digitalWrite(Y_ENABLE_PIN , LOW);
digitalWrite(Z_ENABLE_PIN , LOW);
digitalWrite(E_ENABLE_PIN , LOW);
digitalWrite(Q_ENABLE_PIN , LOW);
}


void loop () {

// if (millis() %1000 <500)
// digitalWrite(LED_PIN, HIGH);
// else
// digitalWrite(LED_PIN, LOW);

// if (millis() %1000 <300) {
// digitalWrite(HEATER_0_PIN, HIGH);
// digitalWrite(HEATER_1_PIN, LOW);
// digitalWrite(FAN_PIN, LOW);
// } else if (millis() %1000 <600) {
// digitalWrite(HEATER_0_PIN, LOW);
// digitalWrite(HEATER_1_PIN, HIGH);
// digitalWrite(FAN_PIN, LOW);
// } else {
// digitalWrite(HEATER_0_PIN, LOW);
// digitalWrite(HEATER_1_PIN, LOW);
// digitalWrite(FAN_PIN, HIGH);
// }



if ( millis() %60000 < 300) {
digitalWrite(X_DIR_PIN , HIGH);
digitalWrite(Y_DIR_PIN , HIGH);
digitalWrite(Z_DIR_PIN , HIGH);
digitalWrite(E_DIR_PIN , HIGH);
digitalWrite(Q_DIR_PIN , HIGH);
digitalWrite(HEATER_0_PIN, LOW); digitalWrite(FAN_PIN, HIGH); digitalWrite(HEATER_1_PIN, LOW); digitalWrite(LED_PIN, HIGH);

}
else {
digitalWrite(X_DIR_PIN , LOW);
digitalWrite(Y_DIR_PIN , LOW);
digitalWrite(Z_DIR_PIN , LOW);
digitalWrite(E_DIR_PIN , LOW);
digitalWrite(Q_DIR_PIN , LOW);
digitalWrite(HEATER_0_PIN, HIGH); digitalWrite(FAN_PIN, LOW); digitalWrite(HEATER_1_PIN, HIGH); digitalWrite(LED_PIN, LOW);

}

digitalWrite(X_STEP_PIN , LOW);
digitalWrite(Y_STEP_PIN , LOW);
digitalWrite(Z_STEP_PIN , LOW);
digitalWrite(E_STEP_PIN , LOW);
digitalWrite(Q_STEP_PIN , LOW);

delay (1000);

digitalWrite(X_STEP_PIN , HIGH);
digitalWrite(Y_STEP_PIN , HIGH);
digitalWrite(Z_STEP_PIN , HIGH);
digitalWrite(E_STEP_PIN , HIGH);
digitalWrite(Q_STEP_PIN , HIGH);

delay (1000);

}

Gdy już wrzucę Marlin'a, lub inne g-cody i nawet program tj. Grbl Controller załapie kontakt, to komendy wysyłane, chodzi mi o ruchy osi XYZ nie działają. Silniki się nie kręcą.
Próbowałem też konfigurować ustawienia przez program, ustawiałem parametry itp, ale ani rusz, silniki nie działają. Pomocy ! Bawię się tak od 2 tygodni i już mnie szlak trafia za przeproszeniem. Co proponujecie ?
Macie jakieś rady ? co powinienem zrobić ? :)



Tagi:


zibi
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1280
Rejestracja: 24 lut 2007, 15:20
Lokalizacja: podkarpackie

#2

Post napisał: zibi » 09 cze 2015, 10:38

Po wpisaniu w google twojego kodu jest odzew https://www.google.pl/?gws_rd=ssl#q=%23 ... LED_PIN+13
Prześledź te strony może cię to naprowadzi. Jeśli masz dokumentację to ją zamieść.
NX CAD, NX CAM, FREZOWANIE 5AX, ELEKTRODRĄŻARKI WGŁĘBNE I DRUTOWE. PEPS, VERICUT. Pomagam w NX przez Team Viewer. Postprocesory NX.


Autor tematu
matetuh
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 9
Rejestracja: 30 kwie 2015, 23:57
Lokalizacja: woj. Łódzkie

#3

Post napisał: matetuh » 09 cze 2015, 22:35

Nie mam dokumentacji. Wstawiam zdjęcia :)

Obrazek

Obrazek

Obrazek

Obrazek

Obrazek

Obrazek

Obrazek

Obrazek

Obrazek

Obrazek

[ Dodano: 2015-06-09, 22:38 ]
Szukałem już różnych wersji Marlin'a, grbl-code'ów z GitHuba, czytałem trochę, ale nie potrafię widocznie do końca tego skonfigurować, żeby działało :/ Spotkał się ktoś już z takim problemem ?

[ Dodano: 2015-06-09, 22:51 ]
Załączę później link do mojego filmiku, który przedstawia pracę silniczków na kodzie podanym powyżej :)

[ Dodano: 2015-06-09, 23:29 ]


tomcat65
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 3
Posty: 1242
Rejestracja: 15 lis 2009, 02:46
Lokalizacja: Olsztyn
Kontakt:

#4

Post napisał: tomcat65 » 10 cze 2015, 13:22

Kod, który zamieściłeś to są tylko ustawienia dla mikrokontrolera, czyli przypisanie wyjść do poszczególnych pinów, działanie tych wyjść. Co robi pętla, nie wiem.
Z tego co pamiętam, grlb jest interpreterem g-kodów, bo samo Arduino tego nie robi..
Tym się nie zajmowałem, ale sporo info jest na stronie Arduino i odnośnikach.
Na moje raczej problem z konfiguracją grlb, bo to on wysyła sygnały do Arduino, a ono tylko rozdziela na poszczególne osie.


Autor tematu
matetuh
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 9
Rejestracja: 30 kwie 2015, 23:57
Lokalizacja: woj. Łódzkie

#5

Post napisał: matetuh » 10 cze 2015, 14:21

W takim wypadku zapytam tak: jak należy przeprowadzić konfigurację takiego malina ? Próbowałem już zmieniać w ustawieniach "pins" przypisane piny do poszczególnych złącz, tak jak jest to w kodzie powyżej, ale nadal nic :/ Może wie ktoś jak zrobić to poprawnie ? :)
Dodam, że wgrywalem juz różne wersje grbl i nadal nic, próbowałem konfigurować, ale widocznie musiałem coś przekombinowac
:)


tomcat65
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 3
Posty: 1242
Rejestracja: 15 lis 2009, 02:46
Lokalizacja: Olsztyn
Kontakt:

#6

Post napisał: tomcat65 » 10 cze 2015, 15:59

Ustawień pinów bym nie zmieniał. Trzeba później kablami mieszać.
Dostałeś jakieś papiery do tego?, albo na stronie sprzedawcy są jakieś info?
W grlb coś się ustawia - posuwy, skok śrub, rampy itp. Gdzieś na forum był jakiś przykład.
Tak na marginesie - ile za taką przyjemność z Chin ?


Autor tematu
matetuh
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 9
Rejestracja: 30 kwie 2015, 23:57
Lokalizacja: woj. Łódzkie

#7

Post napisał: matetuh » 10 cze 2015, 23:13

Cala elektronika, oprócz silniczkow, zasilacza i okablowania około 80 zł, dostawa darmowa. Trzeba jedynie uzbroić się w cierpliwość z dostawą, bo może iść do 30 dni. Do mnie akurat przesyłka trafiła po 10 dniach :)

[ Dodano: 2015-06-11, 00:03 ]
Znalazłem taką stronkę;
http://www.my-home-fab.de/Dokumentation ... AMPS-14/en
Pobrałem podanego Marlina i zrobiłem konfigurację, ale po wgraniu przez Arduino i odpaleniu Grbl Controller pojawiają sie takie informacje. Zamieszczam screeny :)

Obrazek

Obrazek

Naprawdę nie wiem co robić, żeby to w końcu ruszyło, tak jak powinno :/

Awatar użytkownika

k-m-r1
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 4
Posty: 1417
Rejestracja: 23 cze 2008, 10:38
Lokalizacja: OOL lub DW
Kontakt:

#8

Post napisał: k-m-r1 » 12 cze 2015, 21:13

ten pierwszy kod który odpalasz to gotowy program tylko do obracania silnikami i chyba nic więcej bo nie ma nawet komunikacji po RS więc skąd drugi program z g-kodem ma sie połączyć w arduino i przesyłać dane

dalej czy masz system 64 bit?

chyba cośza bardzo namieszałeś. znajdz jedną działąjącą sztuke na necie i wzorój sie
[b]MACH3 cnc[/b]Tworzenie Makr do palników magazynków THC OHC inne[b]EKRANY dla firm producentów maszyn[/b] Budowa sprzedaż wypalarki plazma gaz obrotnice Elektrodrążarki Frezarki Tokarki Giętarki3D inne wg zlecenia 888 708 196 Tomek Komor [email protected]


tomcat65
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 3
Posty: 1242
Rejestracja: 15 lis 2009, 02:46
Lokalizacja: Olsztyn
Kontakt:

#9

Post napisał: tomcat65 » 12 cze 2015, 23:33

k-m-r1 pisze: bo nie ma nawet komunikacji po RS
W Arduino nie ma takiego portu, tylko USB. Teoretycznie by można, ale żaden z pinów nie jest skonfigurowany jako IN w tym celu.
Tu wszystko powinno iść po USB.

Awatar użytkownika

k-m-r1
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 4
Posty: 1417
Rejestracja: 23 cze 2008, 10:38
Lokalizacja: OOL lub DW
Kontakt:

#10

Post napisał: k-m-r1 » 13 cze 2015, 09:26

Zakładam że autor wgrywa inny plik do arduino niż ten w pierwszym pości

Mam arduino freduino i inne mixy



w linku przykład odczytu z historią wartości dla elektrodrążarki

Nie mam przy sobie płytek inaczej bym sprawdził co może być problemem
[b]MACH3 cnc[/b]Tworzenie Makr do palników magazynków THC OHC inne[b]EKRANY dla firm producentów maszyn[/b] Budowa sprzedaż wypalarki plazma gaz obrotnice Elektrodrążarki Frezarki Tokarki Giętarki3D inne wg zlecenia 888 708 196 Tomek Komor [email protected]

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „G-CODE - programowanie”