Fast Snubber for Solenoid Valve

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
First of all, I present myself. I am an industrial engineer, 27 years old. In my free time, I´m working in a personal project. Basically it is a kind of PLC than controls 150+ solenoid valves. The solenoid valves are 12VDC and 500mA. I´m using two UNL 2803 in parallel (one above the other) that handles 1000/1200 mA and have some security margin.

The idea is that the solenoid valves must open and close VERY fast and at a rate of 10Hz max (approx.). Each valve is controlled individually and the actual valves I bought have a response time of approx. 10 ms to open/close. This is perfect to me and works fine. The problem is that as solenoid loads are very inductive so I must add a Snubber / Transient voltage suppression to eliminate the peak voltage produced when the solenoid is turned off. If I don’t use some kind of protection, surely I will fry the ICs of the circuit!

Actually I´m using one 1N4004 diode parallel-connected to each solenoid. This protection works fine but it has a big controversial issue: the close time is widely increased (by 2x or 3x) and makes my system not to work correctly.

I been searching for some alternatives that don’t increase the close time (maybe I´m wrong!):

-RC snubber.
-Two inverse-series Zener diodes (transorb).
-Varistor / VDR (some call them MOV).
-other one?


I will appreciate if you can help me to choose and calculate the fastest snobber possible. My electronics knowledge is quite basics so simpler solutions are preferred (sorry about that!).

The only data of the solenoid valves I use is that they are 12VDC-500mA (I don’t have the tools to measure accurately the R and L of the inductance, if it is very important to know, I can contact someone that can measure it).

Thank you very much and best regards!
Tomas
 
Last edited:

crutschow

Joined Mar 14, 2008
34,285
The fastest turn-off would be obtained with a zener diode and standard diode in inverse series connected in parallel with the solenoid (standard diode cathode toward positive end of solenoid). The higher the zener voltage the faster the turn-off.

The maximum zener voltage would be about 10-20% less than the maximum voltage rating of the drive circuit or 40-45V for the 50V driver you are using. To calculate the zener wattage rating required, you need an estimate of the solenoid inductance.
 

SgtWookie

Joined Jul 17, 2007
22,230
Hello Tomas,
Welcome to the Forums! It will help us to help you if you add your Country and Province or State to your profile; click on the "User CP" in the menu, then "Edit your details", fill the info in the "Location" box (where you live) and click the "Save changes" button. If you need parts, having your general location handy will help us suggest suppliers for you to purchase parts from.

First, I'll suggest that the ULN200x or ULN280x series is not sufficient for your load. Although they are rated for 500mA per channel, that is only if 1 channel is on at a time, and 500mA is the extreme limit. It is unwise to operate an electronic device at its' maximum capacity. I see that you are "doubling up" on the devices, but did you know that there are similar devices that are rated for 1.5A per channel instead of 500mA? Take a look at the ULN2065 and ULN2067. ULN2065 have a 350 Ohm input resistor, ULN2067 have a 3k input resistor; other than that they are identical. The ULN2065 would give you a ~10mA source current if your PLC is operating from 5v.

Note that these ULN206x drivers have four ground pins; these should be connected to a copper pour area that serves as a heat sink.

The 1N400x series of diodes are slow to turn on and off. You really want very fast switching diodes; as slow recovery diodes will cause power losses. Schottky diodes are probably your best bet.

See the attached schematics and simulations; basically what you're using now is the upper schematic and waveforms, a suggested modification is on the bottom.

The accuracy of the simulation of the 1N400x diodes is dubious, as that series of diodes has no specification for turn-on and recovery times - therefore, you will find that some will work OK, and some will not, depending on manufacturer, batch, phase of the moon, etc.

I don't have a model of the ULN2003 or ULN206x Darlington drivers, so I used a model of a TIP121 Darlington instead. That's a bit optimistic, as a TIP121 is far more capable than either of the ULN's. I'm telling you all this so that you can get an idea of the limitations of the validity of the simulation.

As the inductance and parasitic capacitance of the solenoids are an unknown, I used 200mH (0.2H) and 100pF, with a parasitic series resistance of 24 Ohms to limit current to 500mA.

The big difference is the selection of the diodes, and the addition of the snubber resistor R3 in the lower schematic. I'm assuming that your solenoid coils have time to build up to full current flow of ~500mA. 500mA*100 Ohms = 50, plus the supply voltage (12v) = 62V peak when the Darlington cuts off the current flow through the solenoid.

