Extracting a sub-hertz modulating wave.

4 ビュー (過去 30 日間)
Alasdair Fulton
Alasdair Fulton 2016 年 7 月 5 日
編集済み: Star Strider 2016 年 7 月 5 日
If I was going to extract a modulating wave from a random vibration signal, where the modulating wave had period in the 4+ second region (ocean waves), how would I do it?
In other words - the vibration measured at a bearing increases and decreases cyclically as ocean waves pass over a tidal stream turbine (due to the fluctuating inflow speed). Is it possible to use enveloping to extract such a low frequency modulation?

回答 (2 件)

J. Webster
J. Webster 2016 年 7 月 5 日
Why not just use a low pass filter?
  2 件のコメント
J. Webster
J. Webster 2016 年 7 月 5 日
Maybe I'm confused. If the accelerometer(?) can't measure below that frequency, how is it showing up in your signal.
Also, can you be explicit in what you mean by "modulated". And are you trying to measure that, or get rid of that?


Star Strider
Star Strider 2016 年 7 月 5 日
編集済み: Star Strider 2016 年 7 月 5 日
It largely depends on what your sampling frequency is. It has to be sufficiently high to allow you to resolve your signal, and with higher sampling frequencies, the filters are easier to design. It would probably be easiest to use one of the dfilt or designfilt bandpass filters. Bandpass filters allow you to eliminate the d-c (baseline) offset and lower frequencies, if those are important considerations. Use the filtfilt function for the actual filtering, since it has a maximally-flat phase response, eliminating phase distortion in the filtered signal. Use the freqz function to be sure your filter does what you want it to.
EDIT (18:05 UCT) If you know the ‘carrier’ frequency with some certainty, you can use the demod function to recover the modulating wave. It still requires that you have a high-enough sampling frequency, but in this instance, I’m not certain what ‘high enough’ means.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by