Sistemi monodimensionale a tempo discreto

Transcript

Sistemi monodimensionale a tempo discreto
Sistemi monodimensionale
a tempo discreto
Un sistema monodimensionale a tempo discreto
è un dispositivo, un apparato, un programma
per calcolatore che elabora una sequenza
d’ingresso x[n] e genera una sequenza di uscita
y[n].
x[n]
y[n]
?
Proprietà di un sistema:
• Lineare
• Stazionario
• Causale
• Stabile
• Istantaneo o senza memoria
• Invertibile
Sistemi lineari e stazionari (SLS)
a tempo discreto
Un SLS a tempo discreto è caratterizzato
completamente dalla conoscenza della risposta
impulsiva h[n] definita dalla relazione
h[n] = T[δ [n]]
La sequenza di uscita di un SLS è la somma di
convoluzione fra la sequenza di ingresso e la
risposta impulsiva del sistema stesso.
y[n] =
+∞
∑ x[k ] h[n − k ] = x[n] ⊗ h[n]
k =−∞
Condizione necessaria e sufficiente per la
stabilità in senso BIBO è la assoluta
sommabilità della sua risposta impulsiva:
+∞
∑ h[k ]
< +∞
k =−∞
Un SLS è causale se e solo se la sua risposta
impulsiva è una sequenza causale cioè se:
h[n]=0 se n < 0
Risposta in frequenza di un SLS
• La risposta in frequenza di un SLS a tempo
discreto è la trasformata di Fourier della risposta
impulsiva h[n] del sistema stesso:
H (f )=
+∞
∑ h[n] e −
j 2 πnfT
n = −∞
• La risposta in frequenza è il rapporto fra le
trasformate rispettivamente della sequenza di
uscita e di ingresso :
H (f )=
Y (f )
X( f )
Data la risposta in frequenza, definiamo anche per
i sistemi a tempo discreto la risposta in ampiezza
A( f ) = H ( f )
e la sua risposta in fase
θ ( f ) = ∠H ( f )
Distorsioni di fase ed ampiezza
La condizione di non distorsione di ampiezza e/o
fase per i segnali discreti, equivalente a quella per
i segnali a tempo continuo, è la seguente:
y[n] = K x[n − n0 ]
Nel dominio della frequenza, la condizione
precedente si traduce nei due seguenti requisiti
per la risposta in ampiezza e la risposta in fase
A( f ) = K
θ ( f ) = −2πfn0 T
Sistemi in cascata e in parallelo
y[n]
w[n]
x[n]
h2 [n]
h1 [n]
h[n] = h1 [n] ⊗ h2 [n]
h1 [n]
x[n]
y[n]
h [n]
2
h[n] = h1 [n] + h2 [n]
Filtri a tempo discreto
Le caratteristiche di selettività di un filtro a tempo
discreto con risposta in frequenza H ( f ) (che è una
funzione periodica di periodo 1/T) sono
determinate dall'andamento della sua risposta in
ampiezza H ( f ) in un solo periodo della funzione,
ad esempio, nell'intervallo [-1/2T, 1/2T]. I filtri sono
classificati in passa basso, passa alto, passa
banda, elimina banda.
–
HLP (f)
–
HHP (f)
1
1
•••
•••
–1/2T –B
B
1/2T
•••
f
–1/2T –B
Passa basso
–
H
BP
•••
–
H
(f)
BR
(f)
1
•••
•••
•••
•••
B
– f0
1/2T f
Passa alto
1
–1/2T
B
f0
Passa banda
B
1/2T
f
–1/2T
– f0
f0
Elimina banda
1/2T
f
Risposta all’impulso dei filtri ideali
Calcoliamo la risposta impulsiva dei filtri passabasso e passa-alto ideale a tempo discreto. La
risposta in frequenza del passa-basso ideale è
una funzione rect(·) periodicizzata con periodo
frequenziale 1/T.
- Filtro passa-basso:
1 ∞
 f − k /T 
