Fluidi magnetoreologici (MR)

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Fluidi magnetoreologici (MR)"

Transcript

1 Identificazione del sistema elettrico di un ammortizzatore magnetoreologico Cristiano Spelta

2 Fluidi magnetoreologici (MR) 2 Inventati negli anni quaranta. Consistono in una sospensione di olio e microparticelle di leghe di ferro. Cambiano caratteristica viscosa se sottoposti a un campo magnetico.

3 MRD- Sponge 3 Ammortizzatore classico F = cv Ammortizzatore controllato F = c( t) v () = (, ) ct f Iv La possibilità di modulare la caratteristica del fluido MR, lo rende adatto all utilizzo in ammortizzatori a smorzamento variabile (semi-attivi). Applicato dal settore automobilistico (Ferrari) a quello domestico (lavatrici, MRD Sponge). MRD Sponge non ha un fluido che scorre ma lavora ad attrito per mezzo di una spugna imbevuta di fluido.

4 MRD-sponge Schema del sistema di comando 4 V # V I I # ZOH Il campo magnetico viene generato da un comando in corrente. Le caratteristiche di frenatura vengono date in funzione della corrente Per avere una risposta efficace dell ammortizzatore è necessario che i transitori di corrente siano molto veloci e stabili.- controllo in corrente Obiettivo: identificare il modello del comando di corrente V I

5 Caratteristiche nominali del sistema 5 MAX = 0.7 Amps 130 mh 20 Ohm V = I( R+ Ls) in 1 I = Vin R+ Ls τ = L/ R= 0.06s B= 25 Hz; T 40ms risp Ad anello chiuso si desidera un tempo di risposta di 10 ms che corrisponde a una banda di 100 Hz. Teorema di Nyquist: F c > 2*B= 200 Hz. E buona norma scegliere F c =8--10*B (si consideri che si vuole una risposta a 10 ms con transitorio). F c =1 KHz.

6 Definizione esperimento Input: comando di tensione 6 15 Voltage (V) %definizione dell'asse dei tempi %rumore bianco di 60sec con %Fs=1KHz. Fs = 1000; time = [0:60*Fs-1]/Fs; input = 14*randn(60*Fs,1); plot(time,input); tim e (s ) Segnale di input deve eccitare tutte le dinamiche del sistema WN a campionamento di 1KHz. Il segnale in tensione non deve superare i limiti del costruttore. Imax = 0.7 A Vmax = 0.7*20 V = 14 V

7 Definizione dell esperimento Output: corrente impressa %recupero dei dati sperimentali Current (I) output = plot(time,output); tim e (s ) Il segnale di corrente è coerente con le specifiche di sistema. Prefiltragggio e condizionamento (discussione)

8 Analisi preliminare dei dati dB %visualizzazione del rapporto %ingresso uscita nel dominio %della frequenza db Y G ( jω) = X ( jω) ( jω) Hertz Pendenza: -20db/Dec [Pxx,F]=pwelch(input,1000); [Pyy,F]=pwelch(output,1000); G = Pyy./Pxx; semilogx(f*1000/6.28,10*log10(g)); Data la linearità del sistema Il rapporto tra spettro dell uscita e spettro dell ingresso è la risposta in frequenza del sistema. I () () s G s = V () s La risposta in frequenza è in prima approssimazione quella di un filtro passa basso a un polo (conferma)

9 9 Identificazione a scatola grigia (conoscenza della fisica del sistema)

10 Modello a un guadagno e un polo 10 Abbiamo visto che il sistema è nominalmente modellizzato da: ( ) G s k = 1 + st Per passare a un modello a tempo discreto è possibile utilizzare la trasformazione di Eulero in avanti (attenzione alla stabilità), che lega la variabile della trasmormata di Laplace a quella della trasformata z G ( z) s = z 1 T k = 1+ T 1 s ( z )/ Ts ( ) = ( 1 / ) ( 1 ) + ( / ) ( 1) y t T T y t kt T u t S ( ) = α ( 1) + β ( 1) y t y t u t S

11 Identificazione del modello a un polo minimi quadrati 11 ( ) = α ( 1) + β ( 1) yt yt ut Y = XP () ( 2) y y() 1 u() 1 y α Y = X = P= β y( n) y( n 1) u( n 1) 2 Pˆ = arg min Y XP Y = XPˆ T X XPˆ = T X Y T ( ) 1 ˆ T P= X X X Y Y=output; X1 = [0;output(1:n-1)]; U1 = [0; input(1:n-1)]; X=[X1 U1]; P = inv(x *X)*X *Y;

12 Modello a un polo Risultati Bode Diagram identificato % calcolo dell errore e = var(y-xp); sperimentale %definizione del modello identificato -30 Id1 = tf([ ],[ ]); Magnitude (db) -35 [ ] errore = var Y XP = 3.27 %disegno del diagramma di bode del %modello identificato e della risposta i%n frequenza sperimentale semilogx(f*1000,10*log10(g),'r') hold on; α= Τ = bodemag(id1); β = k = Frequency (Hz)

