Forum: Mikrocontroller und Digitale Elektronik GCode erweitern?


von Skjervoy (Gast)


Lesenswert?

Hi,

ich habe hier eine Spezialanwendung, welche per GCode gesteuert werden 
soll, die aber ein paar zusätzliche Parameter benötigt, die vom Standard 
bisher nicht abgedeckt werden (Frequenz, Pulsweite, 4 verschiedene 
Delay-Parameter und noch ein bisschen mehr Kleinkram).

Gibt es irgend eine Regel, nach der man GCode um eigene Parameter 
erweitern sollte oder kann ich da beliebige Kommandos reinschreiben, so 
lange die nicht mit einem bereits existierenden Kommando kollidieren?

Danke!

von Walter T. (nicolas)


Lesenswert?

Man kann da beliebige eigene Kommandos reinschreiben, solange sie nicht 
mit anderen kollidieren. Insbesondere M-Codes. Natürlich verstehen dann 
die gängigen CAM-Programme nicht mehr den G-Code.

Skjervoy schrieb:
> (Frequenz, Pulsweite, 4 verschiedene
> Delay-Parameter und noch ein bisschen mehr Kleinkram)

Das klingt nach Funkenerosion. Da würde ich eher mal in einem CNC-Forum 
nachfragen, wie ähnliche Maschinen gesteuert werden.

von Skjervoy (Gast)


Lesenswert?

Walter T. schrieb:
> Das klingt nach Funkenerosion.

Nö, Laserbearbeitung ;-) Welches CNC-Forum kannst du denn empfehlen?

von Walter T. (nicolas)


Lesenswert?

CNCecke.de - früher hätte ich den Ton dort als rauh empfunden, aber 
heute ist es hier schlimmer.

von Skjervoy (Gast)


Lesenswert?

Schade, das Forum funktioniert nicht. Auf eine Anmeldung hin kommt keine 
Bestätigungsmail und auf eine entsprechende Fehlermeldung/Nachricht 
reagiert auch keiner - scheint wohl tot zu sein.

von Walter T. (nicolas)


Lesenswert?

Skjervoy schrieb:
> scheint wohl tot zu sein.

Hm. Nein. Funktioniert bei mir.

von Herbert (Gast)


Lesenswert?

Skjervoy schrieb:
> Schade, das Forum funktioniert nicht. Auf eine Anmeldung hin kommt keine
> Bestätigungsmail und auf eine entsprechende Fehlermeldung/Nachricht
> reagiert auch keiner - scheint wohl tot zu sein.

Zum Glück ist es alles andere als tot. Nur die Bestätigungsmail scheint 
echt nicht zu funktionieren. Ich habe einem der Moderatoren mal 
geschrieben.

Skjervoy schrieb:
> Gibt es irgend eine Regel, nach der man GCode um eigene Parameter
> erweitern sollte oder kann ich da beliebige Kommandos reinschreiben, so
> lange die nicht mit einem bereits existierenden Kommando kollidieren?

Es gibt sog. M Codes die für die Zusatzfunktionen der Maschine zuständig 
sind. Diese M Codes sind aber nicht "genormt" bzw. Verbindlich. Es kommt 
also auf das Steuerprogramm (z.B. Mach3, LinuxCNC) an was es aus den M 
Codes macht. In LinuxCNC sind einige M Codes reserviert für genau solche 
Anwendungen wie deine. LinuxCNC würde dann ein / dein Programm ausführen 
das  du vorher spezifiziert hast, welchem du Parameter mit übergeben 
kannst. 
http://www.linuxcnc.org/docs/devel/html/gcode/m-code.html#mcode:m100-m199


Walter T. schrieb:
> Man kann da beliebige eigene Kommandos reinschreiben, solange sie nicht
> mit anderen kollidieren. Insbesondere M-Codes. Natürlich verstehen dann
> die gängigen CAM-Programme nicht mehr den G-Code.

Das CAM generiert den G-Code, liest ihn aber nie ein! Um die 
entsprechenden M-Codes automatisch zu generieren braucht jedes CAM einen 
sog. Präprozessor das den G-Code/M-Code/O-Code so formatiert/generiert, 
dass die Steuersoftware es versteht.

