Sicherheitsebene

Hier kann alles, was mit Postprozessoren zusammenhängt, geschrieben werden.
Antworten
Markus
Beiträge: 16
Registriert: 14.12.2010, 09:08

Beitrag von Markus » 22.01.2013, 21:35

Hallo,

ich möchte diese Geschichte noch mal aufgreifen. Ich suche auch nach einer Lösung für den Fall, dass man mal den Fräser, bzw. die Z-Achse vor dem Programmstart (warum auch immer) unter den Nullpunkt gefahren oder weil man die Freifahrebene zu niedrig gewählt hat.

Ich nutze den original PP für Mach3 aus dem letztem Update von CC. Hier wird nach dem Start und erfolgtem WZW (dann wird bei mir nach aufgenommenem Werkzeug auf Z0 hoch gezogen ) auf die Start-Koordinaten des jeweiligen Fräsjobs zuerst in X und Y verfahren, dann auf Z abgesenkt, soweit gut.

Beginnt man jedoch mit bereits gespantem Werkzeug und hat den Fall, dass man mal tiefer steht als der Nullpunkt, dann knallt's im schlimmsten Falle.

Leider greift bei einem laufendem Programm die Z-Safe Funktion von Mach3 ja nicht.

Die einfachste Lösung wäre na klar, im Vorfeld die Freifahrebene groß genug zu wählen und/oder die Z-Achse vorher prüfen und frei zu fahren.

Wie müsste der PP aussehen, dass man beides abdecken kann?

Die Zeilen im PP so umstellen, so dass immer zuerst auf Z0 mit G0 hochgezogen wird, dann auf X und Y zum Fräsjob-Beginn gefahren und dann erst auf Z-Fräsjob abgesenkt wird?

Dann müsste aber das Z0 zuerst in Maschinenkoordinaten sein und danach das Z-Fräsjob in Werkstückkoordinaten? Dies sollte dann nach jedem WZW stehen.

Dann hat man nur noch das Restrisiko wenn in der Mitte eines Programmes mal nach einem Abbruch wieder begonnen wird.

Ist das machbar?

Grüßle Markus

Benutzeravatar
3DMSOFT
Site Admin
Beiträge: 1364
Registriert: 07.05.2006, 14:20
Kontaktdaten:

Beitrag von 3DMSOFT » 22.01.2013, 21:52

Ist das machbar?
machbar ist sehr viel, nur wir müssen wissen was. Wenn Sie sich diesbezüglich ein Konzept erarbeitet haben, schicken Sie uns einfach Ihren PP zu, dann können wir das einstellen...

Die meisten Postprozessoren im Setup sind für das Arbeiten mit Werkzeugwechsler vorbereitet.
Nach dem "M6"-Aufruf steht die Maschine oben im freien Bereich, anschließend wird zuerst XY- dann die Z-Achse bewegt. Das ist die sicherste Methode...

Postprozessoren für "Handwechsler", die nicht freifahren ist die sicherste Variante umgekehrt... also nach dem "M6" wird zuerst Z dann XY angesteuert usw...

Die einfachste Lösung wäre na klar, im Vorfeld die Freifahrebene groß genug zu wählen und/oder die Z-Achse vorher prüfen und frei zu fahren.
Das muss sogar, sonst kracht es überall. Aber das zeigt dann auch die Simulation von Condacam an.
Dann müsste aber das Z0 zuerst in Maschinenkoordinaten sein und danach das Z-Fräsjob in Werkstückkoordinaten? Dies sollte dann nach jedem WZW stehen.
Kann auch, muss aber nicht... Das funktioniert so wie oben beschrieben.. Erst in Z verfahren dann in XY... Die erste Z-Koordinate lieg immer im freien Bereich.
Dann hat man nur noch das Restrisiko wenn in der Mitte eines Programmes mal nach einem Abbruch wieder begonnen wird.
Etwaige Programmabbrüche kann eine Camsoftware nicht voraussehen oder berücksichtigen. Dann muss der Bediener mitdenken und manuell hochfahren, sofern was im Weg steht.

Mit freundlichen Grüßen Jens Tonak

Markus
Beiträge: 16
Registriert: 14.12.2010, 09:08

Beitrag von Markus » 23.01.2013, 19:59

Hallo Jens,

ich hab das jetzt mal so gelöst:

(Count_Block)(Condacam)
(Count_Block)(TOOL_DATA)
(Count_Block)(BLOCKMIN X(BX-) Y(BY-) Z(BZ-))
(Count_Block)(BLOCKMAX X(BX+) Y(BY+) Z(BZ+))
(Count_Block) G17 G21 G40 G54 G64 G90
(Count_Block) M5 M9
(Count_Block) M6 T(TNr)
(Count_Block)(SPINDLE_Block)(SpiCW)
(Count_Block) G53 G0 Z0
(Count_Block) G54
(Count_Block) G0 X(KFAx+[0]) Y(KFAy+[0])
(Count_Block) G0 Z(KFAz+[0])(CoolOn)


Sollte ich dummerweise mal tiefer stehen, wird so erst auf Z0 gezogen. Vom Werkzeugwechsel kommend ist das dann auch OK, hat halt da mehr oder weniger keine Funktion. So habe ich aber beide Fälle abgedeckt.

Grüßle Markus

Benutzeravatar
3DMSOFT
Site Admin
Beiträge: 1364
Registriert: 07.05.2006, 14:20
Kontaktdaten:

Beitrag von 3DMSOFT » 24.01.2013, 19:26

Markus hat geschrieben:Hallo Jens,

ich hab das jetzt mal so gelöst:

(Count_Block) G53 G0 Z0
(Count_Block) G54
(Count_Block) G0 X(KFAx+[0]) Y(KFAy+[0])
(Count_Block) G0 Z(KFAz+[0])(CoolOn)
Ja, kann man so machen...

Mit freundlichen Grüßen Jens Tonak

Antworten