PSA: Your Motor Curves Are Wrong (A Whitepaper About Current Limits)

I spent the last few days working on a short whitepaper that shows the effect of stator and supply current limits on motor performance. Both limits drastically change the shape of motor curves from the “theoretical” parabolic power curves that most people are familiar with and are commonly published, so I thought it would be interesting to share. You can read the full whitepaper here:

PSA Your Motor Curves Are Wrong.pdf (917.4 KB)

Some images from the calculator and whitepaper are shown below. The idea is that parabolic “theoretical” output powers are basically meaningless - current limits seriously affect the output dynamics of motors.

Hopefully, this will help people select their gear ratios and current limits better, and think twice about upgrading to the latest and greatest. I also hope that this pushes people to more strongly consider thermal limits of the motors that they’re using, especially when it comes to the new smaller motors some vendors have released.

This has very little to do with Redux, as we currently don’t sell any motors. However, I’ve worked on variations of this paper for some years, and figured it was a good time to get the info out.

117 Likes

Thank you for posting this! This is a wonderful explanation of a lot of the concepts behind motor curves like stator current and supply current that I see a lot of people often glossing over, just going “oooh higher torque = must be better”. I have been working on some math to make battery simulations more stable and this is a great sanity check for a lot of my motor calculations.

2 Likes

Lots of good insight here. One think I’m a bit confused about, when looking at the motor curves with constant torque, voltage, and stator current over that first region, what is determining the RPM? Ie if I applied 12V to a motor experiencing 1.5Nm of torque, how fast would it spin?

2 Likes

That’s a great question. The crux of this comes down to the motor controller. Given a controller with no current limits, commanding 100% output with a 12V bus will apply 12V across the phases of the motor. You’ll end up on the “theoretical” motor curve. For something like a NEO 1.1, at 1.5N*m of torque, the motor will draw 77A (1.5/0.01958) and spin at 3,740 RPM. The motor would provide 589W of output power and lose around 341W in the stator as a result of free speed losses and resistive losses.

That’s the traditional math that motors.vex.com will help you with. However, current limits are going to throw this off completely - which is what the paper is about!

First of all, your stator current times the kT of the motor is the maximum torque of the motor (Region 1 in the Limited curve). So if your stator current limit is lower than 77A, you’re simply not going to be able to provide that 1.5N*m in the first place. Stator resistive losses are equal to I^2*R, where I is your stator current and R is your phase resistance (stall current/12V, a constant for each motor). We can conclude that your required torque will determine your required current and how much power the motor will dissipate outputting that torque.

Assuming you select a stator current limit of 80A so that you can actually even sustain that kind of torque, your supply current limit will kick in next. 589W of output power and 341W of losses is 77A at 12V! That means that if you have a supply limit of 40A, the motor will need to throttle the speed significantly and reduce its output power to stay within its 480W limit (40A*12V).

Plugging in an 80A stator limit and 40A supply limit to my calculator, we get the following motor curve for a NEO 1.1:

The motor would thus only spin at 930 RPM when supplying an output torque of 1.5N*m, with an efficiency of ~30%. If we gear down the motor 2:1 with the same current limits in place, we actually get a lot more speed (and thus power output):

2280 RPM! Given that power = speed * torque, this means that a gear ratio of 2:1 in your example would give us 145% more output power, and efficiency jumps to ~80%! And because most losses are I^2*R losses, we also actually lose less power to heat in the process, as the gear ratio lets us get more torque for less stator current.

TL;DR: plug in the current limits and gear ratio into the calculator, select your motor, and follow the torque curve down until you hit your desired torque. The speed at that point is the speed you’ll get with the parameters. I have added this information to the google doc.

29 Likes

Thanks for the detailed response, I think I need to explain a bit more of my question. I’m only asking about the part of the curve where the torque is constant across a range of speed values.

For example in this chart there’s a point that would be 0 rpm, 1.75Nm, ~80A stator, 12V, but also a point that’s ~2700 rpm, 1.75Nm, ~80A stator, 12V.

So what behavior do I expect from the motor if it experiences 1.75Nm of torque and 12V is applied? Does it “stall out” to 0 rpm? Or does it go to the max rpm at that torque value (2700)?

1 Like

This is awesome! I’ve been trying to wrap my head around how stator limits affect the motor curves since 2020 but was way out of my depth. This puts numbers and graphs to the effect I expected was happening but couldn’t quantify.

13 Likes

Interesting question. If you applied exactly 1.75N*m of torque, and the current limit was set to a level that produces exactly 1.75N*m, then the motor would hold whatever speed it is at - the acceleration would be 0. Increasing the load torque would backdrive the motor, and increasing the current limit would allow the load to accelerate to another point on the motor curve in Region 2 or 3.

This would be like an elevator that is perfectly counterbalanced, as the constant torque will product a constant lift to offset gravity. Pushing on the elevator with your finger would let it float up or down, subject to the allowances of friction.

1 Like

