Sei sulla pagina 1di 145

Scuola universitaria professionale

della Svizzera italiana


Dipartimento
Tecnologie
Innovative
Dinamica e stabilit`a
Ing. Roberto Bucher
Dr. Silvano Balemi
10 febbraio 2009
Dinamica e stabilit`a
2 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Indice
1 Sistemi dinamici 13
1.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.1 Il sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.2 Propriet`a di sistemi . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.2.1 Statica e dinamica . . . . . . . . . . . . . . . . . . . 13
1.1.2.2 Invarianza nel tempo . . . . . . . . . . . . . . . . . . 14
1.1.2.3 Linearit`a . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2 Modellazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.1 Modellazione dai princpi primi . . . . . . . . . . . . . . . . . 15
1.2.2 Relazioni tra grandezze siche . . . . . . . . . . . . . . . . . . 19
1.2.3 Modellazione mediante gra di usso . . . . . . . . . . . . . . 19
1.2.3.1 Rappresentazione . . . . . . . . . . . . . . . . . . . . 19
1.2.3.2 Operazioni su diagrammi di usso . . . . . . . . . . 22
1.2.3.3 Scalare un nodo . . . . . . . . . . . . . . . . . . . . . 23
1.3 Rappresentazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.3.1 Equazioni dierenziali . . . . . . . . . . . . . . . . . . . . . . 24
1.3.2 Rappresentazione di stato . . . . . . . . . . . . . . . . . . . . 25
1.3.2.1 Equazioni di stato . . . . . . . . . . . . . . . . . . . 25
1.3.2.2 Trasformazione di variabili di stato . . . . . . . . . . 27
1.3.2.3 Trasformazione da rappresentazione di stato a equa-
zione dierenziale . . . . . . . . . . . . . . . . . . . . 29
1.3.2.4 Trasformazione da equazione dierenziale a rappre-
sentazione di stato . . . . . . . . . . . . . . . . . . . 31
1.3.3 Funzione di trasferimento . . . . . . . . . . . . . . . . . . . . 32
1.3.3.1 Trasformazione da equazione dierenziale a funzione
di trasferimento . . . . . . . . . . . . . . . . . . . . . 33
1.3.3.2 Trasformazione da rappresentazione di stato a fun-
zione di trasferimento . . . . . . . . . . . . . . . . . 34
1.3.3.3 Trasformazione da funzione di trasferimento a equa-
zione dierenziale . . . . . . . . . . . . . . . . . . . . 36
1.3.3.4 Trasformazione da funzione di trasferimento a rap-
presentazione di stato . . . . . . . . . . . . . . . . . 38
1.3.4 Rappresentazione nel dominio del tempo . . . . . . . . . . . . 41
1.3.4.1 Soluzione nel tempo dellequazione dierenziale . . . 41
10 febbraio 2009 Roberto Bucher & Silvano Balemi 3
Dinamica e stabilit`a INDICE
1.3.4.2 Soluzione nel tempo dalla rappresentazione di stato . 45
1.3.4.3 Soluzione nel tempo dalla funzione di trasferimento . 50
1.3.4.4 Soluzione per sistemi di ordine basso . . . . . . . . . 51
1.3.5 Diversi esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
1.3.5.1 Massa oscillante con molla . . . . . . . . . . . . . . . 65
1.3.5.2 Servo-motore dc . . . . . . . . . . . . . . . . . . . . 67
1.3.6 Riassunto delle varie trasformazioni . . . . . . . . . . . . . . . 69
2 Stabilit`a di sistemi lineari 71
2.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2.2 Traiettoria e punti di equilibrio . . . . . . . . . . . . . . . . . . . . . 71
2.3 Stabilit`a dalla traiettoria . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.3.1 Traiettoria stabile . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.3.2 Traiettoria instabile . . . . . . . . . . . . . . . . . . . . . . . . 72
2.3.3 Traiettoria asintoticamente stabile . . . . . . . . . . . . . . . . 72
2.3.4 Punto di equilibrio . . . . . . . . . . . . . . . . . . . . . . . . 74
2.3.5 Traiettorie di sistemi lineari e stabilit`a . . . . . . . . . . . . . 76
2.4 Stabilit`a dalla funzione di trasferimento . . . . . . . . . . . . . . . . . 77
2.5 Stabilit`a dalla rappresentazione di stato . . . . . . . . . . . . . . . . . 77
3 Retroazione e stabilit`a 79
3.1 La retroazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.2 Controllori in forma polinomiale . . . . . . . . . . . . . . . . . . . . . 82
3.2.1 Controllore PID . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4 Sistemi non lineari 85
4.1 Denizione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.2 Paragone con sistemi lineari . . . . . . . . . . . . . . . . . . . . . . . 86
4.3 Alcuni metodi di analisi . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.1 Metodo della funzione descrittiva . . . . . . . . . . . . . . . . 87
4.3.2 Metodi delle isocline e dei gradienti . . . . . . . . . . . . . . . 87
4.4 Linearizzazione di un processo . . . . . . . . . . . . . . . . . . . . . . 89
4.4.1 Compensazione di nonlinearit`a . . . . . . . . . . . . . . . . . . 94
4.4.1.1 Inversione di nonlinearit`a . . . . . . . . . . . . . . . 94
4.4.1.2 Dinamica inversa . . . . . . . . . . . . . . . . . . . . 95
5 Sistemi discreti nel tempo 97
5.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.1.1 Il campionamento . . . . . . . . . . . . . . . . . . . . . . . . . 98
5.1.2 La tenuta di un segnale campionato (Zero order hold) . . . 101
5.2 La trasformata z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.2.1 Propriet`a della trasformata Z . . . . . . . . . . . . . . . . . . 104
5.2.2 Trasformazione Z . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2.2.1 Calcolo della trasformata z da una trasformata di
Laplace . . . . . . . . . . . . . . . . . . . . . . . . . 105
4 Roberto Bucher & Silvano Balemi 10 febbraio 2009
INDICE Dinamica e stabilit`a
5.2.3 Trasformazione Z inversa . . . . . . . . . . . . . . . . . . . . . 105
5.2.3.1 Trasformazione inversa mediante fattorizzazione . . . 105
5.2.3.2 Trasformazione inversa con il metodo delle serie di
potenze . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.3 Rappresentazioni di sistemi campionati . . . . . . . . . . . . . . . . . 107
5.3.1 Funzione di trasferimento . . . . . . . . . . . . . . . . . . . . 107
5.3.1.1 Campionamento di un sistema lineare . . . . . . . . 107
5.3.1.2 Funzione di trasferimento con campionamento e ZOH 109
5.3.1.3 Funzione di trasferimento z di sistemi in cascata . . . 110
5.3.2 Equazioni alle dierenze . . . . . . . . . . . . . . . . . . . . . 111
5.3.3 Rappresentazione nel piano degli stati . . . . . . . . . . . . . 112
5.3.3.1 Trasformazione da rappresentazione di stato a fun-
zione di trasferimento . . . . . . . . . . . . . . . . . 113
5.3.4 Rappresentazione nel dominio del tempo . . . . . . . . . . . . 115
5.3.4.1 Soluzione nel tempo dallequazione alle dierenze . . 115
5.3.4.2 Soluzione nel tempo dalla rappresentazione di stato . 115
5.3.4.3 Soluzione nel tempo dalla funzione di trasferimento . 115
5.4 Stabilit`a dei sistemi campionati . . . . . . . . . . . . . . . . . . . . . 117
5.4.1 Risposte di sistemi campionati . . . . . . . . . . . . . . . . . . 118
5.5 Retroazione e stabilit`a . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.6 Controllori discreti nel tempo . . . . . . . . . . . . . . . . . . . . . . 120
5.6.1 Trasformazione di un controllore continuo nel tempo . . . . . 121
5.6.1.1 Approssimazione di Euler dellintegrazione . . . . . . 121
5.6.1.2 Trasformazione bilineare . . . . . . . . . . . . . . . . 123
5.6.1.3 Trasformazione bilineare con prewarping . . . . . . . 123
5.6.2 Design di un controllore discreto nel tempo . . . . . . . . . . . 123
5.6.2.1 Controllori in forma polinomiale . . . . . . . . . . . 124
5.6.2.2 Controllori tramite specica sul comportamento ad
anello chiuso . . . . . . . . . . . . . . . . . . . . . . 124
6 Analisi nel dominio delle frequenze 127
6.1 Analisi di Bode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.2 Graci delle singole funzioni . . . . . . . . . . . . . . . . . . . . . . . 128
6.3 Utilizzo dei diagrammi di Bode in regolazione . . . . . . . . . . . . . 131
6.4 Relazioni tra le grandezze . . . . . . . . . . . . . . . . . . . . . . . . 133
A La trasformata di Laplace 137
A.1 Denizione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
B Matrici, determinanti e sistemi di equazioni 141
B.1 Denizione di matrici e notazione . . . . . . . . . . . . . . . . . . . . 141
10 febbraio 2009 Roberto Bucher & Silvano Balemi 5
Dinamica e stabilit`a INDICE
6 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Elenco delle gure
1.1 Sistema con entrate e uscite, rappresentante il processo . . . . . . . 13
1.2 Circuito elettrico con resistenze e capacit`a . . . . . . . . . . . . . . . 15
1.3 Rappresentazione di una massa oscillante con molla e ammortizzatore 16
1.4 Schema meccanico degli ammortizzatori di un veicolo (quarter car) 17
1.5 Sospensione magnetica . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.6 Sistema idraulico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.7 Casa con riscaldamento e perdite caloriche . . . . . . . . . . . . . . . 18
1.8 Rappresentazione di unequazione . . . . . . . . . . . . . . . . . . . . 21
1.9 Rappresentazione di unequazione recursiva . . . . . . . . . . . . . . . 21
1.10 Rappresentazione di un sistema dequazioni . . . . . . . . . . . . . . 21
1.11 Procedura per scalare un nodo in un diagramma . . . . . . . . . . . . 24
1.12 Relazioni tra le varie rappresentazioni . . . . . . . . . . . . . . . . . . 24
1.13 Trasformazione nel dominio di Laplace . . . . . . . . . . . . . . . . . 33
1.14 Risposta di un sistema di 1. ordine . . . . . . . . . . . . . . . . . . . 52
1.15 Risposta di un sistema sovrasmorzato . . . . . . . . . . . . . . . . . . 53
1.16 Risposta di un sistema sottosmorzato . . . . . . . . . . . . . . . . . . 54
1.17 Risposta di un istema oscillatorio . . . . . . . . . . . . . . . . . . . . 55
1.18 Risposta di un sistema smorzato criticamente . . . . . . . . . . . . . 56
1.19 Risposta di un sistema di 2. ordine sottosmorzato . . . . . . . . . . . 59
1.20 Poli del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
1.21 Relazione tra poli e grandezze dinamiche . . . . . . . . . . . . . . . . 62
1.22 Schema di un motore dc . . . . . . . . . . . . . . . . . . . . . . . . . 63
1.23 Massa oscillante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1.24 Schema a blocchi del servo-motore . . . . . . . . . . . . . . . . . . . . 68
1.25 Grafo del processo motore-antenna . . . . . . . . . . . . . . . . . . . 69
1.26 Relazioni tra le varie rappresentazioni . . . . . . . . . . . . . . . . . . 70
2.1 Traiettoria stabile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.2 Campo e traiettoria stabile . . . . . . . . . . . . . . . . . . . . . . . . 73
2.3 Traiettoria instabile . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.4 Campo e traiettoria instabile . . . . . . . . . . . . . . . . . . . . . . . 74
2.5 Traiettoria asintoticamente stabile . . . . . . . . . . . . . . . . . . . . 74
2.6 Campo e traiettoria asintoticamente stabile . . . . . . . . . . . . . . . 75
2.7 Derivata dello stato per un valore costante dellentrata u . . . . . . . 75
10 febbraio 2009 Roberto Bucher & Silvano Balemi 7
Dinamica e stabilit`a ELENCO DELLE FIGURE
3.1 Schema di sistema ad anello chiuso . . . . . . . . . . . . . . . . . . . 80
3.2 Schema di sistema ad anello chiuso . . . . . . . . . . . . . . . . . . . 80
3.3 Schema a blocchi dellesempio 3.2 . . . . . . . . . . . . . . . . . . . . 81
3.4 Risposta del processo dellesempio 3.2 . . . . . . . . . . . . . . . . . . 81
3.5 Schema a blocchi dellesempio 3.3 . . . . . . . . . . . . . . . . . . . . 81
3.6 Risposta del processo dellesempio 3.3 . . . . . . . . . . . . . . . . . . 82
3.7 Sistema dellesempio 3.4 con controllore integrale per compensazione
di errore statico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.1 Diverse nonlinearit`a . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.2 File Simulink exnonlin.mld per la simulazione del sistema (4.2) . . . 89
4.3 Gradienti per il sistema (4.2). Lorigine `e stabile. Per valori grandi
di |x
2
| il valore di x
2
diverge. . . . . . . . . . . . . . . . . . . . . . . . 89
4.4 File Simulink exnonlin2.mld per la simulazione del sistema (4.5) . . 92
4.5 Gradienti per il sistema (4.5). Lorigine `e stabile. Per valori grandi
di |x
2
| il valore di x
2
diverge. . . . . . . . . . . . . . . . . . . . . . . . 93
4.6 Sistema nonlineare in Simulink pronto per linearizzazione in Matlab . 94
4.7 Compensazione di una nonlinearit`a conosciuta: C(s) `e un regolatore
lineare per la parte lineare G(s) del processo. . . . . . . . . . . . . . . 94
5.1 Sistema con controllore digitale . . . . . . . . . . . . . . . . . . . . . 97
5.2 Risposta al gradino unitario di un sistema campionato . . . . . . . . 98
5.3 Modellazione matematica del processo sample and hold con la se-
parazione in campionatura (da f a f

) e tenuta di ordine zero (da f

a f
h
). T indica il periodo di campionamento . . . . . . . . . . . . . . 99
5.4 Campionamento come modulazione di un segnale con impulsi . . . . . 99
5.5 Risposta impulsiva di uno ZOH . . . . . . . . . . . . . . . . . . . . . 101
5.6 Relazioni tra le dierenti funzioni e trasformate di un segnale f(t) . . 102
5.7 Sistema campionato . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
5.8 Sistema con campionamento e zero order hold . . . . . . . . . . . . 109
5.9 Rappresentazioni di sistemi campionati in SIMULINK . . . . . . . . . 110
5.10 Campionamento di due sistemi in serie . . . . . . . . . . . . . . . . . 111
5.11 Connessione in serie dei campionamento di due sistemi . . . . . . . . 111
5.12 Piano s (a sinistra), piano z (a destra) . . . . . . . . . . . . . . . . . 117
5.13 Risposte al gradino unitario in funzione dei poli di un sistema discreto
G(z) = 1/
i
(z p
i
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.14 Processo continuo nel tempo con controllore digitale. . . . . . . . . . 120
5.15 Varie parti componenti di un sistema discreto nel tempo. . . . . . . . 120
5.16 Sistema chiuso con campionamento e ZOH . . . . . . . . . . . . . . . 120
6.1 Graco della funzione jT . . . . . . . . . . . . . . . . . . . . . . . . 128
6.2 Graco della funzione
1
jT
. . . . . . . . . . . . . . . . . . . . . . . . 129
6.3 Graco della funzione 1 +jT . . . . . . . . . . . . . . . . . . . . . . 129
6.4 Graco della funzione
1
1+jT
. . . . . . . . . . . . . . . . . . . . . . . 130
6.5 Graco della funzione
1
1+2jT
2
T
2
, = 0.5 . . . . . . . . . . . . . . . 130
8 Roberto Bucher & Silvano Balemi 10 febbraio 2009
ELENCO DELLE FIGURE Dinamica e stabilit`a
6.6 Margine di guadagno e margine di fase . . . . . . . . . . . . . . . . . 131
6.7 Diagramma di Bode della funzione
400
s(s
2
+30s+200)
. . . . . . . . . . . . . 133
6.8 Relazione tra e PM . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
10 febbraio 2009 Roberto Bucher & Silvano Balemi 9
Dinamica e stabilit`a ELENCO DELLE FIGURE
10 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Elenco delle tabelle
1.1 Sistemi con grandezze ideali . . . . . . . . . . . . . . . . . . . . . . . 20
1.2 Riassunto dei sistemi di 2. ordine . . . . . . . . . . . . . . . . . . . . 58
4.1 Dierenze nel comportamento di sistemi nonlineari con quello di si-
stemi lineari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.1 Trasformate di Laplace e trasformate z . . . . . . . . . . . . . . . . . 103
5.2 Propriet`a della trasformata z . . . . . . . . . . . . . . . . . . . . . . 104
A.1 Trasformate di Laplace di funzioni comuni . . . . . . . . . . . . . . . 138
A.2 Propriet`a della trasformata di Laplace . . . . . . . . . . . . . . . . . 139
10 febbraio 2009 Roberto Bucher & Silvano Balemi 11
Dinamica e stabilit`a ELENCO DELLE TABELLE
12 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Capitolo 1
Sistemi dinamici
1.1 Introduzione
1.1.1 Il sistema
Un sistema `e unastrazione della realt`a con la quale si indica unaggregazione di
parti che formano un tuttuno e che interagiscono con il suo ambiente tramite del-
le entrate (inuenza dellambiente sul sistema) e delle uscite (inuenza del siste-
ma sullambiente). Una rappresentazione schematica di un sistema `e data nella
gura 1.1.
Un processo reale pu`o essere meccanico, biologico, chimico, o di molte altre
nature. Per esempio, modicando la tensione allentrata di un motore elettrico
(input), possiamo variarne la velocit`a (output). Il numero di entrate ed uscite pu`o

u
sistema
y
Figura 1.1: Sistema con entrate e uscite, rappresentante il processo
essere dierente. Se il numero di entrate e di uscite sono entrambi 1, il sistema
`e detto sistema SISO (single input single output), altrimenti viene denito come
sistema MIMO (multiple input multiple output).
1.1.2 Propriet`a di sistemi
1.1.2.1 Statica e dinamica
Un sistema secondo la gura 1.1 `e denominato statico se luscita y al tempo t dipende
unicamente dal valore dellentrata u al tempo t.
Un sistema `e invece chiamato dinamico se luscita dipende anche dalla storia
passata del sistema. Si pu`o quindi dire che un sistema dinamico ha memoria di
quello che `e successo nel passato.
Per conoscere il comportamento futuro del sistema in funzione delle entrate fu-
ture non `e per`o necessario conoscere completamente il comportamento passato (cio`e
10 febbraio 2009 Roberto Bucher & Silvano Balemi 13
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
la storia del sistema): `e suciente uninformazione ridotta che si chiama stato del
sistema.
Per esempio, per conoscere il comportamento in frenata di unauto `e necessario
sapere dove ha cominciato a frenare e a che velocit`a viaggiava, mentre `e irrilevante
sapere se aveva appena raggiunto quella velocit`a o se stava procedendo da tanto
tempo alla velocit`a.
Lo stato (anche detto condizioni iniziali) `e espresso con un certo numero di
variabili. Il numero minimo di variabili necessarie per poter determinare le uscite
del sistema prende il nome di ordine del sistema, indicato con n.
1.1.2.2 Invarianza nel tempo
Un sistema `e invariante nel tempo quando luscita ottenuta per un sistema con
stato iniziale e entrata dati `e semplicemente traslata nel tempo se, a parit`a di stato
iniziale, lentrata del sistema `e traslata nel tempo. Questo pu`o essere espresso con
la condizione
y(t) = f(x
0
, u(t)) = y(t ) = f(x
0
, u(t ))
Un sistema che subisce delle variazioni nella sua struttura con il passare del tempo
non `e invece invariante nel tempo (p. es. sistemi che si consumano o si degradano
nel tempo e che quindi modicano le loro caratteristiche dinamiche).
1.1.2.3 Linearit`a
Un sistema `e lineare quando soddisfa la condizione di proporzionalit`a
f( x) = f(x)
e la condizione di superposizione
f(x + y) = f(x) + f(y)
Le due condizioni possono essere riassunte nellunica formula
f( x + y) = f(x) + f(y) (1.1)
1.2 Modellazione
Per poter analizzare a fondo un processo e poterlo in seguito correggere e inuenzare,
occorre trovare una descrizione quantitativa del suo comportamento. Loperazione
di modellazione `e molto complessa, e occupa normalmente una grossa parte del
lavoro di regolazione.
14 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.2. Modellazione Dinamica e stabilit`a
1.2.1 Modellazione dai princpi primi
Il primo lavoro da fare quando si vuole trovare un modello matematico di un sistema
`e quello di applicare quelle leggi della sica che ne descrivono il comportamento. Se
abbiamo ad esempio un circuito elettrico `e possibile applicare le leggi di Kirchho,
che sono la base dellelettrotecnica. Se studiamo invece sistemi meccanici `e possibile
applicare le leggi di Newton sul moto di traslazione e rotazione.
Questo risulta in una descrizione del processo basata su equazioni dierenzia-
li. Una volta determinata la struttura del modello per il processo occorre ancora
determinare i parametri del modello.
Esempio 1.1 Dato `e il circuito con resistenze e capacit` a dato nella gura 1.2. I valori
sono R
1
=
10
3
k, R
2
= 5k, C
1
= C
2
= 100F.


R
1
u
C
2
R
2
u
1
u
2
C
1
Figura 1.2: Circuito elettrico con resistenze e capacit`a
Si desidera descrivere il comportamento del circuito, con la tensione u come entrata e
la tensione u
1
della capacit` a C
1
come uscita.
Le correnti nelle capacit` a sono:
C
1
u
1
= i
R
1
i
R
2
C
2
u
2
= i
R
2
Con le correnti nelle resistenze date dalla dierenza di potenziale ai capi otteniamo:
C
1
u
1
=
u u
1
R
1

u
1
u
2
R
2
(1.2)
C
2
u
2
=
u
1
u
2
R
2
(1.3)
La somma delle due equazioni (1.2) e (1.3) fornisce lespressione
C
1
u
1

u u
1
R
1
= C
2
u
2
(1.4)
Derivando le equazioni (1.2) e (1.3) e moltiplicando i due lati per R
2
C
2
otteniamo
C
1
C
2
R
2
u
1
= R
2
C
2

u u
1
R
1
C
2
u
1
+C
2
u
2
(1.5)
Sommando le due equazioni (1.4) e (1.5) otteniamo
C
1
C
2
R
2
u
1
+C
1
u
1

u u
1
R
1
= R
2
C
2

u u
1
R
1
C
2
u
1
10 febbraio 2009 Roberto Bucher & Silvano Balemi 15
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
e dopo un po di ordine
u
1
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
u
1
+
1
R
1
C
1
R
2
C
2
u
1
=
1
R
1
C
1
u +
1
R
1
C
1
R
2
C
2
u (1.6)
Con la struttura del modello appena trovata, e i parametri dati (cio`e i valori dei componenti
elettrici) abbiamo nalmente il modello
u
1
+ 7 u
1
+ 6 u
1
= 3 u + 6 u (1.7)
Notiamo come il sistema sia descritto da due equazioni dierenziali (1.2) e (1.3) di primo
ordine, rispettivamente dallequazione dierenziale (1.6) di secondo ordine. Il sistema `e
quindi di secondo ordine.
Esempio 1.2 Dato `e il sistema meccanico della gura 1.3 con M = 1kg, k = 10kg/m e
d = 2kgs/m. Per analizzare le forze che agiscono sulla massa M utilizziamo la legge di

'
''
''
''
''
''
''
'

d
F(t)
k
M
x(t)
Figura 1.3: Rappresentazione di una massa oscillante con molla e ammortizzatore
Newton (ad una dimensione)
M
d
2
x
dt
2
=

i
F
i
Le forze esterne che agiscono sulla massa sono quelle dovute alla molla e allo smorzamento
(considerato viscoso), oltre alla forza applicata F(t). Lequazione che descrive il moto di
traslazione della massa M diventa quindi
M
d
2
x(t)
dt
2
= d
dx(t)
dt
k x(t) +F(t) (1.8)
dove x `e misurato dalla posizione di riposo. Con la struttura del modello appena trovata,
e i parametri dati (cio`e i valori dei componenti meccanici) abbiamo nalmente il modello
x(t) + 2 x(t) + 10 x(t) = F(t) (1.9)
In questo caso abbiamo un sistema di 2. ordine descritto tramite unequazione dierenziale
lineare di 2. ordine.
Esempio 1.3 Un sistema reale simile alla massa con la molla `e quello delle sospensione
di unautomobile, come da gura 1.4. Le equazioni dierenziali che descrivono questo
sistema sono
M z = M g d ( z z
t
) k (z z
t
) (1.10)
m z
t
= m g +d ( z z
t
) +k (z z
t
) +k
t
(z
r
z
t
) (1.11)
16 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.2. Modellazione Dinamica e stabilit`a
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
`

.
..

`
m
carrozzeria
ruota
z
t
k
t
z
k
d
M
z
r
Figura 1.4: Schema meccanico degli ammortizzatori di un veicolo (quarter car)
R,L
i
y
M
u
Figura 1.5: Sospensione magnetica
10 febbraio 2009 Roberto Bucher & Silvano Balemi 17
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Esempio 1.4 La gura 1.5 mostra una massa sospesa magneticamente. Le equazioni
dierenziali che descrivono questo sistema sono:
M
d
2
y
dt
2
= M g k
i
2
(t)
y
2
(t)
(1.12)
u(t) = R i(t) +L
di(t)
dt
(1.13)
Esempio 1.5 La gura 1.6 rappresenta un sistema idraulico. Lequazione dierenziale

`

`
2R
h
2r
Figura 1.6: Sistema idraulico
che descrive questo sistema `e
dh
dt
= C
_
2 g h
_
r
R
_
2
(1.14)
Dove h `e laltezza del liquido, R il raggio del contenitore, r il raggio del foro di scarico, g
la costante gravitazionale e C la costante di scarico.
Esempio 1.6 Consideriamo una casa con capacit` a termica C (gura 1.7). La tempera-
tura esterna `e T
ext
mentre la temperatura interna `e T
int
, la supercie esterna della casa `e
data a A e inne k indica il coeciente totale di trasmissione termica.

`
`
`
`
`
>
>
>
>

T
ext
T
int
C

in

out
Figura 1.7: Casa con riscaldamento e perdite caloriche
Nella casa viene inserita enegia sotto forma di usso di calore (potenza calorica)
in
.
La potenza di perdita, con la resistenza termica dei muri data da 1/(Ak) (rispettivamente,
18 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.2. Modellazione Dinamica e stabilit`a
la conduttivit` a termica data da A k), `e

out
(t) =
T
int
(t) T
ext
(t)
1/(A k)
e con la relazione per la temperatura
C
dT
int
(t)
dt
=
in
(t)
out
(t)
otteniamo
C
dT
int
(t)
dt
+A k T
int
(t) =
in
(t) +A k T
ext
(t)
Sia un apporto di energia sia una temperatura esterna alta contribuiscono a aumentare la
temperatura interna.
In tutti questi esempi abbiamo ottenuto delle equazioni dierenziali lineari o
non lineari che descrivono il comportamento dei processi analizzati. Non sempre si
ottengono rappresentazioni lineari, si `e per`o praticamente sempre confrontati con
equazioni dierenziali o sistemi di equazioni dierenziali. Queste equazioni saranno
il punto di partenza per ulteriori analisi sui processi.
1.2.2 Relazioni tra grandezze siche
Nelle tabelle seguenti sono indicate le relazioni che intercorrono tra le grandezze
siche che troviamo usualmente in sistemi. La tabella 1.1 mostra le relazioni tra
grandezze elettriche in un circuito, le relazioni tra grandezze meccaniche rispet-
tivamente per il moto di traslazione e di rotazione, le relazioni che descrivono il
comportamento di serbatoi e le relazioni tra grandezze termiche.
1.2.3 Modellazione mediante gra di usso
1.2.3.1 Rappresentazione
Uno strumento molto pratico per analizzare sistemi lineari `e dato dai diagrammi di
usso di segnali (signal-ow graphs). In una tale rappresentazione le variabili sono
rappresentate da nodi, le dipendenze lineari tra le variabili da archi diretti dotati di
un valore (peso).
Esempio 1.7 Lequazione
x = a y b w +z
pu` o essere rappresentata con il diagramma di usso della gura 1.8. Quando il valore per
il peso di una linea `e omesso, lo si assume uguale a 1.
Esempio 1.8 Lequazione recursiva
x = a y b x +c z
pu` o essere rappresentata come nella gura 1.9. Nota che una recursivit` a dellequazione
implica la presenza di loops.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 19
D
i
n
a
m
i
c
a
e
s
t
a
b
i
l
i
t
`a
C
a
p
i
t
o
l
o
1
.
S
i
s
t
e
m
i
d
i
n
a
m
i
c
i
campo usso potenziale integratore proporzionale derivatore doppio deriva-
tore
elettricit` a corrente i tensione u u
L
= L
di
L
dt
i(t) =
u(t)
R
i
C
= C
du
C
dt
traslazione forza f spostamento
x
f(t) = k x(t) f(t) = d x(t) f(t) = m x(t)
rotazione momento M angolo M(t) = k (t) M(t) = d (t) M(t) = (t)
idraulica portata q pressione p q(t) =
p(t)
R
h
uidodinamica portata q altezza h q(t) =
h(t)
R
q(t) = A
dh(t)
dt
termica usso q temperatura
T
q(t) =
T(t)
R
th
q(t) = C
dT(t)
dt
T
a
b
e
l
l
a
1
.
1
:
S
i
s
t
e
m
i
c
o
n
g
r
a
n
d
e
z
z
e
i
d
e
a
l
i
2
0
R
o
b
e
r
t
o
B
u
c
h
e
r
&
S
i
l
v
a
n
o
B
a
l
e
m
i
1
0
f
e
b
b
r
a
i
o
2
0
0
9
1.2. Modellazione Dinamica e stabilit`a

x w
b
a
z
y

Figura 1.8: Rappresentazione di unequazione


-
`
`

`
`

b
c
x
z
y
a
Figura 1.9: Rappresentazione di unequazione recursiva
La tecnica si pu`o utilizzare anche per sistemi di equazioni come nel seguente
esempio.
Esempio 1.9 Il sistema
_
a x
1
+b x
2
= e u
1
c x
1
+d x
2
= f u
2
con entrate u
1
e u
2
pu` o essere riscritto come segue:
_
x
1
= (1 a) x
1
b x
2
+e u
1
x
2
= c x
1
+ (1 d) x
2
+f u
2
e quindi rappresentato dal diagramma nella gura 1.10

`
`

`
`

`
`

