I am currently experiment with PWM for a project I am working on where I need to control a fan from PIC MCU. To ensure I understood everything, and before I start designing/coding with the PIC, I designed to hook a fan up to a breadboard. For this I got a Noctua NF-A4x10 5V fan as Noctua had good documentation. However I am running into an issue where the speed does not seem to change.
I have the fan hooked up to a 5V regulator (running off a 12V power supply). If I don't connect the PWM signal, then I see the fan drawing 70mA and the scope is showing that it is running at approximately ~4,500 RPM (i.e., 152Hz) and the maximum speed of the fan is 5,000 RPM so I was fine with this:

When I hook up the PWM signal, and turn the channel off, the fan does not rotate, which is what I expected. However, if I turn on the PWM signal, regardless of what duty cycle I set it to (i.e., 1% - 99.9%), I get a frequency of ~84Hz which works out to ~2,500 RPM (half of the maximum). I can also see on my power supply that it is drawing half the current (i.e., 30mA).

Based on the Noctua documentation (linked above) I am running my PWM signal at 25KHz @ 5V:

I did use a multimeter to confirm at the fan terminals that it was indeed receiving at 25KHz signal. For reference, this was the circuit:

When that didn't work at all, I tried using their recommended drive circuit which has MOSFET's:

However, when using this circuit, all of a sudden I see over 800mA being drawn by the LM7805 and it got quite hot. I've never needed to use MOSFETs before so I am assuming I am doing something wrong, even though I check the connections multiple times and even took them out and re-did it. Do I need a resistor on the PMOS Drain and/or on the output to the fan? If so, what would be the best way going about choosing the value?
Any guidance on a way to get this PWM signal working as expected and what I may be doing wrong with the MOSFETs would be greatly appreciated. TIA.
I have the fan hooked up to a 5V regulator (running off a 12V power supply). If I don't connect the PWM signal, then I see the fan drawing 70mA and the scope is showing that it is running at approximately ~4,500 RPM (i.e., 152Hz) and the maximum speed of the fan is 5,000 RPM so I was fine with this:

When I hook up the PWM signal, and turn the channel off, the fan does not rotate, which is what I expected. However, if I turn on the PWM signal, regardless of what duty cycle I set it to (i.e., 1% - 99.9%), I get a frequency of ~84Hz which works out to ~2,500 RPM (half of the maximum). I can also see on my power supply that it is drawing half the current (i.e., 30mA).

Based on the Noctua documentation (linked above) I am running my PWM signal at 25KHz @ 5V:

I did use a multimeter to confirm at the fan terminals that it was indeed receiving at 25KHz signal. For reference, this was the circuit:

When that didn't work at all, I tried using their recommended drive circuit which has MOSFET's:

However, when using this circuit, all of a sudden I see over 800mA being drawn by the LM7805 and it got quite hot. I've never needed to use MOSFETs before so I am assuming I am doing something wrong, even though I check the connections multiple times and even took them out and re-did it. Do I need a resistor on the PMOS Drain and/or on the output to the fan? If so, what would be the best way going about choosing the value?
Any guidance on a way to get this PWM signal working as expected and what I may be doing wrong with the MOSFETs would be greatly appreciated. TIA.
Attachments
-
31.1 KB Views: 3


