Efficient way to reduce noise from load cell data DAQ?

10 次查看(过去 30 天)
Dear all,
I use DAQ to get data from Loadcell. However, the signal wave have many unnecessary waves (picture 1). I want to reduce those waves, just keep the peak wave (it show the load from the hammer) look like picture 2. I has tried to use filter function, but not working. What should I do to solve it.
Thank you very much.

采纳的回答

Star Strider
Star Strider 2016-6-20
The easiest way would be to use a low-pass filter, band-pass filter (if you want to remove a d-c offset), or a notch filter to filter out the high-frequency noise. There are many ways to design filters in MATLAB, including designfilt, firls, and others. My usual procedure for IIR filters is here: How to design a lowpass filter for ocean wave data in Matlab?
If you provide a sample of your data, I may be able to help you design your filter. I will need a vector of sample times as well as your signal vector.
  4 个评论
vu ngothanh
vu ngothanh 2016-6-21
Oh, The result is very very good, much more better than I expected. Do you think that it will be better if insert this 2 line in the last result that you gave me.
[b,a]=butter(2,0.01);
Lc_last=filter(b,a,LC_filt);
Thank you very much.
God bless you.
Star Strider
Star Strider 2016-6-21
My pleasure.
I am not certain what result you want, so experiment with the filters to isolate your frequencies of interest. That code designs a low-pass filter with a cutoff of about 51 Hz. Looking at the Fourier transform plot, it would seem to me to eliminate part of your signal, probably eliminating the high-frequency transients.
I would use filtfilt rather than filter, because filtfilt has a maximally flat phase response, and will eliminate phase distortion in the filtered signal.
The third column of your data appears to be an impact record (input), so if you want to get an input-output transfer function of your system, you would have to filter the input signal with the same low-pass filter. (You can estimate your system transfer function from the two time-domain signals with the invfreqz function in the Signal Processing Toolbox. As with everything else in signal processing, you will have to experiment with it to get the result you want.)
Thank you. I wish you the same.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Digital Filter Analysis 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by