von Walter T. (nicolas)


Lesenswert?

Herbert schrieb:
> Das CAM generiert den G-Code, liest ihn aber nie ein!

Jein. Vielleicht etwas mißverständliche Formulierung:

1) eigene Erweiterungen im G-Code kann ein CAM nicht erzeugen - 
höchstens als handgeschriebene Präambeln oder Postfixe.

2) Ein Backplotter kann damit natürlich auch nichts anfangen.

Nun ist aber Laserbearbeitung kein so exotisches Thema, daß sich da 
nicht garantiert schon der ein oder andere Pseudostandard etabliert hat 
- deswegen mein Rat: Jemanden fragen, der soetwas benutzt.

von Skjervoy (Gast)


Lesenswert?

Herbert schrieb:
> Zum Glück ist es alles andere als tot. Nur die Bestätigungsmail scheint
> echt nicht zu funktionieren. Ich habe einem der Moderatoren mal
> geschrieben.

Dann funktioniert das Kontaktformular, über das man solche Probleme 
melden kann, scheinbar auch nicht :-o

> http://www.linuxcnc.org/docs/devel/html/gcode/m-co...

Das klingt ja schon mal sehr gut! Auch wenn es die meisten Steuerungen 
dann nicht interpretieren können, würde ich ungern irgend was komplett 
neues erfinden was dann nicht mal mehr nach GCode aussieht (was ich bei 
einer Software schon gesehen habe, die schreiben da ihren Firmennamen 
als GCode-Kommando rein!)

von michael_ (Gast)


Lesenswert?

Es kommt nicht darauf an, was du da erstellen kannst.
Sondern was deine Maschine versteht.
Was hast du denn für eine?
Welcher G-Code von welcher Firma läuft da drauf?
Sehr bekannt sind die Erweiterungen des G-Codes von Siemens.
Sieh dir diese mal an.
Für deine Anwendung reichen die erweiterten M-Befehle mit Sicherheit 
aus.

Die Anpassung zwischen deinem CAD und der Maschine nennt man 
Postprozessor.
Der ist relativ teuer bzw. wird mit der Maschine mitgeliefert.

von Sebastian S. (amateur)


Lesenswert?

Ich würde mich der Meinung von Walter anschließen: Für den Laser sollte 
es bereits einige Steuerbefehle geben.
Wird ja oft genug zum Schneiden verwendet.
Da wird ja wohl keiner eine eigene Beschreibungssprache entworfen haben.

von michael_ (Gast)


Lesenswert?

Skjervoy schrieb:
> Nö, Laserbearbeitung ;-) Welches CNC-Forum kannst du denn empfehlen?

Hatte ich überlesen.
Wir haben mal Acryl bearbeitet, sogar die Tiefe des Schnittes 
eingestellt.
Wo ist dein Problem? Ich habe da noch paar alte Unterlagen.
Schwierig war die Laserleistung abzuschwächen bei der Kurvenfahrt.

von Skjervoy (Gast)


Lesenswert?

michael_ schrieb:
> Es kommt nicht darauf an, was du da erstellen kannst.
> Sondern was deine Maschine versteht.
> Was hast du denn für eine?
> Welcher G-Code von welcher Firma läuft da drauf?

Das ist nicht das Problem, es soll auf beiden Seiten eine eigene Lösung 
zum Einsatz kommen. D.h. im Prinzip könnte ich die neuen Kommandos 
benennen wie ich will, da das System aufeinander abgestimmt ist.

Allerdings soll das schon ordentlich werden. Im Netz sind die angeblich 
bereits vorhandenen Kommandos für Laserparameter übrigens nicht zu 
finden...

von michael_ (Gast)


Lesenswert?

Die wirst du auch nicht so finden.
Mit den M-Befehlen kann man z.Bsp. die Spindelgeschwindigkeit 
einstellen.
Du mußt da den Parametern analog deine Lasereinstellung zuordnen.
Ein- und Ausschalten des Lasers geht über die normalen Kommandos.

Hier mal eine Übersicht:
https://cache.industry.siemens.com/dl/files/403/28755403/att_79171/v1/PGT_0407_en.pdf

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.