Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Tuning of Sensorless Homing

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    5
    566
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BenNorton01undefined
      BenNorton01
      last edited by

      Hi All

      I am trying to set up the sensor-less homing on my Duet 2/Duex5 controlled printer and am so far have had some issues in that the bed drives into the ends of the Z-Axis assemblies and skips steps but does not sense them.

      I am wanting to use the sensor-less homing to do a 'gross' homing of the ball-screw driven Z-Axis actuators which are prone to falling under the weight of the bed when the motors are idled which leaves the bed on a bad angle. This does not cause any damage as the bed is mounted with ball and socket joints. After this gross homing is completed, the printer will then use the BL-Touch probe and the independently driven Z-Axis actuators to to the more accurate bed levelling (G32).

      I have setup a testing macro that is essentially a modified 'homeall' sequence. The G32 would be added in later.

      G91                                  ; relative positioning
      G1 Z10 F6000 S2                      ; lift Z relative to current position
      G1 S1 X480 Y475 F9000                ; move quickly to X and Y axis endstops and stop there (first pass)
      G1 X-5 Y-5 F6000                     ; go back a few mm
      G1 S1 X480 Y475 F360                 ; move slowly to X and Y axis endstops once more (second pass)
      M400                                                   ; make sure everything has stopped before we make changes
      M915 P2:5:6 S-30 F0 H250 R0                            ; Configure Z-Axis Stall Detection
      M584 X0 Y1:7 Z2 U5 V6 E3 P5                            ; Separate Z-Axis Lead screws and drive independently
      M913 Z50 U50 V50                                       ; Lower motor current by 50%
      M574 Z1 U1 V1 S3                                       ; Configure Z-Axis stall detection homing
      G91                                                    ; relative positioning
      G1 S1 Z-650 U-650 V-650 F500                           ; Home Z-Axis actuators independently
      M400                                                   ; make sure everything has stopped before we make changes
      M913 Z100 U100 V100                                    ; Reset motor current
      M584 X0 Y1:7 Z2:5:6 U5 V6 E3 P3                        ; Reset drive mapping
      M574 Z1 S2                                             ; Reset Z-Axis to be controlled by probe
      G90                                  ; absolute positioning
      G1 Z10 F6000 S2                      ; lift Z relative to current position
      G1 X220 Y197.5 F9000                 ; go to first bed probe point
      M558 F400                            ; adjust first probe speed
      G30                                  ; home Z by probing the bed
      M558 F120                            ; reset probe speed
      G30                                  ; home Z by probing the bed
      

      My config configures the rest of the U and the V axes:

      ; Drives
      M569 P0 S0                                           ; X drive goes backwards
      M569 P1 S0                                           ; Y1 drive goes backwards
      M569 P2 S0                                           ; Z1 drive goes backwards
      M569 P3 S1                                           ; E0 drive goes forwards
      M569 P5 S0                                           ; Z2 drive goes backwards
      M569 P6 S0                                           ; Z3 drive goes backwards
      M569 P7 S1                                           ; Y2 drive goes forwards
      
      M584 X0 Y1:7 Z2:5:6 U5 V6 E3 P3                      ; Apply custom drive mapping, U is a dummy Axis and P3 is setting the number of visible axes
      M671 X222:-10:520 Y581:25:25 S10.0                   ; leadscrews at rear middle, front left and rear right
      
      M350 X16 Y16 Z16 U16 V16 E16 I1                                 ; Configure microstepping with interpolation
      M92 X160 Y80 Z320.00 U320.00 V320.00 E946.00                    ; Set steps per mm
      M566 X900.00 Y900.00 Z12.00 U12.00 V12.00 E120.00               ; Set maximum instantaneous speed changes (mm/min)
      M203 X10000.00 Y10000.00 Z400.00 U400.00 V400.00 E1200.00       ; Set maximum speeds (mm/min)
      M201 X1000.00 Y1000.00 Z20.00 U20.00 V20.00 E250.00             ; Set accelerations (mm/s^2)
      M906 X1000.00 Y1500.00 Z1500.00 U1500.00 V1500.00 E1200.00 I100 ; Set motor currents (mA) and motor idle factor in per cent
      
      M84 S0                                                          ; Set idle timeout (0 is disable a time out, always on ) 
      
      ; Axis Limits
      M208 X0 Y0 Z-0.5 U-0.5 U-0.5 S1                      ; Set axis minima
      M208 X470 Y465 Z650 U650 V650 S0                     ; Set axis maxima
      
      ; Endstops
      M574 X2 Y2 S1                                        ; Set active high endstops
      
      ; Z-Probe
      M574 Z1 S2                                           ; Set endstops controlled by probe
      M307 H3 A-1 C-1 D-1                                  ; Disable heater on PWM channel for BLTouch
      M558 P9 H5 F120 T9000 X0 Y0 Z1                       ; Set Z probe type to bltouch and the dive height + speeds
      G31 P500 X25.4 Y0.2 Z0.847                           ; Set Z probe trigger value, offset and trigger height
      M557 X25.4:435 Y10.2:440 P5                          ; Define mesh grid
      

      Any help would be greatly appreciated

      1 Reply Last reply Reply Quote 0
      • BenNorton01undefined
        BenNorton01
        last edited by

        Is anyone able to weigh in on this issue?

        1 Reply Last reply Reply Quote 0
        • Phaedruxundefined
          Phaedrux Moderator
          last edited by

          What is the lead of your ball screws?

          Stall detection on the Z axis is difficult even under ideal circumstances.

          There needs to be enough back EMF to trigger the stall so the dive speed needs to be frighteningly high.

          You may have better luck with RRF3 as it has an additional multi motor stall option.

          https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3

          Try lowering the motor current even further than 50%. Lower is as low as you can go and still get reliable movement.

          Increase the dive speed from 500mm/min you have now.

          And play with the sensitivity.

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 0
          • zaptaundefined
            zapta
            last edited by

            @BenNorton01 said in Tuning of Sensorless Homing:

            After this gross homing is completed, the printer will then use the BL-Touch probe

            Since you have BLTouch, have you considered using it for Z homing?

            You can still do dual speed homing since the BLTouch extends and is thus triggered before the bed hits the nozzle.

            1 Reply Last reply Reply Quote 0
            • pro3dundefined
              pro3d
              last edited by

              Hi Ben. This is an old post, but did you solve your homing? I try to do the same as you did

              Valkyrie DIY High Temp 3D Printer

              R&D - Engineering Designer - Viking 3D Printers
              https://vkingprinter.com/

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Unless otherwise noted, all forum content is licensed under CC-BY-SA