Forum: PC-Programmierung G-Code Achse neben Programmablauf bewegen lassen


von Karl (Gast)


Lesenswert?

Hallo zusammen,

hat jemand von euch eine Idee, wie ich mit G-Code ein Programm ablaufen 
lassen kann (mit den Achsen X,Y,Z) und gleichzeitig soll eine 4. Achse 
(U) sich gleichmäßig linear bewegen.

Nacheinander bewegen lassen, funktioniert schon, jedoch muss die 4. 
Achse sich bewegen, während das Programm abläuft. Hat jemand von euch 
hierfür eine Idee?

Vielen Dank schonmal für eure Hilfe.

Gruß Karl

von Jens (Gast)


Lesenswert?

Das kommt auf deine Umgebung an. Es gibt Controllerkarten, die das gar 
nicht unterstützen. (alte Isel Teile).
Was verwendest du denn für eine Software und Hardware?

Gruß, Jens

von Karl (Gast)


Lesenswert?

Die Software heißt

WinPC-NC Economy

Version: 2.10/26

von Jens (Gast)


Lesenswert?

Das ist ja nur die Interpretersoftware, die den G-Code auf die 
Motorsignale umsetzt.
Kannst du den Code auch erzeugen? Also ich bin jetz nicht so fit in 
G-Code, aber du musst ja deine Fräsbahnen irgendwie generieren. Da 
kannst du dann direkt die Drehung mit einbauen.
Ansonsten kannst du noch ENC² versuchen. Das ist eine freie Software auf 
Linux Basis. Die kann bis 5 Achsen.
Das ganze ist aber noch spekuliert. Vielleicht schreibst du mal ganz 
genau was du tun willst und wie das Ganze ablaufen soll! Weiter noch was 
du für eine Maschine hast und vielleichzt auch mit Fotos, wenn das 
hilft, zu Erklären was da zu tun ist.

Gruß, Jens

von Karl (Gast)


Lesenswert?

Hallo,

das ganze ist eine Klebevorrichtung.

Das heißt es gibt 3 Achsen (X, Y, Z), die eine beliebige Kontur 
abfahren. Als "Werkzeug" ist eine Spritze (gefüllt mit Kleber) mit 
Spindel+Motor (4. Achse U) angebracht.

Nun will ich z.B. ein Kreis abfahren und gleichzeitig soll Kleber 
aufgetragen werden. Also muss ich zunächst an den Startpunkt des Kreises 
fahren. Dann die 4. Achse (mit Vorschub X) starten das Kleber kommt und 
gleichzeitig den Kreis fahren und dann die 4. Achse stoppen, wenn der 
Kreis fertig ist.

Jeweils einzeln den Kreis abfahren oder die 4. Achse bewegen das Kleber 
herauskommt ist kein Problem, aber was ich noch nicht herausgefunden 
habe, wie ich beides gleichzeitig machen kann.

Die Steuerung und Hardware unterstüzt dies. Das einzige was unklar ist, 
wie ich per G-Code ausdrücke, dass zwei Dinge gleichzeitig gemacht 
werden sollen.

Beim Fräsen ist dies einfacher. Da kann ich sagen Spindelmotor 
einschalten, Fräsen, Spindelmotor ausschalten. Aber ich habe ja statt 
einem Spindelmotor eine weitere Achse.

Vielen Dank.

von ich (Gast)


Lesenswert?

Steppermotor als 4. Achse?
Wenn ja kannst du doch nach jeden Schritt der anderen Achsen einfach 
einen Stepp der 4. Achse anweisen.

von ich (Gast)


Lesenswert?

> Die Steuerung und Hardware unterstüzt dies. Das einzige was unklar ist,
> wie ich per G-Code ausdrücke, dass zwei Dinge gleichzeitig gemacht
> werden sollen.

Geht meiner Meinung nach nicht, da jeder Befehl einzeln ausgeführt wird.

von Michael_ (Gast)


Lesenswert?

