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

    Stall not being detected...

    Scheduled Pinned Locked Moved Unsolved
    General Discussion
    2
    15
    532
    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.
    • tenajaundefined
      tenaja
      last edited by

      I am trying to configure stall detection, but it's not detecting a stall, under any circumstance. I think I've set it to maximum sensitivity:

      M915 Y S-64 F0 H150 R3
      

      But the rehome.g file is never executed, even if I stop the motor manually. I tried S64, in case I misread the description, but that does not detect a stall, either. I've tried F0 and F1, and my H is set far below my speed.

      I am running Duet 2 Wifi, OpenBuilds nema 17 motors rated at 1.6A & set to 1A, 16uStep/full-step, and at about 10 revs/second (high speed, only a small flywheel attached, so I can grab it to stall it).

      This is my rehome.g file:

      ; rehome.g
      ; This is run if a stalled motor is detected.
      M220 S40		; continue at 40% speed
      M300			; send a beep (if connected to web), as an indicator
      g4 s1			; pause 1 second, as an indicator
      

      I also tried enabling logging, but get no indication there, either.

      Thanks in advance!

      tenajaundefined 1 Reply Last reply Reply Quote 0
      • tenajaundefined
        tenaja @tenaja
        last edited by

        @tenaja
        I forgot to mention, I am using a 6A 24v power supply, so there should not be an issue with that.

        1 Reply Last reply Reply Quote 0
        • tenajaundefined
          tenaja
          last edited by

          I also tried bumping my current up to 1.6A, and that did not help.

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

            Are you trying to register a stall during normal operation like printing, or for homing?

            How are you commanding movement when you're trying to force a stall?

            How did you determine your H value? Can you show your calculation?

            Hmin = full_steps_per_rev * rated_current * actual_current/(sqrt(2) * pi * rated_holding_torque)

            Z-Bot CoreXY Build | Thingiverse Profile

            tenajaundefined 1 Reply Last reply Reply Quote 0
            • tenajaundefined
              tenaja @Phaedrux
              last edited by tenaja

              @Phaedrux , I am trying to detect it during normal operation. This is not a printer application, so there are no E moves. Only two axes move at any given time, and one (Z) is very slow. Because of that, I am only trying to detect stall on one axis (Y), a high-speed rotary that is configured as linear (set up with 1 rotation per "millimeter").

              (Full steps/rev * Rated Current * actual current ) / ( Sqrt(2) pi rated holding torque in NM) =
              (200 * 1.68 *1) / (1.4142135623731 * 3.14159265358979 * 0.536677939)
              = 336/2.385
              = 140.91

              So I used 150, but my RPS is around 10, which is WAY faster than 150 full-step per second. There are very few 3d printers that spin any motor at 10 RPS, so I do not believe the minimum speed is an issue. I've tried stalling the motor at start-up, and at speed, and it is not detecting it.

              This is my motor:
              https://openbuildspartstore.com/nema-17-stepper-motor/
              And this is the site I used to convert the 76 oz*in to Nm:
              https://www.convertunits.com/from/oz-in/to/N-m

              The reason I am trying to detect the stall is because it can run without stalling 100 times in a row, then stall inexplicably. No change in code, no change in load. When it does stall, sometimes it stalls halfway through accel (probably at the resonance speed), and sometimes its at decel, but once in a while it's while it's running at full speed. At 1.6A, it's more reliable than at 1A, but it is not 100% reliable anywhere.

              It is also more reliable when warm (i.e. after running a "burn-in" sequence for a few minutes). Warm, I'm having better luck with .5A than cold at 1A, but no matter the current, it's not detecting it.

              Thanks!

              1 Reply Last reply Reply Quote 0
              • tenajaundefined
                tenaja
                last edited by tenaja

                According to the web dashboard, my Y axis, which is not detecting, is going 339mm/sec.

                Also, I checked the Dashboard for Vin, and it never drops below 24.0. At idle, it's mostly 24.1, sometimes 24.2. Running, it's mostly 24.1, and occasionally 24.0 (rarely).

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

                  Can you give some more details about what the motor is driving? What kind of loads/forces are applied to it? What do you think it causing it to skip steps in the first place?

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  • tenajaundefined
                    tenaja
                    last edited by tenaja

                    There is no load.

                    Just a small 1.5" x .5" aluminum knob (flywheel).

                    Oh, yeah...and occasionally my hand stopping the knob for a forced stall. But the whole reason I started this exercise is because it would randomly stall with no changes made. At higher currents, it takes a lot more than a little fingertip pinch to get it to stop--you have to GRAB it.

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

                      That's going to be hard to detect if it's just some resistance from resonance vibration.

                      The stall guard feature is intended to detect an impact that causes a back EMF spike, like the nozzle impacting with a print. This may be too subtle to detect.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      tenajaundefined 1 Reply Last reply Reply Quote 0
                      • tenajaundefined
                        tenaja @Phaedrux
                        last edited by

                        @Phaedrux said in Stall not being detected...:

                        impacting

                        But it's not even detecting if I grab it at full speed. I would expect it could, at 339 "mm" per second.

                        I just tested, and the motor can run these speeds even as low as 260mA, but no 250.

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

                          When it stalls in operation, is it coming to a full stop?

                          Z-Bot CoreXY Build | Thingiverse Profile

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

                            Will have to see what DC42 thinks. I'm no expert on stalls. Just my best guesses.

                            Z-Bot CoreXY Build | Thingiverse Profile

                            tenajaundefined 1 Reply Last reply Reply Quote 0
                            • tenajaundefined
                              tenaja @Phaedrux
                              last edited by

                              @Phaedrux , Thank you for your help.

                              Yes, it comes to a full stop when it stalls, no matter when it stops (i.e. during accel, decel, or full speed).

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

                                Photo of the motor and mass? Is it well balanced?

                                Z-Bot CoreXY Build | Thingiverse Profile

                                tenajaundefined 1 Reply Last reply Reply Quote 0
                                • tenajaundefined
                                  tenaja @Phaedrux
                                  last edited by

                                  @Phaedrux , probably not...although I ordered a steel knob, I received an aluminum one. Like I said, the knob is only 1/2" thick x 1.5" OD, the motor is about 1-3/4" long, so I think that's a dual stack motor.

                                  When warm, it would run reasonably reliably with at .26A current. After letting it cool down, .5A is not enough to get it moving--it is stalling every time there, now, and .8A is hit & miss. I don't really want to have a long warmup cycle just to get this reliable.

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