Brushless motor- Making rpm and torque seperately adjustable

Thread Starter


Joined Sep 10, 2023
Hello guys! I wonder if you guys can help me to at least understand what I'm asking better so I can ask in a better way lol.

Is it possible to control a small brushless motor and have control of rpms but also have a way to adjust torque sperately. For instance have low rpm with greater torque or vice versa?


Joined Jan 27, 2019
Welcome to AAC.

Part of understanding the answer to your question is easy, because of many factors involved, the overall situation is complicated. Whether you can do what you want depends on what you mean. If you are interested in reducing the torque anywhere on the curve, that can be done by reducing the current at that point. Most methods of doing this are going to be hot, noisy, or both—but there are methods that can overcome this (see below).

If you need a certain maximum torque at the high RPM end of the motor's range, you will have to specify the motor so it has that ability then manage the low RPM range to reduce torque if that's the problem. I've provided some information below, but to really answer you I need to know what the goal of controlling the torque is.

Could you describe the application you are working on? What is the problem you are trying to solve by controlling the torque? if you can do that, I can probably be more helpful instead of guessing.

First, with an electric motor torque (τ) is inversely proportional to rotational frequency (ω). This is because the power (P) is of an electric motor is a fixed value. This means the motor has to trade off the available power between twisting force and rotational speed.

\[ \mathsf{τ={ω\over P}}\\ where \space \mathsf{\textbfτ }\space is \space \mathsf{\textbf torque}\space in \space \mathsf{\textbf N \cdotp \kern-0.14em m},\\ \mathsf{\textbfω}\space is \space \mathsf{\textbf{angular}} \space \mathsf{\textbf{frequency¹}}\space in \space \mathsf{\textbf rad \space s^{-1}},\\ and \space \mathsf{\textbf P} \space is \space \mathsf{\textbf{power }} in \space \mathsf{\textbf{Watts}} \]​
1. There is no SI unit called "RPM", but angular frequency is causally measured in RPM, these are the same thing.

This relationship can't be changed without adding something like a gearbox, a belt on pulleys, or a chain on cogs. Even then, it's not arbitrary, it will only provide the one peak power point which occurs where the rated speed and rated torque of the motor intersect.

It is important to keep in mind that if we didn't care about the motor burning up, things would be a lot simpler. Instantaneous measurements where the evolution of the system over time don't concern themselves with the ratings of the motor.

Ratings are not maximal physical limits, but they are maximums when service life of the motor is a constraint. So the motor's rated power—the P in the equation—sets the limit for torque at higher speeds. If this limit is exceeded in driving the motor, the heat will eventually destroy the motor in various ways.

The most immediate way would be to melt the windings, which is pretty obvious but there are effects over time, and so motors have different torque ratings with time limits. The shorter the time the higher power is applied, the more torque the motor can generate without immediate damage. Such high power operation may reduce the service life but that's a long term effect.

Another problem with overdriving a motor is the effect of heat on the permanent magnets. As magnets heat up to their curie temperature they weaken. Weaker magnets provide less torque, and the effect may be partially or completely permanent.

All of this said, if you want to maximize available torque within these limits, there are various control schemes that can improve the performance at any rotational frequency and could be used to reduce torque from this maximum at a given ω.

One very sophisticated and effective method is FOC (Field Oriented Control) which uses a very sophisticated mathematical method to optimally power the windings of a motor. While it is possible to implement this yourself, it almost certainly makes more sense to use a pre-existing controller or chipset due to the complexities.

Another novel method is to combine the firefly algorithm with a traditional PID (Proportional–Integral–Derivative) controller. The firefly algorithm is a nature-inspired meta-heuristic based on the behavior of fireflies. I don't know if this method is available commercially, but there is research on it.


Joined Jun 17, 2014
Hello guys! I wonder if you guys can help me to at least understand what I'm asking better so I can ask in a better way lol.

Is it possible to control a small brushless motor and have control of rpms but also have a way to adjust torque sperately. For instance have low rpm with greater torque or vice versa?

That's pretty much what you do with a speed controller. The speed is held somewhat constant which means the torque is whatever is needed to keep the speed more or less constant, but the speed is also adjusted so that it can slow down a little and let the user know how much the tool is working. So by adjusting the speed and the rate of change of the speed with torque (angular acceleration or rather deceleration), you are adjusting both really.
It's interesting that if you just make the speed adjusted to a constant level, then the motor could stall suddenly without warning.
As mentioned in the post just before mine, you can only get so much out of the motor unless you overdrive it and then only for short periods and hope the brushes do not get damaged.


Joined Feb 24, 2006
The answer to the question in the title depends on what the word "separately" means to you. If it means: "can I control either torque or rotational velocity, the answer is yes". Since there is a fixed relationship between torque, power and rotational velocity, if you change either torque or rational velocity the other quantity will change to maintain constant power. This is the same rule as Ohm's law which forbids controlling the voltage and the current from a power supply independently.

If it means: "can I set the torque and the rotational velocity to arbitrary values independently, then the answer is no".

Thread Starter


Joined Sep 10, 2023
A CVT coupled to a controller might be a solution.
You confirmed some things I intuitively knew, and you gave me some pretty simple relationships I can use to actually know what I need. Right on man, thank you! You also brought out some questions I hadn't known to have.

I'm just starting to rethink an idea I had several years ago. I would like to use a brushless motor on a tattoo machine. My problem with rotorary tattooing machines that isn't a problem with an old school coil machine is how soft the needles hit at lower voltages. You need them to go slower sometimes but at the same time they still need to hit the skin with enough force to push however many needles deep enough. I have for years wondered if a brushless motor could overcome this thing I dislike.

The FOC and firefly algorithm info are much appreciated. I really look forward to looking that up. Since I am a machinist and have ready access to the means to build one, I'd like to figure out if it'll be possible to have the kind of control I fantasize about. I'm always amazed at drastically the character of a brushless motor can change under the influence of novel, clever control. I think maybe there could be hitherto unreachable optimum profiles for different needle configurations. I say optimum but what is optimum in this scope will vary person to person and that's quite alright since it is infinitely adjustable. I have long been fascinated with pid controllers. Maybe time to learn about them for real now.