Dispensa FDA Rocco
Dispensa FDA Rocco
Fondamenti di Automatica
Questa dispensa raccoglie, sotto forma di appunti sintetici, il materiale didattico per i corsi
introduttivi di Fondamenti di Automatica.
La dispensa vuole essere un ausilio agli studenti per rivedere i propri appunti o per un rapido
ripasso della materia, ma non sostituisce, né vuole sostituire, un testo organico 1
sull’Automatica, al quale si raccomanda di fare riferimento per un apprendimento più
consapevole della materia.
pag.
Capitolo 1: Introduzione 5
Capitolo 2: Sistemi dinamici nel dominio del tempo 15
Capitolo 3: Sistemi dinamici nel dominio delle trasformate 57
Capitolo 4: Raggiungibilità e osservabilità 73
Capitolo 5: Risposte canoniche dei sistemi del primo e secondo ordine 83
Capitolo 6: Risposta in frequenza 97
Capitolo 7: Schemi a blocchi 111
Capitolo 8: Requisiti di un sistema di controllo 117
Capitolo 9: Stabilità dei sistemi di controllo 123
Capitolo 10: Prestazioni dinamiche dei sistemi di controllo 137
Capitolo 11: Prestazioni statiche dei sistemi di controllo 151
Capitolo 12: Progetto del controllore 159
Capitolo 13: Controllori PID 183
Capitolo 14: Schemi avanzati di controllo 191
Capitolo 15: Luogo delle radici 207
Capitolo 16: Assegnamento degli autovalori 215
Capitolo 17: Sistemi dinamici a tempo discreto 237
Capitolo 18: Controllo digitale 259
Con il termine automatica si fa riferimento ad una disciplina che studia tutti gli aspetti
metodologici e concettuali che stanno alla base dell’automazione, ossia del trasferimento alle
macchine di operazioni di governo e controllo di dispositivi, processi e sistemi di svariata
natura. Si parla di automazione ogniqualvolta un’operazione viene eseguita da una macchina
senza, o con ridotto, intervento dell’uomo.
I comparti applicativi in cui si presenta l’automazione sono i più svariati e toccano da vicino
la vita quotidiana: si pensi agli elettrodomestici (frigoriferi, lavatrici, condizionatori), ai
sistemi di frenatura e sterzo servoassistiti, alle sospensioni attive o al controllo della velocità
di crociera nelle automobili, al pilota automatico negli aerei, ai processi manifatturieri
automatizzati (fabbrica automatica), al controllo di motori elettrici, al controllo degli impianti
per la generazione di energia, e così via.
Una tale vastità di applicazioni in cui l’automazione riveste un ruolo rilevante può far nascere
il legittimo dubbio che l’automatica si riduca ad una rassegna o tutt’al più ad una
classificazione delle applicazioni più significative.
In effetti inizialmente (al principio del ventesimo secolo) non vi era alcuna consapevolezza
del carattere comune delle applicazioni di controllo. Le applicazioni, che pur esistevano
(controllo di livello in serbatoi, controllo di velocità delle macchine a vapore, controllo del
moto delle pale di mulini a vento), evolvevano in modo pionieristico e del tutto indipendente
tra loro.
E’ stato solo con il formarsi, e quindi con il consolidarsi, di una teoria matematica che
l’automatica ha cominciato a prendere le forme di una disciplina scientifica. Tale teoria
matematica va sotto il nome di teoria dei sistemi. Il suo indubbio pregio risiede nel fornire gli
strumenti per lo studio delle caratteristiche del sistema, oggetto di automazione, in modo
sostanzialmente indipendente dal contesto applicativo. Grazie alla teoria dei sistemi, tutti i
sistemi di automazione elencati sommariamente in precedenza possono essere studiati con la
stessa metodologia matematica.
Lo studio dei fondamenti della teoria dei sistemi, che occuperà la prima parte di questo corso,
consentirà da un lato di dotarsi di strumenti molto efficaci per l’analisi di sistemi (non solo
tecnologici, ma anche economici, ecologici o biologici) in cui è importante formalizzare
l’evoluzione nel tempo delle variabili, dall’altro preparerà la strada allo studio dei sistemi di
controllo automatico, che occuperà la seconda parte del corso. L’obiettivo primario dello
studio sarà la valutazione oggettiva delle prestazioni dei sistemi di controllo, per mezzo di
parametri che formalizzano concetti intuitivi, quali la stabilità, la velocità di risposta, la
precisione del sistema di controllo. Saranno forniti anche elementi per la progettazione del
dispositivo che esegue il controllo automatico e per la sua realizzazione in tecnologia digitale.
Un problema di controllo nasce nel momento in cui si vuole imporre ad un “oggetto” (la cui
natura va di volta in volta precisata) un comportamento desiderato, per mezzo di opportune
azioni esercitate sull’oggetto stesso. Operiamo la seguente distinzione:
Controllo di percorso
si vuole raggiungere una località di destinazione in un tempo desiderato;
si può agire sulla traiettoria desiderata dell’automobile e sulla sua velocità desiderata.
Controllo di traiettoria
si vuole fare in modo che l’automobile segua la traiettoria desiderata, non uscendo
dalla carreggiata;
si misura, a occhio, la posizione dell’automobile, rispetto ai limiti della carreggiata;
si può agire sul volante.
Controllo di velocità
si desidera che l’automobile viaggi a una velocità desiderata, senza collidere con altri
veicoli;
si misura la velocità dell’automobile tramite un tachimetro e, a occhio, la distanza dai
veicoli che precedono;
si può agire sui pedali del freno e dell’acceleratore.
d
y° u y
S
Fig. 1 : Elementi di un problema di controllo
termometro
T ϑ
ϑ°
u
M C
motore compressore
Fig. 2 : Un frigorifero
STRATEGIA DI CONTROLLO 1
Si calcola la quantità di calore che deve essere estratta per mantenere una certa temperatura
ϑd
ϑ° u ϑ
C S
controllore sistema
Fig. 3 : Strategia di controllo 1
1
0 t
∆1(ϑo) ∆2(ϑo)
Fig. 4 : Posizione dell’interruttore
Osservazioni
• La legge di controllo si basa esclusivamente sul modello matematico (bilancio termico),
per mezzo del quale si determinano gli intervalli di tempo di accensione del compressore
(∆1) e di spegnimento (∆2) in base alla temperatura desiderata ϑo
• Non è richiesto l’uso di un termometro
• Gli eventuali disturbi (porta del frigo lasciata a lungo aperta, oggetti inseriti
particolarmente caldi, ecc.) compromettono l’efficacia della regolazione della temperatura.
ϑd
ϑ° u ϑ
C S
ϑm
T
Fig. 5 : Strategia di controllo 2
Si alimenta il motore quando la differenza ϑm−ϑ° supera una certa soglia ε e lo si spegne
quando tale differenza scende al di sotto di un’altra soglia −ε (controllo a relè).
u
1
m
0 ϑ − ϑ°
−ε ε
Fig. 6 : Controllore a relè
Osservazioni
• La legge di controllo non si basa sul modello. La taratura della soglia ±ε viene eseguita
sulla base di prove empiriche
• E’ richiesto l’uso di un termometro
• In presenza di eventuali disturbi la temperatura viene comunque regolata efficacemente.
d
d Md
y° u y y° u y
C S C S
(a) (b)
d
y° u y
C S
ym
My
Fig. 8 : Schemi di controllo in anello chiuso
Trasduttori: misurano una grandezza fisica del sistema sotto controllo (tipicamente la
variabile controllata) e ne inviano la misura al controllore in una forma
compatibile con la sua tecnologia.
Attuatori: traducono l’azione di controllo determinata dal controllore in un’azione
efficace sul sistema, operando sulle sue variabili manipolabili (tipicamente
con stadi intermedi di amplificazione e conversione di potenza).
d
y° u m y
C A S
c
T
Fig. 9 : Schema di controllo completo di strumentazione
La necessità di adottare modelli dinamici nello studio dei sistemi di controllo può essere
compresa facendo riferimento a un esempio di un nastro trasportatore di sabbia:
sabbia
u
y
l
p
Fig. 1 : Un nastro trasportatore di sabbia
p
y° u y
S
Fig. 2 : Il problema di controllo
Modello matematico
Il modello matematico traduce in un’equazione il fatto che, ad ogni istante di tempo t, la
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 15
portata in uscita uguaglia, a meno delle perdite, la portata manifestatasi in ingresso, τ istanti
prima, dove τ è il tempo di percorrenza del nastro:
y( t ) = u( t − τ ) − p( t ) , τ: = l v
Si suppone inoltre che le perdite siano calcolabili come la somma di un valore medio costante
noto p e di uno scostamento impredicibile ∆p:
p( t ) = p + ∆p( t ) .
p p
y° u y
C S
T
Fig. 3 : Strategia di controllo in anello chiuso
Risulta allora:
y( t ) = y°+ p + µ( y°− y( t − τ ) ) − ( p + ∆p( t ) ) = ( 1 + µ) y°− µy( t − τ ) − ∆p( t ) .
Studiamo anzitutto il comportamento a regime (analisi statica), supponendo costanti le
0 t
τ
Fig. 4 : Andamento temporale delle perdite di sabbia
t<τ
Supponiamo che il sistema parta dalla condizione di regime, che mantiene fino all’intervento
della perturbazione all’istante τ:
y (t ) = y°
u (t ) = y° + p
t=τ
La variazione istantanea di p determina una variazione istantanea di y (in base al modello) e
quindi una variazione istantanea di u (in base alla legge di controllo):
y (τ) = u (0) − p(τ ) = y° + p
u (τ) = y° + p + µ( y° − y (τ)) = y° + p (1 − µ )
t = 2τ
La variazione di u all’istante τ determina la variazione di y (in base al modello) e quindi una
variazione di u (in base alla legge di controllo):
y (2τ) = u (τ) − p(2τ) = y° + p (1 − µ )
(
u (2τ) = y° + p + µ( y° − y (2τ)) = y° + p 1 − µ + µ 2 )
Procedendo in questo modo, si conclude che y è costante a tratti e cambia valore agli istanti
multipli di τ, secondo la legge:
( )
k −1
y (kτ) = y° + p 1 − µ + µ 2 − µ 3 + + (− 1)k −1 µ k −1 = y° + p ∑ (− µ )i
i =0
y µ<1
y°+p
y°
t
τ 2τ 3τ 4τ
y°+p
y°
t
τ 2τ 3τ 4τ
y µ>1
y°+p
y°
t
τ 2τ 3τ 4τ
Tipo di transitorio
µ<1 Oscillazioni convergenti (*)
µ=1 Oscillazioni permanenti
µ>1 Oscillazioni divergenti
Conclusioni
• L’analisi statica non è sufficiente per lo studio del comportamento dei sistemi di controllo.
A volte (vedi i casi µ=1 e µ>1) può dare risultati inconsistenti, predicendo un errore a
regime tanto più piccolo quanto più grande è il guadagno, quando in realtà la situazione di
regime non può essere raggiunta (oscillazioni permanenti o divergenti).
• E’ solo con un’analisi dinamica del sistema di controllo che è possibile comprenderne
Resistore
R: resistenza
i v
i: corrente
v(t ) = Ri (t )
R v: tensione
Induttore
L: induttanza
di (t )
i v
i: corrente v(t ) = L
dt
L v: tensione
Condensatore
C: capacità
dv(t )
i v
i: corrente i (t ) = C
dt
C v: tensione
Massa
dp( t )
M: massa v( t ) =
dt
F p: posizione dv( t )
M
a( t ) =
v: velocità dt
p a: accelerazione F ( t ) = Ma( t )
F: forza
K
M: massa dp( t )
F K: costante elastica v( t ) =
M dt
D: coefficiente di attrito dv( t )
D
a( t ) =
p p: posizione dt
v: velocità F ( t ) = Kp( t ) + Dv( t ) + Ma( t )
a: accelerazione
F: forza
Pendolo
l: lunghezza dell’asta (priva di massa)
τ
m: massa concentrata dϑ( t )
ω( t ) =
g: accelerazione di gravità dt
ϑ l ϑ: posizione angolare dω( t )
α( t ) =
dt
ω: velocità angolare
α: accelerazione angolare τ( t ) = ml 2α( t ) + mgl sin( ϑ( t ) )
mg
τ: coppia
Serbatoio cilindrico
qi AS: area sezione serbatoio
h: livello liquido
qi: portata di liquido entrante dh( t )
h qi ( t ) = AS
AS dt
I modelli matematici precedentemente elencati possono tutti essere messi in una forma molto
generale che prende il nome di sistema dinamico.
Un sistema dinamico si interfaccia con il “resto del mondo” per mezzo di una serie di
variabili, che definiremo di ingresso, ed altre che definiremo di uscita.
u y
S
variabili variabili
di ingresso di uscita
Fig. 8 : Ingressi e uscite di un sistema
La relazione che sussiste tra variabili di ingresso e di uscita è di causa-effetto e non ha nulla a
che vedere con relazioni di afflusso ed efflusso di materia o energia (la portata di uscita in un
serbatoio può essere variabile di ingresso per il sistema, se per esempio è comandata da una
pompa).
E’ sufficiente descrivere il comportamento dinamico di un sistema mediante relazioni
algebriche tra i suoi ingressi e le sue uscite? Quasi sempre no (nei nostri esempi, solo per il
resistore), per due motivi: occorre conoscere i valori assunti dalle variabili di ingresso a
partire dall’istante iniziale ed occorre conoscere una o più condizioni iniziali.
Consideriamo a titolo di esempio il condensatore, in cui l’ingresso è costituito dalla corrente
(u(t) = i(t)), l’uscita dalla tensione (y(t) = v(t)). Avremo quindi:
t
1
Cy (t ) = u(t ) ⇒ y(t ) = y(t0 ) + ∫ u( τ)dτ .
Ct
0
Occorre quindi conoscere il valore iniziale della tensione e l’andamento della corrente
dall’istante iniziale. Il numero minimo di condizioni iniziali che occorre assegnare per
determinare tutte le uscite del sistema, noti gli andamenti degli ingressi a partire dall’istante
iniziale, prende il nome di ordine del sistema: lo indicheremo con n.
Per descrivere l’evoluzione dinamica del sistema è quindi sufficiente assegnare, istante per
istante, n valori, ovvero dare l’andamento nel tempo di n variabili: indicheremo con x1, x2, ... ,
xn queste variabili e le definiremo variabili di stato.
Noto lo stato del sistema a un dato istante e l’andamento degli ingressi da quell’istante in poi,
sarà quindi possibile determinare l’andamento di tutte le uscite dall’istante considerato. La
formalizzazione matematica del sistema dinamico passa allora per la scrittura delle equazioni
differenziali di cui le variabili di stato sono le soluzioni, noti gli ingressi esterni, e del legame
tra le variabili di uscita e quelle di stato e di ingresso.
y1 (t ) = g1 ( x1 (t ), x2 (t ),..., xn (t ), u1 (t ), u2 (t ),..., um (t ), t )
y2 (t ) = g 2 ( x1 (t ), x2 (t ),..., xn (t ), u1 (t ), u2 (t ),..., um (t ), t )
trasformazioni di uscita
y p (t ) = g p ( x1 (t ), x2 (t ),..., xn (t ), u1 (t ), u2 (t ),..., um (t ), t )
Induttore
ingresso: u = v
i v
uscita: y = i
1
variabili di stato: x1 = i x1( t ) = u( t )
L
L
y( t ) = x1( t )
Condensatore
ingresso: u = i
i v
uscita: y = v 1
x1( t ) = u( t )
variabili di stato: x1 = v C
C
y( t ) = x1( t )
Oscillatore meccanico
ingresso: u = F x1( t ) = x2 ( t )
K
M
F uscita: y = p
x2 ( t ) =
1
M
( − Kx1( t ) − Dx2 ( t ) + u( t ) )
variabili di stato: x1 = p, x2 = v
D
p y( t ) = x1( t )
Pendolo
τ ingresso: u = τ
x1( t ) = x2 ( t )
uscita: y = ϑ
sin( x1( t ) ) + 2 u( t )
g 1
variabili di stato: x1 = ϑ, x2 = ω x2 ( t ) = −
ϑ l l ml
y( t ) = x1( t )
mg
Serbatoio cilindrico
qi ingresso: u = qi
1
uscita: y = h x1( t ) = u( t )
AS
variabili di stato: x1 = h
h y( t ) = x1( t )
AS
Gli esempi evidenziano che, di norma, le variabili di stato sono associate a fenomeni di
accumulo (di energia elettrica, di energia potenziale, di energia cinetica, di massa...).
Nei sistemi dinamici lineari le equazioni di stato e le trasformazioni di uscita sono lineari
nelle variabili di stato e nelle variabili di ingresso. Se il sistema è anche tempo-invariante,
potremo scrivere:
x1 (t ) = a11x1 (t ) + a12 x2 (t ) + ... + a1n xn (t ) + b11u1 (t ) + b12u2 (t ) + ... + b1mum (t )
x2 (t ) = a21x1 (t ) + a22 x2 (t ) + ... + a2 n xn (t ) + b21u1 (t ) + b22u2 (t ) + ... + b2 mum (t )
equazioni di stato
xn (t ) = an1x1 (t ) + an 2 x2 (t ) + ... + ann xn (t ) + bn1u1 (t ) + bn 2u2 (t ) + ... + bnmum (t )
Introduciamo le matrici:
a11 a12 a1n b11 b12 b1m
a a22 a2 n b b22 b2 m
A= , B = 21
21
a b bnm
n1 an 2 ann n1 bn 2
c11 c12 c1n d11 d12 d1m
c c22 c2 n d d22 d2 m
C=
21 , D = 21
c c p2
c pn d d p2 d pm
p1 p1
Il sistema dinamico lineare potrà allora essere riscritto in forma compatta vettoriale come
segue:
x (t ) = Ax(t ) + Bu(t )
.
y(t ) = Cx(t ) + Du(t )
Tutti i precedenti esempi sono descritti da sistemi dinamici lineari, tranne il pendolo (a causa
della funzione trigonometrica) ed il serbatoio con valvola di efflusso (per via della radice
quadrata).
In un sistema dinamico il movimento (o moto) dello stato è definito come l’evoluzione nel
tempo del vettore delle variabili di stato, a partire da un istante iniziale in cui sia dato il valore
dello stato stesso, e noti gli andamenti degli ingressi da quell’istante in poi. Analoga
definizione si dà per il movimento dell’uscita. Di fatto quindi il movimento dello stato
costituisce la soluzione del sistema di equazioni differenziali che forma il sistema dinamico.
Formalmente, assegnata una condizione iniziale all’istante t0:
x (t 0 ) = x 0 ,
e una funzione di ingresso a partire da t0:
u(t ) = u (t ), t ≥ t 0 ,
diciamo movimento dello stato x (t ) la soluzione delle equazioni di stato corredate dalla
condizione iniziale assegnata:
x (t ) = f ( x (t ), u (t ))
,
x (t0 ) = x0
e movimento dell’uscita la conseguente uscita, ricavabile dalla trasformazione d’uscita:
y (t ) = g ( x (t ), u (t )) .
Si supponga che l’ingresso (o gli ingressi) del sistema dinamico (lineare o no) siano costanti.
Uno stato di equilibrio è un particolare movimento caratterizzato dal fatto che tutte le variabili
di stato (e quindi anche le variabili di uscita) del sistema rimangono costanti nel tempo.
Consideriamo l’equazione di stato (vettoriale):
x ( t ) = f ( x( t ), u( t ) ) ,
Esempio
Si consideri il sistema, non lineare, del secondo ordine:
x1 = x13 + u
x2 = x1 + x22
y = x1 x2 + u
Si vogliono individuare eventuali punti di equilibrio in corrispondenza dell’ingresso costante
u( t ) = u = 1 .
K
F
M
D
p
Scelte le variabili:
ingresso: u = F
uscita: y = p
variabili di stato: x1 = p, x2 = v
che corrisponde a massa ferma, in una posizione tale per cui la forza di richiamo elastica
equilibra la forza esterna applicata.
ϑ l
mg
Fig. 10 : Pendolo nel piano verticale
Scelte le variabili:
ingresso: u = τ
uscita: y = ϑ
variabili di stato: x1 = ϑ, x2 = ω
x2 (t ) = − sin ( x1 (t )) + 2 u (t )
g 1
l ml
y (t ) = x1 (t )
Le soluzioni sono:
x1 = 0
pendolo fermo rivolto verso il basso
x2 = 0
v = v T v = v12 + v 22 + + v n2 .
Si consideri dunque un sistema dinamico tempo invariante, genericamente non lineare, che
per t ≥ 0 sia soggetto all’ingresso u (t ) .
Definito con x0n lo stato iniziale (per t=0) nominale, sia xn(t) il movimento che origina da x0n
con ingresso u (t ) : definiamo xn(t) movimento nominale.
Sia ora x0p un diverso stato iniziale e xp(t) il movimento che origina da x0p con lo stesso
ingresso u (t ) : definiamo xp(t) movimento perturbato.
Ciò posto, il movimento xn(t) si dice stabile se, ∀ε>0, esiste in corrispondenza un valore
δε>0, tale che ∀ x0p che soddisfi la condizione:
x 0 p − x 0n ≤ δ ε ,
risulti:
x p (t ) − x n (t ) ≤ ε, ∀t ≥ 0.
La proprietà di stabilità del movimento formalizza quindi l’idea che perturbando lo stato
iniziale del sistema (non l’ingresso) il movimento perturbato non si allontani indefinitamente
dal movimento nominale o, più precisamente, che fissato arbitrariamente 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
sufficientemente vicino allo stato iniziale nominale. Nel caso di sistema del primo ordine (nel
quale quindi lo stato è rappresentato da una variabile scalare), si può dare un’espressiva
rappresentazione grafica di un movimento stabile:
movimento
nominale
δε
x0n t
movimento
nominale
δε
x0n t
Infine un movimento xn(t) si dice asintoticamente stabile se, oltre ad essere stabile, soddisfa
la condizione:
lim x p (t ) − x n (t ) = 0, ∀x 0 p : x 0 p − x 0 n < δ ε .
t →∞
x movimento
perturbato
ε
movimento
nominale
δε
x0n t
−x −x −x x
1 2 3
Poiché la derivata si annulla per tre valori di x, il sistema ammette tre stati di equilibrio,
x1 , x 2 , x3 .
Non è difficile convincersi che gli stati x1 e x3 sono instabili, in quanto perturbando lo stato
iniziale ad un valore di poco superiore al valore di equilibrio, lo stato, avendo derivata
positiva, tenderà ad allontanarsi dallo stato di equilibrio stesso, e viceversa per perturbazioni
negative. Con ragionamento analogo si conclude che lo stato x 2 è invece asintoticamente
stabile e la sua regione di attrazione è data dall’insieme ( x1 , x3 ) .
Come già osservato, i sistemi dinamici lineari tempo invarianti (LTI) possono essere
sinteticamente rappresentati dalla quaterna di matrici A(n×n), B(n×m), C(p×n) e D(p×m) che
definiscono le equazioni di stato e le trasformazioni di uscita:
x (t ) = Ax (t ) + Bu(t )
.
y (t ) = Cx (t ) + Du(t )
Una volta definite le variabili di ingresso e uscita, con cui il sistema si interfaccia con
l’esterno, la scelta delle variabili di stato è arbitraria. In un sistema LTI, il passaggio da una
rappresentazione in variabili di stato ad una rappresentazione alternativa si ottiene sempre
moltiplicando il vettore di stato originario per una matrice (n×n) non singolare:
xˆ (t ) = Tx (t ), det (T ) ≠ 0 .
Potremo quindi esprimere anche il vecchio vettore di stato in termini del nuovo attraverso
l’inversa della matrice T:
x (t ) = T −1 xˆ (t ) .
Sostituendo questa espressione nelle equazioni che definiscono il sistema dinamico in x, e
premoltiplicando entrambi i membri dell’equazione vettoriale di stato per la matrice T, si
ottiene:
xˆ (t ) = Aˆ xˆ (t ) + Bˆ u(t )
,
y (t ) = Cˆ xˆ (t ) + Dˆ u(t )
dove:
Aˆ = TAT −1 , Bˆ = TB, Cˆ = CT −1 , Dˆ = D .
x1=x^ 1 L
x2
C x^2
u
y
R
Come prima scelta di variabili di stato si prenda la corrente nell’induttore (x1) e la caduta di
tensione ai capi del condensatore (x2). Assunta come uscita del sistema la caduta di
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 36
tensione ai capi della resistenza, le equazioni del sistema dinamico si ricavano facilmente:
R 1 1
x 1 = − x1 − x 2 + u
L L L R 1 1
− L −
, B = L , C = [R 0], D = 0
1 L
x 2 = x1 ⇒ A=
C 1
0
C 0
y = Rx1
Prendendo ora come variabili di stato ancora la corrente nell’induttore ( x̂1 ) e la caduta di
tensione ( x̂ 2 ) sulla serie tra resistenza e condensatore, si ottiene:
1 1
xˆ1 = − L xˆ 2 + L u
1 1
0 − L
, Bˆ = , Cˆ = [R 0], Dˆ = 0 .
1 R R L
xˆ 2 = xˆ1 − xˆ 2 + u ⇒ A=
ˆ
C L L 1 R R
−
C L L
y = Rx1
Il legame tra i due insiemi di variabili di stato è evidentemente:
xˆ1 = x1
,
xˆ = Rx + x
2 1 2
ovvero:
1 0
xˆ = Tx, T = .
R 1
Poiché det(T) = 1, il cambiamento di variabili di stato è ben posto, e si possono verificare le
formule di trasformazione:
R 1 1
1 0 − − 1 0 0 −
Aˆ = TAT −1 = 1
L L
=1
L ,
R 1 − R 1 R
0 −
C C L
1
1 0 1
Bˆ = TB = L = L ,
R 1 0 R
L
1 0
Cˆ = CT −1 = [R 0] = [R 0],
− R 1
Dˆ = D = 0.
x = − A−1Bu
Pertanto:
y = µsu
dove la quantità (scalare se il sistema è SISO):
µ s = −CA −1B + D
è detta guadagno statico del sistema.
d Aτ A2τ A3 τ 2 A 2 τ 2 A3 τ3
e = 0 + A+2 +3 + = A I + Aτ + + + = Ae Aτ .
dτ 2! 3! 2! 3!
Il calcolo della matrice esponenziale risulta poi particolarmente agevole quando la matrice A è
diagonalizzabile, ossia quando è simile ad una matrice diagonale:
Aˆ = TAT −1 = diag {λ i , i = 1, , n} ,
dove λi sono gli autovalori di A. Risulta infatti:
−1 ˆ τ −1 2 τ
2 2
Aτ T −1 Aˆ Tτ −1 −1 ˆ
e =e = I +T ATτ + T ATT AT
ˆ + = T I + Aτ + A
ˆ ˆ + T =
2! 2!
= T −1e AτT = T −1diag e λi τ T
ˆ
{ }
Fatta questa premessa, siamo in grado di scrivere le espressioni dei movimenti di stato e
uscita, come segue:
t
A(t −t0 )
x (t ) = e x 0 + ∫ e A(t −τ ) Bu(τ)dτ
t0
.
t
A(t −t0 )
y (t ) = Ce x 0 + C ∫ e A(t −τ ) Bu(τ)dτ + Du(t )
t0
Per la verifica della correttezza dell’espressione del movimento dello stato (quello dell’uscita
si ottiene per ovvia sostituzione nella trasformazione di uscita), è utile ricordare un risultato
noto dall’analisi matematica (derivazione sotto segno di integrale). Data una funzione ϕ(τ,t)
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 40
(scalare o matriciale) di due argomenti scalari, risulta:
t t
ϕ(τ, t )dτ = ∫ ϕ(τ, t )dτ + ϕ(t , t ) .
d d
∫
dt t dt
0 t 0
[ ] [ ] [ ]
t
d A(t −t0 )
x (t ) = x 0 + ∫ e A(t −τ ) Bu(τ) dτ + e A(t −τ ) Bu(τ) τ=t =
d
e
dt t
dt
0
t t
A(t −t0 ) A(t − τ ) A(t −t0 ) A(t − τ )
= Ae x 0 + ∫ Ae Bu(τ)dτ + Bu(t ) = A e
x0 + ∫ e Bu(τ)dτ + Bu(t ) =
t0 t 0
= Ax (t ) + Bu(t )
Inoltre:
x (t 0 ) = x 0 .
Si osservi che, tanto il movimento dello stato, quanto quello dell’uscita, sono esprimibili
come la somma di un termine che dipende (linearmente) solo dallo stato iniziale ed un termine
che dipende (linearmente) solo dall’ingresso. Il primo termine prende il nome di moto libero,
il secondo di moto forzato.
Il principio di sovrapposizione degli effetti, valido solo per sistemi lineari, afferma che:
x ′′′( t ) = αx ′( t ) + βx ′′( t ) ,
y ′′′( t ) = αy ′( t ) + βy ′′( t ) .
E’ quindi possibile studiare separatamente l’effetto sul moto delle cause (stato iniziale e
differenti ingressi) che lo generano, e quindi sovrapporre (combinare linearmente) gli effetti.
La stabilità alla Lyapunov discussa nel precedente paragrafo è una proprietà dei singoli
movimenti di un sistema e non una proprietà del sistema stesso. In altre parole, per un
generico sistema non lineare, l’affermazione “il sistema è stabile (instabile, asintoticamente
stabile)” è priva di significato. Le cose stanno diversamente per i sistemi lineari, come una
semplice analisi consente di evidenziare. Consideriamo quindi un sistema LTI di equazioni di
stato:
x (t ) = Ax (t ) + Bu(t ) .
Assegnato l’ingresso u (t ) per t ≥ 0, si considerino un movimento nominale:
x n (t ), x n (0 ) = x n 0 ,
ed un movimento perturbato:
x p (t ), x p (0) = x p 0 .
Entrambi i movimenti soddisfano le equazioni di stato del sistema dinamico, per cui risulterà:
x n (t ) = Ax n (t ) + Bu (t ), x n (0) = x n 0 ,
x p (t ) = Ax p (t ) + Bu (t ), x p (0 ) = x p 0 .
La precedente equazione differenziale potrà quindi essere riscritta in termini della variabile
scostamento, come segue:
δx (t ) = Aδx (t ), δx (0 ) = δx 0 .
risulti:
δx (t ) ≤ ε, ∀t ≥ 0.
δx l (t ) = e At δx 0 ,
si deduce che la stabilità del sistema si analizzerà studiando le proprietà della matrice A.
D’altra parte il fatto che il moto libero si scali proporzionalmente alla condizione iniziale x0
porta a concludere che la condizione di stabilità è verificata se tutti i moti liberi (cioè tutti i
movimenti che si generano al variare della condizione iniziale) sono limitati nel tempo: in
questo caso infatti sarà possibile soddisfare la condizione di stabilità precedentemente
enunciata, qualunque sia ε, pur di scegliere in corrispondenza un valore δε sufficientemente
piccolo. Se questo non accade, ossia se c’è almeno un moto libero del sistema che non è
limitato nel tempo, il sistema è instabile. Infine se tutti i moti liberi del sistema, oltre ad essere
limitati, tendono a zero per t→∞, il sistema è asintoticamente stabile (in questo caso, infatti,
lo scostamento tra movimento perturbato e movimento nominale decade a zero, qualunque sia
lo stato iniziale perturbato).
Lo studio della stabilità alla Lyapunov di un sistema LTI ha portato a concludere che occorre
studiare le soluzioni dell’equazione 2:
x l (t ) = e At x 0
(moti liberi del sistema) al variare della condizione iniziale x0. Ci si chiede in particolare se
tali soluzioni siano limitate nel tempo e, in caso affermativo, se convergano a zero.
Ci muoveremo nell’ipotesi semplificativa che la matrice A sia diagonalizzabile, ossia che
esista una matrice non singolare T tale che:
Aˆ = TAT −1 = diag {λ i , i = 1, , n} ,
dove λi sono gli autovalori di A. Ricordiamo che condizione sufficiente (non necessaria)
perché la matrice A sia diagonalizzabile è che gli n autovalori siano distinti, mentre
condizione necessaria e sufficiente è che agli n autovalori siano associati n autovettori
linearmente indipendenti.
Come già dimostrato, l’espressione del moto libero in termini della matrice diagonale  è la
seguente:
x l (t ) = e At x 0 = eT
−1
Aˆ Tt
{ }
x 0 = T −1e At Tx 0 = T −1diag e λit Tx 0 .
ˆ
Pertanto i moti liberi del sistema sono combinazioni lineari, attraverso gli elementi delle
matrici T e T−1 e le componenti del vettore x0, degli esponenziali e λit .
Si ricorda che gli autovalori prendono valore nel campo complesso, e formano un insieme
simmetrico rispetto all’asse reale (se esiste un autovalore a parte immaginaria non nulla, esiste
anche il complesso coniugato). Dette αi e βi rispettivamente la parte reale e immaginaria
dell’autovalore λi, risulta:
2 A questo punto, l’indicazione dello scostamento δ non ha ovviamente più alcun rilievo.
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 45
almeno una condizione iniziale per cui il moto libero del sistema non converge, in norma, a
zero, fermo restando che tutti i moti liberi sono limitati nel tempo, possiamo concludere che il
sistema è stabile, non asintoticamente.
Infine se esiste almeno un autovalore di A a parte reale positiva ( ∃j : α j > 0 ), c’è almeno un
termine esponenziale e λit che diverge (non è limitato nel tempo). Essendo sempre possibile
individuare almeno una condizione iniziale per cui il moto libero del sistema non è limitato
nel tempo possiamo concludere che il sistema è instabile.
Quanto sopra esposto costituisce dimostrazione del seguente teorema.
Un sistema dinamico LTI con matrice A diagonalizzabile è:
asintoticamente stabile: se e solo se tutti gli autovalori di A hanno parte reale negativa;
stabile: se e solo se tutti gli autovalori di A hanno parte reale negativa o
nulla e ne esistono a parte reale nulla;
instabile: se e solo se esistono autovalori di A a parte reale positiva.
L’analisi di stabilità di un sistema LTI si conduce quindi studiando la posizione nel piano
complesso degli autovalori della matrice A.
OSSERVAZIONI
1) Ricordiamo che a seguito di un cambiamento di variabili di stato descritto da una matrice
di trasformazione T , la matrice A del sistema si trasforma secondo una relazione di
similitudine ( Aˆ = TAT −1 ). Poiché matrici simili hanno gli stessi autovalori, l’analisi della
stabilità è del tutto indipendente dalla scelta delle variabili di stato. In altre parole, la
proprietà di stabilità è una proprietà strutturale del sistema dinamico.
2) Se la matrice A non è diagonalizzabile, può essere messa in relazione di similitudine con
una forma canonica (forma di Jordan). Seguendo questa strada si giunge alla conclusione
che il teorema precedentemente enunciato va corredato dalla precisazione che se vi sono
autovalori multipli a parte reale nulla (e non vi sono autovalori a parte reale positiva), il
sistema è instabile se per almeno uno degli autovalori a parte reale nulla la cosiddetta
molteplicità geometrica (numero degli autovettori linearmente indipendenti associati
all’autovalore) è inferiore alla molteplicità algebrica (molteplicità con cui l’autovalore è
radice del polinomio caratteristico).
Si consideri a titolo d’esempio il sistema con matrice A:
0 1
A= .
0 0
A 2 t 2 A 3t 3 1 0 0 t 0 0 1 t
e At
= I + At + + + = + + + = .
2! 3! 0 1 0 0 0 0 0 1
L’espressione del moto libero è quindi:
x01 + x02 t
x l (t ) = e At x 0 = ,
x02
il che conferma che è sufficiente scegliere lo stato iniziale con componente x02 diversa da
zero per generare un moto libero non limitato: il sistema è quindi instabile.
3) L’analisi di stabilità condotta sulla base della risposta all’impulso del sistema conduce alle
stesse conclusioni della presente analisi. Nello studio della risposta all'impulso si era fatto
riferimento ai poli della funzione di trasferimento, i quali d’altra parte coincidono con gli
autovalori della matrice A in assenza di cancellazioni di radici tra numeratore e
denominatore della funzione di trasferimento. Si osservi che autovalori multipli a parte
reale nulla con molteplicità geometrica inferiore alla molteplicità algebrica danno luogo a
poli multipli nella funzione di trasferimento che, anche in assenza di poli a parte reale
positiva, comportano comunque l’instabilità del sistema.
Nello studio della stabilità di un sistema LTI si può ricorrere, in taluni casi particolari, a criteri
che, evitando il calcolo diretto degli autovalori, consentono di concludere circa la stabilità del
sistema dinamico. Alcuni criteri basati sull’ispezione della matrice A sono i seguenti:
1) Se A è triangolare, gli autovalori sono sulla diagonale della matrice, per cui l’analisi di
stabilità è immediata (si osservi che in questo caso gli autovalori non possono che essere
reali).
2) Si ricorda che la traccia di una matrice è la somma degli elementi sulla diagonale
principale. Poiché risulta:
n n
tr ( A) = ∑ λ i = ∑ Re[λ i ] ,
i =1 i =1
ϕ1 ϕ3 ϕ5
h1 h2 h3
k1 k2 k3
l1 l2 l3
Per formare una generica riga della tabella (la l_sima) ci si serve delle due righe
immediatamente precedenti (la k_sima e la h_sima), calcolando ogni elemento della riga
secondo la formula:
1 h1 hi +1 hk
li = − det = hi +1 − 1 i +1 .
k1 k1 k i +1 k1
Occorre quindi calcolare il determinante della matrice formata dagli elementi in prima
colonna delle due righe immediatamente precedenti e dagli elementi di queste due righe nella
colonna immediatamente successiva a quella cui appartiene l’elemento che si sta calcolando,
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 49
cambiare segno al determinante e dividere il risultato per il primo elemento della riga
immediatamente precedente. Si osservi che le righe della tabella possono essere completate
con zeri laddove questo sia richiesto per il calcolo delle righe successive.
Se il primo elemento di una colonna risulta nullo, la tabella si dice non definita e il
procedimento si arresta, altrimenti prosegue fino alla scritture della n+1_sima riga.
Il criterio di Routh afferma che il sistema è asintoticamente stabile se e solo se la tabella di
Routh è ben definita e tutti gli elementi della prima colonna hanno lo stesso segno.
Esempio
Si consideri il polinomio:
ϕ(λ ) = λ3 + 4λ2 + 5λ + 2 .
Essendo tutti i coefficienti del polinomio positivi, la condizione necessaria di stabilità non
consente di concludere nulla. Costruiamo la tabella di Routh:
1 5 0
4 2 0
k1 k2
h1
I coefficienti della tabella indicati simbolicamente si calcolano come illustrato
precedentemente:
1 1 5 1 1 0
k1 = − det = 4.5, k 2 = − det =0
4 4 2 4 4 0
.
1 4 2
h1 = − det =2
k1 k1 k 2
4.5 0
2
Poiché tutti i coefficienti della prima colonna sono positivi, il sistema è asintoticamente
stabile.
2 1 0
k1 k2
h1 h2
l1
I coefficienti della tabella indicati simbolicamente si calcolano come illustrato
precedentemente:
1 1 1 1 1 a
k1 = − det = 0.5, k 2 = − det =a
2 2 1 2 2 0
1 2 1 0.5 − 2a 1 2 0
h1 = − det = = 1 − 4a, h2 = − det = 0.
k1 k1 k 2 0.5 k1 k1 0
1 k1 k 2
l1 = − det =a
h1 h1 h2
2 1 0
0.5 a
1 − 4a 0
a
Affinché tutti i coefficienti della prima colonna siano concordi (positivi) devono essere
soddisfatte le due condizioni:
1 − 4a > 0
,
a > 0
ossia:
1
0<a< .
4
δx ( 0 ) = δx 0
∂g ∂g
y + δy( t ) = g( x , u ) + δx( t ) + δu( t )
∂x x ,u ∂u x ,u
Ponendo ora:
∂f ∂f
A= , B= ,
∂x x ,u ∂u x ,u
∂g ∂g
C= , D= ,
∂x x ,u ∂u x ,u
e ricordando le relazioni valide tra le variabili che caratterizzano l’equilibrio, otteniamo:
.
δx( t ) = Aδx( t ) + Bδu( t )
δx ( 0 ) = δx 0
δy( t ) = Cδx( t ) + Dδu( t ) ,
che è un sistema lineare.
Per il sistema linearizzato valgono quindi le proprietà dei sistemi lineari (non valide per il
sistema non lineare di partenza), limitatamente a piccole variazioni intorno alla condizione di
equilibrio.
Esempio
Si consideri nuovamente il sistema del secondo ordine:
x1 = x13 + u
x2 = x1 + x22
y = x1 x2 + u
Si vogliono determinare le espressioni dei sistemi linearizzati intorno ai due punti di
equilibrio corrispondenti all’ingresso costante u( t ) = u = 1.
unico autovalore del sistema. Per gli stati x1 e x3 risulta a>0, per cui, in base al secondo dei
due risultati precedentemente enunciati, i due stati di equilibrio sono instabili. Per lo stato x 2
risulta invece a<0, per cui, sulla base del primo risultato, lo stato di equilibrio è
asintoticamente stabile.
Per il calcolo della risposta (uscita) di un sistema dinamico lineare soggetto ad ingressi
assegnati, si possono seguire due strade.
Calcolo nel “dominio del tempo”
Con i metodi dell’analisi matematica, si integra il sistema di equazioni differenziali
(equazioni di stato) forzato dalle funzioni del tempo assegnate (gli ingressi). Dalla
trasformazione di uscita si ricava quindi l’espressione dell’uscita.
Calcolo nel “dominio delle trasformate”
Alla funzione del tempo u(t) si associa, con i metodi matematici che vedremo, una funzione U
che prende il nome di trasformata del segnale 3 di ingresso. Dalle equazioni del sistema
dinamico è poi possibile ricavare facilmente il legame tra la trasformata U e la trasformata Y
del segnale di uscita. Ricavata quindi la trasformata Y, le si associa la funzione del tempo y(t),
che ne costituisce l’antitrasformata, e che rappresenta la risposta del sistema cercata.
3Con il termine “segnale” intendiamo una variabile, scalare, funzione del tempo.
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 57
Trasformata di Laplace
Si consideri una funzione reale f(t) della variabile reale t, definita per t ≥ 0.
L’integrale, funzione della variabile complessa s:
∞
F ( s) = ∫ f ( t ) e − st dt
0
è calcolabile per valori di s la cui parte reale sia maggiore di un certo valore scalare a, ovvero
nel cosiddetto semipiano di convergenza (s: Re[s] > a). Definiamo trasformata di Laplace di
f(t), indicandola anche con L[f(t)], l’unica funzione di s, definita e analitica quasi ovunque nel
piano complesso, che nel semipiano di convergenza coincide con l’integrale F(s)
Esempio
Si consideri la funzione scalino:
0 t = 0
f ( t ) = sca( t ) =
1 t ≥ 0
sca(t)
∞ ∞
e − st
L [sca (t )] = ∫ e − st 1
dt = =
0 − s 0 s
Si noti che l’ultima eguaglianza è vera quando s è un numero complesso a parte reale positiva
(cioè nel semipiano destro del piano complesso, che costituisce il semipiano di convergenza).
Esempio
Si consideri la funzione impulso:
f ( t ) = imp( t ) = 0, ∀t ≠ 0
+∞
∫ f ( t ) dt = 1
−∞
Tale funzione può essere vista come il limite, per ε→0, della seguente funzione:
f (t)
ε
1/ε
t
ε
Fig. 18 : La funzione di cui l’impulso costituisce il limite
∞ ∞ ε
L [imp(t )] = ∫ imp(t )e dt = lim ∫ f ε (t )e
− st − st 1
dt = lim ∫ e − st dt =
ε →0 ε →0 ε
0 0 0
− st ε
1 e 1 − e − sε se − sε
= lim = lim = lim =1
ε →0 ε − s ε →0 s ε ε →0 s
0
[ ]
allora L e at f (t ) = F (s − a ) .
• Traslazione nel dominio del tempo
Se L [ f (t )] = F (s ) ,
df (t )
allora L
dt = sF (s ) − f 0+ . ( )
• Derivazione nel dominio della variabile complessa
t t≥0 t 2 2 t≥0
ram( t ) = par( t ) =
0 t<0 0 t<0
Poli e zeri
I poli di una trasformata F(s) sono i valori di s per cui |F(s)| = ∞.
Gli zeri di una trasformata F(s) sono i valori di s per cui F(s) = 0.
Se F(s) è razionale, ossia esprimibile come rapporto di due polinomi in s,
N ( s)
F ( s) = ,
D( s)
i poli sono le radici del denominatore D(s), gli zeri le radici del numeratore N(s).
Data una funzione F(s) di variabile complessa, si vuole determinare la funzione f(t) di cui F(s)
costituisce la trasformata.
I seguenti due teoremi forniscono informazioni parziali su f(t).
( )
allora f 0 + = lim [ sF( s) ] .
s→∞
Se, ad esempio,
s2 + s + 1
F ( s) = ,
2 s3 + 3s2 + 4
( )
allora f 0+ = lim
s→∞ 2 s 3
s3 + s2 + s
+ 3s2 + 4
=
1
2
.
Se, ad esempio,
s2 + s + 1
F ( s) = ,
2 s3 + 3s2 + s
F(s) ha poli in 0, −1/2 e −1, per cui il teorema è applicabile, e risulta:
s2 + s + 1
lim f ( t ) = lim =1 .
t →∞ s→0 2 s
2
+ 3s + 1
Ne consegue:
α1 α2 αn
F ( s) = + ++
s + p1 s + p2 s + pn
Si ricavano i coefficienti α1, ..., αn mediante confronto tra questa espressione e l’espressione
originaria di F(s). Infine si antitrasformano i singoli termini:
D( s) = ( s + p1 ) ( s + p2 )( s + pm ), pi ≠ p j , m = n − ( k − 1) .
k
pi ∈ℜ,
Ne consegue:
Si ricavano i coefficienti α1k, ..., α11, α2 ..., αm mediante confronto tra questa espressione e
l’espressione originaria di F(s). Infine si antitrasformano i singoli termini:
t k −1 − p1t t k −2 − p1t
f (t ) = α1k e + α1( k −1) e ++α11e − p1t + α 2 e − p2t ++α me − pmt , t ≥ 0 .
( k − 1)! ( k − 2)!
3) Poli reali semplici e due poli complessi e coniugati semplici
Il denominatore è fattorizzabile come:
D( s) = ( s + p1 )( s + p1 )( s + p2 )( s + pm ), pi ∈ℜ (i ≥ 2), pi ≠ p j , m = n − 1 .
e quindi:
[ ]
Y ( s) = C( sIn − A) B + D U ( s) + C( sIn − A) x( 0) .
−1 −1
Di particolare interesse è la situazione in cui lo stato iniziale è nullo (x(0) = 0). Risulta:
Y ( s ) = G( s ) U ( s ) ,
dove la matrice (di dimensioni p×m):
[
G( s) = C( sIn − A) B + D
−1
]
prende il nome di funzione di trasferimento del sistema.
Nel caso SISO (m=p=1), la funzione di trasferimento diventa uno scalare e si può scrivere,
sempre a stato iniziale nullo:
Y ( s)
G ( s) = .
U ( s)
1
x2 ( t ) = u( t )
M
Y ( s) 1
y( t ) = x1( t ) ⇒ G ( s) = =
U ( s) Ms2
Oscillatore meccanico
x1( t ) = x2 ( t )
x2 ( t ) =
1
M
( − Kx1( t ) − Dx2 ( t ) + u( t ) )
Y ( s) 1
y( t ) = x1( t ) ⇒ G ( s) = =
U ( s) Ms + Ds + K
2
Serbatoio cilindrico
1
x1( t ) = u( t )
AS
Y ( s) 1
y( t ) = x1( t ) ⇒ G ( s) = =
U ( s) AS s
G (s ) = C (sI n − A)−1 B + D ,
matrice a p righe (quante sono le uscite) e m colonne (quanti sono gli ingressi), funzione della
variabile complessa s.
Si supponga ora di effettuare un cambiamento di variabili di stato:
xˆ (t ) = Tx (t ), det (T ) ≠ 0 .
Il sistema nelle nuove variabili di stato è retto dalle equazioni:
xˆ (t ) = Aˆ xˆ (t ) + Bˆ u(t )
,
y (t ) = Cˆ xˆ (t ) + Dˆ u(t )
dove:
Aˆ = TAT −1 , Bˆ = TB, Cˆ = CT −1 , Dˆ = D .
Calcoliamo la funzione di trasferimento per questo sistema:
( −1
) (
Gˆ (s ) = Cˆ sI n − Aˆ Bˆ + Dˆ = CT −1 sTT −1 − TAT −1 )
−1
TB + D =
[
= CT −1 T (sI n − A)T −1 ]
−1
TB + D = CT −1T (sI n − A)−1 T −1TB + D =
= C (sI n − A)−1 B + D = G (s )
Pertanto l’espressione della funzione di trasferimento non muta al variare della
rappresentazione di stato, ed è quindi proprietà strutturale del sistema dinamico.
[
G( s) = C( sIn − A) B + D .
−1
]
Osserviamo che:
k11 ( s) k12 ( s) k1n ( s)
k ( s ) k22 ( s) k2 n ( s)
1
(sIn − A) =
−1 21 ,
det( sIn − A)
kn1 ( s) kn 2 ( s ) knn ( s)
dove i polinomi kij(s) sono i complementi algebrici della matrice (sIn−A) e hanno, per
costruzione, grado non superiore a n−1 (mentre il determinante a denominatore ha
ovviamente grado n).
Nel formare lo scalare C( sIn − A) B si combinano linearmente i polinomi kij,, ottenendo un
−1
polinomio che non può avere grado maggiore dei singoli polinomi. A questa espressione va
poi sommato D, se il sistema non è strettamente proprio.
Concludiamo quindi che la funzione di trasferimento è razionale (rapporto di polinomi):
N ( s)
G ( s) = ,
D( s)
che il denominatore D(s) ha grado n, mentre per il numeratore:
polinomio di grado ≤ (n − 1), se il sistema è strett. proprio ( D = 0)
N ( s) =
polinomio di grado = n, se il sistema non è strett. proprio ( D ≠ 0)
Si osservi quindi che il grado del numeratore non può mai eccedere quello del denominatore.
Si ricorda inoltre che un polinomio di grado n a coefficienti reali ammette nel piano
complesso n radici, reali o a coppie complesse e coniugate (teorema fondamentale
dell’algebra).
Gli zeri della funzione di trasferimento sono le radici del numeratore N(s) (e quindi sono in
numero minore o uguale a n).
I poli della funzione di trasferimento sono le radici del denominatore D(s) (e quindi sono in
numero uguale a n). I poli, in quanto radici del determinante della matrice (sIn−A), coincidono
con gli autovalori della matrice A.
Queste conclusioni non contemplano esplicitamente il caso in cui numeratore e denominatore
abbiano una o più radici comuni. Nel formare l’espressione della funzione di trasferimento tali
radici si semplificano, per cui il denominatore avrà grado minore di n (e il numeratore grado
minore o uguale a quello del denominatore). In questo caso i poli della funzione di
trasferimento formano un sottoinsieme degli autovalori della matrice A.
Im
j
Re
−2 −1 0
−j
G( s ) = ρ
∏i (s + zi ) .
∏i (s + pi )
dove le produttorie corrono su tutti gli zeri e su tutti i poli, rispettivamente, mentre:
ρ: costante di trasferimento
−zi: zeri
−pi: poli
Si osservi che i parametri zi e pi possono anche essere complessi. Per ottenere una
rappresentazione con solo numeri reali è sufficiente accorpare i termini complessi e coniugati
(a numeratore e a denominatore), nei polinomi di secondo grado a radici complesse. Questi
polinomi, a loro volta sono espressi per mezzo di due parametri particolarmente significativi,
indicati con ζ e ωn:
s 2 + 2ζω n s + ω 2n ,
dove ωn è un numero positivo.
Per comprendere il significato dei due parametri, osserviamo che le radici del polinomio sono:
Im
ωn
−ζωn α Re
ζ = cos(α)
ωn, pulsazione naturale: è il modulo delle due radici, ossia la loro distanza dall’origine.
ζ, smorzamento: è il coseno dell’angolo α formato dalla congiungente l’origine con le
radici, rispetto al semiassse reale negativo
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 68
Poiché la parte reale dei poli vale −ζωn e ωn è un numero positivo, si ha:
ζ>0: due radici nel semipiano sinistro
ζ=0: due radici sull’asse immaginario
ζ<0: due radici nel semipiano destro
Possiamo a questo punto esprimere la funzione di trasferimento per mezzo di soli parametri
reali nella seguente forma:
G( s ) =
µ ∏i (1 + sτi )
sg ∏i (1 + sTi )
dove le produttorie corrono su tutti gli zeri e su tutti i poli diversi da zero, rispettivamente,
mentre:
µ: guadagno
g: tipo
τi: costanti di tempo degli zeri
Ti: costanti di tempo dei poli
Si osservi che il rapporto delle due produttorie valutato in s = 0 è pari a 1. Per ottenere questo
risultato si sono raggruppati gli eventuali poli o zeri in s = 0 nel termine a denominatore sg.
Pertanto g è un numero intero, uguale, se positivo, al numero di poli in s=0, se negativo, al
numero di zeri in s=0 (se è nullo non vi sono né poli né zeri in s=0).
Se g=0, risulta inoltre:
µ = lim G( s) = G( 0) = − CA−1 B + D ,
s→ 0
espressione che prende il nome, come già discusso, di guadagno statico, in quanto
corrisponde al rapporto tra ingresso e uscita all’equilibrio.
Più in generale:
[
µ = lim s g G( s) .
s→ 0
]
Anche questa forma della funzione di trasferimento può essere espressa in termini solo di
parametri reali:
Sia ad esempio:
2s + 1
G ( s) = , u( t ) = sca( t ) .
s2 + 5s + 4
Sappiamo allora che:
1 2s + 1 2s + 1
U ( s) = , Y ( s) = G ( s) U ( s) = =
s (
s s2 + 5s + 4 )s( s + 1)( s + 4)
Imponendo l’uguaglianza dei due numeratori, in particolare nei punti s = 0, s = −1, s = −4, si
ottiene:
4α1 = 1 α1 = 1 4
−3α 2 = −1 ⇒ α 2 = 1 3
12α 3 = −7 α 3 = −7 12
Pertanto:
1 1 7 1 1 7
y( t ) = sca( t ) + e − t − e −4 t = + e − t − e −4 t , t ≥ 0 .
4 3 12 4 3 12
ESEMPIO 1
Si consideri il sistema del secondo ordine:
x1 = −2 x1
− 2 0 0
x 2 = x1 − x 2 + u ⇒ A= , B = , C = [2 3], D = 0 ,
1 − 1 1
y = 2 x1 + 3 x 2
ESEMPIO 2
Si consideri il sistema del secondo ordine:
Si manifesta quindi una cancellazione della radice −1. Si osservi che la variabile di stato x1
non influenza l’uscita del sistema, né direttamente, né indirettamente attraverso la seconda
variabile di stato. La variabile di stato x1 è influenzata dall’ingresso, ma la sua evoluzione non
ha alcun riscontro nell’uscita y.
Nel sistema è quindi presente una “dinamica nascosta”, associata alla prima variabile di stato,
che non partecipa al legame ingresso-uscita e rende il sistema dinamico esternamente di
ordine 1.
ESEMPIO 3
Si consideri la rete elettrica riportata in figura:
u
x1 x2
y
R L L
Dette x1 e x2 le correnti nei due induttori, il sistema dinamico è costituito dalle equazioni:
Lx1 = R(u − x1 − x 2 ) R R R
− −
L , B = L , C = [− R − R ], D = R ,
Lx 2 = R(u − x1 − x 2 ) ⇒ A= L
R R R
− −
y = R(u − x1 − x 2 ) L L L
Per l’analisi del sistema risulta più comodo effettuare il seguente cambiamento di variabili di
stato:
xˆ1 = x1 + x 2
xˆ 2 = x1 − x 2
(
G (s ) = Gˆ (s ) = Cˆ sI n − Aˆ )−1 Bˆ + Dˆ = = LsRLs
+ 2R
.
−−
RO
− −
RO RO
u y
RO
Fig. 23 : Scomposizione canonica di Kalman
4 Le parti non raggiungibili sono indicate con R , quelle non osservabili con O .
ESEMPI
Si riprendano gli esempi del paragrafo precedente. Nel primo esempio risulta:
0 0
K r = [B AB ] = ⇒ det ( K r ) = 0
1 − 1
2 − 1
[
Ko = CT AT C T = ] ⇒ det ( K o ) ≠ 0
3 − 3
Il sistema è quindi completamente osservabile ma non raggiungibile. Sarà quindi
scomponibile in una parte raggiungibile ed osservabile ed una parte non raggiungibile e
osservabile.
Nel secondo esempio risulta:
1 0
K r = [B AB ] = ⇒ det ( K r ) ≠ 0
1 − 1
[
Ko = CT AT C T = ]
0 0
⇒ det ( K o ) = 0
1 − 1
Il sistema è quindi completamente raggiungibile ma non osservabile. Sarà quindi
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 77
scomponibile in una parte raggiungibile ed osservabile ed una parte raggiungibile e non
osservabile.
Per quanto riguarda il terzo esempio, utilizzando le variabili di stato xˆ1 , xˆ 2 , risulta:
R R2
[
Kˆ r = Bˆ ˆ ˆ ]
AB = 2 L
−4
L2 ⇒ det K r = 0
ˆ ( )
0 0
R2
[
Kˆ o = Cˆ T A C =
ˆ T ˆT
]
− R 2
L ⇒ det K o = 0
ˆ ( )
0 0
Il sistema non è quindi né completamente raggiungibile, né completamente osservabile. Sarà
quindi scomponibile in una parte raggiungibile ed osservabile ed una parte non raggiungibile e
non osservabile.
Traendo spunto anche dal terzo esempio, ci si può chiedere se le proprietà di raggiungibilità e
osservabilità dipendano dalla scelta delle variabili di stato.
Si supponga quindi di effettuare un cambiamento di variabili di stato:
xˆ (t ) = Tx (t ), det (T ) ≠ 0 .
Il sistema nelle nuove variabili di stato è caratterizzato dalle matrici:
Aˆ = TAT −1 , Bˆ = TB, Cˆ = CT −1 , Dˆ = D .
La matrice di raggiungibilità per il sistema nelle nuove variabili di stato sarà quindi:
[ Aˆ Bˆ Aˆ Bˆ Aˆ Bˆ ] =
Kˆ r = Bˆ 2 n −1
Poiché T è non singolare, il rango di K̂ r coincide con il rango di Kr. Pertanto il sistema nelle
nuove variabili di stato è completamente raggiungibile se e solo se lo è quello nelle variabili
di stato originarie, ovvero la raggiungibilità è proprietà strutturale.
Analogamente, la matrice di osservabilità per il sistema nelle nuove variabili di stato sarà:
n −1
Kˆ o = Cˆ T Aˆ T Cˆ T =
2
Aˆ T Cˆ T Aˆ T Cˆ T
[
= T −T C T T −T AT T T T −T C T T −T AT T T T −T AT T T T −T C T
(T −T
AT T T T −T AT T T T −T AT T T T −T C T ) ]
n −1
= T −T C T C T = T −T K o
2
AT C T AT C T AT
Poiché T (e quindi T−T) è non singolare, il rango di K̂ o coincide con il rango di Ko. Pertanto il
sistema nelle nuove variabili di stato è completamente osservabile se e solo se lo è quello
nelle variabili di stato originarie, ovvero l’osservabilità è proprietà strutturale.
dove D è lo scalare che lega u(t) a y(t) nella trasformazione d’uscita, mentre N (s ) è di grado
~
inferiore a n. Possiamo quindi concentrarci sulla seguente espressione di G:
bn s n−1 + bn−1 s n−2 + + b2 s + b1
G (s ) = .
s n + a n s n−1 + a n−1 s n−2 + + a 2 s + a1
La forma canonica di raggiungibilità (anche nota come forma canonica di controllo) è la
seguente realizzazione minima:
0 1 0 0 0
0 0 1 0 0
A= , B = ,
0 0 0 1 0
− a − a − a − a 1
1 2 3 n
C = [b1 b2 b3 bn ]
E’ facile verificare, trasformando secondo Laplace le singole equazioni di stato e procedendo
per sostituzione, che la forma canonica di controllo è una realizzazione della funzione di
trasferimento.
dove con * si indicano termini il cui valore è inessenziale. Il determinante di Kr vale 1, per cui
il sistema è completamente raggiungibile. Per quanto osservato prima, il sistema è anche
completamente osservabile, purché la funzione di trasferimento sia ben assegnata (non vi
siano radici in comune tra numeratore e denominatore).
[
Kˆ r = Bˆ Aˆ Bˆ ]
Aˆ 2 Bˆ Aˆ n−1 Bˆ = TK r .
Pertanto la matrice T di trasformazione è data da:
• Calcolare K r e Kˆ r
• Calcolare T = Kˆ r K r −1
Una forma canonica utilizzata in alternativa alla forma canonica di controllo è la forma
canonica di osservabilità (o forma canonica di ricostruzione).
Dato un sistema SISO strettamente proprio di matrici (A, B, C), la sua funzione di
trasferimento, scalare, coinciderà ovviamente con la sua trasposta:
[
G (s ) = C (sI n − A)−1 B = G T (s ) = C (sI n − A)−1 B ]
T
(
= B T (sI n − A)−T C T = B T sI n − AT )
−1
CT .
Posto allora:
~ ~ ~
A = AT , B = C T , C = B T ,
risulta:
( )
~ −1 ~
G (s ) = C sI n − A B ,
~
~ ~ ~
per cui il sistema di matrici ( A, B, C ), che prende il nome di sistema duale del sistema dato,
costituisce una realizzazione di G(s). La forma canonica di osservabilità è la duale della forma
canonica di raggiungibilità:
0 0 0 − a1 b1
1 0 0 − a2 b
~ ~
2
A = 0 1 0 − a3 B = b3 ,
0 0 0 1 − an bn
C = [0 0 0 1].
~
Per risposte canoniche si intendono le risposte dei sistemi dinamici ai segnali cosiddetti
canonici (impulso, scalino, rampa), ovvero quei segnali utilizzabili come test per evidenziare
le proprietà dinamiche del sistema. Ci concentreremo sui sistemi del primo e secondo ordine
in quanto rappresentativi dei modelli di prima approssimazione di larga parte dei sistemi
fisici.
Sul tracciato di una generica risposta allo scalino potremo definire alcuni parametri
caratteristici:
y(t)
S ±ε%
y∞
0.9y
∞
0.1y Taε t
∞
Ts
• Tempo di salita Ts: è il tempo impiegato dalla risposta a passare dal 10% al 90% del
valore di regime.
• Tempo di assestamento al (100-ε)% Taε: è il tempo impiegato dalla risposta ad entrare
definitivamente in una fascia compresa tra ±ε% del valore di regime.
• Sovraelongazione percentuale massima SE: è l’escursione massima della risposta
rispetto al valore di regime, rapportata in percentuale al valore di regime stesso:
S max{y( t )} − y∞
SE = 100 = 100 .
y∞ y∞
L’espressione più generale della funzione di trasferimento per un sistema del primo ordine
(ossia con un solo polo) è la seguente:
µ 1 + sτ
G ( s) = .
s g 1 + sT
(
y( t ) = µ 1 − e − t T
), t≥0 .
A seconda del segno di T l’andamento di y risulta molto diverso 5:
y T>0 y T<0
t
T t
5Qui e nel seguito si assumerà, senza alcuna perdita di generalità, il parametro µ positivo.
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 84
Quando T>0, la risposta y si assesta su un valore finito, mentre quando T<0 la risposta diverge
all’infinito. Si osservi che il sistema di funzione di trasferimento G(s) presenta un polo per
s=−1/T. Pertanto il sistema risulta asintoticamente stabile per T>0, instabile per T<0.
Im Im
Re Re
−1/T −1/T
T>0 T<0
Considerando solo il caso asintoticamente stabile (T>0), si può calcolare il valore limite (per
t→∞) della risposta allo scalino con il teorema del valore finale:
µ 1
lim y( t ) = lim [ sY ( s) ] = lim s = µ.
t →∞ s→0 s → 0 1 + sT s
Pertanto la risposta allo scalino tende al guadagno µ del sistema: in altre parole il rapporto tra
il valore limite dell’uscita ed il valore limite dell’ingresso (che in questo caso vale 1, essendo
l’ingresso uno scalino), è pari al guadagno del sistema. Ciò costituisce una circostanza
generale.
La forma del transitorio dipende invece solo dalla costante di tempo T. All’istante iniziale
(t=0) la derivata di y vale µ/T: pertanto inizialmente la curva è tangente alla retta che passa per
l’origine e che intercetta la retta orizzontale di ordinata µ (ossia la retta a cui tende la
risposta), in corrispondenza dell’istante t=T (fig. 1). Ne consegue che il transitorio è tanto più
veloce quanto più piccolo è il valore della costante di tempo T. Si può verificare che la
risposta y raggiunge praticamente (al 98÷99%) il valore di regime dopo un tempo pari a 4÷5
volte la costante di tempo T. Si osservi che da queste considerazioni emerge anche con molta
evidenza un metodo grafico per tracciare l’andamento approssimato della risposta allo scalino.
Studiamo anche la risposta all’impulso ( u( t ) = imp( t ) ⇒ U ( s) = 1 ):
µ µ 1
Y ( s) = G ( s) U ( s) = = .
1 + sT T s + 1/ T
Antitrasformando:
µ −t T
y( t ) = e , t≥0 .
T
Si noti che la risposta all’impulso risulta uguale alla derivata rispetto al tempo della risposta
allo scalino (circostanza generale).
Nel caso di sistema asintoticamente stabile (T > 0) si ottiene l’andamento di figura:
T t
g =1
µ
G ( s) = .
s
Il sistema ha un polo in s=0: è pertanto semplicemente stabile.
Studiamo la risposta allo scalino ( u( t ) = sca( t ) ⇒ U ( s) = 1 s ):
µ1 µ
Y ( s) = G ( s) U ( s) = = .
s s s2
Antitrasformando:
y( t ) = µ ram( t ) .
1 t
g=0
1 + sτ
G ( s) = µ
1 + sT
Studiando la risposta allo scalino si perviene alla seguente espressione:
τ
y( t ) = µ1 + − 1e −t T , t ≥ 0 .
T
Al variare del valore relativo di τ e T (e quindi della posizione relativa del polo e dello zero)
la risposta allo scalino cambia sensibilmente (si considera solo il caso asintoticamente stabile,
T>0):
Im
0<τ<T
µτ/T
Re
−1/τ −1/T
T t
y
µτ/T
Im
0<T<τ µ
Re
−1/T −1/τ
T t
y
µ
Im
τ<0<T
T t
Re
−1/T −1/τ
µτ/T
Uno zero nel semipiano sinistro “anticipa” la risposta rispetto al caso di sistema privo di zero,
nel senso che la risposta stessa si porta inizialmente ad un valore diverso da zero, dello stesso
segno del valore di regime.
Uno zero nel semipiano destro “ritarda” la risposta rispetto al caso di sistema privo di zero,
nel senso che la risposta stessa si porta inizialmente ad un valore diverso da zero, di segno
opposto al valore di regime (risposta inversa). Questo tipo di comportamento è tipico dei
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 88
sistemi con zeri nel semipiano destro, che per ragioni che saranno chiare più avanti nel corso,
prendono anche il nome di sistemi a fase non minima.
g =1
1 + sτ
G ( s) = µ
s
Im
τ>0
µ
Re µτ
−1/τ
1 t
Im
τ<0 1 t
µ
Re µτ
−1/τ
g = −1
s
G ( s) = µ
1 + sT
y
µ/T
Im
Re
−1/T
T t
Per i sistemi del secondo ordine (che presentano cioè due poli) ci limiteremo ad esaminare
alcuni casi particolari, rinunciando alla casistica completa.
[( )] [
y(0 ) = lim [sL ( y)] = lim s s 2Y (s ) − y (0 ) = lim s 3Y (s ) = lim
s →∞ s →∞ s →∞
] µs 2
=
µ
s → ∞ (1 + sT1 )(1 + sT2 ) T1T2
>0
La durata del transitorio può essere facilmente legata alle due costanti di tempo T1 e T2 solo se
i due valori sono molto diversi tra loro: in tal caso, infatti, conta solo il valore della costante di
tempo più grande.
Se, ad esempio T1 >> T2, allora:
[
y( t ) ≈ µ 1 − e − t T1
], t ≥ 0.
y
µ
transitorio veloce
dovuto a T 2
T1 t
s →∞ s →∞ s →∞
[ ]
y (0) = lim [sL ( y )] = lim [s(sY (s ) − y (0))] = lim s 2Y (s ) = lim µs
s →∞
1 + sτ µτ
=
(1 + sT1 )(1 + sT2 ) T1T2
mentre in base al teorema del valore finale:
1 + sτ
y( ∞) = lim [ sY ( s) ] = lim µ =µ .
s→0 s → 0 ( 1 + sT1 )( 1 + sT2 )
La risposta parte quindi da zero, con tangente rivolta verso l’alto per τ>0, verso il basso per
τ<0. La risposta tende poi al valore µ.
Qualitativamente, gli andamenti della risposta allo scalino saranno:
y T1< T < τ
2
µ
T <τ<T oppure
1 2
0<τ<T <T
1 2
y
µ
τ<0
Si osservi il tratto di risposta inversa nel caso di zero nel semipiano destro (τ < 0).
Im
ωn
−ζωn α Re
ζ = cos(α)
s →∞ s →∞ s →∞
[
y (0) = lim [sL ( y )] = lim [s(sY (s ) − y (0))] = lim s 2Y (s ) = lim ] µω2n s
s →∞ s 2 + 2ζω s + ω2
=0
n n
s →∞ s →∞
[( )] s →∞
[
y(0) = lim [sL ( y)] = lim s s 2Y (s ) − y (0) = lim s 3Y (s ) = lim ] µω2n s 2
s → ∞ s + 2ζω s + ω
2 2
= µω2n > 0
n n
[
y( t ) = µ 1 − cos( ωn t ) ]
ossia una cosinusoide di pulsazione ωn:
y T = 2π/ω
n
2µ
y
2µ −ζω t
µ(1+e n
)
y T = 2π/ω*
M n
−ζω t
µ(1−e n
) t
80
70
60
50
40
30
20
10
0
0 0.2 0.4 0.6 0.8 1
ζ
Per fare in modo che la sovraelongazione percentuale massima sia inferiore ad un valore
assegnato, occorrerà quindi che i poli del sistema appartengano ad un determinato settore del
semipiano sinistro del piano complesso (come quello tratteggiato in figura):
Im
Re
Il tempo di assestamento può invece essere determinato con buona approssimazione (per
eccesso) facendo riferimento anziché alla risposta ad uno dei suoi inviluppi. Volendo quindi
calcolare ad esempio il tempo di assestamento al 99% (Ta1) , si imporrà:
( )
µ 1 − e −ζω nTa1 = 0.99µ ⇒ e −ζω nTa1 = 0.01 ⇒ ζω n Ta1 = ln 100
e quindi:
ln 100 4.6
Ta1 = ≈ .
ζω n ζω n
Il tempo di assestamento risulta quindi inversamente proporzionale al modulo della parte
reale dei poli. Per limitare il tempo di assestamento occorrerà quindi che i poli del sistema
siano caratterizzati da un prodotto ζωn sufficientemente grande, ossia che appartengano ad un
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 95
semipiano incluso nel semipiano sinistro del piano complesso sufficientemente lontano
dall’asse immaginario (come quello tratteggiato in figura):
Im
Re
Volendo contenere sia la sovraelongazione sia il tempo di assestamento, i poli della funzione
di trasferimento dovranno trovarsi in una regione del piano complesso intersezione delle due
regioni tratteggiate nelle precedenti figure.
ϕ/ω
T = 2π/ω
Risposta in frequenza
Si definisce risposta in frequenza la seguente funzione complessa della variabile reale ω:
Esempio
Sia:
10
G ( s) = , u( t ) = 2 sin( 5t + 0.3)
1+ s
Il sistema è asintoticamente stabile, per cui il teorema è applicabile. L’espressione della
risposta in frequenza è la seguente:
G( jω) =
10
.
1 + jω
Siamo interessati a valutare la risposta in frequenza in corrispondenza della pulsazione ω=5,
ed in particolare il modulo e la fase del numero complesso risultante:
G( j5) =
10 10 10 10
= = = = 1961
.
1 + j5 1 + j5 1 + 25 26
Im
Re
G(jω2)
G(jω1)
Diagrammi Cartesiani
Si tratta di una coppia di diagrammi, che rappresentano il modulo e la fase della risposta in
frequenza rispetto alla pulsazione ω:
|G(jω)|
arg G(jω)
I diagrammi di Bode sono una coppia di diagrammi Cartesiani della risposta in frequenza, in
cui le scale degli assi dell’ascissa e dell’ordinata sono scelte secondo un opportuno criterio
che facilita il tracciamento dei diagrammi.
Sia nel diagramma del modulo che nel diagramma della fase l’asse delle ascisse (ossia l’asse
delle pulsazioni) è in scala logaritmica. La distanza tra due generici punti che rappresentano
le pulsazioni ω1 e ω2 è proporzionale alla differenza tra i logaritmi di ω1 e ω2. In altre parole,
date quattro pulsazioni ω1, ω2, ω3 e ω4 tali che:
ω2 ω4
= ,
ω1 ω3
la distanza sulla scala logaritmica tra ω1 e ω2 è uguale alla distanza tra ω3 e ω4:
ω1 ω2 ω3 ω4 ω
In particolare la distanza tra due pulsazioni aventi rapporto pari a dieci prende il nome di
decade:
decade
Fig. 51 : Decadi
Nel diagramma del modulo si rappresenta sull’asse delle ordinate il modulo in decibel, ossia
il logaritmo in base 10 del modulo, moltiplicato per il fattore 20:
G( jω) = 20 log10 G( jω) .
dB
I valori del modulo in decibel vengono poi rappresentati su una scala lineare. Pertanto il
diagramma del modulo viene tracciato su una carta semilogaritmica:
pulsazione (rad/s)
Nel diagramma della fase si rappresenta sull’asse delle ordinate la fase della risposta in
frequenza in gradi, su scala lineare. Anche questo diagramma va quindi tracciato su carta
semilogaritmica:
fase in gradi
pulsazione (rad/s)
µ ∏i (1 + sτ i )
G ( s) =
∏k (1 + sτ k )
,
sg
il modulo della risposta in frequenza assume l’espressione:
µ ∏i 1 + jωτ i
G( jω) = .
jω
g
∏k 1 + jωτ k
Il modulo in decibel si scriverà quindi come:
Guadagno
G ( s) = µ ⇒ G( jω)
10
= 20 log10 µ |µ|>1
dB 5
Esempi: dB
-5
µ = 100 ⇒ µ dB = 40 -10
µ = −10 ⇒ µ dB = 20 |µ|<1
-15
µ = 01 ⇒ µ dB = −20
0.1 1 10
. ω (rad/s)
G( jω)
1 1
G ( s) = g ⇒ = 20 log10 g = −20 g log10 ω 20 g = −1
s dB
jω
0 g=0
⇒ zero pendenza +1
10
-10
Per facilitare il tracciamento a mano si introducono i diagrammi polo
pendenza −1
-20
asintotici.
-30
20 log10 1 = 0 ω ≤ 1 τ 0.1 1 10
G( jω)
1/|τ|
ω (rad/s)
≈ Fig 56 : Diagramma del modulo di
dB ±20 log10 ωτ ω > 1 τ poli/zeri reali
L’errore massimo tra diagramma vero ed asintotico si ha per ω=1/|τ|, e vale 20 log10 2 ≈ 3dB .
Il diagramma è del tutto indipendente dal segno di τ.
Se vi sono più zeri (poli) reali coincidenti, i diagrammi si sommano.
ω2
2
2 ω
2
G( jω) = ±20 log10 1 − 2 + 4ζ
dB ωn ωn 2
I diagrammi asintotici si tracciano sostituendo ai due zeri (poli) due zeri (poli) reali
coincidenti alla pulsazione ωn. L’approssimazione è buona solo per valori di |ζ| elevati (|ζ| >
0.5). Il diagramma non dipende dal segno di ζ.
Zeri Poli
60 40
Im ζ=0
40 20
Risonanza
ωn ζ=cos(α) 20 0
|ζ|
|ζ|=1
|ζ|
α Re dB |ζ|=1 dB
0 -20
Antirisonanza
-20 -40
ζ=0
-40 -60
0.1 ωn 1 10 0.1 ωn 1 10
ω (rad/s) ω (rad/s)
Sommando i singoli addendi si ottiene il diagramma asintotico di Bode del modulo della
risposta in frequenza:
40
(3)
(1)
20
0
dB
-20
(2)
-40
(4)
-60
10 -1 10 0 10 1 10 2 10 3
rad/s
Per il tracciamento veloce del diagramma asintotico del modulo, ci si può servire delle
seguenti regole pratiche:
1. A bassa frequenza (ω → 0) il diagramma giace sulla retta di pendenza −g, passante per il
[
punto ω = 1; G dB = µ dB . ]
2. Ad ogni pulsazione corrispondente a p poli (zeri) reali, la pendenza diminuisce (aumenta)
di p unità.
3. Ad ogni pulsazione corrispondente alla pulsazione naturale di p coppie di poli (zeri)
complessi e coniugati, la pendenza diminuisce (aumenta) di 2p unità.
4. La pendenza finale è pari al numero degli zeri meno il numero dei poli (regola di verifica).
µ ∏i (1 + sτ i )
G ( s) =
∏k (1 + sτ k )
,
sg
la fase della risposta in frequenza assume l’espressione:
Guadagno
0 µ≥0
50
−180 µ < 0
0
-50
Si tratta di una retta orizzontale. Gradi
-100
-150
µ<0
-200
0.1 1 10
ω (rad/s)
( jω) g -100 g = +1
g = +2
Si tratta di una retta orizzontale. Ad esempio un polo -200
0.1 1 10
ω (rad/s)
nell’origine (g=1), ossia un integratore, dà un contributo di
fase costante pari a −90°. Fig. 60:Diagramm della fase di
zeri/poli in s=0
vero
Per facilitare il tracciamento a mano si introducono i
0
diagrammi asintotici. Gradi
vero
∠1 = 0 ω ≤ 1 τ
∠G( jω) ≈
-50
zero, τ<0
-100
0.01 0.1 1/|τ| 1 10 100
ω (rad/s)
Il diagramma dipende dal segno di τ. Infatti:
Fig. 61 : Diagramm della fase di
90° τ > 0
∠( jωτ ) =
zeri/poli reali
−90° τ < 0
Se vi sono più zeri (poli) reali coincidenti, i diagrammi si sommano.
Im
ζ=0
|ζ|
150 -50
ωn ζ=cos(α) |ζ|=1
100 -100
α Re
Gradi Gradi |ζ|
50 -150 |ζ|=1
ζ=0
0 -200
0.01 0.1 ωn 1 10 100 0.01 0.1 ωn 1 10 100
ω (rad/s) ω (rad/s)
( 3) ( 2) ( 4)
( 1)
∠G( jω) = ∠10+ ∠ + ∠( 1 − jω) + ∠
1 1
jω (1 + j 01. ω) 2
Sommando i singoli addendi si ottiene il diagramma asintotico di Bode della fase della
risposta in frequenza:
90
(1)
0
(2) (3)
-90
gradi
(4)
-180
-270
-360
10 -1 10 0 10 1 10 2 10 3
rad/s
Per il tracciamento veloce del diagramma asintotico della fase, ci si può servire delle
seguenti regole pratiche:
1. A bassa frequenza (ω → 0) il diagramma giace sulla retta orizzontale di ordinata
∠µ − g90°.
2. Ad ogni pulsazione corrispondente a p zeri reali nel semipiano sinistro o p poli reali nel
semipiano destro, il diagramma ha un salto positivo di p90°.
3. Ad ogni pulsazione corrispondente a p zeri reali nel semipiano destro o p poli reali nel
semipiano sinistro, il diagramma ha un salto negativo di p90°.
4. Ad ogni pulsazione corrispondente alla pulsazione naturale di p coppie di zeri complessi e
coniugati nel semipiano sinistro o p coppie di poli complessi e coniugati nel semipiano
destro, il diagramma ha un salto positivo di p180°.
5. Ad ogni pulsazione corrispondente alla pulsazione naturale di p coppie di zeri complessi e
coniugati nel semipiano destro o p coppie di poli complessi e coniugati nel semipiano
sinistro, il diagramma ha un salto negativo di p180°.
Per i sistemi dinamici lineari asintoticamente stabili si è visto che la risposta in frequenza
consente di calcolare la risposta a transitorio esaurito a ingressi sinusoidali. Questo risultato si
può estendere a categorie di ingressi più generali.
Ingressi periodici
Si consideri un ingresso periodico u(t):
u( t + T ) = u( t ), ∀t .
Sotto ipotesi molto generali, tra cui l’assoluta integrabilità nel periodo,
T
∫0 u( t ) dt < ∞ ,
con:
Yn = G( jnω 0 ) Un
.
ψ n = ϕ n + ∠G( jnω 0 )
In altre parole il teorema della risposta in frequenza vale per tutte le sinusoidi in cui è
scomponibile il segnale di ingresso.
Ingressi aperiodici
Si consideri un ingresso aperiodico u(t):
∃/ T : u( t + T ) = u( t ), ∀t .
Sotto ipotesi molto generali, tra cui l’assoluta integrabilità del segnale,
∞
∫0 u( t ) dt < ∞ ,
con:
Y (ω) = G ( jω)U (ω)
.
ψ (ω) = ϕ(ω) + ∠G ( jω)
In altre parole il teorema vale per tutte le sinusoidi in cui è scomponibile il segnale di
ingresso.
La risposta in frequenza consente quindi di calcolare la risposta a qualsiasi ingresso, poiché
determina come si modificano le componenti armoniche dell’ingresso. In questo senso un
sistema dinamico asintoticamente stabile si può vedere sempre come un filtro.
Particolare rilevanza assume una tipologia di filtro che prende il nome di filtro passabasso.
Si tratta di un sistema dinamico asintoticamente stabile, che per semplicità considereremo a
guadagno unitario, caratterizzato da un modulo della risposta in frequenza del tipo di quello
riportato in figura:
|G(jω)|dB
ωb ω
Se risulta:
G( jω ) dB < 3, ∀ω ,
ossia se il sistema non presenta risonanze, definiamo banda passante del filtro l’insieme di
pulsazioni:
{ω: G( jω) dB }
> −3 = [ 0, ω b ] ,
U Y
G(s)
Fig. 65 : Un blocco
Il nodo sommatore
L’uscita del nodo è data dalla somma algebrica dei segnali che entrano nel nodo, ciascuno
preso con il proprio segno (se non è indicato il segno, si assume per convenzione il segno
positivo).
X
W = X+Y−Z
Y+ + W
−
Z
Fig. 66 : Un nodo sommatore
Il punto di diramazione
Tutti i segnali uscenti da un punto di diramazione sono uguali al segnale entrante nel punto.
Y
X Y=X
W W=X
Z=X
Z
Fig. 67 : Un punto di diramazione
La funzione di trasferimento dall’ingresso del primo sistema all’uscita del secondo si ottiene
come segue:
Y ( s) = Y2 ( s) = G2 ( s)U 2 ( s) = G2 ( s) Y1( s) = G2 ( s) G1( s)U1( s) = G2 ( s) G1( s)U ( s)
Pertanto:
Y ( s)
= G1( s) G2 ( s)
U ( s)
La funzione di trasferimento del sistema costituito dalla cascata di due sottosistemi è quindi
data dal prodotto delle due funzioni di trasferimento parziali.
Sistemi in parallelo
Due sistemi si dicono in parallelo se hanno lo stesso ingresso, mentre le loro uscite si
sommano (algebricamente) per determinare l’uscita del sistema risultante.
Graficamente si ha la seguente situazione:
Y1
G1(s)
U +Y
+
Y2
G2(s)
Sistemi in retroazione
Due sistemi si dicono connessi in retroazione quando l’uscita del primo è l’ingresso del
secondo, mentre l’uscita del secondo si somma o si sottrae ad un ingresso esterno per
determinare l’ingresso del primo sistema.
Si hanno quindi due possibili schemi di connessione:
U + U1 Y1 Y
G1(s)
+
Y2 U2
G2(s)
U + U1 Y1 Y
G1(s)
−
Y2 U2
G2(s)
In entrambi i casi:
G1: funzione di trasferimento della linea di andata
G2: funzione di trasferimento della linea di retroazione
La regola per trovare la funzione di trasferimento del sistema complessivo (sistema in anello
chiuso) è quindi la seguente :
Y ( s) f.d.t. linea di andata − : retroazione positiva
=
U ( s) 1 f.d.t. d' anello + : retroazione negativa
Sistemi in cascata
Siano:
N 1 ( s) N ( s)
G1( s) = , G2 ( s) = 2 ,
D1( s) D2 ( s)
le funzioni di trasferimento dei due sistemi in cascata, espresse come rapporti di polinomi.
La funzione di trasferimento del sistema complessivo sarà quindi:
N 1 ( s) N 2 ( s)
G( s) = G1( s) G2 ( s) = .
D1( s) D2 ( s)
Il denominatore di G(s) è dato dal prodotto dei denominatori delle funzioni di trasferimento
parziali: ne consegue che i poli del sistema complessivo sono la riunione dei poli dei due
sottosistemi in cascata. Pertanto:
Un sistema costituito dalla cascata di due o più sottosistemi è asintoticamente stabile se e
solo se lo sono tutti i sottosistemi che compongono la cascata.
Il precedente ragionamento non prevede la possibilità che vi siano radici di N1 uguali a radici
di D2, o radici di N2 uguali a radici di D1, ossia che intervengano cancellazioni tra poli di una
funzione di trasferimento e zeri dell’altra. Se viceversa tali cancellazioni avvengono, occorre
porre attenzione al fatto che i poli cancellati siano o meno a parte reale negativa (ossia nel
semipiano sinistro).
Se infatti tutti i poli cancellati sono nel semipiano sinistro, essi non hanno alcun ruolo nel
determinare l’asintotica stabilità del sistema complessivo, che viene ovviamente a dipendere
dai poli non cancellati. Se invece almeno uno dei poli cancellati non è nel semipiano sinistro,
mentre tutti i poli non cancellati lo sono, si sarebbe indotti a ritenere che il sistema risultante
sia asintoticamente stabile (il denominatore della funzione di trasferimento ottenuto a seguito
delle cancellazioni presenterebbe tutte radici nel semipiano sinistro). In realtà una situazione
di questo tipo corrisponderebbe alla presenza di una instabilità (o, comunque, non asintotica
stabilità) interna: a seguito di una sollecitazione impulsiva all’ingresso, seppure la variabile di
uscita del sistema si riporta, esaurito il transitorio, al valore di riposo, altre variabili interne
possono crescere indefinitamente, o comunque non ritornare al valore di riposo.
Concludiamo quindi che la precedente affermazione sulla stabilità dei sistemi connessi in
cascata è in realtà valida, facendo riferimento al concetto di stabilità interna, anche in
presenza di cancellazioni tra poli e zeri.
Sistemi in retroazione
Siano:
N 1 ( s) N ( s)
G1( s) = , G2 ( s) = 2 ,
D1( s) D2 ( s)
le funzioni di trasferimento dei due sistemi in retroazione. La funzione di trasferimento del
sistema complessivo sarà quindi:
N 1 ( s)
G1( s) D1( s) N1( s) D2 ( s)
G ( s) = = = ,
1 G1( s) G2 ( s) N1( s) N 2 ( s) D1( s) D2 ( s) N1( s) N 2 ( s)
1
D1( s) D2 ( s)
con l’opportuno segno a seconda che si tratti di retroazione positiva o negativa.
Pertanto i poli del sistema in anello chiuso sono le radici del denominatore:
D1( s) D2 ( s) N1( s) N 2 ( s)
e non hanno nessuna relazione precisa con le radici dei polinomi D1 e D2, ossia con i poli dei
due sottosistemi interconnessi. Pertanto:
Per un sistema costituito dalla retroazione di due sottosistemi non si può affermare nulla
sulla asintotica stabilità del sistema in anello chiuso a partire dalla asintotica stabilità o
meno dei due sistemi interconnessi.
Esaurita la trattazione dei sistemi dinamici, si torna ora al problema di controllo, che aveva
dato origine a tale studio. In figura è riportata la struttura tipica di un sistema di controllo in
retroazione:
dA dp
y° u m y
C A S
c
T
dT
dove:
S: sistema sotto controllo (o processo)
T: trasduttore
A: attuatore
C: controllore (o regolatore)
6Indicheremo con lo stesso simbolo una variabile funzione del tempo e la sua trasformata di Laplace.
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 117
Trasduttore
E’ lo strumento che misura una grandezza fisica del sistema sotto controllo (la variabile
controllata y) e ne invia la misura c al controllore, in una forma compatibile con la sua
tecnologia. E’ generalmente caratterizzabile con due proprietà, precisione e ripetibilità.
Si può distinguere tra precisione statica (a transitorio esaurito il segnale che esprime la misura
della grandezza è proporzionale al valore assunto dalla grandezza stessa) e precisione
dinamica (velocità del transitorio con il quale lo strumento reagisce a variazioni nella
grandezza misurata). La ripetibilità invece è la proprietà per cui il comportamento del
trasduttore, sia statico che dinamico, non varia nel tempo.
Se il comportamento dinamico del trasduttore è approssimabile a quello di un sistema
dinamico lineare, la relazione che intercorre tra le trasformate della grandezza controllata y e
della misura c è esprimibile per mezzo di una funzione di trasferimento e può essere affetta da
un disturbo:
c(s) = T(s) y(s) +dT(s)
Se il trasduttore è ripetibile, T(s) non varia nel tempo. In tal caso è anche possibile individuare
un andamento desiderato della misura c°, elaborando con un sistema di funzione di
trasferimento T(s) l’andamento desiderato y°:
c°(s) = T(s) y°(s).
Attuatore
L’attuatore traduce l’azione di controllo elaborata dal controllore, ed espressa dalla variabile
di controllo u, in un’azione efficace sulla variabile manipolabile m. Ad esso è quindi di norma
associato uno stadio di amplificazione di potenza ed eventualmente di conversione di potenza
(si pensi ad un motore elettrico che converte potenza elettrica in potenza meccanica).
Anche per gli attuatori ipotizzeremo un comportamento dinamico lineare affetto da disturbo,
per cui:
m(s) = A(s) u(s) +dA(s).
Controllore
Il controllore riceve in ingresso la misura c della variabile controllata ed il relativo segnale di
riferimento c°. Dovendo rendere questi due segnali quanto più possibile simili, è naturale che
il controllore agisca sulla loro differenza, ossia sull’errore ec = c° − c. Ipotizzeremo che anche
il controllore abbia un comportamento dinamico lineare, per cui si avrà:
u(s) = R(s) ec(s).
Ipotizzeremo le funzioni di trasferimento P(s), H(s), T(s) e A(s) date, insieme con l’andamento
del segnale di riferimento y°. L’incognita del problema sarà la funzione di trasferimento R(s).
Lo schema a blocchi di Fig. 73 può essere semplificato osservando che l’effetto dei due
disturbi dp e dA in linea di andata equivale all’effetto di un unico disturbo d riportato
direttamente sull’uscita del processo:
d(s) = P(s) dA(s) + H(s) dp(s).
Inoltre osserviamo che:
[ ]
ec ( s) = c o ( s) − c( s) = T ( s) y o ( s) − T ( s) y( s) − dT ( s) = T ( s) y 0 ( s) − y( s) − n( s) ,
dove:
n( s) = T ( s) −1 dT ( s) .
Si ottiene quindi lo schema a blocchi riportato di seguito:
d
y° + + +y
T(s) R(s) A(s) P(s)
−
+ +
n
Fig. 74 : Prima elaborazione del sistema di controllo
A questo punto, sfruttando la commutatività del prodotto tra funzioni di trasferimento, si può
ulteriormente semplificare lo schema a blocchi:
d
y° + + +y
R(s) G(s)
−
+ +
n
Fig. 75 : Seconda elaborazione del sistema di controllo
con:
G(s) = T(s) P(s) A(s).
Infine, una terza elaborazione porta al seguente schema:
+ +
n
Fig. 76 : Terza elaborazione del sistema di controllo
dove:
L(s) = R(s) G(s).
Si osservi che L(s) è la funzione di trasferimento d’anello del sistema.
L’obiettivo ideale y ≡ y° non è realizzabile, a causa dei limiti connessi alla dinamica del
sistema sotto controllo, dell’attuatore e del trasduttore. Si definiscono allora una serie di
requisiti che il progetto del controllore dovrà soddisfare:
+ +
n
Fig. 77 : Sistema di controllo
Essendo la stabilità una proprietà del sistema, indipendente dagli ingressi, possiamo
considerare il sistema di controllo privo dei disturbi:
y° + y
L(s)
−
Esempio
Sia
s2 − s + 1
L( s) = .
s3 + s2 + s + 1
Poiché il polinomio caratteristico in anello chiuso:
χ ( s) = s 2 − s + 1 + s 3 + s 2 + s + 1 = s 3 + 2 s 2 + 2
non soddisfa la condizione necessaria perché le sue radici abbiano tutte parte reale negativa, il
sistema in anello chiuso non è asintoticamente stabile.
Se nel formare il prodotto L(s) tra R(s) e G(s) intervengono cancellazioni tra poli (o zeri) di
R(s) e zeri (o poli) di G(s), i poli cancellati non compaiono più come radici del polinomio
caratteristico. Ricordando tuttavia la discussione condotta precedentemente riguardo gli effetti
delle cancellazioni tra poli e zeri sulla stabilità dei sistemi interconnessi, osserviamo che, se i
poli cancellati non hanno parte reale negativa, il sistema nel suo complesso non può dirsi
asintoticamente stabile, dal momento che nasce una instabilità (o, comunque, una non
asintotica stabilità) interna.
Poiché zeri e poli della funzione di trasferimento G(s) sono da ritenersi assegnati, le
considerazioni precedenti conducono alle seguenti conclusioni:
a) Se il sistema sotto controllo G(s) ha un polo a parte reale positiva o nulla, tale polo non
può essere cancellato da un corrispondente zero di R(s).
b) Se il sistema sotto controllo G(s) ha uno zero a parte reale positiva o nulla, tale zero non
può essere cancellato da un corrispondente polo di R(s).
Il criterio di Nyquist è un criterio grafico di stabilità molto generale e di più immediata utilità
del criterio del polinomio caratteristico ai fini della sintesi del controllore.
In questo corso ci si limiterà a dare l’enunciato del criterio, senza entrare in ulteriori
approfondimenti.
Il criterio di Nyquist si basa sul tracciamento del cosiddetto diagramma di Nyquist associato
alla funzione di trasferimento d’anello L(s): si tratta del diagramma polare della risposta in
frequenza di L, orientato nel senso delle ω crescenti, cui si aggiunge il simmetrico rispetto
all’asse reale del piano complesso. Occorre poi introdurre due quantità:
Pd: numero di poli a parte reale strettamente positiva di L(s)
N: numero di giri compiuti dal diagramma di Nyquist intorno al punto −1 dell’asse reale,
contati positivamente in senso antiorario. Se il diagramma passa per il punto −1, N si dice
non definito.
Il criterio afferma che il sistema in anello chiuso è asintoticamente stabile se e solo se N è
ben definito e risulta:
N = Pd
Esempio
Sia:
10
L( s) = .
( 1 + s) 2
Il diagramma polare si traccia sulla base dei diagrammi di Bode asintotici (il modulo parte da
10 e decresce monotonicamente, la fase parte da 0 e decresce monotonicamente fino a −180°).
Dal diagramma polare è immediato tracciare il diagramma di Nyquist:
4
punto -1
2
Im
-2
diagramma polare
-4
-6
-8
-2 0 2 4 6 8 10
Re
Se invece:
10
L( s) = ,
( 1 + s) 3
il diagramma di Nyquist qualitativo si può tracciare di nuovo facilmente (si osservi che ora la
fase della risposta in frequenza termina con il valore −270°).
4
punto -1
2
Im
-2
diagramma polare
-4
-6
-8
0 5 10
Re
Anche in questo caso Pd=0, mentre per determinare il valore di N occorre stabilire dove si
trova il punto P in cui il diagramma attraversa l’asse reale. Tale punto può essere
caratterizzato come quello in cui la parte immaginaria della risposta in frequenza si annulla o
come quello in cui la fase della risposta in frequenza vale −180°. Seguendo quest’ultima
strada, e denominando ωp la pulsazione cui è associato il punto P, ricaviamo ωp
dall’equazione:
( ) ( )
∠L jω p = −180° ⇒ − 3∠ 1 + jω p = −180° ⇒ arctan ω p = 60° ⇒ ω p = 3 . ( )
Poiché:
il punto P si trova a sinistra del punto −1, attorno al quale il diagramma compie quindi due
giri in senso orario. Pertanto N = −2 ≠ Pd ed il sistema in anello chiuso non è asintoticamente
stabile.
Per verifica, osserviamo che il polinomio caratteristico in anello chiuso è il seguente:
χ( s) = 10 + ( 1 + s) 3 = s3 + 3s2 + 3s + 11,
ed ha due radici:
s1,2 = 0.07 ± j186
. , s3 = −315
.
nel semipiano destro.
Il criterio di Bode afferma che il sistema in anello chiuso è asintoticamente stabile se e solo
se il guadagno d’anello ed il margine di fase sono entrambi positivi:
µ L > 0
φ m > 0
Esempio
Sia:
10
L( s) = .
( 1 + s) 2
Il diagramma di Bode asintotico del modulo di L è riportato in figura:
20
10
0
dB
-10
-20
-30
10 -1 10 0 10 1
ω (rad/s)
La pulsazione critica vale ωc ≈ 3 rad / s. La fase critica può essere calcolata analiticamente.
La formula che si può utilizzare nel caso generale (assumendo poli e zeri reali in L(s)) è la
seguente:
φc = ∠L( jωc ) = ∠µ L − g L 90° + ∑i ∠(1 + jωc τi ) − ∑k ∠(1 + jωc τ k ) =
ω ω
= ∠µ L − g L 90° + sgn (τi )∑i arctan c − ∑k arctan c
ω zi ω pk
dove τi e τk sono le costanti di tempo degli zeri e dei poli di L(s) (queste ultime
necessariamente positive per le ipotesi di applicabilità del criterio di Bode), mentre ωzi e ωpk
sono le relative pulsazioni.
Risulta nel nostro caso
ω
φc = −2 arctan c = −2 arctan(3) = −2 × 72° = −144° .
1
Il margine di fase è quindi:
φ m = 180°− φ c = 36°> 0 .
Poiché anche il guadagno d’anello (pari a 10) è positivo, il sistema in anello chiuso è
asintoticamente stabile, coerentemente con quanto determinato con il criterio di Nyquist.
Se invece:
10
L( s) = ,
( 1 + s) 3
20
10
-10
dB
-20
-30
-40
-50
10 -1 10 0 10 1
ω (rad/s)
1) Giustificazione
Il criterio di Bode è un caso particolare del criterio di Nyquist: non è infatti difficile verificare
che nelle condizioni di applicabilità del criterio di Bode (che corrispondono a Pd = 0), le
condizioni sul guadagno d’anello e sul margine di fase espresse dal criterio equivalgono a
garantire l’assenza di giri del diagramma di Nyquist intorno al punto −1 (N = 0).
Rispetto al criterio di Nyquist, il criterio di Bode ha il vantaggio di richiedere il tracciamento
dei diagrammi di Bode, di norma più agevole del tracciamento del diagramma di Nyquist.
dB -20
-40
-50
gradi
-100
10 0 10 1 10 2
ω (rad/s)
0
dB
-200
gradi
-400
1/τ
-600
ω (rad/s)
E’ poi molto comune il caso in cui la funzione di trasferimento d’anello sia il prodotto di una
funzione di trasferimento razionale Lr(s) e della funzione di trasferimento del ritardo:
L( s) = Lr ( s) e − sτ .
Si dimostra che, se il criterio di Bode è applicabile per la funzione di trasferimento Lr(s) (cioè
se tale funzione di trasferimento ne rispetta le ipotesi), allora rimane applicabile anche per la
funzione di trasferimento L(s).
Osservando poi che risulta:
L( jω) = Lr ( jω) e − jωτ = Lr ( jω) e − jωτ = Lr ( jω) ,
( )
∠L( jω) = ∠ Lr ( jω) e − jωτ = ∠Lr ( jω) + ∠e − jωτ = ∠Lr ( jω) − ωτ ,
si conclude che la presenza del ritardo non altera il diagramma di Bode del modulo, per cui la
pulsazione critica si può ricavare direttamente dall’analisi della funzione di trasferimento
priva di ritardo. Per quanto riguarda la fase critica, al termine dovuto alla parte razionale della
funzione di trasferimento occorrerà sommare un termine pari a:
180°
−ωc τ .
π
Si osservi la conversione da radianti a gradi, necessaria per rendere questo termine sommabile
alle fasi espresse in gradi.
20
10
-10
dB
-20
-30
-40
-50
10 -2 10 -1 10 0 10 1
ω (rad/s)
Il margine di fase, oltre a dare un’indicazione binaria sull’asintotica stabilità del sistema in
anello chiuso, quantifica anche la robustezza della stabilità, ossia il margine di sicurezza con
cui possiamo tollerare incertezze sul modello senza compromettere l’asintotica stabilità. Più
alto è il margine di fase, più robusto è il sistema. Vi sono tuttavia casi in cui il margine di fase
non costituisce un indicatore attendibile, come riportato nell’esempio in figura:
Im
−1 Re
ϕm
Pur essendo il margine di fase elevato, il diagramma polare passa molto vicino al punto −1,
rendendo il sistema scarsamente robusto a fronte di incertezze di modello.
Un indicatore da usare in congiunzione con il margine di fase è il margine di guadagno.
Sempre nell’ipotesi Pd=0, si supponga che il diagramma polare di L attraversi il semiasse
reale negativo in uno e un solo punto:
a Im
−1 P Re
Fig. 87 : Diagramma polare di L con indicazione della distanza del punto P dall’origine
Un indice di robustezza è la distanza del punto P di intersezione dal punto −1, ovvero la
vicinanza del punto P all’origine. Detta allora a la distanza del punto dall’origine, definiamo
margine di guadagno la quantità:
km =
1
=
1
( )
, con ∠L jω p = −180° .
(
a L jω p )
Il sistema in anello chiuso è asintoticamente stabile se km > 1, ed è tanto più robusto quanto
maggiore è km.
Rientrano inoltre nel novero delle prestazioni dinamiche anche la reiezione dei disturbi, siano
essi sulla linea di andata o su quella di retroazione, e la moderazione del controllo, ossia la
proprietà del sistema di controllo per cui la variabile di controllo non è sottoposta ad eccessive
sollecitazioni.
0.6
-10
dB
0.4
-15
0.2
-20
T
0 -25
0
t (sec) ω (rad/s)
Pertanto la pulsazione del polo è un buon indice della velocità di risposta del sistema.
Si consideri ora un sistema di controllo in anello chiuso, ed in particolare la funzione di
trasferimento dal riferimento y° alla variabile controllata y:
Y ( s)
= F( s) .
Y o ( s)
In virtù dell’imposizione dei requisiti statici, F(s) varrà 1, o comunque un valore prossimo a
1, in bassa frequenza (cioè per s → 0). Inoltre il sistema di controllo sarà progettato in modo
tale che la sua funzione di trasferimento rifletta la caratteristica, propria dei sistemi fisici, di
avere più poli che zeri. Da queste considerazioni seguono le due caratteristiche fondamentali
del diagramma di Bode del modulo di F:
• per ω → 0, |F(jω)|dB ≈ 0;
• per ω → ∞, |F(jω)|dB → −∞.
Andamenti plausibili del modulo di F potranno pertanto essere quelli riportati in figura:
-20 -20
dB
dB
-30 -30
-40 -40
ωb
-50 -50
ω (rad/s) ω (rad/s)
Se il diagramma di Bode del modulo di F non supera per nessuna pulsazione il valore 3 dB, si
definisce banda passante del sistema di controllo l’insieme delle pulsazioni [0, ωb], essendo
ωb la pulsazione alla quale il modulo vale −3 dB.
Si osservi che la condizione espressa preliminarmente alla definizione di banda passante
esclude la presenza di rilevanti picchi o rigonfiamenti nel diagramma del modulo, e quindi le
situazioni rappresentate dal diagramma di destra in Fig. 2. In altre parole il sistema di
controllo si comporta da filtro passabasso.
Se la pendenza del diagramma di |F|dB dopo la pulsazione ωb vale −1, il sistema di controllo si
comporta in prima approssimazione come un sistema del primo ordine, con pulsazione del
polo pari a ωb. Ne consegue che i transitori del sistema in anello chiuso saranno caratterizzati
da una costante di tempo approssimativamente pari a:
1
τ= .
ωb
Il sistema sarà quindi tanto più veloce quanto più estesa è la sua banda passante, ossia
l’estremo superiore della banda passante è un buon indice della velocità di risposta del
sistema di controllo.
Ci si pone ora l’obiettivo di individuare un indice di velocità di risposta legato alla funzione di
trasferimento d’anello L(s), piuttosto che alla funzione di trasferimento in anello chiuso F(s).
Ricordiamo che risulta:
y° + y
L(s)
−
L( s)
F ( s) = .
1 + L( s)
Il legame tra le risposte in frequenza è quindi:
L( jω)
F ( jω) = ,
1 + L( jω)
ed in particolare:
L( jω)
F ( jω) = .
1 + L( jω)
Consideriamo ora la seguente approssimazione:
L ( jω ) 1 ∀ω: L( jω ) >> 1
F ( jω ) = ≈ .
1 + L ( jω ) L ( jω ) ∀ω: L( jω ) << 1
|L| ?
20
ωc
|F|
0
-20
dB
-40
-60
-80
ω (rad/s)
Fig. 91 : Metodo grafico per il tracciamento del diagramma asintotico del modulo di F a partire da quello di L
F ( jωc ) = F ( jωc )
1
⇒ = −3 ,
2 dB
per cui ωc = ωb, ossia la pulsazione critica coincide con l’estremo superiore della banda
passante.
Peraltro per valori inferiori a 90° del margine di fase, ma comunque elevati, il modulo di F in
ωc rimane prossimo al valore precedentemente ottenuto: in particolare rimane inferiore a 1 per
valori di ϕm superiori a 60°. Considerando che valori di margine di fase elevato sono di norma
associati ad attraversamenti dell’asse delle pulsazioni con pendenza del modulo di L pari a −1,
possiamo concludere che in questo caso (ϕm>60°) è adeguata un’approssimazione di F con
una funzione di trasferimento del primo ordine a costante di tempo, con costante di tempo
pari all’inverso della pulsazione critica:
1
F( s) = .
1 + s ωc
Il transitorio quindi si assesterà al 99% del valore di regime dopo un tempo pari a circa 4.6/ωc.
Per valori inferiori del margine di fase (ϕm<60°) appare più adeguata un’approssimazione del
secondo ordine con poli complessi coniugati alla pulsazione ωc:
ω c2
F( s) ≈ .
s 2 + 2ζω c s + ω c2
Lo smorzamento si può determinare confrontando il valore assunto in ωc dal modulo della
risposta in frequenza dell’approssimante con il valore esatto determinato precedentemente:
1 1
F ( jω c ) = = ,
2ζ 2 sin ϕ m
2
da cui:
ϕ ϕ
ζ = sin m ≈ m ,
2 100
dove l’ultima approssimazione è valida se ϕm è espresso in gradi.
Il transitorio quindi si assesterà al 99% del valore di regime dopo un tempo pari a circa
40
30
20
10
dB
-10
-20
-30
10 0 10 1 10 2 10 3
ω (rad/s)
approssimata
0.8
0.6
0.4
0.2
vera
0
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07
t (sec)
d
y° + + +y
L(s)
−
|L| |1/L|
20
ωc
0
|S|
-20
dB
-40
-60
-80
ω (rad/s)
y° + y
L(s)
−
+ +
n
Fig. 96 : Sistema di controllo con disturbo in linea di retroazione
d
y° + u + +y
R(s) G(s)
−
+ +
n
Fig. 97 : Sistema di controllo con in evidenza la variabile di controllo
|G| |1/G|
20
ωG ωc
0
-20
dB
-40
-60
-80
ω (rad/s)
Concludiamo allora che per garantire moderazione al controllo la banda passante non deve
essere eccessivamente ampia rispetto alla banda che caratterizza la dinamica in anello
aperto.
d
y° + + +y
L(s)
−
+ +
n
Fig. 99 : Sistema di controllo
Si osservi che con una rielaborazione formale dello schema a blocchi è possibile mettere
direttamente in evidenza l’errore tra y° e y:
n d
y° + e+ − + +y
L(s)
−
Per lo studio delle prestazioni statiche è sufficiente riferirsi ad un insieme dei segnali di
ingresso ristretto ai cosiddetti segnali canonici, come lo scalino, la rampa, la parabola ecc.
Infatti, ai fini della valutazione dell’errore a regime, sono del tutto irrilevanti le eventuali
variazioni transitorie subite dal segnale di ingresso, del quale riveste interesse solo il
comportamento asintotico (t → ∞).
1.6 1.6
1.4 1.4
1.2 1.2
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0 20 40 60 80 100 0 20 40 60 80 100
t (sec) t (sec)
Fig. 101 : Equivalenza tra generici segnali e segnali canonici ai fini della valutazione delle prestazioni statiche
A
1 0
µL ∞
A
2 0 0
µL
Si osservi che, quando l’errore assume un valore finito e non nullo, esso è tanto più piccolo
quanto maggiore è il valore del guadagno d’anello µL.
Esempio
Sia:
10 1 + s
L( s) = .
s 1 + 10s
Il sistema in anello chiuso è asintoticamente stabile, come si ricava immediatamente
dall’analisi del polinomio caratteristico in anello chiuso.
Poiché il tipo di L vale gL = 1, si ha errore a transitorio esaurito nullo con riferimento a
scalino, infinito con riferimento a parabola, mentre con ingresso a rampa, l’errore a regime è
pari all’ampiezza della rampa diviso 10.
d
H(s)
dH
y° + e + +y y° + e + +y
L(s) L(s)
− −
⇒
Fig. 102 : Sistema di controllo con disturbo filtrato
Detti µH e gH guadagno e tipo di H(s), il disturbo riportato in uscita, dH, equivalente agli
effetti statici al disturbo effettivo d, avrà trasformata:
µH
DH ( s) = D( s) .
s gH
Si osservi infatti che gli eventuali poli o zeri di H non nell’origine non hanno alcun
effetto sul comportamento a regime (s → 0).
b) Il disturbo entra nel sistema di controllo a monte del processo, ossia del sistema di
funzione di trasferimento G(s) (disturbo di carico):
⇒
Fig. 103 : Sistema di controllo con disturbo di carico
Detti µG e gG guadagno e tipo di G(s), il disturbo riportato in uscita, dG, equivalente agli
effetti statici al disturbo effettivo d, avrà trasformata:
µG
DG ( s) = D( s) .
s gG
Esempio
Con riferimento alla Fig. 103, sia:
6 1 + 3s
R( s) = 5, G( s) = , d ( t ) = 3 sca( t ) .
s 1 + 4s
La funzione di trasferimento d’anello risulta:
30 1 + 3s
L( s) = .
s 1 + 4s
Il polinomio caratteristico è:
χ( s) = 30( 1 + 3s) + s( 1 + 4 s) = 4 s 2 + 91s + 30 ,
ed ha le due radici a parte reale negativa, il che comporta che il sistema in anello chiuso è
asintoticamente stabile.
Il disturbo dG riportato in uscita ha trasformata:
6 6 3 18
DG ( s) = D( s) = = .
s s s s2
Pertanto:
d G ( t ) = 18 ram( t ) .
Poiché il tipo della funzione di trasferimento d’anello vale gL = 1, ed il guadagno µL = 30,
dalla tabella si ottiene:
18
e∞ = − = −0.6.
30
1 A ∞ ∞
2 A ∞ ∞
Quindi l’errore si mantiene finito solo per disturbo a scalino dove però è pari all’ampiezza del
disturbo stesso per tipo maggiore o uguale a 1, e se ne scosta solo leggermente per tipo uguale
a zero (si ricorda che µL deve essere un numero elevato per garantire errore piccolo sul
riferimento e sul disturbo in linea di andata).
E’ allora evidente che, in presenza di un trasduttore con errore statico, il sistema di controllo
non può garantire a regime una precisione migliore di quella del trasduttore.
+ +
n
Fig. 104 : Sistema di controllo
8 Per una trattazione analoga a quella qui presentata ma di maggiore respiro, si può consultare il Capitolo 2 del
testo: “Esercizi di Controlli Automatici”, G.O. Guardabassi e P. Rocco, Pitagora Editrice.
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 159
3. Velocità di risposta
Il sistema di controllo deve reagire prontamente a variazioni nel segnale di riferimento o sui
disturbi. Sappiamo che, se il margine di fase è sufficientemente elevato, i transitori del
sistema in anello chiuso sono governati da una costante di tempo pari all’inverso della
pulsazione critica ωc. Imporre un valore massimo alla durata dei transitori equivale quindi ad
imporre un valore minimo alla pulsazione critica:
ωc ≥ ωc .
4. Precisione statica
A seguito dell’imposizione di assegnati segnali canonici agli ingressi, l’errore tra riferimento e
variabile controllata deve essere, a transitorio esaurito, nullo o inferiore in modulo ad una
assegnata soglia:
e∞ ≤ e∞ .
5. Specifiche addizionali
Talvolta possono essere date delle ulteriori specifiche, come l’uso di un controllore dalla
struttura assegnata (cioè con un dato numero di poli e zeri), limitazioni all’azione di controllo,
attenuazione di specifici disturbi (tipicamente sinusoidali).
2. Progetto dinamico
Si determina R2(s) (poli e zeri del controllore), in modo tale da soddisfare le specifiche
dinamiche su margine di fase e velocità di risposta. Si procede per mezzo di una serie,
ragionata, di tentativi di sintesi.
d
H(s)
y° + e + +y
R(s) G(s)
−
dove:
50 5
G ( s) = , H ( s) = .
( 1 + 01
. s)( 1 + s)( 1 + 10s) 1 + 0.01s
Si vuole progettare il regolatore R(s) in modo tale che:
• e∞ ≤ 0.025 per y°(t) = 10 sca(t), d(t) = ± sca(t);
• ω c ≥ 1 rad / s ;
• ϕ m ≥ 60° .
Progetto statico
Fattorizzata R(s) come:
R( s) = R1( s) R2 ( s) , R2 ( 0) = 1 ,
Progetto dinamico
La funzione di trasferimento d’anello del sistema può essere scritta come:
L( s) = R1( s) R2 ( s) G( s) = R2 ( s) L1( s) ,
con:
1000
L1( s) = R1( s) G( s) = .
( 1 + 01
. s)( 1 + s)( 1 + 10s)
Il primo tentativo da eseguire per il progetto di R2(s) consiste nel porre banalmente R2(s) = 1.
La funzione di trasferimento d’anello coincide, allora, con L1(s), ed il relativo diagramma di
Bode del modulo asintotico è tracciato di seguito:
40
20
dB
-20
-40
-60
-80
10 -2 10 -1 10 0 10 1 10 2
ω (rad/s)
9 In realtà il vincolo sulla pendenza assicura la realizzabilità della funzione di trasferimento R2(s), laddove ciò
che interessa è la realizzabilità della funzione di trasferimento R(s) complessiva. In presenza quindi di una
funzione di trasferimento R1(s) di tipo non nullo, il vincolo sulla pendenza potrebbe essere rilassato.
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 164
• il valore di |L| deve essere minore o uguale a quello di |L1|, per garantire la moderazione del
controllo.
L’applicazione del metodo all’esempio porta, scegliendo come pulsazione critica il valore 2
rad/s, al grafico di |L| di figura 4.
80
60
L1
40
L
20
ωc
modulo [dB]
-20
-40
-60
-80
-4 -3 -2 -1 0 1 2
10 10 10 10 10 10 10
ω(rad/s)
y° + e y
R(s) G(s)
−
dove:
10
G ( s) = ,
s( 1 + s)
si vuole progettare il regolatore R(s) in modo tale che:
• e∞ = 0 per y°(t) = sca(t);
• ωc ≥ 2 rad / s ;
• ϕm ≥ 40°.
Progetto statico
Procedendo come nell’esempio precedente, si ha:
1 1 1 s g R +1
e∞ = lim [ sE ( s) ] = lim s Y ( s) = lim s
o
= lim = 0, ∀g R ≥ 0
s→0 s → 0 1 + L( s) s→0 10 µ R s s→0 s g R +1 + 10µ
1+ R
s s gR
In questo caso, anche con regolatore di tipo nullo (gR = 0) si ottiene errore statico nullo. Il tipo
della funzione di trasferimento d’anello è infatti la somma del tipo del sistema sotto controllo
e del tipo del controllore:
g L = gG + g R .
Poiché nel presente caso gG = 1, è sufficiente imporre gR = 0 per avere un anello di tipo 1.
Il progetto statico quindi non impone nessun vincolo al regolatore e potremo porre,
formalmente:
R1( s) = 1 .
Progetto dinamico
Poiché:
L( s) = R1( s) R2 ( s) G( s) = R2 ( s) G( s) ,
40
30
20
10
dB
-10
-20
-30
10 -1 10 0 10 1
ω (rad/s)
Si ha ωc = 3 rad/s, ma:
ϕm = 180°− −90°− arctan( 3) = 180°− −90°−71° = 19° ,
che non soddisfa la specifica.
La soluzione grafica del progetto dinamico è riportata in Fig. 7: si osservi che in bassa
frequenza si è evitato di raccordare i diagrammi del modulo di L e G, in quanto il progetto
statico non impone alcun vincolo sul guadagno del regolatore.
Si ottiene ωc = 2 rad/s, e:
ϕm = 180°− −90°− arctan( 2 5) = 180°− −90°−22° = 68° .
Tutte le specifiche sono soddisfatte e risulta:
2 1 2 1
L( s) = = ,
s 1 + s 5 s 1 + 0.2 s
da cui:
L( s) 2 1 s( s + 1) 1+ s
R( s) = R2 ( s) = = = 0.2 .
G( s) s 1 + 0.2 s 10 1 + 0.2 s
30
20
G
10
L
dB
-10
-20
-30
10 -1 10 0 10 1
ω (rad/s)
y° + e y
R(s) G(s)
−
dove:
1 − 2s
G( s) = 10 ,
1 + 10s
si vuole progettare il regolatore R(s) in modo tale che:
• e∞ = 0 per y°(t) = sca(t);
• ωc ≥ 01
. rad / s ;
• ϕm ≥ 40°.
Il progetto statico impone la presenza di un integratore nel controllore, mentre non ne vincola
in alcun modo il guadagno. Possiamo allora porre:
1
R1 ( s) = .
s
Scritta la funzione di trasferimento d’anello come:
L( s) = R2 ( s) L1( s) ,
con:
10 1 − 2 s
L1( s) = R1( s) G( s) = ,
s 1 + 10s
tracciamo il diagramma di Bode del modulo di L1:
40
20
dB
-20
-40
10 -2 10 -1 10 0 10 1 10 2
ω (rad/s)
Risulta ωc = 2 rad/s, e:
ϕm = 180°− −90°− arctan( 2 01
. ) − arctan( 2 0.5) = 180°− −90°−87°−76° = −73° .
Il sistema in anello chiuso sarebbe quindi instabile.
Si osservi che il contributo di fase dello zero alla pulsazione 0.5 rad/s è negativo, essendo lo
zero a parte reale positiva. Il sistema non è quindi “a fase minima”, ed il fatto che il
diagramma del modulo tagli l’asse a 0 dB con pendenza −1 non implica margine di fase
positivo. D’altra parte lo zero non può essere cancellato da un corrispondente polo nel
regolatore, pena il manifestarsi di una instabilità interna. L’unico provvedimento utile in
questo caso è fare in modo che la pulsazione critica risulti sensibilmente inferiore alla
pulsazione dello zero, in modo che il contributo negativo alla fase critica sia meno rilevante.
Si consideri ad esempio la soluzione riportata in figura:
40
L1
20
L
dB
-20
-40
10 -2 10 -1 10 0 10 1 10 2
ω (rad/s)
d
y° + e + +y
R(s) G(s)
−
dove:
e− s
G ( s) = ,
( 1 + 10s)( 1 + s)
si vuole progettare il regolatore R(s) in modo tale che:
. per d(t) = ±sca(t);
• e∞ ≤ 015
• ωc ≥ 0.3 rad / s ;
• ϕm ≥ 40°.
Progetto statico
Supposto il sistema di controllo asintoticamente stabile, il ritardo non gioca alcun ruolo nel
determinare le prestazioni statiche. Dalle tabelle della precisione statica otteniamo che per
funzione di trasferimento d’anello di tipo 0 risulta:
1
e∞ = .
1+ µ L
Pertanto, scelto un regolatore di tipo 0, si dovrà imporre:
1
≤ 015
. ⇒ µ R ≥ 5.67 .
1+ µR
Possiamo cautelarci contro eventuali incertezze ponendo µR = 10, e quindi concludere che:
R1 ( s) = 10 .
20
10
-10
dB
-20
-30
-40
-50
10 -2 10 -1 10 0 10 1
ω (rad/s)
Risulta ωc ≈ 1rad/s, e:
180°
ϕm ≈ 180°− − arctan( 1 01
. ) − arctan( 1) − ωc τ = 180°− −84°−45°−1 × 1 × 57° = −6° .
π
A causa della presenza del ritardo il sistema risulterebbe instabile.
Per il progetto si può considerare la soluzione di Fig. 116:
-10
dB
-20
-30
-40
-50
10 -2 10 -1 10 0 10 1
ω (rad/s)
Risulta ωc ≈ 0.3rad/s, e:
180°
ϕm ≈ 180°− − arctan( 0.3 0.03) − arctan( 0.3 3) − ωc τ = 180°− −84°−6°−0.3 × 1 × 57° = 73° .
π
Tutte le specifiche sono soddisfatte e risulta:
e− s e− s
L( s) = 10 = 10
(1 + s 0.03)(1 + s 3) (1 + 33s)(1 + 0.33s)
,
da cui:
L( s) ( 1 + 10s)( 1 + s)
R2 ( s) = = ,
L1( s) ( 1 + 33s)( 1 + 0.33s)
( 1 + 10s)( 1 + s)
R( s) = R1( s) R2 ( s) = 10 .
( 1 + 33s)( 1 + 0.33s)
d
y° + e + +y
R(s) G(s)
−
dove:
10 1
G ( s) = ,
s 1 + 10s
si vuole progettare il regolatore R(s) in modo tale che:
• e∞ = 0 per y°(t) = sca(t);
• un disturbo d ( t ) = sin( ω t ) , con ω ≤ 0.03, sia attenuato a regime, sull’uscita y, di un fattore
almeno pari a 10;
• ωc ≥ 01
. rad / s ;
• ϕm ≥ 50°.
Progetto statico
Essendo il sistema sotto controllo di tipo 1, la specifica sull’errore a transitorio esaurito è
automaticamente soddisfatta. Poniamo formalmente R1( s) = 1 .
Per quanto riguarda invece la specifica sull’attenuazione del disturbo, valida anch’essa a
transitorio esaurito, utilizzeremo il teorema della risposta in frequenza, nell’ipotesi di poter
rendere il sistema in anello chiuso asintoticamente stabile.
La funzione di trasferimento dal disturbo d all’uscita y risulta:
Y ( s) 1
= = S ( s) .
D( s) 1 + L( s)
Pertanto, quando d ( t ) = sin( ω t ) , a transitorio esaurito si ha:
( )
y( t ) = S ( j ω) sin ω t + ∠S ( j ω) .
La specifica sull’attenuazione del disturbo si traduce quindi nella seguente condizione:
S ( jω) <
1
, ∀ ω ≤ 0.03 .
10
D’altra parte sappiamo che:
80
60
G
40
L
20
dB
-20
-40
-60
10 -3 10 -2 10 -1 10 0 10 1
ω (rad/s)
Nei sistemi di controllo è frequente il caso in cui il disturbo in linea d’andata sia misurabile.
E’ allora possibile sfruttare l’informazione data dalla misura e agire direttamente sulla
variabile di controllo, anticipando l’effetto del disturbo sull’uscita, senza attendere che questo
si manifesti in errore. Si usa parlare di compensazione diretta del disturbo quando:
• il disturbo è misurabile
• si esercita un’azione di controllo dipendente dalla sua misura.
H(s)
u + + y
G(s)
Fig. 119 : Sistema sotto controllo
d
C(s)
H(s)
u + + y
G(s)
Fig. 120 : Compensazione del disturbo
Di norma uno schema di compensazione viene associato ad uno schema di retroazione per
rendere la reiezione del disturbo più robusta rispetto ad incertezze di modello e per soddisfare
le altre specifiche. Si perviene allora allo schema di controllo di figura:
H(s)
y° + e u + + y
R(s) G(s)
−
Come la misura del disturbo, anche il segnale di riferimento della variabile controllata può
essere elaborato con un sistema dinamico per favorire un’azione di controllo più pronta.
Si consideri il seguente schema di compensazione del segnale di riferimento:
C(s)
yo +
R(s) ++ u G(s)
y
−
In virtù della presenza del compensatore in anello aperto di funzione di trasferimento C(s), la
funzione di trasferimento dal riferimento alla variabile controllata diventa:
Y (s ) R(s )G (s ) + C (s )G (s )
=
Y o
(s ) 1 + R(s )G (s )
Ponendo quindi:
C (s ) =
1
,
G (s )
si otterrebbe il risultato ideale Y(s)/Yo(s)≡1. Naturalmente si tratta di una scelta non
realizzabile a causa di molteplici ragioni (causalità del compensatore, eventuale presenza di
zeri nel semipiano destro o di ritardi di tempo in G). Tuttavia rimane un’utile indicazione di
progetto, nel senso che si cercherà di rendere la risposta in frequenza di C simile a quella di
1/G nella banda di interesse.
Alternativamente, si può prefiltrare il segnale di riferimento, come nello schema seguente:
yo
C(s) + R(s)
u
G(s)
y
−
In questo modo la funzione di trasferimento dal riferimento alla variabile controllata diventa:
Y (s )
= C (s )F (s ) ,
Y o (s )
con:
R(s )G (s )
F (s ) = .
1 + R(s )G (s )
Il prefiltro di funzione di trasferimento C(s) può quindi essere scelto in modo da modificare la
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 180
funzione di trasferimento Y(s)/Yo(s), senza modificare la funzione di trasferimento d’anello, e
quindi senza modificare le proprietà dell’anello (margine di fase, pulsazione critica, reiezione
dei disturbi). Se per esempio scegliamo:
C (s ) = µ C =
1
,
F (0 )
otterremmo guadagno unitario della funzione di trasferimento Y(s)/Yo(s), anche in assenza di
azione integrale nell’anello. Si osservi tuttavia che mentre la precisione statica ottenuta
introducendo un integratore nel regolatore è robusta, ossia garantita anche in presenza di
incertezza sul guadagno del sistema, questo non è più vero se la precisione statica viene
forzata con il prefiltro.
Si supponga invece che, per effetto di dinamiche non modellate in alta frequenza o di disturbi
sulla linea di retroazione sia consigliabile limitare la pulsazione critica dell’anello di controllo
al valore ωc . Se fosse prescritta una banda nell’inseguimento del segnale di riferimento di
valore superiore ωb > ωc , si potrebbe progettare un prefiltro avente una funzione di
trasferimento di tipo passaalto, di espressione:
1 + s ωc
C (s ) = .
1 + s ωb
Naturalmente, la migliore prontezza nell’inseguimento del segnale di riferimento va a
discapito della moderazione del controllo, in quanto la variabile di controllo viene
maggiormente sollecitata.
Gli schemi di compensazione e prefiltraggio possono poi essere combinati in uno schema
più generale:
C2(s)
yo
C1(s) + R(s) ++ u G(s)
y
−
Si ottiene:
Y (s ) [C1 (s )R(s ) + C 2 (s )]G (s ) .
=
Y o
(s ) 1 + R(s )G (s )
Ponendo:
C1 (s ) = F o (s ), C 2 (s ) = F o (s )G (s )−1 ,
si ottiene:
Y (s )
= F o (s ) .
Y o
(s )
La funzione di trasferimento Fo(s) deve quindi essere scelta come il modello di riferimento
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 181
per il sistema in anello chiuso. Per la causalità del compensatore C2(s) deve avere grado
relativo (differenza tra il numero dei poli ed il numero degli zeri) almeno pari a quello di G(s).
Inoltre, deve essere caratterizzata degli stessi eventuali zeri a parte reale positiva o ritardi di
tempo presenti in G(s) affinché essi non vengano cancellati dal compensatore.
Si osservi, in conclusione, che questa soluzione complica in modo considerevole la
realizzazione del sistema di controllo.
Tra le ragioni del vastissimo utilizzo dei regolatori PID nella pratica dell’automazione
industriale (i PID sono anche detti regolatori industriali), ricordiamo:
• semplicità di realizzazione in diverse tecnologie (elettronica, idraulica, pneumatica);
• efficacia per la regolazione di un’ampia gamma di processi industriali;
• standardizzazione con i relativi vantaggi in termini di affidabilità e economicità;
• semplicità di taratura dei parametri;
• possibilità di taratura automatica dei parametri, per mezzo di semplici esperimenti.
Dal caso generale della legge di controllo PID è poi possibile derivare altre leggi di controllo,
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 183
annullando una o più delle azioni di controllo. Sono in particolare di interesse le leggi di
controllo:
P (proporzionale);
PD (proporzionale-derivativa);
PI (proporzionale-integrale).
Essendo un sistema dinamico lineare e invariante, il regolatore PID può essere rappresentato
da una funzione di trasferimento:
e u
R(s)
Fig. 125 : Funzione di trasferimento del regolatore PID
KI 1 K 1 + sTI + s2 TI TD
R( s) = K P + + K D s = K P 1 + + sTD = P .
s sTI TI s
Il numeratore di R(s) è di grado superiore al denominatore: pertanto, così come scritta, la
funzione di trasferimento non è fisicamente realizzabile. Ciò corrisponde all’impossibilità di
ottenere dall’errore un segnale che ne costituisca in ogni istante la derivata. Per rendere
realizzabile l’azione derivativa occorrerà in effetti aggiungere un polo in alta frequenza, per
altro di norma irrilevante ai fini della valutazione delle prestazioni del regolatore PID.
Dall’ultima espressione scritta per R(s) si riconosce che al variare di TI e TD gli zeri del
regolatore possono essere reali o complessi e coniugati. Imponendo la presenza di due zeri
reali e distinti, naturalmente nel semipiano sinistro, il diagramma di Bode del modulo di R
assumerà l’andamento tipico riportato in figura:
50
40
30
−1 +1
20
0
dB
10
-10
10 -1 10 0 10 1 10 2
ω (rad/s)
Il progetto del regolatore PID si riduce quindi alla scelta del guadagno e della posizione degli
zeri.
Come tutti i controllori, anche il controllore PID può essere progettato sulla base delle
tecniche analitiche viste in precedenza, che fanno uso del modello matematico del sistema
sotto controllo scritto in forma di funzione di trasferimento. Tuttavia, nel caso del controllore
PID, i gradi di libertà nel progetto sono limitati a 3 (il guadagno e due zeri): è allora
opportuno procedere in modo più diretto rispetto alla sintesi per tentativi della funzione di
trasferimento d'anello già illustrata, selezionando direttamente la posizione degli zeri
(tipicamente in modo da cancellare i poli del processo) e scegliendo il guadagno in modo da
soddisfare le specifiche dinamiche.
Esempio
Si consideri lo schema di controllo in figura:
y° + e y
R(s) G(s)
−
dove:
e −3s
G (s ) = 0.1 .
(1 + 5s )(1 + 20s )
Si vuole progettare il regolatore R(s) nella classe dei regolatori PID in modo tale che:
• e∞ = 0 per y°(t) = sca(t);
• ϕm ≥ 40°
• ωc sia la massima possibile.
La specifica statica impone un regolatore di tipo 1, ossia la presenza dell'azione integrale nel
regolatore PID. Scritta la funzione di trasferimento come
R(s ) = µ R
(1 + sT1 )(1 + sT2 ) ,
s
dove µR > 0 è il guadagno, T1 e T2 sono le costanti di tempo degli zeri e si è sottintesa la
presenza di un polo in alta frequenza introdotto per rendere realizzabile l'azione derivativa,
potremo porre:
T1 = 5, T2 = 20 ,
in modo da cancellare con gli zeri del regolatore i poli del processo.
Si ottiene quindi la funzione di trasferimento d'anello:
R(s ) = 2.9
(1 + 5s )(1 + 20s ) = 2.9 100s 2 + 25s + 1 = K KI
P+ + KDs ,
s s s
con
K P = 72.5, K I = 2.9, K D = 290 .
Questo regolatore conferisce al sistema di controllo un margine di fase di circa 40° ed una
pulsazione critica di 0.29 rad/s.
Uno dei vantaggi connessi all’utilizzo dei regolatori PID consiste nella possibilità di effettuare
la taratura dei parametri sulla base di semplici prove sperimentali, prescindendo dalla
formulazione matematica, non sempre agevole, del sistema sotto controllo.
Tra i numerosi metodi empirici per la sintonizzazione dei regolatori PID, ci limitiamo ad
accennare ai due tradizionalmente più noti.
y° + e y
PID S
−
−
T
y
P 0.5 K P − −
PI 0.45 K P T −
12
.
PID 0.6 K P T T
2 8
Il metodo non è sempre applicabile: ci sono infatti sistemi che non generano oscillazioni,
anche con guadagni proporzionali elevati. Altre volte può essere pericoloso, o comunque
sconsigliabile, portare il sistema al limite di stabilità.
u y
S
Fig.130 : Perturbazione a scalino
0
τ
Y
P 1 − −
Y
PI 0.9 3τ −
Y
PID 12
. 2τ 0.5τ
Y
Il metodo non è ovviamente applicabile se la risposta allo scalino non presenta flesso o se la
risposta presenta oscillazioni. Inoltre non sempre è possibile operare sul processo in anello
aperto, o perturbare bruscamente il suo ingresso.
In molte applicazioni avviene che il sistema sotto controllo sia strutturabile nella
connessione in serie di due funzioni di trasferimento. Si assuma che all’uscita del primo
sottosistema si sommi un disturbo d e che la variabile intermedia v tra i due sottosistemi sia
misurabile.
d
u
G1(s) ++ v
G2(s)
y
Spesso avviene che la dinamica di G1 sia molto più favorevole, in termini di progetto del
controllore, di quella di G2. Per esempio, G1 potrebbe essere a fase minima e G2 no oppure,
pur essendo entrambe le funzioni di trasferimento a fase minima, G1 potrebbe avere dinamica
molto più veloce rispetto a G2 e quindi potrebbe dar luogo ad una dinamica in anello chiuso
veloce con sforzo del controllo molto più limitato di quello richiesto per accelerare G2.
Tutte queste circostanze si manifestano in particolare quando G1 costituisce l’attuatore per il
sistema sotto controllo. Se per esempio G1(s) fosse la funzione di trasferimento di un motore
elettrico a corrente continua, u sarebbe la tensione del circuito d’armatura, i la corrente,
mentre il disturbo d potrebbe essere associato alla forza controelettromotrice. Se viceversa
l’attuatore fosse una valvola idraulica, u sarebbe l’area di apertura della valvola, v la portata di
liquido, mentre il disturbo d sarebbe associabile alla dipendenza della portata dal livello di
liquido a monte della valvola.
In tutte queste situazioni può risultare molto opportuno strutturare il sistema di controllo con
due anelli di controllo innestati, secondo la metodologia del controllo in cascata.
d
y + v+ u ++ v y
o o
R2(s) R1(s) G1(s) G2(s)
− −
yo + vo v y
R2(s) ≈1 G2(s)
−
Esempio
Consideriamo un motore a corrente continua:
spazzola
rotore (armatura)
commutatore
spazzola
R L
I
alloggiamento
statore V E
(magnete)
E (t ) = Kω(t )
τ(t ) = KI (t ) ,
(t )
τ(t ) = Jω
ϑ (t ) = ω(t )
che trasformate secondo Laplace danno luogo al seguente sistema:
τ(s ) = KI (s ) .
ω(s ) = τ(s )
1
Js
ϑ(s ) = ω(s )
1
s
Lo schema a blocchi del sistema è quindi il seguente:
K
E
V+ − 1 I τ 1 ω 1 ϑ
K
sL+R Js s
K
E
ϑo + Io + V+ − 1 I τ 1 ω 1 ϑ
R2(s) R1(s) K
− − sL+R Js s
Nel progetto del regolatore più interno, R1, si assumerà la forza controelettromotrice come un
disturbo di bassa frequenza. Vista la dinamica veloce legata ai transitori elettrici (la costante
di tempo elettrica L/R è di norma dell’ordine dei ms) si potrà progettare R1(s) per ottenere
bande dell’ordine del kHz. Una volta chiuso l’anello di controllo della corrente, questo potrà
ritenersi istantaneo ai fini del progetto del controllore di posizione esterno:
ϑo + I ≈ Io K ϑ
R2(s)
− Js2
Fig. 138 : Schema per il progetto del controllore esterno (di posizione)
E’ noto che i sistemi a fase non minima (che contengono zeri nel semipiano destro e/o ritardi
di tempo) comportano problemi nel controllo: l’impossibilità di cancellare tali termini nel
regolatore lascia come unica possibilità, nel progetto classico del controllore, la limitazione
della pulsazione critica dell’anello di controllo, in modo da ottenere accettabili margini di
stabilità.
Esiste in realtà uno schema di controllo più avanzato, che prende il nome di schema a
predittore di Smith che consente si affrontare il problema in modo diverso.
Si supponga che il sistema sotto controllo sia asintoticamente stabile e che la sua funzione di
trasferimento sia fattorizzabile nel prodotto:
G (s ) = G1 (s )G2 (s ), G2 (0) = 1 ,
con G2(s) a fase non minima (in particolare può essere G2(s)=e−sτ).
Lo schema a predittore di Smith è il seguente:
yo + u y
R'(s) G(s)
−
P(s) + +
z
Fig. 139 : Schema di controllo con predittore di Smith
Il controllore prevede quindi, oltre alla funzione di trasferimento R ′(s ) , anche una funzione di
trasferimento, P(s), posta in parallelo a G(s). A questa funzione di trasferimento, che
costituisce il predittore, viene attribuita la funzione di trasferimento:
P(s ) = [1 − G2 (s )]G1 (s ) = G1 (s ) − G (s ) .
Si osservi a questo punto che, tagliando l’anello in corrispondenza dell’ingresso o dell’uscita
di R ′(s ) , si ottiene come funzione di trasferimento d’anello:
L(s ) = R ′(s )[G (s ) + P(s )] = R ′(s )G1 (s ) .
Pertanto nella funzione di trasferimento d’anello non compare più il termine a fase non
minima G2(s) o, in altre parole, il progetto di R ′(s ) si può condurre sulla base della parte a
fase minima G1(s). Non si hanno più quindi i limiti di banda associati alla fase non minima
del sistema, anche se rimarranno limiti legati ad altri fattori (moderazione del controllo,
eventuali dinamiche di alta frequenza non modellate, disturbi in linea di retroazione).
Il nome predittore risulta chiaro se si pone G2(s)=e−sτ, ossia se la parte a fase non minima è
costituita da un ritardo puro, come del resto originariamente previsto nella concezione del
metodo. In questo caso, infatti, considerando la variabile z che viene retroazionata al
regolatore R ′(s ) (si veda la Fig. 14) si ha:
yo + + u y
R'(s) G(s)
− −
P(s)
R(s)
Le prestazioni del predittore di Smith per sistemi con ritardo si deteriorano considerevolmente
nel caso di valutazione imprecisa del ritardo stesso, il che ne limita in qualche misura
l’utilità pratica. Inoltre la realizzazione del ritardo di tempo nella funzione di trasferimento
P(s) comporta problemi di implementazione.
Il comportamento degli attuatori è stato finora sempre ipotizzato lineare. In realtà tutti gli
attuatori presentano una saturazione, che può essere rappresentata nel sistema di controllo
come nel seguente schema:
yo + e u m y
R(s) Sat G(s)
−
Il blocco non lineare “Sat” rappresenta una caratteristica di saturazione, che per semplicità
supporremo simmetrica, come in figura:
m
uM
−uM u
uM
−uM
Dal punto di vista matematico, la caratteristica di saturazione si esprime quindi nei seguenti
termini:
− u M , u (t ) < −uM
m(t ) = u (t ) − uM ≤ u (t ) ≤ uM .
uM u (t ) > uM
e + u
K(s)
+
H(s)
Da quanto precede, risulta chiaro che il polinomio ϕ(s) deve soddisfare le seguenti condizioni:
• deve avere tutte le radici a parte reale negativa (per l’asintotica stabilità di K(s))
• deve avere grado non inferiore a quello di NR(s) (per la causalità di K(s))
• deve rendere H(s) strettamente proprio, per evitare un anello algebrico
Si osservi che nel caso, frequente, in cui R(s) sia un sistema proprio, non strettamente, a fase
minima, scritti i polinomi NR e DR nella forma:
(
N R (s ) = ρ s n + bn s n−1 + + b2 s + b1 ),
D R (s ) = s n + a n s n−1 + + a 2 s
tutte le condizioni sopra riportate sono soddisfatte ponendo ϕ(s)=NR(s)/ρ, dove ρ è la costante
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 198
di trasferimento di R(s), da cui:
(bn − a n )s n−1 + + (b2 − a 2 )s + b1 .
K (s ) = ρ, H (s ) =
s n + bn s n−1 + + b2 s + b1
La realizzazione anti carica integrale (o anti windup) del regolatore si ottiene con lo schema
seguente, in cui si suppone misurabile la variabile manipolabile m, a valle della saturazione
dell’attuatore:
yo + e q+ u m y
K(s) Sat G(s)
− +
z H(s)
yo + e q+ u m' m y
K(s) ^
Sat Sat G(s)
− +
z H(s)
Facendo riferimento alla Fig. 144 (ma le stesse considerazioni valgono per lo schema di Fig.
145), si supponga nuovamente che l’errore e rimanga dello stesso segno, ad esempio positivo,
a lungo. Se il regolatore ha guadagno positivo, anche q assumerà valori positivi. Si supponga
quindi l’attuatore in saturazione con m=uM. Poiché H(0)=1, anche la variabile z si assesterà sul
valore uM. Quando, per effetto della prolungata azione dell’attuatore, l’errore cambia segno,
anche la variabile q cambierà segno, istantaneamente se K(s) è algebrica (come avviene con la
scelta sopra proposta per ϕ(s)) o comunque con la dinamica legata alle radici di ϕ(s),
arbitrariamente assegnabili. Il fatto che q assuma valori negativi, unito al fatto sopra ricordato
che z= uM, implica poi che u assuma immediatamente valori inferiori a uM, facendo subito
uscire l’attuatore dalla saturazione, ripristinandone quindi il comportamento lineare.
Esempio
Si consideri un regolatore PI:
e + u m
KP Sat
+
1
1+sTI
Fig. 146 : Realizzazione anti windup del regolatore PI
Le tecniche di controllo nel dominio della frequenza finora studiate fanno unicamente
riferimento a sistemi SISO. Il controllo di sistemi con più ingressi e/o più uscite è argomento
complesso e richiede nozioni di teoria del controllo avanzate. Si osservi, d’altra parte, che le
tecniche di controllo nel dominio del tempo per l’assegnamento degli autovalori si prestano
naturalmente all’applicazione su sistemi multivariabili.
Rimanendo nel dominio della frequenza, una strada percorribile con sforzo ragionevolmente
contenuto consiste nel ricondurre il problema di controllo a tanti problemi di controllo
monovariabili, risolvibili secondo le tecniche note.
Nel seguito si daranno cenni a due procedure utilizzabili per ricondurre il problema MIMO a
una serie di problemi SISO: il progetto di controllori di disaccoppiamento ed il progetto di
controllori decentralizzati.
R(s)
yo + e v u y
R'(s) ∆(s) G(s)
−
con:
G12 (s )G21 (s ) det (G (s ))
Gd 1 (s ) = G11 (s )∆11 (s ) + G12 (s )∆ 21 (s ) = G11 (s ) − G22 (s )
=
G22 (s )
.
G (s ) = G (s )∆ (s ) + G (s )∆ (s ) = G (s ) − 21 G (s )G (s ) det (G (s ))
12
=
d 2 G11 (s ) G11 (s )
21 12 22 22 22
yio + ui yi
Ri'(s) Gdi(s)
−
Si osservi che le funzioni di trasferimento Gdi(s) possono risultare di ordine elevato, rendendo
problematico il progetto del controllore. Inoltre le funzioni di trasferimento ∆12(s) e ∆21(s)
possono risultare non proprie: in questo caso si può limitare l’azione di disaccoppiamento ad
una certa banda di frequenza, prevededendo funzioni di trasferimento che approssimino la
risposta in frequenza ideale nella banda d’interesse.
y1o + −e1 u1 y1
R1'(s)
G(s)
y2o + e2 u2 y2
R2'(s)
−
A questo punto, si potrebbe condurre il progetto di Ri′ (s ) sulla base dell’i_simo elemento
diagonale Gii(s) della matrice G(s). Tuttavia questa strada non offre particolari garanzie in
termini del comportamento del sistema multivariabile in anello chiuso, in quanto le
interazioni possono alterarne sensibilmente il comportamento, anche in termini di stabilità.
Un modo migliore di procedere consiste nel progettare le funzioni di trasferimento Ri′ (s )
sequenzialmente, tenendo conto, in ogni progetto, dell’effetto dei regolatori precedentemente
inseriti. L’ordine da seguire in questa sequenza si basa di norma sul tempo di risposta
ammissibile in anello chiuso: si progettano prima i regolatori destinati alla chiusura degli
anelli più veloci.
Nel caso m=2, si procederà quindi progettando R1′ (s ) sulla base di G11(s) e progettando R2′ (s )
sulla base della funzione di trasferimento, che denominiamo G22 ′ (s ) , che si manifesta da u2 a
y2 quando è inserito il primo regolatore. Per calcolare questa funzione di trasferimento, si
faccia riferimento allo schema a blocchi di Fig. 25, in cui non si è tenuto conto del riferimento
yo1 in quanto ininfluente per la discussione. Lo schema corrisponde alle equazioni:
Y1 (s ) G11 (s ) G12 (s ) − R1′ (s )Y1 (s )
= .
Y2 (s ) G21 (s ) G22 (s ) U 2 (s )
G(s)
u2 y2
Eliminando Y1(s) da queste equazioni, si ottiene il legame tra U2(s) e Y2(s), espresso dalla
funzione di trasferimento:
G12 (s )G21 (s )R1′ (s )
′ (s ) = G22 (s ) −
G22 .
1 + R1′ (s )G11 (s )
Anche questo metodo, tuttavia, è di natura euristica e non basato su solidi fondamenti teorici.
Si osservi che nel progetto di un controllore decentralizzato si pone il problema di quale sia il
migliore accoppiamento tra gli ingressi ui del sistema e le uscite yj del sistema. Stabilito un
certo accoppiamento, e quindi determinata la funzione di trasferimento G(s), si passa ad un
altro accoppiamento permutando opportunamente righe e colonne di G(s). Ci si chiede come
scegliere tra quelli possibili, l’accoppiamento migliore. Un metodo, anch’esso euristico, che
guida nella scelta si basa sulla costruzione della cosiddetta matrice dei guadagni relativi,
avente espressione:
Λ (
= G (0 ) ⊗ G (0 )−1 , )T
dove il simbolo ⊗ indica il prodotto, elemento per elemento, delle due matrici. Si può
dimostrare che l’accoppiamento migliore è quello che rende la matrice Λ più diagonale, con
elementi sulla diagonale prossimi a 1.
Per m=2, posto:
g g12
G (0 ) = 11
g 22
,
g 21
si ottiene facilmente:
Λ λ 1 − λ
=
λ
,
1 − λ
con:
g11 g 22
λ= .
g11 g 22 − g12 g 21
Si osservi che se λ=1, Λ è la matrice identità, e risulta g12=0 e/o g21=0, ovvero il sistema è già
diagonale o al più triangolare: l’accoppiamento è quindi corretto.
Se λ=0, Λ ha elementi nulli sulla diagonale ed unitari fuori dalla diagonale, e risulta g11=0 e/o
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 205
g22=0: l’accoppiamento è errato. Accoppiando u1 con y2 e u2 con y1 si ha l’accoppiamento
corretto, che ha struttura al più triangolare.
Argomenti simili si possono usare nei casi intermedi.
L(s)
χ(s ) = D(s ) + ρN (s ) = 0 .
Si definisce luogo delle radici il luogo descritto nel piano complesso dalle radici di χ(s) (poli
del sistema in anello chiuso) al variare della costante di trasferimento ρ da −∞ a +∞. Per la
precisione, si parla di luogo delle radici diretto quando ρ varia da 0 a +∞, di luogo delle
radici inverso quando ρ varia da 0 a −∞.
Esempio
Consideriamo il sistema con funzione di trasferimento d’anello:
ρ
L(s ) =
(s + 1)(s + 2)
Il polinomio caratteristico in anello chiuso è quindi:
χ(s ) = (s + 1)(s + 2 ) + ρ = s 2 + 3s + 2 + ρ = 0
ed ha le radici:
− 3 ± 1 − 4ρ
s=
2
Al variare di ρ si ha:
Im Im
Re Re
−2 −1 −2 −1
È evidente che in questo caso il tracciamento dei luoghi è stato possibile grazie al fatto che le
radici si possono calcolare esplicitamente.
Più in generale, l’equazione caratteristica può essere riscritta nella forma:
D(s )
= −ρ
N (s )
ed equivale alle due equazioni nel campo reale:
D(s )
=ρ
N (s )
∠D(s ) − ∠N (s ) = ∠(− ρ)
La seconda equazione determina compiutamente la forma del luogo, mentre la prima
consente di attribuire ad ogni punto del luogo il corrispondente valore di ρ, ossia, come si usa
dire, di “punteggiare” il luogo rispetto a ρ.
Regola 1: Detto m il grado del polinomio N(s) (numero di zeri di L(s)) e n il grado del
polinomio D(s) (numero di poli di L(s)), il luogo diretto e il luogo inverso sono
costituiti da n rami.
Regola 4: I rami terminano (per |ρ|→∞) in uno zero di L, oppure tendono all’infinito,
secondo un asintoto. Tanto il luogo diretto quanto il luogo inverso presentano un
numero di asintoti pari alla differenza n−m (grado relativo di L).
Regola 5: Tutti gli asintoti si incontrano in un punto dell’asse reale, individuato dall’ascissa:
∑ i zi − ∑ k pk
xa =
n−m
Regola 6: Gli n − m asintoti formano con il semiasse reale positivo i seguenti angoli:
180° + h360°
, per il luogo diretto
ϑah = n−m
h360°
, per il luogo inverso
n−m
dove h assume i valori 0,1, 2, ... , n − m − 1.
Regola 8: Se n − m ≥ 2, la somma delle parti reali dei poli del sistema in anello chiuso si
conserva al variare di ρ (regola del baricentro).
Regola 10: I punti di diramazione dall’asse reale e di ricongiunzione con esso (cioè i punti in
cui il luogo abbandona l’asse reale per entrare nel piano complesso o vi ritorna)
sono individuati da valori dell’ascissa xd che risolvono la seguente equazione
implicita (oltre all’equazione del luogo):
1 1
∑k − ∑i =0
xd + pk xd + zi
E’ utile osservare che l’innesto o il disinnesto di due rami in un punto
(diramazione) dell’asse reale avviene, di norma, con tangente verticale.
Esempio 1
Consideriamo il sistema di funzione di trasferimento d'anello:
ρ
L(s ) =
(s + 1)(s + 2)(s + 3)
Si ha p1 = 1, p2 = 2, p3 = 3, m = 0, n = 3. Poiché n−m = 3, sia il luogo diretto sia quello inverso
presentano 3 asintoti, che si incontrano sull’asse reale nel punto:
− p1 − p2 − p3 − 1 − 2 − 3
xa = = = −2
n−m 3
Gli asintoti formano con l’asse reale gli angoli:
60°
180° + h360°
= 180°, per il luogo diretto
3 300°
ϑah =
h360° 0 °
= 120°, per il luogo inverso
3
240°
Tenendo conto della regola sull’appartenenza dei punti dell’asse reale, si possono facilmente
tracciare i luoghi:
xa xd xd xa
Re Re
−3 −2 −1 −3 −2 −1
L(s ) = ρ
(s + 4)(s + 5)
(s + 1)(s + 2)(s + 3)
Si ha z1 = 4, z2 = 5 , p1 = 1, p2 = 2, p3 = 3, m = 2, n = 3. Poiché n−m = 1, sia il luogo diretto sia
quello inverso presentano un asintoto, che si sovrappone all’asse reale:
luogo diretto
Im luogo inverso Im
−5 −4 −3 −2 −1 Re
−5 −4 −3 −2 −1 Re
Luogo diretto
Tutto il luogo è compreso nel semipiano sinistro: il sistema è asintoticamente stabile per tutti i
valori di ρ>0.
Luogo inverso
Occorre determinare il valore di ρ per cui uno dei rami entra nel semipiano destro. Eseguendo
la punteggiatura in s=0:
p1 p2 p3 1× 2 × 3 6
ρm = − =− =− = −0.3
z1 z 2 4×5 20
Possiamo pertanto concludere:
Sistema asintoticamente stabile ⇔ ρ > −0.3
Oltre che per l’analisi della stabilità dei sistemi in anello chiuso, il metodo del luogo delle
radici costituisce un valido ausilio anche per la sintesi del regolatore.
E’ infatti possibile affrontare in maniera particolarmente intuitiva il problema della
stabilizzazione in anello chiuso di sistemi instabili in anello aperto, nonché condurre a
termine progetti che presentano specifiche di un certo dettaglio sulla forma dei transitori in
anello chiuso.
Le caratteristiche di tali transitori sono infatti legate strettamente alla posizione nel piano
complesso dei poli del sistema in anello chiuso, sui quali si ha completo controllo con il
metodo del luogo delle radici.
Esempio
Si consideri il sistema di controllo in anello chiuso:
u y
R(s) G(s)
Sia:
G (s ) =
1
(s + 1)(s − 2)
Si vuole progettare R(s) in modo tale che il sistema in anello chiuso abbia due poli in −2.
E’ opportuno esplorare la possibilità che la stabilizzazione sia ottenuta con un regolatore
proporzionale. Si pone quindi:
ρR
R(s ) = ρ R ⇒ L(s ) = R(s )G (s ) =
(s + 1)(s − 2)
luogo diretto luogo inverso
Im Im
Re Re
−1 2 −1 2
luogo diretto
p1
Im
45° Re
−6 −2 2
p2
Il regolatore è quindi:
s +1 ρR
R(s ) = ρ R ⇒ L(s ) =
s+6 (s + 6)(s − 2)
Punteggiando nel punto −2 si ottiene:
ρ R = − 2 − 2 − 2 + 6 = 4 × 4 = 16
u y
S
C x
Supporremo inoltre, salvo esplicita indicazione contraria, che il sistema sotto controllo sia
SISO (un ingresso ed un'uscita).
Ipotizziamo che il controllore abbia accesso a tutte le variabili di stato. Per quanto noto sul
significato dello stato del sistema, la cui conoscenza costituisce un’informazione completa
sull’evoluzione della dinamica del sistema, è ragionevole supporre che il problema possa
essere risolto da un regolatore non dinamico, ovvero da una legge di controllo puramente
proporzionale tra stato e variabile di controllo:
u (t ) = Kx (t ) .
Siano dunque:
x (t ) = Ax (t ) + Bu (t )
le equazioni di stato del sistema sotto controllo.
Osserviamo che sarà possibile spostare gli autovalori solo della parte raggiungibile del
sistema, dal momento che la parte non raggiungibile non è influenzata dall'ingresso.
u xR
R
xR
R
Fig. 160 : Parti raggiungibile e non raggiungibile
0 1 0 0
0
0 0 1
0 0
A= , B = .
0 0 0 1 0
− a1 − a2 − a n 1
Siano ora λoi , i=1,…,n gli autovalori desiderati per il sistema in anello chiuso, radici del
polinomio caratteristico desiderato:
( )
n
χ o (s ) = ∏ s − λoi = s n + bn s n−1 + + b2 s + b1 .
i =1
Uguagliando questo polinomio a quello già determinato per la matrice dinamica del sistema in
anello chiuso A+BK, si ottengono le relazioni:
bi = ai − k i , i = 1 n
Pertanto esiste una e una sola legge di controllo u (t ) = Kx (t ) che risolve il problema
dell’assegnamento degli autovalori, i cui coefficienti sono:
k i = ai − bi , i = 1 n
Conclusione: Se lo stato del sistema è completamente accessibile, esiste una e una sola
legge di controllo che consente di assegnare arbitrariamente gli n autovalori
del sistema in anello chiuso se e solo se il sistema è completamente
raggiungibile.
Esempio
Dato il sistema:
x1 = − x1 + 3 x 2 + u
x 2 = 2 x 2 + 2u
y = x1 + x 2
in cui si suppone lo stato completamente misurabile, si vuole progettare una legge di controllo
che sposti l'autovalore positivo nella stessa posizione dell'autovalore negativo del sistema.
Risulta:
− 1 3 1
A= , B= .
0 2 2
Verifichiamo la raggiungibilità:
1 5
K r = [B AB ] = , det ( K r ) = −6 ≠ 0 .
2 4
[
Kˆ r = Bˆ ] 0 1
Aˆ Bˆ = ,
1 1
che è non singolare per costruzione.
La matrice del cambiamento di variabili di stato che porta il sistema in forma canonica di
controllo è quindi:
4 5 1 1
0 1 − 6 −
T = Kˆ r K r −1 = 6 = 3 6 .
1 1 2 1 1 2
− −
6 6 3 3
Poiché si vogliono entrambi gli autovalori nel punto −1, il polinomio caratteristico desiderato
è:
χ o (s ) = (s + 1)(s + 1) = s 2 + 2 s + 1 .
La legge di controllo per il sistema in forma canonica di controllo è quindi costituita dalla
matrice con coefficienti:
kˆ1 = a1 − b1 = −2 − 1 = −3
⇒ Kˆ = [− 3 − 3] .
kˆ2 = a 2 − b2 = −1 − 2 = −3
Infine la legge di controllo nelle originarie variabili di stato è data da:
1 1
−
K = Kˆ T = [− 3 − 3] 3 6 = 0 − 3 .
1 2 2
−
3 3
Si può facilmente verificare che gli autovalori della matrice A+BK sono effettivamente
entrambi nel punto −1.
Osservazione
Se il sistema ha più di un ingresso, si può comunque procedere all'assegnamento degli
autovalori con stato accessibile con argomentazioni simili a quelle fin qui sviluppate.
Nel caso generale infatti la matrice B ha n righe e m colonne, m essendo il numero delle
variabili di ingresso. Può succedere che da uno o più degli m ingressi il sistema sia
completamente raggiungibile, ossia che, detta Bi la i-sima colonna di B, la coppia (A, Bi)
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 220
risulti raggiungibile per qualche i.
In questo caso è possibile ricondursi al problema monovariabile appena risolto, agendo su uno
di questi ingressi, senza utilizzare gli altri, ovvero progettare una matrice riga di guadagni Ki
in modo che gli autovalori della matrice A+BiKi siano in posizioni desiderate del piano
complesso.
Se così non è, occorre dapprima assicurarsi che la coppia (A, B) sia completamente
raggiungibile nel senso dei sistemi multivariabili, ovvero che presa la matrice:
Kr = B[ AB A 2 B A n−1 B , ]
di n righe e n×m colonne, essa abbia rango n, ossia sia possibile estrarne n colonne
linearmente indipendenti (tali da formare una matrice quadrata non singolare).
Se questa ipotesi è verificata, è possibile dimostrare che esiste sempre almeno una matrice K
di dimensioni m×n per cui gli autovalori della matrice A+BK sono in posizioni desiderate del
piano complesso.
Si osservi che, contrariamente al caso di sistema a singolo ingresso, per i sistemi a più ingressi
esiste una pluralità di soluzioni al problema dell'assegnamento degli autovalori. Ne consegue
che è possibile stabilire dei criteri (delle cifre di merito) in base ai quali scegliere una
soluzione piuttosto che un'altra. Uno dei possibili criteri, utilizzato per esempio dalla funzione
place del Contol Systems Toolbox di Matlab, mira a massimizzare la robustezza del
posizionamento degli autovalori, a fronte di incertezze sui parametri del modello.
Poniamoci ora nella situazione in cui lo stato del sistema non sia accessibile, ma si disponga
solo di misure delle uscite (oltre ovviamente a disporre degli ingressi di controllo). Ci
proponiamo di progettare un sistema che, alimentato da ingressi ed uscite del sistema oggetto
dello studio, fornisca una stima delle variabili di stato del sistema.
x=?
u y
S
~
x
R
Fig. 161 : Stima dello stato
Chiameremo il sistema che fornisce la stima dello stato ricostruttore (asintotico) dello stato
o anche, con lieve abuso di terminologia, osservatore dello stato.
Supporremo il sistema sotto controllo, oltre che lineare tempo invariante, anche strettamente
proprio e SISO, per cui le sue equazioni si potranno scrivere come:
x (t ) = Ax (t ) + Bu (t )
x (0 ) = x0
y (t ) = Cx (t )
con u e y variabili scalari.
Supporremo inoltre di conoscere senza incertezza le matrici A, B, C.
Costruiamo ora una replica del sistema, cioè un sistema con le stesse equazioni ed alimentato
dallo stesso ingresso:
~ (t ) = Ax
x ~ (t ) + Bu (t )
~ (0 ) = ~
x x0
y (t ) = C~
~ x (t )
La replica differisce dal sistema originario solo per lo stato iniziale, che non è noto. Se lo stato
iniziale fosse noto senza incertezza, l’uscita vera y e la sua replica ~ y coinciderebbero. In
presenza di incertezza sullo stato iniziale si forma un errore tra le due uscite. Appare allora
ragionevole correggere le equazioni dinamiche della replica del sistema con un termine che
pesi la differenza tra ~
y e y:
x (t ) = A~
~ x (t ) + Bu (t ) + L( ~
y (t ) − y (t ))
x (0 ) = x
~ ~
0 .
y (t ) = Cx
~ ~ (t )
++ x∼ y∼
B + ∫ C
A
Fig. 162 : Sistema con ricostruttore
Si osservi che non abbiamo introdotto ipotesi di stabilità per il sistema dato. Dobbiamo invece
trovare sotto quali condizioni il ricostruttore opera correttamente, ossia produce una stima ~x
dello stato che differisce dallo stato vero x per un errore limitato nel tempo e asintoticamente
nullo.
Per questo, riscriviamo le equazioni del sistema e del ricostruttore, sostituendo in queste
ultime le trasformazioni di uscita:
x (t ) = Ax (t ) + Bu (t )
.
x (t ) = A~
~ x (t ) + Bu (t ) + LC ( ~
x (t ) − x (t ))
Sottraiamo membro a membro le equazioni:
x (t ) − ~
x (t ) = ( A + LC )( x (t ) − ~
x (t ))
Introducendo quindi la variabile:
ε (t ) = x (t ) − ~
x (t ) ,
errore nella stima dello stato, si ottiene l’equazione dinamica:
ε (t ) = ( A + LC )ε(t ) .
L’errore è quindi governato da un sistema privo di ingresso di matrice dinamica A+LC. Se
quindi fossimo in grado di scegliere la matrice L in modo tale da posizionare arbitrariamente
gli autovalori della matrice A+LC, potremmo anzitutto assegnarli nel semipiano sinistro, in
modo da rendere la dinamica dell’errore asintoticamente stabile, e anche scegliere
arbitrariamente la velocità con cui l’errore di stima tende a zero.
E’ già stato dimostrato che, data una coppia di matrici (A, B) raggiungibile, è possibile
determinare una matrice K in modo tale che gli autovalori della matrice A+BK siano in punti
desiderati del piano complesso.
Se ora indichiamo con la notazione λ i [X ] l’i-simo autovalore di una matrice quadrata X, è
immediato convincersi che:
[ ] [
λ i [ A + LC ] = λ i ( A + LC )T = λ i AT + C T LT . ]
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 223
Ne consegue che, se la coppia (AT, CT) è raggiungibile, saremo in grado di risolvere il
problema dell’assegnamento degli autovalori, che è uguale a quello già risolto pur di porre K
= LT. D’altra parte la coppia (AT, CT) è raggiungibile se e solo se la coppia (A, C) è
osservabile, come si deduce dal fatto che la matrice di raggiungibilità della prima coppia
coincide con la matrice di osservabilità della seconda coppia.
Conclusione: Esiste una e una sola matrice di guadagni che consente di assegnare
arbitrariamente gli n autovalori della dinamica dell’errore di stima dello stato
se e solo se il sistema è completamente osservabile.
La procedura per ricavare la matrice dei guadagni L si ottiene facilmente per dualità di quella
già illustrata per ricavare la matrice K dell’assegnamento degli autovalori. Si ricorda che, data
una terna (A, B, C) che definisce un sistema dinamico strettamente proprio, si definisce
sistema duale il sistema definito dalla terna (F, G, H), con F=AT, G=CT, H=BT. E' facile
verificare che i due sistemi ammettono la stessa funzione di trasferimento.
( )
Scritta quindi la coppia Fˆ , Gˆ del sistema duale in forma canonica di controllo 10:
0 1 0 0
0
0 0 0
1 0
Fˆ = Aˆ T = , Gˆ = Cˆ T = ,
0 0 0 1 0
− a1 − a2 − an 1
e posto:
[
LˆT = lˆ1 lˆ2 lˆn , ]
si ricava:
0 1 0 0
0 0 1 0
Fˆ + Gˆ LˆT = .
0 0 0 1
− a1 + lˆ1 − a2 + lˆ2 − an + lˆn
LT = LˆT T ,
e quindi, in definitiva:
L = T T Lˆ .
Esempio
Si riprenda il sistema dell’esempio precedente:
x1 = − x1 + 3 x 2 + u
x 2 = 2 x 2 + 2u
y = x1 + x 2
Si vuole progettare un ricostruttore asintotico dello stato in modo tale che la dinamica
dell’errore sia caratterizzata da due autovalori reali coincidenti nel punto −10.
Risulta:
− 1 3
A= , C = [1 1].
0 2
Verifichiamo l’osservabilità:
Ko = CT[ ]
1 − 1
AT C T = , det ( K o ) = 6 ≠ 0 .
1 5
Il sistema è quindi completamente osservabile. Il polinomio caratteristico di A è:
χ A (s ) = (s + 1)(s − 2 ) = s 2 − s − 2 .
Pertanto la forma canonica di controllo per il sistema duale è:
0 1 0
Fˆ = Aˆ T = , Gˆ = Cˆ T = ,
2 1 1
( )
cui corrisponde la matrice di raggiungibilità (di osservabilità per la coppia Aˆ , Cˆ ):
[
Kˆ o = Gˆ ] [
Fˆ Gˆ = Cˆ T ] 0 1
Aˆ T Cˆ T = ,
1 1
Osservazioni
1) Come il problema dell’assegnamento degli autovalori, anche il problema della stima dello
stato può essere risolto con strumenti analoghi a quelli qui sviluppati anche nel caso di
sistema multivariabile (con più uscite).
2) Si è supposto che il ricostruttore dello stato avesse lo stesso ordine n del sistema sotto
controllo, ovvero che tutte le variabili di stato venissero ricostruite. E’ evidente che in
questa operazione c’è una certa ridondanza, in quanto l’uscita può coincidere essa stessa
con una variabile di stato e comunque è sempre uguale ad una combinazione lineare delle
variabili di stato. E’ allora possibile progettare, con tecniche che non vengono affrontate in
questo corso, dei ricostruttori di ordine ridotto, che forniscono la stima di un
sottoinsieme di variabili di stato.
Una volta progettato il ricostruttore dello stato, ci si chiede se sia possibile risolvere il
problema dell'assegnamento degli autovalori con una legge di controllo agente sulla stima
dello stato:
u (t ) = K~
x (t ) .
x=?
u y
S
~
x
R
K
Fig. 163 : Legge di controllo sulla stima dello stato
Ci poniamo nelle ipotesi che la coppia (A, B) sia raggiungibile e la coppia (A, C) osservabile.
Scriviamo le equazioni del sistema sotto controllo, dell'osservatore e della legge di controllo:
x (t ) = Ax (t ) + Bu (t )
y (t ) = Cx (t )
~ (t ) = Ax
x ~ (t ) + Bu (t ) + L( ~
y (t ) − y (t ))
y (t ) = Cx (t )
~ ~
u (t ) = Kx~ (t )
Eliminando u, y e ~ y otteniamo:
x (t ) = Ax (t ) + BK~
x (t )
.
x (t ) = − LCx (t ) + ( A + BK + LC ) ~
~ x (t )
Nulla vieta, a questo punto, di effettuare un cambiamento di variabili di stato, esprimendo il
sistema nelle variabili x(t) e ε (t ) = x (t ) − ~
x (t ) . Sottraendo membro a membro le equazioni si
ottiene:
x (t ) = ( A + BK )x (t ) − BKε (t )
.
ε (t ) = ( A + LC )ε (t )
La matrice dinamica del sistema in anello chiuso è quindi:
A + BK − BK
Ac =
A + LC
,
0
e risulta triangolare a blocchi.
Ne consegue che gli autovalori della matrice sono la riunione degli autovalori delle due
sottomatrici, A+BK e A+LC, sulla diagonale. Sappiamo che se la coppia (A, B) è
raggiungibile, siamo in grado di posizionare arbitrariamente gli autovalori della
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 227
matrice
A+BK e che, se la coppia (A, C) è osservabile, siamo in grado di posizionare arbitrariamente
gli autovalori della matrice A+LC.
x (t ) = ( A + BK + LC )~
~ x (t ) − Ly (t )
u (t ) = Kx (t )
~
G (s ) = C (sI − A )−1 B
R(s ) = K (sI − ( A + BK + LC ))−1 L
si riconosce che la connessione tra G e R è in retroazione negativa, come la connessione dei
regolatori progettati con i metodi classici nel dominio della frequenza.
u y
G(s)
−
R(s)
Ci si chiede a questo punto se non sia possibile progettare la funzione di trasferimento R(s)
direttamente nel dominio della frequenza, ossia determinare una funzione di trasferimento
razionale (rapporto di polinomi) in modo tale che le radici del polinomio caratteristico in
anello chiuso siano in punti desiderati del piano complesso. In effetti questa strada è
percorribile (con i metodi cosiddetti polinomiali) ma, oltre a non prestarsi al caso
multivariabile, comporta dei problemi di natura numerica (cattivo condizionamento di alcune
matrici usate per risolvere il problema).
Esempio
Si riprenda il sistema trattato negli esempi precedenti:
− 1 3 1 9
3 3
A + BK + LC = +
− + [ ] = 2
2 .
2 − 24
0 1 1
0 2 2 − 24 − 25
Il polinomio caratteristico di questa matrice risulta:
χ A+ BK + LC (s ) = s 2 + 23s + 58 ,
per cui il controllore in questo caso risulta asintoticamente stabile. Calcolandone la funzione
di trasferimento si ottiene:
36 s + 36
R(s ) = .
s + 23s + 58
2
0.5
Imaginary Axis
0
-0.5
-1
-1.5
-2 -1.8 -1.6 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
Real Axis
Il problema di assegnamento degli autovalori come lo abbiamo affrontato finora non prevede
la presenza di un segnale di riferimento per l'uscita del sistema. Se viceversa assume
rilevanza anche un problema di inseguimento del riferimento ("servo problem" in
terminologia inglese) allora è noto che per garantire precisione statica in presenza di segnale
di riferimento ed eventuale disturbo in linea d'andata costanti a regime è di norma necessario
un integratore, ovvero un regolatore di tipo uno.
Uno schema per l'introduzione dell'integratore in un sistema di controllo ad assegnamento
degli autovalori con stima dello stato può essere quello rappresentato in figura:
yo + v + u y
− ∫ kI
+ S
~
x
R
Il progetto del guadagno kI dell'integratore può essere condotto congiuntamente a quello della
matrice dei guadagni K in modo tale da allocare gli autovalori del sistema in anello chiuso
comprensivo dello stato dell'integratore.
Detto xI dello stato dell'integratore si ha:
x (t ) = Ax (t ) + Bu (t )
.
x I (t ) = y o (t ) − y (t ) = y o (t ) − Cx (t )
Definiamo:
x
z=
xI
lo stato del sistema "aumentato" con l'integratore. Si ha quindi:
z(t ) = Fz (t ) + Gu u (t ) + G y o y o (t ) ,
con:
A 0 B 0
F = , Gu = , G y o = .
− C 0 0 1
Ne consegue che sarà possibile allocare arbitrariamente gli autovalori del sistema aumentato,
previo stima dello stato x, agendo sulla variabile di ingresso u se e solo se la coppia (F,Gu) è
raggiungibile. Calcoliamone la matrice di raggiungibilità:
Per attribuire anche precisione dinamica al sistema di controllo progettato con l'assegnamento
degli autovalori e regolazione a zero dell'errore si utilizzano elementi del sistema di controllo
che agiscono solo sul riferimento e non sulla linea di retroazione. Questi elementi prendono il
nome di elementi in feedforward.
Un possibile schema comprensivo degli elementi in feedforward è il seguente:
G2(s)
yo + v ++ u y
G1(s)
− ∫ kI
+ S
~
x
R
Sia:
N (s )
G (s ) =
D (s )
la funzione di trasferimento del sistema sotto controllo (dall'ingresso u all'uscita y). La
funzione di trasferimento del sistema tratteggiato, comprensivo del sistema sotto controllo e
della retroazione con guadagno K sulla stima dello stato è:
Y (s ) N (s )
= Gk ( s ) = ,
V (s ) Dk (s )
con:
Dk (s ) = det (sI − ( A + BK ))
(è immediato verificare che la dinamica del ricostruttore non compare in questa funzione di
trasferimento).
La funzione di trasferimento dal riferimento yo alla variabile controllata y è:
G1 (s ) I + G2 (s )Gk (s )
k
Y (s )
=
s .
Y (s )
o
1 + Gk ( s )
k I
s
Posto ora:
G2 (s ) = G1 (s )Gk (s )−1
risulta:
Un sistema dinamico a tempo discreto è caratterizzato dal fatto che tutte le variabili del
sistema sono funzioni di una variabile temporale k che assume solo valori interi.
x(k)
k
0 1 2 3 4 5
Fig. 168 : Segnale a tempo discreto
La motivazione dello studio dei sistemi a tempo discreto è duplice: da un lato questo studio è
utile per la comprensione di alcuni aspetti del controllo digitale (eseguito al calcolatore),
dall’altro vi sono sistemi (economici, ecologici, sociologici, ecc.) che si lasciano naturalmente
descrivere come sistemi a tempo discreto. Ciò avviene in particolare in tutti i casi in cui i dati
disponibili sono nella forma di serie temporali.
Nel seguito ripercorreremo rapidamente l’analisi dei sistemi già svolta a tempo continuo,
soffermandoci in particolare sui punti in cui l’analisi dei sistemi a tempo discreto differisce.
u(k) y(k)
S
variabili variabili
di ingresso di uscita
Fig. 169 : Sistema a tempo discreto
Il numero minimo di condizioni iniziali che occorre assegnare per determinare tutte le uscite
del sistema, noti gli andamenti degli ingressi a partire dall’istante iniziale, prende il nome di
ordine del sistema: lo si indica con n.
Il sistema si lascia descrivere per mezzo di n equazioni alle differenze, cui si aggiungono p
equazioni algebriche per determinare le uscite:
x (k + 1) = f ( x (k ), u(k ), k )
y (k ) = g ( x (k ), u(k ), k )
Si usano le stesse classificazioni viste per i sistemi a tempo continuo: sistemi SISO e MIMO,
tempo varianti e invarianti, strettamente propri e no, lineari e non lineari.
In particolare, un sistema lineare tempo invariante (LTI) potrà essere descritto per mezzo di
quattro matrici, nella forma:
x (k + 1) = Ax (k ) + Bu(k )
y (k ) = Cx (k ) + Du(k )
Assegnata una condizione iniziale all’istante k0 ed un ingresso a partire da k0, definiamo
movimento dello stato la soluzione delle equazioni di stato corredate dalla condizione iniziale
assegnata e movimento dell’uscita la conseguente uscita, ricavabile dalla trasformazione
d’uscita.
L’equilibrio è un particolare movimento costante nel tempo a seguito di un ingresso costante
nel tempo. Occorre però prestare attenzione al fatto che, nei sistemi tempo invarianti, per
determinare gli stati di equilibrio corrispondenti ad un ingresso u si deve imporre che lo stato
sia uguale a se stesso in tutti gli istanti, ossia che:
x (k + 1) = x (k ) = x
Pertanto gli stati di equilibrio sono le soluzioni dell’equazione implicita:
x = f (x, u )
In corrispondenza di ogni soluzione di questa equazione, si ha la corrispondente uscita di
equilibrio:
y = g( x, u )
Si danno infine le stesse definizioni, viste a tempo continuo, di movimento stabile, instabile,
x(1) = −(1 2 )3 = −1 8
x(2 ) = −(− 1 8)3 = 1 512
x(3) = −(1 512 )3 = −1 134217728
Esempio 2
Consideriamo un sistema economico in cui definiamo le variabili:
y(k): reddito nazionale nell’anno k;
c(k): consumi nell’anno k;
i(k): investimenti privati nell’anno k;
u(k): spesa pubblica nell’anno k.
Il sistema può essere descritto dalle equazioni:
y (k ) = c(k ) + i (k ) + u (k )
c(k ) = αy (k − 1)
i (k ) = β(c(k ) − c(k − 1))
Possiamo rappresentare queste equazioni in termini di sistema dinamico, introducendo le
variabili di stato:
Come a tempo continuo, il movimento può quindi essere scomposto in movimento libero e
movimento forzato: il primo dipende solo dallo stato iniziale, il secondo solo dall’ingresso.
x l (k ) = A k x 0
moto libero
y l (k ) = CA k x 0
k −1
[
x f (k ) = ∑ A k −i −1 Bu(i )
i =0
]
moto forzato
(k ) = ∑ [CA ]
k −1
yf k −i −1
Bu(i ) + Du(k )
i =0
Poiché il moto libero è lineare nello stato iniziale, ed il moto forzato lo è nell’ingresso, vale il
principio di sovrapposizione degli effetti (di fatto valido anche per sistema tempo variante,
purché lineare).
Per quanto riguarda gli equilibri, per quanto già osservato, essi risolvono l’equazione
implicita:
x = Ax + Bu
dove u è un ingresso costante. A ciascun eventuale stato di equilibrio è associata l’uscita di
equilibrio:
y = Cx + Du .
Se la matrice I−A è invertibile, il che avviene se A non ha autovalori in s=1, esiste un solo
stato di equilibrio, dato dall’espressione:
µ = C (I − A)−1 B + D
guadagno statico del sistema.
E’ utile ricordare che, effettuando un cambiamento di variabili di stato:
xˆ (k ) = Tx (k ), det T ≠ 0
le matrici del sistema si trasformano esattamente come a tempo continuo:
Aˆ = TAT −1 , Bˆ = TB, Cˆ = CT −1 , Dˆ = D .
Inoltre le proprietà di raggiungibilità ed osservabilità si definiscono come a tempo continuo,
ed i test per verificarle sono identici.
Per i sistemi LTI a tempo discreto valgono considerazioni sulla stabilità del tutto analoghe a
quelle fatte a tempo continuo. In particolare quindi la stabilità è una proprietà del sistema
(tutti i movimenti sono asintoticamente stabili, stabili o instabili). Inoltre la stabilità si può
valutare studiando le soluzioni dell’equazione libera in δx (differenza tra movimento
perturbato e movimento nominale):
δx (k + 1) = Aδx (k )
al variare della condizione iniziale δx(0). Risulta:
δx (k ) = A k δx (0) .
Se tutte le componenti del moto libero sono limitate, qualunque sia lo stato iniziale, il sistema
è stabile; se inoltre decadono tutte a zero, il sistema è asintoticamente stabile; se per almeno
uno stato iniziale almeno una componente del moto libero non decade a zero il sistema è
instabile.
Se la matrice A è diagonalizzabile, cioè se:
1.8
30
λ>1 λ=1
1
0<λ<1
1.6
25 1.4
0.8
1.2
20
1 0.6
15
0.8
0.4
10 0.6
0.4
0.2
5
0.2
0 0 0
0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
1 20
−1<λ<0
0.8
0.6 λ=−1
10
λ<−1
0.5 0
0.4 0 1 2 3 4 5
0.2
-10
0
0 1 2 3 4 5
-0.2
0 -20
0 1 2 3 4 5 -0.4
-0.6
-30
-0.8
-1
-0.5 -40
Osservazioni
1) In pratica si tratta di parafrasare le condizioni di stabilità valide per un sistema a tempo
continuo, sostituendo al semipiano sinistro del piano complesso il cerchio di centro
l’origine e raggio unitario (insieme dei numeri complessi che hanno modulo minore di 1).
2) Ricordiamo che a seguito di un cambiamento di variabili di stato descritto da una matrice
di trasformazione T , la matrice A del sistema si trasforma secondo una relazione di
similitudine ( Aˆ = TAT −1 ). Poiché matrici simili hanno gli stessi autovalori, l’analisi
della stabilità è del tutto indipendente dalla scelta delle variabili di stato. In altre parole, la
proprietà di stabilità è una proprietà strutturale del sistema dinamico.
3) Se la matrice A non è diagonalizzabile, può essere messa in relazione di similitudine con
una forma canonica (forma di Jordan). Seguendo questa strada si giunge alla conclusione
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 244
che il teorema precedentemente enunciato va corredato dalla precisazione che se vi sono
autovalori multipli a modulo unitario (e non vi sono autovalori a modulo maggiore di 1),
il sistema è instabile se per almeno uno degli autovalori a modulo unitario la cosiddetta
molteplicità geometrica (numero degli autovettori linearmente indipendenti associati
all’autovalore) è inferiore alla molteplicità algebrica (molteplicità con cui l’autovalore è
radice del polinomio caratteristico).
Esempio
Si consideri nuovamente il sistema economico, in cui:
α α
A= .
β(α − 1) βα
Posto α=0.5, β=1, si ha:
0.5 0.5
A=
− 0.5 0.5
Gli autovalori sono le radici del polinomio caratteristico:
λ − 0.5 − 0.5
χ A (λ ) = = (λ − 0.5)2 + 0.25 = λ2 − λ + 0.5
− 0.5 λ − 0.5
1± 1− 2 1± j
λ= =
2 2
e sono disposti nel piano complesso come in figura:
Im
Re
Poiché gli autovalori hanno entrambi modulo minore di 1, il sistema è asintoticamente stabile.
Anche per i sistemi a tempo discreto è possibile studiare la stabilità evitando il calcolo diretto
degli autovalori, ma studiando i coefficienti del polinomio caratteristico della matrice A:
ϕ( z ) =ϕ0 z n +ϕ1 z n −1 +ϕ2 z n − 2 + +ϕn .
Esiste un criterio, dovuto a Jury, per determinare le condizioni sui coefficienti ϕi necessarie e
sufficienti perché il polinomio ammetta tutte radici a modulo minore di 1. Tuttavia è anche
possibile ricondursi all’impiego del criterio noto a tempo continuo, il criterio di Routh, per
verificare se un polinomio ha tutte le radici a parte reale negativa. A questo scopo, occorre
individuare una trasformazione di variabili z=ψ(s), tale che, sostituita nell’equazione ϕ(z)=0,
dia luogo ancora ad un’equazione polinomiale, in s, le cui radici abbiano tutte parte reale
negativa se e solo se l’equazione ϕ(z)=0 ha tutte le radici a modulo minore di 1.
Una trasformazione utilizzabile a questo proposito è la trasformazione bilineare:
1+ s
z= .
1− s
Ovviamente questa trasformazione, essendo razionale, dà luogo ad un’equazione polinomiale.
Inoltre è facile verificare che il modulo di z è minore di 1 se e solo se la parte reale di s è
negativa. Posto infatti s = x+jy, si ha:
2
2 1 + x + jy x2 + y 2 + 2x + 1
z = = <1 ⇔ x <0.
1 − x − jy
2
x2 + y 2 − 2x + 1
Una volta determinato il polinomio in s, si procede con il criterio di Routh per l’analisi di
stabilità.
Esempio
Si consideri il polinomio di terzo grado:
ϕ( z ) = 8 z 3 − 12 z 2 + 6 z − 1 .
Applicando la trasformazione bilineare ed uguagliando a zero si ottiene:
3 2
1+ s 1+ s 1+ s
8 − 12 + 6 −1 = 0 .
1− s 1− s 1− s
Prendendo il denominatore comune ed uguagliando a zero il polinomio a numeratore:
8(1 + s )3 − 12(1 + s )2 (1 − s ) + 6(1 + s )(1 − s )2 − (1 − s )3 = 0 ,
ossia:
27 s 3 + 27 s 2 + 9s + 1 = 0 .
Costruiamo la tabella di Routh:
Anche a tempo discreto lo studio dei sistemi lineari risulta utile per lo studio locale dei sistemi
non lineari nell’intorno di stati di equilibrio.
Si consideri un sistema non lineare tempo invariante:
x (k + 1) = f ( x (k ), u(k ))
,
y (k ) = g ( x (k ), u(k ))
e si supponga che, in corrispondenza ad un ingresso costante u si abbia lo stato di equilibrio
x e l’uscita di equilibrio y , per cui:
x = f (x, u )
y = g( x, u ) .
Introducendo le variabili:
δu(k ) = u(k ) − u , δx (k ) = x (k ) − x , δy (k ) = y (k ) − y ,
si formula il sistema linearizzato:
δx (k + 1) = Aδx (k ) + Bδu(k )
,
δy (k ) = Cδx (k ) + Dδu(k )
con:
∂f ∂f ∂g ∂g
A= , B= , C= , D=
∂x x ,u ∂u x ,u ∂x x ,u ∂u x ,u
Il sistema linearizzato risulta in particolare utile per lo studio della stabilità dello stato di
equilibrio del sistema non lineare Valgono infatti i seguenti risultati:
1) Se la matrice A ha tutti autovalori a modulo minore di 1 (ossia se il sistema
linearizzato è asintoticamente stabile) lo stato di equilibrio x è asintoticamente
stabile.
2) Se la matrice A ha almeno un autovalore a modulo maggiore di 1 lo stato di equilibrio
x è instabile.
Resta come caso indecidibile sulla base dell’analisi del sistema linearizzato quello in cui la
matrice A non ha autovalori a modulo maggiore di 1 ma ne ha a modulo uguale a 1. In questo
caso occorrono approssimazioni del sistema originario non lineare estese a termini di ordine
superiore al primo per decidere circa la stabilità dello stato di equilibrio.
Esempio
Consideriamo il sistema a tempo discreto del primo ordine:
x(k + 1) = f ( x(k ), u (k )) = cos( x(k )) + u (k ) .
Siamo interessati allo studio di eventuali equilibri che si hanno quando l’ingresso è nullo:
u (k ) = u = 0 . Per trovare gli stati di equilibrio, imponiamo la condizione:
1.5
0.5
x
0
x
-0.5
-1
-1.5
-2
-5 -4 -3 -2 -1 0 1 2 3 4 5
Si consideri dunque una generica funzione reale v(k), definita per k intero ≥ 0, tale che, per
almeno un r∈ℜ, r>0, risulti:
∞
∑ v(k ) r −k < ∞ .
k =0
La serie:
∞
V (z ) = ∑ v(k )z −k
k =0
converge per valori della variabile complessa z tali che |z|>r, ovvero nel cosiddetto co-cerchio
di convergenza. Definiamo trasformata Zeta di v l’unica funzione di z, definita ed analitica
quasi ovunque nel piano complesso, che nel co-cerchio di convergenza della serie, coincide
con la somma V(z) della serie stessa.
Esponenziale
Consideriamo l’esponenziale a tempo discreto v(k)=ak. Risulta:
v(k ) = sca (k ) ⇒ V ( z ) =
z
z −1
Esempi
1) Consideriamo la rampa a tempo discreto:
ram(k ) = k , k ≥ 0
Poiché ram(k) = ksca(k), si ha:
z
Ζ[ram(k )] = − z Ζ[sca (k )] = − z
d d z
z − 1 =
dz dz ( z − 1)2
2) Consideriamo un segnale di trasformata
V (z ) =
z
z−a
Dai teoremi del valore iniziale e finale:
v(0) = lim V ( z ) = 1
z →∞
Trasformate notevoli
Utilizzando le proprietà della trasformata, si può compilare la seguente tabella di trasformate
notevoli:
v(k ) V (z )
imp(k ) 1
sca (k )
z
z −1
ram(k )
z
(z − 1)2
par (k )
z
(z − 1)3
z
ak
z−a
az
ka k
(z − a )2
dove par(k) = k(k−1)/2, k≥0.
Come la trasformata di Laplace, anche la trasformata Zeta è biunivoca: data una trasformata, è
sempre possibile risalire univocamente alla funzione del tempo che la genera.
Per trasformate Zeta razionali (rapporti di polinomi), si può utilizzare per l’antitrasformata il
metodo di Heaviside, ossia di scomposizione in frazioni semplici. Di fatto conviene
scomporre V(z)/z, secondo il seguente schema (per poli semplici):
V (z ) α 0 α1 αn
= + ++
z z z − p1 z − pn
V (z ) = α 0 + α1
z z
++ αn
z − p1 z − pn
v(k ) = α 0 imp(k ) + α 1 p1k + + α n p nk , k ≥0
In alternativa si può usare il metodo della lunga divisione, che consiste nel dividere il
polinomio a numeratore e quello a denominatore, in modo da trovare, per confronto tra il
risultato parziale della divisione e l’espansione della serie che costituisce la trasformata Zeta, i
primi campioni dell’antitrasformata:
v(0) = β 0
N (z )
V (z ) = = β 0 + β1 z −1 + β 2 z − 2 + ⇒ v(1) = β1
D( z )
v(2) = β 2
Esempio
Consideriamo la trasformata Zeta:
3 z + 12
V (z ) =
z + 5z + 6
2
V (z ) = 2 − 3
z z
+
z+2 z+3
immediatamente antitrasformabile in:
v(k ) = 2imp(k ) − 3(− 2 )k + (− 3)k , k ≥ 0 .
u (k ) = sca (k ) ⇒ U ( z ) =
z
z −1
Risulta:
z
lim y (k ) = lim[( z − 1)Y ( z )] = lim ( z − 1)G ( z ) = G (1) = µ
k →∞ z →1 z →1 z − 1
Pertanto il guadagno della funzione di trasferimento è il valore di regime della risposta allo
scalino del sistema.
In presenza di poli o zeri in z=1 (funzione di trasferimento di tipo non nullo), la nozione di
guadagno si generalizza come:
[
µ = lim ( z − 1)g G ( z ) .
z →1
]
u (k ) = sca (k ) ⇒ U (z ) =
z
z −1
La trasformata dell’uscita è:
1− p z z z
Y (z ) = µ = µ − .
z − p z −1 z −1 z − p
Antitrasformando:
( )
y (k ) = µ 1 − p k , k ≥ 0 .
Se |p|<1 il sistema è asintoticamente stabile e la risposta allo scalino converge al valore
µ=G(1). Tuttavia, se p>0, la risposta è monotona, se p<0 è oscillante:
0<p<1
p
−1<p<0
k k
0 1 2 3 4 5 6 7 8 9 10
0 1 2 3 4 5 6 7 8 9 10
Si osservi che, contrariamente ai sistemi a tempo continuo, anche un sistema del primo ordine,
con polo compreso tra –1 e 0, può dare luogo ad una risposta allo scalino oscillante.
( )
Y = U G e jθ
ψ = φ + ∠G (e ) jθ
Anche a tempo discreto è possibile estendere questo risultato a segnali in ingresso più
generali, purché trasformabili con Fourier.
La funzione complessa della variabile reale θ definita da:
( )
G e jθ , θ ∈ [0, π]
prende il nome di risposta in frequenza del sistema, e si definisce per qualsiasi sistema
lineare tempo invariante, indipendentemente dalla sua stabilità.
La risposta in frequenza si ottiene quindi valutando la funzione di trasferimento sulla
semicirconferenza superiore di centro l’origine e raggio unitario:
Im
ϑ
Re
ϑ=π ϑ=0
Fig. 175 : Luogo dei punti per il calcolo della risposta in frequenza
La risposta in frequenza costituisce uno strumento completo per l’analisi del sistema
dinamico. Tuttavia il suo utilizzo è considerevolmente limitato dal fatto che il tracciamento
dei diagrammi della risposta in frequenza (di Bode) non è agevole e non se ne danno
approssimazioni asintotiche.
Come è noto, il progetto del regolatore si conclude con la determinazione di una funzione di
trasferimento R(s). Tuttavia la funzione di trasferimento costituisce soltanto un formalismo
matematico per descrivere il comportamento dinamico di un sistema, a partire dal quale
occorre realizzare un dispositivo avente quel comportamento dinamico, ed atto alla
regolazione del processo sotto controllo.
Il modo più naturale di procedere sembra quello di realizzare, in una qualunque tecnologia
(elettronica, pneumatica, fluidica) un sistema che presenti la stessa funzione di trasferimento
ottenuta dal progetto, ed interfacciarlo con il trasduttore della misura della variabile
controllata, da un lato, e con l’attuatore, dall’altro. Questo è il principio che sta alla base dei
sistemi di controllo analogici.
Tuttavia, negli ultimi decenni, l’avvento ed il successivo sviluppo delle tecnologie digitali
hanno indotto i progettisti dei sistemi di controllo ad un crescente interesse verso l’utilizzo dei
calcolatori, in particolare dei microprocessori, all’interno dell’anello di controllo. Nei sistemi
di controllo digitale il calcolatore esegue un algoritmo che elabora le informazioni
provenienti dai trasduttori e produce un conseguente comando all’attuatore. Dopo le iniziali
difficoltà legate principalmente alla, giustificata, riluttanza del mondo industriale ad
abbandonare soluzioni tecnologicamente assestate a favore di altre basate su tecnologie
emergenti, la tecnologia di controllo digitale ha via via soppiantato i sistemi di controllo
analogici, che oggi sopravvivono soprattutto in applicazioni in cui le bande richieste agli
anelli di controllo renderebbero antieconomico il passaggio alla tecnologia digitale (esempi si
hanno nel campo del controllo dei motori elettrici).
d
c°*+ e*c u* u m y
C D/A A S
−
c* c
A/D T
Fig. 176 : Sistema di controllo digitale
d
c° + ec e*c u* u m y
A/D C D/A A S
−
c
T
Fig. 177 : Sistema di controllo digitale con conversione in digitale dell’errore
Supporremo tutti i sistemi oggetto della presente trattazione monovariabili (ad un ingresso ed
una uscita).
Si consideri un generico segnale analogico v(t), t ∈ℜ. Si fissi un’origine per l’asse dei tempi
e, a partire da tale istante (t=0), si considerino istanti di tempo distanziati l’uno dall’altro da
un intervallo TC. Si valuti quindi il segnale v(t) in corrispondenza di tutti questi istanti:
0 T 2T 3T 4T 5T
C C C C C
t
Nella conversione analogico/digitale è anche inevitabile una quantizzazione del segnale, vale
a dire la suddivisione dell’insieme dei valori che può assumere il segnale a tempo continuo v
in un numero finito di intervalli. Tutti i valori di v interni allo stesso intervallo danno luogo
allo stesso campione espresso in bit. La trattazione analitica dell’errore di quantizzazione è
decisamente complessa e la sua rilevanza è in qualche misura ridimensionata dall’utilizzo di
convertitori ad elevato numero di bit. Nel seguito non ci occuperemo degli effetti della
quantizzazione, ritenendo l’insieme in cui varia v* identico a quello in cui prende valori v.
0 T 2T 3T 4T 5T
C C C C C
t
Fig. 179 : Segnali analogici che danno luogo allo stesso segnale campionato
Questo fenomeno, detto aliasing, impone che il periodo di campionamento sia adeguato alle
caratteristiche del segnale soggetto al campionamento. Il campionamento deve essere
sufficientemente fitto (e quindi il periodo di campionamento sufficientemente piccolo) da
cogliere anche le variazioni più rapide del segnale.
A questo proposito, è facile convincersi che per campionare correttamente un segnale
sinusoidale occorrono almeno due campioni per periodo. Detto T il periodo della sinusoide si
avrà quindi:
T > 2TC ⇒ 2π T < π Tc ,
ossia, detta ω = 2π T la pulsazione della sinusoide,:
ΩN > ω .
0.8
0.6
−
0.4
T
0.2
-0.2
-0.4
-0.6
-0.8
-1
Volendo estendere il risultato precedente a segnali generici, è utile ricordare che qualsiasi
segnale a tempo continuo si può scomporre, sotto ipotesi molto blande, in serie o integrale (a
seconda che sia periodico o aperiodico) di infinite sinusoidi, o componenti armoniche,
attraverso la trasformata di Fourier. Un segnale si dice poi a banda limitata se ha trasformata
di Fourier nulla, o sostanzialmente nulla, per pulsazioni maggiori di una pulsazione Ωv. E’
allora evidente che se tutte le armoniche del segnale hanno pulsazione inferiore alla
pulsazione di Nyquist ΩN, non si genera aliasing nel campionamento di alcuna di tali
armoniche, e quindi del segnale stesso. Ne consegue il seguente importante risultato:
Se è rispettata la condizione del teorema del campionamento, deve essere possibile ricostruire,
a partire dalla sequenza completa dei campioni del segnale campionato v*(k), il segnale
originario v(t) ad ogni istante. La formula che risolve il problema è la formula di Shannon (o
del decampionatore di Shannon):
+∞ * sin (Ω N t − kπ)
v(t ) = ∑ v (k ) .
k = −∞ Ω N t − kπ
Si osservi che, come è ovvio, vi sono comunque infiniti segnali a tempo continuo che
generano tramite campionamento la stessa sequenza v*(k), ma di questi uno solo soddisfa la
condizione del teorema di Shannon, e la sua espressione è data dalla formula del
decampionatore.
Scelto il periodo di campionamento del convertitore A/D, è anche possibile forzare il segnale
a tempo continuo al soddisfacimento della condizione del teorema del campionamento,
filtrando il segnale stesso con un filtro passabasso. Tale filtro, che va sotto il nome di filtro
antialiasing, avrà guadagno unitario e pulsazione di taglio inferiore alla pulsazione di
Nyquist, in modo da tagliare le componenti ad alta frequenza del segnale.
|F|
dB
v(t) v*(k) ωF ΩN ω
F(s) A/D
La conversione digitale/analogico consiste nel ricavare da una sequenza di valori v*(k) cui è
associata una base dei tempi, un segnale a tempo continuo, che negli istanti associati ai valori
v*(k), assuma gli stessi valori della sequenza data.
v*
v
0 1 2 3 4 5 0 T 2T 3T 4T 5T
C C C C C
k t
0 T 2T 3T 4T 5T
C C C C C
t
Il dispositivo che realizza questa operazione si chiama Mantenitore di ordine zero o ZOH
(Zero Order Hold).
v ^v
v
^
v(t) v*(k) v(t)
ZOH 0 T 2T 3T 4T 5T
C C C C C
t
Tra i segnali a tempo continuo in ingresso ed uscita, v e vˆ si evidenzia un certo ritardo. Tale
ritardo è quantificabile, con un’analisi non del tutto banale nel dominio della frequenza, in
circa metà del periodo di campionamento, τ=TC/2 , e prende il nome di ritardo intrinseco di
conversione.
e*(k) u*(k)
C
Fig. 186 : Regolatore digitale
In altre parole, il ritardo di elaborazione non comporta ulteriori ritardi nell’anello (il
regolatore stesso ha già in sé almeno un passo di ritardo).
Se R(z) è proprio non strettamente u*(k) dipende da e*(k), per cui la conoscenza del nuovo
campione dell’errore è richiesta per il calcolo del nuovo campione della variabile di controllo
Paolo Rocco - Dispensa di Fondamenti di Automatica Pag. 267
u*(k). Questo comporta che, in linea di principio, non appena il calcolatore ha terminato
l’elaborazione, la sua uscita andrebbe aggiornata con il nuovo campione u*(k) calcolato:
campionam. aggiornam.
e*(k) u*(k)
t
kTC kTC+τC (k+1)TC
In questo modo, tuttavia, si genererebbe un ritardo variabile (a seconda del tempo richiesto
per eseguire le operazioni in ciascun intervallo di campionamento) e si incorrerebbe in
difficoltà tecnologiche legate ad un’operazione di aggiornamento del convertitore D/A
asincrona con la temporizzazione degli altri organi. Una soluzione alternativa consiste
nell’aggiornare l’uscita del calcolatore comunque al termine dell’intervallo di
campionamento, accettando di introdurre nell’anello un ritardo fisso pari a TC:
campionam. aggiornam.
e*(k) u*(k)
t
kTC kTC+τC (k+1)TC
Fig. 189 : Temporizzazione alternativa nel caso di regolatore proprio non strettamente
y° + e e* u* u y
R(z) ZOH G(s)
−
y°*+ e* u* u y
R(z) ZOH G(s)
−
y*
y° + e u y
R°(s) G(s)
−
y° + e e* u* u y
R(z) ZOH G(s)
−
y° + e e* u* u y
F(s) R(z) ZOH G(s)
−
La pulsazione di taglio del filtro dovrà essere superiore a ωc (per non tagliare componenti
| |
dB
ωc ωF ΩN ω
sistema di filtro
controllo
Si osservi a questo punto che il fatto stesso di realizzare il regolatore in tecnologia digitale con
campionatori e mantenitori introduce il ritardo intrinseco di conversione (pari a metà del
periodo di campionamento). A questo si sommano i ritardi di elaborazione, di conversione e
lo sfasamento introdotto dall’eventuale filtro antialiasing.
E’ bene quindi che il regolatore R°(s) progettato a tempo continuo sia dotato di un’eccedenza
di margine di fase tale da coprire gli sfasamenti introdotti dalla realizzazione digitale.
Se per esempio ΩN=10ωc, tenendo conto del solo ritardo intrinseco di conversione, si deve
prevedere la seguente eccedenza di margine di fase:
TC 180° ω
∆ϕ m = ωc = 90° c = 9° .
2 π ΩN
Per quanto riguarda la scelta del regolatore R(z) occorre fare in modo cha la serie di
campionatore, sistema di funzione di trasferimento R(z) e ZOH si comporti agli effetti esterni
come R°(s). Si osservi a questo proposito che la funzione di trasferimento non è altro che un
formalismo utile per rappresentare un sistema di equazioni differenziali lineari: ne consegue
che i metodi noti per l’integrazione numerica delle equazioni differenziali possono tornare
utili anche per la soluzione del nostro problema.
Consideriamo a questo proposito un semplice integratore a tempo continuo:
u y
1/s
Fig. 195 : Sistema da integrare numericamente
2 z −1 T z + 1 k p (2T I + T )z + T − 2T I
R( z ) = R° = k p 1 + = =
T z +1 2T I z − 1 2T I z −1
z −b
= Γp
z −1
con:
T 2T − T
Γ p = k p 1 + , b = I .
2T I 2T I + T
Pertanto:
U * (z ) z −b 1 − bz −1
= Γp = Γp
E * (z ) z −1 1 − z −1
ossia:
(1 − z )U * (z ) = Γ (1 − bz )E * (z )
−1
p
−1
Questa equazione alle differenze può essere tradotta in un programma di calcolo, da eseguire
ad ogni istante di campionamento:
input yref, y;
e = yref-y;
u = u + Gammap*e-Gammap*b*eold;
eold = e;
u* u y y*
ZOH G(s)
Fig. 196 : Sistema a segnali campionati
Sceglieremo ora come istante iniziale t0 un generico istante di campionamento e come istante t
il successivo istante di campionamento, ossia t0 = kT, t = kT+T:
kT +T
A( KT +T − τ )
x (kT + T ) = e AT
x (kT ) + ∫e Bu (τ)dτ .
kT
Poniamo ora x*(k) = x(kT) ed osserviamo che, in virtù del principio di funzionamento dello
ZOH, la variabile u resta costante per tutto l’intervallo di campionamento, e quindi per tutto
l’intervallo compreso tra gli estremi d’integrazione:
u (τ) = u (kT ) = u * (k ) τ ∈ [kT , kT + T )
Pertanto:
kT +T A(KT +T −τ )
x (k + 1) = e
* AT
x (k ) + ∫ e
*
Bdτu * (k ) .
kT
0
In definitiva, il sistema a tempo discreto si lascia descrivere dalle seguenti equazioni:
x * (k + 1) = A* x * (k ) + B *u (k )
,
y * (k ) = Cx * (k ) + Du * (k )
con:
T
A * = e A T , B * = ∫ e A σ B dσ ,
0
(
G * ( z ) = C zI − A * )
−1
B* + D .
Dalla relazione precedentemente ricavata tra la matrice A del sistema a tempo continuo e la
matrice A* del sistema a tempo discreto, discende la relazione tra un autovalore si della
matrice A e un autovalore zi della matrice A*:
z i = e siT , i = 1, , n.
Pertanto i poli delle due funzioni di trasferimento sono legati dalla trasformazione:
z = e sT ,
che prende il nome di trasformazione di campionamento.
La trasformazione mette in relazione regioni del piano complesso s (nel quale si indicano i
poli del sistema a tempo continuo) con regioni del piano z (relativo ai poli del sistema a tempo
discreto), come mostra la figura:
Im Im
s z
jΩN
Re Re
1
−jΩN
La funzione di trasferimento del sistema a segnali campionati si può anche ottenere in modo
più semplice, osservando che uno scalino a tempo discreto sulla variabile u*(k) genera, per
come opera lo ZOH, uno scalino a tempo continuo su u(t). Ne consegue la seguente
procedura:
1. Detta Y(s)= G(s)/s la trasformata di Laplace della risposta di G(s) allo scalino, si
antitrasforma Y per ottenere la risposta allo scalino nel dominio del tempo y(t);
2. Si valuta la risposta allo scalino negli istanti di campionamento, ottenendo
y*(k)=y(kT);
3. Si calcola la trasformata Zeta Y*(z) di y*(k);
4. Si ricava G*(z) come rapporto tra Y*(z) e la trasformata dello scalino a tempo discreto:
Y * (z ) z − 1 *
G * (z ) = = Y (z ) .
z z
z −1
La funzione di trasferimento che si ottiene con questa procedura è ovviamente identica a
quella ottenuta precedentemente. Si ponga attenzione al fatto che quanto ottenuto con le due
procedure esposte costituisce un risultato esatto e non va confuso con le formule introdotte per
la discretizzazione della legge di controllo (formule di Eulero e di Tustin).
Esempio
Si consideri il sistema di funzione di trasferimento:
G (s ) =
p
.
s+ p
Una realizzazione minima (in forma canonica di controllo) del sistema è la seguente:
x (t ) = − px(t ) + u (t )
.
y (t ) = px(t )
(
G * ( z ) = C zI − A* )−1
B* + D =
CB *
z − A*
=
1 − e − pT
z − e − pT
.
Y * (z ) =
z z
− .
z − 1 z − e − pT
Infine la funzione di trasferimento si ottiene come:
z −1 * z −1 1 − e − pT
G * (z ) = Y (z ) = 1 − = ,
z z − e − pT z − e − pT
e coincide ovviamente con quella ricavata con l’altro metodo.
Si osservi che questa funzione di trasferimento ha guadagno unitario (come quella a tempo
continuo) e che il suo polo è legato al polo di G(s) dalla trasformazione di campionamento.
Per il progetto del regolatore si può ora fare riferimento ad un sistema interamente a tempo
discreto:
y°*+ e* u* y*
R(z) G*(z)
−
dove G*(z) è la funzione di trasferimento del sistema a segnali campionati prima discussa.
A questo punto il regolatore si può progettare con la teoria dei sistemi a tempo discreto.
Molti dei concetti e metodi visti per i sistemi di controllo a tempo continuo restano inalterati:
il criterio di Nyquist ha fondamentalmente lo stesso enunciato, come pure è uguale il
tracciamento del luogo delle radici.
Si osservi che per la scelta del periodo di campionamento, non essendoci un preesistente
progetto a tempo continuo a cui rifarsi, occorre seguire altri criteri. Ad esempio si può
selezionare il tempo di campionamento in modo che nel tempo di assestamento dei transitori
del sistema in anello chiuso siano compresi un numero di passi di campionamento compreso
tra 5 e 50.
A tempo discreto vengono inoltre utilizzati, più che a tempo continuo, metodi che assegnano
il modello del sistema in anello chiuso (ossia la funzione di trasferimento dal riferimento alla
variabile controllata) e da esso ricavano direttamente la funzione di trasferimento del
controllore. Uno di questi metodi, noto anche come metodo di Ragazzini, prevede una
procedura sistematica per l’assegnamento del modello in modo che siano soddisfatte una serie
di requisiti sul sistema di controllo (causalità, stabilità, prestazioni) e verrà di seguito esposto
nei suoi tratti essenziali.
Sia F*(z) la funzione di sensitività complementare del sistema di controllo di Fig. 23, ossia:
Y * (z ) R( z )G * ( z )
F * (z ) = = .
Y o* ( z ) 1 + R( z )G * ( z )
Assegnata F*(z), ossia assegnato il modello del sistema in anello chiuso, si può
immediatamente ricavare la funzione di trasferimento del controllore:
F * (z )
R(z ) =
[
G * (z )1 − F * (z ) ].
Tuttavia, al fine di pervenire ad un risultato di utilità pratica, ovvero ad un regolatore
realizzabile, che non comporti generazione di parti non raggiungibili o non osservabili
instabili e che conferisca al sistema di controllo determinate prestazioni, occorre scegliere
F*(z) rispettando alcuni vincoli. Per agevolare la trattazione, esprimiamo tutte le funzioni di
trasferimento come rapporti di polinomi, primi tra loro:
2) Stabilità e cancellazioni
Affinché il sistema in anello chiuso sia asintoticamente stabile, le radici di A(z) devono
ovviamente essere tutte a modulo minore di 1. Bisogna però anche evitare che eventuali zeri o
poli a modulo maggiore o uguale a 1 in G* siano cancellati dal regolatore, in modo da non
formare parti non raggiungibili o non osservabili non asintoticamente stabili. Dalla formula
risolutiva si traggono facilmente le conclusioni.
• Ogni zero zi di G*(z) (N(zi)=0), a modulo maggiore o uguale a 1 deve essere anche radice
di B(z):
N ( z i ) = 0, z i ≥ 1 ⇒ B(z i ) = 0
3) Precisione statica
Per avere errore nullo a regime con riferimento a scalino, F*(z) deve avere guadagno unitario
(F*(1)=1):
A(1) = B(1)
4) Precisione dinamica
Per quanto concerne la scelta di poli e zeri di F*(z), una delle strategie più comuni, peculiare
dei sistemi a tempo discreto, è il controllo in tempo finito. Con questa strategia, la variabile
controllata y* raggiunge, a seguito di una variazione a scalino del riferimento, il valore di
regime in un numero finito di passi. Si osservi che questa circostanza è impossibile a tempo
continuo. Per imporre questo comportamento al sistema in anello chiuso occorre che tutti i
poli di F* siano nell’origine del piano complesso, ossia che F* assuma l’espressione:
B(z )
F * (z ) = .
z nA
In questo caso, infatti, risulta:
Y * (z ) b0 z n A + b1 z n A −1 + + bn A
= = b0 + b1 z −1 + + bn A z −n A ,
Y o*
(z ) z nA
y * (k ) = b0 y o* (k ) + b1 y o* (k − 1) + + bn A y o* (k − n A ) .
Si deduce quindi che effettivamente, se yo*(k)=sca(k), dopo nA passi y* non cambia più valore.
y*
k
0 1 2 3 4 5
Se si vuole in particolare che l’uscita raggiunga il valore di regime nel tempo minimo, sarà
sufficiente porre:
F * (z ) =
1
,
z δG
y*
k
0 1 2 3 4 5
y*
k
0 1 2 3 4 5
Per ovviare a queste difficoltà bisogna modificare il procedimento di sintesi, secondo tecniche
alternative qui non affrontate.
Esempio
Sia:
G * (z ) =
1
.
z−2
Si vuole progettare R(z) in modo che il sistema in anello chiuso sia asintoticamente stabile, la
risposta di y* ad uno scalino in yo* si esaurisca in tempo minimo, senza errore a regime.
Poiché G* ha grado relativo 1, anche F* deve avere grado relativo 1. Si osservi che G*
presenta un polo a modulo maggiore di 1. Per poter imporre sia la condizione sulla non
cancellazione di questo polo che la condizione sulla precisione statica (guadagno unitario di
ossia:
ρ(1 + a ) = 1 2+a 2 1
⇒ =4 ⇒ a=− ⇒ ρ= = 3.
ρ(2 + a ) = 4 1+ a 3 1+ a
Pertanto:
2
z−
3z − 2
F * (z ) = 3 2 3 = .
z z2
Ne consegue la funzione di trasferimento del regolatore:
3z − 2
R(z ) = z2 =
(3z − 2)(z − 2) = (3z − 2)(z − 2) = 3z − 2 .
1 3z − 2
1− 2 z 2 − 3z + 2 (z − 1)(z − 2) z − 1
z − 2 z
Si osservi la presenza nel regolatore di un polo in z=1 (azione integrale).