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

    sensorless homing/ stall detection lead screw

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    6
    421
    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.
    • taconiteundefined
      taconite
      last edited by taconite

      Hey Guys,

      I try to get sensorless homing to work on an additional axis to spare a endstop + wiring (wiring is the tricky part), but I can't get it to work reliably. The problem is, that on the one hand the mechanism is kind of rough (so I can't limit the current to low and can't set the sensitivity to low) but then on the other hand I can't set the current and sensitivity to high because than the stalling is not recognized.
      It is a lead screw Tr10x2 with a bronze nut.
      VIN is 24V.
      Motor Wantai Nema 17 Schrittmotor 48mm 0.9° 42BYGHM809
      complete data:
      phase resistance: 1.25 Ohm
      voltage: 3.06V DC
      current: 1,7A
      torque: ca. 40 g-cm
      (no info about inductance)

      As far as I understood in here: https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing

      • the higher the homing speed the better detection
      • the lower the current of the motor (set temporarily) the better detection
      • the lower the sensitivity the better detection
      • the higher the H parameter the better detection
      • the lower acceleration and jerk the better detection

      I played with all parameters but it I can't get it to work properly

      file for testing the homing (not the actual homeu.g)

      M574 U1 S3 																			    ; homing with stall detection
      M400                  			; make sure everything has stopped before we make changes
      M913 U66        			; drop motor currents to 50% ;46
      M915 U S3 H200 R0 F0     		; set U to sensitivity 2, do nothing when stall, unfiltered
      G91                   			; use relative positioning
      G4 P1000
      M98 P"Alarmsound.g"
      G1 H1 U-90 F600			        
      M400                		 	; make sure everything has stopped before we reset the motor currents
      G90                  		 	; back to absolute positioning
      M913 U100     				; motor currents back to 100%
      G4 P500
      G1 U+10 F4000 			      
      

      Part of the config

      
      M350 U16 I1                                                         	   ; configure microstepping with interpolation
      M92 U3200.00          				  				   ; set steps per mm
      M566 U5  					  				   ; set maximum instantaneous speed changes (mm/min) (U and V former 600 now 50 and 300)
      M203 U1000 					   						   ; set maximum speeds (mm/min) (u former 700)
      M201 U50 					   					   ; set accelerations (mm/s^2) (former 1000 and 1000 now 50 and 500)
      M906 U1000 V2000 I30			                                  		   ; set motor currents (mA) and motor idle factor in per cent				   							   ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                                                                    ; Set idle timeout
      
      

      And one more strange thing is happening. When the homing is not successfull the drive is moving all the distance that it moved for homing in the other direction (so to sat to the start position for homing ... is that normal?)

      Any help is appreciated

      Custom ANET A8
      Custom Delta: D-PATCH (Delta Printer with Automatic Tool CHanging) https://forum.duet3d.com/topic/16082/d-patch?_=1596131234754

      All I do here is under this license: CC BY-NC-SA

      Phaedruxundefined 3DPMicroundefined 2 Replies Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator @taconite
        last edited by

        @taconite said in sensorless homing/ stall detection lead screw:

        When the homing is not successfull the drive is moving all the distance that it moved for homing in the other direction (so to sat to the start position for homing ... is that normal?)

        Are you sure it's not just going to absolute position 10 from this?

        G90                  		 	; back to absolute positioning
        M913 U100     				; motor currents back to 100%
        G4 P500
        G1 U+10 F4000 	
        

        Stall detection is a tricky proposition at the best of times. A lead screw driven axis with such a low lead may be problematic.

        Have you done the calculation to determine your minimum speed?

        https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing#Section_Minimum_recommended_speed_for_stall_detection

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 1
        • taconiteundefined
          taconite
          last edited by

          @Phaedrux said in sensorless homing/ stall detection lead screw:

          going

          Thank you for your reply!

          That is a good question, but it makes no sense because it moves a lot more when the homing is not working. When the homing is correctly set it is really just moving the 10mm. When I command the axis manually up (G91 and G1 G2 U60) it is moving down (when I execute the macro) and when homing is not working it is moving up all the way again.

          Yeah it seems like it 😄

          Yeah I've done the calculations:
          aea61b2b-358d-43f9-8b40-9ffb1352a436-grafik.png

          And what is your suggestion - increasing the value or decreasing? The value seems kind of low (when 400 is the recommended for 0,9° stepper motors)

          Custom ANET A8
          Custom Delta: D-PATCH (Delta Printer with Automatic Tool CHanging) https://forum.duet3d.com/topic/16082/d-patch?_=1596131234754

          All I do here is under this license: CC BY-NC-SA

          1 Reply Last reply Reply Quote 0
          • taconiteundefined
            taconite
            last edited by

            and is there a M or G command to "forget" that an axis is homed?

            Custom ANET A8
            Custom Delta: D-PATCH (Delta Printer with Automatic Tool CHanging) https://forum.duet3d.com/topic/16082/d-patch?_=1596131234754

            All I do here is under this license: CC BY-NC-SA

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

              You can turn the motor off with M84 which will flag it as unhommed.

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

              M84 X Y

              Z-Bot CoreXY Build | Thingiverse Profile

              1 Reply Last reply Reply Quote 1
              • 3DPMicroundefined
                3DPMicro @taconite
                last edited by 3DPMicro

                @taconite i think this situation came up before. A possible cause was that mechanical advantage afforded by a low lead screw meant the motor will see very low mechanical resistance. Approximately 10% of a belt drive in your case. Phaedrux alluded to this above

                Duet controlled Jet Lathe, scratch built micro mill and 3d printer. 1992 Haas VF2 VMC retrofit

                1 Reply Last reply Reply Quote 1
                • gloomyandyundefined gloomyandy referenced this topic
                • First post
                  Last post
                Unless otherwise noted, all forum content is licensed under CC-BY-SA