Can I use a Zener for 556 protection from relay coil back EMF?

SgtWookie

Joined Jul 17, 2007
22,230
Yes, you need a pull-down resistor for the gate. If your external connection will actively be pulled to ground, you will need a diode there too so that the 556 out won't see that. Otherwise, you might burn out the output.
 
Last edited:

Thread Starter

mrpict

Joined Nov 4, 2012
26
<snip>The 2N7000 should allow you to do that.</snip>
Thanks very much for the explanation Ron. It is counter intuitive for me but I think I get it now regarding D1/D2 remaining forward biased. It looks like I will have to go with CMOS for power saving and consequently stick with a 2N7000 as a switch for the higher current demand of the relay. I have 36V zeners on order so I am wondering if I use one of those in series with a 1N4004 across the coil will the 2N7000 be happy? I can't figure out the consequences to the device from the datasheet. Do I even need to snub the coil with a 2N7000 driving it?
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
Proposed new schematic.

http://pict.co.uk/556_RD_with_Relay_V2.gif

D1/D2 left in place as they are on the board already and it doesn't look like they will do any harm and are presumably analogous to the diodes suggested by SgtWookie. Output from 556 now driving gate of a 2N7000 mosfet. 2k2 pulldown resistors added from gate to source. I am hoping this will eliminate the longer pulse I observed with the mosfet in place, which I presume is stray capacitance holding the thing open longer than dictated by the RC timng components. Getting there?
 

Ron H

Joined Apr 14, 2005
7,063
Proposed new schematic.

http://pict.co.uk/556_RD_with_Relay_V2.gif

D1/D2 left in place as they are on the board already and it doesn't look like they will do any harm and are presumably analogous to the diodes suggested by SgtWookie. Output from 556 now driving gate of a 2N7000 mosfet. 2k2 pulldown resistors added from gate to source. I am hoping this will eliminate the longer pulse I observed with the mosfet in place, which I presume is stray capacitance holding the thing open longer than dictated by the RC timng components. Getting there?
I'm not sure where SgtWookie wants to put diodes, but if you leave D1 and D2 in, you will slow down the turnoff of the 2N7000. Replace the diodes with jumpers, or low value (47Ω) resistors.
Also, the zener snubber, at least in simulation, causes prolonged ringing at a few kHz on the drain of the 2N7000. This is because the snubber is an open circuit after the initial clamping action. This is not harmful, but I think I would damp it by adding a high value resistor (≈100k) in parallel with the coil.
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
Thanks. I'll add a 100K across the coli. Are these drain/source junctions bidirectional? I am presuming they are, so if I connect the drain and sources of both mosfets together to form a single output that pulses on each toggle of the switch I will have to move D1/D2 between the drains and the coil?
 

Ron H

Joined Apr 14, 2005
7,063
Thanks. I'll add a 100K across the coli. Are these drain/source junctions bidirectional? I am presuming they are, so if I connect the drain and sources of both mosfets together to form a single output that pulses on each toggle of the switch I will have to move D1/D2 between the drains and the coil?
Do you mean that you might want to drive one coil with both monostables? If so, you could wire the two MOSFETs in parallel (drain and source only), eliminate the diodes, and drive the gates separately. Or, you could use one MOSFET and connect D1 and D2 cathodes to the gate. The MOSFET will turn off slightly slower if you do it this way.
If that's not what you want to do, post a schematic.
 
Last edited:

Thread Starter

mrpict

Joined Nov 4, 2012
26
I do mean that - drive one coil with both monostables. Thinking about it I can see now that the diodes D1/D2 can go when using 2 mosfets cause when one mosfet turns on the other is off and affords no path to ground bypassing the coil. I will probably leave the diodes and use a single mosfet though as its easier to adapt the board that way.

I couldn't figure out how to do this with one monostable i.e. generate a negative pulse on the trigger each time the switch is toggled. That would have been nice and cut the component count somewhat, but glad to get something working at least. Thanks.
 

Ron H

Joined Apr 14, 2005
7,063
I do mean that - drive one coil with both monostables. Thinking about it I can see now that the diodes D1/D2 can go when using 2 mosfets cause when one mosfet turns on the other is off and affords no path to ground bypassing the coil. I will probably leave the diodes and use a single mosfet though as its easier to adapt the board that way.

I couldn't figure out how to do this with one monostable i.e. generate a negative pulse on the trigger each time the switch is toggled. That would have been nice and cut the component count somewhat, but glad to get something working at least. Thanks.
Be aware that the diode slows down the turn-off of the MOSFET slightly, which seems to be important to you.
What is the purpose of driving the same coil with both monostables?
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
I was trying to ascertain the absolute best way of doing this (allowing the relay to switch promptly and protect the transistors). Switching speed is probably not critical as long as the switching is clean, but as a learning exercise I am always curious about the best way of doing things rather than what is adequate.

