An impedance meter with auto-BIAS compensation
I've been working on this project from over a year, and I think will be impossible for anyone to understand the amount of work behind what can seem "another window" of VA. As matter of fact, the program is ready and I'm very proud of it, nevertheless I'm strongly convinced that nobody could really appreciate my efforts.
There are a lot of options in ZRLC meter. Is very difficult for me to explain all them now; I 'm writing an exhaustive document for that purpose. In this page I'll give the only very basic information, just for a first start. ZRLC meter include also computation of meaningful digit, uncertainty, and also auto-input/output level, a simple Vector-scope (very impressive) , internal filters, possibility to do automatically a sequence of measurements in the time domain and frequency domain. And a lot of other things. Be patient if for now if I'll be a little bit cryptic. The keyword is still the same: time!
A little preamble. You need to build a specific hardware in order to get good performance from this instrument. The needed hardware is a simple couple of operational amplifier, in order to exalt (elevate) the input impedance of a standard soundcard/acquisition board, normally too low; a low input impedance means a perturbed measurement or, in other words, low accuracy and/or precision.
Another little preamble. I was inspired from existing works, such as the Dr. George Steber work, and another similar work published on the Elektor magazine. Plus others. I tried first to imitate them, building a routine based on the LMS algorithm (that is still included in VA). Then I developed a routine exploiting the resources already available in VA, obtaining a new and strongly personalized version of ZRLC meter based on the FFT plus a proprietary algorithm to reduce at the maximum possible level the (most significantly) bias errors. The result has been very very good, and a comparative test based on a professional instrument will be soon published on this web site. What I can say for now is that I'm ENTHUSIASTIC of such results.
First of all, the FFT-ZRLC meter has been projected keeping in mind a key point: avoid, at least at first execution, to hassle the user with a lot of settings and technical details. If you build correctly the circuit and start VA, ZRLC should be immediately operative. That is, you can immediately measure an impedance.
Start VA 2010 NE-XT, click on the checkbox ZRLC. This is the window of ZRLC meter; the most important parameters has been already set up. I recommend to use, in general Setting window, 40960 Hz as frequency sampling and 4096 as buffer dimension. With that choice will be activated a sophisticated calibration algorithm otherwise will be used the standard one, with loss of accuracy. The next version will be provided of eXTended calibration for all the sampling frequency and buffer dimensions.
Anyway, the main settings of ZRLC meter could be find in the setting/ZRLC window, whose appearance is as follow:
The very simple circuit you should build is the following:
Or similar. The idea is to elevate the input impedance of the soundcard at the maximum possible level. The measurement principle is very simple; the Unknown impedance (Zx) is in series with a known reference resistor. A sinusoidal waveform, generated by VA itself, is applied at the series of the two resistor. Then, by means of the two input channel of the sound card, buffered from the amp op, the voltages across the two resistors is measured. Then, simply applying the OHM's law the unknown impedance is computed.
Modifying the values of the reference resistor it is possible to vary the range of the instrument. I proposed the following values: 10 ohm, 100 ohm, 1000 ohm, 10K, 100K. The corresponding range for resistance, impedance, capacitance and inductance measurement are as indicated in the program (see the listbox close to the reference resistor edit window). So you can think to build a circuit as indicated in the schematic above, adding something to switch the various reference resistors; you must switch manually form one range to another in both the program and the hardware. Indeed, you can build a "battery" of relays to commute automatically the range. VA has the possibilities to utilize one of the output channel to drive automatically the relays, by means of a 1000 Hz sinusoidal waveform at different amplitude level. In other words, VA has an internal algorithm that find out the most appropriate range to be used and consequently generate the proper signal, by which you can drive the relays.
I included this mechanism in ZRLC meter, but for now I've no time to test it. As you can see from setting window, the "auto range" radiobutton allows to select if to generate a sinusoidal waveform to switch from the various range or a CC (if you have a rare soundcard DC-coupled).
In any case, ZRLC meter "suggest" the change of range simply indicating the measurement and a (u) symbol to the right of the number ( u = up) suggesting to change to the next superior range, or a (d) symbol (d = down) for the opposite action.
Build the circuit, and connect it to your soundcard as indicated. Then launch VA and open the ZRLC window.
What can measure
You can measure :
The measurement range has been computed approximately for a 1000 Hz frequency. If you use other values of frequency, the range of reactive component (capacitors and inductors) obviously should be modified, but for now this is NOT updated.
That all for now. I'm writing a complete manual and the Nuova Elettronica Italian magazine projected an external hardware for ZRLC meter, published in magazine number 242. Massimo Marucchi has written a big article about ZRLC projecting also a good hardware to use with. Here the links to the article (only Italian for now):
Here a direct link to download the Nuova Elettronica article
Click here for a screenshot of VA with ZRLC meter and Vector Scope "in action".
Latest VA reviews, articles:
Send an e-mail to
alfredo[at]accattatis.org for questions and/or suggestions about the web
site. The webmaster is Alfredo Accattatis.