Sei sulla pagina 1di 35

15/02/2007 G.

U -FdA- 1
T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Sistemi a segnali campionati (2)
La Z-trasformata
Passaggio da F(s) a F(z)
Equazioni alle differenze
Andamenti caratteristici della risposta impulsiva
Mapping SZ
Trasformazioni approssimate
Metodi di sintesi
Regolatore PID discreto
Scelta del tempo di campionamento
Controllore Dead-Beat
Identificazione Parametrica
15/02/2007 G.U -FdA- 2 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Analoga a quella di Laplace ma per segnali a tempo-discreto
(equaz. alle differenze)
z
-1
: operatore di ritardo elementare.
Si trasformano sia segnali che risposte impulsive.
Trasformata Z
La Z-trasformata
Poniamo
C
sT
z e =
( ) ( )
*
0
1
C
siT
i
Y s y i e

=
=

( ) ( ) ( )
*
0
C
i
y t y i t iT

=
=

Considerando solo un tipo di segnale (limpulso),


possiamo specializzare la trasf. di Laplace
0
( ) ( )
i
i
Y z y i z

=
=

15/02/2007 G.U -FdA- 3 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Analogo
dellascissa di
convergenza
( )
t
y t e

=
( )
C
i T
C y iT e

=
( )
( ) ( )
1 2
1 ......
C C
T T
Y z ze ze


= + + +
2
0
1 1 1
1 .... 1
1
1
i
x
x
x
x

=
+ + + = >

> 0
( )
1
Y s
s
=
+
( )
1 1
1 1
1 1
C
T
z
Y z
z
z e z


= = =


Alcune Z - Trasformate
15/02/2007 G.U -FdA- 4 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Alcune Z - Trasformate
( )
1
Y s
s
=
( )
1
1
1
1
z
Y z
z
z

= =

Se =0
Se =j (2 poli)
( )
sin y t t =
( )
2
sin
2cos 1
C
C
T z
Y z
z T z


=
+
numeri
15/02/2007 G.U -FdA- 5 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
X
*
(s)
X(z)
.
.
.
.
.
.
.
Il numero di poli resta invariato.
Vengono proiettati da S in Z come
Il n di zeri cambia e vale N o N-1, in genere.
C
sT
z e =
( )
( )( )
( )( )
1 2
1 2
.....
.....

=

s z s z
X s
s p s p
1 2
1 2
....
R R
s p s p
= + +

( )
i C
p T
i
e =
1 2
1 1
1 2
....
1 1
R R
z z

+ +

Sottinteso un passaggio nel dominio del tempo.
Osservazione Importante
Quindi il piano S risulta diviso in fasce orizzontali di altezza

C
, tutte uguali fra di loro. Cfr. theo di Shannon
:complex s s j = +
[ ]
2
2
C
C C C C C C
jk T
s jk T sT T sT sT j k
e e e e e e

+
= = =
da X(s) a X(z): Metodo esatto
X(s)
espansione in frazioni parziali (caso con poli semplici)
15/02/2007 G.U -FdA- 6 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
( ) ( ) ( )
*
0
C
i
u t u i t iT

=
=

( ) ( )
0
( )
C
i
y t f t iT u i

=
=

y(t) : somma di risposte impulsive f(t)


Risposta a Segnali Campionati
Come risponde un sistema a tempo continuo ad un segnale campionato
u(t) u
*
(t) y(t) y
*
(t)
F(s)
F(s) pu includere lo ZOH
u*(t) : una successione di impulsi
0 50 100
0
0.2
0.4
0 50 100
0
0.2
0.4
y(t)
F
*
(t)
15/02/2007 G.U -FdA- 7 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
FdT a Tempo Discreto
( ) ( ) [ ] ( ) ( )
/
*
0
k
C C
i
y k f k i T u i t kT

=
=

( ) ( ) ( ) [ ] ( )
*
0 0 0
C C
skT skT
C
k k i
Y s y k e f k i T u i e


= = =
= = =

( ) ( )
0 0
C C
slT siT
l i
f l e u i e


= =
=

k=l+i , k-i=l
Y
*
(s) = F
*
(s)
.
U
*
(s)
Tra le uscite dei due campionatori vale una relazione analoga alle
usuali funzioni di trasferimento
Y(z)=F(z) U(z)
( ) ( )
0
( )
C
i
y t f t iT u i

=
=

