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

    Nema 23 Backlash on direction change

    Scheduled Pinned Locked Moved
    RepRapFirmware on other controllers
    6
    13
    1.4k
    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.
    • gloomyandyundefined
      gloomyandy @semi55
      last edited by

      @semi55 If the motors move fine when not loaded and not when under load then I would say you have some sort of mechanical issue. My guess is that the you are underestimating the force needed to overcome the friction when reversing motion. Remember that the rated torque will be for a full step and will likely be considerably less when using microstepping (this is especially true at low speeds like when you are reversing the drives). Can you post a picture of the mechanical setup you are using. 80steps/mm with a 64 microstepping sounds pretty low to me. I think I'd be considering some sort of mechanical solution (gearing of the drive system).

      semi55undefined 1 Reply Last reply Reply Quote 1
      • semi55undefined
        semi55 @gloomyandy
        last edited by semi55

        @gloomyandy The 80steps/mm are not actually calibrated to the real need of the setup as I am only testing the proper function right now.

        This is my setup
        IMG_20211217_101501 (4).jpg
        I've had a drive system with a belt and a gear ratio of 3:1 with 2x1,26Nm Nema23 motors which resulted in the same error. I then coupled 2xNema23 1,9Nm motors directly to the axle to isolate the mechanics (thought that maybe the belt stretches too much when changing directions).

        As you can see in the picture, I've added zip ties around each section where the error could occur to exaggerate the movement of each section (with sections I mean 1)Motor shaft, 2)Coupling, 3)Printer axle, 4)Printer pulley on axle) so I can spot if there would be any mechanical play (I've put some magnets on the shaft of the motor on the back with a zip tie).

        If the power of the motors would be to weak, wouldn't they skip steps right away and not be able to rotate the axle at all as the force to overcome the friction should be the highest if we take dynamics out of the equation through slow movement?

        theruttmeisterundefined 1 Reply Last reply Reply Quote 0
        • theruttmeisterundefined
          theruttmeister @semi55
          last edited by

          @semi55 stepper motors might have a lot less slip than a generic electric motor, but they still have some.
          It sounds like you are seeing that slip. As the field rotates relative to the rotor, the difference between the two (slip) is what generates the torque. If you are close to the limits of the motor and moving slowly... You can see that slip. Maximum torque it generated at the half step, so basically you are seeing the microsteps being lost in that slip, with the motor catching up as it gets to the half step (or maybe the full step).
          The big CNC boys have always said that open-loop steppers are only accurate to the half step for this very reason.
          And 2Nm of force needed is quite a lot!

          Isolate, substitute, verify.

          semi55undefined 1 Reply Last reply Reply Quote 1
          • alankilianundefined
            alankilian @semi55
            last edited by

            @semi55

            Here's a link to another microstepping vs torque thread and some text from the Faulhaber site about movement when microstepping.

            What Does It Mean?
            
            The consequence is that if the load torque plus the motor’s friction and detent 
            torque is greater than the incremental torque of a microstep, successive 
            microsteps will have to be realized until the accumulated torque exceeds the load 
            torque plus the motor’s friction and detent torque. Simply stated, taking a 
            microstep does not mean the motor will actually move.
            

            SeemeCNC Rostock Max V3 converted to V3.2 with a Duet2 Ethernet Firmware 3.2 and SE300

            1 Reply Last reply Reply Quote 1
            • semi55undefined
              semi55 @theruttmeister
              last edited by semi55

              @theruttmeister Thanks for your input. So basically stronger motors with less microstepping + maybe going back to a geared solution with a belt would fix the problem or would that make the error only a bit smaller but not 0?

              Are closed loop steppers an option to solve this problem otherwise? If so, is it possible to implement them in RRF firmware?

              @alankilian Also thanks for your input!

              theruttmeisterundefined 1 Reply Last reply Reply Quote 0
              • theruttmeisterundefined
                theruttmeister @semi55
                last edited by

                @semi55 yes.
                Gearing it down with a belt reduction will sacrifice top speed, but might be preferable. From the picture it looks like you have a huge pulley, or is that just for testing?

                And there are RRF/duet closed loop driver boards, but I have zero experience with them.

                There are also multiple options for servo's that can be driven with the step/dir output from the Duet.

                Isolate, substitute, verify.

                semi55undefined 1 Reply Last reply Reply Quote 0
                • semi55undefined
                  semi55 @theruttmeister
                  last edited by semi55

                  @theruttmeister Ok, I will try gearing it down then as this is the cheapest possible solution right now. I will post an update if this solves the problem (could take a while due to the upcoming holidays).

                  Thanks again for your help!

                  o_lampeundefined 1 Reply Last reply Reply Quote 0
                  • o_lampeundefined
                    o_lampe @semi55
                    last edited by

                    @semi55
                    I made a geared NEMA23 platform using some shapeoko-brackets. They were sold as leadscrew-upgrade parts. Not sure, if they're still available, but it would save you some time. Dual shaft is optional.
                    BTW: the printed pulley works surprisingly well.
                    N23_gears.jpg
                    N23_dual.jpg

                    semi55undefined 1 Reply Last reply Reply Quote 0
                    • semi55undefined
                      semi55 @o_lampe
                      last edited by

                      @o_lampe Nice setup, thanks for your input.

                      1 Reply Last reply Reply Quote 0
                      • semi55undefined
                        semi55
                        last edited by

                        Hi guys,

                        I have upgraded my system to a 5:1 geared belt driven axis (with 1/8 microstepping) which eliminated the problem with the motor shaft not turning. However, now it seems that the driving belt flexes too much.
                        I have a genuine Gates GT3 belt in 9mm width which should be sufficient regarding the calculated torque value of around 2Nm if I look at the manufactures datasheet.

                        When I change direction I need 2x0,1mm movements to be able to rotate the axis. I've tried various pretension states of the belt itself without any difference in the result.
                        Upgrading the belt to an even wider one would probably mean a I have to redesign the whole system as this would require a supporting bearing on the motor shaft.

                        Is it possible to have some sort of backlash compensation software wise?

                        1 Reply Last reply Reply Quote 0
                        • hackinistratorundefined
                          hackinistrator
                          last edited by

                          that's allot of "something" you're moving there .
                          did you consider leadscrews ?
                          at what voltage are you running the motors?

                          so let me get this straight , just to move your axis you need 2NM , which is close to the rated max holding torque of the motor .
                          while changing direction the torque needed might be 10 times more , depends on your max speed , accel and jerk setting.

                          semi55undefined 1 Reply Last reply Reply Quote 0
                          • semi55undefined
                            semi55 @hackinistrator
                            last edited by

                            @hackinistrator thanks for your reply and sry for my delayed answer. Leadscrews aren't an option as I have to stick with the rotating movement instead of linear movement of the axis because it drives another belt.

                            The motors are running at 24V.
                            Yes, I need 2Nm roughly to be able to move the axle. I have a gear ratio of 5:1 with 1/8 microsteps and two 1.9Nm Motors which leaves me with 3.7Nm left if 19,51% of the max power of the motor is preserved through 1/8 microstepping regarding the faulhaber website.

                            In theory and in praxis this is enough, the motor is working fine now. Only thing that I've pin pointed is that the timing belt is flexing too much and I am working on a solution for this at the moment.

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