Switching 30 watts of LED about 2000 times a second -- is a TO-220 MOSFET okay?


This is one of my first Arduino projects, but I have worked with electronics many years ago.

I want to connect my Arduino connected to segments of several feet of LED ribbon, which requires 12 volts and a few amps.

I want to run at least 2Khz PWM dimming on the entire LED ribbon (I can indirectly detect PWM at 1Khz through the fast-eye-roll stroboscopic effect, so I need a higher frequency). I don't want to use voltage dimming because it's for a special project that requires custom PWM control, perfect for an Arduino sketch.

I'd wire a MOSFET (source, emitter) inline with a power supply connected to the LED ribbons (which already has built-in current limiting resistors), and switch the MOSFET using the Arduino. I just want to be able to switch 12 volts on/off very rapidly and efficiently, and cheaply, since I'll need to control several LED ribbons separately. I'm open to alternatives to a TO-220 MOSFET package (60V 100W capable component, logic level gate), but LED ribbon amplifiers are expensive and I can get these transistors cheap.

Can I pull this off directly connecting the Ardiuno pin to the gate of a common TO-220 MOSFET of sufficient amperage ability, as long as I have a heatsink attached to the MOSFET? I don't think I need a resistor before the gate, but would a Darlington type circuit for better switching efficiency? Are there other good combined discrete component (e.g. SmartFET's, etc) that can do this fast high-power switching job efficiently with minimum component count?


Ok, partially answered my own question.

There's a ready made board that can be used directly with LED ribbons: http://arduino-info.wikispaces.com/Brick-4ChannelPowerFetSwitch

This one is rated for 200,000Hz switching capable -- perfect for my needs. http://www.elechouse.com/elechouse/index.php?main_page=product_info&cPath=&products_id=1812 They are $18 each for 4 channels (10 amps per channel, 16 amps total), and can switch

On the other hand, if I am controlling 16 ribbons, the costs of these boards add up rather quickly. But the power and safety features (optoelectrically isolated) is extremely attractive.

As long as the MOSFET can handle the current, you should be fine. In a switching application (i.e. PWM) you dont have to worry about the power rating, just the voltage rating (far more than 12V, I assume) and the current rating. However, you may need a heatsink because a MOSFET is not a perfect switch and it will dissipate some power. A good rule-of thumb is if it gets too hot to hold your finger on, add a heatsink.

That said, I'm curious how quickly can this FET switch -- can I switch ON/OFF quickly enough?

2000 times per second (2kHz) is S-L-O-W for electronics. (It's super-fast for a mechanical relay, which might swich a few times per second.)

don't want to use voltage dimming because it's for a special project that requires custom PWM control, perfect for an Arduino sketch.

Plus, linear dimming inefficient. Not only are you wasting power, your current-limiting device (i.e. the MOSFET) has to handle voltage and current at the same time, which means it needs to dissipate power, and it will get hot (or hott*er*).

I don't think I need a resistor before the gate,

It would be a good idea. The input of a MOSFET has some capacitance, and it's generally a bad idea to connect a capacitor directly across to an Arduino output.

Thank you for your reply. I am aware the FET's can switch fast, but I was worried about them burning up during switching.

I will have to decide if I want to go for my own FET circuit, or buy a premade driver circuit. This driver circuit is quite attractive, as it contains everything needed; just direct wire to the Arduino, direct wire to the LED ribbon trips, direct wire to the 12V power supply, no other components needed. It now boils down to a simplicity vs cost scenario.

but I was worried about them burning up during switching.

Switching dosn’t dissipate any more heat if you do it fast, it is when it is slow you have the problem. That is not to say how often per second it switches, it is the time it takes the FET to go from on to off.
This is a function of the drive circuit into the FET. If you connect a FET directly the use a 100R resister in seriese with the gate to keep the current down to safe levels for the arduino.

mdrejhon: It now boils down to a simplicity vs cost scenario.

If you're only making one, go for simple. 'Cost' usually only makes sense when you want to make a lot of them. Remember to factor in your own hourly rate, too. If 'cheap' means you spend a lot of time then it's often not worth it either.

Well, most of the time in my experience people are doing this for a hobby, and a little extra time investment in a project isn't the end of the world, but a price tag might be. I'm notorious for doing things totally wrong but eminently cheap. If you are okay with the fact that recharging a fire extinguisher after finding out that a component really CAN'T handle three times it's rated value is cheaper than buying the component with the proper ratings, then you are a proper tinkerer, in my humble opinion...

All that said, I run MOSFETs with a 100 ohm gate resistor and am switching hundreds of watts of LED's with them. Barely get warm. Darlington pairs were MUCH hotter running and I had to accommodate for all that loss in terms of power supply side too.

I have purchased the LED ribbons now, through a supplier on Alibaba. About 7 dollars per meter for LED's that are 21-22 lumens 6000-6500K, Epistar (Taiwan) branded #5050 chips, (1000 lumens per meter at 60 LED per meter). About 35 dollar per reel of high-brightness neutral-color CRI 70-75 LED's. They are perfectly adequate for my needs at a reasonable brightness-versus-cost ratio. They are only CRI 70-75 but this is acceptable. The switching time is sufficiently fast (LED phosphor decay is short -- far less than 1 millisecond). The cost was a bit higher than I hoped to pay, but I need an ultrathin light source (a big panel that's less than 2" thick) that can switch on/off at strobe speed levels, with precision strobe length control. And, if I overvolt carefully, I can get at least 3000 lumens per meter (60 lumens per LED) in short strobes -- since LED's can be overdriven if strobed for really short periods. So I can output over 50,000 lumens from a two-square-foot ultrathin strobe panel, with better and easier control than xenon strobes -- I need to do 120 precisely-controlled full-brightness strobes per second. An 800 watt PC power supply will be supplying the 12 volts necessary for the 250 watt surges of light (more, if I use an overvolted surge circuit). Here's a small section of the LED ribbon, I took pictures of:



A simple Arduino Photodiode test showed that phosphor decay (after turning off) is undetectable without an oscilloscope -- far less than 1 millisecond. So they are satisfactory in high speed light switching capabilities for low cost! Fiour prebuilt MOSFET switches is what I'm getting (at four channels each), with separate channels controlling a few sections of ribbons, since I need 16-section strobe control.