question regarding configuration options of multiple endstops
-
Hi,
I got 2 questions regarding configuration options of multiple endstops.
Iam currently building a lasercutter and want to controll it with a Duet 3 Mainboard (6HC) & Expansion 3HC. The Z-Axis got 4 leadscrews so 4 stepper move the axis. Each stepper have its own endstop. For some reason, the endstops doesnt switch exactly at the same position and the bed is not leveled after homing. Also there is not much space to create adjustable endstopmounts so I thought it might be easier to add some kind of offset to every endstop for example:
Endstop 1: 0.5mm
Endstop 2: -0,2mm
Endstop 3: 0.0mm
Endstop 4: -0.5mmIs it possible to add an offset to every endstop?
My 2nd question is: those endstops get triggered in wide range (0-25mm). After homing I use G92 Z25 to set the position. But if I switch power on with a bed @ lets say 10mm, the endstops are already triggered and the position gets set to 25mm. I already thought about using M574 to invert the endstop, move down the bed, invert the endstop again and move up the bed but maybe there is something like "if endstop is already triggered"?
best regards
Ronny -
@TurboMOD said in question regarding configuration options of multiple endstops:
Is it possible to add an offset to every endstop?
Yes, but you would need to temporarily create independent axis for each motor to be able to move them by the offset amount. You would then recombine them to a single Z axis. Alternatively you could use the endstops as is for course homing and use a probe to do tilt correction.
See here for examples of your options: https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_auto_levelling
@TurboMOD said in question regarding configuration options of multiple endstops:
but maybe there is something like "if endstop is already triggered"?
You could probably come up with some meta gcode logic and the object model to handle these cases.
https://docs.duet3d.com/en/User_manual/Reference/Gcode_meta_commands
https://github.com/Duet3D/RepRapFirmware/wiki/Object-Model-Documentation -
@Phaedrux thx. I didnt find out how to, so I tried a bit and got this one working:
G91 ; relative positioning M574 Z1 S1 P"!0.io5.in+!1.io0.in+!1.io1.in+!1.io2.in" G1 H1 Z40 F600 M574 Z1 S1 P"0.io5.in+1.io0.in+1.io1.in+1.io2.in" G1 H1 Z-350 F600 G1 H2 Z1 F60 G1 H1 Z-10 F60 G1 H2 Z-29 F600 G90 ; absolute positioning G92 Z0