Lezione 6.

Transcript

Lezione 6.
Lezione 6.
Sistemi di controllo digitale:
sintesi a tempo continuo
(realizzazione digitale di controllori analogici)
F. Previdi - Controlli Automatici - Lez. 6
1
Schema della lezione
1. Introduzione
2. Scelta del periodo di campionamento
3. Filtri antialiasing
4. (Ri)-formulazione del problema di sintesi
5. Metodi di discretizzazione basasti su trasformazioni bilineari
6. Altri metodi di discretizzazione del regolatore
7. Matlab
F. Previdi - Controlli Automatici - Lez. 6
2
1. Introduzione
Il progetto di un controllore digitale può svilupparsi secondo due linee
alternative:
• La prima si basa su tecniche di progetto a tempo continuo basate su un
modello a tempo continuo del sistema e su metodi di realizzazione digitale
del controllore analogico progettato. Il controllore a tempo continuo
ottenuto viene implementato mediante un modello ibrido esternamente a
tempo continuo. Si parla di “punto di vista del processo” o di progetto
basato su “modelli riferiti al processo” (process-oriented model)
• La seconda si basa su tecniche di progetto direttamente a tempo discreto
basate su un modello ibrido esternamente a tempo discreto del sistema. Il
controllore viene quindi progettato direttamente a tempo discreto . Si parla
in questo caso di “punto di vista del controllore” e il modello ibrido
esternamente a tempo discreto del sistema è anche detto “modello riferito
al controllore” (controller-oriented model).
F. Previdi - Controlli Automatici - Lez. 6
3
E’ già stato osservato che lo schema a campionamento dell’errore si
presta ad una progettazione da un punto di vista completamente
analogico.
y(t)
e*(k)
w(t) e(t)
u*(k)
u(t)
A/D
R*(z)
G(s)
D/A
+_
e(t)
A/D
e*(k)
R*(z)
u*(k)
D/A
u(t)
R(s)
Punto di vista
del processo
w(t) e(t)
+_
R(s)
u(t)
G(s)
F. Previdi - Controlli Automatici - Lez. 6
y(t)
4
E’ quindi possibile progettare, per il sistema sotto controllo descritto
da G(s), un controllore a tempo continuo con funzione di
trasferimento R(s) usando i metodi (noti).
w(t) e(t)
y(t)
u(t)
G(s)
R(s)
+_
Il regolatore analogico descrive ciò che in realtà è un sistema ibrido,
esternamente a tempo continuo.
e(t)
u(t)
R(s)
e(t)
A/D
e*(k)
R*(z)
u*(k)
D/A
F. Previdi - Controlli Automatici - Lez. 6
u(t)
5
Si pone quindi un problema di realizzazione digitale (approssimata)
di controllori analogici che può essere formulato come segue:
Determinare la funzione di trasferimento R*(z) in modo tale che
il legame tra u(t) ed e(t) sia una buona approssimazione di quello
descritto dal controllore analogico con funzione di trasferimento R(s).
La progettazione a campionamento dell’errore segue quindi
il seguente schema:
• si scrive un modello a tempo continuo del sistema sotto controllo;
• si progetta un controllore utilizzando tecniche a tempo continuo;
• si sceglie il periodo di campionamento;
• si discretizza il controllore.
Infine si testa l’algoritmo di controllo digitale sul sistema “vero”
inserendolo nello schema a campionamento dell’uscita.
F. Previdi - Controlli Automatici - Lez. 6
6
Bisogna quindi affrontare due problemi:
• Scegliere un valore per il periodo di campionamento (Sez 2);
• discretizzare un controllore analogico (Sez 5 e seguenti).
F. Previdi - Controlli Automatici - Lez. 6
7
2. Scelta del periodo di campionamento
La scelta del periodo di campionamento dipende da numerosi
fattori, principalmente connessi alla velocità del sistema di
controllo (ωc), alla potenza di calcolo disponibile ed alla
complessità dell’algoritmo.
La pulsazione di Nyquist deve essere superiore alla pulsazione
critica (con un certo margine, per es. un fattore 10):
N  10c
da cui
s  20c
2
quindi 2f s  20c cioè
 20c
T
infine
T

10c
F. Previdi - Controlli Automatici - Lez. 6
8
E’ utile esprimere tale vincolo in funzione della durata dei
transitori del sistema di controllo. Infatti, si può affermare che
la durata dei transitori (per es. il tempo di assestamento della
risposta a scalino) è pari a circa 5 volte la costante di tempo
dominante del sistema, che, nella (ragionevole) ipotesi che il
sistema di controllo abbia transitori ben smorzati, può essere
approssimata mediante il valore 1
c
5

ta ta
Quindi, essendo t a 
si ha T 


c
10c 50 16
ta
T
16
(p.e. 20 campioni per transitorio)
F. Previdi - Controlli Automatici - Lez. 6
9
3. Filtri antialiasing
Se il segnale di ingresso presenta non trascurabili componenti “in
alta frequenza”, ovvero a pulsazioni    N , (per esempio è
affetto da disturbi a spettro sensibilmente diverso da zero su una
banda di frequenze con estremo superiore molto maggiore di ωc) e
non è possibile scegliere un periodo di campionamento in modo
da aumentare il valore di  N , si può salvaguardare
l’informazione utile anteponendo al convertitore A/D un filtro
analogico passabasso con pulsazione di taglio pari a circa  N .
E’ necessario tenere conto della presenza di tale filtro
nell’anello di controllo.
F. Previdi - Controlli Automatici - Lez. 6
10
Perchè la presenza di un filtro antialiasing F(s) non alteri
sensibilmente le prestazioni dell’anello di controllo esso
• non deve modificare l’ampiezza della banda di controllo, cioè
F  jc   1
• non deve ridurre eccessivamente il margine di fase, cioè
arg F  jc  piccolo
• deve attenuare significativamente già poco oltre la
pulsazione critica
Queste richieste risultano in filtri di ordine potenzialmente elevato
(4-6 poli) e in tempi di campionamento estremamente brevi.
F. Previdi - Controlli Automatici - Lez. 6
11
Esempio
Si supponga di voler tarare un filtro antialiasing del primo ordine
1
F s  
s
1
 AA
Se si desidera avere un’attenuazione di almeno un fattore 10 a
pulsazioni superiori a quella di Nyquist si ha che
N
 AA 
10
Se si desidera che F  jc   1 con sfasamento “piccolo” si ha che
 AA
c 
10
cioè  N  100c
ta
(approx T 
)
150
arg F  jc   6
Tempi di campionamento
molto brevi
F. Previdi - Controlli Automatici - Lez. 6
12
Esempio
Si consideri il seguente sistema di controllo a tempo continuo
w(t) e(t)
+_
dove G s  
1
s 1  0.1s 
R(s)
u(t)
G(s)
y(t)
Rs   20
Si verifichino le proprietà del sistema con una implementazione
digitale del controllore al variare del tempo di campionamento.
w(t) e(t)
+_
A/D
e*(k)
R*(z)
u*(k)
D/A
F. Previdi - Controlli Automatici - Lez. 6
u(t)
G(s)
y(t)
13
Diagramma di Bode - Modulo
L s  
20
s1  0.1s 
c  12.5 rad/s
50
 m  38.7
40
30
Sistema poco smorzato, si valuta ta
500
 1.05 s
 m c
10
dB
ta 
20
0
T  0.1 s
-10
-20
(solo 10 campioni per transitorio)
-30
-40
-1
10
0
1
10
10
2
10
pulsazione
F. Previdi - Controlli Automatici - Lez. 6
14
uscita
2
azione di controllo
20
Sistema a tempo continuo
Sistema a tempo continuo
1.8
15
1.6
10
1.4
1.2
5
1
0
0.8
0.6
-5
0.4
-10
0.2
0
0
Sistema con controllore digitale
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
-15
0
Sistema con controllore digitale
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Il ritardo intrinseco di conversione (ZOH) dà uno sfasamento grande
a c
T 180
 m  c
 35.8
