Stepper motor phase resistance

Thread Starter

gkeep

Joined Oct 21, 2017
69
Hi,

I was wondering how a stepper motor can be rated at 24V with a 2.8A maximum current if the phase resistance is 1.1ohm. This would mean 12V on a coil would induce around 23A. Is this because the coils are inductors and they take time to build up current? If so, does that mean the stepper controller attenuates the voltage dynamically dependant on the current? Sorry i don't know much about stepper controllers.

See attached specs.Screenshot_20190611-155003_eBay.jpg

Kind Regards,

Graham.
 

kubeek

Joined Sep 20, 2005
5,772
Yes, basically the stepper driver starts with the 24v to quickly overcome the inductance, then limits the current to the 2.8A.
 

Thread Starter

gkeep

Joined Oct 21, 2017
69
Aah, Thanks for that kubeek. Just what I was affraid of.

The reason I wanted to know, was so I could put in series with each phase, small value power resistors (50 mOhm) to be used as voltage dividers for sensing a motor stall (due to low reactive resistance during a stall) using a microcontroller. Now that i know the motor drivers voltage is dynamic I feel like this problem just got much harder. I'm guessing the voltage transitions pretty quick and spends more time at its nominal(?) voltage for each phase. Do you think probing with a scope will help determine a delay time before the microcontroller probes the voltage divider, or is there simply a much easier way? I wanted to use an arduino nano but i'm guessing i'm going to need something a bit quicker like an ESP8266 if I will be putting delays and analog reads between stepper motor steps.

I'm using a TB6600 stepper motor driver by the way. Seriously appreciate any help I get!

I'd test all of this now, but I've only ordered the parts and I'm still waiting for them to arrive.

Thanks,

Graham.
 

Sensacell

Joined Jun 19, 2012
2,985
Mmmm... no.

The description of the motor is not correct, usually, the nameplate ratings on a stepper motor show a DC value that has very little to do with the voltage the drive runs on.

For example: your motor should read: 2.8 A, 3V - (1.1 ohms/phase) this would be a static DC rating, based on ohms law.
While operating on a modern constant current drive, the applied voltage is usually much higher, but the chopping circuitry controls the current, kind of like a switching power supply.

The idea of monitoring the coil back EMF is implemented in some types of drives (www.trinamic.com) the timing is super critical, usually implemented into the driver itself, you will not have much luck trying to layer this onto an existing driver.
 

kubeek

Joined Sep 20, 2005
5,772
If you mean to determine if the motor is losing steps, then I don´t think it will be very easy to achive. My guess is that you would have to somehow look at the waveform of each step, and from the shape determine whether the rotor has moved or not.
 

Thread Starter

gkeep

Joined Oct 21, 2017
69
That's right, I guess I'll have to wait until it all arrives and probe the coils with my scope. I just thought surely someone might have done something like this already. It seems like that stall guard driver does something similar because they also have no feedback, but they also uses PID or something by the looks of it. Someone once told me that stepper motors draw more current when they stall. Could be wrong.
 

MaxHeadRoom

Joined Jul 18, 2013
25,017
The bottom line is that the current for a stepper motor should be a constant based on the rated plate current.
As already mentioned.
An early method was a simple series resistor arrangement, with the advent of PWM drives etc, the drive has the job of keeping the rated current constant across the rpm range.
Max.
 
You use a high voltage with a stepper motor in order to have a high di/dt. The stepper motor driver circuit utilizes current sensing to shut off the voltage to the coil when the current gets to the maximum setting. A high di/dt provides a higher torque and enables faster stepping. Since the coil is being pulsed even when not stepping, there is no stall condition. If you exceed the holding torque (i.e. not stepping) the rotor will simply break over (rotate to another position) until the torque goes below the holding torque.
 
Here is an example of a bipolar H bridge using current sense. The chopper operates at a higher frequency than the maximum step rate.
upload_2019-6-11_12-16-22.png
Wave forms for the circuit above.
upload_2019-6-11_12-18-22.png
 

mvas

