Go Down

Topic: MOSFET for DC motors (Read 5629 times) previous topic - next topic


Jan 22, 2013, 10:57 am Last Edit: Jan 22, 2013, 10:59 am by dc42 Reason: 1

Transistors are like 800mA, and gate drivers around 1A (I can't find a store in Au selling 6A gate drivers), in fact - this is the only gate driver I can find:
But it's 1A, I have 800mA transistors already!

You can get TC4420 gate drivers from http://au.element14.com/, although they probably have a minimum order value for non-trade sales (it's GBP30 in UK).

I've already got the MOSFETs I plan to use:

They look good for the job, however they need 10V gate drive, so you definitely need to use some sort of driver with them. The 3-transistor driver schematic I provided should be OK if you are using a low PWM frequency. It may even be OK at the default Arduino PWM frequency of 490Hz, however I suggest you start with a low PWM frequency (say 10Hz), and if the mosfets still run cool with the PWM at 90% then you can try a higher frequency. Ideally you would use an oscilloscope to look at the gate and drain voltages, then you can get a better idea of the energy dissipation when the mosfet turns on and off.

Don't forget to include a flyback diode across the motor. Its peak current rating needs to be at least as high as the motor stall current, so I suggest a 25A Schottky diode or similar (also available from element14).
Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.


Yeh, got the diodes (actually planned on soldering them to the relay bases originally).

With regard to heat sinks (I've calculated a probable 2W worst case to dissipate, I'm going with safe and adding them).
Thermal resistance is a measurement such as 8oC/W

2W gives me 136oC at 25 ambient to dissipate. It'll be higher than 25 ambient, so I need to lose around 110oC (if I work on 160oC and I want 50oC maintained, potentially higher)..
Would I not want a heatsink with a higher thermal resistance, such as 40oC/W ? I'm not sure why I'd want one lower (i.e. 8oC/W) but all my reading says to pick one with a 'lower thermal resistance'.


The lower the thermal resistance, the better the heatsink and the cooler the mosfets will run. So you calculate the maximum allowable thermal resistance of the heatsink, then select a heatsink with a thermal resistance no higher than your calculated figure.
Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.


You want the higher thermal conductance...  For some bizarre reason heatsinks are rated by
thermal resistance rather than thermal conductance, its an accident of history.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]


BTW, what are these fans for?
In the past, most heater/blower fans had a set of series resistors to control speed. Most electric radiator fans and those for turbo cooling after the ignition is switched of are usually on or off.

As mentioned above, tuning the PWM frame rate is a good idea. Since you will not be running at particularly low speeds, it ought not be critical though.
A good trick is to apply full speed for a few frames to get the motor running. Having the MOSFET fully driven will help while passing through the stall condition. You may want a dab of heat-sink paste (less is more! you are filling the surface not adding a jam filling, and it may take several heat soak cycles before it's 'bedded in') and beware of "live" heat-sinks shorting.

The engine bay of a car is pretty hostile, note that crimp connectors will often outlast soldered joints where vibration it a problem.
For whom does the clock pulse? It pulses for you!

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131