How to tell how smooth a signal oscillates?
2 次查看(过去 30 天)
显示 更早的评论
Maximilian Valentin Schraysshuen
2021-3-17
评论: Maximilian Valentin Schraysshuen
2021-3-24
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 个评论
Mathieu NOE
2021-3-17
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"
采纳的回答
Swetha Polemoni
2021-3-24
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
更多回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!