...

Esercitazione: Sintesi per tentativi

by user

on
Category: Documents
30

views

Report

Comments

Transcript

Esercitazione: Sintesi per tentativi
Università degli Studi di Firenze
Esercitazione: Sintesi per tentativi
L. Chisci, P. Falugi
Corso di Fondamenti di Automatica per CdL Ing. dell’Informazione e
Ing. dell’Ambiente e delle Risorse
Anno Accademico 2005/06
Fondamenti di Automatica
1
Sintesi per tentativi: esempio 1
d(t)
−
6
r(t)
-
C(S)
e−sT
s
?
y(t)
• Assumendo C(s) = K determinare i valori di K e T , per i quali
il sistema ad anello chiuso è stabile
1
G(s) =
s
mφ = 90◦
• Il ritardo critico Tc per il quale si perde stabilità è Tc =
kG(jωφ ) =
k
jωφ
k
ωφ
=1
ω φ = k ⇒ Tc =
mφ π
ωφ 180
π
2k
A.A. 2005/06
Fondamenti di Automatica
2
Esempio 1: Diagramma di Bode
sys = tf (1, [1 0]);
w = logspace(−1, 1, 200)0 ;
[mag, phase] = bode(sys, w);
f ase = squeeze(phase); T = 1;
phasetot = f ase − 180 ∗ w ∗ T /pi;
magnew = squeeze(mag);
magdb = 20 ∗ log10(magnew);
subplot(211)
semilogx(w, magdb)
subplot(212)
semilogx(w, phasetot)
hold on
semilogx(w, −180 ∗ ones(1, 200),0 b − −0 )
20
10
0
−10
−20
−1
10
0
1
10
10
0
−100
−200
−300
−400
−500
−600
−700
−1
10
0
1
10
10
A.A. 2005/06
Fondamenti di Automatica
3
Esempio 1: Diagramma di Nyquist
sys = tf (1, [1 0]);
w = [0.1 : 0.1 : 100];
[Re, Im] = nyquist(sys, w);
Rer = squeeze(Re);
Imr = squeeze(Im);
newf = (Rer + i ∗ Imr). ∗ exp(−i ∗ w);
plot(real(newf ), imag(newf ))
2
Im
0
−2
−4
−6
−8
−10
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
Re
A.A. 2005/06
Fondamenti di Automatica
4
Sintesi per tentativi: esempio 1
Assumendo T = 1 si determini il controllore C(s) in modo da
soddisfare le seguenti specifiche
• L’errore a regime corrispondente ad un disturbo d(t) a rampa
unitaria sia non superiore a ed = 0.5;
• Il margine di fase mφ sia non inferiore a 30◦ ;
• La pulsazione di attraversamento sia circa uguale a ωφ = 1 rad
s
Specifiche statiche:
yd (s) =
s
1
d(s) =
d(s)
−sT
1 + CGH
s + Kc e
C(s)
1
1
1
=
≤ 0.5 ⇒ Kc ≥ 2
lim s
s→0
s + Kc e−sT C(s) s2
Kc
2
A.A. 2005/06
Fondamenti di Automatica
5
Specifiche dinamiche:
∠L(jωφ ) = −57, 3◦ − 90◦ = −147.3◦ ⇒ mφ = 32.7◦
|L(jωφ )|dB = 20 log10 2 − 20 log10 1 = 6.02dB
Per perdere 6.02dB di modulo non posso perdere più di 2.7◦
Se ωφ τ = 90 e m = 2 si perde 6.018dB di modulo e circa 0.62◦
C(s) = 2
1 + 45s
1 + 90s
A.A. 2005/06
Fondamenti di Automatica
6
Verifica delle specifiche sui diagrammi di
Bode
Bode Diagram
80
70
Magnitude (dB)
60
50
40
30
20
10
0
−90
Phase (deg)
w = logspace(−1, 1, 200)0 ;
C = tf (2 ∗ [45 1], [90 1])
P = tf (1, [1 0])
L = C ∗ P ; [mag, f ase] = bode(L, w);
magr = squeeze(mag);
f aser = squeeze(f ase);
f asetot = f aser − 180 ∗ w/pi;
magdb = 20 ∗ log10(magr)
subplot(211)
semilogx(w, magdb)
subplot(212)
semilogx(w, f asetot) hold on
semilogx(w, −180∗ones(1, length(w)),0 b−−0 )
−120
−150
−3
10
−2
−1
10
10
Frequency (rad/sec)
A.A. 2005/06
0
10
Fondamenti di Automatica
7
Verifica delle specifiche tramite
simulazione
La specifica richiesta sul disturbo a regime
è verificata solo asintoticamente
2.5
2
simout
Step
2.5*[16 1]
1
40s+1
s
Transfer Fcn
Transport
Delay1
To Workspace
1.5
Transfer Fcn3
Scope
Ramp
1
step
To Workspace1
0.5
Scope2
0
0
10
20
30
40
50
60
70
80
90
A.A. 2005/06
100
Fondamenti di Automatica
8
Nuovo progetto
Maggiore attenuazione del disturbo ⇒ Kc = 2.5
20 log10 2.5 = 7.96dB
1
) = −7.96dB ⇒ m = 2.5
Per perdere 7.96dB ⇒ 20log10( m
Se si sceglie ωφ τ = 10m si perde −3.42◦ in ω = ωφ
È necessario avere una perdita di fase minore:
Se ωφ τ = 40 si perde −2.15◦ in ω = ωφ
1 + 16s
C(s) = 2.5
1 + 40s
A.A. 2005/06
Fondamenti di Automatica
9
Verifica delle specifiche
Bode Diagram
2.5
80
70
Magnitude (dB)
60
2
50
40
30
20
1.5
10
0
−90
Phase (deg)
1
−120
0.5
−150
−3
10
−2
−1
10
10
Frequency (rad/sec)
0
10
0
0
10
20
30
40
50
60
70
80
90
A.A. 2005/06
100
Fondamenti di Automatica
10
Margine di fase e di guadagno
Calcola il margine di guadano, il margine
di fase e le rispettive pulsazioni
Il margine di guadagno in dB è
20 ∗ log10(Gm)
60
Magnitude (dB)
• [Gm, P m, W cg, W cp] = margin(L)
80
40
20
0
−20
0
−180
Phase (deg)
• w = logspace(−3, 1, 600);
bode(L, w); hold on
margin(L)
Bode Diagram
Gm = 3.78 dB (at 1.55 rad/sec) , Pm = 30.5 deg (at 1 rad/sec)
−360
−540
−720
−3
10
−2
10
−1
10
Frequency (rad/sec)
0
10
A.A. 2005/06
1
10
Fondamenti di Automatica
11
Luogo delle Radici
Root Locus
15
Esempio
s−z
s(s + 1)(s + 5)
z = −8
s = tf (0 s0 );
G = (s − z)/s/(s + 1)/(s + 5);
rlocus(G)
5
Imaginary Axis
L(s) = k
10
0
−5
−10
−15
−8
−7
−6
−5
−4
−3
Real Axis
−2
−1
0
A.A. 2005/06
1
Fondamenti di Automatica
12
Root Locus
4
3
3
2
2
1
1
Imaginary Axis
Imaginary Axis
Root Locus
4
0
0
−1
−1
−2
−2
−3
−3
−4
−5
−4.5
−4
z = −8/7
−3.5
−3
−2.5
Real Axis
−2
−1.5
−1
−0.5
0
−4
−5
−4.5
−4
−3.5
−3
−2.5
Real Axis
−2
−1.5
−1
−0.5
z = −9/8
A.A. 2005/06
0
Fondamenti di Automatica
13
Sintesi per tentativi: esempio 2
Dato l’impianto
s+1
s2 (s − 1)
si determini un controllore C(s) in modo da soddisfare le seguenti
specifiche
G(s) =
• L’errore a regime corrispondente ad un disturbo d(t), in
ingresso all’impianto, a gradino unitario sia non superiore a
ed = 0.1;
• Il margine di fase mφ sia non inferiore a 40◦ ;
• Il tempo di salita sia non superiore a 0.2s
Specifiche statiche:
s+1
G
d(s) = 2
d(s)
yd (s) =
1 + CG
s (s − 1) + Kc C 0 (s)(s + 1)
A.A. 2005/06
Fondamenti di Automatica
lim s
s→0
14
1
(s + 1)
1
≤ 0.1 ⇒ Kc ≥ 10
=
2
0
s (s − 1) + (s + 1)Kc C (s) s
Kc
Specifiche dinamiche:
• Conversione specifiche ad anello chiuso (ts ) in specifiche ad
anello aperto (ωφ )
ω b ts ' 3
⇒
ωb ' 15 rad/s
ωφ ' [0.5; 0.85]ωb
⇒
ωφ ' 0.7 ∗ 15 ' 10 rad/s
|L(jωφ )|dB = −20dB
∠L(jωφ ) = −π − 2 π2 + 2tg−1 (10)
A.A. 2005/06
Fondamenti di Automatica
15
Comandi matlab:
g = 10 ∗ (s + 1)/s2 /(s − 1)
[mag, f as] = bode(g, 10)
⇒ ∠L(jωφ ) = f as ' 168◦
∠C(jωφ ) = −180◦ + mϕ − ∠L(jωφ ) '
−180◦ + 40◦ − (−360◦ + 168◦ ) ' 52◦
Dalle tabelle si può scegliere
m = 14,
ωφ τ = 4
⇒
τ = 0.4
Si guadagnano v 60◦ di fase e v 11.96dB di modulo
Per avere |L(jωφ )|dB ' 0 si deve aumentare il modulo di 8.04dB
(108.04/20 = 2.52)
1 + 0.4s
C(s) = 25.2
1 + 0.0286s
A.A. 2005/06
Fondamenti di Automatica
16
Verifica delle specifiche
Bode Diagram
150
10
100
0
−3
−10
Magnitude (dB)
Magnitude (dB)
Bode Diagram
Gm = −14.8 dB (at 2.6 rad/sec) , Pm = 49.2 deg (at 10.3 rad/sec)
50
0
−20
−30
−40
−50
−50
−60
−100
−90
−70
45
Phase (deg)
Phase (deg)
0
−180
−270
−45
−90
−135
−360
−2
10
−1
10
margin(c*g)
0
1
10
10
Frequency (rad/sec)
2
10
3
10
−180
−1
10
0
10
1
10
Frequency (rad/sec)
2
10
bode(c*g/(1+c*g))
A.A. 2005/06
3
10
Fondamenti di Automatica
17
Verifica delle specifiche
Step Response
1.4
Step Response(risposta al disturbo)
0.04
1.2
0.035
0.03
0.8
0.025
Amplitude
Amplitude
1
0.6
0.02
0.015
0.4
0.01
0.2
0.005
0
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Time (sec)
1.6
1.8
2
2.2
2.4 2.5
0
0
0.5
1
1.5
2
Time (sec)
step(cg/(1+cg))
step(g/(1+c*g))
A.A. 2005/06
2.5
Fly UP