ADC for high-precision measurement.

Thread Starter

Bryce

Joined Aug 7, 2010
8
I have a DC voltage of about 5V (varying in the long term) that changes by about 1-5 μV. I need to reliably detect this change. The change occurs over the course of several seconds. You could think of this as a tiny signal that rides on a relatively huge DC voltage, I suppose. The absolute value is not important, only detecting the change - so accuracy is not a big deal, but precision is.

Anyhow, what's the best (i.e. cheapest with sufficient precision) kind of ADC for this? My thought would be a VCO, controlled by the input signal, and then counting the frequency.

Thanks for any advice you can offer.
 

timrobbins

Joined Aug 29, 2009
318
In the old days, if you could AC couple the signal to a high gain IA, then you possibly could resolve the signal using at least 12-14 bit ADC and strong digital filtering. Nowadays you have much higher level signma delta ADCs that could possibly do it direct??

You probably need to discuss the characteristics of the signal more - is it mains related in any way - is it related to any form of repetitive signal (which you could then use for synchronous detection).

Ciao, Tim
 

Thread Starter

Bryce

Joined Aug 7, 2010
8
Thanks. The signal is like this... it's a variation of about 5 μV riding on a voltage of about 5V, but it is not periodic really - it comes and goes for a period of several seconds to a minute or so. There isn't really any way to AC couple that, I don't think. (Also, any kind of solution that tends to average out 60Hz hum would be good, too.) The signal represents a physical quantity (IR transmittance, specifically). Is there any other information that would be helpful?
 

timrobbins

Joined Aug 29, 2009
318
Filtering mains digitally is well understood - you should be able to find suitable references to doing that in the digital domain.

You should look into 20-24bit ADC. Have you checked the library out for other scientific applications that require that level of signal extraction? Are there other signals present at all, or is it only noise that you have to characterise? Can you perturb, or otherwise control something that influences the signal you are after?

I can't add much more - my experience was associated with periodic signal extraction where synchronous detection allowed a simple way to discriminate signal from a lot of other stuff.

Ciao, Tim
 

marshallf3

Joined Jul 26, 2010
2,358
Thanks. The signal is like this... it's a variation of about 5 μV riding on a voltage of about 5V, but it is not periodic really - it comes and goes for a period of several seconds to a minute or so. There isn't really any way to AC couple that, I don't think. (Also, any kind of solution that tends to average out 60Hz hum would be good, too.) The signal represents a physical quantity (IR transmittance, specifically). Is there any other information that would be helpful?
First thing is to detect when the variations are actually happening and this might be done by using a precision comparator with a stable reference voltage from another power source.
 

sage.radachowsky

Joined May 11, 2010
241
I think that it would be possible to do this in analog. It depends on the waveforms you want to detect.

I'm guessing it's something like an intruder detectors, detecting the appearance of a warm body within the field of the IR detector. Can you be more specific what the actual thing is?

Anyway, if the voltage rises by a few uV within a few seconds, and then lowers again within a few seconds, and nearly flatlines in between, then I think it's possible using a diff amp, a capacitor, and resistor. A supercap may make it easier by increasing the capacitance to something like 1F. Depends on your input impedance from the IR detector. Got a model number or a web link? The more specific you are, the better we can help.
 

Thread Starter

Bryce

Joined Aug 7, 2010
8
I'll try to be more specific. A LED and a photodiode form a detector. A solvent flows between them. The opacity of the liquid varies over time, very slightly, based on the presence or absence of dissolved compounds. A nice solute might give several mV of change in the ~5V output of the LED, but most give changes only in the 1-20 μV range owing to their low concentration. The solvent being used may differ from day to day - one solvent may give, say, a 4.80182V baseline, another, say, 4.220014V. Also, once in a while something weird may happen, like a tiny bubble getting in the works and passing the detector, which of course causes a massive excursion of several hundred mV typically. The solutes typically go up to their full concentration over a period of time of several seconds, then go back down. (Following, I think, a bell-shaped curve but I'm not 100% on that.) For this application, it is sufficient to detect when a solute is passing, while being insensitive to slower, long-term variations in the detector/solvent/etc. Accuracy isn't very important, it's strictly a relative thing. One solute may follow another in like 10 seconds, or there may be many minutes of baseline separation.

The LED's brightness is under software control, if that helps.

My first instinct was just to buy a 24bit ADC, yes, but I was hoping for a cheaper solution; we're trying to develop a low-cost product here.

(Sorry if this is not a good question; my background is in computers.)

I guess the problem is pretty trivial if you can generate that stable reference voltage and feed that and the signal into a difference amplifier, but I assumed that the only way to generate such a long-term stable (over the course of hours), software-controlled voltage would be a 24 bit or so DAC, and then, why not just buy a 24 bit ADC? I hadn't thought of a super-capacitor, that sounds interesting.
 