`
`
x
2
u
1
u
2
e
c
x
1
1 a
1 d
b
f
Figura 1.10: Rappresentazione di un sistema dequazioni
Questa rappresentazione `e valida anche per sistemi nei quali le variabili sono dei vet-
tori e non degli scalari ed i pesi delle linee delle matrici. Inoltre la rappresentazione
`e valida anche quando i pesi delle linee sono delle funzioni di trasferimento.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 21
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
1.2.3.2 Operazioni su diagrammi di usso
A partire dalla rappresentazione con diagrammi esistono delle tecniche per ridurre
le espressioni utilizzate in partenza per creare i diagrammi. Una di queste tecniche
`e data dalle regole di Mason.
1.2.3.2.1 Riduzione secondo le regole di Mason Queste regole utilizza-
no il concetto di percorso, di loop, di nodo indipendente e di determinante di un
diagramma.
Denizione 1.1 (percorso) Un percorso `e dato da una sequenza di linee direzio-
nate che conducono da un nodo ad un altro nodo senza passare pi u volte attraverso
uno stesso nodo. Il valore di un percorso `e il prodotto del valore di tutte le linee che
compongono il percorso.
Esempio 1.10 Dallultimo esempio, un percorso che porta da u
2
ad x
1
`e dato dalle due
linee u
2
x
2
e x
2
x
1
(la successione delle tre linee u
2
x
2
, x
2
x
2
e x
2
x
1
non `e
un percorso siccome il nodo x
2
viene vistato due volte). Il valore P del percorso `e b f.
Denizione 1.2 (loop) Un loop `e dato da un percorso nel quale il nodo di partenza
ed il nodo di arrivo sono identici. Il valore di un loop `e il prodotto del valore di tutte
le linee che compongono il loop.
Esempio 1.11 Dallultimo esempio, i loop presenti sono dati dalla linea x
2
x
2
, dalla
linea x
1
x
1
e dalla successione di linee x
1
x
2
e x
2
x
1
I valori L dei loop sono 1d,
1 a e b c rispettivamente.
Denizione 1.3 (nodo indipendente) Un nodo indipendente `e un nodo verso il
quale non sono puntate linee direzionate.
Esempio 1.12 Dallultimo esempio i nodi indipendenti sono u
1
e u
2
.
Denizione 1.4 (determinante) Un determinante di un diagramma `e dato dal-
lespressione
= 1

i
L
i
+

ij
L
i
L
j

ijk
L
i
L
j
L
k
+

ijkl
L
i
L
j
L
k
L
l
. . . (1.15)
dove la prima somma `e eseguita su tutti i loop del diagramma, la seconda somma
su tutti le coppie di loop che non hanno nodi in comune, la terza somma su tutti gli
insiemi di tre loop che non hanno nodi in comune, ecc.
Esempio 1.13 Dallultimo esempio, il determinante del diagramma `e
= 1 (1 d) (1 a) b c + (1 d) (1 a)
= d +a 1 b c + (1 d) (1 a)
= d a b c
22 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.2. Modellazione Dinamica e stabilit`a
Ora, mediante le regole di Mason, `e possibile calcolare il valore di un nodo in
funzione dei nodi indipendenti nel modo seguente:
x
j
=

i
G
ij
x
i
dove x
i
`e un nodo indipendente (1.16)
e dove la somma

i
`e eseguita su tutti i nodi indipendenti. Il coeciente G
ij
`e
G
ij
=

k
P
ijk

ijk

(1.17)
dove
P
ijk
`e il valore di un percorso tra il nodo x
i
ed il nodo x
j

ijk
il determinante del diagramma rimanente dopo che il diagramma originale
sia stato ridotto rimuovendo i nodi che si trovano sul percorso.
La somma

k
`e eseguita su tutti i percorsi esistenti tra il nodo x
i
ed il nodo x
j
.
Esempio 1.14 Sempre con lesempio della gure 1.10 otteniamo:
G
u
1
,x
1
=
e (1 (1 d))
d a b c
=
e d
d a b c
G
u
2
,x
1
=
f b
d a b c
e quindi
x
1
=
e d u
1
f b u
2
d a b c
(calcolare il valore di x
2
in funzione delle entrate u
1
e u
2
come esercizio).
1.2.3.3 Scalare un nodo
Nella pratica (variabili in un programma limitate ad un valore massimo, valori ana-
logici in un circuito elettronico) `e spesso necessario scalare il valore di un nodo senza
per`o modicare i valori degli altri nodi.
La procedura seguente viene utilizzata in questo caso. Se il valore di un nodo
deve essere diviso per k si crei un cerchio attorno al nodo considerato. I valori di
tutte le linee che entrano nel cerchio devono essere divisi per k, tutti i valori delle
linee che escono dal cerchio devono essere moltiplicati per k.
Esempio 1.15 Sempre con lesempio della gure 1.10 desideriamo scalare il nodo x
2
con il fattore 1. Il valore del nuovo nodo x

2
`e quindi x
2
. Il nuovo diagramma `e
rappresentato nella gura 1.11. Nota che se noi ricalcoliamo il valore di x
1
in funzione dei
nodi indipendenti utilizzando le regole di Mason ritroviamo esattamente lo stesso risultato
ottenuto sopra (esercizio volontario!).
Questa procedura pu`o essere ripetuta quante volte necessarie. Essa pu`o inoltre
essere applicata anche a pi` u nodi contemporaneamente. In questo caso viene usato
un cerchio che include tutti i nodi considerati; tutti i valori dei nodi considerati
saranno scalati con lo stesso fattore.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 23
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici

`
`

`
`

`
`

`
`

2
u
1
u
2
e
x
1
1 a
1 d
f
b c
Figura 1.11: Procedura per scalare un nodo in un diagramma
1.3 Rappresentazioni
Sistemi dinamici possono essere descritti con diversi formalismi. In particolare le
possibilit`a pi` u comuni sono le seguenti:
lequazione dierenziale,
la rappresentazione di stato,
la funzione di trasferimento,
la rappresentazione temporale.
equazione
dierenziale

.>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

funzione di
trasferimento
traiettoria
nel tempo
spazio
degli stati
y(t) G(s)
Figura 1.12: Relazioni tra le varie rappresentazioni
1.3.1 Equazioni dierenziali
Con gli esempi visti in precedenza `e stato mostrato come dai princpi primi otteniamo
delle equazioni dierenziali, nellesempio 1.2 della forma
M
d
2
x(t)
dt
2
= d
dx(t)
dt
k x(t) + F(t)
24 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
oppure un sistema di equazioni dierenziali come per le sospensioni della gura 1.4
M z = M g d ( z z
t
) k (z z
t
)
m z
t
= m g + d ( z z
t
) + k (z z
t
) + k
t
(z
r
z
t
)
Per sistemi lineari e invarianti nel tempo, esiste una descrizione del comporta-
mento del sistema data da unequazione dierenziale lineare di ordine n. Essa ha la
forma
y
(n)
+a
n1
y
(n1)
+. . . +a
1
y +a
0
y = b
n
u
(n)
+b
n1
u
(n1)
+. . . +b
1
u +b
0
u
Si rinvia ai corsi di analisi per i metodi di soluzione di una tale equazione. In
particolare si rammenta che il polinomio caratteristico
s
n
+ a
n1
s
n1
+ . . . + a
1
s + a
0
assume una grande importanza.
1.3.2 Rappresentazione di stato
1.3.2.1 Equazioni di stato
Con la possibilit`a di realizzare controllori tramite (micro)processori sono stati resi
possibili la progettazione e luso di controllori complessi. La progettazione di con-
trollori complessi richiede per`o una descrizione esplicita del sistema da controllare.
La rappresentazione nello spazio degli stati permette di sostituire ad unequazio-
ne dierenziale un sistema di equazioni dierenziali di primo ordine.
Il grosso vantaggio di questa rappresentazione `e lampia gamma di possibili uti-
lizzi, soprattutto in quei sistemi dove alcuni termini dellequazione dierenziale non
sono costanti, ma variano nel tempo. Pensiamo ad esempio alla massa di un missile
che diminuisce con il consumo di carburante, oppure ad un aeroplano che vola a
diverse altitudini.
In generale la rappresentazione di stato di un sistema prende la forma seguente:
x
1
= f
1
(x
1
, x
2
, . . . , x
n
, u
1
, u
2
, . . . , u
m
, t)
x
2
= f
2
(x
1
, x
2
, . . . , x
n
, u
1
, u
2
, . . . , u
m
, t)
.
.
.
.
.
.
x
n
= f
n
(x
1
, x
2
, . . . , x
n
, u
1
, u
2
, . . . , u
m
, t)
y
1
= g
1
(x
1
, x
2
, . . . , x
n
, u
1
, u
2
, . . . , u
m
, t)
.
.
.
.
.
.
y
k
= g
k
(x
1
, x
2
, . . . , x
n
, u
1
, u
2
, . . . , u
m
, t)
(1.18)
Usando una notazione vettoriale possiamo scrivere
x = f(x, u, t)
y = g(x, u, t)
(1.19)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 25
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Le variabili x
1
, x
2
. . . x
n
sono dette variabili di stato mentre il vettore x `e detto
vettore delle variabili di stato.
Nel caso di sistemi lineari e invarianti nel tempo (sistemi LTI) la rappresentazione
mediante le funzioni f
i
e g
i
pu`o essere sostituita da una rappresentazione matriciale;
in questo caso i vari coecienti delle variabili di stato e delle entrate sono contenuti
in 4 matrici A, B, C e D.
La formulazione generale dellequazione nello spazio degli stati, per sistemi lineari
e invarianti nel tempo con n variabili di stato, m entrate e p uscite, detto MIMO
(Multiple Input Multiple Output) `e data da
x = A x + B u (1.20)
y = C x + D u (1.21)
in cui A `e una matrice n n, B una matrice n m, C una matrice p n e D una
matrice p m.
Nel caso semplice di una entrata e una uscita cio`e di un cosiddetto sistema SISO
(Single Input Single Output) le matrici B e C sono vettori e D uno scalare. Spesso
D vale 0, non essendoci un collegamento diretto tra entrata e uscita (feed-through).
In Matlab, il comando sys=ss(A,B,C,D) fornisce un oggetto sistema nella rap-
presentazione di stato mentre il comando [A,B,C,D]=ssdata(sys) fornisce le ma-
trici della rappresentazione di stato a partire dalloggetto sistema.
Esempio 1.16 Le equazioni (1.2) e (1.3) del circuito elettrico RC dellesempio 1.1, divise
per C
1
, risp. per C
2
sono:
u
1
=
u
1
R
1
C1

u
1
R
2
C1
+
u
2
R
2
C1
+
u
R
1
C1
u
2
=
u
1
R
2
C2

u
2
R
2
C2
e otteniamo quindi la nuova rappresentazione di stato
_
u
1
u
2
_
=
A
..
_

1
R
1
C
1

1
R
2
C
1
1
R
2
C
1
1
R
2
C
2

1
R
2
C
2
_

_
u
1
u
2
_
+
B
..
_
1
R
1
C
1
0
_
u
u
1
= [ 1 0 ]
. .
C

_
u
1
u
2
_
+ [ 0 ]
..
D
u
(1.22)
dove in questo caso gli stati x
i
sono uguali alle tensioni u
i
. Con notazione pi` u compatta,
la rappresentazione di stato pu` o essere indicata da
_
A B
C D
_
=
_

1
R
1
C
1

1
R
2
C
1
1
R
2
C
1
1
R
1
C
1
1
R
2
C
2

1
R
2
C
2
0
1 0 0
_

_
che per i valori dati diventa
_
A B
C D
_
=
_

_
5 2 3
2 2 0
1 0 0
_

_ (1.23)
26 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Esempio 1.17 Per il sistema massa/molla dellesempio 1.2 partiamo dalle equazioni
dierenziali
M
d
2
x(t)
dt
2
= d
dx(t)
dt
k x(t) +F(t) (1.24)
dividendo dapprima entrambi i membri dellequazione per M. Con la denizione degli
stati
x
1
= x(t) e x
2
= x(t) = x
1
(t)
si ottiene la rappresentazione di stato
_
x
1
x
2
_
=
_
_
0 1

k
M

d
M
_
_

_
x
1
x
2
_
+
_
_
0
1
M
_
_
F(t)
x(t) =
_
1 0
_

_
x
1
x
2
_ (1.25)
e con i valori dei componenti meccanici
_
x
1
x
2
_
=
_
0 1
10 2
_

_
x
1
x
2
_
+
_
0
1
_
F(t)
x(t) =
_
1 0
_

_
x
1
x
2
_
(1.26)
1.3.2.2 Trasformazione di variabili di stato
Per ogni sistema lineare esistono innite possibili rappresentazioni di stato a di-
pendenza della scelta delle variabili di stato x
1
. . . x
n
.
`
E possibile passare ad altre
rappresentazioni di stato conoscendo la matrice di trasformazione P che lega le
variabili di stato attuali x con le nuove variabili di stato z secondo lapplicazione
lineare
x = P z
Partendo quindi dal sistema
x = A x +B u
y = C x +D u
(1.27)
possiamo scrivere
P z = A P z + B u
e quindi
z = P
1
A P z + P
1
B u
e allo stesso modo si trova
y = C P z + D u
Le matrici della rappresentazione di stato del nuovo sistema sono quindi
z = (P
1
A P) z +(P
1
B) u
y = (C P) z +D u
(1.28)
Il documento realizations.pdf riporta diverse rappresentazioni di stato interessanti
cos` come anche le relative matrici di trasformazione P.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 27
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Esempio 1.18 Data `e la rappresentazione di stato (1.22) del circuito elettrico RC del-
lesempio 1.1. In questa rappresentazione gli stati sono dati dalle tensioni u
1
e u
2
delle
capacit` a. Per la nuova scelta degli stati dati dalla corrente i
2
e dalla tensione u
2
della
capacit` a C
2
otteniamo la relazione:
_
i
2
u
2
_
. .
z
=
_
1
R
2

1
R
2
0 1
_
. .
P
1

_
u
1
u
2
_
. .
x
da cui
_
u
1
u
2
_
. .
x
=
_
R
2
1
0 1
_
. .
P

_
i
2
u
2
_
. .
z
con la quale otteniamo poi la nuova rappresentazione di stato
z
..
_

i
2
u
2
_
=
P
1
..
_
1
R
2

1
R
2
0 1
_

A
..
_

1
R
1
C
1

1
R
2
C
1
1
R
2
C
1
1
R
2
C
2

1
R
2
C
2
_

P
..
_
R
2
1
0 1
_

z
..
_
i
2
u
2
_
+
P
1
..
_
1
R
2

1
R
2
0 1
_

B
..
_
1
R
1
C
1
0
_
u
u
1
= [ 1 0 ]
. .
C

_
R
2
1
0 1
_
. .
P

_
i
2
u
2
_
. .
z
+ [ 0 ]
..
D
u
che si semplica in
_

i
2
u
2
_
=
_

1
R
1
C
1

1
R
2
C
1

1
R
2
C
2

1
R
2
R
1
C
1
1
C
2
0
_

_
i
2
u
2
_
+
_
1
R
2
R
1
C
1
0
_
u
u
1
= [ R
2
1 ]
_
i
2
u
2
_
+ [ 0 ] u
Esempio 1.19 Data `e la rappresentazione di stato (1.25) della massa oscillante delle-
sempio 1.2. In questa rappresentazione gli stati sono dati dalla velocit`a x
1
= x(t) e della
posizione x
2
= x(t) in unit` a metriche (m/s e m).
Se la scelta degli stati invece `e data prima dalla velocit`a in millimetri al secondo (con
z
1
(t) = 1000 x(t) e quindi z
1
(t) = 1000 x
2
(t) ) e poi dalla posizione in millimetri (con
z
2
(t) = 1000 x(t) e quindi z
2
(t) = 1000 x
1
(t)) otteniamo la relazione:
_
z
1
z
2
_
=
_
0 1000
1000 0
_

_
x
1
x
2
_
da cui
_
x
1
x
2
_
. .
vecchio stato
=
_
0
1
1000
1
1000
0
_
. .
P

_
z
2
z
2
_
. .
nuovo stato
28 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
con la quale otteniamo poi la nuova rappresentazione di stato
_
z
1
z
2
_
=
_
0 1000
1000 0
_

_
_
0 1

k
M

d
M
_
_

_
0
1
1000
1
1000
0
_

_
z
1
z
2
_
+
_
0 1000
1000 0
_

_
_
0
1
M
_
_
F(t)
x(t) = [ 1 0 ]
_
0
1
1000
1
1000
0
_

_
z
1
z
2
_
+ [ 0 ] F
che si semplica in
_
z
1
z
2
_
=
_
_

d
M

k
M
1 0
_
_

_
z
1
z
2
_
+
_
_
1000
M
0
_
_
F(t)
x(t) =
_
0
1
1000
_

_
z
1
z
2
_
dove luscita x(t) `e sempre in metri, mentre lo stato z
2
`e sempre lo spostamento ma in
millimetri.
1.3.2.3 Trasformazione da rappresentazione di stato a equazione die-
renziale
La matrice
P =
_

_
q
q A
orig
.
.
.
q A
n1
orig
_

_
1
dove
q = [0 . . . 0 1] [ B
orig
, A
orig
B
orig
, A
2
orig
B
orig
, . . . , A
n1
orig
B
orig
]
1
trasforma una rappresentazione di stato qualsiasi nella nuova forma
_
A B
C D
_
=
_

_
0 1 0 . . . 0 0
0 0 1 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 . . . 1 0
a
0
a
1
a
2
. . . a
n1
1
b
0
b
1
b
2
. . . b
n1
0
_

_
Da questa rappresentazione di stato detta del controllore (controller normal form)
si pu`o risalire direttamente allequazione dierenziale lineare
y
(n)
+ a
n1
y
(n1)
+ . . . + a
1
y + a
0
y = b
n1
u
(n1)
+ . . . + b
1
u + b
0
u
Esempio 1.20 La rappresentazione di stato (1.23) del circuito elettrico RC dellesem-
pio 1.1 pu` o essere trasformata nella rappresentazione di stato detta forma del controllore
con i seguenti passi
P =
_
[0, 1] [ B, A B]
1
[0, 1] [ B, A B]
1
A
_
1
10 febbraio 2009 Roberto Bucher & Silvano Balemi 29
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
che diventa
P
1
=
_

_
[0, 1]
_ _
3
0
_
,
_
5 2
2 2
_

_
3
0
_ _
1
[0, 1]
_ _
3
0
_
,
_
5 2
2 2
_

_
3
0
_ _
1

_
5 2
2 2
_
_

_
=
_

_
[0, 1]
_
3 15
0 6
_
1
[0, 1]
_
3 15
0 6
_
1

_
5 2
2 2
_
_

_
=
_

_
[0, 1]
_
1
3
5
6
0
1
6
_
[0, 1]
_
1
3
5
6
0
1
6
_

_
5 2
2 2
_
_

_
=
_
_
[ 0
1
6
]
[ 0
1
6
]
_
5 2
2 2
_
_
_
=
_
0
1
6
1
3

1
3
_
dando la matrice di trasformazione
P =
_
0
1
6
1
3

1
3
_
1
=
_
6 3
6 0
_
La nuova rappresentazione di stato `e allora
A
new
= P
1
A P =
_
0
1
6
1
3

1
3
_

_
5 2
2 2
_

_
6 3
6 0
_
=
_
0 1
6 7
_
B
new
= P
1
B =
_
0
1
6
1
3

1
3
_

_
3
0
_
=
_
0
1
_
C
new
= C P = [ 1 0 ]
_
6 3
6 0
_
= [ 6 3 ]
D
new
= D = 0
che pu` o essere riscritta nella forma compatta
_
A
new
B
new
C
new
D
new
_
=
_

_
0 1 0
6 7 1
6 3 0
_

_ (1.29)
Da questa possiamo ottenere nuovamente con la lettura dei coecienti lequazione die-
renziale (1.7)
u
1
+ 7 u
1
+ 6 u
1
= 3 u + 6 u
Esempio 1.21 Per trasformare la rappresentazione di stato (1.26) della massa oscillante
dellesempio 1.2 nella rappresentazione di stato detta forma del controllore cerchiamo
P =
_
[0, 1] [ B, A B]
1
[0, 1] [ B, A B]
1
A
_
1
30 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
che diventa
P
1
=
_

_
[0, 1]
_ _
0
1
_
,
_
0 1
10 2
_

_
0
1
_ _
1
[0, 1]
_ _
0
1
_
,
_
0 1
10 2
_

_
0
1
_ _
1

_
0 1
10 2
_
_

_
=
_

_
[0, 1]
_
0 1
1 2
_
1
[0, 1]
_
0 1
1 2
_
1

_
0 1
10 2
_
_

_
=
_

_
[0, 1]
_
2 1
1 0
_
[0, 1]
_
2 1
1 0
_

_
0 1
10 2
_
_

_
=
_
1 0
0 1
_
ed inne la matrice di trasformazione
P =
_
1 0
0 1
_
Notiamo quindi come la matrice di trasformazione sia la matrice di identit`a. In eetti
la rappresentazione di stato (1.25) `e gia in forma normale del controllore. Da questa
possiamo ottenere nuovamente con la lettura dei coecienti lequazione dierenziale (1.9)
x(t) + 2 x(t) + 10 x(t) = F(t)
1.3.2.4 Trasformazione da equazione dierenziale a rappresentazione di
stato
Dal documento realizations.pdf si pu`o vedere subito come alcune forme cosiddette
canoniche di rappresentazione di sistemi lineari nello spazio degli stati contenga-
no direttamente nelle matrici A, B e C i coecienti delle derivate della variabile
e del segnale in entrata.
`
E quindi possibile e relativamente semplice, partendo
dallequazione dierenziale (lineare e a coecienti costanti)
y
(n)
+ a
n1
y
(n1)
+ . . . + a
1
y + a
0
y = b
n1
u
(n1)
+ . . . + b
1
u + b
0
u
scrivere direttamente il sistema nella rappresentazione di stato del controllore (con-
troller normal form)
_
A B
C D
_
=
_

_
0 1 0 . . . 0 0
0 0 1 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 . . . 1 0
a
0
a
1
a
2
. . . a
n1
1
b
0
b
1
b
2
. . . b
n1
0
_

_
oppure in quella dellosservatore (observer normal form).
10 febbraio 2009 Roberto Bucher & Silvano Balemi 31
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Esempio 1.22 Riferendoci al circuito elettrico RC dellesempio 1.1, otteniamo dallequa-
zione (1.6)
u
1
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
u
1
+
1
R
1
C
1
R
2
C
2
u
1
=
1
R
1
C
1
u +
1
R
1
C
1
R
2
C
2
u
la rappresentazione di stato
_
A B
C D
_
=
_

_
0 1 0

1
R
1
C
1
R
2
C
2

R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
1
1
R
1
C
1
R
2
C
2
1
R
1
C
1
0
_

_
(1.30)
che per i valori dati fornisce
_
A B
C D
_
=
_

_
0 1 0
6 7 1
6 3 0
_

_
confermando lequazione (1.29).
Esempio 1.23 Riferendoci alla massa oscillante dellesempio 1.2, otteniamo direttamente
dallequazione (1.8) riordinata come segue
x +
d
M
x +
k
M
x =
1
M
F
la rappresentazione di stato
_
A B
C D
_
=
_

_
0 1 0

k
M

d
M
1
1
M
0 0
_

_
(1.31)
(nota che si tratta di una rappresentazione di stato leggermente dierente da quella data
dallequazione (1.25)) che per i valori dati fornisce
_
A B
C D
_
=
_

_
0 1 0
10 2 1
1 0 0
_

_
1.3.3 Funzione di trasferimento
Alla base delle funzioni di trasferimento ci sono le trasformate di Laplace. Un
riassunto delle trasformate di Laplace `e riportata nellallegato A.
Con laiuto delle trasformate di Laplace si pu`o trasferire lanalisi di un sistema
dal dominio del tempo al dominio frequenziale della variabile di Laplace. In questo
rappresentazione si ottiene una relazione lineare tra lentrata e luscita del sistema.
Questa relazione `e mostrata schematicamente nella gura 1.13.
32 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
?
u(t)
U(s)
L
6
Y (s) = G(s) U(s)
y(t)
L
1


Sistema
g(t)
G(s)
Figura 1.13: Trasformazione nel dominio di Laplace
1.3.3.1 Trasformazione da equazione dierenziale a funzione di trasferi-
mento
Data lequazione dierenziale
y
(n)
+ a
n1
y
(n1)
+ . . . + a
0
y = b
n1
u
(n1)
+ . . . + b
0
u
trasformando nel dominio di Laplace
L(y
(n)
+ a
n1
y
(n1)
+ . . . + a
0
y) = L(b
n1
u
(n1)
+ . . . + b
0
u)
e con condizioni iniziali nulle otteniamo
Y (s) (s
n
+a
n1
s
n1
+a
n2
s
n2
+. . .+a
0
) = U(s) (b
n1
s
n1
+b
n2
s
n2
+. . .+b
0
)
e quindi
Y (s)
U(s)
=
b
n1
s
n1
+ b
n2

n2
+ . . . + b
0
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ . . . + a
0
= G(s)
dove con G(s) si indica la funzione di trasferimento. Nel caso di condizioni iniziali
non nulle otteniamo la forma
Y (s) = F(s) + G(s) U(s)
dove la trasformata di Laplace F(s) della risposta libera ha lo stesso denominatore
di G(s) e un numeratore i cui coecienti sono una combinazione lineare di y
(i)
(0) e
u
(i)
(0).
Luso della funzione di trasferimento permette di analizzare il comportamento
del sistema nel dominio della frequenza. In molti casi, lanalisi in questo dominio `e
suciente per progettare controllori e per simulare il comportamento risultante del
sistema combinato con il controllore.
Determiniamo adesso la funzione di trasferimento per i sistemi considerati negli
esempi presentati allinizio di questo capitolo.
Esempio 1.24 Per il circuito elettrico RC dellesempio 1.1, data lequazione dierenziale:
y
(n)
+a
n1
y
(n1)
+. . . +a
1
y +a
0
y = b
n1
u
(n1)
+. . . +b
1
u +b
0
u
10 febbraio 2009 Roberto Bucher & Silvano Balemi 33
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
e la funzione di trasferimento
G(s) =
b
n
s
n
+b
n1
s
n1
+b
n2
s
n2
+. . . +b
1
s +b
0
s
n
+a
n1
s
n1
+a
n2
s
n2
+. . . +a
1
s +a
0
e utilizzando il risultato dellequazione (1.6)
u
1
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
u
1
+
1
R
1
C
1
R
2
C
2
u
1
=
1
R
1
C
1
u +
1
R
1
C
1
R
2
C
2
u
otteniamo
G(s) =
1
R
1
C
1
s +
1
R
1
C
1
R
2
C
2
s
2
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
s +
1
R
1
C
1
R
2
C
2
(1.32)
che con i valori dati diventa
G(s) =
3 s + 6
s
2
+ 7 s + 6
(1.33)
Esempio 1.25 Per lesempio della massa sospesa avevamo trovato lequazione dieren-
ziale (1.8) seguente
M
d
2
x(t)
dt
2
= d
dx(t)
dt
k x(t) +F(t)
Anche in questo caso consideriamo per semplicit`a condizioni iniziali nulle. La trasforma-
zione di Laplace dellequazione (1.8) diventa quindi
M s
2
X(s) = d s X(s) k X(s) +F(s)
Risolvendo per X(s) si ottiene
X(s)(M s
2
+d s +k) = F(s)
Anche in questo caso possiamo trovare la funzione di trasferimento tra F(s) e X(s)
G(s) =
X(s)
F(s)
=
1
Ms
2
+d s +k
(1.34)
che per i valori dati diventa
G(s) =
X(s)
F(s)
=
1
s
2
+ 2 s + 10
(1.35)
In entrambi i casi si pu`o notare che il polinomio caratteristico dellequazione die-
renziale coincide con il denominatore della funzione di trasferimento.
1.3.3.2 Trasformazione da rappresentazione di stato a funzione di tra-
sferimento
La trasformazione dalla forma nello spazio degli stati alla funzione di trasferimento
avviene applicando le trasformate di Laplace sul sistema matriciale.
Partiamo da una formulazione generale di un processo nello spazio degli stati
x = A x +B u
y = C x +D u
(1.36)
34 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
e applicando le regole della trasformata di Laplace otteniamo
s X(s) x(0) = A X(s) + B U(s) (1.37)
Trasformando lequazione (1.37) otteniamo
(sI A) X(s) = x(0) +B U(s) (1.38)
Risolvendo per X(s) si ottiene
X(s) = (sI A)
1
x(0) + (sI A)
1
B U(s) (1.39)
Possiamo ora calcolare il valore di Y(s), moltiplicando il risultato ottenuto in (1.39)
per la matrice C.
Y (s) = C X(s) + D U(s) (1.40)
Y (s) = C (sI A)
1
x(0) +C (sI A)
1
BU(s) + D U(s) (1.41)
Y (s) = C (sI A)
1
x(0) +
_
C (sI A)
1
B + D
_
. .
G(s)
U(s) (1.42)
Nel caso di condizioni iniziali nulle il primo termine dellequazione (1.42) sparisce.
In Matlab, il comando sys=tf(sys) trasforma un oggetto sistema dato nella
rappresentazione di stato ad un oggetto sistema dato con una funzione di trasferi-
mento mentre il comando [num,den]=tfdata(sys,v) fornisce il numeratore ed il
denominatore della funzione di trasferimento a partire dalloggetto sistema.
Esempio 1.26 Per il circuito elettrico RC dellesempio 1.1, la funzione di trasferimento
`e data da
G(s) = C (s I A)
1
B +D
= [ 1 0 ]
_
s I
_

1
R
1
C
1

1
R
2
C
1
1
R
2
C
1
1
R
2
C
2

1
R
2
C
2
__
1

_
1
R
1
C
1
0
_
+ [0]
= [ 1 0 ]
_
s +
1
R
1
C
1
+
1
R
2
C
1

1
R
2
C
1

1
R
2
C
2
s +
1
R
2
C
2
_

_
1
R
1
C
1
0
_
= [ 1 0 ]
_
s +
1
R
2
C
2
1
R
2
C
1
1
R
2
C
2
s +
1
R
2
C
1
+
1
R
2
C
1
_
s
2
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
s +
1
R
1
C
1
R
2
C
2

_
1
R
1
C
1
0
_
=
_
s +
1
R
2
C
2
_

1
R
1
C
1
s
2
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
s +
1
R
1
C
1
R
2
C
2
che conferma il risultato dellequazione (1.32). Invece di sostituire i valori, riprendiamo
10 febbraio 2009 Roberto Bucher & Silvano Balemi 35
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
equazione (1.23) e otteniamo
G(s) = C (s I A)
1
B +D
= [ 1 0 ]
_
s I
_
5 2
2 2
__
1

_
3
0
_
+ [0]
= [ 1 0 ]
_
s + 5 2
2 s + 2
_
1

_
3
0
_
= [ 1 0 ]
_
s + 2 2
2 s + 5
_
s
2
+7s+6

_
3
0
_
=
3 s + 6
s
2
+ 7 s + 6
che conferma il risultato dellequazione (1.33)
Esempio 1.27 Per la massa oscillante dellesempio 1.2, la funzione di trasferimento `e
data da
G(s) = C (s I A)
1
B +D
= [ 1 0 ]
_
s I
_
0 1

k
M

d
M
__
1

_
0
1
M
_
+ [0]
= [ 1 0 ]
_
s 1
k
M
s +
d
M
_
1

_
0
1
M
_
= [ 1 0 ]
_
s +
d
M
1

k
M
s
_
s
2
+
d
M
s+
k
M

_
0
1
M
_
=
1
M
s
2
+
d
M
s +
k
M
che conferma il risultato dellequazione (1.34). Invece di sostituire i valori, riprendiamo
equazione (1.26) e otteniamo
G(s) = C (s I A)
1
B +D
= [ 1 0 ]
_
s I
_
0 1
10 2
__
1

_
0
1
_
+ [0]
= [ 1 0 ]
_
s 1
10 s + 2
_
1

_
0
1
_
= [ 1 0 ]
_
s + 2 1
10 s
_
s
2
+2s+10

_
0
1
_
=
1
s
2
+ 2 s + 10
che conferma il risultato dellequazione (1.35)
1.3.3.3 Trasformazione da funzione di trasferimento a equazione die-
renziale
Data una generica funzione di trasferimento
G(s) =
Y (s)
U(s)
=
b
n1
s
n1
+ b
n2
s
n2
+ + b
1
s + b
0
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ + a
1
s + a
0
36 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Possiamo portare a sinistra i coecienti di (Y (s) e a destra quelli di U(s) ottenendo
_
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ + a
1
s + a
0
_
Y (s) =
_
b
n1
s
n1
+ b
n2
s
n2
+ + b
1
s + b
0
_
U(s)
Applicando ora lantitrasformata di Laplace si ottiene lequazione dierenziale
y
(n)
+a
n1
y
(n1)
+. . . +a
1
y +a
0
y = b
n
u
(n)
+b
n1
u
(n1)
+. . . +b
1
u +b
0
u
Esempio 1.28 Per il circuito elettrico RC dellesempio 1.1, data la forma della funzione
di trasferimento
G(s) =
b
n
s
n
+b
n1
s
n1
+b
n2
s
n2
+. . . +b
1
s +b
0
s
n
+a
n1
s
n1
+a
n2
s
n2
+. . . +a
1
s +a
0
e la forma dellequazione dierenziale data da
y
(n)
+a
n1
y
(n1)
+. . . +a
1
y +a
0
y = b
n1
u
(n1)
+. . . +b
1
u +b
0
u
e utilizzando il risultato dellequazione (1.32) data da
G(s) =
1
R
1
C
1
s +
1
R
1
C
1
R
2
C
2
s
2
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
s +
1
R
1
C
1
R
2
C
2
confermiamo il risultato
u
1
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
u
1
+
1
R
1
C
1
R
2
C
2
u
1
=
1
R
1
C
1
u +
1
R
1
C
1
R
2
C
2
u
dellequazione (1.6) che per i valori dati diventa
u
1
+ 7 u
1
+ 6 u
1
= 3 u + 6 u
Esempio 1.29 Per la massa oscillante dellesempio 1.2, e utilizzando il risultato delle-
quazione (1.34) data da
G(s) =
1
M
s
2
+
d
M
s +
k
M
troviamo nuovamente
x +
d
M
x +
k
M
x =
1
M
F
cio`e lequazione (1.8) che per i valori dati diventa
x + 2 x + 10 x = F
10 febbraio 2009 Roberto Bucher & Silvano Balemi 37
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
1.3.3.4 Trasformazione da funzione di trasferimento a rappresentazione
di stato
Le rappresentazioni nel piano degli stati di un determinato processo sono molteplici,
e dipendono dalla scelta delle variabili di stato. Vedremo di seguito come ottenere
una particolare rappresentazione, partendo dalla funzione di trasferimento.
Consideriamo una trasformata di Laplace che rappresenta la funzione di trasfe-
rimento tra una grandezza in entrata U(s) e una grandezza in uscita Y (s):
Y (s)
U(s)
=
b
n1
s
n1
+ b
n2
s
n2
+ + b
1
s + b
0
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ + a
1
s + a
0
(1.43)
Possiamo suddividere il sistema in due funzioni di trasferimento in serie, denendo
uno stato X(s). La prima funzione di trasferimento mette in relazione lo stato con
lentrata
X(s)
U(s)
=
1
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ + a
1
s + a
0
(1.44)
mentre la seconda mette in relazione lo stato con luscita
Y (s)
X(s)
= b
n1
s
n1
+ b
n2
s
n2
+ + b
1
s + b
0
(1.45)
Consideriamo inizialmente lequazione (1.44)
X(s) =
U(s)
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ + a
1
s + a
0
X(s) (s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ + a
1
s + a
0
) = U(s)
Questa equazione nel tempo diventa
d
n
x(t)
dt
n
+ a
n1

d
n1
x(t)
dt
n1
+ + a
1

dx(t)
dt
+ a
0
x(t) = u(t)
Scegliendo le variabili di stato
x
1
= x
x
2
=
dx
dt
.
.
.
x
n
=
d
n1
x
dt
n1
38 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
si ottiene il sistema seguente per x(t)
_

_
x
1
x
2
.
.
.
x
n1
x
n
_

_
=
_

_
0 1 0 0
0 0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 1
a
0
a
1
a
2
a
n1
_

_
_

_
x
1
x
2
.
.
.
x
n1
x
n
_

_
+
_

_
0
0
.
.
.
0
1
_

_
u(t)
x(t) =
_
1 0 0 0
_
_

_
x
1
x
2
.
.
.
x
n1
x
n
_

_
(1.46)
Risolvendo equazione (1.45) nei confronti di Y (s) otteniamo
Y (s) = X(s) (b
n1
s
n1
+ b
n2
s
n2
+ + b
1
s + b
0
)
che trasformato nel tempo diventa
y(t) = b
n1

d
n1
x
dt
n1
+ b
n2

d
n2
x
dt
n2
+ + b
1

dx
dt
+ b
0
x
Questo signica per`o anche
y(t) = b
n1
x
n
+ b
n2
x
n1
+ + b
1
x
2
+ b
0
x
1
(1.47)
Mettendo ora assieme le equazioni (1.46) e (1.47) otteniamo il risultato nale cercato
_

_
x
1
x
2
.
.
.
x
n1
x
n
_

_
=
_

_
0 1 0 0
0 0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 1
a
0
a
1
a
2
a
n1
_

_
_

_
x
1
x
2
.
.
.
x
n1
x
n
_

_
+
_

_
0
0
.
.
.
0
1
_

_
u(t)
y(t) =
_
b
0
b
1
b
n2
b
n1
_
_

_
x
1
x
2
.
.
.
x
n1
x
n
_

_
(1.48)
Come si pu`o facilmente vedere, i coecienti del denominatore si ritrovano tutti
nellultima riga della matrice di stato, con il segno cambiato, in ordine da destra
a sinistra, mentre i coecienti del numeratore si ritrovano nel vettore trasposto c,
riscritti da destra a sinistra. Possiamo anche vedere come questa rappresentazione
coincide con la controller normal form nel documento realizations.pdf.
In Matlab, il comando sys=ss(sys) trasforma un oggetto sistema dato come
una funzione di trasferimento ad un oggetto sistema nella rappresentazione di stato
10 febbraio 2009 Roberto Bucher & Silvano Balemi 39
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
mentre il comando [A,B,C,D]=ssdata(sys) fornisce le matrici della rappresenta-
zione di stato (non `e possibile sapere quale particolare rappresentazione di stato sar`a
fornita dal comando ss).
Esempio 1.30 Per il circuito elettrico RC dellesempio 1.1, con la funzione di trasferi-
mento
G(s) =
1
R
1
C
1
s +
1
R
1
C
1
R
2
C
2
s
2
+
R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
s +
1
R
1
C
1
R
2
C
2
dellequazione (1.32) data nella forma
G(s) =
b
n
s
n
+b
n1
s
n1
+b
n2
s
n2
+. . . +b
1
s +b
0
s
n
+a
n1
s
n1
+a
n2
s
n2
+. . . +a
1
s +a
0
e la forma normale
_
A B
C D
_
=
_

_
0 1 0 . . . 0 0
0 0 1 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 . . . 1 0
a
0
a
1
a
2
. . . a
n1
1
b
0
b
1
b
2
. . . b
n1
0
_

_
`e possibile, grazie a delle semplici sostituzioni, confermare il risultato
_
A B
C D
_
=
_

_
0 1 0

1
R
1
C
1
R
2
C
2

R
1
C
1
+R
1
C
2
+R
2
C
2
R
1
C
1
R
2
C
2
1
1
R
1
C
1
R
2
C
2
1
R
1
C
1
0
_

_
dellequazione (1.30).
Esempio 1.31 Per la massa oscillante della gura 1.3, con la funzione di trasferimento
G(s) =
1
M
s
2
+
d
M
s +
k
M
dellequazione (1.34) data nella forma
G(s) =
b
n
s
n
+b
n1
s
n1
+b
n2
s
n2
+. . . +b
1
s +b
0
s
n
+a
n1
s
n1
+a
n2
s
n2
+. . . +a
1
s +a
0
e la forma normale
_
A B
C D
_
=
_

_
0 1 0 . . . 0 0
0 0 1 . . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 . . . 1 0
a
0
a
1
a
2
. . . a
n1
1
b
0
b
1
b
2
. . . b
n1
0
_

_
40 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
`e possibile, grazie a delle semplici sostituzioni, confermare il risultato
_
A B
C D
_
=
_

_
0 1 0

d
M

k
M
1
1
M
0 0
_

_
dellequazione (1.31).
1.3.4 Rappresentazione nel dominio del tempo
1.3.4.1 Soluzione nel tempo dellequazione dierenziale
Dalla matematica sappiamo che la soluzione di unequazione dierenziale lineare
y
(n)
+a
n1
y
(n1)
+. . . +a
1
y +a
0
y = b
n
u
(n)
+b
n1
u
(n1)
+. . . +b
1
u +b
0
u
`e la somma di due soluzioni:
della soluzione omogenea che dipende dallo stato (p.es. dai diversi y
(i)
(0) per
le diverse derivate indicate da i), ma non dallentrata u(t), e
della soluzione inomogenea che dipende solo da u(t) ma non dallo stato.
In termini controllistici la soluzione omogenea si chiama risposta libera, la soluzio-
ne inomogenea si chiama risposta forzata. La soluzione dellequazione dierenziale
assume allora la forma
y(t) = f(t)
..
risposta libera
+ g(t) u(t)
. .
risposta forzata
dove la risposta forzata `e data dalla convoluzione tra u(t) e una funzione g(t) in-
dipendente da u(t) chiamata risposta impulsiva. Infatti, se lentrata `e un impulso,
cio`e u(t) = (t), la risposta forzata diventa g(t) u(t) = g(t). La funzione g(t) `e
quindi la riposta forzata allimpulso.
Per determinare le soluzioni si sfrutta il cosiddetto polinomio caratteristico delle-
quazione dierenziale. Dai capitoli precedenti risulta che il polinomio caratteristico
corrisponde
al denominatore della funzione di trasferimento del sistema associato allequa-
zione dierenziale, ma anche
al determinante di (s I A) dove A `e la matrice di stato del sistema nella
rappresentazione di stato (confronta anche la sezione 1.3.3.2).
Determinando le radici reali () o complesse ( j) del polinomio carat-
teristico, le soluzioni della risposta forzata f(t) e della risposta impulsiva g(t) si
presentano allora nella forma

n
i
C
i,n
i
t
n
i
e

i
t
=

i
_
C
i,0
+ C
i,1
t + C
i,2
t
2
+ . . . + C
i,n
i
t
n
i
_
e

i
t
10 febbraio 2009 Roberto Bucher & Silvano Balemi 41
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
dove i coecienti C sono possibilmente complessi e non reali. Gli elementi della
sommatoria corrispondenti a radici complesse possono essere rappresentati come
funzioni di seni e coseni, portando alla forma

n
i
C
i,n
t
n
i
e

i
t
+

j
_
_

n
j
_
C
j,n
j
sin(
j
t) + C

j,n
j
cos(
j
t)
_
t
n
j
e

j
t
_
_
nella quale tutti i coecienti sono reali.
I coecienti per la risposta libera possono essere determinati a partire dai valori
iniziali degli stati, cio`e dei valori degli stati al tempo 0. I coecienti per la risposta
impulsiva possono essere determinati grazie alle condizioni ai bordi.
Esempio 1.32
Per il circuito elettrico RC dellesempio 1.1, la soluzione generale dellequazione dieren-
ziale `e della forma
u
1
(t) = f(t) +g(t) u(t)
dove f(t) `e la risposta libera, e g(t) u(t) `e la riposta forzata del sistema.
Dallequazione dierenziale (1.7) otteniamo il polinomio caratteristico
s
2
+ 7 s + 6
con radici
1
= 6 e
2
= 1. La soluzione omogenea, che corresponde alla risposta
libera del sistema, ha la forma
f(t) = K
1
e
6t
+K
2
e
t
Con le condizioni iniziali
f(0) = u
1
(0),

f(0) = u
1
(0)
otteniamo le equazioni
f(0) = f(t)|
t=0
= K
1
e
6t

t=0
+ K
2
e
t

t=0
= K
1
+K
2
= u
1
(0)

f(0) =

f(t)

t=0
= K
1
(6) e
6t

t=0
+ K
2
(1) e
t

t=0
= 6 K
1
K
2
= u
1
(0)
e le soluzioni
K
1
=
u
1
(0) + u
1
(0)
5
K
2
=
6 u
1
(0) + u
1
(0)
5
e quindi
f(t) =
u
1
(0)+ u
1
(0)
5
e
6t
+
6u
1
(0)+ u
1
(0)
5
e
t
Per la riposta impulsiva cerchiamo dapprima la soluzione u
o
1
(t) inomogenea dellequa-
zione dierenziale
u
1
+ 7 u
1
+ 6 u
1
= u
con entrata u(t) = 1, cio`e nel caso di un gradino unitario allentrata. La soluzione ha la
forma
u
o
1
(t) = K
3
+K
4
e
6t
+K
5
e
t
42 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Con lequazione
u
o
1
(t) + 7 u
o
1
(t) + 6 u
o
1
(t) = u(t)
lim
t
( u
o
1
(t) + 7 u
o
1
(t) + 6 u
o
1
(t)) = lim
t
u(t)
lim
t
6 u
o
1
(t) = lim
t
u(t)
lim
t
6 (K
3
+K
4
e
6t
+K
5
e
t
) = lim
t
u(t)
6 K
3
= 1
otteniamo K
3
=
1
6
. Con la condizioni u
o
1
(0) = u
o
1
(0) = 0 otteniamo le equazioni
u
o
1
(0) = u
o
1
(t)|
t=0
= K
3
+ K
4
e
6t

t=0
+ K
5
e
t

t=0
= K
3
+K
4
+K
5
= 0
u
o
1
(0) = u
o
1
(t)|
t=0
= K
4
(6) e
6t

t=0
+ K
5
(1) e
t

t=0
= 6 K
4
K
5
= 0
dalle quali otteniamo K
3
=
1
6
, K
4
=
1
30
e K
5
=
1
5
. Considerando che
la linearit` a permette la superposizione di entrate
la linearit` a indica che la soluzione per lentrata derivata `e la soluzione derivata
dellentrata non derivata
limpulso `e la derivata del gradino
con il risultato
u
o
1
(t) =
1
6
+
1
30
e
6t
+
1
5
e
t
e la forma dellequazione dierenziale (1.7)
u
1
+ 7 u
1
+ 6 u
1
= 3 u + 6 u
otteniamo
g(t) = 6
d
dt
u
o
1
(t) + 3
d
2
dt
2
u
o
1
(t)
= 6
1
30
(6) e
6t
+ 6
1
5
(1) e
t
+3
1
30
(6)
2
e
6t
+ 3
1
5
(1)
2
e
t
g(t) =
12
5
e
6t
+
3
5
e
t
Esempio 1.33 Per la massa oscillante dellesempio 1.2, la soluzione generale dellequa-
zione dierenziale `e della forma
x(t) = f(t) +g(t) F(t)
dove f(t) `e la risposta libera, e g(t) u(t) `e la riposta forzata del sistema.
Dallequazione dierenziale (1.9) otteniamo il polinomio caratteristico
s
2
+ 2 s + 10
con radici 1 3 j. La soluzione omogenea, che corresponde alla risposta libera del
sistema, ha la forma
f(t) = K
1
e
t
cos(3 t) +K
2
e
t
sin(3 t)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 43
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Con le condizioni iniziali
f(0) = x(0),

f(0) = x(0) = v(0)
otteniamo le equazioni
K
1
e
t
cos(3 t)

t=0
+ e
t
sin(3 t))

