I am currently prototyping a circuit which measures pulses on piezo-electric sensors; however, I seem to be having an issue with noise. When the circuit is battery powered (and therefore floating), there is no noise on the piezo sensor and pulses can be detected easily. However, when the negative terminal of the battery is earthed, the piezo sensor shows about 100mv of 50Hz noise, making it more difficult to detect small pulses. This is a problem as the battery may be earthed in certain conditions (eg an earthed battery charger could be connected).
Why does earthing the negative terminal of the battery introduce this noise? How can I eliminate this noise?
I have considered isolating the entire circuit so that it floats independently of earth, but I'm not sure this would work and the isolation methods I'v come across (isolating buck converters, isolating amplifiers etc) all seem to be inefficient which is not good for this application as it must be low powered.
Another interesting effect to note is that earthing the battery does not always cause this noise. I'm thinking this may be due to certain geographical locations being noisier than others.
Circuit info: The battery is a 12v lead acid battery, which is reduced to 3.3V using a buck converter. The piezos are utilised with a charge amplifier which centres there voltage at 1.6v (allowing a positive and negative swing). The PCB uses an entire layer as a ground plane and is NOT earthed at any point (I'm not sure ground loops are the problem here).
Measurement method: Currently I am measuring the output of the piezos by connecting the output of the charge amplifier to a logic analyser (which is capable of measuring digital and analogue signals), but eventually the ADC of a microcontroller will be reading this. The logic analyser is connected to a laptop which is also floating (and therefore is NOT earthed).
Any insights would be greatly appreciated.