% Charger les données depuis le fichier CSV
data = readtable('02 - m1_load_0.5Nm_half_speed.csv');
% Extraire les colonnes d'accélération
AccX = data.AccX;
AccY = data.AccY;
AccZ = data.AccZ;
% Fréquence d'échantillonnage (Fs) - à ajuster en fonction
des données
Fs = 1000; % Exemple de 1000 Hz (remplacez par la valeur
réelle)
L = length(AccX); % Nombre total d'échantillons
T = 1 / Fs; % Période d'échantillonnage
% Calcul de la Transformée de Fourier pour chaque axe
Yx = fft(AccX);
Yy = fft(AccY);
Yz = fft(AccZ);
% Calcul des spectres simple côté (amplitude spectrale)
P2x = abs(Yx / L);
P1x = P2x(1:L/2+1);
P1x(2:end-1) = 2 * P1x(2:end-1);
P2y = abs(Yy / L);
P1y = P2y(1:L/2+1);
P1y(2:end-1) = 2 * P1y(2:end-1);
P2z = abs(Yz / L);
P1z = P2z(1:L/2+1);
P1z(2:end-1) = 2 * P1z(2:end-1);
% Calcul de l'axe des fréquences
f = Fs * (0:(L/2)) / L;
% Tracer les résultats
figure;
% Graphique pour AccX
subplot(3, 1, 1);
plot(f, P1x, 'b');
title('Spectre de Fourier - AccX');
xlabel('Fréquence (Hz)');
ylabel('|Amplitude|');
grid on;
% Graphique pour AccY
subplot(3, 1, 2);
plot(f, P1y, 'r');
title('Spectre de Fourier - AccY');
xlabel('Fréquence (Hz)');
ylabel('|Amplitude|');
grid on;
% Graphique pour AccZ
subplot(3, 1, 3);
plot(f, P1z, 'g');
title('Spectre de Fourier - AccZ');
xlabel('Fréquence (Hz)');
ylabel('|Amplitude|');
grid on;