Catching lead disconnects
Archiver
Posts: 46,084
Hi,
I'm using a PIC-based microcontroller to measure a resistance, and I am
trying to figure out how I can determine whether a lead attached to the
resistance has become disconnected. I am measuring the resistance of the
DUT (a resistor, of course) by supplying the DUT with a constant current
(1mA...the nominal resistance value that will be measured is 50ohms). I
then supply the voltage across the DUT to the microcontroller's A/D (I
amplify and offset the voltage before going into the A/D in order to get
my desired range and resolution in ohms).
The problem is that my application has a tendency for the measuring
leads to become disconnected from the DUT sporadically (the leads are
microprobes that get pushed onto the ends of the DUT, so I can't really
change the mechanical test setup). What I would like to detect is when
the leads have become disconnected in such a fashion that it will always
send a consistent voltage to the A/D. For example, if either one or both
of the leads becomes disconnected, and the voltage into the A/D is 5V
(Vmax) or 0V (Vmin) consistently, I could then do a timing routine in the
microcontroller's software to detect a lead disconnect (i.e. reading 0V
or 5V for a long period of time would indicate a disconnected lead
[noparse][[/noparse]infinite resistance]).
I'm using a difference amplifier to read the voltage across the DUT
right now, along with a limiting diode to ground just before the A/D.
This results in -0.7V to appear at the A/D input whenever one of the
leads becomes disconnected (so seeing a digital value of 0 for a long
time on the A/D indicates that one of the leads has popped off). BUT,
when *both* leads are disconnected, the floating voltages at the
difference amplifier's inputs get amplified and into the A/D...since
these floating voltages are wavering, the A/D sees a non-constant value
when both leads are disconnected. So, I've been able to lick the problem
when one of the leads has become disconnected, but not when both leads
come off.
So, now I question: how do I handle these floating voltages? Is this
the best way to measure resistance? Is there a chip solution out there
for accurately measuring resistances? I'm not sure that using an RC
discharge timing technique will give me the accuracy that I need (I would
like 0.2 ohm resolution with 50 ohm range...this equates to 8-bit
resolution over 25ohms-75ohms). Anyway, this has been a long
message/question, and I thank everybody in advance that may provide me
with helpful information.
-Robert Brown
Cambridge, MA
I'm using a PIC-based microcontroller to measure a resistance, and I am
trying to figure out how I can determine whether a lead attached to the
resistance has become disconnected. I am measuring the resistance of the
DUT (a resistor, of course) by supplying the DUT with a constant current
(1mA...the nominal resistance value that will be measured is 50ohms). I
then supply the voltage across the DUT to the microcontroller's A/D (I
amplify and offset the voltage before going into the A/D in order to get
my desired range and resolution in ohms).
The problem is that my application has a tendency for the measuring
leads to become disconnected from the DUT sporadically (the leads are
microprobes that get pushed onto the ends of the DUT, so I can't really
change the mechanical test setup). What I would like to detect is when
the leads have become disconnected in such a fashion that it will always
send a consistent voltage to the A/D. For example, if either one or both
of the leads becomes disconnected, and the voltage into the A/D is 5V
(Vmax) or 0V (Vmin) consistently, I could then do a timing routine in the
microcontroller's software to detect a lead disconnect (i.e. reading 0V
or 5V for a long period of time would indicate a disconnected lead
[noparse][[/noparse]infinite resistance]).
I'm using a difference amplifier to read the voltage across the DUT
right now, along with a limiting diode to ground just before the A/D.
This results in -0.7V to appear at the A/D input whenever one of the
leads becomes disconnected (so seeing a digital value of 0 for a long
time on the A/D indicates that one of the leads has popped off). BUT,
when *both* leads are disconnected, the floating voltages at the
difference amplifier's inputs get amplified and into the A/D...since
these floating voltages are wavering, the A/D sees a non-constant value
when both leads are disconnected. So, I've been able to lick the problem
when one of the leads has become disconnected, but not when both leads
come off.
So, now I question: how do I handle these floating voltages? Is this
the best way to measure resistance? Is there a chip solution out there
for accurately measuring resistances? I'm not sure that using an RC
discharge timing technique will give me the accuracy that I need (I would
like 0.2 ohm resolution with 50 ohm range...this equates to 8-bit
resolution over 25ohms-75ohms). Anyway, this has been a long
message/question, and I thank everybody in advance that may provide me
with helpful information.
-Robert Brown
Cambridge, MA
Comments
I don't know your constraints, but several thoughts come to mind:
* Why 1 ma test current? 10 ma would require 1/10 your gain, making opamp
offsets less significant, and improve noise/pickup immunity.
* Why float the circuit? Couldn't you have one test lead grounded in the
setup?
* Would 220K resistors to ground on both opamp inputs provide a predictable
output to the A/D when floating? 220K is only 0.02% of 50 ohms.
Just some thoughts,
Ray McArthur
Original Message
From: <robandanne@j...>
To: <basicstamps@egroups.com>
Sent: Saturday, April 29, 2000 2:59 PM
Subject: [noparse][[/noparse]basicstamps] Catching lead disconnects
> Hi,
>
> I'm using a PIC-based microcontroller to measure a resistance, and I am
> trying to figure out how I can determine whether a lead attached to the
> resistance has become disconnected. I am measuring the resistance of the
> DUT (a resistor, of course) by supplying the DUT with a constant current
> (1mA...the nominal resistance value that will be measured is 50ohms). I
> then supply the voltage across the DUT to the microcontroller's A/D (I
> amplify and offset the voltage before going into the A/D in order to get
> my desired range and resolution in ohms).
> The problem is that my application has a tendency for the measuring
> leads to become disconnected from the DUT sporadically (the leads are
> microprobes that get pushed onto the ends of the DUT, so I can't really
> change the mechanical test setup). What I would like to detect is when
> the leads have become disconnected in such a fashion that it will always
> send a consistent voltage to the A/D. For example, if either one or both
> of the leads becomes disconnected, and the voltage into the A/D is 5V
> (Vmax) or 0V (Vmin) consistently, I could then do a timing routine in the
> microcontroller's software to detect a lead disconnect (i.e. reading 0V
> or 5V for a long period of time would indicate a disconnected lead
> [noparse][[/noparse]infinite resistance]).
> I'm using a difference amplifier to read the voltage across the DUT
> right now, along with a limiting diode to ground just before the A/D.
> This results in -0.7V to appear at the A/D input whenever one of the
> leads becomes disconnected (so seeing a digital value of 0 for a long
> time on the A/D indicates that one of the leads has popped off). BUT,
> when *both* leads are disconnected, the floating voltages at the
> difference amplifier's inputs get amplified and into the A/D...since
> these floating voltages are wavering, the A/D sees a non-constant value
> when both leads are disconnected. So, I've been able to lick the problem
> when one of the leads has become disconnected, but not when both leads
> come off.
> So, now I question: how do I handle these floating voltages? Is this
> the best way to measure resistance? Is there a chip solution out there
> for accurately measuring resistances? I'm not sure that using an RC
> discharge timing technique will give me the accuracy that I need (I would
> like 0.2 ohm resolution with 50 ohm range...this equates to 8-bit
> resolution over 25ohms-75ohms). Anyway, this has been a long
> message/question, and I thank everybody in advance that may provide me
> with helpful information.
>
> -Robert Brown
> Cambridge, MA
>
>
>