While researching how to make accurate phase measurements for an impedance analyzer, I stumbled across this
document. It mentions an interesting way to measure phase by making just three measurements with an AC voltmeter and using the law of cosines. Knowing this, we can devise a way to measure complex impedance with nothing more than a multi-meter, a signal source, and a resistor.
So here's how it works. First, the measurement:
1. Construct a voltage divider consisting of a resistor of known value and your DUT.
2. Drive the input of the divider with a sine wave at the frequency of interest.
3. Record 3 amplitudes: Input voltage, DUT voltage, and resistor voltage.
Now, the calculations. Excel (or Google Drive, LibreOffice) makes this part easy:
4. Use law of cosines to calculate the angle between the DUT and resistor phasor.
5. Calculate the reactive and real impedance of the DUT.
6. Convert the reactive into capacitance or inductance using the measurement frequency.
7. If desired, calculate Q or loss tangent.
I made this phasor diagram of a hypothetical lossy inductor to help visualize the math:
We can calculate the magnitude of the DUT impedance simply: |Z| = R*|Vz|/|Vref|
Next, calculate the factor I'll refer to as K: K = ( |Vin|
2 - |Vref|
2 - |Vz|
2 ) / (2*|Vref|*|Vz|) Note that K=cos(theta).
After this, the real part of the impedance is: R = K*|Z|
And the reactive part of the impedance is: X = sqrt(1-K
2)*|Z|
Finally, convert the reactance into either inductance: L = X/(2*pi*f) or capacitance: C = 1/(X*2*pi*f)
Anyway, I've also attached an excel spreadsheet to do all the hard work. As an example I measured a 1uF ceramic in series with 1 ohm (to simulate a predictable ESR) at roughly 500Hz. My signal source is way too unstable to get good accuracy on the resistive component (I keep measuring around 6-8 ohms), but the capacitance measurement is solid.