6

I'm looking for a way to calculate value of capacitors of picofarad (pF) range. The thing is when I use a RLC meter, it looks like the device is limited to high ranges of pF to nF and so I can not measure value of for example 1pF.

I used this technique

enter image description here

Using a microcontroller, I generate an 8MHz pulse and pass it through first a lowpass filter and then a peak detector.

C1 is the value I'm trying to measure. It is around 1pF to 20pF (I do not know the right value, I'm trying to measure using this circuit.)

I've wired the circuit on a breadboard
then I use the equation Vo=Vs(1-exp(-t/tau))
Vs=3.3(STM32F103)
t=(here)62.510^-9
tau=R1C1 and R1=4100ohm

I use a multimeter at the end of circuit where you can see "equivalent voltage." (I use a multimeter because it seems that it has no effect on my circuit for changing values due to very large input resistance ect.)

There are some issues:

  • It seems like the breadboard itself has some pF capacitor adding to my measurements (even for example if I just insert a piece of wire in a hole of the breadboard.)
  • It seems like the frequency also affects the value of output voltage and so the calculated value of C1.

Can anyone help me with suggestions?

JRE
  • 67,678
  • 8
  • 104
  • 179
  • 2
    If a few of these caps are available and they're similar in value, you can connect them together in parallel, and measure the capacity, then divide the value to the number of caps. It will get you an average value for each cap. Tolerance is a considerable factor in such low value measurements – Elementronics Jun 24 '22 at 10:59
  • Your method is of little reliability practically, as is more theoretical – Elementronics Jun 24 '22 at 11:02
  • 10
    Breadboards have considerable capacitance and inductance, especially in comparison to the small values you are trying to measure. Besides that, the circuit itself is not stable. Every wiggle of any connection on the breadboard will change your results. – JRE Jun 24 '22 at 12:26
  • 2
    @Elementronics Connecting several capacitors in parallel does not help if they are only a little bigger than the parasitic capacities of the parallel connection. So for capacitors of 7 pF and less. – Uwe Jun 24 '22 at 15:25
  • https://electronics.stackexchange.com/search?tab=votes&q=User%3a17574%20rlc Impedance graphs help – Tony Stewart EE75 Jun 24 '22 at 17:04
  • 1
    Chapter 1.6 in the excellent book _[High-Speed Digital Design - A Handbook of Black Magic](http://www.sigcon.com/books/bookHSDD.html)_ contains a circuit for this that works on a slightly different principle than most of the answers so far, but it would take a while for me to condense it into an answer. – pipe Jun 24 '22 at 22:27
  • The codger method is to use a GDO ツ (https://en.wikipedia.org/wiki/Grid_dip_oscillator). – John Doty Jun 25 '22 at 01:05
  • "It seems like the breadboard itself has some pF capacitor" Yes, this is a known problem. See [EEVblog #568](https://www.youtube.com/watch?v=6GIscUsnlM0). – Mast Jun 25 '22 at 10:35

7 Answers7

12

We regularly measure C(V) curves of some components such as transistors for validation purposes, where the target resolution is 0.1 pF or better.

schematic

simulate this circuit – Schematic created using CircuitLab

A sensitive transimpedance amplifier converts the tiny charging current into a voltage that you can read with a voltmeter. The gigaohm works well for slow voltage slope of e.g. 1 V/s. You can make a more mundane TIA with e.g. 1 megohm feedback impedance by using a correspondingly faster voltage slope.

It is important that you sweep the input voltage up and down. The capacitive current will reverse being proportion to \$\frac{dV}{dt}\$. The resistive leakage current will be the same in both slopes.

Combining the last two paragraphs, you can make this a much simpler setup if your only goal is measuring small capacitors: if you use a much higher frequency for V3, e.g. several kHz, you will get a much stronger signal as Vout. Also the slope doesn't need to a triangle wave, it can be anything. V(out) will be simply the derivative of V(in) with a proportionality factor of R1*C1.

tobalt
  • 18,646
  • 16
  • 73
  • Did you mean millihertz or megahertz? – Transistor Jun 24 '22 at 11:48
  • 4
    @Transistor 1 V/s sounds like millihertz. Now just need to find that 1 Gig resistor and 0.1 Hz triangle generator that I have lying around... – Bruce Abbott Jun 24 '22 at 12:26
  • Ic=CdVc/dt=Ir= -Vo/R, thus Vo = -R C dVc/dt = -1e9 1e-12 1 = 100 uV per pF but more likely noise will exceed that – Tony Stewart EE75 Jun 24 '22 at 12:35
  • 1
    @TonyStewartEE75 Should be 2mV/pF difference, n'est-ce pas? – Spehro Pefhany Jun 24 '22 at 12:50
  • 1
    @BruceAbbott the slope can be rather easily made from the OP's rectangular wave with an integrator, or even just an RC lowpass. It doesn't need to be exact at all. One basically just needs "any" known slope, nothing fancy. – tobalt Jun 24 '22 at 12:55
  • @TonyStewartEE75 as the OP seems to possess a capable multimeter, measuring fractions of mV seems to be rather mundane. But as I said, increasing the slope will increase the signal. The values are from our testbench. – tobalt Jun 24 '22 at 12:56
  • For practical purposes on a breadboard, tunes XTAL or LC osc. can be done with care at 8MHz and only 1pF stray C on board with very short leads if you have a frequency counter and a reference cap to compare f -shift, while RLC meters often use 100kHz to measure this accuracy which is your best bet – Tony Stewart EE75 Jun 26 '22 at 14:43
  • For a test Engineer it is trivial, but learning takes time and practice – Tony Stewart EE75 Jun 26 '22 at 19:50
  • If the 1Gohm R has any capacitance, the measurements will fail in the same region All caps have leakage resistance < 1G except perhaps Mica, so although many liked this answer , it has measurement problems with missing assumptions The gain will be R2C2/R1C1 – Tony Stewart EE75 Jun 26 '22 at 19:52
  • This answer has too many assumptions such as the FET input impedance and capacitance. – Tony Stewart EE75 Jun 26 '22 at 20:06
  • @TonyStewartEE75 neither input impedance nor input capacitance of the amp really matter, because input common mode voltage is constant! FET is only chosen to have low current noise, say \$< 10 \frac{fA}{\sqrt{Hz}}\$ – tobalt Jun 26 '22 at 20:21
  • Right .A 10kHz triangle wave input could make it even simpler with a TL07x and square wave out to measure C or 10 MHz for that matter with CMOS logic. – Tony Stewart EE75 Jun 26 '22 at 20:48
  • 1
    @TonyStewartEE75 yup..I wrote that at the bottom..We also want to characterize resistive leakage and C(V) in the same measurement, hence our exotic values/approach. – tobalt Jun 27 '22 at 03:58
4

Adding a bit more to Tobalt's answer, the following LTspice simulation shows what to expect. This type of meter is resistant to parasitic capacitance since the measuring node is at virtual ground.

You can use a true RMS meter to measure the output voltage. You need to suss out how the meter you're using reacts to DC offsets. Using 50 to 100 Hz works well if using a true RMS DVM.

enter image description here

qrk
  • 7,474
  • 1
  • 5
  • 20
3

Just for fun, I tried doing this with a NanoVNA (a very inexpensive toy) connected to a short piece of coaxial cable. With the coax open, adjust the marker to the first half-wave resonance, where it's at the far right of the Smith chart. Jog it so that the measured impedance on the screen is just a skosh capacitive (fF range). Then, connect your test object to the cable. Theoretically, the increase in capacitance approximates the capacitance of the object as long as it's small compared to the total capacitance of the cable.

I don't have any 1pF capacitors to test it, but I'm getting reasonable, reproducible numbers for coaxial adapters.

John Doty
  • 2,227
  • 5
  • 12
  • 1
    I've used NanoVNA to characterize parasitic capacitance on the scale of 5 pF with very satisfactory results. In addition to 1-port S11 measurement, more accurate results can be obtained by measuring S21 with DUT in series or parallel. For a high impedance, the series method is better. First, calibrate the test fixture with a 0-ohm resistor from port 1 to port 2. Next, insert the series capacitor. From S21, complex impedance can be directly determined. A vector analyzer is not strictly necessary. A signal generator and a spectrum analyzer should do an okay job as well. – 比尔盖子 Dec 21 '22 at 16:07
2

This circuit can also be useful.
It can be adapted for a lower scale ... calibration is needed.
Or add a "doubled" circuit with the 2 diodes with the resistor of the same value for "offset".

This is for a 0 .. 10 pF scale (1pF offset already in).

enter image description here

Antonio51
  • 11,004
  • 1
  • 7
  • 20
2

Just buy an IC to do it

It is possible to build a circuit to do this, and there are many possible designs, most of those will be pretty tricky to get right, and get accurate. An alternative approach would be to buy an IC which is designed to measure small capacitances, such as an Analog Devices AD7746 or TI's FDC1004. These cost £5-20 depending on the accuracy you want, and should vastly outperform anything you will be able to design and build from scratch in a reasonable timeframe.

Image from datasheet

(Picture from AD7745/6 datasheet)

Alternatively, if you want to buy an RLC meter which can measure down to 1pF with reasonable accuracy, then there are some out there. For example Keysight E4980AL or GW instek LCR-6100. But they will be a few thousand pounds.

Jack B
  • 12,167
  • 1
  • 27
  • 46
2

EXTECH RLC portables are about $270 cdn can resolve 0.1 pF https://www.itm.com/product/extech-380193-passive-component-lcr-meter

But a cheap CD4000 inverter can be configured as a 10M/10M linear NFB amp with wide BW so that any DSO can measure 8MHz Oscillator input or output with a calibrated 10:1 probe <3 pF with a square wave and very short ground clip <3cm or tip and ring only for best results between two clipped resistor wires sig/gnd <5mm apart.

Then to get DC there are many methods to demodulate 8MHz with low error after you define tolerance requirements and purpose.

using a microcontroller, I generate an 8MHz pulse and pass it through first a lowpass filter and then a peak detector.

If you really need a DC value of Vpp on 8 MHz , with a low pass filter to remove harmonics there are better ways to do this not asked in your question.

Even a CD400x Inverter can be used as a linear amplifier with gain using >> x Meg: x Meg R ratios as a buffer but not 74HCxx types due to ease of oscillations and much higher GBW. (Uncompensated)

This question has the earmarks of a misdirected XY question without the real purpose.

Tony Stewart EE75
  • 1
  • 3
  • 54
  • 182
1

You can use a Sauty bridge or a Schering bridge.

Miss Mulan
  • 1
  • 1
  • 5
  • 11
  • 2
    Can you expand this answer? – Voltage Spike Jun 25 '22 at 21:51
  • The OP can google Sauty or Schering bridge if he doesn't know what these are, my answer gives all the information needed. – Miss Mulan Jun 25 '22 at 22:17
  • 1
    This is the correct answer and is the same as using a TIA and tune R2/R1 ratio for unity gain with a square wave or R2C2/R1C1 where R2C2 are fixed reference values and R1C1 are unknown leakage and capacitance, as I implied after Tobalt's answer – Tony Stewart EE75 Jun 26 '22 at 20:02