Kill stepper power when switch triggered (extra end stop)
-
According to the docs we can only have a high or low end stop per motor, but not both.
Thats fine after homing with correct maxima and minima set.
But my Z doesn't have much travel, and if the machine is homed when the Z position is already near the top, the relative move that lifts Z before moving can end in .... grind grind crunch crunch.
Is there a way I can keep the standard low end stops, but also just have the machine cut power to the steepers if another switch is triggered for that axis?
Or can the G91 command that attempts to lift the Z axis in homeall.g be modified to stop if a switch is triggered?
This would be good for all axis really as even after homing and correct axis maxima set, the machine can attempt moves outside the axis limits when using work offsets if there are things not %100 right in the gcode.
Is there a way to add more switches additional to the standard end stops to just say 'If we hit these something is obviously wrong so stop trying to move)
-
Even though you can't have both a high and low active at the same time, you can reconfigure on the fly to use one at a time.
Well you could add an endstop to the high end of Z and then just configure it as a high end endstop. Then you could do a first fast homing to that endstop and then reconfigure to use the low end endstop and home to that.
Does that help?
-
@tqkez-0 To answer the question in your last paragraph, yes you can add extra switches to cut power or do pretty much anything you like when they are triggered. Check out M581.
-
Ok thanks for that guys.
I since figured it was better to use the High end stop to home the machine, then re-set Z=0 after a each tool change with the Z probe.
Seems to work well and cover most scenarios, but I was still check out M581 for a safety check of the low z end stop.
-
@deckingman Just investigating M581 and it seems I would still have to assign it to one of the axis, which would mean I'm still limited to one end stop per axis.
I've already assigned a high end z endstop.
I'd like to use M581 to trigger emergency stop on a seperate z low end stop.Is it possible?
; Endstops M574 X1 S1 P"!xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop ;M574 Z1 S1 P"!zstop" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin zstop M574 Z2 S1 P"!e0stop" ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin zstop ;M581 E1 S1 T0 ; Trigger emergency stop if low end stop on Z is triggered.
-
@tqkez-0 said in Kill stepper power when switch triggered (extra end stop):
Just investigating M581 and it seems I would still have to assign it to one of the axis, which would mean I'm still limited to one end stop per axis.
I'm not sure what you mean by this. Where did you see this? I think you may be looking at old documentation.
https://docs.duet3d.com/User_manual/Reference/Gcodes#m581-configure-external-trigger
@tqkez-0 said in Kill stepper power when switch triggered (extra end stop):
I've already assigned a high end z endstop.
I'd like to use M581 to trigger emergency stop on a seperate z low end stop.
Is it possible?Yes. You need to define which pin you want to use using M950 first.