3
\$\begingroup\$

The circuit is a charge amplifier that connects to a piezoelectric sensor. A buffered voltage divider provides a VDD/2 virtual ground, so the output is in range 0.0V - VDD and oscillates around VDD/2. The circuit is rougly based on this reference design by Analog Devices.

In most cases this works as intended, however when there is a large acceleration applied to the piezoelectric sensor, the noise in the system is suddenly increased by a factor of 20. The increased noise floor stays until the power is reset!

enter image description here

Taking some measurements with an oscilloscope showed that the noise has a frequency of ~115kHz with an amplitude of +/-200mV (VDD = 3.3V). Also the noise can be measured both on CHG_AMP_OUT and on VREF, so I am guessing the TLV9002 is doing something funny.

Apart from the increased noise floor the circuit still works (sensor signal visible in CHG_AMP_OUT), also VDD does not contain any noise, so the power supply itself should be ok. As mentioned above, the increased noise floor stays until the system power is shut off. Shorting C25 also resets the noise back to normal.

enter image description here

Power is provided by USB + LDO. Powering with Battery + LDO does not solve the issue.

So far my guess is that the piezo-sensor generates a very high voltage that somehow makes one of the opamps run into undefined behaviour.

Any idea what could cause this noise to pop up or how to further debug this?

\$\endgroup\$
1
  • 5
    \$\begingroup\$ Try removing C26. \$\endgroup\$ Commented Oct 25, 2023 at 0:04

3 Answers 3

10
\$\begingroup\$

The noise is probably one of the opamps going in to oscillation. C26 is probably making U9B unstable, or on the edge of being unstable.

Try this connection by adding Rs between the output of U9B and C26. Rs should be between 100 to 1k ohms. This lowpass will also reduce the noise generated by U9B. You may want to add a 10uF capacitor across C26.

schematic

simulate this circuit – Schematic created using CircuitLab

\$\endgroup\$
2
  • 1
    \$\begingroup\$ 10uF capacitor across C26 across C25? \$\endgroup\$ Commented Oct 25, 2023 at 8:21
  • \$\begingroup\$ or just remove C26. Adding series resistance is just increasing the source impedance of the virtual ground at low frequenices. Do the filtering on the input side of the op amp and let the op amp feedback do its work. \$\endgroup\$ Commented Oct 25, 2023 at 8:42
7
\$\begingroup\$

Page 1 of the TLV9002 data sheet tells you this: -

enter image description here

You have 100 nF connected and, you also have this output connected to the outside world (PIEZO1N) so, add another 1 kΩ resistor like this: -

enter image description here

Also take note of this and remember that both op-amps need supply decoupling (not just the AD8605): -

enter image description here

In addition to the 1 kΩ resistor I mentioned above, this extract from the data sheet also implies the same: -

enter image description here

\$\endgroup\$
2
  • \$\begingroup\$ Thanks for the comment. The TLV is decoupled too (1nF + 100uF), I just did not post an image of that part of the schematic. \$\endgroup\$ Commented Oct 25, 2023 at 12:16
  • \$\begingroup\$ @Johannes I think you should consider accepting one of the answers provided to you. \$\endgroup\$ Commented Nov 6, 2023 at 21:26
1
\$\begingroup\$

Apart from the increased noise floor the circuit still works (sensor signal visible in CHG_AMP_OUT)

That some signal is visible in CHG_AMP_OUT does not mean that this signal can be used for measurements.

Using your "Sensor Events" graph, I've tried and "reverse-engineered" your piezo sensor. To comply with your ca. 50 ms of output overload recovery time, the injected charge should be on the order of 3uC with the sensor capacitance of 15nF:

inp-out-2s

The voltage at the opamp's inverting input is ca. 50 V at maximum. You can argue that your sensor capacitance (which you do not specify in your question) is different and also the parameters of model's voltage source pulse (amplitude and timing) should be different, but all these values are constrained by the requirement to have an agreement between the simulated waveform and your "Sensor Events" graph. You can verify with simulations that, with any realization of a sensor model giving a simulated waveform similar to your "Sensor Events" graph, you still have the voltage at the opamp's inverting input on the order of tens of volts or even greater. As this value exceeds the supply voltage by more than 2 V, output phase reversal is unavoidable (AD8605 datasheet, OUTPUT PHASE REVERSAL):

