02-06-2019 09:05 AM
Hi all,
I'm in trouble with a signal processing in fpga. I'm reading a pressure signal from trasducer (0-100 mbar | 4-20mA with 500 ohm shunt resistor) with a NI9205 module and cRIO9063.
Sampling at 1kHz.
Take a look the png to view the acquisition chart, the Y are in Volt.
The question is: how to suppress the noise and amplify the signal? I need the peaks more amplified.
These are the tests I've done:
1) moving average: good for noise but cut the peaks;
2) butterworth filter varing a lot of parameters: I found improvements with second order filter and 100 Hz cut off frequency, but not enough;
Any solutions?
Thanks
02-06-2019 10:29 AM
Know your enemy 🙂
Sample with 10k and do a FFT.
(your timescale is missing .. or a raw data snipped (vi with copied graph and saved with current values default)
If (as I expect) your major noise is line noise a notch filter as a software solution is worth a try.
02-07-2019 04:25 AM
Thanks Henrik,
Take a look. The FFT show a small peak at 1800Hz. I think this does not affect the result, because I do a filter over 100Hz.
03-14-2019 02:37 AM
Yes applying a low-pass filter will reduce the noise at higher frequencies and the peaks will probably be more prominent. But if there is noise in the signal, there is probably a reason for it. By supressing the noise & amplifying the signal one only loses information which will not be available later, at post processing.