mirror of
https://github.com/Klipper3d/klipper.git
synced 2025-07-24 07:04:01 -06:00
stepper: Store max_velocity/max_accel instead of max_step_velocity/accel
All users of max_step_velocity and max_step_accel end up multiplying by step_dist anyway, so it's easier to store max_velocity and max_accel. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
5829aa8bd7
commit
4a527a46ce
2 changed files with 11 additions and 18 deletions
|
@ -13,10 +13,8 @@ class PrinterStepper:
|
|||
|
||||
self.step_dist = config.getfloat('step_distance')
|
||||
self.inv_step_dist = 1. / self.step_dist
|
||||
max_velocity = config.getfloat('max_velocity')
|
||||
self.max_step_velocity = max_velocity * self.inv_step_dist
|
||||
max_accel = config.getfloat('max_accel')
|
||||
self.max_step_accel = max_accel * self.inv_step_dist
|
||||
self.max_velocity = config.getfloat('max_velocity')
|
||||
self.max_accel = config.getfloat('max_accel')
|
||||
|
||||
self.homing_speed = config.getfloat('homing_speed', 5.0)
|
||||
self.homing_positive_dir = config.getboolean(
|
||||
|
@ -36,7 +34,8 @@ class PrinterStepper:
|
|||
step_pin = self.config.get('step_pin')
|
||||
dir_pin = self.config.get('dir_pin')
|
||||
jc = 0.005 # XXX
|
||||
min_stop_interval = int((math.sqrt(1./self.max_step_accel + jc**2) - jc)
|
||||
inv_max_step_accel = self.step_dist / self.max_accel
|
||||
min_stop_interval = int((math.sqrt(inv_max_step_accel + jc**2) - jc)
|
||||
* self.clock_ticks) - max_error
|
||||
min_stop_interval = max(0, min_stop_interval)
|
||||
mcu = self.printer.mcu
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue