How to find the right MOSFET

(scroll down for question without background)

Hi People. Disclaimer: my journey with electronics started just over a week ago and while I am loving it I am very aware I really know what I'm talking about. So if I have said anything that doesn't make sense, or my understanding about things is wrong please feel free to correct me.

I am working on a project to drive an ultrasonic atomizer where I need to build a circuit that can produce a 113 KHz frequency, can handle largish (=>5A) currents at 24V DC or higher.

My idea at the moment is to build an H bridge out of MOSFETS, where the two on one path are normally open and the other two are normally closed. I would then set my PWM frequency to 113 KHz (see code at bottom) to switch these MOSFETs and have an external power supply provide the correct power and voltage.

The reason I would use an H bridge is because the amplitude of 113 KHz square waves is important.

Things I don't know:

  • What a MOSFET really is or how it actually works
  • If you can have normally open and closed MOSFETS

QUESTIONS:

  • Where can I find a MOSFET that can do all of 1) be switched by 5V from arduino 2) switch at at least 113 KHz **3)**handle at least 24V and a largish current (1-5A or greater)

  • Can you get normally open and normally closed MOSFETs and if so how would I get both types of the parameters described above.

  • As I previously mentioned I am very new to this and still have a basic understanding, so as specific direction as possible would be awesome e.g. use this specific component, or go into the spec sheet and divide this by this to find out a specific parameter.

Anyone who can provide any help or direction is an absolute lifesaver.

The code I have found to set my PWM frequency is:

#include <PWM.h>

//use pin 11 on the Mega instead, otherwise there is a frequency cap at 31 Hz
int led = 9;                // the pin that the LED is attached to
int brightness = 127.5;         // how bright the LED is
int32_t frequency = 113000; //frequency (in Hz)

void setup()
{
  //initialize all timers except for 0, to save time keeping functions
  InitTimersSafe(); 

  //sets the frequency for the specified pin
  bool success = SetPinFrequencySafe(led, frequency);
  
  //if the pin frequency was set successfully, turn pin 13 on
  if(success) {
    pinMode(13, OUTPUT);
    digitalWrite(13, HIGH);    
  }
}

void loop()
{
  //use this functions instead of analogWrite on 'initialized' pins
  pwmWrite(led, brightness);
  
}

dabble:
(scroll down for question without background)

Hi People. Disclaimer: my journey with electronics started just over a week ago and while I am loving it I am very aware I really know what I'm talking about. So if I have said anything that doesn't make sense, or my understanding about things is wrong please feel free to correct me.

I am working on a project to drive an ultrasonic atomizer where I need to build a circuit that can produce a 113 KHz frequency, can handle largish (=>5A) currents at 24V DC or higher.

My idea at the moment is to build an H bridge out of MOSFETS, where the two on one path are normally open and the other two are normally closed. I would then set my PWM frequency to 113 KHz (see code at bottom) to switch these MOSFETs and have an external power supply provide the correct power and voltage.

The reason I would use an H bridge is because the amplitude of 113 KHz square waves is important.

Things I don't know:

  • What a MOSFET really is or how it actually works

Its an electronic switch, voltage driven, put most simply. The gate input is one plate of
a capacitor, and the voltage across this to the source affects the ability of current to flow
between source and drain.

  • If you can have normally open and closed MOSFETS

Not normally for power MOSFETs which are enhancement mode devices, but depletion mode
devices do exist. They are exotic for exotic circuits these days.

[/list]

QUESTIONS:

  • Where can I find a MOSFET that can do all of 1) be switched by 5V from arduino 2) switch at at least 113 KHz **3)**handle at least 24V and a largish current (1-5A or greater)

Any decent electronics stockist, and you'd use their web-based parametric search tools to find what you want.

  • Can you get normally open and normally closed MOSFETs and if so how would I get both types of the parameters described above.

answered above

  • As I previously mentioned I am very new to this and still have a basic understanding, so as specific direction as possible would be awesome e.g. use this specific component, or go into the spec sheet and divide this by this to find out a specific parameter.

Quick guide - select a voltage rating about twice what you expect to see in the circuit, so spikes are unlikely to
cause issues (ie destroy the device). Don't select a 200V device for just 12V operation, it will have hopeless
on-resistance specs.

Figure out the on-resistance you want, and select on that basis, not the rated current, which is a red-herring.

