Maker Pro
Maker Pro

how to get ground referenced amplified V difference from high side(250VDC) shunt?

J

John Fields

. FWB REG
. +----+ +-----+
.20AC>-+ +--|~ +|---+---| |--+------------+------>Vcc
. P||S | | |+ +--+--+ | |
. R||E | | [BFC] | | |
. I||C | | | | +--|----+ |
.20AC>-+ +--|~ -|-+-+------+ | | | | ADC
. +----+ | | Vcc [RFB] +---+---+
.250DC>-----------+-+-[Rs]--+---+-|-\ | | Vcc |
. | | | >--+---|IN OUT1|-->ADOUT1
. +---------|---+-|+/ . .
. | | GND | OUT8|-->ADOUT8
. | | | | GND |
. | +--+ +---+---+
. [LOAD] | |
. | +------------+
. |
.250GND>--------------------+

---
oOPS...

It should look like this:

.. FWB REG
.. +----+ +-----+
..120AC>-+ +--|~ +|---+---| |--+------------+------>Vcc
.. P||S | | |+ +--+--+ | |
.. R||E | | [BFC] | | |
.. I||C | | | | | |
..120AC>-+ +--|~ -|-+-+------+ +--|----+ |
.. +----+ | | | | | ADC
.. | | Vcc [RFB] +---+---+
..250DC>------------+-+-[Rs]--+---+-|-\ | | Vcc |
.. | | | >--+---|IN OUT1|-->ADOUT1
.. +---------|---+-|+/ . .
.. | | GND | OUT8|-->ADOUT8
.. | | | | GND |
.. | +--+ +---+---+
.. [LOAD] | |
.. | +------------+
.. |
..250GND>---------------------+
 
D

D from BC

Harry said:
Winfield wrote
Harry Dellamano wrote:
Winfield Hill wrote
John Larkin wrote:
Winfield Hill wrote:
John Larkin wrote:
You could hang a zener on the bus with a big resistor to ground,
and derive a -5 volt supply up there. Then use a r-r opamp.
9, 10 parts maybe to deliver a grounded output voltage.
Yes, and thanks to a lower offset voltage, more
accurate as well. Here's the circuit I used in
my RIS-496 +/-250-volt amplifier, adjusted for
the O.P.'s specs, with Jan's extra resistor:
10.0 +250V Iout
------+---+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '----, |
\ 200 | |
/ 1% +------|--+---,
| | | | |
+--------|----, | | | 7.5V zener
| _|_ | | _|_/ |
Q1 e / -|--' | /_\ _|_
mpsa92 b --< | | | --- 0.1uF
PNP c \__+|----' | |
| | LT1783 | |
| +---------+---'
\ |
/ \ 330k
\ 100k / 0.5W
| \
| |
| gnd
| __
+-----|+ \
| | >--+--- 0 to +5.0V for
\ ,-|-_/ | 0 to 10mA load
/ |________|
\
/ 10.0k 1%
|
gnd
9 parts exactly! 10 if you include the bottom amp.
It does have fewer parts, 10 vs 15. The LT1783
RRIO rail-rail 300uA opamp has f_T = 1.5MHz, so
the O.P. might get his desired bandwidth.
Not through that 100K resistor. Dang, 11 parts!
[ snip ]
Actually, my circuit above is a short-changing cheat!
It has no standing bias for the critical transistor,
Q1, and hence cannot perform to the desired bandwidth
when Iout is near 0mA. Adding a bias like the original
non-opamp BJT current-mirror circuit, boosts the parts
count to 15, exactly the same as the all-BJT circuit.
So it's a tie. Go to the trouble of finding a suitable
low-current high-side opamp and get better zero-current
accuracy without trimming. Or something like that.
high-voltage fast high-side current monitor
10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 200 / |
| | 1% \ |
+---------|----, / +---,
| _|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
mpsa92 b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| LT1783 | | | |
| '--------|---+---+---,
/ | |
\ 1k 1.0M | / 330k
/ / \ 0.5W
| Ib = 0.25 \ Ia /
| to 0.75mA / |
| | gnd
| 10.0k |
+--/\/\---, | 10.0k
| __ | +--/\/\---, 0 to +5V
'--|- \ | 10.0k | __ | out, for
| >--+--/\/\--+--|- \ | 0 to 10mA
gnd ---|+_/ | >--+------
gnd ---|+_/
Going from left to right on the bottom, call the three 10K resistors,
R1, R2, R3 and op amps U1 and U2. Remove U1and R2. Tie the open side of
R1 to ground. Remove the ground on U2 pos input and tie to the junction
of R1 and the 1k. Two less parts and a single supply op amps. Now
someone will complain of the reduced CMR of U2 with it's inputs flopping
around at 1.5MHz but only maybe 50dB is needed..
OK, just to complete the ASCII record.
fast high-voltage high-side current monitor, r2
10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 190 / |
| | 1% \ |
+---------|----, / +---,
| _|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
mpsa92 b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| LT1783 | | | |
\ '--------|---+---+
/ 1k | |
\ 1.0M \ / 330k
| Ib = 0.25 / \ 0.5W
| to 0.75mA \ Ia /
| | |
| ,-------------' gnd
| | 10.0k
| +---/\/\---,
| | __ | 0 to +5V out
| '--|- \ | for 0 to 10mA
| | >---+------
+-------|+_/
| 10.0k
'---/\/\/--- gnd
Not sure of 1.5MHz BW, Q1 has a big pole C to B.

