This is likely unnecessary architecture.
You don't really need (and probably don't want) negative voltages in your application.
- Your microcontroller ADC can only read positive voltages.
- Your op-amp can only generate positive voltages.
- The transducer will only generate positive voltages.
The piezo element is a large resistor at no pressure and decreases in resistance as pressure is applied.
(Note: I don't know what your ADC's input dynamic range is, so I will assume 0-5V here. Scale accordingly if your range is smaller)
To fit the element into your ADC's dynamic range, you need to convert change in resistance of the transducer (the Flexiforce) to change in voltage... and then scale the resulting output.
Before we go further, it should be noted that this transducer's datasheet is not sufficiently helpful. It lacks the curves or parameters that would actually allow you to predict the performance of this circuit. They even go so far as to tell you to calibrate each unit individually (implying high variability among units).
That said we can make some inferences from notes in the datasheet. Namely:
- They specify the unloaded resistance as being greater than 5 MegaOhm.
- The feedback resistance must be lower than the transducer's or the output will saturate.
- They specify a minimum feedback resistance of 1k.
I propose, connecting Vref to +5V, using a 256-tap 1-MegaOhm digitally-controlled potentiometer for Rf (ex. ANALOG DEVICES AD5241BRZ1M), and grounding the other terminal of the transducer.
This is the resulting transfer function:
where Rs is the resistance of the Flexiforce, Rf is the feedback resistance, and Vref is the voltage applied at the positive terminal of the OpAmp.
How it works
At higher pressure, the resistance of the transducer is lower. If your ADC has 10 effective bits, we can resolve 5mV from a 5V range.
Setting the gain to 1 MegaOhm (1e6 Ohms), we can resolve a 0.5% change in the sensors resistance! The output voltage will change from 4.000V to 3.995V.
As the resistance continues to decrease (more pressure applied) we can continue to resolve pressure with very high precision until the transducer's resistance approaches 1 MegaOhm (the same as the feedback resistance).
At this point, you should reduce the feedback resistance to increase dynamic range (the ability to measure a wider range of pressures) at the expense of resolution (the ability to measure tiny changes in pressure). DON'T WORRY. Your resolution performance will still be very good (likely better than the noise floor of the transducer or OpAmp).
At the high-end of the pressures the transducer could be exposed to, you will be at minimum feedback resistance. In the case of my proposed Analog Devices part, that's about Rf = 3.9k. In this situation you can resolve (theoretically) a 0.1% change in the transducers' resistance.
Awesome! Wide dynamic range and no messy variable negative voltage power supply!
It should be noted that the purpose of the negative bias is to increase your sensitivity at low pressures (where the transducer will be near 5 million Ohms). Such a system will not necessarily outperform my proposal as the inverting power supply introduces many additional noise pathways and must be designed extremely carefully for such a high-impedance sensing circuit. It will also cost substantially more to build as it uses more components and more expensive components.
The exact tuning and design parameters of this circuit will depend on how much (and how little) force you really need to be able to resolve and how the transducer actually behaves (the datasheet is only giving us bounds, not intermediate characteristics).