PDA

View Full Version : misura di una fdt


serbring
13-05-2009, 10:40
ho dovuto misurare delle accelerazioni in un organo meccanico in funzione. Da questo voglio calcolare la funzione di trasferimento che lega l'accelerazione allo spostamento. L'eccitante del sistema è un frequency sweep con f variabile da 0,2 a 1.5Hz. Siccome i valori sono pochi, ho pensato di creare una spline per estrapolarmi dei punti ed avere un fit migliore.

http://img87.imageshack.us/img87/4889/gainmisspline2.th.jpg (http://img87.imageshack.us/img87/4889/gainmisspline2.jpg)

http://img149.imageshack.us/img149/8599/phasemisspline2.th.jpg (http://img149.imageshack.us/img149/8599/phasemisspline2.jpg)

Analizzando il diagramma delle fasi possiam dedurre che:

1- la fase del mio sistema parte da 0° il che implica che il sistema è di tipo 0 => allora la funzione di trasferimento del sistema non ha ne poli e ne zeri nell'origine

2- la fase alla max frequenza del mio sistema è circa a -80° quindi si potrebbe supporre che la fase all'infinito sia di circa -90°, pertanto la funzione di trasferimento del mio sistema dovrà avere un grado relativo tra numeratore e denominatore unitario.

3- L'andamento teorico è questo k*((1+T*jw)/(1+2*c*jw/wn-(w/wn)^2)).

Quindi ho usato il comando invfreqs di matlab per calcolare la funzione di trasferimento che abbia uno zero semplice ed un polo complesso e coniugato. Nei due grafici sopra sono mostrate le risposte in frequenza del modulo e della fase della fdt calcolata. Il fit del modulo non'è un gran che, avete qualche consiglio da darmi per migliorarlo? Ho provato a buttare un grossissimo numero di iterazioni ed una bassissima tolleranza, ma il risultato non cambia. In particolare a me interessa conoscere con buona precisione C e wn. wn lo posso calcolare dal valore della frequenza alla quale la fdt è massima. Ma c come potrei fare?
Inoltre sapete se esiste un coefficiente (tipo l'R^2 delle rette di regressione) che mi dice quanto è buono il fit con l'invfreqs?

hakermatik
14-05-2009, 19:11
prova ad usare in matlab il comando ident
si apre il System identification toolbox. Può esserti utile. Tu gli passi il vettore dei dati in ingresso e il vettore delle uscite e lui ti stima la funzione di trasferimento del sistema. Puoi anche scegliere il tipo di sistema, il numero di poli/zeri...insomma è abbastanza potente...

lowenz
14-05-2009, 19:14
Problema interessante! :)

serbring
15-05-2009, 16:15
Problema interessante! :)

;)

prova ad usare in matlab il comando ident
si apre il System identification toolbox. Può esserti utile. Tu gli passi il vettore dei dati in ingresso e il vettore delle uscite e lui ti stima la funzione di trasferimento del sistema. Puoi anche scegliere il tipo di sistema, il numero di poli/zeri...insomma è abbastanza potente...


proverò anche questo comando

Son riuscito a trovare un modello che interpola abbastanza bene il mio modello. In pratica ho dovuto un modello piuttosto differente da quello teorico, con 2 zeri e 4 poli. Ed infatti le mie considerazioni non erano molto corrette in quanto la fase all'infinito deve andare ad 1.5Hz deve andare a -90° mentre con un sol grado relativo è all'infinito che và a -90° e quindi il modello trova difficoltà ad interpolare i dati visto anche il basso intervallo di frequenze di interesse nel problema specifico. Infatti dopo una lunga ricerca in rete ho trovato che l'invfreqs trova difficoltà ad interpolare correttamente i dati se:
1- l'intervallo in frequenze è basso
2- la fdt è poco variabile

Ed infatti almeno nel primo punto così.
Cmq questo è il grafico con il fit migliore che son riuscito a trovare, Tutto sommato non'è male

http://img206.imageshack.us/img206/9462/gainefaseok.th.jpg (http://img206.imageshack.us/img206/9462/gainefaseok.jpg)

tutto sommato non'è male.

serbring
22-05-2009, 13:04
Sono andato un po' avanti, ma ora è sorto un dubbio.
La fdt teorica del sistema ha uno zero semplice e due poli complessi e coniugati. Dicendo all'invfreqs che la fdt del sistema debba avere un numeratore di grado unitario e denominatore di secondo grado, ottengo due poli reali, e cmq fitta bene i miei dati. Ho provato anche a calcolarmi una fdt con numeratore e denominatore di secondo grado, ma il modello fitta il modello analogamente bene, com'è mostrato in figura:

http://img527.imageshack.us/img527/8764/confronto1222.th.jpg (http://img527.imageshack.us/img527/8764/confronto1222.jpg)

Analizzando i parametri (frequenze naturali e fattori di smorzamento) delle due fdt ottengo per il primo modello fn=155.4869 Hz e 0.3293 Hz e damp=10.8882, mentre per il secondo fn=0.6057 Hz e damp=0.6653. La differenza è piuttosto marcata. La presenza dello zero può alterare così tanto la fn ed il fattore di smorzamento? Quale dei due smorzamenti può esser giusto? Per entrambi ottengo una pulsazione di risonanza del sistema smorzato.