Circuit for protecting analog inputs?
2006-07-08 by Ryan
Yahoo Groups archive
Index last updated: 2026-04-28 22:41 UTC
Thread
2006-07-08 by Ryan
Hi everyone, I need to protect an analog input for an AVR. Protect it from ESD, users connecting it wrong (i.e. to +12V power), etc. Any suggestions on what to use? Unity gain opamp? "transorb" or similar transient device??? Discussion welcome. Thanks, Ryan
2006-07-09 by Ned Konz
Ryan wrote:
> Hi everyone,
>
> I need to protect an analog input for an AVR. Protect it from ESD,
> users connecting it wrong (i.e. to +12V power), etc. Any suggestions
> on what to use? Unity gain opamp? "transorb" or similar transient
> device??? Discussion welcome. Thanks,
There have been a number of good responses here. However, most are
overkill IMO. You don't really need external diodes, for instance, as
long as you can limit the input current into the internal diodes to less
than 1-10mA or so (see the data sheet).
You can easily simulate various ESD scenarios with a SPICE program. I've
done so, and found that the R/C network that I initially wanted to use
wasn't safe enough. Problem is that when the C charges up to where the
input protection diodes want to start conducting, you can have
additional energy that has to go somewhere. And it goes through the
diodes. Adding a second R between the R/C junction and the input pin
then lets you limit the current into the input diodes to something safe,
even with a multi-KV input.
You also don't say what input voltage range you're looking at, nor what
frequencies you're trying to measure.
Assuming that you're reading sensor input (slowly varying) and can stand
some filtering, this kind of circuit can work quite well (and will also
do some low-pass filtering for you).
Here's an example of an input protection circuit that I've used for a
0V-to-Vcc input. It has a rolloff around 160 Hz.
The input impedance seen by the AVR pin is effectively just the 1K,
because the 10nF is so much bigger than the internal s/h capacitor.
input --- 100K -+-- 1K -- AVR pin
|
10nF
|
----------+
Here's the SPICE (SwitcherCADIII) model for this (testing a +/-7.5KV ESD
input discharged from a 100pF cap via a 1.5K resistance). I used 1N914
diodes to model the input diodes (I'm only interested in the current
through them).
Note that the peak current through the negative diode D1 is less than
5mA; through D2 it's less than 1mA.
With a different ESD model (say 200pF through 1 ohms) the peak current
is still under 10mA worst case with the +/- 7.5KV inputs.
* I:\src\SWCadIII\esdtest2.asc
V1 N002 0 -7.5k
C1 N006 0 100p
C2 N007 0 0.01?
R1 N007 input 100k
R2 P001 N006 1.5k
S1 P001 input 0 N004 MySwitch
S2 N002 N006 N004 0 MySwitch
D2 output N008 1N914
D1 0 output 1N914
V2 N008 0 5
V3 N004 0 PWL(0 0 10u 0 10.001u 1 100u 1 100.001u 0 200u 0 200.001u -1
300u -1 300.001u 0)
R3 output N007 1000
C3 output 0 5p
V4 input 0 1 AC 1 Rser=10k
V5 N001 0 7.5K
C4 N005 0 100p
R4 P002 N005 1.5k
S3 N001 N005 N003 0 MySwitch
V6 N003 0 PWL(0 0 400u 0 400.001u 1 500u 1 500.001u 0 600u 0 600.001u -1
700u -1 700.001u 0)
S4 P002 input 0 N003 MySwitch
.model D D
.lib C:\Program Files\LTC\SwCADIII\lib\cmp\standard.dio
;ac oct 10 1 1e6
.model MySwitch SW(Vt=0.5 vh=0.1)
.tran 800u
.backanno
.end
Enjoy,
--
Ned Konz
ned@bike-nomad.com
http://bike-nomad.com2006-07-11 by Alexandre GuimarĂ£es
Hi,
This thread is getting more and more interesting.... And I am thinking
more and more how much overkill I do in many of my projects... At least they
do not blow on my face frequently :-)
What about using a "spark gap" on the PCB right where the signal get's
inside the box ? I use it at all my DB-9 and DB-25's.. This guarantees that
the voltages inside the box will never be over 2KV.. This way we could make
a input circuit with just passive components that is really idiot proof
unless someone plugs the inputs to 127 volts continually ! We have also to
be carefull with the clearance over the resistors, 2 in series would
probably be a better option.. The "spark gap" is just a semi-circle on the
PCB without solder mask placed very close to the DB-25 pins and connect to
ground.
That would be something like this:
input -+- 47K ---------- 47K -+-- 1K -- AVR pin
| |
Spark Gap 10nF
with 0.18 mm Clearance |
| |
-+----------------------+
Is there any "normal" situation in a automotive environment that would
blow the AVR with this input circuit ???
Best regards,
Alexandre Guimaraes> There have been a number of good responses here. However, most are > overkill IMO. You don't really need external diodes, for instance, as > long as you can limit the input current into the internal diodes to less > than 1-10mA or so (see the data sheet). > > You can easily simulate various ESD scenarios with a SPICE program. I've > done so, and found that the R/C network that I initially wanted to use > wasn't safe enough. Problem is that when the C charges up to where the > input protection diodes want to start conducting, you can have > additional energy that has to go somewhere. And it goes through the > diodes. Adding a second R between the R/C junction and the input pin > then lets you limit the current into the input diodes to something safe, > even with a multi-KV input. > > Here's an example of an input protection circuit that I've used for a > 0V-to-Vcc input. It has a rolloff around 160 Hz. > > The input impedance seen by the AVR pin is effectively just the 1K, > because the 10nF is so much bigger than the internal s/h capacitor. > > > input --- 100K -+-- 1K -- AVR pin > | > 10nF > | > ----------+