How can I seperate a superposition of sine and random waves?

8 visualizaciones (últimos 30 días)
Hi, I'm into modal analysis. We want to vibrate a body using a combination of sine and random signals. Then we measure the response on a body using accelerometer. The measurement is 1 signal, the need is to separate the signal into two signals (sine and random) and see how close is the measurement to the original signals we used to vibrate the body, thus learning about the nature of interference, accuracy of accelerometers and so on. Does anyone knows how to do it? (not FFT)
Thanks in advance!

Respuesta aceptada

Youssef  Khmou
Youssef Khmou el 6 de Feb. de 2015
Separation of two wave forms can be accomplished using Kalman filter or wiener filter, you can find resources of these two filters, next you use root mean square error between recovered and original sine waves.
  4 comentarios
Youssef  Khmou
Youssef Khmou el 8 de Feb. de 2015
Editada: Youssef Khmou el 8 de Feb. de 2015
Y1 is the recovered wave form and and y is raw vector, the basic way is :
nn=y-Y1;
Compare statistically nn and noise.

Iniciar sesión para comentar.

Más respuestas (1)

Image Analyst
Image Analyst el 7 de Feb. de 2015
I guess I don't know why you need to separate anything. Why? Why not just calculate the RMS error, or PSNR, or similar things to tell how different your known input signal is from your output (measured) signal? I guess you might need to scale the amplitudes and make sure your time scales are also matched up, but that's about it I would think. If you don't want to do a spectral analysis with fft (for some unexplained reason), then you can use pwelch() (in the Signal Processing Toolbox). http://www.mathworks.com/help/signal/ref/pwelch.html
  2 comentarios
Alexi B.
Alexi B. el 7 de Feb. de 2015
Hmm... As I see it, we want to get the separate signals in order to see how they're different? I don't know, I'm not the lead engineer in the laboratory, I know the final goal is the run what is called operational modal analysis, that is, in the real test we won't know the original signals used on the body. So we want to study the response of all the system components and inaccuracies that will come from, measuring, analyzing, windowing, so on.
Regarding fft, perhaps I don't know the full abilities of the fft, but I played with it before posting a question here, all I was able to achieve is getting the sinus back (that is killing the random part). Perhaps you can specify what you meant?
Image Analyst
Image Analyst el 7 de Feb. de 2015
If you take the fft, you get the spectrum, which is the relative strengths of all frequencies in the signal. I don't know how you played with the fft, but whatever you did, you must have told it to give you back just the one sine wave. I mean the code will do exactly what you tell it to. The fft will give you all frequencies of sine waves back, but then you must have done the extra steps of zeroing out all the ones you don't want and then inverse transforming. That's the only way you could get just one frequency out instead of all of them.
Let me try to explain it a different way. An fft is a bunch of sine waves of all frequencies that, when summed, can replicate the original signal, similar to how you can replicate any signal with polynomials in a Taylor series. You say you're just getting one frequency out...look at it like this. You know a Taylor series, and you know that if you get a Taylor series for a sine wave, you get a1*x + x3*x^3 + a5*x^5 + a7*x^7 + ... Now if I told you that I did the Taylor series and got back just a line (the a1*x term), instead of all the terms, the only way that could happen is if I manually deleted all the terms a5, a7, a9, etc.

Iniciar sesión para comentar.

Categorías

Más información sobre Fourier Analysis and Filtering en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by