- added a new parameter to set the feedrate of the probing in case the used postprocessor does probing (has toolchange_probe in it's name)

- fixed bug in Marlin postprocessor for the Excellon files; the header and toolchange event always used the parenthesis witch is not compatible with GCode for Marlin
- fixed a issue with a move to Z_move before any toolchange
This commit is contained in:
Marius Stanciu
2019-02-05 19:40:46 +02:00
committed by Marius S
parent 822800e7f5
commit 3b8b7d470a
10 changed files with 205 additions and 57 deletions

View File

@@ -4370,7 +4370,7 @@ class CNCjob(Geometry):
def __init__(self,
units="in", kind="generic", tooldia=0.0,
z_cut=-0.002, z_move=0.1,
feedrate=3.0, feedrate_z=3.0, feedrate_rapid=3.0,
feedrate=3.0, feedrate_z=3.0, feedrate_rapid=3.0, feedrate_probe=3.0,
pp_geometry_name='default', pp_excellon_name='default',
depthpercut=0.1,z_pdepth=-0.02,
spindlespeed=None, dwell=True, dwelltime=1000,
@@ -4425,6 +4425,9 @@ class CNCjob(Geometry):
# how much depth the probe can probe before error
self.z_pdepth = z_pdepth if z_pdepth else None
# the feedrate(speed) with which the probel travel while probing
self.feedrate_probe = feedrate_probe if feedrate_probe else None
self.spindlespeed = spindlespeed
self.dwell = dwell
self.dwelltime = dwelltime
@@ -4614,12 +4617,13 @@ class CNCjob(Geometry):
gcode = self.doformat(p.start_code)
gcode += self.doformat(p.feedrate_code)
if self.toolchange_xy is not None:
gcode += self.doformat(p.lift_code, x=self.toolchange_xy[0], y=self.toolchange_xy[1])
gcode += self.doformat(p.startz_code, x=self.toolchange_xy[0], y=self.toolchange_xy[1])
else:
gcode += self.doformat(p.lift_code, x=0.0, y=0.0)
gcode += self.doformat(p.startz_code, x=0.0, y=0.0)
if toolchange is False:
if self.toolchange_xy is not None:
gcode += self.doformat(p.lift_code, x=self.toolchange_xy[0], y=self.toolchange_xy[1])
gcode += self.doformat(p.startz_code, x=self.toolchange_xy[0], y=self.toolchange_xy[1])
else:
gcode += self.doformat(p.lift_code, x=0.0, y=0.0)
gcode += self.doformat(p.startz_code, x=0.0, y=0.0)
# Distance callback
class CreateDistanceCallback(object):
@@ -4989,8 +4993,10 @@ class CNCjob(Geometry):
self.gcode = self.doformat(p.start_code)
self.gcode += self.doformat(p.feedrate_code) # sets the feed rate
self.gcode += self.doformat(p.lift_code, x=0, y=0) # Move (up) to travel height
self.gcode += self.doformat(p.startz_code, x=0, y=0)
if toolchange is False:
self.gcode += self.doformat(p.lift_code, x=0, y=0) # Move (up) to travel height
self.gcode += self.doformat(p.startz_code, x=0, y=0)
if toolchange:
# if "line_xyz" in self.pp_geometry_name:
@@ -5187,8 +5193,9 @@ class CNCjob(Geometry):
self.gcode += self.doformat(p.feedrate_code) # sets the feed rate
self.gcode += self.doformat(p.lift_code, x=self.oldx , y=self.oldy ) # Move (up) to travel height
self.gcode += self.doformat(p.startz_code, x=self.oldx , y=self.oldy )
if toolchange is False:
self.gcode += self.doformat(p.lift_code, x=self.oldx , y=self.oldy ) # Move (up) to travel height
self.gcode += self.doformat(p.startz_code, x=self.oldx , y=self.oldy )
if toolchange:
# if "line_xyz" in self.pp_geometry_name: