Anda di halaman 1dari 28

Appunti di Sistemi di Controllo Digitale1

prof. Giovanni Ulivi e prof. Stefano Panzieri Dipartimento di Informatica e Automazione Universit` degli Studi Roma TRE a

TRE
UNIVERSIT DEGLI STUDI
8 marzo 2006

ROMA

Rev. 2.0

INDICE

Giovanni Ulivi, Stefano Panzieri

Indice
1 Introduzione 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Campionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Spettro di un segnale campionato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ricostruzione - Tenuta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 4 5 6 8

La trasformata Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Z-trasformate di alcuni segnali canonici . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Propriet` della trasformata Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 a Antitrasformazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.10 Relazioni tra piani s e z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.11 Somma di convoluzione e funzione di trasferimento . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.12 Equazioni alle dierenze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.13 Stabilit` - Modi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 a 1.14 Poli reali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.15 Caratteristiche delle funzioni di trasferimento in z . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.16 Introduzione alla sintesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.17 Discretizzazione di sistemi continui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.18 Un regolatore PID discreto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.19 Sistemi a tempo di assestamento nito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.20 Un cenno sullidenticazione parametrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

1 di 27

Capitolo 1

Introduzione
1.1 Introduzione

I primi impieghi dei calcolatori nel campo dei controlli automatici risalgono alla ne degli anni 50. Allora erano disponibili macchine estremamente costose, ingombranti, delicate e di modesta adabilit`. Tutto cio a ne limito limpiego a pochi impianti di notevoli dimensioni in cui svolgevano compiti di supervisione e non vitali: acquisizione di dati, statistiche sul funzionamento dellimpianto, imposizione dei valori di riferimento per i regolatori, ovviamente tutti analogici, secondo sequenze temporali pressate. Tutte queste funzioni erano accentrate in un unico elaboratore non solo perch` era impensabile utilizzarne e diversi per ragioni di costo, ma anche per permettere la presenza di un sistema analogico o di un secondo calcolatore da attivare qualora il principale fosse andato in avaria (eventualit` tuttaltro che rara). a Altre ragioni ostacolavano il loro impiego, in modo particolare nella chiusura degli anelli di controllo. Tra queste va annoverata la distanza tra il calcolatore e i sensori e gli attuatori che imponeva la realizzazione di linee per la trasmissione dei segnali (analogici) con ulteriore detrimento delladabilit`. a La situazione inizi` a cambiare drasticamente nei primi anni 70, con i miglioramenti nelle tecnologie di o progettazione e costruzione dei circuiti integrati a larga scala (VLSI). Essi permisero la realizzazione di circuiti di memoria a stato solido e dei microprocessori, oltre che di circuiti per lo svolgimento delle funzioni di interfaccia. Tali componenti consentirono la realizzazione di piccoli calcolatori (microcalcolatori) di dimensioni molto limitate, in grado di resistere a condizioni ambientali anche molto severe e soprattutto a costi molto contenuti. Il continuo, regolare e quindi prevedibile miglioramento di tutte le caratteristiche di tali componenti ha poi indotto forti aspettative negli studiosi e nei progettisti di sistemi di controllo, i quali hanno perci` previsto limo piego di nuovi componenti ancora prima che questi venissero commercializzati o anche progettati, stimolandone cos` a loro volta la realizzazione. Attualmente la situazione ` tale che ` spesso possibile dedicare un microcalcolatore ad ogni anello di controllo, e e e generalmente ci` ` preferibile per molteplici ragioni allimpiego di regolatori analogici. oe Un controllore a microcalcolatore eredita diverse caratteristiche peculiari dal dispositivo principale che lo costituisce. Esso ` programmabile, pu` facilmente eseguire operazioni matematiche anche complesse e inoltre e o pu` comunicare con dispositivi consimili o con calcolatori remoti con grande facilit`. o a La programmabilit` permette di utilizzare la strategia di controllo pi` opportuna per ogni tipo di processo, a u senza che ci` richieda modiche siche (hardware) al dispositivo con cui essa ` realizzata. Inoltre durante la o e

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

vita dellimpianto ` sempre possibile modicare tale strategia per adeguarla a nuove esigenze od anche solo per e sfruttare una miglior conoscenza del suo comportamento. Se si pensa che anche la semplice moltiplicazione risulta essere di complessa realizzazione con tecniche analogiche, si comprende che la possibilit` di eettuare qualunque tipo di operazione, comprese quelle trascendenti e a con la precisione desiderata invita ad impiegare (e a studiare) nuove metodologie di controllo. Unulteriore applicazione di tali capacit` ` legata allimpiego di sensori con caratteristiche non lineari (ad es. quadratiche) che ae possono essere facilmente linearizzate memorizzando la caratteristica inversa nella memoria del microcalcolatore. Ultima ma non meno importante caratteristica di questo tipo di dispositivi ` la relativa facilit` che hanno e a di comunicare fra loro e con altri calcolatori con estrema adabilit`. Ci` pu` essere sfruttato non solo per a o o limposizione dei valori di riferimento o lacquisizione di dati lungo linee assai meno critiche di quelle necessarie per segnali analogici, ma anche per la trasmissione, sulle stesse linee, di messaggi riguardanti lo stato del processo, eventuali sue avarie ed inoltre per variare dinamicamente gli stessi parametri dei controllori in base alle condizioni di funzionamento dellintero impianto. Anche ci` schiude nuove possibilit` per la applicazione o a di strategie di controllo avanzato. Scopo di queste brevi note e stato solo quello di dare una panoramica sullimpatto che ha avuto luso dei microcalcolatori anche nel settore dei controlli automatici e dellautomazione. La presente trattazione ` dedicata ai concetti fondamentali che hanno permesso tale uso. Alcuni di essi e verranno qui introdotti con un breve esempio.
motore

MC

D/A
carico

A/D

TERM