To answer your question, part of the bigger picture is to open or mute outputs on a single input 4 output distribution buffer amplifier. The desired on/off setting for each output is selected with SPDT footswitches which line up the monostable to the desired coils on each relay (set or reset). The selected combination is then initiated with another activating footswitch. Every time this activating footswitch is toggled I need the monostable to pulse, hence the two monostables feeding the single output.

Coming to the conclusion that I need to use mosfets for the required switching current has had the bonus consequence of probably simplifying the power requirements. I need a +/- 9v virtual ground supply for the OPA2134 opamps (planning on using a TLE2426 powered by a 9v battery), and I was thinking I'd probably need a 12v supply to get sufficient tripping voltage for the relays I had to hand (they are 12v but will switch at anything over 8.4v). With the mosfet I can probably get away with a 9v battery to drive the relays as well as the virtual ground supply. However I will also have 6 or so LEDs as status indicators and I may run them off a separate 1.5v battery supply for battery efficiency.
 

Ron H

Joined Apr 14, 2005
7,063
So why don't you use a pushbutton switch instead of a toggle? Wouldn't that allow you to use one monostable instead of two?
 

THE_RB

Joined Feb 11, 2008
5,438
I won't argue with your experience. I'll just tell you mine (from 10 minutes ago).
I added a 2N7000 between the 555 and the relay in my test circuit. The relay is a small unit with a 12V, 10mA coil. I snubbed it with 1kΩ, and the drain voltage peaked at about 21V, very close to Vcc+(Icoil*Rsnub).
Yep that's what you would expect with a resistor value so low, larger than (or equalling) the coil current. In that case the back EMF calc is close to 100% accurate, because the speed of current change is slow (low freq) and the lossy high freq performance of the iron core has much less effect.

If using a resistor of very high value (like inifinity) the calculation approaches 0% accuracy as the "frequency" of the back EMF gets very high and the lossy iron core has a great effect snubbing its own coil.

What we found was that the lossy solenoid core and some combined wiring etc meant even with no snubber the 12v solenoid coils topped out at around 150v spike measured back at the driver collectors. A resistor in the range of 5% to 10% of the coil current allowed good enough efficiency for coil driving, and dropped the back EMF spike to the 40-50v or so needed to be safe with the driving transistors.

My comment of "You can't calculate, instead use the scope" was based on a real world compromise to find a balance of using a resistor value high enough for good efficiency and fast mechanical release but still provide a suitable amount of snubbing effect. Sorry for any confusion and for straying off topic as this has nothing much to do with Zeners. :)
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
For that aspect of the functionality it would. I just happened to have a bag of 3PDT footswitches and some 556 timers to hand and it was an interesting problem to design with what I had. Besides I also wanted a control mode where I can toggle each output on/off instantly along with a status LED, and for that I figured I needed the single output monostable operated by SPDT. Clicking switch uses the 3 switches in the footswitch to (a) toggle LED on/off (b) toggle the target (set/reset) coil for the monostable pulse and (c) trigger the monostable.
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
I am nearing completion of assembly and realised I made a pretty fundamental error in the board design. I was initially going to drive 6 relays with a common -ve ground connecting all the coil -ve terminals and multiple separate +ve feeds from each monostable output to the +ve coil terminals. The PCB was designed like this.

Then I realised I wanted to use CMOS for battery longevity and that I couldn't source the latching current from the 556 CMOS so added 2N7000 as per the simplified example here..

Proposed new schematic.

http://pict.co.uk/556_RD_with_Relay_V2.gif

The board with the monostables was already built so I just added the MOSFETS on to the output terminals I had on the board. However I now realise that on the monostable board I have a common +ve for the coils and individual negatives from the mosfet drains. On the relay board it is a common -ve and individual positives. I can't think of a fix other than substituting the 2N7000's for p-channel mosfets. Am I correct in this assumption? If so can anyone suggest a p-channel MOSFET equivalent to the 2N7000? There are 36V zeners in the the coil snubbing loop so they would need a higher breakdown voltage than this.

Thanks for any suggestions.

Regards,
John
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
As an afterthought, can I stick with the 2N7000 and connect drain to +ve and use it to switch the relay coil load between source (+ve) and ground -ve?? From what I can gather I can do this but the switched voltage will be less than the supply by the 2N7000 threshold voltage. So worst case 3V less. I need 12V for the relays so I could crank the supply up to 15V as the 556 should handle that. Is this the way to go? Is the breakdown voltage on the source side the same as the drain... i.e. would it handle a 36V pulse from the coil (via zener) in this configuration?

Thanks again,
John
 

Ron H

Joined Apr 14, 2005
7,063
I am nearing completion of assembly and realised I made a pretty fundamental error in the board design. I was initially going to drive 6 relays with a common -ve ground connecting all the coil -ve terminals and multiple separate +ve feeds from each monostable output to the +ve coil terminals. The PCB was designed like this.

Then I realised I wanted to use CMOS for battery longevity and that I couldn't source the latching current from the 556 CMOS so added 2N7000 as per the simplified example here..

Proposed new schematic.