The mpsa92 has a low Ccb = 0.5pF at 200 volts,
according to Motorola's plots, and hopefully the
LT1783 opamp is vigorously driving the base node.
Still, the G = 10k/200 = 50 stage gain incurred
by moving the 10k resistor may be a killer, as it
implies an f_T of at least 50MHz for the 'A92. To
get that high f_T we may need to further boost the
bias current, say to 1mA. And the poor opamp, with
its 1.5MHz f_T, may also fall short of the goal.
If a faster opamp can be found, that would help, it
should be a low-power type (the LT1783 takes 300uA).
Alternately, the poor mpsa92 and the opamp can be
helped with a simple cascode stage. That way we
can select a faster low-voltage transistor for Q1.
Fast high-voltage high-side current monitor, r2-a
10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 190 / |
| | 1% \ |
+---------|----, / +---,
| LT1783_|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
fast b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| | | | |
Q2 e +--------|---+---+
mpsa92 b ------' | |
c 220k \ / 330k
| Ib = 1.1 1W / \ 0.5W
| to 1.6mA \ Ia /
| | |
1k / ,-------------' gnd
\ | 10.0k
/ +---/\/\---,
| | __ | 0 to +5V out
| '--|- \ | for 0 to 10mA
| | >---+------
+-------|+_/
| 10.0k
'---/\/\/--- gnd
Considering the painful required G=50 level-translating
stage, an alternate would be to add gain with a wideband
G = 10 opamp topside before this stage. But, I suspect
that opamp will require even more current than the 1.1mA
we just dedicated to the mpsA92. I dunno, maybe my two
opamp summing-junction approach wasn't so bad after all,
because it relaxed the high-frequency gain requirement
from the 'A92 and gave it to the low-side opamps, which
can spend whatever power is needed to nail the summing-
junction impedance and help out the hard-working mpsA92.

Let's get a gain of ten out of the bottom single supply
op amp, reducing the top section gain to 5.
Change the 10k to ground to 1.0K. Change the 10K feedback
to 9.90K. Add a 1.10K from the op-amp neg input to ground.
Top side gain bandwidth restored.

Yes, that occurred to me too, good idea. 15 parts.
In light of the lower gain, I reduced Q1's bias.

Fast high-voltage high-side current monitor, r2-b

10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 190 / |
| | 1% \ |
+---------|----, / +---,
| LT1783_|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
fast b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| | | | |
Q2 e +--------|---+---+
mpsa92 b ------' | |
c 470k \ / 330k
| Ib = 0.5 0.5W / \ 0.5W
| to 1.0mA \ Ia /
| | |
1k / ,------' gnd
\ | 9.90k
/ +---/\/\---,
| 1.10k | __ | 0 to +5V out
| ,--/\/\--+--|- \ | for 0 to 10mA
| gnd | >---+------
+--------------|+_/
| 1.00k
'---/\/\/--- gnd

Neat...
I've tried to tackle a similar impedance/level translation problem
some time ago and came up with a dozen lame designs and few good ones.

One design was based on the LTC6101 differential inputs across the I
sense resistor.


D from BC
 
W

Winfield Hill

D said:
Neat...
I've tried to tackle a similar impedance/level translation problem
some time ago and came up with a dozen lame designs and few good ones.

One design was based on the LTC6101 differential inputs across the
I sense resistor.

Yes, but that IC only goes to 100V and 100kHz, the design
above can be easily extended to 1kV and goes beyond 1MHz.
 
J

John Larkin

A cascode mpsA92 stage is definitely a good idea, to
further reduce the burden on Q1 and the opamp at 1MHz.
Q2 still needs to be a Darlington for good accuracy,
so that's 17 parts. But they all earn their keep.