Du brauchst keine 4 Achsen!
Einen Kreis fährst du nicht mit X,Y,Z , sondern nur mit X, Y .
Dann hast du die Z-Achse doch frei.
Was du dachtest mit
>Beim Fräsen ist dies einfacher. Da kann ich sagen Spindelmotor
>einschalten, Fräsen, Spindelmotor
ist 2-1/2D. Das sind spezielle Befehle im G-Code, welche du relativ frei 
zuordnen kannst.
Mit 3 Achsen kommst du gut hin.
Suche mal nach dem G-Code, möglichst den von Siemens. Vor allem in 
Zusatzfunktionen wie Bogen, Kreis, M-Befehle kocht jeder 
Steuerungshersteller sein eigenes Süppchen.

von Pieter (Gast)


Lesenswert?

moin moin,

schon richtig, der Kreis braucht "eigendlich" nur X,Y. ABER, wenn Z mit 
angegeben kann das vom Interpreter auch als Helix gewertet werden.
M.M. nach so
G01 X Y  ;Startpunktanfahren
G01 Z-1  ;Spritze aufsetzen
G01 X Y  ;Kreisfahren
G01 Z+1  ;Spritze hoch

Mit Gruß
Pieter

von Reinhard Kern (Gast)


Lesenswert?

Hallo,

der übliche Weg ist, eigene G-Befehle zu verwenden (also die 
Interpreter-Software zu ergänzen), etwa mit G123 = Kleber marsch und 
G456 = Kleber stop.

Eine Alternative ist die Verwendung einer 4- oder 5-Achs-Steuerung, die 
z.B. zusätzlich zum XYZ-Weg den Fräskopf drehen kann - damit steuert man 
dann den Klebepistolenvorschub. Ist natürlich universeller, da kann man 
sogar die Stärke des Kleberauftrags wegabhängig regeln.

Gruss Reinhard

von Dennis H. (c-logic) Benutzerseite


Lesenswert?

Also eine 4te Achse abhängig vom fortgelegten Weg der Achsen XY ?
Gibt es eine Möglichkeit die 4te Achse mit dem zurückgelegten Weg zu 
verkoppeln ?
Andererseits kann man auch die 4te Achse direkt ins Programm integrieren 
in Abhängigkeit von der Länge des zurückgelegten Weges, wenn es die 
Möglichkeit gibt die 4 Achsen komplett synchron laufen zu lassen.

von Pieter (Gast)


Lesenswert?

moin moin,

also 4.Achse wäre mir da zu aufwendig.
Da ich einen selbstgeschriebenen G-Code-Interpreter verwende, wäre es 
kaum Aufwand die 4.Achse zu realisieren.
Aber: Bei einer Fräse wird was abgetragen, dazu ist die Steuerung 
ausgelegt. Hier soll was aufgetragen werden, wo ist den nun wirklich ein 
unterschied? Nur im Vorzeichen der Arbeitsweise von Z. Mehr nicht.

MfG
Pieter

von Reinhard Kern (Gast)


Lesenswert?

Pieter schrieb:
> Hier soll was aufgetragen werden

Darum geht es doch überhaupt nicht. Die 4. Achse soll einen Kolben 
betätigen, der den Kleber rausdrückt. Schneller Vorschub = viel Kleber. 
Das ist keine echte Raumachse - u.A. deshalb, weil unser Raum 
3dimensional ist.

Gruss Reinhard

von Michael_ (Gast)


Lesenswert?