http://pict.co.uk/556_RD_with_Relay_V2.gif

The board with the monostables was already built so I just added the MOSFETS on to the output terminals I had on the board. However I now realise that on the monostable board I have a common +ve for the coils and individual negatives from the mosfet drains. On the relay board it is a common -ve and individual positives. I can't think of a fix other than substituting the 2N7000's for p-channel mosfets. Am I correct in this assumption? If so can anyone suggest a p-channel MOSFET equivalent to the 2N7000? There are 36V zeners in the the coil snubbing loop so they would need a higher breakdown voltage than this.

Thanks for any suggestions.

Regards,
John
A PMOS high side switch requires that the gate go low to turn it on. Your 556 output goes high.
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
Duh. Not thinking clearly patently. Would something like this work?

http://pict.co.uk/HiSideSwitch.jpg

If I supply the 556 at 14.5V I should get 13V at the output pin. I understand that the max supply voltage is 15V for CMOS so that should be OK I presume. I would then get around 13.5V at the output pin. When the 556 output goes high the mosfet turns on and the resistor divider formed by R1 and the relay coil keeps Vd and Vs at 9.1V which is above the relay minimum of 8.4V (ignoring the drain-source resistance as negligible). With Vs at 9.1 V when on, this is 3.9V below the gate (13.5V) so it should stay on until Vg goes low? Vth for a 2N7000 is listed at 3V max so should be fully on at Vgs=3.9V?

Does this have a chance of working? Any other ideas?
Thanks,
John
 

Ron H

Joined Apr 14, 2005
7,063
As an afterthought, can I stick with the 2N7000 and connect drain to +ve and use it to switch the relay coil load between source (+ve) and ground -ve?? From what I can gather I can do this but the switched voltage will be less than the supply by the 2N7000 threshold voltage. So worst case 3V less. I need 12V for the relays so I could crank the supply up to 15V as the 556 should handle that. Is this the way to go? Is the breakdown voltage on the source side the same as the drain... i.e. would it handle a 36V pulse from the coil (via zener) in this configuration?

Thanks again,
John
You can do that. The 2N7000 will be acting as a source follower. As such, it is self-snubbing, i.e., when the gate goes to ground, the flyback will only go 2-3V below ground, because the transistor conducts the coil current until it decays to zero. The down side of this is the coil inductance and capacitance causes ringing, which isn't destructive, but might be audible, depending on the resonant frequency. A reverse-biased diode across the coil pretty much eliminates the ringing, but slows down relay turn-off slightly. In case you're wondering, a zener will do nothing.

EDIT: If you are using a CMOS 556, I think the best solution is an NPN (e.g., 2N3904 or 2N2222) emitter follower, keeping the 12V supply. You will get about 11V of coil drive. No snubbing is required, as the transistor does it. Connect the base to the 556 output, the collector to +12V, and the emitter to the coil. That's it. No resistors, no diodes, no zeners.
 
Last edited:

Ron H

Joined Apr 14, 2005
7,063
Duh. Not thinking clearly patently. Would something like this work?

http://pict.co.uk/HiSideSwitch.jpg

If I supply the 556 at 14.5V I should get 13V at the output pin. I understand that the max supply voltage is 15V for CMOS so that should be OK I presume. I would then get around 13.5V at the output pin. When the 556 output goes high the mosfet turns on and the resistor divider formed by R1 and the relay coil keeps Vd and Vs at 9.1V which is above the relay minimum of 8.4V (ignoring the drain-source resistance as negligible). With Vs at 9.1 V when on, this is 3.9V below the gate (13.5V) so it should stay on until Vg goes low? Vth for a 2N7000 is listed at 3V max so should be fully on at Vgs=3.9V?

Does this have a chance of working? Any other ideas?
Thanks,
John
That won't work as drawn. See post #38.
 

Thread Starter

mrpict

Joined Nov 4, 2012
26
Confused. I just tried it as drawn and it worked. I verified operation with an LED and 1K resistor in series from ground to source. The MOSFET was a bit slow turning off so added a 240K pulldown from gate to ground. That fixed that though probably isn't necessary. In fact maybe it is a good thing from the point of view of suppressing the amplitude of the flyback pulse (though I understand that is no longer a concern).

The series 1N4004 and 36V zeners are already on the relay board so I'll just leave them as it would be a bit fiddly to remove them at this stage as access is fiddly. I presume they are redundant rather than deleterious.

I appreciate the NPN suggestion. Given I have it working with the 2N7000 I'll leave it just now so I can move on and finish the build for function testing purposes. I chose to use the 2N7000 as I had some lying around and don't have any other transistors in my possession. Rather than put the project on hold waiting to get some 2N2222 I'll press on and I can revisit the relay drive setup if I get audio issues, and am certainly armed with the knowledge to do it better next time.

What was it about the circuit at http://pict.co.uk/HiSideSwitch.jpg that made you think it would not work as drawn? I read your post #38 but couldn't find the offending issue with my schematic.

Many thanks for your help with this.
John
 
Top