Figura 1.1: Semplice asservimento di posizione Si consideri il sistema di g. 1.1. Esso ` un semplice azionamento costituito da un motore, che supporremo e in continua e alimentato da un appropriato amplicatore di potenza, che pone in rotazione un carico meccanico cui ` calettato lalbero di un potenziometro. Tali dispositivi generano e accettano segnali analogici. Per e poterli collegare al microcalcolatore che genera e accetta segnali di tipo numerico sono necessari un convertitore analogico/digitale che codichi la tensione fornita dal potenziometro in un segnale digitale (cio` un numero) e e viceversa un convertitore digitale/analogico che trasformi il numero generato dal calcolatore, sulla base della legge di controllo programmata, in una tensione che piloti lamplicatore di potenza. Si pu` inoltre supporre o che il valore di riferimento venga impostato dal terminale. Il nome dato ai due convertitori enfatizza loperazione di codica dei dati. In realt` essi svolgono rispettivaa mente anche le conversioni da tempo continuo a discreto (campionamento) e viceversa (ricostruzione). La prima operazione consiste nel prelevare i valori (campioni) del segnale continuo ad istanti ben determinati (istanti di campionamento); la seconda nel costruire a partire dai valori forniti dal microcalcolatore agli stessi istanti un

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

3 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

segnale continuo, secondo una certa legge di interpolazione. Tali operazioni sono quelle che hanno maggior rilevanza per lo studio del comportamento del sistema di controllo. I convertitori vengono attivati periodicamente dal microcalcolatore ed ` intuitivo che tanto pi` velocemente e u lo sono tanto meglio il sistema di controllo digitale approssimer` uno analogico. Daltra parte non ` sempre a e conveniente approssimare il comportamento di un sistema analogico, visto che quelli digitali hanno anchessi delle proprie caratteristiche alquanto interessanti. Esistono infatti due diverse vie per procedere alla sintesi di sistemi di controllo digitali, la prima che si basa sullapprossimazione dei dispositivi a tempo continuo, la seconda che prevede lutilizzazione anche delle peculiarit` di quelli a tempo discreto. a La realizzazione (spesso detta implementazione) di un algoritmo di controllo su un calcolatore pone numerosi altri problemi progettuali. Tra questi si citano quelli connessi alla scelta della frequenza di ciclo (frequenza di campionamento) dellalgoritmo e della complessit` dellalgoritmo stesso, alla quantizzazione delle grandezze a analogiche dovuta alla conversione in grandezze digitali e al limitato numero di cifre signicative dei numeri impiegati nel calcolo della grandezza di controllo.

1.2

Campionamento
Treno di impulsi

Segnale x(t)

Segnale campionato xc(t)

Figura 1.2: Campionamento Con riferimento alla g. 1.1 esaminiamo ora pi` in dettaglio il convertitore A/D. Si tratta di un circuito u elettronico in grado di operare ad intervalli di durata costante pari a Tc (intervalli di campionamento) una conversione della grandezza analogica presente al suo ingresso x(t), normalmente tensione o corrente, in una rappresentazione binaria con un numero di bit dipendente dalla precisione del convertitore stesso, spesso 8, 10 o 12 bit. La sequenza di numeri {x(ti )} che si ottiene, con ti = i Tc i = 0, 1, 2, ... (1.1)

` in questo modo direttamente manipolabile dal microelaboratore. Tuttavia, per poter considerare un segnale e di questa natura e continuare ad utilizzare gli strumenti matematici che sono tipici delle funzioni del tempo, si preferisce passare ad una rappresentazione del segnale campionato che conservi da un lato tutta linformazione propria della sequenza {x(ti )}, e dallaltro sia facilmente manipolabile sia come funzione del tempo che come trasformata di Laplace. Si introduce allora un segnale denominato treno di impulsi di Dirac composto da una sequenza di impulsi elementari posizionati in i Tc , distanti quindi tra di loro un tempo Tc , e si denisce segnale

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

4 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

campionato xc (t) il prodotto del segnale originario x(t) per il suddetto treno di impulsi:

xc (t) =
i=0

x(ti )(t ti ).

(1.2)

Si veda la g. 1.2 dove si ` supposto di iniziare il campionamento allistante t = 0. e

1.3

Esempi

Si consideri un segnale di andamento esponenziale: x(t) = e3t (1.3)

e si supponga di campionarlo con un periodo di campionamento di 10msec. Si otterr` allora la sequenza di a campioni: e0 , e0.03 , e0.06 , .., e0.03i . e quindi il segnale campionato sar`: a

(1.4)

xc (t) =
i=0

e0.03i (t 0.01i).

(1.5)

La stessa sequenza e lo stesso segnale campionato si sarebbero ottenuti, ad esempio, da un segnale continuo avente costante di tempo 1 sec campionato con periodo 30 msec. Si consideri ora una sinusoide: x(t) = sin(500t) e un periodo di campionamento di 1msec. Il segnale campionato sar`: a

(1.6)

xc (t) =
i=0

sin(

) (t 0.001i) 2i

(1.7)

E interessante considerare un altro segnale sinusoidale, con lo stesso periodo di campionamento: x(t) = sin(2500 t)

(1.8) ) (t 0.001i) 2i (1.9)

xc (t) =
i=0

sin(2.5 i) (t 0.001i) = sin(

cio` lo stesso segnale campionato del caso precedente. e Questo tipo di fenomeno (che va sotto il nome di aliasing) ` tipico dei segnali campionati. Di esso verr` in e a seguito data spiegazione. Nellesperienza quotidiana, il fenomeno non ` raro ed ` in genere legato allilluminae e zione di oggetti rotanti con luci pulsanti periodicamente, ad esempio limpiego di uno stroboscopio nella messa a punto di motori a scoppio permette di vedere fermo il volano in quanto i lampi sono esattamente sincronizzati con la rotazione del motore mentre le pale di un ventilatore sembrano ruotare lentamente quando illuminate da una luce al neon che ha una frequenza prossima a quella di rotazione.

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

5 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

1.4

Spettro di un segnale campionato

Loperazione di campionamento permette di derivare da un segnale continuo un nuovo segnale considerando il primo solo in istanti discreti. E intuitivo che tale operazione possa ridurre il contenuto informativo del segnale originario, cio` renda impossibile ricostruire esattamente il primo segnale a partire dal secondo. Esistono per` e o certe condizioni sotto le quali ` possibile eseguire loperazione inversa test` descritta. e e Tali condizioni sono state studiate da Nyquist e da Shannon il quale le sintetizz` in un importante teorema o (detto del campionamento)1 . Operiamo innanzitutto una preliminare analisi di alcune caratteristiche dello spettro del segnale xc (t). Si consideri la sua trasformata di Laplace. Ricordando che: L[(t ti )] = eti s si ha immediatamente: L[xc (t)] = Xc (s) =
i=0

(1.10)

x(ti ) eti s

(1.11)

Se ora si ricorda che: eti s = eti a [cos(ti ) + jsin(ti )] con a = Re[s] e = Im[s], si comprende che la (1.11) e periodica rispetto a con periodo c = Xc (s) in una delle fasce (ad es. quella da c a 2
c 2 ) 2 Tc .

(1.12) Pertanto

` possibile suddividere il piano complesso in fasce orizzontali come mostrato in g. 1.3. La conoscenza della e ne comporta la conoscenza nellintero piano. Quando lascissa di convergenza dalla trasformata (1.11) ` negativa ` possibile ottenere la trasformata di e e Fourier eettuando nella stessa la sostituzione s = j. In tal caso anche la trasformata di Fourier del segnale (cio` il suo spettro di ampiezza) risulta periodica, come indicato in g. 1.4 per il modulo di un segnale limitato e in banda. I lobi sono tutti uguali tra di loro e quindi basta conoscerne uno per conoscere lintero spettro.

S
c/2 -c/2

Figura 1.3: Fasce sul piano S E ora possibile enunciare il teorema del campionamento il quale aerma che tale spettro pu` essere espresso o come: Xc (j) =
1 vedi

1 Tc

X(j jkc )
k=

(1.13)

corso di Teoria dei Segnali Appunti di Sistemi di Controllo Digitale

Rev. 2.0

6 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

essendo X() lo spettro del segnale analogico originario. Perci`, non solo lo spettro risulta periodico ma per di o pi`, in ogni intervallo, risulta uguale allo spettro del segnale di partenza. Una dimostrazione di questo teorema u pu` essere data considerando che il segnale campionato xc (t) ` il prodotto di x(t) per il treno di impulsi di Dirac o e

xc (t) = x(t)T = x(t)


k=

(t kTc )

(1.14)

e che questo, in considerazione del fatto che risulta essere un segnale periodico di periodo Tc pu` essere sviluppato o in serie di Fourier come T =
k=

ck ejkc t 1 Tc x(t)ejkc t .
k=

(1.15)

con ck = dove c = 2/Tc , da cui xc (t) = x(t)

1 Tc

Tc 0

T (t)ejkc t dt =

(1.16)

1 Tc

ejkc t =
k=

1 Tc

(1.17)

Passando alla trasformata di Laplace ed utilizzando la propriet` di traslazione complessa si ottiene a 1 Xc (s) = L[xc (t)] = Tc che diventa la (1.13) se valutata per s = j. Nel caso di g. 1.4 ognuno dei lobi ` quindi proporzionale allo spettro opportunamente traslato del segnale e x(t), in quanto esso si estende no a un valore max <
c 2 .

L[x(t)e
k=

jkc t

1 ]= Tc

X(s jkc )
k=

(1.18)

Quando ci` non avviene, si ha invece la situazione o

di g. 1.5 in cui i vari lobi si sovrappongono distorcendosi a vicenda. In questo caso non ` pi` possibile lesatta e u ricostruzione del segnale di partenza, ma solo una approssimata, con errori che dipendono dalla forma dello spettro originario, del valore della frequenza di campionamento, e quindi da Tc .

FMAX Fc/2

Figura 1.4: Spettro di un segnale campionato FMAX minore di Fc/2

A
Fc/2 FMAX f

B
f

Figura 1.5: Spettro di un segnale campionato. FMAX maggiore di Fc/2. A- sovrapposizione spettri; B- spettro risultante

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

7 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

FMAX Fc/2

FMAX Fc/2

FMAX Fc/2

Figura 1.6: Ricostruzione mediante un ltro ideale Notiamo che nel tempo ` possibile calcolare la risposta impulsiva del ltro ideale utilizzato per la ricostruzione e del segnale. Questa ` data dalla e g(t) = che ha landamento della g. 1.7
1

sin(c t/2) c t/2

(1.19)

0. 8

0. 6

0. 4

0. 2

0. 2

0. 4 30 20 10 0 10 20 30

Figura 1.7: Ricostruttore di Shannon che risulta essere non causale visto che rimane diversa da zero anche per tempi negativi. Vedremo, nel paragrafo successivo, come al posto di questo ricostruttore sar` possibile utilizzarne uno approssimato ma a impiegabile nella realt`. a

1.5

Ricostruzione - Tenuta

Nel precedente paragrafo sono state esposte le condizioni secondo cui ` possibile campionare un segnale senza e alterarne il contenuto informativo; si aronter` ora il problema della sua ricostruzione a partire dal segnale a campionato. Si consideri ancora il segnale che si ottiene campionando un generico x(t) limitato in banda, il cui spettro ` riportato in g. 1.6. E chiaro che disponendo di un ltro ideale, cio` di un circuito il cui modulo della e e
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

8 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

risposta armonica sia quello riportato immediatamente sotto in g. 1.6 e la cui fase sia linearmente variabile con la frequenza, sarebbe possibile estrarre solo il lobo principale dellintero spettro, che per il teorema del campionamento ` uguale (a parte la costante Tc ) a quello del segnale di partenza. Luguaglianza degli spettri e (in modulo e fase) assicura anche luguaglianza dellandamento temporale dei due segnali. E chiaro che un simile circuito non esiste, come daltra parte non esistono i segnali rigorosamente limitati in banda: infatti lantitrasformata di una funzione rect ` la funzione sync che si estende da a + e come e risposta impulsiva sarebbe non causale in quanto diversa da zero anche per tempi negativi. Si noti che la sync ` e comunque approssimabile prelevandone un segmento (simmetrico rispetto allorigine) ed accettando un ritardo pari alla met` della lunghezza del segmento stesso. Detto ritardo, per`, indurrebbe problemi di stabilit` in un a o a sistema di controllo a controreazione, pur essendo invece accettabile in molte applicazioni, ad esempio, di TLC. Molto pi` limitativa da un punto di vista costruttivo ` lipotesi di realizzare la xc (t) e di applicarla ad u e un dispositivo reale, essendo questa costituita da una successione di impulsi ideali. E quindi indispensabile utilizzare unapprossimazione della xc (t) che sia espressa come sequenza di segnali impulsivi sicamente realizzabili di ampiezza opportuna. La scelta pi` semplice e anche quella pi` spesso utilizzata ` di utilizzare segnali u u e rettangolari di ampiezza x(ti ): xh (t) = x(ti ) t = [ti , ti + Tc ] (1.20)

Scegliendo opportunamente la frequenza di campionamento (spesso anche qualche decina di volte di quella teorica dettata dal relativo teorema ) e possibile ridurre le distorsioni dello spettro (e quindi del segnale ricostruito) a valori pi` che accettabili per le applicazioni. u Il circuito che realizza tale tipo di conversione tempo discreto - tempo continuo ` detto circuito di tenuta di e ordine zero (zero order hold in inglese). Il comportamento di questo circuito ` schematizzato in g. 1.8. Esso e riceve (idealmente) al suo ingresso il segnale campionato

xc (t) =
i=0

x(iTc )(t iTc )

(1.21)

e fornisce alluscita una gradinata che approssima il segnale analogico x(t), riportato tratteggiato nelle gure. Osservando la g. 1.8B si intuisce che loperazione eettuata introduce un ritardo del segnale ricostruito rispetto a quello analogico. Questa osservazione pu` essere confermata determinando la funzione di trasferimento o dellorgano di tenuta. A tal ne si consideri che il segnale di uscita pu` essere considerato scomposto in una sequenza di rettangoli o ognuno dei quali ottenuto come somma di due gradini g. 1.8. Quindi luscita vale

xh (t) =
i=0

x(iTc )[1 (t iTc ) 1 (t (i + 1)Tc )]

(1.22)

la cui trasformata di Laplace e:

Xh (s) =
i=0

x(iTc )

esiTc es(i+1)Tc = s

x(iTc )esiTc
i=0

1 esTc . s

(1.23)

E facile riconoscere che il termine a sinistra del segno di prodotto ` la trasformata di Laplace del segnale e xc (t) e quindi la funzione di trasferimento del circuito di tenuta vale: T (s) =
Rev. 2.0

1 esTc s

(1.24) 9 di 27

Appunti di Sistemi di Controllo Digitale

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

A) Segnale campionato xc(t)

B) Segnale ricostruito

Figura 1.8: Organo di tenuta

0.707 (-3dB)

f*Tc

Figura 1.9: Risposta armonica dellorgano di tenuta Da questa si pu` risalire alla risposta in frequenza con la sostituzione s = j . o Per basse frequenze ` per` possibile trovare una approssimazione molto pi` semplice sviluppando in serie di e o u Mac Laurin il termine esTc , che tralasciando i termini dello sviluppo superiori al primo d` a esTc = 1 + sTc e quindi Tc 1 + sTc (1.25)

(1.26)

che contiene un polo semplice e che giustica, tra laltro, il ritardo intuito osservando la g. 1.8 b. Tale circuito risulta avere alle basse frequenze guadagno pari a Tc , fattore presente nella (13).

1.6

La trasformata Z

I concetti espressi nei paragra precedenti, insieme a quelli propri dei sistemi continui, permettono di analizzare il comportamento di un sistema di controllo come quello descritto nellintroduzione. Sono infatti ora noti gli eetti del campionamento sui segnali ed ` possibile scegliere una frequenza di campionamento opportuna sulla e base dei loro spettri previsti. E stato inoltre presentato il modo di ricostruire il segnale, mediante un organo di tenuta e la funzione di trasferimento di questo circuito. Tuttavia, poich` le azioni di controllo sono eettuate solo in istanti discreti e negli intervalli fra di essi ` noto e e a priori landamento della variabile di ingresso dei processi controllati, ` opportuno ricercare per essi modelli e matematici pi` semplici di quelli adatti per il tempo continuo e pi` adatti alla particolare natura dei segnali u u

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

10 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

in gioco. Tali modelli possono essere ricavati tramite la Z-trasformata, in modo del tutto analogo a quanto gi` a noto nel dominio della variabile di Laplace. Questa trasformazione, specica per segnali e sistemi campionati, presenta forti analogie con quella di Laplace, da cui si pu` far discendere con una sostituzione di variabile. Si consideri infatti il generico segnale o campionato: xc (t) =
i=0

x(ti )(t ti )

(1.27)

con trasformata di Laplace: Xc (s) =

x(ti )esti =
i=0 i=0

x(iTc )esiTc

(1.28)

la sostituzione z = esTc fornisce immediatamente la sua Z-trasformata:

X(z) =
i=0

x(iTc ) z i

(1.29)

La relazione tra la sequenza {x(iTc )} e la funzione X(z) si suole indicare in forma sintetica come: X(z) = Z[{x(iTc )}] o anche, semplicando la notazione: X(z) = Z[x(i)]. (1.31) (1.30)

1.7

Z-trasformate di alcuni segnali canonici

a) Il gradino: x(t) = 1 (t). I campioni di un segnale a gradino per t > 0 sono: x(iTc ) = 1 quindi applicando la (1.29) si ha:

i = 0, 1, 2....

(1.32)

X(z) = 1 + z 1 + z 2 + ... =
i=0

z i

(1.33)

che come noto converge a : X(z) = se |z| > 1. b) Lesponenziale: x(t) = eat .

