Electronic – Significant low frequency content from digital oscilloscope measurement

fourieroscilloscopetransient

I have been using a digital oscilloscope to measure a fast transient signal and have then processed the data in MATLAB. Performing an FFT on the data I consistently see a significantly large low frequency component which I believe is not part of the actual signal but rather to do with how the oscilloscope is measuring the signal. I have a few questions and would be very grateful to anyone that can help:

  1. How can I prove the low frequency component isn't actually part of the signal (assuming this is true)?
  2. What techniques can I use to remove this low frequency component from the data?

On question 2, I have tried using a high pass filter in MATLAB however when I then perform and IFFT the time domain signal looks significantly different to what I would expect.

Thanks in advance for any help.

Best Answer

You state you've not done any windowing, even if you have, you'd still expect a large DC signal (from the vertical offset of the trace), which will have leaked into other low frequency bins.

The FFT takes a signal which is a loop (ie it repeats over and over again). If your signal doesn't match at the ends, you get frequency components that correspond to harmonics of the period of the loop. There are various techniques for helping fix this, such as windowing, zero padding and pre-whitening.

If you're genuinely getting a signal at that frequency (eg most things have 50 or 60Hz components from AC), you can remove it, by filtering, either in the time domain before the FFT (using a FIR or IIR), or afterwards in the frequency domain after the FFT.