Universit`a degli Studi di Siena Sede di Arezzo Corso di ... · Appunti del corso di ......

108
Universit`a degli Studi di Siena Sede di Arezzo Corso di Laurea triennale in Ingegneria dell’Automazione Appunti del corso di Controllo Digitale A cura di Gianni Bianchini

Transcript of Universit`a degli Studi di Siena Sede di Arezzo Corso di ... · Appunti del corso di ......

Universita degli Studi di Siena

Sede di Arezzo

Corso di Laurea triennale in Ingegneria dell’Automazione

Appunti del corso di

Controllo Digitale

A cura di Gianni Bianchini

Indice

Glossario, abbreviazioni e notazione 4

Capitolo 1: Introduzione 11.1 Analogico vs. digitale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Conversione analogico-digitale (A/D) . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Quantizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.4 Filtri digitali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.5 Conversione digitale-analogico (D/A) . . . . . . . . . . . . . . . . . . . . . . . . . 51.6 Un primo approccio al progetto . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Capitolo 2: Sistemi lineari a tempo discreto 122.1 Trasformata zeta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.2 Trasformata zeta di segnali campionati . . . . . . . . . . . . . . . . . . . . . . . . 142.3 Sistemi lineari a tempo discreto in rappresentazione ingresso/uscita . . . . . . . . 192.4 Sistemi lineari a tempo discreto in rappresentazione di stato . . . . . . . . . . . . 202.5 Stabilita dei sistemi lineari stazionari a tempo discreto . . . . . . . . . . . . . . . 222.6 Criteri di stabilita per sistemi a tempo discreto . . . . . . . . . . . . . . . . . . . 232.7 Risposta in frequenza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.8 Sistemi a tempo discreto in retroazione . . . . . . . . . . . . . . . . . . . . . . . . 252.9 Stabilita interna di sistemi di controllo . . . . . . . . . . . . . . . . . . . . . . . . 26

Capitolo 3: Sistemi a dati campionati 283.1 Modellistica del campionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.2 Analisi dei sistemi a dati campionati . . . . . . . . . . . . . . . . . . . . . . . . . 333.3 Schemi a blocchi a dati campionati . . . . . . . . . . . . . . . . . . . . . . . . . . 363.4 Oscillazioni interperiodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.5 Equivalente campionato in rappresentazione di stato . . . . . . . . . . . . . . . . 38

Capitolo 4: Campionamento e ricostruzione 404.1 Spettro di Fourier di un segnale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.2 Spettro del segnale campionato . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.3 Modello del ricostruttore ideale e teorema di Shannon . . . . . . . . . . . . . . . 414.4 Interpretazione in frequenza dello ZOH . . . . . . . . . . . . . . . . . . . . . . . . 45

Capitolo 5: Realizzazione digitale di controllori analogici Scelta del passo dicampionamento 47

5.1 Progetto per discretizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475.2 Metodi di discretizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.3 Mappatura dei poli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515.4 Specifiche statiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515.5 Predistorsione in frequenza (prewarping) . . . . . . . . . . . . . . . . . . . . . . . 545.6 Matching poli zeri (MPZ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555.7 Scelta del passo di campionamento . . . . . . . . . . . . . . . . . . . . . . . . . . 56

5.8 Progetto del filtro antialiasing. Effetto sul passo di campionamento . . . . . . . . 58

Capitolo 6: Sintesi nel dominio a tempo discreto 606.1 Sintesi diretta nel discreto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606.2 Scelta di della funzione di trasferimento ad anello chiuso . . . . . . . . . . . . . . 636.3 Scelta del passo di campionamento nella sintesi diretta . . . . . . . . . . . . . . . 72

Capitolo 7: Progetto nello spazio degli stati 747.1 Metodi nello spazio degli stati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747.2 Raggiungibilita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747.3 Allocazione degli autovalori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797.4 Inseguimento del riferimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Capitolo 8: Stima dello stato e sintesi del regolatore 858.1 Stima dello stato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858.2 Osservabilita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858.3 Osservatore asintotico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908.4 Sintesi del regolatore (compensatore dinamico) . . . . . . . . . . . . . . . . . . . 93

Capitolo 9: Cenni di controllo ottimo 969.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969.2 Controllo ottimo lineare quadratico (LQ) su orizzonte temporale finito . . . . . . 979.3 Controllo LQ su orizzonte infinito . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Bibliografia 102

2

Glossario, abbreviazioni e notazione

L : lineareNL : non lineareTC : a tempo continuoTD : a tempo discretoTI : tempo invariante (stazionario)S(S/M)I(S/M)O : (Single/Multiple) Input (Single/Multiple) OutputR

n : spazio dei vettori reali di dimensione nv ∈ R

n : vettore di Rn

v′ : trasposto di v‖v‖ : norma di v‖v‖p : norma p di vspan{v1, . . . , vm} : sottospazio di R

n generato da v1, . . . , vm

detA : determinante della matrice Aadj A : aggiunta della matrice AA−1 : inversa della matrice Arank A : rango della matrice Aker A : nucleo della matrice A o della trasformazione lineare associataImA : spazio immagine della matrice A o della trasformazione lineare associataC : il piano complessos ∈ C : numero complessoRe[s], Im[s] : parte reale ed immaginaria di s|s| : modulo di sarg[s] : argomento (fase) di ss∗ : coniugato di sG(s) : C → C : funzione di variabile complessa a valori complessiRes[G(s), s0] : residuo della funzione G(s) in s0 ∈ C

R+ : i numeri reali positivi, l’asse dei tempi nel continuo

f(t) : R+ → R : funzione reale del tempo (segnale a tempo continuo)

F (s) = L[f(t)] : trasformata di Laplace della funzione f(t)N

+ : i numeri interi positivi, l’asse dei tempi nel discreto{fk} : N

+ → R : successione a valori reali (segnale a tempo discreto)F (z) = Z[fk] : trasformata zeta della successione fk

fk = f(kT ) : sequenza dei campioni del segnale f(t) agli istanti kTZ[F (s)] == Z[L−1[F (s)]|t=kT ] : trasformata zeta della sequenza dei campioni fk = f(kT )

del segnale f(t) la cui trasformata di Laplace e F (s)S : il semipiano sinistro aperto di C, i.e. {s ∈ C : Re[s] < 0}

a.k.a. la regione di stabilita di asintotica di Hurwitz (TC)∂S : la frontiera di S, i.e., l’asse immaginarioD : il disco di raggio unitario aperto di C, i.e. {z ∈ C : |z| < 1}

a.k.a. la regione di stabilita asintotica di Schur (TD)∂D : la frontiera di D

i.e., la circonferenza di centro l’origine e raggio unitariorect(x) : 1 per −1 ≤ x ≤ 1 e 0 altrove

4

Capitolo 1

Introduzione

Sommario. In questo capitolo vengono introdotti in modo elementare i componenti fondamentali

di un sistema di controllo digitale, in modo da inquadrare nel suo complesso il problema del progetto

e risolvere in modo intuitivo un semplice esercizio di sintesi. I concetti presentati verranno ripresi in

dettaglio nei capitoli seguenti.

1.1 Analogico vs. digitale

La teoria classica dei controlli automatici opera in un contesto completamente analogico. Taleteoria presuppone infatti che ciascun elemento del sistema di controllo (processo, controllore,sensori ed attuatori) sia costituito da un’apparecchiatura che misura, elabora e genera in uscitagrandezze variabili in un continuo di valori e con continuita nel tempo. I sistemi dinamicicoinvolti sono dunque a tempo continuo (TC), qualunque sia la loro natura fisica, che puoessere ad esempio meccanica, elettrica, fluidodinamica oppure ibrida. Le tecniche relative siriferiscono inoltre a sistemi di controllo lineari stazionari a parametri concentrati, descrittipertanto da equazioni differenziali ordinarie lineari a coefficienti costanti. Per tali sistemi e notoche la dinamica del processo, quella del compensatore e quella del sistema complessivo sonorappresentabili mediante funzioni di trasferimento nel dominio della trasformata di Laplace.(Fig. 1.1).

Processo

Unità di controllo

AttuatoriSensori

G(s)

C(s)?

Figura 1.1: Sistema di controllo analogico

Le possibilita offerte dall’impiego dei calcolatori elettronici programmabili fanno sı che imoderni sistemi di controllo siano realizzati in larga parte con tecnologia digitale. In questisistemi il regolatore e costituito da un computer ed e pertanto in grado di elaborare soltantograndezze di tipo elettrico, rappresentate con un numero finito di bit (quantizzate) e definite adistanti di tempo scanditi da un segnale di sincronismo (clock); il calcolatore puo essere quindivisto come un sistema dinamico a tempo discreto (TD) che opera con grandezze quantizzate.

2

All’interfaccia tra il regolatore ed il processo e necessaria la presenza di dispositivi in grado dioperare la conversione da grandezze a tempo continuo e variabili con continuita a grandezzea tempo discreto e quantizzate (conversione A/D, analogico-digitale) e viceversa (conversioneD/A, digitale-analogico) (Fig 1.2).

Processo

Unità di controllo

AttuatoriConversione D/A

DA

1001

AttuatoriConversione D/A

DA

1001

Sensori Conversione A/D

DA

1001

Sensori Conversione A/D

DA

1001

Figura 1.2: Sistema di controllo digitale

L’impiego del calcolatore come elemento centrale del sistema di controllo ha come principalemotivazione la notevole flessibilita di questi sistemi nella realizzazione di algoritmi di controllosofisticati: si pensi alla relativa facilita con cui e possibile elaborare una funzione matematicacomplessa con un calcolatore elettronico digitale piuttosto che con un circuito ad amplificatorioperazionali o, peggio ancora, mediante un sistema costruito con elementi idraulici o meccanici.Elenchiamo alcuni ulteriori vantaggi dell’approccio digitale:

• possibilita di effettuare facilmente delle simulazioni,

• flessibilita ed adattabilita, indipendenza dalla natura dell’impianto,

• affidabilita, unita di controllo poco soggetta a degrado/usura,

• minore sensibilita al rumore durante l’elaborazione e la trasmissione delle grandezze.

Alcuni problemi di natura sistemistica legati a questo approccio, quali

• la necessita di disporre di modelli discreti di sistemi intrinsecamente continui,

• la perdita di informazione dovuta al campionamento,

• la perdita di proprieta importanti quali la stazionarieta del sistema,

• l’introduzione di ritardi nell’anello di controllo dovuti all’elaborazione,

saranno discussi in dettaglio nel seguito del corso. Dal punto di vista tecnologico si evidenzianouna maggior complessita generale dell’architettura rispetto ad un sistema analogico e l’usoirrinunciabile di apparati elettrici/elettronici.

3

1.2 Conversione analogico-digitale (A/D)

Poiche il regolatore digitale puo operare solo con segnali definiti ad istanti di tempo discreti,ovvero con sequenze di numeri, e necessaria la presenza di un dispositivo in grado di trasformareun segnale a tempo continuo in un corrispondente segnale a tempo discreto. Tale dispositivorappresenta l’interfaccia tra i segnali continui generati dall’impianto ed i segnali elaborabili dalcalcolatore ed e detto convertitore analogico-digitale, campionatore o piu brevemente bloccoA/D. Da un punto di vista matematico, il campionamento e l’operazione che, data una funzionedel tempo f(t) : R

+ → R, fornisce la successione {fk} : N → R ottenuta valutando f(t) agliistanti tk = kT per k = 0, 1, . . . , dove T > 0 e un valore fissato detto periodo (o tempo, o passo)di campionamento, i.e.,

f(t) → fk = f(kT ), k = 0, 1, 2, . . . (1.1)

I valori fk sono detti campioni di f(t) agli istanti tk = kT .L’operazione di campionamento puo essere rappresentata schematicamente dalla chiusura pe-riodica di un interruttore come in Fig. 1.3. Come sara illustrato in dettaglio nel seguito, la

T

f(t) fk = f(kT )

Figura 1.3: Campionamento

scelta del periodo di campionamento T riveste un ruolo fondamentale nel progetto di un sistemadi controllo digitale.Si definiscono la pulsazione di campionamento ωs e la frequenza di campionamento fs rispetti-vamente come

ωs =2π

T, fs =

1

T. (1.2)

1.3 Quantizzazione

L’elaborazione digitale dei segnali prevede la memorizzazione di questi all’interno di strutture aprecisione finita, siano esse in rappresentazione intera, in virgola fissa o in virgola mobile. Cioimplica un processo di quantizzazione, ovvero di approssimazione del valore di ciascun campionefk con un valore fk rappresentabile nella struttura considerata. Come conseguenza di questoprocedimento, vi sono intervalli di valori che vengono mappati in un unico valore (Fig. 1.4).Il formato di rappresentazione dei dati ed il numero di bit costituiscono due parametri fonda-mentali che influenzano le prestazioni del sistema digitale; l’intervallo di valori rappresentabiliin macchina risulta necessariamente limitato.Si osservi che la relazione tra fk e fk non e una legge lineare. Pertanto, in linea di principio,ogni sistema di controllo digitale e un sistema dinamico non lineare. Salvo discuterne gli effettia posteriori, l’effetto non lineare introdotto dalla quantizzazione sara trascurato nell’esposizioneche segue.

4

fk

fk

Figura 1.4: Quantizzazione

1.4 Filtri digitali

Si consideri il semplice schema di controllo digitale in Fig. 1.5. Come si puo notare, esso costi-tuisce un’estensione del classico sistema di controllo in retroazione unitaria, dove P e l’impianto(analogico) e C e il compensatore digitale, ovvero l’algoritmo di controllo. Sono inoltre presentii blocchi di conversione D/A e A/D. In questo schema, le funzionalita dei blocchi esterni al

_

y0k ek uk

C D/A A/D

Pd

y(t)

yk

P

Figura 1.5: Sistema di controllo digitale

riquadro tratteggiato vengono realizzate attraverso un calcolatore digitale. L’algoritmo di con-trollo consiste nell’elaborazione dei campioni della sequenza ek del segnale errore per ottenere lasequenza uk del segnale di comando da inviare all’impianto. Il controllore C, che realizza questoalgoritmo, e un sistema a tempo discreto, ovvero un operatore che agisce sulla successione diingresso {ek} fornendo la successione di uscita {uk}. In generale tale sistema e dinamico, ovverol’uscita al generico istante k e funzione di piu campioni della successione {ek} e non del solocampione relativo all’istante k. Per evidenti ragioni fisiche, inoltre, l’uscita ad ogni istante nonpuo dipendere dall’ingresso ad istanti futuri, il sistema e quindi supposto soddisfare la proprietadi causalita. Infine, la relazione ingresso-uscita puo essere espressa sotto forma di regressione,ovvero per ogni k si assume che C operi secondo una legge del tipo

uk = ΦCk (uk−1, uk−2, . . . , ek, ek−1, ek−2, . . . ) (1.3)

5

ek uk

C

Figura 1.6: Filtro digitale

dove ΦCk (·), k = 0, 1, 2, . . . sono funzioni note. Nell’analisi che segue, l’attenzione sara ristretta

alla classe dei sistemi dinamici (filtri) lineari a tempo discreto, tempo invarianti (LTDTI) escalari (SISO). Tali sistemi, come gia noto, sono descritti da equazioni alle differenze ingresso-uscita a coefficienti costanti di ordine n della forma

uk+n + an−1uk+n−1 + · · · + a0uk = bmek+m + bm−1ek+m−1 + · · · + b0ek (1.4)

nonche da relazioni algebriche nel dominio della trasformata zeta, i.e.,

U(z) = C(z)E(z) (1.5)

doveE(z) = Z[ek], U(z) = Z[uk] (1.6)

e C(z), detta funzione di trasferimento , e data da

C(z) =bmzm + bm−1z

m−1 + · · · + b0

zn + an−1zn−1 + · · · + a0. (1.7)

Osservazione 1.1 Nello schema in Fig. 1.5, anche il blocco tratteggiato Pd, che rappresental’insieme dell’impianto, supposto lineare, e dei convertitori cosı come viene “visto” dal calcola-tore, e di fatto un sistema dinamico a tempo discreto poiche genera la sequenza dei campionidell’uscita {yk} a partire da quella dei campioni del comando {uk}. Tale sistema e pero di natu-ra ibrida, in quanto contiene al suo interno elementi analogici, e quindi sara necessario studiarese e sotto quali ipotesi possa essere descritto da un opportuno sistema LTDTI.

Osservazione 1.2 E fondamentale notare che, seppure ogni sistema di controllo digitale lavoricon grandezze campionate, la variabile che deve essere regolata e di fatto l’uscita analogica(continua) y(t) del processo piuttosto che la sua versione campionata yk, poiche e attraversoy(t) che il sistema interagisce fisicamente con il mondo esterno. La sequenza yk e funzionale alsolo calcolo dell’azione di controllo e rappresenta l’informazione di cui il compensatore digitaledispone per realizzare la regolazione di y(t). E facile intuire che, in generale, la sequenzayk contiene una quantita d’informazione inferiore a quella contenuta nell’intera evoluzione delsegnale analogico y(t), inoltre i segnali di riferimento possono essere elaborati solo in versionecampionata (la sequenza y0

k nel sistema considerato); questo problema e di importanza crucialenei sistemi di controllo che integrano elementi analogici e digitali e sara analizzato con attenzionein seguito.

1.5 Conversione digitale-analogico (D/A)

In ogni sistema di controllo digitale, e necessario convertire il segnale campionato ottenuto comeuscita del regolatore in un segnale continuo, in modo che sia possibile applicarlo al sistema fisico

6

uh(t)

tT 2T

u0

u1

u2

Figura 1.7: Mantenitore di ordine zero (ZOH)

da controllare. Si deve cioe generare un segnale continuo uh(t) da applicare all’impianto a partiredal segnale discreto uk fornito dal controllore. Naturalmente, la costruzione del segnale uh(t)a partire dalla sequenza uk deve avvenire in modo causale, ovvero ad ogni istante tale segnalenon puo essere funzione dei campioni che saranno generati dal controllore ad istanti futuri. Lasoluzione piu usata e quella di mantenere costante in tutto l’intervallo di campionamento ilvalore dell’ultimo campione generato Il dispositivo che realizza questa tecnica prende il nomedi mantenitore di ordine zero o Zero-Order Hold (ZOH) (Fig. 1.7). Tale dispositivo generaappunto un segnale analogico che nell’intervallo kT ≤ t < (k + 1)T e costante e pari al valorericevuto in ingresso all’istante t = kT .Il segnale ricostruito puo in linea di principio dipendere anche da piu di un campione del segnalediscreto (invece che solo dall’ultimo campione acquisito come nel caso dello ZOH). Ad esempio,il ricostruttore di ordine uno o First-Order Hold (FOH) fornisce in uscita un segnale uh(t) cheper kT ≤ t < (k + 1)T e pari ai valori assunti dal prolungamento della retta congiungente ipunti (kT, u(kT )) e ((k − 1)T, u((k − 1)T )) (Fig. 1.8). Si noti che tanto lo ZOH quanto il FOHoperano in modo causale.

1.6 Un primo approccio al progetto

Come sara illustrato dettagliatamente in seguito, per la progettazione del regolatore digitale sipossono impiegare due classi di metodi: metodi diretti e metodi per approssimazione.I metodi diretti consistono nell’effettuare il progetto del regolatore esclusivamente nel dominioa tempo discreto a partire dalle specifiche assegnate; questo presuppone che si possa preventi-vamente determinare una rappresentazione puramente a tempo discreto delle componenti delsistema di controllo che a tempo discreto non sono, ovvero l’impianto ed i convertitori. I metodiper approssimazione, al contrario, si basano sul progetto di un regolatore analogico eseguitoin modo standard (ad es. con la sintesi per tentativi) e sulla successiva determinazione, conopportune tecniche, di un regolatore digitale le cui caratteristiche dinamiche riproducano fedel-mente quelle del regolatore analogico, in modo da assicurare al sistema di controllo analogheprestazioni.

Riservandoci di trattare piu in generale il problema in seguito, esaminiamo adesso un metodo

7

uh(t)

tT

Figura 1.8: Mantenitore di ordine uno (FOH)

intuitivo per la determinazione di un regolatore digitale lineare C(z) a partire dalla funzione ditrasferimento di un regolatore analogico C(s) preventivamente progettato.E noto che la funzione di trasferimento C(s) del regolatore analogico sottende un legame di tipodifferenziale lineare stazionario tra l’ingresso (il segnale errore e(t) del sistema di controllo) el’uscita (il segnale di comando u(t) all’impianto). L’idea fondamentale del metodo che vedia-mo, e piu in generale dei metodi alle differenze finite che esamineremo in seguito, e quella diapprossimare la soluzione dell’equazione differenziale ingresso-uscita che descrive il controlloreanalogico, con la soluzione di un’opportuna equazione alle differenze che lega i soli campioni deisegnali in gioco, ek = e(kT ) e uk = u(kT ).Per fissare le idee, si supponga di voler approssimare il valore dei campioni della derivata di unafunzione f(t) disponendo soltanto dei campioni della funzione stessa. Il metodo piu immediatoper fare questo e di sostituire l’operazione di derivata con quella di rapporto incrementale. Sianopertanto

fk = f(t)|t=kT , fk = f(t)∣∣∣t=kT

Risulta allora

fk ≈f((k + 1)T ) − f(kT )

T=

fk+1 − fk

T(1.8)

Esempio 1.1 Si consideri il sistema lineare stazionario con funzione di trasferimento

C(s) =U(s)

E(s)=

b

s + a

corrispondente all’equazione differenziale ingresso-uscita

u(t) + au(t) = be(t)

Approssimando l’operazione di derivata come sopra otteniamo la seguente relazione approssi-mata tra i campioni dell’ingresso e dell’uscita

uk+1 − uk

T+ auk = bek

8

a cui corrisponde una funzione di trasferimento a tempo discreto data da

C(z) =U(z)

E(z)=

bT

z − 1 + aT

Riscrivendo la relazione (1.8) in termini delle trasformate zeta F (z) = Z{fk} e F (z) = Z{fk}risulta

F (z) ≈z − 1

TF (z) (1.9)

Pertanto, in generale, due segnali f(t) e f(t) che sono l’uno la derivata dell’altro, e che quindinel dominio della trasformata di Laplace sono legati da una relazione del tipo

F (s) = sF (s)

hanno i rispettivi campioni legati approssimativamente, nel dominio della trasformata zeta,dalla relazione (1.9). Si puo pertanto scrivere

Z[L−1 [sF (s)]

∣∣t=kT

]≈

z − 1

TF (z)

In base a questa osservazione, la sostituzione formale dell’operatore s con l’operatore

z − 1

T

in una data funzione di trasferimento C(s), da luogo ad una funzione di trasferimento C(z) checorrisponde ad un’equazione alle differenze tra campioni di ingresso e uscita la cui soluzioneapprossima quella dell’equazione differenziale rappresentata da C(s). In altre parole, il sistemalineare stazionario a tempo continuo descritto da

C(s) =U(s)

E(s)=

bmsm + bm−1sm−1 + · · · + b0

sn + an−1sn−1 + · · · + a0

ovvero dall’equazione differenziale

u(n)(t) + an−1u(n−1)(t) + · · · + a0 = bme(m)(t) + bm−1e

(m−1)(t) + · · · + b0

e approssimato dal sistema a tempo discreto

C(z) = C(s)|s= z−1

T

dove C(z) lega i corrispondenti campionati dei segnali di ingresso e di uscita.

Esempio 1.2 L’esempio seguente e riportato nel file Scilab naif.sce.Sia dato l’impianto con funzione di trasferimento

P (s) =1

s2

ed il controllore analogico

C(s) =K(s + b)

s + a, K = 40, a = 10, b = 2

9

Step Response

Time (sec)

Am

plitu

de

0 0.5 1 1.5 2 2.50

0.2

0.4

0.6

0.8

1

1.2

1.4

Figura 1.9: Esempio 1.2. Risposta al gradino

0 0.5 1 1.5 2 2.50

0.2

0.4

0.6

0.8

1

1.2

1.4

usci

ta c

ontr

ollo

re d

igita

le

T = 0.05 s

0 0.5 1 1.5 2 2.50

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

usci

ta c

ontr

ollo

re d

igita

le

T = 0.18 s

Figura 1.10: Esempio 1.2. Risposte al gradino con controllore digitale approssimato

10

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0.5

1

1.5

2

2.5

T = 1 s

Figura 1.11: Esempio 1.3. Risposta al gradino.

a cui corrisponde un sistema ad anello chiuso con risposta al gradino come in Fig. 1.9.Approssimando il controllore C(s) alle differenze finite come sopra esposto con passo di cam-pionamento T si ottiene

C(z) =K(z − 1 + bT )

z − 1 + aT, K = 40, a = 10, b = 2

Inserendo il regolatore C(z) nel sistema di controllo digitale in Fig. 1.5, si ottengono in si-mulazione le risposte al gradino nella variabile di uscita y(t) riportate in Fig. 1.10. Si noticome la risposta del sistema con regolatore digitale sia molto fedele a quella del corrispondentesistema con controllore analogico per valori sufficientemente piccoli del passo di campionamentoT e come questa fedelta tenda a perdersi al crescere di T . E facile osservare che per valori diT > 0.2 s il sistema diviene addirittura instabile. La scelta del periodo di campionamento siconfigura quindi come un problema di fondamentale importanza. E facile intuire che la sceltadi T e fortemente legata ai requisiti di banda del sistema; infatti, piu elevata e la banda, piu itransitori della risposta sono rapidi, piu velocemente e necessario campionare i segnali in giocoper poterli riprodurre fedelmente. Torneremo su questo importante aspetto nel seguito.

Il seguente esempio illustra come i sistemi di controllo digitale possano presentare caratteri-stiche peculiari non riscontrabili nei sistemi di controllo analogici.

Esempio 1.3 Riportato nel file Scilab magia.cos.Si consideri un sistema di controllo digitale con passo di campionamento T , impianto

P (s) =1

s2

e regolatore

C(z) =2

T 2

5z − 3

4z + 3

La corrispondente risposta al gradino nell’uscita y(t) e riportata in Fig. 1.11. Il sistema risultastabile internamente e la sua risposta va a regime in un tempo che e finito e pari a 3 passi di

11

campionamento, qualunque sia il valore di T prescelto. Quindi, al variare del tempo di campio-namento, e possibile non solo portare a regime la risposta in un tempo finito, ma addirittura inun tempo arbitrariamente piccolo. E noto che non esistono sistemi lineari stazionari a tempocontinuo la cui risposta al gradino abbia un transitorio di durata finita, si comprende quindiche mediante i sistemi di controllo digitale si possono ottenere in linea di principio prestazioninon ottenibili in un contesto analogico.

Capitolo 2

Sistemi lineari a tempo discreto

Sommario. In questo capitolo vengono richiamati alcuni concetti fondamentali relativi a segnali e

sistemi a tempo discreto, quali la trasformata zeta e le rappresentazioni di stato e ingresso-uscita dei

sistemi lineari stazionari. Vengono inoltre illustrate le estensioni a tempo discreto di risultati standard

quali la risposta in frequenza, il criterio di Nyquist ed il luogo delle radici. Particolare attenzione viene

rivolta alle relazioni che sussistono tra la trasformata di Laplace di un segnale continuo e la trasformata

zeta del suo campionamento con periodo assegnato. Queste relazioni sono fondamentali per l’analisi che

sara presentata nei capitoli successivi.

2.1 Trasformata zeta

La trasformata zeta e per i segnali a tempo discreto l’operatore analogo della trasformata diLaplace per i segnali a tempo continuo; tale concetto permette di risolvere equazioni alle diffe-renze con metodi algebrici e di definire le funzioni di trasferimento per i sistemi LTITD. Questosi realizza attraverso le proprieta della trasformata zeta, che sono del tutto analoghe alle corri-spondenti proprieta della trasformata di Laplace.

Definizione 2.1 Data una successione {fk} con fk = 0 ∀k < 0, la trasformata zeta di {fk} ela funzione F (z) : C → C definita da

F (z) = Z[fk] =∞∑

k=0

fkz−k = f0 + f1z

−1 + f2z−2 + . . . (2.1)

Osservazione 2.1 La trasformata zeta, a rigore, e definita solo per gli z ∈ C dove la serie (2.1)converge. Cio non e essenziale per le applicazioni.

Si ricordano di seguito le trasformate zeta di segnali a tempo discreto notevoli, che possonoessere calcolate in modo semplice a partire dalla definizione.

• Impulso discreto

δk =

{1 se k = 00 se k 6= 0

−→ Z[δk] = 1 (2.2)

• Gradino unitario

1k =

{1 se k ≥ 00 se k < 0

−→ Z[1k] =z

z − 1(2.3)

• Esponenziale

fk =

{λk se k ≥ 00 se k < 0

−→ Z[fk] =z

z − λ(2.4)

Analogamente al caso della trasformata di Laplace, le trasformate zeta dei segnali a tempodiscreto che sono di interesse per la teoria dei sistemi dinamici lineari, sono funzioni razionalifratte proprie nella variabile z.

13

2.1.1 Proprieta della trasformata zeta

Ricordiamo brevemente le proprieta fondamentali di cui gode la trasformata zeta:

1. Linearita

Z[αfk + βgk] = αF (z) + βG(z)

2. Trasformata della successione anticipata di un passo (e troncata a k = 0)

gk = fk+1 1k −→ G(z) = z(F (z) − f0)

3. Trasformata della successione ritardata di un passo

gk = fk−1 −→ G(z) = z−1F (z)

4. Trasformata della successione moltiplicata per k

Z[kfk] = −zd

dzF (z)

5. Teorema del valore finale.Se i limiti seguenti esistono e sono finiti, allora risulta

limk→∞

fk = limz→1

(z − 1)F (z)

6. Teorema del valore iniziale

f0 = limz→∞

F (z)

7. Teorema di convoluzione.Dato il prodotto di convoluzione di due successioni {fk} e {gk}

fk ∗ gk =

k∑

i=0

fk−igi

la sua trasformata zeta risulta

Z[fk ∗ gk] = F (z)G(z)

2.1.2 Antitrasformata zeta

Data una funzione razionale fratta propria F (z), e sempre possibile determinare la successionefk tale che Z[fk] = F (z). Risulta infatti sempre possibile effettuare la divisione lunga delnumeratore di F (z) per il denominatore, ottenendo una serie di potenze in z−1. Per confrontocon la definizione di trasformata zeta in (2.1), i coefficienti della serie ottenuta sono i campionidella successione fk.

14

Esempio 2.1 Sia

F (z) =z2 + 2

z2 + 3z + 2

Dividendo il numeratore per il denominatore e calcolando i corrispondenti resti, risulta

z2 + 0z + 2 z2 + 3z + 2

1 − 3z−1 + 9z−2 − 21z−3 + . . .

dunqueF (z) = 1 − 3z−1 + 9z−2 − 21z−3 + . . .

Per confronto con la definizione (2.1) si ottengono i campioni della successione fk la cui trasfor-mata e F (z)

f0 = 1, f1 = −3, f2 = 9, f3 = −21, . . .

La successione fk tale che F (z) = Z[fk] e detta antitrasformata zeta di F (z) e si indica con

fk = Z−1[F (z)].

Il metodo per ottenere un’espressione in forma chiusa di Z−1[F (z)] consiste nel calcolare losviluppo in fratti semplici di F (z) e nell’associare a ciascun termine dello sviluppo una succes-sione elementare (impulso, gradino, esponenziale) di cui tale termine e la trasformata, in modoanalogo al caso della trasformata di Laplace. Viste le espressioni delle trasformate delle succes-sioni elementari (si noti che presentano una z a numeratore), risulta conveniente effettuare losviluppo in fratti semplici di F (z)/z per poi ricavare da questo un’espressione di F (z) in cui letrasformate elementari risultano immediatamente riconoscibili.

Esempio 2.2F (z)

z=

z2 + 2

z(z2 + 3z + 2)=

1

z+

−3

z + 1+

3

z + 2(2.5)

da cuiF (z) = 1 − 3

z

z + 1+ 3

z

z + 2

e antritrasformando ogni singolo termine

fk = δk − [3(−1)k − 3(−2)k] 1k.

2.2 Trasformata zeta di segnali campionati

Si consideri adesso il problema di calcolare la trasformata zeta F (z) della successione fk ottenutacampionando con periodo T un segnale continuo f(t), ovvero della successione fk = f(kT ). Sidesidera inoltre mettere in relazione F (z) con la trasformata di Laplace F (s) = L[f(t)] delsegnale continuo. In altre parole si desidera determinare

F (z) = Z[fk] = Z [f(t)|t=kT 1k] = Z[L−1[F (s)]

∣∣t=kT

1k

]. (2.6)

Per brevita, la trasformata zeta del campionamento di un segnale avente trasformata di LaplaceF (s) verra indicata con la notazione

Z[F (s)]

con cui denoteremo l’espressione (2.6).In base alla proprieta di linearita delle trasformate, e possibile eseguire lo sviluppo in frattisemplici di F (s), calcolare le antitrasformate di ciascun fratto e, quindi, calcolare la trasformatazeta del campionamento di ciascuna di esse.Distinguiamo i seguenti due casi:

15

• Caso di F (s) con tutti poli semplici. Sussistono il seguente sviluppo e la corrispondenteantitrasformata

F (s) =n∑

i=1

ri

s − pi⇒ f(t) =

n∑

i=1

riepit1(t)

e dunque

F (z) = Z[F (s)] =n∑

i=1

Z[

ri

(eTpi

)k]

=n∑

i=1

riz

z − epiT

Osserviamo che F (z) ha tutti poli semplici e che, inoltre, per ogni polo pi di F (s) la F (z)ha un corrispondente polo in epiT .

• Caso di F (s) con poli multipli. Si supponga che F (s) abbia un polo p di molteplicitaµp. Allora, come e noto, tale polo nello sviluppo in fratti semplici di F (s) da luogo a µp

termini che hanno la forma

F(p)j (s) =

A(p)j

(s − p)j, j = 1, . . . , µp

le cui antitrasformate valgono

f(p)j (t) =

A(p)j tj−1

(j − 1)!ept, j = 1, . . . , µp

Per ciascuno di tali termini si ha quindi, in base alla proprieta numero 4 della trasformatazeta (moltiplicazione per k),

Z[F(p)j (s)] =

A(p)j T j−1

(j − 1)!Z[kj−1

(eTp

)k] =

A(p)j T j−1

(j − 1)!

(

−zd

dz

)j−1 z

z − epT

dove con(−z d

dz

)j−1si intende l’applicazione ripetuta j − 1 volte dell’operatore

(−z d

dz

).

E facile convincersi che, a causa dell’applicazione ripetuta dell’operazione di derivata,

Z[F(p)j (s)] risulta avere un polo in epT di molteplicita j. Pertanto, l’insieme dei fratti

semplici F(p)j (s), j = 1, . . . , µp, relativi al polo p, danno luogo ad un termine in F (z) che

ha un polo in epT di molteplicita µp.

Sussiste pertanto la seguente

Proprieta 2.1 Per ogni polo p di F (s), la trasformata zeta F (z) = Z[F (s)] ha un polo in epT

di pari molteplicita. In altre parole, i poli di F (s) si trasformano nei poli di F (z) secondo larelazione

z = esT

Osservazione 2.2 Si noti che per T tendente a zero, tutti i poli di F (z) tendono a 1.

Esempio 2.3 Calcolo della trasformata zeta della rampa campionata.

Z

[1

s2

]

= Z[kT ] = T (−z)d

dzZ[1k] = −Tz

d

dz

z

z − 1=

Tz

(z − 1)2

16

Esempio 2.4 Calcolo della trasformata zeta della sinusoide campionata.

f(t) = sin(ωt), i.e., F (s) =ω

s2 + ω2

Si noti che F (s) ha poli in s = ±jω. Risulta

fk = f(kT ) = sin(ωkT ) =(ejωT )k − (e−jωT )k

2j

da cui

Z[fk] =1

2j

[z

z − ejωT−

z

z − e−jωT

]

=z(z − e−jωT − z + ejωT )

2j(z − ejωT )(z − e−jωT )=

z sin(ωT )

z2 − 2z cos(ωT ) + 1

2.2.1 Mappa z = esT

Esaminiamo adesso alcune proprieta della relazione tra numeri complessi z = esT , che caratte-rizza la mappa tra i poli della trasformata di Laplace di un segnale ed i poli della trasformatazeta del suo campionamento con periodo T . In particolare analizziamo come si trasformano iluoghi del piano complesso corrispondenti alla posizione dei poli caratteristici dei segnali d’inte-resse (ad esempio i segnali esponenziali o le sinusoidi smorzate aventi fattori ζ o ωn assegnati).Sia s = σ + jω, con σ = Re[s], ω = Im[s]. Risulta allora z = eσT ejωT . Pertanto

|z| = eRe[s]T , arg z = Im[s]T (2.7)

Dalla relazione (2.7) si vede facilmente che sussistono le seguenti proprieta (fig. 2.1).

• Valori complessi coniugati in s vengono mappati in valori complessi coniugati in z;

• la mappa z = esT e biunivoca per − πT

< Im[s] < πT

ed in generale z e una funzioneperiodica di Im[s];

• l’asse immaginario in s e mappato nel cerchio di centro l’origine e raggio 1 in z (cerchiounitario);

• il luogo dei poli caratteristici dei segnali a tempo continuo convergenti a zero, ovvero ilsemipiano sinistro aperto del piano s, e mappato sull’interno del cerchio unitario in z,infatti Re[s] < 0 ⇒ |z| < 1;

• rette verticali in s (luoghi a Re[s] costante) sono mappate in circonferenze interne (seRe[s] < 0) o esterne (se Re[s] > 0) al cerchio unitario in z;

• semirette passanti per l’origine in s con Re[s] < 0 (luoghi dei poli complessi a smorzamentoζ costante) sono mappate in spirali logaritmiche interne al cerchio unitario in z;

• rette orizzontali in s (luoghi a Im[s] costante) sono mappate in rette radiali in z;

• i punti s = 2nπj/T sono mappati sul punto z = 1;

17

Figura 2.1: Mappa z = esT .

• i punti s = (2n + 1)πj/T sono mappati su z = −1;

• nessun punto del piano s e mappato su z = 0.

In figura 2.2 e mostrata la mappatura dei luoghi a ζ e ωn costante dal piano s al piano z secondola trasformazione z = esT . In figura 2.3 e riportato l’andamento qualitativo dei segnali a tempodiscreto in relazione alla posizione dei poli della loro trasformata zeta. Si osservi, in particolare,che alle trasformate zeta aventi tutti poli in z = 0 corrispondono segnali che hanno solo unnumero finito di campioni diversi da zero, ovvero segnali che si esauriscono in tempo finito.Questi non possono essere il campionamento di segnali continui con trasformata di Laplacerazionale fratta, infatti, come gia osservato, z = 0 non e l’immagine di alcun s secondo z = esT .

2.2.2 Trasformata zeta di segnali campionati con ritardo

Dato un segnale a tempo continuo f(t), nullo per t < 0, si consideri il segnale ritardato (traslatonel tempo)

fτ (t) = f(t − τ), τ > 0

e si voglia calcolare la trasformata zeta Fτ (z) del campionamento con passo T di fτ (t):

Fτ (z) = Z [f(t − τ)|t=kT ]

Si scomponga il ritardo τ in un numero intero m di passi di campionamento piu il resto δ, i.e.,

τ = mT + δ ; m ≥ 0 intero, 0 ≤ δ < T

E facile convincersi che l’introduzione di una traslazione temporale mT in un segnale continuogenera semplicemente un ritardo di m passi nel corrispondente campionamento. Ricordandoallora la proprieta del ritardo della trasformata zeta si ottiene

Fτ (z) = z−mZ [f(t − δ)|t=kT ] ; 0 ≤ δ < T (2.8)

18

Figura 2.2: Mappatura dei luoghi a ζ e ωn costante secondo z = esT .

Figura 2.3: Andamento qualitativo dei segnali a tempo discreto in relazione alla posizione dei poli della lorotrasformata zeta.

19

f(t) f(t − δ)

tt Tδ 2T 3T

Figura 2.4: Campionamento di un segnale ritardato nel tempo

- -Sistema T.D.

lineare stazionario

uk, U(z) yk, Y (z)

Figura 2.5: Sistema lineare stazionario a tempo discreto ingresso/uscita

Scrivendo esplicitamente l’espressione della trasformata zeta in (2.8) (si veda la fig. 2.4) risulta

Fτ (z) = z−m[0 + f(T − δ)z−1 + f(2T − δ)z−2 + . . .

]

= z−m−1∞∑

k=0

f(kT + T − δ)z−k

= z−m−1Z [f(kT + (T − δ)) 1k]

2.3 Sistemi lineari a tempo discreto in rappresentazione ingresso/uscita

Un sistema linare stazionario a tempo discreto in rappresentazione ingresso/uscita (fig. 2.5) edescritto da un’equazione alle differenze nelle successioni di ingresso uk e di uscita yk

yk+n + an−1yk+n−1 + . . . + a0yk = bmuk+m + bm−1uk+m−1 + . . . + b0uk (2.9)

Tale relazione e esprimibile in modo alternativo utilizzando il formalismo della trasformata zeta.Si assumano nulle le condizioni iniziali del sistema; applicando la trasformata zeta ad entrambi

20

i membri della (2.9) si ottiene la seguente relazione tra la trasformata zeta dell’ingresso U(z) ela trasformata zeta della corrispondente risposta forzata Y (z)

Y (z) = G(z)U(z) (2.10)

dove

G(z) =bmzm + . . . b1z + b0

zn + an−1zn−1 . . . a1z + a0(2.11)

G(z) e detta funzione di trasferimento del sistema, n e detto grado di G(z) e la differenza n−mgrado relativo di G(z).In base alla relazione (2.10) ed alla proprieta di convoluzione della trasformata zeta, la rispostaforzata al segnale uk vale

yk =k∑

i=0

gk−iui = gk ∗ uk

dovegk = Z−1[G(z)]

Si noti che la successione {gk} costituisce la risposta del sistema all’impulso unitario δk.

Definizione 2.2 Il sistema e detto causale se per ogni istante k l’uscita yk del sistema nondipende da uk per alcun k > k, ovvero dai valori assunti dall’ingresso u ad istanti successivi ak.

Proprieta 2.2 Il sistema descritto da G(z) e causale se e solo se il grado relativo n − m dellafunzione di trasferimento G(z) in (2.11) e maggiore o uguale a zero.

Dimostrazione. Effettuando la divisione lunga tra numeratore e denominatore di G(z) si ha

G(z) = cmz−(n−m) + cm−1z−(n−m)−1 + cm−2z

−(n−m)−2 + . . .

dove cm, cm−1, cm−2, . . . sono opportuni coefficienti. Pertanto, tenendo conto della (2.10) e delleproprieta 2 e 3 della trasformata zeta (trasformata della successione anticipata e ritardata),risulta

yk = cmuk−(n−m) + cm−1uk−(n−m)−1 + cm−2uk−(n−m)−2 + . . .

da cui e evidente che yk non dipende dal valore di u ad istanti successivi a k se e solo se n−m ≥ 0.

Osservazione 2.3 Il grado relativo n − m di G(z) rappresenta il ritardo ingresso-uscita delsistema. Per condizioni iniziali nulle, infatti, un ingresso applicato all’istante k = 0 produceuscite non nulle a partire dall’istante k = n − m.

2.4 Sistemi lineari a tempo discreto in rappresentazione di stato

Un sistema lineare stazionario a tempo discreto in equazioni di stato e definito dalle equazioniseguenti

{xk+1 = Axk + Buk ; xk ∈ R

n

yk = Cxk + Duk

dove A, B, C, D sono matrici costanti di opportune dimensioni, a seconda delle dimensioni dellavariabile d’ingresso uk e da quelle della variabile di uscita yk. Il vettore xk e detto vettore distato del sistema. La dimensione n del vettore di stato e detta ordine del sistema. Una proprieta

21

fondamentale dei sistemi lineari in rappresentazione di stato e che la risposta del sistema, nellostato xk e quindi nell’uscita yk, e completamente determinata una volta note la condizioneiniziale x0 e la sequenza d’ingresso uk, k = 0, 1, . . .La risposta nello stato del sistema sopra descritto, nel dominio del tempo vale

xk = xlk + xf

k

dove xlk e xf

k , dette rispettivamente risposta libera e risposta forzata nello stato, sono date da

xlk = Akx0, xf

k =

k−1∑

i=0

Ak−i−1Bui

La risposta nell’uscita, analogamente, vale

yk = CAkx0 +k−1∑

i=0

CAk−i−1Bui + Duk = ylk + yf

k

Applicando la trasformata zeta alle precedenti equazioni si ottengono facilmente le trasformatedella risposta, libera e forzata, rispettivamente nell’ingresso e nell’uscita.

• Risposta liberaX l(z) = [zI − A]−1zx0

Y l(z) = C[zI − A]−1zx0

• Risposta forzataXf (z) = [zI − A]−1BU(z)

Y f (z) = [C(zI − A)−1B + D]U(z)

Dall’ultima delle precedenti espressioni, che lega le trasformate dell’ingresso e della corrispon-dente risposta forzata, risulta che la funzione di trasferimento del sistema in funzione dellematrici di stato vale

G(z) = C[zI − A]−1B + D = Cadj(zI − A)

det(zI − A)B + D (2.12)

Dalla relazione (2.12) e evidente che i poli di G(z), ovvero gli zeri del denominatore, sono neces-sariamente autovalori della matrice A. In generale, i poli di G(z) possono non contenere tuttigli autovalori di A, in quanto possono verificarsi cancellazioni tra numeratore e denominatorein G(z), come risulta dal seguente esempio.

Esempio 2.5

A =

[1 10 2

]

B =

[10

]

C = [1 0] D = 0

La funzione di trasferimento vale

G(z) = C[ zI − A ]−1B + D =1

z − 1

in cui non compare come polo l’autovalore 2 di A.

22

2.5 Stabilita dei sistemi lineari stazionari a tempo discreto

Richiamiamo qui brevemente le principali nozioni relative alla stabilita dei sistemi lineari sta-zionari a tempo discreto.

2.5.1 Stabilita della risposta libera di sistemi in rappresentazione di stato

Definizione 2.3 Si consideri il sistema a tempo discreto lineare stazionario definito dalleequazioni di stato

{xk+1 = Axk + Buk ; xk ∈ R

n

yk = Cxk + Duk

Tale sistema e detto stabile se la risposta libera ad una qualunque condizione iniziale x0 elimitata, e detto asintoticamente stabile se la risposta libera ad una qualunque condizione inizialex0 e convergente a zero, e detto instabile altrimenti.

Il seguente risultato caratterizza la stabilita del sistema in base agli autovalori della matrice A.

Teorema 2.1 Un sistema lineare stazionario a tempo discreto e stabile se e solo se non esistonoautovalori della matrice A con modulo maggiore di uno e quelli con modulo unitario hanno lamolteplicita algebrica uguale a quella geometrica. Il sistema e asintoticamente stabile se e solose tutti gli autovalori di A hanno modulo strettamente minore di uno.

Osservazione 2.4 Si ricorda che un sistema lineare stazionario che sia (asintoticamente) stabilesecondo la precedente definizione, soddisfa anche la condizione di (asintotica) stabilita nel sensodi Lyapunov per ognuno dei suoi punti di equilibrio. Per una revisione di tale definizione distabilita si rimanda ad un testo di teoria dei sistemi [6].

2.5.2 Stabilita della risposta forzata (ingresso limitato-uscita limitata)

Definizione 2.4 Un sistema e detto stabile nel senso ingresso limitato-uscita limitata (ILUL)se la risposta forzata yk corrispondente a qualunque ingresso uk limitato e limitata.

La definizione di stabilita ILUL e appicabile sia alle rappresentazioni di stato, sia alle rappre-sentazioni ingresso-uscita. Il seguente risultato caratterizza la condizione di stabilita ILUL.

Teorema 2.2 Un sistema lineare stazionario a tempo discreto e ILUL stabile se e solo se i polidella sua funzione di trasferimento G(z) hanno tutti i poli con modulo strettamente minore di1.

Osservazione 2.5 Poiche i poli della funzione di trasferimento sono anche autovalori dellamatrice A di una qualunque rappresentazione di stato, in base ai risultati precedenti si deduceche se un sistema lineare stazionario e asintoticamente stabile, allora e anche ILUL stabile.In generale non e vero il viceversa in quanto alcuni autovalori della matrice A possono noncomparire come poli della funzione di trasferimento.

23

2.6 Criteri di stabilita per sistemi a tempo discreto

Lo studio della stabilita (semplice, asintotica, ILUL) di un sistema lineare stazionario si ricon-duce allo studio della posizione delle radici di un polinomio (il polinomio caratteristico dellamatrice A per la stabilita delle rappresentazioni di stato, il polinomio a denominatore dellafunzione di trasferimento per la stabilita ILUL) rispetto ad una regione del piano complesso.Nel caso a tempo discreto, tale regione e rappresentata dal cerchio unitario aperto, allo stessomodo in cui nel caso a tempo continuo tale regione e il semipiano sinistro aperto.

2.6.1 Criterio di Jury

Il criterio di Jury rappresenta l’analogo del criterio di Routh per lo studio della posizione delleradici di un polinomio rispetto al cerchio unitario. Si consideri un polinomio della forma

p(z) = zn + an−1zn−1 + . . . a1z + a0 (2.13)

Anche questo criterio si basa sulla costruzione di una tabella da cui e possibile successivamenterilevare la condizione di stabilita. La tabella viene costruita come segue

1 1 an−1 . . . . . . a1 a0

2 a0 a1 . . . . . . an−1 13 bn−1 bn−2 . . . b1 b0 04 b0 b1 . . . bn−2 bn−1 0

. . . . . . . . . . . . . . . . . . . . .

(2.14)

dove

bn−1 =

∣∣∣∣

1 a0

a0 1

∣∣∣∣, bn−2 =

∣∣∣∣

1 a1

a0 an−1

∣∣∣∣, . . .

Si ha il seguente risultato.

Teorema 2.3 Il polinomio p(z) in (2.13) ha tutte radici con modulo strettamente minore diuno se e solo se i primi elementi delle righe di indice dispari della tabella (2.14) sono tuttidiversi da zero ed hanno segno positivo.

2.6.2 Trasformazione bilineare

In alternativa al criterio di Jury, e possibile operare una trasformazione sul polinomio p(z)in modo tale da ottenere un’espressione polinomiale π(s) che abbia tutte radici a parte realenegativa se e solo se il polinomio iniziale p(z) ha tutte radici interne al cerchio unitario. Inquesto modo e possibile studiare la stabilita di tale polinomio applicando a π(s) il criterio diRouth.Si consideri la funzione razionale fratta

π(s)

q(s)= p(z)|z= 1+s

1−s

(2.15)

dove π(s) e q(s) sono polinomi.Si puo facilmente dimostrare che la trasformazione

z =1 + s

1 − s

24

- -uk = A sin(ωTk) yfk

G(z)

Figura 2.6: Risposta in frequenza a tempo discreto

mappa in modo biunivoco il cerchio unitario del piano complesso in z nel semipiano sinistrodel piano complesso in s. Pertanto la funzione razionale fratta (2.15) (ovvero il polinomio anumeratore π(s)) ha tutti zeri a parte reale strettamente negativa se e solo se il polinomio p(z)ha tutte radici a modulo strettamente minore di 1. In definitiva, la stabilita a tempo discretodi p(z) si studia applicando il criterio di Routh a π(s) definito come in (2.15).

2.7 Risposta in frequenza

Il concetto di risposta in frequenza, noto per i sistemi lineari stazionari a tempo continuo, puoessere facilmente esteso al caso a tempo discreto. Sussiste infatti un risultato del tutto analogo:un sistema lineare stazionario a tempo discreto ILUL stabile eccitato da una sinusoide cam-pionata, a regime, risponde con una sinusoide campionata di pari frequenza, opportunamenteamplificata e sfasata.Si consideri un sistema ILUL stabile descritto dalla funzione di trasferimento G(z) ed un ingressodato dal campionamento con periodo T di una sinusoide di ampiezza A e pulsazione ω

uk = A sin(ωt)|t=kT = A sin(ωTk) (2.16)

(fig. 2.6). Sussiste il seguente risultato.

Teorema 2.4 Dato un sistema lineare stazionario a tempo discreto ILUL stabile con funzionedi trasferimento G(z), la risposta forzata alla sinusoide campionata uk in (2.16) e data da

yfk = yG

k + yUk

dove yGk (risposta transitoria) tende a 0 per k → ∞ e yU

k (risposta permanente) vale

yUk = A|G(ejωT )| sin[ωTk + arg G(ejωT )]

Dimostrazione. Risulta (si veda l’esempio 2.4)

U(z) =Az sin(ωT )

(z − ejωT )(z − e−jωT )

e pertanto la risposta forzata vale

Y f (z) = G(z)Az sin(ωT )

(z − ejωT )(z − e−jωT )

Poiche G(z) ha tutti poli interni al cerchio unitario, effettuando la scomposizione in frattisemplici di Y f (z), si ha che Y f (z) puo essere scritta come

Y f (z) = Y G(z) + Y U (z) (2.17)

25

m+

- - -

6Y o(z) Y (z)L(z)

Figura 2.7: Sistema a tempo discreto in retroazione

dove i poli di Y G(z) coincidono con i poli di G(z) ed i poli di Y U (z) coincidono con i polidi U(z). Calcolando esplicitamente Y U (z), ovvero la parte dello sviluppo in fratti semplici diY f (z) dipendente dai poli di U(z), risulta

Y U (z) = Az sin(ωT ){ 1z−ejωT [ G(z)

z−e−jωT ]|z=ejωT + 1z−e−jωT [ G(z)

z−ejωT ]|z=e−jωT }

= Az sin(ωT )[ G(ejωT )ejωT

−e−jωT1

z−ejωT + G(e−jωT )e−jωT

−ejωT1

z−e−jωT ](2.18)

PonendoM = |G(ejωT )|; ϕ = arg G(ejωT )

i.e.G(ejωT ) = Mejϕ, G(e−jωT ) = G∗(ejωT ) = Me−jϕ

risulta

Y U (z) =AM sin(ωT )

ejωT − e−jωT

[zejϕ

z − ejωT−

ze−jϕ

z − e−jωT

]

(2.19)

Calcolando l’antitrasformata zeta si ha

yUk = Z−1[Y U (z)] =

1

2jAM [ejϕejωkT − e−jϕe−jωfT ] = AM sin(ωkT + ϕ)

Pertanto, in base alla (2.17),

yfk = yG

k + A|G(ejωT )| sin[ωkT + arg G(ejωT )]

dove yGk = Z−1[Y G(z)] tende a zero per k → ∞ in quanto Y G(z) ha i poli di G(z), che sono

tutti interni al cerchio unitario. ♦

Osservazione 2.6 La risposta in frequenza G(ejωT ) di un sistema a tempo discreto e unafunzione periodica (in ω) di periodo ωs = 2π/T .

2.8 Sistemi a tempo discreto in retroazione

Per lo studio della stabilita di sistemi a tempo discreto in configurazione ad anello chiuso (fig.2.7) valgono criteri del tutto analoghi a quelli gia noti per il caso a tempo continuo.

26

1−1

Nyquist Diagram

Real Axis

Imag

inar

y A

xis

−1 −0.5 0 0.5 1 1.5 2

−1

−0.5

0

0.5

1

Puntocritico

Figura 2.8: Esempio 2.6: luogo delle radici e diagramma di Nyquist.

• Luogo delle radici. Data la funzione di trasferimento L(z) del guadagno d’anello nellaforma

L(z) = KN(z)

D(z)

la costruzione del luogo delle radici (luogo dei poli del sistema ad anello chiuso al variare diK) e del tutto analoga al caso a tempo continuo, trattandosi di una costruzione puramentealgebrica. Cio che cambia, ovviamente, e l’interpretazione del luogo per lo studio dellastabilita, in quanto nel caso a tempo discreto e necessario studiare la mutua posizionedel luogo rispetto alla regione di stabilita costituita dal cerchio unitario piuttosto che dalsemipiano sinistro del piano complesso.

• Criterio di Nyquist. Sussiste un risultato del tutto analogo al criterio di Nyquist a tempocontinuo, purche il diagramma di Nyquist sia costruito come l’immagine attraverso L(z)del percorso di Nyquist D costituito dalla circonferenza unitaria (indentata) piuttosto chedall’asse immaginario (indentato).

Esempio 2.6 Si consideri il sistema in retroazione unitaria con guadagno d’anello

L(z) =K

z − 0.5

In figura 2.8 sono riportati il luogo delle radici (con sovrapposta la regione di stabilita a tempodiscreto) ed il diagramma di Nyquist (calcolato per K = 1).

2.9 Stabilita interna di sistemi di controllo

Con riferimento al sistema di controllo in retroazione in figura 2.9, vale una nozione di stabilitainterna del tutto analoga al caso dei sistemi interconnessi a tempo continuo.

27

m+

m

m++

- - - - -

¾¾

6

?

?

Dp(z)

Dh(z)

R(z) Y (z)

H(z)

C(z) P (z)

X1(z) X2(z)

X3(z)

U(z)

V (z)

Figura 2.9: Sistema di controllo in retroazione a tempo discreto.

Definizione 2.5 Il sistema di controllo e internamente stabile se la funzione di trasferimentotra qualunque segnale di ingresso e qualunque segnale di uscita presenti nell’anello e ILULstabile.

In evidente analogia con il caso a tempo continuo, sussiste la seguente caratterizzazione dellacondizione di stabilita interna.

Teorema 2.5 Il sistema di controllo in retroazione e internamente stabile se e solo se:

1. la funzione di trasferimento 1+C(z)P (z)H(z) non ha zeri con modulo maggiore o ugualea uno e

2. non ci sono cancellazioni tra poli e zeri con modulo maggiore o uguale a uno nel prodottoC(z)P (z)H(z).

Capitolo 3

Sistemi a dati campionati

Sommario. I sistemi di controllo digitale, nel loro insieme, sono di tipo ibrido, ovvero comprendonosia componenti a tempo continuo, sia componenti a tempo discreto, sia elementi di interfaccia tra i duedomini. In questo capitolo verra introdotto un formalismo unitario per descrivere la dinamica di questimodelli a dati campionati. Tale formalismo permette di analizzare le proprieta salienti dei sistemi inoggetto e di definire, ove possibile, le opportune funzioni di trasferimento a tempo discreto tra i campionidelle variabili di ingresso ed i campioni delle variabili di uscita.

3.1 Modellistica del campionamento

Come primo obiettivo, vogliamo determinare un formalismo unico per descrivere, nel dominio della tra-sformata di Laplace, le proprieta dei segnali campionati e dei sistemi dinamici che integrano componentia tempo continuo (es. impianto analogico), componenti a tempo discreto (es. controllore digitale) edispositivi di interfacciamento (campionatore, ZOH).

3.1.1 Modello della conversione A/D

Si consideri un segnale a tempo continuo f(t) ed il segnale f∗(t) che si ottiene modulando (ovveromoltiplicando) f(t) per una portante impulsiva δT (t) costituita da un treno di impulsi di Dirac attiviagli istanti t = kT

δT (t) =∞∑

k=0

δ(t − kT ). (3.1)

Il segnale modulato risulta uguale a

Segnale modulatoSegnale da campionare

f(t) f*(t)

f(t) f*(t)

Portante impulsiva

Figura 3.1: Campionamento come modulazione impulsiva

f∗(t) = f(t)δT (t) = f(t)

∞∑

k=0

δ(t − kT ) =

∞∑

k=0

f(kT )δ(t − kT ) (3.2)

dove l’ultimo passaggio e motivato dal fatto che δT (t) e nulla per ogni t che non sia multiplo di T .Si osservi che f∗(t) risulta essere un segnale impulsivo dipendente dai campioni f(kT ), in particolare e untreno di impulsi, attivi agli istanti t = kT , ciascuno dei quali ha ampiezza pari a f(kT ). Pertanto, f∗(t)puo essere considerato un modello concettuale, cioe una rappresentazione alternativa, della sequenza

29

f(kT ). Al segnale f∗(t) non si attribuisce alcun significato fisico; esso costituisce, appunto, solo unmodello.Calcolando la trasformata di Laplace di f∗(t) si ottiene

F ∗(s) = L[f∗(t)] =

∫ +∞

0

f∗(t)e−stdt =

∞∑

k=0

∫ +∞

0

f(kT )δ(t − kT )e−stdt =

∞∑

k=0

f(kT )e−kTs (3.3)

dove nell’ultimo passaggio si e utilizzata la proprieta di δ(t) rispetto all’integrale.Dalla precedente espressione e evidente la seguente relazione tra F ∗(s) e la trasformata zeta F (z) dellasequenza fk = f(kT ):

F ∗(s) = F (z)|z=esT = Z[fk]|z=esT (3.4)

La trasformata di Laplace F ∗(s) di f∗(t) e la trasformata zeta F (z) del segnale campionato fk si ottengonol’una dall’altra ponendo z = esT .Nello schema a blocchi in figura 3.2 sono rappresentati l’operazione di campionamento (l’estrazione dellasequenza fk = f(kT ) da f(t) ed il suo modello a modulazione impulsiva sopra descritto.

f(t)

A/D

fk

Fisicom

f(t)

Mod. Imp.

f∗(t)

Modello

Figura 3.2: Modello del campionatore

3.1.2 Modello della conversione D/A con ZOH

fh(t)

tT

f0

f1

f2

Figura 3.3: Ricostruttore di ordine zero (ZOH)

Rappresentando i segnali campionati con i loro equivalenti impulsivi, lo ZOH puo essere modellato comeun sistema lineare stazionario descritto da un’opportuna funzione di trasferimento. Per vedere questo, siconsideri il sistema lineare stazionario la cui risposta all’impulso e data da

gZOH(t) = 1(t) − 1(t − T ) (3.5)

30

fk

ZOH

fh(t)

Fisicom

f∗(t)

GZOH(s)

fh(t)

Modello

Figura 3.4: Modello dello ZOH

uk

G(z)

yk

Fisico

u∗(t)

G∗(s)

y∗(t)

Modello

Figura 3.5: Modello della funzione di trasferimento a tempo discreto

e si supponga di eccitare questo sistema con il segnale f∗(t) modulato impulsivamente che rappresentauna certa sequenza fk. La corrispodente risposta risulta

fh(t) = gZOH(t) ∗ f∗(t) =∫ t

0gZOH(t − τ)f∗(τ)dτ =

∫ t

0gZOH(t − τ)

∑+∞

k=0 fkδ(τ − kT )dτ

=∑+∞

k=0 fkgZOH(t − kT ) =∑+∞

k=0 fk[1(t − kT ) − 1(t − (k + 1)T )](3.6)

e questo segnale e pari alla versione ricostruita con ZOH della sequenza fk (vedi figura 3.3). Pertanto,nel modello a modulazione impulsiva, il segnale fh(t) che si ottiene ricostruendo fk con ZOH puo essererappresentato come il segnale impulsivo f∗(t) filtrato dal sistema lineare la cui risposta impulsiva egZOH(t). Quindi lo ZOH puo essere modellato come un sistema lineare con funzione di trasferimento

GZOH(s) = L[gZOH(t)] = L[1(t) − 1(t − T )] =1

s−

1

se−sT =

1 − e−sT

s(3.7)

(vedi figura 3.4).La trasformata di Laplace del segnale ricostruito e quindi data da

Fh(s) = GZOH(s)F ∗(s) (3.8)

dove F ∗(s) e la trasformata di Laplace dell’equivalente impulsivo di fk, i.e., F ∗(s) = F (z)|z=esT .

3.1.3 Modello della funzione di trasferimento a tempo discreto

Analizziamo ora il modello di un sistema dinamico a tempo discreto con ingresso uk, uscita yk e funzione ditrasferimento G(z). Si vuole determinare una funzione di trasferimento G∗(s) in modo che la relazione neldominio di Laplace Y ∗(s) = G∗(s)U∗(s), tra gli equivalenti impulsivi u∗(t) dell’ingresso e y∗(t) dell’uscita,esprima la relazione Y (z) = G(z)U(z), che definisce la dinamica del sistema. Sia {gk} = Z−1[G(z)] la

31

_

r(t) e(t) y(t)ek uk uh(t)

P (s)C(z) ZOH

Figura 3.6: Anello di controllo digitale

_

r(t) e(t) y(t)

e∗(t)

u∗(t) uh(t)

P (s)C∗(s) GZOH(s)

Figura 3.7: Anello di controllo digitale: modello a modulazione impulsiva

risposta impulsiva di G(z). Allora, dalla definizione di trasformata zeta si ottiene

Y (z) = G(z)U(z) ⇔+∞∑

k=0

ykz−k =+∞∑

k=0

gkz−k+∞∑

k=0

ukz−k. (3.9)

Ponendo z = eTs nella precedente relazione, si ottiene Y ∗(s) = G∗(s)U∗(s) dove

G∗(s) =+∞∑

k=0

gke−kTs. (3.10)

Pertanto G∗(s) definita in (3.10) rappresenta G(z) nel modello a modulazione impulsiva (vedi figura 3.5).

3.1.4 Modelli di sistemi interconnessi

Si consideri un sistema a dati campionati eterogeneo, come ad esempio l’anello di controllo mostrato infigura 3.6. Impiegando il modello del campionamento a modulazione impulsiva, le funzioni di trasferi-mento a tempo continuo, quelle a tempo discreto ed il ricostruttore possono essere caratterizzati medianteopportune funzioni di trasferimento nel dominio della trasformata di Laplace, mentre il campionatore emodellato da un blocco che, dato un segnale d’ingresso f(t), fornisce in uscita l’equivalente impulsivof∗(t) del suo campionamento (figura 3.7).Per poter analizzare i modelli a dati campionati interconnessi, e necessario enunciare alcune importantiproprieta dell’operazione di campionamento.

Proprieta 3.1 Sia y(t) un segnale dato dalla convoluzione tra un segnale continuo g(t) ed un segnaleimpulsivo u∗(t) (y(t) = g(t) ∗ u∗(t), ovvero Y (s) = G(s)U∗(s)) e si consideri il suo campionamentoyk = y(kT ) (o l’equivalente y∗(t)). Allora yk (y∗(t)) dipende soltanto dai campioni gk = g(kT ) di g(t)(ovvero da g∗(t)), ed in particolare risulta

Y ∗(s) = [G(s)U∗(s)]∗ = G∗(s)U∗(s) (3.11)

Infatti, essendo u∗(t) =∑+∞

i=0 uiδ(t − iT ), risulta

y(t) = g(t) ∗ u∗(t) =

∫∞

0

g(t − τ)+∞∑

i=0

uiδ(τ − iT )dτ =+∞∑

i=0

g(t − iT )ui (3.12)

32

U(s) Y (s)U∗(s) Y ∗(s)G(s)

Figura 3.8: Esempio 3.1

U(s) Y (s) Y ∗(s)G(s)

Figura 3.9: Esempio 3.2

e quindi

yk = y(kT ) =

∞∑

i=0

gk−iui (3.13)

che dipende solo dai campioni di g(t). Inoltre, applicando a (3.13) la trasformata zeta, si ha Y (z) =G(z)U(z) dove G(z) = Z{gk}, ovvero Y ∗(s) = G∗(s)U∗(s).

Osservazione 3.1 Il risultato precedente si traduce in generale nella proprieta che in un’espressionedel tipo [A(s)B∗(s)]∗, che nel dominio di Laplace rappresenta il campionamento della convoluzione diun segnale continuo a(t) con un segnale impulsivo b∗(t), la quantita B∗(s) puo essere simbolicamente“portata fuori” dall’operazione di campionamento [·]∗, i.e., [A(s)B∗(s)]∗ = A∗(s)B∗(s). Si noti bene chese A(s) e B(s) rappresentano entrambe segnali continui e non impulsivi, allora in generale [A(s)B(s)]∗ 6=A∗(s)B∗(s); in altri termini il campionamento della convoluzione di due segnali a(t) e b(t) non dipendesolo dai campioni dei singoli segnali, ma dal loro intero andamento. Cio non succede invece, per quantovisto, quando uno dei due segnali e impulsivo.

Esempio 3.1 Si consideri lo schema in figura 3.8. Poiche la risposta y(t) e la convoluzione di g(t) conu∗(t), in base al risultato precedente si ha

Y ∗(s) = [G(s)U∗(s)]∗ = G∗(s)U∗(s)

o equivalentemente Y (z) = G(z)U(z). In questo caso esiste quindi una funzione di trasferimento in z trai campioni uk di u(t) e quelli yk di y(t).

Esempio 3.2 Si consideri adesso lo schema in Figura 3.9; in questo caso risulta

Y ∗(s) = [G(s)U(s)]∗ ovvero Y (z) = Z[G(s)U(s)] (3.14)

in cui non e possibile scrivere l’espressione di Y (z) in una forma che contenga separatamente G(z) eU(z). In altre parole i campioni dell’uscita dipendono dall’intero andamento continuo di g(t) e u(t) enon solo dai loro campioni come nel caso precedente. Detto ancora diversamente, il campionamentodella convoluzione di due segnali continui non e uguale alla convoluzione discreta dei campioni dei singolisegnali.Le osservazioni precedenti implicano che in un sistema a dati campionati con ingressi continui e possibiledefinire una funzione di trasferimento a tempo discreto tra i campioni dell’ingresso e i campioni dell’uscitasolo nel caso in cui siano effettivamente solo i campioni dell’ingresso a determinare la risposta del sistema,ovvero solo quando l’ingresso attraversa un campionatore prima di essere filtrato da un qualunque blocco.

33

u(t) uk = u(kT )ZOH

uh(t)

Figura 3.10: Esempio 3.3

3.2 Analisi dei sistemi a dati campionati

Dato un sistema di controllo digitale in retroazione, o comunque un sistema interconnesso in cui sonopresenti elementi a tempo discreto, elementi a tempo continuo e campionatori/mantenitori, si desidera

• calcolare l’espressione della risposta in tutti i segnali (continui e discreti) del sistema, noti gliingressi,

• calcolare, quando cio e possibile, le funzioni di trasferimento a tempo discreto tra i segnali d’in-gresso, campionati, ed i segnali di uscita, anch’essi campionati.

Osserviamo che in un sistema in cui siano presenti segnali a tempo continuo e segnali campionati, none possibile in generale determinare la funzione di trasferimento a tempo continuo tra eventuali segnalidi ingresso continui ed eventuali segnali di uscita continui. Le relazioni che legano questi segnali sonoinfatti in genere non stazionarie (tempo varianti) e quindi non esprimibili come funzioni di trasferimento,come nel caso seguente.

Esempio 3.3 Si consideri il sistema in figura 3.10, con ingresso continuo u(t) e uscita continua uh(t). Siverifica facilmente che la risposta del sistema al segnale u(t−δ) (con δ 6= mT ) non vale uh(t−δ), pertantoil sistema non e tempo invariante nel senso a tempo continuo e quindi la funzione di trasferimento traU(s) e Uh(s) non esiste.

3.2.1 Equivalente campionato con ZOH

Si consideri un sistema a tempo continuo G(s) interfacciato con un dispositivo digitale D attraverso unconvertitore A/D ed un convertitore D/A (ZOH), come in figura 3.11. Dal punto di vista ingresso-uscita,l’interconnessione ZOH → G(s) → A/D e un sistema a tempo discreto. Si vuole determinare il modelloequivalente a tempo discreto di questa interconnessione, ovvero il modello di come il dispositivo digitaleD “vede” l’insieme del sistema continuo e dei convertitori.L’ingresso di G(s) e rappresentato dalla ricostruzione con ZOH uh(t) del segnale di ingresso uk, mentrela corrispondente uscita y(t) viene campionata nella successione yk. Si consideri la rappresentazioneequivalente col modello a modulazione impulsiva in figura 3.12. Risulta

Y (s) = GZOH(s)G(s)U∗(s) (3.15)

quindiY ∗(s) = [GZOH(s)G(s)U∗(s)]∗ = [GZOH(s)G(s)]∗ U∗(s)

=

[

(1 − e−sT )G(s)

s

]∗

U∗(s)(3.16)

Poiche L−1[1 − e−sT ] = δ(t) − δ(t − T ) e una funzione impulsiva, il termine 1 − e−sT si porta fuoridall’operazione [·]∗, dunque

Y ∗(s) = (1 − e−sT )

[G(s)

s

]∗

U∗(s) (3.17)

Passando infine alla trasformata zeta

Y (z) = (1 − z−1)Z

[G(s)

s

]

U(z). (3.18)

34

- -uk, U(z)

uh(t) y(t)

Uh(s) Y (s)

yk, Y (z)Gd(z)

- - - -uk, U(z) yk, Y (z)ZOH G(s) A/D

Figura 3.11: Equivalente campionato con ZOH

Uh(s) Y (s)

- - - -U∗(s) Y ∗(s)GZOH(s) G(s) A/D

Figura 3.12: Equivalente campionato con ZOH a modulazione impulsiva

Dunque risulta definita la funzione di trasferimento tra U(z) e Y (z)

Y (z)

U(z)= Gd(z) = (1 − z−1)Z

[G(s)

s

]

(3.19)

Il sistema descritto da Gd(z) e detto equivalente a dati campionati (con ZOH) del sistema G(s). Si notiche l’equivalente campionato dipende dal tipo di mantenitore usato. Infatti, la funzione di trasferimentoa modulazione impulsiva che descrive lo ZOH influenza l’espressione di Gd(z).

Osservazione 3.2 Con riferimento allo schema di controllo digitale in figura 3.13, l’equivalente cam-pionato con ZOH Pd(z) dell’impianto rappresenta il modo in cui viene visto l’insieme dell’impianto e deiconveritori da parte dei componenti puramente digitali del sistema. In questo modo, come vedremo, epossibile studiare alcuni problemi di controllo in un dominio puramente discreto.

In base alla (3.19), il calcolo del modello equivalente con ZOH puo essere riassunto nella seguenteprocedura.

1. Determinare l’antitrasformata di Laplace g(t) = L−1[G(s)/s]

2. Determinare la trasformata zeta G(z) = Z[gk] = Z[g(kT )]

35

_

rk ekC(z)

uk uh(t)P (s)

Pd(z)

y(t) yk

ZOH A/D

Figura 3.13: Anello di controllo digitale

3. CalcolareGd(z) = (1 − z−1)G(z)

Esempio 3.4

G(s) =1

s→ g(t) = t 1(t) → gk = kT 1k → G(z) =

Tz

(z − 1)2→ Gd(z) =

T

z − 1

G(s) =1

s2→ g(t) =

t2

21(t) → gk =

(kT )2

21k →

→ G(z) =T 2

2

z(z + 1)

(z − 1)3→ Gd(z) =

T 2

2

(z + 1)

(z − 1)2

L’equivalente campionato con ZOH di sistemi con ritardo del tipo

G(s) = e−τs G′(s) (3.20)

puo essere calcolato mediante il procedimento ora descritto tenendo presente la formula della trasformatazeta di segnali campionati con ritardo. Si scompone il ritardo in

τ = mT + δ ; m ≥ 0 intero, 0 ≤ δ < T

e si calcola

Gd(z) = (1 − z−1)Z

[G(s)

s

]

= (1 − z−1)Z

[G′(s)

se−τs

]

= (1 − z−1)Z [ g′(t − τ)|t=kT ]= z−m−1(1 − z−1)Z [g′(kT + (T − δ)) 1k]

(3.21)

dove g′(t) = L−1[G′(s)/s].

Esempio 3.5

G(s) =e−τs

s2=

e−mTse−δs

s2

[G′(s)

s=

1

s3

]

(3.22)

Gd(z) = z−m−1(1 − z−1)Z

[(kT + (T − δ))2

21k

]

(3.23)

= z−m−1(1 − z−1)

{

Z

[(kT )2

21k

]

+ (T − δ)Z[kT 1k] +(T − δ)2

2Z[1k]

}

(3.24)

= z−m−1(1 − z−1)

{T 2

2

z(z + 1)

(z − 1)3+ (T − δ)

Tz

(z − 1)2+

(T − δ)2

2

z

z − 1

}

(3.25)

36

_

r(t) e(t) y(t)ek uk uh(t)

P (s)C(z) ZOH

Figura 3.14: Sistema di controllo digitale

_

r(t) e(t) y(t)

e∗(t)

u∗(t) uh(t)

P (s)C∗(s) GZOH(s)

Figura 3.15: Sistema di controllo digitale: modello equivalente

3.3 Schemi a blocchi a dati campionati

Dato uno schema a blocchi a dati campionati, si vuole determinare, se questa esiste, la funzione ditrasferimento a tempo discreto tra l’ingresso ed uscita campionati, o in caso contrario almeno l’espressionedell’uscita una volta noto l’ingresso.Si consideri ad esempio il sistema di controllo digitale in retroazione in figura 3.14 ed il suo equivalentea modulazione impulsiva in figura 3.15. Determiniamo, se possibile, la funzione di trasferimento tra icampioni rk dell’ingresso r(t) ed i campioni yk dell’uscita y(t). Risulta

Y ∗(s) = [P (s)GZOH(s)U∗(s)]∗ =

[

(1 − e−sT )U∗(s)P (s)

s

]∗

(3.26)

Y ∗(s) = (1 − e−sT )

[P (s)

s

]∗

U∗(s) (3.27)

Y ∗(s) = (1 − e−sT )

[P (s)

s

]∗

C∗(s)[R∗(s) − Y ∗(s)] (3.28)

Y ∗(s) =L∗(s)

1 + L∗(s)R∗(s) (3.29)

dove

L∗(s) = (1 − e−sT )C∗(s)

[P (s)

s

]∗

(3.30)

Passando alla trasformata zeta si ottiene

Y (z) =L(z)

1 + L(z)R(z) (3.31)

37

_

rk ekC(z)

uk

du(t)

P (s)

dy(t)

yk

ZOH A/D

_

R∗ E∗

C∗(s)U∗

Du

P (s)

Dy

Y ∗

ZOH A/D

Figura 3.16: Sistema di controllo digitale con disturbi

dove

L(z) = (1 − z−1)C(z)Z

[P (s)

s

]

(3.32)

Si e quindi ottenuta la funzione di trasferimento W (z) = Y (z)/R(z). Si noti che il guadagno d’anelloL(z) puo essere scritto anche come

L(z) = C(z)Pd(z) (3.33)

dove Pd(z) e l’equivalente campionato con ZOH dell’impianto. D’altra parte il sistema che lega yk ark puo essere visto proprio come un sistema puramente a tempo discreto in retroazione unitaria conguadagno d’anello (3.33).Si consideri adesso il sistema di controllo in figura 3.16. Si vuole valutare l’effetto sull’uscita dei disturbidu(t) e dy(t) e se possibile determinare la funzione di trasferimento tra i campioni di questi disturbied i campioni dell’uscita. Dal diagramma a blocchi, osserviamo che la risposta nell’uscita al disturbodu(t) dipende dal segnale che si ottiene filtrando du(t) attraverso P (s) e poi campionando, ovvero da[P (s)Du(s)]∗, mentre la risposta a dy(t) dipende dal solo campionamento di dy(t), ovvero da D∗

y(s). Inbase alle osservazioni fatte in precedenza, ci aspettiamo quindi che esista la funzione di trasferimentoY ∗(s)/D∗

y(s) [Y (z)/Dy(z)] ma non quella Y ∗(s)/D∗

u(s).Mediante passaggi analoghi a quelli svolti per il calcolo della risposta al riferimento, si ottiene la rispostacampionata al disturbo du(t)

Y ∗

du(s) =

[P (s)Du(s)]∗

1 + C∗(s)[GZOH(s)P (s)]∗(3.34)

ovvero

Ydu(z) =

Z[P (s)Du(s)]

1 + C(z)(1 − z−1)Z[P (s)/s](3.35)

e la risposta campionata al disturbo dy(t)

Y ∗

dy(s) =

1

1 + C∗(s)[GZOH(s)P (s)]∗D∗

y(s) (3.36)

ovvero

Ydy(z)

1

1 + C(z)(1 − z−1)Z[P (s)/s]︸ ︷︷ ︸

Y (z)/Dy(z)

Dy(z) (3.37)

E quindi evidente che esiste la funzione di trasferimento Y (z)/Dy(z) ma non la funzione di trasferimentoY (z)/Du(z).

38

3.4 Oscillazioni interperiodo

La funzione di trasferimento W (z) di un sistema di controllo digitale esprime la relazione tra i campionidel segnale di riferimento ed i campioni dell’uscita. Tuttavia il segnale che si ha interesse a controllare esempre l’uscita analogica y(t), non quella campionata yk. I campioni dell’uscita costituiscono l’informa-zione utilizzata per il controllo ma non l’obiettivo del controllo, che e invece rappresentato dall’andamentodi y(t). In generale, l’uscita y(t) varia con continuita tra due istanti di campionamento successivi e questonon e evidentemente individuabile dall’andamento di yk. Tali variazioni possono rimanere significativeanche agli istanti di tempo in cui, in base alla funzione di trasferimento discreta W (z), la risposta cam-pionata del sistema ha raggiunto una situazione di regime. Questo comportamento dell’uscita analogicae in genere fortemente indesiderato.

Esempio 3.6 Si consideri il sistema di controllo digitale con passo di campionamento T = 1 s, funzionedi trasferimento dell’impianto

P (s) =e−s

1 + 8s + 15s2(3.38)

e controllore

C(z) =z3 − 1.5353z2 + 0.5866z

0.028z3 + 0.0234z2 − 0.028z − 0.0234(3.39)

Come vedremo in seguito, questo controllore e progettato in modo che la risposta al gradino campionatadel sistema vada a regime dopo soli 2 istanti di campionamento.In figura 3.17 viene mostrata la simulazione dell’andamento della risposta analogica in corrispondenzaa questo progetto. E evidente che la risposta campionata raggiunge il valore di regime in due passidi campionamento, ma che l’uscita analogica continua ad oscillare per lungo tempo tra un periodo dicampionamento ed il successivo.

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

Figura 3.17: Oscillazioni interperiodo

3.5 Equivalente campionato in rappresentazione di stato

Dato un sistema lineare stazionario Σ a tempo continuo in equazioni di stato

Σ :

{x(t) = Ax(t) + Bu(t)y(t) = Cx(t) + Du(t)

(3.40)

si vuole determinare la rappresentazione di stato del suo equivalente campionato con ZOH Σd (figura3.18).Assumendo x(kT ) come condizione iniziale all’istante t = kT , la risposta di Σ valutata all’istante (k+1)Tvale

x((k + 1)T ) = eAT x(kT ) +

∫ (k+1)T

kT

eA((k+1)T−τ) B dτ uk

y(kT ) = Cx(kT ) + Duk

(3.41)

39

- -uk ykΣd

- - - -uk ykZOH Σ A/D

Figura 3.18: Equivalente campionato in rappresentazione di stato

Si noti infatti che lo ZOH mantiene l’ingresso costante e pari a u(t) = uh(t) = uk in tutto l’intervallo[kT, (k + 1)T ).Effettuando un cambio di variabile nell’integrale e possibile riscrivere (3.41) come

xk+1 = eAT xk +

∫ T

0

eAθ B dθ uk

yk = Cxk + Duk

(3.42)

dove xk = x(kT ), yk = y(kT ). Dunque, l’evoluzione di xk, yk, uk e descritta dal modello in equazioni distato {

xk+1 = Adxk + Bduk

yk = Cdxk + Dduk(3.43)

dove

Ad = eAT ; Bd =

∫ T

0

eAσdσB; Cd = C; Dd = D (3.44)

Tale modello rappresenta l’equivalente campionato con ZOH del sistema Σ.

Capitolo 4

Campionamento e ricostruzione

Sommario. In questo capitolo vengono richiamati brevemente i risultati fondamentali (teorema diShannon e sue conseguenze) sul campionamento e la ricostruzione di segnali. Tali operazioni vengonocaratterizzate in termini di spettro di Fourier.

4.1 Spettro di Fourier di un segnale

Definizione 4.1 Lo spettro (trasformata) di Fourier di un segnale f(t) (integrabile in valore assolutosull’insieme dei reali) e una funzione F (jω) : R → C definita da

F (jω) =

∫ +∞

−∞

f(t) e−jωt dt

Si noti che per segnali tali che f(t) = 0 ∀t < 0, lo spettro F (jω) coincide con la trasformata di LaplaceF (s) del segnale valutata sull’asse immaginario, i.e. per s = jω, ω ∈ R.Sotto ipotesi opportune, la trasformata di Fourier determina univocamente il segnale, e risulta

f(t) =1

∫ +∞

−∞

F (jω) ejωt dω (4.1)

In questo caso, f(t) e detto antitrasformata di Fourier di F (jω).Lo spettro F (jω) si presta ad un’interpretazione intuitiva come generalizzazione della serie di Fourier,che viene invece usata per la scomposizione armonica di segnali periodici. Scomponendo F (jω) in moduloe fase, dalla (4.1) si ottiene

f(t) =1

∫ +∞

−∞

|F (jω)| ej(ωt+arg[F (jω)]) dω (4.2)

dove

ej(ωt+arg[F (jω)]) = cos(ωt + arg[F (jω)]) + j sin(ωt + arg[F (jω)]) (4.3)

Se si suppone che f(t) sia un segnale reale, la sua parte immaginaria e ovviamente zero e allora

f(t) =1

∫ +∞

−∞

|F (jω)| cos(ωt + arg[F (jω)])dω (4.4)

Il segnale f(t) risulta quindi dalla sommatoria integrale rispetto a ω di sinusoidi infinitesime di pulsazioneω ed ampiezza |F (jω)| dω. Il modulo dello spettro di Fourier, |F (jω)|, puo quindi essere interpretato comedensita di ampiezza (rispetto a ω) del continuo di sinusoidi che compongono f(t) ed e detto contenutofrequenziale o spettro di ampiezza di f(t) (figura 4.1).

4.2 Spettro del segnale campionato

Si consideri la sequenza fk = f(kT ) che risulta dal campionamento con periodo T di un segnale continuof(t) nullo per t < 0, ed il segnale a modulazione impulsiva f∗(t) equivalente a fk. Si ha il seguenterisultato.

41

ω

|F (jω)|

Figura 4.1: Spettro di ampiezza di un segnale f(t)

Teorema 4.1 Tra la trasformata di Laplace F (s) di un segnale f(t) nullo per t < 0 e la trasformata diLaplace F ∗(s) di f∗(t) sussiste la relazione

F ∗(s) =1

T

+∞∑

k=−∞

F (s − jkωs) ; ωs =2π

T(4.5)

Dimostrazione. Sviluppando il segnale periodico δT (t) =∑

k=0 δ(t−kT ) in serie complessa di Fouriersi ottiene

δT (t) =

+∞∑

k=−∞

1

Tejk 2π

T (4.6)

pertanto

f∗(t) = f(t)δT (t) =

+∞∑

k=−∞

1

Tf(t)ejk 2π

T (4.7)

e dunque, applicando la proprieta di moltiplicazione per esponenziale della trasformata di Laplace

F ∗(s) =1

T

+∞∑

k=−∞

F (s − jk2π

T) =

1

T

+∞∑

k=−∞

F (s − jkωs) (4.8)

In base al risultato precedente, poiche f∗(t) e nullo per t < 0, lo spettro di f∗(t) e dato da

F ∗(jω) = F ∗(s)|s=jω =1

T

+∞∑

k=−∞

F [j(ω − kωs)] (4.9)

Si noti come l’andamento dello spettro del segnale f∗(t) sia costituito da infinite repliche (alias) dellospettro del segnale originale f(t) spaziate tra loro della pulsazione di campionamento ωs e scalate di unfattore 1/T (figura 4.2).

4.3 Modello del ricostruttore ideale e teorema di Shannon

Si consideri un segnale f(t) a banda limitata, il cui spettro di ampiezza sia cioe nullo per |ω| > |ωf |dove ωf e un dato valore (figura 4.3). Data la sequenza fk = f(kT ) di campioni di f(t), si considera ilproblema di ricostruire, se possibile, il segnale originale f(t) a partire da fk.Elaboriamo innanzitutto un modello concettuale di questa operazione impiegando l’equivalente a modu-lazione impulsiva del segnale campionato. Tenendo presente la forma dello spettro del segnale impulsivof∗(t) che rappresenta fk, si osserva che lo spettro di f(t) puo essere ricostituito a partire da quello

42

ωωf−ωf

|F (jω)|

ωωf−ωf−ωs−2ωs ωs 2ωs

T |F ∗(jω)|

Figura 4.2: Spettro di ampiezza di un segnale f(t) e spettro di ampiezza del segnale campionato equivalente f∗(t)

ωωf−ωf

|F (jω)|

F (jω) = 0 ∀|ω| > ωf

Figura 4.3: Segnale a banda limitata

43

ωωN−ωN

T

|GPB(jω)|

GPB(jω) = T rect(ω/ωN ) ; ωN = ωs/2

Figura 4.4: Filtro passa-basso ideale

di f∗(t) mediante un’operazione ideale di filtraggio passa-basso che (a parte un fattore d’ampiezza T )elimini il contenuto frequenziale di f∗(t) esterno alla pulsazione

ωN =ωs

2=

π

Tpulsazione di Nyquist (4.10)

Tale operazione equivale ad elaborare f∗(t) attraverso un filtro la cui risposta in frequenza sia quellaindicata in figura 4.4.Si osserva facilmente che l’operazione sopra descritta puo dare due esiti diversi a seconda della relazione

che esiste tra la pulsazione di taglio ωN del filtro e la banda ωf del segnale f(t). In particolare,

• se ωN > ωf , il filtro rivela lo spettro corretto del segnale originale

segnalecontinuo

campiona-mento

filtro passabasso ideale

segnaleoriginale

f(t) f*(t) f (t)

• se ωN < ωf , il filtro isola lo spettro del segnale originale sovrapposto a componenti spurie dovutealle repliche

segnalecontinuo

campiona-mento

filtropassa-basso

segnale conaliasing

Sotto la condizione ωN > ωf il segnale f(t) puo essere quindi ottenuto applicando al segnale f∗(t) unfiltro la cui risposta in frequenza GPB(jω) vale T per −ωN ≤ ω ≤ ωN e zero altrove. Questo risultato ealla base del noto

Teorema 4.2 (di Shannon) Dato un segnale f(t) a banda limitata ωf , i.e.

F (jω) = 0 ∀|ω| > ωf (4.11)

esso e ricostruibile a partire dalla sequenza di campioni fk = f(kT ) se e solo se risulta

ωf < ωN . (4.12)

In tal caso, il segnale f(t) e dato da

f(t) =

+∞∑

k=0

f(kT )sin(ωN (t − kT ))

ωN (t − kT )(4.13)

44

Dimostrazione. Poiche, sotto le ipotesi fatte, lo spettro F (jω) e pari allo spettro F ∗(jω) filtrato perun passa basso ideale che taglia a ωN [GPB(jω) = T rect(ω/ωN )], il segnale ricostruito f(t) e quindi datodalla convoluzione di f∗(t) con la risposta impulsiva del filtro passa basso, la quale vale

gPB(t) =1

∫ +∞

−∞

GPB(jω)ejωtdω =sin(ωN t)

ωN t−∞ < t < +∞ (4.14)

Dunque

f(t) = gPB(t) ∗ f∗(t) =

∫ +∞

−∞

gPB(t − τ)f∗(τ)dτ =

∫ +∞

−∞

sin(ωN (t − τ))

ωN (t − τ)

+∞∑

k=0

f(kT )δ(τ − kT )dτ (4.15)

ovvero

f(t) =

+∞∑

k=0

f(kT )

∫ +∞

−∞

sin(ωN (t − τ))

ωN (t − τ)δ(τ − kT )dτ (4.16)

e tenendo presente le proprieta di δ(t) rispetto all’integrale

f(t) =

+∞∑

k=0

f(kT )sin(ωN (t − kT ))

ωN (t − kT ). (4.17)

Osservazione 4.1 L’espressione (4.13) del segnale f(t) ricostruito in base ai suoi campioni fk = f(kT )mette in evidenza la non causalita dell’operazione di ricostruzione secondo il teorema di Shannon. Infatti,si nota facilmente che per ogni t0, il valore di f(t0) e funzione di tutti i campioni f(kT ) per k che vada 0 a +∞. Evidentemente, qualunque sia t0 esiste sempre k tale che kT > t0, per cui il valore dif(t0) dipende da campioni del segnale relativi ad istanti futuri rispetto a t0. Questo rende la formuladi ricostruzione di Shannon non applicabile in contesti, quali i sistemi di controllo, che siano soggettial principio di causalita, dove cioe ci sia la necessita di calcolare in linea, ossia conoscendo ad ogniistante solo i campioni gia acquisiti, il segnale ricostruito. D’altra parte, il teorema di Shannon forniscecomunque una condizione necessaria per la ricostruibilita del segnale a partire dal suo campionamento:se le ipotesi del teorema non sono soddisfatte, il segnale non e ricostruibile nemmeno in condizioni ideali.

4.3.1 Aliasing e filtro anti-aliasing

Campionare un segnale f(t) con un periodo T per cui non siano soddisfatte le ipotesi del teorema diShannon costituisce un errore irreversibile, nel senso che dai campioni fk che si ottengono non c’e alcunmodo di ricostituire successivamente il segnale originale. Questa condizione e detta aliasing ed e, perquanto detto, una situazione da prevenire a livello di acquisizione dei campioni.Al fine di evitare fenomeni di aliasing, di solito dovuti al campionamento di rumore ad alta frequenzasovrapposto al segnale d’interesse, si introduce un filtro passa-basso (analogico) a monte del campiona-tore (figura 4.5). Il filtro anti-aliasing deve tagliare significativamente tutto il contenuto frequenziale a

segnalecontinuo

filtroantialiasing

campiona-mento

f(t) fkfa(t)(ricostruttore)

Figura 4.5: Filtro anti-aliasing

pulsazioni superiori a ωN , ovvero tutte le componenti del segnale che verrebbero campionate in condizionidi aliasing. Naturalmente, se il segnale utile, senza cioe rumore sovrapposto, ha componenti a pulsazionemaggiore di ωN , significa che e stato scelto in modo errato il periodo di campionamento (e non il filtro).Il filtro anti-aliasing non puo essere un filtro ideale, dunque sono necessari particolari accorgimenti cheverranno esposti in seguito.

45

0 0.5 1 1.5 2-2-1012 (a) segnale + rumore

tempo (sec) 0 0.5 1 1.5 2-2-1012 (c) (a) prefiltrato

tempo (sec)

0 0.5 1 1.5 2-2

-1

0

1

2(b) (a) campionato a 28 Hz

tempo (sec)0 0.5 1 1.5 2

-1.5

-1

-0.5

0

0.5

1

(d) Campionato a 28 Hz

tempo (sec)

0 0.5 1 1.5 2-2-1012 (a) segnale + rumore

tempo (sec) 0 0.5 1 1.5 2-2-1012 (c) (a) prefiltrato

tempo (sec)

0 0.5 1 1.5 2-2

-1

0

1

2(b) (a) campionato a 28 Hz

tempo (sec)0 0.5 1 1.5 2

-1.5

-1

-0.5

0

0.5

1

(d) Campionato a 28 Hz

tempo (sec)

Figura 4.6: Esempio 4.1: illustrazione del fenomeno dell’aliasing

Esempio 4.1 Si supponga di campionare una sinusoide a 1 Hz affetta da rumore a 60 Hz (fig. 4.6 (a))con frequenza fs = 28 Hz. La ricostruzione del segnale a partire da questo campionamento genera ilsegnale originale sovrapposto ad un’armonica spuria a 4 Hz dovuta al fenomeno dell’aliasing (fig. 4.6(b)). Prefiltrando il segnale con un passa-basso che taglia alla frequenza di 3.2 Hz (fig. 4.6 (c)), siottiene un segnale che non ha componenti che vengono campionate in condizioni di aliasing, per cui laricostruzione del segnale dai campioni e corretta. (fig. 4.6 (d)).

Dall’esempio precedente risulta evidente che, qualora il campionamento di un segnale rumoroso avvengain condizioni di aliasing, il segnale ricostruito presenta, nella banda del segnale utile (la cosiddetta bandabase), componenti spurie che non sono caratteristiche ne del segnale ne del disturbo.

4.4 Interpretazione in frequenza dello ZOH

Nella formula di ricostruzione ideale di Shannon, l’espressione del segnale ricostruito puo essere vista comecio che si ottiene come risultato dell’applicazione di un filtro passa-basso ideale al segnale impulsivo f∗(t)che rappresenta fk = f(kT ). La risposta in frequenza di tale filtro e data da

GPB(jω) = T rect(ω/ωN ) (4.18)

Si noti che il filtro passa basso ideale ha fase nulla a tutte le pulsazioni.Abbiamo gia osservato che la ricostruzione che si ottiene e non causale. In alcune applicazioni di teleco-municazioni risulta accettabile fornire il segnale ricostruito con un certo ritardo, in modo da poter basarela ricostruzione del segnale ad un dato istante anche su un certo numero di campioni acquisiti ad istantisuccessivi. Questo approccio e evidentemente impraticabile nei sistemi di controllo in retroazione, poichel’introduzione di ritardi nell’anello e dannosa per la stabilita del sistema.Il mantenitore di ordine zero (ZOH) comunemente usato nei sistemi di controllo, pur essendo un filtrocausale, non realizza evidentemente la formula di Shannon, per cui ricostruisce, anche in assenza di alia-sing, solo un’approssimazione del segnale che si otterrebbe secondo Shannon conoscendo ad ogni istantei campioni futuri. Poiche, come noto, la ricostruzione con ZOH equivale al filtraggio di f∗(t) attraversoGZOH(s), la differenza tra ricostruzione ideale e con ZOH si puo interpretare confrontando la rispostain frequenza di GZOH(s) con quella del passa-basso ideale. Risulta

GZOH(jω) =1 − e−jωT

jω= T

sin(ωT/2)

ωT/2e−jωT/2 (4.19)

46

−20 −15 −10 −5 0 5 10 15 200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

ωs−ωs 2ωs−2ωs

−20 −15 −10 −5 0 5 10 15 20−4

−3

−2

−1

0

1

2

3

4

ωs−ωs 2ωs−2ωs

Modulo (T = 1) Fase (T = 1)

Figura 4.7: Risposta in frequenza dello ZOH

quindi

|GZOH(jω)| =

∣∣∣∣∣

sin(ωT2 )

ωT2

∣∣∣∣∣, arg GZOH(jω) = −

ωT

2(4.20)

Si osserva che lo ZOH, contrariamente al passa-basso ideale, introduce guadagno non costante nellabanda tra ω = 0 e ω = ωN e non nullo al di fuori, oltre ad uno sfasamento pari a quello di un elementodi ritardo τ = T/2 nella banda tra ω = 0 e ω = ωs (figure 4.7,4.8).

00

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

��ω �ω �2ω �3ω��ω− ��ω− ω− �ω−

Filtroideale

ZOH

Figura 4.8: Risposta in frequenza dello ZOH e del ricostruttore ideale

Capitolo 5

Realizzazione digitale di controllori analogici

Scelta del passo di campionamento

“E meglio mettere le mani avanti,come disse Eulero all’Indietro.”

K., 2007

Sommario. In questo capitolo vengono presentati i metodi di sintesi di controllori digitali median-te approssimazione discreta di regolatori analogici progettati con metodi noti. Viene inoltre discusso ilproblema della scelta del passo di campionamento sulla base dei requisiti imposti al sistema di controllo.

5.1 Progetto per discretizzazione

Dato un impianto lineare stazionario P (s), si supponga di aver progettato con metodi noti (sintesi pertentativi, luogo delle radici, ecc.) un regolatore analogico C(s) a fronte di opportune specifiche. L’ideafondamentale alla base dei metodi analizzati in questo capitolo e quella di approssimare le caratteristichedinamiche di C(s) con un regolatore a tempo discreto C(z) in modo che, una volta inserito C(z) inun anello di controllo digitale, si ottengano prestazioni del sistema analoghe a quelle del corrispondentesistema di controllo analogico (figura 5.1). Si consideri un controllore lineare a tempo continuo

ingressosegnaledi errore

riferimento

controlloreanalogico impianto

uscita-+u(t) y(t)r(t) C(s) G(s)e(t)

C(z)A/DA/D D/AD/Auk

ingressosegnaledi errore

riferimento

controllore digitale impianto

uscita-+u(t) y(t)r(t)

G(s)e(t) ek

Figura 5.1: Schema concettuale del progetto per approssimazione.

C(s) =U(s)

E(s)=

bmsm + bm−1sm−1 + · · · + b0

sn + an−1sn−1 + · · · + a0(5.1)

Come e noto, la precedente funzione di trasferimento rappresenta nel dominio della trasformata di Laplacel’equazione differenziale ingresso-uscita

u(n)(t) + an−1u(n−1)(t) + · · · + a0 = bme(m)(t) + bm−1e

(m−1)(t) + · · · + b0e(t) (5.2)

48

Il progetto per approssimazione si basa sui metodi alle differenze finite comunemente utilizzati per lasoluzione delle equazioni differenziali con l’uso calcolatori digitali. Poiche, come gia ricordato, i calcolatoridigitali non possono operare sul continuo, le operazioni integro-differenziali devono essere necessariamenteapprossimate con operazioni che coinvolgano soltanto un insieme discreto di campioni delle funzioni ingioco. In questo senso, ogni equazione differenziale di cui si voglia simulare la soluzione su un calcolatoredeve essere approssimata con un’equazione alle differenze.Si supponga che, noto e(t), la soluzione dell’equazione differenziale (5.2) possa essere approssimata dallasoluzione dell’equazione alle differenze

uk+1 + αn−1uk+n−1 + · · · + α0uk = βnek+n + βn−1ek+n−1 + · · · + β0ek (5.3)

in cui uk = u(kT ) ek = e(kT ) costituiscono campionamenti a passo fisso T delle funzioni e(t) ed u(t). Seuna tale approssimazione e precisa, nel senso che la sequenza uk soluzione di (5.3) riproduce fedelmenteun campionamento della soluzione u(t) di (5.2), si puo affermare che la funzione di trasferimento

C(z) =βnzn + βn−1z

n−1 · · · + β0

zn + αn−1zn−1 + · · · + α0(5.4)

operando sui campioni di e(t) ed u(t), riproduce fedelmente le caratteristiche dinamiche del sistemacontinuo descritto dalla funzione di trasferimento (5.1).Nel seguito del capitolo, analizzeremo alcuni metodi di approssimazione alle differenze finite idonei adessere applicati al progetto di regolatori a tempo discreto a partire da regolatori a tempo continuo.

5.2 Metodi di discretizzazione

I metodi di approssimazione alle differenze finite che analizzeremo possono essere derivati da altrettantimetodi comunemente usati per il calcolo approssimato dell’integrale di una funzione e(t) conoscendo lafunzione integranda in un insieme discreto di punti t = kT .

• Metodo di Eulero in avanti

∫ (k+1)T

kT

e(τ)dτ ≈ Te(kT )

• Metodo di Eulero all’indietro

∫ (k+1)T

kT

e(τ)dτ ≈ Te((k + 1)T )

49

• Metodo dei trapezi (di Tustin)

∫ (k+1)T

kT

e(τ)dτ ≈T [e((k + 1)T ) + e(kT )]

2

Sia consideri la funzione integrale di e(t)

i(t) =

∫ t

0

e(τ)dτ (5.5)

La relazione tra i(t) ed e(t) puo essere espressa con la trasformata di Laplace nel seguente modo

I(s) =1

sE(s) ⇔ E(s) = sI(s) (5.6)

Si considerino i campioni ik = i(kT ), ek = e(kT ). Approssimando l’operazione di integrale con ciascunodei tre metodi sopracitati, tali campioni risultano legati da opportune relazioni, rispettivamente.

• Metodo di Eulero in avanti

ik+1 − ik =

∫ (k+1)T

kT

e(τ)dτ ≈ Tek (5.7)

che prendendo le rispettive trasformate zeta puo essere scritta come

(z − 1)I(z) ≈ TE(z) (5.8)

e dunque la relazione integrale/differenziale tra e(t) e i(t) induce una relazione approssimata tra irelativi campioni sulla base della formula di approssimazione dell’integrale. Dunque

E(s) = sI(s) =⇒ E(z) ≈z − 1

TI(z) (5.9)

• Metodo di Eulero all’indietro:

ik+1 − ik ≈ Tek+1

=⇒

Zeta (z − 1)I(z) ≈ TzE(z) (5.10)

e dunque

E(s) = sI(s) =⇒ E(z) ≈z − 1

TzI(z) (5.11)

• Metodo di Tustin

ik+1 − ik ≈T (ek+1 + ek)

2

=⇒

Zeta (z − 1)I(z) ≈T (z + 1)

2E(z) (5.12)

e dunque

E(s) = sI(s) =⇒ E(z) ≈2(z − 1)

T (z + 1)I(z) (5.13)

50

In termini simbolici, quantita continue che nel dominio della trasformata di Laplace sono legate dall’o-peratore s, hanno i rispettivi campioni approssimativamente legati nel dominio della trasformata zeta daopportuni operatori in z dipendenti dal metodo di integrazione usato. Si hanno le seguenti associazioni.

• Eulero in avanti

s ↔z − 1

T(5.14)

• Eulero all’indietro

s ↔z − 1

Tz(5.15)

• Tustin

s ↔2(z − 1)

T (z + 1)(5.16)

Si consideri il controllore lineare a tempo continuo descritto dalla funzione di trasferimento

C(s) =U(s)

E(s)=

bmsm + bm−1sm−1 + · · · + b0

sn + an−1sn−1 + · · · + a0(5.17)

che equivale alla relazione ingresso-uscita

snU(s) + an−1sn−1U(s) + · · · + a0U(s) = bmsmE(s) + bm−1s

m−1E(s) + · · · + b0E(s) (5.18)

Sostituendo l’operatore s con il suo approssimato discreto secondo uno dei tre metodi e le quantitacontinue con i corrispondenti campioni, si ottiene una relazione approssimata tra le quantita discretestesse, dipendente dal metodo usato, che puo essere espressa nella forma di una funzione di trasferimentoC(z).

• Eulero in avanti

C(z) = C(s)|s= z−1T

(5.19)

• Eulero all’indietro

C(z) = C(s)|s= z−1T z

(5.20)

• Tustin

C(z) = C(s)|s=

2(z−1)T (z+1)

(5.21)

Si noti che la trasformazione di Tustin

s =2

T

z − 1

z + 1

e bilineare nelle variabili s e z in quanto, fissando una delle due variabili, l’equazione ottenuta e linearenell’altra

zs + s =2

T(z − 1) (5.22)

Esempio 5.1 Si consideri un regolatore costituito da un integratore e da una rete anticipatrice

C(s) =Kc

s

1 + τs

1 + τ/ms(5.23)

Applicando la trasformazione di Tustin si ottiene il controllore a tempo discreto

C(z) = KcT (z + 1)

2(z − 1)

1 + τ 2(z−1)T (z+1)

1 + τ/m 2(z−1)T (z+1)

(5.24)

51

5.3 Mappatura dei poli

Poiche l’espressione del controllore digitale C(z) si ottiene mediante la sostituzione della variabile s inC(s) con un’opportuna funzione di z a seconda del metodo di discretizzazione utilizzato, i poli (ed anchegli zeri) di C(s) sono legati a quelli di C(z) dalla stessa funzione. Si ottiene percio che ogni polo ins = si del controllore a tempo continuo C(s) genera un polo zi del controllore discreto approssimatoC(z) secondo le relazioni:

• Eulero in avanti:zi − 1

T= si ⇒ zi = 1 + Tsi (5.25)

• Eulero all’indietro:zi − 1

Tzi= si ⇒ zi =

1

1 − siT(5.26)

• Tustin:2(zi − 1)

T (zi + 1)= si ⇒ zi =

1 + siT/2

1 − siT/2(5.27)

Se consideriamo il luogo dei punti del piano z in cui viene mappato da ciascuna delle precedenti tra-sformazioni il semipiano sinistro del piano s (che rappresenta il luogo dei poli stabili nel continuo), siottengono le mappe in figura 5.2.

Osservazione 5.1 Il metodo di Eulero in avanti mappa una parte del semipiano sinistro in s in puntiesterni alla circonferenza unitaria in z. Questo significa che, a seconda del passo di campionamento usato,un C(s) con poli tutti stabili puo venire approssimato con un C(z) che ha poli instabili. Questo fenomenoe indesiderabile, e pertanto questo metodo di approssimazione non viene generalmente usato. Il metododi Eulero all’indietro mappa la regione stabile nel continuo in un sottoinsieme della regione stabile neldiscreto. Infine, nella trasformazione di Tustin le regioni di stabilita continua e discreta vengono mappateesattamente l’una sull’altra, come accade per la trasformazione z = esT , che caratterizza la mappatura deipoli si della trasformata di Laplace di un segnale nei poli zi della trasformata zeta del segnale campionato.Le mappature tra poli relative ai tre metodi visti costituiscono in effetti delle approssimazioni, confunzioni razionali, della funzione z = esT . Tuttavia, il campionamento di un segnale e la discretizzazioneper approssimazione di una funzione di trasferimento sono operazioni concettualmente molto diverse, danon confondere.

5.4 Specifiche statiche

Ciascuno dei metodi di discretizzazione visti fornisce un controllore digitale C(z) le cui caratteristichedinamiche riproducono con un certo grado di approssimazione quelle del controllore analogico di partenzaC(s). Analizziamo adesso il comportamento statico del sistema di controllo digitale ottenuto con questimetodi in termini di errori a regime a segnali canonici. Se il regolatore analogico C(s) e progettato persoddisfare determinate specifiche statiche, e auspicabile che anche C(z), inserito nell’anello di controllodigitale, conservi tali specifiche. In particolare, se il sistema di controllo analogico presenta errore aregime finito o nullo di inseguimento ad un segnale canonico r(t), e desiderabile che il sistema digitalepresenti lo stesso errore a regime nell’uscita yk in corrispondenza ad un segnale di riferimento rk = r(kT ).Ricordiamo che un sistema di controllo analogico in retroazione e detto di tipo l se il guadagno d’anelloL(s) = C(s)P (s) ha l poli in s = 0, ovvero se

L(s) =KLL′(s)

sl; L′(0) = 1

Analogamente, il sistema di controllo digitale e detto di tipo l se il guadagno d’anello Ld(z) = C(z)Pd(z)ha l poli in z = 1, ovvero se

Ld(z) =KLd

L′

d(z)

(z − 1)l; L′

d(1) = 1

52

Piano s

Tjω

sTz +=1

Piano z

Eulero in avanti

Piano s Piano z

Eulero all’indietro

Piano s Piano z

Tustin

Figura 5.2: Mappatura dei poli con i tre metodi di Eulero in avanti, Eulero all’indietro e di Tustin.

Per questo sistema, si consideri il problema di inseguimento a regime del segnale di riferimento canonicodi ordine h campionato

r(h)k =

th

h!

∣∣∣∣t=kT

=(kT )h

h!i.e. R(h)(z) = Z

[1

sh+1

]

Si puo facilmente dimostrare che R(h)(z) puo sempre essere scritto nella forma

R(h)(z) =Th

(z − 1)h+1R(h)(z) con R(h)(1) = 1 (5.28)

53

L’espressione di R(h)(z) per h generico non e interessante, anche se e gia stata calcolata esplicitamenteper h = 0, 1, 2.Seguendo un procedimento del tutto analogo a quanto fatto per il caso a tempo continuo, tenendo cioepresente l’espressione (5.28) ed utilizzando il teorema del valore finale, si verifica facilmente che per unsistema di tipo l ≥ 1 stabile ad anello chiuso, l’errore a regime di inseguimento al segnale canonico

campionato r(h)k

• e nullo se l > h,

• vale e(h) = T h

KLd

se l = h,

• e infinito se l < h.

Si supponga di aver progettato per l’impianto

P (s) =Kp

spP ′(s) ; P ′(0) = 1 (5.29)

il regolatore analogico

C(s) =Kc

scC ′(s) ; C ′(0) = 1 (5.30)

in modo che il sistema di controllo risultante presenti errore a regime finito al segnale canonico di ordineh = l = p + c pari a 1/KL dove KL = KcKp. Ci chiediamo se progettando il controllore digitaleapprossimato C(z), tale errore a regime viene conservato.Consideriamo l’equivalente campionato con ZOH Pd(z) dell’impianto. Si hanno le seguenti proprieta.

• Il tipo di Pd(z) coincide con il tipo p di P (s)

• Il guadagno di Bode KPddi Pd(z) vale KPd

= T pKp.

La prima parte di questo risultato e ovvia, la seconda e fornita senza dimostrazione.Consideriamo adesso il tipo ed il guadagno di Bode del controllore C(z) progettato per approssimazione.In base alle relazioni che esprimono la mappatura dei poli, risulta evidente per ciascuno dei tre metodiche per ogni polo in s = 0 di C(s), il corrispondente C(z) ha un polo in z = 1, per cui il tipo c di C(s)e uguale al tipo di C(z). Inoltre risulta, per la trasformazione di Tustin (ma si ha un risultato analogoanche per gli altri metodi)

C(z) = Kc

(T

2

)c(z + 1)c

(z − 1)cC ′

(2(z − 1)

T (z + 1)

)

(5.31)

e quindi il guadagno di Bode di C(z) vale

KC = limz→1

(z − 1)cC(z) = T cKc (5.32)

Dunque, il tipo del guadagno d’anello discreto Ld(z) = C(z)Pd(z) e uguale a quello di L(s) = C(s)P (s).Inoltre il guadagno di Bode di L(z) vale

KLd= KCKPd

= T p+cKL (5.33)

Allora, l’errore a regime al segnale canonico campionato di ordine h = l = p + c vale

e(h) =Th

KLd

=1

KL(5.34)

ed e pertanto uguale all’errore a regime al segnale canonico continuo del corrispondente sistema dicontrollo analogico.

54

5.5 Predistorsione in frequenza (prewarping)

I metodi di sintesi in frequenza a tempo continuo si basano sulle relazioni tra i parametri della rispostain frequenza del guadagno d’anello (pulsazione di attraversamento e margine di fase) e le prestazioninel dominio del tempo del sistema ad anello chiuso. In base a questa osservazione, un ragionevolecriterio di fedelta del controllore approssimato C(z) al controllore analogico C(s) in termini di prestazionidinamiche del sistema ad anello chiuso e quello di valutare se C(z) fornisce, almeno in corrispondenza allapulsazione di attraversamento, lo stesso contributo di modulo e fase di C(s), ovvero se ha lo stesso valoredella risposta in frequenza. I metodi di approssimazione presentati precedentemente non godono dellaproprieta di conservare la risposta in frequenza. Si consideri il metodo di approssimazione di Tustin.Confrontando la risposta in frequenza del controllore analogico C(s)|s=jω con quella del controllore

digitale approssimato C(z)∣∣z=ejωT risulta

C(ejωT ) = C(

2T

ejωT−1

ejωT +1

)

= C

(

2T

ejω T2 −e−jω T

2

ejω T2 +e−jω T

2

)

= C(

2T

2j sin( ωT2 )

2 cos( ωT2 )

)

= C(j 2

T tan(

ωT2

))6= C(jω)

(5.35)

e quindi la risposta in frequenza a parita di pulsazione non viene conservata ma viene distorta. Inparticolare, alla pulsazione ω il controllore digitale esibisce la risposta in frequenza che il controlloreanalogico presenta alla pulsazione

2

Ttan

(ωT

2

)

(5.36)

In particolare, per ω → ωN = πT si ha che 2

T tan(

ωT2

)→ ∞, cioe il comportamento ad alta frequenza del

controllore nel continuo viene assunto dal controllore discreto alla pulsazione ωN = πT . Si ha quindi una

sorta di “compressione” dell’asse delle frequenze verso la pulsazione di Nyquist ωN , che rappresenta lamassima pulsazione di un segnale correttamente riproducibile sotto campionamento.In particolare, alla pulsazione di attraversamento ωa imposta dal controllore analogico, il corrispondentecontrollore digitale ha una risposta in frequenza pari a

C(ejωaT ) = C

[

j2

Ttan

ωaT

2

]

(5.37)

mentre per preservare la pulsazione di attraversamento e il margine di fase del sistema di controllodovrebbe risultare

C(ejωaT ) = C(jωa) (5.38)

Allo scopo di conservare la risposta in frequenza del controllore alla pulsazione di attraversamento, siintroduce la seguente trasformazione di Tustin modificata (con prewarping, o predistorsione in frequenza):

Cpw(z) = C

(ωa

ωpw

2

T

z − 1

z + 1

)

(5.39)

dove

ωpw =2

Ttan

(ωaT

2

)

(5.40)

Il controllore digitale approssimato definito come sopra soddisfa la proprieta

Cpw(ejωaT ) = C

(

ωa

2T tan

(ωaT

2

)j2

Ttan

(ωaT

2

))

= C(jωa) (5.41)

e dunque Cpw(z) conserva la risposta in frequenza del controllore analogico C(s) in un intorno dellapulsazione ωa. Questo, come gia detto, permette di conservare la pulsazione di attraversamento ed ilmargine di fase del guadagno di anello e dunque, auspicabilmente, anche le caratteristiche del transitoriodel sistema ad anello chiuso.Il metodo ora descritto equivale ad effettuare, prima dell’applicazione della trasformazione di Tustin,una scalatura (predistorsione o prewarping) dell’asse delle frequenze di un fattore ωa/ωpw, in modo dacompensare la successiva distorsione alla pulsazione ωa. Il procedimento puo essere descritto graficamentecome segue.

55

• Risposta in frequenza del controllore analogico

ωαωα

Frequenzada conservare

ω

• Applicazione della trasformazione di Tustin senza predistorsione

w

Frequenzadistorta

wa w

Frequenzadistorta

wawa

=compressione

• Applicazione della trasformazione di Tustin con predistorsione

ωαωα ωpw

ωpw

ω

Frequenzaconservata

ωωα

FrequenzaconservataFrequenzaconservata

ωωαωα

5.6 Matching poli zeri (MPZ)

Questa tecnica di discretizzazione approssimata e basata sull’osservazione, assolutamente empirica, chele tecniche di approssimazione gia analizzate (ad es. Tustin) trasformano sia i poli sia gli zeri delcontrollore da continuo a discreto secondo leggi che approssimano la nota relazione z = esT . La tecnicaMPZ prevede il calcolo di un controllore C(z) che abbia come zeri e poli rispettivamente gli zeri e i polidi C(s) trasformati esattamente secondo z = esT .Per progettare C(z) secondo questa tecnica si procede come segue. Assegnato C(s) della forma

C(s) =K

sh

∏mi=1(s − zi)

∏ni=1(s − pi)

(5.42)

C(z) si calcola come

C(z) = Kd(z + 1)n+h−m

(z − 1)h

∏mi=1(z − eziT )

∏ni=1(z − epiT )

(5.43)

56

dove Kd e selezionato in modo che C(z) abbia guadagno di Bode pari a quello del controllore analogicoC(s) moltiplicato per Th, in modo da preservare le specifiche statiche secondo quanto discusso nelparagrafo precedente. Risulta

Kd = Th K

∏mi=1(−ri)

∏ni=1(−pi)

1

2n+h−m

∏ni=1(1 − epiT )

∏mi=1(1 − eriT )

(5.44)

Osservazione 5.2 Dalla formula (5.43), si osserva che gli zeri all’infinito di C(s), in numero pari algrado relativo n + h − m, vengono mappati in altrettanti zeri di C(z) in z = −1. Il motivo di questascelta risiede essenzialmente nella seguente osservazione. Se C(s) ha grado relativo n+h−m > 0, allorala risposta in frequenza C(jω) tende a zero ad alta frequenza, cioe per ω → ∞. E quindi ragionevoleimporre che la risposta in frequenza del controllore discreto, C(ejωT ), tenda a zero in corrispondenzadella massima pulsazione che puo essere correttamente elaborata dal sistema digitale (senza cioe cheintervengano fenomeni di aliasing). Tale pulsazione e la pulsazione di Nyquist ωN = π/T . Si imponequindi che C(ejωN T ) valga 0, ovvero si impone C(−1) = 0, che equivale ad introdurre almeno uno zeroin z = −1. Introducendo n + h − m zeri in z = −1 si ottiene che la risposta in frequenza di C(z) hauno zero alla pulsazione di Nyquist di molteplicita pari allo zero all’infinito di C(s), in questo modo ilcontrollore C(z) conserva per ω → ωN la rapidita di convergenza a zero della risposta in frequenza cheC(s) presenta per ω → ∞.

Esempio 5.2 Sia data la funzione di trasferimento di un controllore a tempo continuo

C(s) =a

s + a(5.45)

Il controllore digitale realizzato con MPZ ha la forma

C(z) = Kdz + 1

z − e−aT(5.46)

E necessario poi aggiustare il guadagno in continua imponendo

C(1) = C(0) = 1 ⇒ Kd =1 − e−aT

2(5.47)

Risulta quindi

C(z) =1 − e−aT

2

z + 1

z − e−aT(5.48)

Esiste anche una tecnica MPZ modificata (MMPZ) che non prevede l’aggiunta degli zeri in z = −1.Applicandola all’esempio precedente si ottiene

C(z) = (1 − e−aT )1

z − e−aT(5.49)

5.7 Scelta del passo di campionamento

Il passo di campionamento e un parametro fondamentale la cui scelta influenza in modo molto significativole prestazioni di un sistema di controllo in cui il compensatore digitale sia progettato per approssimazionedi un controllore analogico. Si vengono a creare alcuni evidenti compromessi.

• Un campionamento piu rapido corrisponde a prestazioni migliori del sistema di controllo, in quantoimplica

– Maggiore fedelta delle tecniche per l’approssimazione discreta del controllore continuo

– Banda dei segnali elaborabili dal sistema piu estesa, in base al teorema di Shannon.

• Viceversa, un campionamento piu lento permette di realizzare ulteriori obiettivi quali

57

– Uso di algoritmi piu raffinati a parita di hardware, disponendo ad ogni passo di una maggiorquantita di tempo per il calcolo dell’azione di controllo

– Richiesta di minore velocita di conversione A/D e D/A, quindi impiego di convertitori menocostosi

– Minore sensibilita agli errori numerici, come illustrato nel seguito.

Una limitazione fondamentale alla scelta di T e data dal teorema di Shannon. Se il sistema di controllo,in base alle specifiche di transitorio, deve garantire una banda passante B3 (legata alla specifica sul tempodi salita ts), deve risultare almeno

ωs > 2B3 ⇔ T <π

B3(T / ts) (5.50)

altrimenti i segnali che caratterizzano il transitorio del sistema vengono campionati in condizioni dialiasing.Nel progetto per discretizzazione, tuttavia, la precedente limitazione e spesso molto meno stringenterispetto a requisiti di altro tipo, come ad esempio i seguenti.

• Garantire una bassa distorsione della risposta del sistema rispetto alla risposta del corrispondentesistema analogico

• Limitare l’escursione del segnale di comando tra un istante di campionamento e l’altro; se T e altoinfatti, la correzione del comando da applicare all’impianto da un passo al successivo e elevataperche l’impianto resta a lungo di fatto in anello aperto, visto che il comando rimane costante perun intero periodo; al limite, il comando puo subire forti oscillazioni tra istanti di campionamentosuccessivi, a cui corrisponde un andamento oscillante anche dell’uscita dell’impianto.

• Assicurare la prontezza della reazione del sistema di controllo alla variazione del segnale di rife-rimento; tale variazione infatti non viene recepita dal sistema fino all’istante di campionamentosuccessivo alla variazione stessa.

In molte applicazioni, si considera un buon compromesso scegliere un passo di campionamento compresotra 1/20 e 1/10 del tempo di salita della risposta al gradino sistema

ts20

< T <ts10

(5.51)

ovveroπ

20B3< T <

π

10B3; 20B3 < ωs < 40B3 (5.52)

salvo poi effettuare opportune simulazioni per verificare l’effettiva rispondenza del sistema alle specificheed eventualmente correggere la scelta.

Esempio 5.3 Effetto del passo di campionamento su un progetto per discretizzazione con il metodo diTustin.

P (s) =1

s2; C(s) = 40

s + 2

s + 10; B3 = 7 rad/s

• Risposta al gradino per ωs = 4B3 (uscita e comando)

0 1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

rispo

sta

al g

radi

no

0 1 2 3 4 5 6 7 8 9 10−20

−15

−10

−5

0

5

10

15

20

25

com

ando

58

La scelta del passo di campionamento in questo caso rispetta evidentemente la limitazione datadal teorema di Shannon, ma le prestazioni del sistema non sono soddisfacenti. Si ha infatti uncomportamento fortemente oscillatorio della risposta. Evidentemente, il campionamento e troppogrossolano perche la formula di approssimazione di Tustin permetta di riprodurre fedelmente ladinamica del controllore analogico.

• Risposta al gradino per ωs = 20B3 (uscita e comando)

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

rispo

sta

al g

radi

no

0 1 2 3 4 5 6 7 8 9 10−15

−10

−5

0

5

10

15

20

25

30

35

com

ando

5.8 Progetto del filtro antialiasing. Effetto sul passo di campionamento

_

Gp(s)

y(t)ZOH

rk

A/D

C(z) P (s)

d(t)

Figura 5.3: Sistema di controllo digitale con filtro anti aliasing.

Nei sistemi di controllo digitale, e estremamente dannoso campionare eventuali disturbi ad alta fre-quenza in condizioni di aliasing, in quanto le armoniche spurie dovute a questo fenomeno possono averecontenuto frequenziale appartenente alla banda del sistema, e come tali alterare le specifiche di transito-rio o produrre oscillazioni indesiderate a bassa frequenza in condizioni di regime.Per evitare fenomeni di aliasing dovuti al campionamento di disturbi ad alta frequenza, e necessarioprefiltrare con un passa basso opportunamente progettato i segnali a monte dell’operazione di campiona-mento. Idealmente, sarebbe necessario introdurre un filtro che attenui totalmente le armoniche superiorialla pulsazione di Nyquist ωN corrispondente al passo di campionamento scelto ed introduca attenuazionenulla alle altre frequenze. Dal momento che un tale filtro ideale non risulta fisicamente realizzabile, enecessario sostituirlo con un filtro lineare reale, e questo rende necessarie alcune cautele.Si consideri un filtro passa basso del primo ordine con pulsazione di taglio ωp

Gp(s) =ωp

s + ωp(5.53)

L’inserimento di un filtro cosı fatto introduce un ritardo di fase nel guadagno d’anello del sistema, e questopuo alterare anche in modo significativo le specifiche dinamiche. Affinche lo sfasamento introdotto dalfiltro (ma anche l’attenuazione di modulo) risulti trascurabile a pulsazioni paragonabili alla pulsazione

59

di attraversamento ωa, la pulsazione di taglio ωp deve essere scelta sufficientemente piu grande di B3, adesempio una decade sopra, cioe

ωp > 10B3 (5.54)

Tuttavia, ωp deve essere sufficientemente piu piccola della pulsazione di Nyquist ωN affinche vengaassicurata una buona attenuazione dei disturbi che verrebbero altrimenti campionati in condizioni dialiasing. Si ponga ad esempio

ωN > 10ωp (5.55)

Le due relazioni precedenti impongono un ulteriore vincolo sulla scelta del tempo di campionamento.Risulta infatti necessariamente

ωs > 20ωp > 200B3. (5.56)

Questa condizione rappresenta in molti casi una sovrastima. Tipicamente e sufficiente imporre

ωs > 50B3. (5.57)

5.8.1 Ulteriori vincoli sulla scelta del passo di campionamento

• Ritardo di fase dovuto allo ZOH.Abbiamo osservato che la presenza dello ZOH introduce nell’anello un ritardo di fase pari a

arg GZOH(jω) = −ωT

2(5.58)

Se si ammette che l’introduzione dello ZOH provochi, rispetto al sistema di controllo analogico, unpeggioramento del margine di fase al massimo pari ∆mφ alla pulsazione di attraversamento ωa,allora si ha l’ulteriore condizione su T data da

ωaT

2< ∆mφ (5.59)

• Rappresentazione in precisione finita dei numeri in macchina.Si consideri la relazione z = esT tra poli nel continuo e poli nel discreto, che si realizza ad esempionella discretizzazione del controllore mediante il metodo MPZ. Si osserva facilmente che se T → 0,qualunque sia il valore di un polo nel continuo, esso tende ad essere mappato in z = 1. Dettodiversamente, piu T e basso, piu i poli nel discreto sono tutti vicini tra loro ed al punto z = 1.Poiche la precisione di rappresentazione in macchina e finita, al diminuire di T poli anche bendistinti divengono effettivamente indistinguibili, e questo distorce le caratteristiche dinamiche delcontrollore discreto rispetto al controllore continuo.Ad esempio, si consideri la discretizzazione mediante MPZ di un sistema con due poli in s1 = −1e s2 = −10.

1. Se T = 1 ms, i corrispondenti poli discreti valgono z1 = e−0.001 ≈ 0.9990, z2 = e−0.01 ≈0.9900. Con troncamento alla seconda cifra decimale, si ha z1 = z2, esattamente lo stessorisultato che si otterrebbe se fosse s1 = 1

T ln z1 = 1T ln z2 = s2 ≈ −10.05.

2. Se T = 100 ms, lo stesso troncamento produce z1 = 0.90, z2 = 0.36, che e lo stesso risultatoche si otterrebbe a partire da s1 ≈ −1.05, s2 ≈ −10.21.

Capitolo 6

Sintesi nel dominio a tempo discreto

Sommario. In questo capitolo vengono presentati i metodi di sintesi diretta di regolatori digitaliingresso-uscita.

6.1 Sintesi diretta nel discreto

Si consideri il sistema di controllo digitale in figura 6.1. I metodi di sintesi diretta a tempo discreto hannocome obiettivo il progetto di un controllore C(z) tale che la funzione di trasferimento W (z) fra i campionidel segnale di riferimento rk e quelli del segnale di uscita yk sia pari ad una funzione di trasferimentoassegnata W0(z). Cio consente di imporre un andamento desiderato alla risposta campionata yk delsistema ad anello chiuso in corrispondenza al riferimento dato, in accordo alle specifiche statiche e ditransitorio assegnate. Sia Pd(z) l’equivalente campionato con ZOH dell’impianto P (s), dato da

Pd(z) = (1 − z−1)Z

[P (s)

s

]

(6.1)

Si vuole determinare l’espressione del compensatore C(z) in modo tale che la funzione di trasferimentoad anello chiuso

W (z) =Y (z)

R(z)(6.2)

sia pari ad una data W0(z) che soddisfa opportune specifiche.Risulta

W (z) =C(z)Pd(z)

1 + C(z)Pd(z)(6.3)

Da cui, imponendo W (z) = W0(z) e risolvendo rispetto a C(z) si ottiene

C(z) =1

Pd(z)

W0(z)

1 − W0(z)(6.4)

Osservazione 6.1 Mediante questo semplice procedimento, viene impostata la funzione di trasferimentotra il segnale di riferimento rk e l’uscita campionata yk del sistema di controllo. Tuttavia, come piu voltericordato, cio che si ha interesse a controllare e l’uscita fisica y(t) dell’impianto analogico P (s), per cuie necessario valutare quanto sia significativo nei confronti di questo problema l’imporre un andamentodesiderato soltanto ai campioni. In particolare, l’uscita analogica non deve presentare comportamentiindesiderati, quali ad esempio le oscillazioni interperiodo, in corrispondenza del progetto effettuato.

_

rk ekC(z)

uk uh(t)P (s)

Pd(z)

y(t) yk

ZOH A/D

Figura 6.1:

61

Esempio 6.1 Si consideri l’impianto

P (s) =a

s + a(6.5)

ed il suo equivalente campionato con ZOH

Pd(z) =z − 1

zZ

{P (s)

s

}

=1 − e−aT

z − e−aT(6.6)

Si scelga la funzione di trasferimento ad anello chiuso desiderata come

W0(z) =1 − α

z − α(6.7)

con |α| < 1. Tale W0(z) e stabile ed ha guadagno in continua W0(1) = 1, pertanto assicura l’inseguimentosenza errore a regime di un riferimento rk a gradino. Calcolando il corrispondente C(z) si ottiene

C(z) = z − e−aT

1 − e−aT

1 − α

z − α

1 −1 − α

z − α

= z − e−aT

1 − e−aT1 − αz − 1 (6.8)

Il guadagno d’anello del sistema risulta

L(z) =1 − α

z − 1(6.9)

Osservazione 6.2 Si osservi la cancellazione polo-zero tra C(z) e P (z) nell’esempio precedente. Poichel’espressione di C(z) in (6.4) e proporzionale al reciproco di Pd(z), il controllore tende a cancellare deltutto i poli e gli zeri di Pd(z) sostituendoci i propri, in modo che la funzione di trasferimento W (z) risultiquella assegnata.

Esempio 6.2 Considerando l’impianto dell’esempio precedente, ma la seguente funzione di trasferimentoad anello chiuso desiderata

W0(z) =(1 − α)z

z − α, |α| < 1 (6.10)

si ottiene il controllore

C(z) =(1 − α)z(z − e−aT )

α(1 − e−aT )(z − 1)(6.11)

che risulta avere piu zeri che poli, e pertanto non e realizzabile in modo causale. Evidentemente ilprogetto non e accettabile.

6.1.1 Vincoli di progetto

Come risulta evidente dal precedente esempio, assegnata la funzione di trasferimento dell’impianto, lafunzione di trasferimento ad anello chiuso desiderata non puo essere scelta in modo totalmente arbitrario.E necessario infatti che il sistema di controllo che si ottiene soddisfi alcuni requisiti fondamentali, qualila causalita del controllore risultante e la stabilita interna dell’anello.

Causalita. Il regolatore C(z) deve risultare causale, ovvero deve avere il grado del denominatore nc mag-giore o uguale a quello del numeratore mc; tale condizione impone il seguente vincolo sulla sceltadella funzione di trasferimento W0(z): il grado relativo nw − mw di W0(z) = NW (z)/DW (z) deveessere maggiore o uguale al grado relativo np−mp di Pd(z) = NP (z)/DP (z). Equivalentemente, lafunzione di trasferimento ad anello chiuso desiderata non puo presentare un ritardo ingresso-uscitainferiore a quello dell’equivalente campionato dell’impianto. Infatti dalla (6.4) risulta

C(z) =DP (z)

NP (z)

NW (z)

DW (z) − NW (z)(6.12)

62

il cui grado relativo vale (si noti che nw ≥ mw poiche non ha senso che W0(z) sia non causale)

nc − mc = mp + nw − (np + mw) (6.13)

che e positvo se e solo se risultanw − mw ≥ np − mp (6.14)

Stabilita interna. Abbiamo osservato che il controllore C(z) progettato per sintesi diretta tende acancellare indiscriminatamente i poli e gli zeri di Pd(z). Cio compromette la stabilita internadell’anello nel caso in cui tali cancellazioni corrispondano a poli o zeri a modulo maggiore o ugualea 1, anche se la W0(z) e scelta stabile. In base alla (6.4) il guadagno d’anello risulta

L(z) = C(z)Pd(z) =W0(z)

1 − W0(z)(6.15)

Affinche poli o zeri instabili di Pd(z) non vengano cancellati da C(z), tali poli o zeri devonopermanere nel prodotto L(z) = C(z)Pd(z), pertanto

• ogni zero di Pd(z) con modulo ≥ 1 deve comparire tra gli zeri di W0(z) in modo che permangacome zero del prodotto C(z)Pd(z);

• ogni polo di Pd(z) con modulo ≥ 1 deve comparire tra gli zeri di 1 − W0(z) in modo chepermanga come polo di C(z)Pd(z).

In generale, la sintesi diretta effettua la cancellazione della dinamica dell’impianto per sostituirveneuna nuova corrispondente alle specifiche, salvo le cancellazioni esplicitamente impedite come oraillustrato.

6.1.2 Sintesi diretta: specifiche statiche

Le specifiche statiche, o di precisione a regime, che tipicamente si impongono ad un sistema di controllosono l’inseguimento senza errore di un segnale di riferimento a gradino ed eventualmente l’inseguimentocon errore finito di un segnale di riferimento a rampa. Se il progetto viene fatto per sintesi diretta, enecessario valutare come si riflettono specifiche di questo tipo sulla forma e sui parametri della funzionedi trasferimento ad anello chiuso W0(z), in modo da poterla scegliere opportunamente.

Errore di inseguimento al gradino nullo. La funzione di trasferimento tra riferimento e segnaleerrore vale

E(z)/R(z) = 1 − W0(z) (6.16)

e pertanto, se W0(z) e stabile, l’errore a regime al gradino unitario vale (dal teorema del valorefinale)

e0 = limz→1

(z − 1)z

z − 1(1 − W0(z)) (6.17)

Questo errore risulta allora nullo se e solo se

W0(1) = 1 (6.18)

ovvero se e solo se il guadagno in continua W0(ej0) del sistema e unitario.

Errore di inseguimento alla rampa finito. L’errore a regime ad un segnale a rampa unitariark = kT 1k risulta pari a

e1 = limz→1

(z − 1)Tz

(z − 1)2(1 − W0(z)) (6.19)

da cui, applicando la regola di De l’Hopital e ricordando che W0(1) = 1,

e1 = −TdW0(z)

dz

∣∣∣∣z=1

= −T1

W0(z)

dW0(z)

dz

∣∣∣∣z=1

= −Td

dzlog W0(z)

∣∣∣∣z=1

(6.20)

63

Si voglia imporre e1 = e10, con e1

0 assegnato. Se W0(z) e espressa nella forma poli-zeri

W0(z) = Kw

∏mw

j=1(z − zwj )

∏nw

i=1(z − pwi )

(6.21)

dalla (6.20) deve allora risultare

T

nw

i=1

1

1 − pwi

−mw

j=1

1

1 − zwj

= e10 (6.22)

Si noti che la formula precedente mette in relazione l’errore di inseguimento desiderato alla rampaunitaria con i poli e gli zeri della funzione di trasferimento W0(z) ad anello chiuso (regola diTruxal).

6.2 Scelta di della funzione di trasferimento ad anello chiuso

In generale W0(z) e scelta della forma

W0(z) =Kw(z − zw

1 ) . . . (z − zwmw)

(z − pw1 ) . . . (z − pw

nw)

1

zN=

wmwzmw

+ . . . w0

(z − pw1 ) . . . (z − pw

nw)

1

zN(6.23)

in cui

• I poli pwi si fissano sulla base delle specifiche di transitorio, che verranno trattate nel seguito

• Gli mw zeri zwj ed il guadagno Kw (o in alternativa i coefficienti wj), in tutto mw + 1 parametri,

si calcolano imponendo le condizioni di stabilita interna e di precisione statica. Chiaramente, sisceglie mw + 1 pari al numero di condizioni da imporre.In base alle condizioni di stabilita interna, e necessario che risulti

* W0(zj) = 0 per ogni zero zj di Pd(z) con |zj | ≥ 1.Se la molteplicita dello zero zj in Pd(z) e µj > 1, si deve imporre che anche W0(z) abbia unozero in zj della stessa molteplicita, per cui e necessario imporre

dr

dzrW0(z)|z=zj

= 0, ∀r = 1, . . . , µj − 1

Questo, come gia visto, equivale ad introdurre come zeri di W0(z) gli zeri di Pd(z) che nonsi vuole vengano cancellati da poli di C(z). In seguito vedremo che, allo scopo di prevenirecomportamenti indesiderati del sistema, puo essere conveniente impedire la cancellazione dialtri zeri di Pd(z) oltre a quelli instabili.

* 1 − W0(pi) = 0 per ogni polo pi di Pd(z) con |pi| ≥ 1, ovvero per ogni polo di Pd(z) che nonsi vuole venga cancellato da C(z).Se la molteplicita di pi e νi > 1 si deve imporre anche

dr

dzr[1 − W0(z)]|z=pi

= 0, ∀r = 1, . . . , νi − 1

Relativamente alle specifiche di precisione a regime, si impone

* 1−W0(1) = 0 (condizione di errore a regime nullo al gradino). Si noti che questa condizionee analoga a quella che previene la cancellazione di un eventuale polo in z = 1 di Pd(z), d’altraparte la specifica di errore nullo al gradino richiede che L(z) = C(z)Pd(z) sia almeno di tipo1, ovvero abbia almeno un polo in z = 1. Tale polo, se presente in Pd(z), deve quindi esserepreservato.

* Condizione di errore finito alla rampa. Usando la formula di Truxal si ottiene una relazionetra i poli e gli zeri di W0(z).

64

• Gli N poli in z = 0 si aggiungono per rispettare la condizione di causalita del controllore. Poicheil grado relativo di W0(z) deve essere uguale o superiore a quello di Pd(z) si sceglie N tale che

N ≥ (np − mp) − (nw − mw)

Si noti che questi poli aggiuntivi in z = 0 corrispondono ad elementi di ritardo discreto. Questiinfluenzano la durata del transitorio tanto meno quanto piu piccolo e il passo di campionamento.

Osservazione 6.3 Il calcolo degli zeri di W0(z) sulla base delle specifiche di stabilita interna e precisionestatica deve essere effettuato considerando la W0(z) completa degli eventuali poli aggiuntivi in z = 0. Unerrore comune e quello di aggiungerli dopo aver calcolato gli zeri senza tenerne conto. Si vede facilmenteche questo altera alcune condizioni, come ad esempio il risultato dell’applicazione della regola di Truxal.

Osservazione 6.4 Il metodo di sintesi appena descritto porta con se un risultato non banale. Dalmomento che non si fa nessuna ipotesi sulle caratteristiche di Pd(z), questo procedimento si configuracome un metodo sistematico per stabilizzare in retroazione qualunque impianto.

6.2.1 Scelta di W0(z): transitorio deadbeat

Ci occupiamo adesso della scelta dei poli della funzione di trasferimento desiderata W0(z) sulla base dellespecifiche di transitorio.Abbiamo gia osservato che un sistema a tempo discreto presenta un transitorio della risposta al gradinoche si esaurisce in un numero finito di passi qualora la sua funzione di trasferimento abbia tutti i poliin z = 0. Questa caratteristica puo essere sfruttata per il progetto di un controllore digitale tale cheil transitorio della corrispondente risposta al gradino ad anello chiuso campionata yk vada a regime intempo finito.Si consideri inizialmente il caso di un impianto Pd(z) con poli e zeri tutti interni al cerchio unitario, ocon al piu un polo in z = 1. Si scelga

W0(z) =1

zN= z−N (6.24)

con N uguale o superiore al grado relativo np − mp di Pd(z). Questa W0(z) non e altro che un ritardodiscreto, pertanto la corrispondente uscita yk insegue qualunque riferimento con un ritardo di N passi.In particolare quindi la risposta al gradino va a regime in N passi.Naturalmente, l’errore a regime di inseguimento al gradino e nullo, si noti tra l’altro che risulta W0(1) = 1.Poiche l’impianto e stabile con zeri stabili, non sono richieste condizioni aggiuntive per la stabilita internae pertanto la W0(z) puo essere utilizzata direttamente per la sintesi. Il controllore corrispondente risulta

C(z) =1

Pd(z)

1

zN − 1(6.25)

Osservazione 6.5 Si noti che z = 1 e uno zero di 1−W0(z) per qualunque N . Pertanto, anche se Pd(z)ha un polo semplice in z = 1, C(z) non lo cancella. A tale proposito, ricordiamo che Pd(z) ha tanti poliin z = 1 quanti sono i poli in s = 0 dell’impianto analogico P (s).

Esempio 6.3 (file Scilab deadbeat.sce) Si consideri l’impianto a tempo continuo

P (s) =e−0.2s

1 + s(6.26)

ed il suo equivalente a dati campionati con ZOH, T = 0.2 s

Pd(z) =0.1823

z(z − 0.8187)(6.27)

L’impianto non ha poli o zeri instabili ed ha grado relativo 2. Pertanto, e possibile effettuare un progettodi tipo deadbeat scegliendo

W0(z) = z−2 (6.28)

65

0 0.5 1 1.5 2 2.50

0.2

0.4

0.6

0.8

1

1.2

rispo

sta

al g

radi

no

0 0.5 1 1.5 2 2.50

1

2

3

4

5

6

com

ando

Figura 6.2: Esempio 6.3, risposta al gradino (uscita e comando)

Il controllore risultante vale

C(z) =z(z − 0.8187)

0.1813(z2 − 1)(6.29)

In figura 6.2 e riportata la simulazione della risposta al gradino del sistema ad anello chiuso nell’uscita(analogica) e nel segnale di comando.

Esempio 6.4 (file Scilab interper.sce, prima parte) Sia dato l’impianto

P (s) =e−s

1 + 8s + 15s2(6.30)

ed il suo equivalente campionato con ZOH, con T = 1 s

Pd(z) =0.028(z + 0.8357)

z3 − 1.5353z2 + 0.5866z(6.31)

Pd(z) non ha poli o zeri instabili ed ha grado relativo 2, per cui si sceglie

W0(z) = z−2

ed il controllore risultante e

C(z) =z(z2 − 1.5353z + 0.5866)

0.028(z + 1)(z − 1)(z + 0.8357)(6.32)

Nella simulazione della risposta al gradino riportata in figura 6.3, si nota un andamento fortementeoscillante del segnale di comando e la presenza di forti oscillazioni interperiodo nell’uscita analogica.Tali oscillazioni sono dovute al fatto che nel controllore compare un polo prossimo al punto z = −1(corrispondente ad un modo oscillante poco smorzato) che cancella uno zero dell’impianto discretizzato(zr = −0.8357). A causa di questa cancellazione, zr compare come polo nella funzione di trasferimento

U(z)/R(z) = C(z)1+C(z)Pd(z) tra riferimento e comando e produce un andamento oscillatorio del comando

stesso. In corrispondenza a questa eccitazione oscillatoria, l’impianto risponde con un andamento dell’u-scita a sua volta oscillante.Se lo zero “risonante” zr comparisse tra gli zeri di W0(z), cioe risultasse W0(zr) = 0, tale cancellazioneverrebbe prevenuta, allo stesso modo delle cancellazioni di zeri instabili.

66

0 5 10 15 20 250

0.2

0.4

0.6

0.8

1

1.2

1.4

rispo

sta

al g

radi

no

0 5 10 15 20 25−50

−40

−30

−20

−10

0

10

20

30

40

50

com

ando

Figura 6.3: Esempio 6.4: Risposta al gradino (uscita e comando)

Generalizziamo adesso il procedimento di sintesi deadbeat al caso in cui l’impianto discretizzato Pd(z)presenti poli o zeri instabili, oppure zeri risonanti il cui effetto e quello di generare il fenomeno delleoscillazioni interperiodo. Allo scopo di poter imporre le condizioni di stabilita interna, e necessarioconsiderare una forma piu generale di W0(z).

W0(z) = Kw(z − zw1 ) . . . (z − zw

mw)1

zN= (wmwzmw

+ . . . w0)1

zN(6.33)

Anche in questo caso la risposta al gradino va a regime in N passi, essendo

W0(z) = w0z−N + · · · + wmwz−N+mw

(6.34)

si noti pero che W0(z) non e piu un ritardo puro, bensı una somma di elementi di ritardo in parallelo.I coefficienti del numeratore (gli zeri) di W0(z) si calcolano in modo da soddisfare i vincoli dovuti allapresenza in Pd(z) di poli o zeri instabili o zeri risonanti, piu eventuali specifiche statiche. Come gia detto,il numero di questi coefficienti dovra essere scelto pari al numero di vincoli da imporre. Si noti che ilgrado relativo di W0(z) vale N − mw.

Esempio 6.5 (modello Scicos magia.cos) Siano dati l’impianto P (s) ed il suo equivalente discretizzatoPd(z)

P (s) =1

s2⇒ Pd(z) =

T 2

2

z + 1

(z − 1)2(6.35)

Pd(z) ha uno zero in z = −1 e due poli in z = 1, per cui per conservare la stabilita interna e necessarioimporre

W0(−1) = 0 [1] ;

1 − W0(1) = 0 [2] ;

d(1−W0)dz (1) = 0 [3].

(6.36)

Si osservi che l’imposizione delle condizioni [2] e [3] preserva i poli in z = 1 gia presenti in Pd(z) chealtrimenti il controllore cancellerebbe, compromettendo la stabilita interna. La condizione [2] assicurainoltre errore al gradino nullo.Si hanno tre condizioni da imporre, per cui sono necessari tre parametri liberi (mw = 2). Inoltre il gradorelativo di W0(z) deve essere almeno 1, per cui si sceglie N = 3, e la corrispondente W0(z) e della forma

W0(z) = (w2z2 + w1z + w0)

1

z3(6.37)

67

0 5 10 15 20 250

0.2

0.4

0.6

0.8

1

1.2

1.4

rispo

sta

al g

radi

no

0 5 10 15 20 25−15

−10

−5

0

5

10

15

20

com

ando

Figura 6.4: Esempio 6.6: risposta al gradino (uscita e comando)

Imponendo le tre condizioni si ricavano i coefficienti incogniti

w2 =5

4, w1 =

1

2, w0 = −

3

4

Il controllore corrispondente vale

C(z) =1

Pd(z)

W0(z)

1 − W0(z)=

2

T 2

5z − 3

4z + 3(6.38)

Esempio 6.6 (file Scilab interper.sce, seconda parte) Si consideri nuovamente l’impianto

P (s) =e−s

1 + 8s + 15s2(6.39)

ed il suo equivalente campionato con ZOH, T = 1 s

Pd(z) =0.028(z + 0.8357)

z3 − 1.5353z2 + 0.5866z(6.40)

Utilizzando la forma (6.33) di W0(z) e possibile includere lo zero risonante zr = −0.8357 dell’impiantotra gli zeri di W0(z) per prevenirne la cancellazione, come si fa per gli zeri instabili. Dunque si sceglie

W0(z) =Kw(z + 0.8357)

z3(6.41)

dove Kw si calcola imponendo errore a regime nullo al gradino, i.e., W0(1) = 1. La W0(z) corrispondenterisulta

W0(z) =0.5443(z + 0.8371)

z3(6.42)

In figura 6.4 sono riportate le simulazioni della risposta al gradino. Le oscillazioni interperiodo sonostate eliminate, visto che adesso lo zero risonante non compare piu nella funzione di trasferimento trariferimento e comando.

68

0 5 10 15 20 250

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

rispo

sta

al g

radi

no

0 5 10 15 20 25−4

−2

0

2

4

6

8

com

ando

Figura 6.5: Esempio 6.7: risposta al gradino (uscita e comando)

6.2.2 Scelta di W0(z): transitorio del primo ordine

Si desidera adesso imporre che la risposta al gradino del sistema presenti un transitorio assimilabile aquello di un sistema del primo ordine con una costante di tempo assegnata τ . In accordo con la formagenerale (6.23) di W0(z), si sceglie allora

W0(z) =Kw(z − zw

1 ) . . . (z − zwmw)

z − e−T/τ

1

zN(6.43)

con N ≥ np −mp − 1 + mw. Come in precedenza, Kw e gli zeri zwj sono scelti per soddisfare i vincoli di

progetto (stabilita interna, precisione statica).

Esempio 6.7 (file Scilab dahlin.sce). Si consideri l’impianto

P (s) =e−s

1 + 8s + 15s2(6.44)

con T = 1 s. Si desidera progettare W0(z) in modo che la risposta al gradino sia assimilabile a quella diun sistema del primo ordine con costante di tempo τ = 5 s. Si sceglie

W0(z) =1 − e−T/τ

z − e−T/τ

1

z(6.45)

La corrispondente risposta e riportata in figura 6.5. Si noti l’andamento oscillatorio del comando do-vuto ad uno zero risonante dell’impianto che viene cancellato dal controllore (vedi esempi sulla sintesideadbeat). E possibile includere tale zero tra gli zeri di W0(z) prendendo

W0(z) =Kw(z + 0.8371)

z2(z − e−T/τ )(6.46)

dove Kw va calcolata affinche W0(1) = 1.

6.2.3 Scelta di W0(z): transitorio del secondo ordine

Vogliamo adesso progettare W0(z) in modo che il transitorio della risposta al gradino del sistema dicontrollo presenti un andamento assimilabile a quello di un sistema del secondo ordine, caratterizzato daopportuni valori dei parametri standard di sovraelongazione, tempo di salita e tempo di assestamento.In linea di principio, e possibile imporre che la risposta al gradino di W0(z) sia esattamente la versione

69

campionata della risposta di un sistema continuo W (s) del secondo ordine caratterizzato da smorzamentoζ e pulsazione naturale ωn corrispondenti alle specifiche. Cio si ottiene imponendo

Y (z) = W0(z)z

z − 1= Z

[

W (s)1

s

]

dove W (s) =1

1 + 2ζ/ωn s + s2/ω2n

(6.47)

da cui si ricava W0(z). Dall’espressione precedente si osserva che la W0(z) risultante non e altro chel’equivalente campionato con ZOH di W (s). In particolare, W0(z) ha come poli i poli di W (s) trasformatisecondo z = esT .Il semplice procedimento ora descritto non e evidentemente applicabile in generale, poiche non tieneconto di eventuali vincoli di causalita del controllore, presenza di poli o zeri instabili nell’impianto ospecifiche statiche (errore alla rampa). Per tenere conto di questi vincoli, ci si limita ad imporre che ipoli di W0(z) siano quelli caratteristici del transitorio del secondo ordine (ovvero coincidano con i polidi W (s) trasformati secondo z = esT ), introducendo poi un opportuno numero di zeri in accordo conl’espressione generale (6.23). Si procede quindi nel modo seguente.

1. Si determinano ζ e ωn corrispondenti alle specifiche di transitorio richieste, ed i relativi poli“dominanti” p = −ζωn + jωn

1 − ζ2 e p = −ζωn − jωn

1 − ζ2

2. Si seleziona una W0(z) che abbia come poli epT , epT , piu ulteriori poli in z = 0 e zeri scelti inmodo da rispettare i vincoli di causalita e stabilita interna, in accordo con la (6.23)

W0(z) =Kw(z − zw

1 ) . . . (z − zwmw)

(z − epT )(z − epT )

1

zN(6.48)

con N ≥ np − mp − 2 + mw.

Si riportano per comodita gli andamenti dei parametri caratteristici della risposta al gradino e dellarisposta in frequenza in funzione dei fattori di smorzamento e pulsazione naturale per un sistema delsecondo ordine.

• Massima sovraelongazione s = exp(−πζ/√

1 − ζ2)

• Tempo di salita ts = ω−1n [1 − ζ2]−1/2[π − arctan ζ−1

1 − ζ2]

70

• Tempo di assestamento

• Banda passante

• Picco di risonanza

Esempio 6.8 Si considerino le specifiche di transitorio seguenti.

• Sovraelongazione s < s1. Tale specifica induce una limitazione sul fattore di smorzamento

ζ > ζ1

• Limitazione sulla parte immaginaria dei poli dominanti data ad esempio dai requisiti di sensibilitadel sistema a disturbi ad alta frequenza

ω < ω1

• Limitazione sulla parte reale dei poli dominanti data dal tempo di assestamento desiderato (ta ≈5/σ)

−σ < −σ1

71

Figura 6.6: Regioni ammesse per i poli ad anello chiuso nel continuo e nel discreto in corrispondenza alle specifichedell’esempio 6.8

Le limitazioni di cui sopra individuano nel piano complesso in s la regione in cui devono cadere i polidi un sistema del secondo ordine in modo da rispettare le specifiche. Allo scopo di ottenere la W0(z)corrispondente, si dovranno scegliere i suoi poli all’interno della regione nel piano z che rappresental’immagine della regione ammessa secondo la trasformazione z = esT (figura 6.6).

Esempio 6.9 (file Scilab diretta.sce). Si consideri l’impianto

P (s) =0.1

s(s + 0.1)(6.49)

e siano date le seguenti specifiche

• Errore di inseguimento al gradino nullo

• Errore di inseguimento alla rampa unitaria e1 ≤ e10 = 1

• Tempo di salita ts ≤ 1.5 s

• Massima sovraelongazione s ≤ 0.4.

L’equivalente campionato con ZOH e T = 1 s risulta

Pd(z) =0.04837(z + 0.9672)

(z − 1)(z − 0.9048)(6.50)

Si osservi che lo zero di Pd(z) e molto vicino al punto z = −1.Le specifiche dinamiche richieste corrispondono ad un transitorio del secondo ordine con parametri ζ = 0.5e ωn = 1, corrispondente nel continuo ad una coppia di poli che sono le radici del polinomio s2 + s + 1.Trasformati secondo z = esT , tali poli sono le radici del polinomio z2 − 0.7859z + 0.3679. Pertanto laW0(z) sara scelta della forma

W0(z) =Kw(z − z1)

z2 − 0.7859z + 0.3679(6.51)

si noti che la condizione sul grado relativo e soddisfatta. Lo zero z1 si calcola imponendo la specificasull’errore alla rampa con la regola di Truxal. Tale calcolo e immediato perche i poli sono noti e c’eun unico zero. Risulta z1 = 0.0793. Il guadagno Kw si calcola infine imponendo guadagno in continuaunitario (W0(1) = 1) e risulta Kw = 0.6321. La funzione di trasferimento ad anello chiuso desiderata equindi

W0(z) = 0.6321z − 0.0793

z2 − 0.7859z + 0.3679(6.52)

72

0 2 4 6 8 10 12 14 16 18 200

0.2

0.4

0.6

0.8

1

1.2

1.4

rispo

sta

al g

radi

no

0 2 4 6 8 10 12 14 16 18 20−20

−15

−10

−5

0

5

10

15

com

ando

Figura 6.7: Risposta (uscita e comando) del sistema dell’esempio 6.9, prima parte

ed il controllore risultante e dato da

C(z) =1

Pd(z)

W0(z)

1 − W0(z)= 13.068

(z − 0.9048)(z − 0.0793)

(z + 0.9672)(z − 0.4180)(6.53)

La risposta al gradino del sistema ad anello chiuso riportata in figura 6.7 evidenzia forti oscillazionidovute al polo risonante di C(z) che cancella lo zero dell’impianto, seppure i campioni della rispostanell’uscita seguano fedelmente l’andamento del secondo ordine desiderato. Per eliminare le oscillazioni,si include il polo risonante tra gli zeri di W0(z), in modo che non compaia piu in C(z). Si sceglie quindiW0(z) della forma

W0(z) = Kw (z + 0.9672)(z − z1)

z(z2 − 0.7859z + 0.3679)(6.54)

Notare l’inclusione di un polo in z = 0 per preservare la causalita. Con questa nuova struttura di W0(z)e necessario effettuare di nuovo il calcolo di z1 e Kw sulla base delle specifiche statiche. Si ottiene

W0(z) = 0.4668(z + 0.9672)(z − 0.3662)

z(z2 − 0.7859z + 0.3679)(6.55)

Il controllore risulta

C(z) = 9.6495(z − 0.9048)(z − 0.3662)

(z − 0.5521)(z − 0.2994)(6.56)

ed il corrispondente sistema ad anello chiuso presenta la risposta in figura 6.8

6.3 Scelta del passo di campionamento nella sintesi diretta

La scelta del passo di campionamento per i metodi diretti e un fattore molto meno critico rispetto alcaso dei metodi di approssimazione. Trattandosi di metodi puramente analitici, infatti, non si hannorequisiti di fedelta di qualsivoglia formula di approssimazione. Inoltre, la stabilita del sistema di con-trollo equivalente a tempo discreto e sempre garantita, indipendentemente da T , cosa non scontata nelprogetto per approssimazione. A rigore, l’unica limitazione da rispettare e quella imposta dal teoremadi Shannon allo scopo di evitare fenomeni di aliasing. Tuttavia, si ricordi che i metodi diretti impongonoesattamente solo l’andamento della risposta campionata del sistema, da cui la risposta analogica puodeviare anche significativamente. Tale deviazione e normalmente piu marcata all’aumentare del passodi campionamento, in quanto il sistema di controllo tra un istante di campionamento ed il successivoresta di fatto in anello aperto perche il comando non viene aggiornato. Questo tipicamente non porta arequisiti su T paragonabili a quelli relativi ai metodi di approssimazione (e spesso sufficiente prendere 2

73

0 2 4 6 8 10 12 14 16 18 200

0.2

0.4

0.6

0.8

1

1.2

1.4

rispo

sta

al g

radi

no

0 2 4 6 8 10 12 14 16 18 20−5

0

5

10

com

ando

Figura 6.8: Risposta (uscita e comando) del sistema dell’esempio 6.9, seconda parte

o 3 campioni sul tempo di salita). Inoltre, nel caso di sintesi deadbeat, il tempo di campionamento puoessere scelto ad-hoc, in modo che il numero di passi in cui la risposta va a regime corrisponda nel continuoad un intervallo di tempo in cui il transitorio, in base alle specifiche, e supposto esaurirsi. Se l’impiantopresenta un ritardo, puo essere utile, se possibile, scegliere T in modo che il ritardo sia un suo multiplo.Questo porta innanzitutto ad una semplificazione del calcolo di Pd(z) ma vi e un altro vantaggio legatoal fatto che la presenza di ritardi frazionari nell’impianto porta spesso ad avere zeri instabili in Pd(z),rendendo piu complesso il progetto.

Capitolo 7

Progetto nello spazio degli stati

“Se Maometto non va alla montagna,la montagna non e raggiungibile.”

K., 2007

Sommario. In questo capitolo viene discussa la proprieta strutturale di raggiungibilita dei sistemilineari a tempo discreto in equazioni di stato. Sulla base di tale proprieta, viene analizzato il progettodel regolatore in retroazione statica dello stato mediante la tecnica di allocazione degli autovalori.

7.1 Metodi nello spazio degli stati

Si consideri un sistema lineare stazionario a tempo discreto in equazioni di stato, esprimibile nella forma

{xk+1 = Axk + Buk ; xk ∈ R

n, uk ∈ Rm

yk = Cxk(7.1)

dove A, B e C sono matrici costanti di dimensioni opportune. Il sistema 7.1 puo eventualmente rappre-sentare l’equivalente campionato con ZOH Pd in equazioni di stato di un impianto P a tempo continuo.Si supponga che le variabili di stato del sistema siano accessibili, ovvero che siano disponibili misure(o stime) di xk ad ogni istante; in base al concetto di stato, cio significa disporre di un’informazionecompleta sul sistema.Si consideri il problema di progettare una legge di controllo sotto forma di retroazione lineare staticadelle variabili di stato

uk = Fkxk + vk (7.2)

eventualmente stazionaria (ovvero con Fk = F costante), in modo da soddisfare opportune specifiche.In figura 7.1 e rappresentato uno schema a blocchi del sistema (7.1) con applicata la legge di controlloin retroazione dallo stato (7.2). Nel caso in cui il guadagno di retroazione Fk sia costante (Fk = F ), ilsistema ad anello chiuso risulta

{xk+1 = (A + BF )xk + Bvk

yk = Cxk(7.3)

Ci proponiamo di studiare il problema della sintesi del guadagno di retroazione F in modo da assicurareal sistema ad anello chiuso, oltre alla stabilita interna, il soddisfacimento di opportune specifiche diprestazione.La soluzione del problema ora enunciato necessita dello studio della proprieta di raggiungibilita. Taleproprieta, in parole semplici, esprime la possibilita di influenzare o meno ad arbitrio, mediante l’ingresso,l’evoluzione di tutte o di parte delle variabili di stato.

7.2 Raggiungibilita

Dato un sistema lineare stazionario a tempo discreto

{xk+1 = Axk + Buk ; xk ∈ R

n, uk ∈ Rm

yk = Cxk(7.4)

75

vk uk xkxk+1z−1 C

A

B

Fk

yk

Pd

Figura 7.1: Schema di un sistema con rappresentazione in spazio degli stati.

ed una una sequenza di ingresso {uk}, l’evoluzione dello stato al passo k a partire da una certa condizioneiniziale x0 vale

xk = Akx0 +

k−1∑

i=0

Ak−i−1Bui (7.5)

che, in forma matriciale compatta, si puo scrivere come

xk = Akx0 + RkUk (7.6)

dove

Rk = [B AB . . . Ak−1B], Uk =

uk−1

uk−2

...u0

(7.7)

Definizione 7.1 Dati due stati x0 ed x, lo stato x e detto raggiungibile a partire dallo stato iniziale x0

in k passi se esiste un vettore di ingressi Uk tale da che l’evoluzione dello stato del sistema al passo kcon condizione iniziale x0 valga x, cioe tale che

x = Akx0 + RkUk (7.8)

In termini algebrici, la precedente condizione si esprime dicendo che x − Akx0 e l’immagine del vettoreUk attraverso la trasformazione lineare R

km → Rn associata alla matrice Rk, dunque x e raggiungibile

da x0 in k passi se e solo sex − Akx0 ∈ Rk (7.9)

doveRk = Im Rk (7.10)

e il sottospazio di Rn costituito dall’immagine di Rk.

Ponendo x0 = 0 nella (7.9), risulta evidente che Rk e l’insieme degli stati x raggiungibili in k passi apartire dallo stato iniziale nullo. L’insieme Rk e detto sottospazio di raggiungibilita in k passi.

Lemma 7.1 (Teorema di Hamilton-Cayley) Data una matrice quadrata A di dimensione n, si con-sideri il suo polinomio caratteristico pA(λ)

pA(λ) = det(λI − A) = λn + an−1λn−1 + an−2λ

n−2 + · · · + a0 (7.11)

76

La matrice A e radice del suo polinomio caratteristico, ovvero risulta

An = −an−1An−1 − an−2A

n−2 + · · · − a0I (7.12)

Teorema 7.1 Dato il sistema (7.1), sia R = Rn = Im[B AB . . . An−1B]. Allora, i sottospazi diraggiungibilita in 1, 2, . . . , n passi sono tali che

R1 ⊆ R2 ⊆ · · · ⊆ Rk ⊆ · · · ⊆ Rn = Rn+1 = Rn+2 = · · · = R (7.13)

Dimostrazione. Per costruzione, si ha Rk = Im[B AB . . . Ak−1B] ⊆ Im[B AB . . . AkB] = Rk+1

per ogni k. Inoltre, per ogni k > n, per il teorema di Hamilton-Cayley, il vettore Ak−1B e combinazionelineare di B,AB, . . . , An−1B, per cui Rk = Rn = R.In conseguenza del precedente risultato, se uno stato e raggiungibile dallo stato nullo, allora lo e in alpiu n passi. Il sottospazio

R = Im[B AB . . . An−1B] (7.14)

rappresenta quindi l’insieme degli stati del sistema raggiungibili dallo stato nullo con un’opportunasequenza di ingresso, indipendentemente dal numero di passi, ed e detto sottospazio di raggiungibilitadel sistema. La matrice

R = [B AB . . . An−1B] (7.15)

e detta matrice di raggiungibilita.

Osservazione 7.1 In generale, la successione dei sottospazi Rk in (7.13) puo diventare stazionaria (cioesmettere di aumentare di dimensione al crescere di k) anche a partire da qualche k < n, pertantodimR = rank[R] ≤ n.

Ricordiamo la definizione di invarianza di un sottospazio rispetto ad una trasfomazione lineare.

Definizione 7.2 Dato un sottospazio X di Rn, X e invariante rispetto alla trasformazione lineare tA(·) :

Rn → R

n definita nella base canonica di Rn dalla matrice A (A-invariante), se per ogni x ∈ X risulta

tA(x) = Ax ∈ X.

Lemma 7.2 Il sottospazio R e A-invariante, ovvero

x ∈ R ⇒ Ax ∈ R (7.16)

Dimostrazione. Il sottospazio dei vettori Ax con x ∈ R, ovvero l’immagine di R attraverso la tra-sformazione tA(·) e generato dalle colonne della matrice AR = [AB A2B . . . AnB]. Per il teorema diHamilton Cayley, le colonne della matrice AR risultano combinazione lineare di quelle di R. Pertantol’immagine di R attraverso tA(·) e contenuta in R e quindi R e A-invariante.

Definizione 7.3 Il sistema (7.1) e detto completamente raggiungibile se l’insieme degli stati raggiungibilidallo stato nullo coincide con tutto lo spazio degli stati

R = Rn (7.17)

ovvero se la matrice R ha rango massimo (rank[R] = n).

Se il sistema e completamente raggiungibile, allora per ogni stato iniziale x0 ed ogni stato obiettivo xesiste una sequenza di ingressi Un che porta lo stato da x0 a x in n passi, cioe una sequenza tale che

xn = Anx0 + RUn = x (7.18)

Infatti, poiche ogni stato e raggiungibile dallo stato nullo, risulta in particolare che x − Anx0 e rag-giungibile dallo stato nullo per qualunque x e x0, quindi esiste una sequenza d’ingresso Un tale chex − Anx0 = RUn.

77

Si consideri una trasformazione lineare di coordinate, ovvero un cambiamento di base nello spazio deglistati dato da

xk = Tzk (7.19)

dove T e una matrice non singolare, xk il vettore di stato espresso nella base canonica di Rn e zk il

vettore di stato espresso nella nuova base. Le equazioni di evoluzione dello stato del sistema con lo statoespresso nella nuova base sono date da

{zk+1 = Azk + Buk

yk = Czk(7.20)

A = T−1AT ; B = T−1B ; C = CT (7.21)

Osservazione 7.2 La proprieta di completa raggiungibilita di un sistema e invariante rispetto a ognitrasformazione di coordinate nello spazio degli stati. Infatti, la matrice di raggiungibilita nella basetrasformata vale

R = [B AB . . . ] = [T−1B T−1ATT−1B . . . ] = T−1R (7.22)

e dunque R ha rango pieno se e solo se lo ha R, essendo T non singolare.

7.2.1 Decomposizione di raggiungibilita

Osserviamo che se xk e, come al solito, il vettore di stato del sistema riferito alla base canonica di Rn,

l’equazione di evoluzione dello stato puo essere scritta come

xk+1 = tA(xk) + tB(uk) (7.23)

dove tA(·) : Rn → R

n e tB(·) : Rm → R

n sono le trasformazioni lineari definite rispetto alla base canonicadi R

n dalle matrici A e B, rispettivamente.

Definizione 7.4 Si definisce indice di raggiungibilita del sistema (7.1) la dimensione dello spazio rag-giungibile, ovvero la quantita

nr = dimR = rank R ≤ n (7.24)

Se l’indice di raggiungibilita del sistema vale nr, allora il suo spazio raggiungibile e completamentegenerato da una base di nr vettori di R

n linearmente indipendenti.Sia nr < n (sistema non completamente raggiungibile) e si introduca un cambiamento di coordinate nellospazio degli stati

xk = Tzk (7.25)

in cui i primi nr elementi della nuova base siano una base del sottospazio raggiungibile. Tale cambiamentodi coordinate e ottenuto quindi mediante la matrice

T = [v1 . . . vnrwnr+1 . . . wn] (7.26)

dove {v1, . . . , vnr} e una base di R; tale base puo essere costituita da un insieme di vettori composto da

nr colonne indipendenti di R. L’insieme dei vettori indipendenti {wnr+1, . . . , wn} e un completamentodella base di R considerata per arrivare ad ottenere una base di R

n.1

Poiche R e A-invariante, ovvero invariante rispetto alla trasformazione tA(·), la matrice A = T−1AT ,associata alla trasformazione lineare tA(·) nella nuova base dello spazio di stato, ha le prime nr colonnecon gli ultimi n − nr coefficienti nulli.2 Inoltre, poiche Im[B] ⊆ R (si noti infatti che B rappresentaun sottoinsieme delle colonne di R), la trasformazione tB(·) applicata a un qualunque vettore genera

1Si ricordi che la matrice T di cambiamento di base dalla base canonica ad un’altra base B e data da unamatrice non singolare le cui colonne sono i vettori della base B espressi in base canonica.

2Ricordiamo infatti che la matrice associata ad una trasformazione lineare Rp→ R

q ed a due date basi perR

p e Rq ha come colonne i vettori trasformati dei vettori della base di R

p espressi secondo la base di Rq.

78

uk zrk

zrk+1

z−1

z−1 Cr

Ar

Br

Arr

yk

Cr

Ar

zrk

zrk+1

Figura 7.2: Schema a blocchi del sistema in decomposizione di raggiungibilita.

un vettore che non ha componenti lungo wnr+1, . . . , wn, e dunque le colonne della matrice B = T−1B,associata alla trasformazione tB(·), nella nuova base dello spazio di stato hanno gli ultimi n−nr coefficientinulli.Per quanto appena osservato, le matrici del sistema nella nuova base

A = T−1AT ; B = T−1B ; C = CT (7.27)

hanno la forma

A =

[Ar Arr

0 Ar

]

; B =

[Br

0

]

; C =[

Cr Cr

](7.28)

Questa forma e detta decomposizione canonica di raggiungiblilta.In forma estesa, il sistema puo essere scritto come

{zrk+1 = Arz

rk + Arrz

rk + Bruk

zrk+1 = Arz

rk

(7.29)

dove xk = Tzk = T [zrk zr

k]′, essendo zrk e zr

k le componenti dello stato lungo la base dello spazio raggiun-gibile e lungo il suo completamento. In figura 7.2 e riportato uno schema a blocchi della dinamica delsistema decomposta come in (7.29).Data la struttura triangolare a blocchi della matrice A della decomposizione canonica, risulta che gli

autovalori di A (che sono coincidenti con quelli di A, visto che sono invarianti per trasformazioni dicoordinate) sono dati dall’insieme degli autovalori di Ar (detti autovalori raggiungibili) e di quelli di Ar

(detti autovalori non raggiungibili). Relativamente alla decomposizione degli autovalori in raggiungibilie non, si ha il seguente risultato.

Teorema 7.2 Gli autovalori non raggiungibili non sono poli della funzione di trasferimento G(z) delsistema.

79

Dimostrazione. Poiche la funzione di trasferimento e invariante rispetto alla base in cui si rappresentalo stato del sistema, risulta

G(z) = C(zI − A)−1B = C(zI − A)−1B

=[

Cr Cr

](

zI −

[Ar Arr

0 Ar

])−1 [Br

0

]

=[

Cr Cr

][

(zI − Ar)−1 ⋆

0 (zI − Ar)−1

] [Br

0

]

= Cr(zI − Ar)−1Br

Si osserva quindi che G(z) e di fatto pari alla funzione di trasferimento del solo sottosistema raggiungibile.In particolare G(z) non ha come poli gli autovalori di Ar.

Osservazione 7.3 In base al risultato precedente, e chiaro che la funzione di trasferimento G(z) edeterminata solo da modi del sistema che sono raggiungibili. Questo fatto non sorprende se si tiene contodi come risulta decomposto il sistema in figura 7.2, dove e evidente che la componente non raggiungibilezrk dello stato non e influenzata in alcun modo dall’ingresso ed e in evoluzione libera. Poiche la funzione

di trasferimento esprime il legame tra l’ingresso e l’uscita del sistema in termini di risposta forzata, sel’ingresso non influenza alcuni dei modi del sistema, tali modi non possono comparire nel legame ingresso-uscita. Gli autovalori del sistema che non compaiono come poli nella funzione di trasferimento dannoluogo a cancellazioni polo/zero nell’espressione di G(z).

7.2.2 Controllabilita

Si consideri adesso un problema specifico di raggiungibilita, cioe il problema di determinare una sequenzad’ingresso Un tale da portare a zero in n passi lo stato del sistema a partire da un dato stato iniziale x0,ovvero una sequenza d’ingresso tale che

0 = Anx0 + RUn (7.30)

Tale problema ha soluzione se e solo se −Anx0 e raggiungibile dallo stato nullo, ovvero

−Anx0 ∈ R (7.31)

Il problema ammette dunque soluzione per ogni x0 se e solo se lo stato −Anx0 (i.e., l’immagine di x0

attraverso An) e uno stato raggiungibile per ogni x0, ovvero se e solo se

Im An ⊆ R (7.32)

In questo caso il sistema e detto completamente controllabile.Se un sistema e completamente raggiungibile, allora e anche completamente controllabile, infatti banal-mente

Im An ⊆ R = Rn (7.33)

Proprieta 7.1 Un sistema e completamente controllabile se e solo se gli autovalori non raggiungibili sonotutti nulli. Infatti, poiche l’evoluzione dei modi non raggiungibili e libera e non e influenzata dall’ingresso,lo stato del sistema puo andare a zero in n passi per qualunque stato iniziale in corrispondenza di unopportuno ingresso se e solo se l’evoluzione libera della parte non raggiungibile va a zero in tempo finitoper qualunque stato iniziale, ovvero se e solo se Ar ha autovalori tutti nulli.

7.3 Allocazione degli autovalori

Dato il sistema con ingresso uk scalare

{xk+1 = Axk + Buk ; xk ∈ R

n, uk ∈ R

yk = Cxk(7.34)

80

si consideri la legge di controllo in retroazione dallo stato statica e stazionaria

uk = Fxk + vk (7.35)

Il sistema ad anello chiuso risulta

{xk+1 = (A + BF )xk + Bvk

yk = Cxk(7.36)

Sia T una trasformazione che porta il sistema in decomposizione di raggiungibilita (A, B, C) e sia F =FT = [Fr Fr] la matrice F nella nuova base.3 La matrice A del sistema ad anello chiuso in decomposizionecanonica vale

A + BF =

[Ar Arr

0 Ar

]

+

[Br

0

][

Fr Fr

]=

[Ar + BrFr Arr + BrFr

0 Ar

]

(7.37)

da cui si osserva che solo il sottosistema raggiungibile ha un’evoluzione che viene modificata dall’appli-cazione del controllo, e in particolare vengono alterati solo gli autovalori raggiungibili di A.Si vuole adesso determinare una legge di retroazione dallo stato della forma (7.35) in modo che il sistemaad anello chiuso soddisfi opportune specifiche. Note le relazioni tra le prestazioni della risposta libera oforzata (deadbeat, risposta del primo/secondo ordine, ecc.) ed i poli o autovalori corrispondenti, si trattadi progettare la legge di controllo in modo da posizionare gli autovalori (necessariamente della sola parteraggiungibile) del sistema in modo conforme alle specifiche (problema di allocazione degli autovalori).Dato quindi un sistema completamente raggiungibile (che eventualmente rappresenta la sola parte rag-giungibile di un sistema che non lo e) ad un solo ingresso, cerchiamo una legge di retroazione dallo statoin modo che gli autovalori λ1, . . . , λn del sistema ad anello chiuso siano pari a valori desiderati.Sussiste il seguente risultato, che forniamo senza dimostrazione.

Teorema 7.3 Un sistema e completamente raggiungibile se e solo se esiste una trasformazione di coor-dinate T nello spazio degli stati che porta il sistema nella cosiddetta forma canonica di raggiungibilita,in cui le matrici A = T−1AT e B = T−1B sono date da

A =

0...0

In−1

−a0 −a1 . . . −an−1

; B =

0...01

(7.38)

Tale trasformazione di coordinate e data da

T = RH (7.39)

dove R e la matrice di raggiungibilita del sistema, H e la matrice

H =

a1 a2 a3 . . . 1...

...... . . .

...an−2 an−1 1 . . . 0an−1 1 0 . . . 0

1 0 0 . . . 0

(7.40)

e an−1, . . . a0 sono i coefficienti del polinomio caratteristico di A

pA(λ) = λn + an−1λn−1 + . . . + a0 = det(λI − A) (7.41)

3Se il sistema e completamente raggiungibile, allora T puo essere l’identita.

81

La matrice A della forma canonica di raggiungibilita e detta in forma compagna del polinomio caratte-ristico, cosı chiamata perche gli unici coefficienti diversi da 0 e da 1 che compaiono in A sono quelli dipA(λ).Si consideri un sistema raggiungibile ed una legge di controllo della forma (7.35) definita da una ma-trice di retroazione F . Si porti il sistema in forma canonica di raggiungibilita (A, B, C) mediante latrasformazione T = RH. Sia F = FT la matrice F espressa nella nuova base. Scrivendo

F = [f0 f1 . . . fn−1] (7.42)

dove fi sono opportuni coefficienti, il sistema ad anello chiuso in forma canonica risulta dato da

A + BF =

0...0

In−1

−a0 + f0 −a1 + f1 . . . −an−1 + fn−1

; B =

0...01

(7.43)

e quindi, in base al fatto che la matrice A e in forma compagna, il polinomio caratteristico ad anellochiuso (che, ricordiamolo, e invariante rispetto a trasformazioni di coordinate e quindi e pari al polinomiocaratteristico di A + BF ) vale

pA+BF (λ) = pA+BF (λ) = λn + (an−1 − fn−1)λn−1 + . . . + (a0 − f0) (7.44)

E quindi possibile fissare arbitrariamente i coefficienti del polinomio caratteristico (e quindi gli autovalori)del sistema ad anello chiuso scegliendo la matrice di retroazione

F = [a0 − d0 . . . an−1 − dn−1] (7.45)

dovepd(λ) = λn + dn−1λ

n−1 + . . . + d0 (7.46)

e il polinomio caratteristico ad anello chiuso che si desidera imporre.La matrice di retroazione nella base originaria risulta

F = F T−1 = F (RH)−1 = [a0 − d0 . . . an−1 − dn−1](RH)−1 (7.47)

La formula (7.47) va sotto il nome di formula di allocazione degli autovalori. Mediante tale formula epossibile calcolare la matrice di retroazione F tale che il sistema ad anello chiuso abbia il polinomiocaratteristico desiderato (7.46).Una formula alternativa che risolve lo stesso problema e la formula di Ackermann

F = −[0 0 . . . 1]R−1pd(A) (7.48)

dovepd(A) = An + dn−1A

n−1 + . . . + d0I (7.49)

Osservazione 7.4 In Scilab, per l’allocazione degli autovalori, si usa il comando

F=-ppol(A,B,P)

dove P= [λ1 . . . λn] e il vettore degli autovalori ad anello chiuso desiderati (non il vettore dei coefficientidel polinomio caratteristico desiderato).

Osservazione 7.5 Per problemi di piccole dimensioni, se non si ha a disposizione il calcolatore, si puoimpostare direttamente l’equazione

pA+BF (λ) = pd(λ) (7.50)

con F = [f0 f1 . . . fn−1] e risolvere nelle incognite f0, . . . , fn−1 uguagliando i polinomi coefficiente acoefficiente.

Osservazione 7.6 Se il sistema non e completamente raggiungibile, i metodi visti possono essere impie-gati per l’allocazione degli autovalori del solo sottosistema raggiungibile. Gli autovalori del sottosistemanon raggiungibile non possono mai essere cambiati.

82

7.3.1 Stabilizzabilita

Si consideri il problema di determinare, se esiste, una legge di controllo in retroazione dallo stato staticastazionaria che renda un dato sistema asintoticamente stabile ad anello chiuso, cioe con tutti autovaloria modulo strettamente minore di 1.La soluzione a questo problema e un caso particolare del problema di allocazione degli autovalori.Possiamo disringuere due casi:

• Se il sistema e completamente raggiungibile, il problema ha chiaramente soluzione sotto formadi retroazione statica dello stato, poiche in questo modo e possibile allocare arbitrariamente gliautovalori, ed in particolare e possibile renderli tutti asintoticamente stabili.

• Se il sistema non e completamente raggiungibile, il problema ha soluzione solo se gli autova-lori del sottosistema non raggiungibile, che non sono modificabili tramite retroazione, sono giaasintoticamente stabili.

Definizione 7.5 Un sistema e detto stabilizzabile se i suoi autovalori non raggiungibili sono asintotica-mente stabili.Una matrice di retroazione che stabilizza un sistema definito dalle matrici A e B si dice che stabilizza lacoppia (A,B).

7.3.2 Allocazione degli autovalori: specifiche

Gli autovalori di un sistema determinano i modi della risposta libera del sistema stesso e, limitatamentea quelli che compaiono come poli nella funzione di trasferimento, le caratteristiche del transitorio dellarisposta forzata. L’allocazione degli autovalori puo essere quindi utilizzata per imporre un comportamentodesiderato tanto alla risposta libera quanto, ad esempio, al transitorio della risposta al gradino. Per lascelta degli autovalori da imporre nei confronti di questi due problemi, possono essere applicati gli stessicriteri usati nella sintesi diretta per il transitorio della risposta al gradino. Ad esempio, per ottenereun transitorio ad anello chiuso corrispondente ad assegnate specifiche di smorzamento e rapidita, duedegli autovalori del sistema possono essere allocati in posizione dominante con smorzamento e pulsazionenaturale corrispondenti alle specifiche, mentre i poli rimanenti possono essere posti in posizione nondominante, ad esempio in zero, in modo che la dinamica dei modi relativi si esaurisca in un tempo finito.Posizionare tutti gli autovalori in zero significa ottenere tanto una risposta liberaq quanto un transitoriodella risposta al gradino, di tipo deadbeat.

7.4 Inseguimento del riferimento

Vogliamo adesso determinare degli schemi di controllo che sfruttino l’allocazione degli autovalori medianteretroazione dallo stato e che permettano di ottenere, oltre alla stabilita del sistema ad anello chiuso el’assegnazione delle caratteristiche del transitorio, anche l’inseguimento di un segnale riferimento rk agradino.Un primo schema puo essere ottenuto mediante una semplice scalatura del segnale di riferimento per unopportuno fattore scalare K, cioe mediante una legge di controllo della forma

uk = Fxk + Krk (7.51)

(vedi figura 7.3) Il sistema ad anello chiuso risulta{

xk+1 = (A + BF )xk + BKrk

yk = Cxk(7.52)

a cui corrisponde la funzione di trasferimento

W (z) = C[zI − (A + BF )]−1BK (7.53)

il cui guadagno in continua vale

W (1) = C[I − (A + BF )]−1BK (7.54)

83

rk uk xkxk+1z−1 C

A

B

F

Kyk

Figura 7.3: Schema per inseguimento con scalatura del riferimento.

Imponendo che tale guadagno in continua sia unitario, si ricava il valore di K da applicare in modo daottenere l’inseguimento senza errore a regime del gradino

K =1

C(I − (A + BF ))−1B(7.55)

Osservazione 7.7 La matrice I − (A + BF ) e invertibile se, come dev’essere (essendo il sistema adanello chiuso asintoticamente stabile), non ci sono autovalori ad anello chiuso in z = 1.

Questo approccio garantisce errore a regime di inseguimento al gradino nullo ma non tiene conto dell’er-rore a regime dovuto ad eventuali disturbi (costanti) che possono agire in qualunque punto del sistema(ad esempio sul comando o sull’uscita). Nella sintesi ingresso-uscita, l’inseguimento del gradino e l’an-nullamento a regime dell’effetto di disturbi costanti si ottiene tipicamente inserendo un termine integralenel compensatore. Un approccio simile puo essere applicato anche alla sintesi nello spazio degli stati.

7.4.1 Retroazione dallo stato con azione integrale

Si consideri lo schema di controllo in figura 7.4. A tale schema corrispondono le equazioni di evoluzione

xk+1 = Axk + B(Fxk + Kqk + dk)qk+1 = qk + ek = qk − yk + rk = qk − Cxk + rk

(7.56)

Si osservi che l’introduzione dell’integratore, che e un blocco con dinamica, introduce una nuova variabiledi stato qk. Lo stato ψk del sistema complessivo e dato dall’insieme di xk e dello stato qk dell’integratore,ψk = [x′

k qk]′. In forma compatta, l’evoluzione del sistema si scrive allora

ψk+1 = (Aaug + BaugFaug)ψk +

[Bdk

rk

]

(7.57)

dove

Aaug =

[A 0−C 1

]

, Baug =

[B0

]

, Faug =[

F K]

(7.58)

Si supponga dk = d (disturbo costante) e rk = r (riferimento a gradino). Se si sceglie Faug (ovverol’insieme di F e K) in modo da stabilizzare asintoticamente la coppia (Aaug, Baug), risolvendo quindi ilproblema di allocazione degli autovalori di dimensione n+1 relativo al sistema complessivo, allora l’errore

84

_

rk uk xkxk+1z−1 C

A

B

F

Kyk

dk

ek qk1z−1

Figura 7.4: Schema di controllo con retroazione dallo stato ed azione integrale

a regime di inseguimento al gradino e l’errore a regime sull’uscita yk dovuto al disturbo costante sononulli per il principio del modello interno: infatti si viene a realizzare un anello di controllo internamentestabile con un integratore a monte del punto di entrata del disturbo. Naturalmente, sempre in base alprincipio del modello interno, lo schema funziona anche se il disturbo costante entra in un altro puntodel sistema tra l’integratore e l’uscita, ad esempio sovrapposto all’uscita stessa.

Capitolo 8

Stima dello stato e sintesi del regolatore

Sommario. In questo capitolo vengono discussi la proprieta strutturale di osservabilita, il progettodello stimatore asintotico deterministico dello stato ed il progetto del regolatore con retroazione dallostato stimato (compensatore dinamico).

8.1 Stima dello stato

Nel precedente capitolo abbiamo analizzato il controllo in retroazione lineare statica dallo stato

uk = Fxk + vk (8.1)

che puo essere progettato secondo diversi criteri, quali l’allocazione degli autovalori sulla base di oppor-tune specifiche. In casi realistici, tuttavia, non sono disponibili ad ogni istante misure dell’intero stato,ma solo di opportune variabili dette accessibili. Si rende quindi necessario calcolare istante per istante,tramite un metodo opportuno, una stima xk del valore delle variabili di stato xk a partire da misurazionidelle variabili che sono accessibili (l’ingresso uk ed un’uscita misurabile yk); se la stima e esatta istanteper istante, in linea di principio e possibile impiegare la legge di controllo

uk = Fxk (8.2)

dove F e progettata secondo i metodi visti (figura 8.1). Si osservi che le variabili di uscita misurate, sullabase delle quali si vuole eseguire la stima dello stato, non coincidono necessariamente con le variabili diuscita che eventualmente si intende controllare.

8.2 Osservabilita

Dato un sistema lineare stazionario a tempo discreto in spazio di stato

{xk+1 = Axk + Buk xk ∈ R

n

yk = Cxk(8.3)

si consideri il problema di determinare lo stato iniziale x0 a partire dall’osservazione di una sequenza dicampioni dell’uscita y0, y1, . . . (e della corrispondente sequenza di ingresso, se presente).Si supponga per semplicita che il sistema sia in evoluzione libera (vedremo che la generalizzazione al casoin cui sia presente anche l’ingresso e piuttosto semplice). La sequenza di uscita in funzione dello statoiniziale x0 vale

yk = CAkx0 k = 0, 1, . . . (8.4)

Definizione 8.1 Si supponga che due stati iniziali x10 e x2

0 producano la stessa sequenza yk per k =0, 1, . . . ,K − 1. In questo caso non si e evidentemente in grado di decidere, osservando K campionidell’uscita, quale dei due stati iniziali abbia generato l’evoluzione del sistema. Se questo accade, idue stati x1

0 e x20 si dicono indistinguibili tra loro nel futuro in K passi. Se uno stato x0 e tale che

y0 = y1 = · · · = yK−1 = 0, esso e allora indistinguibile in K passi dallo stato nullo e si dice inosservabilein K passi.

Dalla (8.4), si vede facilmente che il vettore dei primi K campioni di uscita si puo esprimere in formacompatta come

YK = OKx0 (8.5)

86

vk uk xkxk+1z−1 C

A

B

F

yk

Pd

xkStimatore

Figura 8.1: Schema di controllo in retroazione con stimatore dello stato.

dove

YK =

y0

y1

...yK−1

; OK =

CCA...

CAK−1

(8.6)

Se risulta possibile risolvere univocamente rispetto a x0 il sistema lineare (8.5), allora si e in grado dideterminare lo stato iniziale x0 a partire dall’osservazione dei K campioni dell’uscita YK .Sempre in base alla (8.5), si osserva che l’insieme degli stati x0 inosservabili in K passi, ovvero l’insiemedegli stati iniziali che producono uscita nulla per K passi, e dato dall’insieme delle soluzioni di

OKx0 =

0...0

(8.7)

ovvero, in termini algebrici, dall’insieme

OK = ker OK (8.8)

Il sottospazio OK di Rn e detto sottospazio inosservabile in K passi.

Osserviamo che risulta

ker

CCA

CAK−1

= ker

CCA

CAn−1

∀K > n (8.9)

infatti, per il teorema di Hamilton-Cayley, CAk−1 e combinazione lineare di C,CA, . . . , CAn−1 ∀k > n.Pertanto, se un certo stato e inosservabile in n passi, allora lo e anche in qualunque numero di passiK > n. Dunque, il sottospazio

O = On = kerOn = ker

CCA

CAn−1

(8.10)

87

rappresenta l’insieme degli stati inosservabili in assoluto, ovvero in qualunque numero di passi, ed e dettosottospazio inosservabile. La matrice O = On e detta matrice di osservabilita del sistema. Il sistema(ovvero la coppia (A,C)) e detto completamente osservabile se non esistono stati inosservabili e cioe se

O = {0} ⇔ rank O = n (8.11)

Consideriamo nuovamente il problema della determinazione dello stato iniziale x0 da osservazioni del-l’uscita, supponendo per semplicita che l’uscita sia scalare (yk ∈ R). Si tratta di risolvere il sistema diequazioni

YK = OKx0 (8.12)

che ha n incognite, per cui per avere soluzione univoca e necessario che K ≥ n. D’altra parte, per ilteorema di Hamilton-Cayley, la matrice OK non aumenta di rango all’aumentare di K per K > n, percui il problema puo essere riscritto come

Yn = Ox0 (8.13)

che ha soluzione univoca se e solo se rank O = n, ovvero se e solo se il sistema e completamente osservabile.Se il sistema non e completamente osservabile, allora Yn = Ox0 ha infinite soluzioni, ed inoltre ogni statoiniziale x0 e indistinguibile da un qualunque altro stato della forma x = x0 + x con x ∈ O. Infatti, lasequenza di uscita in n passi corrispondente a x vale

Ox = Ox0 + Ox = Ox0 + 0 = Ox0 (8.14)

Se il sistema non e completamente osservabile, lo stato iniziale x0 e quindi noto a meno di un opportunostato inosservabile, ovvero se x e una qualunque delle infinite soluzioni di

Yn = Ox (8.15)

allora lo stato iniziale x0 e dato da x−x dove x e uno stato inosservabile. Quanto valga x non e ovviamentepossibile saperlo da osservazioni dell’uscita, perche ogni stato inosservabile genera tutte uscite nulle.

8.2.1 Ricostruibilita

Dovendo risolvere un problema di controllo, si e interessati a stimare, piuttosto che lo stato inizialex0 del sistema, lo stato attuale ad ogni istante, in modo da poter impiegare la stima per effettuare laretroazione. Si consideri di dover calcolare lo stato attuale sulla base degli ultimi n campioni dell’uscita(per quanto noto sull’osservabilita, considerare un numero superiore di campioni non e significativo). Inbase alla stazionarieta del sistema, questo e equivalente a calcolare lo stato xn all’istante n, sulla basedelle uscite y0, . . . yn−1. Per un sistema in evoluzione libera lo stato al passo n vale

xn = Anx0 (8.16)

Se il sistema e completamente osservabile e possibile calcolare x0 univocamente

x0 = O−1Yn (8.17)

e dunque risultaxn = Anx0 = AnO−1Yn (8.18)

Se il sistema invece non e osservabile, e x e una delle infinite soluzioni di Yn = Ox, da quanto gia dettorisulta x0 = x − x dove x e uno stato inosservabile e non noto. Dunque

xn = Anx0 = Anx − Anx (8.19)

che non si puo calcolare perche non si conosce x. Se tuttavia il sistema e tale che per ogni x ∈ O risultaAnx = 0, ovvero,

O ⊆ ker An (8.20)

allora si haxn = Anx (8.21)

88

e dunque lo stato attuale xn e ricostruibile conoscendo solo un qualunque x soluzione di Yn = Ox,seppure non sia calcolabile x0. Se vale la condizione O ⊆ ker An, il sistema e detto completamentericostruibile. La proprieta di ricostruibilita consiste, per quanto visto, nella possibilita di calcolare lostato attuale, anche se non necessariamente quello iniziale, a partire dall’osservazione degli ultimi ncampioni dell’uscita.

8.2.2 Dualita

Sia dato il sistema Σ con rappresentazione di stato definita dalle matrici (A,B,C)

Σ = (A,B,C) (8.22)

Definizione 8.2 Si definisce sistema duale di Σ il sistema

Σ∗ = (A∗, B∗, C∗) dove A∗ = A′, B∗ = C ′, C∗ = B′ (8.23)

che ha tanti ingressi quante sono le uscite di Σ e tante uscite quanti sono gli ingressi di Σ.

Osservazione 8.1 Si verifica facilmente che il duale di Σ∗ e il sistema originale Σ.

Proprieta 8.1 Sussiste la seguente relazione tra la matrice di osservabilita O di Σ e la matrice diraggiungibilita R∗ di Σ∗:

O =

CCA

CAn−1

=[

C ′ A′C ′ . . . (A′)n−1C ′]′

=[

B∗ A∗B∗ . . . (A∗)n−1B∗]′

= (R∗)′

(8.24)Analogamente, per R ed O∗, risulta

R = (O∗)′ (8.25)

Dalle condizioni di rango che definiscono la completa raggiungibilita/osservabilita segue allora che

Σ e completamente osservabile ⇔ Σ∗ e completamente raggiungibileΣ e completamente raggiungibile ⇔ Σ∗ e completamente osservabile

8.2.3 Decomposizione di osservabilita

Dato un sistema Σ = (A,B,C), si consideri una trasformazione di coordinate nello spazio degli statidefinita da una matrice T (xk = Tzk). Le matrici che descrivono il sistema Σ nella nuova base, comenoto, valgono

A = T−1AT ; B = T−1B ; C = CT (8.26)

Trasponendo le precedenti relazioni si ottiene

A′ = T ′A′(T ′)−1 ; C ′ = T ′C ′ ; B′ = B′(T ′)−1 (8.27)

Si consideri il sistema duale Σ∗ e si applichi ad esso la trasformazione di coordinate nello spazio deglistati definita da T ∗ = (T ′)−1. In base alla (8.27), il duale nella nuova base risulta

A∗ = T ∗−1A∗T ∗ ; B∗ = T ∗−1B∗ ; C∗ = C∗T ∗ (8.28)

Sia Σ = (A,B,C) non completamente osservabile. Allora il suo duale Σ∗ = (A′, C ′, B′) e non com-pletamente raggiungibile e pertanto ammette una trasformazione di coordinate T ∗ che lo porta indecomposizione canonica di raggiungibilita. Tale decomposizione puo essere scritta come

A′ =

[A′

o A′

oo

0 A′

o

]

; C ′ =

[C ′

o

0

]

; B′ =[

B′

o B′

o

](8.29)

89

uk zok

zok+1

z−1

z−1 Co

Ao

Bo

Bo

Aoo

yk

Ao

zok

zok+1

Figura 8.2: Decomposizione canonica di osservabilita

Quindi, mediante la trasformazione di coordinate definita da T = (T ∗′)−1

xk = T [zok zo

k]′ (8.30)

il sistema originale Σ viene portato nella forma

A =

[Ao 0Aoo Ao

]

; B =

[Bo

Bo

]

; C =[

Co 0]

(8.31)

Questa forma e detta decomposizione canonica di osservabilita ed e rappresentata nello schema a blocchidi figura 8.2.Il sottosistema definito da (Ao, Bo, Co) e completamente osservabile perche e il duale del sottosistemaraggiungibile del sistema duale, e viene detto sottosistema osservabile. Al contrario, lo stato del sotto-sistema definito da (Ao, Bo, 0) ha un’evoluzione cui corrispondono uscite tutte nulle. Tale sottosistemanon influenza le variabili di uscita (si veda ancora la figura 8.2) e viene pertanto detto sottosistema inos-servabile. Dalla (8.31), inoltre, e evidente che gli autovalori di A sono dati dall’insieme degli autovaloridi Ao (autovalori osservabili) e degli autovalori di Ao (autovalori inosservabili).Dall’esame della figura (8.2), risulta chiaro infine che l’ingresso non influisce sulla proprieta di osservabi-

lita del sistema, poiche il sottosistema inosservabile produce uscite identicamente nulle indipendentementedal fatto che la sua evoluzione sia o meno pilotata dall’ingresso (lo stato del sottosistema inosservabile e“staccato” fisicamente dall’uscita).

90

Osservazione 8.2 La matrice di trasformazione che porta il sistema nella decomposizione di osservabi-lita e necessariamente della forma

T =[

w1 . . . wnovno+1 . . . vn

](8.32)

dove vno+1, . . . , vn e una base del sottospazio inosservabile O e w1, . . . , wnoe un suo completamento per

ottenere una base di Rn. Infatti le ultime n − no componenti dello stato decomposto (zo

k) sono quellecomponenti la cui evoluzione produce uscite sempre identicamente nulle, quindi sono necessariamente lecomponenti dello stato lungo il sottospazio inosservabile.

Proprieta 8.2 Gli autovalori inosservabili (quelli della matrice Ao) non sono poli della funzione di trasfe-rimento G(z) del sistema. Si prova infatti, in modo del tutto analogo a quanto fatto per la decomposizionedi raggiungibilita, che risulta

G(z) = Co(zI − Ao)−1Bo (8.33)

In base alla proprieta precedente ad al risultato analogo relativo agli autovalori non raggiungibili, siricava immediatamente il seguente teorema.

Teorema 8.1 La funzione di trasferimento G(z) contiene come poli tutti e soli gli autovalori raggiun-gibili E osservabili del sistema.

Osservazione 8.3 Il sistema e completamente ricostruibile se e solo se gli autovalori della sua partenon osservabile sono tutti nulli. Questa condizione infatti e equivalente al fatto che la risposta liberarelativa ad un qualunque stato iniziale x che ha solo componenti inosservabili vada a zero dopo n passi(Anx = 0). In tal caso, l’intero stato al passo n e noto dalla sola conoscenza della parte osservabile,infatti a tale istante la parte inosservabile vale necessariamente zero qualunque sia la condizione iniziale.

8.2.4 Rivelabilita

Definizione 8.3 Un sistema si dice rivelabile se la sua parte non osservabile (la matrice Ao) ha tuttiautovalori asintoticamente stabili.

La rivelabilita equivale alla possibilita di determinare asintoticamente (quindi non necessariamente intempo finito) il valore dello stato attuale a partire dall’osservazione delle variabili di uscita. Infatti, sela condizione di rivelabilita e soddisfatta, la risposta libera della parte inosservabile dello stato tende azero asintoticamente, anche se non necessariamente in un numero finito di passi.

Osservazione 8.4 Un sistema e rivelabile se e solo se il suo duale e stabilizzabile. Questa proprieta eevidente dal legame tra la decomposizione canonica di osservabilita di un sistema e la decomposizione diraggiungibilita del suo duale.

8.3 Osservatore asintotico

Dato un sistema osservabile, o almeno rivelabile, affrontiamo il problema di determinare un metodo perstimare in linea, ad ogni istante, il valore attuale dello stato, in modo da poter utilizzare la retroazionedello stato stimato allo scopo di controllare il sistema (figura 8.3). Si consideri lo schema rappresentatoin figura 8.4. Tale schema e costituito, oltre che dal sistema fisico di cui si desidera stimare lo stato xk

non noto, da un secondo sistema dinamico identico (in linea di principio) al precedente. Lo stato xk

del sistema simulato (ovviamente noto), costituisce la stima. L’evoluzione di xk e determinata, oltre chedallo stesso ingresso che viene applicato al sistema vero, da un termine correttivo proporzionale secondoun guadagno L alla differenza tra l’uscita del sistema vero, che e supposta misurabile, e l’uscita delsistema simulato. Questo termine correttivo e di fatto un termine di retroazione: l’evoluzione dello statostimato viene modificata a seconda di quanto l’evoluzione del sistema simulato differisce (in termini diuscita, che e l’unica variabile accessibile) dall’evoluzione del sistema vero.Esaminiamo in dettaglio la dinamica del sistema complessivo. La legge di aggiornamento dello stato

91

vk uk xkxk+1z−1 C

A

B

F

yk

Pd

xkStimatore

Figura 8.3: Sistema di controllo con retroazione dallo stato stimato.

xk+1 = Ax + Buk + L(yk − yk) (8.34)

_

uk xkxk+1z−1

z−1

C

C

A

A

B

B

L

yk

yk

Pd

xkxk+1

Osservatore

Figura 8.4: Osservatore di Luenberger

92

dello stimatore xk e data daxk+1 = Ax + Buk + L(yk − yk) (8.35)

e dunque l’evoluzione del sistema complessivo (sistema fisico piu stimatore) risulta

xk+1 = Axk + Buk

xk+1 = Ax + Buk − LC(xk − xk)(8.36)

Si definiscaxk = xk − xk (8.37)

Evidentemente, xk rappresenta l’errore di stima, ovvero la differenza tra lo stato vero e lo stato stimato.Sottraendo tra loro le (8.36) si ottiene

xk+1 = (A − LC)xk (8.38)

pertanto l’errore di stima evolve liberamente (ovvero senza essere influenzato dell’ingresso) secondo unalegge dipendente dalla matrice L, che puo essere scelta arbitrariamente come parametro di progetto.L’obiettivo e far sı che l’evoluzione dell’errore di stima abbia un andamento convergente a zero. L’erroredi stima convergera asintoticamente a zero se si e in grado di determinare L tale che A−LC abbia tuttigli autovalori interni al cerchio unitario.Si consideri il duale del sistema che descrive la dinamica dell’errore di stima, dato da

πk+1 = (A′ − C ′L′)πk (8.39)

Poiche gli autovalori di una matrice coincidono con quelli della sua trasposta, determinare L in modo daallocare gli autovalori di A − LC in modo opportuno, equivale ad allocare gli autovalori di A′ − C ′L′.Questo problema non e altro che l’allocazione degli autovalori standard applicata al sistema duale. Infattiil duale si puo scrivere come

πk+1 = (A∗ + B∗F ∗)πk dove A∗ = A′, B∗ = C ′, F ∗ = −L′ (8.40)

Se la coppia (A∗, B∗) e raggiungibile, allora si sa che e possibile determinare F ∗ in modo da posizionarearbitrariamente gli autovalori di A∗ +B∗F ∗. Se dunque la coppia (A,C) e osservabile, allora per dualita(A∗, B∗) e raggiungibile, quindi e possibile determinare F ∗ in modo da stabilizzare asintoticamenteA∗ + B∗F ∗, ovvero L in modo da stabilizzare A − LC (per L = −F ∗, gli autovalori di A − LC eA∗ +B∗F ∗ coincidono perche, come detto, le due matrici sono l’una la trasposta dell’altra). Pertanto, seil sistema e osservabile, e possibile determinare L in modo che l’osservatore fornisca una stima xk dellostato del sistema xk il cui errore xk rispetto allo stato reale tenda asintoticamente a zero con la dinamicaassegnata agli autovalori di A − LC.

Osservazione 8.5 Se il sistema non e osservabile ma solo rivelabile, allora il suo duale e stabilizza-bile, dunque e ancora possibile determinare L che, pur allocando i soli autovalori osservabili, rende ladinamica dell’errore di stima asintoticamente stabile e dunque rende lo stato stimato xk asintoticamenteconvergente allo stato vero xk.

Osservazione 8.6 Se il sistema e osservabile, in particolare e possibile allocare tutti gli autovaloridell’osservatore in zero, e quindi far convergere lo stato stimato in al piu n passi (osservatore deadbeat).L’osservatore deadbeat puo essere inoltre ottenuto anche nel caso in cui eventuali autovalori inosservabilisiano tutti nulli, ovvero nel caso in cui il sistema sia ricostruibile.

Esempio 8.1 In Scilab, per sintetizzare L si usa la stessa funzione impiegata per l’allocazione degliautovalori (si effettua infatti una allocazione degli autovalori sul sistema duale).

L = ppol(A’,C’,P)’

dove P e il vettore degli autovalori desiderati dell’osservatore (notare la trasposizione ed il cambio disegno rispetto alla formula di allocazione degli autovalori per il controllo).

93

8.3.1 Proprieta struturali e stabilita

Definizione 8.4 (Stabilita interna). Un sistema Σ e detto internamente stabile quando tutte le suevariabili (ovvero lo stato del sistema) hanno evoluzione asintoticamente stabile. Il sistema e quindiinternamente stabile se e solo se tutti i suoi autovalori hanno modulo minore di 1. Cio significa che larisposta libera nello stato e convergente ed implica inoltre che la risposta forzata nello stato a qualunquesegnale limitato sia limitata (infatti i poli della funzione di trasferimento sono anche autovalori delsistema).

Definizione 8.5 (Stabilita esterna (o ILUL)). Il sistema e detto esternamente (o ILUL) stabile se l’e-voluzione dell’uscita in corrispondenza ad ingressi limitati e limitata. Come noto, un sistema e ILULstabile se e solo se la funzione di trasferimento ha tutti poli con modulo minore di 1.

Abbiamo osservato che la funzione di trasferimento G(z) di un sistema contiene come poli tutti e soligli autovalori raggiungibili e osservabili della matrice A di una sua rappresentazione di stato. Da questaproprieta derivano le seguenti relazioni tra stabilita interna ed ILUL.

• Se il sistema e completamente raggiungibile e osservabile, allora non ci sono cancellazioni polo-zero nella funzione di trasferimento e dunque la stabilita interna e equivalente alla stabilita ILUL,perche in G(z) compaiono come poli tutti gli autovalori di A.

• Se il sistema e ILUL stabile ma non e raggiungibile e osservabile, allora vi sono alcuni autovaloridella dinamica dello stato (quelli non raggiungibili e/o non osservabili) che non compaiono nellafunzione di trasferimento. In questo caso il sistema e internamente stabile se e solo se gli autovaloriirraggiungibili e quelli inosservabili sono asintoticamente stabili (a modulo minore di 1). Se questonon accade, ci sono cancellazioni polo-zero instabili nella funzione di trasferimento.

Osservazione 8.7 La nozione di stabilita interna enunciata in questo contesto e coerente con quelladata per i sistemi interconnessi in rappresentazione ingresso/uscita. In un sistema interconnesso che siaILUL stabile ma non non internamente stabile, infatti, esistono funzioni di trasferimento fra opportunecoppie di segnali di ingresso e di uscita che presentano poli instabili, mentre questi poli non compaionoin altre funzioni di trasferimento. I modi instabili “nascosti” devono necessariamente far parte di unarappresentazione in variabili di stato che descriva il sistema complessivo; tali modi risultano raggiungi-bili e osservabili se si considerano come ingresso ed uscita del sistema i segnali legati dalle funzioni ditrasferimento instabili, mentre risultano non raggiungibili o non osservabili altrimenti.

8.4 Sintesi del regolatore (compensatore dinamico)

Si consideri adesso il problema di regolare il sistema attraverso una retroazione statica delle variabili distato che non siano misurate ma stimate attraverso un osservatore asintotico (figura 8.5). Si consideriquindi la legge di controllo

uk = Fxk + vk (8.41)

dove xk e lo stato dell’osservatore. Alla dinamica del sistema ad anello chiuso risultante contribuisconosia la dinamica del sistema che quella dell’osservatore.Le equazioni di stato che descrivono il sistema complessivo (impianto piu osservatore) sono date da

xk+1 = Axk + Buk

xk+1 = Axk + Buk + L(yk − Cxk)uk = Fxk + vk

yk = Cxk

(8.42)

Impiegando la variabile errore di stima xk = xk − xk al posto di xk nelle (8.42) si ottiene la rappresen-tazione equivalente

xk+1 = (A + BF )xk − BFxk + Bvk

xk+1 = (A − LC)xk

yk = Cxk

(8.43)

94

_

vk uk xkxk+1z−1

z−1

C

C

A

A

B

B

L

yk

yk

Pd

xkxk+1

F

Osservatore

Figura 8.5: Regolatore con retroazione dallo stato stimato (compensatore dinamico)

95

Introducendo lo stato esteso ξk = [x′

k x′

k]′ il sistema complessivo ad anello chiuso si scrive come

ξk+1 =

[A + BF −BF

0 A − LC

]

ξk +

[B0

]

vk

yk =[

C 0]ξk

(8.44)

8.4.1 Principio di separazione

Data la struttura a blocchi della matrice di evoluzione del sistema complessivo ad anello chiuso in (8.44),risulta chiaro che e possibile assegnare i suoi autovalori allocando separatamente quelli di A+BF e quellidi A − LC, ovvero progettando separatamente l’osservatore ed il regolatore in retroazione statica dallostato. Si osservi a tale proposito che il guadagno F non influenza l’evoluzione dell’errore di stima xk,che e libera con matrice di aggiornamento A − LC.La funzione di trasferimento ad anello chiuso W (z) = Y (z)/V (z) risulta

W (z) =[

C 0][

zI − (A + BF ) BF0 zI − (A − LC)

]−1 [B0

]

= C[zI − (A + BF )]−1B

(8.45)

pertanto il guadagno L dell’osservatore non influenza i poli di W (z) che invece sono influenzati solo dalguadagno F . Solo gli autovalori di A + BF compaiono infatti come poli in W (z) (se sono raggiungibilie osservabili). Si osservi che le equazioni di stato in (8.44) risultano in decomposizione canonica di rag-giungibilita, dove il sottosistema raggiungibile e dato dalla dinamica di xk (con gli autovalori di A+BF )mentre il sottosistema non raggiungibile e dato dalla dinamica di xk (con gli autovalori di A − LC).La funzione di trasferimento W (z) dipende quindi naturalmente solo da F , ma descrive solo il compor-tamento ingresso-uscita del sistema, non la sua risposta libera. La matrice L influisce invece (insieme aF ) sul comportamento in evoluzione libera del sistema, sia nello stato che nell’uscita. Si osservi infattiche la risposta libera nell’uscita risulta

ylk =

[C 0

][

A + BF −BF0 A − LC

]k

ξ0 (8.46)

Si verifica facilmente che nell’espressione di ylk per k ≥ 2 compare L. I modi di A−LC influiscono quindi

sulla parte di transitorio del sistema dovuto alla risposta libera. Affinche questo transitorio si esauriscarapidamente, puo essere conveniente scegliere L in modo che le costanti di tempo dei modi di A − LCsiano molto piu rapide di quelle che caratterizzano il transitorio della risposta forzata (che dipendonoinvece dai modi di A + BF ). L’osservatore puo essere ad esempio deadbeat, cioe con tutti gli autovaloridi A − LC in z = 0).

8.4.2 Compensatore dinamico deadbeat

Se (A,B) e controllabile e (A,C) e ricostruibile, allora e possibile determinare F ed L in modo da allocarein z = 0 sia gli autovalori di A+BF che quelli di A−LC. Tale scelta comporta che la risposta forzata algradino vada a regime in al piu n passi, infatti la funzione di trasferimento W (z) viene ad essere di ordineal piu n con tutti poli in zero. Per quanto riguarda la risposta libera, si tenga presente che il sistemacomplessivo ha ordine 2n. Pertanto, se tutti i suoi autovalori vengono allocati in z = 0, la risposta liberain generale tende a zero in 2n passi.

Capitolo 9

Cenni di controllo ottimo

Sommario. In questo capitolo si illustra nelle linee generali la sintesi ottima di controllori inretroazione dallo stato per sistemi lineari con obiettivo quadratico (regolatore LQ). Vengono inoltreanalizzate le condizioni sotto le quali tale regolatore stabilizza internamente il sistema ad anello chiuso.

9.1 Introduzione

I metodi classici di sintesi finora analizzati si basano su

• l’assegnazione dei poli dominanti o degli autovalori sulla base di proprieta temporali della rispostalibera o forzata del sistema,

• l’impostazione della risposta in frequenza sulla base di relazioni empiriche con la risposta forzata(sintesi per tentativi),

• criteri empirici (taratura dei regolatori industriali standard PID).

Alcuni metodi moderni invece si basano sulla caratterizzazione delle specifiche in termini di norme disegnali. Tali quantita soddisfano le proprieta standard di norma e sono di solito definite come l’integraledi una funzione positiva del segnale in questione. In particolare, come noto, la norma quadratica di unsegnale a tempo discreto

‖u‖22 =

∞∑

k=0

u2k (9.1)

e legata all’energia del segnale stesso.Le tecniche di controllo ottimo sono basate sul progetto della legge di controllo in modo da rendere minimo(o massimo) un opportuno funzionale detto indice di costo (o di prestazione). L’indice di costo e di solitodefinito in termini di norme di segnali, e tiene tipicamente conto della necessita di soddisfare obiettivicontrastanti tra loro, ciascuno dei quali viene pesato in maniera opportuna nel funzionale da ottimizzare.Il progetto del controllo secondo queste tecniche consiste quindi in un problema di ottimizzazione, in cuii vincoli sono costituiti dalla dinamica dell’impianto da controllare. L’incognita e rappresentata dallasequenza di ingressi da applicare in un dato intervallo di tempo, eventualmente infinito. La soluzionedi alcuni problemi standard si presenta sotto forma di legge di controllo in retroazione, dinamica o statica.

Si consideri un sistema dinamico lineare stazionario a tempo discreto 1

{xk+1 = Axk + Buk ; x ∈ R

n

yk = Cxk(9.2)

Assegnata una condizione iniziale x0 ed un orizzonte temporale 0, 1, . . . ,K, si desidera determinare lasequenza d’ingresso

UK = [uK−1 uK−2 . . . u0]′ (9.3)

che applicata al sistema genera un’evoluzione tale da rendere minimo un opportuno indice di costo

J(UK , x0) (9.4)

Si osservi che il valore dell’indice, fissato l’orizzonte temporale K, dipende solo dalla condizione inizialee dalla sequenza d’ingresso, poiche l’evoluzione del sistema e deterministica.

1Il sistema puo chiaramente rappresentare il modello discretizzato di un impianto a tempo continuo

97

Esempio 9.1 Assegnato uno stato iniziale x0 ed uno stato finale x, determinare la sequenza d’ingressoUK che porta il sistema da x0 a x in K passi minimizzando l’energia dell’ingresso stesso (controllo aenergia minima). Il problema dato puo essere formulato come il seguente problema di ottimizzazione:

minUK

J(UK , x0) t.c. (9.5)

x − AKx0 = RKUK (9.6)

dove

J(UK , x0) =K−1∑

k=0

u2k (9.7)

9.2 Controllo ottimo lineare quadratico (LQ) su orizzonte temporale finito

Definizione 9.1 Ricordiamo che una matrice quadrata M e detta definita positiva(M > 0) [o, rispettivamente, semidefinita positiva (M ≥ 0)] se

x′Mx > 0 [x′Mx ≥ 0] ∀x ∈ Rn (9.8)

Dato un sistema lineare stazionario a tempo discreto, una condizione iniziale x0 ed un orizzonte temporale0, 1, . . . ,K, il problema di controllo LQ su orizzonte temporale finito si formula nel seguente modo:determinare la sequenza di ingressi UK che minimizza l’indice di costo

J(UK , x0) =K−1∑

k=0

[x′

kQxk + u′

kRuk] + x′

KQKxK (9.9)

dove Q ≥ 0, R > 0, QK ≥ 0. Relativamente a questo problema, si osservi che il funzionale di costocodifica due obiettivi contrastanti:

• far tendere lo stato xk a zero, penalizzandone la norma quadratica pesata x′

kQxk,

• mantenere bassa l’energia del segnale di comando, infatti il termine u′

kRuk pesa l’intensita (poten-za) dell’azione di controllo al generico istante, dunque la sua somma su tutto l’orizzonte temporalerappresenta l’energia del controllo stesso;

infine, il termine x′

KQKxK pesa in modo separato lo scostamento dello stato finale xK dallo stato zero,determinando l’esito dell’azione di controllo, ed e quindi detto costo terminale. Le matrici Q, R, QK

determinano il peso relativo dei vari termini e quindi codificano le specifiche di progetto.

9.2.1 Soluzione del problema LQ

La soluzione del problema LQ consiste, come detto, nella determinazione della sequenza di ingressoUK tale che, in corrispondenza di una data condizione iniziale x0, il costo associato alla corrispondenteevoluzione del sistema sia minimo, ovvero pari a

V0(x0) = minUK

J(UK , x0) = minUK

K−1∑

k=0

[x′

kQxk + u′

kRuk] + x′

KQKxK (9.10)

La strategia che segue per la soluzione del problema LQ trae il suo fondamento nel principio dellaprogrammazione dinamica (Bellman, 1940). Si supponga inizialmente di determinare, per ogni possibilevalore di xK−1, il valore dell’ingresso uK−1 = u∗

K−1(xK−1) che permette di far evolvere il sistema daxK−1 a xK con costo minimo. Evidentemente, qualunque sia la legge di controllo ottima per portarelo stato da x0 ad xK , l’ultimo passo di questa legge deve necessariamente essere costituito dall’ingressou∗

K−1(xK−1), poiche ogni altra scelta implica un costo piu elevato per l’ultimo passo e quindi piu elevatocomplessivamente. L’ingresso ottimo per l’ultimo passo si calcola come la soluzione di

VK−1(xK−1) = minuK−1

[x′

K−1QxK−1 + u′

K−1RuK−1 + xKPKxK

]

= minuK−1[x′

K−1QxK−1 + u′

K−1RuK−1

+(AxK−1 + BuK−1)′PK(AxK−1 + BuK−1)]

(9.11)

98

dove si e posto PK = QK .Minimizzando rispetto a uK−1 si ottiene il valore ottimo dell’ingresso

u∗

K−1 = −(R + B′PKB)−1B′PKAxK−1 (9.12)

e sostituendo (9.12) nella (9.11) si ottiene il costo ottimo relativo all’ultimo passo

VK−1(xK−1) = x′

K−1PK−1xK−1 (9.13)

dove

PK−1 = Q − A′PKB(R + B′PKB)−1B′PKA + A′PKA. (9.14)

Si supponga adesso di voler determinare la soluzione ottima per i due passi finali, per ogni possibilevalore di xK−2. Poiche l’ingresso ottimo necessario a compiere l’ultimo passo e noto qualunque sia ilvalore di xK−1, il problema di progettare la strategia ottima in 2 passi si riduce a realizzare il minimorispetto a uK−2 del funzionale costituito dal costo relativo al passo K − 2 piu il costo ottimo in un passoVK−1(xK−1), dove xK−1 e lo stato in cui evolve il sistema applicando uK−2. Il costo ottimo per gli ultimi2 passi e allora dato da

VK−2(xK−2) = minuK−2

[x′

K−2QxK−2 + u′

K−2RuK−2 + VK−1(xK−1)]

= minuK−2

[x′

K−2QxK−2 + u′

K−2RuK−2 + xK−1PK−1xK−1

] (9.15)

Questa espressione del tutto analoga all’espressione (9.11) di VK−1(xK−1), a parte una traslazione indie-tro di un passo di tutti gli indici temporali. Pertanto, la soluzione u∗

K−2 ha la stessa forma di u∗

K−1 in(9.12), solo traslata indietro di un passo.Iterando il ragionamento per un orizzonte temporale di j passi, al generico passo k = K − j l’ingressoottimo vale quindi

u∗

k = −(R + B′Pk+1B)−1B′Pk+1Axk (9.16)

dove la successione Pk soddisfa

Pk = Q − A′Pk+1B(R + B′Pk+1B)−1B′Pk+1A + A′Pk+1A (9.17)

La successione di matrici (9.17) e nota come ricorsione di Riccati.Le precedenti osservazioni suggeriscono allora il seguente algoritmo per la soluzione del problema dicontrollo ottimo LQ su un orizzonte temporale di K passi

minUK

J(UK , x0) = minUK

K−1∑

k=0

[x′

kQxk + u′

kRuk] + x′

KQKxK (9.18)

1. Si inizializza

PK = QK (9.19)

2. Per j = K − 1,K − 2, . . . , 0 si calcola

Pj = Q − A′Pj+1B(R + B′Pj+1B)−1B′Pj+1A + A′Pj+1A (9.20)

Fj = −(R + B′Pj+1B)−1B′Pj+1A (9.21)

3. L’ingresso ottimo al passo k e dato da

u∗

k = Fkxk (9.22)

Si osservi che la legge di controllo ottimo (9.22) e una retroazione tempo variante dallo stato.

99

9.3 Controllo LQ su orizzonte infinito

Nei casi pratici, l’obiettivo del controllo consiste nel far raggiungere al sistema una condizione di regimedopo un transitorio rispondente a determinate caratteristiche. Rispetto a questo problema, la soluzioneottima in senso LQ su orizzonte finito non e significativa. Sarebbe opportuno determinare una leggedi controllo, se possibile in forma di retroazione statica dallo stato, che minimizzi il costo necessario araggiungere la condizione di regime, quindi su un orizzonte temporale in generale infinito. Affinche questopossa essere ottenuto, e necessario che il costo non diverga quando l’orizzonte temporale tende all’infinito.Infine, la legge di controllo ottima deve essere tale da stabilizzare asintoticamente (internamente) ilsistema.Il problema di controllo LQ su orizzonte infinito puo essere formulato come segue:

V∞(x0) = minU

J(U, x0) = minU

∞∑

k=0

[x′

kQxk + u′

kRuk] (9.23)

dove U e la sequenza infinita di ingressi

U = [. . . , u1, u0]′ (9.24)

La deduzione della soluzione di questo problema proposta in seguito e intuitiva e non ha alcuna pretesadi essere matematicamente rigorosa.Si supponga di voler risolvere il problema su un orizzonte temporale 0, . . . ,K con K arbitrariamentegrande, idealmente infinito. In questo caso, il costo terminale perde di significato e puo essere assuntonullo. Si supponga pertanto di inizializzare la ricorsione di Riccati a PK = QK = 0. Se si suppone chela ricorsione di Riccati converga a una matrice P−∞ per k → −∞, allora si ha Pk ≈ P−∞ se k << K.Se si assume K tendente all’infinito, si tende allora ad avere Pk = P−∞ per ogni k finito, in particolarePk+1 = Pk = P−∞. Dunque la ricorsione di Riccati (9.17) diviene l’equazione algebrica

P−∞ = Q − A′P−∞B(R + B′P−∞B)−1B′P−∞A + A′P−∞A (9.25)

detta equazione algebrica di Riccati (ARE). L’ingresso ottimo (9.16) diviene allora

u∗

k = F−∞xk (9.26)

Sussistono in effetti i seguenti risultati, che diamo senza dimostrazione.

Teorema 9.1 Sia la coppia (A,B) stabilizzabile. Allora la ricorsione di Riccati

PK = 0Pk = Q − A′Pk+1B(R + B′Pk+1B)−1B′Pk+1A + A′Pk+1A

(9.27)

converge a una matrice P−∞ simmetrica e semidefinita positiva. Tale matrice e una delle soluzioni dellaequazione algebrica di Riccati (ARE)

P−∞ = Q − A′P−∞B(R + B′P−∞B)−1B′P−∞A + A′P−∞A (9.28)

Inoltre la ARE ammette almeno una soluzione simmetrica e semidefinita positiva.

Teorema 9.2 Sia (A,B) stabilizzabile e sia P−∞ la soluzione simmetrica e semidefinita positiva di AREche rappresenta il limite per k → −∞ della ricorsione di Riccati. Allora la legge di controllo in retroazionedallo stato

u∗

k = F−∞xk (9.29)

doveF−∞ = −(R + B′P−∞B)−1B′P−∞A (9.30)

rende minimo il costo su orizzonte infinito J(U, x0).

100

9.3.1 Controllo LQ e stabilizzazione

E noto che ogni matrice simmetrica definita positiva e fattorizzabile nel prodotto di due matrici l’una latrasposta dell’altra. Si supponga di fattorizzare la matrice di peso Q come

Q = C ′C (9.31)

Cio equivale a considerare il costo

J(U, x0) =

∞∑

k=0

[y2

k + u′

kRuk

](9.32)

doveyk = Cxk (9.33)

La formulazione (9.32) del funzionale di costo LQ puo essere interpretata come la somma pesata del-l’energia del segnale di ingresso e dell’energia del segnale di uscita del sistema, allorche l’uscita vengadefinita come in (9.33). Il seguente risultato fornisce le condizioni affinche la legge di controllo ottimoLQ stabilizzi internamente il sistema.

Teorema 9.3 Sia (A,B) stabilizzabile e Q = C ′C. Sia P−∞ la soluzione di ARE associata alla legge dicontrollo ottimo (limite della ricorsione). Tale legge di controllo stabilizza asintoticamente il sistema see solo se la coppia (A,C) e rivelabile.

Dimostrazione. (Cenno) Se la legge di controllo LQ esiste ed e ottima, ovvero rende minimo ilfunzionale J(U, x0), evidentemente la serie che lo definisce deve convergere. Cio puo avvenire solo se yk

e uk sono entrambi convergenti a zero. Se il sistema e completamente osservabile, e noto che se l’uscitatende a zero allora devono tendere a zero anche tutte le componenti dello stato xk. Se al contrario ilsistema non e osservabile, il fatto che l’uscita tenda a zero non implica necessariamente che anche lostato tenda a zero, in particolare le sue componenti inosservabili possono anche divergere. Se tuttaviail sistema e rivelabile, le componenti inosservabili sono asintoticamente stabili, e dunque la convergenzaa zero dell’uscita implica la convergenza a zero di tutte le componenti dello stato e quindi la stabilitainterna.Il seguente risultato fornisce le condizioni di esistenza di soluzioni stabilizzanti dell’equazione algebricadi Riccati e ne caratterizza l’ottimalita in senso LQ.

Teorema 9.4 Sia (A,B) stabilizzabile e Q = C ′C, allora:

1. La ARE ammette al piu una soluzione simmetrica semidefinita positiva Ps a cui corrisponde unalegge di controllo stabilizzante

2. Tale soluzione esiste se e solo se la matrice

[zI − A

C

]

ha rango pieno per ogni z complesso di

modulo unitario

3. Se esiste la soluzione Ps, essa puo essere ottenuta come limite per k → −∞ della ricorsione diRiccati, ed e quindi coincidente con la soluzione ottima P−∞ se (A,C) e rivelabile.

9.3.2 Inseguimento ottimo in senso LQ

Si consideri il problema di determinare una legge di controllo (le matrici F e K dello schema in fig. 9.1)per inseguire a regime un riferimento costante rk = r minimizzando

J(U, x0) =∞∑

k=0

[y2

k + ρu2k

](9.34)

dove yk = yk − r e l’errore di inseguimento e uk = uk − u∞ e lo scostamento del segnale di comando dalsuo valore di regime.

101

rk uk xkxk+1z−1 C

A

B

F

Kyk

Figura 9.1: Schema per inseguimento di un riferimento costante

Osservazione 9.1 Si osservi che u∞ e nullo se l’impianto contiene un’azione integrale (i.e., A haautovalori in z = 1).

L’evoluzione degli scostamenti di xk, yk e uk dai rispettivi valori di regime e descritta dalle equazioni

xk+1 = Axk + Buk

yk = Cxk(9.35)

Dunque il problema di inseguimento in senso LQ e un problema LQ standard per il sistema alle variazioni,con i pesi Q = C ′C, R = ρ. L’ingresso ottimo alle variazioni vale quindi

u∗

k = F∞xk (9.36)

Nello schema di controllo risultauk = Fxk + Kr (9.37)

da cuiuk = Fxk (9.38)

e dunque l’ingresso ottimo si ottiene con lo schema visto ponendo F = F−∞ dove F−∞ risolve il problemaLQ per (A,B) con i pesi dati. Il valore di K e scelto al solito per rendere unitario il guadagno in continua.La legge di controllo da applicare e definita allora da

F = F−∞ ; K =1

C(I − (A + BF−∞))−1B(9.39)

Si osservi che se l’impianto ha autovalori in z = 1, allora uk = uk, per cui il costo pesa effettivamentel’energia del comando.

Osservazione 9.2 E possibile utilizzare un criterio di tipo LQ anche per progettare i parametri F eK dello schema di controllo con azione integrale, risolvendo il problema per il sistema aumentato (conuna matrice Q di ordine n + 1). Nel costo corrispondente, oltre alle variabili di stato del sistema, vienepesata anche la variabile aggiuntiva qk.

Bibliografia

[1] K. J. Astrom and B. Wittenmark. Computer-controlled systems: theory and design. Prentice Hall,1996.

[2] P. Bolzern, R. Scattolini, and N. Schiavoni. Fondamenti di controlli automatici. McGraw-Hill, 1998.

[3] C. Bonivento, C. Melchiorri, and R. Zanasi. Sistemi di controllo digitale. Ed. Progetto Leonardo,1995.

[4] S. Chiaverini, F. Caccavale, L. Villani, and L. Sciavicco. Fondamenti di sistemi dinamici. McGraw-Hill, 2003.

[5] M. L. Corradini and G. Orlando. Controllo digitale di sistemi dinamici. Franco Angeli, 2005.

[6] E. Fornasini and G. Marchesini. Teoria dei sistemi. Ed. Libreria Progetto, Padova, 1990.

[7] G. Franklin, D. Powell, and M. Workman. Digital control of dynamic systems. Addison WesleyLongman, 1998.

[8] A. Giua and C. Seatzu. Analisi dei sistemi dinamici. Springer, 2006.

[9] G. Guardabassi. Elementi di controllo digitale. Ed. Citta studi, 1990.