HLP ( f ) = ∑ T ⋅ rect
T k = −∞
2B 
hLP [n] = 2BT sinc(2 Bt) t = nT = 2BT sinc(2nBT )
- Filtro passa-alto:
H HP ( f ) = 1 − H LP ( f )
hHP [n] = δ[n] − hLP [n] = δ[n]− 2BT sinc(2nBT)
Si noti che entrambe le risposte impulsive sono
non nulle per n < 0. Come già osservato per i
sistemi continui, si nota che i filtri ideali non sono
causali.
Esempio: filtro a media mobile (1/3)
Consideriamo il sistema, detto filtro a media
mobile, che effettua la seguente trasformazione
sulla sequenza di ingresso :
1 n
y[n] =
x[k ]
∑
N k = n − N +1
Si può verificare che tale sistema è lineare e
stazionario. Il sistema esegue una media
aritmetica su una finestra mobile di ampiezza N.
x[k]
x[n*]
–3 –2 –1
1 2
3 4
k
+ + +
4
y[n]
y[n*]
n*
n
N–1 N N+1
n
h[n]
1/N
•••
0
1
Esempio: filtro a media mobile (2/3)
h[n] =
1
(u[ n] − u[n − N])
N
N −1
H ( f ) = ∑ h[n] e−
j 2πnfT
=e
− jπ ( N −1) fT
n =0
H(f ) =
sin(πNfT )
N sin(πfT )
1 sin(πNfT )
N sin(πfT )
1.2
1.0
N=16
0.8
0.6
0.4
0.2
0.0
-0.50
-0.25
0.00
0.25
0.50
Frequenza Normalizzata, fT
180
135
N=16
90
45
0
-45
-90
-135
-180
-0.50
-0.25
0.00
0.25
Frequenza Normalizzata, fT
0.50
Esempio: filtro a media mobile (3/3)
Il filtro a media mobile viene spesso utilizzato per
eliminare le fluttuazioni rapide di un segnale (cioè
per smussare il segnale) senza modificarne
l'andamento generale di lungo termine. La figura
mostra l'andamento dell'indice della borsa Italiana
MIB durante l'anno 1998.
40000
35000
30000
25000
20000
01-01-1998
01-04-1998
01-07-1998
01-10-1998
31-12-1998
Giorno
40000
35000
30000
25000
20000
01-01-1998
N=16
01-04-1998
01-07-1998
Giorno
01-10-1998
31-12-1998
Esempio
Consideriamo il sistema di figura in cui la
frequenza di campionamento è 48 kHz e il
segnale di ingresso è inoltre x(t) = cos(2πf0 t )
con
fo=16 kHz.
x(t)
fc
x[n]
y[n]
z[n]
h[n]
NL
Determiniamo l'espressione del segnale d'uscita
y[n] sapendo che il sistema nonlineare (NL) a
tempo discreto è caratterizzato dalla relazione
ingresso-uscita z[n]=x2[n], e che la risposta
impulsiva del successivo filtro è:
1
 n
h[n] = sinc  
 2
2
y[n] =
1
2
_
H(f)
1
•••
–60 –48 –36
•••
–12
12
36
48
60
f (kHz)
Cambiamento delle frequenza di
campionamento
x(t)
H(f)
x[n]
A/D
B
f c =48 kHz
z[n]
1
Cambia
Frequenza
Campionam.
y[m]
y(t)
D/A
f
f c=48 kHz
f c'=32 kHz
Le operazioni principali di cambiamento della
frequenza di campionamento possono essere
ricondotte ad una combinazione di due funzioni
base, chiamate:
fc
• sovracampionamento (quando fc’>fc)
• sottocampionamento (quando fc’<fc’)
Tali
funzioni,
opportunamente
combinate,
consentono di modificare fc secondo un fattore
razionale arbitrario, in modo da generare una
nuova sequenza con cadenza:
fc ' = ( p/ q) ⋅ f c
con p e q interi.
Sovracampionamento con
interpolazione numerica (1/7)
L'aumento della cadenza di campionamento
secondo un fattore intero M è chiamato
sovracampionamento ed è rappresentato dal
blocco illustrato in figura
x[n]
y[m]
M
fc
f c '=M·f c
Nell'operazione di sovracampionamento, anche
quando non esplicitamente indicata, è sempre
compresa una funzione di interpolazione numerica.
Per capire la necessità di quest'ultima funzione
scomponiamo il blocco sovracampionatore nei
due componenti elementari della seguente.
x[n]
ZP
fc
xZP [m]
f c '=M·f
c
y[m]
Hp (f)
f c '=M·f
c
Il blocco ZP (Zero-Padding) è quello che
materialmente effettua l'aumento nella velocità di
campionamento.
Sovracampionamento con
interpolazione numerica (2/7)
L'aumento della frequenza di campionamento
viene ottenuto mediante inserimento di M-1
campioni nulli tra ciascuna coppia di campioni
consecutivi nella sequenza originaria x[n], come
illustrato nell’esempio seguente:
x[n]
0
1
2
3
4
M=4
x ZP [m]
0
4
x[n] m = n ⋅ M
x ZP [m] = 
 0 altrimenti