Phase reversal is defined as a change in polarity at the output of the amplifier when a voltage that exceeds the maximum input common-mode voltage drives the input. Phase reversal can cause permanent damage to the amplifier; it may also cause system lockups in feedback loops. The AD8605 does not exhibit phase reversal even for inputs exceeding the supply voltage by more than 2V.

and your plot supports the output phase reversal hypothesis.

A signal conditioning circuit must do its work of conditioning the input signal, which means, among other things, scaling the signal to a predefined operating range. If the signals of your "sensor events" are typical for your application, your signal conditioning circuit does not "condition" signals at all.

If these events are not typical but very infrequent (outliers), at the very least you should protect your circuit. The AD8605 datasheet instructs you on input overvoltage protection:

The AD8605 has internal protective circuitry. However, if the voltage applied at either input exceeds the supplies by more than 2.5 V, external resistors should be placed in series with the inputs. The resistor values can be determined by the formula $$ {{V_{IN}-V_S}\over{R_S+200Ω}}≤5mA $$ The remarkable low input offset current of the AD8605 (<1 pA) allows the use of larger value resistors. With a 10 kΩ resistor at the input, the output voltage has less than 10 nV of error voltage. A 10 kΩ resistor has less than 13 nV/√Hz of thermal noise at room temperature.

protected inputs

With the input voltage Vin = 50 V, the series resistor RS = 10 kΩ satisfies the datasheet formula. I must confess that I don't know where the parameter 5mA come from: it cannot be found elsewhere in the datasheet except this formula.

Expectingly, introducing these protection resistors into the simulated circuit does not change the simulation waveforms. Also, the AD8605 SPICE model does not predict output phase reversal. So, we can only believe in the datasheet instructions and test the PCB with the recommended resistors in series with the inputs. Do not expect that these resistors make the circuit suitable for measuring outlier signals; these resistors only provide protection against the input overvoltage up to 50 V.

As for the "noise" arising as the result of overvoltage events, it might appear to be unexpected and even enigmatic, but you cannot expect well-defined behavior when using devices outside their specification parameters, and 100 nF capacitive load for TLV900x voltage follower is well outside 500 pF. The datasheet only promises that the resistive open-loop output impedance makes stabilization easier with much higher capacitive loads but does not guarantee that it does not require some effort. If, irrespective of your sensor problem, you are interested in stability compensation measures, read about out-of-the-loop and in-the-loop compensation techniques. For the time being, follow the advice given in the comments and answers to get rid of the parasitic oscillation problem in your circuit.

\$\endgroup\$
4
  • \$\begingroup\$ Thanks for your elaborated answer! Removing the capacitive load seems to solve the oscilation. About output-phase-reversal: Your quote from the dataset says "The AD8605 does not exhibit phase reversal even for inputs exceeding the supply voltage by more than 2V", so output-phase-reversal should not be a problem. The large spikes are not the signals I want to measure, so adding those 10k-series-resistors will probably be enough, thank you. \$\endgroup\$ Commented Nov 6, 2023 at 20:59
  • \$\begingroup\$ Out of curiosity: how would you change the circuit to actually measure those spikes/outliers? Wouldn't you have to drastically reduce the overall input amplitude (and thus lose ADC resolution in lower amplitude areas)? \$\endgroup\$ Commented Nov 6, 2023 at 21:01
  • \$\begingroup\$ First, "The AD8605 does not exhibit phase reversal even for inputs exceeding the supply voltage by more than 2V" should not be read as "The AD8605 does not exhibit phase reversal with ANY voltages at inputs", so output-phase-reversal should not be a problem IFF you have an authoritative reference (or verified the fact experimentally) that 'No input value can force the AD8605 into phase reversal, beware only the damage of opamp inputs'. Your CHG_AMP_OUT plots are suspiciously similar to the typical output-phase-reversal scenario, so I would double-check if this might be the case. \$\endgroup\$ Commented Nov 8, 2023 at 12:46
  • \$\begingroup\$ As for how would you change the circuit, is your curiosity addressing my ability to handle the problem, or are you previewing the potential problem of wide dynamic range in your measurements? If the latter, then, prior to bothering you with something like AGR, logarithmic amplifiers, etc., I would recommend you delve deeper into what are the sensor reading limits, looking into sensor physics. By the way, a recent question electronics.stackexchange.com/questions/687967/… might be a useful reading to begin. \$\endgroup\$ Commented Nov 8, 2023 at 12:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.