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

Stall detection on Z still not working!

Scheduled Pinned Locked Moved
Tuning and tweaking
6
20
2.9k
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.
  • undefined
    GaRv3
    last edited by 11 May 2018, 12:35

    Re: How to tune Stall Detection?

    Since this old post has been hijacked, I open a new one.
    Stall detection on Z is still not working for me, no matter what I try. This is one of the most important features I bought the Duet Wifi for.
    Stall detection on X an Y works though.

    There must be a solution to this...
    I am currently using v1.21.

    1 Reply Last reply Reply Quote 0
    • undefined
      timcurtis67
      last edited by timcurtis67 5 Nov 2018, 12:56 11 May 2018, 12:54

      https://forum.duet3d.com/topic/3986/how-to-tune-stall-detection/35

      and

      https://forum.duet3d.com/topic/3986/how-to-tune-stall-detection/37

      Have you followed these suggestions?

      Maybe the Z motors you are using need to be changed?

      Sounds like higher Z homing speeds help when using Z lead screws.

      1 Reply Last reply Reply Quote 0
      • undefined
        carlosspr
        last edited by carlosspr 5 Nov 2018, 13:24 11 May 2018, 13:22

        The Stallguard depends on a set of base parameters:

        • Motor parameters (EMF constant, inductance, and resistance): Unfortunately to modify these variables you have to change motors and is not an option for tuning.
        • Supply voltage: for me stallguard started working on Z with 24V, but never worked with 12V (at least I could not make it work relyably, it would stall completely or not at all).
        • Current: I got best result with lower currents. I runt he gode "M913 Z40" to reduce the current to 40% before I home, then I restore the 100%.
        • Speed: For me F600 is working fine. You need to find the correct speed, but everytime you change something, the response on other parameter settings will vary. For that reason, I started with currrent and once I see the motor moving, I fix the value and do not change again.
        • And last but not least the amount of mechanical load: Try to modify the weight on the Z and see if it makes any changes.
        1 Reply Last reply Reply Quote 0
        • undefined
          GaRv3
          last edited by 24 May 2018, 01:29

          So one thing I have found is that changing the motor current for drives other than X, Y, Z and E does not seem to work.

          This is a problem for my usecase because I want to home the two motors of my Z-axis independently. So the left one is mapped as U and the right one as V.
          When I try to set the motor current to let's say 25% (M913 U25 V25), this does not work. When moving U or V after this will always move it with full power.
          Is it possible to set the current by drive numbers instead of axes?

          1 Reply Last reply Reply Quote 0
          • undefined
            GaRv3
            last edited by 24 May 2018, 02:04

            Okay, so now it does not even work on X any more... I have no idea what I am doing wrong 😞

            1 Reply Last reply Reply Quote 0
            • undefined
              GaRv3
              last edited by 14 Jun 2018, 14:27

              So, just to be clear, what are the correct stall detection settings (and speeds) for these drives on my z axis?

              Motor:
              Step Angle: 1.8°
              Accuracy: +/- 0.5°
              Phase: 2
              Voltage: 3.96V
              Current: 0.9A
              Resistance: 4.4 Ohms +/- 10%
              Temperature Rise: 80K max.
              Ambient Temps: -20°C ~ 50°C
              Ambient Humidity: 90% max.
              Insulation Resistance: 100MOhms min 500VDC
              Insulation: B level
              Keep Moment: 0.4NM
              Weight: 280g

              Current Settings:
              Acceleration: 500mm/s²
              Maximum Speed: 180mm/min
              Jerk: 18mm/min
              Steps/mm: 400 (interpolated * 16 => 6400)

              Current (not working) Stall Configuration:
              M915 Z S-10 F0 R1

              So how can I get this working?
              Thanks

              1 Reply Last reply Reply Quote 0
              • undefined
                deckingman
                last edited by 14 Jun 2018, 14:56

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

                Ian
                https://somei3deas.wordpress.com/
                https://www.youtube.com/@deckingman

                1 Reply Last reply Reply Quote 0
                • undefined
                  GaRv3
                  last edited by 18 Jun 2018, 20:05

                  The problem is that stall detection obviously only works when printing gcode files. If I want to use it for homing, it has to work using the DWC as well.
                  Is there a setting to change this behaviour or is this coming in one of the next releases?

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    Phaedrux Moderator
                    last edited by 19 Jun 2018, 03:07

                    What do you mean? It works when homing in the DWC as well.

                    What I've found though is that the sensitivity of the detection seems to vary quite a bit depending on the position of the axis and the temperature of the motors. For instance it Triggers more when higher on the axis where there is more friction on my lead screws. So the behaviour can seem inconsistent and settings that work at one point stop working when conditions change.

                    I'd put this feature under the heading of, yes it works but you probably shouldn't rely on it unless you have to.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      Phaedrux Moderator
                      last edited by 19 Jun 2018, 03:12

                      There are no correct settings someone can provide for you even knowing the motor specs. It will take a lot of testing to narrow down a working configuration.

                      I can tell what worked for me as an example and the reasoning for it but you'll have to test out different values to see what works in your system.

                      Jerk 1, acceleration 10, speed 200, sensitivity 3, trigger value 200, current 40% of 2000

                      Changing any of those values even slightly was enough to make it either too sensitive or not sensitive enough.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        GaRv3
                        last edited by 19 Jun 2018, 09:31

                        Whenever I start a print, I get stall warnings during the homing process.
                        If I start the homing by clicking on the button in DWC, I do not get these warnings.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          Phaedrux Moderator
                          last edited by 19 Jun 2018, 16:32

                          That's interesting. I can't think of why that would be.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            GaRv3
                            last edited by 19 Jun 2018, 18:52

                            Well, but that's the way it is. 100% reproducible.

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              Phaedrux Moderator
                              last edited by 19 Jun 2018, 18:58

                              Can you post your homing files?

                              Z-Bot CoreXY Build | Thingiverse Profile

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                GaRv3
                                last edited by GaRv3 20 Jun 2018, 08:58

                                This is the code used to home:

                                ; homeall.g
                                ; called to home all axes
                                ;
                                ; generated by RepRapFirmware Configuration Tool on Fri Feb 02 2018 20:19:38 GMT+0100
                                G91 ; relative positioning
                                G1 S2 Z5 F6000 ; lift Z relative to current position
                                G1 S1 X-235 Y-230 F1800 ; move quickly to X or Y endstop and stop there (first pass)
                                ;G1 S1 X-235 ; home X axis
                                ;G1 S1 Y-235 ; home Y axis
                                G1 X5 Y5 F6000 ; go back a few mm
                                G1 S1 X-235 F360 ; move slowly to X axis endstop once more (second pass)
                                G1 S1 Y-235 F360 ; then move slowly to Y axis endstop
                                G1 S1 Z-255 F1800 ; move Z down stopping at the endstop

                                M564 H0 S0 ; Allow moving unhomed axes
                                M906 Z5 ; Set Z motor current to some mA
                                G1 S0 V-10 ; Move Z down with little force to even the axis out
                                M18 Z ; Disable the stepper motors for Z
                                G4 S0.1 ; Wait 0.1 second
                                M906 Z900 ; Set Z motor current back to 900mA
                                M564 H1 S1 ; prevent unhomed axes from moving

                                G90 ; absolute positioning
                                G92 Z0 U0 V0 ; zero position for Z, U(Z1) and V(Z2)

                                G1 Z10 F1800 ; uncomment this line to 0lift the nozzle after homing

                                dc42undefined 1 Reply Last reply 20 Jun 2018, 09:06 Reply Quote 0
                                • dc42undefined
                                  dc42 administrators @GaRv3
                                  last edited by 20 Jun 2018, 09:06

                                  @garv3 said in Stall detection on Z still not working!:

                                  M906 Z5 ; Set Z motor current to some mA
                                  G1 S0 V-10 ; Move Z down with little force to even the axis out
                                  M18 Z ; Disable the stepper motors for Z

                                  I presume you have warn-on-motor-stall enabled. You are deliberately stalling the Z motor in that move. You could use M915 V R0 to disable warning on stall detect before that move, and M915 V R1 afterwards.

                                  Duet WiFi hardware designer and firmware engineer
                                  Please do not ask me for Duet support via PM or email, use the forum
                                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    GaRv3
                                    last edited by 20 Jun 2018, 10:26

                                    The problem is not that I get the warning. I want the warning to pop up. The problem is that I get the warning only when printing gcode files. I want it to pop up when using DWC too. Otherwise using stall detection for homing will not work for DWC.

                                    1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators
                                      last edited by 20 Jun 2018, 10:35

                                      You don't need to have warnings pop up when using stall detection for homing; although having warnings appear may help while you are tuning the stall detection threshold.

                                      Warning messages that are not associated with a particular command should appear on all input devices. If they are not appearing in DWC, maybe this is connected with your DWC user interface settings. Have you checked whether they are shown on the GCode Console page of DWC?

                                      Duet WiFi hardware designer and firmware engineer
                                      Please do not ask me for Duet support via PM or email, use the forum
                                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        GaRv3
                                        last edited by GaRv3 20 Jun 2018, 10:48

                                        I know the messages are not necessary for the homeng after tuning but I need them to tune the detection and therefore I want to use them.
                                        They do not appear in the console when using DWC to home. When printing a file, they pop up and are logged in the console.
                                        Additionally I cannot be sure stall detection will work if I do not get messages. I cannot try it before I know it works.

                                        1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by 19 Jul 2018, 07:02

                                          The easiest way of getting warning that I can think of is to put the commands you want to test in a GCode file and print it. However, when I was testing stall detection endstops, I didn't find any need to do this. If the stall detection is working then the homing move stops when the tower or axis reaches the hard stop. If it tries to keep going, then stall detection isn't working. You should use reduced current when homing with stall detection anyway, to make sure that the motor does stall instead of the belt jumping on the pulley.

                                          Duet WiFi hardware designer and firmware engineer
                                          Please do not ask me for Duet support via PM or email, use the forum
                                          http://www.escher3d.com, https://miscsolutions.wordpress.com

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