Best way to process accelerometer data to get velocity/force transfer function - spline detrend?
8 views (last 30 days)
Show older comments
Trying to get velocity/force admittance function for violin, using chirp input to shaker. Have force vector, and am trying to get velocity from accelerometer data. I use cumsum to integrate it, but this makes for nasty-shaped trends that add noise to resulting fft of velocity. I've tried various ways to remove trends like subtracting off smoothed version of data. Not much success. Next idea is to fit the trend with a spline, then subtracting it off. If there is some clearly better way to process this data, please enlighten me! Thanks.
0 Comments
Answers (1)
Star Strider
on 5 Jul 2015
Before attempting to analyse the accelerometer data, I would do an fft of the accelerometer data to determine the frequencies with valid data and those with noise. Then design a bandpass filter (Butterworth is appropriate) with an appropriate lower cutoff frequency to eliminate baseline drift (low-frequency trends) and D-C offset, and the upper cutoff frequency to include as much of your signal and eliminate as much high-frequency noise as possible. (You can find the essentials of filter design here.) The filter will produce a usable signal for further processing (if all goes well). You can use the same filter to process all your accelerometer channels simultaneously if you give them to your filter as a matrix.
I would then use cumtrapz rather than cumsum, because cumtrapz will likely result in much more accurate integrals than cumsum. It will also be more successful with the low-frequency offsets and trends and high-frequency noise eliminated.
0 Comments
See Also
Categories
Find more on Signal Generation and Preprocessing 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!