The rate of change of current in the inductor over time is related to the voltage across the inductor. By adding resistance to the path so that the voltage across the inductor builds higher, the current flow in the inductor ceases more quickly.

Changing the resistor to a 51v Zener as in the 2nd schematic results in the voltage across the coil being maintained for a longer period of time, so the current decays far more quickly.

Increasing the Zener to 60v as in the 3rd schematic results in a further decrease in current decay time, but the peak voltage has increased to 75v. This is dangerously close to the maximum voltage rating of a ULN2065 (80V), and far exceeds the limits of the ULN2003A (50v).

The bottom line here is, the more rapidly you wish for the solenoid current to decay, the higher you will need to allow the reverse voltage to build; which means that you also need a higher voltage rating for the transistors or MOSFETs that you are using to switch the solenoids with.

Does this help?
 

Attachments

crutschow

Joined Mar 14, 2008
34,285
.........................
The 1N400x series of diodes are slow to turn on and off. You really want very fast switching diodes; as slow recovery diodes will cause power losses. Schottky diodes are probably your best bet...........
I agree with everything else you said, but the recovery speed of the diodes is inconsequential in this application. At 10Hz max. the power loss in the diode due to slow recovery time is very small, likely little more than if you were using them as 60Hz rectifiers in a power supply. So I see no reason to go with fast recovery or Schottky rectifiers (but, of course it wouldn't hurt).

And the turn-on time of all rectifiers, fast recovery or not, is all about the same (fast).
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
Thank you for the kind answers, they really mean a lot to me. In a while I will update my geolocation info (BTW, I’m from Buenos Aires, Argentina).

I started working with the ULN2803 because they are cheap and easy to find. Before I bought them, I read carefully the datasheet of them and I understood that the max V/I PER OUTPUT was 50v and 500mA, hope I’m right! As you said, I knew I was working at the limit so that is why I “paralleled” two of them to double the power. As I said, my electronic knowledge is quite basic and didn´t know that it existed other powerfull ULN alternatives.

I buy most of the electronics in eBay, you have many many alternatives at good prices. I searched eBay for ULN2065 and found a very few options and much expensive than the ones I have. If the ULN 2803 starts blowing off, I will have to break the pig and buy some (lots of) 2065.
Back to the snubber, and asuming I continue with the 2803 (someday I will change them), the two inverse-series Zener diodes seems a really good alternative. I looked carefully the simulations you did and they look a BIG advance in reference to the “basic” 1N4004 I´m using actually.
As you said me, the bigger the reverse voltage, the faster it will close. I searched the 1N5369/5371 in eBay and couldn´t find of them. I could find some 1N47XX that support up to 1,3W (versus 5W the 1N53XX), do you think they are OK? I was thinking in using some 1N4755 that supports up to 43V. The idea is no to “pass” the 50V that supports the ULN2803.

Two more things...
1) Will adding a small resistance in serial to the two zener diodes decrease the close up time? Maybe I´m totally wrong…
2) The UNL 2803 pin 10 has some protection diodes, should I activate them? Will this help to protect the IC?

Thanks!!
Tomas
 

SgtWookie