0 50 100
0
0.2
0.4
campioni di y
0
k
k-i
i
f(k-i)=0 per i>k
L-trasformando e con facili calcoli
15/02/2007 G.U -FdA- 8 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
( ) ( ) ( )
Y z F z U z =
( ) ( ) ( )
*
C
sT sT
C C
isT
z e z e
X z X s X i e

= =
= =
{ }
, , X U Y F =
( ) ( )
C
lsT
F z f l e

( ) ( )
,
1
i i
i
i
i
R R
F s F z
s p
z

= =



d
dt t

F(z)
U(z) Y(z)
F(z) si ottiene :
espandendo F(s) in frazioni parziali .
da apposite tavole
con sostituzioni approssimate
( ) ( )
( ) s Q z
F z F s
=
=
1
1
2 1
1
C
z
s
T
z

=
+
e.g.
dalle equazioni differenziali

Determinazione di F(z)
Metodo impulse invariant, conserva
i campioni della risp. impulsiva, ma non la W(j)
impiegato per il progetto
di filtri digitali
15/02/2007 G.U -FdA- 9 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
( ) ( )
( )
( )
( )
1
1
c
sT
P s P s
Z Z e
s s
P s
z Z U z
s


= =



=


( ) ( ) ( ) [ ] ( ) ( ) ( )
1
C
sT
e
Y z Z ZOH s P s U z Z P s U z
s

= = =



questa si ottiene con
i metodi precedenti
Con organo di tenuta
ZOH
u
*
(t) y(t)
P(s)
u
H
(t)
y*(t)
15/02/2007 G.U -FdA- 10 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
A(s)
( ) ( ) [ ] ( ) [ ] ( ) [ ]
Z A s P s Z A s Z P s + = +
( ) ( ) [ ] ( ) [ ] ( ) [ ]
Z A s P s Z A s Z P s
Occorre trasformare
A(s)
.
P(s) insieme
Spiegazione intuitiva
s
1
s
1
s
1
s
1
Invece
Propriet 1
P(s)
15/02/2007 G.U -FdA- 11 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Causalit : dallequazione alle differenze
Poich y
k
deve dipendere al pi da u
k
, nel numeratore
di G(z) non ci possono essere potenze positive
1 1 0
....
k k k
y a y b u

= + +
Valore finale ( )
( )
( )
1
1
1
lim lim
i z
y i z Y z


=
( )
y i i
( ) ( ) ( ) ( ) ( ) ( )
1 2 1
0 1 2 .. 1
i i
y z y z y z y z y i z y i
+
= + + + + +
( ) ( ) ( ) ( ) ( )
1 1 2 3
0 0 1 2 .. 1
i
z y z z y z y z y z y i

= + + + + +
Propriet 2
15/02/2007 G.U -FdA- 12 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Propriet 3
Guadagno di una FdT : valore finale della risposta ad un gradino
( escluse le azioni integrali )
( )
( )
1
0
1
1
0
.. 1
1
lim
..
1
m
i m
m
z
i
m
b b b z
k z
a
a a z
z

+ +
= =
+

Azione integrale
1
1 1
1
s
z

( ) ( )
1
1
'
1
G z G z
z

un polo in z = 1
Ritardi puri
( ) ( )
'
d
G z z G z

=
d poli nellorigine
15/02/2007 G.U -FdA- 13 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Equazioni alle Differenze
( )
( )
( )
1
0 1
1
1
...
1 ....
m
m
m
m
Y z
b b z b z
G z
U z
a z a z


+ + +
= =
+ +
( ) ( )
1 1
1 0 1
1 .... ...
m m
m m
Y z a z a z U z b b z b z


+ + = + + +

1 1 0 1 1
.... ....
k k m k m k k m k m
y a y a y b u b u b u

+ + + = + + +
Una FdT campionata (un sistema a t. discreto) equivale
a una equazione alle differenze.
15/02/2007 G.U -FdA- 14 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Infatti
[ ]
[ ]
[ ]
[ ]
0
0 1 1 0 0
1 0 1 1 0
2
2 1 1 2 0
1 1 0
.... ....
.... ....
.... ....
.... ....
C
C
C
C
sT
sT
sT
ksT
k k k
y y a u b e
y y a u b e
y y a u b e
y y a u b e

+ + = +
+ + = +
+ + = +

+ + = +
Scriviamo equazioni
( ) ( )
1
1 ........
C C
isT isT
y i e a y i e

+ +

( )
( ) 1
1
1
C C
i sT sT
a e y i e

( ) ( )
1
......

+ + Y z z Y z

1 1 0 1 1
.... ....
k k m k m k k m k m
y a y a y b u b u b u

