cartesian: Fix min_stop_interval calculation error

It is possible to have an acceleration greater than max_z_accel on
XY+Z moves.  That needs to be taken into account when calculating the
min_stop_interval.  This prevents spurious "No next step" MCU errors.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2017-10-12 00:48:01 -04:00
parent d3eb148cfa
commit cc7c99a4a4
4 changed files with 14 additions and 13 deletions

View file

@ -32,9 +32,9 @@ class DeltaKinematics:
self.max_z_velocity = config.getfloat(
'max_z_velocity', self.max_velocity,
above=0., maxval=self.max_velocity)
max_xy_halt_velocity = toolhead.get_max_axis_halt(self.max_accel)
max_halt_velocity = toolhead.get_max_axis_halt()
for s in self.steppers:
s.set_max_jerk(max_xy_halt_velocity, self.max_accel)
s.set_max_jerk(max_halt_velocity, self.max_accel)
# Determine tower locations in cartesian space
angles = [config.getsection('stepper_a').getfloat('angle', 210.),
config.getsection('stepper_b').getfloat('angle', 330.),