Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Una volta ottenuti i dati nel dominio del tempo stato necessario valutarli nel dominio
delle frequenze in modo tale da poter ricavare le frequenze proprie del sistema. Per
fare ci stato necessario ricorrere alla trasformata di Fourier, la quale afferma che
ogni funzione periodica pu essere scomposta come somma di infinite funzioni seno e
coseno(serie di Fourier). La serie di Fourier si applica a segnali continui nel tempo, ma
i segnali acquisiti col campionamento A/D sono discretizzati ad intervalli Dt e osservati
N volte per un tempo T limitato. Si usa quindi la trasformata discreta di Fourier(DFT).
Sono, per, stati sviluppati algoritmi pi veloci(chiamati FFT, fast Fourier Transform),
che richiedono molte meno operazioni.
DESCRIZIONE DEL CODICE
E difficile identificar la frequenza che compone il segnale dalla sola osservazione
dellandamento temporale. Risulta necessario quindi convertire il segnale nel dominio
della frequenza tramite la trasformata di Fourier.
Quindi, dato in ingresso un vettore x di N elementi(nel nostro caso saranno i valori di
accelerazione lungo un asse), la funzione in Matlab Y=fft(x) effettua la trasformata
discreta di Fourier utilizzando la Fast Fourier Trasform. Se x una matrice effettuer la
trasformata di Fourier per ogni singola colonna quindi nel nostro caso effettuer
direttamente la trasformata lungo i tre assi.
CODICE
Di seguito riportato il codice utilizzato per il calcolo della FFT
% Calcolo della FFT(Fast Fourier Trasform)
N=max(size(Dati)); % vettore numero punti
L=(Dati(N,1)-Dati(1,1)); % durata segnale
Fs=1000*N/L; % frequenza di campionamento
for i=2:4
% plot accelerazione dominio tempo
figure();
plot(Dati(:,1),Dati(:,i));
xlabel('time[ms]');
ylabel('[g]');
% trasformata Fourier
NFFT =2^nextpow2(N);%in potenze di 2 FFT pi efficiente
Y=fft(Dati(:,i),NFFT)/L;
f=Fs*linspace(0,1,NFFT/2+1); %vettore delle frequenze
end
Dati una matrice di quattro colonne: la prima rappresenta gli istanti temporali di
rilevazione e le altre tre i valori di accelerazioni lungo lasse x, y e z.
Il 1000 presente nella frequenza di campionamento per trasformare gli istanti
temporali da millisecondi a secondi.
NFFT uno scalare corrispondente alla potenza di due successiva al numero di dati N
in possesso. Per esempio, se avessimo N=1000, NFFT risulterebbe pari a 1024. E stato
fatto ci, in quanto lesecuzione della FFT risulta pi efficiente per potenze di due,
richiedendo un minor numero di operazioni e i valori aggiunti non vanno a modificare i
risultati.
La riga successiva, Y=fft(Dati(:,i),NFFT)/L;, il cuore del programma e qui avviene
la trasformazione di Fourier. E necessario dividere per L in quanto Matlab presuppone
L=1.
Successivamente stato creato il vettore delle frequenze utilizzando solo met dei
valori in quanto la FFT restituisce dei numeri complessi e la seconda met rappresenta
i complessi coniugati della prima met in ordine invertito.
VERIFICA
Per verificare la validit del codice, stato campionato il segnale generato dalla
somma di due sinusoidi di ampiezza 0,4 e 0,6 e frequenza rispettivamente di 15,5 e
15.(durata 10 s, 1024 punti)
RISULTATI
Sono state effettuate misurazioni sulla Spiederbot in condizione di riposo, di lavoro e
dopo un impulso e per quanto riguarda la D330 in condizioni di lavoro. Per ogni singola
condizione, eccetto limpulso in quanto lurto avvenuto in momenti di tempo
differenti, sono state effettuate 5 misurazioni e poi mediate. Di seguito vengono
riportati i grafici dellandamento temporale.
Spiderbot condizione riposo:
Spiderbot impulso
Spiderbot lavoro
Come detto in precedenza, la rappresentazione nel dominio del tempo non permette,
per, di avere sufficienti informazioni. Si ricorre quindi alla rappresentazione nel
dominio della frequenza. Di seguito si riporta il confronto fra le varie condizioni lungo i
tre assi
Come si pu notare dai tre grafici sopra, tra i 3,5 Hz e i 6 Hz si hanno valori di
ampiezza maggiori con picchi di 3,5*10^-3 g lungo tutti e tre gli assi e per tutte le
varie configurazioni.
Inoltre la linea verde, rappresentativa della D330 risulta essere generalmente al di
sotto delle altre. Ci significa che la D330 ha una struttura pi rigida rispetto alla
Spiderbot.
CONCLUSIONI