z 1 = 1 z 1 z1

(1.34)

I campioni di un segnale esponenziale per t > 0 sono: x(iTc ) = eaiTc quindi applicando la (1.29) si ha: X(z) = 1 + (zeaTc )1 + (zeaTc )2 + ... (1.36) i = 0, 1, 2.... (1.35)

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

11 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

che come noto converge a: X(z) = con b = eaTc , se |z| > b. c) La sinusoide: x(t) = sin(t).

1 z = 1 z 1 eaTc zb

(1.37)

Come noto, una funzione circolare pu` essere espressa come somma di esponenziali complessi: o sin(t) = ejt ejt 2j (1.38)

quindi la sua z-trasformata pu` essere ottenuta sfruttando il precedente risultato, ponendo sia a = j che o a = j: X(z) = 1 z z 2j z ejTc z ejTc = bz z sin(Tc ) = 2 z 2 2z cos(Tc ) + 1 z 2cz + 1 (1.39)

con ovvio signicato delle costanti b e c.

1.8

Propriet` della trasformata Z a

La trasformata Z gode di diverse propriet`, anchesse abbastanza simili a quelle della trasformata di Laplace. a Di seguito si elencheranno le pi` signicative, riportando solo le dimostrazioni pi` interessanti. u u a) Linearit`. a La trasformata Z ` un operatore lineare, cio` : e e Z[m x(iTc )] = m Z[x(iTc )] = m X(z) Z[m x(iTc ) + n y(iTc )] = m X(z) + n Y (z) b) Ritardo. Data la sequenza di campioni x(iTc ), derivante dal segnale x(t), si pu` considerare una sequenza r(iTc ), o ritardata di un periodo di campionamento, tale cio` che alli-mo istante assuma il valore che la x(iTc ) aveva all e (i-1)-mo: r(iTc ) = x((i 1)Tc ) Dalla (1.29) si ha infatti: R(z) = r(iTc ) z i = x(Tc )z 0 + r(iTc )z i posto l = i 1 e ricordando che x(Tc ) si ipotizza nullo, si ha: R(z) = r((l 1)Tc ) z l z 1 = z 1 X(z) c) Anticipo. Analogamente a quanto prima descritto si pu` considerare una sequenza anticipata, per la quale si ha: o a(iTc ) = x((i + 1)Tc )A(z) = z X(z) z x(0) d) Valore iniziale.
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

