How to Correct Signal Waveform (may use some filter)

1 visualización (últimos 30 días)
Runzi Hao
Runzi Hao el 2 de Mayo de 2023
Comentada: Runzi Hao el 3 de Mayo de 2023
Hello, I would like to ask is there a way to process below data so that, when y goes from -1 to 1 (or from 1 to -1), there are no small dips near 1 (or -1). The force applied to generate such data has squre waveform. But my data waveform is distorted.
I have tried using lowpass(), but the dips are still there. Data and figure are attached.
Manny thanks and best regards,
Ryanne
  1 comentario
Runzi Hao
Runzi Hao el 2 de Mayo de 2023
Editada: Runzi Hao el 3 de Mayo de 2023
Also I hope the near 1 (or near -1) signals before the dips can be increased to 1 (or -1).
The sampling rate is 1e11 Hz. Data in first column is in nanoseconds.

Iniciar sesión para comentar.

Respuesta aceptada

Chunru
Chunru el 3 de Mayo de 2023
You can try to use a low pass filter.
websave("data.mat", "https://www.mathworks.com/matlabcentral/answers/uploaded_files/1372834/ask_matlab_community.mat")
ans = '/users/mss.system.ENlxcn/data.mat'
load data
% design a low pass filter
d = designfilt("lowpassfir", PassbandFrequency=0.04, StopbandFrequency=0.12, ...
PassbandRipple=1, StopbandAttenuation=60);
x = filtfilt(d, dataAsk(:,2));
plot(dataAsk(:,1), dataAsk(:, 2))
hold on;
plot(dataAsk(:,1), x)
  1 comentario
Runzi Hao
Runzi Hao el 3 de Mayo de 2023
Cool! It works well and thank you so much for the solution!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Signal Processing Toolbox en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by