Forum: Mikrocontroller und Digitale Elektronik Schrittmotoren mehrere Achsen Arduino Nano


von chris_ (Gast)


Lesenswert?

Da ich gerade einen Arduino Nano und ein paar Polulu Schrittmotortreiber 
herumliegen habe, wollte ich eine Mehrachsmotorsteuerung realisieren. 
Ursprünglich habe ich ein wenig selber programmiert, da ist mir aber 
eingefallen, dass es so etwas ja haufenweise im Netz geben sollte.

Gefunden habe ich GBRL

https://github.com/grbl/grbl

mit make kompilert und auf den Arduino Nano mit averdude geflasht.
Da ich keine Lust habe, die gesamten G-Code Befehle zu lernen such ich 
nach einer GUI.
Gefunden habe ich Pronterface

http://www.pronterface.com/

Das scheint sich aber mit GBRL nicht richtig zu vertragen

>Printer is now online
>error: Unsupported command

Was könnte falsch sein? Gibt es einen einfache GUI mit der ich einzelne 
Achsen bewegen kann?

von Frank G. (frank_g53)


Lesenswert?


von Werner M. (Gast)


Lesenswert?

chris_ schrieb:
> Da ich keine Lust habe, die gesamten G-Code Befehle zu lernen such ich
> nach einer GUI.

Um nur mal ein bisschen rum zu drehen, brauchst du nicht gleich den 
gesamten Befehlsvorrat zu lernen. Die paar notwendigen Befehle kannst du 
auch von einem Zettel ablesen, wenn es gar nicht anders geht. Später 
wird der G-Code sowieso von irgendeinem passenden Tool generiert.

von chris_ (Gast)


Lesenswert?

>Vielleicht ist das was für dich:
>Beitrag "Projekt: SerialComCNC Serielles Frontend für CNC GRBL mit ATMega"

Danke. Das klingt genau nach dem was ich suche. Allerdings läuft es 
scheinbar nur unter Windows ( Ich verwende Ubuntu ). Mal sehen, 
vielleicht kann man es aus virtualBox nutzen.
Eigentlich wäre es ganz praktisch, wenn es ein Java-Template gäbe, an 
dem man weiter programmieren kann. Z.B. mit rxtx und einfach 4 Tasten 
mit denen man die Motoren bewegen könnte.

von chris_ (Gast)


Lesenswert?

Der Einfachheit halber habe ich gerade eben "Processing" ausprobiert. 
Das ist so etwas wie "Arduino" für den PC.

https://processing.org/

Hier mein erstes Programm. Mit der linken und rechten Maustaste kann man 
die Motoren in zwei verschiedene Positionen bewegen:
1
import processing.serial.*;
2
3
Serial myPort;  // Create object from Serial class
4
5
void setup() 
6
{
7
  size(200, 200);
8
  
9
  String portName = "/dev/ttyUSB0";
10
  myPort = new Serial(this, portName, 115200);
11
12
}
13
14
void draw() {
15
  rect(25, 25, 150, 150);
16
}
17
18
void mousePressed() {
19
  if (mouseButton == LEFT) {
20
    fill(0);
21
    myPort.write("G0 X0 Y0"+"\n");
22
    //print("G0 X0 Y0"+"\n");
23
  } else if (mouseButton == RIGHT) {
24
    myPort.write("G0 X1 Y1"+"\n");
25
    //print("G0 X1 Y1"+"\n");
26
    fill(255);
27
  } else {
28
    fill(126);
29
  }
30
}

von chris_ (Gast)


Lesenswert?

Tschuldigung, nur halb kopiert. Zwei Zeilen fehlen über dem Programm 
noch:
1
import processing.serial.*;
2
3
// The serial port:
4
Serial myPort;

von chris_ (Gast)


Lesenswert?

Was für ein Programm nimmt man, um einfach G-Code Beispiele zu 
erstellen?

Vor einiger Zeit habe ich mal ein Video von David Beazley gesehen, in 
dem er die Daten für die CNC-Maschine algorithmisch in Python erzeugt:

https://www.youtube.com/watch?v=BWyDA5y6TIg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.