Hacker News new | ask | show | jobs
by sgtnoodle 1931 days ago
For sure, and to me it's definitely worth getting the nicer drivers with efficient idling and interpolated 256-microstepping.

Conceptually though, ignoring any power saving idling features or other fancy algorithms, stepper drivers basically want to drive a constant amount of current through the active phase (which is what you're adjusting with the potentiometer). In order to do so, it needs to overcome the voltage drop of the resistance of the windings, and the induced voltage of any changing magnetic fields. The resistive voltage drop is roughly constant, while the induced voltage is proportional to the speed of the motor. Power is equal to current times voltage. The current is constant, and the voltage increases proportionally with velocity, and so power should go up proportionally with velocity. The motor gets hot regardless of what it's doing because of the constant resistive losses, but the total power goes up the faster the motor is moving.

Motors are a lot more complicated than that in reality, and higher end stepper drivers don't actually drive constant current at all times. Semantically, a stepper driver's promise is to move the motor one step "quickly enough" after each pulse on its step input. A clever stepper driver will only apply current when it's actually needed to produce useful torque. Torque is only needed when the motor/load needs to accelerate to get to its target position. Ignoring the rotational aspect, force equals mass times acceleration, and power equals force times velocity. For a maximally clever stepper driver, power is therefore proportional to the product of acceleration and velocity. The motor only gets hot when accelerating regardless of velocity, while the total power goes up when accelerating at higher velocities.