Buon giorno a tutti,
mi ritrovo su questo forum a dover chiedere una cosa in merito alla funzione FFT di matlab.
Sto campionando un segnale vibrazionale di un motore elettrico tramite Arduino che si interfaccia con un accelerometro. Per ora non ho ancora collegato MatLab con Arduino. Questa sarà la seconda parte del mio progetto.
Il segnale campionato non è altro che un vettore con diversi valori che ho deciso di plottare secondo il seguente codice:
clear all
close all
clc
Z=[ 10 44 9 43 -24 17 -15 -6 -9 -34 -53 31 10 18 35 38 -9 -16 -28 -3 -8 -12 49 18 34 -4 -28 -29 -7 -27 6 -24 36 50 26 33 -20 -18 13 -10 2 -16 -31 -1 -5 21 30 19 -4 29 -57 -5 -10 -20 -27 -11 36 2 -42 39 45 -12 -4 -20 -1 -18 -16 -15 -6 -20 72 46 32 31 6 -37 -37 ];
Z_i=length(Z); %lunghezza del vettore
Fs = 500; % Sampling frequency
T = 1/Fs; % Sampling period
L =Z_i; % Length of signal
t = (0:L-1)*T;
RMS=rms(Z); %RMS del vettore Z
figure('name','TIME DOMAIN');
plot(1000*t(1:70),Z(1:70))
grid on
title('Time domain')
xlabel('t (milliseconds)')
ylabel('Segnale(t)')
Ovviamente Z può anche essere riempito con più valori.
Concettualmente è possibile fare una FFT di un vettore(Z nel mio caso)?
Se si come posso plottare i risultati per leggere lo spettro in frequenza?
Grazie