Leute, bitte befasst euch doch mal mit den primitivsten Grundlagen!
>schon richtig, der Kreis braucht "eigendlich" nur X,Y. ABER, wenn Z mit
>angegeben kann das vom Interpreter auch als Helix gewertet werden.
>M.M. nach so
>G01 X Y  ;Startpunktanfahren
>G01 Z-1  ;Spritze aufsetzen
>G01 X Y  ;Kreisfahren
>G01 Z+1  ;Spritze hoch
Die G-Befehle dienen nur der Berechnung der Bahnfahrten.
Mit G01 X Y kriegst du nie einen Kreis hin. Das G01 ist definiert für 
Linearinterpolation, also eine Strecke.
G02 ist eine Kreisinterpolation im Uhrzeigersinn, G03 gegen den UZ.
Mit J-Parametern wird dann noch der Kreismittelpunkt definiert.
>G01 Z-1  ;Spritze aufsetzen
---> Damit rammelt deine Düse schon ins volle Material!
Solche Sachen wie Spritze hoch/runter werden durch M-Befehle gemacht.
Die kann man zum Teil selbst festlegen.
M05 - Spindel Halt
M00 - Programmierter Halt/unbedingt
M08 - Kühlmittel ein
M09 - Kühlmittel aus
usw.
Eine Z-Achse könntest du brauchen, wenn du Zuckerschnecken machen 
möchtest.
Du fährst eine Spirale nach innen und ziehst gleichzeitig die Z-Achse 
hoch.
Dein Kleber fließt in der Zeit gleichmäßig.

von Michael_ (Gast)


Lesenswert?

http://www.sbz-hildburghausen.de/didakt2/didakt2.htm
http://www.lehrer.uni-karlsruhe.de/~za685/cnc/cnc_tutorial/programmierung.htm#Programmstruktur
Etwas mühsam ist es schon, diese Programmierung zu verstehen.
Aber nötig, wenn man damit arbeiten will.

von Pieter (Gast)


Lesenswert?

moin moin,

@Michael,

ich hatte geschrieben:

Da ich einen selbstgeschriebenen G-Code-Interpreter verwende...


..und ob nun G01,G02,G03 ist mir zum Kleberauftragen erst mal Wurst.
Das Prinziep ist genau wie beim Fräsen, man muss wissen wo sich das 
"Objekt der Begierde" befindet.
Klebespitze aufsetzen, mit Fxx wie gehabt den Vorschub und Sxx kann die 
Klebemenge bestimmen werden. Alles Kommandos die da sind.

Mit Gruß
Pieter

PS: wir haben in der Firma einen Klebeautomaten der genau so arbeitet.

von Michael_ (Gast)


Lesenswert?

Der G-Code hat ähnlich wie eine Programmiersprache bestimmte Standards, 
die von den Steuerungsherstellern eingehalten werden.
Was da irgendwer und irgendwann mal zusammengebastelt hat, bringt es auf 
einen neuen Standard!
Oder ist es eine Version von HPGL?
Übrigens, dein "selbstgeschriebenen G-Code-Interpreter" nennt sich in 
der Fachsprache Post-Prozessor.
Also du hast Nachholebedarf.

von Karl (Gast)


Lesenswert?

Ich wollte unter euch keinen Streit auslösen,und bin dankbar auch über 
Hinweise die nicht direkt zum Ziel führen.

um das nochmal genau zu beschreiben:

ich kann an meiner Steuerung alle 4 achsen gleichzeitig fahren indem ich

G01 X100 Y100 Z100 U100

eingebe.
wenn ich nur:
G01 X100 Y100 Z100 U10

eingebe fährt die U-Achse die den Kleber über eine Spindel aus der 
Kartusche drückt entsprechend langsamer, so dass sie gleichzeitig mit 
den anderen achsen "ankommt".soweit alles gut, es funktioniert auf einer 
gerade Stecke.

die Maschine wurde aber eigentlich dafür gebaut ihren Kleber im Kreis 
aufzutragen. Um mit X und Y einen kreis zu fahren gebe ich ein:

G02 X Y I J

(G02 Kreisinterpolation rechts rum,XY Endkoordinaten,IJ 
Mittelpunktkreis)

und paralell dazu soll der Kleber mit der U-Achse ausgedrückt werden

Durch das G02 Angewählt ist schafft es die Steuerung nicht wenn ich 
dahinter einfach noch U100 schreibe da dies ja eine lineare Bewegung 
werden soll.

und jetzt suche ich nach einer Form wie ich es der Steuerung beibringe 
auch noch U-zu betätigen.


Die Win PCNC Software die ich verwende arbeitet nach DIN G-Befehlen also 
steuerungs unabhängig.