Decide if you need a logic-level MOSFET. Most require 10V minimum on the gate,
for 5V gate drive you need a logic-level mosfet.

Make sure your max current times the on-resistance is below 1V for reliable operation.

Calculate the power dissipation (I-squared-R). Is it reasonable? Will you need a heatsink?
Fan? If so perhaps you want a lower on-resistance device.

You can calculate your desired on-resistance from the max current using the same relation,
given a desired power dissipation.

Typical on-resistances are from 0.1 ohm down to 0.0001 ohm (yes, really).

For fast PWM you will probably need gate drivers - you need to understand that a MOSFETs
switching time depends on the total gate charge (in datasheet) and the available current
to drive the gate.

Designed an H-bridge with only a weeks experience will result in increased knowledge, but
frustration as you'll likely get something very wrong.

Anyone who can provide any help or direction is an absolute lifesaver.

  1. be switched by 5V from arduino

For low-side that's easy, the key words are logic level. Other than that you want an N channel enhancement mode device (not P channel or depletion mode). The vast majority of MOSFETs you find reference to in hobbyist circuits are enhancement mode. As MarkT said, depletion mode is rare, and usually use an analog circuits (like a constant current diode) and not as power switches.

Although logic level MOSFETs are capable of being turned on directly from 5V, all MOSFETs will have lower on resistance and higher current capability with higher gate voltage. With 5 amps continuous current an FQP30N06L with 35 milliohms of resistance will dissipate 0.88 W of heat. Without a heatsink that will get quite warm, almost 80oC. That's not even close to the maximum temperature of 175 though, so not a very big deal.

More troublesome is the high side of the bridge. Those are normally P channel devices, and cannot be driven directly from an Arduino pin; you must have a driving circuit. This is because to turn off a high side P channel device, you must push the gate up to the supply voltage, 24V in your example.

The easiest high-side gate driver is a smaller transistor (like a 2N3904 or 2N7000) turning on and off a pullup resistor.

This has a couple problems:

  • Most power MOSFETs are rated for an absolute maximum of 20V gate voltage. This circuit would produce 24V. The easy solution is to use a voltage divider instead of a single resistor, and connect the gate to the center of that so the gate is less than 20V under the power rail.
  • The resistors slow down how fast the gate can charge. This makes it unsuitable if the MOSFET is going to be PWMed. For an H bridge it's not that big of a deal since you can hold the high side on steady and PWM the low side MOSFET. Just be aware of it.

Purpose-designed MOSFET driver chips (also called gate drivers) will have much better performance than this circuit, if it is needed.

If you are not using a bridge driver chip and are going to be controlling the FETs directly with your Arduino, I recommend using a fuse, circuit breaker, or some other form of overcurrent protection on your 24V supply. If you accidentally turn on both FETs on one side of the bridge at the same time you will short out the power supply. This could destroy the FETs, the power supply, or the wire, and could cause on of them to catch fire if the overload it bad enough.

Designed an H-bridge with only a weeks experience will result in increased knowledge, but
frustration as you'll likely get something very wrong.

That's what's so fun about building something on your own.

This tutorial may help you.

and a related video.

Hope this helps.

Importantly, when designing H-Bridge configurations, it would be wise to make sure you allow for dead-time.
Dead-time is a small period of time where when the circuit crosses over to the other half of the bridge, where no MOSFETs are turned on. This allows time for MOSFETs that were on to fully turn off, before their complimentary MOSFET is turned on.

You will find a lot of online information on the considerations needed to build reliable H-Bridge circuits.

I'm not sure why you would need an H-Bridge circuit to drive a 113KHz transducer, would not a simple single stage MOSFET do the job, where one end of the transducer is connected to 0V ?

If the transducer is inductive, as in a coil, then make sure you protect the MOSFETs against back EMF appropriately.
If the transducer is piezo, again, look into how you might need to protect the MOSFETs against high voltage spikes.


Paul - VK7KPA

A MOSFET H-bridge does not need protection from inductive loads, the body diodes already do that.
Note this applies to H-bridges and 1/2 H-bridges, but not to single MOSFETs - there the body diode
does not protect. In a bridge each MOSFET's diode protects the other MOSFET in the leg.

Start with the datasheet for the HIP4081A if you want to see how to build an H-bridge with MOSFETs

Then go to the OSMC (open source motor controller) website to see how hard it is to get right!