- 28th October 2004, 08:36 #1

- Join Date
- Oct 2001
- Posts
- 618
- Helped
- 8 / 8
- Points
- 5,832
- Level
- 18

## Speed to Torque

I wonder something. For example; in a closed loop dc motor speed control, we obtain the torque reference by applying a PI or PID regulation to the speed profile. Then we obtain the torque producing reference current by the relation between the torque and the armature current. Anyway, what is the relationship between the torque and speed. I couldn't understand the mechanism of obtaining torque from speed by this way?

Can anyone explain please?

- 28th October 2004, 21:35 #2

- Join Date
- Oct 2004
- Location
- Brasil
- Posts
- 13
- Helped
- 2 / 2
- Points
- 1,555
- Level
- 9

## Speed to Torque

I think this is a very theorical question (or I didn't understand it), so I don't have the answer. But if we talk about it, you can have some idea.

How I see the problem: if you want to speed up a motor, you need to increase the torque produced. Then there is a relation between the torque and the speed!

And it's:

Te - TL = J*dw/dt + B*w +...

What do you think about?

- 28th October 2004, 21:35

- 29th October 2004, 08:01 #3

- Join Date
- Oct 2001
- Posts
- 618
- Helped
- 8 / 8
- Points
- 5,832
- Level
- 18

## Re: Speed to Torque

Originally Posted by**afonso**

- 29th October 2004, 08:01

- 29th October 2004, 10:15 #4

- Join Date
- Sep 2004
- Posts
- 662
- Helped
- 73 / 73
- Points
- 21,612
- Level
- 35

## Speed to Torque

current -> torque

voltage -> motor speed

Sorry if you have visited the following websites. Pls take a look.

**DC Motor Speed Modeling**

http://www.engin.umich.edu/group/ctm...tor/motor.html

**PID Design Method for DC Motor Speed Control**

http://www.engin.umich.edu/group/ctm...otor/PID2.html

**Digital DC Motor Speed Control with PID Control**

http://www.engin.umich.edu/group/ctm...r/digital.html

- 29th October 2004, 10:15

- 29th October 2004, 20:51 #5

- Join Date
- Oct 2001
- Posts
- 618
- Helped
- 8 / 8
- Points
- 5,832
- Level
- 18

## Re: Speed to Torque

Good site but i couldn't find the answer. Are you sure it is there? If so show the exact position please.

- 30th October 2004, 00:35 #6
## Re: Speed to Torque

P = T.w

Power = Torque * Angular Velocity

Power = Torque * RPM * Pi/30

etc..

Git

- 30th October 2004, 02:55 #7

- Join Date
- Sep 2004
- Posts
- 662
- Helped
- 73 / 73
- Points
- 21,612
- Level
- 35

## Re: Speed to Torque

We can relate torque and motor speed, for examples:

By [afonso]:

Te - TL = J*dw/dt + B*w + ...

where J is moment inertia of the rotor, and B is damping coefficient of the mechanical system.

By [Git]:

P = T.w

where 'w' in rad/s

In my opinion, these relations and with other equations (T=Ki, E=Kw) are useful in simulation (only???) to search for the proper value of P, I, or D. For example, in simulation, you can calculate the motor speed by integrating the 'net' torque, or calculate the power by T*w. When come to practical, there are a few problems that users face. If you purchase the dc motor from a local electronic store or you get the dc motor from other appliances, usually you would not have the datasheet of the motor. If this the case, then all those equations mean nothing, as we do not know the values of emf constant, torque constant, damping ratio, and moment inertia. Of course, we can carry out some experiments but it will take a lot of time. That's why, in practical, some users 'try-n-error' to fine-tune the PI or PID controller.

In my opinion (again), understanding of T=Ki and E=Kw are enough in practical (of course not all applications, ok?). Probably we discuss an example:

**DC brushed motor**

Voltage rating: 12V

Current rating: 2A

Rated speed or base speed: 3000RPM

Rated torque: 3Nm (too powerful, isn't it? Ha Ha ... just for example)

*(*Forget about extended speed range control, which could be achieved by flux-weakening or advance phase commutation)*

**Operating condition: 0RPM to 3000RPM, Load Torque (TL) = 0Nm**

**No PI controller**

When power is on, FULL voltage (VBUS) will be put across the motor terminals. As the back emf (E) is ZERO at RPM=0 and pretty low at low speed (E=Kw, changes with motor speed), the starting current is usually very high (e.g. 2~3 times rated current). Since VBUS - EMF is NOT= ZERO (in fact, ALMOST= VBUS at beginning), (large) current will be pushed through the motor winding. When there is current, there is electromagnetic torque (T=Ki). Then, motor will accelerate until its speed reaches 3000RPM. At rated speed, (VBUS - E) NOT= ZERO, and the voltage potential difference is required to generate an amount of current, which is just enough to produce a motor torque to overcome damping force, to flow through motor winding. At 3000RPM, [motor torque (Tm) - TL - damping torque (Td)] = 0, meaning NET Torque =0, so no acceleration, speed maintains constant. We can always increase the speed if we increase VBUS. But usually VBUS is fixed, e.g. in a 12V battery power application.

**With Controller**

At this point, we don't discuss about PI controller first. Sometimes, we need to control the current, e.g. to limit the current from damaging either the motor itself or the power electronic that drives the motor. As mentioned earlier, the starting current (inrush current) is very high. This starting current might damage the motor, but usually motor winding is capable of carrying this amount of high current for a short duration (say 10s) before the insulator of the winding fails. Current limit controller (or current controller), usually, is required to protect the power electronic drive, especially the power rating of the drive is lower than the inrush current. For example, an IGBT, 10us of overcurrent current might have caused the junction temperature of the IGBT to rise rapidly (due to hot-spot) and the IGBT fails eventually. Well, we discuss a bit about current controller. Probably we focus on hysteresis type of current controller. In this controller, when the motor current rises above a threshold, the controller will issue a command to turn-off the power electronic drive. On the other hand, when the motor current is lower than the reference current, the controller will turn on the power drive. Okay, let's discuss the motor operation now. When the power is turned on, motor current will rise rapidly due to low E. When the controller detects that motor current is above the current limit, it will switch off the voltage supply to motor. This process is repeated until the E=Kw is big enough to limit the current. If we observe the voltage waveform when motor accelerates from 0 - 3000RPM with an osiloscope, we will see that at beginning, the voltage waveform (across motor terminals) are chopped, when the E is low. However, after that, there is no chopping anymore because at higher speed, E is large enough to limit the current below the rated value or safety level.

**Operating condition: 0RPM to 1500RPM, Load Torque (TL) = 0Nm**

I think, controller (for dc motor speed control) could be either one of the following combinations:

1) PI speed controller -> PWM generator + current limit -> power electronic drive

2) PI speed controller -> hysteresis current controller -> power electronic drive