Joined Jun 19, 2017
539
That's right, I guess I'll have to wait until it all arrives and probe the coils with my scope. I just thought surely someone might have done something like this already. It seems like that stall guard driver does something similar because they also have no feedback, but they also uses PID or something by the looks of it. Someone once told me that stepper motors draw more current when they stall. Could be wrong.
Actually, a "Constant Current Micro-Stepper Driver" generates a PWM Chopped Sine Wave as the Phase Current, when micro-stepping.
The term "Constant Current" is very misleading, when the shape of the Phase Current waveform is a PWM Chopped Sine Wave.

Even during one small micro-step period, the current is not very constant.
When you zoom in on one micro-step, you will see the Phase Current waveform is a higher frequency triangle wave,
riding on a specific "Step Current" value.
As a simplification, each micro-step has a different and almost "constant current", as per the PWM controller regulation.
The actual shape of the triangles in each micro-step is affected by the Voltage, the Inductance, and Fast Decay vs Slow Decay vs Mixed Decay.
When the Stepper Motor is turning, each winding will progressively receive more current or less current, for each and every micro-step.
The overall frequency of the Phase Current Sine Wave is proportional to the rpm

Many controllers use Phase Current Sense resistors, to provide the Micro-Stepping function.
Your controller states, "Over-Heat, Over-Current and Short-Circuit protection", but no details.

Stall detection of a stepper motor is not as easy as you might suspect.
Where exactly did you read ... "measuring an increase in Phase Current can detect a stall" ?

Allegro has a so-called "simplified" Stall Detection method, which is still quite complicated.
Note: all of the graphs for Phase Current are High Frequency PWM Micro-Stepped Sine Waves
https://www.allegromicro.com/en/Des...tection-Simplifies-Stepper-Motor-Designs.aspx
 

MisterBill2

Joined Jan 23, 2018
11,624
Originally the stepper motors did use that stated max voltage and they did use big wattage resistors to limit the current to the specified values. That was to achieve higher stepping speeds. And it worked but the efficiency was very low because most of the power was wasted in the resistors. If you don't need rapid stepping a lower voltage can work , and if you use a switch-mode current regulator the efficiency can be better. But the only 100% method I have found for stall detection at all speeds is a quadrature encoder. Then you can know where the motor actually is and compare that with the instruction given and know if the motor stalled. Still cheaper and simpler than a servo motor and amplifier and encoder system, and it can hold a position better as well. Microstepping is an entirely different ball game, and there can be a PWM controller that is not a microstepping controller. But the first question is how fast do you need to run the motor? Maximum speed affects every decision that you will make with a stepper.
 

MaxHeadRoom

Joined Jul 18, 2013
25,017
and it can hold a position better as well. .
Having worked with servo's and CNC systems for over 25yrs, I definitely would refute that, also the servo offers a much smaller position input increment.
If going to the trouble of implementing PID loop and encoder feedback system, then there is very little difference in cost.
There is very few, if any, major CNC manufacturers that use stepper motors.
At least non of the several manufacturers that I have been involved in.
Max.
 

MisterBill2

Joined Jan 23, 2018
11,624
Having worked with servo's and CNC systems for over 25yrs, I definitely would refute that, also the servo offers a much smaller position input increment.
If going to the trouble of implementing PID loop and encoder feedback system, then there is very little difference in cost.
There is very few, if any, major CNC manufacturers that use stepper motors.
At least non of the several manufacturers that I have been involved in.
Max.
Certainly servo systems offer much finer resolution, especially with the much finer encoder. One does not choose a stepper for high speed fine resolution controls, but for those somewhat less demanding applications. For most applications they are not interchangable, there are applications for each kind. And while ramping is useful in stepper systems, if it needs a PID loop then the servo is the better choice. But a lot of applications only need a position control system because they are not in such a hurry.
 

MaxHeadRoom

Joined Jul 18, 2013
25,017
It was the "it can hold a Position better as well" that I took issue with.
Many of the hobby DIY CNC'ers use steppers due to the lower cost and simpler tuning, as can be seen on the CNCzone forum.
Max.
 
Top