When calculating the motor’s back-emf constant, did you correct for the friction on the shaft, as the backemf constant isn’t equal to the applied voltage divided by the RPM, because you are losing some voltage as current required to overcome the friction. Applying this correction lowers the back-emf constant by about .5%, which pushes the motor closer to the theoretical kb = kT.

2 Likes

This is why BEMF, generally measured by back driving, it the preferred method for validating kE by test.

3 Likes

Y’all are still calculating with motor curves? :thinking:

1 Like

No I did not, and that’s a good point. I assume this basically translates into free current losses?

I’ll have to play with this to see if it makes a difference. It might help the Vortex slightly more with its poor kV*kT product.

Hey @AdamHeard , it’s been a minute! Are you suggesting using a spreadsheet calculator or …?

@asid61, or anyone else for that matter, where can we find SAFE stator current limits to use to prevent letting the stink out of our motors? Then, once that is set and the torque is limited and almost constant, how do we calculate proper gear ratios for our mechanisms?

3 Likes

I just don’t bother modeling dynamic response anymore since motors are so powerful and efficient now.

I’ll size either off a sanity check on steady state stall voltage or a ballpark desired system speed.

14 Likes

You can find safe current limits by asking manufacturers for stall test data. The Falcon 500 is the most recent motor for which manufacturers have published stall data. https://motors.vex.com/vexpro-motors/falcon
If you don’t ask, it won’t change.

Once you’ve done that, select a gear ratio that puts you on the right half of Region 2, typically around 60-80% of free speed, to maximize your power output and efficiency. For a flywheel that normally runs at 3k rpm, that means you’d select a gear ratio of around 1.4:1 off of a Kraken.

For elevators and arms, I usually pick a gear ratio that just won’t smoke the motor. So if I set a current limit of 80A stator on a Kraken, I’ll hear it such that I use 20A of stator current to hold the mechanism in place (basically kG). The rest of my current can go to powering the mechanism. Realistically, you just need to use a calculator. I can add another tab for elevators to the spreadsheet (similar to the drivetrain tab).

If you have a lot of experience to draw upon, this is fine. But to anyone learning how to design a mechanism it’s just not a viable strategy. Learning the fundamentals is what builds intuition in the first place.

10 Likes

I’d agree with that, but would add the consequences of gearing wrong aren’t as punitive as they used to be. You can definitely get away without learning the principles here if you want to focus on other things.

5 Likes

Yea, the free current causes a voltage drop that doesn’t create back-emf, which means the motor has less than 12V of back-emf

It helps a bit, but even after applying this correction, the vortex back-emf constant is .01674 V-rad/s while the torque constant is still only .01546 n-m/A, the winding-magnet interactions in the vortex can just be bad, and this isn’t even that bad of a case of kB not equaling kT. I’ve worked with non-FRC BLDC motors which have a much larger relative difference between kB and kT, so this isn’t unheard of.

Most motor manufacturers provide a specified “rated torque” in which they give you the maximum safe continuous torque. Unfortunate, FRC motor manufacturers are not like most motor manufacturers and don’t provide full specs.

There’s more reasons to model a motor than just to pick the correct gear ratio, they are quite useful for advanced controls design when you wanna make the most out of a motor.

4 Likes

I wouldn’t tell a student to roll the dice on selecting gear ratios, but to each their own. The fundamentals of reading a motor curve are simple, and as a mentor, I don’t think spending the 30 minutes teaching a kid to use a design calculator is a bad use of my time.

Calculators like reca.lc are great even if the motor curves they use are slightly flawed from the use of a single current limit. It’ll get students off the ground in selecting ratios before they’re prepared enough to start thinking about what different supply and stator limits do.

Functionally, the data in this paper is only actionable is in vague ways anyway - it’s not something I’d usually apply directly to a design. Existing design calculators with limits like reca.lc will do just fine.

So much this! The limited motor curves in the paper look a lot closer to these curves than to the “theoretical” parabolic curves. It’s a fundamental thing about motor data that isn’t even hard to prepare.

8 Likes

Uhhh this is the strategy the majority of FRC robots have been built with over the years.


We have so few motors in FRC (yes it is growing) compared to selecting a very specific sku from a vendor in industry. Gut feel is easier to develop when you only have a few options.

Dead reckoning is a very valuable learned skill. So is knowing when it is time to break out the math.

5 Likes

Using a design calculator is so easy I would find it strange not to use one. Do you just pick gears that look pretty and hope it works?

I’ve seen plenty of NEO550 mechanisms smoke out from overload. With the release of the Minion and X44, we may be entering that era again as people fail to understand the ramifications of using a motor with a tiny stator. Education helps stop this.

If someone doesn’t understand what a current limit does to a motor curve, they’re not only going to burn out their own motors, but also tell others that they don’t need to learn anything either. For a program targeted towards little STEM kids, I think that mindset is bad. We shouldn’t be encouraging poor engineering practices.

16 Likes

From my own personal experience this statement is very true. There are many motor manufacturers, and with varying degrees of motor data available. FIRST limiting the motor choices makes building the FRC robots quite a bit simpler.

@asid61 Thank you for putting together the white paper! It’s impressive and very helpful!

1 Like