Remove noise from strain gauge measurements

23 vues (au cours des 30 derniers jours)
Vishwa Teja Kasoju
Vishwa Teja Kasoju le 18 Oct 2016
Commenté : PIYUSH MOHANTY le 25 Sep 2019
Hi, I have been working on filtering strain gauge data but having problems with filtering the Strain gauge data. My data looks as shown below.
After using low-pass 5th order butter worth filter with a cut off frequency of 85Hzt, i am able to cut down the noise but i still could not able to get a smooth curve that i am expecting.Here is how data looks after filtering
As you can see in the image, the data still shows some noise. Can anyone help in filtering the data for a smoothed curve?
i tried using other cut off frequencies but nothing is working.
Any help will be a lot appreciated.
Thank you.

Réponse acceptée

Star Strider
Star Strider le 18 Oct 2016
You probably need to look closely at your signal with the fft (link), specifically the code between the first (top) two plot figures, and use that information to determine your cutoff frequencies.
With respect to designing the filter, the Signal Processing Toolbox designfilt function is likely easiest to use. My IIR filter design procedure is here: How to design a lowpass filter for ocean wave data in Matlab?
  7 commentaires
Star Strider
Star Strider le 19 Oct 2016
My pleasure!
PIYUSH MOHANTY
PIYUSH MOHANTY le 25 Sep 2019
How did you decide on Wp and Ws?

Connectez-vous pour commenter.

Plus de réponses (1)

KSSV
KSSV le 18 Oct 2016
Try this:
x = 0:.1:20;
y1 = 5*sin(x) + 2*x - x.^2 +.3*x.^3 - .2*(x-15).^4 - 10*x.^2.*cos(x./3+12).^3 + .5*(x-12).^4;
r = randi(1000,1,201) - 500;
y1 = y1+r; % add noise
g = gausswin(20); % <-- this value determines the width of the smoothing window
g = g/sum(g);
y3 = conv(y2, g, 'same') ;
figure;
hold on;
plot(y1, 'b');
plot(y3, 'g', 'linewidth', 3);
  3 commentaires
Image Analyst
Image Analyst le 18 Oct 2016
What did you use as the width of the Gaussian Window in gausswin()? It looks like you used something far, far too big. With 90,000 data points, looking at your plot, it looks like you should use something around 3000 or so. But it looks like you used a number like 50,000 or something way too big.
Vishwa Teja Kasoju
Vishwa Teja Kasoju le 19 Oct 2016
Yes, i used 86,000 for Gaussian Window.But after using 3000 in Gausswin(), the graph looked pretty smooth.Can you please tell me how to decide on this value?

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by