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.

  • The circuit you posted has 3 different sources of power: +4.096V, +12V and -12V - not sure which "different power source" you are asking about. Is your MCU is powered by 5V instead of 3.3V you mentioned earlier? You can certainly power the AD5933 and additional circuits with the same 5V with the caveat that digital circuits tend to produce high-frequency spikes on on their power lines that can somewhat reduce the measurement accuracy. You can always use some linear regulator to get improved 3.3V from the 5V MCU power supply. Also, this circuit is not a 4-wire impedance measurement. 

  • R11 and R5 are connected in parallel to each other. If R5 seems to represent the impedance to be measured, then R11 has no function in this schematic and should be removed.

    First thing to change would be to increase R3 to some reasonable value, say 1k for now, - it is the current-setting resistor for your impedance R5. When it is 0 - it instructs U2 to produce infinitely large current through R5, which requires infinite output voltage, which is impossible in practice, so U2 output slams into the power supply rails. When simulating, check that the output voltage of U2 is a well-formed sine wave of about 0.1V in amplitude

    Second thing would be to remove R10 for now - the circuit does not need that much gain from INAMP. INAMP specs call for min 4.5V power supply voltage, so in your circuit at 3.3V Vdd it is operated out of spec. Perhaps it can still work, but will require some fiddling with the Input Common-Mode Voltage Range vs. Output Voltage, please see datasheet Fig 28, where it is specified for 5V Vdd. It is hard to predict how it is going to scale at 3.3V Vdd, maybe the model will be able to tell that. The desired behaviour would be for the OUTPUT VOLTAGE to have a baseline of Vdd/2 = 1.65V and to be able to swing from 0.2V to 3.1V undistorted. To achieve that it may be required to re-bias the U1 and U2 to lower voltage, perhaps somewhere down to 0.8V or lower to get into the INPUT COMMON-MODE VOLTAGE range, where there would be no signal distortion.

    To summarize, lets increase R3 to 1k, remove R10 and run the simulation. U2 output should be a well-formed sine wave of 0.1V amplitude and DC bias of 1.65V. We would like to see the U4 output to be a well-formed sine wave of the same amplitude and bias, but likely it is not going to happen until U1 and U2 are rebiased to lower DC voltage - that would be the next step.

    Please feel free to attach LT Spice models  to your posts via Insert->Image/Video/File (you might need to zip the file if the system refuses).

    P.S. You might want to consider using INAMP with lower power supply voltage requirements, usually referred to as "single-supply" INAMPS such as INA331, MAX4462AD8223, etc.

  • Thanks for your time and for the great explanation. 

    I did some changes and I attached the Lt Spice file. Now, I am getting sinewave on the output. 

    Please, check the file, and waiting for your suggestions.

    Thanks once again.2477.50-250-range.asc

  • Congrats, your simulation works! You have probably noticed that the model gets stuck, when the U4 output approaches certain amplitude (about 0.65V) when reducing R4 to give U4 larger gain - this is likely indication that signal hits the boundaries of that "box" on  Fig, 28 in the AD8220 datasheet or rather the unknown boundaries of that "box" at the off-spec 3.3V power voltage.

    Some general remarks regarding your model:
    1. What does R12 represent? If this is the internal impedance of the AD5933 VOUT source, its value should be taken form  Table 5. "Voltage Levels Respective Bias Levels for 3.3 V" on p. 13 of the AD5933 datasheet
    2. What does R11 represent? It seems to have no function in this schematic and should be removed
    3. What would be the function of C2 - it only reduces the signal and shifts its phase, perhaps should be removed
    4. R8 and R9 are probably unnecessary, at least one of them or both should be removed

    What would you want to do next? Tune this model to work with the AD5933? Try some different instrumentation amplifier? Some additional gain should be added to the AD5933 input OPAMP to obtain the amplitude of Vdd/2 - 0.2V = 1.45V for optimal use of the ADC input dynamic 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?

Reply Children
  • 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.

  • 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.