Post Go back to editing

I need a reference circuit for 4_wire the impedance measurement using AD5934, range 50 to 250 ohm.

Category: Hardware
Product Number: AD5934

I saw the reference design file CN0349 and CN0217, I think both are 2-wire implementation of the AD5P3x family IC. Can I get the circuit reference for the 4-wire implementation, with impedance range of 50 to 250 ohm. 

Help will be highly appreciated. 

  • In the link, it is mentioned that setting Rcal = 20 can set the impedance range from 1 to 60. Can you please explain this, I did not get this. How can Rcal resistor set the range.

  • Thank you for your comments.

    I changed AD8229 To AD8227.

    1. R12 is for  the internal impedance of the IC, I just use 1k, but it depends on the range: AD593x has 4 different range. This I will remove from my schematic. 

    2. R11, I will add in my PCB just as a protection, I want to measure the tissue impedance. This resistor will have very large value (100-200 kOhms) compared to the tissue (approx 120 ohms) and for all normal operations this will not draw any noticeable current and the impedance of the parallel connection is dominated by the impedance of the tissue. If the impedance of the tissue should rise (e.g. pads coming loose) the current can then go through this resistor and the maxing out of the op-amp would not create unpleasant voltages on the pads.  

    3. C2 , tissue has capacitance, though the electrical model for the tissue is a little bit different, but this I just add for testing and this will not be the part of my PCB.  

    4. R8, R9, is for simulation, I add these to complete the circuit. This is not part of the PCB schematic. 

    Now I am designing my PCB, I will do the tuning, I can also use AD593x gain. 

    I changed AD8229 To AD8227.


  • 1. R12


    2. R11,


    3. C2

    It is common to use sequential RC to roughly approximate the tissue with electrodes, C models electrode-tissue interface, strongly depends on the nature and area of the electrode. Strictly speaking, it is C-R-C, but it is equivalent to R-C/2.

    4. R8, R9

    The model works without those two, just with a piece of wire connected to the INAMP output going nowhere, just for the probe to point at. But it is indeed a good practice to close the circuit and INAMP performance indeed depends on the load.

    I changed AD8229 To AD8227

    With the AD8227, without any rebiasing, the model indicates that the maximum amplitude AD8227 can output is about 0.55V, so the output sine wave swings between 1.1V and 2.2V. So to get the optimum signal at the AD5933 RFB pin (assuming the PGA gain is 1) it would be useful to get a gain of about 2.6 from the AD5933 internal OPAMP when your impedance to be measured is at the to of your expected range of 250 Ohm.

    Minor point on the circuit - there is no need for two resistors R1 and R2 - can be replaced with one resistor running from the "+" of U1 to the output of U3. Please see 2477.50-250-range-1.asc with some edits attached.

    Hope you are not rushing with PCB design, is this an educational project or a hobby?

  • Thanks for the simulation file, discussion with makes a lot of things clear to me. 

    PCB is not expensive in China, but, as you said I will not rush.

    I want to make a  Cardiac 3D mapping system (from scratch), currently I am working on impedance part. Whole system is a challenging task but not impossible. For now it is a hobbySmiley.

    We (me and my friend) are also working on some other interesting stuff, if you want we can talk.

  • R8, R9

    Yes, no need to use 2 resistors, I just use 2 resistors and it has no reason. 

    it would be useful to get a gain of about 2.6 from the AD5933 internal OPAMP

    Yes, I was planning to do so. 

  • Good luck with your project! Depending on the AD5933 frequency range and other settings programmed in you might bump into some unexpected/undocumented behavior, please do not hesitate to post your questions to this forum.

  • Thank you,

    Do I need some filtering on the two input pins?

  • I have another question,

    Do I need any sort of filtering in the receiver end, before any amplification. 

  • Not sure if it is needed, does your application require galvanic decoupling of the impedance to be measured form the electronics?

  • It really depends on a particular use case - filtering is always tricky as it is not really known what to filter for unless the circuit is tested in real-life application and particular sources of interference are identified. The circuit itself in this 4-wire arrangement is reasonably resistant to environmental interference thanks to common-mode rejection. The high-frequency interference is likely to be sufficiently suppressed by relatively slow INAMP (250 KHz) and the AD5933 built-in 100 KHz low-pass filter.
    What is the excitation frequency range you are planning to use? For impedance under test with capacitive response there might be a case for using an additional low-pass filter on the excitation side to filter out high-frequency spikes between the DAC steps in the synthesized voltage sine wave.

  • I got the desire signal. This is the signal I got on RFB resistor end. I will adjust amplifier gain to get the desire signal amplitude for AD5934's ADC.