(1.40) (1.41)

(1.42)

(1.43)

(1.44)

(1.45)

12 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

Il valore iniziale della sequenza di campioni vale x(0) = lim X(z)


z

(1.46)

Deriva immediatamente dalla (1.29) espandendo la sommatoria: X(z) = x(0) + x(Tc ) z 1 + x(2 Tc ) z 2 ... e) Valore nale. Analogamente si ha: lim x(iTc ) = lim (1 z 1 ) X(z).
z1

(1.47)

(1.48)

1.9

Antitrasformazione

Si ` visto nel paragrafo 1.7 come passare da un segnale campionato (o meglio dalla successione dei suoi campioni) e alla sua trasformata Z. Si aronter` ora il problema inverso, precisando subito che mentre il passaggio dalla a trasformata Z alla successione di valori x(iTc ) ` univoco, non altrettanto lo ` quello dalla successione al segnale e e x(t) (vedi teorema del campionamento). Esistono diversi modi per ricavare la successione x(iTc ) di cui X(z) ` la trasformata. Il primo deriva e direttamente dalla teoria dello sviluppo in serie di Laurent di una funzione di variabile complessa. Infatti la (1.29) pu` essere anche interpretata come lo sviluppo in serie di potenze della variabile z della funzione o X(z).Si pu` pertanto scrivere: o x(iTc ) =

X(z)z i1 dz

(1.49)

essendo lintegrale eettuato su una linea chiusa che racchiude i poli di X(z) e circonda lorigine [GH1]. Molto pi` immediati da utilizzare sono altri metodi che si basano sulla considerazione che nei problemi reali u la X(z) ` espressa come rapporto di polinomi. e Un primo metodo si basa sullespansione in frazioni parziali con le stesse tecniche impiegate per la trasformata di Laplace, cos` da scomporre la trasformata Z in espressioni semplici di cui siano gi` note le antitrasformate. a Un diverso metodo si presta ad essere facilmente realizzato su calcolatore e si basa sulla seguente identit`, dove a si ` semplicata la notazione relativa al generico termine x(iTc ): e x0 + x1 z 1 + ... = b0 + b1 z 1 + ... + bm z m a0 + a1 z 1 + ... + am z m (1.50)

moltiplicando il primo termine per il denominatore del secondo e confrontando col numeratore, si ottiene: x0 D(z) + x1 z 1 D(z) + ... = N (z) con b0 b1 b2 = = = ...
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

(1.51)

a0 x0 a0 x1 + a1 x0 a0 x2 + a1 x1 + a2 x0 (1.52)

13 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

che ` un sistema di equazioni triangolare, che pu` essere risolto con grande facilit`. Si noti che la somma e o a dei pedici degli addendi in ogni riga ` costante. e Tale metodo, a dierenza del precedente, non fornisce la sequenza x(iTc ) in forma analitica e richiede il calcolo di tutti i campioni intermedi.

1.10

Relazioni tra piani s e z

Le z-trasformate trovate nel precedente paragrafo convergono nei punti del piano esterni ad un cerchio, centrato nellorigine e che racchiude i poli delle trasformate stesse. Questo ` un risultato generale, del tutto analogo e a quello per cui la trasformata di Laplace esiste per valori di s aventi ascissa maggiore di quella della retta parallela allasse immaginario che lascia alla propria sinistra i poli della trasformata stessa. La relazione tra piano s e piano z pu` essere ulteriormente analizzata considerando la trasformazione tra i o punti dei due piani denita dalla z = esTc . In particolare, poich` e e(s+jnc )Tc = esTc ejnc Tc = esTc ej2 = esTc essendo c =
2 Tc ,

(1.53)

tutti i punti s + jnc vengono proiettati nel medesimo punto e(sTc ) del piano z. Ci` in o

perfetta analogia con quanto detto a proposito degli spettri dei segnali campionati. La g. 1.10 mostra la proiezione descritta e la particolarizza per la semifascia principale sinistra del piano s. Essa ha per lati il segmento a e le semirette b e c che si incontrano nel punto allinnito d. Lungo il lato a si ha Re[s] = 0, quindi mod(z) = 1 arg(z) = .... (1.55) Im[s] = = c c ... 2 2 (1.54)

Esso quindi si trasforma nella circonferenza di raggio unitario, centrata nellorigine. Lungo il lato b si ha: z = e(a+ avendo posto a = Re[s]. Esso si trasforma quindi nel segmento b nel piano z, indicato in g. 1.10. Analogamente per il lato c, mentre il punto allinnito si trasforma nellorigine del piano z. Daltra parte per quanto detto in precedenza, anche le altre semifasce sinistre del piano s vengono proiettate nel cerchio unitario e quindi si pu` aermare che lintero semipiano sinistro del piano s viene proiettato allinterno del cerchio, mentre o lasse immaginario diviene la circonferenza di raggio unitario. In conseguenza di quanto detto si pu` dedurre che la z-trasformata della sequenza di campioni di un segnale o (modo) convergente ha poli allinterno del cerchio suddetto, di uno costante o stazionario sulla circonferenza, di uno divergente allesterno di questa. Si noti che le posizioni dei poli indicate in gura sono indicative, dipendendo esse dal valore di Tc .
jc 2

)Tc

= eaTc ej = eaTc

(1.56)

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

14 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

S
b a c b c

r=1

Figura 1.10: Corrispondenza tra i piani s e z

1.11

Somma di convoluzione e funzione di trasferimento

Consideriamo la risposta di un sistema lineare, avente risposta impulsiva g(t), ad un ingresso uc (t) del tipo (1.2). Essa sar` costituita da una successione di risposte impulsive, distanziate di Tc secondi e di ampiezza a proporzionale al valore dellingresso:

