mirror of https://github.com/Desuuuu/klipper.git
kinematics: Add get_status() method to kinematics
Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
This commit is contained in:
parent
09f323a038
commit
f958542ebb
|
@ -124,6 +124,10 @@ class CartKinematics:
|
|||
for i, rail in enumerate(self.rails):
|
||||
if move.axes_d[i]:
|
||||
rail.step_itersolve(move.cmove)
|
||||
def get_status(self):
|
||||
return {'homed_axes': "".join([a
|
||||
for a, (l, h) in zip("XYZ", self.limits) if l <= h])
|
||||
}
|
||||
# Dual carriage support
|
||||
def _activate_carriage(self, carriage):
|
||||
toolhead = self.printer.lookup_object('toolhead')
|
||||
|
|
|
@ -111,6 +111,10 @@ class CoreXYKinematics:
|
|||
rail_y.step_itersolve(cmove)
|
||||
if axes_d[2]:
|
||||
rail_z.step_itersolve(cmove)
|
||||
def get_status(self):
|
||||
return {'homed_axes': "".join([a
|
||||
for a, (l, h) in zip("XYZ", self.limits) if l <= h])
|
||||
}
|
||||
|
||||
def load_kinematics(toolhead, config):
|
||||
return CoreXYKinematics(toolhead, config)
|
||||
|
|
|
@ -150,6 +150,9 @@ class DeltaKinematics:
|
|||
self._check_motor_enable(print_time)
|
||||
for rail in self.rails:
|
||||
rail.step_itersolve(move.cmove)
|
||||
def get_status(self):
|
||||
return {'homed_axes': '' if self.need_home else 'XYZ'}
|
||||
|
||||
# Helper function for DELTA_CALIBRATE script
|
||||
def get_calibrate_params(self):
|
||||
out = { 'radius': self.radius }
|
||||
|
|
|
@ -21,6 +21,8 @@ class NoneKinematics:
|
|||
pass
|
||||
def move(self, print_time, move):
|
||||
pass
|
||||
def get_status(self):
|
||||
return {'homed_axes': ''}
|
||||
|
||||
def load_kinematics(toolhead, config):
|
||||
return NoneKinematics(toolhead, config)
|
||||
|
|
|
@ -130,6 +130,9 @@ class PolarKinematics:
|
|||
stepper_bed.set_commanded_position(angle - 2. * math.pi)
|
||||
if axes_d[2]:
|
||||
self.rails[1].step_itersolve(cmove)
|
||||
def get_status(self):
|
||||
return {'homed_axes': (("XY" if self.limit_xy2 >= 0. else "") +
|
||||
("Z" if self.limit_z[0] <= self.limit_z[1] else ""))}
|
||||
|
||||
def load_kinematics(toolhead, config):
|
||||
return PolarKinematics(toolhead, config)
|
||||
|
|
|
@ -57,6 +57,9 @@ class WinchKinematics:
|
|||
self._check_motor_enable(print_time)
|
||||
for s in self.steppers:
|
||||
s.step_itersolve(move.cmove)
|
||||
def get_status(self):
|
||||
# XXX - homed_checks and rail limits not implemented
|
||||
return {'homed_axes': 'XYZ'}
|
||||
|
||||
def load_kinematics(toolhead, config):
|
||||
return WinchKinematics(toolhead, config)
|
||||
|
|
Loading…
Reference in New Issue