Fast high-voltage high-side current monitor, r1-c

10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 190 / |
| | 1% \ |
+---------|----, / +---,
| _|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
fast b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| | | | |
Q2 e +--------|---+---+
mpsa92 b ------' | |
c | \
| Ib = 0.25 | Ia / 330k
| to 0.75mA / \ 0.5W
/ \ |
\ 1k 1.0M / gnd
/ |
| 10.0k |
+--/\/\---, | 10.0k
| __ | +--/\/\---, 0 to +5V
'--|- \ | 10.0k | __ | out, for
| >--+--/\/\--+--|- \ | 0 to 10mA
gnd ---|+_/ | >--+------
gnd ---|+_/



Two more problems: if the amp rails, it can cave in the power supply,
maybe latching things up. Or it might turn off Q2 through the b-c
junction of Q1.

A fet for Q1 helps. A resistor between Q1 and Q2 fixes the other
problem.

It's almost appealing to go back to discretes, especially for a fast
differential version.


Simple circuits can have so many hazards!


John
 
J

John Fields

This oughta work: (View in Courier)

. FWB REG
. +----+ +-----+
.20AC>-+ +--|~ +|---+---| |--+------------+------>Vcc
. P||S | | |+ +--+--+ | |
. R||E | | [BFC] | | |
. I||C | | | | +--|----+ |
.20AC>-+ +--|~ -|-+-+------+ | | | | ADC
. +----+ | | Vcc [RFB] +---+---+
.250DC>-----------+-+-[Rs]--+---+-|-\ | | Vcc |
. | | | >--+---|IN OUT1|-->ADOUT1
. +---------|---+-|+/ . .
. | | GND | OUT8|-->ADOUT8
. | | | | GND |
. | +--+ +---+---+
. [LOAD] | |
. | +------------+
. |
.250GND>--------------------+

Typical ADC output circuitry:

. Vcc
. |
. [R]
. |
. | OPTO
. +-+----+
. | A C|--> To logic
. | |
. | K E|--> To logic ground
. +-+----+
. |
. D
.ADOUTn>--G
. S
. |
.250DC>-----+

Note that everything except the load is running with 250VCD as its
common, so if you need to talk to the ADC you'll need to do it
through optocouplers unless you can use the same common for your
micro. Pretty dangerous if you don't know what you're doing!

No offense intended. :)

Hi John - no offense taken :) The only way to really offend me these
days is to insult my taste in beer, or maybe say that my mom wears
combat boots. Unfortunately, I really need everything to have a common
ground, including the load. If I didn't need that I would think that
just using a low side shunt resistor would be easiest, wouldn't it?

---
Sure, but's that not what I was suggesting.

Drawing it this way:

.. FWB REG
.. +----+ +-----+
..120AC>-+ +--|~ +|---+---| |--+------------+------>Vcc
.. P||S | | |+ +--+--+ | |
.. R||E | | [BFC] | | |
.. I||C | | | | +--|----+ |
..120AC>-+ +--|~ -|-+-+------+ | | | |
.. +----+ | | Vcc [RFB] | ADC
.. | | | +---+---+
..250VDC>-----------+-+-[Rs]--+---+-|-\ | | Vcc |
.. | | | >--+---|IN OUT1|-->ADOUT1
.. +---------|---+-|+/ . .
.. | | GND | OUT8|-->ADOUT8
.. | | | | GND |
.. | +--+ +---+---+
.. [LOAD] | |
.. | +------------+
.. |
..GND>------------------------+

May make the concept easier to understand, which is that you can
float everything on the 250VDC signal, using it as a pseudoground,
and do your processing something like this:


250 + LVDC
/
+----------+----------+---------+ Vcc
| | | | |
[LVDC SUPPLY] | | | [R]
| | |ADC |µC OPTO |
| +---|-\ +--+--+ +---+---+ +----+ |
| | | >--+--|A D|--|I/O I/O|--|A C|-+->OUT
250VDC---+-----|-+-|+/ | +--+--+ +---+---+ | |
| | | | | | | | |
[RS] | +--+----|-----+---------+------|K E|-+->GND
| | | \ +----+ |
+-----+--[RF]---+ PSEUDOGROUND |
| |
[RL] |
| |
GND>-----+---------------MAYBE-------------------------+

What does your system look like, anyway?

Out of curiosity - is there a reason that my instrumentation amp idea
would not work well? There'd be a little correction needed as the
resistive dividers would be pulling some current through the shunt,