y(t) =
i=0

u(iTc ) g(t iTc ).

(1.57)

Se anche luscita ` campionata in modo sincrono con lingresso si ha: e

y(kTc ) =
i=0

u(iTc ) g[(k i)Tc ]

(1.58)

dove lindice k ` relativo ai campioni delluscita. e La (1.58) prende il nome di somma di convoluzione. Luscita campionata y(kTc ) pu` a sua volta essere considerata un segnale campionato del tipo (1.2), la cui o trasformata di Laplace vale quindi:

Yc (s) =
k=0

y(kTc ) eksTc =
k=0 i=0

u(iTc )g[(k i)Tc ] eksTc .

(1.59)

Posto l = k i e quindi sostituendo k = l + i, si ha:


Yc (s) =
l=0 i=0

u(iTc )g(lTc ) elsTc eisTc =


l=0

g(lTc ) elsTc
i=0

u(iTc ) eisTc

(1.60)

tenendo conto che g(lTc ) = 0 per l < 0. Si ottiene pertanto Y (z) = G(z) U (z) avendo posto

(1.61)

G(z) =
l=0

g(lTc ) elsTc .

(1.62)

La funzione G(z) prende il nome di funzione di trasferimento in z del sistema e gioca esattamente lo stesso ruolo della G(s) nel campo dei sistemi continui. Essa ha la forma:
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

15 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

G(z) =

b0 + b1 z 1 + ... + bm z m a0 + a1 z 1 + ... + am z m

(1.63)

ovvero, moltiplicando numeratore e denominatore per z m : G(z) = b0 z m + b1 z m1 + ... + bm a0 z m + a1 z m1 + ... + am (1.64)

I poli della G(z) si ottengono uguagliando il denominatore a zero e hanno un ruolo essenziale nello studio della stabilit` del sistema. Essi sono in numero pari a quello del sistema continuo originario. Il loro numero a denisce lordine del sistema. La G(z) di un sistema a tempo continuo si pu` ottenere (ssato Tc ) trasformando la sua risposta impulsiva o campionata g(iTc ) o lespansione in frazioni parziali della sua funzione di trasferimento G(s) con i metodi visti nel paragrafo 1.7, ovvero ancora con lausilio di tavole di trasformate di cui una ` riportata in appendice. e Le due forme (61) e (62) sono algebricamente equivalenti ma, mentre la prima ` realizzabile in termini di e operazioni di ritardo, sicamente realizzabili, la seconda richiede operazioni di anticipo. La trasformazione espressa dalla (1.62), conserva la risposta impulsiva del sistema originale. Ci` signica che o il sistema discreto descritto dalla G(z) ha una risposta impulsiva g(iTc ) uguale (negli istanti di campionamento) a quella del sistema continuo descritto dalla G(s). Altre sue caratteristiche per` variano, tra queste anche la o risposta in frequenza. Sullargomento si torner` nei successivi paragra. a

1.12

Equazioni alle dierenze

E ora possibile dimostrare che un sistema discreto ammette come rappresentazione nel dominio del tempo unequazione alle dierenze, del tipo: a0 y(i) + a1 y(i 1) + ... + am y(i m) = b0 u(i) + b1 u(i 1) + ... + bm u(i m). (1.65)

Infatti tale tipo di equazione si pu` anchessa riportare alla forma (61), applicando pi` volte la propriet` del o u a ritardo in Z, espressa dalla (42). Ricordando che i termini con indici negativi sono nulli e considerando i = 1, 2, ..., allora y(i) pu` essere vista o come una sequenza di valori, y(i 1) come la stessa ritardata di un passo, eTc . Per ognuna di tali sequenze si pu` considerare la trasformata Z e applicando la (1.29), si ottiene cos` o : Y (z) [a0 + a1 z 1 + ... + am z m ] = U (z) [b0 + b1 z 1 + ... + bm z m ] e quindi: Y (z) = identica alla (1.64). La rappresentazione mediante equazioni alle dierenze ` notevolmente utile in quanto ` immediatamente e e ricavabile dalla G(z) e permette di calcolare velocemente i campioni delluscita di un sistema discreto, nota la sua G(z), i campioni dellingresso e le condizioni iniziali2 :
2 il

(1.66)

b0 + b1 z 1 + ... + bm z m U (z) a0 + a1 z 1 + ... + bm z m

(1.67)

modo pi` semplice, per scopi didattici, di calcolare e visualizzare levoluzione delluscita ` quello di ricorrere ad uno spreadsheet u e

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

16 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

y(i) = a1 y(i 1) ... am y(i m) + b0 u(i) + ... + bm u(i m). dove i coecienti a e b sono stati normalizzati ad a0 .

(1.68)

Poter rappresentare un sistema dinamico con equazioni alle dierenze invece che con equazioni dierenziali, come nel caso dei sistemi a tempo continuo, ` indice di una maggiore semplicit` di trattazione e della possibilit` e a a di trovare metodi di analisi e sintesi diversi da quelli usuali.

1.13

Stabilit` - Modi a

Come visto nel paragrafo 1.10, la trasformata Z stabilisce una corrispondenza tra i punti del piano s e quelli del piano z ed inoltre il semipiano di ascissa negativa del primo si trasforma nel cerchio di raggio unitario e centro nellorigine. Ci` permette di aermare che la trasformata z relativa alla funzione di trasferimento di un o sistema asintoticamente stabile ha tutti i poli allinterno di tale cerchio. Questa aermazione pu` essere vericata considerando le evoluzioni libere campionate di semplici sistemi e o come esse varino al modicarsi della posizione dei poli della relativa funzione di trasferimento in z.

1.14

Poli reali

Si consideri un sistema continuo caratterizzato dalla funzione di trasferimento k s+a e si tralasci lorgano di tenuta. La sua funzione di trasferimento in z sar` (vedi par 1.7): a G(s) = G(z) = con polo in b = eaTc . I campioni delluscita, noto lingresso e le condizioni iniziali, possono essere ricavati applicando la (1.68): y(i) = by(i 1) + ku(i) e posto u(i) = 0 per i = 0, 1, 2, ... e y(0) = c, si ottiene: (1.71) k 1 bz 1 (1.69)

(1.70)

y(1) = b c y(2) = b2 c ... y(k) = bk c ed ` immediato vericare che la successione y(k) converge solo se mod(b) < 1. Si pu` inoltre osservare che per e o b < 0 si ha un comportamento alternante che non trova riscontro nellambito dei sistemi continui. Da rilevare il caso a = 0, in cui la G(s) rappresenta un integratore. Si ha allora b = 1 e ovviamente la risposta libera ` una e costante. Andamenti della successione relativa al modo aperiodico considerato sono mostrati in g. 1.11 per diversi valori di b.
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

(1.72)

17 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

b>1

-1<b=0

Im

b=1 6 7 0<b<1 5 4 3 2 1

b=-1

Re

b<-1

b=0

Figura 1.11: Poli reali e relative sequenze numeriche Si consideri ora un sistema avente funzione di trasferimento G(s) = 1+
2

