2
\$\begingroup\$

I am trying to design a circuit to control the speed of a motor using PWM.

I intend to run the PWM at (at least) 10kHz. The PWM library I am using allows 1024 steps for the duty cycle (0 to 100% in 1024 steps.) The smallest "on" time is about 98 nanoseconds.

I assume that I need a MOSFET with a switching time faster than that.

From what I see in the datasheets, I need to find a MOSFET with a total time of less than 98 nanoseconds for the following parameters:

  • Turn-on delay time
  • Rise time
  • Turn-off delay time
  • Fall time

Taking the IPA60R360P7S as an example, I find the following values:

Parameter Value
Turn-on delay time 8ns
Rise time 7ns
Turn-off delay time 42ns
Fall time 10ns

That gives a total of 67 nanoseconds.

  • Would this MOSFET be fast enough for the shortest PWM pulses?
  • What makes it fast enough - that is, how can I tell?
  • How close can the pulse width and the total of the time parameters be before the shortest pulses are distorted?
  • What other parameters of the transistor should I take into account to find the shortest pulse time?

Switching the gate fast enough is a separate problem. I'll be using a gate driver for that, but I haven't picked one out yet. I want to understand how to pick the transistor first.

Yes, I do need that 600V rating on the MOSFET. I'm going to be driving a small (100 watt) universal motor on rectified AC mains (240VAC.) I think less than 600V would be too close to the 340VDC of the rectified mains.

The final PWM frequency will be as high as the microcontroller will run without skipping pulses. I don't want to hear "squeeeeeee" while the motor is running, and I don't want to hear "mmmmmmm" either (from low frequencies.) This will be on a sewing machine, with the motor about a foot from my head when I'm working. The machine itself is the next best thing to silent - I want to keep it that way.

\$\endgroup\$
4
  • 2
    \$\begingroup\$ My understanding is you pay attention to total gate charge and ignore those transition times. Then you muddle with Qg to calculate switching losses and total losses until you find something acceptable. \$\endgroup\$
    – DKNguyen
    Jul 8, 2022 at 21:20
  • \$\begingroup\$ @DKNguyen I upp'd your comment (I obviously agree.) But the fact that transition times are even mentioned makes me wonder. Would they be there as "an example given some specified circumstance?" Or would they be there because of the bond wires and their capacity to handle the current required to deal with the total gate charge in such short times? (I don't know.) \$\endgroup\$
    – jonk
    Jul 8, 2022 at 21:24
  • \$\begingroup\$ @jonk Well they also mention max current which is nearly worthless. They do provide the conditions under which those rise times are obtained but it varies so much between datasheets. \$\endgroup\$
    – DKNguyen
    Jul 8, 2022 at 21:24
  • \$\begingroup\$ Maybe you want a sine drive if you don't want to hear a whirring. \$\endgroup\$
    – DKNguyen
    Jul 8, 2022 at 23:24

2 Answers 2

2
\$\begingroup\$

The speed of a MOSFET is mostly dependent on the gate driver you supply and your gate parasitic inductance. Yes, that FET will work.

Your motor won't respond to 98 ns pulses -- in fact it probably won't respond until the duty cycle reaches 10 % or so. Note that 10 kHz is a quite high frequency for motor drive; this won't be particularly efficient and may generate an annoying whine that children and dogs will hear. Depending on your motor and load, something like 100 Hz might be more suitable.

\$\endgroup\$
1
\$\begingroup\$

This other answer refers to a document by Unitrode that goes into some detail on designing MOSFET (and IGBT) drivers.

The take away for me is that you can calculate the required gate current (\$I_g\$) from the required switching time - if you have a "beefy" enough driver, you can make a MOSFET switch at pretty much any speed you want.

The equation for the gate current given \$Q_g\$ (total gate charge from the datasheet) and the desired switching time is:

$$ I_g = \frac {\Delta Q_g}{t_{transition}} $$

  • \$I_g\$ is in amperes
  • \$\Delta Q_g\$ is in coulombs
  • \$t_{transition}\$ is in seconds

As a concrete example:

  • \$Q_g\$ from the IPA60R360P7S (mentioned in the question) is 13 nC.
  • \$t_{transition}\$ is 98 nanoseconds

I would need a driver capable of driving \$ \frac {13nC}{98nF} = 0.133A\$.

I was looking at the ADuM4120 isolated gate driver for use in my motor controller. It is capable of delivering 2.3A to the MOSFET gate, so it should be able to make the IPA60R360P7S switch on in 98 microseconds.

For a gate voltage of 12V, that also implies that the gate resistor must be less than 100 ohms for the driver to be able to push that much current into the gate.

To select a MOSFET, I will also have to consider the gate driver IC. It will be a compromise between gate current from the drive, and total gate charge as given in the MOSFET datasheet.


This is, naturally, a simplification based on what I read about a subject I am new to.

Comments and corrections are welcome.

\$\endgroup\$
4
  • \$\begingroup\$ Ahhhh, yeah. the AdUM54120. I use that when I don't feel like thinking. \$\endgroup\$
    – DKNguyen
    Jul 13, 2022 at 20:34
  • \$\begingroup\$ @DKNguyen: How's that? \$\endgroup\$
    – JRE
    Jul 13, 2022 at 20:38
  • \$\begingroup\$ Just FYI: I was looking at it specifically because Mouser had thousands of them in stock. \$\endgroup\$
    – JRE
    Jul 13, 2022 at 20:38
  • \$\begingroup\$ They're isolated so you just add a small isolated DC-DC 15V supply and you don't need to think about high-side vs low-side or bootstrap caps, or less than 100% duty cycles or anything like that. \$\endgroup\$
    – DKNguyen
    Jul 13, 2022 at 21:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.