2 
T 180
c
rapporto
  180 con s  5c
Infatti  m  c
troppo basso!
2 
s
F. Previdi - Controlli Automatici - Lez. 6
15
c
Per avere  m  5 bisogna che  180  5
s
s
 36
e quindi
c
Scegliendo s  40c  500 rad/s cioè T  0.0125 s
uscita
1.4
azione di controllo
20
Sistema a tempo continuo
Sistema a tempo continuo
1.2
15
1
10
0.8
5
0.6
0
0.4
-5
0.2
Sistema con controllore digitale
0
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
-10
0
Sistema con controllore digitale
0.2
0.4
0.6
F. Previdi - Controlli Automatici - Lez. 6
0.8
1
1.2
1.4
1.6
1.8
2
16
4. Riformulazione del problema di sintesi
Come già detto, la progettazione di controllori digitali
per discretizzazione di controllori analogici viene
affrontata seguendo il seguente schema:
1. si progetta un controllore utilizzando tecniche a tempo
continuo, basandosi su un modello a tempo continuo del
sistema sotto controllo.
2. si sceglie il periodo di campionamento (cfr. lucidi
precedenti).
3. si discretizza il controllore
F. Previdi - Controlli Automatici - Lez. 6
17
R
1. La progettazione di un regolatore a tempo continuo
è fatta utilizzando i metodi noti (loop shaping, taratura di PID,
luogo delle radici, etc...):
w(t) e(t)
y(t)
u(t)
G(s)
R(s)
+_
2. Scelto il periodo di campionamento, si “cerca” una legge di
controllo a tempo discreto
* in modo tale che il legame tra u(t)
ed e(t) nel sistema ibrido
e*(k)
e(t)
u*(k)
u(t)
A/D
R

R*(z)
D/A
sia una buona approssimazione di quello descritto dal controllore
analogico con funzione di trasferimento R(s).
e(t)
u(t)
R(s)
F. Previdi - Controlli Automatici - Lez. 6
18
E’ noto che (Cfr Lez 4)
1R * 


R
s

H
La discussione sviluppata precedentemente consente di eliminare
dal problema di sintesi ogni riferimento esplicito alla funzione 1
R
H
Infatti, se per un assegnato periodo di campionamento,
è stato
progettato in modo tale da avere un’eccedenza di margine di fase
adeguata per compensare gli effetti del ritardo di conversione (ed
eventualmente di elaborazione) e lo sfasasmento introdotto da
eventuali filtri antialiasing, è lecito riformulare il problema di
discretizzazione come segue:
Determinare
* in modo tale che
R
*
 
RsR
F. Previdi - Controlli Automatici - Lez. 6
19
Per risolvere questo problema si può pensare di utilizzare l’inversa
della trasformazione di campionamento
1
s  log z
T
ottenendo

R


R
z

In questo modo però si ottiene
* non razionale.
R 
*
Per questa ragione si usano metodi per trovare una funzione di
trasferimento
* razionale la cui risposta in frequenza
approssimi la risposta in frequenza di una funzione di trasferimento
a tempo continuo
assegnata, per   0,  N 
R
R
F. Previdi - Controlli Automatici - Lez. 6
20
5. Metodi di discretizzazione basati su
trasformazioni bilineari
e(t)
R(s)
?
u(t)
Rs   csI 
 x t   Ax



e(t)
A/D
?
e*(k)
R*(z)
u*(k)
D/A
u(t)
Il controllore a tempo discreto
sarà descritto mediante
equazioni alle differenze.
E’ quindi sensato provare ad
usare metodi di integrazione
numerica.
Si ottengono le cosiddette trasformazioni bilineari.
F. Previdi - Controlli Automatici - Lez. 6
21
La forma più generale di trasformazione bilineare è la seguente:
s
1