t=0
= K
1
= x(0)
K
1
((1) e
t
cos(3 t)

t=0
e
t
3 sin(3 t))

t=0
+ K
2
((1) e
t
sin(3 t)

t=0
+ e
t
3 cos(3 t))

t=0
= K
1
+ 3 K
2
= v(0)
e le soluzioni
K
1
= x(0)
K
2
=
x(0) +v(0)
3
e quindi
f(t) = e
t
cos(3 t) x(0) +e
t
sin(3 t)
1
3
(x(0) +v(0))
La riposta impulsiva g(t) `e la soluzione inomogenea dellequazione dierenziale
x + 2 x + 10 x = (t)
dove (t) `e limpulso. Cerchiamo dapprima la soluzione inomogenea dellequazione die-
renziale
x + 2 x + 10 x = 1(t)
cio`e con un gradino unitario 1(t) allentrata. La soluzione ha la forma
x
o
(t) = K
3
+K
4
e
t
cos(3 t) +K
5
e
t
sin(3 t)
Con lequazione
x
o
(t) + 2 x
o
(t) + 10 x
o
(t) = 1(t)
lim
t
x
o
(t) + 2 x
o
(t) + 10 x
o
(t) = lim
t
1(t)
lim
t
10 x
o
(t) = lim
t
1(t)
lim
t
10 (K
3
+K
4
e
10t
+K
5
e
t
) = lim
t
1(t)
10 K
3
= 1
otteniamo K
3
=
1
10
. Con la condizioni x
o
(0) = x
o
(0) = 0 otteniamo le equazioni
x
o
(0) = x
o
(t)|
t=0
= K
3
|
t=0
+ K
4
e
t
cos(3 t)

t=0
+ K
5
e
t
sin(3 t)

t=0
= K
3
+K
4
= 0
x
o
(0) = x
o
(t)|
t=0
= K
4
((1) e
t
cos(3 t)

t=0
e
t
3 sin(3 t))

t=0
+ K
5
((1) e
t
sin(3 t)

t=0
+ e
t
3 cos(3 t))

t=0
= K
4
+ 3 K
5
= 0
dalle quali otteniamo K
3
=
1
10
, K
4
=
1
10
e K
5
=
1
30
. Considerando che
la linearit` a indica che la soluzione per lentrata derivata `e la soluzione derivata
dellentrata non derivata
44 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
limpulso `e la derivata del gradino
con il risultato
x
o
(t) =
1
10

1
10
e
t
cos(3 t)
1
30
e
t
sin(3 t)
e la forma dellequazione dierenziale (1.7)
x + 2 x + 10 x = F
otteniamo la risposta impusiva derivando la risposta al gradino come segue
g(t) =
d
dt
x
o
(t)
=
1
10
((1) e
t
cos(3 t) e
t
3 sin(3 t))

1
30
((1) e
t
sin(3 t) +e
t
3 cos(3 t))
g(t) =
1
3
e
t
sin(3 t)
risultato che pu` o essere confermato simulando la risposta impulsiva del sistema con il
comando matlab impulse(ss([0 1;-10 -2],[0;1],[1, 0],[0])).
1.3.4.2 Soluzione nel tempo dalla rappresentazione di stato
Analizziamo ora le equazioni (1.39) e (1.42) nel dominio del tempo. Deniamo la
funzione di trasferimento
G
x
(s) =
X(s)
U(s)
= (sI A)
1
B
Lequazione(1.39) nel tempo diventa
x(t) = L
1
_
(sI A)
1
x(0)
_
+L
1
_
(sI A)
1
B U(s)
_
x(t) = L
1
_
(sI A)
1
x(0)
_
+ g
x
(t) u(t)
x(t) = (t) x(0) + g
x
(t) u(t)
dove
(t) = L
1
_
(sI A)
1
_
(1.49)
La prima parte del risultato dellequazione rappresenta la risposta forzata del siste-
ma, mentre la seconda parte rappresenta la risposta naturale o risposta della parte
omogenea dellequazione dierenziale. Nel caso di radici del polinomio caratteristi-
co, rispettivamente autovalori della matrice di stato, con parte reale negativa, la
risposta libera
f(t) = (t) x(0) = e
At
x(0)
decade nel tempo, e resta quindi unicamente la parte di soluzione non omogenea o
forzata ad inuenzare il sistema.
La grandezza y(t) in uscita `e
y(t) = C (t) x(0) +g(t) u(t) (1.50)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 45
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
La matrice di transizione La matrice di transizione pu`o essere ottenuta tra-
mite la funzione (1.49). Una derivazione alternativa `e proposta qui di seguito con
lesempio di un sistema autonomo, cio`e con entrata nulla:
x(t) = A x(t) (1.51)
Assumiamo che la soluzione x(t) possa essere rappresentata da una serie della forma
x(t) = b
0
+b
1
t +b
2
t
2
+ . . . +b
k
t
k
+ . . . (1.52)
Derivando questo risultato e sostituendolo nellequazione omogenea (1.51) si ottiene
b
1
+2 b
2
t +. . . +k b
k
t
k1
+. . . = A
_
b
0
+b
1
t +b
2
t
2
+ . . . +b
k
t
k
+ . . .
_
(1.53)
Con un paragone di coecienti otteniamo
b
1
= A b
0
b
2
=
1
2
A b
1
=
1
2
A
2
b
0
.
.
.
b
k
=
1
k!
A
k
b
0
b
k+1
=
1
(k + 1)!
A
k+1
b
0
.
.
.
La soluzione cercata risulta quindi essere
x(t) = b
0
+ A b
0
t +
1
2
A
2
b
0
t
2
+ . . . +
1
k!
A
k
b
0
t
k
+ . . .
=
_
I + A t +
1
2
A
2
t
2
+ . . . +
1
k!
A
k
t
k
+ . . .
_
b
0
Dallequazione (1.52) possiamo vedere che al tempo t = 0 vale
x(0) = b
0
Conseguentemente la soluzione nel tempo dellequazione omogenea diventa
x(t) =
_
I + A t +
1
2
A
2
t
2
+ . . . +
1
k!
A
k
t
k
+ . . .
_
x(0) (1.54)
Se ora quardiamo pi` u in dettaglio la soluzione dellequazione (1.54), possiamo vedere
una grossa somiglianza tra quanto ottenuto e un espressione della forma
1 +a t +
1
2
a
2
t
2
+ . . . +
1
k!
a
k
t
k
+ . . . (1.55)
46 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Lespressione in (1.55) rappresenta lo sviluppo in serie di
e
at
Possiamo quindi riscrivere lequazione (1.54) come
x(t) = e
At
x(0) (1.56)
Lespressione e
At
prende il nome di matrice di transizione degli stati (state-
transition matrix) e viene usualmente indicata con (t). La matrice (t) ha due
propriet`a interessanti che possono essere facilmente dimostrate. Sapendo che
x(0) = (0) x(0)
si ricava
(0) = I
e da
x(t) =

(t) x(0) = A x(t)
si ottiene per t = 0

(0) x(0) = A x(0)



(0) = A
Queste due regole ci permettono di determinare facilmente il valore della matrice
(t).
Esempio 1.34 Per il circuito elettrico RC dellesempio 1.1, dalla rappresentazione di
stato (1.23) troviamo dapprima la matrice di transizione (t) con
(t) = L
1
_
(sI A)
1
_
= L
1
_
_
sI
_
5 2
2 2
__
1
_
= L
1
_
_
s + 5 2
2 s + 2
_
1
_
= L
1
_
_
_
_
_
s + 2 2
2 s + 5
_
s
2
+ 7s + 6
_
_
_
_
=
_
_
L
1
_
s+2
s
2
+7s+6
_
L
1
_
2
s
2
+7s+6
_
L
1
_
2
s
2
+7s+6
_
L
1
_
s+5
s
2
+7s+6
_
_
_
=
_
_
L
1
_
s+2
(s+6)(s+1)
_
L
1
_
2
(s+6)(s+1)
_
L
1
_
2
(s+6)(s+1)
_
L
1
_
s+5
(s+6)(s+1)
_
_
_
=
_
L
1
(
4
5

1
s+6
+
1
5

1
s+1
) L
1
(
2
5

1
s+6
+
2
5

1
s+1
)
L
1
(
2
5

1
s+6
+
2
5

1
s+1
) L
1
(
1
5

1
s+6
+
4
5

1
s+1
)
_
(t) =
_
4
5
e
6t
+
1
5
e
t

2
5
e
6t
+
2
5
e
t

2
5
e
6t
+
2
5
e
t 1
5
e
6t
+
4
5
e
t
_
10 febbraio 2009 Roberto Bucher & Silvano Balemi 47
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
La derivazione alternativa per (t) parte dal polinomio caratteristico ottenuto dalla ma-
trice A con
det(s I A) = det
__
s + 5 2
2 s + 2
__
= s
2
+ 7 s + 6 = (s + 6) (s + 1)
La matrice di transizione (t) ha quindi data dalla forma
(t) =
_
K
1
e
6t
+K
2
e
t
K
3
e
6t
+K
4
e
t
K
5
e
6t
+K
6
e
t
K
7
e
6t
+K
8
e
t
_
Da (0) = I otteniamo
K
1
+K
2
= 1
K
3
+K
4
= 0
K
5
+K
6
= 0
K
7
+K
8
= 1
e da

(0) = A otteniamo
K
1
(6) e
6t

t=0
+ K
2
(1) e
t

t=0
= K
1
(6) +K
2
(1) = 5
K
3
(6) e
6t

t=0
+ K
4
(1) e
t

t=0
= K
3
(6) +K
4
(1) = 2
K
5
(6) e
6t

t=0
+ K
6
(1) e
t

t=0
= K
5
(6) +K
6
(1) = 2
K
7
(6) e
6t

t=0
+ K
8
(1) e
t

t=0
= K
7
(6) +K
8
(1) = 2
Con le otto equazioni per le otto variabili confermiamo il risultato
K
1
=
4
5
K
2
=
1
5
K
3
=
2
5
K
4
=
2
5
K
5
=
2
5
K
6
=
2
5
K
7
=
6
5
K
8
=
4
5
La soluzione nel tempo con gli stati iniziali u
1
(0) = 1 e u
2
(0) = 1 della rappresenta-
zione di stato (1.23) `e allora
u
1
(t) = C (t)
_
u
1
(0)
u
2
(0)
_
+ (C (t) B +D (t)) u(t)
=
6
5
e
6t

1
5
e
t
+
_
12
5
e
6t
+
3
5
e
t
_
u(t)
Esempio 1.35 Per la massa oscillante dellesempio 1.2, dalla rappresentazione di sta-
to (1.26) troviamo dapprima la matrice di transizione (t) con
(t) = L
1
_
(sI A)
1
_
= L
1
_
_
sI
_
0 1
10 2
__
1
_
48 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
= L
1
_
_
s 1
10 s + 2
_
1
_
= L
1
_
_
_
_
_
s + 2 1
10 s
_
s
2
+ 2s + 10
_
_
_
_
=
_
_
L
1
_
s+2
s
2
+2s+10
_
L
1
_
1
s
2
+2s+10
_
L
1
_
10
s
2
+2s+10
_
L
1
_
s
s
2
+2s+10
_
_
_
=
_
_
L
1
_
s+2
(s+1)
2
+3
2
_
L
1
_
1
(s+1)
2
+3
2
_
L
1
_
10
(s+1)
2
+3
2
_
L
1
_
s
(s+1)
2
+3
2
_
_
_
=
_
_
L
1
_
s+1
(s+1)
2
+3
2
_
+
1
3
L
1
_
3
(s+1)
2
+3
2
_
1
3
L
1
_
3
(s+1)
2
+3
2
_
10
3
L
1
_
3
(s+1)
2
+3
2
_
L
1
_
s+1
(s+1)
2
+3
2
_

1
3
L
1
_
3
(s+1)
2
+3
2
_
_
_
=
_
e
t
cos(3 t) +
1
3
e
t
sin(3 t)
1
3
e
t
sin(3 t)
10
3
e
t
sin(3 t) e
t
cos(3 t)
1
3
e
t
sin(3 t)
_
(t) = e
t

_
cos(3 t) +
1
3
sin(3 t)
1
3
sin(3 t)
10
3
sin(3 t) cos(3 t)
1
3
sin(3 t)
_
La derivazione alternativa per (t) parte dal polinomio caratteristico ottenuto dalla ma-
trice A con
det(s I A) = det
__
s 1
10 s + 2
__
= s
2
+ 2 s + 10 = (s + 1 + 3 j) (s + 1 3 j)
La matrice di transizione (t) ha quindi data dalla forma
(t) =
_
K
1
e
t
cos(3 t) +K
2
e
t
sin(3 t) K
3
e
t
cos(3 t) +K
4
e
t
sin(3 t)
K
5
e
t
cos(3 t) +K
6
e
t
sin(3 t) K
7
e
t
cos(3 t) +K
8
e
t
sin(3 t)
_
Da (0) = I otteniamo
K
1
= 1
K
3
= 0
K
5
= 0
K
7
= 1
e da

(0) = A otteniamo
K
1
((1) e
t
cos(3 t)

t=0
e
t
3 sin(3 t))

t=0
+ K
2
((1) e
t
sin(3 t)

t=0
+ e
t
3 cos(3 t))

t=0
= K
1
+ 3 K
2
= 0
K
3
((1) e
t
cos(3 t)

t=0
e
t
3 sin(3 t))

t=0
+ K
4
((1) e
t
sin(3 t)

t=0
+ e
t
3 cos(3 t))

t=0
= K
3
+ 3 K
4
= 1
K
5
((1) e
t
cos(3 t)

t=0
e
t
3 sin(3 t))

t=0
+ K
6
((1) e
t
sin(3 t)

t=0
+ e
t
3 cos(3 t))

t=0
= K
5
+ 3 K
6
= 10
K
7
((1) e
t
cos(3 t)

t=0
e
t
3 sin(3 t))

t=0
+ K
8
((1) e
t
sin(3 t)

t=0
+ e
t
3 cos(3 t))

