Hello,
I am doing some precision light analysis with a photodiode at ~50, ~100 and ~200 KHz. I'm successfully achieving these frequencies at the moment with faster-performing Arduino and clones (like Teensy 3.2, though the 200KHz requires a slight overclock)
While it works, I need to improve the circuit. I need accurate linear measurements (whenever above noise margins), e.g. knowing how much light level goes up or down. For this reason, I am using an AD8622 opamp because of its precision and low voltage offset.
I need advice with a few things.
(1) Better than 12bits/13bits of range of built-in ADCs of most Arduinoi/Arduino compatibles
I need more precision beyond a 12bit ADC somehow. Either
external ADC or via variable gain.
Are there schematics of a good external ADC or good external digital potentiometers that are simple to add, without distorting linearity? (Links) There seems to be a number of 16bit 200 KSPS ADCs with SPI available, but has anyone here used them?
(2) Photodiode selection
I am using a simple BPW34 photodiode, because of its large light collecting surface.
Are there better photodiodes with better light sensitivity at lower noise and quicker response to sudden light changes? I don't want to have to build lens assemblies, but photodiodes that have built-in lenses are okay - as long as light sensitivity is equal or better.
The BPW34 is a rather slow photodiode, with high capacitance (70 pF at zero bias). But of course that depends on your amplifier circuit and choice of bias, which you forgot to post.
It seems unlikely that the BPW34 will be limiting at 200 kHz if properly biased, but there are thousands of better choices. Here are some alternatives. More likely, the very, very slow AD8622 amplifier is the problem (gain bandwidth product only 540 kHz).
You have probably seen this post, which is a reasonable introduction to some of the transimpedance amplifier design considerations, and points to better choices for the op amp.
GDouglas:
(1) Better than 12bits/13bits of range of built-in ADCs of most Arduinoi/Arduino compatibles
I need more precision beyond a 12bit ADC somehow. Either
external ADC or via variable gain.
Are there schematics of a good external ADC or good external digital potentiometers that are simple to add, without distorting linearity? (Links) There seems to be a number of 16bit 200 KSPS ADCs with SPI available, but has anyone here used them?
(2) Photodiode selection
I am using a simple BPW34 photodiode, because of its large light collecting surface.
Are there better photodiodes with better light sensitivity at lower noise and quicker response to sudden light changes? I don't want to have to build lens assemblies, but photodiodes that have built-in lenses are okay - as long as light sensitivity is equal or better.
I've been reading some of these info (fast lux meter stuff)
It's true I am not an EE person, although I did get an excellent A+ in Electronics almost thirty years ago, back in the days of linear electronics before the inclusion of microcontrollers. Lots have changed since the era of 741 opamps and plain NPN / PNP transistors, so this information is appreciated.
I'm pretty concerned about a number of elements I've found:
Nonlinearity behaviours in various microcontroller ADCs (sometimes from a hidden voltage divider, or other factors)
Variable voltage offsets. This was sort of the original reason I went with AD8622 to make the voltage offset lower. Fixed voltage offset is OK as long as it's safe to subtract it from results and the rest of the range is linearly mappable to lux values.
The ability to step down excessive voltage from an op-amp output (AD8622 output is higher voltage than the safe voltage range of an Arduino)
Various amounts of noise sources (I'm experimenting with things like power filters & batteries, but there are times I will need to remain connected by USB -- necessitiating DC isolation of the opamp/ADC circuits)
New questions:
(If I manage faster than 200 KSPS, perhaps via overclocking or faster microcontroller, then that is a bonus too as well)
1. Whether to have overkill SPS
Option 1 interests me the most, it is not the easiest, but I want to try to isolate it from USB noise, microcontroller noise & provide high speed & high quality data. Option 1 seems to be self contained, doesn't require me to use a 15 volt buck-boost circuit (to maximize signal above noise), and could run directly off the USB Power supply -- simplifying my circuit somewhat. Will a 16-bit 500KSPS external ADC device provide me with more accurate 50/100/200KSPS data?
2. Earlier tests of high bandwidth photodiodes did not work well (perhaps due to my error)
I currently have a couple of high bandwidth photodiodes similiar to those but the BPW34 ended up having lower noise -- the Analog wizard actually gave me a design that was 15-16bit ENOB with the BPW34. Perhaps my photodiode selection was poor in the first place, and maybe those are superior selections -- what bandwidth photodiode should I be looking at to get high quality 50/100/200 KSPS data?
3. 5 volts versus 15 volts
I've been using 15 volts. From tests, 15V seemed to give me roughly 1 bit extra precision over just using 5V. However, 5V simplifies the power supply and can avoid the need for the noise of voltage conversion. Accurate and high speed are simultaneously both important attributes that are extremely hard to get right. Are there external ADCs with built-in opamps, have internal voltage boosts that can be isolated from a noisy USB power supply?
In short, no - lowering sampling rate down to 50 ksps from 500 doesn't make data more accurate. Two factors have to be considered separately, linearity & noise.
Linearity for SAR ADC doesn't change with sampling rate. Noise does. You can make averaging in software, running adc at maximum rate, it would help to lower noise level.
AFAIK, noise of the PhD is directly proportional to reverse leakage current.
jremington:
The BPW34 is a rather slow photodiode, with high capacitance (70 pF at zero bias). But of course that depends on your amplifier circuit and choice of bias, which you forgot to post.
I agree with Mr. jremington, that your choice of power supply voltage should account PhD intrinsic capacitance. If fast response is a priority, than 30 or 50 Volts is better than 15.
No comment on OPT101, 14 kHz on the front page likely confusing, I'd say that BPW34 with 1 M Ohm resistor as a load would have even Lower cut-off frequency, read a DS, there is a paragraph on this topic.
What is it that you are actually trying to measure?
Normally the measurement system bandwidth and sample rate should be at least 10 times higher than the highest input frequency of interest. The AD8622 is already hopeless at 200 kHz.
What configuration are you using the photodiode in? Normally reverse biased into a transimpedance
amplifier is the fastest and best - if you don't reverse bias the diode the capacitance is much
higher (reverse biasing grows the depletion layer and thus separates the effective capacitor plates
apart).
Transimpedance amp means current in to voltage out. A fast amp is needed. The AD8622 you mention
is very slow, its a low power opamp, low power is always slow. Its not that low noise either.
Compare to the AD8656 for instance with nearly 2 orders of magnitude more bandwidth and much less
noise, or the ultra-fast OPA2652. Sampling at 200kSPS means you want an opamp that can settle
to accurate values on timescales of a few µs. The AD8622 has a 0.01% settling time of over 10µs...
[ Put another way if you want accurate amplification upto the Nyquist limit you need much more
bandwidth than you might think ]
BTW voltage offset is something you just callibrate out, much more important is drift of offset and
temperature coefficient of offset. Also with a transimpedance amp the voltage gain can be nice
and large for maximum resolution.
Accuracy of the measurement system is only warranted if the optics path is ultra-stable - stability
in the positioning of the optical path need to be as accurate as the ADC...
Also accuracy for high frequency signals is affected by the high-frequency roll off of the amp and
any low-pass filtering due to diode capacitance - so this will need measuring and compensating if
you want to get the best ac measurements. Some careful callibration may be required.