Navigation

    Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Ideal microstep setting

    Tuning and tweaking
    10
    23
    8256
    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.
    • Adamfilip
      Adamfilip last edited by

      Trying to figure out the recommended microstep setting for my machine

      CoreXY with fairly heavy gantry
      24 volts
      Nema 17 0.9 degree motors
      Rated Current: 1.68A
      Holding Torque: 0.44N.m
      using 16 Tooth GT2 Pulley

      I want to be able to go as quickly as possible.
      what setting is idea to start with, I would like to go as high as is reasonable.

      also how does processor htz and stepper steps relate.

      400 Step motor @ 64 Microstepping = 25,600 steps full rotation / 16 teeth = 1,600 steps per tooth / 2mm per tooth / 800 Steps
      is this too aggressive? or can i increase microstepping?

      1 Reply Last reply Reply Quote 0
      • StephenRC
        StephenRC last edited by

        Start with what I use:
        M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation

        The firmware will automatically adjust the stepping as needed.

        If you want to go higher on the microstepping without having to recalc the steps per mm. Put the M92 after the M350, then if you put a higher microstepping line after the M350 & M92, the firmware will automatically adjust for it.

        1 Reply Last reply Reply Quote 0
        • dc42
          dc42 administrators last edited by

          First of all, the default 16x microstepping with 16x interpolation works very smoothly, so you may not gain anything by using higher microstepping.

          The maximum step rate the Duet WiFi can do is 240kHz with 1 motor stepping, or 130kHz with 3 motors stepping. On a CoreXY machine, pure X or pure Y movement requires both motors to move by the requested amount. I suggest you limit the step rate to 120kHz per motor. So at 800 steps/mm, you should limit the travel speed to 150mm/sec.

          Dynamically-varying microstepping is on the list so that we can support high microstepping at low speeds and lower microstepping at high speeds. However, the microstep interpolation works very well, so this is quite a low priority.

          HTH David

          1 Reply Last reply Reply Quote 0
          • timcurtis67
            timcurtis67 last edited by

            Here is a link to a steps per mm calculator. http://prusaprinters.org/calculator/

            I believe a .9 stepper with a 16 tooth pulley and 1/16 micro stepping would be 200 steps per mm.
            Running a lower microstep will gain you speed (based on processor htz but will cost you in position resolution). The current settings listed above would give you a 5 micron resolution.

            1 Reply Last reply Reply Quote 0
            • Adamfilip
              Adamfilip last edited by

              is interpolation handled seperately?
              if its set to 1/16 and I get 200 steps/mm with 16 interpolation that equals 3200 interpolated steps..
              do i use 200 or 3200 steps?

              1 Reply Last reply Reply Quote 0
              • dc42
                dc42 administrators last edited by

                Yes interpolation is handled separately, so you would specify 200 steps/mm.

                1 Reply Last reply Reply Quote 0
                • DjDemonD
                  DjDemonD last edited by

                  Its the driver chip which is doing the "extra" steps between the 200 steps/mm you've set. Best of both worlds, keeps the processor load reasonable on the controller but gives very smooth and quiet motors.

                  Makes me wonder whether swapping for TMC2600 step sticks on my older machines might be worth it.

                  1 Reply Last reply Reply Quote 0
                  • Adamfilip
                    Adamfilip last edited by

                    so how/where do you set the level of interpolaton?
                    any advantaged with going over 16interpolation?

                    I would like to be a quiet as possible

                    1 Reply Last reply Reply Quote 0
                    • DjDemonD
                      DjDemonD last edited by

                      I don't know enough about them but the information is most likely in http://www.trinamic.com/_scripts/download.php?file=_articles%2Fproducts%2Fintegrated-circuits%2Ftmc2100%2F_datasheet%2FTMC2100_datasheet.pdf:

                      There is an instructable about these drivers http://www.instructables.com/id/Install-and-configure-SilentStepStick-in-RAMPS-TMC/step4/Tuning-the-SilentStepSticks/ which suggests that you can set other modes like 1/4 interpolated to 1/256 etc… however since we are very familiar with 1/16th and the driver handles the rest this seems to be a pretty reasonable setting to use. They are quiet and I have had no issues with skipped steps and can move 250mm/sec with the same motors you are using. The idea of variable microstepping is very appealing, so looking forward to that - high precision, low speed when needed and greater torque/speed with less microstepping for faster moves.

                      1 Reply Last reply Reply Quote 0
                      • peridot
                        peridot last edited by

                        I should point out that "high precision" done with microstepping may be somewhat illusory: even if your stepper drivers can command 256 microsteps per step, the locations of those 256 microsteps are not guaranteed to be evenly spaced. They're supposed to be, but tiny variations in coil winding, resistance, or driver control mean that microsteps are really pretty approximate. They're useful mostly for smoothness, avoiding visible steps on the print, rather than actual positional accuracy. If you care about positional accuracy down to 5 microns, you're going to need to use steppers with more real steps per turn and/or mechanical drive trains with less motion per turn.

                        Also, of course, if you're using delta mechanics, the size of the stepper steps in real, printed-object space depends dramatically on where you're looking - out near the edges especially.

                        All of this makes me wonder what our real requirements are for servo-controlled motion - with a smart servo controller managing position velocity and acceleration, you don't need extra resolution for smoothness, only for part precision.

                        1 Reply Last reply Reply Quote 0
                        • bot
                          bot last edited by

                          Peridot has some great points, as usual. I've heard, and confirmed with some experimentation, that 4x microstepping is about the limit of "gained resolution," as in, beyond that, don't expect the additional microsteps to register consistently. As peridot says, the benefit is smoothness of motion, lowered resonance, etc.

                          I've gotten to the point where I just look at full-step resolution and compare that. If I want my printer to be "accurate to within 40 microns" I make the full step resolution 40 microns. The half or quarter stepping between the 40 microns is just extra.

                          There is a line of servo motors that accept step/dir signals from any typical stepper driver, called clearpath motors. They are only available as small as NEMA 23, and are quite pricey, but for a large delta or something, I would love to try them some day.

                          1 Reply Last reply Reply Quote 0
                          • deckingman
                            deckingman last edited by

                            I could be wrong (often am) but I read somewhere that the positional accuracy of a stepper motor is typically +/- 5% per full step but is non accumulative so (say) 200 steps would still be accurate within 5% of a single step. I also read that micro stepping won't improve that accuracy as all it does is divide the gap between the full step into 16 (or 256 or whatever) smaller steps. That being the case, it would seem to be not advisable to rely on micro steps for positional accuracy. Better to arrange the mechanics (gearing) so that a small linear movement needs a largish number of whole steps. Just my twopence worth - I'll get my tin hat now…...

                            1 Reply Last reply Reply Quote 0
                            • dc42
                              dc42 administrators last edited by

                              @bot:

                              Peridot has some great points, as usual. I've heard, and confirmed with some experimentation, that 4x microstepping is about the limit of "gained resolution," as in, beyond that, don't expect the additional microsteps to register consistently. As peridot says, the benefit is smoothness of motion, lowered resonance, etc.
                              ….

                              Worth pointing out I think is that on a delta, microstepping beyond 4x is important. This is because the Z resolution and hence layer height is much coarser than in a Cartesian or CoreXY printer with a leadscrew or threaded rod driving the Z axis. For example, my delta had a resolution of 80 1/16 microsteps/mm when I was using 1.8deg motors. That's 0.2mm per full step, or 0.05mm per quarter step. Changes in Z height of 0.05 mm are going to have a big effect on layer height and hence under/over extrusion. I now use 0.9deg/step motors, and with the 1/16 microstepping I was using when the printer was controlled by a Duet 0.8.5, the improvement in print quality could be seen if I looked closely enough.

                              1 Reply Last reply Reply Quote 0
                              • bot
                                bot last edited by

                                @dc42:

                                @bot:

                                Peridot has some great points, as usual. I've heard, and confirmed with some experimentation, that 4x microstepping is about the limit of "gained resolution," as in, beyond that, don't expect the additional microsteps to register consistently. As peridot says, the benefit is smoothness of motion, lowered resonance, etc.
                                ….

                                Worth pointing out I think is that on a delta, microstepping beyond 4x is important. This is because the Z resolution and hence layer height is much coarser than in a Cartesian or CoreXY printer with a leadscrew or threaded rod driving the Z axis. For example, my delta had a resolution of 80 1/16 microsteps/mm when I was using 1.8deg motors. That's 0.2mm per full step, or 0.05mm per quarter step. Changes in Z height of 0.05 mm are going to have a big effect on layer height and hence under/over extrusion. I now use 0.9deg/step motors, and with the 1/16 microstepping I was using when the printer was controlled by a Duet 0.8.5, the improvement in print quality could be seen if I looked closely enough.

                                I totally agree with you there. I'm not sure if you remember a series a posts I made on google groups about the "lava lamp" of resolution on delta printers, but my observation was likely caused by the varying resolution, and the variable ability for the motors to maintain torque causing inconsistent z height. I want to experiment with increasing the physical resolution and/or improving the power curve on deltas, but right now I'm going cartesian.

                                On my delta I have 80 micron full steps, and therefore 20 micron quarter steps. I do not have reliable or consistent z movement below 20 micron increments. Do you think going from 12v to 24v may improve the microstepping torque, and therefore attainable microstepping resolution?

                                1 Reply Last reply Reply Quote 0
                                • dc42
                                  dc42 administrators last edited by

                                  How come you have 80 micron full steps - are you using leadscrews instead of belts?

                                  I can jog the effector on my delta in steps of 6.25um, in other words it response to each 1/16 microstep. I haven't tried to measure how even the microsteps are.

                                  1 Reply Last reply Reply Quote 0
                                  • bot
                                    bot last edited by

                                    I have 16 tooth pulleys with 2mm pitch belt, 0.9 degree motors.

                                    I can also sometimes jog my effector in .01mm increments, but then in other areas of the bed, those increments do nothing until a big jump up. I probe my bed manually at about 28 points, and I jog up and down and measure with feeler gauges or with a dial indicator in place of the hot end. The 20 micron increments are almost always reliable (though not completely accurate), while 10 micron increments work about 50% of the time, more or less.

                                    1 Reply Last reply Reply Quote 0
                                    • peridot
                                      peridot last edited by

                                      Vertical resolution is the most regular of the delta steps - a vertical move is always simply the same number of steps on all three motors. (This is why it is safe to home by moving all three motors straight up as far as they'll go - no matter where the delta is this will home it without horizontal excursions.) Of course, depending on your horizontal position your three motors will be at different places within a step, so microstep inaccuracies may result in some horizontal motion as well as vertical inaccuracy.

                                      That said, I too have noticed some weirdnesses with small vertical steps appearing to do nothing, both with my previous RAMPS hardware and my current Duet WiFi. Of course my printer does not have terribly good mechanical resolution, and instead of feeler gauges I'm using paper. But it's interesting to hear your reports of peculiarities. Steppers are supposed to be so simple!

                                      1 Reply Last reply Reply Quote 0
                                      • peridot
                                        peridot last edited by

                                        @bot:

                                        There is a line of servo motors that accept step/dir signals from any typical stepper driver, called clearpath motors. They are only available as small as NEMA 23, and are quite pricey, but for a large delta or something, I would love to try them some day.

                                        Not to take us too far afield, but I quite like the Mechaduino project, which is apparently now shipping Kickstarter orders. Relatively affordable servos with ~0.1 degree resolution and full torque/velocity/position control. They do take step/direction input, but I suspect that this interface might not improve on a microstepped stepper; for really good performance you'd want to have the motion planner send target velocity/acceleration information to the motors as well. And anyway, it's not clear to me whether these motors will lead to any real improvement in printer reliability. Fortunately some of the smart tinkerers on the deltabots Google Group ordered sets and are planning to experiment.

                                        1 Reply Last reply Reply Quote 0
                                        • dc42
                                          dc42 administrators last edited by

                                          Although I like the idea of using position feedback, I would want better than 0.1deg resolution for a delta printer. My 0.9deg steppers move the effector on individual 1/16 microsteps, which equates to 0.5625deg resolution. Print quality was quite good when I was using 1.8deg motors but the moire on the sides of flat surfaces is noticeably less with 0.9deg motors.

                                          Sending target velocity and acceleration info to the drivers precludes the use of segmentation-free delta movement as used by RepRapFirmware, unless the servo controller can compute delta motion itself. What processor does the Mechaduino use?

                                          1 Reply Last reply Reply Quote 0
                                          • peridot
                                            peridot last edited by

                                            @dc42:

                                            Although I like the idea of using position feedback, I would want better than 0.1deg resolution for a delta printer. My 0.9deg steppers move the effector on individual 1/16 microsteps, which equates to 0.5625deg resolution. Print quality was quite good when I was using 1.8deg motors but the moire on the sides of flat surfaces is noticeably less with 0.9deg motors.

                                            I think you dropped a zero, but yes, the accuracy they claim is several microsteps of your current stepper. Though that's accuracy - the "steps" of position sensing are actually 0.02 degrees, there are just residual nonlinearities so that those steps are not all that evenly spaced. Which is true of microsteps too.

                                            That said, the moire patterns are the result of taking discrete steps, as I understand it, and position/velocity/acceleration control would (could) result in genuine straight lines, not digital approximations. Which is why I suspect that a step/direction interface is not going to be satisfactory, or at least, not that much of an improvement over what we have now.

                                            @dc42:

                                            Sending target velocity and acceleration info to the drivers precludes the use of segmentation-free delta movement as used by RepRapFirmware, unless the servo controller can compute delta motion itself. What processor does the Mechaduino use?

                                            It's an ARM M0+ SAM D21 (Arduino Zero compatible). So it can probably be flashed to handle the conversions itself. Failing that, it might be adequate to use segments that were cubic splines (constant-acceleration) - I believe it may natively support "follow cubic spline" commands?

                                            Clearly getting the most out of Mechaduino for a 3D printer is going to take a lot of work from people who understand motor control and motion planning. If the only change is smoother, faster prints, I'm not sure whether it's worth it. The real appeal of servos is the hope that they can improve print reliability, and for that I think just hooking them up with a step-direction interface will be an adequate test.

                                            1 Reply Last reply Reply Quote 0
                                            • SimonRafferty
                                              SimonRafferty last edited by

                                              It might be of interest - I've used these in my Mill (with Mach3). They accept Step/Dir inputs and once the PID's are tuned, give impressive results.
                                              http://www.cncdrive.com/DG4S_08020.html
                                              Compared to most other Servo controllers, they are very good value!

                                              I converted a 4 Axis Bridgeport Interact 1 Mk2 - and can achieve 100mm/s. It's not bad considering the table has to weigh quarter of a ton!

                                              Maybe a bit OTT for a printer - but if you want high speed, high precision and near silent operation, maybe not!

                                              I've tried 3D Printing on it, attaching a hot end to the spindle and printing on to a (cold) sheet of glass, covered in tape on the bed - and the results were pretty good. I only ran 50mm/s but the prints were largely free from motion artifacts except where it needed high acceleration. Unfortunately, I need the mill as a mill - otherwise I'd be tempted to build a more solid implementation (heated bed etc). It did show that a rigid structure with zero backlash and servos could pay dividends in quality.

                                              Si

                                              Si

                                              1 Reply Last reply Reply Quote 0
                                              • bot
                                                bot last edited by

                                                Which servos do you use with those boards? I've never used a servo before, so I wouldn't know where to start looking. Your mill sounds pretty cool. I want to make something like that some day.

                                                1 Reply Last reply Reply Quote 0
                                                • Whitewolf
                                                  Whitewolf last edited by

                                                  Clearpath, not for your typical printer though. They are pricey but the SDSK known as step direction stepper killers are drop in replacements for steppers. The caveat is your build needs to be large to make them worthwhile as they are Nema 23… I have a build I am planning around them which will use several independent XYZ carriages that move over a large 3x 5 foot fixed build plate using 3to1 gear reduction on linear profile rails and ball screws

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