t=0
= K
7
+ 3 K
8
= 2
10 febbraio 2009 Roberto Bucher & Silvano Balemi 49
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Con le otto equazioni per le otto variabili confermiamo il risultato
K
1
= 1
K
2
=
1
3
K
3
= 0
K
4
=
1
3
K
5
= 0
K
6
=
10
3
K
7
= 1
K
8
=
1
3
La soluzione nel tempo con gli stati iniziali x
1
(0) = 1 e x
2
(0) = 0 della rappresentazione
di stato (1.26) `e allora
x(t) = C (t)
_
x
1
(0)
x
2
(0)
_
+ (C (t) B +D (t)) F(t)
= e
t
[ cos(3 t) +
1
3
sin(3 t)
1
3
sin(3 t) ]
_
x
1
(0)
x
2
(0)
_
+(e
t

1
3
sin(3 t)) F(t)
= e
t
cos(3 t) +e
t

1
3
sin(3 t) + (e
t

1
3
sin(3 t)) F(t)
1.3.4.3 Soluzione nel tempo dalla funzione di trasferimento
Con la funzione di trasferimento e la trasformata di Laplace U(s) dellentrata pos-
siamo trovare
Y (s) = G(s) U(s)
Applicando fattorizziamo la funzione Y (s) e determiniamo lantitrasformata di La-
place di ogni fattore, trovando poi la funzione y(t).
Esempio 1.36 Dalla funzione di trasferimento (1.33) del circuito elettrico RC dellesem-
pio 1.1 otteniamo il risultato u
1
(t) = g(t) u(t) con
g(t) = L
1
(G(s)) = = L
1
(
3s+6
s
2
+7s+6
)
= L
1
(
3s+6
(s+6)(s+1)
)
= L
1
(
12
5

1
s+6
+
3
5

1
s+1
)
= L
1
(
12
5

1
s+6
) +L
1
(
3
5

1
s+1
)
=
12
5
e
6t
+
3
5
e
t
Nota che dalla funzione di trasferimento non abbiamo nessuna informazione sul valore
degli stati iniziali del sistema.
50 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Esempio 1.37 Dalla funzione di trasferimento (1.35) della massa oscillante della gu-
ra 1.3 otteniamo il risultato x(t) = g(t) F(t) con
g(t) = L
1
(G(s)) = = L
1
(
1
s
2
+2s+10
)
= L
1
(
1
3

3
s
2
+2s+10
)
=
1
3
L
1
(
3
s
2
+2s+10
)
=
1
3
e
t
sin(3 t)
Nota che dalla funzione di trasferimento non abbiamo nessuna informazione sul valore
degli stati iniziali del sistema.
1.3.4.4 Soluzione per sistemi di ordine basso
Applicando il metodo dellantitrasformata di Laplace per trovare la soluzione di
unequazione dierenziale lineare a coecienti costanti, si vede facilmente come
questa viene trovata scomponendo la funzione risultante Y (s) in termini di frazioni
parziali e applicando successivamente lantitrasformata ad ogni singolo elemento. Si
pu`o quindi constatare come tutta la funzione Y s) sia esclusivamente composta da
elementi di 1. e 2. ordine.
Per capire quindi quale sar`a il comportamento qualitativo e quantitativo della
risposta nel tempo del nostro sistema `e quindi suciente analizzare in dettaglio la
risposta dei sistemi di 1. e 2. ordine, poiche la risposta globale sar`a unicamente una
combinazione lineare di queste soluzioni.
1.3.4.4.1 Soluzione per un sistema lineare di primo ordine Si consideri
un sistema di primo ordine con una funzione di trasferimento del tipo
G(s) =
a
s + a
Questa funzione di trasferimento porta ad un valore nale a transiente nito di
valore 1. Con unentrata di tipo gradino unitario abbiamo una risposta y(t) pari a
y(t) = 1 e
at
La gura 1.14 mostra la risposta nel tempo di questo sistema, con a = 10
Ci sono alcune grandezze che caratterizzano questa curva e sono
La costante di tempo che `e denita come la pendenza (derivata) della curva
a t = 0.
`
E in pratica il tempo occorrente alla risposta per raggiungere il 63%
del valore nale.
Il tempo di salita T
r
(Rise Time) che `e il tempo necessario al sistema per
passare dal 10% al 90% del valore nale.
Il tempo di setting T
s
che `e denito come il tempo necessario anche la risposta
resti entro un limite di 2% del valore nale.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 51
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 0.1 0.2 0.3 0.4 0.5 0.6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1

-2%
T
r
T
s
Figura 1.14: Risposta di un sistema di 1. ordine
La costante di tempo vale
dy(t)
dt

t=0
=
d
dt
(1 e
at
) = a
e conseguentemente si pu`o trovare dal graco 1.14 il valore di che diventa
1 = a =
1
a
Per il calcolo di T
r
occorre trovare il tempo per cui la risposta raggiunge il 10%
e il 90% del valore nale e fare la dierenza.
y(t
2
) = 1 e
at
2
= 0.9 t
2
=
ln 0.1
a
=
ln 10
a
=
2.31
a
y(t
1
) = 1 e
at
1
= 0.1 t
1
=
ln 0.9
a
=
0.11
a
e conseguentemente
T
r
= t
2
t
1
=
2.31
a

0.11
a
=
2.2
a
Per il calcolo di T
s
`e suciente trovare il valore di t per cui si raggiunge il 98%
del valore nale
y(T
s
) = 1 e
aTs
= 0.98 T
s
=
ln 0.02
a
=
ln 50
a
=
4
a
52 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
1.3.4.4.2 Soluzione per un sistema lineare di secondo ordine Lanalisi di
sistemi di 2. ordine `e pi` u complicata di quella dei sistemi di 1. ordine. Occorre
innanzitutto fare una distinzione tra 4 casi, a seconda della posizione dei poli della
funzione di trasferimento. Anche in questo caso abbiamo un segnale in uscita forma-
to dalla risposta forzata e dalla risposta naturale. Possiamo analizzare un sistema
normato del tipo
G(s) =
b
s
2
+ as + b
che ha il vantaggio di tendere al valore nale 1 per t con entrata di tipo gradino
unitario. Partendo da questa funzione di trasferimento modichiamo i valori di a
per avere i 4 casi dierenti da analizzare.
Sistema sovrasmorzato Un sistema con una funzione di trasferimento pari
a
G(s) =
9
s
2
+ 9s + 9
possiede due poli reali a 1.146 e 7.854. La risposta ad unentrata di tipo gradino
unitario `e rappresentata dalla gura 1.15.
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1

Figura 1.15: Risposta di un sistema sovrasmorzato
Il calcolo della trasformata di Laplace inversa ci fornisce il valore della funzione
duscita nel tempo pari a
y(t) = L
1
_
9
s(s
2
+ 9s + 9)
_
= L
1
_
1
s
+
0.171
s + 7.854

1.171
s + 1.146
_
10 febbraio 2009 Roberto Bucher & Silvano Balemi 53
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
da cui risulta
y(t) = 1 + 0.171e
7.854t
1.171e
1.146t
Lesempio del circuito RC dellesempio 1.1 corresponde in eetti ad un sistema
sovrasmorzato (vedi i due poli a -6 e a -1).
Sistema sottosmorzato Un sistema con una funzione di trasferimento pari a
G(s) =
9
s
2
+ 3s + 9
possiede due poli complessi a 1.5 j2.598. La risposta nel tempo ad un gradino
unitario in entrata `e rappresentato nella gura 1.16.
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 0.5 1 1.5 2 2.5 3 3.5 4
0
0.2
0.4
0.6
0.8
1
1.2
1.4

Figura 1.16: Risposta di un sistema sottosmorzato
Il calcolo della trasformata di Laplace inversa ci fornisce la funzione in uscita
y(t) = 1 e
1.5t
(cos 2.598t + 0.577 sin2.598t)
che pu`o anche essere scritto come
y(t) = 1 1.155e
1.5t
cos(2.598t

6
)
La moltiplicazione dellampiezza della nostra funzione in uscita con il termine
1.155e
1.5t
rappresenta in pratica un inviluppo della curva di tipo sinusoidale in
uscita. Le oscillazioni non possono uscire dalle due curve
1 + 1.155e
1.5t
54 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
e
1 1.155e
1.5t
Lesempio della massa oscillante dellesempio 1.2 corresponde in eetti ad un
sistema sottosmorzato (vedi i due poli a 1 3 j).
Sistema oscillatorio Nel caso di una funzione di trasferimento pari a
G(s) =
9
s
2
+ 9
il sistema possiede due radici puramente complesse a j3. La funzione in uscita con
entrata gradino unitario vale
y(t) = 1 cos 3t
e rappresenta un moto sinusoidale puro come si pu`o vedere nella gura 1.17
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 1 2 3 4 5 6 7 8 9 10
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2

Figura 1.17: Risposta di un istema oscillatorio
Lesempio della massa oscillante dellesempio 1.2 con d = 0, quindi senza am-
mortizzatore corresponde in eetti ad un sistema sottosmorzato (perch`e fornisce i
due poli a

10 j).
Sistema smorzato criticamente Nel caso di una funzione di trasferimento
del tipo
G(s) =
9
s
2
+ 6s + 9
10 febbraio 2009 Roberto Bucher & Silvano Balemi 55
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
la funzione di trasferimento possiede due poli reali uguali a 3. La funzione in uscita
con entrata gradino unitario vale
y(t) = 1 3te
3t
e
3t
Ricordo che nel caso di radici multiple il calcolo dei coecienti per la trasformata
inversa `e pi` u complicato che nel caso in cui ci siano radici semplici. La gura 1.18
mostra la risposta dinamica di questo sistema.
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1

Figura 1.18: Risposta di un sistema smorzato criticamente
Lesempio della massa oscillante dellesempio 1.2 con il coeciente d = 2

