# Can a constant-current stepper driver be coerced to act like a constant-voltage driver?

I have a strict requirement1 to drive a stepper motor with an L/R (Constant Voltage) driver but the problem is, nobody seems to commercially make these anymore due to their inefficiencies compared to the chopper-type drivers.

Reading up on how the chopper drivers work, it seems like you give it a current limit and the board uses feedback via a sense resistor to "chop" the voltage on/off to maintain a constant current at the specified limit, independent of motor speed.

This current limiting mechanism got me thinking: If I were to make the current limit high enough such that this limit could never be met, even at max output voltage (supply rail minus some small drop), would I have effectively turned the chopper driver into an L/R constant voltage driver?

For clarity, here are the specs for the stepper motor I need to drive:

2-phase, Bi-polar
1,600 steps/revolution
Winding Inductance: 80mH - 150mH
Winding Resistance: 160 - 220 ohm
Operating Voltage: 15V - 35V


By the way, if somebody knows of a true L/R constant-voltage driver that meets the above specs, that would be ideal!

1The reason it's a strict requirement is that the flight hardware uses an L/R drive and we must Test Like You Fly, a NASA guideline which states that you should test equipment on the ground in the same form, fit and function as flight hardware.

• Is the problem you are facing to do with modern drivers being unable to control a stepper correctly in your application; maybe it's noise? Maybe it's motors that don't like PWM? Jul 23, 2013 at 7:08
• Good question. The reason I can't use a chopper driver, even though I'm sure it will work quite well, is that I have a strict requirement to "test like you fly" Jul 23, 2013 at 8:46
• "test like you fly" - I don't understand this Jul 23, 2013 at 8:52
• Why can't you use a chopper driver? What requirements necessitate a constant-voltage driver? Saying you have to "test like you fly", which as near as I can tell is a confusing way of saying you need to test the system in an environment that is as close as possible to your final application, tells me nothing. The only coherent reason I can think of is you're trying to emulate a different controller that is constant-voltage. In that case, why can't you get another of that controller? Jul 23, 2013 at 9:00
• You didn't answer my question. It does indeed sound like you're trying to emulate an existing controller. Is this correct? You should add this information to your question, otherwise it sounds like you have a requirement without a reason, and people (like myself) will start looking there first. Jul 23, 2013 at 9:06

Unless there is some nuance of the question I am missing:

A constant voltage (L/R type) stepper motor driver for a stepper motor is a pair of H-bridges, with no current limiting / chopping. It is not that these devices are no longer made, they are typically not sold as "stepper motor drivers".

For instance, the classic L298 (L298N, L298D) dual H-bridge IC will drive a bipolar stepper in constant voltage mode, thus:

simulate this circuit – Schematic created using CircuitLab

Eliminate the sense resistors, and there is no current limiting left - or preferably leave them there, and size them purely for failure conditions i.e. short circuit protection.

At 160 Ohms minimum coil resistance and a 35 Volt motor supply, the resultant maximum 219 mA per channel is easily handled by the L298's 2 Ampere per channel DC current rating.

The L298 in its various variants is still manufactured: Go with the L298D to take advantage of the integrated back-EMF protection diodes, given the inductive load.

While there are also MOSFET based H-bridge ICs available, offering greater efficiency, this may be irrelevant in a design where the efficiency loss in the series R added to each coil is likely to be the biggest heat contributor anyway.

About using a chopper driver as an L/R driver: The qualified answer is yes, as long as basic full-step driving is being attempted. It is only with micro-stepping that fine current control becomes a necessity.

Some chopper drivers may not like not receiving current feedback, and may flag a fault, but the typical full-step driver will not care, it will simply pass all current up to the resistance-limited value of the stepper (160 to 219 mA per channel, at given coil specifications), and not initiate chopping.

• Would you please provide a bit of follow up on these questions 1) What exactly is micro-stepping? I'm imagining sub-step movements but I don't see how since a step is pre-defined by the rotor & stator teeth 2) How is the current limit in a chopper generally set? Is it programmable or is it statically defined by the components it uses? 3) If I were to go the L298 route I would need it to be a COTS part. I've found a few DIY/hobby level boards but they don't seem very robust, especially at power levels 35V would cause. Can you recommend a commercially robust one? Thank you Jul 23, 2013 at 18:11
• @SiegeX About microstepping: That's a separate big question. Ask, and I or others will answer. Chopper limit is typically set using a resistor between a limit-setting pin and either ground or supply rail, or, similar to the L298, with a sense resistor from a sense pin to ground, such that at the desired current, the sense pin will hit a pre-defined threshold voltage. Almost always component-dependent. Regarding specific parts, the ST part is COTS automotive-rated if that helps. Or, contact manufacturers TI or ST. Jul 23, 2013 at 18:22