s
1

s
2
 s
1

Eulero in avanti
Eulero indietro
Trapezio (metodo di Tustin)
F. Previdi - Controlli Automatici - Lez. 6
22
Nota
• Queste relazioni trasformano funzioni di trasferimento razionali
in funzioni di trasferimento razionali.
R
R
• Si può dimostrare che se
ha n poli, anche
* ha n poli.
Ma dove finiscono i poli? In particolare: dove finiscono i poli
a parte reale negativa di
?
F. Previdi - Controlli Automatici - Lez. 6
R
23
Posizione dei poli: Eulero in avanti
Il semipiano reale negativo nel dominio s, cioè
viene trasformato nel semipiano
Im
e  z
es
Im
z
s
1
Re
Re
C’è un rischio instabilità!
F. Previdi - Controlli Automatici - Lez. 6
24
Posizione dei poli: Eulero indietro


e
s
viene trasformato nel cerchio di raggio 0.5 e centro 0.5
Il semipiano reale negativo nel dominio s, cioè
Im
Im
z
s
1
Re
Re
C’è una riduzione delle possibili dinamiche
F. Previdi - Controlli Automatici - Lez. 6
25
Posizione dei poli: Tustin


e
s
viene trasformato nel cerchio di raggio 1 e centro l’origine
Il semipiano reale negativo nel dominio s, cioè
Im
Im
z
s
1
Re
F. Previdi - Controlli Automatici - Lez. 6
Re
26
6. Altri metodi di discretizzazione
Esistono altri metodi per la discretizzazione di un controllore
analogico.
• Un primo metodo fa riferimento alla già vista analisi a tempo
discreto dei sistemi ibridi.
• Il secondo esegue una trasformazione diretta di poli e zeri
(Pole/Zero matching) mediante trasformazione di campionamento.
• Il terzo è basato sull’equivalenza della risposta allo scalino (Step
response equivalence)
F. Previdi - Controlli Automatici - Lez. 6
27
Discretizzazione per tenuta e campionamento (“esatta”)
Questo metodo è basato sull’idea di adottare, come controllore
digitale, il seguente sistema ibrido, esternamente digitale
e*(k)
D/A
e(t)
R(s)
u(t)
A/D
u*(k)
R
Dal momento che
è certamente priva di ritardi puri, detta
una sua realizzazione minima, il controllore digitale
saràcdescritto
c dalla seguente funzione di trasferimento
A , B ,

R  z   C zI 
*
F. Previdi - Controlli Automatici - Lez. 6
* A
*T
A e
B e Ac 
Cc C
Dc D
28
Inserendo il regolatore discretizzato nello schema di controllo in
uso si ha:
w(t) e(t)
+_
A/D
e*(k)
R*(z)
u*(k)
D/A
u(t)
G(s)
y(t)
R*(z)
w(t)
+_
e(t)
A/D
e*(k)
D/A
R0(s)
u*(k)
A/D
F. Previdi - Controlli Automatici - Lez. 6
D/A
u(t)
y(t)
G(s)
29
Questo schema di controllo presenta una doppia coppia
mantenitore/campionatore. Esse introducono nell’anello di
controllo un ritardo intrinseco di conversione pari ad un periodo di
campionamento T (il doppio di quanto precedentemente osservato).
Perchè tale ritardo non limiti le prestazioni del sistema retroazionato
è quindi necessario progettare il regolatore a tempo continuo
con un’eccedenza di margine di fase doppia rispetto a quella
normalmente usata (per quanto concerne il contributo dato dal
ritardo intrinseco di conversione).
R
Nota
Questo metodo di discretizzazione è detto “esatto” in quanto
presuppone che la funzione di trasferimento
* del controllore
digitale venga calcolata a partire da
senza alcuna
approssimazione (è il modello stroboscopico del controllore).
R
R
F. Previdi - Controlli Automatici - Lez. 6
30
Trasformazione diretta di poli e zeri (pole-zero matching)
Questo metodo si basa sulla considerazione che è possibile
ricavare poli e zeri (al finito) della funzione di trasferimento del
sistema a segnali campionati direttamente dalla funzione di
trasferimento del sistema a tempo continuo originario utilizzando
la trasformazione di campionamento.
Gli zeri all’infinito (zeri di campionamento) sono calcolati usando
i risultati asintotici validi per T→0.
F. Previdi - Controlli Automatici - Lez. 6
31
R
Specificamente, data
con n poli, m zeri, tipo g e guadagno μ
è possibile ricavare una funzione di trasferimento
* applicando
le seguenti regole:
1. Il guadagno di
*è
R
*