Joined Jul 17, 2007
22,230
I agree with everything else you said, but the recovery speed of the diodes is inconsequential in this application. At 10Hz max. the power loss in the diode due to slow recovery time is very small, likely little more than if you were using them as 60Hz rectifiers in a power supply. So I see no reason to go with fast recovery or Schottky rectifiers (but, of course it wouldn't hurt).

And the turn-on time of all rectifiers, fast recovery or not, is all about the same (fast).
I'm basing the Schottky diode suggestion on experiences with stepper motors and relays, along with a thread that occurred within the last couple of weeks here.

Something that may surprise you is that the turn-on and turn-off times of 1N400x and 1N540x series diodes is not specified (!) so manufacturers can't be held accountable for those parameters. When you're dealing with 50Hz, 60Hz or even 400Hz AC, this is no big deal; it's sine waves, and the rise/fall times are very slow. Even if it took 50uS for a diode to turn off, that's only 3.2v across the diode when the input is 120VAC 60Hz.

Here we have square waves, with very short rise/fall times.

The basic situation being discussed in the other thread was that the OP had an inductive load protected by a 1N400x diode, and that the transistor would burn out occasionally. An article was linked to where someone else had experienced similar problems; and the turn-on times would vary significantly for the 1N4000 series diodes. Changing to 1N914 or 1N4148 switching diodes would solve their problem, as these diodes switch extremely quickly (a few nanoseconds vs uS' for silicon diodes).

One can use a cap to slow the rise time for the reverse-EMF when the driver turns off; but then you can wind up with more problems (ie: resonance) where you have to use resistance to snub the ringing; otherwise you will still have a field expanding/contracting in the inductor.

We've had a few posters try to use 1N400x series with stepper motors, and they had really poor torque and RPM with them. Changing to faster diodes took care of their problems.

Admittedly, slow recovery times won't hurt performance for this application - but either a fast turn-on time is required, or a means to slow the rise of the spike to "buy time" for the diode to turn on.

Not all Zeners are equal, either. I'd tried some older-specification Zeners in the simulation, and they didn't work well at all - the peak voltage was much higher than with the Zeners I used.
 

SgtWookie

Joined Jul 17, 2007
22,230
Thank you for the kind answers, they really mean a lot to me. In a while I will update my geolocation info (BTW, I’m from Buenos Aires, Argentina).
Good - get that put in your profile.
Click on "User CP" in the menu on the left, then "Edit your details" on the next screen.
Scroll down to "Location", fill in the box provided, then click the "Save changes" button near the bottom.

I started working with the ULN2803 because they are cheap and easy to find.
Two good reasons to use them.

Before I bought them, I read carefully the datasheet of them and I understood that the max V/I PER OUTPUT was 50v and 500mA, hope I’m right! As you said, I knew I was working at the limit so that is why I “paralleled” two of them to double the power. As I said, my electronic knowledge is quite basic and didn´t know that it existed other powerful ULN alternatives.
The ULN280x and ULN200x series are pretty versatile, but you really don't want to operate ANY electronics at 100% of it's maximum rating, as chances are high that the parts will fail quickly.

I buy most of the electronics in eBay, you have many many alternatives at good prices.
Be careful, as eBay vendors are not authorized distributors. There are plenty of counterfeit parts out there; you might get them somewhat cheaper than the real thing, but it is no bargain if the parts are useless.

Avnet Express has >3000 in stock. They are $1.47 USD ($6.188 ARS) or less each, depending upon how many you buy, and they are an authorized distributor. They apparently will ship to Argentina.

http://avnetexpress.avnet.com/store...-1&storeId=500201&CMP=KNC-Supplyframe_VSE-T11

I searched eBay for ULN2065 and found a very few options and much expensive than the ones I have. If the ULN 2803 starts blowing off, I will have to break the pig and buy some (lots of) 2065.
Buying properly rated parts in the first place will save you time and money later. It is too bad that you did not know about them earlier.

Back to the snubber, and asuming I continue with the 2803 (someday I will change them), the two inverse-series Zener diodes seems a really good alternative. I looked carefully the simulations you did and they look a BIG advance in reference to the “basic” 1N4004 I´m using actually.

As you said me, the bigger the reverse voltage, the faster it will close. I searched the 1N5369/5371 in eBay and couldn´t find of them. I could find some 1N47XX that support up to 1,3W (versus 5W the 1N53XX), do you think they are OK? I was thinking in using some 1N4755 that supports up to 43V. The idea is no to “pass” the 50V that supports the ULN2803.
Unfortunately, the 1N47xx series is precisely what I was testing before that is slow. I have attached a simulation that uses a 1N4755; the only reason that it is working is because I used a 100uF capacitor in parallel with it to slow the rise time. I tried a 10uF capacitor, but it was still far too slow to keep up; I saw 54v before it started coming back down. Anyway, you can see in the simulation that the current takes about twice as long to drop as with the other simulation, as the voltage is only allowed to build about half as great. Also, I am using an ultrafast diode instead of the diodes in the ULN2803A, as I don't have a model for those drivers. Note that the 100uF cap is a "perfect" capacitor; it has no parasitic inductance or resistance like a real electrolytic cap would. If you go this route, you will need to use smaller caps that are low-ESR.

Two more things...
1) Will adding a small resistance in serial to the two zener diodes decrease the close up time? Maybe I´m totally wrong…
Anything that will cause the voltage to increase will also cause the current to decay more quickly. However, you have a limit with the maximum Vce rating; if you exceed that maximum rating, you'll start breaking things.

Having a voltage clamp at near the maximum voltage is the fastest way to stop the current flow in the inductor without zapping your parts.
2) The UNL 2803 pin 10 has some protection diodes, should I activate them? Will this help to protect the IC?
You can use them if you route them to a storage capacitor that is clamped to ~45v, like I've shown in the upper schematic. I don't know how fast those diodes are.
 

