I know peak detectors are
dime a
dozen on
this forum, but I wish to share one that actually works in the real world. I designed it for one project, but it was too power hungry and expensive. Still, I spent several days tinkering with it, so this way the effort won't be completely wasted. I'm also attaching PCB design in Autodesk Eagle 9.6.2, use it for whatever you want.
Most published opamp peak detectors have one big drawback: at higher temperatures, diode reverse current increases and the output voltage starts to droop. In essence, there is strong temperature dependence of the measured voltage. I needed a peak detector that would be accurate at least in full industrial temerature range, -40 to +85 deg. C. I also needed it to be fairly fast, because it was supposed to measure oddly-shaped pulses with 150 ns rise time and 500 ns long. And it was expected to (less accurately) remember the peak for at least 10 ms, or 5 orders of magnitude longer than the pulse.
I used Oxford University article "
A versatile peak detector: updated implementation of an old idea" as base. But it uses rather slow opamps, so I bought several faster ones and got experimenting. Most combinations badly oscillated due to capacitive load, but perhaps unsurpisingly, super-fast ADA4817-1 turned out to work best as the input amp. I also tried several fast JFET output amps, but in the end, I stayed with AD825 from the article. Combinations THS4631+AD825 and ADA4817-1+ADA4627-1 worked very well, too.
All Schottky diodes proved to be absolutely useless at higher temperatures. Even specialized non-Schottky "High Conductance Low Leakage Diode" FDLL333 had way too high leakage. The 2-diode solution from the article didn't help. And true low-leakage diodes like FLDD261, BAS116 or BAV199 were either too slow or had too large dynamic resistance, so not enough current flowed through them to charge CM.
On page 6, the Oxford article mentions that bipolar transistors make for excellent low leakage diodes. That's a pretty old trick which is usable only up to B-E reverse breakdown voltage. But since my peak detector worked with +-5 V supply, it was enough. I went through leftover NPNs I had on hand, from ancients like BC337 to modern RF ones like BFR106. I tested each by heating the detector PCB with a hot air gun and measured voltage droop at the output. Surprisingly, different iterations of oldschool 2N3904 were constantly near top, with MMBT6429LT1G being only marginally better. Best transistor part numbers are listed in the schematic.
Notice that C is connected to B. This decreases dynamic resistance in the ON state and helps charge the capacitor CM faster. The tradeoff is worse leakage, but the measurement difference was still less than 1% at +85 deg. C. Also notice there is guard ring around the upper pin of the CM capacitor. The ring is exposed in solder mask and supplemented by copper pour at the bottom layer of the PCB. That's absolutely necessary to prevent PCB leakage, my first design without it worked poorly. After I added the ring, the leakage at room temperature was so low I had to add 100M parallel resistor to artificially discharge CM when input pulse amplitude decreased.
I'm attaching circuit's response to lone 1 MHz sine wave bursts at 1 V amplitude. There was 5 seconds delay between the bursts, to completely discharge CM. Accuracy is only about 5% in this corner case, but it gets better as delay between bursts becomes shorter.
As you can see, CM voltage increases in spikes, which indicates the circuit is not particularly stable. However, the spikes appear only if CM voltage is significantly lower than input voltage. If they're a concern, you can increase R1 to 1k to dampen them, but as you can see, response and accuracy will suffer. Parasitic capacitances of D1 and PCB traces are factor here (BAT48ZFILM has around 20 pF). It's possible some RF diodes may work better, but I didn't test it. The Oxford article uses C1 to compensate, but it increased output overshoot in my tests, so I left it open. Alternatively, you can decrease CM or increase R2 to dampen the spikes. I've seen designs that connected R2 in series with T1, but I don't remember if I tested it.
BTW, much-touted ECL peak detector from
this EDN article doesn't work. It can remember the peak value only for short times, before C1 gets discharged through R1.