Reply Children
  • Looks good, congrats!
    Peak-to-peak voltage on this pin with PGA gain of 1x should  not exceed Vdd - 0.2V, and when PGA gain is set at 5x, (Vdd - 0.2V) / 5. This is likely to occur at the higher limit of your impedance under test. The little steps along the sine wave trace are the DAC steps from the frequency synthesizer I mentioned earlier.
    The oscilloscope indicates signal frequency at  ~ 2.68 KHz, what is the clock frequency coming to the AD5934? Signal frequency might be potentially too low for the "DFT" to give accurate readings.

  • Looks good, congrats!

    Thanks, your help was the main factor.

    I will keep peak-to-peak voltage under the rated value.

    Frequency is making troubles. Should I post my questions related to frequency and impedance measurement here or should I open a new issue?

  • I would just keep discussing it in this thread - forum moderators usually move questions to different groups/threads as they see fit, so the questions endup in the right place anyways.  

  • Ok, sounds great.

    I follow the CN0349 design in which 1Mhz crystal is used. But now I noticed that, I can get around 7800Hz frequency (maximum) using 1Mhz crystal. Though, I can get higher frequency using sweep() function, but that one is also limited, I think max is 15KHz. For this part I already order 16Mhz crystal, so I will change the crystal. 

    As you said.

    "The oscilloscope indicates signal frequency at  ~ 2.68 KHz, what is the clock frequency coming to the AD5934? Signal frequency might be potentially too low for the "DFT" to give accurate readings".

    I did calibrate my system with 100 Ohm resistor, with 100 Ohm resistor Vin was almost 1.09 V peak-to-peak. But when I measure 120 Ohm resistor I get impedance value 91. I check Vin for 120 Ohm, which was almost 1.2 V peak-to-peak.

    Below is the print values for measuring 120 Ohm resistor.

    Red 120 Ohm mean the actual value. 

    My question is,

    Is this because of low frequency or there can be some other issue?

  • Before getting into the weeds with the frequency, when you say Vin voltage, do you mean RFB voltage? From the screenshot we know the raw Re and Im  values, but what were  the raw Re and Im values when you connected the calibration resistor of 100 Ohms? Also, is the software that calculates the impedance something you wrote?  

  • Let me add the pictures of the waveform.


    120 ohm

    AD9534 frequency is 5khz and sweep increment I set to 4 Hz. The acquired signal amplitude does changes but I get 91 Ohm when I place 120 Ohm resistor after calibration.  

    After calibration with 100 ohm, when I do measure 100 ohm I get 100 ohm.

  • Yes, I am checking the signal on RFB resistor. 

    For 100 Ω the Re is 3113 and Im is 4171.

    I wrote the software for this part. 

  • For 100 Ω the Re is 3113 and Im is 4171.

    Output log shown in pic below.

  • The suspicion is that your code thinks that the output is inversely proportional to the impedance under test - which is correct when the AD5934 does not have the 4-wire analog circuits between Vout and Vin. With this 4-wire circuit the output is directly proportional to the impedance under test.

    In abstract sense the circuit is converting the impedance into integers in the Re and im registers that constitute complex output Re + j*Im. The conversion factor  between physical Ohms and counts in those registers can be viewed as complex gain G. This complex gain can be calibrated with a known resistor: resistor impedance has only real component and zero imaginary component, so Zcal = 100 + j*0 Ohm. The correspondent output is Outcal = Re + j*Im = 3113 + j*4171 = G * (100 + j*0) Ohm, so G = (3113 + j*4171 ) / ((100 + j*0) Ohm). The "unknown" impedance Zx produces output,  which is proportional to Zx: Outx = 3400 + j*4574 = G * Zx, so Zx = Outx / G = (3400 + j*4574)*(100 + j*0) Ohm / (3113 + j*4171)  109.5 + j*0.21 Ohm. As expected from a resistor, the imaginary component is nearly zero. The real component is 109.5 Ohms, which is a bit far from the expected 120 Ohm, but it could still be within manufacturing tolerance of both the resistors used for calibration and as the "unknown."

  • For this part I already order 16Mhz crystal, so I will change the crystal. 

    The undocumented issue with the "DFT" implemented in the AD5933/4 is that it only approximates the results given by the textbook DFT. Generally speaking, the synthesized  frequency with respect to clock frequency should be relatively high for the "DFT" on the chip to produce reasonably accurate results. To measure at lower frequencies it is often useful to run the chip at lower clock frequency.