Die Bezeichnung der 4. Achse kann software technisch auch umgestellt 
werden so dass ich sie mit N oder ähnlichem ansprechen kann wobei dies 
dann mit Winkelmaßen funktioniert.
ich habe mitlerweile auch schon ein siemens Handbuch durch, bin aber 
noch nicht schlauer.

Gruß Karl

von Michael_ (Gast)


Lesenswert?

>G02 X Y I J

>(G02 Kreisinterpolation rechts rum,XY Endkoordinaten,IJ
>Mittelpunktkreis)

>und paralell dazu soll der Kleber mit der U-Achse ausgedrückt werden
Den Kreisbogen kann man einmal interpoliert oder in kleine Stücke 
zerlegt fahren lassen. Wenn du in Stücken fahren läßt, kannst du nach 
jedem Stück deinen Kleber verschieden dosieren.
Ich denke, du mußt dich davon lösen, eine vierte Achse zu brauchen. Und 
wenn deine Maschine die Düse nicht über einen Motor rauf und runter 
fährt, brauchst du nicht mal eine dritte Achse. Ein Plotter macht auch 
nur STIFT-Hoch und STIFT-Runter.
Das geht über die M-Befehle (Maschinen-Befehl).
Wie wird die Düse angesteuert?
Beispiel:
M310 --> 20% Klebstoff
M320 --> 60%   "
M330 --> 10ß%  "
Das mußt du aber selbst programmieren.
Ich müßte auch erst nachsehen. Meine Theorie ist 15 und die Praxis 8 
Jahre her.
Jedenfalls war das Problem an einer Lasermaschine zum Acryl-Schneiden, 
wo der Laser in der Leistung angepasst werden mußte, wenn er eine "runde 
Ecke" fuhr.
Dazu haben wir aber keine dritte Achse benötigt, sondern nur 2 1/2 D.
Und eigentlich wird alles mit 2, 3 oder 5 Achsen gelöst.
Wenn ich Zeit habe, grabe ich mein PcNC-DOS aus und schaue dort nach.
Du wirst dich aber selbst durchbeißen müssen. Hier im Forum gibt es 
wenige, die dir helfen können.

von Dennis H. (c-logic) Benutzerseite


Lesenswert?

Ist es möglich den G02/G03 mit einer zusätzlichen Achse fahren zu lassen 
die nicht in der G17-Ebene liegt ?

So ala G2/3 X? Y? I? J? K? für Helixale Interpolation ? 
http://infosys.beckhoff.com/espanol.php?content=../content/1034/tccncprogramming/html/helicalinterpolation.htm&id=

von Michael_ (Gast)


Lesenswert?

Wenn du schon das Beispiel bringst, dann nimm G18 oder G19.
Das ist aber schon eine Besonderheit dieses Steuerungsherstellers.

von Dennis H. (c-logic) Benutzerseite


Lesenswert?

Fanuc (optional auf der mir zur Verfügung stehenden 31i) hats, Siemens 
hats, Heidenhain meineswissens auch. G18 und G19 sind andere Achsebenen, 
warum diese nehmen, wenn es doch eindeutig um die X-Y-Ebene geht.

von Martin Beuttenmüller (Gast)


Lesenswert?

Guten Tag ...

Der sogenannte G-Code ist in DIN 66025 genormt.
Heutige Steuerungen gehen aber weit darüber hinaus.

Wenn Deine Muß-(äh: Klebstoff-)spritze parallel zur Z-Achse verläuft
heißt sie W-Achse.

Wie reagiert die Anlage bei "Klebstoff-Ende/Tube-Leer" ?
Oder ist es ein Extruder (unbegrenzter Kleber) ?

Bei der "Sinumeric 840 D" gibt es mehrere möglichkeiten:
- eigenen Zyklus programmieren
- direkter PLC-Zugriff
- Mitschleppen ungekoppelter Achsen

Meine Empfehlung:
koppel Deine Spritze mit dem S-Wort. Dann gibt die Drehzahl
die Klebstoffmenge vor und mit M03/M05 wird die Spindel/der Kleber
an/aus geschaltet.

M30
Martin

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.