Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Pwm motor makes a buzzing noise

Status
Not open for further replies.

skmdmasud

Member
Hi..
I finally completed the code and circuit which can control motor speed using PWM. I used Logic level Mosfet which stays super cool at low and high speed but my motor makes a buzzing noise. I tested all the prescale to no prescale but the sound remains. at high frequency it makes a sharp noise like a jet engine and at lowest frequency the motor jerks. I have attached a video
with my best possible prescale. Is the sound in the video ok or will it kill something.

Thanks and Regards.
 
What do you expect?
Of course the motor makes a noise, it is because your PWM is at an audible low frequency. The motor jerks at that frequency.
Imagine if an electric wheelchair used PWM at an audible low frequency! It would be deafening.
They use 25kHz or more so they cannot be heard (maybe by dogs?) and the inertia of the heavy rotating parts smooths its spinning.

If you increase your frequency then you must add a Mosfet driver circuit to quickly charge and discharge the high gate capacitance of the Mosfets.
 
Have you ever used a battery powered drill?, same deal.
If its really loud it might be a resonance within the motor try changing the frequency a few hundred hz.
 
What do you expect?
Of course the motor makes a noise, it is because your PWM is at an audible low frequency. The motor jerks at that frequency.
Imagine if an electric wheelchair used PWM at an audible low frequency! It would be deafening.
They use 25kHz or more so they cannot be heard (maybe by dogs?) and the inertia of the heavy rotating parts smooths its spinning.

If you increase your frequency then you must add a Mosfet driver circuit to quickly charge and discharge the high gate capacitance of the Mosfets.

For few days i ran my blower in low frequency which produced a humming noise. Today i increased the frequency over audible frequency, my blower is quiet now I LOVE IT, but my MOSFET is getting hot. I installed a small heatsink but i am afraid it will burn eventually.

How to make a simple driver circuit which can charge and discharge at a high frequency.
 
My schematic. Very simple and straight forward.
mosfet example - Copy.gif



Can i use this to discharge my MOSFET.

how+to+prevent+mosfet+from+burning.png
 
Last edited:
but my MOSFET is getting hot
25kHz or more so they cannot be heard
If the temperature is OK at low frequencies but hot at high frequency then the losses must be from "AC" not "DC".
1) bread boards are not the best at high frequencies.
2)Are you using a logic level MOSFET?
3)Try a diode from MOSFET(D) to +Vdd. (across the motor) Might help.
4)Probably the capacitance in the motor is high and the MOSFET is not happy driving a capacitive load. Add a inductor from motor to MOSFET(D). Now you will really need the diode from (D) to supply. The motor was never designed to have the supply turned on/off 25000 times a second. Adding a inductor is like adding a rubber.
5) Make gate resistor 22 ohms

Worth a try.
 
Last edited:
Without having part numbers and a supply voltage shown on your schematic then we must guess if you used a Mosfet that needs 10V on its gate to turn on or if your logic is old TTL which provides a low current high of only 3.3V.

With logic as the driver then the Mosfet should be a "logic-level" one that turns on well with a gate voltage of only 4.5V.
A Microcontroller is made with HC Cmos that has fairly high current highs and lows through the 100 ohm series gate resistor then the diode at the gate is not needed.

Your circuit is missing a diode across the motor to clamp voltage spikes to the supply so instead the diode in the Mosfet avalanches which heats it.
 
At a higher frequency you may need a MOSFET driver to rapidly charge and discharge the MOSFET gate capacitance to minimize switching losses. The diode you show will not help since the 100R series resistor is small.
 
I think the master problem at higher frequencies is the switching loss of the FET.
The Gate has a little capacitance, so the time between full on and full off depends from the driver current and the value of the Gate "Capacitator".
When the frequency increases, the transistor is a longer time in the higher loss area between full on and full off, that will heat up the FET.
You can try to use a better Driver, or a FET with lower capacitance.
Or decrease the PWM frequency.
Or You'll life with that loss and make a better cooling for the FET.
 
