Homing move "deceleration" for large machines
-
@MaxGyver Can't you set a regular max. speed but low acceleration during homing?
That would be win_win regarding homing speed and plonk factor -
The acceleration set on M201 is not used when the end stop is triggered, I confirmed this by setting Y acceleration to 50 before the homing move, but the axis just stops immediately without any sign of deceleration.
-
@MaxGyver The problem is that homing moves stop instantly and disregard any deceleration settings. What I do on my
XZ axis, is that I have a slotted opto switch which triggers before the end stop. I use a while loop to do a series of short G1 Zn moves (with normal deceleration) at reasonably fast homing speed until the slotted opto triggers. That gets the Z axis close to the endstop and thereafter I can home at a very slow speed which helps to prevent the sudden "clonk". -
Maybe this is one for the feature wishlist then...
I would propose a H5 parameter for G0 moves that essentially works like G0 H1 ,but does not disregard the acceleration set in M201 during homing moves. I am aware that this only works with endstops can be overtraveled (the axis has some leeway to move "over" the endstop without damaging it)
This would be my homey.g
G91 ; relative positioning G0 H5 Y{move.axes[1].max+5} F1200 ; move quickly to Y axis endstop, when the endstop is triggered, decelerate until standstill (first pass) M574 Y2 S1 P"!io1.in" ; invert endstop so that it triggers when it is released by the axis G1 H1 Y-40 F600 ; move back slowly until endstop is untriggered (second pass) M574 Y2 S1 P"io1.in" ; invert endstop again G92 Y1220 ; set Y Axis trigger position G90 ; absolute positioning G0 Y{move.axes[1].max} ; move to Y axis max
The expected result would be the following:
During homing the axis moves towards the endstop.
When the endstop is triggered the axis decelerates by the value set in M201 until standstill. (first homing pass)
By inverting the endstop the precise position can be captured when backing up from the endstop (second pass) -
@Phaedrux may I kindly ask you to move this thread to the feature wishlist category?
-
-
@MaxGyver said in Homing move "deceleration" for large machines:
@Phaedrux may I kindly ask you to move this thread to the feature wishlist category?
Done. Sounds like a good idea, I’ve often wondered how big machines get around this.
Edit: Though perhaps it should work by setting axis zero when the endstop is triggered, slowing to a stop, then reversing back to zero.
Ian
-
@MaxGyver Tony pointed out there is already a feature request on Github for this: https://github.com/Duet3D/RepRapFirmware/issues/746
I've linked this thread there.Ian
-
Hey, any news on this topic? I have extensively used my Duet6X controlled CNC over the last 6 weeks. The slow homing speed on larger machines is still a huge pain in the ass.
-
@MaxGyver It's slated for RRF 3.6.0, and 3.5.0 hasn't even been released yet (though hopefully soon), so I doubt anything has happened with is yet, sorry.
@deckingman's workaround sounds workable, though:
What I do on my X axis, is that I have a slotted opto switch which triggers before the end stop. I use a while loop to do a series of short G1 Zn moves (with normal deceleration) at reasonably fast homing speed until the slotted opto triggers. That gets the Z axis close to the endstop and thereafter I can home at a very slow speed which helps to prevent the sudden "clonk".
Ian
-
@droftarts As I saw my name mentioned - there is a typo in the above although the meaning should be obvious. "What I do on my X axis..." should read "....on my Z axis". I'll correct my original post.