g

R
T
2. Gli n poli di
applicando
* si ottengono da quelli di
R di campionamento z sTR 
la trasformazione
e
3. m zeri di
applicando
* si ottengono da quelli di
R di campionamento z RsT
la trasformazione
;
e* sono scelti coincidenti
i rimanenti (eventuali) m–n–1 zeri di
R
con le radici del noto polinomio
An m
F. Previdi - Controlli Automatici - Lez. 6
32
n–m
radici
2
Az n1 m
3
z 2  4z 1
– 0.268, –3.73
4
z 3  11z 2  11z  1
– 0.1, –1, –9.89
5
4
3
2
z  26 z  66 z  26 z  1
–1
–0.0043, –0.43,
–2.322, –23.2
F. Previdi - Controlli Automatici - Lez. 6
33
Equivalenza della risposta allo scalino
Questo metodo è basato sull’osservazione che la risposta allo
scalino unitario (a tempo discreto) di
* deve coincidere con i
valori ottenuti per campionamento della risposta allo scalino
unitario (a tempo continuo) di
.
R
R
sca(t)
R(s)
sca(k)
u(t)
R*(z)
A/D

u*(k)
u*(k)
F. Previdi - Controlli Automatici - Lez. 6
34
Il calcolo di
R

* si effettua seguendo questa procedura:
1. Scrivere la trasformata (di Laplace) della risposta allo scalino
di
, cioè:
R


U
s

del controllore analogico
u
2. Calcolare l’uscita
mediante antitrasformazione e valutare
3. Calcolare la trasformata Z
* di
u*kT
u ku kT
U
4. Ricavare
* dal rapporto tra
* e la trasformata Z
dell’ingresso, lo scalino unitario, cioè:
R

U
U z 
R z  
 z 
*
*
F. Previdi - Controlli Automatici - Lez. 6
35
Esempio
Calcolare la funzione di trasferimento del sistema a segnali
campionati con periodo di campionamento T del sistema a tempo
continuo con funzione di trasferimento G s   1 usando
s
l’equivalenza delle risposte allo scalino
G s  1
 2
1. Y s  
s
s
2. y t   t , per t  0

3. Y  z    kTz
*
k 0
k
y * k   y kT   kT , per k  0,1,2, 
Tz

z  12
Tz z  1
T
è la funzione di trasferimento

4. G z  
z  12 z z  1 dell’integratore a tempo discreto.
*
F. Previdi - Controlli Automatici - Lez. 6
36
7. Matlab
>> Gd=c2d(Gc,Ts,'method')
I diversi metodi sono:
'zoh'
'imp'
'tustin'
'prewarp'
'matched'
Discretizzazione per tenuta e campionamento (esatta)
Equivalenza della risposta all’impulso
Trasformazione bilineare (Tustin)
Trasformazione di Tustin con “frequency prewarping”.
La pulsazione ω (in rad/sec) è specificata come quarto ingresso
Trasformazione diretta poli/zeri (solo per sistemi SISO).
Esiste anche un’altro metodo basato sulla rappresentazione ibrida esternamente
digitale con mantenitore del primo ordine
'foh'
Discretizzazione “esatta” (con mantenitore FOH)
F. Previdi - Controlli Automatici - Lez. 6
37