---
Only the one on the load side.
---
but otherwise, I thought it'd be OK. I was thinking the only thing I'd
have to worry about is finding an instrumentation amp with
sufficiently low input offset voltage, but with some cleverness that
could be cancelled out.

---
Here's what you're talking about:,

E1 E2
| R5 |
+250>--+--[SHUNT]--+--[LOAD]--+
| | |
[R1] [R3] |
| | |
+-E3 +-E4 |
| | |
[R2] [R4] |
| | |
GND>---+-----------+----------+

and if we wanted to start putting some numbers in there, we'd start
with the shunt and the load.

Since you're looking for low millivolts out of the shunt let's
assume the entire 250V is dropped across the load. Then with your
specified 10mA max current into the load, it'll look like:

E 250V
R = --- = ------- = 25000 ohms
I 0.01A

Now, assuming "low millivolts" means 10mV with 10mA through the
shunt and the load, that makes the shunt resistance:


E 0.01V
R = --- = ------- = 1.0 ohm
I 0.01A


So your circuit now looks like this:

E1 E3
| R5 |
+250>--+--[1R]--+--[25kR]--+
| | |
[R1] [R3] |
| | |
+-E2 +--E4 |
| | |
[R2] [R4] |
| | |
GND>---+--------+----------+

Now, assume you've got a rail-to-rail input opamp which you can
drive from a 25V supply and which has a common mode range from 0V to
the supply voltage. Then its inputs will have to be slightly below
25V and to get there you'll need to drop the 250V to <25V.

Just to get close to the ratio, let's force 1mA through R2 in order
to drop 24.9V across it. Then:


E2 24.9V
R2 = ---- = -------- = 24900 ohms
I 0.001A

a standard 1% value!



To find R1 we can say:

E1 - E2 250V - 24.9V
R1 = --------- = -------------- = 225100 ohms
I 0.001A

The closest standard 1% resistor is 226k, which isn't bad.

So now your circuit looks like this:

E1 E3
| R5 |
+250>--+--[1R]--+--[25kR]--+
| | |
R1[226k] [226k]R3 |
| | |
E2--+<--E5-->+--E4 |
| | |
R2[24k9] [24k9]R4 |
| | |
GND>---+--------+----------+

With the 250V at zero, E2 = E4 = 0V, and the output of your
instrumentation amp would be 0V, ideally.

With the supply at 250V, though, we have for E2:

E1 * R2 250V * 24.9kR
E2 = --------- = ---------------- = 24.81068 volts
R1 + R2 226kR + 24.9kR


For E3, assuming the load takes 10mA and R3R4 takes 1mA, we have:


E3 = E1 - (I * R5) = 250V - (11mA * 1R) = 250V - 11mV =
249.989V


And for E4:


E3 * R4 249.989V * 24.9kR
E4 = --------- = -------------------- = 24.80959 volts
R3 + R4 226kR + 24.9kR


The difference between E2 and E4 is:


E5 = E2 - E4 = 24.81068V - 24.80959V = 0.00109 volts


so to get 5V out of your opamp with 0.00109 volts in, you'll
need a gain of:


Eout 5.000V
Av = ------ = ---------- ~ 4587
Ein 0.00109V


Tricky at 1MHz. ;)

Of course you could always increase the resistance of the shunt.

10 ohms would get you to a gain of ~ 459 and 100 ohms to ~ 46.
 
J

JosephKK

Winfield Hill [email protected] posted to sci.electronics.design:
Yes, in all my drawings, the supply is on the left,
and the load on the right. Sorry for the confusion!

As seems to have been conventional for North America and most of
Europe since the 1930's or so.
 
J

John Fields

This oughta work: (View in Courier)

. FWB REG
. +----+ +-----+
.20AC>-+ +--|~ +|---+---| |--+------------+------>Vcc
. P||S | | |+ +--+--+ | |
. R||E | | [BFC] | | |
. I||C | | | | +--|----+ |
.20AC>-+ +--|~ -|-+-+------+ | | | | ADC
. +----+ | | Vcc [RFB] +---+---+
.250DC>-----------+-+-[Rs]--+---+-|-\ | | Vcc |
. | | | >--+---|IN OUT1|-->ADOUT1
. +---------|---+-|+/ . .
. | | GND | OUT8|-->ADOUT8
. | | | | GND |
. | +--+ +---+---+
. [LOAD] | |
. | +------------+
. |
.250GND>--------------------+

Typical ADC output circuitry:

. Vcc
. |
. [R]
. |
. | OPTO
. +-+----+
. | A C|--> To logic
. | |
. | K E|--> To logic ground
. +-+----+
. |
. D
.ADOUTn>--G
. S
. |
.250DC>-----+