mik3

Joined Feb 4, 2008
4,843
Can you provide a circuit of what you are trying to build?

Maybe it would be better to measure the current instead of the voltage.
 

beenthere

Joined Apr 20, 2004
15,819
Strongly agree with mik3. Changes in light transmission can be very sensitively detected. Your LED - photodiode detector may not be well suited to this application, or the circuit may be in need of tweaking.
 

marshallf3

Joined Jul 26, 2010
2,358
I see your dilemma more clearly now, didn't realize that the baseline reference voltage needed to be adjustable.

DAC would be what was called for here but I couldn't help much, I'm rather distanced from the logic world aside from some machine code on old 6502 processors ages ago. It's not that I coudn't probably figure it out but I really don't have the time I used to have what with the multitude of work and home projects already going on.
 

Thread Starter

Bryce

Joined Aug 7, 2010
8
I will definitely take another look at the detector design, but there are certain constraints - the volume of liquid and the flow rate is quite small, so I can't just make an arbitrarily large detector (i.e. one with a longer path length for the light to be absorbed by the sample.)

Thanks for all your input.
 
Well, here is my idea.

If it can be done in analog, then what you need is a differentiator. Here is a wiki article.

There is also another way to do it than is shown in the wiki schematic, which is to have cap to ground, tied to the voltage under test through a resistor. You use a diff amp to amplify the difference from the voltage under test to the level of the cap. Perhaps the way in that wiki article is better, though.

Basically, it's an amplifying high pass filter.

At first, the capacitor must rise to the same voltage as the input. That may take some time. After that, then if there is a rise in the input that is an order of magnitude less than then RC time constant, then it will be clearly visible as a different in voltage.

Either way, it depends on what you're looking for. If you have sufficient time to equilibrate the differentiator before the next input, the you will see useful output.

All in all, I think it will be easily done as long as the signals you're looking for are at least an order of magnitude higher frequency than the steady states, which is sounds like they probably are. I would go that route before a 24 bit ADC but that's just my inclination to keep things as simple as possible.
 

timrobbins

Joined Aug 29, 2009
318
Just some thoughts on the whole scheme:

I find it a bit daunting that you have a 7-8 digit voltmeter and that you appear to be getting noise free measurements such that you know you want to resolve 5uV?? And then you provide an example with 0.6V difference? Are you able to provide a current source into your LED, and a flow transmission consistancy, and photodiode power supply, and a votlage measurement setup, that has already allowed you to identify that 5uV resolution is needed from the far end measurement scheme, or are you just estimating a resolution goal based on other requirements? Does your 'signal path' have other variations (eg. material flow homogeneity) that swamp 5uV variation? Can you achieve 5uV resolution with a top quality meter in you lab setup without flow?

Ciao, Tim
 

Thread Starter

Bryce

Joined Aug 7, 2010
8
Just some thoughts on the whole scheme:

I find it a bit daunting that you have a 7-8 digit voltmeter and that you appear to be getting noise free measurements such that you know you want to resolve 5uV?? And then you provide an example with 0.6V difference?
The example with a 0.6V difference is two different solvents. Different solvents, different baselines. The objective is not to distinguish between different solvents, but to detect solutes in fairly low concentrations within the the same solvent. So, one day I might be using solvent A with a baseline of 4.220192 or whatever volts, then the next day, solvent B with a baseline of 4.819150 volts.

Yes, the ~5μV is coming from experimental. Didn't seem to have a noise problem, but I used some kind of giant HP digital voltmeter thing from the 1980s. I assume it took many readings and averaged them, but I don't know for sure - I wasn't taking any extraordinary precautions against noise, just shielded wires from the photodiode and a clean, regulated supply for both the LED and the detector. (The photodiode lives in a dark housing, of course, with only the IRED for light.)

