# Digatal measuring a Resistror of 1ohm

#### Bill S

Joined Jan 31, 2015
10
I need to design a circuit that could measure 50 cables simultaneously and determine if all lines are within their resistance limit Rth.
Each good line measures about 0.7 ohm , so Rth could be 1 ohm or even 2 ohms. I can use a high-pin-count CPLD and a microcontroller to check each line at a time for continuity (and discontinuity with other lines). My problem is that Rth is so small and excessive current could flow (for 5V or 3.3V supply, my CPLD can't go to lower supply voltage).
1) First I considered of resistance measurement (Voltage dividers and ADCs) circuit and some digital switch ICs, but Ron resistance of these devices is about 70-80 ohm for 8-16 line IC capability or 4.5 ohm for 4 lines switch ICs which are more expensive. Also, Ron is the max value and it's not a fixed value, so there is a problem because Rth is so small (1 to 2 ohm) and it is within the flactuation of Ron. ADC should be of high resolution because Rth is so small. Furthermore using a lot of high resolution ADCs and no switch IC is much expensive.

The fact is that I don't need to accurately measure the R of a line, I just need to know if it is below Rth or over it. I mean, 10 ohm and 10Mohm does not make any difference to me. Also inductance of the cable (about 1 meter long) is unknown and constantly changing. So, using AC testing voltage and RLC series circuit with R being the cable's resistance is not practical, because there is L at the cable, too. I need to bend the cable while measuring.

2) Later I thought of a negative feedback opamp circuit (x 50 circuits) and a MUX, but Imax = Vtotal / Rtotal(min) = ( 5 - (-5) ) / ( 1+1 ) = 5 A is too much, and there is an undefined logic condition (0.8V to 3.3V) opamps output to MUX input.
For Rcable=0.7 ohm => Vout = 5V because OpAmp's V+ = 5V
For Rcable=1 ohm => Vout = 5V
For Rcable=1.5ohm => Vout = 3.3V (3.3 V should be accepted for Vin High for 5V supply MUX)
For Rcable >1.5ohm => Vout < 3.3V (Vin = Low) But Low = 0 to 0.8V , so 0.8V to 3.2V is undefined condition

3) Finally I changed my mind and decided using a comparator (x 50 circuits) instead of opamps, solving the logic undefined condition.
but Imax=5 A still exists.
Also, if R1 is small (10 or 100 ohm) Rth resolution is good but Imax is big (5V / 101ohm = 50mA , x2 per comparator => 100mA, x50 comparators => 5A).
If R1 is big (1K) then Imax is low (total 250mA) but resolution for Rth is just at the limit. LM339 has max 5mV Input offset voltage, so if Rcable = 1 ohm and Vio=5mV then I should use Rth=2ohm. And if I consider that good Rcable= 2ohm or below , then Rth should be 3ohm. Either case I need 2 sets of resistors 1% and I could not know if Rcable= 1ohm or 3ohm(max) when the comparator outputs low. But it's the most capable circuit I can think about.

Can anyone help ?

#### Attachments

• 20.4 KB Views: 10
• 15.5 KB Views: 9
• 15.5 KB Views: 10
Last edited:

#### dl324

Joined Mar 30, 2015
16,203
Use a current source instead of a voltage source for your comparator circuit and set the current to a reasonable value based on the resistance range you expect.

#### Bill S

Joined Jan 31, 2015
10
You mean 50 current source ICs, than just tie them to 5V ? Let's say 10mA per current source x 1ohm =10mV (Vio=5mv) , total I=10mA x 50 =0.5A . Is it ok ?

#### dl324

Joined Mar 30, 2015
16,203
10mV is low enough that you need to be concerned about the offset voltage of the comparator.

You say that you need to measure the resistances simultaneously, but you're using a multiplexer; so you're really reading them one at a time. The MCU couldn't measure 50 inputs at the same time even if it had 50 ADC inputs.

If you just need the values to be read quickly, you could avoid having 50 current sources and comparators.

#### Bill S

Joined Jan 31, 2015
10
You are right. But how can I feed the one constant current source to a line at a time ?

