Smoothing a roughly sinusoidal signal
4 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I have position data coming from a high resolution angular position sensor and I need to improve the accuracy of the data by removing a regular sinusoid from it.
The below graph shows three plots of angular position error against time:
![MatLab Forum.JPG](https://www.mathworks.com/matlabcentral/answers/uploaded_files/247225/MatLab%20Forum.jpeg)
- The brown plot is the position error which needs to be corrected (ideal is a zero error horizontal line).
- The blue plot is the position error of a very high accuracy reference angular position sensor (for testing only and not present in the deployed application).
- The green plot is the difference between the brown and blue plots.
Common to both the brown and blue plot is a fast in phase ~2 sec error which can be ignored.
In the brown plot there's a ~24 sec error which I need to remove (the green difference plot more clearly shows this as it removes the faster ~2 sec error). The solution algorithm eventually needs to be deployed to run in realtime on a 32 bit microcontroller.
The dataset is in .csv format which I can post for analysis.
I've Googled various examples which lead me to believe a solution to this problem should be possible. The issue is I don't have sufficient signal processing experience to know how to implement a solution and would be very grateful for any help in solving this problem.
Best wishes,
Richard
0 件のコメント
回答 (1 件)
Daniel M
2019 年 11 月 8 日
So are you saying you want to remove the frequency of the blue signal from the brown signal? Fairly easy, just use a notch/bandstop filter. You can find examples on these pages
7 件のコメント
Daniel M
2019 年 11 月 9 日
Are you using the DSP System toolbox? They have real time filters that you can do on individual samples at a time. But you'll have to look more into it, because I'm not too familiar.
参考
カテゴリ
Help Center および File Exchange で Digital Filtering についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!