Just wanted to show what filter could do (I was trying to filter the 5 second trend). It's close but how much better could I theoretically get?
How would you filter this data?
1 view (last 30 days)
Show older comments
I have a set of data which is sampled from a motor. My goal is to get the values of motion parameters (velocity, acceleration, torque) vs. machine cycle.
In an ideal world, I would be able to sample 1 rotation of the motor at a high resolution and be done with it. However, due to the low coarse update rate (I don't have a DATAQ logger), I have to instead take a longer sample set of data and then sort the data by position to get the resolution that I need.
The photo below shows what my data looks like @ 60, 30, 15, and 5 seconds of trends. As you can see, the fundamental waveform looks good, but there is a lot of noise and junk due to measurement error, etc.
My question to you all is, what is the best* way to process these data sets to get the fundamental signal with very little error? I have dabbled with butterworth filters but there is still some error between filtered and actual.
Looking forward to a discussion on this topic!
Answers (2)
John Petersen
on 28 Nov 2012
Your 'noise' seems systematic in the sense that it is appears to always be approximately the same amplitude and is not random. In cases like these, you may want to try something more ad hoc, such as testing each point with several samples ahead and behind the point and replacing it with the mean if it is more than 2 or 3 stds away. This is very easy to try without requiring any toolboxes or learning new theories.
Will you always be able to post process the data or will you need to provide a solution in real-time?
0 Comments
See Also
Categories
Find more on Multirate Signal Processing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!