#### BR-549

Joined Sep 22, 2013
4,928
I don't understand what you are trying to do.

#### Bill S

Joined Jan 31, 2015
10
I'm trying to measure cables which have 50 lines each, and special connectors on each end, at once. Resistance of a good known line is 0.7 ohm but 1 or 1.5 or even 2 ohm if fine. A microcontroller with LCD should list all bad lines after testing a 50-line cable.

#### BR-549

Joined Sep 22, 2013
4,928
Then it will depend on the "cable". Flat cable...bundled cable...twisted cable.......

Length and other factors of the "cable" will also guide you to a successful strategy.

#### Bill S

Joined Jan 31, 2015
10
Also, about the current source solution, it does not work because:

Let's say that a CPLD activates one current source at a time which is connected to each line of the cable.
If a good line is shorted with an other line, the current source attached to the 1st line will try to feed the predefined current but because 2 lines are shorted, the current source will feed half of the current to each line (supposing the 2 lines have the same resistance). The opamps will read half of the good voltage drop at their inputs, and the resulting output will be that both lines are bad. But one line is of good continuity and the other line is bad (shorted to the 1st line).

So constant Current Source idea is bad

#### Bill S

Joined Jan 31, 2015
10

#### BR-549

Joined Sep 22, 2013
4,928
Why not make a jig.....with voltage going in one cable socket.....and the other socket connected to a circuit board. The board will have a comparator and a led for each cable strand. A comparator can decide if the drop is too much.....and not lite the led. There is only a high side tolerance.

All tested at same time. If you individually multiplex.......watch out for reactance.

I could not understand the first post......so I asked.

#### R!f@@

Joined Apr 2, 2009
9,894
Before TS said check resistance and now the cables might have a short circuit.

Either way a current source is the best way.

#### RichardO

Joined May 4, 2013
2,270
Also, about the current source solution, it does not work because:

Let's say that a CPLD activates one current source at a time which is connected to each line of the cable.
If a good line is shorted with an other line, the current source attached to the 1st line will try to feed the predefined current but because 2 lines are shorted, the current source will feed half of the current to each line (supposing the 2 lines have the same resistance). The opamps will read half of the good voltage drop at their inputs, and the resulting output will be that both lines are bad. But one line is of good continuity and the other line is bad (shorted to the 1st line).

So constant Current Source idea is bad
In addition to testing that every conductor is less than 1 ohm of resistance you must also test for every combination of conductors shorted to each other. This can be done by driving each wire, in sequence, and testing to see if the driving signal appears on any other wire.

There is no alternative to having a current source. You must somehow limit the current through the wire. The current source can be as simple as a resistor since you do not need a precision reading of your wire's resistance.

#### Bill S

Joined Jan 31, 2015
10
About the constant current sources, please see these 2 images. First img001 , then img002
This is the best solution I can think about, using current sources.
I can't use less that 3 CPLDs.
Can anyone think of something better solution ?
Maybe a lower-part-count solution ?

I scanned them to speed things up. Also visual presentation works better.

#### Attachments

• 151.8 KB Views: 8
• 219.9 KB Views: 7

#### Bill S

Joined Jan 31, 2015
10
Furthermore, if R1=4ohm and R2=4ohm and shorted , then:
check 1-1: LM339 #1 Vin- = 1.25mA x 4ohm = 5mV BAD (which is OK)
check 1-2: LM339 #2 Vin- = 1.25mA x 4ohm = 5mV > 2.5mV not shorted (which is NOT OK)
check 2-1: LM339 #1 Vin- = 1.25mA x 4ohm = 5mV > 2.5mV not shorted (which is NOT OK)
check 2-2: LM339 #2 Vin- = 1.25mA x 4ohm = 5mV BAD (which is OK)

So, I can't see the short here !!!

#### dl324

Joined Mar 30, 2015
16,203
So, I can't see the short here !!!
Can shorts appear between any wires? Or is it more likely to occur between adjacent wires?

Do you want to check for continuity with appropriate resistance, shorts, and opens?