k
2

k (a2 + 2 ) (s + a)2 + 2

(1.73)

dove a = 2 ed i poli sono in a . La funzione di trasferimento in z `: e


+ bk b sin(Tc ) z G(z) = 2 z 2b cos(Tc ) z + b2
2

(1.74)

con poli in b [cos(Tc ) j sin(Tc )] = b ejTc essendo b = eaTc . I campioni delluscita, per ingresso nullo sono: y(k) = 2b cos(Tc ) y(k 1) b2 y(k 2) e si puo dimostrare che, con opportuna scelta delle condizioni iniziali y(0) e y(1), valgono: y(k) = bk cos(kTc ) y(0) Anche in questo caso la successione converge solo se mod(b) < 1. La g. 1.12 mostra i luoghi a pulsazione naturale e smorzamento costanti. I luoghi del piano s a parte reale e immaginaria costanti (rette orizzontali e verticali) si trasformano rispettivamente in circonferenze e raggi nel piano z, come si pu` rilevare immediatamente osservando le espressioni dei poli in z o comunque ricordando o che: z = esTc (1.77) (1.76) (1.75)

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

18 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

ed essendo s = a j, si ha mod(z) = eaTc , arg(z) = arctan sin(Tc ) cos(Tc ) = Tc (1.78)

Figura 1.12: Luoghi a n e costanti sul piano z Andamenti delle successione relativa al modo pseudoperiodico considerato sono mostrati in g. 1.13 per diversi valori di b e . Su tale gura ` specicato anche il valore di arg(z) per le diverse successioni considerate. e Esso ` ovviamente una misura della frequenza di campionamento rispetto alla frequenza propria del modo. e

Figura 1.13: Poli complessi e relative sequenze numeriche

1.15

Caratteristiche delle funzioni di trasferimento in z

Diverse caratteristiche importanti del tipo di processo possono essere ricavate dallosservazione della sua funzione di trasferimento G(z). La pi` importante ` ovviamente la stabilit`, di cui gi` si ` detto in un precedente paragrafo u e a a e e per la cui analisi esistono metodi simili al criterio di Routh, per cui si rimanda ai testi sullargomento (vedi ad es. [Bu1]). Il guadagno k di un processo con comportamento proporzionale pu` essere ottenuto utilizzando o il teorema del valore nale alla sua uscita quando al suo ingresso ` applicato un gradino unitario: e k = limz1 (1 z 1 ) b0 + b1 + ... + bm z G(z) = limz1 G(z) = z1 a0 + a1 + ... + am (1.79)

I processi con comportamento integrale hanno un polo in z = 1, quindi la loro G(z) pu` essere fattorizzata o come G(z) =
Rev. 2.0

1 b0 + b1 + ... + bm 1 = G (z) 1 1z a0 + a1 + ... + am 1 z 1


Appunti di Sistemi di Controllo Digitale

(1.80) 19 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

La pendenza della risposta ad un gradino unitario, esauriti i transitori, ` data dal guadagno della G (z). e Diversi sistemi presentano un tempo morto o ritardo di trasporto nella loro risposta impulsiva. Ci` ` o e particolarmente frequente nella realizzazione di controllori mediante microcalcolatori, a causa dei tempi di calcolo connessi con lalgoritmo di controllo. La funzione di trasferimento di un sistema con tempo morto Tm `: e G(s) = esTm e nel dominio di z: G(z) = z d con d = Tm Tc intero. (1.82) (1.81)

Quindi in generale la funzione di trasferimento in z di un sistema comprendente un tempo morto ` del tipo: e G(z) = z d G (z) (1.83)

Il caso in cui d non sia intero (e non si reputi opportuno approssimarlo) ` piuttosto complesso e non sar` e a qui trattato. Anch` una funzione di trasferimento G(z) sia sicamente realizzabile essa deve essere causale. Ci` signica e o che lequazione alle dierenze del tipo (1.64) che ne deriva non deve contenere a secondo membro termini del tipo u(i + k), ma solo u(i), u(i 1), etc. Pertanto nellespressione (1.63) e nelle seguenti deve risultare:

a0 <> 0 a1 <> 0 ...

b0 <> 0 se a0 = 0 e b1 <> 0 (1.84)

Ci` si pu` esprimere aermando che il grado del numeratore della (1.64) deve essere minore o al massimo o o uguale a quello del denominatore. La risposta in frequenza di un sistema a segnali campionati G(z) pu` essere ricavata con la sostituzione o z = ejTc . Ricordando che la G(z) rappresenta anche un segnale (la risposta impulsiva g(t)) campionato si deduce che la risposta armonica G(j) avr` le note caratteristiche di periodicit` e problemi di aliasing. a a Ad esempio, si consideri un sistema continuo con un polo semplice, per cui ` gi` stata ricavata la G(z) nel e a paragrafo 1.14, e si eettui la sostituzione specicata. k 1 b z 1 k k = = 1 b ejTc 1 b cos(Tc ) + j b sin(Tc ) k [1 b cos(Tc ) jb sin(Tc )] 1 2 b cos(Tc ) + b2

G(z) =

= =

(1.85)

Da cui si possono ricavare parti reale e immaginaria e quindi modulo e fase della risposta armonica, che per la presenza delle funzioni trigonometriche sono andamenti a lobi. Nel caso dei sistemi campionati la risposta armonica, periodica, non ha lutilit` progettuale che ha nel caso dei sistemi continui. Per questa ragione la a necessit` di calcolarla ` piuttosto rara. Ovviamente diversa ` la situazione nel campo della progettazione di a e e ltri digitali.
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

20 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

1.16

Introduzione alla sintesi

Nellintroduzione a questa dispensa ` stato descritto un semplice sistema di controllo comprendente un cale colatore, senza entrare nei dettagli della funzione delle varie parti. La g. 1.14 mostra uno schema a blocchi che ne descrive il funzionamento. In esso M (z) rappresenta lalgoritmo realizzato sul calcolatore, T (s) lorgano di tenuta, G(s) lamplicatore, il motore ed il carico, H(s) il trasduttore ed inne C un organo di campionamento. I valori del segnale di riferimento si assumono generati dal terminale con opportuno sincronismo, e rappresentati dalla sequenza di impulsi r(iTc ). In questo schema convivono blocchi di diversa natura: alcuni intrinsecamente discreti, altri continui, altri ancora di conversione. Essi hanno diversi tipi di modelli, per poter studiare il comportamento del sistema e sintetizzare lorgano di controllo occorre riportarli tutti ad uno stesso genere di rappresentazione; quale esso sia dipende dal tipo di approccio che si vuole impiegare. Due sono le possibilit`: considerare il controllore discreto come approssimazione di uno continuo o studiare tutto il sistema a con le tecniche proprie dei sistemi a segnali campionati, precedentemente descritte. Il primo metodo pu` essere o impiegato quando la frequenza di campionamento ` sucientemente alta rispetto a quelle in gioco durante il e funzionamento del sistema. Si pu` allora determinare la funzione di trasferimento di un controllore continuo o M (s) che fornisca le prestazioni desiderate e poi convertirla in M (z) ed in equazione alle dierenze per la realizzazione dellalgoritmo ed una eventuale verica del progetto. Seguendo tale via lorgano di campionamento o si trascura o viene schematizzato come un ltro passa basso (vedi par 1.4).

s(iTc)

T(s)

s(t)

G(s)

y(t)

M(z) C
r(iTc)

H(s)

Term
Figura 1.14: Semplice asservimento di posizione La seconda possibilit` richiede invece la discretizzazione dei blocchi T (s) e G(s) per ricavare un modello a utilizzabile con questo tipo di sistemi, spesso espresso in termini di trasformata Z. La trasformata Z permette di determinare esattamente il valore delle grandezze agli istanti di campionamento, ma non fornisce informazioni negli intervalli tra questi. Tale informazione pu` essere comunque estrapolata se si ` sicuri che siano soddisfatte o e le condizioni del teorema del campionamento. Generalmente lapproccio di pi` facile e sicuro impiego ` il primo. u e Esso fornisce risultati soddisfacenti se le prestazioni richieste non sono molto stringenti e permette di impiegare le usuali tecniche di progettazione dei sistemi continui. Il secondo approccio permette invece di considerare tutti i dettagli del progetto, ma richiede una specica competenza da parte del progettista. I paragra che seguono sono dedicati alle procedure impiegabili per ottenere modelli tempo discreto di sistemi continui e ad alcuni esempi di metodi di sintesi, utilizzati soprattutto per mettere in luce la diversa losoa di progettazione.

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