13 Modello a due poli e uno zero 13 ( ) G s = k ( 1+ st ) ( 1+ stp 1)( 1+ stp2) z Posso ottenere un risultato aumentando l ordina del sistema. Per mantenere i -20dB/dec ad alta frequenza inserisco anche uno zero. ( ) = α ( 1) + α ( 2) + β ( 1) + β ( 2) y t y t y t u t u t

14 Modello a due poli e uno zero Risultati Bode Diagram identificato Y=output; X1 = [0;output(1:n-1)]; X2 = [0;0; output(1:n-2)]; U1 = [0; input(1:n-1)]; U2 = [0;0;input(1:n-2)]; X=[X1 X2 U1 U2]; P = inv(x *X)*X *Y; sperimentale % calcolo dell errore e = var(y-xp); %definizione del modello identificato -35 [ ] errore = var Y XP = Id2 = tf([p(3) p(4)], [1 p(1) p(2) ],0.001); Frequency (rad/sec) %disegno del diagramma di bode del %modello identificato e della risposta i%n frequenza sperimentale semilogx(f*1000,10*log10(g),'r') hold on; bodemag(id2);

15 Modello a due poli e uno zero con ritardo 15 ( ) G s = k ( 1+ st ) ( 1+ stp 1)( 1+ stp2) z e sτ Un sistema di acquisizione e controllo digitale introduce un ritardo intrinseco nel sistema. Aggiungo un ritardo al modello. () = α ( 1) + α ( 2) + α ( 3) + β ( 1) + β ( 2) + β ( 3) y t y t y t y t u t u t u t

16 Modello a due poli e uno zero con ritardo Risultati 16 Magnitude (db) sperimentale Bode Diagram identificato Y=output; X1 = [0;output(1:n-1)]; X2 = [0;0; output(1:n-2)]; X3 = [0;0;0;output(n-3)]; U1 = [0; input(1:n-1)]; U2 = [0;0;input(1:n-2)]; U3 = [0;0;0;output(1:n-3)]; X=[X1 X2 X2 U1 U2 U3]; P = inv(x *X)*X *Y; % calcolo dell errore e = var(y-xp); [ ] errore = var Y XP 0 %definizione del modello identificato Id3 = tf([p(4) p(5) p(6)], [1 p(1) p(2) p(3)],0.001); Frequency (rad/sec) %disegno del diagramma di bode del %modello identificato e della risposta i%n frequenza sperimentale semilogx(f*1000,10*log10(g),'r') hold on; bodemag(id3);

17 Id. Scatola grigia 17 Conoscere la fisica del sistema aiuta a definire l esperimento di identificazione e la famiglia di modelli tra cui cercare. Per questo tipo di paradigma esiste un legame tra i coefficienti del modello identificato (ARX) e il sistema reale. Modello identificato fornisce una spiegazione fisica del sistema. Esistono altri metodi di identificazione oltre quelli classici basati sui minimi quadrati

18 18 Black Box

19 Definizione del modello 19 Nessuna ipotesi sul modello da identificare Nota solo la frequenza di campionamento del sistema (ovviamente necessaria). ARX(na,nb) ( ) = α ( 1 ) α ( ) + β ( 1 ) β ( ) y t y t y t a u t u t b Fissiamo 1 a n 1 b n Ordine della parte autoregressiva: n a =1..5 Ordine della parte esogena: n b =1..5 n criterio della minimizzazione della varianza dell errore di predizione minimi quadrati n

20 Scelta della complessità Criterio AIC N 1 J = ( y ˆ i yi) N i= 1 2 ( 2 / ) ln( ) ln( ) AIC = n N + J J nb = complessita EX nb = 3 na = 3 nb = 1 Y=output; X1 = [0;output(1:n-1)]; X2 = [0;0; output(1:n-2)]; X3 = [0;0;0;output(n-3)]; U1 = [0; input(1:n-1)]; U2 = [0;0;input(1:n-2)]; U3 = [0;0;0;output(1:n-3)];... %1,1 X=[X1 U1]; p = inv(x *X)*X *Y; e(1,1) = var(y-xp); %2,1 X=[X1 X2 U1]; p = inv(x *X)*X *Y; e(2,1) = var(y-xp); nb=3 nb = 2 nb = 4 nb = 5 %3,1 X=[X1 X2 X3 U1]; p = inv(x *X)*X *Y; e(3,1) = var(y-xp); Complessita AR

21 Risultati dell identificazione Bode Diagram identificato Magnitude (db) sperimentale Frequency (Hz)

22 22 Ident Toolbox di Matlab

23 Ident Tool di Matlab interfaccia di selezione dati 23

24 Ident Tool di Matlab Scelta del modello 24

25 Ident Tool di Matlab Identificazione 25