Attachments

THE_RB

Joined Feb 11, 2008
5,438
Given the large number of solenoids I would just use a resistor across each coil and a high voltage driver transistor.

A 12v 500mA solenoid will produce a back-emf spike of about 150v, by adding a 470 ohm across its coil you will reduce that spike to maybe 70 or 80 volts. Then drive it with any decent 150v or 300v rated Vce transistor. This is simpler than a snubber and simpler and cheaper than diode+zener snubbers.
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
I will show you what I should have done in the first post, this video shows what I am in process of building: http://www.youtube.com/watch?v=gusJeslMbLc&feature=related


The max operating frequency is (estimated) 10Hz in the more complex figures but as you can see, in normal operation the valves are much more relaxed and open/close at 1Hz (approx., it varies a lot). The faster the open/close, the better the resolution (imagine the shorter water line possible as a pixel). This is Japaneese design of what I would like to build, if mine works 50% of this, I will get very happy! Up to now, I have only the circuitry in work, haven’t worked with the valves or hydraulic up to the moment. I have simulated the valves with led´s and it works like a charm. I’m worried if it will work with the valves… I connected only one (119 led´s + 1 valve) and it worked Ok. The problem comes when connecting the 120 valves….


Looks like I will have to redesign the circuit. From what I read, I have two different options:


-Continue with a similar structure and replace the ULN2803 with ULN2065. As snubber, use two inverse-series zener. Which part No 1N53XX would you use to reach the maximum 80v peak possible of the 2865?



- As THE_RB says, replace the ULN2XXX and use high voltage driver transistor. I will hear suggestions of what transistors to use and what kind of snubber is needed (resistors?). From my ignorance, this looks a safer option and if no snubber is needed, also faster.


Once again, thank you!



Regards from Argentina,
Tomas
 

SgtWookie

Joined Jul 17, 2007
22,230
Given the large number of solenoids I would just use a resistor across each coil and a high voltage driver transistor.

A 12v 500mA solenoid will produce a back-emf spike of about 150v, by adding a 470 ohm across its coil you will reduce that spike to maybe 70 or 80 volts. Then drive it with any decent 150v or 300v rated Vce transistor. This is simpler than a snubber and simpler and cheaper than diode+zener snubbers.
Hello Roman,
I'm not certain how you arrived at a back-EMF spike of 150v for a 12v 500mA coil? The peak voltage would depend on the solenoid coil wire resistance, the inductance, current moving through the coil, capacitance of the windings, etc.

In the simulation, I gave the solenoids an inductance of 0.2H, resistance of 24 Ohms and a parasitic capacitance of 0.1nF/100pF. The 24 Ohms I got from 12v/500mA; the 0.2H from an estimation at how long it was taking to get the solenoid to engage, and the parasitic capacitance was more or less a wild guess, but I had to start somewhere.

Anyway, when I run the simulation and after the inductor current builds to ~480mA, cutting the current results in about a 6kv spike; it's that low because the transistor I'm using in the simulation breaks down. If I use an ideal switch instead, I get 20kv out of it. Increasing the parasitic capacitance decreases the peak voltage.

Adding a 470 Ohm resistor across the inductor gives a peak voltage of 247v, which makes sense as (470)/500mA = 247v. In order to get the peak voltage down into the 70-80v range, the resistance across the coil would have to be 120 Ohms; as 120 Ohms * 500mA + 12v = 72V. Of course, with no diode to prevent current flow through the resistor when the transistor was turned on, you'd have an extra 100mA current flowing; 500mA through the coil and 100mA through the 120 Ohm resistor.

I've done some searching this morning, but it seems like higher-voltage transistors and MOSFETs have become pretty pricey. That would also be a LOT of individual parts to have to deal with.

