Wondering if its possible to find the steady state of a data set through a matlab function. Attached is what I'm working with and the plot is of time and theta_dot. Thanks

 Réponse acceptée

Mathieu NOE
Mathieu NOE le 2 Fév 2021

0 votes

hello Matthew
see below :
%Import data
load('DCMotor_OL_Data_4.5V_A02.mat')
% smoothin a bit the derivative
theta_dot_smoo = sgolayfilt(theta_dot,1,21);
figure(1);
plot(time,theta_dot,'b',time,theta_dot_smoo,'r');
ylabel('theta dot');
xlabel('Time (s)');
legend('raw','sgolay filtered');
title('theta dot')
% compute steady state values based on smoothed data
threshold = 0.98*theta_dot_smoo(end); % select only values that are above 98% of the last data y amplitude (smoothed)
ind = find(theta_dot_smoo> threshold);
theta_dot_steady_sate = mean(theta_dot(ind));

Plus de réponses (0)

Catégories

En savoir plus sur Elementary Math dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by