Note that everything except the load is running with 250VCD as its
common, so if you need to talk to the ADC you'll need to do it
through optocouplers unless you can use the same common for your
micro. Pretty dangerous if you don't know what you're doing!

No offense intended. :)

Hi John - no offense taken :) The only way to really offend me these
days is to insult my taste in beer, or maybe say that my mom wears
combat boots. Unfortunately, I really need everything to have a common
ground, including the load. If I didn't need that I would think that
just using a low side shunt resistor would be easiest, wouldn't it?

---
Sure, but's that not what I was suggesting.

Drawing it this way:

. FWB REG
. +----+ +-----+
.120AC>-+ +--|~ +|---+---| |--+------------+------>Vcc
. P||S | | |+ +--+--+ | |
. R||E | | [BFC] | | |
. I||C | | | | +--|----+ |
.120AC>-+ +--|~ -|-+-+------+ | | | |
. +----+ | | | [RFB] | ADC
. | | Vcc | +---+---+
.250VDC>-----------+-+-[Rs]--+---+-|-\ | | Vcc |
. | | | >--+---|IN OUT1|-->ADOUT1
. +---------|---+-|+/ . .
. | | GND | OUT8|-->ADOUT8
. | | | | GND |
. | +--+ +---+---+
. [LOAD] | |
. | +------------+
. |
.GND>------------------------+

May make the concept easier to understand, which is that you can
float everything on the 250VDC signal, using it as a pseudoground,
and do your processing something like this:


250 + LVDC
/
+----------+----------+---------+ Vcc
| | | | |
[LVDC SUPPLY] | | | [R]
| | |ADC |µC OPTO |
| +---|-\ +--+--+ +---+---+ +----+ |
| | | >--+--|A D|--|I/O I/O|--|A C|-+->OUT
250VDC---+-----|-+-|+/ | +--+--+ +---+---+ | |
| | | | | | | | |
[RS] | +--+----|-----+---------+------|K E|-+->GND
| | | \ +----+ |
+-----+--[RF]---+ PSEUDOGROUND |
| |
[RL] |
| |
GND>-----+---------------MAYBE-------------------------+

What does your system look like, anyway?

Out of curiosity - is there a reason that my instrumentation amp idea
would not work well? There'd be a little correction needed as the
resistive dividers would be pulling some current through the shunt,

---
Only the one on the load side.
---
but otherwise, I thought it'd be OK. I was thinking the only thing I'd
have to worry about is finding an instrumentation amp with
sufficiently low input offset voltage, but with some cleverness that
could be cancelled out.

---
Here's what you're talking about:,

E1 E2
| R5 |
+250>--+--[SHUNT]--+--[LOAD]--+
| | |
[R1] [R3] |
| | |
+-E3 +-E4 |
| | |
[R2] [R4] |
| | |
GND>---+-----------+----------+

and if we wanted to start putting some numbers in there, we'd start
with the shunt and the load.

Since you're looking for low millivolts out of the shunt let's
assume the entire 250V is dropped across the load. Then with your
specified 10mA max current into the load, it'll look like:

E 250V
R = --- = ------- = 25000 ohms
I 0.01A

Now, assuming "low millivolts" means 10mV with 10mA through the
shunt and the load, that makes the shunt resistance:


E 0.01V
R = --- = ------- = 1.0 ohm
I 0.01A


So your circuit now looks like this:

E1 E3
| R5 |
+250>--+--[1R]--+--[25kR]--+
| | |
[R1] [R3] |
| | |
+-E2 +--E4 |
| | |
[R2] [R4] |
| | |
GND>---+--------+----------+

Now, assume you've got a rail-to-rail input opamp which you can
drive from a 25V supply and which has a common mode range from 0V to
the supply voltage. Then its inputs will have to be slightly below
25V and to get there you'll need to drop the 250V to <25V.

Just to get close to the ratio, let's force 1mA through R2 in order
to drop 24.9V across it. Then:


E2 24.9V
R2 = ---- = -------- = 24900 ohms
I 0.001A

a standard 1% value!



To find R1 we can say:

E1 - E2 250V - 24.9V
R1 = --------- = -------------- = 225100 ohms
I 0.001A

The closest standard 1% resistor is 226k, which isn't bad.

So now your circuit looks like this:

E1 E3
| R5 |
+250>--+--[1R]--+--[25kR]--+
| | |
R1[226k] [226k]R3 |
| | |
E2--+<--E5-->+--E4 |
| | |
R2[24k9] [24k9]R4 |
| | |
GND>---+--------+----------+