If the temperature is OK at low frequencies but hot at high frequency then the losses must be from "AC" not "DC".
1) bread boards are not the best at high frequencies.
2)Are you using a logic level MOSFET?
3)Try a diode from MOSFET(D) to +Vdd. (across the motor) Might help.
4)Probably the capacitance in the motor is high and the MOSFET is not happy driving a capacitive load. Add a inductor from motor to MOSFET(D). Now you will really need the diode from (D) to supply. The motor was never designed to have the supply turned on/off 25000 times a second. Adding a inductor is like adding a rubber.
5) Make gate resistor 22 ohms

Worth a try.
Hi..
1. its no longer in breadboard i have transferred it into vero board with thick wires in drain source of mosfet.
2. I am using a logic level mosfet IRL2203
3. I cannot put a diode/snubber in the motor, i cannot reach that deep inside of the dashboard, i have to open up lots of unknown things to reach the blower motor:banghead:.
4. i will look into making a inductor coil
5. Can i remove the gate resistor.
 
Without having part numbers and a supply voltage shown on your schematic then we must guess if you used a Mosfet that needs 10V on its gate to turn on or if your logic is old TTL which provides a low current high of only 3.3V.

With logic as the driver then the Mosfet should be a "logic-level" one that turns on well with a gate voltage of only 4.5V.
A Microcontroller is made with HC Cmos that has fairly high current highs and lows through the 100 ohm series gate resistor then the diode at the gate is not needed.

Your circuit is missing a diode across the motor to clamp voltage spikes to the supply so instead the diode in the Mosfet avalanches which heats it.
I cannot put a diode/snubber in the motor, i cannot reach that deep inside of the dashboard, i have to open up lots of unknown things to reach the blower motor:banghead:. Is there any other solution. My drain and source is protected by a fly wheel diode isn't that good enough.
 
I think the master problem at higher frequencies is the switching loss of the FET.
The Gate has a little capacitance, so the time between full on and full off depends from the driver current and the value of the Gate "Capacitator".
When the frequency increases, the transistor is a longer time in the higher loss area between full on and full off, that will heat up the FET.
You can try to use a better Driver, or a FET with lower capacitance.
Or decrease the PWM frequency.
Or You'll life with that loss and make a better cooling for the FET.
Or You'll live with that loss and make a better cooling for the FET.;) :) this will my last resort.:nailbiting:
 
I think you need a pair of transistors or a mosfet gate driver chip.
Your mosfet at higher freq's is spending more time in its linear region, therfore dissipating more heat, switching it on faster will reduce the time in its linear region and will dissipate less heat.
 
You could try this driver circuit for the FET. Q2 and Q3 are the pair of transistors DrPepper mentioned. If your PWM source is low voltage (3.3V, 5V?) the additional Vbe drop imposed by Q2 could prevent the FET turning on fully. Use of a higher voltage for +V, plus Q1, can overcome that. Bear in mind, though, that Q1 inverts the effective PWM duty cycle.
FETdriver.gif
 
Exactly what I was thinking, bc548 and bc558 ought to do the trick.
 
You could try this driver circuit for the FET. Q2 and Q3 are the pair of transistors DrPepper mentioned. If your PWM source is low voltage (3.3V, 5V?) the additional Vbe drop imposed by Q2 could prevent the FET turning on fully. Use of a higher voltage for +V, plus Q1, can overcome that. Bear in mind, though, that Q1 inverts the effective PWM duty cycle.
View attachment 81568
I think i will give this a shot. Thanks for the circuit. What is the purpose of R3.
 
R3 (100 Ohms in your post #7 circuit) damps any parasitic oscillation due to gate capacitance and stray inductance. The FET shown is what you have already; not an additional one.
 
My drain and source is protected by a fly wheel diode isn't that good enough?
No.
The diode from drain to source is not needed because it would block the drain from going negative which never happens and the Mosfet has a diode there anyway as part of its construction.
The drain does not go negative, instead it goes POSITIVE when the Mosfet turns off then the diode in the Mosfet has avalanche breakdown from the high voltage which causes heating. The diode must be parallel to the motor to prevent the positive voltage spike at the drain of the Mosfet. The cathode of the new diode connects to +VDD and its anode connects to the drain of the Mosfet. If its wires are long (far away from the motor) then it might cause oscillation ringing.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top