10
corresponde in eetti ad un sistema smorzato criticamente (perch`e fornisce due poli
identici a

10).
Analisi generale di sistemi di 2. ordine Un sistema di 2. ordine pu`o
essere caratterizzato semplicemente mediante 2 grandezze signicative: la frequenza
naturale
n
e il fattore di smorzamento . La frequenza naturale `e quella frequenza
a cui oscillerebbe il sistema non smorzato (p. es. in un sistema LCR sarebbe la
frequenza di oscillazione se non ci fosse la R). Il fattore di smorzamento `e invece
denito come
=
frequenza di decadimento esponenziale
frequenza naturale
(1.57)
o anche
=
1
2
periodo naturale
costante di tempo esponenziale
56 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Partendo da una funzione di trasferimento nella forma
G(s) =
b
s
2
+ as + b
abbiamo precedentemente visto come in assenza di smorzamento la funzione di
trasferimento varrebbe
G(s) =
b
s
2
+ b
Di conseguenza la frequenza naturale del sistema vale

n
=

b
Sapendo che i poli del sistema hanno parte reale uguale a a/2 e che que-
sto valore coincide con il decadimento esponenziale dellampiezza, si pu`o ottenere
dallequazione (1.57)
=
a/2

n
da cui inne risulta
a = 2
n
La formulazione generale di una funzione di trasferimento di 2. ordine pu`o quindi
essere scritta come
G(s) =

2
n
s
2
+ 2
n
s +
2
n
La tabella 1.2 rappresenta schematicamente i 4 casi analizzati precedentemente,
in funzione dei parametri e
n
.
Analisi dettagliata di un sistema di 2. ordine sottosmorzato Analiz-
ziamo ora un po pi` u in dettaglio una funzione di 2. ordine sottosmorzata, per
determinarne le caratteristiche di risposta al transiente. Se mettiamo allingresso un
gradino unitario, otteniamo la risposta Y (s) pari a
Y (s) =
1
s

2
n
s
2
+ 2
n
s +
2
n
Y (s) =
K
1
s
+
K
2
s + K
3
s
2
+ 2
n
s +
2
n
(1.58)
Con un paragone di coecienti lequazione (1.58) diventa
Y (s) =
1
s

(s +
n
) +

1
2

1
2
(s +
n
)
2
+
2
n
(1
2
)
(1.59)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 57
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Poli Risposta
0
j

Oscillatorio, poli a
j
n
0 < < 1
j

Sottosmorzato, poli a

n
j
n

1
2
= 1
j

Criticamente smorzato, 2 poli a

n
> 1
j

Sovrasmorzato, poli a

2
1
Tabella 1.2: Riassunto dei sistemi di 2. ordine
58 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Lantitrasformata di Laplace dellequazione (1.59) fornisce il risultato seguente
y(t) = 1 e
nt
_
cos
n
_
1
2
t +

1
2
sin
n
_
1
2
t
_
o anche
y(t) = 1
1

1
2
e
nt
cos
_

n
_
1
2
t tan
1
_

1
2
__
(1.60)
Conoscendo la funzione nel tempo possiamo ora determinare alcune caratteri-
stiche della risposta con entrata gradino, in funzione dei parametri e
n
. Queste
caratteristiche sono rappresentate gracamente nella gura 1.19.
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 1 2 3 4 5 6
0
0.2
0.4
0.6
0.8
1
1.2
1.4

%OS
1.02
0.98
y
max
T
r
T
s
Figura 1.19: Risposta di un sistema di 2. ordine sottosmorzato
Analogamente alla risposta di sistemi di 1. ordine possiamo trovare il tempo di
salita (T
r
) e il tempo di setting (T
s
). Inoltre la risposta di un sistema di secondo
ordine sottosmorzato `e caratterizzato dal valore di picco massimo raggiunto (y
max
)
che viene calcolato come %OS, cio`e il % con cui viene superato il valore nale della
risposta, e dal tempo T
p
in cui avviene questo picco.
Calcolo del tempo di salita Per determinare il valore di T
r
si devono trovare
i due valori del tempo per i quali la funzione y(t) vale rispettivamente il 10% e il 90%
del valore nale. Una formula di calcolo approssimata `e quella dellequazione (1.61),
valida per valori 0 < < 1.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 59
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
T
r
=
1 0.4167 + 2.917
2

n
(1.61)
Calcolo del tempo di setting Per trovare il valore di T
s
non `e necessario
analizzare tutta la funzione y(t), ma `e suciente analizzarne linviluppo, e trovare
quindi quel valore per cui linviluppo raggiunge il 98% del valore nale. Partendo
dallequazione (1.60), si pu`o prendere la parte che rappresenta linviluppo e si ottiene
1

1
2
e
nTs
= 0.02 (1.62)
Si ottiene pertanto
T
s
=
ln
_
0.02

1
2
_

n
(1.63)
Calcolo di T
p
Per trovare il valore del tempo in cui la risposta possiede il suo
valore massimo (massimo overshooting) occorre risolvere un problema di massimo-
minimo. Dobbiamo trovare la derivata della curva di risposta y(t), uguagliarla a
0 e trovare il risultato desiderato. Guardando la funzione y(t) ottenuta saremmo
decisamente tentati di trovare un metodo pi` u semplice per risolvere questo problema.
Per le regole di Laplace, sappiamo che una derivazione nel tempo, a condizioni iniziali
nulle, signica semplicemente una moltiplicazione per la variabile di Laplace s nel
campo di Laplace. Possiamo quindi trovare la derivata in Laplace e poi cercarne
lantitrasformata.
L[ y(t)] = sY (s) = s

2
n
s(s
2
+ 2
n
s +
2
n
)
Applicando lantitrasformata di Laplace si ottiene
y(t) = L
1
[

2
n
(s +
n
)
2
+
n
(1
2
)
]
da cui si ottiene
y(t) =

n

1
2
e
nt
sin
n
_
1
2
t (1.64)
Ora possiamo determinare i valori del tempo per i quali ci sono dei massimi e minimi
locali della funzione, uguagliando a 0 lequazione (1.64) Otteniamo cos`

n
_
1
2
t = n
Con n = 1 abbiamo la prima occorrenza, che rappresenta il primo massimo della
funzione y(t). Otteniamo cos` il valore di T
p
dallequazione
60 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
T
p
=

1
2
(1.65)
Calcolo del valore di %OS Il valore di %OS (percento overshooting) `e
denito come
%OS = 100
y
max
y
nale
y
nale
(1.66)
Introducendo il valore di T
p
trovato in(1.65), possiamo trovare subito il valore di
y
max
che vale
y
max
= 1 e

1
2
_
cos +

1
2
sin
_
= 1 +e

1
2
Introducendo questo valore in (1.66), con y
finale
= 1 si ottiene
%OS = 100e

1
2
(1.67)
e quindi
=
ln
_
%OS
100
_
_

2
+ ln
2
_
%OS
100
_
(1.68)
La gura 1.20 mostra le relazioni che ci sono tra la posizione dei 2 poli del sistema
e le grandezze e
n

n
=
d

n
+j
n

1
2
= j
d
j
n

1
2
= j
d
Figura 1.20: Poli del sistema
10 febbraio 2009 Roberto Bucher & Silvano Balemi 61
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
Dalla gura 1.20 si vede che il modulo dei due poli vale
n
, mentre la fase
segue la relazione
cos =
Dallequazione (1.65) vediamo che
T
p
=

1
2
=

d
e quindi T
p
dipende unicamente dal valore di
d
. Dallapprossimazione
T
s
=
4

n
=
4

d
si vede che T
s
dipende approssimativamente da
d
, mentre dallequazione (1.68) si
osserva che il %OS dipende unicamente da . Si pu`o quindi costruire lo schema della
gura 1.21 dove le rette congiungono poli con medesime caratteristiche dinamiche.
T
p1
T
p2
T
s1
T
s2
%OS
1
%OS
2

i
Figura 1.21: Relazione tra poli e grandezze dinamiche
1.3.5 Diversi esempi
Applichiamo ora le conoscenze acquisite per il calcolo di un sistema elettromeccanico
quale la nostra antenna vista precedentemente. Dapprima analizziamo il motore che
fa ruotare lantenna e cerchiamo di determinarne le equazioni che ne descrivono il
comportamento.
Nella gura 1.22 `e rappresentato lo schema di un motore in dc. Il campo magne-
tico viene prodotto da un magnete permanente o da un elettromagnete stazionario
e viene chiamato campo sso. Il circuito rotante `e detto armatura e nelle sue spire
passa una corrente che provoca una forza secondo la legge sica
F(t) = B l i(t)
62 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Campo fisso
i
a
e
a V
a
R
a
L
a
T
m

m
Figura 1.22: Schema di un motore dc
dove B `e la componente perpendicolare alle spire del campo magnetico, l la lunghez-
za del conduttore e i(t) la corrente. Il momento risultante muove la parte mobile
del motore, chiamata rotore. C`e per`o anche un altro fenomeno che si produce nel
motore: il conduttore che si muove nel campo magnetico genera ai suoi capi una
tensione indotta pari a
V
a
= B l v(t)
dove V
a
`e la tensione indotta e v(t) rappresenta la velocit`a del conduttore rispetto
alla componente normale del campo magnetico B. Siccome larmatura in cui scorre
la corrente `e in rotazione rispetto al campo magnetico, otteniamo una tensione
indotta proporzionale alla velocit`a di rotazione. Quindi
V
a
(t) = K
b

d
m
(t)
dt
= K
b

m
(t) (1.69)
La tensione V
a
viene chiamata forza elettromotrice inversa (back emf ), K
b
`e la
costante di proporzionalit`a chiamata costante di forza elettromotrice inversa (back
emf constant).
Il momento esercitato dal motore `e proporzionale alla corrente che passa nellar-
matura, secondo la relazione
T
m
(t) = K
t
i
a
(t) (1.70)
La costante di momento K
t
del motore pu`o essere determinata o letta dai Data
Sheet.
Applichiamo ora la legge di Kirchho alle maglie del circuito di armatura del
motore e otteniamo
e
a
(t) R
a
i
a
(t) L
a

di
a
(t)
dt
V
a
(t) = 0 (1.71)
Applichiamo la legge di Newton per i solidi in rotazione e possiamo mettere in
relazione posizione angolare e caratteristiche dinamiche del motore (momento di
10 febbraio 2009 Roberto Bucher & Silvano Balemi 63
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
inerzia e attrito di rotazione)
J
m

d
2

m
(t)
dt
2
= D
m

d
m
(t)
dt
+ T
m
(1.72)
Sapendo che
d
m
(t)
dt
=
m
(t) (1.73)
e utilizzando lequazione (1.70) nellequazione (1.72) otteniamo
J
m

d
m
(t)
dt
= D
m

m
(t) + K
t
i
a
(t) (1.74)
Sostituendo V
a
trovato in (1.69) nellequazione (1.71) e portando a sinistra la deri-
vata otteniamo
L
a

di
a
(t)
dt
= R
a
i
a
(t) K
b

m
(t) + e
a
(t) (1.75)
Le equazioni (1.73), (1.74) e (1.75) descrivono completamente il sistema. Le costanti
K
b
, K
t
, J
m
e D
m
sono caratteristiche del motore e possono essere lette dai Data Sheet
o ricavate da misurazioni sperimentali.
1.3.5.0.3 Funzione di trasferimento del motore dc Con le trasformate di
Laplace, considerando per semplicit`a condizioni iniziali nulle, lequazione (1.73)
diventa
s
m
(s) = (s) (1.76)
Sostituendo (1.76) nella trasformata di Laplace dellequazione (1.74) si ottiene
J
m
s
2

m
(s) = D
m
s
m
(s) + K
t
I
a
(s) (1.77)
da cui si ricava il valore di I
a
(s) pari a
I
a
(s) =
J
m
s
2

m
(s) + D
m
s Phi
m
(s)
K
t
(1.78)
Inserendo (1.76) e (1.78) nella trasformata dellequazione (1.75) e risolvendo per

m
(s) otteniamo

m
(s) (s
3
L
a
J
m
K
t
+s
2

L
a
D
m
K
t
+s
2

R
a
J
m
K
t
+s
R
a
D
m
K
t
+sK
b
) = E
a
(s) (1.79)
La funzione di trasferimento tra E
a
(s) e
m
(s) risulta quindi essere

m
(s)
E
a
(s)
=
K
t
s (s
2
L
a
J
m
+ s L
a
D
m
+ s R
a
J
m
+ R
a
D
m
+ K
b
K
t
)
(1.80)
64 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
Se consideriamo che normalmente il valore di L
a
`e trascurabile, si pu`o semplicare
notevolmente il risultato, ottenendo

m
(s)
E
a
(s)
=
K
t
s (s R
a
J
m
+ R
a
D
m
+ K
b
K
t
)
(1.81)
o anche

m
(s)
E
a
(s)
=
K
t
R
a
J
m
s
_
s +
R
a
D
m
+ K
b
K
t
R
a
J
m
_ (1.82)
1.3.5.0.4 Rappresentazione di stato del motore dc Partiamo dalle equazio-
ni dierenziali trovate (1.73), (1.74) e (1.75), dividiamo le equazioni per i fattori che
moltiplicano le derivate a sinistra (J
m
e L
a
), e in seguito eettuiamo la sostituzione
con le variabili di stato
x
1
=
m
(1.83)
x
2
=
m
(1.84)
x
3
= i
a
(1.85)
Si ottiene il sistema
_

_
x
1
x
2
x
3
_

_ =
_

_
0 1 0
0
D
m
J
m
K
t
J
m
0
K
b
L
a

R
a
L
a
_

_
_

_
x
1
x
2
x
3
_

_ +
_

_
0
0
1
_

_ e
a
(t) (1.86)
e

m
(t) =
_
1 0 0
_
_

_
x
1
x
2
x
3
_

_ (1.87)
1.3.5.1 Massa oscillante con molla
Determiniano le relazioni che legano le varie grandezze nel sistema meccanico della
gura 1.23

'
''
''
''
''
''
''
'

d
F(t)
k
M
x(t)
Figura 1.23: Massa oscillante
10 febbraio 2009 Roberto Bucher & Silvano Balemi 65
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
1.3.5.1.1 Equazione dierenziale Le leggi dei principi primi si riconducono
alla legge di Newton, con la quale
M
d
2
x(t)
dt
2
=

i
F
i
Sulla massa agiscono la forza della molla, la forza dattrito viscoso e lattuazione
F(t). Lequazione che descrive il moto di traslazione della massa M diventa quindi
M x + d x + k x = F
Il sistema possiede un grado di libert`a ed `e quindi di secondo ordine. Lequazione
diferenziale `e in eetti di secondo ordine.
1.3.5.1.2 Rappresentazione di stato Introduciamo come nuova variabile la
velocit`a v. Allora otteniamo
x = v
M v = d v k x + F
Riscrivendo le due equazioni dierenziali di primo ordine otteniamo la forma
_
x
v
_
=
_
0 1

k
M

d
M
_

_
x
v
_
+
_
0
1
M
_
F
[ y ] = [ 1 0 ]
_
x
v
_
+[ 0 ] F
1.3.5.1.3 Funzione di trasferimento Dallequazione dierenziale
M x(t) + d x(t) + k x(t) = F(t)
con la trasformazione di Laplace otteniamo
L(M x + d x + k x) = L(F(t))
M L( x) + d L( x) + k L(x) = L(F(t))
M
_
s
2
X(s) s x(0) x(0)
_
+ d (s X(s) x(0)) +k X(s) = F(s)
dalla quale
X(s)
_
M s
2
+ d s + k
_
= M x(0) + (M s + d) x(0) +F(s)
e quindi
X(s) =
M
M s
2
+ d s + k
x(0) +
M s + d
M s
2
+ d s + k
x(0) +
1
M s
2
+ d s + k
F(s)
Considerando le condizioni iniziali nulle x(0) = 0 e x(0) = 0 otteniamo
X(s) =
1
M s
2
+ d s + k
F(s)
e quindi la funzione di trasferimento
G(s) =
X(s)
F(s)
=
1
M s
2
+ d s + k
66 Roberto Bucher & Silvano Balemi 10 febbraio 2009
1.3. Rappresentazioni Dinamica e stabilit`a
1.3.5.1.4 Rappresentazione nel tempo Per unequazione dierenziale di se-
condo ordine la soluzione `e della forma
x(t) = C
1
e

1
t
+ C
2
e

2
t
+
_
C
3
e

1
t
+ C
4
e

2
t
_
F(t)
e per un sistema sottosmorzato con
i
= j otteniamo con le condizioni iniziali
[x
0
, v
o
]
x(t) = e
t
(K
1
sin( t +
1
) x
0
+ K
2
sin( t +
2
) v
0
)
+
_
e
t
K
3
sin( t +
3
)
_
F(t)
1.3.5.2 Servo-motore dc
Vediamo ora di determinare le funzioni di trasferimento di un processo rappresentato
da un motore dc utilizzato quale servo di posizione. Il potenziometro in entrata e
quello in uscita sono identici, e occorre fare 10 giri per passare da -10V a +10V. La
funzione di trasferimento tra angolo e tensione in uscita `e data da
V
i
(s)

i
(s)
=
10
10
=
1

(1.88)
Analogamente si trova
V
o
(s)

o
(s)
=
1

(1.89)
La funzione di trasferimento del preamplicatore `e data da
V
p
(s)
V
i
(s)
= K (1.90)
dove
V
i
(s) = V
i
(s) V
o
(s) (1.91)
Per lamplicatore di potenza si trova
E
a
(s)
V
p
(s)
=
100
s + 100
(1.92)
Per il calcolo della funzione di trasferimento del motore occorre tenere conto del
rapporto degli ingranaggi per portare il carico e lattrito di rotazione sul motore.
Occorre quindi applicare delle formule della meccanica che sfruttano il rapporto
degli ingranaggi per sommare inerzia del motore e del carico e attrito del motore e
del carico. Per le due grandezze si ottengono cos` i valori seguenti
J
m
= J
a
+ J
L
= 0.2 + 0.1 = 0.3 (1.93)
e
D
m
= D
a
+ D
L
= 0.1 + 0.1 = 0.2 (1.94)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 67
D
i
n
a
m
i
c
a
e
s
t
a
b
i
l
i
t
`a
C
a
p
i
t
o
l
o
1
.
S
i
s
t
e
m
i
d
i
n
a
m
i
c
i
Resistenza
armatura
Amplificatore
differenziale
e di
potenza
10V
Potenziometro
+10V

+
K
Potenziometro
+10V
10V
Preamp
N3=250
Smorzamento Inerzia
0.1Kgm
2 0.1Nms/rad
100
s+100

i
(t)

o
(t)
v
i
(t)
v
o
(t)
v
p
(t)
e
a
(t)
J
a
= 0.2Kgm
2
D
a
= 0.1Nms/rad
K
b
= 0.5V s/rad
K
t
= 0.5Nms/A
8
Figura 1.24: Schema a blocchi del servo-motore
6
8
R
o
b
e
r
t
o
B
u
c
h
e
r
&
S
i
l
v
a
n
o
B
a
l
e
m
i
1
0
f
e
b
b
r
a
i
o
2
0
0
9
1.3. Rappresentazioni Dinamica e stabilit`a

`
`
`
`
`
`
`
1

-1
1

0
(t) v
p
(t) e
a
(t) v
i
(t) v
i
(t) (t)
i
v
0
(t)
0.2083
s(s+.077)
100
s+100
K
Figura 1.25: Grafo del processo motore-antenna
Utilizzando lequazione (1.82) troviamo numericamente

m
(s)
E
a
(s)
=
K
t
/(R
a
J
m
)
s
_
s +
1
J
m
_
D
m
+
K
t
K
b
R
a
__ =
0.2083
s(s + 0.77)
(1.95)
Il sistema completo pu`o essere rappresentato nel grafo della gura 1.25. La funzione
di trasferimento tra v
i
(s) e v
o
(s) del sistema ad anello aperto (togliendo quindi il
ramo tra v
o
e v
i
) risulta essere
G(s) =
v
o
(s)
v
i
(s)
= K
100
s + 100
0.2083
s(s + 0.77)
1

=
6.63K
s(s + 0.77)(s + 100)
(1.96)
mentre per il sistema ad anello chiuso utilizzando le regole di Mason si ottiene
G
tot
(s) =
v
o
(s)
v
i
(s)
=
K
100
s + 100
0.2083
s(s + 0.77)
1

1 +K
100
s + 100
0.2083
s(s + 0.77)
1

(1.97)
che pu`o essere semplicato come
G
tot
(s) =
6.63K
s(s + 0.77)(s + 100) + 6.63K
(1.98)
1.3.6 Riassunto delle varie trasformazioni
La gura 1.26 mostra tutti i collegamenti tra le dierenti rappresentazioni delle
equazioni dierenziali, con un riferimento al capitolo che tratta largomento.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 69
Dinamica e stabilit`a Capitolo 1. Sistemi dinamici
spazio degli
stati
equazione
dierenziale

G(s)
LTI y(t)
A, B, C, D
1.3.2.3
1.3.2.1
1.3.2.1
LTI
1.3.2.2
1.3.3.2
1.3.3.3
1.3.3.4
1.3.4.1
1.3.4.2
1.3.4.3
1.3.3.1
1.3.2.4
Figura 1.26: Relazioni tra le varie rappresentazioni
70 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Capitolo 2
Stabilit`a di sistemi lineari
2.1 Introduzione
La stabilit`a `e una delle propriet`a pi` u importanti in un sistema. Infatti essa determina
in maniera fondamentale il comportamento del sistema.
2.2 Traiettoria e punti di equilibrio
Per spiegare la propriet`a si usa il concetto di traiettoria. La traiettoria `e il valore
dello stato in funzione del tempo, `e la soluzione x(t) dellequazione dierenziale
x = f(x(t), u(t))
ed `e espressa come
x(t) = tr(x
0
, u(t))
mostrando dipendenza dallentrata u(t) e dalla condizione iniziale data dallo stato
iniziale x
0
. Per sistemi LTI la traiettoria `e data da x(t) = (t) x
0
+ g
x
(t) u(t)).
Un caso speciale di una traiettoria `e la traiettoria statica, cio`e costante nel tempo,
chiamata punto di equilibrio. Un punto di equilibrio `e quindi la traiettoria che
otteniamo quando x(t) = 0 t per unentrata costante u = k, e corrisponde quindi
alla soluzione dellequazione
0 = f(x, u)
Nota come il punto di equilibrio dipenda dallentrata u e come la soluzione delle-
quazione possa in generale fornire diversi valori di x per la stessa entrata.
Per sistemi lineari il punto di equilibrio `e dati da
0 = f(x, u) = A x + B u
e risulta in x = A
1
B u se A `e rango pieno (cio`e invertibile). In questo caso il
punto di equilibrio `e unico!
10 febbraio 2009 Roberto Bucher & Silvano Balemi 71
Dinamica e stabilit`a Capitolo 2. Stabilit`a di sistemi lineari
2.3 Stabilit`a dalla traiettoria
In questo capitolo la propriet`a della stabilit`a `e introdotta in forma generale per
sistemi non lineari e poi dettagliata per sistemi lineari.
1
Si consideri un sistema dinamico invariante nel tempo ma non necessariamente
lineare. Questo sistema sia soggetto allentrata u(t) per t 0.
Partendo dallo stato x
0
con lentrata u(t) indichiamo la traiettoria x(t) seguita
dal sistema come la traiettoria nominale. Supponiamo che lo stato iniziale sia invece
x
0
= x
0
+x
0
, cio`e perturbato di un valore x
0
. In questo caso la stessa entrata u(t)
generer`a una traiettoria perturbata data da x(t) = x(t) + x(t).
2.3.1 Traiettoria stabile
Con queste denizioni, la traiettoria x(t) si dice stabile se > 0 (deviazione massi-
ma voluta dalla traiettoria) esiste un valore () (perturbazione massima dello stato
iniziale) tale che
x
0
x
0
< () x(t) x(t) < t > 0
La propriet`a di stabilit`a del movimento formalizza quindi lidea che perturbando lo
stato iniziale del sistema (non lingresso) il movimento perturbato non si allontani
indenitamente dal movimento nominale o, piu precisamente, che ssato arbitraria-
mente il massimo scostamento ammissibile tra movimento perturbato e nominale, sia
possibile che lo scostamento risulti inferiore a questa soglia, pur di scegliere lo stato
iniziale perturbato sucientemente vicino allo stato iniziale nominale. Nel caso di
sistema del primo ordine (nel quale quindi lo stato e rappresentato da una variabile
scalare), si puo dare unespressiva rappresentazione graca di un movimento stabile
(vedi gura 2.1).
2.3.2 Traiettoria instabile
Un movimento si dira instabile se non `e stabile, ossia se non soddisfa la condizio-
ne di stabilit`a precedentemente enunciata. Fissato quindi il massimo scostamento
ammissibile tramite il parametro , se il movimento `e instabile non sara possibile
individuare un corrispondente intorno x
0
dello stato iniziale nominale x
0
, denito
dal parametro () comunque piccolo lo si scelga, in modo che per tutti gli stati
iniziali perturbati il movimento perturbato non si scosti da quello nominale pi` u del
massimo scostamento ammissibile.
2.3.3 Traiettoria asintoticamente stabile
Inne una traiettoria x(t) si dice asintoticamente stabile se, oltre ad essere stabile,
soddisfa la condizione:
lim
t
x(t) x(t) = 0 x
0
| x
0
x
0
< ()
1
con estratti da Rocco: Dispense di controlli automatici
72 Roberto Bucher & Silvano Balemi 10 febbraio 2009
2.3. Stabilit`a dalla traiettoria Dinamica e stabilit`a
0 1 2 3 4 5 6 7 8 9 10
1
0
1
2
3
4
5
6


movimento
perturbato
movimento
nominale
X
on

Figura 2.1: Traiettoria stabile
8 6 4 2 0 2 4 6 8
8
6
4
2
0
2
4
6
8
x1
x2
8 6 4 2 0 2 4 6 8
8
6
4
2
0
2
4
6
8
x1
x2
Figura 2.2: Campo e traiettoria stabile
0 1 2 3 4 5 6 7 8 9 10
1
0
1
2
3
4
5
6


movimento
perturbato
movimento
nominale
X
on

Figura 2.3: Traiettoria instabile
10 febbraio 2009 Roberto Bucher & Silvano Balemi 73
Dinamica e stabilit`a Capitolo 2. Stabilit`a di sistemi lineari
8 6 4 2 0 2 4 6 8
8
6
4
2
0
2
4
6
8
x1
x2
8 6 4 2 0 2 4 6 8
8
6
4
2
0
2
4
6
8
x1
x2
Figura 2.4: Campo e traiettoria instabile
0 1 2 3 4 5 6 7 8 9 10
1
0
1
2
3
4
5
6


movimento
perturbato
movimento
nominale
X
on

Figura 2.5: Traiettoria asintoticamente stabile
La propriet`a di stabilit`a asintotica richiede quindi che i movimenti perturba-
ti, oltre a non allontanarsi indenitamente dal movimento nominale, convergano a
questo per t .
2.3.4 Punto di equilibrio
La denizione di stabilit`a del movimento si puo naturalmente applicare anche a
quelle particolari traiettorie costanti nel tempo che sono gli equilibri. Si parler`a
quindi di stato di equilibrio stabile, instabile e asintoticamente stabile.
Come visto in precedenza, uno stesso sistema dinamico non lineare pu`o ammet-
tere in corrispondenza della stessa entrata costante diversi stati di equilibrio, con
dierenti propriet`a di stabilit`a. Si pensi a titolo di esempio ad un pendolo nel piano
verticale, soggetto a coppia esterna nulla. Come `e noto, il sistema ammette due sta-
ti equilibrio sicamente distinguibili, nel primo dei quali il pendolo `e fermo rivolto
74 Roberto Bucher & Silvano Balemi 10 febbraio 2009
2.3. Stabilit`a dalla traiettoria Dinamica e stabilit`a
8 6 4 2 0 2 4 6 8
8
6
4
2
0
2
4
6
8
x1
x2
8 6 4 2 0 2 4 6 8
8
6
4
2
0
2
4
6
8
x1
x2
Figura 2.6: Campo e traiettoria asintoticamente stabile
verso il basso, nel secondo dei quali il pendolo `e fermo e rivolto verso lalto (pendolo
inverso). Dalle denizioni di stabilit`a precedentemente date, si deduce facilmente
che il primo stato di equilibrio `e stabile (asintoticamente in presenza di dissipazione),
il secondo (pendolo inverso, rivolto verso lalto) `e instabile.
Per gli stati di equilibrio asintoticamente stabili si denisce anche la nozione di
regione di attrazione, intesa come regione nello spazio di stato R
n
in cui puo essere
scelto lo stato iniziale perturbato tale che il movimento perturbato converga allo
stato di equilibrio. Se la regione di attrazione coincide con R
n
, ossia se comunque
si scelga lo stato iniziale il movimento perturbato converge allo stato di equilibrio,
lo stato di equilibrio si dice globalmente asintoticamente stabile.
Esempio 2.1 Si consideri un sistema dinamico del primo ordine soggetto ad un ingresso
costante u, e si supponga che il legame tra x e x imposto dalla relazione:
x = f(x, u)
sia rappresentato dalla curva in gura 2.7
of


x
x x
1

x
2

x
3


Figura 2.7: Derivata dello stato per un valore costante dellentrata u
Poiche la derivata si annulla per tre valori di x, il sistema ammette tre stati di equilibrio,
x
1
, x
2
, x
3
.
Non `e dicile convincersi che gli stati x
1
e x
3
sono instabili, in quanto perturbando
lo stato iniziale ad un valore di poco superiore al valore di equilibrio, lo stato, avendo
derivata positiva, tendera ad allontanarsi dallo stato di equilibrio stesso, e viceversa per
10 febbraio 2009 Roberto Bucher & Silvano Balemi 75
Dinamica e stabilit`a Capitolo 2. Stabilit`a di sistemi lineari
perturbazioni negative. Con ragionamento analogo si conclude che lo stato x
2
`e invece
asintoticamente stabile e la sua regione di attrazione `e data dallintervallo [x
1
, x
3
]
2.3.5 Traiettorie di sistemi lineari e stabilit`a
La traiettoria di un sistema lineare `e data dalla forma
x(t) = (t) x
0
. .
risposta libera
+ g
x
(t) u(t)
. .
risposta forzata
dove g
x
(t) `e la risposta impulsiva dello stato. Considerando la traiettoria perturbata
con stato iniziale x
0
= x
0
+ x
0
otteniamo
x(t) = (t) x
0
+ g
x
(t) u(t)
= (t) (x
0
+ x
0
) + g
x
(t) u(t)
= (t) x
0
+ ((t) x
0
+ g
x
(t) u(t))
. .
x(t)
da cui, con x(t) x(t) = x(t) otteniamo
x(t) = (t) x
0
Un sistema lineare `e quindi stabile se per qualsiasi x
0
nito otteniamo una devia-
zione x(t) dalla traiettoria nominale nita, cio`e se (t) resta nito.
Dalla teoria delle equazioni dierenziali, sappiamo che la risposta libera corri-
sponde alla soluzione omogenea di unequazione dierenziale lineare, a coecienti
costanti. La risposta libera, e quindi anche (t), `e data dalla somma di elementi del
tipo
K
i
t
n
e

i
t
(2.1)
se
i
`e reale e da elementi del tipo
K
i
t
n
e

i
t
cos(
i
t +
i
) (2.2)
dove
i
reale oppure
i
=
i
+ j
i
sono radici del polinomio caratteristico delle-
quazione dierenziale, e il coeciente n `e un valore intero che `e inferiore n
mult
, dove
questo rappresenta la molteplicit`a di una certa radice (la radice esiste n
mult
volte).
Il sistema `e stabile se nessuno di questi elementi esponenziali tende a valori
inniti con il passare del tempo. Possiamo quindi identicare i seguenti casi:
Tutte le radici
i
hanno parte reale negativa: in questo caso tutti gli elementi
esponenziali decadono a zero ed il sistema `e asintoticamente stabile,
Tutte le radici hanno parte reale non positiva (cio`e negativa o nulla); se
esistono radici con parti nulla le radici non sono multiple: in questo caso il
sistema `e stabile.
Almeno una radice ha parte reale positiva; allora esiste una condizione iniziale
x
0
tale che lo stato tende a valori inniti: il sistema `e instabile.
76 Roberto Bucher & Silvano Balemi 10 febbraio 2009
2.4. Stabilit`a dalla funzione di trasferimento Dinamica e stabilit`a
2.4 Stabilit`a dalla funzione di trasferimento
Dalla denizione di funzione di trasferimento
G(s) =
n(s)
d(s)
sappiamo che il polinomio caratteristico di unequazione dierenziale coincide con il
denominatore d(s) della funzione di trasferimento. Per lanalisi di stabilit`a `e su-
ciente determinare gli zeri
i
del denominatore d(s) della funzione di trasferimento e
determinarne la posizione nel piano complesso. In eetti, la funzione di trasferimento
pu`o essere scomposta come
G(s) =
n(s)
d(s)
= K

j
(s z
j
)

i
(s
i
)
Nota come gli zeri del denominatore della funzione di trasferimento siano gli stessi
valori
i
complessi che appaiono nella soluzione nel tempo della equazione dieren-
ziale.
Esempio 2.2 La funzione di trasferimento (1.34) della massa oscillante della gura 1.3
ha il denominatore
s
2
+ 2 s + 10
e quindi due modi a 1 3 j. Come la parte reale `e negativa, il sistema `e stabile (come
daltronde qualsiasi sistema meccanico passivo).
2.5 Stabilit`a dalla rappresentazione di stato
Dalla trasformazione dalla rappresentazione di stato alla funzione di trasferimento
abbiamo determinato che
G(s) = C (s I A)
1
B + D = C
adj(s I A)
det(s I A)
B + D
dove adj indica laggiunta della matrice (s I A)
1
. Il denominatore della funzione
di trasferimento, cio`e il polinomio caratteristico, `e quindi
d(s) = det(s I A)
Le radici dellequazione
det(sI A) = 0 (2.3)
ci forniscono allora nuovamente gli n valori
i
che caratterizzano il comportamento
e quindi la stabilit`a del sistema.
Notiamo per`o anche che lequazione (2.3) `e anche lespressione che `e soddisfatta
quando la variabile s `e un autovalore della matrice A.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 77
Dinamica e stabilit`a Capitolo 2. Stabilit`a di sistemi lineari
Esempio 2.3 Nella rappresentazione di stato (1.25) della massa oscillante della gura 1.3
la matrice di sistema `e
_
0 1
10 2
_
e quindi due autovalori modi a 1 3 j. Come la parte reale `e negativa, il sistema `e
stabile (come daltronde qualsiasi sistema meccanico passivo).
Alternativamente pu` o essere risolvendo det(s I A) = che diventa
=

s
_
0 1
10 2
_

s 1
10 s + 2

= s
2
+ 2 s + 10 = 0
che fornisce di nuovo le due soluzioni 1 3 j.
Concludiamo allora che le radici del polinomio caratteristico dellequazione dif-
ferenziale di un sistema, sono gli autovalori della matrice di stato. Per la stabilit`a `e
pertanto suciente analizzare la posizione nel piano complesso degli autovalori della
matrice di stato A.
78 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Capitolo 3
Retroazione e stabilit`a
3.1 La retroazione
Il confronto con sistemi reali non si limita solo allanalisi come visto nel capitolo
precedente. Spesso si vuole ottenere unuscita desiderata (chiamata riferimento
r(t), E: reference, D: Sollgrosse) applicando unappropriata attuazione u(t) (E:
actuation, D: Steuergrosse) al processo.
Una soluzione intuitiva (assumendo per semplicit`a che le condizioni iniziali siano
nulle) `e quella di creare lentrata al processo partendo dal riferimento e invertendo
la dinamica del processo. Se il processo descritto con la funzione di trasferimento
G(s), questo ci conduce a
Y (s) = G(s) U(s) U(s) = G(s)
1
R(s)
ottenendo quindi Y (s) = R(s) e quindi y(t) = r(t).
Una tale soluzione (chiamata controllo ad anello aperto (E: open-loop con-
trol, D: Steuerung).) non `e sempre possibile. Infatti, il metodo fallisce per
esempio quando
G(s)
1
non `e proprio (cio`e quando il grado del numeratore `e maggiore del
grado del denominatore: cio `e sicamente irrealizzabile)
G(s)
1
`e instabile (se dei poli di G(s)
1
sono nel semipiano destro, cio`e se
degli zeri di G(s) sono nel semipiano destro)
G(s) `e instabile (nel qual caso una variazione pur minima dalla traiettoria
desiderata fa tendere verso linnito luscita y(t).)
Anche assumendo che questi casi siano evitati, il controllo ad anello aperto pu`o non
essere soddisfacente (cio`e lerrore e(t) = r(t)y(t) essere pi` u grande dellaccettabile)
per esempio se
il processo non `e ben conosciuto (incerto),
il processo `e sottoposto a disturbi
10 febbraio 2009 Roberto Bucher & Silvano Balemi 79
Dinamica e stabilit`a Capitolo 3. Retroazione e stabilit`a
Nel caso che il controllo ad anello aperto (che utilizza solo informazione sul
riferimento r(t)) sia insoddisfacente, si pu`o utilizzare linformazione sullerrore e(t) =
r(t) y(t) per reagire nel caso che luscita del processo non segua il riferimento.
Intuitivamente `e chiaro: con maggiore informazione `e possibile fare meglio.
Lo svantaggio consiste nel dover misurare luscita y(t) per poterla paragonare al
riferimento.
Si parla allora di controllo ad anello chiuso (E: closed-loop control, D: Rege-
lung). Lerrore e(t) = r(t)y(t) tra il riferimento r(t) e luscita y(t) viene elaborato
e il risultato dato in entrata al processo secondo lo schema nella gura 3.1.
controllore processo
u e y r
Figura 3.1: Schema di sistema ad anello chiuso
Il nuovo sistema risultante con entrata r(t) ed uscita y(t) si chiama sistema ad
anello chiuso. Il suo comportamento `e determinato dal sistema originale e da un
controllore (E: controller, D: Regler). Il controllore `e spesso nientaltro che
un sistema lineare scelto appositamento per ottenere un buon comportamento del
sistema ad anello chiuso.
Esempio 3.1 Dato `e il processo con funzione di trasferimento
G(s) =
1
s 1
Questo sistema `e instabile (ha un modo a +1). Il sistema ad anello chiuso con il controllore
K (vedi gura 3.2) ha funzione di trasferimento
G
cl
(s) =
K
1
s1
1 +K
1
s1
=
K
s +K 1
Il sistema ad anello chiuso ha quindi modo a K 1: per K > 1 il sistema `e stabile.
1
s1
K
u e y r
Figura 3.2: Schema di sistema ad anello chiuso
Esempio 3.2 Il processo rappresentato dalla gura 3.3 ha la funzione di trasferimento
ad anello chiuso pari a
G
cl
(s) =
3
s
3
+ 3s
2
+ 2s + 3
(3.1)
e possiede quindi 3 poli a 2.672 e a 0.164 j1.047.
Tutti i poli del sistema ad anello chiuso si trovano nel semipiano sinistro. Conse-
guentemente il sistema `e stabile. La risposta ad un gradino unitario di questo processo `e
rappresentata nella gura 3.4.
80 Roberto Bucher & Silvano Balemi 10 febbraio 2009
3.1. La retroazione Dinamica e stabilit`a
R(s)
Y(s)
confronto
3
s(s+1)(s+2)
Processo
Figura 3.3: Schema a blocchi dellesempio 3.2
Time (sec.)
A
m
p
lit
u
d
e
Step Response
0 5 10 15 20 25 30 35
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6

Figura 3.4: Risposta del processo dellesempio 3.2
Esempio 3.3 Il processo rappresentato dalla gura 3.5 `e descritto dalla funzione di
trasferimento ad anello chiuso
G
cl
(s) =
7
s
3
+ 3s
2
+ 2s + 7
(3.2)
e ha 3 poli a 3.087 e a 0.0434 j1.505.
R(s)
Y(s)
7
s(s+1)(s+2)
ZeroPole
Sum
Figura 3.5: Schema a blocchi dellesempio 3.3
Malgrado che il sistema ad anello aperto sia stabile, il sistema ad anello chiuso possiede
dei poli nel semipiano destro. Conseguentemente il sistema della gura 3.5 `e instabile. La
risposta ad un gradino unitario di questo processo `e rappresentata nella gura 3.6.
Esempio 3.4 Dato `e un processo con funzione di trasferimento costante 1. Il processo `e
sottoposto ad un disturbo dellattuazione. Un controllore integrale come nella gura 3.7
elimina in uscita al processo linuenza di unn disturbo costante.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 81
Dinamica e stabilit`a Capitolo 3. Retroazione e stabilit`a
Time (sec.)
A
m
p
lit
u
d
e
Step Response
0 2 4 6 8 10 12 14 16 18 20
1
0.5
0
0.5
1
1.5
2
2.5
3
3.5

Figura 3.6: Risposta del processo dellesempio 3.3
1
Processo
1
s
Controllore
u e y r
Figura 3.7: Sistema dellesempio 3.4 con controllore integrale per compensazione di
errore statico
3.2 Controllori in forma polinomiale
Il controllore `e spesso nientaltro che un sistema lineare scelto appositamento per
ottenere un buon comportamento del sistema ad anello chiuso. Se il controllore `e
rappresentato da una funzione di trasferimento lo si indica con C(s).
Se lunico oggetto del nostro interesse `e la stabilit`a del sistema ad anello chiuso (e
non altri aspetti supplementari che cadono sotto il nome di performance), siamo
interessati alla posizione dei modi del sistema ad anello chiuso. Se questi sono nel
semipiano complesso sinistro, il sistema ad anello chiuso `e stabile.
Consideriamo un processo di ordine n con funzione di trasferimento
G(s) =
N(s)
D(s)
=
b
n
s
n
+ b
n1
s
n1
+ b
n2

n2
+ . . . + b
0
s
n
+ a
n1
s
n1
+ a
n2
s
n2
+ . . . + a
0
dove N(s) `e il polinomio numeratore e D(s) `e il polinomio denominatore della
funzione di trasferimento.
Assumendo un controllore di ordine m della forma
C(s) =
N
C
(s)
D
C
(s)
=
c
m
s
m
+ c
m1
s
m1
+ c
m2

m2
+ . . . + c
0
s
m
+ d
m1
s
m1
+ d
m2
s
m2
+ . . . + d
0
(3.3)
otteniamo la funzione di trasferimento per il processo ad anello chiuso
G
cl
(s) =
C(s) G(s)
1 +C(s) G(s)
=
N
C
(s) N(s)
N
C
(s) N(s) + D
C
(s) D(s)
82 Roberto Bucher & Silvano Balemi 10 febbraio 2009
3.2. Controllori in forma polinomiale Dinamica e stabilit` a
Abbiamo quindi n+m modi (cio`e gli zeri del polinomio N
C
(s)N(s)+D
C
(s)D(s)) e
abbiamo 2 m+1 parametri del controllore. Se abbiamo pi` u parametri a disposizione
dei poli da piazzare, cio`e se
n + m 2 m + 1 m n 1
possiamo in eetti piazzare liberamente tutti i poli del sistema ad anello chiuso.
Esempio 3.5 Si consideri il processo dato dalla funzione di trasferimento
G(s) =
1
s
2
4 s + 4
Con un controllore di primo ordine della forma
C(s) = k
s +a
s +b
otteniamo la funzione di trasferimento ad anello chiuso
G
cl
(s) =
k (s +a)
(s
2
4 s + 4) (s +b) +k (s +a)
=
k (s +a)
s
3
+ (4 +b) s
2
+ (4 b + 4 +k) s + 4 b +k a
Se scegliamo 3 poli p
i
, i = 1, 2, 3 il polinomio caratteristico diventa
chp(s) =
i=1,2,3
(s p
i
)
= s
3
(p
1
+p
2
+p
3
) s
2
+ (p
1
p
2
+p
1
p
3
+p
2
p
3
) s p
1
p
2
p
3
e paragonando i coecienti otteniamo
4 +b = p
1
p
2
p
3
4 b + 4 +k = p
1
p
2
+p
1
p
3
+p
2
p
3
4 b +k a = p
1
p
2
p
3
da cui
b = p
1
p
2
p
3
+ 4
k = p
1
p
2
+p
1
p
3
+p
2
p
3
4 (p
1
+p
2
+p
3
) + 12
a =
p
1
p
2
p
3
p
1
p
2
+p
1
p
3
+p
2
p
3
4(p
1
+p
2
+p
3
)+12
3.2.1 Controllore PID
Nella pratica non `e spesso necessario considerare tutti i possibili controllori della
forma 3.3 ma un controllore del tipo PID `e suciente. Il controllore PID
C(s) = P +
I
s
+ D s =
D s
2
+ P s + I
s
`e un controllore di secondo ordine NON PROPRIO (e quindi non realizzabile: in
eetti la parte derivativa ideale non `e realizzabile). Una versione realizzabile prende
la forma
C(s) =
D s
2
+ P s + I
( s + 1) s
=
D

s
2
+
P

s +
I

s
2
+
1

s
10 febbraio 2009 Roberto Bucher & Silvano Balemi 83
Dinamica e stabilit`a Capitolo 3. Retroazione e stabilit`a
dove `e una costante di tempo sucientemente piccola.
`
E evidente, che a parit`a di ordine, il controllore
C(s) =
a
2
s
2
+ a
1
s + a
0
s
2
+ b
1
s + b
0
possiede pi` u gradi di libert`a: infatti abbiamo in questo caso 5 parametri invece dei
3 parametri P, I e D del controllore PID usuale. Nella pratica, il controllore PID
`e per`o utilizzato perch`e `e conosciuto e perche riesce in molti casi a soddisfare le
esigenze (in particolare per processi semplici di ordine 1 o 2).
Esempio 3.6 Dato `e il processo oscillante
G(s) =
w
2
0
s
2
+w
2
0
ed il controllore PD
C(s) = P +D s
(in questo caso il coeciente integrale `e I = 0). La funzione di trasferimento del sistema
ad anello chiuso `e
G
cl
(s) =
(P +D s)
2
0
s
2
+D
2
0
s + (1 +P)
2
0
Supponiamo di scegliere 2 poli identici a
1
, e otteniamo
P =

2
1

2
0
1 D = 2

1

2
0
Il guadagno proporzionale P aumenta con il quadrato della larghezza di banda, dove la
larghezza di banda indica il punto dove lamplicazione subisce una riduzione di 3dB.
84 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Capitolo 4
Sistemi non lineari
4.1 Denizione
Un sistema `e detto non lineare quando la denizione di linearit`a non `e pi` u soddi-
sfatta, cio`e quando una della due condizioni
f(x + y) = f(x) + f(y)
f( x) = f(x)
non `e pi` u valida. Nella gura 4.1 sono presentate alcune nonlinearit`a.

Saturazione Zona morta

` `

Sistema a due punti (segno) Sistema a due punti con isteresi


x
1
(t)
y(t)
x
2
(t)
`

Moltiplicatore Funzione modulo


Figura 4.1: Diverse nonlinearit`a
10 febbraio 2009 Roberto Bucher & Silvano Balemi 85
Dinamica e stabilit`a Capitolo 4. Sistemi non lineari
4.2 Paragone con sistemi lineari
La violazione delle condizioni di linearit`a pu`o manifestarsi in diverse maniere. Al-
cune dierenze caratteristiche del comportamento di sistemi nonlineari rispetto a
quello di sistemi lineari sono indicate nella tabella 4.1.
Sistema lineare Sistema nonlineare
Valgono il principio di superposizione
e di proporzionalit`a (dalla denizione
stessa di linearit`a)
Il principio di superposizione e di
proporzionalit`a non `e valido
Il comportamento del sistema `e indi-
pendente dallampiezza del segnale in
entrata
Il comportamento del sistema dipende
dallampiezza del segnale in entrata
Gli spettri dei segnali in entrata e
in uscita contengono le stesse fre-
quenze (con un eventuale sfasamento
e uno smorzamento o amplicazione
dellampiezza)
Lo spettro del segnale in uscita contie-
ne altre frequenze dello spettro del se-
gnale in entrata (armoniche superiori e
inferiori rispetto al segnale in entrata)
Lampiezza di possibili oscillazioni di-
pende unicamente dalle condizioni
iniziali del processo
Lampiezza di possibili oscillazioni
pu`o dipendere dalle condizioni inizia-
li del processo, ma pu`o anche essere
indipendente
La stabilit`a asintotica `e una propriet`a
globale del sistema
La stabilit`a asintotica `e una propriet`a
locale del sistema
Un sistema regolare ha una sola
posizione di equilibrio
Possono esserci diverse posizioni di
equilibrio, ognuna con le sue caratte-
ristiche di stabilit`a
Tabella 4.1: Dierenze nel comportamento di sistemi nonlineari con quello di sistemi
lineari
I punti di equilibrio sono dati dalla soluzione dellequazione
x = f(x(t), u(t))
In generale, questequazione, anche per un solo valore costante di u pu`o avere pi` u
soluzioni distinte, cio`e il sistema nonlineare pu`o avere pi` u punti di equilibrio. La
stabilit`a non `e una propriet`a globale (cio`e non `e identica per qualsiasi valore degli
stati) ma `e locale (cio`e varia a seconda della vicinanza ad uno o ad un altro punto
di equilibrio).
4.3 Alcuni metodi di analisi
Per lanalisi di sistemi contenenti nonlinearit`a esistono diversi metodi. Questi sistemi
possono essere applicati solo a determinate classi di nonlinearit`a.
86 Roberto Bucher & Silvano Balemi 10 febbraio 2009
4.3. Alcuni metodi di analisi Dinamica e stabilit`a
Qui vengono presentati solo alcuni metodi di analisi che possono fornire infor-
mazioni sullandamento e sulla stabilit`a del sistema.
4.3.1 Metodo della funzione descrittiva
Il metodo della funzione descrittiva fornisce indicazioni approssimative sul compor-
tamento stazionario del sistema, in particolare indicando la presenza di oscillazioni.
Il metodo assume che la parte lineare del sistema abbia una caratteristica di ltro
passa-basso.
Con questo metodo viene costruita una funzione a partire dalla nonlinerit`a pre-
sente nel sistema. Questa funzione produce una curva in un diagramma di Nyquist
assieme alla curva della parte lineare del sistema. I punti di incrocio tra le due curve
rappresentano i valori per i quali il sistema presenta unoscillazione (stabile oppure
instabile).
4.3.2 Metodi delle isocline e dei gradienti
Il metodo delle isocline permette di ottenere indicazioni precise sullevoluzione dello
stato di un sistema autonomo della forma
x = f(x)
_

_
dx
1
dt
= x
1
= f
1
(x
1
, x
2
)
dx
2
dt
= x
2
= f
2
(x
1
, x
2
)
(4.1)
Questo metodo sfrutta il fatto che la divisione x
2
/ x
1
fornisce
x
2
x
1
=
dx
2
dx
1
=
f
2
(x
1
, x
2
)
f
1
(x
1
, x
2
)
Questa non `e niente altro che lequazione dierenziale parziale, la cui soluzione
fornisce la traiettoria (evoluzione di x
1
ed x
2
) del sistema a partire dal punto dato
dagli stati iniziali. Grazie a questa equazione dierenziale `e possibile rappresentare
le traiettorie del sistema per diversi valori iniziali degli stati. La rappresentazione
graca cos` ottenuta viene anche chiamata phase portrait.
Lequazione dierenziale ottenuta sopra ci fornisce anche per ogni coppia (x
1
, x
2
)
il gradiente sulla traiettoria. Calcolando per diversi punti questo gradiente (la di-
rezione dellevoluzione dello stato) e tenendo conto nel contempo del senso (fornito
dallequazione (4.1) che indica levoluzione in funzione del tempo) `e quindi possibile
ottenere una rappresentazione graca con frecce indicanti levoluzione di uno stato
del sistema rispetto allaltro (metodo dei gradienti).
La funzione Matlab stateprt fornisce questa rappresentazione graca a partire
da un modello del sistema non lineare in Simulink.
function stateprt(model,x1lim,x2lim,nn)
%
10 febbraio 2009 Roberto Bucher & Silvano Balemi 87
Dinamica e stabilit`a Capitolo 4. Sistemi non lineari
% plot phase portrait of Simulink system named model
% function stateprt(model,x1lim,x2lim)
%
% model : name of Simulink model
% x1lim : [x1min,x1max]
% x2lim : [x2min,x2max]
%
if nargin==3
nn=20;
end
h=0.01;
opts=simset(Solver,ode5,FixedStep,h);
x1=linspace(x1lim(1),x1lim(2),nn);
x2=linspace(x2lim(1),x2lim(2),nn);
k1=x1(2)-x1(1);
k2=x2(2)-x2(1);
k=3/sqrt(k1^2+k2^2);
x1m=zeros(nn);
x2m=x1m;
for nx1=1:nn
for nx2=1:nn
opts=simset(InitialState,[x1(nx1),x2(nx2)]);
[t,x,y]=sim(model,h,opts);
dx1=x(2,1)-x1(nx1);
dx2=x(2,2)-x2(nx2);
l=sqrt(dx1^2+dx2^2)*k;
if l>1.e-10
x1m(nx2,nx1)=dx1/l;
x2m(nx2,nx1)=dx2/l;
end
end
end
quiver(x1,x2,x1m,x2m,0);
axis([x1lim,x2lim]);
xlabel(x1);
ylabel(x2);
grid
Esempio 4.1 Determiniamo per il sistema
_
x
1
= x
2
x
2
= x
1
+x
3
2
3 x
2
(4.2)
la rappresentazione dei gradienti con il programma stateprt. Dapprima modelliamo il
sistema in Simulink come nella gura 4.2.
88 Roberto Bucher & Silvano Balemi 10 febbraio 2009
4.4. Linearizzazione di un processo Dinamica e stabilit`a
2
out_x_2
1
out_x_1
s
1
x_2
s
1
x_1
Sum
1
Gain
u^33*u
Fcn
Figura 4.2: File Simulink exnonlin.mld per la simulazione del sistema (4.2)
Con il comando Matlab stateprt(exnonlin,[-2.5 2.5],[-2.5 2.5],20) otte-
niamo il risultato della gura 4.3.
2.5 2 1.5 1 0.5 0 0.5 1 1.5 2 2.5
2.5
2
1.5
1
0.5
0
0.5
1
1.5
2
2.5
x1
x
2
Figura 4.3: Gradienti per il sistema (4.2). Lorigine `e stabile. Per valori grandi di
|x
2
| il valore di x
2
diverge.
4.4 Linearizzazione di un processo
`
E il metodo pi` u utilizzato per lanalisi ed il design di sistemi non lineari. Partendo
da un sistema non lineare di n equazioni dierenziali di primo ordine con p entrate
rappresentato nel piano degli stati da
x = f (x(t), u(t)) (4.3)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 89
Dinamica e stabilit`a Capitolo 4. Sistemi non lineari
`e possibile linearizzare il processo attorno ad un punto di lavoro scelto oppure anche
attorno ad una traiettoria scelta eettuando uno sviluppo in serie di Taylor ed
eliminando tutti i termini di ordine superiore a 1. Con linearizzazione eseguita
attorno allo stato x
0
(t) con lentrata u
0
(t) espandiamo la formula (4.3) in
x
i
=
dx
i
dt
f
i
(x
0
, u
0
)+
n

j=1
f
i
(x, u)
x
j

x
0
, u
0
(x
j
(x
0
)
j
)+
p

j=1
f
i
(x, u)
u
j

x
0
, u
0
(u
j
(u
0
)
j
)
Utilizzando la notazione
x
j
= x
j
(x
0
)
j
, u
j
= u
j
(u
0
)
j
,
e notando che
x
i
= x
i
( x
0
)
i
= x
i
f
i
(x
0
, u
0
)
ottienamo nalmente
x
i
=
n

j=1
f
i
(x, u)
x
j

x
0
, u
0
x
j
+
p

j=1
f
i
(x, u)
u
j

x
0
, u
0
u
j
Questultima equazione pu`o essere scritta in forma matriciale come
x = A x + B u
dove A e B sono le matrici Jacobiane
A =
_

_
f
1
x
1
f
1
x
2
. . .
f
1
x
n
f
2
x
1
f
2
x
2
. . .
f
2
x
n
.
.
.
.
.
.
.
.
.
.
.
.
f
n
x
1
f
n
x
2
. . .
f
n
x
n
_

x
0
, u
0
e B =
_

_
f
1
u
1
f
1
u
2
. . .
f
1
u
p
f
2
u
1
f
2
u
2
. . .
f
2
u
p
.
.
.
.
.
.
.
.
.
.
.
.
f
n
u
1
f
n
u
2
. . .
f
n
u
p
_

x
0
, u
0
(4.4)
Nota che le matrici A e B sono constanti se linearizziamo attorno ad un punto di
lavoro sso, variabili se linearizziamo attorno ad una traiettoria.
Esempio 4.2 Dato `e il sistema
_
x
1
= f
1
(x, u) = x
2
2
+u 1
x
2
= f
2
(x, u) = x
1
Dapprima linearizziamo attorno al punto di equilibrio. Il punto di equilibrio si ha
quando le derivate degli stati sono nulle ( x
1
= x
2
= 0), cio`e quando
_
0 = x
2
2
+u 1
0 = x
1
90 Roberto Bucher & Silvano Balemi 10 febbraio 2009
4.4. Linearizzazione di un processo Dinamica e stabilit`a
da dove otteniamo (con la scelta dellentrata nulla u
0
(t) = 0)
x
0
=
_
x
1
x
2
_
=
_
0

1 u
_

u
0
=0
=
_
0
1
_
Abbiamo quindi due punti di equilibrio: scegliamo (arbitrariamente) x
0
= [0, 1]

. Come
secondo passo determiniamo il sistema linearizzato:
x = x f(x
0
, u
0
) =
_
f
1
(x,u)
x
1
f
1
(x,u)
x
2
f
2
(x,u)
x
1
f
2
(x,u)
x
2
_

x
0
,u
0
x +
_
f
1
(x,u)
u
f
2
(x,u)
u
_

x
0
,u
0
u
=
_
0 2 x
2
1 0
_

x
0
,u
0
x +
_
1
0
_

x
0
,u
0
u
=
_
0 2
1 0
_
x +
_
1
0
_
u
Consideriamo adesso la linearizzazione attorno alla traiettoria x
0
(t) = [1, t]

. Dalle-
quazione di stato non lineare otteniamo lentrata necessaria
u
0
(t) = 1 x
2
2
(t) + x
1
(t) = 1 t
2
e la linearizzazione
x = x f(x
0
(t), u
0
(t)) =
_
0 2 x
2
1 0
_

x
0
(t),u
0
(t)
x +
_
1
0
_

x
0
(t),u
0
(t)
u
=
_
0 2 t
1 0
_
x +
_
1
0
_
u
Notiamo come la rappresentazione di stato lineare sia variante nel tempo. Eguagliando il
polinomio caratteristico
p(s) = det(sI A +B K) = det
_
s +k
1
2t +k
2
1 s
_
= s
2
+k
1
s +k
2
2t
con il polinomio caratteristico desiderato
s
2
+ 2s + 1
si ottiene il controllore di stato K(t) = [2, 1 + 2t]

.
Esempio 4.3 Determiniamo per il sistema
_
x
1
= x
1
+x
2
+u
x
2
= x
2
2
1
(4.5)
I punti di equilibrio sono x
1
= x
2
= 1 oppure x
1
= x
2
= 1. La linearizzazione del sistema
fornisce
x =
_
1 1
0 1
_
x +
_
1
0
_
u
a seconda del punto di equilibrio scelto.
la rappresentazione dei gradienti con il programma stateprt. Dapprima modelliamo
il sistema in Simulink come nella gura 4.2.
Con il comando Matlab stateprt(exnonlin,[-2.5 2.5],[-2.5 2.5],20) otte-
niamo il risultato della gura 4.3.
Notiamo come lequilibrio (-1, -1) sia stabile, mentre il punto di equilibrio (1, 1) sia
instaible.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 91
Dinamica e stabilit`a Capitolo 4. Sistemi non lineari
2
out_x_2
1
out_x_1
1
s
x_2
1
s
x_1
u^2
Fcn2
1
Constant
Figura 4.4: File Simulink exnonlin2.mld per la simulazione del sistema (4.5)
Esempio 4.4 Un sistema di sospensione magnetico formato da un elettromagnete che
tiene sospesa una boccia metallica `e descritto dalle equazioni dierenziali
M
d
2
y(t)
dt
2
= M g k
i
2
(t)
y
2
(t)
u(t) = R i(t) +L
di(t)
dt
dove
u(t) tensione in entrata
i(t) corrente dellavvolgimento
L induttanza elettromagnete
g costante gravitazionale
y(t) distanza boccia-magnete
R resistenza dellavvolgimento
M massa della boccia
Denendo le variabili di stato
x
1
(t) = y(t)
x
2
(t) =
dy(t)
dt
x
3
(t) = i(t)
otteniamo il sistema di equazioni dierenziali di primo ordine
_

_
dx
1
(t)
dt
= x
2
(t)
dx
2
(t)
dt
= g
k
M

x
2
3
(t)
x
2
1
(t)
dx
3
(t)
dt
=
R
L
x
3
(t) +
1
L
u(t)
92 Roberto Bucher & Silvano Balemi 10 febbraio 2009
4.4. Linearizzazione di un processo Dinamica e stabilit`a
2.5 2 1.5 1 0.5 0 0.5 1 1.5 2 2.5
2.5
2
1.5
1
0.5
0
0.5
1
1.5
2
2.5
x1
x
2
Figura 4.5: Gradienti per il sistema (4.5). Lorigine `e stabile. Per valori grandi di
|x
2
| il valore di x
2
diverge.
Linearizziamo ora il processo attorno al punto di equilibrio y
0
(t) = (x
0
)
1
= y
0
(quindi con
y
0
costante). I valori delle altre variabili di stato allequilibrio sono
(x
0
)
2
(t) =
d(x
0
)
1
(t)
dt
= 0
e da
d(x
0
)
2
(t)
dt
= g
k
M

(x
0
)
2
3
(t)
(x
0
)
2
1
(t)
= 0 (x
0
)
3
(t) = (x
0
)
1
(t)

M g
k
= y
0

M g
k
Applicando le formule (4.4) attorno al punto di lavoro scelto otteniamo
A =
_

_
0 1 0
2 k x
2
3
M x
3
1
0
2 k x
3
M x
2
1
0 0
R
L
_

x
0
, u
0
=
_

_
0 1 0
2 g
y
0
0

4 g k
M y
2
0
0 0
R
L
_

_
e B =
_

_
0
0
1
L
_

_
La funzione [a,b,c,d]=linmod(model) in Matlab dove model `e il nome di
un le Simulink descrivente un processo non lineare permette di linearizzare questo
10 febbraio 2009 Roberto Bucher & Silvano Balemi 93
Dinamica e stabilit`a Capitolo 4. Sistemi non lineari
processo come appena visto. Il modello in Simulink deve presentare una sola entrata
ed una sola uscita come nella gura 4.6.
1
Out
s
1
int4
s
1
int3
s
1
int2
s
1
int1
Mux
Mux1
Mux
Mux
f(u)
Fcn2
f(u)
Fcn1
1
In
Figura 4.6: Sistema nonlineare in Simulink pronto per linearizzazione in Matlab
Anche con la funzione linmod `e possibile determinare il modello lineare ad un
determinato punto di equilibrio diverso dallorigine 0, specicando il vettore delle
variabili di stato x e lentrata allequilibrio u. Queste grandezze possono anche essere
determinate direttamente con laiuto della funzione trim di Matlab.
4.4.1 Compensazione di nonlinearit`a
Nel caso di sistemi fortemente lineari le dipendenze tra le diverse variabili sono ben
conosciute, cos` da poterne tener conto nella progettazione del regolatore.
4.4.1.1 Inversione di nonlinearit`a
La compensazione di una nonlinearit`a pu`o essere ottenuta tramite lutilizzo di una
nonlinearit`a inversa rispetto a quella del processo come nella gura 4.7. Diventa
quindi possibile determinare un regolatore lineare per la parte lineare del siste-
ma. La nonlinearit`a presente nel sistema originale non ha pi` u nessun eetto (assu-
mendo che la compensazione della parte nonlineare del processo nel regolatore sia
sucientemente precisa).

+

`

`

r
`

u
G(s)
y
C(s)
e

controllore processo
Figura 4.7: Compensazione di una nonlinearit`a conosciuta: C(s) `e un regolatore
lineare per la parte lineare G(s) del processo.
94 Roberto Bucher & Silvano Balemi 10 febbraio 2009
4.4. Linearizzazione di un processo Dinamica e stabilit`a
4.4.1.2 Dinamica inversa
Le variabili di stato presentano spesso relazioni complesse con nonlinearit`a inclu-
denti accoppiamenti. Una possibilit`a per poter regolare in maniera ecace un tale
sistema consiste nel compensare le nonlinarit`a con una funzione inversa che varia
dinamicamente in funzione delle variabili di stato.
Tale procedura `e particolarmente utilizzata in robotica dove la dinamica del
processo da regolare `e conosciuta.
Esempio 4.5 Consideriamo il modello di un robot con le equazioni vettoriali
M
nn
(q) q +H
n
(q, q) = Q
n
(4.6)
dove M `e la matrice di inerzia generalizzata, Q il vettore di attuazione (forze o momen-
ti), H il vettore di accoppiamento della dinamica (includente le forze gravitazionali, di
trasporto e di Corioli) ed n `e il grado di libert` a del robot.
Con lutilizzo delle grandezze di attuazione della forma
M
nn
(q) a
c
+H
n
(q, q) = Q
n
dove a
c
rappresenta laccelerazione desiderata, lequazione del robot diventa
q = a
c
con il sistema ora controllabile ed osservabile.
Nota che questa procedura presuppone linvertibilit`a di diverse funzioni (qui per
esempio la matrice di inerzia generalizzata), mentre in generale queste matrici
possono presentare singolarit`a per alcuni valori delle variabili.
Le problematiche legate a questa procedura sono di due tipi:
1. non tutte le misure sono disponibili (q e q dellesempio sopra)
2. lequazione del processo non lineare non `e perfettamente conosciuta, sia a cau-
sa di dinamiche supplementari non modellate (approssimazione del modello)
sia perch`e le varie grandezze non sono esattamente conosciute (per es. peso,
inerzia, ...)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 95
Dinamica e stabilit`a Capitolo 4. Sistemi non lineari
96 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Capitolo 5
Sistemi discreti nel tempo
5.1 Introduzione
Con lintroduzione massiccia dei microcomputer e dei microcontrollori `e diventa-
to molto pi` u economico sostituire i controllori analogici con controllori realizzati
mediante programmi. Un microcontrollore permette di controllare molti pi` u loop
contemporaneamente, pu`o eettuare un monitoraggio dei dati e pu`o essere utilizzato
direttamente via software per impostare i valori di referenza desiderati. Inoltre `e
sempre possibile agire sul programma senza dover modicare il circuito elettronico
per cambiare i parametri di controllo.

`

digitale
Controllore
A/D
D/A
Processo
continuo
parte digitale parte analogica
u
y
Figura 5.1: Sistema con controllore digitale
Luso di controllori di tipo digitale presuppone limpiego di dispositivi di conver-
sione analogico-digitale e digitale-analogico. Le grandezze che entrano nel controllore
devono essere di tipo digitale, mentre le grandezze che entrano nel processo devono
essere di tipo analogico. La trasformazione di una grandezza di tipo analogico in
una di tipo digitale presuppone due operazioni di base:
1. il campionamento, che prende il valore momentaneo di un segnale ad intervalli
regolari,
2. la trasformazione in segnale digitale.
La gura 5.2 mostra il graco di un segnale campionato ogni 0.05s.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 97
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Ad ogni istante di campionamento il valore momentaneo del segnale viene letto
e memorizzato no al prossimo istante di campionamento. Dovendo rappresentare
digitalmente il valore letto questo deve essere quantizzato, cio`e arrotondato al valore
numerico pi` u vicino rappresentabile dal calcolatore digitale. Ne risulta quindi un
errore di quantizzazione.
Nelle nostre considerazioni assumeremo che la risoluzione del sistema digitale `e
sucientemente buona per il processo considerato cos` da poter trascurare lerrore
di quantizzazione.
Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 0.2 0.4 0.6 0.8 1
0
0.05
0.1
0.15
0.2
0.25

Figura 5.2: Risposta al gradino unitario di un sistema campionato
Per poter analizzare matematicamente il processo sopra descritto, questo viene
separato in due operazioni: un campionamento dato da una modulazione dimpulsi,
ed unoperazione di tenuta (hold) data da un ltro lineare (vedi gura 5.3).
Nota che f

(t), il segnale f(t) campionato, non rappresenta un segnale sica-


mente possibile ma `e una costruzione matematica. Per questo analizziamo un po
pi` u in dettaglio le due operazioni separatamente.
5.1.1 Il campionamento
Il ruolo del campionamento `e di fornire una rappresentazione matematica del pro-
cesso periodico di lettura di valori di un segnale.
La tecnica consiste nellusare una modulazione di impulsi (vedi gura 5.4).
Un impulso pu`o essere visualizzato come il limite di un rettangolo di area unitaria
con ampiezza che cresce verso linnito e durata che tende verso zero. La propriet`a
98 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.1. Introduzione Dinamica e stabilit`a


T
ZOH

sample & hold


`

`
`
`
`
`
t
f

(t)
`

>
>
>
>
`

f
f f
h
f
h
f

t
f
h
(t)

t
f(t)
Figura 5.3: Modellazione matematica del processo sample and hold con la sepa-
razione in campionatura (da f a f

) e tenuta di ordine zero (da f

a f
h
). T indica
il periodo di campionamento


T
f f

(t) =

k=
f(k T) (t k T)

f(t)

k=
(t k T)

Figura 5.4: Campionamento come modulazione di un segnale con impulsi


essenziale dellimpulso `e che per qualsiasi funzione continua a a,
_

0
f(t) (t a) dt = f(a) (5.1)
Lintegrale dellimpulso `e il gradino unitario
_
t
0
() d = 1(t) =
_
0 per t < 0
1 per t 0
Il campionamento f

(t) di f(t) ha quindi valore innito per t = kT. Questo `e anche


indicato dalle frecce nella rappresentazione di f

(t) nella gura 5.3 dove la lunghez-


za della freccia `e proprozionale allintegrale dellimpulso e quindi indica lenergia
dellimpulso.
La trasformata di Laplace F

(s) di f

(t) pu`o essere calcolata come segue


F

(s) = L(f

(t)) =
_

0
f

(t) e
st
dt =
_

0
f(t)

k=0
(t kT) e
st
dt
10 febbraio 2009 Roberto Bucher & Silvano Balemi 99
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Questo risulta in
F

(s) =

k=0
_

0
f(t) e
st
(t kT) dt =

k=0
f(kT) e
skT
(5.2)
Lo spettro di un segnale campionato pu`o essere espresso in funzione dello spettro
del segnale non campionato corrispondente grazie allanalisi di Fourier. Dapprima
consideriamo lo spettro del treno di impulsi che moltiplica il segnale considerato. Il
treno di impulsi `e un segnale periodico `e pu`o quindi essere rappresentato da una
serie di Fourier

k=
(t kT) =

n=
C
n
e
j
2n
T
t
(5.3)
dove i coecienti di Fourier, C
n
sono dati dallintegrale su un periodo come
C
n
=
1
T
_
T/2
T/2
_
_

k=
(t kT)
_
_
e
j
2n
T
t
dt
Visto che lunico termine nella somma diverso da zero per lintervallo considerato `e
(t), lintegrale si riduce a
C
n
=
1
T
_
T/2
T/2
(t)e
j
2n
T
t
dt =
1
T
tenendo conto anche dellequazione (5.3). Il treno di impulsi ha quindi la trasformata
di Fourier

k=
(t kT) =
1
T

n=
e
j
2n
T
t
La trasformata di Laplace del segnale campionato pu`o allora essere scritta come
F

(s) =
_

0
f(t)

k=0
(t kT) e
st
dt
=
_

0
f(t)
1
T

n=
e
j
2n
T
t
e
st
dt
=
1
T

n=
_

0
f(t) e
j
2n
T
t
e
st
dt
=
1
T

n=
_

0
f(t) e
(sj
2n
T
)t
dt
=
1
T

n=
F(s j
2n
T
)
Abbiamo quindi
F

(s) =
1
T

n=
F(s j
s
n) (5.4)
dove F(s) `e lo spettro del segnale non campionato e
s
=
2
T
`e la frequenza di cam-
pionamento. Vediamo quindi come il campionamento modula il segnale producento
un numero innito di bande laterali.
100 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.2. La trasformata z Dinamica e stabilit`a
5.1.2 La tenuta di un segnale campionato (Zero order hold)
Il secondo elemento delloperazione di sample and hold `e dato dallorgano di tenuta
di ordine zero (in inglese zero order hold con lacronimo ZOH).
Una volta ricevuto un impulso dal campionamento f

(t), lorgano di tenuta estra-


pola lintegrale degli impulsi in un segnale costante f
h
(t) (vedi gura 5.3) denito
come
f
h
(t) = f(kT) per kT t < kT + T (5.5)
Possiamo allora calcolare la funzione di trasferimento ZOH(s) tramite la sua ri-
sposta impulsiva. Questa `e data quando il ltro ZOH riceve un impulso unitario
della forma f

(t) = (t). Secondo la gura 5.4 dobbiamo quindi avere f(0) = 1 e


lequazione (5.5) ci fornisce la risposta impulsiva
zoh(t) =
_
1 per 0 t < T
0 altrimenti
che vediamo ragurata nella gura 5.5. Notiamo che la risposta impulsiva dello

0
t
1
T
`

`
1(t)

0
t
1
T
1(t T)
Figura 5.5: Risposta impulsiva di uno ZOH
ZOH `e la somma di un gradino unitario a t = 0 e di un gradino unitario di segno
negativo a t = T. Questo ci permette di trovare la funzione di trasferimento come
segue
zoh(t) = 1(t) 1(t T) ZOH(s) =
1
s

1
s
e
sT
=
1 e
sT
s
5.2 La trasformata z
Con lequazione (5.2) abbiamo determinato la trasformata di Laplace di un segnale
campionato. Con la convenzione z = e
sT
lequazione (5.2) diventa
F(z) = F

(s)|
e
sT
=z
=

k=0
f(kT) z
k
=

k=0
f
k
z
k
(5.6)
dove abbiamo introdotto lulteriore notazione f
k
= f(t)|
t=kT
= f(kT).
Come vediamo, lequazione (5.6) `e legata ad una serie {f
k
} = {f
0
, f
1
, f
2
, . . .}.
Ci`o ci induce a denire la funzione F(z) anche tramite la trasformatazione Z della
serie {f
k
}:
F(z) = Z({f
k
})
10 febbraio 2009 Roberto Bucher & Silvano Balemi 101
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Nota che la funzione F(z) dipende solo dai valori della funzione f(t) allistante di
campionamento: tutti i segnali che coincidono agli istanti di campionamento avranno
perci`o la stessa funzione F(z).
La denizione della trasformata z come rappresentazione di una serie permette
anche di denire la trasformazione Z
s
che determina F(z) direttamente a partire
dalla trasformata di Laplace:
F(z) = Z
s
(F(s)) = Z
_
L
1
(F(s))

t=kT
_
Vediamo nella gura 5.6 le relazioni tra la diverse rappresentazioni di un segnale
f(t) e i campionamenti e le sequenze associate con il segnale.

f(t)
F(s)
L
f

(t)
t = kT
F

(s) F(z)
{f
k
}
Z L
z = e
sT
Z
s
g

Figura 5.6: Relazioni tra le dierenti funzioni e trasformate di un segnale f(t)


Nota che alcune relazioni non sono biunivoche: in special modo F(z) denisce
solo i valori di f(t) agli istanti di campionamento.
Spesso la rappresentazione di F(z) come serie pu`o essere espressa in forma chiusa.
La tabella 5.1 riporta le trasformate di Laplace e le trasformate z delle funzioni pi` u
comuni utilizzate nellambito del controllo. Spesso il periodo di campionamento T
entra nellespressione della trasformata z di una data funzione.
Esempi per la trasformata z di alcune sequenze sono dati di seguito.
Esempio 5.1 Data `e la serie
{0, 1, 2, 1, 0, 0, 0, 0, 0, . . . }
La trasformata z di questo segnale pu` o essere determinata direttamente inserendo i valori
di campionamento nella formula
F(z) = 0 z
0
+ 1 z
1
+ 2 z
2
+ 1 z
3
+ 0 z
4
+. . . =
1
z
+
2
z
2
+
1
z
3
=
z
2
+ 2 z + 1
z
3
Esempio 5.2 Deve essere determinata la trasformata z di un gradino unitario. La
corrispondente serie `e
{1, 1, 1, 1, 1, . . . }
102 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.2. La trasformata z Dinamica e stabilit`a
f(t) F(s) F(z)
u(t)
1
s
z
z 1
t u(t)
1
s
2
T z
(z 1)
2
t
n
u(t)
n!
s
n+1
lim
a0
(1)
n

d
n
da
n
_
z
z e
aT
_
e
at
u(t)
1
s + a
z
z e
aT
t
n
e
at
u(t)
n!
(s + a)
n+1
(1)
n

d
n
da
n
_
z
z e
aT
_
sin( t) u(t)

s
2
+
2
z sin( T)
z
2
2 z cos( T) + 1
cos( t) u(t)
s
s
2
+
2
z (z cos( T))
z
2
2 z cos( T) + 1
e
at
sin( t) u(t)

(s + a)
2
+
2
z e
aT
sin( T)
z
2
2 z e
aT
cos( T) + e
2aT
e
at
cos( t) u(t)
s + a
(s + a)
2
+
2
z (z e
aT
cos( T))
z
2
2 z e
aT
cos( T) + e
2aT
Tabella 5.1: Trasformate di Laplace e trasformate z
e quindi
F(z) = 1 z
0
+ 1 z
1
+ 1 z
2
+ 1 z
3
+ 1 z
4
+. . .
Si tratta di una serie geometrica che, nel caso di
|z| > 1
pu` o essere espressa come
F(z) =
1
1 z
1
=
z
z 1
Esempio 5.3 Deve essere trovata la trasformata z di una rampa unitaria. La rampa
unitaria `e data dalla serie
{0, T, 2T, 3T, . . . , kT, . . .}
e quindi
F(z) = T (0 z
0
+ 1 z
1
+ 2 z
2
+ 3 z
3
+ 4 z
4
+. . . )
10 febbraio 2009 Roberto Bucher & Silvano Balemi 103
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Se noi troviamo
z F(z) = T (1 z
0
+ 2 z
1
+ 3 z
2
+ 4 z
3
+. . . )
eseguendo
z F(z) F(z) = (z 1) F(z) = T (1 +z
1
+z
2
+z
3
+. . . )
notiamo che la parte di destra rappresenta la serie geometrica trovata prima, quindi
(z 1) F(z) = T
z
z 1
e conseguentemente
F(z) = T
z
(z 1)
2
5.2.1 Propriet`a della trasformata Z
Alcune delle propriet`a pi` u utili della trasformata z sono indicate nella tabella 5.2.
Linearit`a Z (a {f
k
} + b {g
k
}) = a Z ({f
k
}) + b Z ({g
k
})
Ritardo Z ({f
km
}) = z
m
Z ({f
k
}) per m 0
Anticipo Z ({f
k+m
}) = z
m

_
Z ({f
k
})

m1
i=0
f
i
z
i
_
Smorzamento Z
_
{f
k
e
akT
}
_
= F(z e
aT
)
Z
_
{f
k
b
k
}
_
= F
_
z
b
_
Dierenza Z({f
k
} {f
k1
}) =
z1
z
Z({f
k
})
Somme Z
__

k
i=0
f
i
__
=
z
z1
Z ({f
k
})
Convoluzione Z({f
k
g
k
}) = Z
__

k
i=0
f
i
g
ki
__
= F(z) G(z)
Valore iniziale f
0
= lim
z
Z({f
k
}) = lim
z
(f
0
+ f
1
z
1
+ f
2
z
2
+ . . . )
Valore nale lim
k
f
k
= lim
z1
z1
z
Z({f
k
}) = lim
z1
(z 1) Z({f
k
})
Tabella 5.2: Propriet`a della trasformata z
104 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.2. La trasformata z Dinamica e stabilit`a
5.2.2 Trasformazione Z
5.2.2.1 Calcolo della trasformata z da una trasformata di Laplace
Un metodo per il calcolo diretto della trasformata z da una trasformata di Laplace
G(s) `e dato, per il caso di poli singoli, da
G(z) = Z
s
(G(s)) = Z
s
_
N(s)
D(s)
_
= Z
s
_
np

n=1
R(p
n
)
1
s p
n
_
=
np

n=1
R(p
n
)
z
z e
pnT
dove p
1
, . . . , p
n
sono i poli di G(s), cio`e gli zeri di D(s) e dove R(p
n
) `e il residuo
del polo p
n
. Il residuo `e dato dallespressione
R(p
n
) =
N(s)
dD(s)
ds

s=pn
Esempio 5.4 Dato `e il sistema
G(s) =
1
(s +a)(s +b)
I poli sono p
1
= a e p
2
= b con i residui
R(a) =
1
2s +a +b

s=a
=
1
a b
e R(b) =
1
2s +a +b

s=b
=
1
a b
e quindi
G(s) =
1
(s +a)(s +b)
=
1
a b

1
s +b

1
a b

1
s +a
dalla quale otteniamo
G(z) =
1
a b

z
z e
bT

1
a b

z
z e
aT
=
1
(a b)

z (e
bT
e
aT
)
(z e
aT
) (z e
bT
)
5.2.3 Trasformazione Z inversa
In seguito si presentano due metodi per calcolare la trasformazione Z inversa. Il
primo passa attraverso una fattorizzazione della funzione. Il secondo impiega il
metodo delle serie di potenze.
5.2.3.1 Trasformazione inversa mediante fattorizzazione
Questo metodo ricorda quello utilizzato per la trasformazione inversa di Laplace e
deriva direttamente dal calcolo delle funzioni smorzate. Partendo dalla funzione
Z({g
k
}) = Z({1, 1, 1, 1, . . . }) =
z
z 1
ed utilizzando la regola dello smorzamento con
Z({g
k
b
k
}) = Z({1, b, b
2
, b
3
, . . . }) =
z/b
z/b 1
=
z
z b
10 febbraio 2009 Roberto Bucher & Silvano Balemi 105
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
possiamo derivare direttamente da una fattorizzazione della forma
F(z) =
K
1
z
z p
1
+
K
2
z
z p
2
+ . . . +
K
np
z
z p
np
dove n
p
indica il numero di poli della funzione F(z), la serie
f
k
=
np

i=0
K
i
p
k
i
(nota che la fattorizzazione sopra `e valida solo per poli senza moltiplicit`a: altrimenti
`e necessaria una formula pi` u generale).
Esempio 5.5 Dato
F(z) =
0.5 z
(z 0.5)(z 0.7)
Dividendo dapprima a destra e a sinistra per z e calcolando i residui otteniamo
F(z)
z
=
0.5
(z 0.5)(z 0.7)
=
A
z 0.5
+
B
z 0.7
=
2.5
z 0.5
+
2.5
z 0.7
Moltiplicando di nuovo a sinistra e a destra per z otteniamo
f(kT) = 2.5 (0.5)
k
+ 2.5 (0.7)
k
Sostituendo a k i valori 0, 1, 2, 3, . . . otteniamo i valori al campionamento del segnale.
5.2.3.2 Trasformazione inversa con il metodo delle serie di potenze
Partendo dalla trasformata
F(z) =
b
n
z
n
+ b
n1
z
n1
+ . . . + b
0
z
n
+ a
n1
z
n1
+ . . . + a
0
=

k=0
f
k
z
k
abbiamo
b
n
z
n
+ b
n1
z
n1
+ . . . + b
0
= (z
n
+ a
n1
z
n1
+ . . . + a
0
) (f
0
+ f
1
z
1
+ . . . + f
k
z
k
+ . . . )
Paragonando tutti i coecienti degli elementi z
nk
otteniamo
f
k
+ a
n1
f
k1
+ a
n2
f
k2
+ . . . + a
0
f
kn
= b
nk
e quindi
f
k
= b
nk
a
n1
f
k1
a
n2
f
k2
. . . a
0
f
kn
dove b
i
= 0 e f
i
= 0 per i < 0. I termini calcolati con la recursione sono quelli che
si ottengono in pratica dalla divisione tra i due polinomi.
106 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.3. Rappresentazioni di sistemi campionati Dinamica e stabilit`a
Esempio 5.6 Dato
F(z) =
0.5 z
(z 0.5) (z 0.7)
=
0.5 z
z
2
1.2 z + 0.35
Il calcolo recursivo fornisce
f
0
= b
2
= 0 = 0
f
1
= b
1
a
1
f
0
= 0.5 + 1.2 0 = 0.5
f
2
= b
0
a
1
f
1
a
0
f
0
= 0 + 1.2 0.5 0.35 0 = 0.6
f
3
= a
1
f
2
a
0
f
1
= 1.2 0.6 0.35 0.5 = 0.545
f
4
= a
1
f
3
a
0
f
2
= 1.2 0.545 0.35 0.6 = . . .
.
.
.
.
.
.
.
.
.
Il vantaggio di questo metodo `e la semplicit`a di programmazione in un calcolatore (recur-
sione).
5.3 Rappresentazioni di sistemi campionati
Come per sistemi continui nel tempo, anche per sistemi discreti nel tempo esistono
diversi metodi di rappresentazione. Ogni rappresentazione di un sistema continuo
nel tempo ha un corrispondente rappresentazione di un sistema discreto nel tempo.
Funzione di trasferimento in s Funzione di trasferimento in z
Equazione dierenziale Equazione alle dierenze
Rappresentazione di stato continua nel tempo Rappresentazione di stato
discreta nel tempo
Rappresentazione temporale nel tempo Rappresentazione temporale nel
tempo campionato
5.3.1 Funzione di trasferimento
5.3.1.1 Campionamento di un sistema lineare
Consideriamo adesso il caso di un campionatore seguito non da un organo di tenuta
ma da un qualsiasi sistema lineare come indicato nella gura 5.7.

T
u
T
y

y u

g(t)
Figura 5.7: Sistema campionato
Dalla propriet`a del sistema lineare abbiamo direttamente
Y (s) = G(s) U

(s)
_

0
g(t ) u

() d
10 febbraio 2009 Roberto Bucher & Silvano Balemi 107
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Da questa formula possiamo notare come non `e per`o possibile trovare la funzione di
trasferimento Y (s)/U(s), essendo la parte dipendente da u non separabile dal resto.
Questo perch`e il sistema non `e invariante nel tempo. Con una campionatura ttizia
di y(t) vale per`o
Y

(s) = (G(s) U

(s))

= G(s)

(s)
da cui lesistenza della funzione di trasferimento Y

(s)/U

(s).
Una prima derivazione del risultato parte dalla denizione del campionamento
nel dominio temporale. La trasformata di Laplace del segnale y(t) campionato `e
Y

(s) =
_

0
y

(t) e
st
dt =
_

0
__

0
g(t ) u

() d
_

e
st
dt
Utilizzando la denizione della campionatura come modulazione di impulsi ottenia-
mo
Y

(s) =
_

0

k=0
_
_

0
g(t )

m=0
u() ( mT) d
_
(t kT) e
st
dt
Valutando lintegrale esterno e tenendo conto della propriet`a (5.1) otteniamo
Y

(s) =

k=0
_
_

0
g(kT )

m=0
u() ( mT) d
_
e
skT
Ripetendo lo stesso passo otteniamo
Y

(s) =

k=0
_

m=0
g(kT mT) u(mT)
_
e
skT
=

m=0
_

k=0
g(kT mT) e
skT
_
u(mT)
=

m=0
_

k=0
g(kT mT) e
s(km)T
_
u(mT) e
smT
Con la sostituzione l = k m e tenendo conto che g(kT) = u(kT) = 0 per k < 0
otteniamo inne
Y

(s) =

m=0
_

l=0
g(lT) e
slT
_
u(mT) e
smT
=
_

l=0
g(lT) e
slT
_

m=0
u(mT) e
smT
_
= G

(s) U

(s)
dove abbiamo usato lespressione (5.2) nellultimo passo. Da questo segue immedia-
tamente anche che esiste una funzione di trasferimento tra U(z) e Y (z)
Y (z)
U(z)
= G(z) (5.7)
108 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.3. Rappresentazioni di sistemi campionati Dinamica e stabilit`a
Una derivazione alternativa del risultato nel dominio frequenziale prende spunto
dallequazione (5.4). Abbiamo allora
Y

(s) = (G(s) U

(s))

=
1
T

n=
(G(s jn
s
) U

(s jn
s
))
ma visto che
U

(s) =
1
T

k=
(U(s jk
s
)
abbiamo
U

(s jn
s
) =
1
T

k=
(U(s jn
s
jk
s
)
Con un cambiamento di variabili m = n + k abbiamo
U

(s jn
s
) =
1
T

mn=
U(s jm
s
) =
1
T

m=
U(s jm
s
) = U

(s)
In altre parole, siccome U

(s) `e periodico, spostandolo di un numero intero di periodi


lo lascia invariato, quindi
Y

(s) =
_
1
T

n=
G(s jn
s
)
_
U

(s) = G

(s) U

(s)
con cui confermiamo il risultato sopra.
5.3.1.2 Funzione di trasferimento con campionamento e ZOH
Nella sezione precedente abbiamo calcolato la funzione di trasferimento in z assu-
mendo che lorgano di tenuta fosse gi`a incluso in G(s). Se invece G(s) indica solo
la parte dopo lorgano di tenuta, la trasformata G
zoh
(z) = Y (z)/U(z) di tutto il
sistema come nella gura 5.8 pu`o essere espressa come segue:
G
zoh
(z) =
Y (z)
U(z)
= Z
s
_
1 e
Ts
s
G(s)
_

u
U(z)
T
1 e
sT
s
G(s)
G
ZOH
(z)
y
T
y

Y (z)
u

Figura 5.8: Sistema con campionamento e zero order hold


10 febbraio 2009 Roberto Bucher & Silvano Balemi 109
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Utilizzando la propriet`a dello spostamento in Laplace determiniamo
G
zoh
(z) = Z
_
_
_
_
_
_
L
1
_
_
_
_
_
(1 e
Ts
)
G(s)
s
. .
Gs(s)
_
_
_
_
_

t=kT
_
_
_
_
_
_
= Z
_
L
1
(G
s
(s))

t=kT
L
1
_
e
Ts
G
s
(s)
_

t=kT
_
= Z (g
s
(t)|
t=kT
g
s
(t T)|
t=kT
)
= Z (g
s
(kT) g
s
(kT T))
Applicando la propriet`a dello spostamento a destra otteniamo
G
zoh
(z) = G
s
(z) z
1
G
s
(z) =
z 1
z
G
s
(z) =
z 1
z
Z
s
_
G(s)
s
_
`
E importante notare che in MATLAB e SIMULINK le due rappresentazioni della
gura 5.9 sono equivalenti. Lutilizzo della funzione di trasferimento discreta garan-
ZeroOrder
Hold
num(z)
den(z)
Gzoh(z)
num(s)
den(s)
G(s)
Figura 5.9: Rappresentazioni di sistemi campionati in SIMULINK
tisce i valori della variabile in uscita ai tempi di campionamento, mentre utilizzando
il metodo a destra della gura 5.9 si ottiene una simulazione pi` u completa nella
quale sono osservabili anche i valori tra i tempi di campionamento.
5.3.1.3 Funzione di trasferimento z di sistemi in cascata
Quando lavoriamo con le trasformate z `e importante che sia chiaro come devono
essere trattati due casi.
5.3.1.3.1 Campionamento di due sistemi in serie La trasformata z della
gura 5.10 `e
G(z) =
Y (z)
U(z)
= Z
s
(G
1
(s) G
2
(s))
110 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.3. Rappresentazioni di sistemi campionati Dinamica e stabilit`a

u
T
u

U(z)
G
1
(s) G
2
(s)
T
y

Y (z)
y
Figura 5.10: Campionamento di due sistemi in serie
5.3.1.3.2 Connessione in serie dei campionamento di due sistemi La
trasformata z della gura 5.11 `e
G(z) =
Y (z)
U(z)
= Z
s
(G
1
(s)) Z
s
(G
2
(s)) = G
1
(z) G
2
(z)

G
2
(s)
T
y

Y (z)
y

u
T
u

U(z)
G
1
(s)
T
Figura 5.11: Connessione in serie dei campionamento di due sistemi
Nota:
Z
s
(G
1
(s) G
2
(s)) = Z
s
(G
1
(s)) Z
s
(G
2
(s))
5.3.2 Equazioni alle dierenze
Partendo dalla funzione di trasferimento
G(z) =
b
n
z
n
+ b
n1
z
n1
+ . . . + b
0
z
n
+ a
n1
z
n1
+ . . . + a
0
e con
U(z) = u
0
+ u
1
z
1
+ u
2
z
2
+ . . .
abbiamo
(z
n
+ a
n1
z
n1
+ . . . + a
0
) Y (z) = (b
n
z
n
+ b
n1
z
n1
+ . . . + b
0
) U(z)
da cui
z
n
Y (z) + a
n1
z
n1
Y (z) + . . . + a
0
Y (z) =
b
n
z
n
U(z) + b
n1
z
n1
U(z) + . . . + b
0
U(z)
{y
k+n
} + a
n1
{y
k+n1
} + . . . + a
0
{y
k
} =
b
n
{u
k+n
} + b
n1
{u
k+n1
} + . . . + b
0
{u
k
}
Considerando lelemento k di ogni sequenza otteniamo lequazione alle dierenze
y
k+n
+a
n1
y
k+n1
+a
n2
y
k+n2
+. . . +a
0
y
k
= b
n
u
k+n
+b
n1
u
n1
+. . . +b
0
u
k
10 febbraio 2009 Roberto Bucher & Silvano Balemi 111
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Esempio 5.7 Dato
F(z) =
0.5 z
(z 0.5) (z 0.7)
=
0.5 z
z
2
1.2 z + 0.35
lequazione alla dierenze diventa
y
k+2
1.2 y
k+1
+ 0.35 y
k
= 0.5 u
k+1
oppure, dopo aver sostituito k con k + 1,
y
k+1
= 1.2 y
k
0.35 y
k1
+ 0.5 u
k
5.3.3 Rappresentazione nel piano degli stati
A partire dalla descrizione del sistema continuo dato nel piano degli stati `e possibile
trovare la descrizione del corrispondente sistema discreto nel piano degli stati. Con
la descrizione
_
x = A x + B u
y = C x + D u
ed immaginando u costante troviamo
(T) = L
1
_
(s I A)
1
_

t=T
= e
At

t=T
= e
AT
Analogamente possiamo trasformare la matrice B nella matrice (T) mediante la
trasformazione
(T) = L
1
_
(s I A)
1
B
1
s
_

t=T
e otteniamo inne il sistema campionato nel piano degli stati
_
x
k+1
= (T) x
k
+ (T) u
k
y
k
= C x
k
+ D u
k
(5.8)
Esempio 5.8 Dato `e il sistema
_

_
x = A x +B u =
_
0 1
0 1
_
x +
_
0
1
_
u
y = C x +D u =
_
1 0
_
x +
_
0
_
u
Dapprima calcoliamo
(s I A)
1
=
_
s 1
0 s + 1
_
1
=
1
s (s + 1)

_
s + 1 1
0 s
_
=
_

_
1
s
1
s (s + 1)
0
1
s + 1
_

_
112 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.3. Rappresentazioni di sistemi campionati Dinamica e stabilit`a
ed otteniamo
(T) = e
AT
= L
1
_

_
1
s
1
s (s + 1)
0
1
s + 1
_

t=T
=
_

_
L
1
_
1
s
_

t=T
L
1
_
1
s (s + 1)
_

t=T
0 L
1
_
1
s + 1
_

t=T
_

_
=
_
1 1 e
T
0 e
T
_
e
(T) = L
1
_

_
1
s
2
(s + 1)
1
s (s + 1)
_

t=T
=
_
T +e
T
1
1 e
T
_
Troviamo quindi il sistema campionato
_

_
x
k+1
= (T) x
k
+ (T) u
k
=
_
1 1 e
T
0 e
T
_
x
k
+
_
T +e
T
1
1 e
T
_
u
k
y
k
= C x
k
+D u
k
=
_
1 0
_
x
k
+
_
0
_
u
k
Nota come la trasformazione tra rappresentazione di stato segue esegue lo stesso
formalismo che per i sistemi continui nel tempo. La stessa analogia vale per la
trasformazione tra rappresentazione di stato e equazione alle dierenze con limpiego
delle diverse forme normali.
5.3.3.1 Trasformazione da rappresentazione di stato a funzione di tra-
sferimento
La trasformazione dalla forma nello spazio degli stati alla funzione di trasferimento
avviene applicando le trasformate z sulla rappresentazione di stato.
Partiamo da una formulazione generale di un processo nello spazio degli stati
_
x
k+1
= (T) x
k
+ (T) u
k
y
k
= C x
k
+ D u
k
(5.9)
e applicando le regole della trasformata z otteniamo
z X(z) z x
0
= (T) X(z) + (T) U(z) (5.10)
Trasformando lequazione (5.10) otteniamo
(z I (T)) X(z) = z x
0
+ (T) U(z) (5.11)
Risolvendo per X(x) si ottiene
X(x) = (z I (T))
1
z x
0
+ (z I (T))
1
(T) U(z) (5.12)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 113
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Possiamo ora calcolare il valore di Y (z), usando lequazione delluscita con
Y (z) = C X(z) + D U(z)
Y (z) = C (z I (T))
1
z x
0
+ C (z I (T))
1
(z) U(z) + D U(z)
Y (z) = C (z I (T))
1
z x(0) +
_
C (z I (T))
1
(T) + D
_
. .
G(z)
U(z)
La funzione di trasferimento del sistema (compreso un organo di tenuta allen-
trata del sistema per un segnale campionato) `e data da
G
zoh
(z) = C (z I (T))
1
(T) + D (5.13)
Esempio 5.9 Secondo lequazione (5.13), la funzione di trasferimento G
zoh
(z) `e data
quindi da
G
zoh
(z) = [1 0]
_
z 1 1 +e
T
0 z e
T
_
1

_
T +e
T
1
1 e
T
_
+ [0]
=
1
(z 1) (z e
T
)
[1 0]
_
z e
T
1 e
T
0 z 1
_

_
T +e
T
1
1 e
T
_
=
1
(z 1) (z e
T
)

_
z e
T
1 e
T
_

_
T +e
T
1
1 e
T
_
=
z (T +e
T
1) + (1 e
T
T e
T
)
(z 1) (z e
T
)
La stessa soluzione pu` o essere vericata prima calcolando la funzione di trasferimento nel
tempo continuo
G(s) = C (s I (T))
1
B +D = [1 0] =
_

_
1
s
1
s (s + 1)
0
1
s + 1
_

_
0
1
_
=
1
s (s + 1)
e poi trasformando la funzione di trasferimento nel tempo discreto con
G
zoh
(z) =
z 1
z
Z
s
_
G(s)
s
_
=
z 1
z
Z
s
_
1
s
2
(s + 1)
_
=
z 1
z
Z
s
_
1
s
2

1
s
+
1
s + 1
_
=
z 1
z

_
T z
(z 1)
2

z
z 1
+
z
z e
T
_
confermiamo
G
zoh
(z) =
z (T +e
T
1) + (1 e
T
T e
T
)
(z 1) (z e
T
)
114 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.3. Rappresentazioni di sistemi campionati Dinamica e stabilit`a
5.3.4 Rappresentazione nel dominio del tempo
Il metodo pi` u diretto per ottenere la sequenze nel tempo `e di utilizzare la rappre-
sentazione di stato e di valutare gli stati e uscite ad ogni tempo di campionamento
successivo.
Anche in questo caso otteniamo una risposta libera dovuta ai valori iniziali ed a
una risposta forzata che dipende dai valori delle entrate.
5.3.4.1 Soluzione nel tempo dallequazione alle dierenze
Partendo dallequazione alle dierenze
y
k+n
+a
n1
y
k+n1
+a
n2
y
k+n2
+. . . +a
0
y
k
= b
n
u
k+n
+b
n1
u
n1
+. . . +b
0
u
k
con la sostituzione k k n+1 e un po dordine otteniamo lespressione recursiva
per la prossima uscita in funzione delle uscite e entrate attuali e passate.
y
k+1
= a
n1
y
k
a
n2
y
k1
. . . a
0
y
kn+1
+b
n
u
k+1
+ b
n1
u
k
+ b
n2
u
k1
+ . . . + b
0
u
kn+1
Nota che se il sistema nel quale viene eseguito il calcolo recursivo appena trovato
non permette unuscita immediata in funzione dellentrata (come `e generalmente il
caso per realizzazioni con microprocessori), luscita non pu`o essere in funzione di
u
k+1
: dobbiamo quindi avere la condizione b
n
= 0 soddisfatta.
5.3.4.2 Soluzione nel tempo dalla rappresentazione di stato
Dalla funzione di trasferimento (5.13) ottenuta dalla rappresentazione di stato otte-
niamo
{y
k
} = Z
1
_
C z (z I )
1
x
0
_
+Z
1
_
(C (z I )
1
+ D) U(z)
_
= C Z
1
_
z (z I )
1
_
x
0
+Z
1
(G(z) U(z))
= C {
k
} x
0
+{g
k
} {u
k
}
y
k
= C
k
x
0
+ C
k1

i=0

k1i
u
i
+ D u
k
dove x
0
`e lo stato iniziale e la sequenze della risposta impulsiva `e
{g
k
} = Z
1
(G(z)) = Z
1
_
C (z I )
1
+ D
_
= {C
k1
+ D
k
}
5.3.4.3 Soluzione nel tempo dalla funzione di trasferimento
Partendo dalla funzione di trasferimento
G(z) =
b
n
z
n
+ b
n1
z
n1
+ . . . + b
0
z
n
+ a
n1
z
n1
+ . . . + a
0
10 febbraio 2009 Roberto Bucher & Silvano Balemi 115
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
e con
U(z) = u
0
+ u
1
z
1
+ u
2
z
2
+ . . .
abbiamo
(z
n
+ a
n1
z
n1
+ . . . + a
0
) Y (z) = (b
n
z
n
+ b
n1
z
n1
+ . . . + b
0
) U(z)
Moltiplicando per z
n+1
i due membri dellequazione otteniamo
(z +a
n1
+a
n2
z
1
+. . . +a
0
z
n+1
) Y (z) = (b
n
z +b
n1
+. . . +b
0
z
n+1
) U(z)
Considerando lelemento y
k+1
paragoniamo tutti gli elementi del prodotto dei poli-
nomi con z ed otteniamo lequazione recursiva
y
k+1
= a
n1
y
k
a
n2
y
k1
. . . a
0
y
kn+1
+b
n
u
k+1
+ b
n1
u
k
+ b
n2
u
k1
+ . . . + b
0
u
kn+1
Nota che se il sistema nel quale viene eseguito il calcolo recursivo appena trovato
non permette unuscita immediata in funzione dellentrata (come `e generalmente il
caso per realizzazioni con microprocessori), luscita non pu`o essere in funzione di
u
k+1
: dobbiamo quindi avere la condizione b
n
= 0 soddisfatta.
Come nel caso continuo, possiamo determinare dalla trasformata z del signale di
uscita Y (z) quale `e il valore nel tempo, cio`e la sequenza temporale. Se conosciamo
lentrata U(z), con
Y (z) = G(z) U(z)
possiamo usare i metodi della trasformata inversa z per determinare luscita y
k
.
Se invece U(z) non `conosciuto a priori, si determina la risposta impulsiva tramite
trasformata inversa della funzione di trasferimento e quindi luscita del sistema come
convoluzione tra entrata e risposta impulsiva.
Esempio 5.10 Vogliamo determinare landamento nel tempo della grandezza y
k
in un
sistema con funzione di trasferimento
G(z) =
z
z 0.5
con unentrata gradino unitario.
Soluzione:
Y (z) = G(z)
z
z 1
=
z
z 0.5

z
z 1
=
z
2
z
2
1.5 z + 0.5
Per ottenere y
k
fattorizziamo e mettiamo nella forma corretta i diversi termini
Y (z) =
2 z
z 1

z
z 0.5
Da qui, trasformando, anche grazie alle tabelle, otteniamo
y
k
= 2 0.5
k
116 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.4. Stabilit`a dei sistemi campionati Dinamica e stabilit`a
Volendo dapprima invece determinare la risposta impulsiva otteniamo
G(z) =
z
z 0.5
g
k
= 0.5
k
e quindi la risposta al gradino u
k
= 1 k
y
k
=
k

i=0
g
i
u
ki
=
k

i=0
0.5
i
1 =
k

i=0
0.5
i
=
1 0.5
k+1
1 0.5
= 2 2 0.5
k+1
= 2 0.5
k
5.4 Stabilit`a dei sistemi campionati
La dierenza principale tra un sistema analogico e un sistema campionato sta nel fat-
to che la frequenza di campionamento inuenza direttamente la stabilit`a del sistema,
rendendolo instabile se questa `e troppo bassa.
Per i sistemi continui la regione di stabilit`a `e determinata dal semipiano destro
(poli della funzione di trasferimento). Trasformando la funzione G(s) nella corri-
spondente G(z) si nota che la regione di stabilit`a pu`o essere valutata direttamente
dalla denizione
z = e
sT
Ogni regione del piano s pu`o essere mappata in una corrispondente regione nel
piano z. Nella gura 5.12 vediamo come vengono mappati il semipiano sinistro
del piano complesso (interno cerchio unitario) e il semipiano destro (esterno cerchio
unitario). Lasse immaginario (limite tra i due semipiani) viene trasformato nel
cerchio unitario.
20 10 0 10 20
20
15
10
5
0
5
10
15
20
1 0.5 0 0.5 1
1
0.5
0
0.5
1
Figura 5.12: Piano s (a sinistra), piano z (a destra)
Secondo la gura 5.12 un sistema campionato `e stabile se tutti i poli della fun-
zione di trasferimento ad anello chiuso si trovano allinterno del cerchio unitario,
instabile se ce ne sono al di fuori, e marginalmente stabile se esistono dei poli sulla
circonferenza unitaria ed i restanti sono allinterno del cerchio unitario.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 117
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
5.4.1 Risposte di sistemi campionati
Anche per i sistemi campionati la posizione dei poli della funzione di trasferimento
`e determinante per la risposta in uscita del sistema. Nella gura 5.13 `e illustrata la
risposta al gradino unitario per diversi casi.
5.5 Retroazione e stabilit`a
Come nei sistemi continui nel tempo, la retroazione modica il comportamento e
quindi anche la stabilit`a del sistema. Nel caso di sistemi discreti nel tempo il tempo
di campionamento `e un elemento supplementare da tenere in conto.
Dato `e un sistema con un controllore discreto nel tempo secondo lo schema a
blocchi della gura 5.14. Questo sistema `e modellato matematicamente come nella
gura 5.15.
La funzione di trasferimento G(s) `e il modello continuo nel tempo del sistema.
Il campionamento modella i convertitori A/D. Il risultato del campionamento `e una
funzione in z, la descrizione matematica con il quale modellare il segnale campionato.
Il programma di controllo `e modellato da una funzione di trasferimento G

c
(s)
(equivalente a G
c
(z)) che crea un treno di impulsi m

(t) a partire dal treno di impulsi


e

(t) rappresentante lerrore di controllo.


Finalmente, lorgano di tenuta di ordine zero modella il convertitore D/A che
crea un segnale continuo dalla serie calcolata dal programma di controllo (vedi
gura 5.15).
Con la denizione di G
zoh
gi`a vista in precedenza (trasformata z del processo
con ZOH) otteniamo quindi la funzione di trasferimento totale:
G
cl
(z) =
Y (z)
R(z)
=
G
zoh
(z) G
c
(z)
1 +G
zoh
(z) G
c
(z)
Esempio 5.11 Dato `e il sistema campionato con organo di tenuta e funzione di trasferi-
mento
G(s) =
10
s + 1
come nella gura 5.16. Dobbiamo determinare lintervallo del tempo di campionamento
che mantenga stabile il sistema ad anello chiuso campionato.
La funzione di trasferimento ad anello chiuso `e data da
G
cl
=
G
zoh
(z)
1 +G
zoh
(z)
dove G
zoh
= Y (z)/U(z). Per trovare G
zoh
(z) si applicano le formula trovate precedente-
mente
G
zoh
(z) = Z
s
_
10
1 e
sT
s (s + 1)
_
=
z 1
z
Z
s
_
10
_
1
s

1
s + 1
__
e calcolando esplicitamente la trasformata z otteniamo
G
zoh
(z) = 10
z 1
z

_
z
z 1

z
z e
T
_
= 10
1 e
T
z e
T
118 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.5. Retroazione e stabilit`a Dinamica e stabilit`a
1 0 1
1
0
1
0 10 20
0
10
20
p=1
1 0 1
1
0
1
0 10 20
0
0.5
1
p=1
1 0 1
1
0
1
0 10 20
0
2
4
p=.8
1 0 1
1
0
1
0 10 20
0
0.5
1
p=.8
1 0 1
1
0
1
0 10 20
0
1
2
p=.5
1 0 1
1
0
1
0 10 20
0
0.5
1
p=.5
1 0 1
1
0
1
0 10 20
0
1
2
3
p=1+/j
1 0 1
1
0
1
0 10 20
0
0.5
1
p=1+/j
1 0 1
1
0
1
0 10 20
0
0.5
1
p=+/j
1 0 1
1
0
1
0 10 20
0
0.5
1
p=0
Figura 5.13: Risposte al gradino unitario in funzione dei poli di un sistema discreto
G(z) = 1/
i
(z p
i
)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 119
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo

e

E(z)
+


parte continua

`
`
ZOH
y

G(s)
y
G

c
(s)
Y (z)
T
parte discreta
Figura 5.14: Processo continuo nel tempo con controllore digitale.

G(s)
y

modello modello
processo
modello
conv D/A
T
y

modello
conv A/D
Y (z)
ZOH G

c
(s)
e

E(z)
u

+
T
r

programma
Figura 5.15: Varie parti componenti di un sistema discreto nel tempo.
Inserendo questo risultato nellespressione di G
cl
(z) otteniamo nalmente
G
cl
(z) = 10
1 e
T
z (11 e
T
10)
Vediamo che il polo di G
cl
(z) `e (11 e
T
10): esso risulta allinterno del cerchio unitario
unicamente se
0 < T < ln
_
11
9
_
5.6 Controllori discreti nel tempo
La funzione di trasferimento di un sistema campionato ad anello chiuso `e rappre-
sentata dalla funzione
G
cl
(z) =
Y (z)
R(z)
=
G
ZOH
(z) G
c
(z)
1 +G
ZOH
(z) G
c
(z)

`
`

+
T
u

U(z)
r

1 e
sT
s
T
y
Y (z)
G(s)
y

Figura 5.16: Sistema chiuso con campionamento e ZOH


120 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.6. Controllori discreti nel tempo Dinamica e stabilit`a
dove G
c
(z) `e la funzione di trasferimento del controllore discreto e rappresenta
G
c
(z) =
U(z)
E(z)
Per determinare il controllore `e possibile dapprima progettare un controllore con-
tinuo nel tempo G
c
(s) e poi trasformarlo con unapprossimazione in un controllore
discreto nel tempo

G
c
(z). Questo `e particolarmente valido quando la frequenza di
campionamento `e alta rispetto alla dinamica del sistema.
Come alternativa, che di solito fornisce migliori risultati in particolare quando
la frequenza di campionamento `e nello stesso ordine di grandezza della dinamica del
sistema, `e la progettazione di un controllore discreto nel tempo G
c
(z) a partire dal
modello discreto nel tempo G
ZOH
(z) del processo da controllare.
5.6.1 Trasformazione di un controllore continuo nel tempo
Di seguito vedremo due metodi che entrambi approssimano lintegratore
1
s
, quella
di Euler e quella di Tustin. Inoltre, per migliorare laprossimazione delle dinamiche,
`e presentato il prewarping.
5.6.1.1 Approssimazione di Euler dellintegrazione
Con lapprossimazione di Euler si trasforma loperatore integratore
1
s
nel dominio
della trasformata z. Consideriamo lintegrazione di un segnale u(t)
y(t) =
_
t
0
u(t) dt
con la trasformata di Laplace
Y (s) =
1
s
U(s)
Euler ci indica come approssimazione ad un tempo t = k T
y(kT) = y((k 1) T) + u(kT) T
La trasformata z di questa equazione recursiva fornisce
Y (z) = z
1
Y (z) + T U(z) Y (z) =
T z
z 1
U(z)
Notiamo come lintegratore sia stato trasformato in una sua approssimazione discre-
ta secondo
1
s

T z
z 1
(5.14)
Questa approssimazione non `e una sorpresa: infatti bisogna semplicemente trovare
lequivalente G
ZOH
(z) del sistema G(s) =
1
s
per ritrovare lo stesso risultato.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 121
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
Lo stesso risultato pu`o essere ottenuto anche tramite lapprossimazione della
derivata. Con il sistema
y(t) =
du
dt
lapprossimazione di Euler `e
y(kT) =
u(kT) u((k 1) T)
T
La trasformata z dellequazione recursiva `e
Y (z) =
1 z
1
T
U(z) =
z 1
T z
U(z)
confermando lapprossimazione.
In una funzione di trasferimento del controllore `e quindi suciente sostituire
s con z con lapprossimazione dellequazione (5.14) per convertire un controllore
continuo in uno discreto nel tempo.
Esempio 5.12 Consideriamo un controllore PID della forma
G
c
= P +
I
s
+D s
trovato nel continuo grazie ad una delle tecniche empiriche conosciute (p.es. Ziegler-
Nichols).
Lapprossimazione discreta nel tempo del controllore diventa
G
c
(z) =
U(z)
E(z)
= P +I
T z
z 1
+D
z 1
T z
Lalgoritmo da programmare diventa allora
u
k
= P (e
k
e
k1
) +I T e
k
+u
k1
+
D
T
(e
k
2 e
k1
+e
k2
)
oppure
u
k
= u
k1
+
_
P +I T +
D
T
_
e
k

_
P + 2
D
T
_
e
k1
+
D
T
e
k2
Unalternativa per ottenere un controllore PID discreto `e dato dallutilizzo della trasfor-
mata dellintegrazione x
k
che porta alla forma
_

_
x
k
= x
k1
+I T e
k
u
k
= P e
k
+x
k
+
D
T
(e
k
e
k1
)
Esempio 5.13 Dato `e il controllore
G
c
(s) =
1
s + 10
Lapprossimazione discreta nel tempo `e
G
c
(z) =
1
z1
Tz
+ 10
=
T z
z (1 + 10 T) 1
122 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.6. Controllori discreti nel tempo Dinamica e stabilit`a
5.6.1.2 Trasformazione bilineare
Lapprossimazione bilineare, detta anche di Tustin, utilizza lapprossimazione se-
guente per z.
s =
2
T

z 1
z + 1
Questa approssimazione `e meno critica di quella di Euler, quando la frequenza di
campionamento `e relativamente vicina alla dinamica del sistema.
La stessa procedura per ottenere il controllore discreto nel tempo pu`o essere
seguita come nel caso dellapprossimazione di Euler.
5.6.1.3 Trasformazione bilineare con prewarping
Per ottenere unapprossimazione ancora pi` u fedele, in particolare per garantire che
le frequenze siano conservate, si usa spesso il prewarping. A partire dalla descrizione
del processo nel dominio discreto si pu`o eettuare la trasformazione di Tustin
z =
2 +T w
2 T w
e ottenere una nuova funzione di trasferimento G(w) in un dominio pseudcontinuo
w. La variabile w permette di arontare il problema di controllore come se si fosse
nel dominio continuo e di utilizzare i metodi di analisi e di design classici per ottenere
un controllore. Una volta trovato il controllore G
c
(w) si pu`o ottenere il controllore
G
c
(z) calcolando la trasformata bilineare inversa di G
c
(w) con la sostituzione
w =
2
T

z 1
z + 1
MATLAB permette di eseguire le varie trasformazioni con i seguenti comandi
G(s)
c2d(...,

zoh

G
ZOH
(z)
d2c(...,

tustin

G(w)

G
c
(w)
c2d(...,

tustin

G
c
(z)
5.6.2 Design di un controllore discreto nel tempo
Il metodo pi` u performante per ottenere controllori `e di progettare un controllore a
partire dalla descrizione discreta nel tempo del processo.
lunico problema, che ne limita talvolta limpiego in pratica, `e la necessit`a di
ottenere il modello discreto nel tempo del processo. Per problemi semplici `e infat-
ti spesso suciente unapprossimazione anche rozza per soddisfare le speciche di
controllo ed il progetto del controllore `e quindi unn lavoro pi` u preciso non si rivela
necessario.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 123
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
5.6.2.1 Controllori in forma polinomiale
Come nel caso del progetto di controllori nel tempo continuo, `e possibile determinare
il controllore partendo dalla descrizione del processo con la funzione di trasferimento
discreta nel tempo.
Consideriamo un processo di ordine n con funzione di trasferimento
G(z) =
N(z)
D(z)
=
b
n
z
n
+ b
n1
z
n1
+ b
n2
z
n2
+ . . . + b
0
z
n
+ a
n1
z
n1
+ a
n2
z
n2
+ . . . + a
0
dove N(z) `e il polinomio numeratore e D(z) `e il polinomio denominatore della
funzione di trasferimento.
Assumendo un controllore di ordine m della forma
C(z) =
N
C
(z)
D
C
(z)
=
c
m
z
m
+ c
m1
z
m1
+ c
m2
z
m2
+ . . . + c
0
z
m
+ d
m1
z
m1
+ d
m2
z
m2
+ . . . + d
0
(5.15)
otteniamo la funzione di trasferimento per il processo ad anello chiuso
G
cl
(z) =
C(z) G(z)
1 +C(z) G(z)
=
N
C
(z) N(z)
N
C
(z) N(z) + D
C
(z) D(z)
Abbiamo quindi n+m modi (cio`e gli zeri del polinomio N
C
(z)N(z)+D
C
(z)D(z)) e
abbiamo 2 n+1 parametri del controllore. Se abbiamo pi` u parametri a disposizione
dei poli da piazzare, cio`e se
n + m 2 m + 1 m n 1
possiamo in eetti piazzare liberamente tutti i poli del sistema ad anello chiuso,
esattamente come nel caso continuo nel tempo.
5.6.2.2 Controllori tramite specica sul comportamento ad anello chiuso
Come ulteriore possibilit`a di determinare un controllore direttamente nel dominio
del tempo discreto, `e possibile partire da una funzione di trasferimento ad anello
chiuso desiderata, denita da G
cl
(z), e risolvere per la funzione di trasferimento del
controllore con
G
c
(z) =
1
G
ZOH
(z)

G
cl
(z)
1 G
cl
(z)
(5.16)
Il calcolo di G
c
(z) `e implementato in MATLAB con la seguente funzione
function d=h2d(g,h)
%
% function d=h2d(g,h)
%
gg=tf(g);
hh=tf(h);
124 Roberto Bucher & Silvano Balemi 10 febbraio 2009
5.6. Controllori discreti nel tempo Dinamica e stabilit`a
[gn,gd]=tfdata(gg,v);
[hn,hd]=tfdata(hh,v);
n=conv(gd,hn);
[m1,n1]=size(hd);
[m2,n2]=size(hn);
den=zeros(size(hd));
l=n1-n2;
for i=1:l
den(i)=hd(i);
end
for i=1:n2
den(l+i)=hd(l+i)-hn(i);
end
d=conv(gn,den);
d=tf(n,d,gg.Ts);
Occorre prestare attenzione a due punti
Non cancellare tempi di ritardo presenti in G
ZOH
(z) da G
cl
(z)
Non cancellare poli di G
ZOH
(z) (ci`o causa non osservabilit`a o non controllabi-
lit`a del sistema: critico in particolare modo se i poli cancellati sono instabili)
Il primo punto introduce non causalit`a del tipo
u(k) = e(k + p)
implicando la conoscenza di valori futuri di e(k). Ci`o si manifesta in una funzione
di trasferimento G
c
(z) nella quale il grado del numeratore `e pi` u grando di quello del
denominatore. Il prossimo esempio illustra un tale caso.
Esempio 5.14 Dato `e il processo discreto
G
ZOH
(z) =
1
(z 1) (z 0.5)
Scegliamo la funzione di trasferimento del processo controllato
G
cl
(z) =
1
z
ed otteniamo il controllore discreto
G
c
(z) =
(z 1) (z 0.5) z
1
(1 z
1
)
= z 0.5
Questo risulta in
u(k) = e(k + 1) 0.5 e(k)
che implica di conoscere in anticipo landamento dellerrore e(k).
10 febbraio 2009 Roberto Bucher & Silvano Balemi 125
Dinamica e stabilit`a Capitolo 5. Sistemi discreti nel tempo
126 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Capitolo 6
Analisi nel dominio delle frequenze
Dopo aver visto come si pu`o analizzare un sistema mediante lo studio dei suoi poli
(normalmente quelli dominanti), vediamo ora altri due metodi che si basano su
unanalisi della funzione di trasferimento nel dominio delle frequenze . Esistono
diversi metodi per fare delle analisi in frequenza, tra cui i pi` u importanti sono:
Metodo con i diagrammi di Bode
Metodo con il diagramma di Nyquist
6.1 Analisi di Bode
Questo tipo di analisi permette di rappresentare gracamente delle funzioni di trasfe-
rimento scomponendole in termini semplici che possono essere disegnati e sommati
fra di loro. Partendo da una funzione di trasferimento qualsiasi e portandola nella
forma
G(s) =
K(1 +s
1
)(1 +s
2
)
s
n
(1 +sT
1
)(1 +sT
2
)(1 + 2sT
3
+ s
2
T
2
3
)
(6.1)
possiamo disegnarla in due graci distinti. Nel primo rappresenteremo lampiezza
della funzione di trasferimento in una forma particolare, nel secondo rappresentere-
mo invece la fase del sistema. Lampiezza verr`a rappresentata in dB, calcolandola
nel modo seguente
M(j) = 20 log |G(j)| (6.2)
Grazie alla rappresentazione logaritmica le varie componenti della funzione di tra-
sferimento possono essere calcolate singolarmente e inne sommate fra di loro.
Esempio 6.1
G(j) =
j(1 +jT
1
)
(1 +jT
2
)
(6.3)
Per il calcolo complesso e logaritmico possiamo scrivere
10 febbraio 2009 Roberto Bucher & Silvano Balemi 127
Dinamica e stabilit`a Capitolo 6. Analisi nel dominio delle frequenze
A() = 20 log |j| + 20 log |1 +jT
1
| 20 log |1 +jT
2
| (6.4)
() =

(j) +

(1 +jT
1
)

(1 +jT
2
) (6.5)
6.2 Graci delle singole funzioni
Le gure 6.1, 6.2, 6.3, 6.4 e 6.5 mostrano i graci delle diverse funzioni di trasferi-
mento, normati con T = 1.
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
20
10
0
10
20
30
40

10
1
10
0
10
1
10
2
89
89.5
90
90.5
91

Figura 6.1: Graco della funzione jT
Le gure 6.1 e 6.2 mostrano un andamento analogo, con unampiezza costante
pari a 20dB/dec, rispettivamente 20dB/dec, mentre la fase `e costante a +90

,
rispettivamente 90

.
Le gure 6.3 e 6.4 hanno un guadagno costante a 0 dB no a circa la frequenza
1
T
,
dove vale 3dB (3dB). Da questo punto lampiezza sale (scende) con una pendenza
di 20dB/dec. La fase resta a 0

no a circa 1/5 della frequenza, poi va gradatamente


a raggiungere il valore +90

, rispettivamente 90

a circa 5 volte il valore di


1
T
.
Landamento della gura 6.5 dipende fortemente dal valore del parametro , che
rappresenta lo smorzamento della funzione di trasferimento. Pi` u questo parametro
`e piccolo, pi` u il graco dellampiezza presenta un accentuarsi del picco a 1/T, e pi` u
si restringe lintervallo tra cui la fase varia da 0 a -180.
Dopo aver ricapitolato la rappresentazione delle varie funzioni parziali, occorre
rammentare che per il disegno `e spesso suciente uno schizzo di tipo asintotico. I
graci delle gure 6.1, 6.2, 6.3, 6.4 e 6.5 sono stati normati per un valore di T pari
a 1. Per altri valori di T i graci vanno traslati nel punto = 1/T.
128 Roberto Bucher & Silvano Balemi 10 febbraio 2009
6.2. Graci delle singole funzioni Dinamica e stabilit`a
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
40
30
20
10
0
10
20

10
1
10
0
10
1
10
2
91
90.5
90
89.5
89

Figura 6.2: Graco della funzione
1
jT
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
0
5
10
15
20
25
30

10
1
10
0
10
1
0
20
40
60
80
100

Figura 6.3: Graco della funzione 1 +jT
10 febbraio 2009 Roberto Bucher & Silvano Balemi 129
Dinamica e stabilit`a Capitolo 6. Analisi nel dominio delle frequenze
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
20
15
10
5
0

10
1
10
0
10
1
100
80
60
40
20
0

Figura 6.4: Graco della funzione
1
1+jT
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
40
30
20
10
0
10
20

10
1
10
0
10
1
200
150
100
50
0

Figura 6.5: Graco della funzione
1
1+2jT
2
T
2
, = 0.5
130 Roberto Bucher & Silvano Balemi 10 febbraio 2009
6.3. Utilizzo dei diagrammi di Bode in regolazione Dinamica e stabilit`a
6.3 Utilizzo dei diagrammi di Bode in regolazione
Luso dei diagrammi di Bode in regolazione `e molto utile, poiche ci permette di
analizzare un sistema ad anello chiuso partendo dalla sua funzione ad anello aperto
KG(s)H(s). Nel diagramma di Bode viene infatti rappresentata questa funzione (e
non quella totale ad anello chiuso). Una volta disegnato il diagramma di Bode `e
possibile fare delle analisi qualitative e quantitative che ci permettono aermazioni
su stabilit`a, errore allo stato nito, comportamento transiente ecc., riferiti al sistema
ad anello chiuso.
Partendo dalla funzione di trasferimento ad anello chiuso denita come
G
TOT
(s) =
G(s)
1 +G(s)H(s)
(6.6)
possiamo rappresentare la funzione di trasferimento G(s)H(s) con un diagramma
di Bode e vedere due punti particolari (vedi gura 6.6). Il primo punto interessante
`e quello in cui il diagramma dellampiezza taglia la linea 0dB (amplicazione pari
a 1). La frequenza di taglio viene chiamata
gc
(gain crossover frequency). La
corrispondente fase permette di determinare il parametro detto margine di fase,
denito come
PM = 180

+ (6.7)
Se PM `e maggiore di 0 il sistema ad anello chiuso `e stabile, altrimenti sar`a instabile.
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
200
150
100
50
0
50
100
Gm=58.8 dB (Wcg=13.1); Pm=86.0 deg. (Wcp=0.1)
10
2
10
1
10
0
10
1
10
2
10
3
300
250
200
150
100
50
0

Figura 6.6: Margine di guadagno e margine di fase
10 febbraio 2009 Roberto Bucher & Silvano Balemi 131
Dinamica e stabilit`a Capitolo 6. Analisi nel dominio delle frequenze
Il secondo punto interessante del graco `e quello in cui la fase passa al di sotto
di 180

. La corrispondente ampiezza, cambiata di segno mi indica in pratica


lamplicazione massima (in dB) che io si pu`o ancora dare al sistema senza che
diventi instabile. Questa ampiezza viene detta margine di ampiezza (Gain margin
GM).
Analizziamo ora una funzione ad anello aperto
KG(s) =
K
2
n
s
2
+ 2
n
s +
2
n
(6.8)
Possiamo facilmente dimostrare che

gc
=
n

K (6.9)
Sappiamo in eetti che, nel caso che K valga 1, la pendenza della curva dopo
n
`e
di 40 dB per ogni decade. Se noi moltiplichiamo la funzione di trasferimento per K
facciamo una traslazione verso lalto del nostro graco di 20 log(K)[dB].
Vale quindi la relazione
40
log(10
n
) log(
n
)
=
20 log(K)
log(
n
) log(
n
)
(6.10)
per le propriet`a dei logaritmi luguaglianza descritta nellequazione (6.10) diventa
40
log
_
10n
n
_
=
20 log(K)
log
_
n
n
_

40
log 10
=
20 log(K)
log()
(6.11)
Poiche log(10) = 1 , possiamo girare luguaglianza e trovare
log() =
20
40
log(K) = log(K
1
2
) =

K (6.12)
Quindi la nuova frequenza gain crossover `e

K volte pi` u grande della precedente.


Vediamo ora gracamente il signicato di margine di fase e margine di guadagno.
Sul graco della gura 6.7 sono riportati i diagrammi di Bode dellampiezza e della
fase per la funzione di trasferimento ad anello aperto
G(s) =
400
s(s
2
+ 30s + 200)
(6.13)
In corrispondenza del taglio del guadagno con la riga 0dB possiamo leggere il va-
lore del margine di fase che `e di ca. 73

, mentre il margine di guadagno, letto in


corrispondenza del passaggio della fase al di sotto di 180

vale ca. 23dB.


Vediamo ora in che relazione stanno i valori di smorzamento e di frequenza
naturale tra il sistema ad anello aperto e il sistema ad anello chiuso nel caso di una
funzione di 2. ordine.
Partendo nuovamente da
KG(s) =
K
2
n
s
2
+ 2
n
s +
2
n
(6.14)
132 Roberto Bucher & Silvano Balemi 10 febbraio 2009
6.4. Relazioni tra le grandezze Dinamica e stabilit`a
Frequency (rad/sec)
P
h
a
s
e

(
d
e
g
)
;

M
a
g
n
i
t
u
d
e

(
d
B
)
Bode Diagrams
100
50
0
50

10
1
10
0
10
1
10
2
300
250
200
150
100
50
0

Figura 6.7: Diagramma di Bode della funzione
400
s(s
2
+30s+200)
possiamo dire che
G
TOT
(s) =
K
2
n
s
2
+ 2
n
s + (K + 1)
2
n
=) =
K
2
n
s
2
+ 2
CL

n
CL
s +
2
n
CL
(6.15)
vediamo quindi che

n
CL
=
n

K + 1 (6.16)

CL
=

K + 1
(6.17)
6.4 Relazioni tra le grandezze
Possiamo ora riassumere le formule analitiche che legano le varie grandezze in gioco
tra circuito ad anello aperto e circuito ad anello chiuso. Partendo da una funzione
ad anello aperto con amplicazione K del tipo
KG(s) =
K
2
n
s
2
+ 2
n
s +
2
n
(6.18)
otteniamo una funzione di trasferimento ad anello chiuso
G
TOT
(s) =
K
2
n
s
2
+ 2
n
s + (K + 1)
2
n
=
K
2
n
s
2
+ 2
CL

n
CL
s +
2
n
CL
(6.19)
10 febbraio 2009 Roberto Bucher & Silvano Balemi 133
Dinamica e stabilit`a Capitolo 6. Analisi nel dominio delle frequenze
Valgono quindi le relazioni seguenti

n
CL
=
n

K + 1 (6.20)

CL
=

K + 1
(6.21)
Vale inoltre
PM = 2 sin
1
1
2|G
TOT
(j
gc
)|
(6.22)
Ma poiche

gc
=
n

K (6.23)
otteniamo
1
2|G
TOT
(j
gc
)|
=
1
2

2
gc
+ 2j
CL

K + 1
gc
+ (K + 1)
2
n
K
2
n

(6.24)
Con K abbastanza grande abbiamo

K + 1

K (6.25)
e possiamo scrivere
1
2|G
TOT
(j
gc
)|

1
2

2
gc
+ 2j
CL

K + 1
gc
+ (K + 1)
2
n
K
2
n

(6.26)

1
2

2j
CL
K
2
n
K
2
n

(6.27)

1
2
|2j
CL
| (6.28)

CL
(6.29)
Di conseguenza abbiamo
PM 2 sin
1
(
CL
) (6.30)
o, girato

CL
sin
_
PM
2
_
(6.31)
Alcuni autori riportano anche lapprossimazione

CL
= 0.01 PM(gradi) (6.32)
134 Roberto Bucher & Silvano Balemi 10 febbraio 2009
6.4. Relazioni tra le grandezze Dinamica e stabilit`a
Una formula pi` u esatta che mette in relazione il fattore di smorzamento
CL
con
il PM pu`o essere calcolata pi` u precisamente, dando come risultato
PM = tan
1
_
_
_
_
2
CL
_
2
2
CL
+
_
1 + 4
4
CL
_
_
_
_
(6.33)
Questa formula `e stata implementata sotto Matlab tramite la funzione
[PM]=xi2pm(xi)
Il graco di questultima funzione `e mostrato nella gura 6.8.
10 febbraio 2009 Roberto Bucher & Silvano Balemi 135
D
i
n
a
m
i
c
a
e
s
t
a
b
i
l
i
t
`a
C
a
p
i
t
o
l
o
6
.
A
n
a
l
i
s
i
n
e
l
d
o
m
i
n
i
o
d
e
l
l
e
f
r
e
q
u
e
n
z
e
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
10
20
30
40
50
60
70
80

P
M
Relazione tra e PM calcolato con G(s)=1/(s
2
+2**s)
Figura 6.8: Relazione tra e PM
1
3
6
R
o
b
e
r
t
o
B
u
c
h
e
r
&
S
i
l
v
a
n
o
B
a
l
e
m
i
1
0
f
e
b
b
r
a
i
o
2
0
0
9
Appendice A
La trasformata di Laplace
A.1 Denizione
La trasformata di Laplace `e denita come
L[f(t] = F(s) =
+
_
0
+
f(t)e
st
dt
dove s = + j `e una variabile complessa.
Conoscendo f(t) e la soluzione dellintegrale precedente, possiamo trovare F(s)
che `e la trasformata di Laplace di f(t).
Si assume che la funzione f(t) vale 0 per t < 0. Se il sistema accumula energia
prima di t = 0, questa energia pu`o essere indicata mediante la funzione di impulso,
che applica tutta lenergia accumulata precedentemente nel momento di t = 0.
Immaginiamoci che un condensatore sia carico al momento t = 0 e abbia una
tensione iniziale pari a 5/C. Ci`o signica che possiamo inizializzarlo mediante una
funzione pari a 5(t), poiche
u
c
(t) =
1
C
0
+
_
0

5(t)dt =
5
C
Per trovare nuovamente la funzione f(t) partendo dalla sua trasformata F(s), si
utilizza la trasformata di Laplace inversa che `e denita come
L
1
[F(s)] =
1
2j
+j
_
j
F(s)e
st
ds
Normalmente non si calcolano gli integrali sopra ogni volta che si desidera trovare
la trasformata di Laplace di una function data. Invece, si scompone la funzione nel
tempo in parti pi` u semplici che sono comunemente riportate in apposite tabelle.
Nella tabella A.1 sono riportate alcune delle trasformate di Laplace pi` u frequen-
temente utilizzate. Da notare che le funzioni f(t) sono sempre moltiplicate per la
funzione gradino unitario 1(t), visto che per t < 0 il valore della funzione `e nullo.
Alcune propriet`a delle trasformate di Laplace sono riportate nella tabella A.2
10 febbraio 2009 Roberto Bucher & Silvano Balemi 137
Dinamica e stabilit`a Appendice A. La trasformata di Laplace
f(t) F(s)
(t) 1
1(t)
1
s
t 1(t)
1
s
2
t
n
1(t)
n!
s
n+1
e
at
1(t)
1
s + a
sin( t) 1(t)

s
2
+
2
cos( t) 1(t)
s
s
2
+
2
e
at
sin( t) 1(t)

(s + a)
2
+
2
e
at
cos( t) 1(t)
s + a
(s + a)
2
+
2
Tabella A.1: Trasformate di Laplace di funzioni comuni
138 Roberto Bucher & Silvano Balemi 10 febbraio 2009
A.1. Denizione Dinamica e stabilit`a
proporzionalit`a L[kf(t)] = kF(s)
superposizione L[f
1
(t) + f
2
(t)] = F
1
(s) + F
2
(s)
spostamento in frequenza L[e
at
f(t)] = F(s + a)
spostamento nel tempo L[f(t T)] = e
sT
F(s)
scala L[f(at)] =
1
a
F(
s
a
)
derivata nel tempo L[
df(t)
dt
] = sF(s) f(0)
doppia derivata nel tempo L[
d
2
f(t)
dt2
] = s
2
F(s) sf(0)

f(0)
derivata n nel tempo L[
d
n
f(t)
dtn
] = s
n
F(s)
n

k=1
s
nk
f
k1
(0)
integrazione L[
t
_
0
f()d] =
F(s)
s
valore nale lim
t
f(t) = lim
s0
sF(s)
valore iniziale lim
t0
f(t) = lim
s
sF(s)
convoluzione nel tempo f
1
(t) f
2
(t) = F
1
(s)F
2
(s)
convoluzione in frequenza f
1
(t)f
2
(t) =
1
2j
F
1
(s) F
2
(s)
Tabella A.2: Propriet`a della trasformata di Laplace
10 febbraio 2009 Roberto Bucher & Silvano Balemi 139
Dinamica e stabilit`a Appendice A. La trasformata di Laplace
140 Roberto Bucher & Silvano Balemi 10 febbraio 2009
Appendice B
Matrici, determinanti e sistemi di
equazioni
B.1 Denizione di matrici e notazione
Denizione B.1 Una matrice m x n `e una tabella di elementi con m righe e n
colonne.
A =
_

_
a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
m2
a
mn
_

_
Denizione B.2 In ogni elemento a
ij
, i rappresenta la riga e j rappresenta la
colonna. Se m = n la matrice `e quadrata.
Denizione B.3 Una matrice con una sola riga `e detta vettore riga.
B =
_
b
11
b
12
b
1n
_
Denizione B.4 Una matrice con una sola colonna `e detta vettore colonna.
C =
_

_
c
11
c
21
.
.
.
c
m1
_

_
Denizione B.5 Una matrice pu`o essere partizionata in altre matrici.
A =
_

_
a
11
a
12
a
13
a
14
a
21
a
22
a
23
a
24
a
31
a
32
a
33
a
34
a
41
a
42
a
43
a
44
_

_
=
_

_
a
11
a
12
a
13
a
14
a
21
a
22
a
23
a
24
a
31
a
32
a
33
a
34
a
41
a
42
a
43
a
44
_

_
=
_
A
11
A
12
A
21
A
22
_
10 febbraio 2009 Roberto Bucher & Silvano Balemi 141
Dinamica e stabilit`a Appendice B. Matrici, determinanti e sistemi di equazioni
Denizione B.6 Una matrice in cui tutti gli elementi sono nulli `e detta matrice
nulla.
Denizione B.7 Una matrice che contiene elementi solo lungo la sua diagonale `e
detta matrice diagonale.
Denizione B.8 Una matrice diagonale con tutti gli elementi uguali allunit`a `e
detta matrice unit`a o matrice identit`a.
Denizione B.9 Una matrice simmetrica `e una matrice in cui vale
a
ij
= a
ji
A =
_

_
3 8 7
8 9 2
7 2 4
_

_
Denizione B.10 La trasposta di una matrice A, designata come A
T
, `e una ma-
trice in cui ogni elemento a
ij
viene sostituito conlelemento a
ji
. Una matrice m x n
diventa una matrice n x m.
A =
_

_
1 7 9
2 6 3
4 8 5
1 3 2
_

_
A
T
=
_

_
1 2 4 1
7 6 8 3
9 3 5 2
_

_
Denizione B.11 Il determinante di una matrice A `e indicato come detA o

a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
m2
a
mn

Denizione B.12 Il minore M


ij
dellelemento a
ij
del determinante della matrice
A `e il determinante formato eliminando la riga i e la colonna j dal determinante
di A.
detA =

3 8 7
6 9 2
5 1 4

Il minore M
32
`e il determinante formato eliminando la terza riga e la seconda
colonna dal detA.
142 Roberto Bucher & Silvano Balemi 10 febbraio 2009
B.1. Denizione di matrici e notazione Dinamica e stabilit` a
M
32
=

3 7
6 2

= 36
Denizione B.13 Il cofattore C
ij
di un elemento a
ij
del determinante della matrice
A `e denito come
C
ij
= (1)
(i+j)
M
ij
detA =

3 8 7
6 9 2
5 1 4

C
21
= (1)
2+1
M
21
= (1)
3

8 7
1 4

= 25
Denizione B.14 Il calcolo del determinante della matrice A pu`o essere fatto svi-
luppando i minori lungo una riga o una colonna. Il risultato pu`o essere trovato
tramite
detA =
n

k=1
a
ik
C
ik
oppure
detA =
m

k=1
a
kj
C
kj
A =
_

_
1 3 2
5 6 7
8 5 4
_

_
detA = 2

5 6
8 5

(7)

1 3
8 5

+ 4

1 3
5 6

= 195
Denizione B.15 Una matrice `e detta singolare quando il suo determinante `e
nullo.
Denizione B.16 Una matrice `e non singolare se il suo determinante `e diverso da
0.
Denizione B.17 La matrice aggiunta di una matrice quadrata A `e la matrice che
si ottiene trasponendo la matrice dei cofattori di ogni elemento di A.
adjA =
_

_
C
11
C
12
C
1n
C
21
C
22
C
2n
.
.
.
.
.
.
.
.
.
.
.
.
C
m1
C
m2
C
mn
_

_
T
10 febbraio 2009 Roberto Bucher & Silvano Balemi 143
Dinamica e stabilit`a Appendice B. Matrici, determinanti e sistemi di equazioni
A =
_

_
1 2 3
1 4 5
6 8 7
_

_
adjA =
_

4 5
8 7

1 5
6 7

1 4
6 8

2 3
8 7

1 3
6 7

1 2
6 8

2 3
4 5

1 3
1 5

1 2
1 4

_
=
_

_
12 10 2
37 11 8
32 4 6
_

_
Denizione B.18 Il rango di una matrice rappresenta il numero di righe o colon-
ne linearmente indipendenti. Pu`o essere determinato trovando la sottomatrice pi` u
grande non singolare.
Denizione B.19 Linversa di una matrice quadrata A, denita con A
1
`e quella
matrice per la quale vale
AA
1
= I
dove I rappresenta la matrice identit`a.
Per il calcolo della matrice inversa si utilizza la formula
A
1
=
adjA
|A|
Linversa esiste unicamente in caso di matrici non singolari.
Denizione B.20 Gli autovalori e gli autovettori x di una matrice quadrata A
sono quei valori che risolvono lequazione
Ax = x
e possono essere determinati risolvendo
x Ax = 0
(I A)x = 0
Per non avere soluzioni triviali x = 0 occorre che
det(I A) = 0
Risolvendo quetsa equazione si ricavano i valori di , che permettono poi di ricavare
i valori di x.
144 Roberto Bucher & Silvano Balemi 10 febbraio 2009
B.1. Denizione di matrici e notazione Dinamica e stabilit` a
Denizione B.21 Una matrice diagonale possiede tutti gli autovalori sulla diago-
nale.
Denizione B.22 Le seguenti espressioni sono equivalenti
Una matrice n n `e invertibile solo se il suo rango vale n.
Una matrice `e invertibile solo se tutti i suoi autovalori sono diversi da 0
10 febbraio 2009 Roberto Bucher & Silvano Balemi 145

Potrebbero piacerti anche