How to tell how smooth a signal oscillates?

1 visualización (últimos 30 días)
Hello,
I have a quite noisy signal from an aero dynamic experiment. I need to find out how smooth my signal oscillates or more precisely if my system skips an oscillation ever once in a while.
I have implemented a Butterworth filter which works quite well, nevertheless I struggle to quantify if the system skips oscillations.
My idea was to compute an average oscillation (the average alle oscillations to receive one average oscillation). And then compare each oscillation to the average and if the deviation is too large it should be marked.
Am I taking the right approach? Is there a function to with does this?
Here the system oscillates smoothly:
Here the system oscillates badly:
  1 comentario
Mathieu NOE
Mathieu NOE el 17 de Mzo. de 2021
hello
my 2 cents suggestion ; either use findpeaks or even better, envelope and decide based on deviation of these if the signal is "steady" or "unsteady"

Iniciar sesión para comentar.

Respuesta aceptada

Swetha Polemoni
Swetha Polemoni el 24 de Mzo. de 2021
Hi Maximilian Valentin Schraysshuen
You may find the following approach useful.
  1. Calculate the mean of the signal using "mean"
  2. Calculate the windowed mean of the signal using "movmean" . Size of window can be varied according to the signal.
  3. Now deviation of windowed mean with respect to mean can be used to determine if the oscillations are smooth or not.
Hope this helps
  1 comentario
Maximilian Valentin Schraysshuen
Maximilian Valentin Schraysshuen el 24 de Mzo. de 2021
Hello Swetha Polemoni,
thank you very much for your answer!
I have implemented it another way already, but will use yours as well as is has benefits over my idea.
Have a nice day

Iniciar sesión para comentar.

Más respuestas (0)

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by