21 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

1.17

Discretizzazione di sistemi continui

Si ` visto nel precedente paragrafo come nelleettuare loperazione di discretizzazione di un sistema continuo e sia talora necessario tenere conto della presenza di un organo di tenuta a monte dei blocchi costituenti il sistema, mentre altre volte ci` non sia necessario. Si studier` innanzitutto la prima eventualit`. Si consideri la funzione o a a di trasferimento complessiva G(s) di un insieme di blocchi lineari preceduti da un dispositivo di tenuta del tipo descritto nel par 1.4, la cui funzione di trasferimento si riporta per comodit`: a T (s) = 1 esTc s (1.86)

Occorre quindi determinare la funzione di trasferimento in z di T (s) G(s), che risulta: T (z) G(z) = Z (1 esTc ) dove la funzione
G(s) s

G(s) G(s) = (1 z 1 ) Z s s

(1.87)

pu` essere trasformata con i metodi descritti nel paragrafo 1.5. Esistono anche altri o

metodi, di pi` agevole applicazione, che partono dallequazione dierenziale che descrive il sistema continuo u (immediatamente ricavabile dalla G(s)): dn y dn1 y dm u + an1 n1 + ... + a0 y = bm m + ... + b0 u dtn dt dt (1.88)

dove con u e y si sono indicati rispettivamente lingresso u(t) e luscita y(t) del sistema. Secondo il pi` semplice u di tali metodi, se lintervallo di campionamento ` sucientemente breve, al suo interno si possono assumere e costanti il valore delle funzioni e quello delle loro derivate, che possono essere approssimate (ad esempio) usando le dierenze allindietro. Si ha cos` :

u(t) dy dt d2 y dt2

= = = ...

u(iTc ), y(t) = y(iTc ) y(iTc ) y[(i 1)Tc ] Tc y(iTc ) 2y[(i 1)Tc ] + y[(i 2)Tc ] Tc

(1.89)

e analogamente per le derivate successive e quelle di u. Tali espressioni, sostituite nella (1.88), permettono di ricavare unequazione alle dierenze che la approssima. Un altro metodo, che si basa sulla tecnica di integrazione trapezoidale, verr` illustrato con un semplice esempio. Si consideri il modello di un integratore nel dominio del a tempo: y(t) = e la si integri applicando la tecnica trapezoidale: y(kTc ) = ma vale anche:
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

1 T

u(p)dp
0

(1.90)

Tc T

k i=0

u(iTc ) + u((i 1)Tc ) 2

(1.91)

22 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

y((k + 1)Tc ) = sottraendo le due:

Tc [u((i + 1)Tc ) + u(iTc )] T i=0 2

(1.92)

Tc [u(kTc ) + u((k 1)Tc ] (1.93) 2T considerando le trasformate Z delle sequenze y(kTc ), y((k 1)Tc ), u(k) e u((k 1)Tc ) e le loro trasformate Z, y(kTc ) y[(k 1)Tc ] = si ottiene: Y (z) Tc z + 1 = U (z) 2T z 1 da cui, tenendo conto che la trasformata di Laplace della (1.90) ` G(s) = e s=
1 sT

(1.94) e confrontando, si ha:

2 z1 (1.95) Tc z+1 sostituzione che permette di ottenere la trasformata Z (approssimata) di un segnale o di una funzione di trasferimento da quella di Laplace. La (1.95) prende il nome di trasformazione bilineare o di Tustin. I metodi approssimati descritti hanno il pregio di fornire il modello tempo discreto del sistema molto pi` facilmente u di quelli descritti nel paragrafo 1.5. Le dierenze di comportamento tra i modelli discreti che si ottengono applicando i diversi metodi allo stesso sistema continuo, vanno analizzate con cautela. Non ` infatti detto che e progettando un sistema di controllo utilizzando uno dei metodi cosiddetti approssimati di discretizzazione, non si possano ottenere prestazioni migliori che se si fossero usati metodi basati sulla denizione di trasformata Z (1.29). Questi infatti conservano esattamente nel modello discreto i campioni della risposta impulsiva del modello continuo, ma non altre caratteristiche altrettanto importanti per la sintesi di un sistema di controllo, come la risposta in frequenza. Interessanti confronti sono svolti in [Ja1] e [Ka1].

1.18

Un regolatore PID discreto

Uno dei dispositivi di controllo di pi` largo impiego nel campo dei sistemi continui ` senzaltro il regolatore u e PID, la cui uscita nel dominio del tempo c(t), pu` essere espressa come: o
t

c(t) = kp e(t) + ki
0

e(p)dp + kd

de(t) dt

(1.96)

in funzione dellingresso del regolatore e(t), errore del sistema di regolazione. Una possibile scelta per la discretizzazione della (1.96) ` di approssimare lintegrale con la formula trapee zoidale (ovvero con lapprossimazione di Tustin) e la derivata con le dierenze allindietro: si ottiene cos` per listante i-mo: 1 kd c(i) = kp e(i) + ki Tc [(e(0) + e(1)) + (e(1) + e(2)) + ... + (e(i) + e(i 1))] + [e(i) e(i 1)] 2 Tc e sottratta dalla precedente, ottenendo cos` : c(i) = =
Rev. 2.0

(1.97)

dove si ` posto e(h) = e(hTc ) e c(i) = c(iTc ). Unanaloga espressione pu` essere scritta per listante (i 1)-mo e o kd ki Tc [e(i) + e(i 1)] + [e(i) 2e(i 1) + e(i 2)] = 2 Tc c(i 1) + a1 e(i) + a2 e(i 1) + a3 e(i 2) (1.98) c(i 1) + kp [e(i) e(i 1)] +
Appunti di Sistemi di Controllo Digitale

23 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