+ + + = + + +
k=0, moltipl. per e
-0sTc
k=1, moltipl. per e
-1sTc
k=2,
generica
somma per colonna
raccogliere e
-ksTc
trasformare
15/02/2007 G.U -FdA- 15 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
La risposta impulsiva si ha con U
K
={1, 0, 0, 0,}
quella al gradino con U
K
={1, 1, 1, 1,}
input:
( )
( )
( )
1
1
1 0.9
Y z
z
F z
U z
z

= =

( )
( )
( )
1 1
1 0.9 Y z z z U z

=
1
0.9
k k k
Y Y U
+
= +
0
. . 0 C I y = =
{ }
0, 1, 1, 1,
k
U =
Soluzione dellEq. Alle differenze
k = 0
1
2
3
y
k
0
0
1
1.9
u
k
0
1
1
1
y
k+1
0
1
1.9
2.8
15/02/2007 G.U -FdA- 16 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
(modi naturali dei sistemi a tempo discreto)
un polo reale semplice
non ha corrispettivo a tempo continuo
Invece un polo doppio s.
ritardo
a tempo continuo richiede
F(s) trascendente
Tipiche risposte impulsive
instabile integratore
Si possono tutte ricavare come
risposte impulsive di semplici sistemi
15/02/2007 G.U -FdA- 17 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
pi pratico:
( ) ( ) ( )
1
0 1
f D z f z D z N z

+ + =
uguagliando le potenze di z
-k
0
0 0 0 0
0

b
b a f f
a
= =
1 0 1 1 0
b a f a f = +
2 0 2 1 1 2 0
b a f a f a f = + +
Sistema triangolare si risolve subito.
D in sequenza tutti i campioni f
k
.
indici = #equazioni
( ) ( )
1 k
c
C
f kT F z z dz

=

( ) ( )
c
F z f kT
Inversione Z - trasformata
Per il theo. di Shannon
il passaggio a f(t) non univoco
C
f
1
=
( )
1 2
0 1 2
k
c
f kT z f f z f z

= + + + =


( )
( )
1
0 1
1
0 1
m
m
m
m
N z
b b z b z
D z
a a z a z


+ + +
=
+ + +

15/02/2007 G.U -FdA- 18 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a


C C C
sT T j T
z e e e

= =
modulo
angolo
2
C
s j

= +
0 s j = +
s =
2
2
C
C C C
j
T T j
z e e e e

= =
0 z e

= =
2
2
1
C C C
j j
j T
z e e e



= = =
= 0
.
-
.
j
2
C

2
C

Mapping S Z
15/02/2007 G.U -FdA- 19 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Mapping S Z (2)
2
C

2
C

*
*
*
*
*
*
*
*
*
C
j
*
*
*
Poli
di F(z)
poli generati dal
campionamento
(poli di )
C
siT
i
y e

poli della f.
tempo continuo
Piano S
Piano Z
Tutti i poli distanti tra loro
jk
C
danno lo stesso valore di z
15/02/2007 G.U -FdA- 20 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Mapping S Z (3)
I sistemi a tempo discreto stabili hanno i poli di F(z)
dentro al cerchio di raggio unitario
C
sT
z e =
.
0 s j = +
2
C
j
2
C
j

2
C

equivalente
dellorigine
Tutto il semipiano
Re[s]<0 va
dentro il
cerchio
.
0 s j = +
s
=

+
j
0
qui non c equivalenza
con dinamiche a t. continuo
R=1 (e
0
)
15/02/2007 G.U -FdA- 21 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
( )
1 0 0
.... ....
n m
n m
n m
d y dy d u
a a a y b b u t
dt
dt dt
+ + + = + +
( )
( ) ( ) ( )
2
2 1 2
C
y k y k y k
y t
T
+

( )
( ) ( ) [ ]
1
C C
C
y kT y k T
y t
T


( ) ( )
C
y t y kT
ovvero
( )
( )
( ) ( )
( ) ( )
( )
1
1
1
C
Y s y k y k
y t u t u k
U s s T
+
= = = +
( ) ( )
1
1
C
Y z z T U z


=

( )
( )
1
1
C
Y z
T
U z
z

1
1
C
z
s
T

Metodi di Trasformazione Approx