With the 250V at zero, E2 = E4 = 0V, and the output of your
instrumentation amp would be 0V, ideally.

With the supply at 250V, though, we have for E2:

E1 * R2 250V * 24.9kR
E2 = --------- = ---------------- = 24.81068 volts
R1 + R2 226kR + 24.9kR


For E3, assuming the load takes 10mA and R3R4 takes 1mA, we have:


E3 = E1 - (I * R5) = 250V - (11mA * 1R) = 250V - 11mV =
249.989V


And for E4:


E3 * R4 249.989V * 24.9kR
E4 = --------- = -------------------- = 24.80959 volts
R3 + R4 226kR + 24.9kR


The difference between E2 and E4 is:


E5 = E2 - E4 = 24.81068V - 24.80959V = 0.00109 volts


so to get 5V out of your opamp with 0.00109 volts in, you'll
need a gain of:


Eout 5.000V
Av = ------ = ---------- ~ 4587
Ein 0.00109V


Tricky at 1MHz. ;)

Of course you could always increase the resistance of the shunt.

10 ohms would get you to a gain of ~ 459 and 100 ohms to ~ 46.

---
Or, if you wanted to do it my way:

Version 4
SHEET 1 1216 1252
WIRE -48 384 -224 384
WIRE 224 384 80 384
WIRE 432 384 304 384
WIRE 560 384 432 384
WIRE 752 384 640 384
WIRE -224 448 -224 384
WIRE 608 464 192 464
WIRE 608 496 608 464
WIRE 432 544 432 384
WIRE 576 544 432 544
WIRE -224 560 -224 528
WIRE -224 560 -288 560
WIRE 752 576 752 384
WIRE 752 576 720 576
WIRE 784 576 752 576
WIRE -224 592 -224 560
WIRE -48 592 -48 384
WIRE 80 592 80 384
WIRE 192 592 192 464
WIRE 432 592 432 544
WIRE 576 608 512 608
WIRE -224 704 -224 672
WIRE -48 704 -48 672
WIRE -48 704 -224 704
WIRE 80 704 80 672
WIRE 80 704 -48 704
WIRE 192 704 192 672
WIRE 192 704 80 704
WIRE 432 704 432 672
WIRE 432 704 192 704
WIRE 512 704 512 608
WIRE 512 704 432 704
WIRE 608 704 608 656
WIRE 608 704 512 704
WIRE 656 704 656 656
WIRE 656 704 608 704
WIRE 752 704 656 704
WIRE -224 784 -224 704
FLAG -224 784 0
FLAG 752 704 +250VDC
SYMBOL res 656 368 R90
WINDOW 0 -47 59 VBottom 0
WINDOW 3 -44 59 VTop 0
SYMATTR InstName R4
SYMATTR Value 499
SYMBOL voltage 80 688 R180
WINDOW 3 24 104 Invisible 0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
WINDOW 0 15 113 Left 0
SYMATTR Value PULSE(0 250 1 3e-6)
SYMATTR InstName V3
SYMBOL res 208 400 R270
WINDOW 0 70 56 VTop 0
WINDOW 3 69 56 VBottom 0
SYMATTR InstName R9
SYMATTR Value 25k
SYMBOL res 448 688 R180
WINDOW 0 36 76 Left 0
WINDOW 3 46 46 Left 0
SYMATTR InstName R5
SYMATTR Value 1
SYMBOL voltage 192 576 R0
WINDOW 3 24 104 Invisible 0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
WINDOW 0 -37 0 Left 0
SYMATTR Value 10
SYMATTR InstName V1
SYMBOL Opamps\\LT6230-10 608 576 R0
SYMATTR InstName U1
SYMBOL res -240 432 R0
SYMATTR InstName R1
SYMATTR Value 490
SYMBOL res -240 576 R0
SYMATTR InstName R2
SYMATTR Value 10
SYMBOL voltage -48 576 R0
WINDOW 3 24 104 Invisible 0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
WINDOW 0 -39 -1 Left 0
SYMATTR Value PULSE(0 250 1 3e-6)
SYMATTR InstName V2
TEXT -56 736 Left 0 !.tran 2
TEXT 312 632 Left 0 ;SHUNT
TEXT 232 424 Left 0 ;LOAD
TEXT -496 560 Left 0 ;PERFECT dV/dT <
TEXT 784 576 Left 0 ;> REAL dV/dT


Probe the perfect edge and then the real edge and then zoom in to
see the details.


The chip goes for about $2 US.
 
F

Fred Bloggs

