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: 1279
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: 1236
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: 1236
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: 1418
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
MACH3 cncTworzenie Makr do palników magazynków THC OHC inneEKRANY dla firm producentów maszyn Budowa sprzedaż wypalarki plazma gaz obrotnice Elektrodrążarki Frezarki Tokarki Giętarki3D inne wg zlecenia 888 703 196 Tomek Komor [email protected]


tomcat65
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 3
Posty: 1236
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: 1418
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
MACH3 cncTworzenie Makr do palników magazynków THC OHC inneEKRANY dla firm producentów maszyn Budowa sprzedaż wypalarki plazma gaz obrotnice Elektrodrążarki Frezarki Tokarki Giętarki3D inne wg zlecenia 888 703 196 Tomek Komor [email protected]

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „G-CODE - programowanie”