I just learned about photovoltaic versus photoconductive mode in photodiodes :( So I am going to redesign the front-end with that in mind and see how it goes.
 

timrobbins

Joined Aug 29, 2009
318
Are you saying that the 7-digit voltage measurement on the HP was stable to less than or about +/-5uV over tens of seconds to minutes with (for example) no fluid flow but everything else at nominal operating conditions?

Was the HP meter just a voltmeter, or something a little bit special?
 
Here is something like what I had in mind. I was thinking about this problem last night, so this morning I did a bit of simulation.

There is 1F capacitor here that is a long-time low-pass to establish the baseline. This would be affected by the solvent that is the baseline. You can vary the C or the R to change how slowly it moves.

There is a 1mF capacitor in a differentiator configuration with amplifying feedback. You could vary the values of the Rs and the C for different time sensitivities, and different amplifications.

I think the op amp does not have to be super special. An offset error would just show up as a slightly different baseline in the output but you should still see the differentation of the slope of the input voltage. Low input bias current may be important because of the high resistance I used in the feedback, to get the gain.

You could then divide the output by 2 and read it into the ADC of a microcontroller. Because the variation is amplified to +/- 17 mV, you will be able to detect it with a 12-bit or even 10-bit ADC.

I set it up so the input voltage varies by 3 microVolts that rise for 1s, then stays on for 5s, then falls for 1s. It does this twice in the simulation.

The green line is the voltage to be sensed, which changes only by 3uV. The blue line is the output of the differentiator.

This circuit is not well adjusted yet. It was just a sketch to show the concept. Really, it would take several days of adjusting and actual breadboarding with components to get it foolproof and to work out noise issues, etc.

Hope this helps. Let us know what happens with this. I would love feedback to learn more about it.
 

Attachments

Thread Starter

Bryce

Joined Aug 7, 2010
8
What voltage should the 1F capacitor be? I have only 5.5V, polarized capacitors on hand at that capacitance. (Memory backup capacitors, specifically.) For the op-amp, I can try one with FET inputs, and see if that works maybe?

Thanks much. I'm rebuilding my detector, and will run some new experiments on it this week to see if the new design makes things easier.
 
Well, I would say 5.5V if your signal will not exceed 5.5V.

However, it should not be necessary to use a supercap. That larger C value just allows you to use a lower R to get the same time constant, but you may also try out using some mF capacitors.

Another important point -- I was assuming that your output from the detector is low impedance. If it is not, then it must be buffered with a voltage follower to enter this feedback network.

Here is a simpler circuit using a 10mF capacitor, which can be electrolytic, thus no voltage issues. This also has only one capacitor, which in theory is all that you need. You can see the big output jumps at the transitions of the input waveform. The input is again varying by 3uV, over 0.5s ramps, and the output is varying by 30 mV. This will be very easy to sense with a microcontroller.

I present these circuits as ideas that can be used, but especially when you are dealing with very low voltage deltas, and also high resistances like 1 MegaOhm and above, it is critical to test it out on breadboard for quirks, and even to pay attention to PCB layout to avoid leakage and cross trace noise for the final product. The simulation is not always equal to the real world result especially with these extremes of values.

Because you want to make a product and hold the costs lower, these are things to try out during the development, before assuming you must use an expensive ADC. You will know specifically what works for your requirements, and what does not work well enough.
 

Attachments

Thread Starter

Bryce

Joined Aug 7, 2010
8
So, I ran another experiment first thing this morning, this time with the photodiode connected directly to the voltmeter, i.e. in photovoltaic mode rather than photoconductive mode as previously.

The LED was powered from a clean, well-regulated power supply, at 20mW. The ground of the voltmeter was shared with the power supply. The voltmeter used was an HP 3497A with precision DC voltmeter option. (This is a big rackmount thing; it has cards full of relays in the back and a HPIB connector. My guess is that you can connect a bunch of different sensors to it, the relays connect the one you are interested in to the voltmeter, and you read it off via HPIB. But it also has regular plugs to connect to the voltmeter directly, which is what I was using.)

With air in the detector, the reading was: 0.000743V±0.000002V.
I started a gravity-fed flow of deionized water through the detector. After the air bubbles had worked themselves out, the reading was 0.001043V, varying between about 0.001041V and 0.001045V from reading to reading.
Being careful not to interrupt the flow of liquid (and risk introducing bubbles), I introduced an unsaturated solution of sodium bicarbonate in water to the detector's inflow side. The reading fell to 0.001036V±0.000003V. Upon switching back to pure water, the reading was 0.001042V. (again, with some fuzziness on the last decimal place.) Next, I introduced 90% isopropanol/10% water v/v into the detector. The voltage rose to 0.001060V±0.000002V. After returning the supply to water, the voltage dropped to 0.001046V, though rather gradually as compared to before. (probably owing to the tendency of the water in the funnel to flow under the isopropanol layer, mixing gradually.)

So, this seems "not nearly as bad" to me. (a variation of 500ppm instead of 0.5 ppm... although it does seem a little noisier this time. I could have sworn it was stable in the μV digit with it in photoconductive mode.) I'm going to pursue this new detector design some more. Thanks for all your help and advice, I'll keep you posted. I need to make a good amplifier for the detector (which, if understand correctly, actually puts out a tiny, tiny current), but I found a book on amplifiers for photodetectors now, so I'll try to figure it out from that before I bother you guys again :)

Thanks, again.
 
Good, please update us with what you find. This is an interesting thing to learn about.

If your voltage is down as low as 1 - 2 mV then you may simply amplify the signal to get usable output.

I am curious how the voltmeter input bias current / impedance may be affecting your readings. It sounds like the sensor has a high impedance output. If you buffer the signal with a low-input-impedance op amp as a voltage follower, or else a simple op amp non-inverting amplifier, with high impedance input, you may find great results.
 
Top