How to tell how smooth a signal oscillates?
3 views (last 30 days)
Show older comments
Maximilian Valentin Schraysshuen
on 17 Mar 2021
Commented: Maximilian Valentin Schraysshuen
on 24 Mar 2021
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 Comment
Mathieu NOE
on 17 Mar 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"
Accepted Answer
Swetha Polemoni
on 24 Mar 2021
Hi Maximilian Valentin Schraysshuen
You may find the following approach useful.
- Calculate the mean of the signal using "mean"
- Calculate the windowed mean of the signal using "movmean" . Size of window can be varied according to the signal.
- Now deviation of windowed mean with respect to mean can be used to determine if the oscillations are smooth or not.
Hope this helps
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!