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.