La (1.98) rappresenta quindi lequazione alle dierenze che descrive una possibile realizzazione in campo discreto del regolatore PID, valida per tempi di campionamento piccoli rispetto alle costanti di tempo dellintero sistema. Altre espressioni possono essere ricavate utilizzando diverse approssimazioni dellintegrale e della derivata. La (1.98) pu` essere immediatamente implementata su un microcalcolatore. A titolo esclusivamente o indicativo si riporta il listato in uno pseudolinguaggio di un possibile programma che implementa la (1.98). In esso si assumono disponibili due funzioni IN A e OU T A che permettono rispettivamente lingresso e luscita delle grandezze analogiche. Unaltra funzione, che si assume presente, ` la W AIT (Tc ) che attende sia trascorso e un tempo pari allintervallo di campionamento da una precedente chiamata, prima di permettere lesecuzione dellistruzione successiva. REM IN IZIALIZZAZION E E1 = 0 : E2 = 0 : C0 = 0 A1 = ....... A2 = ....... A3 = ....... Tc = ....... REP EAT REM CICLODICON T ROLLO IN A(E0) C1 = C0 + A1 E0 + A2 E1 + A3 E2 OU T A(C1) C0 = C1 E2 = E1 E1 = E0 W AIT (Tc ) F OREV ER Il programma riportato, pur nella sua schematicit`, permette alcune considerazioni sulle risorse che devono essea re presenti in un calcolatore che debba essere impiegato per compiti di controllo. Escludiamo qui per semplicit` a ladozione di un sistema operativo in tempo reale (RTOS); supponiamo, ad esempio, di operare su un PC sotto DOS. Innanzitutto occorre la capacit` di comunicare con il mondo esterno, espressa qui dalle funzioni IN A e a OU T A. Queste funzioni, pur concettualmente semplici, richiedono circuiti dedicati (convertitori, campionatori, etc) e inoltre un insieme di funzioni per la loro gestione che, qualora si impieghino schede di acquisizione dati commericiali, sono in genere fornite a corredo per i principali linguaggi. Unulteriore necessit` ` che lesecuzione del programma avvenga con tempi controllabili (funzione W AIT ) ae dal programmatore. Ci` ` generalmente ottenuto impiegando un clock in tempo reale che scandisce gli istanti di oe campionamento, generalmenti collegati ad una linea di interruzione (interrupt) del sistema. Questa prestazione richiede la presenza di un circuito dedicato (talvolta ` suciente il clock di sistema) e di funzioni per la gestione e delle interruzioni. Finalmente si pu` notare che le istruzioni IN A(E0) e OU T A(C1) non vengono eseguite contemporaneameno te, ma tra di esse ` presente un ritardo connesso al calcolo della variabile C1. Se tale ritardo non ` trascurabile e e rispetto al tempo di campionamento Tc , di esso si deve tenere conto nella funzione di trasferimento del processo.
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

24 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

1.19

Sistemi a tempo di assestamento nito

E noto dallo studio dei sistemi di controllo a tempo continuo che il loro errore non pu` annullarsi dopo un o tempo nito dallapplicazione di un disturbo o di una variazione dellingresso, ma che esso pu` solo tendere a o zero quando il tempo tende allinnito. Una prerogativa dei sistemi a tempo discreto ` di permettere invece e di imporre che il tempo di assestamento sia limitato. Il metodo di progettazione che qui si esporr` garantisce a tale condizione solo negli istanti di campionamento. Esistono peraltro altri metodi in grado di assicurare ci` o per ogni valore di t, anche durante gli intervalli tra un istante di campionamento e laltro (sistemi a risposta piatta). Si denoti con F (z) la funzione di trasferimento in z di un sistema la cui uscita sia uguale allingresso ritardato di n intervalli di campionamento, pari a: F (z) = z n (1.99)

R(z)

E(z)

D(z)

U(z)

G(z) Plant

Y(z)

Digital controller

Figura 1.15: Sistema di controllo Si consideri ora il sistema di regolazione di g. 1.15, la cui funzione di trasferimento a ciclo chiuso ` data da: e W (z) = R(z)G(z) 1 + R(z)G(z) (1.100)

che fornisce il valore della funzione di trasferimento in z del regolatore. Il valore di n non ` per` arbitrario, ma e o va scelto in modo da garantire la sica realizzabilit`, cio` la causalit`, del regolatore stesso. Assumendo per la a e a G(z) del processo e per la R(z) unespressione del tipo (1.68): G(z) = Ng (z) Dg (z) R(z) = Nr (z) Dr (z) (1.101)

e chiamando gng ,gdg ,gnr ,gdr rispettivamente i gradi dei polinomi Ng ,Dg ,Nr ,Dr , per la realizzabilit` di G(z) e a R(z) deve essere: gng gdg La W (z) pu` essere messa nella forma: o W (z) = Ng (z) Nr (z) Dg (z)Dr (z) + Ng (z)Nr (z) (1.103) gnr gdr (1.102)

La dierenza tra il numero di poli e quello degli zeri della W (z) vale, per le scelte fatte, n ed ` pari a: e n = (gd g + gd r) (gn g + gn r) = (gd r gn r) + (gd g gn g) che, scegliendo per il regolatore gd r = gn r, diviene: n = gd g gn g
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

(1.104)

(1.105) 25 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

1.5

Y(t)

0.5

U(t)
500 -500
Figura 1.16: Comportamento di un sistema a tempo di assestamento nito: a- uscita b- ingresso Pertanto il minimo ritardo (espresso in intervalli di campionamento) che occorre accettare per garantire la realizzabilit` del regolatore ` pari alla dierenza tra il grado del denominatore e quello del numeratore della a e funzione di trasferimento in s del processo. Questo tipo di sintesi produce abbastanza spesso un comportamento del sistema troppo oscillatorio. Infatti luscita assumer` il valore desiderato negli istanti di campionamento, ma non fra essi. La g. 1.16 illustra tale a tipo di comportamento. In essa il diagramma in alto rappresenta luscita y(t) del sistema, mentre quello in basso il suo ingresso c(t), fornito dal regolatore. Tale comportamento ` conseguenza dellingenuit` con cui sono e a state date le speciche sul comportamento del sistema; risultati completamente diversi possono essere ottenuti completandole, come si fa nel caso dei regolatori a risposta piatta. In questo caso si impone al sistema che dopo m passi di campionamento luscita sia uguale al riferimento ed inoltre lingresso del processo risulti costante. La procedura di sintesi di tale tipo di sistemi non verr` qui esposta. Per essa si rimanda [Is1] e [Is2]. In generale i a metodi di sintesi diretta del tipo illustrato vengono utilizzati con cautela in quanto molto sensibili alle variazioni parametriche del processo. Per questaragione essi (specialmente il secondo) vengono frequentemente impiegati in connessioni a dispositivi che permettono la stima in linea dei parametri del processo da controllare.

1.20

Un cenno sullidenticazione parametrica

Si ` aermato precedentemente che lo studio di un sistema a tempo discreto pu` risultare molto pi` agevole di e o u quello di un sistema a tempo continuo. Un caso in cui ci` ` particolarmente evidente ` quello dellidenticazione dei parametri di un sistema, ad oe e esempio del processo da controllare. Supponiamo che esso sia descritto da unequazione del tipo della (1.68), che qui si riporta per comodit`: a y(i) = a1 y(i 1) ... am y(i m) + b0 u(i) + ...bm u(i m) Si considerino due vettori: un vettore dei parametri p denito come: pT = [a1 , ..., am , b0 , ...bm ]
Rev. 2.0 Appunti di Sistemi di Controllo Digitale

(1.106)

(1.107) 26 di 27

Capitolo 1. Introduzione

Giovanni Ulivi, Stefano Panzieri

ed uno q delle misure allistante i-mo: q T = [y(i 1), ..., y(i m), u(i), ..., (u(i m)] In tal caso lequazione alle dierenze pu` essere riscritta come: o
T y(i) = qi p

(1.108)

(1.109)

Eettuando m misure in m istanti di campionamento diversi, ` possibile scrivere m equazioni: e y(0) = ... y(m) =
T qm T q0 p

(1.110) p

e costruire, pertanto, un sistema di m equazioni in m incognite che pu` essere agevolmente risolto. o Ovviamente nei casi reali le cose non sono cos` semplici e le misure contenute nel vettore q sono quasi sempre aette da errori. Per ridurre il loro eetto ` allora necessario eettuare pi` di m misure e risolvere il e u sistema (1.111) con metodi che si basano sul principio dei minimi quadrati.

BIBLIOGRAFIA
[GH1] Ghizzetti, Analisi matematica, vol.2. Veschi. [BU1] Buhler, Reglages echantillonnes. Presses polytechniques romandes. [JA1] Jacquot, Modern digital control systems. Dekker. [KA1] Katz, Digital control systems using microcomputers. Prentice-Hall. [IS1] Iserman, Digital control systems. Springer Verlag. [IS2] Isidori, Sistemi di controllo. Siderea.

Rev. 2.0

Appunti di Sistemi di Controllo Digitale

27 di 27