Krabice pro ruční ovládání nejen CNC

pgerla
Příspěvky: 400
Registrován: 11 dub 2013, 00:17

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od pgerla »

Pokud mě paměť neklame tak 3D tiskárny mají firmware v jednom MCU ("Arduinu") takže nějaká externí komunikace (ovladací tlačítka) ---> GRBL tam vůbec není ;) Pokud nechápeš co je G-code interpret, co znamená zkratka PLC, co je to interpolace atd. Prostě jsi si jen nedohledal jak fungují CNC stroje obecně, pak je težké radit přes internet, bez fyzické ukázky. Zajeď si do Prahy, ať víš do ceho jdeš.
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od jrt »

DavidJK píše: 16 dub 2019, 23:03 Ještě jednou díky a když mi pošlete nějaký odkaz na komunikaci Arduina s GRBL tak bych byl vděčný.
Takhle vypadá program, který posílá z Arduina G-kód do GRBL (obousměrná komunikace):

Kód: Vybrat vše

#define TIMEOUT 5000

float x = 0.0, y = 0.0, z = 0.0;
float speed=60.0;

void grblSendCommand(String message) {
  String reply;
  uint16_t retries=0;
  do {
    while (Serial.available()) {
      Serial.read();
    }
    reply = "";
    Serial.print(message);
    Serial.print('\n');
    reply = Serial.readStringUntil('\n');
    retries++;
    if (retries>10) break;
  } while (!(reply.startsWith("ok")));
}

void grblGoTo(float x, float y, float z) {
  grblSendCommand("G1 X" + String(x, 5) + " Y" + String(y, 5) + " Z" + String(z, 5));
}

void grblSetSpeed(float f) {
  grblSendCommand("F" + String(f, 5));
}

void grblHome(void) {
    while (Serial.available()) {
    Serial.read();
  }
  Serial.print("$H");
  Serial.print('\n');
  Serial.setTimeout(30000);
  Serial.readStringUntil('\n');
  Serial.setTimeout(TIMEOUT);
}

void setup() {
  Serial.begin(115200);
  Serial.setTimeout(TIMEOUT);
  Serial.print("\r\n\r\n");
  delay(500);
  while (Serial.available()) {
    Serial.read();
  }
  //grblHome();
  grblSetSpeed(60.0);
}

void loop() { // run over and over
  grblSetSpeed(60.0);
  grblGoTo(0, 0, 0);
  grblGoTo(1, 0, 0);
  grblGoTo(1, 1, 0);
  grblGoTo(1, 1, 1);
}
Ten program si musíš samozřejmě upravit tak, aby četl data z SD karty.
Arduina jsou propojena přes sériové rozhraní v úrovních TTL (piny 0 a 1).
jrt
DavidJK
Příspěvky: 60
Registrován: 24 úno 2013, 23:24

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od DavidJK »

jrt píše: 23 dub 2019, 09:31 Takhle vypadá program, který posílá z Arduina G-kód do GRBL (obousměrná komunikace):
Díky za pomoc. Je to pro mě trochu nesrozumitelné. Jelikož nenám znalosti jak fungují knihovny Arduina.
Pokusím se to vyzkoušet, když nebudu vědět co dál tak Tě budu otravovat dál :) .
Ještě jednou díky.
DavidJK
Příspěvky: 60
Registrován: 24 úno 2013, 23:24

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od DavidJK »

pgerla píše: 22 dub 2019, 21:45 Pokud mě paměť neklame tak 3D tiskárny mají firmware v jednom MCU ("Arduinu") takže nějaká externí komunikace (ovladací tlačítka) ---> GRBL tam vůbec není ;) Pokud nechápeš co je G-code interpret, co znamená zkratka PLC, co je to interpolace atd. Prostě jsi si jen nedohledal jak fungují CNC stroje obecně, pak je težké radit přes internet, bez fyzické ukázky. Zajeď si do Prahy, ať víš do ceho jdeš.
Kolega co používá tiskárnu Průša mi vysvětlil, že tiskárna čte přímo z SD karty do controléru.
Díky
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od jrt »