n
8
12
x ZP [m] =
16
+∞
m
∑ x[n]δ [m − Mn]
n = −∞
Sovracampionamento con
interpolazione numerica (3/7)
Si dimostra che le trasformate delle sequenze x[n]
e xZP[m] sono identiche infatti
X ZP ( f ) =
+∞
∑ xZP [m]e −
j 2 πmfT ′
m= −∞
X ZP ( f ) =
+∞
∑ x[n]e
n =−∞
− j 2 πMnfT / M
=
+∞
∑ x[n]e −
j 2 πnfT
= X(f )
n =−∞
Il periodo-base della trasformata di Fourier del
segnale sovracampionato è M volte più grande del
corrispondente periodo-base della trasformata del
segnale originale.
Al blocco ZP si fa quindi seguire un filtro passabasso ideale, avente banda B=1/2T e guadagno in
continua Hp (0) = M .
Lo spettro che si ottiene in uscita è identico a
quello che si sarebbe ottenuto campionando
direttamente il segnale analogico di partenza con
la frequenza di campionamento fc’.
Sovracampionamento con
interpolazione numerica (4/7)
Il filtro interpolatore (che non va confuso con gli
interpolatori D/A) ha cancellato le immagini
presenti nello spettro del segnale d’uscita.
X(f)
1
−
M
T
−
M
2T
−
1
1
−
T
2T
X
−
M
T
−
1
T
1
2T
ZP
M
2T
M
T
f
M
2T
M
T
f
M
2T
M
T
f
M
T
f
(f)
M
2T
H p (f)
M
−
M
T
−
M
2T
−
1
1
−
T
2T
M
−
M
T
−
1
2T
1
2T
1
T
Y(f)
1
2T
Sovracampionamento con
interpolazione numerica (5/7)
La sequenza y[m] è, quindi, una versione
interpolata del segnale xZP[m] . I campioni nulli
introdotti vengono sostituiti da campioni interpolati
che assicurano una maggiore "regolarità" del
segnale sovracampionato, come illustrato nella
seguente figura.
x ZP [m]
0
4
8
12
16
m
x[n]·h p [m-Mn]
n=0
n=3
n=4
n=1
n=2
m
0
4
8
12
16
4
8
12
16
y[m]
0
m
Sovracampionamento con
interpolazione numerica (6/7)
Il sovracampionamento riduce la distorsione
d’ampiezza.
y[m]
x[n]
x(t)
q(t)
2
1/T
z(t)
h(t)
HOLD
2/T
(a)
x[n]
x(t)
q1 (t)
HOLD
h1 (t)
z1 (t)
1/T
(b)
2
X(f)
• • •
- 2/T
• • •
-1/2T
1/2T
2/T
f
2
X(f)
• • •
- 2/T
-1/2T
• • •
1/2T
2/T
f
Sovracampionamento con
interpolazione numerica (7/7)
Molti dei lettori Compact Disc comunemente in
commercio
usano
un
circuito
di
sovracampionamento per meglio effettuare la
conversione del segnale da numerico ad
analogico.
1.8
Necessità di filtri
selettivi che
tipicamente sono
a fase non lineare
1.6
1.4
X(f)
1.2
HAI (f)
1.0
sinc(fT)
0.8
0.6
0.4
0.2
0.0
-0.2
-100
-80
-60
-40
-20
0
20
40
60
80
100
Frequenza (kHz)
1.8
1.6
1.4
M=4, fc '=176.4 kHz
Y(f)
1.2
HAI '(f)
1.0
sinc(fT')
0.8
0.6
0.4
0.2
0.0
-0.2
-200
-150
-100
-50
0
50
Frequenza (kHz)
100
150
200
Il sovracampionamento consente
l’utilizzo di filtri antiimmagine più
semplici e meno
selettivi e quindi a
fase lineare. Inoltre
si ha il vantaggio di
una riduzione della
distorsione di
ampiezza.
Decimazione o
sottocampionamento (1/2)
L'operazione duale del sovracampionamento è la
decimazione rappresentata nella seguente figura:
x[n]
y[m]
M
fc
f c '=f c /M
y[m] = x[M ⋅ m]
x[n]
0
4
8
12
16
M=4
y [m]
0
n
1
2
3
4
m
Decimazione o
sottocampionamento (2/2)
Si dimostra che lo spettro della sequenza
decimata è dato da una somma di M repliche della
trasformata della sequenza originaria, ciascuna
traslata rispetto alla precedente di una quantità
pari alla frequenza di campionamento "di uscita“:
M −1
k  M −1

= ∑ X ( f − k ⋅ fc′)
Y ( f ) = ∑ X f −

MT
k= 0
k= 0
X(f)
M=4
1
−
1
T
1
2MT
−
1
2MT
1
T
f
M
T
f
Y(f)
k=0
−
M
T
−
k=1
M
2T
k=2
M
2T
k=3
L'operazione di decimazione può comportare un
fenomeno analogo a quello dell'aliasing nel
campionamento di un segnale analogico se non
viene rispettata la condizione:
B ≤ 1/(2MT)
Cambiamento della frequenza di
campionamento
Consideriamo uno schema per la conversione alla
nuova frequenza di campionamento fc’=32 kHz di
un segnale audio campionato a frequenza fc=48
kHz. Il problema è risolubile disponendo di un
sovracampionatore di un fattore 2 (che porta la
frequenza di campionamento a 96 kHz) seguito da
un decimatore di un fattore 3 (che la abbassa ai
32 kHz richiesti), come indicato nella figura:
x[n]
z[p]
2
fc
y[m]
3
f c''=2·f c
f c'=f c''/3=
=2·f c /3
x[n]
fc
ZP
h[p]
f c ''=2·f c
f c''
3
y[m]
fc'
La realizzazione del sistema richiede, per quanto
visto finora, l'impiego di un filtro interpolatore (nel
sovracampionatore) e di un filtro anti-aliasing (nel
decimatore). Sia il primo che il secondo filtro
devono essere dei passa-basso ideali aventi
rispettivamente banda B1=20 kHz e banda B2=15
kHz. Poiché i due si trovano direttamente in
cascata, il primo dei due (avente banda più larga)
risulta evidentemente inutile.
Trasformata Z di una sequenza (1/2)
Le sequenze a energia illimitata non possiedono
in generale trasformata di Fourier in senso
ordinario, poiché la serie è in generale non
convergente. Si introduce in questi casi la
sequenza:
n
1
x˜[n] = x[n]⋅ 
 r
