I run a parking facility that has recently suffered a rash of thefts, accomplished by cutting through our chain link fence.
I am trying to design a simple circuit using a piezoelectric vibration sensor, which will allow us to detect fence cutting in real time and dispatch security.
Because the piezo film can generate high voltages, I need to scale the output to 0-3.3V so as not to damage the MCU I'm using to read the values (ESP32). I would also like to boost the signal, so that small vibrations are easily detectable.
I have tried a number of different circuit designs, including the control board provided by the manufacturer of the piezo film. None come close to the sensitivity I can observe by hooking up the piezo to my oscilloscope. As a crude comparison, with the piezo film taped to my desk, the oscilloscope can detect light finger taps on the desk several inches away, whereas my circuits require explicitly bending the film before any signal registers.
I am not an electrical engineer, and have a very limited understanding of signal conditioning, however, I'd very much like to understand where I've gone wrong, and not just have the answer dropped in my lap. Much appreciated.
What I think is my most correct attempt: Falstad Circuit Simulation
The op-amp I'm using is LM2904. Selected because this is what DFRobot is using in their board.