Wednesday, August 14, 2013

Why is my FET hot? Circuit detective work...

I was using an ATtiny85 to drive a large computer fan (brushless DC motor) using a FET and pulse-width modulation and I was surprised at the amount of audible noise. A quick Google search turned up the article below on reducing PWM noise with BDC motors. In short, the article recommends using a resistor and capacitor to slow down the turn-on time (slew rate) of the FET to reduce acoustic noise.

I tried the recommended approach with the FET below (it is a hefty 75 amp, N-FET with an on resistance of 0.002 ohms that I usually have in my parts bin). The fan did run much quieter but the FET was getting HOT with only a 5A load!

I expect that a TO-220 package can dissipate 1 to 1.5 Watts before needing a heat sink. Using 1.5 W as an upper limit and applying P=(I^2)R, the FET should conduct 27.4 amps without getting too hot to touch (a very subjective measure I know). At 5 amps, the power loss in the FET should be about 0.05 W, not enough to even get warm.

Perhaps the slowing of the gate on the FET was causing the heating. (Very slow gate transitions can cause a FET to heat up because they spend so long conducting current in the linear resistive region before the FET reaches it's low resistance at  full turn on.) So I let the FET cool and removed the slew rate limiting capacitor and tried running the fan at full power. Under these conditions the FET should remain cool to the touch. But the FET heated up very quickly. I was perplexed. The gate voltage was only 4.5 volts from the ATtiny but I though that would be enough for only a 5 amp load. So back to the FET datasheet.

The answer came from taking a closer look at Figure 1 from the datasheet, below. The figure shows a family of curves with each curve showing the FET current as a function of the voltage across the FET (Vds) at a given fixed gate voltage (Vgs).

I finally noticed that the VGS=4.5V curve shows that the FET gate requires almost 11 volts (Vds) to reach 5 amps! This would be 55W of dissipation in the FET while driving only a 5A load. No wonder the FET is hot! I had not bothered to see if the devices was rated for logic-level drive and clearly it is not! I should have checked the datasheet before using the 2804 but it has such a low Rds that I thought it would have no problems with the 5A load. So I need to either switch to a logic level FET or find a way to raise the gate voltage.

A quick on-line search points to a good candidate in the IRLB8748PbF which has an Rds of 5.5 mOhm at Vgs=4.5V and would fit the bill nicely with a current limit of over 16A for a 1.5W dissipation. At our 5A current the power dissipation would still be less than 0.14W and should run cool.

I could also use a gate pull-up resistor to Vin (12 volts) on the FET that I pull down with an NPN transistor driven by the ATtiny. In the end, I dropped in a high-side FET driver that I had on hand. Now the original IRF2804 FET runs cool even with the slew-rate limiting capacitor installed to reduce acoustic noise! Yea!

I hope you find this helpful when chasing your next circuit gremlin. Just keep digging, there is a reason for everything the circuit is doing!

PS: In post analysis, I noticed in Fig 1, that just an extra 0.5V on the gate would shift us up to the next voltage curve, reducing the FET resistance enough to bring the power well below 1.5 W. So I was not too far off in my expectation that this FET should have performed well enough in this application. A microcontroller would usually have an output closer to 5V. Perhaps I previously over-stressed the pull-up on that output pin and it was out of spec (I could have tried another pin! The joy of hindsight). Perhaps I could have added an external pull-up resistor to the FET's gate, say 5k to +5V, and let the microcontroller pull the gate down to turn it off. Not an ideal solution but may get the job done if you have few other options at hand.