PDA

View Full Version : How do Stepper Motor Drivers Overcome the Speed Restrictions Due to a Charging Coil?



mattnedgus
29-05-2019, 07:09 PM
Hi all,

I've been out of the loop for some time and I'm trying to improve my understanding to add some incremental improvements to my current machine for a rebuild.

I'm trying to wrap my head around the limiting factor for stepper motor (and thus direct-coupled ballscrew) speeds and if anyone can help I'd be grateful - I've looked high and low online but I'm struggling with the last 10%!

I found this great link for calculating the maximum RPM different types of motors can run at based on the time it takes the field in the coil to build up and dissipate (http://techref.massmind.org/techref/io/stepper/estimate.htm)

The result is that for my current 3Nm motors (4.2A, 3.2mH, 68V, 200steps/rev, bipolar parallel wired) the max speed is 759RPM which checks out with my current max rapid speed of 700RPM (I had tried 800RPM in the early days but had some issues with stalling).

If I plug in values for the 3Nm NEMA 24 Leadshine Easy Servo [ES] (5A, 2mH, 48V, 200steps/rev, bipolar serial wired) the calculated max speed is 360RPM. - I had wondered whether the ES Motors might be wired internally as bipolar parallel to have such a low inductance - in which case the max speed should be 720RPM. These speed limits get much worse for the 4Nm ES motor, as well as the open loop 3.4Nm and 4.5Nm motors Zapp sells.


Can someone help me to understand how digital stepper motor drivers overcome these speed limitations please? I'd be most grateful! The graphs in the Leadshine literature would have me believe I can spin a motor at 1200RPM with maybe 1Nm of torque (in the case of this 3Nm motor)!

Regards,


Matthew

Voicecoil
29-05-2019, 09:04 PM
Whilst I would always take the specs from such literature with a pinch of salt until I've verified it myself, the reason will likely be because the "Easy Servo" steppers have feedback (from the integrated encoder) around the motor. Normally with a stepper motor you have to allow a fair margin of torque to make sure it doesn't miss steps when presented with a "heavy" load. By monitoring the exact rotation with the encoder, the driver can detect missed steps and keep on pulsing the coils until the motor gets to where it ought to be.

m_c
30-05-2019, 12:01 AM
As Voicecoil says, I'd take those figures with a pinch of salt.

Using older non-digital drives (actually pretty much all stepper drivers are digital, it's just digital refers to the fact that 'digital' drives have a processor), the drive simply brute forces the required current/voltage at the required intervals into the motor according to the drive settings.

The next step up in technology is morphing. Once a motor reaches a certain speed, microstepping the motor has no benefit, so the driver will gradually reduce it's stepping output until it's only outputting full steps. Most drives with morphing will allow you to adjust the point at which the morphing occurs, so the drive can be tuned to the motor and helps avoid resonance issues that will often cause stalling at certain speeds.

Then you have the latest digital drives, which combine the above, however they also monitor the current/voltage changes in the motor, and will adapt on the fly to avoid resonance and stalling issues, which means they can typically run the same motors faster.


Due to the nature of stepper motors, they resonate, and the key to running them fast is getting through the resonation zones, which is where digital drives excel.


Actually I've just had a thought, aren't the Easy Servos 3 phase?
Which means the bipolar (aka 2 phase) formulas don't apply, as 3 phase servos are better/smoother performing, however they are less popular as they're more expensive, and if you're looking for better performance than bipolar steppers, servos generally make more sense.

mattnedgus
30-05-2019, 12:23 AM
Hi Voicecoil,

Yeah I wondered that but seems to be similar with standard/open-loop steppers from what I can tell. As an example there's this motor that Zapp sells: sy85sth65-5904b
(https://www.zappautomation.co.uk/sy85sth65-5904b.html) (5.9A, 1.7mH, 200steps/rev, bipolar)

The graph on the spec sheet suggests the motor is good up to 8000 pulses per second at half step which is 1200RPM on the shaft at 110Vac. (I assumed the equivalent DC supply voltage to be 77.78V - the RMS value of 110Vac)

But the result of calculating the maximum RPM via the link in my first post (based on the equation T=LI/V (multiplied by 4 for Bipolar Series)) gives a theoretical maximum spindle speed of 582RPM at 77.78V - less than half of the RPM the graph suggests is possible with the motor.

-------

I guess the crux of my question is this: how can stepper motors be driven faster than 'should' be possible based on the speed limit imposed by the time it takes for an Electromagnetic field to build and then dissipate in the coil?

Perhaps the coil isn't fully charged or discharged at higher speeds, operating somewhere between?

mattnedgus
30-05-2019, 12:38 AM
m_c,

Looking at the datasheet, the smallest (0.9 and 2.0Nm) motors are 3 phase but the 3, 4 and 8Nm are 2 phase.

It looks like I was drafting my reply when you replied. I think where my misunderstanding lies and what I'm trying to get at is: if it takes a finite time to 'fill' and then 'empty' the coil and if this is the minimum time for one step and gives us a speed limit, how do the stepper drivers get around it to drive the motors faster?

Is it (or related to) the morphing you mention: perhaps driving the stepper more like an AC motor than a stepper motor at higher speeds with a sinusoidal wave and not quite filling/emptying the coil?

I'm struggling with it because I'd like a performance increase over 700RPM motor-speed rapids but don't want to move away from 23's if the drop in RPM is as severe as the calculations above would suggest (and so maybe I have to accept this as the limit of direct-coupled motors and ballscrews).

Kitwn
30-05-2019, 01:38 AM
Gekodrive have a useful intro to how stepper motors work with some details on speed v torque and the causes of resonance. The link below is to part 1 of 9. There's a drop-down menu on the right of the page to access the rest of the series.
https://www.geckodrive.com/support/step-motor-basics/motor-theory.html

Kit

mattnedgus
31-05-2019, 08:19 PM
Gekodrive have a useful intro to how stepper motors work with some details on speed v torque and the causes of resonance. The link below is to part 1 of 9. There's a drop-down menu on the right of the page to access the rest of the series.
https://www.geckodrive.com/support/step-motor-basics/motor-theory.html

Kit

I had another read through that thanks Kit - it's a good resource but I wanted something more concrete.

--------

I think this is my answer, in the simplest terms:

UPDATE 05 June 2019: To anyone that reads this in the future I think I arrived at some wrong conclusions. I've' added a new post explaining why (Post #18). I'm very much an amateur!

All About Circuits: Maximum Stepper Motor Speed (https://www.allaboutcircuits.com/tools/stepper-motor-calculator/)

The problem I was having was with the result of the last Max RPM calculation t=4LI/V here:

MassMinds: Estimating Stepper Motor Size (http://www.massmind.org/techref/idea/websites.htm?url=techref.&ref=)

From the calculations I've now done comparing a few motors (from Zapp) in this table**:

25816

I get a max theoretical speed for my present parallel-configured 8-wire motors of 759RPM, which agrees with the problems I've had trying to run them at 800RPM. A serial-configured version of this motor (or a standard 4-wire bipolar stepper) would run at a max 379RPM according to the same t = 2LI/V equation when plugging in the values on the datasheet. This makes sense because the specified current and inductance of this serial configuration is 0.5x and 4x respectively. These values increase the top line of the equation (and thus the value of t) by a factor of 2. And since t is on the bottom in the equation: MaxRPM = 60/(200*t) if t goes up by a factor of 2, the RPM comes down by a factor of 2.

I think the author of the article added this '2 factor' into the equations top-line artificially so that when you enter the real ("datasheet-specified") values for an 8-wire stepper motor in a serial configuration, you end up with an RPM half of what it should be.

This is what confused me so much - I struggled to believe that the 3.4Nm, 4.5Nm and 8.7Nm NEMA 34 motors could only reach maximum RPM's of 359, 265 and 195 (at voltages specified in the table). This seemed too much of a drop in RPM from the 759RPM the 3Nm NEMA 23 parallel-wired motors should reach.

--------

Do the values calculated seem like reasonable figures to be expected from stepper motors or could I expect higher from modern stepper drivers?

Maybe because they're using chopping and PWM as opposed to AC waveforms for example, or reducing the coil current at the higher speeds shown in datasheet graphs to achieve them perhaps?

--------

Now I know everyone says that 'bigger isn't always better' in stepper motors and I feel this goes some way to explaining (at least in simple terms) why.

I hope this information might helpful to someone else in the future.

I welcome any correction or any addition to my understanding!

Matthew

--------

(**Notes on Supply Voltages in the table: I used 68V for the NEMA 23 because that's what I'm using even though it's 20% above maximum recommended. The 77.78V NEMA 34 values are RMS values of the specified 110Vac shown in their datasheets. I figured this would be a reasonable DC value to use. I chose 48V for the 3.4Nm because 77.78V seemed way too high.)

Voicecoil
01-06-2019, 10:08 AM
I
(**Notes on Supply Voltages in the table: I used 68V for the NEMA 23 because that's what I'm using even though it's 20% above maximum recommended. The 77.78V NEMA 34 values are RMS values of the specified 110Vac shown in their datasheets. I figured this would be a reasonable DC value to use. I chose 48V for the 3.4Nm because 77.78V seemed way too high.)

Are you sure the 110V AC figure isn't a RMS value to start with? It's the normal was to quote an AC voltage unless you specifically say "110V AC pk" - anyway it does say also 5.9A constant current, so the voltage is kind of irrelevant.

mattnedgus
01-06-2019, 11:20 AM
Are you sure the 110V AC figure isn't a RMS value to start with? It's the normal was to quote an AC voltgae unless you specifically say "110V AC pk" - anyway it does say also 5.9A constant current, so the voltage is kind of irrelevant.

To be honest I wasn't entirely sure, but it felt right.

For the three NEMA 34 motors respectively I used the maximum voltages (32*sqrt(L)) of 42, 64 and 82Vdc. The specs from the same manufacturer declared Vdc for the NEMA 23 and Vac for the NEMA 34 speed-torque graphs. My logic was that the drivers for these motors can be attached directly to a 110Vac supply like in the US and thus would have a numerically lower DC equivalent.

If I use 110 as the value for the supply voltage in the equations I also get 1645, 750 and 552RPM respectively for the max speeds for these same motors. It takes the power for each upto 649, 605 and 506W respectively. These values just felt way too high.

The supply voltage is one of the factors that determines the time it takes to reach the 5.9A maximum current. A higher voltage fills the coil to 5.9A faster. For example on my motors I get a current rise-time of 0.198ms and a max 759RPM on a 68V supply but if I were to swap this to a 36V supply the rise time goes up to 0.373ms and I get a max theoretical RPM of 402.

I'd really like to know what effect chopping stepper drivers have on the maximum speed of a motor and how half/microstepping the motor might influence these values though!

Robin Hewitt
01-06-2019, 12:02 PM
History is against you. The problem is that some bod in America decided that all stepper motors should be 2 phase, 200 full steps/rev regardless of the frame diameter, and that holding torque was actually something worth printing on the spec. sheet. The Chinese shrugged collectively and said, "Whatever" and set about making them.

Unfortunately as motors get bigger the inverse square law is not on their side so they lose power. Holding torque can be enormous but it is the pull in torque that moves you to the next next step. Pointing this out to people who have already spent money on enormous motors and unsuitable toroidal transformers, is not going to win you any friends on places like this.

You may think you can overcome this by putting in loads of microsteps but then things become springy and your tolerances quickly become slack.

You obviously appreciate the problem or you would not have asked. If you have not already blown your budget, go to the Oriental Motor Company web page and look up some speed/torque graphs for their 5 phase motors.

mattnedgus
01-06-2019, 03:34 PM
History is against you. The problem is that some bod in America decided that all stepper motors should be 2 phase, 200 full steps/rev regardless of the frame diameter, and that holding torque was actually something worth printing on the spec. sheet. The Chinese shrugged collectively and said, "Whatever" and set about making them.

Unfortunately as motors get bigger the inverse square law is not on their side so they lose power. Holding torque can be enormous but it is the pull in torque that moves you to the next next step. Pointing this out to people who have already spent money on enormous motors and unsuitable toroidal transformers, is not going to win you any friends on places like this.

You may think you can overcome this by putting in loads of microsteps but then things become springy and your tolerances quickly become slack.

You obviously appreciate the problem or you would not have asked. If you have not already blown your budget, go to the Oriental Motor Company web page and look up some speed/torque graphs for their 5 phase motors.

Thanks Robin, I'll take a look them - my options are still open.

Ah, it wasn't my intention to offend anyone - I couldn't find the information in a way that I could understand and hoped that maybe by sharing what I'd found it might help someone else later down the line.

To be honest I think I fell lucky on my current machine. It was my 2nd build (after trying V rollers on L alu-extrusion with ACME and T6-something drivers - it was hopeless!) and I had some excellent advice from Gary at Zapp regarding the motor and driver combination. I'd just hoped to increase my performance on this new build and didn't want to risk the outlay before I had a slightly better understanding, especially when I've read more than once about NEMA34's not necesarily providing the hoped increase.

Robin Hewitt
01-06-2019, 03:50 PM
Ah, it wasn't my intention to offend anyone

I am sure you will not offend anyone. Sadly I am an incorrigible know it all and my foot is permanently in it :encouragement:

m_c
01-06-2019, 07:22 PM
You are correct in that nema34 motors usually don't give you the required performance increase above nema24 motors.

In all honesty, given the speed you're looking for, I'd look at servos.

mattnedgus
02-06-2019, 11:38 AM
You are correct in that nema34 motors usually don't give you the required performance increase above nema24 motors.

In all honesty, given the speed you're looking for, I'd look at servos.

I'd love to but aren't they about £500 (motor+driver) per axis?

routercnc
02-06-2019, 02:27 PM
Hi Matthew

Just to clarify Robin’s earlier comment. You are not offending anyone here. Far from it, you are asking interesting questions. Robin was referring to new posts from builders who come on this site having bought some big motors and are sometimes offended when told they have bought the wrong thing. It has happened a lot.

m_c
03-06-2019, 01:09 AM
I'd love to but aren't they about £500 (motor+driver) per axis?

Aliexpress.
I've not personally used them (I opted for Kinco from Zapp), however at least a couple people on here have used the cheap Chinese servos without any problems.

Drive/Motor set can be had for under $300.
The main drawback is the drives are only powered via the 240VAC, so if they lose power, you lose position. Whereas the logic in the Kinco drives is powered via 24VDC, so you can cut the 240VAC (i.e. an estop) and all the encoder circuitry remains active.

mattnedgus
03-06-2019, 11:18 PM
I am sure you will not offend anyone. Sadly I am an incorrigible know it all and my foot is permanently in it :encouragement:


Hi Matthew

Just to clarify Robin’s earlier comment. You are not offending anyone here. Far from it, you are asking interesting questions. Robin was referring to new posts from builders who come on this site having bought some big motors and are sometimes offended when told they have bought the wrong thing. It has happened a lot.


Thank you, I understand, I think I must have misunderstood originally - I definitely didn't want to be putting anyones nose out of joint, especially after having had such good advice on here in the past.



Aliexpress.
I've not personally used them (I opted for Kinco from Zapp), however at least a couple people on here have used the cheap Chinese servos without any problems.

Drive/Motor set can be had for under $300.
The main drawback is the drives are only powered via the 240VAC, so if they lose power, you lose position. Whereas the logic in the Kinco drives is powered via 24VDC, so you can cut the 240VAC (i.e. an estop) and all the encoder circuitry remains active.

Thank you, it's definitely worth thinking about - I started learning a little more about servo motors after I saw your reply. All this time I was under the impression they all had a built in gearbox like those servos you get in model-aircraft and RC-cars, but that doesn't seem to be the case!

mattnedgus
05-06-2019, 03:43 PM
Hey Guys,

My apologies, I think I've made some real errors of judgement above! I'm still very much an amateur but here's what I think is happening for anyone that reads this and gets as confused as I did, in the future:

A coil in one phase will have current go from all in the +ve direction, through 0, to all in the -ve direction, and then back through 0 to +ve again in one revolution of the motor. In the case of a 4.2A motor it has a total of 16.8A to move (+4.2A --> -4.2A --> +4.2A) - so massminds worse-case calculation I linked to in an earlier post, I think, is correct after all (although in contradiction to the calculation on All About Circuits website - how?).

For my motor (I=4.2A, L=3.2mH, V=68V) I thus get a max speed of 380RPM. The first time I calculated this it didn't feel right so I did more reading and convinced myself that my gut was right (that 759RPM should be my max). Reading the info on the All About Circuits website seemed to persuade me of this - but it didn't expain why the graphs on some spec sheets for motors were shown with usable torque at even higher speeds.

BUT, it just dawned on me that this (380RPM) is the CORNER SPEED, NOT the MAX SPEED!! This is the speed under-which the coil should be able to fully saturate (build the maximum field strength) in both directions and thus maintain full torque (or very near to) upto this speed. This is what Geckodrives graphs show with the flat portion: https://www.geckodrive.com/support/step-motor-basics.html

At speeds faster than 380RPM there is fall-off in torque because there is no longer time to fully saturate the coil with the maximum current. Torque drops off after this speed because its proportional to current and reaches its max speed when insufficient current can be pushed into the motor to make a step.

hanermo2
08-06-2019, 01:50 AM
Tech:
Yes, no.

Steppers are not much different from servos.
The servos step up the "next" step magnetically before the rotor is there.
They anticipate the position of the rotor and tightly couple it to the angle of the rotor via the encoder.

And using the skewed rotors (afaik) +magnets they can keep this up indefinitely.

And can use very heavy currents temporarily, since the duration is so short.
Servos used to run 12 kHz, 0.1 ms each.

But servos have better magic steel and magic wire.
Very complex thing with magnetic flux rise time, decay time, heat losses, efficiency, mag. flux strength, inductance, reluctance, etc.
The servos have probably 1% difference in materials but might have 100x difference in terms of magnetic inductance/reluctance effects at very high speeds == 500 kHz - 4 Mhz of modern ac servos.