diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2016-12-08 18:12:20 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2016-12-09 17:09:51 -0500 |
commit | 89f5452ddbcaecfba7cee5a3ba73b2659746d63f (patch) | |
tree | ac505b60430357ea9a79b90e3b3f3aa157ff3f7b /klippy/delta.py | |
parent | a6de1db94d108f401f7f3e67f735743106e16837 (diff) | |
download | kutter-89f5452ddbcaecfba7cee5a3ba73b2659746d63f.tar.gz kutter-89f5452ddbcaecfba7cee5a3ba73b2659746d63f.tar.xz kutter-89f5452ddbcaecfba7cee5a3ba73b2659746d63f.zip |
gcode: Rework homing to use greenlets
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/delta.py')
-rw-r--r-- | klippy/delta.py | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/klippy/delta.py b/klippy/delta.py index bbb5f6f0..96079d1e 100644 --- a/klippy/delta.py +++ b/klippy/delta.py @@ -78,11 +78,6 @@ class DeltaKinematics: pos = self._cartesian_to_actuator(newpos) for i in StepList: self.steppers[i].mcu_stepper.set_position(pos[i]) - def _get_homed_position(self, homing_state): - pos = [(s.mcu_stepper.commanded_position + s.get_homed_offset()) - * s.step_dist - for s in self.steppers] - return self._actuator_to_cartesian(pos) def home(self, homing_state): # All axes are homed simultaneously homing_state.set_axes([0, 1, 2]) @@ -92,16 +87,19 @@ class DeltaKinematics: homepos = [0., 0., s.position_endstop, None] coord = list(homepos) coord[2] = -1.5 * math.sqrt(self.arm_length2-self.max_xy2) - homing_state.plan_home(list(coord), homepos, self.steppers - , s.homing_speed) + homing_state.home(list(coord), homepos, self.steppers, s.homing_speed) # Retract coord[2] = homepos[2] - s.homing_retract_dist - homing_state.plan_retract(list(coord), self.steppers, s.homing_speed) + homing_state.retract(list(coord), s.homing_speed) # Home again coord[2] -= s.homing_retract_dist - homing_state.plan_second_home(list(coord), homepos, self.steppers - , s.homing_speed/2.0) - homing_state.plan_calc_position(self._get_homed_position) + homing_state.home(list(coord), homepos, self.steppers + , s.homing_speed/2.0, second_home=True) + # Set final homed position + coord = [(s.mcu_stepper.commanded_position + s.get_homed_offset()) + * s.step_dist + for s in self.steppers] + homing_state.set_homed_position(self._actuator_to_cartesian(coord)) def motor_off(self, move_time): self.limit_xy2 = -1. for stepper in self.steppers: |