John said:
An ADC would have to sample at 3 MHz, realistically, to meet his
bandwidth requirement. And you'd have to isolate 10 or 12 bits of
parallel data, plus some sort of sync, or serialize it at 30+ MHz, and
isolate that. Then there's the dac at ground, and your deconvolution
thing. All that would need a lot of power and money.

The original post was about producing a ground referenced voltage
proportional to load current with 8-bit accuracy and 1MHz bandwidth, so
what has changed?
Deconvolution can't cheat the Sampling Theorem.

Deconvolution has little to do with the sampling theorem...
 
J

John Larkin

The original post was about producing a ground referenced voltage
proportional to load current with 8-bit accuracy and 1MHz bandwidth, so
what has changed?


Deconvolution has little to do with the sampling theorem...


But please explain what mathematical transforms you had in mind, and
what analog requirements could be relaxed, when you wrote

"This means a more intelligent approach would relax the complexity and
performance requirements of the analog kluge and compensate with a
deconvolution of the data."

John
 
J

Jim Thompson

On Tue, 11 Dec 2007 06:54:26 -0800, John Larkin

[snip]
But please explain what mathematical transforms you had in mind, and
what analog requirements could be relaxed, when you wrote

"This means a more intelligent approach would relax the complexity and
performance requirements of the analog kluge and compensate with a
deconvolution of the data."

John

Fred doesn't know, he just copied the verbiage from Wikipedia because
it sounded intelligent ;-)

...Jim Thompson
 
J

John Larkin

On Tue, 11 Dec 2007 06:54:26 -0800, John Larkin

[snip]
But please explain what mathematical transforms you had in mind, and
what analog requirements could be relaxed, when you wrote

"This means a more intelligent approach would relax the complexity and
performance requirements of the analog kluge and compensate with a
deconvolution of the data."

John

Fred doesn't know, he just copied the verbiage from Wikipedia because
it sounded intelligent ;-)

...Jim Thompson

Yup. Sounded like word salad to me.

John
 
W

Winfield

John said:
Two more problems: if the amp rails, it can cave in the power supply,
maybe latching things up. Or it might turn off Q2 through the b-c
junction of Q1.

A fet for Q1 helps. A resistor between Q1 and Q2 fixes the other
problem.

It's almost appealing to go back to discretes, especially for a fast
differential version.

Simple circuits can have so many hazards!

John

John, I'll have to say, no, that's wrong. If you think it
through carefully, you'll see those states either cannot
occur, or they quick move on to a safe operating condition.
 
W

Winfield

Winfield said:
Yes, that occurred to me too, good idea. 15 parts.
In light of the lower gain, I reduced Q1's bias.

Fast high-voltage high-side current monitor, r2-b

10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 190 / |
| | 1% \ |
+---------|----, / +---,
| LT1783_|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
fast b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| | | | |
Q2 e +--------|---+---+
mpsa92 b ------' | |
c 470k \ / 330k
| Ib = 0.5 0.5W / \ 0.5W
| to 1.0mA \ Ia /
| | |
1k / ,------' gnd
\ | 9.90k
/ +---/\/\---,
| 1.10k | __ | 0 to +5V out
| ,--/\/\--+--|- \ | for 0 to 10mA
| gnd | >---+------
+--------------|+_/
| 1.00k
'---/\/\/--- gnd

Actually, the 9.90k resistor leaves the bias cancellation
in error by 1%. So, correcting this minor problem:

Fast high-voltage high-side current monitor, r2-c

10.0 +250V Iout
------+------+---/\/\----+----o ---> 0 to 10mA load
| | |
/ '--+--------|---,
\ 200 | | |
/ 1% | 190 / |
| | 1% \ |
+---------|----, / +---,
| LT1783_|_ | | | | 7.5V zener
Q1 e / -|--' | _|_/ |
fast b ---< | | /_\ _|_
PNP c \__+|------+ | --- 0.1uF
| | | | |
Q2 e +--------|---+---+
mpsa92 b ------' | |
c 470k \ / 330k
| Ib = 0.5 0.5W / \ 0.5W
| to 1.0mA \ Ia /
| | |
1k / ,------' gnd
\ | 10.0k
/ +---/\/\---,
| 1.111k | __ | 0 to +5V out
| ,--/\/\--+--|- \ | for 0 to 10mA
| gnd | >---+------
+--------------|+_/
| 1.00k
'---/\/\/--- gnd
 
F

Fred Bloggs

John said:
But please explain what mathematical transforms you had in mind, and
what analog requirements could be relaxed, when you wrote