Do you know of an IC that is rated for higher voltage than the ULN2803/ULN2003 and at least 1A sink current with multiple channels? The ULN2065B is the only one I know of offhand. It only has 4 channels vs the 7 or 8 of the other two, but it's rated for 1.5A/ch, and 80v vs 50v.

I don't know how many solenoids our OP is planning on turning OFF at one time. If there would only be ONE turning off at any given time, then one diode per solenoid and one transorb would take care of them all (wiring inductance would be a factor; caps would be needed to slow the rise time if runs would be lengthy)
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
The question is, what reversed-biased rectifier diode and what zener to use? Suggestions are welcomed!

I noted that the IRF840 supports up to 500V, in this case is it safe NOT to use a snubber? Maybe only a small one is needed....

SgtWookie: Im planning to turn on and off up to 120 solenoids. If it works, I will increase it up to 300/400. Also, IRF540/840 doesn´t seem so expensive, aprox. 1 USD each for small qts, it looks a good option to me.

Thank you!!!
 
Last edited:

SgtWookie

Joined Jul 17, 2007
22,230
Tomas,
It would be helpful if you could get more information about the solenoids; what the inductance and parasitic capacitance or self-resonant frequency is, that would help make the simulations much more accurate.

I see now that you could have many solenoids turning off at once, as well as energizing at once. That makes it difficult to use a single voltage clamp.
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
Tomas,
It would be helpful if you could get more information about the solenoids; what the inductance and parasitic capacitance or self-resonant frequency is, that would help make the simulations much more accurate.

I see now that you could have many solenoids turning off at once, as well as energizing at once. That makes it difficult to use a single voltage clamp.
No problem! This might take some time as I dont have the tools to do it.
 

SgtWookie

Joined Jul 17, 2007
22,230
Updates!

Searching and searchng looks like a guy already did a VERY similar project to mine (Same electronics). He used IRF540 MOSFETS (100V max). This looks a great alternative to ULN2XXX!
That kind of depends; you would wind up having a lot more individual pieces/parts to deal with; as you would need 7 or 8 of them to replace one ULN2 driver.

Reading this pdf, http://relays.te.com/appnotes/app_pdfs/13c3311.pdf it says: "From the standpoint of physics, the suggested technique for relay coil
transient suppression is to use a reversed-biased rectifier diode and series
zener diode in parallel with the relay coil." It shows a table with the "response time" of some alternatives, very interesting.
This is similar to what I was showing you in the simulations; actually I showed all three techniques displayed in the table, but only one using a diode/resistor combination (very first simulation posted). The differences here are:
1) Your solenoid has a resistance of 24 Ohms vs the automotive 55 Ohm coil.
2) The automotive solenoid would have ~245mA current while yours has 500mA current.
3) We don't know what your parasitic capacitance is vs the automotive relay coil, nor do we know what your actual inductance is, nor the automotive relay coils' inductance.

The question is, what reversed-biased rectifier diode and what zener to use? Suggestions are welcomed!
First, you really need to decide on whether you are going to stay with the ULN2003A/ULN2803A which is limited to a Vce of 50v, go to a ULN2065B which can handle 80v and would not change your parts count (4 channels per IC vs 8 channels for two ULN2803A's) or if you are going to use something like the IRF5x, 6x, 7x, 8x MOSFETs. In order to be able to make a good decision about this, you will need to give us more data on the solenoids.

If you have a small-value HV capacitor and a fast HV diode, perhaps you can determine the peak voltage that the solenoid coil reaches when current flow is interrupted.

Also, I noted that the IRF840 supports up to 500V, in this case is it safe NOT to use a snubber? Maybe only a small one is needed...
Something like an IRF710 through IRF730 would likely be as good; they go to 400v, and have a lower Rds(on) and smaller gate charge.

But, how fast do you really need to stop the current flow? Is it worth the extra parts you'll have to deal with to use individual MOSFETs on each solenoid?
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
SgtWookie:

My idea is to make the fastest circuit possible and lo leave the bottleneck to a mechanical issue (valve + solenoid limitation). I believe that improving the electronics might increase the cost maybe 2-5 USD per output while a valve might cost from 10 to 200 USD. Why use a 200 USD valve to mitigate the electronic limitations when using better electronics with a 20-30 USD valve could produce the same result but much much cheaper?

I already bought "bad" parts, I prefer to buy good and long lasting new components for not making a bad choice twice. Maybe ULN2865 is fine, but the safe play is to buy IRF5XX, IRF7XX or IRF8XX (As they worked for fine in a similar project). If I am wrong, please tell me.

Have a nice sunday! Once again, thanks! It´s an honor to me that a group of expert helped me so much.
 

THE_RB

Joined Feb 11, 2008
5,438
Hello Roman,
I'm not certain how you arrived at a back-EMF spike of 150v for a 12v 500mA coil?
...
Years of experience. ;)

