Sensorless homing with 1HCL / Quad motor XY setup
-
I have a feeling the problem is something extremely obvious, but Im completely stumped at the behaviour I am experiencing.
I currently have a Duet 3 powered CoreXY, but with 4x 1HCL boards, one for each XY motor - as later on I will be adding encoders to the motors.
I have configured the mainboard and daughterboards and the machine powers up and works as intended. However the only thing that isn't working as expected is sensorless homing.
I have tested the setup by disconnecting two of the 1HCL's to simplify the setup but the behaviour stayed the same.
The hardware
Duet 3 6HC @24v
4x 1HCL @24V configured as id's 20 -> 23
firmware & DWC at 3.5.0-rc.1The Behaviour:
when homing the machine, I am able to generate stall detection events correctly, however the homing procedure doesn't abort and instead continues to move even after the stall even has been generated.Config.g
M569 P20.0 S1 ; XY motor physical drive 121.0 goes forwards M569 P21.0 S1 ; XY motor physical drive 122.0 goes forwards M569 P0.4 S1 ; Z motor physical drive 0.4 goes forwards M569 P0.5 S1 ; z motor M569 P0.0 S1 ; extruder physical drive 0.0 goes forwards M569 P22.0 S1 ; XY motor physical drive 123.0 goes forwards M569 P23.0 S1 ; XY motor physical drive 124.0 goes forwards M584 X20.0:22.0 Y21.0:23.0 Z0.4:0.5 E0.0 ; set drive mapping M350 X16:16 Y16:16 Z16:16 E16 I1 ; configure microstepping with interpolation M92 X80 Y80 Z800 E409.00 ; set steps per mm M566 X300.00:300 Y300.00:300 Z90.00:90 E360.00 ; set maximum instantaneous speed changes (mm/min) M203 X19200 Y19200 Z600 E4800.00 ; set maximum speeds (mm/min) M201 X8000 Y8000 Z100 E500.00 ; set accelerations (mm/s^2) M906 X1600 Y1600 Z1200 E1400 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X315 Y370 Z400 S0 ; set axis maxima ; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y2 S3 ; configure sensorless endstop for high end on Y M574 Z1 S2 ; Stall detection setup M915 P20.0 S4 F0 H200 R0 M915 P21.0 S4 F0 H200 R0 M915 P22.0 S4 F0 H200 R0 M915 P23.0 S4 F0 H200 R0 code_text
HomeX.g
M201 X500 Y500 ; reduce acceleration to avoid false triggering G91 ; relative positioning M913 X40 Y40 ; drop motor current to 40% G1 H1 X-640 F6400 ; move quickly to X axis endstop for stalldetection G1 X15 F6000 ; go back a few mm M913 X100 Y100 ; raise motor current to 100% G90 ; absolute positioning M201 X18000.00 Y18000.00 Z300.00 E4000.00 code_text
What I haven't tried so far is reverting the firmware to 3.4.6 or a previous version of 3.5.0 so I cannot tell if this is a RC1 bug.
Additionally, I do not have a driver-stall.g file, as I am currently expecting this to behave similar to a Duet2's sensorless homing. This may be where I am going wrong as this machine is the first Duet3 device I have configured.
Any advice would be exceptionally helpful.
-
-
@fcwilt Normally on a coreXY you would have two steppers at the back of the machine and two idler brackets at the front of the machine.
by replacing the idler brackets with more motors, you can half the length of the belt length between the motor and the extruder carriage, in theory giving much more performance for higher speed movements and reducing any belt ringing/stretch issues.
Some users reference to this as AWD setup. In practice the AWD motor arrangement is exactly like Vez3D's printer layout if you want to see a beautiful machine in that configuration. -
Thanks.
I wonder if that makes stall detection harder to get working.
I've tried stall detection on two different machines and eventually decided to stick to endstop switches.
Frederick
-
@fcwilt
Ive not had an issue with stall detection before, but that was using a Duet2 and this is a Duet3 AND using the 1HCL daughterboards, so I think its just something funky going on with the config over an actual issue.the trick with sensorless homing in general is to use low currents, fast speeds and just dial in what sensitivity the config needs for your motors
-
Oh, I had it working but decided it was a simply a bad idea.
I also have brakes on my car so I don't have to run into a wall to stop it.
Frederick
-
@Notepad from https://docs.duet3d.com/en/User_manual/RepRapFirmware/CAN_limitations:
Stalls of expansion board motors cannot be used for homing. We expect to remove this restriction in firmware 3.6.
-
@dc42
Thank you for this. Now you're getting me excited for 3.6 before 3.5 has even launched