Il metodo di trasformazione esatto:
a) Conserva intatti i campioni della risposta impulsiva;
b) Altera la risposta in frequenza
c) E scomodo
Esistono metodi pi pratici che sfruttano il fatto che
T
C
piccolo.
ad esempio
Per e T
C
piccolo C t T
15/02/2007 G.U -FdA- 22 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
1
1
2
k k
k k C
u u
y y T
+
+
+
= +
s
1
Rappresenta unintegrazione, pu essere
approssimato in pi modi :
1 k k k C
y y u T
+
= +
( ) ( ) ( ) [ ]
1
C
Y z Y z U z T z

= +
1
1
1
C
z
s
T z

( ) ( )
1
1
1
C
T z
Y z U z
z

.
.
1 1 k k k C
y y u T
+ +
= +
( )
1
1
1
C
s z
T


( ) ( )
1
1
C
T
Y z U z
z

.
.
1
1
2 1
1
C
z
s
T
z

+ ( ) ( )
1
1
1
2
1
C
T z
Y z U z
z

+
=

Sono tutte approssimazioni di ( )


1
log
C
s z
T
=
Altri metodi (approx)
Bilineare o Tustin
Backward integration
Forward integration
15/02/2007 G.U -FdA- 23 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Per piccoli valori di |sT
c
|
sono tutti equivalenti
1
1
C
z
s
T

=
1
1
C
z
sT
=

1
1
2 1
1
C
z
s
T
z

=
+
2
2
C
C
T s
z
T s
+
=

C
sT
z e =
(1, j0)
Esatto
Tustin
Backward difference
.
S
2
C

2
C

Confronti
15/02/2007 G.U -FdA- 24 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Fc=5
Risposta in Frequenza
In Laplace la risposta in frequenza
in Z
[ ]
1
( ) ( )
z
F j F z
=
=
[ ]
( ) ( )
s j
F j F s

=
=
2
C

R=1 (e
0
)
Infatti la retta j si mappa sulla circonferenza, compiendo infiniti giri
quindi la risposta armonica somma di infinite risposte traslate di kF
C
2
C
j
2
C
j

s
=
j

-10 -5 0 5 10
0
0.5
1
1.5
Fc=5
15/02/2007 G.U -FdA- 25 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Risultati per unanticipatrice
tempo continuo
organo di tenuta
Tustin
15/02/2007 G.U -FdA- 26 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Sistema dinamico lineare
parametri concentrati
Equazione differenziale
Funzione di trasferimento
(L - trasf.) F(s)
Risposta
impulsiva f(t)
F(z) [caratteristiche]
Equazioni alle differenze
Sintesi
schematizzazioni
metodi
approssimazioni
Richiami
c
sT
z e =
( )
k
c
f kT z

Campionamento (T
c
)
15/02/2007 G.U -FdA- 27 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
a) Trasposizione della sintesi nel t. continuo
b) Sintesi direttamente nel t. discreto
a) Va bene con T
c
abbastanza piccoli
b) Richiede specifiche discretizzate
Schemi per la sintesi
situazione reale
-
Y(s)
P(s)
C(z)
A(s)
ZOH
R(s)
-
Y(z)
Z[A(s)P(s)]
s
C(z)
1-z
-1
R(z)
b)
+
Eventuale approssimazione del ritardo
C(z) implementazione di C(s)
R(s)
-
Y(s)
P(s)
C(s)
A(s)
a)
15/02/2007 G.U -FdA- 28 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Operazione critica. Scelta tipica:
Se possibile meglio che sia un po pi alta
(20 30 B
-3db
),
specie se non si hanno elevati margini di fase.
Scelta del Tc
Altro modo di scegliere Tc
(o verificare la scelta precedente):
Eseguire il progetto sui diagrammi di Bode
Scegliere Tc in modo che introduzione dello ZOH
sia compatibile con il margine di fase
(impiegarne un modello approssimato a t. continuo)
3
10
c db
f B

15/02/2007 G.U -FdA- 29 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a


Scelta del Tc (2)
esempio
e ci vero anche in floating-point.
REM: luscita dei convertitori A/D in virgola fissa
1 k k
c
y y dy
dt T

( )
0.1 y t t =
( ) ( )
0.1 y 100 99.9 10.00 9.99
c
T y = =
( ) ( )
0.01 y 100 99.99 10.000 9.999
c
T y = =
Attenzione un T
c
troppo piccolo
provoca inconvenienti con le derivate,
specie con parole di memoria di lunghezza ridotta.
15/02/2007 G.U -FdA- 30 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Il convertitore A/D
E lorgano fisico che effetta il campionamento (nel tempo) e la
quantizzazione (nellampiezza) del segnale.
Il range di ingresso in genere [0 .. 5]V oppure [-5 .. +5]V
La risoluzione dellingresso legata al numero N di bit del numero
prodotto. E pari a range/2^N.
Valori tipici di N da 8 a 12 e pi bit.
Vin
n
K
A/D
sensore
amplificatore/
filtro
-5..5
n
15/02/2007 G.U -FdA- 31 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
( ) ( ) ( )
0
t
p I D
de
c t k e t k e k
dt
= + +

