Sei sulla pagina 1di 8

VIBRAZIONI A CONFRONTO

Il presente lavoro ha lo scopo di realizzare un dispositivo per la rilevazione e il


confronto, tramite risposta in frequenza, del livello di vibrazioni di due stampanti 3D,
la Spiderbot e la D330, in diverse condizioni dutilizzo.
La catena di misura costituita da:

Un trasduttore, ossia uno strumento sensibile allo spostamento, alla velocit o


allaccelerazione, in grado di avere in uscita una tensione(o altra grandezza
elettrica) proporzionale al valore della grandezza in ingresso;
Una scheda Arduino Uno, ossia un microcontrollore che, opportunamente
programmato e tarato, indica il valore della grandezza(spostamento, velocit,
accelerazione) rilevata dal trasduttore;
Un PC con programma per lelaborazione dei dati.

(INSERIRE IMMAGINE DELLA CATENA)


IL TRASDUTTORE
Il trasduttore costituito da un accelerometro triassiale Hitachi H48C, il quale, riunisce
al suo interno le caratteristiche di miniaturizzazione dei MEMS(Micro Electro
Mechanical System) con quella dei circuiti integrati in quanto sono presenti sia un
condizionatore di segnale(CS), il quale tratta variamente il segnale(amplificandolo e/o
filtrandolo), e un convertitore analogico digitale A/D che ne esegue il campionamento.
Il segnale proveniente dal trasduttore un segnale analogico continuo, il cui
andamento analogo a quello della grandezza misurata; il convertitore A/D rileva il
valore istantaneo del segnale a intervalli regolari di tempo, trasformandolo in un
insieme discreto di valori(segnale digitale) che possono essere gestiti ed elaborati da
un calcolatore.
ARDUINO UNO
Caricando su Arduino il codice sviluppato da Robert F. McCollough reperito in rete sul
forum di Arduino stesso(inserire link) stato possibile dialogare con laccelerometro e
convertire i valori di tensione rilevati lungo i tre assi in valori di accelerazione di
gravit. E stato verificato che desse il valore di 1 G lungo lasse verticale in condizioni
di riposo.
ELABORAZIONE DATI
Un segnale composto da una o pi frequenze e pu essere visto in due modi
differenti: nel dominio del tempo o nel dominio della frequenza. Il dominio del tempo
indica come il segnale cambia nel tempo; il dominio delle frequenze indica quanto
quella data frequenza influisce sulla formazione del segnale. Noi possiamo andare dal
dominio del tempo a quello della frequenza usando uno strumento chiamato
trasformazione di Fourier.
Diagrammando i valori ottenuti dalle rilevazioni in funzione del tempo, risulta difficile
capire le frequenze che compongono il segnale. Convertendo quindi il segnale nel
dominio della frequenza, la trasformazione di Fourier discreta trovata effettuando la
FFT.

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

% plot accelerazione dominio frequenza


figure();
plot(f,abs(Y(1:NFFT/2+1)))
xlabel('frequency[hz]');
ylabel('[g]');

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

D330 condizioni 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

Potrebbero piacerti anche