find the start point of abrupt change in signal matlab

12 visualizaciones (últimos 30 días)
Demet
Demet el 19 de Ag. de 2022
Comentada: Demet el 22 de Ag. de 2022
Hello,
I have a signal as y = [x y sh oa ahdv ...] and looks like as below:
I need to find the the point where signal increased abruptly and tried diff(), findchangepts(), ischange(), etc but any of them did not help me. I have 100 sample looks like this data so I am looking for a function that can do this job automatically.
I would be very grateful if anyone could help me.
Thanks.
Demet
  2 comentarios
Chunru
Chunru el 19 de Ag. de 2022
Attach your data.
Demet
Demet el 19 de Ag. de 2022
Hello,
Here is a data sample attached.
Thanks.

Iniciar sesión para comentar.

Respuesta aceptada

Chunru
Chunru el 20 de Ag. de 2022
Editada: Chunru el 22 de Ag. de 2022
load triggerInput.mat
plot(trigger)
trigger = trigger(1:2e4); % select the 1st part
%xlim([1 1e4])
%xlim([1500 2500])
% low pass the signal
%{
b = fir1(128, 0.001);
y = filtfilt(b, 1, trigger);
ipt = findchangepts(y,'MaxNumChanges',2)
yd = diff(y);
idx = find(yd>3e-3, 1, 'first')
figure
hold on
plot(y)
plot(trigger, 'r:');
xline(ipt, 'g');
grid on; box on
xlim([1 2e4])
fprintf('The change point at %d\n', ipt(2))
%}
Update based on your new explanation:
b = fir1(128, 0.001, 'high');
y = filtfilt(b, 1, trigger);
ipt = findchangepts(y,'Statistic', 'rms', 'MaxNumChanges',2)
ipt = 1×2
1733 7865
figure
hold on
plot(y)
plot(trigger, 'r:');
xline(ipt, 'g');
grid on; box on
xlim([1 2e4])
  3 comentarios
Chunru
Chunru el 22 de Ag. de 2022
See the update
Demet
Demet el 22 de Ag. de 2022
Hello,
I have checked the update and it works almost well. I have checked for each data and I decide to continue with this program as the maximum error is 30 for the sampling frequency is 512 (30/512=0.57 s).
Thank you!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre AI for Signals en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by