...
Anyway, when I run the simulation and after the inductor current builds to ~480mA, cutting the current results in about a 6kv spike; it's that low because the transistor I'm using in the simulation breaks down.
...
Simulators are not great for that kind of thing. Solenoids and relays are damped by the movement of the armature interacting with the collapsing magnetic field, and also from the lossy iron stator. They usually have more capacitance and coil resistance than a proper "inductor" too. It's pretty rare to get more than 150v from typical 12v relays or solenoids.

I have used resistor damping for solenoids on many occasions and it usually only needs a resistor low enough to pass about 5% to 10% of the coil current to reduce the back EMF to that safe range 50v-80v or so. It was pretty common in the old days driving banks of relays, when zeners and caps were less reliable and/or more expensive.

If you doubt me put a resistor across a solenoid coil and put it on the 'scope. Sometimes a simulator just doesn't cut it.

A diode + zener is a good system to clip the max EMF spike but it is a possible cause of unreliability. Resistors are cheap and will be very reliable. As for driver transistors there are a lot of 300+v bipolar transistors going cheap now through surplus suppliers as they are becoming redundant from CRT manufacture. It should be easy enough to buy a couple of hundred and get them for a few cents each.
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
OK! Assuming a 150V peak, and ussing a IRF710 MOSFET (2A, 400V):

a) Is it safe not to use a snubber? 150V should´t damage the IC.
b) If using a resistor as snubber, what value sould it be? A 470 will reduce the peak by 2, but will this slow down the open and close time?
c) Searching, I found that exists a diode "6PKE Trasient voltaje suppressor" ( http://www.datasheetcatalog.org/datasheet/panjit/P6KE130CA.pdf ). Is this good enough as an alterative to a resistor or zener di? Is it faster than a resistor?
d) I mention the IRF710 MOSFET beacuse SgtWookie "suggested" it, is this the best choice?

Thank you!
 

SgtWookie

Joined Jul 17, 2007
22,230
Something I forgot is that you're driving them from a microcontroller. If you're going to use MOSFETs, you will need to use logic-level MOSFETs. Most of International Rectifiers' logic level MOSFETs begin with IRL; the IRF prefix parts are generally standard-level, and require a Vgs of 10v to be fully turned ON, which includes the IRF5xx, IRF6xx, IRF7xx and IRF8xx series.

So, look to see what kind of HV bjt transistors might be available for cheap.

Base drive current is going to become a concern. If you have lots of solenoids on at once, you could easily exceed the maximum I/O limits of the uC. You will probably need to use a driver transistor for the HV transistor. This will increase your parts count, but it might not be too bad if you assemble drivers on boards in groups of 4, 5, 8 or 10 per board.

As far as the peak voltage - you can either rely on the information that Roman has provided, or you can verify it with some empirical testing of your own.

In any event, it would be cautious and prudent to try building a few examples of several types, and see how they perform. As Roman mentioned, simulations only go so far.

Only you have your exact solenoid, so it really should be you that runs the test. You will need some way to observe the peak voltage from the solenoid when the current flow through it is stopped.

Do you have an oscilloscope?
 

ErnieM

Joined Apr 24, 2011
8,377
Mind if I crash into this thread? :D

The company I work for happens to manufacturer snubber networks for several major relay manufacturers. We do it for them as we can handle bare die and produce a simple string of parts with special wire on the ends. "Special" here means solid cupron bus wire which can both be soldered and welded.

I've personally designed relay timers that mount inside the relay housing and they all use this same snubbing scheme.

These snubbers consist of a 1,000 volt diode in series with a 36V zener. It's not a fast diode either so think of it as a 1N4007. We once spent some time trying to figure out why there is a zener in there and a associate of mine nailed it: it gives a fairly large voltage for the coil to "discharge" into. (I use "discharge" here as I don't know a better word to say when the energy stored in the coil is being released.)

I've never been much of a spice user, I typically use excel as my spice as it allows me to write equations for predictions and play with values.

