Main Site Documentation

Help with zener diode for softie


#1

I’m trying to hook up a zener diode in order to add some measure of protection (fused “crowbar”) to a circuit that includes an oxygen sensor with output read by a Cobra or Panda ADC/Analog In. The idea is that with the zener between the sensor output (and the ADC input) and ground, with a breakdown voltage of 4.7 volts, it would keep the voltage below 5VDC. One problem i come across is that when i put in the zener diode it drops the voltage being read by the ADC (volt meter right now), e.g., from 4.38 volts to 3.98 volts. When i replace the zener with a regular diode just to test, the voltage does not drop. What gives?

12VDC
|
Sensor
|
|
|----- Fuse -------------------------- ADC (volt meter for testing)
| |
R zener /\ 4.7 volt breakdown
| |
|-----------------
|
0VDC


#2

Let me try that sorry attempt at a circuit diagram again. Seems to delete white space. Ignore the lines of periods.

12VDC
|
Sensor
|
|
|----- Fuse -------------------------- ADC (volt meter for testing)
|…|
|…zener /\ 4.7 volt breakdown

0VDC


#3

One more try…

12VDC
|
Sensor
|
|
|----- Fuse -------------------------- ADC (volt meter for testing)
|…|
R…zener /\ 4.7 volt breakdown

0VDC


#4

I learned about Zener diodes 2 or 3 times… sadly the last time was about 20 years ago. :frowning:

There isn’t a current limiting resistor shown in your circuit, something the EE types are always screaming about. (yours is in parallel, which doesn’t help the Zener much)

I gave a read over these pages:


http://www.evilmadscientist.com/2012/basics-introduction-to-zener-diodes/

… and nothing leapt out at me. In the deep recesses of my brains, I’m thinking there will be a small voltage drop always present (as p-n junctions are pretty consistent about that). Do you have it installed correctly? (ie, backwards)

The folks at electronics stackexchange are supremely knowledgeable and are happy to help out with questions like yours. They’ve got a circuit illustrator there. Or maybe download Fritzing.org (works in windows and linux) to draw up your circuit … then ask them?


#5

Thanks, cacycleworks. I will try out the circuit drawer you mention–was wondering. I think i have the diode hooked up in the right direction and the idea of no resistor in series with the zener is that a short upstream would blow the fuse as the current flows unrestricted, thus saving the ADC (panda/cobra.) I was thinking the 10% voltage drop I’m getting with the zener would be more than expected from leakage, although not sure. I’ll ask the folks at electronics stackexchange.


#6

what’s the voltage without the zener or diode? It sounds like you zener is installed backwards.


#7

The voltage without either diode is what i expect with the given resistor, 4.38 volts.
I think i have the diodes in the right direction: with the zener the current flows from 0V towards 4.38V at the ADC/sensor, i.e., there should be no flow unless the ADC side spikes above the breakdown of 4.7 volts. There’s a black ring on the zener that i hook up on the ADC side. I installed the other diode the other way (ring pointed away from the ADC) and connected 5.2V to the “other” side, i.e, the side away from my sensor and the ADC. That way there should be no flow across the diode until the 4.38 spiked above 5.2V.


#8

I visited the Electronics SE today; it had been a while. They’re not being quite as civil as I’d like, but a well-asked question (which I think yours is) should at least get a an informative answer.


#9

Here’s a real schematic. Question is posted to stackexchange.


#10

Nice drawing! I’ll go and follow, as I’d like to learn more about this.


#11

Question is answered (and more) on StackExchange here:

In summary, the zener doesn’t have a sharp knee at the breakdown voltage but starts leaking well below that point. In my case, with a 4.7V breakdown, it begins leaking at 2.75 volts.

Thanks, cacycleworks, for your help.


#12

Yaay, glad they were able to help. Another thing to do is set up some time to just “play” with the circuit with a couple potentiometers and zeners to see what happens. Use one or two voltmeters to monitor key places (like where the FEZ would be connected).

I recently tried to re-learn setting up a 555 timer as an oscillator – and all the examples on the net had good circuit layout but no one had values that worked. :stuck_out_tongue: I love this new excitement in embedded as I get to do things from my favorite semesters in EE, the digital labs.


#13

I would just add a regular diode(possibly shottky) to clamp the ADC pin and 3.3V. This will be switched off until the voltages rises above VCC+diode voltage drop.

If you are prepared to loose a bit of your ADC sensitivity you can also move some of your 250ohm resistor into series with the ADC and diode to limit to maximum current. If you could have a 50ohm resistor in line with the ADC and diode you would limit the maximum current to 240mA (should be lots of diodes that can handle this). In this case your voltage would swing 0.8v to 2V instead of 1 to 2.5V for your 4 to 10mA sensor. By doing this you can get rid of your fuse.


#14

A picture paints a thousand words.


#15

CaCycle: Yes, this new embedded field is hot stuff. I’m a software guy from way back and hesitant to spend much time on electronics, but, hey, i’ve always enjoyed learning, and plenty of learning is just what i’m getting.

Hagster-thanks for the input. Yes, Barbudor pointed out that solution (diode to Vcc) last year here: https://www.ghielectronics.com/community/forum/topic?id=6184 I’ve been using that but was wondering about increasing the sensitivity as my normal operation is limited to under 7mA sensor output. Only if there is a gas leak and air enters the system, or a short in the sensor, would the output jump up (to 18mA for air.) Someone mentioned a zener so i thought i’d investigate what it can do as using a zener eliminates my Vcc wire. Increasing the sensitivity by using a bigger resistor (458 ohm to give 3.3V at 7.2mA) seems to necessitate a fuse. Also, i’ve found out that, evidently, the analog pins need to be maxed at 3.3V, not being 5V tolerant like the digital pins. I’ve ordered a polyswitch fuse that triggers at 60mA. The soft knee of zeners is a bit difficult to work with so i might stick with the Vcc wire. BTW, I hooked up the wiring in your schematic, except using 68 ohm resistor instead of 50 that i don’t have, and wondering about something. The voltage across the diode is 0.79V (could be a bit high due to a cheap voltmeter) on 12V input but i was expecting something closer to zero. Would this be due to resistance of the diode?


#16

As far as I can make out all pins on the G120(COBRA) are 5v tolerant including the ADC pins.

The easiest way to increase your sensitivity is to oversample the ADC http://en.wikipedia.org/wiki/Oversampling#Resolution.

int val = 0;
For (int i = 0;i<4096;i++)   //number of extra bits = 2^(2*n) // 6 extra bits = 4096
{
val += ADC.Read();
}

The only draw back is the time it takes to run. I have used RLP to achieve the same thing, but a lot faster.

0.6V is standard for a diode. Your 0.79 does seem a bit high and probably indicates that you are putting a lot of current through it. You can get Shottky diodes that have a smaller voltage drop if you really need to, but I don’t think it’s critical in your application.


#17

As far as i can tell, all Cobra II pins are 5V tolerant, but the ADC is limited to 3.3V.
https://www.ghielectronics.com/community/forum/topic?id=12766
Thanks for the tip on how to increase sensitivity via multiple reads. I’ve got several threads demanding time on the ADC (looks like i have to put a lock on it) so it may be best to use it sparingly for each read. And 0.6 V is standard for a diode? I’ll keep that in mind, thanks.