PWM fan noise. Change schematics?

i build this circuit to power up computer fan but it makes a lot of noise! How can i improve schematics? Do i need to increase arduino pwm frequency? Is it good idea to convent PWM to linear voltage regulator? I tried to add 100uF capacitor to fan terminals it helps with the noise but limits speed control.


The fan is rated at 0.16 A.

Have a look at this thread.

Basically, one poster suggested that PWM with a computer fan is not a good combination. A linear regulator (or adjustable switching regulator) may be a better idea.

wow it looks hard... Especially if you need to control 4 fans. :frowning:
Are there any pwm to analog converters (ic)?

Take a look at the Maxim MAX517 series chips. They are I2C digital to analog chips and are easy to get working with the Arduino.

Well, it depends upon the current. It's easy to build a PWM-to-voltage converter using nothing more than an op-amp, but it can only provide a few milliamps. Same with the MAX517 D/A converter (and all D/A converters): milliamps at most.

A larger current can be provided as in the circuit shown here for battery charging. It was designed for about a 6V output and 1A to charge 1-4 NiMH batteries, but providing a variable DC power source for the fan is basically the same problem. Except it needs 12V, and ??? A. So the details may change.

I wanted 4 separate lines(fans). Fans are rated at 12v and 0.40 Amps.
I'll take a look at Maxim MAX517.

Alright, this circuit modification should generate fan output voltages from 1.25V to 12V based upon the PWM duty cycle. Warning: at lower duty cycles/voltages, that LM317 is going to get really hot -- good heatsinking is going to be a must. For 4 fans, just duplicate this circuit 4 times, with one PWM output line for each.

Thanks for fast reply. I was about to post modification to circuit but it is a bit different it doesn't have 11.5K resistor. What does it do? Also i left D1 for protection from inductive kick.

The 11.5k and 10k resistors add gain so that 0V-5V in provides 0V to 10.75V out. Pretty good description at Wikipedia.

OK I need to read that.
i Don't think there is any 12 volt fans that can spin at lower then 3v. So i think i can just limit it by PWM. But is there any way to turn the fan off. Like adding a 3v zender between voltage regulator and fan? Also voltage regulator can be replaced by MOSFET right?

P.S
I am new to all this stuff.

When driving a DC fan you generally want to use PWM, what could help with the noise is a capacitor. RLC circuit - Wikipedia

It is bad to use liner output because it ads unnecessary load and is not the right voltage to drive the fan.
Try a 220uf Capacitor across the fan output. You might see a reduction in noise.

Also make sure you add a sequence to "start the fan", you need to give the fan full power to build up momentum then reduce the power, otherwise the fan may stay in place and act like a very small load D:

A linear part is a bad idea for this -- it will waste an enormous amount of power which will have to be removed by the fans and might overheat the system in the worst case. The solution is to add a capacitor and to increase the PWM frequency to a high enough value to be out of the audible range.

You mean in series with fan or in parallel? I tried adding 100uf capacitor to fan terminals it lowers the noise but also takes away some of the control. Also some people said that PWM is not the best solution for fans.

PWM is not recommended by the fan manufacturer Sunon on the grounds of reliability. Also with PWM there is not much in the way of speed control as a fan does not have much of a load and PWM works best for a motor when it is under load.

Adding a capacitor is in effect smoothing the PWM and giving you more of a DC signal. A fan working with a current of 160mA is no problem to drive with a FET in the liner mode. However, the heat you have to dissipate increases as the fan power goes up.

The circuit I posted earlier works well with these small computer fans and the speed control is good down to about 30% PWM cycle, this represents a voltage of 2.8v on the fan. Lower than that is stops and it won't run at that rate from a standing start, that requires about 40%, once started it can be dropped down.
I used a Sunon KDE1208PTV1 fan 12V DC.

I have a Sentry 2 touch screen fan controller but it doesn't spin 2 Cooler Master fans , they only make a droning noise at 100% and the others that are spinning have an annoying droning noise .

I want to use this schematic to convert the PWM signal to analog . The controller is rated at 10W output . If this is the case can I only use an RC filter ? Or do I need to use an RC filter to drive a LM317 ? And in my case do I need to use the TLV2372 amplifier or I can eliminate that ? Is there any alternative to TLV2372 ? I'm a novice so I would need some help , thanks .

LE: I made this schematic , can you tell me if this will work ? Or do I need to add something . I need a 5V to 12V output