Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

PWM drive for DC motor

Not open for further replies.


Junior Member level 1
Jun 22, 2002
Reaction score
Trophy points
Activity points
pwm dc drive


I am driving a 24VDC permanent magnet DC motor with a PWM drive. Maximum current is around 2 Amps

However I am not sure how to arrive at the frequency of the PWM pulses. I am sure that the frequency does have a effect on the torque characteristics - I am currently using around 1Khz.

Is there any empirical formula or guideline for this ?



24vdc pwm drive

There are several things to keep in mind.

1. Drive transistor heating. Faster means hotter.
2. Mechanical resonances of the system. Avoid these frequencies.
3. Electrical time constants. The motor current should come to full value in a fraction of the pulse width.
4. Acoustics. Will any sound be generated loud enough for people to hear and be irritated from it.

pwm acoustic noise high current motor

3. Electrical time constants. The motor current should come to full value in a fraction of the pulse width.

Yes that is what I am trying to calculate. Can you please tell me the way to do it - like what parameters of the motor are required to find out this ?



dc motor pwm frequency too high?

The time constant is the inductance divided by the total resistance. This resistance includes the winding resistance of the motor and the on resistance of your transistors.

The most convenient way to do these measurements is to place a very small (compared to the motor resistance) resistor (perhaps 1 ohm) in series with the motor and measure the voltage across it with two probes of an oscilloscope. (Use invert on one chanel and add mode for the vertical mode.) This will give you a good feel for the time constant. The current should become steady during the first small fraction of the pulse width.

dc motor whine

You can find some useful information from Microchip's PIC Application note here.
**broken link removed**

pwm drive

As a rule-of-thumb I'd say that the typical PWM frequency for DC servo drives is about 10...20 kHz, at least in the DIY world. Perhaps it'd be best to use an adjustable PWM frequency, so you can check when the frequency is too high for the application. Usually too high a frequency results in excessive heating of the motor due to losses.

IMO the most annoying thing with these kind of drives is the high-pitch whine due to too low a PWM frequency, but many people have their hearing already limited to around 10 kHz or something - depending on age, personal aging and possible long-term exposure to various loud noise. Your mileage may vary.

What kind of PWM drive do you have? A self-made one or a commercial one? Some simple drives use just a triangle-wave generator with a couple of comparators to make the PWM. In that case, the triangle-wave frequency might be possible to adjust.


max pwm frequency for dc motor

good project pwm
**broken link removed**

advice : ware with the overvoltage in the mosfet ...


pic pwm high pitched noise

If i want simulate a motor ,what parameter should I know .And how to get them?

pwm makes a loud sound

the standard switching frequency is 15kHz. i like to use 20Khz because of the audio noise. in general, you should switch as fast as you can until your switching losses become more than you feel comfortable with, but never more than the conduction losses.

here is why:
high frequency makes for easier filtering (smaller lighter cheaper inductors & caps required)
better efficiency of the motor due to less torque ripple

don't worry about the "emi". that is controlled more by the rise & fall time of the switching device than by the actual switching frequency.


Added after 9 minutes:

a good read on the different technique choices of pwm application

I think 15 KHz is too high for dc motor controller. In my experience, 400 Hz is enough, and my dc motor under controlled runs well.

400Hz is too low. Your motor may get burnt at that frequency because inductance of the motor has low resistance at that frequency. Also armature resistance is low. So a high current may flow and burn the windings. Also there will be a lot of harmonics and acoustic noise even motor may not revolve smoothly. I use 20kHz and it works very good. Motor doesn't get hot even not warm. There is no acoustic noise. Also torque is better over 10khz. I think from 15khz or 16khz noise will get lost. If you choose a good mosfet and mosfet driver switching lost will be also low. You have 24V dc motor and 2 amp so you have less to think since your power need is low. May be you won't need a heatsink also, with a low rds(on) resistance and to220 package mosfet. But its better to use heatsink everytime. With high frequency it will be easier to filter ripples and harmonics

Hi friend,
We work with DC Motor. It doesn't matter even if you give a constant dc current, so it will not burn the motor.

Badaruddin said:
Hi friend,
We work with DC Motor. It doesn't matter even if you give a constant dc current, so it will not burn the motor.

What we already try to do is achieving pure dc current using high frequency at all voltage levels. If your power supply's max voltage is not more than dc motor's voltage rating than it may not get burnt but it won't operate as good as at high frequency. If your frequency is low, then your harmonics will be at low frequency which are nearer to dc component and high in magnitude. So your motor won't filter them adequately and unwanted dissipation will occur.

Not open for further replies.

Part and Inventory Search

Welcome to