Stepper Drivers: Simplified!

Поділитися
Вставка
  • Опубліковано 11 січ 2025

КОМЕНТАРІ • 58

  • @ldomotors
    @ldomotors Рік тому +24

    Thanks great video about stepper motor!

  • @andys4777
    @andys4777 Рік тому +8

    A very profound analysis of practical side of things, but it would be really nice to have an RPM scale and figures for those of us who aren't familiar with voron's rps to mm/sec ratios and I think RPM is a more universal platform independent term anyway

    • @nickburrill691
      @nickburrill691 10 місяців тому +1

      Yes or at least let us know what your rotation to mm ratio is :)

  • @mafketeltje1988
    @mafketeltje1988 2 дні тому

    best presentation of the year on technological and practical side...very interesting. Quit complex but if you just follow the video along, it all makes more and more sense. Coffee well deserved, thank you for making this video!

  • @realcrys
    @realcrys Рік тому +3

    This video is amazing. I had a rough understanding of how steppers work, but this makes it so clear and easy.

  • @brycesstuff
    @brycesstuff 4 дні тому

    My mind is blown, i had no clue the steppers were this complex. Thats wild! Great video, Thank you 👍

  • @ebrewste
    @ebrewste Рік тому +1

    This is a love letter to stepper motors and understanding in general.

  • @edriyin
    @edriyin Рік тому +3

    Great investigation Eddie. Thanks for the clear instruction about very basic and important topic.

  • @harjoat
    @harjoat Рік тому +5

    Elegantly explained, as always. Thanks for your content Eddie :)

  • @TR4G
    @TR4G 2 місяці тому

    Great video. Loved the explanation on both voltage and current. The scope captures were the cherry on top. Thank you.

  • @brendanm720
    @brendanm720 Рік тому +2

    Very interesting. Thank you for explaining this.

  • @stefanguiton
    @stefanguiton Рік тому +1

    Excellent work Eddie!

  • @MrJofArnold
    @MrJofArnold Рік тому

    Thanks so much. Discovered the channel via Vez and the VzBot Discord. Very clear explanation. Looking forward to the next one!

  • @highspeedpiTV
    @highspeedpiTV Рік тому +2

    Nice! Keep up great work as always!

  • @agnichatian
    @agnichatian 27 днів тому +1

    Is it common for the various stepper controller chips to shut off the drive completely, like that at video time 20:20 at scope time 0.30 ms, at the zero-current step ? I don't see anything about that in my A4988 datasheet. I could use that feature in measurement scheme I'm looking into.

  • @jzagaja
    @jzagaja Рік тому

    I don't understand why why rely on Nema 17 and tiny drivers. For a pellet extruder we need torque (10Nm) and current so that tiny drivers are no go? Or we can generate that torque with Nema 17+ 1:10 using external drivers and high current +water cooling? 1:15 and 1:20 would limit the output. Robot joint motors (BLDC+reducer) can generate 10Nm having much smaller weight?

    • @eddietheengineer
      @eddietheengineer  Рік тому +1

      That’s a great question! With 3d printers, NEMA17 motors actually have plenty of torque, we are rarely using more than 10-20Ncm (I believe-I’d have to refer back to the calculator). You can see the application of this by realizing that with existing motors and drivers some people are able to do travels with 80000mm/s acceleration or even higher-most people stay well below 10000, as the rest of the system/stiffness apart from the motors themselves are the limiting factors

  • @michaeleitel7186
    @michaeleitel7186 Рік тому

    Good explanation
    One additional factor when running fast is the jitter that is getting enoyand when using software puls generation.
    That gives U earlier stalls
    In higher quality cnc control U use therefore fpga as puls generators.
    In higher speeds you can even hear the more equal generation
    Looking forward to more of your videos

    • @eddietheengineer
      @eddietheengineer  Рік тому +1

      That’s a really interesting thought! Thanks for sharing-maybe I need to probe the step pin to see how consistent the stepping signal is

  • @Nevax_
    @Nevax_ Рік тому

    Thanks you for sharing your knowledge! Looking forward for future videos, especially klipper config tuning.

    • @eddietheengineer
      @eddietheengineer  Рік тому +1

      Thanks for the comment! I'm having fun playing around with driver settings and am looking forward to getting a video out about it once I understand the settings a bit better.

  • @pham3383
    @pham3383 7 місяців тому

    i have a question
    the nema 23 stepper current at 3A-48v also has the same phenomena as you when reaching 800mm/s(saw tooth-y current)
    my only explaination is because the motor coil is missing the rotor at lower Voltage and start to catch up at high voltage?
    also i am using full step setup,and fast decay behavior cannot be seen from the chart anymore,do anybody knows why,please give me some material regarding this?
    anything else?enlighten me please?

  • @Flyrockets
    @Flyrockets Рік тому

    Great video and explanations!

  • @Lantos1618
    @Lantos1618 Рік тому

    I'm wondering why a tiny tmc5160 can power a 48v stepper motor when large stepper motors are normally sold with those big box styled stepper drivers

    • @eddietheengineer
      @eddietheengineer  Рік тому +2

      That's a great question! I believe the larger stepper drivers are large not due to voltage requirements as much as due to current requirements. NEMA23+ motors require a LOT of current and that current drives larger components/heat.

    • @Lantos1618
      @Lantos1618 Рік тому

      @@eddietheengineer
      Cool thanks for the reply however I think it might just be down to market separation and disconnect of knowledge.
      It seems that it might just be because nema17 is being marketed for 3d printers, TMC marketed the TMC2209 to 3d printers however 3d printer people are moving to higher requirements and using the TMC5160 because of the higher operating voltages.
      Nema 23+ motors are targeted to CNC machines (mills, lathes). This market has been using the black box style like the DM556T for years and it is baked in. This market is use to dip switches and pulse input. The software for CNC machines like Mach4 interfacing with serial breakouts that connect to the pulse on the DM556T rather then the UART on TMC's.
      I've come to this reasoning because TMC5160's can handle a Nema34 motor as they have a peak operating voltage of 60V and 20A(external mosfet) while the DM556T can handle 50V, 5.6A. So by the looks of it the TMC5160 might actually be able to handle a higher operating wattage.
      Maybe some of the drivers like the DM556T are using TMC but for some reason I doubt that.
      I think it would actually be a sick video if someone did a larger stepper motor running with TMC vs DM556T or similar. My guess is that some 3d printing guys will move onto the Nema23+ to get insane speeds in the near future.

  • @hakkaisha
    @hakkaisha Рік тому +1

    Thanks, verry interesting!
    Would it be a correct conclusion that 24v I holding back our stepper motors speeds? Did you notice any increase in how hot the motors became at higher voltage?

    • @eddietheengineer
      @eddietheengineer  Рік тому +2

      Yes and no! You can go faster with 48V, but often times 24V is already fast enough 😄 like in the example in the video, not many people are printing faster than 1000mm/s, so 24V is probably plenty for the motor shown! But other motors may still benefit from 48V (like 0.9 degree steppers).
      For motor temperatures, they definitely are higher at 48V! A component of that I believe is due to the voltage itself, but a significant part is just because the motor can go faster and the driver can push more current at those higher speeds! So the total power at higher speeds increase substantially

    • @daliasprints9798
      @daliasprints9798 Рік тому

      ​@@eddietheengineer You need some nice motors or big pulleys to do 1000 mm/s with 24V...

    • @hakkaisha
      @hakkaisha Рік тому

      Thanks for great answer, very interesting, love your content!

  • @nunovicente34
    @nunovicente34 Рік тому

    Awesome video man! So much good information 💪🏻
    So from what I understood the microsteps value has no affect on max current/torque the stepper can supply?

  • @sivisjoe9877
    @sivisjoe9877 Рік тому

    Some users told me that high-quality motors are magnetically charged after assembly, and once the motor is disassembled, the magnetic force will be lost. I don't know if this is correct

    • @eddietheengineer
      @eddietheengineer  Рік тому +3

      I've heard similar things to "don't ever disassemble a stepper motor" which is why I picked an old stepper motor I knew I would never use again to disassemble for the video!

  • @levihartendorp7455
    @levihartendorp7455 28 днів тому

    stepbro motor

  • @CncMAC
    @CncMAC Рік тому

    Great video.

  • @Leo.Wolf.the.Engineer
    @Leo.Wolf.the.Engineer Рік тому +1

    You must be a PowerPoint wizard xD

    • @eddietheengineer
      @eddietheengineer  Рік тому

      I wish! Haha. Most of the animations were hacked with python

  • @pouriaaghazade3720
    @pouriaaghazade3720 Рік тому

    Excellent

  • @Muz994
    @Muz994 3 місяці тому

    Very helpful!

  • @sivisjoe9877
    @sivisjoe9877 Рік тому

    Thanks for your expertise, I'm curious if microstep reduces motor torque?

    • @eddietheengineer
      @eddietheengineer  Рік тому +2

      Not really! That's why the simulation showed that the blue line (vector) was a circle--even with microstepping the magnitude of the vector was constant. However--that does not mean that microstepping will always be more accurate or precise than full stepping. At peak torque load, both full stepping and microstepping will have a deflection of 1 full step, regardless of the microstep setting.

  • @qcnck2776
    @qcnck2776 Рік тому

    Hi Eddie-truly-the-Engineer, thanks for a great video😀. I have a couple of questions.
    1. How does the fast decay help? Since the current continues to decay even further in the second slow decay phase?
    2. Can the driver put out a higher max voltage than the voltage it is being supplied? I heard someone saying that the drivers have a boost converter, and will determine the output voltage based on the current needed. In your analysis, I see the driver using a constant voltage and simply chopping the duration.

    • @eddietheengineer
      @eddietheengineer  Рік тому +1

      1. That’s a great question! I think fast decay helps if the current needs to decrease faster than it would naturally-but you’re right! Theoretically the fast decay phase could be selectively used only during the 2nd and 4th full step where the current is decreasing towards 0.
      2. That would be interesting! So far I’ve only seen stepper drivers like the one I have here, which just passes through the input voltage to the stepper driver.

    • @qcnck2776
      @qcnck2776 Рік тому +1

      @@eddietheengineer Thanks for your replies, Eddie. I too have not seen any drivers with a boost converter, but the person who said that wrote with great confidence 😆, and I know for certain that I don't know everything about stepper drivers.
      Appreciate the content!

    • @dmitrybutyugin3857
      @dmitrybutyugin3857 Рік тому +4

      TMC drivers also support slow-decay-only mode, called 'Classic Constant Off Time Chopper' in their docs. However, this mode requires rather precise tuning. This is because during slow decay phase the current does not flow through R_SENSE, and so the driver cannot measure the current through the winding and does not know when to turn back on. You need to configure that off time correctly. For spreadcycle you are still expected to provide some reasonable hysteresis parameters, but since the driver can measure the current during fast decay phase, it is a lot less sensitive to precise tuning as it can do adjustments itself. Then, fast decay phase reduces the total length of ON->SD->FD->SD control cycle (since slow decay phases are shortened), thus allowing faster step rates and less noise (basically, the frequency of that control cycle can be pushed into 30+kHz, inaudible by human ear).

    • @eddietheengineer
      @eddietheengineer  Рік тому

      @@dmitrybutyugin3857 thanks for that context! That’s really interesting

    • @qcnck2776
      @qcnck2776 Рік тому

      @@dmitrybutyugin3857 Thanks so much for the explanation. Very helpful.

  • @Chretze
    @Chretze Місяць тому

    I might have a bit of a dumb question, but I'm using a TMC2208 which gets its signal from an Arduino Nano and I just want the motor to rotate in a constant speed, however, even at 3000 pulses per second it's still rotating super slowly, even at just 1/2 steps. Increasing the steps per second doesn't seem to increase the rotation speed , it's like it's reaching some sort of limit.
    So is it that the Arduino can't send pulse any faster? Or is there a better way to tell the TMC2208 to keep the stepper motor rotating?
    I'm at a loss, input would be much appreciated guys!

    • @agnichatian
      @agnichatian Місяць тому +1

      It should work; what is the circuit and motor drive voltage ? Is the current set ? I got my Arduino to run a NEMA17 "3d printer motor" at 8000 steps/sec using an A4988 which was on a cheap ~$2 carrier board from Amazon. I used 12V 1/2 amp at the motor.

    • @Chretze
      @Chretze Місяць тому +1

      @@agnichatian I have further troubleshot this issue and must confess that I didn't provide enough context.
      I'm using an RC controller that provides an SBUS signal to the Arduino which in turn translates that signal to stepper motor rotation speed. The issue isn't the stepper motors, drivers, or pulse speed because individually those components can rotate well faster than my desired speed, the problem was the SBUS interpretation. I just couldn't get that part right.
      Cheers!

    • @agnichatian
      @agnichatian Місяць тому +1

      @Chretze cool. I've had similar speed-related issues with rs232 and other Arduino library code. I fixed it by writing my own math, serial, print, timer, servo, stepper etc code over time. It was fun but I could just use a more modern chip next time.

  • @x_jaydn
    @x_jaydn Рік тому

    Can the lack of current when increasing microstepping at high speeds also affect speed/feed rate or is only torque as mentioned in this video
    I ran into a weird issue on Marlin Firmware where the speed/feed rate decreases when I increase the microsteps from 16 to 32, 64, or even 128 (Steps/mm also to match)
    The bed dimension ie min and max are still respected, but the speed/feed rate has been decreasing phenomenally, almost at the same factor/ratio that I'm increasing the microstepping by

    • @x_jaydn
      @x_jaydn Рік тому

      Oh, also, I forgot to mention. I'm using TMC2209 drivers

    • @eddietheengineer
      @eddietheengineer  Рік тому

      Thanks for the comment! For Marlin firmware (at least the last time I used it! it's been a while), you need to update the steps per mm every time you change the micro step setting. Effectively--the steps per mm is "micro steps per mm" so if you change microsteps from 16 to 32, your M92 steps per mm will have to double!
      Klipper used to be this way as well, until it switched to "Rotation Distance" as a more general level of abstraction. It handles the micro step change internally so that no matter if you are using full stepping, half stepping, or 128 micro steps, the distance traveled will remain the same.

  • @vinnycordeiro
    @vinnycordeiro Рік тому +2

    Great content as always, but you made a minor mistake:
    16:14 & 16:46 - You said "a hundred mm/s" when you actually intended to say "a thousand mm/s"