The coil of a relay may be modeled as an inductor and resistor in series. You can measure the resistance with most ohmmeters but the inductance takes a little more work (more later).

Consider this little circuit that I would recommend using:


We have a MOSFET driven directly off an Arduino's output pin. There are some very good MOSFETs that are called "logic level" as they reach very good performance with just 5V on the gate, allowing such a direct drive scheme. D1 and D2 are the subber I am suggesting. The GREEN current is when the FET is on, and the RED current is during the turn off of the FET when the inductor current must be dumped.

As the coil is truly an inductor with inductance L the current thru it builds up as an exponential governed by R and L. As these are fixed inside the relay itself you are stuck with whatever the relay has. If you want a faster turn on you need to pick another relay.

As for the turn off, remember we have an inductor with a current flowing thru it, and the current thru an inductor cannot change instantaneously, it must flow from one value to another. That's why you get an inductive kick: the voltage has no constraint, so if you interrupt the current path very fast the voltage will grow to the point where that same current can flow somewhere. Typically it breaks down the transistor and destroys it. I have seen over 1,000 volts on an unsnubbed relay.

The voltage across and the current thru an inductor is generally given by:

V = L ΔI / Δt where ΔI and Δt are the change in current and change in time.

Now when V is fixed there is a nice linear relationship (meaning we can ignore all the calculus and use this simple equation) and we get a time to discharge the inductor as:

Δt = L I / V where I = ΔI = current flowing just before we open the switch

Obviously, the larger the V the faster we discharge the inductor.

A resistor may be substituted for the zener but will not be as fast as the voltage will decrease as the inductor current also decreases so it takes 5 L/R time constants.

The MOSFET drain will see a rise in voltage as it turns off, as the zener and diode voltages add to the supply voltage. Here we get about a 36V + 1V rise over the 12V supply for a 49V spike on the MOSFET. I like to derate things at least 50%, so I would pick a 100V MOSFET for this. Also, as the typical current is 500mA I would pick a device capable of at least 1A.

The IRLD110PBF is one such device, you may want to search out others. I found it using DigiKeys search engine for MOSFET, then single, then Logic Level gate, then 100V, then 1A, then finally Thru Hole.

Now given all that here's a simple way to measure the inductance of the coil if you wish: Given such a circuit as above, measure the width and height of the voltage spike (voltage is the portion above the 12V) at the FET drain. Then you can solve for L by:

L = V Δt / ΔI

You would need L if you wish to use a resistor only as a snubber. You pick the R by first choosing the maximum spike you can stand. If we stay with the 37V we already have:

R = E / I = 37V / 500mA = 74 Ohms.

The time constant for an inductive circuit is L/R and needs 5 times to decay, so the turn off time is then:

5 * L / R where L is the inductance found just above.

Last thing to add: the speed that the diode turns off does not affect the turn off time of the relay. The diode only turns off at the very tail end of the coil's discharge and at that point there is not enough energy left to keep the contacts pulled in, they have already started to release, and the snubber isn't going to change anything no matter how slow it turns off.
 

Thread Starter

Tomas_2

Joined Oct 8, 2011
15
SgtWookie:
Tell me if my solution/idea is correct: I already have plenty of ULN2803 (logic). I can connect the ULN inputs to the 74HC595 microcontroller and the outputs to the IRF710. This will help to convert the “logic” to an analog output that the IRF MOSFETS needs (and also 12V instead of the 5V that the uC privides). This will also fix the maximum I/O limits of the uC when all solenoids are ON.

I don´t have an oscilloscope but I can have access to one in the labs of the comany I work. The same day I measure the R, L and C of the solenoid, I will analyze the peak voltage of the solenoid when disconnected with no snubber. This will help a lot to choose a correct snubber.


ErnieM:
Your explanation is greatly appreciate it. I’m sure most of the people here already knows but it was very helpful to me. It helped me visualize the currents and remember some formula I learned in Physic II / Machine and motors classes! I think like as you said, the snobber to be chosen is a diode + zener.

As Sgtwookie says, it is essential to know the RLC of the solenoid (or peak V at least) and what driver is used to choose a correct snubber. If not we are talking from hypothesis and simulations. This might take some as I don´t own an oscilloscope, but I will do the impossible to use one.

Best regards,
Tomas
 
Last edited:
Top