DavidJK píše: 23 dub 2019, 21:46
jrt píše: 23 dub 2019, 09:31 Takhle vypadá program, který posílá z Arduina G-kód do GRBL (obousměrná komunikace):
Díky za pomoc. Je to pro mě trochu nesrozumitelné. Jelikož nenám znalosti jak fungují knihovny Arduina.
Pokusím se to vyzkoušet, když nebudu vědět co dál tak Tě budu otravovat dál :) .
Ještě jednou díky.
No, já nevím, školy nemám, ale přesto v tom kódu vidím jen knihovnu serial, která je velmi dobře zdokumentovaná i v češtině.
Ještě se kouknu po programu pro PICAXE, který je sice mnohem jednodušší, ale díky tomu, že nekomunikuje obousměrně, tak se musí dávat pozor na přetečení bufferu v GRBL. A povely jsou samozřejmě natvrdo v programu, jedná se jen o testování.

"Otravování" mi nevadí, ale pro tento případ by opravdu byla vhodná návštěva Malostranského robodoupěte. Ovšem zdůrazňuji, že musíš svůj požadavek na konzultaci GRBL vznést dostatečně předem, aby byl k dispozici hardware i software a lidi, kteří s nimi umí zacházet. :D
jrt
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od jrt »

Tak jsem si nakonec vzpomněl, že mám vzorový program pro komunikaci PICAXE -> GRBL i na flashce, takže tady je:

Kód: Vybrat vše

'GRBL test

#picaxe 08m2
#no_data
setfreq m8

symbol txpin=C.2

setfreq 8m
serout txpin,T9600_8,("G0 X100",13,10)
serout txpin,T9600_8,("G0 Y100",13,10)
serout txpin,T9600_8,("G0 Z100",13,10)
Program pohne osou X, potom osou Y a pak osou Z vždy o 100 mm a skončí. Pozor na to, že jsem používal komunikační rychlost 9600 Bd, na kterou mi kolega musel upravit GRBL, ale nové PICAXE už tuším rychlost 115200 zvládají. A i kdyby ne, tak tento program by snad nebylo tak těžké pro Arduino upravit.
jrt
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1519
Registrován: 16 úno 2013, 14:26

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od Dex »

"Nové" PICAXE mají hw sériák a s rychlostí 115k2 opravdu není žádný problém ;)
"all your robots are belong to us"
robodoupe.cz
DavidJK
Příspěvky: 60
Registrován: 24 úno 2013, 23:24

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od DavidJK »

Díky za informace.
Sice nevím jak funguje Arduino, ale dalším levelem by bylo číst přímo z USB Flasch paměti.
Nevím jestli budu mít 11.5 čas jet do Prahy. Takže do kdy mám dát vědět, odborníkům jestli by mohli přijít ukázat jak komunikaci provozovat?
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od jrt »

DavidJK píše: 25 dub 2019, 22:17 Sice nevím jak funguje Arduino, ale dalším levelem by bylo číst přímo z USB Flasch paměti.
Tak to by asi bylo dobře se nejdřív s tím Arduinem seznámit, protože číst data z flashky Arduinem bude pro tebe nejspíš tvrdý oříšek.
Zkus si nejdřív prostudovat třeba tohle.
Nevím jestli budu mít 11.5 čas jet do Prahy. Takže do kdy mám dát vědět, odborníkům jestli by mohli přijít ukázat jak komunikaci provozovat?
Co nejdřív, protože nejspíš tě ti "odborníci" nejdřív budou muset trochu usměrnit v nápadech, pak zjistit hloubku tvých znalostí (... sice nevím jak funguje Arduino...) a pak teprve bude možno začít uvažovat o nějakém předvádění a vysvětlování na Robodoupěti. Hlavně nezapomeň, že ne každý tohle fórum sleduje 24 hodin denně a i kdyby ano, tak nemá možnost okamžitě se zabývat řešením problémů, které nejsou momentálně v ohnisku jeho zájmů.
jrt
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1519
Registrován: 16 úno 2013, 14:26

Re: Krabice pro ruční ovládání nejen CNC

Příspěvek od Dex »

Když se ošidí základy, tak barák spadne. Proto bych doporučil nejdříve rozblikat na Arduinu LEDku (českých návodů jak na to je nepočítaně) a teprve potom můžeme řešit něco dalšího.
"all your robots are belong to us"
robodoupe.cz
Odpovědět