r>0
Calcoliamo ora la trasformata
sequenza "smorzata"
X˜ ( f ) =
∞
∑ x˜ [n] e
− j 2 π nfT
n = −∞
=
∞
∑ x[n ] r e
− n − j 2 πnfT
n =−∞
della
=
nuova
∞
∑ x[n] (r e
j 2 π fT −n
)
n = −∞
Definiamo un'unica variabile complessa espressa
in forma polare come segue:
∆
z=re
j 2πfT
r = | z |≥ 0
−π < ∠z ≤ π
⇒ −
1
1
≤ f<
2T
2T
La trasformata di Fourier della sequenza
"modificata" è proprio “la trasformata z” ovvero
una diversa trasformata del segnale originario
dipendente appunto dalla variabile complessa z
X ( z) = Z [ x[ n]] =
+∞
∆
∑ x[n ] z − n
n =−∞
bilatera
∞
X(z) = ∑ x[n]z−
n =0
monolatera
n
Trasformata Z di una sequenza (2/2)
La trasformata Z rappresenta una serie di potenze
o serie di Taylor-Laurent che converge in un
dominio del piano complesso descritto dalla
relazione R1 < z < R2 ove R1 ed R2 sono i cosiddetti
raggi di convergenza e dipendono dalla
particolare sequenza di cui si cerca la trasformata.
ℑ[z]
Zona di
Convergenza
R1
R2
a
b
ℜ[z]
ESEMPIO
Per il segnale gradino u[n] abbiamo:
X(z) = X˜ ( f ) =
∞
∑ x˜ [n] e
n = −∞
=
1
1
=
1
1
j 2 fT
1 − r − e− π
1 − z−
− j 2πnfT
∞
= ∑ u[n] r e
n =0
r = z >1
− n − j 2πnfT
∞
= ∑ (r e
n =0
)
−1 − j 2πfT n
Relazione tra trasformata Z e
di Fourier
X(z) =
∞
∑ x[n]z
−n
X(f )=
n = −∞
∞
∑ x[n]e
− j 2πnfT
=
n = −∞
∞
∑ x[n](e
− j2πfT
n = −∞
)
n
Si può ottenere la trasformata di Fourier dalla
conoscenza della trasformata Z semplicemente
ponendo:
ℑ[z]
Zona di
convergenza
X ( f ) = X(z) z =e j 2 πfT
|z|=1
f=1/2T
f=0
1
ℜ[z]
X(
f)
f=-1/2T
Inversione della trasformata Z
L’antitrasformata
della
trasformata
Z
rappresentata dalla seguente relazione
Cauchy-Riemann):
x[n ] =
1
n −1
X
z
z
dz
(
)
∫
2πj
è
(di
Proprietà della trasformata Z
• Linearità
• Teorema del ritardo
x[n]
X(z)
x[n-no]
X(z)z -no
• Teorema della moltiplicazione per il tempo
Z [n ⋅ x[n]] =
+∞
∑ n ⋅ x[n] z
n = −∞
−n
+∞
= − z ∑ x[n] (−n) z−
n =−∞
• Teorema della convoluzione
Z[x[n]⊗y[n]]=X(z)Y(z)
n −1
= −z
d X (z )
dz
Componenti elementari dei sistemi
a tempo discreto
x[n]
a x[n]
a
Moltiplicatore per una costante
x[n]
x[n–1]
z
–1
Ritardatore di un passo
x1 [n]+x2 [n]
x [n]
1
Sommatore minimo
x2 [n]
In generale, un SLS causale a tempo discreto può
essere descritto da una equazione (forma normale)
alle differenze lineare e a coefficienti costanti di
ordine N:
N
M
m=1
k=0
y[n] = − ∑ am y[n − m] + ∑ bk x [n − k ]
Rappresentazione in forma diretta
x[n]
y[n]
b0
z –1
z –1
b1
x[n–1]
-a1
z –1
y[n–1]
z –1
b2
z
x[n–M]
-a N
–1
y[n–N]
bM
Sottosistema A
Sottosistema B
Il disegno fa riferimento al caso particolare M>N,
ma in generale tra questi due parametri non c'è
alcuna relazione. In totale si hanno M+N elementi
di ritardo.
È possibile invertire l’ordine dei sottosistemi
senza che il comportamento globale muti
minimamente: si ottiene così la seguente struttura
modificata rappresentata in figura
Rappresentazione in forma diretta
y[n]
x[n]
b0
z –1
z –1
b1
-a1
z –1
z –1
b2
-a N
z –1
bM
Sottosistema B
Sottosistema A
In questa nuova configurazione i due registri di
ritardo hanno in ingresso il medesimo segnale;
essi possono allora essere sostituiti da un unico
registro che "serve" entrambi i sottosistemi, di
lunghezza pari al massimo tra M ed N.
Rappresentazione in forma
canonica
y[n]
w[n]
x[n]
b0
z –1
b1
-a 1
z –1
bN
-a N
z –1
bM
La struttura canonica minimizza il numero di ritardi
necessari all'implementazione dell'equazione alle
differenze (ovviamente infatti max(M,N) e N+M),
ma richiede la considerazione esplicita del
segnale interno al circuito.
Risposta all’impulso e funzione di
trasferimento
Un sistema è completamente caratterizzato anche
quando se ne conosce la risposta impulsiva:
h[n] = T[δ [n]]
La funzione di trasferimento di un SLS avente
risposta impulsiva è definita come la trasformata
Z della sequenza h[n]:
H (z ) =
∆
+∞
∑ h[n] z
−n
n= −∞
la funzione di trasferimento di un sistema é anche
espressa dal rapporto fra la trasformata Z della
sequenza d'uscita e quella della sequenza
d'ingresso:
Y ( z)
H ( z) =
X (z )
In particolare vale
M
H (z) =
Y ( z)
=
X (z) 1
∑b z
−k
k
k= 0
N
+ ∑ am z − m
m=1
funzione razionale fratta nella variabile z-1.
Sistemi a risposta all’impulso finita
(FIR, Finite Impulse Response)
I SLS causali caratterizzati da una funzione di
trasferimento razionale fratta con N=0 perdono il
carattere di ricorsività e la relativa equazione si
semplifica in:
M
y[n] = ∑ bk x[ n − k ]
k =0
La relativa funzione
polinomio in z-1
di
trasferimento
M
H(z) = ∑ bk z − k
k=0
e, antitrasformando, la risposta all’impulso è
 bn 0 ≤ n ≤ M
h[n] = ∑ bk δ [n − k] = 
0 altrimenti
k =0
M
che è una sequenza di durata finita.
è
un
Forma diretta o canonica di
sistemi FIR
y[n]
x[n]
b0
z –1
b1
z –1
b2
z –1
bM
Sistemi a risposta all’impulso infinita
(IIR, Infinite Impulse Response)
Se invece N>0 l'equazione alle differenze
comporta un calcolo ricorsivo. Questa ricorsione
dà luogo ad una memoria infinita per il sistema o,
equivalentemente, ad una risposta impulsiva di
durata infinita.
Quando M=0 si parla di sistema puramente
ricorsivo, ovvero caratterizzato dall’equazione:
N
y[n] = − ∑ am y[n − m] + b0 x[n]
m= 1
x[n]
y[n]
b0
z –1
-a1
y[n–1]
z –1
-a N
y[n–N]
Stabilità dei sistemi FIR e IIR (1/2)
Poiché la risposta impulsiva è costituita da un
numero finito di valori di ampiezza limitata, la
condizione di assoluta sommabilità di
è
sicuramente verificata. Segue che tutti i sistemi
FIR sono sempre stabili (BIBO) senz'alcuna
condizione sul numero dei coefficienti e sui valori
(limitati) da essi assunti: per questa ragione si usa
dire che i sistemi FIR sono incondizionatamente
stabili.
Per i filtri IIR, invece, la stabilità non è sempre
garantita, come si vede facilmente da semplici
esempi.
ESEMPIO
y[n] = 2y[n − 1] + x[n ]
la cui risposta all’impulso è
h[n] = 2 n u[n]
che diverge quando n tende ad infinito e non può
dunque essere assolutamente sommabile. Il
semplice sistema IIR dunque non è stabile.
Stabilità dei sistemi FIR e IIR (2/2)
Analizziamo perciò il caso generale di un sistema
IIR puramente ricorsivo con funzione di
trasferimento
H( z) =
b0
−1
−2
−N
1 + a1 z + a2 z + ... + aN z
e calcoliamo per prima cosa le N radici zpm
dell'equazione in z
−1
1 + a1 z + a2 z
−2
+ ... + aN z
−N
=0
riscrivere la H(z) attraverso la scomposizione in
fratti semplici
N
−1
Am
(
)
H
z
A
1−
z
z
=
(
)
m
p
H( z) = ∑
−1
m =1 1 − z p m z
m
z= z pm
antitrasformando si ottiene
N
h[n] = ∑ hm [n]
m =1
hm [n] = Am znp m u[n]
Il sistema è allora stabile sotto la condizione:
zp m < 1
m = 1, K, N
ovvero che i poli della funzione di trasferimento
siano tutti interni alla circonferenza di raggio
unitario del piano z.
Progetto di filtri IIR (1/5)
q TECNICA DELL’INVARIANZA IMPULSIVA
I filtri a tempo discreto vengono progettati
partendo da prototipi di filtri analogici con risposta
all’impulso ha(t).
H (f )=
h[n] = T ha (nT )
+∞
k

H
f
−
∑ a T 
k = −∞
il valore di T è scelto in modo da evitare l’aliasing.
Nel caso di filtro ideale passa-basso si ha:
H (f)
a
1
–B
B
f
_
H(f)
1
•••
•••
–1/T
–1/2T –B
B
1/2T
1/T
f
Progetto di filtri IIR (2/5)
I filtri reali sono filtri causali e la loro risposta in
frequenza non può essere rigorosamente limitata
in banda e quindi in questo caso si ha:
H(f)
f
_
H(f)
H(f+1/T)
–1/T
H(f–1/T)
H(f)
–1/2T
1/2T
1/T
f
In genere le risposte in frequenza coincidono se di
sceglie una frequenza di campionamento 1/T
sufficientemente grande.
Non ha senso applicare l'invarianza impulsiva a
filtri passa-alto o elimina-banda per i quali
l'aliasing è intrinsecamente ineliminabile.
Progetto di filtri IIR (3/5)
Se il filtro prototipo analogico ha una funzione di
trasferimento razionale fratta in s, si può ricavare
direttamente la funzione di trasferimento del filtro
a tempo discreto (che risulta a sua volta razionale
fratta in z-1), senza dover esplicitamente calcolare
la risposta impulsiva a tempo continuo .
N(s ) β 0 + β1 s + K + β M sM
Ha (s) =
=
D(s) α 0 + α 1 s + K+ α N s N
Ai = H a (s)(s − s i ) s= s
N
Ai
i =1 s − si
Ha ( s) = ∑
N
ha (t ) = ∑ Ai e
i =1
si t
u(t )
N
h[n] = ∑ T Ai e
nsi T
i
u[n]
i =1
N
TAi
si T −1
i=1 1 − e z
H(z) = ∑
Dunque la funzione di trasferimento del filtro a
tempo discreto è direttamente ricavabile dai poli e
dai residui della funzione di trasferimento del filtro
analogico. Se il sistema di partenza è stabile,
esso ha poli a parte reale negativa e quindi i poli
del sistema a tempo discreto così ottenuto hanno
modulo minore di uno ed è pertanto anch’esso
stabile.
Progetto di filtri IIR (4/5)
q LA TECNICA DELLA TRASFORMAZIONE
BILINEARE
Viene applicata per la progettazione di qualsiasi
tipo di filtro e quando non è possibile aumentare la
frequenza di campionamento.
Con questa tecnica la H(z) del filtro numerico si
ottiene dalla H(s) del filtro analogico applicando la
relazione
− −1
s=
21 z
−1
T 1+ z
nota come trasformazione bilineare.
ℑ[z]
ω
z=
σ
1+ sT/2
1− sT/2
1
ℜ[z]
Se il sistema analogico è stabile anche quello
numerico ricavato tramite trasformazione bilineare
è stabile.
Progetto di filtri IIR (5/5)
Nella tecnica della trasformazione bilineare la
corrispondenza diretta delle frequenze e delle
risposte in frequenza è la seguente:
fa =
1
tan(π fT )
πT
H ( f ) = Ha
 1
tan(πfT )
 πT

H(f)
f
_
H(f)
–1/T
–1/2T
1/2T
1/T
f
La trasformazione bilineare non dà luogo ad
aliasing. La scala delle frequenze subisce una
compressione nonlineare nel passaggio dal
sistema analogico al sistema a tempo discreto che
porta ad una deformazione della risposta in
frequenza. Per rispettare le specifiche di banda
del filtro numerico si applica una predistorsione
(prewarping) che permette di precompensare.