Apparently you have absolutely no clue of the analog GBW requirement of
the circuit to maintain less than 1/2 LSB error at 8 bits out to 1MHz.
Obviously you would want to keep things simple, something like a
dominant pole low pass roll-off for that, then unless you have a DSP
with FFT, you would use a time domain convolution to reconstruct the
unfiltered data record of the current. Maybe this doesn't have to be
done in real time, maybe the circuit can just acquire the data on both
the current profile and the sensor response to a known stimulus, and
this can be processed later, download the files to a PC or workstation
for processing and display. I'm not real concerned about the OP and his
imagined requirements, skill set, or anything else, including your
opinion or ideas, you're so dull and boring...
 
J

John Larkin

Apparently you have absolutely no clue of the analog GBW requirement of
the circuit to maintain less than 1/2 LSB error at 8 bits out to 1MHz.

What neither you nor I have a clue of is whether the op expects 1/2
lsb at 1 MHz, or whether 1 MHz might be an acceptable -3 dB point. In
the real world (hello!) the latter would be the likely situation.
Especially seeing that the latter is totally out of the league of this
situation.
Obviously you would want to keep things simple, something like a
dominant pole low pass roll-off for that, then unless you have a DSP
with FFT, you would use a time domain convolution to reconstruct the
unfiltered data record of the current. Maybe this doesn't have to be
done in real time, maybe the circuit can just acquire the data on both
the current profile and the sensor response to a known stimulus, and
this can be processed later, download the files to a PC or workstation
for processing and display. I'm not real concerned about the OP and his
imagined requirements, skill set, or anything else, including your
opinion or ideas, you're so dull and boring...

You can't computationally replace bits once they are lost. The key to
accuracy here is doing the analog stuff (and digitization) right, not
massaging the data after it's trashed. Yes, analog circuit design
bores you.

What doesn't bore you?

John
 
J

Jan Panteltje

What neither you nor I have a clue of is whether the op expects 1/2
lsb at 1 MHz, or whether 1 MHz might be an acceptable -3 dB point. In
the real world (hello!) the latter would be the likely situation.
Especially seeing that the latter is totally out of the league of this
situation.


You can't computationally replace bits once they are lost. The key to
accuracy here is doing the analog stuff (and digitization) right, not
massaging the data after it's trashed. Yes, analog circuit design
bores you.

What doesn't bore you?

John

I have thought of a third way to do this.
Say you use a 74HC4054 CMOS switch on the high side,
that switches at about 10MHz between both ends of the shunt,
and apply that 10MHz carrier, with amplitude exactly equal to the voltage drop
over the shunt, via a 1:1 transformer to an opamp precision peak rectifier
on the ground level.
I am still thinking what to use to swith the 4053, a 555 is not fast enough.
UJT?
 
J

Jan Panteltje

I have thought of a third way to do this.
Say you use a 74HC4054 CMOS switch on the high side,
that switches at about 10MHz between both ends of the shunt,
and apply that 10MHz carrier, with amplitude exactly equal to the voltage drop
over the shunt, via a 1:1 transformer to an opamp precision peak rectifier
on the ground level.
I am still thinking what to use to swith the 4053, a 555 is not fast enough.
UJT?
I have got it, integrated xtal osc module.
 
J

John Larkin

I have thought of a third way to do this.
Say you use a 74HC4054 CMOS switch on the high side,
that switches at about 10MHz between both ends of the shunt,
and apply that 10MHz carrier, with amplitude exactly equal to the voltage drop
over the shunt, via a 1:1 transformer to an opamp precision peak rectifier
on the ground level.
I am still thinking what to use to swith the 4053, a 555 is not fast enough.
UJT?

The high-side stuff could be completely unpowered: one transformer
sending a carrier square wave up, to switch a pair of small mosfets,
and a second transformer to bring the modulated signal back down.

Somebody (one of my competitors, actually) does thermocouple
acquisition that way. We float the entire preamp/adc per channel, with
a dc/dc converter powering the floating stuff and an Analog Devices
logic isolator bringing the data back down,

John
 
J

John Larkin

John, I'll have to say, no, that's wrong. If you think it
through carefully, you'll see those states either cannot
occur, or they quick move on to a safe operating condition.

Yes, forward-biasing the b-c junction of Q1 won't happen, bacause the
power supply would cave in first.

Still, startup is interesting, but probably OK.

John
 
F

Fred Bloggs

John said:
You can't computationally replace bits once they are lost. The key to
accuracy here is doing the analog stuff (and digitization) right, not
massaging the data after it's trashed...

You don't what you're talking about. Deconvolution no more manufactures
lost bits than pre-emphasis 'cheats' line loss. Deconvolving a linear
circuit is the simplest possible use.
 
Top