11.07.2022, 16:19
Hallo,
ich möchte den Vectric Postprozessor für WinPC etwas anpassen und bräuchte da etwas Hilfe, da ich mich mit den Variablen nicht so gut auskenne.
Mich stört folgendes:
- beim Programmstart fährt die Spindel im G0 immer erst an X0, Y0, dies ist z.B. tödlich falls der Nullpunkt mal ausserhalb des Maschinenbettes liegt.
Der Nullpunkt soll gar nicht erst angefahren werden, sondern die Spindel soll direkt zum ersten zu fräsenden Objekt fahren.
- nach dem automatischen Vermesssen eines neuen Werkzeuges bei einem Werkzeugswechsel,
fährt die Spindel immer erst runter auf die sichere Höhe, bevor sie dann wegfährt.
Ich hätte gerne dass die Spindel so lange oben auf AbsolutZ0 bleibt bis sie den Punkt erreicht hat
an dem sie vor dem Werkzeugwechsel aufgetauscht ist.
Ich habe dieses Verhalten damals per Makro "nach dem Vermessen" mit dem Befehl "FahreAbsZ 0.000" unterbinden können.
Momentan funktioniert dies nicht mehr, keine Ahnung warum.
Ich habe hier mal den Vectric-PP für WinPC angehängt,
vielleicht sieht der ein oder andere schon gleich was man ändern müsste.
Die "M00" - Unterbrechung nach dem Werkzeugwechsel, bzw. vor dem Spindelstart
habe ich hier bereits eingefügt.
+================================================
+
+ WinPC-NC - Vectric machine output configuration file
+
+================================================
+
+ History
+
+ Who When Ver What
+ ======== ========== === =======
+ RK 2007-12-05 V1.0 Coolant Output
+ SPRS 2007-12-06 v1.1 Units mm/min Pathname
+ Documentation Extended.
+ RK 2007-11-21 Documentation of the code implemented
+ SPRS 2007-10-28
+ Mark 2008-05-13 Added Arcs
+ Mark 2008-06-18 Added initial Move to X & Y Home following
+ Move to Z Home.- Requested by John McKinnon
+
+================================================
POST_NAME = "WinPC-NC ATC Arcs mm_min (*.nc)"
FILE_EXTENSION = "nc"
UNITS = "MM"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+------------------------------------------------
+ Block numbering
+------------------------------------------------
LINE_NUMBER_START = 0
LINE_NUMBER_INCREMENT = 1
LINE_NUMBER_MAXIMUM = 999999
+================================================
+
+ Formating for variables
+
+================================================
VAR LINE_NUMBER = [N|A|N|1.0]
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C|F|1.1]
VAR CUT_RATE = [FC|A||1.0]
VAR PLUNGE_RATE = [FP|A||1.0]
VAR X_POSITION = [X|C|X|1.3]
VAR Y_POSITION = [Y|C|Y|1.3]
VAR Z_POSITION = [Z|C|Z|1.3]
VAR ARC_CENTRE_I_INC_POSITION = [I|A|I|1.3]
VAR ARC_CENTRE_J_INC_POSITION = [J|A|J|1.3]
VAR X_HOME_POSITION = [XH|A|X|1.3]
VAR Y_HOME_POSITION = [YH|A|Y|1.3]
VAR Z_HOME_POSITION = [ZH|A|Z|1.3]
+================================================
+
+ Block definitions for toolpath output
+
+================================================
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"(---------------------------------------------------------------)"
"( Datei Information: )"
"(---------------------------------------------------------------)"
"( Dateiname: [TP_FILENAME])"
"( Datei Pfad = [PATHNAME])"
"(---------------------------------------------------------------)"
"( Material Information: Alle Größen in mm )"
"(---------------------------------------------------------------)"
"( X Length = [XLENGTH])"
"( Y Length = [YLENGTH])"
"( Z Length = [ZLENGTH])"
"( X Min = [XMIN] Y Min = [YMIN] Z Min = [ZMIN])"
"( X Max = [XMAX] Y Max = [YMAX] Z Max = [ZMAX])"
"()"
"( Home Position: X = [XH] Y = [YH] Z = [ZH])"
"( Safe Z: Z = [SAFEZ])"
"()"
"(---------------------------------------------------------------)"
"( benötigte Fräser-Reihenfolge: )"
"(---------------------------------------------------------------)"
"( Fräser [TOOLS_USED])"
"(---------------------------------------------------------------)"
"()"
"(---------------------------------------------------------------)"
"( Programm Start )"
"(---------------------------------------------------------------)"
"%"
"[N] G17"
"[N] G90"
"[N] G71"
"(---------------------------------------------------------------)"
"( Erster Fräser [TOOLNAME] )"
"(---------------------------------------------------------------)"
"( Fräser Nr = [T])"
"( Fräser = [TOOLNAME])"
"( Geschwindigkeit und Drehzahl )"
"( Vorschub = [FC] mm/min)"
"( Eintauchen = [FP] mm/min)"
"( Drehzahl = [S] U/min)"
"(---------------------------------------------------------------)"
"[N] M05"
"[N] M09"
"[N] G00 [ZH]"
"[N] T[T] M06"
"[N] [S] M03"
"[N] G00 [ZH]"
"[N] G00 [XH] [YH]"
"(---------------------------------------------------------------)"
"( Werkzeugweg: = [TOOLPATH_NAME])"
"( Fräser = [TOOLNAME])"
"(---------------------------------------------------------------)"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin RAPID_MOVE
"[N] G00 [X] [Y] [Z] M09"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"[N] G01 [X] [Y] [Z] [F] M07"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"[N] G01 [X] [Y] [Z]"
+---------------------------------------------------
+ Commands output for the first clockwise arc move
+---------------------------------------------------
begin FIRST_CW_ARC_MOVE
"[N] G02 [X] [Y] [I] [J] [F] M07"
+---------------------------------------------------
+ Commands output for clockwise arc move
+---------------------------------------------------
begin CW_ARC_MOVE
"[N] G02 [X] [Y] [I] [J]"
+---------------------------------------------------
+ Commands output for the first counterclockwise arc move
+---------------------------------------------------
begin FIRST_CCW_ARC_MOVE
"[N] G03 [X] [Y] [I] [J] [F] M07"
+---------------------------------------------------
+ Commands output for counterclockwise arc move
+---------------------------------------------------
begin CCW_ARC_MOVE
"[N] G03 [X] [Y] [I] [J]"
+---------------------------------------------------
+ Commands output at toolchange
+---------------------------------------------------
begin TOOLCHANGE
"(--------------------------------------------------------------)"
"( Fräserwechsel [TOOLNAME] )"
"(--------------------------------------------------------------)"
"( Fräser NR = [T])"
"( Fräser = [TOOLNAME])"
"( Vorherige Fräser NR = [TP])"
"()"
"( Vorschub = [FC] mm/min)"
"( Eintauchen = [FP] mm/min)"
"( Drehzahl = [S] U/min)"
"(---------------------------------------------------------------)"
"[N] M05"
"[N] M09"
"[N] G00 [ZH]"
"[N] T[T] M06"
"[N] M00"
"[N] [S] M03"
"(---------------------------------------------------------------)"
"( Werkzeugweg: [TOOLPATH_NAME])"
"( Fräser = [TOOLNAME])"
"(---------------------------------------------------------------)"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"(---------------------------------------------------------------)"
"( Programmende )"
"(---------------------------------------------------------------)"
"[N] G00 [ZH]"
"[N] M05"
"[N] M09"
"[N] M30"
ich möchte den Vectric Postprozessor für WinPC etwas anpassen und bräuchte da etwas Hilfe, da ich mich mit den Variablen nicht so gut auskenne.
Mich stört folgendes:
- beim Programmstart fährt die Spindel im G0 immer erst an X0, Y0, dies ist z.B. tödlich falls der Nullpunkt mal ausserhalb des Maschinenbettes liegt.
Der Nullpunkt soll gar nicht erst angefahren werden, sondern die Spindel soll direkt zum ersten zu fräsenden Objekt fahren.
- nach dem automatischen Vermesssen eines neuen Werkzeuges bei einem Werkzeugswechsel,
fährt die Spindel immer erst runter auf die sichere Höhe, bevor sie dann wegfährt.
Ich hätte gerne dass die Spindel so lange oben auf AbsolutZ0 bleibt bis sie den Punkt erreicht hat
an dem sie vor dem Werkzeugwechsel aufgetauscht ist.
Ich habe dieses Verhalten damals per Makro "nach dem Vermessen" mit dem Befehl "FahreAbsZ 0.000" unterbinden können.
Momentan funktioniert dies nicht mehr, keine Ahnung warum.
Ich habe hier mal den Vectric-PP für WinPC angehängt,
vielleicht sieht der ein oder andere schon gleich was man ändern müsste.
Die "M00" - Unterbrechung nach dem Werkzeugwechsel, bzw. vor dem Spindelstart
habe ich hier bereits eingefügt.
+================================================
+
+ WinPC-NC - Vectric machine output configuration file
+
+================================================
+
+ History
+
+ Who When Ver What
+ ======== ========== === =======
+ RK 2007-12-05 V1.0 Coolant Output
+ SPRS 2007-12-06 v1.1 Units mm/min Pathname
+ Documentation Extended.
+ RK 2007-11-21 Documentation of the code implemented
+ SPRS 2007-10-28
+ Mark 2008-05-13 Added Arcs
+ Mark 2008-06-18 Added initial Move to X & Y Home following
+ Move to Z Home.- Requested by John McKinnon
+
+================================================
POST_NAME = "WinPC-NC ATC Arcs mm_min (*.nc)"
FILE_EXTENSION = "nc"
UNITS = "MM"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+------------------------------------------------
+ Block numbering
+------------------------------------------------
LINE_NUMBER_START = 0
LINE_NUMBER_INCREMENT = 1
LINE_NUMBER_MAXIMUM = 999999
+================================================
+
+ Formating for variables
+
+================================================
VAR LINE_NUMBER = [N|A|N|1.0]
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C|F|1.1]
VAR CUT_RATE = [FC|A||1.0]
VAR PLUNGE_RATE = [FP|A||1.0]
VAR X_POSITION = [X|C|X|1.3]
VAR Y_POSITION = [Y|C|Y|1.3]
VAR Z_POSITION = [Z|C|Z|1.3]
VAR ARC_CENTRE_I_INC_POSITION = [I|A|I|1.3]
VAR ARC_CENTRE_J_INC_POSITION = [J|A|J|1.3]
VAR X_HOME_POSITION = [XH|A|X|1.3]
VAR Y_HOME_POSITION = [YH|A|Y|1.3]
VAR Z_HOME_POSITION = [ZH|A|Z|1.3]
+================================================
+
+ Block definitions for toolpath output
+
+================================================
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"(---------------------------------------------------------------)"
"( Datei Information: )"
"(---------------------------------------------------------------)"
"( Dateiname: [TP_FILENAME])"
"( Datei Pfad = [PATHNAME])"
"(---------------------------------------------------------------)"
"( Material Information: Alle Größen in mm )"
"(---------------------------------------------------------------)"
"( X Length = [XLENGTH])"
"( Y Length = [YLENGTH])"
"( Z Length = [ZLENGTH])"
"( X Min = [XMIN] Y Min = [YMIN] Z Min = [ZMIN])"
"( X Max = [XMAX] Y Max = [YMAX] Z Max = [ZMAX])"
"()"
"( Home Position: X = [XH] Y = [YH] Z = [ZH])"
"( Safe Z: Z = [SAFEZ])"
"()"
"(---------------------------------------------------------------)"
"( benötigte Fräser-Reihenfolge: )"
"(---------------------------------------------------------------)"
"( Fräser [TOOLS_USED])"
"(---------------------------------------------------------------)"
"()"
"(---------------------------------------------------------------)"
"( Programm Start )"
"(---------------------------------------------------------------)"
"%"
"[N] G17"
"[N] G90"
"[N] G71"
"(---------------------------------------------------------------)"
"( Erster Fräser [TOOLNAME] )"
"(---------------------------------------------------------------)"
"( Fräser Nr = [T])"
"( Fräser = [TOOLNAME])"
"( Geschwindigkeit und Drehzahl )"
"( Vorschub = [FC] mm/min)"
"( Eintauchen = [FP] mm/min)"
"( Drehzahl = [S] U/min)"
"(---------------------------------------------------------------)"
"[N] M05"
"[N] M09"
"[N] G00 [ZH]"
"[N] T[T] M06"
"[N] [S] M03"
"[N] G00 [ZH]"
"[N] G00 [XH] [YH]"
"(---------------------------------------------------------------)"
"( Werkzeugweg: = [TOOLPATH_NAME])"
"( Fräser = [TOOLNAME])"
"(---------------------------------------------------------------)"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin RAPID_MOVE
"[N] G00 [X] [Y] [Z] M09"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"[N] G01 [X] [Y] [Z] [F] M07"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"[N] G01 [X] [Y] [Z]"
+---------------------------------------------------
+ Commands output for the first clockwise arc move
+---------------------------------------------------
begin FIRST_CW_ARC_MOVE
"[N] G02 [X] [Y] [I] [J] [F] M07"
+---------------------------------------------------
+ Commands output for clockwise arc move
+---------------------------------------------------
begin CW_ARC_MOVE
"[N] G02 [X] [Y] [I] [J]"
+---------------------------------------------------
+ Commands output for the first counterclockwise arc move
+---------------------------------------------------
begin FIRST_CCW_ARC_MOVE
"[N] G03 [X] [Y] [I] [J] [F] M07"
+---------------------------------------------------
+ Commands output for counterclockwise arc move
+---------------------------------------------------
begin CCW_ARC_MOVE
"[N] G03 [X] [Y] [I] [J]"
+---------------------------------------------------
+ Commands output at toolchange
+---------------------------------------------------
begin TOOLCHANGE
"(--------------------------------------------------------------)"
"( Fräserwechsel [TOOLNAME] )"
"(--------------------------------------------------------------)"
"( Fräser NR = [T])"
"( Fräser = [TOOLNAME])"
"( Vorherige Fräser NR = [TP])"
"()"
"( Vorschub = [FC] mm/min)"
"( Eintauchen = [FP] mm/min)"
"( Drehzahl = [S] U/min)"
"(---------------------------------------------------------------)"
"[N] M05"
"[N] M09"
"[N] G00 [ZH]"
"[N] T[T] M06"
"[N] M00"
"[N] [S] M03"
"(---------------------------------------------------------------)"
"( Werkzeugweg: [TOOLPATH_NAME])"
"( Fräser = [TOOLNAME])"
"(---------------------------------------------------------------)"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"(---------------------------------------------------------------)"
"( Programmende )"
"(---------------------------------------------------------------)"
"[N] G00 [ZH]"
"[N] M05"
"[N] M09"
"[N] M30"
Sorotec Compact Line 1007
mit WinPC-NC NET und Sorotec MIDI-Steuerung (5,6A)
2,2kW China-Spindel, 3D-Taster-Set, USB-Kamera, Handrad HR-20,
ColdEND32 Pumpensteuerung mit ColdEND Gen. 2,
SSWJS-Vakuumtisch 600x500mm sowie Pneumatikspanner
==> Vectric VCarvePro <== als CAD u. CAM
3D Druck: Artillery Genius und Cura 4.4.x
Schöne Grüße
Hubi
mit WinPC-NC NET und Sorotec MIDI-Steuerung (5,6A)
2,2kW China-Spindel, 3D-Taster-Set, USB-Kamera, Handrad HR-20,
ColdEND32 Pumpensteuerung mit ColdEND Gen. 2,
SSWJS-Vakuumtisch 600x500mm sowie Pneumatikspanner
==> Vectric VCarvePro <== als CAD u. CAM
3D Druck: Artillery Genius und Cura 4.4.x
Schöne Grüße
Hubi