High Voltage DC sensing

Hello,

I am looking to sense 0-175vdc, I am a novice electronics hobbyist, but have worked safely with High Voltage for years.

I was thinking of using a voltage divider with four series resistors(in case one fuses). I would like to have a safe level of current flowing and be able to use 1/2 watt resistors. I was thinking of using 5mA, thus at 175vdc total resistance of the R1+R2+R3+R4= 35k ohms. I could then have R1=20k R2=10K R3=1K and R4=4k. Here are my questions:

1)This will give a 0-5v drop across R3 from 0-175v, which could then be read by an AnalogRead() correct?

  1. Would this work? Is it safe?

  2. It seems I may need some sort of isolation?

  3. How accurate would this be?

Thank you,

Brock

winzeracer:
Hello,

I am looking to sense 0-175vdc, I am a novice electronics hobbyist, but have worked safely with High Voltage for years.

I was thinking of using a voltage divider with four series resistors(in case one fuses). I would like to have a safe level of current flowing and be able to use 1/2 watt resistors. I was thinking of using 5mA, thus at 175vdc total resistance of the R1+R2+R3+R4= 35k ohms. I could then have R1=20k R2=10K R3=1K and R4=4k. Here are my questions:

1)This will give a 0-5v drop across R3 from 0-175v, which could then be read by an AnalogRead() correct?

I did not even bother to do the calculation as the proposed solution isn't safe. If the lowest resistor goes defect you will fry you Arduino and possibly any other equipment connected to the Arduino.

winzeracer:
2) Would this work? Is it safe?

Yes, safe No.

winzeracer:
3) It seems I may need some sort of isolation?

Yep. I would use an ADC with isolated opto couplers (high speed) with say I2C or SPI and an isolated DC-DC voltage supply. Then you circuit is completely isolated. Using a series resistance is then safer in such that if something does go wrong, only the probe will fry.

winzeracer:
4) How accurate would this be?

There a plenty of quality ADC's in the market. The rest is more a question of how big you wallet is :). Higher resolution usually more complex schematic for drift etc.

winzeracer:
Hello,

I am looking to sense 0-175vdc

What do you mean by "sense"? What accuracy do you need?

Is it a fast changing signal? The Arduino ADC only needs microamps to work on a slow changing signal.

winzeracer:
Is it safe?

How do you define "safe"?

So long as nothing fails then your Arduino will be safe with those resistors.

Atmel think it's OK to connect AC mains directly to their chips through a single resistor: http://www.atmel.com/images/doc2508.pdf

If you want to allow for massive spikes or resistor failures then you need more. If this is a critical measurement then you probably need more.

winzeracer:
Hello,

I am looking to sense 0-175vdc, I am a novice electronics hobbyist, but have worked safely with High Voltage for years.

I'm new on this forum and probably not many will answer to this question since is relate to high voltage.

If you want to keep this simple and just care about the microcontroller (you know how to stay safe).
Then use a resistor divider like this.
Two series resistors in the highside of the divider two parallel resistors in the low side then one large value resistor say 47kohm from the divider output to the microcontroller pin and from that pin to GND a 5.1V zener diode.
Then the microcontroller should be quite safe you just take care.

I would use analogReference(INTERNAL), to allow a higher value of the resistor to the 175V.
The input range for an Arduino Uno with internal reference will be 0 to 1.1V.

The impedance of the circuit to an analog pin of the Arduino should be 10k or less, for the best analog accuracy.

Therefor I would not use 47k protection resistor as suggested by electrodacus, but only 1k.
In the middle of the voltage divider, you can use 1N4148 clamping diodes to 0 and 5V. A zener diode at that point will leak current.
For the voltage divider, suppose 10k to ground, the resistor to 175V will be 1M5. You can split that into 2 resistors for safety. For example two resistors of 1M. Using more resistors is not needed if there is no dirt collected over time on the circuit.

An Arduino input can have 1mA current pushed into it. So if the 10k breaks, the two resistors of 1M will push less than 1mA into the Arduino, so that is even safe without clamping diodes.

I use that circuit with only 2 resistors to the high voltage for my Geiger counter. Since I don't need the maximum accuracy I used a higher impedance and a capacitor to remove the noise. I think it is safe to use 47k to ground with a capacitor of 1nF parallel, two 1N4148 clamping diodes and two 22M to the high voltage to measure up to 1000V and 1k protection resistor to the input. I used pcb board without copper traces, placed all components not close to each other and used large (long) resistors for the 22M.

If the ground of the 175V is not safe, you need to isolate everything as nicoverduin wrote.

With a lot of MCU chips, the only impediment to using extremely high resistor values is the ADC impedance loading them down. The ADC input current usually only flows for a fraction of a millisecond, to charge the sample and hold capacitor.

This usually means that if you are OK with taking the pretty major bandwidth hit, you can put something like a 1uf capacitor between the ADC input and ground to provide the needed current to fill the sample and hold capacitor. Not sure how big a cap you need for the addition specifically, I remember it as being 0.1uf the last time I used the trick. but there's an app note out there for a different MCU that might help.

With a megaohm resistor between the ADC and the input, even if R2 fails closed circuit, R1 will only let 175uA through which the internal protection diodes should handle just fine.

R1 could still fail open circuit, the traditional solution to that being to use several resistors in series, so that if one fails the other one or two can still.keep the current under the limit.

EternityForest:
With a lot of MCU chips, the only impediment to using extremely high resistor values is the ADC impedance loading them down.

...which is why I asked "Is it a fast changing signal?"

But the OP seems to have vanished so I guess we'll never know.

Thank you for all the replies, sorry for leaving the thread hanging for a few days.

I am trying to measure voltage across a PMDC motor, as it turns out max voltage is only 120vdc so the math changes but all else is the same. The signal does change quickly, I am running my controller at 8khz right now, so to answer fungus's question, yes I belive that is a fast changing signal. I would like to keep it as simple as possible (hopefully without an independent adc). As I do not know enough in this arena I am not sure if EternityForest or Caltoa's approch is better, however these two sound the most liley to work with keeping things reasonable simple. Given the new information, which sounds best for the application?

Thank you,
Brock

That is fast.
Do you want to measure the top voltage ? or the average voltage ? or the frequency ?

About that zener versus clamping diodes: A zener can not be used in a voltage divider to measure high voltages because of its leak current.

I want to measure instantaneous voltage.

Do you want to sample the voltage and follow the 8kHz signal ? So you might need a sampling rate of say 20 times that ? about 160kHz.
What do you want to do with that ?

If you want to know how much the motor is getting, and the signal is a pwm signal, and you don't need it faster than a 100 times a second... in that case I would call it the average voltage. It is the average of the pwm signal.

Ok I see, I would want average voltage then. I would be happy with 2-5 readings per second, maybe slower if that simplifies the circuit. What would you propose is the best solution then?

Read reply #4 again, use a larger capacitor 10nF to 100nF for averaging.