1
$\begingroup$

I am recording a signal from a vibration sensor with a frequency response that stops at about 7kHz, but linear up to 1kHz. I am thus recording data from it using an Arduino at 2kHz, so that signals up to 1kHz can be accurately represented.

I do not know exactly which frequency signal I am looking for, as the idea is to attempt to glean information from the vibrations.

However, in testing I overlooked connecting a low-pass filter between the sensor and arduino, so have likely gotten a large amount of aliasing in the signal.

So I suppose that this is a two part question:

  1. Given that the sensor only responds to frequencies up to about 7.5kHz, would there be some aliasing directly from the sensor? Where, say, a 10kHz vibration would show up as a lower frequency and corrupt the signal?

  2. Is there any way to remove this aliasing or must the data simply be collected again, with a filter to remove any unwanted frequencies?

$\endgroup$
3
  • $\begingroup$ Can you clarify what sampling rate is being used, how many bits and what sensitivity you are trying to achieve? It is unlikely that there is no response above 7 KHz, but attenuated; for example, I’d the sensor on its own has a first order response, the attenuation would be 6 dB per octave for signals above cutoff. $\endgroup$ Commented Apr 5, 2022 at 13:49
  • $\begingroup$ @DanBoschen The sampling rate is 2kHz, giving a max detected frequency of 1kHz, the ADC on an arduino is 8-bit, and as for sensitivity I am a bit unsure, but the Arduino thus has 1024 levels it can represent the voltage as, where the supply to the sensor is 5V, which defines the maximum level it can send out. $\endgroup$ Commented Apr 11, 2022 at 20:44
  • $\begingroup$ Got it- I believe Hilmar answered all your questions and to confirm you must have an anti-alias filter—- even if there were no signals to alias in, you will still alias in noise and increase your noise floor. The only way I am aware of the cancel aliasing is through synchronous sampling with multiple converters—- much easier to just filter in the analog. $\endgroup$ Commented Apr 11, 2022 at 20:53

1 Answer 1

1
$\begingroup$

... would there be some aliasing directly from the sensor?

No. This just means that the sensitivity of the sensor drops with frequency. You can consider this as "built-in" low pass filter. The details and shape you can find in the data sheet of the sensor

Is there any way to remove this aliasing

No. Let's a look at an example: a 1500 Hz cosine wave and a 2500 Hz cosine wave sampled at 2 kHz. The data points are EXACTLY the same, so there is no way to distinguish between the two.

or must the data simply be collected again, with a filter to remove any unwanted frequencies?

Yes. The choice of anti aliasing filter is not trivial. It's a trade-off between a flat pass-band, amount of attenuation in the stop band (i.e. aliasing reduction), phase distortion, time domain ringing, causality & latency, etc.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.