May be there are other combinations or methods of control, but I would focus on those mentioned above in this discussion.

In topology**[1]**, the output of the PI controller is translated into duty cycle for the PWM generator. For example, when the speed error is maximum, the duty cycle is 100%. In topology**[2]**, the output of the PI controller is translated to be the reference current for hysteresis current controller. For example, if the motor current is above the the reference current, the hysterisis controller will cut of the supply to the motor, and vice versa. If you're interested, you can study the model given in one of my posts ( http://www.edaboard.com/ftopic93972.html ) to learn how to set the value of P and I of the speed controller. Well let's talk about the motor operation now.

**Topology [1]**

In this section, we assume that the power rating of the power electronic drive is very high until we do not need to protect the switches. When the power is on, the speed error is MAX (wm = 0, wref = 1500RPM, werr = 1500RPM). As the result, the PI controller will issue a 100% duty cycle signal to PWM generator. The duty cycle issued by PI controller will reduce (how fast it reduces depends on the setting of PI controller) when the motor speed approaches wref. The objective of the PI controller is to 'amplify' the speed error in such away that it responses faster (better dynamic) to achieve the required speed. Without the PI controller, the motor might take longer time to achieve 1500RPM. As TL = ZERO and 1500RPM is not rated speed, FULL voltage (VBUS) is not required to maintain the speed at 1500RPM. That's why, at 1500RPM, the switches chop in such a way that the effective voltage across the motor winding is only 1/2 of VBUS (of course it will not be that linear, ha ha). This value is slightly larger than E because this potential difference is required to produce a current that is just enough to overcome the damping torque.

**Topology [2]**