( ) ( ) ( ) ( ) [ ]
1
D
p
c
k
c i k e i e i e i
T
= + +
( ) ( ) [ ] ( ) ( ) [ ] ( ) ( ) [ ] { }
0 1 1 2 1
2
c
i
T
k e e e e e i e i + + + + + + +
( ) ( ) ( ) ( ) ( ) ( )
1 2 3
1 1 1 c i c i c i a e i a e i a e i + = + = + + + +
( ) ( ) ( ) ( ) [ ] ( ) ( ) [ ] {
1 1 1 0 1
2
c D
p i
c
T k
c i k e i e i e i k e e
T
+ = + + + + + +
( ) ( ) [ ] ( ) ( ) [ ] ( ) ( ) [ ]}
1 2 1 1 e e e i e i e i e i + + + + + + + +
( ) ( ) ( ) ( ) [ ]
1 1
p
c i c i k e i e i + = + + +
( ) ( ) ( ) [ ] ( ) ( ) [ ]
1 2 1 1
2
c D
i
c
T k
e i e i e i k e i e i
T
+ + + + + +
Regolatore PID discreto
Un metodo abbastanza
generale e utile:
le somme telescopiche
15/02/2007 G.U -FdA- 32 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
inizializzazione
E1:=0 ; E2:=0 ; C0:=0
ciclo di controllo
REPEAT
* INP_ANALG(E0);
C1:=0 + A1*E0 + A2*E1 + A3*E2;
* OUT_ANALG(C1);
C0:=C1;
E2:=E1 ; E1:=E0 ;
* WAIT (TC);
UNTIL FALSE FOREVER ;
* istruzioni insolite
WAIT(TC) : aspetta TC secondi dallultima chiamata.
INP
OUT
_ANALG : chiamano i convertitori A/D e D/A.
E2 si perde e viene rimpiazzata
PID: Esempio di programma
15/02/2007 G.U -FdA- 33 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
w(z) = z
-n
y(k) = u(k - n)
n =min = ?
Riproduzione esatta, anche se ritardata
Importante: zeri e poli di G(z) stabili
se G(t) causale, 1/G non lo
grado numeratore R(z) = g[N
R
] = g[D
G
]
grado denominatore R(z) = g[DR] = n + g[NG]
g[DR] = g[NR] n
min
= g[DG]-g[NG]
1
RG
w
RG
=
+
(1 ) RG w RG + =
1
1
w
R
w G
=

-
R(z) G(z)
+
Controllo dead - beat
u
y
n
1
R=
z 1
n
G
G
D
w z
N

=
+
15/02/2007 G.U -FdA- 34 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Sistema : equazione delle differenze
parametri
misure allistante i
Preleviamo le misure q
i
per i = 0 2n
(dipende dalleccitazione di S) Q
-1
(2n + 1)
x
(2n + 1)
( ) ( ) ( ) ( ) ( )
1 0
1

n n
y i a y i a y i n b u i b y i m = + + +
[ ]
1 0
, n 2n+1
T
n n
a a b b = =
( ) ( ) ( ) ( ) [ ]
i
q 1 ,
T
y i y i n u i u i n =
( )
T
i
y i q =
( )
( )
( )
0
1
2
0
1

2
T
T
T
n
y q
y q
y n q
=
=
=

y Q =

0
1
2



T
T
T
n
q
Q q
q




=




Se 0 Q
1
Q y

=

Identificazione dei parametri
15/02/2007 G.U -FdA- 35 T e r z a U n i v e r s i t a d e g l i s t u d i d i R o m a
Se c rumore sulle misure ?
Si usano
i minimi quadrati
cerchiamo
Derivando risp. a q e uguagliando a zero
pseudo inversa di Q
1 1 2 2 1
1 1


k k k k k k k k
k M k M k M
y y a y a u b u b
y y a

+ + +
= + + + + +

= + +


y Q = +
2
i

: min =

y Q =
( ) ( )
2
i
T
T
y Q y Q = =

( )
1

T T
Q Q Q y

=
Identif. dei parametri (2)