Power rating of power switches is also assumed to be infinite in this section. So, protection scheme is ignored here. When the power is on, the werr is MAX. So, the PI controller will issue a reference current (depends on the setting of PI controller) that is larger than motor current. As a result, the hysterisis controller turns on the switches. When wm approaches wref, werr becomes smaller, which results in a lower reference current, and hence the switches start to chop. When it reaches 1500RPM, werr is ZERO, so the hysterisis controller turn-off the switches. As no power to the motor to overcome the damping torque, the speed will drop. When it drops slightly (depends on how fast is the sampling rate), werr is NOT= ZERO again, and a higher reference current is issued, which results in switching on the switches. This process is repeated to keep the motor running at 1500RPM. Similar to Topology [1], FULL VBUS is not required and it's achieved through the hysterisis controller, i.e. turn-on and turn-off the switches.

__Operating condition: Assume motor runs at 1500RPM and TL=0Nm. Then, a load torque of 1Nm is applied. After that, motor speed must be maitained at 1500RPM__

**Topology [1]**

Say at 1500RPM and TL=0Nm, the duty cycle is 50%. When a load torque (say 1Nm) is applied, the motor speed will drop. This will increase the potential difference (VBUS - E), which will result in higher current to be pumped into the motor. As a result, the motor accelerates and tries to achieve 1500RPM. Also, when the speed drop due to the applied load torque, the PI controller will detect an (large) error between wm and wref (1500RPM). So, the controller will 'amplify' the error as if the error is very large. This error would be translated into the required duty cycle (which is larger than 50% for sure) to PWM generator. As a result, the effective VBUS is higher and more current will flow through the winding. This process is repeated until a value of duty cycle (should be larger than 50) is achieved where the motor is able to run at 1500RPM and to overcome the load torque and damping torque.

**Topology [2]**

More or less similar to the description given in Topology [1]. The difference is how the PI controller translates the speed error, i.e. it's translated as reference current in case [2].

Well, in my opinion (it's my opinion only, ok? It might be wrong), it's not important to find out the relationship between torque or speed to control a motor (in practical). We can get the speed from position encoder. We do not need to perform integration of torque in real time. Regarding the setting of P and I values, I must admit that I'm still not 100% clear. But after I played around with the Matlab/Simulink model ( http://www.edaboard.com/ftopic93972.html ), I can 'feel' it, but it's just difficult to explain here, I hope you understand. It looks to me that it's quite flexible. Probably we need to get the lower and upper boundaries of operation correct, and it will operate well after that. The model would probably not answer you directly, but I think it will help you. I know it's possible to set Ki=1 or =1billion (as mentioned in your post http://www.edaboard.com/ftopic93972.html ), but if Ki=1billion, PI controller might not have any useful function anymore. That's only my comment. Pls correct if I'm wrong.

- 31st October 2004, 19:23 #8

- Join Date
- Oct 2001
- Posts
- 618
- Helped
- 8 / 8
- Points
- 5,832
- Level
- 18

## Re: Speed to Torque

Ok there is a relation between torque and speed like current and voltage. The ratio between them is not necessarily constant and there is no need to know exact value since it's closed loop. If we increase the torque, speed increases, if we decrease it speed decreases. So if the applied torque follows the speed error than the speed of the motor can reach the desired speed. It's more clear now for me.

- 1st November 2004, 01:46 #9

- Join Date
- Sep 2004
- Posts
- 662
- Helped
- 73 / 73
- Points
- 21,612
- Level
- 35

## Speed to Torque

Ya ... you're right. Whenever there is torque (or more precisely NET torque), the motor will accelerate and the speed increase. This relation could be analogy to linear motion, F = ma (newton 2nd law).

1 members found this post helpful.

- 11th November 2004, 20:03 #10

- Join Date
- Jan 2003
- Location
- Ireland
- Posts
- 268
- Helped
- 19 / 19
- Points
- 5,720
- Level
- 17

## Re: Speed to Torque

Originally Posted by**seyyah**

Power, Torque, w anguler speed

- 13th November 2004, 03:25 #11

- Join Date
- Oct 2001
- Posts
- 618
- Helped
- 8 / 8
- Points
- 5,832
- Level
- 18

## Re: Speed to Torque

Originally Posted by**bunalmis**

- 7th April 2006, 15:42 #12

- Join Date
- Mar 2006
- Location
- libya
- Posts
- 78
- Helped
- 1 / 1
- Points
- 1,585
- Level
- 9

## Speed to Torque

tack this site

www.ctm.com it has good information