[eBook Ita - Ingegneria] Laddomada, Mondin - Elaborazione Numerica Dei Segnali

August 19, 2017 | Author: Giulia Grisendi | Category: Signal Processing, Fast Fourier Transform, Fourier Transform, Sound, Electric Power
Share Embed Donate


Short Description

Download [eBook Ita - Ingegneria] Laddomada, Mondin - Elaborazione Numerica Dei Segnali...

Description

Massimiliano Laddomada e Marina Mondin

Elaborazione Numerica dei Segnali

Indice

1 Introduzione 1.1 I segnali a tempo continuo . . . . . . . . . . . . . . . . . . . . 1.1.1 Un esempio di segnale analogico: il segnale vocale . . . 1.1.2 Classificazione dei segnali a tempo continuo . . . . . . 1.1.3 Il valor medio di un segnale a tempo continuo . . . . . . 1.1.4 Energia e potenza media di un segnale a tempo continuo 1.1.5 Le operazioni elementari sui segnali a tempo continuo . 1.1.6 Segnali armonici e sinusoidali . . . . . . . . . . . . . . 1.1.7 I segnali analogici elementari . . . . . . . . . . . . . . 1.1.8 Lo sviluppo in serie di Fourier . . . . . . . . . . . . . . 1.1.9 La trasformata di Fourier . . . . . . . . . . . . . . . . . 1.2 I segnali a tempo discreto: le sequenze numeriche . . . . . . . . 1.2.1 Classificazione dei segnali a tempo discreto . . . . . . . 1.2.2 Le sequenze elementari . . . . . . . . . . . . . . . . . . 1.2.3 Segnali armonici e sinusoidi a tempo discreto . . . . . . 1.2.4 Le operazioni elementari tra segnali a tempo discreto . . 1.2.5 Energia e potenza media di segnali a tempo discreto . . 1.2.6 Energia e potenza media di segnali analogici campionati 1.3 Le funzioni di correlazione di segnali a tempo discreto . . . . . 1.3.1 Un’applicazione della funzione di correlazione . . . . .

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

5 7 8 9 10 10 12 13 14 16 19 20 21 23 25 27 32 33 34 36

2 Campionamento e Quantizzazione 2.1 Il campionamento ideale . . . . . . . . . . . . . . . . . 2.1.1 Il fenomeno dell’aliasing . . . . . . . . . . . . . 2.2 Il campionamento reale . . . . . . . . . . . . . . . . . . 2.3 Campionamento con Sample and Hold . . . . . . . . . . 2.4 Campionamento di segnali analogici a banda illimitata . 2.5 La ricostruzione del segnale campionato: l’interpolazione 2.6 La quantizzazione uniforme . . . . . . . . . . . . . . . 2.6.1 L’errore di quantizzazione . . . . . . . . . . . . 2.6.2 Digitalizzazione di segnali musicali . . . . . . . 2.7 Quantizzazione e sovracampionamento . . . . . . . . .

. . . . . . . . . .

39 40 43 43 46 48 48 50 53 56 56

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

2

Capitolo 0

3 Analisi in Frequenza di Segnali a Tempo Discreto 3.1 La Trasformata di Fourier a tempo discreto-DTFT . . . . . . . . 3.1.1 Condizioni di esistenza della DTFT . . . . . . . . . . . 3.1.2 Proprietà della DTFT . . . . . . . . . . . . . . . . . . . 3.1.3 Proprietà della DTFT di sequenze reali e complesse . . . 3.1.4 Le relazioni di Parseval . . . . . . . . . . . . . . . . . . 3.1.5 DTFT notevoli . . . . . . . . . . . . . . . . . . . . . . 3.2 La Serie di Fourier a tempo discreto-DTFS . . . . . . . . . . . 3.3 La Trasformata di Fourier discreta-DFT . . . . . . . . . . . . . 3.3.1 La relazione tra la DTFT e la DFT . . . . . . . . . . . . 3.3.2 Valutazione della DTFT su frequenze discrete tramite la DFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.3 Proprietà della DFT . . . . . . . . . . . . . . . . . . . . 3.3.4 Applicazione della DFT al rilevamento di segnali . . . . 3.4 Algoritmi di Trasformata di Fourier Veloce (FFT) . . . . . . . . 3.4.1 Algoritmi di riduzione della complessità della DFT . . . 3.4.2 Algoritmo FFT: decimazione nel tempo . . . . . . . . . 3.4.3 Algoritmo FFT: decimazione in frequenza . . . . . . . . 3.4.4 Cenni sulla trasformata discreta del coseno . . . . . . . 3.4.5 Cenni ad altri algoritmi efficienti per il calcolo della DFT di sequenze . . . . . . . . . . . . . . . . . . . . . . . . 4 Analisi in Frequenza di Segnali a Tempo Continuo Campionati 4.1 Alcune considerazioni introduttive . . . . . . . . . . . . . . . . 4.1.1 La relazione di Parseval per segnali analogici campionati 4.2 La DTFT di un segnale analogico aperiodico campionato . . . . 4.3 La DFT di segnali analogici aperiodici campionati . . . . . . . . 4.4 La DFT di segnali analogici periodici . . . . . . . . . . . . . . 5 I sistemi Lineari Tempo Invarianti a Tempo Discreto 5.1 Classificazione dei sistemi a tempo discreto . . . . . . . . . . . 5.2 Analisi tempo-frequenza dei sistemi LTI . . . . . . . . . . . . . 5.2.1 Analisi dei sistemi LTI nel dominio del tempo: la risposta all’impulso . . . . . . . . . . . . . . . . . . . . . . . . 5.2.2 Risposta di un sistema LTI a sequenze generiche . . . . 5.2.3 Risposta di un sistema LTI a esponenziali complessi . . 5.2.4 Risposta di un sistema LTI a sequenze sinusoidali . . . . 5.2.5 Risposta di un sistema LTI a sequenze periodiche . . . . 5.2.6 Risposta in frequenza di sistemi LTI descritti da equazioni alle differenze . . . . . . . . . . . . . . . . . . . . . . . 5.2.7 Il concetto di filtraggio . . . . . . . . . . . . . . . . . . 5.3 Stabilità di sistemi LTI a tempo discreto . . . . . . . . . . . . . 5.4 Condizioni di fisica realizzabilità . . . . . . . . . . . . . . . . . 5.5 Il concetto di distorsione di un sistema LTI . . . . . . . . . . . . 5.6 Interconnessioni di sistemi LTI . . . . . . . . . . . . . . . . . . 5.6.1 Interconnessione serie di sistemi LTI . . . . . . . . . . .

. . . . . . . . .

59 60 63 64 66 69 71 73 76 78

. . . . . . . .

79 81 88 89 91 94 98 100

. 101 . . . . .

103 103 104 105 106 115

125 . 125 . 129 . . . . .

129 134 138 138 140

. . . . . . .

140 143 145 147 147 150 151

INDICE

5.7

5.6.2 Interconnessione parallelo di sistemi LTI . 5.6.3 Interconnessione in reazione di sistemi LTI Analisi di sistemi LTI mediante la DFT . . . . . . 5.7.1 Tecnica della sovrapposizione e somma . . 5.7.2 Tecnica della sovrapposizione e estrazione

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

6 La Trasformata z 6.1 Definizione . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 La relazione tra la DTFT e la trasformata z . . . . . . . . . . . 6.3 La relazione tra la trasformata z e gli operatori di DFT e DFS . . 6.4 Analisi della regione di convergenza . . . . . . . . . . . . . . . 6.4.1 La regione di convergenza di sequenze x(n) finite . . . . 6.4.2 La regione di convergenza di sequenze x(n) causali e illimitate . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.3 La regione di convergenza di sequenze x(n) anticausali e illimitate . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.4 La regione di convergenza di sequenze x(n) bilatere e illimitate . . . . . . . . . . . . . . . . . . . . . . . . . 6.5 Proprietà della trasformata z . . . . . . . . . . . . . . . . . . . 6.6 Trasformate z razionali . . . . . . . . . . . . . . . . . . . . . . 6.7 Inversione della trasformata z . . . . . . . . . . . . . . . . . . . 6.7.1 Metodo diretto . . . . . . . . . . . . . . . . . . . . . . 6.7.2 Metodo per divisioni successive . . . . . . . . . . . . . 6.7.3 Inversione per espansione in fratti semplici . . . . . . . 6.8 La trasformata z unilatera . . . . . . . . . . . . . . . . . . . . . 6.8.1 Le proprietà della trasformata z unilatera . . . . . . . . 6.8.2 Il teorema del valore iniziale . . . . . . . . . . . . . . . 6.8.3 Il teorema del valore finale . . . . . . . . . . . . . . . . 6.9 Analisi dei sistemi LTI mediante la trasformata z . . . . . . . . 6.9.1 Impiego della trasformata Z nella moltiplicazione tra polinomi . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.9.2 Analisi della stabilità di sistemi LTI . . . . . . . . . . . 6.9.3 Realizzabilità fisica di un sistema LTI . . . . . . . . . . 6.9.4 Progetto di filtri a tempo discreto mediante la tecnica del posizionamento dei poli e degli zeri . . . . . . . . . . . 6.9.5 Sistemi inversi . . . . . . . . . . . . . . . . . . . . . . 6.9.6 Sistemi LTI a fase minima . . . . . . . . . . . . . . . . 6.9.7 Sistemi LTI passa-tutto . . . . . . . . . . . . . . . . . . 6.9.8 Funzione di trasferimento di Sistemi LTI interconnessi . 6.10 Alcune applicazioni della trasformata z all’elaborazione dei segnali audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.10.1 Gli equalizzatori audio . . . . . . . . . . . . . . . . . . 6.10.2 Effetti audio digitali . . . . . . . . . . . . . . . . . . . 6.10.3 La tastiera a toni del telefono numerico . . . . . . . . .

3

. . . . .

152 153 154 156 158

. . . . .

161 161 163 165 167 167

. 168 . 171 . . . . . . . . . . . .

172 174 177 180 182 182 184 192 192 193 194 195

. 201 . 202 . 205 . . . . .

206 209 211 212 213

. . . .

215 215 217 219

4

Capitolo 0

7 Progetto di Filtri FIR 7.1 Le sequenze simmetriche . . . . . . . . . . . . . . . . . . . 7.1.1 Classificazione delle sequenze a fase lineare . . . . . 7.2 La relazione tra frequenze analogiche e numeriche . . . . . 7.3 Progetto di filtri FIR mediante le tecniche a finestra . . . . . 7.3.1 Considerazioni preliminari . . . . . . . . . . . . . . 7.3.2 La scelta della finestra di troncamento . . . . . . . . 7.3.3 La finestra di Kaiser . . . . . . . . . . . . . . . . . 7.3.4 Il progetto di filtri FIR con la tecnica a finestre . . . 7.4 Tecnica del campionamento della risposta in frequenza . . . 7.5 Progetto di filtri FIR ottimi . . . . . . . . . . . . . . . . . . 7.6 Filtri FIR a mezza-banda . . . . . . . . . . . . . . . . . . . 7.7 Trasformatore di Hilbert . . . . . . . . . . . . . . . . . . . 7.8 Filtri FIR derivatori . . . . . . . . . . . . . . . . . . . . . . 7.9 Confronto tra filtri FIR e IIR . . . . . . . . . . . . . . . . . 7.10 Cenni sulle tecniche di filtraggio adattativo . . . . . . . . . 7.10.1 Filtraggio adattativo: l’algoritmo dei minimi quadrati 7.10.2 Modellizzazione di un sistema LTI non noto . . . . . 7.10.3 Eliminazione dell’interferenza a banda stretta in un gnale a banda larga . . . . . . . . . . . . . . . . . . 8 Relazioni Matematiche Utili

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . se. .

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

223 224 226 232 233 234 239 244 245 248 251 259 261 262 263 264 265 268

. 268 271

1 Introduzione

I segnali sono presenti in molteplici forme in natura. Alcuni esempi di segnali sono l’andamento della voce umana al variare del tempo, l’andamento della temperatura nell’arco di un giorno, il segnale musicale, le vibrazioni del suolo in un particolare ambiente, ma, anche, una sequenza di immagini che scorrono nel tempo secondo una cadenza prestabilita. L’andamento di un segnale può essere rappresentato in termini di una o più variabili indipendenti, come il tempo, lo spazio, oppure la frequenza. Si pensi al segnale vocale registrato attraverso un microfono: le onde acustiche di pressione incidono sul materiale piezoelettrico contenuto nel microfono, il quale produce un livello di tensione proporzionale all’intensità delle onde acustiche che compongono il segnale vocale. Il microfono costituisce quindi un trasduttore da vibrazione sonora a segnale elettrico (in questo caso, una tensione). E’ la tensione equivalente prelevata attraverso il microfono che viene elaborata nei modi più disparati sia perché la voce possa essere trasmessa verso un destinatario secondo delle specifiche prestabilite, sia perché si desideri elaborarla o memorizzarla secondo un qualche formato adatto ad un’applicazione specifica. In questo contesto, l’elaborazione dei segnali costituisce la base per modificare, immagazzinare, oppure enfatizzare certe caratteristiche del segnale. Molto spesso l’elaborazione dei segnali permette di estrarre un segnale utile a partire da una sua copia corrotta da disturbi di una qualsiasi natura (fruscii, suoni estranei che si accavallano al suono musicale, ad esempio). In altre situazioni, invece, l’elaborazione dei segnali permette di creare un segnale particolare combinando in modo opportuno una serie di segnali provenienti da fonti diverse. L’esempio più vicino alla realtà è forse quello dei segnali musicali registrati durante un concerto: i suoni prodotti dai diversi strumenti musicali, la voce del cantante, ma anche i cori degli spettatori, sono prelevati attraverso microfoni separati, e poi combinati in modo opportuno in sala di registrazione per creare il segnale musicale finale. E’ chiaro, dunque, che i segnali convogliano dell’informazione legata ad una qualche grandezza fisica. Nel modello di segnale utilizzato in questo libro, si supporrà che la grandezza fisica originaria sia stata trasformata in una grandezza di tipo elettrico (corrente o tensione) tramite un opportuno trasduttore, ovvero in una grandezza normalizzata che rappresenta l’intensità del fenomeno rilevato, piuttosto che l’esatta grandezza fisica. I segnali considerati sono inoltre espressi, in

6

Capitolo 1

x(t)

x(t)

(a)

t

0

x(n)

n 0

1

t

0

x(n)

(c)

(b)

-1 0 1

(d)

n

Figura 1.1 Classificazione dei segnali. Segnale analogico (a). Segnale a tempo continuo e ampiezze discrete (b). Segnale a tempo discreto o sequenza (c). Segnale numerico o digitale (d).

genere, in funzione della variabile tempo, oppure in funzione di una o più variabili rispetto alle quali sono rilevati in natura. Le ampiezze assunte dal segnale, ma anche la variabile indipendente rispetto a cui è rappresentato, possono essere continue oppure discrete. Un segnale la cui variabile indipendente appartiene ad un sottoinsieme continuo è detto a tempo continuo. Ad un siffatto segnale viene in genere associato un modello matematico descritto da una funzione complessa x(t) con variabile indipendente t reale (figura 1.1-a). Un segnale la cui variabile indipendente appartiene ad un sottoinsieme discreto è detto a tempo discreto, o sequenza (figura 1.1-c). I segnali a tempo discreto possono rappresentare dei fenomeni che si manifestano non in modo continuo, ma secondo una cadenza temporale discreta, in genere regolare. Si pensi, a titolo di esempio, all’andamento delle nascite misurato ogni giorno in un dato luogo, oppure all’andamento della quotazione di un titolo azionario, il cui valore è determinato solo alla chiusura di ogni giornata di contrattazioni. Tuttavia, esistono delle applicazioni nelle quali i segnali a tempo discreto provengono dalla discretizzazione della variabile indipendente di un segnale a tempo continuo. Basti pensare al segnale musicale registrato in forma continua in sala di registrazione e poi discretizzato per poter essere immagazzinato sul CD audio. Un segnale a tempo continuo che assume ampiezze discrete è detto segnale analogico quantizzato (figura 1.1-b), mentre un segnale a tempo discreto che assume ampiezze discrete è detto digitale o numerico (figura 1.1-d). L’elaborazione di un segnale viene condotta attraverso sistemi e apparati elettronici in grado di modificare l’andamento del segnale al variare del tempo. I sistemi più semplici da analizzare dal punto di vista matematico sono quelli lineari e tempo invarianti. Si tratta di un modello matematico di un sistema reale che operi in regime di linearità, vale a dire secondo il principio della sovrapposizione degli effetti, ed in condizioni stazionarie, ovvero quando tutti i fenomeni transitori che ne condizionano il comportamento, rendendolo dipendente dal tempo, possano

Introduzione

7

essere ritenuti estinti. Tra gli esempi più importanti di sistema lineare e stazionario possiamo citare i filtri, gli equalizzatori audio, oppure i sistemi in grado di creare effetti musicali, quali il riverbero e l’eco. In questo capitolo, dopo una breve introduzione sui segnali a tempo continuo e a tempo discreto e ai relativi concetti di energia o potenza media, saranno presentate alcune operazioni elementari utili per comprendere i concetti sviluppati nei capitoli successivi. Ai fini della comprensione degli argomenti esposti, si presuppone che lo studente conosca i concetti basilari della teoria dei segnali analogici, quali spettro e banda di un segnale. Per approfondimenti sull’argomento, consigliamo i testi [1] e [2].

1.1 I segnali a tempo continuo Un fenomeno fisico che evolve in modo continuo al variare del tempo é rappresentato attraverso una funzione matematica x(t) in generale complessa e continua di una variabile indipendente reale e continua, denominata in genere come t (tempo). L’ampiezza del segnale x(t) al variare del tempo rappresenta l’intensità del fenomeno fisico stesso. Nel seguito, indicheremo come segnale analogico un segnale a tempo continuo la cui ampiezza appartiene ad un insieme continuo. I segnali che si manifestano nella realtà fisica hanno in genere un’istante d’inizio, to , e uno di fine, t1 , entrambi finiti. Questa considerazione ci porterebbe a definire un dominio finito [to , t1 ] sul quale il segnale x(t) assume i propri valori. Tuttavia, questa soluzione viene adottata raramente nella pratica per due ragioni. Innanzitutto, dovremmo specificare un dominio ogniqualvolta definiamo un segnale; in secondo luogo, le operazioni matematiche che talvolta vengono effettuate sui segnali risultano semplificate se i segnali possiedono un supporto pari all’intero asse reale del tempo. Il problema viene facilmente risolto estendendo il dominio [to , t1 ] di un segnale a tutto l’asse reale (−∞, +∞), tenendo presente, comunque, che le ampiezze di x(t) sono nulle all’esterno dell’intervallo [to , t1 ]. Nell’ambito delle telecomunicazioni, il dominio di un segnale è detto supporto. Da un punto di vista strettamente matematico, ha talvolta senso considerare segnali analogici rappresentati da distribuzioni matematiche, quali la delta di Dirac, δ(t), oppure la funzione generalizzata gradino, u(t − to ). Si tratta in realtà di modelli di segnali che s’incontrano nella realtà che ci circonda. Il primo rappresenta un fenomeno che nasce e si estingue in un tempo piccolissimo, al limite nullo, ma che si manifesta con un’intensità elevata; il secondo, invece, rappresenta il supporto di un fenomeno fisico assente sino ad un certo istante di tempo to , dopo il quale si manifesta e resta tale per un tempo infinito, o comunque molto più elevato dell’intervallo temporale in cui il fenomeno viene analizzato. Molto spesso, le distribuzioni rappresentano un modello abbastanza attendibile della realtà fisica, in grado di semplificare l’analisi matematica del segnale.

8

Capitolo 1

1.1.1 Un esempio di segnale analogico: il segnale vocale Il segnale vocale è formato da un’onda acustica di pressione generata dai movimenti della parte del corpo umano riservata alla produzione del suono. Il sistema di fonazione è composto dal diaframma, dai polmoni, dalla trachea, dalla laringe, che rappresenta l’organo che produce la voce, dalla cavità faringea (gola), dalla cavità orale e dalla cavità nasale. La laringe produce un’eccitazione periodica che genera i suoni detti vocalizzati attraverso la vibrazione delle corde o pieghe vocali. Lo spazio esistente tra le corde vocali è detto glottide. Le corde vocali sono a contatto l’una con l’altra e la glottide è chiusa quando non si emette alcun suono. Quando i polmoni espellono l’aria, la pressione sotto la glottide fa allontanare progressivamente le pieghe vocali a partire dal basso, finché la glottide non si apre facendo fluire l’aria. Questo effetto, combinato con le proprietà elastiche dei tessuti, tende a creare una vibrazione continua delle corde vocali, le quali producono una sequenza quasi periodica di impulsi di pressione che eccita il tratto vocale. Una vibrazione completa delle corde vocali costituisce un ciclo, mentre il numero di cicli di vibrazione che attraversa una data posizione al secondo rappresenta la frequenza dell’onda acustica, ed è misurato in Hz. E’ possibile distinguere tra due classi principali di suoni a seconda del modo in cui sono prodotti. I suoni vocalizzati, ottenuti mettendo in vibrazione le corde vocali, sono le vocali come la /o/ in Roma, e possiedono una durata tipica di decine di millisecondi. I suoni non vocalizzati, come, ad esempio, la /r/ in Roma, sono generati senza far vibrare le corde vocali, ma creando una stretta costrizione in un punto del tratto vocale a monte della quale si raccoglie l’aria proveniente dai polmoni. Liberando la costrizione, si genera una turbolenza che produce un suono simile a quello prodotto quando si sussurra. Il suono non vocalizzato così creato è assimilabile ad un rumore a spettro largo. I suoni non vocalizzati sono generalmente emessi per pronunciare le consonanti. Esiste poi una serie di suoni prodotti impiegando una combinazione di eccitazioni quasi periodiche prodotte dalle corde vocali, e di suoni di tipo non vocalizzato: si tratta dei cosiddetti suoni fricativi. La frequenza con cui vibrano le corde vocali è detta frequenza fondamentale, fo , e varia tra 50 e 250 Hz per gli uomini, e tra 120 e 500 Hz per le donne, con valori medi che si attestano a circa 120 Hz per gli uomini e 220 Hz per le donne. La frequenza fondamentale fo dipende dalla conformazione delle corde vocali del parlatore, e può variare anche di un’ottava a seconda dell’intonazione delle parole durante l’emissione di una frase. Il principio di emissione dei suoni è simile anche nel caso degli strumenti musicali, i quali, supportati da un’opportuna cassa di risonanza, emettono dei suoni armonici facendo vibrare delle corde di spessore e lunghezza opportune che determinano la frequenza e il tono del suono emesso. L’orecchio umano è in grado di percepire suoni con frequenze nell’intervallo [20, 20 · 103 ] Hz. Per questa ragione gli impianti HI-FI riproducono suoni in tale banda di frequenze.

Introduzione

9

Le bande di frequenza dei segnali presenti in natura si estendono da valori di circa 10−5 Hz nel caso della pressione barometrica, sino a 1022 Hz nel caso dei segnali emessi dai raggi cosmici. La tabella 1.1 mostra le bande di frequenza tipiche di segnali presenti in natura. Tabella 1.1 Bande di frequenza di alcuni segnali di interesse. Tipologia di segnale Segnali sismici Elettrocardiogramma Tensione di rete Segnale vocale Segnale musicale Segnale radio FM Cellulari Segnale TV Segnale satellitare

Bande di frequenza [Hz] [0.01, 10] [0, 100] [50, 60] [100, 4000] [20, 20000] [88 · 106 , 106 · 106 ] ∝ 920 · 106 [300 · 106 , 970 · 106 ] > 109

1.1.2 Classificazione dei segnali a tempo continuo Un segnale a tempo continuo x(t) può essere rappresentato da una funzione o una funzione generalizzata reale o complessa della variabile indipendente, in questo contesto indicata con t1 . I segnali che s’incontrano nella realtà fisica sono reali. I segnali complessi, invece, rivestono un ruolo fondamentale in alcuni campi dell’Ingegneria, e si ottengono, normalmente, sommando due segnali reali, xR (t) e xI (t), in modo tale da ottenere un segnale complesso x(t) = xR (t) + jxI (t). Un segnale x(t) può essere di durata finita o infinita, a seconda che sia identicamente nullo all’esterno di un intervallo finito di tempo [t0 , t1 ], con t0 , t1 < ∞, oppure che perduri per un intervallo di tempo infinito del tipo [t0 , +∞), (−∞, t1 ], oppure (−∞, +∞), dove t0 e t1 sono due istanti di tempo finiti. I segnali nulli per t < 0 sono detti causali, mentre i segnali nulli per t > 0 sono detti anticausali. Un segnale x(t) si dice periodico se si ripete identico a se stesso con cadenza regolare, T , ovvero se rispetta la relazione x(t) = x(t ± nT ) per ogni valore intero di n. Il periodo é il più piccolo valore di T per cui é valida la relazione di cui sopra.

1

Dato che nell’ambito delle telecomunicazioni nella maggior parte dei casi vengono considerati segnali che variano col tempo, nella trattazione che segue si farà sempre riferimento alla variabile t.

10

Capitolo 1

1.1.3 Il valor medio di un segnale a tempo continuo Il valor medio di un segnale x(t) con supporto infinito del tipo (−∞, +∞) é definito come: Z 1 +T /2 xv = lim x(t)dt (1.1) T −→∞ T −T /2 In elettrotecnica, il valor medio di un segnale è detto componente continua del segnale. Il valor medio di un segnale x(t) con supporto pari all’intervallo finito [T0 , T1 ], con T1 > T0 , é definito come: Z T1 1 xv = (1.2) x(t)dt T1 − T0 T0 Si tratta, chiaramente, dell’area sottesa dal segnale x(t) divisa per la sua durata. E’ semplice verificare che, per segnali costanti x(t) = k < ∞, il valor medio coincide con l’ampiezza k del segnale stesso.

1.1.4 Energia e potenza media di un segnale a tempo continuo Per quantificare il contenuto energetico di un generico segnale x(t), si introducono i concetti di energia o potenza media. Si consideri una resistenza di valore R ai cui capi è presente la tensione V , costante, prodotta da una batteria. E’ noto che, in queste condizioni, la resistenza dissipa per effetto Joule una potenza pari a P = V 2 /R, o, in termini equivalenti, P = R · I 2 , dove I = V /R é la corrente costante che attraversa la resistenza. Si consideri una potenza normalizzata, ovvero si ponga R = 1Ω e s’immagini, inoltre, che la tensione ai capi della resistenza vari nel tempo secondo una generica espressione x(t). Per quantificare l’energia dissipata per effetto Joule da questa resistenza di valore unitario, si definisce una potenza istantanea P (t) = |x(t)|2 come la potenza dissipata all’istante generico t sulla resistenza ai cui capi é presente una tensione x(t). A partire da queste considerazioni, si definisce l’energia Ex del segnale x(t) come l’area della potenza istantanea P (t) = |x(t)|2 : Z Ex =

Z

+∞

+∞

P (t) dt = −∞

|x(t)|2 dt

(1.3)

−∞

dove il valore assoluto permette il calcolo dell’energia anche per segnali complessi. Si noti che, per segnali x(t) reali, sussiste la relazione |x(t)|2 = x2 (t). I segnali per cui Ex < ∞ sono detti ad energia finita. Si noti che il prodotto P (t)dt é, dimensionalmente, il prodotto di una potenza per un tempo, ovvero un’energia espressa in Joule. Si noti, altresì, che i discorsi fatti in precedenza considerando x(t) come la tensione ai capi della resistenza, possono essere ripetuti considerando x(t) la corrente che attraversa la resistenza R di valore unitario. Per questa ragione, l’energia normalizzata Ex di un segnale

Introduzione

x(t)

x(t)

A

x(t)

A

0

T 2

E=A T/ 3 impulso triangolare

t

11

A

0

T 2

E=A T impulso rettangolare

t

0

T

t

2

E=A T/ 2 mezzo periodo di sinusoide

Figura 1.2 Energia di alcuni segnali. Si noti che l’energia di un segnale non dipende da eventuali traslazioni temporali.

x(t) viene valutata secondo la formula 1.3 indipendentemente dalla grandezza elettrica che il segnale rappresenta nella realtà. Il valore dell’energia di alcuni segnali comunemente incontrati nella realtà fisica, é riportata in figura 1.2. Si noti che l’energia Ex non dipende dal ritardo con cui si trasla il segnale x(t) sull’asse temporale, ma solo dall’area del segnale |x(t)|2 . In altre parole, l’energia di x(t) coincide con quella di x(t − T ) per qualsiasi T reale. Se si osserva l’equazione 1.3, ci si accorge che in relazione all’espressione analitica assunta dal segnale x(t), l’energia potrebbe non essere finita, si può cioè avere Ex −→ ∞, vale a dire x(t) non è un segnale a energia finita. In questi casi, si definisce una potenza media come il rapporto tra l’energia di x(t) valutata su un intervallo di tempo finito T , diviso l’intervallo T stesso, e poi si fa tendere l’ampiezza dell’intervallo all’infinito. In formule: Z +T /2 1 Px = lim |x(t)|2 dt (1.4) T −→+∞ 2T −T /2 I segnali per cui Px < ∞ sono detti segnali a potenza media finita. I segnali periodici, ad esempio, sono in genere segnali a potenza media finita. Per essi la potenza media espressa dall’equazione 1.4 assume la forma: Z 1 Px = |x(t)|2 dt (1.5) T T dove T è il periodo del segnale. I segnali non periodici per i quali l’energia diverge, possono ammettere potenza media finita data dall’equazione 1.4. L’equazione 1.4 ci suggerisce che i segnali a potenza media finita e non nulla (0 < Px < ∞) ammettono energia infinita (Ex −→ ∞). Al contrario, i segnali x(t) per cui l’energia é finita (Ex < ∞), ammettono potenza media nulla (Px = 0). Infine, da un punto di vista strettamente matematico, potrebbe capitare che un generico segnale x(t) possegga potenza media infinita: si tratta comunque di segnali di cui esiste solo un’espressione matematica, ma che non trovano riscontro nella realtà fisica.

12

Capitolo 1

x(t -τ )

x(t) 1

1

se τ 0

-T+τ 0 +τ

se τ >0 t

0

x(k t) k>1, k reale

T/k T

se τ 0 (ritardo), oppure di T secondi verso sinistra nel caso in cui T < 0 (anticipo). • Ribaltamento del tempo: dato un segnale x(t) generico, reale o complesso, il segnale x(−t) si ottiene ribaltando x(t) rispetto all’asse delle ordinate. • Scalamento del tempo: dato un segnale x(t) generico, reale o complesso, il segnale x(k · t) si ottiene comprimendo il segnale x(t) di un fattore k sull’asse ¡ ¢ dei tempi (k é una costante reale maggiore o uguale a 1). Il segnale x kt coincide col segnale x(t) dilatato di un fattore k.

Introduzione

x(t)

x(t / 2)

1

x(t / 2-1/2) 1

1

0

3

t

13

0

6

t

0

7

1

t

3 2 0

1 3

t

0

2+x(t)

1

t

4

1

x(t-1)

0

2

3.5

t

x(2t-4)

Figura 1.4 Descrizione grafica delle operazioni di scalamento e ritardo di un generico segnale x(t).

La figura 1.3 mostra degli esempi grafici riferiti alle operazioni prima menzionate. Dato il segnale x(t), il segnale definito come y(t) = x(k · t − T ) può essere ottenuto inserendo un ritardo T seguito da una compressione di un fattore k, oppure eseguendo una compressione di un fattore k seguita da un ritardo pari a T /k. x(t) −→ x(t − T ) −→ x(k · t − T ) x(t) −→ x(k · t) −→ x(k · t − T )

(1.6)

Un esempio di applicazione di questi concetti é mostrato in figura 1.4. In riferimento all’operazione x(t) =⇒ x(2t − 4) in figura 1.4, si noti che vale la seguente relazione x (2 · (t − 2)). L’operazione composta dalla compressione di un fattore 2 e dal successivo ritardo di 2, si ottiene prima comprimendo di un fattore 2 il segnale x(t), e poi ritardando di 2 (e non di 4!) il segnale risultante. E’ noto che un qualsiasi segnale x(t) reale può essere espresso come la somma di un segnale pari ed uno dispari, cioè x(t) = xp (t) + xd (t), dove xp (t) é un segnale pari e xd (t) é un segnale dispari della variabile indipendente tempo. Dato il segnale x(t), le parti pari e dispari si ricavano come segue: xp (t) = xd (t) =

1 2 x(t) 1 2 x(t)

+ 12 x(−t) −

(1.7)

1 2 x(−t)

Si noti che se x(t) é pari, allora xd (t) = 0; in modo analogo, se x(t) é dispari, allora xp (t) = 0.

1.1.6 Segnali armonici e sinusoidali I segnali armonici e le sinusoidi sono le forme d’onda più impiegate nell’ambito dell’elaborazione dei segnali e delle telecomunicazioni. L’importanza di questa classe di segnali deriva da un risultato fondamentale della teoria delle funzioni, lo

14

Capitolo 1

sviluppo in serie di Fourier, secondo cui un qualsiasi segnale con supporto finito, convenzionalmente indicato con [− T2 , + T2 ], che soddisfi dei requisiti particolari, ma neanche troppo stringenti da un punto di vista strettamente pratico, può essere rappresentato come una opportuna combinazione lineare di segnali esponenziali complessi con frequenze multiple di 1/T , ognuno con un modulo ed una fase che dipendono dal particolare segnale in esame. L’espressione analitica generale di una sinusoide a frequenza f0 é: xc (t) = A cos(2πf0 t + θ)

(1.8)

L’espressione analitica generale di un esponenziale complesso (o segnale armonico) a frequenza f0 = T10 é: x(t) = Aej(2πf0 t+θ)

(1.9)

Inoltre, i due segnali sono legati dalla relazione di Eulero: A j(2πf0 t+θ) A −j(2πf0 t+θ) e + e . 2 2 (1.10) Molto spesso l’analisi dei segnali viene condotta rispetto alla variabile pulsazione, definita come ω0 = 2πf0 . La combinazione lineare di N sinusoidi, ognuna con una certa frequenza fi = 1 , per i = 1, . . . , N , é un segnale periodico di periodo Ts pari al minimo comune Ti multiplo tra i periodi delle N sinusoidi, se e solo se esiste un rapporto razionale tra qualsiasi coppia di periodi Ti , Tj , ∀i 6= j. Il periodo della combinazione corrisponde al più piccolo intervallo di tempo su cui ogni sinusoide presenta un numero intero di periodi. La frequenza corrisponde, di conseguenza, al più grande comune divisore tra le N frequenze fi , i = 1, . . . , N . La potenza di una somma di N sinusoidi che ammettono un periodo comune Ts , risulta pari alla somma delle potenze delle singole sinusoidi: la ragione é che quando si valuta il quadrato della somma delle N sinusoidi, i termini incrociati cos(2πfi t + θ) · cos(2πfj t + θ), ∀i 6= j, possiedono integrale nullo sul periodo comune Ts . xc (t) = A cos(2πf0 t + θ) = 0

(1.11)

Introduzione

• Funzione generalizzata rampa:

½

r(t) = t · u(t) = • Funzione generalizzata segno:

½

sgn(t) =

0, t < 0 t, t > 0

−1, t < 0 +1, t > 0

15

(1.12)

(1.13)

• Funzione generalizzata porta: ½ pT (t) =

T 2 T 2

(1.14)

|t| < T |t| ≥ T

(1.15)

1, |t| < 0, |t| >

• Funzione triangolo: ½ t2T (t) =

1− 0,

|t| T ,

• Funzione Sinc:

sin(πBt) (1.16) πBt dove B è un parametro finito. Si noti che sinc(Bt)|t=0 = 1, e che la funzione sinc(Bt) si annulla negli istanti di tempo t = Bk , ∀k intero e non nullo. • Funzione generalizzata delta di Dirac, δ(t): ½ 0, t 6= 0 δ(t) = (1.17) ∞, t = 0 sinc(Bt) =

Tra tutti i segnali visti sopra (vedi figura 1.5), la funzione generalizzata δ(t) riveste un ruolo fondamentale nella teoria dei segnali. Analizziamone, perciò, le proprietà. La definizione di δ(t) fornita nell’equazione 1.17 si basa sui presupposti che l’area sottesa dalla δ(t) valga 1, vale a dire: Z +∞ δ(τ )dτ = 1 (1.18) −∞

Il segnale δ(t − T ) descrive una delta di Dirac centrata nell’istante di tempo T . L’area sottesa dalla funzione generalizzata δ(t − T ) può essere ottenuta per integrazione su un intervallo di tempo che include T , cioè: ½ Z T2 1, T1 < T < T2 (1.19) δ(τ − T )dτ = 0, altrimenti T1 La funzione generalizzata δ(t) é legata alla funzione generalizzata gradino Rt tramite la relazione δ(t) = du(t) dt , da cui segue che u(t) = −∞ δ(τ )dτ . Vediamo alcune proprietà della funzione generalizzata δ(t).

Capitolo 1

16

u(t)

sgn(t)

r(t)=t u(t) 1

1

t

0

t

0

δ (t-T) 1

T

t

-T

0

1

T

t

-T/2

triangolo

Delta di Dirac

t segno -1

p T(t)

t 2T(t)

1

0

0

rampa

gradino

0

T/2

t

porta

Figura 1.5 Descrizione grafica dei segnali elementari.

• • • •

¯ ¯ Scalamento: δ (α(t − β)) = ¯ α1 ¯ δ (t − β) Prodotto: x(t) · δ (tR − T ) = x(T )δ (t − T ) +∞ Area del prodotto: −∞ x(τ )δ(τ − T )dτ = x(T ) Convoluzione: applicando la proprietà dell’area del prodotto, si ottiene Z +∞ x(t) ? δ(t − T ) = x(t − τ )δ(τ − T )dτ = x(t − T ) −∞

dove l’operatore di convoluzione 0 ?0 tra due generiche funzioni x(t), h(t) é definito come segue: Z +∞ Z +∞ h(τ )x(t − τ )dτ x(τ )h(t − τ )dτ = x(t) ? h(t) = −∞

−∞

1.1.8 Lo sviluppo in serie di Fourier Uno degli argomenti più importanti trattati in questo libro riguarda l’analisi dei sistemi lineari e tempo-invarianti (LTI). E’ già stato anticipato che un sistema LTI rappresenta il modello di un qualsiasi circuito elettronico a tempo continuo o discreto, che operi in regime di linearità ed in condizioni stazionarie, cioé in una situazione in cui tutti i fenomeni transitori possono essere ritenuti estinti. Si tratta di un modello matematico di un sistema reale, ma che conduce ad una trattazione matematica relativamente semplice. Le funzioni armoniche x(t) = ej(2πf0 t) sono le autofunzioni dei sistemi LTI, cioé quelle funzioni che, se poste in ingresso ad un sistema LTI, vengono restituite all’uscita identiche a se stesse, ma moltiplicate per una costante complessa

Introduzione

17

(autovalore), ovvero vengono restituite all’uscita con la medesima frequenza ma con un modulo ed uno sfasamento imposte dal sistema. In altre parole, un risultato fondamentale della teoria dei segnali assicura che se in ingresso ad un sistema LTI poniamo un segnale x(t) = ej(2πf0 t) , in uscita troviamo un segnale del tipo y(t) = Ho · ej(2πf0 t+ϕ) , ovvero un segnale armonico con la medesima frequenza f0 , ma con un’ampiezza Ho ed una rotazione di fase ϕ imposte dal sistema. Poichè i sistemi lineari operano secondo il principio della sovrapposizione degli effetti, si può pensare di analizzare la risposta di un sistema LTI ad un qualsiasi segnale d’ingresso x(t), costituito da una combinazione lineare di segnali elementari, semplicemente combinando in modo opportuno le risposte del sistema ad ogni segnale elementare in ingresso. A questo riguardo risulterebbe utile un risultato matematico che ci permetta di scrivere un qualsiasi segnale a tempo continuo x(t) di supporto finito come una combinazione lineare di una serie di segnali elementari, ognuno moltiplicato per un peso opportuno. Il risultato cercato è fornito dalla teoria dello sviluppo in serie di Fourier, che utilizza quali funzioni elementari gli complessi a supporto limitato del tipo x(t) = ej(2πkf0 t) , con £ esponenziali ¤ T T t ∈ − 2 ; + 2 . Analizziamone i presupposti matematici. Per introdurre la serie di Fourier, si definisce prima uno spazio opportuno dei segnali che ammettono energia finita su un intervallo di tempo generico [− T2 ; + T2 ]. Si stabilisce una base opportuna dei segnali ad energia finita sul medesimo intervallo [− T2 ; + T2 ], e si definisce una metrica di prodotto scalare necessaria per valutare le proiezioni di un qualsiasi segnale su una generica funzione della base dei segnali2 . In base alle considerazioni introdotte a proposito dei sistemi LTI, nella teoria dei segnali ha senso considerare una base di funzioni costituita dalle funzioni armoniche n { √1T ej2π T t , ∀n ∈ (−∞, +∞)}, ad energia finita ed ortogonali sull’intervallo [− T2 ; + T2 ]. Si noti che è possibile definire molte altre basi di funzioni ortogonali ad energia finita sull’intervallo [− T2 ; + T2 ], tuttavia, quella degli esponenziali complessi a supporto limitato, permette di mettere in evidenza il contenuto spettrale di un segnale, oltre ad essere completa per qualunque segnale. Definita la base di funzioni, è necessaria una metrica di prodotto scalare. Nella teoria dei segnali si definisce il prodotto scalare tra due funzioni x(t) e y(t) ad energia finita come: Z < x(t), y(t) >=

+ T2

− T2

x(t)y ∗ (t)dt

(1.20)

E’ possibile, a questo punto, introdurre lo sviluppo in serie di Fourier: una qualsiasi funzione x(t), ad energia finita sull’intervallo [− T2 ; + T2 ] [1, 2], ammette 2

Si noti che i concetti introdotti sono analoghi ai concetti di base vettoriale e prodotto scalare introdotti in geometria, in base ai quali è possibile rappresentare qualunque vettore appartenente allo spazio definito dalla base come combinazione lineare dei versori della base, ognuno pesato per un fattore calcolato come la proiezione del vettore lungo quel particolare versore della base.

18

Capitolo 1

x(t)

-to

-T/2

to x r (t)

x r (-to)

segnale regolarizzato

x r (to) to

-to

-T/2

t

T/2

T/2

t

Figura 1.6 Descrizione grafica del segnale regolarizzato.

una rappresentazione del tipo: ·

+∞ X

T T x(t) = cn ϕn (t), ∀t ∈ − ; + 2 2 n=−∞ dove le funzioni ϕn (t) sono definite come segue {ϕn (t) = i coefficienti cn sono definiti come: 1 cn =< x(t), ϕn (t) >= √ T Ponendo µn =

cn √ , T

Z

+ T2

− T2

¸ (1.21) n √1 e+j2π T t }+∞ n=−∞ , T

n

x(t)e−j2π T t dt

e

(1.22)

è possibile scrivere che:

x(t) =

+∞ X

n +j2π T t

µn e

n=−∞

· ¸ T T , ∀t ∈ − ; + 2 2

(1.23)

dove i coefficienti µn sono definiti come segue: µn =

1 T

Z

+ T2

− T2

n

x(t)e−j2π T t dt

(1.24)

Se la funzione x(t) possiede delle discontinuità di prima specie nei punti di ascissa t = ti , la serie di Fourier converge al segnale x(t) regolarizzato, vale a

Introduzione

19

dire al segnale xr (t) ottenuto da x(t) assumendo pari a xr (ti ) =

+ x(t− i ) + x(ti ) 2

il valore della funzione xr (t) in ogni punto ti di discontinuità. Un esempio grafico della funzione regolarizzata xr (t) è mostrato in figura 1.6. La relazione 1.23 rappresenta un’equazione di sintesi: noti i pesi µn , ∀n, è possibile generare qualsiasi forma d’onda x(t) semplicemente combinando in modo lineare le funzioni armoniche ϕn (t). L’efficacia dello sviluppo in serie di Fourier deriva dal fatto che è relativamente semplice generare una sinusoide ad una specifica frequenza f0 . In questo modo, un qualsiasi segnale x(t), complicato quanto si voglia, può essere sintetizzato in modo agevole attraverso la combinazione 1.23, a partire dalla conoscenza delle sue proiezioni lungo la base dei segnali ϕn (t). Considerazioni di questo genere si applicano ai generatori di funzioni, strumenti di misura molto impiegati nell’ambito delle misure elettroniche, con i quali è possibile generare una qualsiasi forma d’onda a partire dalla conoscenza dei pesi µn . Nell’applicazione descritta, i pesi sono valutati preventivamente e poi sono immagazzinati in opportune memorie presenti nell’apparato di misure. n Se si trascura la limitazione temporale t ∈ [− T2 ; + T2 ], i segnali e+j2π T t , ∀n, sono periodici di periodo T , ed è, quindi, possibile estendere la rappresentazione 1.23 ad una qualsiasi funzione xp (t) periodica di periodo T generico, semplicemente considerando la formula 1.23 valida su tutto l’asse reale t ∈ (−∞, +∞).

1.1.9 La trasformata di Fourier Un modo alternativo per rappresentare un segnale x(t) a tempo continuo, aperiodico, ad energia finita, e definito su tutto l’asse reale, è rappresentato dalla trasformata di Fourier, definita come: Z +∞ X(fa ) = x(t)e−j2πfa t dt (1.25) −∞

a cui corrisponde la formula di inversione, detta antitrasformata di Fourier: Z +∞ x(t) = X(fa )e+j2πfa t dfa (1.26) −∞

E’ possibile condurre alcune osservazioni. • La trasformata di Fourier è un operatore matematico che permette di trasformare una funzione del tempo in una della variabile frequenza fa . Questa è una differenza sostanziale rispetto allo sviluppo in serie di Fourier, nel quale la funzione analizzata continua ad essere rappresentata nel dominio del tempo. Si tratta di un modo alternativo per analizzare un generico segnale a supporto illimitato, che può rendere più evidenti alcune caratteristiche importanti dal punto

20

Capitolo 1

Tc

x(nTc )

0

nTc

x(t) t

x(n) x(-1) x(-2) x(0) x(1)

-1 0

1

x(5) x(4) x(3)

n

x(2)

Figura 1.7 Descrizione grafica dell’operazione di discretizzazione temporale di un segnale analogico.

di vista delle telecomunicazioni, come ad esempio il contenuto armonico, che non analizzando il segnale direttamente nel dominio del tempo. • Il segnale x(t) viene rappresentato come la somma, espressa dall’integrale nell’equazione 1.26, di infinite componenti armoniche e+j2πfa t di ampiezza infinitesima X(fa )dfa . • La trasformata di Fourier in 1.25 esiste per le funzioni x(t) per cui l’integrale converge in modo uniforme alla funzione X(fa ). Esistono diverse condizioni sufficienti di esistenza della trasformata di Fourier. Per i nostri scopi, basti dire che la classe dei segnali x(t) ad energia finita sull’asse reale del tempo ammette una trasformata di Fourier X(fa ) definita dall’equazione 1.25.

1.2 I segnali a tempo discreto: le sequenze numeriche I segnali a tempo discreto, altresì detti sequenze, sono definiti rispetto ad una variabile indipendente che assume solo valori interi, generalmente indicati con la lettera n. Tali segnali, dunque, sono rappresentati come una sequenza di numeri indicizzata dalla variabile temporale discreta n. Un segnale x(n) a tempo discreto é detto digitale, o numerico, se assume soltanto ampiezze discrete. I segnali digitali sono quelli comunemente elaborati dai processori digitali presenti nei sistemi numerici, e possono essere ottenuti attraverso le operazioni

Introduzione

21

di campionamento e di quantizzazione applicate ad un segnale analogico x(t). A titolo di esempio, si immagini di discretizzare l’asse del tempo di un segnale analogico x(t), del tipo mostrato in figura 1.7, con una cadenza regolare di periodo Tc , estraendo una sequenza di numeri x(nTc ), ∀n ∈ (−∞; +∞). Il passo di tempo Tc é detto intervallo di discretizzazione temporale, o periodo di campionamento. Nei segnali a tempo discreto ricavati dal campionamento di un segnale analogico é prassi comune sottintendere il passo di campionamento Tc , ottenendo così una sequenza di numeri reali x(n) definita solo per valori interi della variabile n.

1.2.1 Classificazione dei segnali a tempo discreto In modo del tutto analogo a quanto visto per i segnali a tempo continuo, anche i segnali a tempo discreto possono essere classificati in base al relativo comportamento temporale. Durata di una sequenza: un sequenza x(n) può essere di durata, o lunghezza, finita o infinita, a seconda che sia identicamente nulla all’esterno di un intervallo finito di tempo [n0 , n1 ], con n0 , n1 < ∞, oppure che perduri per un intervallo di tempo infinito del tipo [n0 , +∞), (−∞, n1 ], oppure (−∞, +∞), dove n0 e n1 sono due istanti di tempo finiti. Il supporto temporale di una sequenza di durata finita è pari a N = n1 − n0 +1, e in tale intervallo la sequenza assume N campioni. Causalità: una sequenza x(n) è detta causale se vale la relazione x(n) = 0, ∀n < 0. Una sequenza per cui x(n) = 0, ∀n ≥ 0 è detta anticausale. Infine, una sequenza che presenta campioni non nulli sia sull’asse del tempo discreto negativo, sia su quello positivo, è detta bilatera. Parità: una sequenza x(n) reale, cioè che assume campioni nel campo reale, è detta pari se soddisfa la relazione x(n) = x(−n), mentre è detta dispari se soddisfa la relazione x(n) = −x(−n). L’andamento di una coppia di sequenze, rispettivamente pari e dispari, è mostrato in figura 1.8. Si noti che una sequenza x(n) dispari ha sempre coefficiente nullo nell’origine del tempo discreto, cioé x(0) = 0. Una sequenza x(n) complessa, cioè che assume campioni nel campo complesso, è detta coniugata simmetrica se soddisfa la relazione x(n) = x∗ (−n)3 , mentre è detta coniugata antisimmetrica se soddisfa la relazione x(n) = −x∗ (−n). E’ noto che una qualunque sequenza complessa x(n) può essere rappresentata come la somma di due sequenze, una coniugata simmetrica e una coniugata 3 La notazione x∗ (n) indica l’operazione di complesso coniugato. Una qualunque sequenza complessa può essere decomposta in forma rettangolare come x(n) = 2fo ⇒ p < . 2 Questa condizione equivale ad imporre di estrarre più di due campioni per pea −fo )Ts ) e riodo To della sinusoide. Si noti che, se fc = 2fo , i due lobi sin(π(f π(fa −fo ) sin(π(fa +fo −fc )Ts ) π(fa +fo −fc )

si sovrappongono tra loro nella frequenza fo . 2. Se N è un parametro libero della DFT, allora è necessario scegliere fc in modo da evitare l’aliasing tra i due lobi sinc(). Nell’ipotesi di scegliere fc = pf fo , con pf > 2 per evitare l’aliasing, allora i campioni estratti nella sinusoide nel tempo sono spaziati della quantità f1c = Tc = pf1fo , da cui si ottiene: Tc =

To ⇒ To = pf Tc . pf

E’ chiaro dunque che pf rappresenta il numero di campioni per periodo della sinusoide. Ricordando che Ts = pTo , si ottiene una condizione che lega N ai parametri p e pf : Ts = p · To = p · pf Tc ⇒ N = p · pf . E’ opportuno scegliere p e pf in modo tale che il prodotto p · pf sia un numero intero. Esempio 4.4 si valuti la DFT del segnale periodico x(t) = cos(2πfo t), con fo = 100 Hz. Soluzione: seguendo le regole generali dedotte in precedenza, si deve scegliere un multiplo intero di periodi di x(t), a partire da t = 0, dal quale estrarre N campioni su cui applicare la DFT. Innanzitutto si deve scegliere una frequenza di campionamento almeno pari a due volte fo . Ad esempio, si può scegliere fc = 4 · fo = 400 Hz. Nell’ipotesi di campionare x(t) su k = 4 periodi, si devono estrarre N = fokTc = 16 campioni da t = 0 sino a t = fko .

120

Capitolo 4

1

x(t)

0.5

0

−0.5

−1

0

0.005

0.01

0.015

0.02 t

0.025

0.03

0.035

0.04

8

|X(f)|

6

4

2

0

0

0.1

0.2

0.3

0.4

0.5 f

0.6

0.7

0.8

0.9

1

Figura 4.12 Campioni estratti dal segnale x(t) = cos(2πfo t) e spettro valutato con la DFT.

Si noti che i due campioni non nulli dello spettro si trovano in corrispondenza delle frequenze numeriche ffoc = 0.25 e 1 − ffoc = 0.75. Infine, si noti che i due campioni estratti dalla DFT sono pari a N = 16 volte i valori dei coefficienti dello sviluppo in serie di Fourier, i quali valgono: Z To n ejπ(1−n) sin(π(1 − n)) e−jπ(1+n) sin(π(1 + n)) 1 cos(2πfo t)e−j2π To t dt = + µn = To 0 2 π(1 − n) 2 π(1 + n) (4.24) I coefficienti µn valgono zero ∀n 6= ±1. Inoltre, µ1 = µ−1 = 12 . Si ricordi che l’indice n indica la frequenza Tno dell’ennesima armonica dello sviluppo in serie di Fourier. I campioni restituiti dalla DFT sono mostrati in figura 4.12. Esempio 4.5 si valuti la DFT del segnale x(t) = 1 + 2 cos(2πfo t), con fo = 50 Hz. Soluzione: innanzitutto si deve scegliere una frequenza di campionamento pari ad almeno due volte fo , la frequenza massima dello spettro del segnale x(t). Ad esempio, si può scegliere fc = 4 · fo = 200 Hz. Nell’ipotesi di campionare x(t) su k = 4 periodi, si devono estrarre N = fokTc = 16 campioni da t = 0 sino a t = fko . Si noti che i tre campioni non nulli dello spettro si trovano in corrispondenza delle frequenze 0, ffoc = 0.25 e 1 − ffoc = 0.75. Infine, si noti che i due campioni estratti dalla DFT sono pari a N volte i valori dei coefficienti dello sviluppo in serie di Fourier. I coefficienti µn valgono zero

Analisi in Frequenza di Segnali a Tempo Continuo Campionati

121

3

x(t)

2

1

0

−1

0

0.01

0.02

0.03

0.04 t

0.05

0.06

0.07

0.08

20

|X(f)|

15

10

5

0

0

0.1

0.2

0.3

0.4

0.5 f

0.6

0.7

0.8

0.9

1

Figura 4.13 Campioni estratti dal segnale x(t) = 1+2 cos(2πfo t) e spettro valutato con la DFT.

∀n, tranne µ0 = 1, µ1 = µ−1 = 1. I campioni restituiti dalla DFT sono mostrati in figura 4.13. Gli esempi precedenti si riferivano a segnali periodici ma con spettro a banda limitata, vale a dire nullo oltre una particolare frequenza Bx < ∞. Se un segnale periodico possiede spettro di supporto illimitato, allora non è più possibile evitare l’effetto dell’aliasing. In linea di principio, si procede scegliendo un intervallo di osservazione multiplo del periodo fondamentale To ed una frequenza di campionamento sufficientemente elevata da contenere l’effetto dell’aliasing. Una regola pratica suggerisce che per contenere l’errore dell’aliasing sulla p-esima armonica, fp = Tpo , entro circa il 5% bisogna scegliere una frequenza di campionamento fc ≥ 8fp . Se si sceglie fc = T8po , allora su k periodi del segnale si estraggono N = kTo · fc = kTo T8po = 8kp campioni. Analizziamo un esempio. Esempio 4.6 si calcoli la DFT del segnale periodico xp (t) che, nel periodo fondamentale To = 1 s, vale: ½ x(t) =

1, ∀ t ∈ [0; 0.5)s 0, ∀ t ∈ [0.5; 1)s

(4.25)

Soluzione: questo segnale possiede spettro con supporto illimitato. Infatti, la

122

Capitolo 4

sua trasformata di Fourier vale: ¡ ¢ ¶ ¶ µ µ +∞ +∞ ³n´ 1 X sin πn n 1 X n −j π2 n −j π2 n 2 X(fa ) = = sinc e e δ fa − δ fa − πn 2 n=−∞ To 2 n=−∞ 2 To 2 (4.26) dove To = 1 s. Inoltre, i coefficienti dello sviluppo in serie di Fourier per il segnale in esame valgono: Z

Z

³n´ e−j 2 n x(t)e e dt = sinc 2 2 0 0 (4.27) Per l’analisi in frequenza possiamo impiegare i risultati dedotti in precedenza. Osservando le ampiezze delle componenti spettrali del segnale, si nota che la nona portante possiede un’ampiezza in modulo pari a 12 sinc(4.5) ≈ 0.035, decisamente inferiore all’ampiezza 1/2 della componente continua del segnale. Possiamo, perciò, pensare di contenere l’aliasing in frequenza sino alla decima portante. Questo significa che dobbiamo scegliere fc = 8 · T10o = 80 Hz, e, perciò, dobbiamo estrarre fc To = 80 campioni in un periodo di durata 1 s. Inoltre, dobbiamo prestare attenzione al fatto che il segnale x(t) va regolarizzato assegnandone il valore 1/2 nei due istanti di tempo t = 0 e t = To /2 in cui presenta discontinuità di prima specie. Con questa scelta dei parametri, la DFT restituisce i valori riportati in figura 4.14, dove è anche riportato l’andamento dei campioni estratti dal segnale regolarizzato. E’ evidente che l’effetto dell’aliasing intorno alla frequenza f = 0.5 appare decisamente contenuto. Si noti come i campioni della DFT risultano pari a N volte i coefficienti µn dello sviluppo in serie di Fourier. 1 µn = To

To

−j2π Tn t o

1 dt = To

To 2

π

−j2π Tn t o

Nella pratica possono esistere casi in cui non si riesca ad individuare il periodo To di un segnale. Per evitare che si manifesti in modo accentuato l’effetto del disadattamento tra l’estensione periodica del segnale dovuta alla DFT, e la periodicità spettrale intrinseca dovuta al campionamento, conviene estrarre un numero sufficientemente grande di campioni in modo tale da osservare il segnale su un arco temporale elevato.

Analisi in Frequenza di Segnali a Tempo Continuo Campionati

123

1 0.8

x(t)

0.6 0.4 0.2 0

0

0.1

0.2

0.3

0.4

0.5 t

0.6

0.7

0.8

0.9

1

0

0.1

0.2

0.3

0.4

0.5 f

0.6

0.7

0.8

0.9

1

40

|X(f)|

30

20

10

0

Figura 4.14 Campioni estratti dal segnale periodico e relativo spettro valutato con la DFT.

124

5 I sistemi Lineari Tempo Invarianti a Tempo Discreto

L’elaborazione dei segnali a tempo discreto é condotta attraverso i sistemi a tempo discreto. La descrizione del comportamento di tali sistemi dipende dal modo in cui reagiscono a dei specifici segnali d’ingresso. In ambito pratico, la classe di sistemi più impiegata è quella dei sistemi lineari e tempo invarianti (LTI), o stazionari, il cui comportamento nel dominio del tempo é espresso da una funzione specifica, la risposta all’impulso h(n). L’analisi dei sistemi LTI può essere condotta attraverso tre modi alternativi. Generalmente, un sistema qualsiasi risponde ad una sequenza d’ingresso secondo quanto espresso dalla cosiddetta relazione ingresso-uscita (I/O), una relazione matematica che lega il segnale a tempo discreto in ingresso al sistema, al segnale in uscita. Quando tale relazione è lineare e stazionaria, allora l’analisi del sistema può essere condotta nel dominio del tempo discreto attraverso la risposta all’impulso, ovvero nel dominio delle frequenze numeriche attraverso la risposta in frequenza. Il capitolo verte sull’analisi dei sistemi LTI nei domini del tempo discreto e delle frequenze numeriche.

5.1 Classificazione dei sistemi a tempo discreto Un sistema a tempo discreto è un dispositivo che trasforma una sequenza x(n) in ingresso in una sequenza y(n) d’uscita, secondo quanto descritto da un operatore L [·]1 : y(n) = L [x(n)] In base alla espressione matematica dell’operatore L [·] é possibile distinguere i seguenti sistemi a tempo discreto. Sistemi Lineari: sono i sistemi la cui relazione I/O soddisfa il principio di sovrapposizione degli effetti secondo cui la risposta ad una combinazione lineare 1

D’ora in poi indicato con l’acronimo I/O.

126

Capitolo 5

x 1 (n)

y1(n)=L[x 1 (n)]

2 1 0 1 2 3 4 ...

n

sistema lineare L[x(n)]

2 1 0 1 2 3 4 ...

x 2 (n)

y2(n)=L[x 2 (n)]

2 1 0 1 2 3 4 ...

n

sistema lineare L[x(n)]

2 1 0 1 2 3 4 ...

x 2 (n)+ x 1 (n) 3 2 1 0 1 2 3 4 ...

n

n

n

y(n)=L[x 1 (n)]+L[x 2 (n)] sistema lineare L[x(n)]

3 2 1 0 1 2 3 4 ...

n

Figura 5.1 Esempio del comportamento di un generico sistema lineare in presenza di una sequenza x(n) che può essere scomposta in due sequenze x1 (n) e x2 (n), alle quali il sistema risponde con le sequenze y1 (n) e y2 (n), rispettivamente.

x1 (n) + x2 (n) di ingressi corrisponde alla combinazione delle risposte del sistema ad ogni singolo ingresso. Dal punto di vista matematico, questa proprietà si formalizza come segue: dati due numeri reali α1 e α2 arbitrari, allora deve valere la seguente relazione: L [α1 · x1 (n) + α2 · x2 (n)] = α1 · L [x1 (n)] + α2 · L [x2 (n)]

(5.1)

per qualunque possibile combinazione di segnali d’ingresso x1 (n) e x2 (n). La linearità permette di elaborare la risposta ad una sequenza d’ingresso più o meno complicata, ma che può essere scomposta in una combinazione pesata di segnali a tempo discreto elementari, in modo semplice: la risposta é pari alla combinazione delle risposte ad ogni singolo segnale elementare presente all’ingresso del sistema come se l’altro segnale fosse assente. Un esempio del comportamento di un sistema lineare ad un ingresso x(n) che può essere rappresentato come x(n) = x1 (n) + x2 (n) è riportato in figura 5.1. Sistemi tempo invarianti o stazionari: sono i sistemi la cui relazione I/O produce un segnale d’uscita y(n) che dipende solo dalla forma del segnale d’ingresso, x(n), e non dagli istanti di tempo in cui x(n) é applicato al sistema. In altri termini, se l’ingresso al sistema viene ritardato di una quantità no , allora l’uscita risulta ritardata della medesima quantità. Matematicamente, la condizione di stazionarietà si formalizza nel modo seguente: L [x(n − no )] = y(n − no )

(5.2)

per qualunque valore di no . Il sistema ha un comportamento che non cambia col tempo; per questa ragione viene detto stazionario. Un esempio del comportamento di un sistema stazionario ad un ingresso x(n) è riportato in figura 5.2. Si noti

I sistemi Lineari Tempo Invarianti a Tempo Discreto

x(n)

0 1 2 3 .....

y(n)

n sistema stazionario

x(n-2)

0 1 2 3 .....

127

n

0 1 2 3 .....

n

y(n-2)

0 1 2 3 .....

n

Figura 5.2 Esempio del comportamento di un generico sistema stazionario.

come la risposta del sistema all’ingresso x(n), ritardato di due passi di tempo discreto, corrisponda alla risposta del sistema all’ingresso x(n) ritardata di due passi di tempo. Esempio 5.1 Il sistema caratterizzato dalla relazione I/O y(n) = x2 (n) eleva al quadrato le ampiezze del segnale d’ingresso x(n). Data la trasformazione operata, é facile verificare che il sistema in esame é stazionario, ma non lineare. La stazionarietà deriva dalla constatazione che nella relazione I/O non è presente la dipendenza dal tempo, se non in x(n), e si verifica in due passi. Dato un generico ritardo no , si valuta il primo membro dell’equazione 5.2 sostituendo al posto di x(n) il segnale d’ingresso x(n − no ). In questo caso si ottiene [x(n − no )]2 . In secondo luogo, si valuta il secondo membro (y(n−no )) andando a sostituire n − no nell’equazione I/O y(n) = x2 (n) al posto di n. Infine, si verifica che le due relazioni ottenute rappresentino, formalmente, la stessa equazione. Anche la proprietà di linearità si verifica in due passi. Nel primo passo, si considera il segnale d’ingresso α1 · x1 (n) + α2 · x2 (n) e si valuta il modo in cui viene elaborato dalla relazione I/O. In formule: L [·] = (·)2 =⇒ [α1 · x1 (n) + α2 · x2 (n)]2 = α12 ·x21 (n)+α22 ·x22 (n)+2α1 α2 ·x1 (n)·x2 (n). Nel secondo passo, bisogna ricavare la relazione a secondo membro nell’equazione 5.1. Si nota facilmente che, se al sistema che opera la trasformazione L [·] = (·)2 , si applica il segnale x1 (n)|x2 =0 allora si ricava y1 (n) = x21 (n). Mentre l’applicazione del segnale elementare x2 (n)|x1 =0 , conduce all’uscita y2 (n) = x22 (n). Poichè α1 · y1 (n) + α2 · y2 (n) = α1 · x21 (n) + α2 · x22 (n) é diverso da α12 · x21 (n) + α22 · x22 (n) + 2α1 α2 · x1 (n) · x2 (n), allora si conclude che il sistema opera una trasformazione non lineare, o, più semplicemente, non é lineare.

128

Capitolo 5

Esempio 5.2 Il sistema caratterizzato dalla relazione I/O y(n) = x(n)·cos(2πfo n) effettua l’operazione di modulazione del segnale d’ingresso x(n). Questo sistema é lineare, ma non stazionario. La stazionarietà non è verificata perché nella relazione I/O compare la dipendenza dal tempo nella funzione cos(2πfo n): l’uscita y(n) dipende non solo dalle ampiezze di x(n), ma anche dagli istanti di tempo in cui x(n) le assume. Sistemi lineari e tempo-invarianti (LTI): sono i sistemi la cui relazione I/O soddisfa le proprietà espresse dalle equazioni 5.1 e 5.2. Il comportamento di un sistema LTI a tempo discreto LTI può essere descritto dalle cosiddette equazioni alle differenze a coefficienti costanti: a0 · y(n) = −a1 y(n − 1) − a2 y(n − 2) − . . . − aM y(n − M )+ +bo x(n) + b1 x(n − 1) + . . . + bN x(n − N )

(5.3)

Quest’equazione lega l’uscita y(n) di un sistema LTI all’istante di tempo discreto n sia ai valori che l’ingresso x(n) assume in un arco temporale che si estende da 0 sino a N istanti di tempo discreto precedenti, sia ai valori assunti dal segnale di uscita y(n) sino a M istanti di tempo precedenti a quello corrente n. I coefficienti a0 , . . . , aM e bo , . . . , bN sono termini costanti, indipendenti dal tempo (in caso contrario, il sistema diventerebbe non stazionario). L’equazione alle differenze 5.3 é detta ricorsiva se almeno un coefficiente ai , ∀i = 1, . . . , M , é diverso da zero. Se tutti i coefficienti ai , ∀i = 1, . . . , M , sono nulli, allora l’equazione é detta non ricorsiva. Sistemi causali: sono i sistemi in cui la risposta corrente, y(n), non dipende dai valori futuri dell’ingresso, cioè da termini del tipo x(n + no ), dove no é una costante intera qualsiasi e strettamente positiva (no > 0). Esempio 5.3 Il sistema caratterizzato dalla relazione I/O y(n) = x(n4 )·cos(2πfo n) non è causale perché la sequenza di uscita y(n) dipende dai valori futuri dell’ingresso x(n). Ad esempio, la determinazione del campione della sequenza in uscita y(n) nell’istante di tempo discreto no = 2 richiede la conoscenza del campione della sequenza in ingresso x(n) nell’istante di tempo n4o = 16 > no . Esempio 5.4 Il sistema caratterizzato dalla relazione I/O y(n) = x(n) − x(n − no ) è, per ogni no > 0, causale perché la sequenza di uscita y(n) dipende dal valore corrente x(n) dell’ingresso x(n) e dal valore di x(n) entrato nel sistema no istanti di tempo precedenti. Sistemi con memoria: sono i sistemi per cui la risposta corrente, y(n), dipende dai valori dell’ingresso negli istanti di tempo precedenti a quello corrente n. Se la sequenza d’uscita y(n) dipende solo dal valore dell’ingresso nel medesimo istante di tempo n, e non da termini dell’ingresso negli istanti di tempo precedenti, allora il sistema si dice senza memoria o statico. A titolo di esempio, il sistema y(n) = 3x(n − 4) ha memoria pari a 4, mentre i sistemi y(n) = 2x(n) − 3x(n − 1) e y(n) = x(n + 4) − 3x(n − 3) sono con

I sistemi Lineari Tempo Invarianti a Tempo Discreto

129

memoria (rispettivamente pari a 1 e 3) perchè per fornire il campione di uscita nel generico istante di tempo discreto n, devono necessariamente immagazzinare i valori che il segnale di ingresso ha assunto in alcuni istanti di tempo precedenti. PN Infine, il sistema caratterizzato dalla relazione I/O y(n) = k=0 x(n − k) ha memoria pari a N . Se N < ∞, allora il sistema è a memoria finita; viceversa, il sistema si dice a memoria illimitata. Sistemi passivi: un sistema a tempo discreto é detto passivo se ad un ingresso x(n) con energia finita Ex risponde con un segnale y(n) con energia Ey ≤ Ex < ∞. In altri termini, deve essere verificata la condizione: +∞ X n=−∞

2

|y(n)| ≤

+∞ X

|x(n)|2 < ∞

(5.4)

n=−∞

Se la relazione precedente vale con il segno di uguaglianza, allora il sistema é detto senza perdite in quanto conserva l’energia del segnale di ingresso.

5.2 Analisi tempo-frequenza dei sistemi LTI La classe dei sistemi LTI rappresenta il modello più impiegato in pratica per analizzare il comportamento di sistema a tempo discreto. Nei paragrafi che seguono, si discuterà lo studio di tali sistemi sia dal punto di vista del dominio del tempo discreto, sia dal punto di vista delle frequenze numeriche. Il paragrafo 5.2.1 introduce la funzione risposta all’impulso di un sistema LTI per lo studio dei sistemi LTI nel dominio del tempo discreto. Lo studio dei sistemi LTI nel dominio della frequenza numerica è trattato nei paragrafi 5.2.2 e 5.2.3. L’analisi tempo-frequenza dei sistemi LTI descritti da equazioni alle differenze, è trattata nel paragrafo 5.2.6. Infine, i paragrafi 5.3 e 5.4 discutono, rispettivamente, la stabilità e la realizzabilità fisica dei sistemi LTI.

5.2.1 Analisi dei sistemi LTI nel dominio del tempo: la risposta all’impulso Il comportamento di un sistema a tempo discreto può essere formalizzato attraverso la relazione I/O, oppure mediante l’equazione alle differenze indicata nell’equazione 5.3. Entrambe le relazioni sono piuttosto generali e permettono di descrivere anche i sistemi a tempo discreto non lineari, non stazionari, e via discorrendo. Nel caso di sistemi a tempo discreto LTI si preferisce adoperare una descrizione equivalente, utile al fine di semplificarne l’analisi tempo-frequenza. Un modo utile per l’analisi in frequenza di sistemi LTI a tempo discreto consiste nel descrivere il comportamento del sistema attraverso una funzione h(n), chiamata risposta all’impulso, la quale lega un qualunque segnale di ingresso x(n) alla risposta y(n) del sistema attraverso l’operazione di convoluzione lineare discreta. Le rappresentazioni più comuni di un generico sistema LTI a tempo discreto sono riassunte in figura 5.3.

130

Capitolo 5

Sistemi LTI a tempo discreto x(n)

Relazione I/O L[ . ]

x(n)

Equazione lineare alle differenze a coefficienti costanti

x(n)

Risposta all'impulso h(n)

y(n)=L[x(n)]

y(n)

y(n)=x(n) * h(n)

Figura 5.3 Descrizioni matematiche alternative di sistemi LTI a tempo discreto.

La trattazione che segue, si pone l’obiettivo di determinare la sequenza risposta all’impulso di un sistema LTI. Si consideri un generico segnale x(n) a tempo discreto. Adoperando la definizione di delta numerica δ(n), un qualunque segnale x(n) a tempo discreto può essere rappresentato come una combinazione lineare di delta numeriche: x(n) =

+∞ X

x(i)δ(n − i).

(5.5)

i=−∞

Si consideri un generico sistema LTI caratterizzato dalla relazione I/O y(n) = L [x(n)]. L’obiettivo consiste nel calcolare il segnale di uscita y(n) sotto le ipotesi che il sistema in esame sia lineare e stazionario. Applicando la trasformazione L [·] al segnale nell’equazione 5.5, si ottiene: " +∞ # +∞ X X y(n) = L [x(n)] = L x(i)δ(n − i) = x(i)L [δ(n − i)] , (5.6) i=−∞

i=−∞

dove l’operatore L [·] e la sommatoria possono essere scambiate in virtù della proprietà di linearità. Definendo h(n) = L [δ(n)], risposta all’impulso, e sfruttando la proprietà di stazionarietà secondo cui h(n − no ) = L [δ(n − no )], si ottiene: y(n) =

+∞ X i=−∞

x(i)h(n − i) = x(n) ? h(n).

(5.7)

I sistemi Lineari Tempo Invarianti a Tempo Discreto

131

campione corrente in ingresso al sistema LTI x(n-1)

campioni passati di x(n) già entrati nel sistema LTI

Sistema LTI

x(n+1)

x(n-2) x(n)

x(n)

h(n)

y(n)=x(n) * h(n)

n n-2 n-1 n

h(n)

n+1

Nh=3

campioni futuri di x(n) che entreranno nel sistema LTI

n

Figura 5.4 Schema di un generico sistema LTI a tempo discreto il cui comportamento è descritto dalla risposta all’impulso.

La relazione 5.7, valida per sistemi LTI, asserisce che la risposta di un sistema LTI ad un qualsiasi segnale x(n) può essere ricavata attraverso l’operazione di convoluzione lineare discreta tra il segnale d’ingresso e la sequenza risposta all’impulso. L’operatore di convoluzione é associativo e commutativo. Dunque, valgono le seguenti relazioni: +∞ X

y(n) = x(n) ? h(n) = h(n) ? x(n) =

h(i)x(n − i)

(5.8)

i=−∞

e y(n) = h(n) ? [x1 (n) + x2 (n)] = h(n) ? x1 (n) + h(n) ? x2 (n).

(5.9)

L’espressione del segnale di uscita in funzione della risposta all’impulso e del segnale di ingresso al sistema LTI gode di una particolare interpretazione. Separando la sommatoria della convoluzione come segue: y(n) = x(n) ? h(n) =

−1 X i=−∞

h(i)x(n − i) +

+∞ X

h(i)x(n − i)

(5.10)

i=0

è possibile fare le seguenti osservazioni circa la sequenza y(n). L’uscita di un sistema LTI a tempo discreto é valutata considerando • l’effetto di tutti i campioni del segnale x(n) già entrati nel sistema, opportunaP+∞ mente pesati per la risposta all’impulso ( i=0 h(i)x(n − i)); • l’effetto di tutti i campioni del segnale x(n) che, rispetto all’istante corrente n, entreranno nel sistema negliP istanti di tempo successivi, opportunamente pesati per la risposta all’impulso ( −1 i=−∞ h(i)x(n − i))). Se il sistema é causale, allora la risposta all’impulso h(n) é nulla per istanti di tempo n < 0. Questo significa che l’uscita dipende dal valore corrente del

132

Capitolo 5

x(n)

x(-k)

x(k) 1

1 10 1 2 3 4

n

(a)

1

k

(c) y(n)

h(n)

x(n-k)

2 1+ α 1+ α+ α

1

n=1

-1 0 1 2 3 4

(d)

-1 0 1 2 3 4

(b)

1

n-2

k

0 1 2 3 4

k

1

n

0 1 2 3 4...

0 1 2 3 4...

n

n

(e)

(f)

Figura 5.5 Esempio di calcolo del segnale di uscita da un sistema LTI.

segnale d’ingresso x(n) e dai campioni di x(n) già entrati nel sistema negli istanti precedenti a n: +∞ X y(n) = x(n) ? h(n) = h(i)x(n − i) (5.11) i=0

Nella pratica, inoltre, capita spesso che la risposta all’impulso h(n) abbia supporto temporale finito, Nh , ovvero h(n) = 0, ∀n ≥ Nh . In questa situazione, l’uscita del sistema LTI può essere ricavata come segue: y(n) = x(n) ? h(n) =

NX h −1

h(i)x(n − i)

(5.12)

i=0

ed il sistema deve conservare memoria di tutti gli Nh − 1 campioni del segnale di ingresso (x(n − Nh + 1), . . . , x(n − 1)) presentatisi in ingresso prima dell’istante di tempo corrente n. Esempio 5.5 sia data la sequenza x(n) = u(n) − u(n − 3) all’ingresso di un sistema LTI caratterizzato dalla risposta all’impulso h(n) = αn u(n), dove α è una costante reale, positiva e minore di uno. Si calcoli il segnale di uscita y(n). Soluzione: il segnale x(n) è rappresentato nella figura 5.5-a, mentre l’andamento della risposta all’impulso è disegnato in figura 5.5-e. Il segnale di uscita y(n) può essere calcolato attraverso la convoluzione: y(n) = x(n) ? h(n) =

+∞ X

h(k)x(n − k)

(5.13)

k=−∞

dove h(k) = αk u(k) è la funzione in figura 5.5-e con la variabile k al posto di n. Il calcolo della convoluzione richiede la valutazione grafica della funzione

I sistemi Lineari Tempo Invarianti a Tempo Discreto

133

x(n − k), dove k è la variabile indipendente rispetto cui si effettua la sommatoria, mentre n, ai fini della sommatoria, è considerato come un parametro. La valutazione dell’equazione 5.13 viene condotta per passi. Prima si calcola la funzione x(−k) (5.5-c). In seguito, si definisce una funzione x(n − k) che si sposta scorrendo sull’asse dei tempi in relazione ai valori assunti dal parametro n (5.5-d). Se n cresce assumendo valori positivi crescenti, il segnale x(n) si sposta verso destra. Se n cresce assumendo valori negativi crescenti, il segnale x(n) si sposta verso sinistra. Graficamente, si nota che per ogni n fissato, i tre campioni unitari di x(n) sono individuati dagli istanti di tempo n − 2, n − 1, n. Chiaramente, se n = 0 allora la funzione x(n − k) diventa x(−k). Dall’andamento grafico di x(n − k) si nota facilmente che, se n < 0, allora x(n − k) e h(k) sono diversi da zero in intervalli di tempo disgiunti. Ne consegue che il segnale di uscita y(n) in 5.13 è nullo ∀n < 0. Se 0 ≤ n ≤ 1, il segnale x(n − k) è solo parzialmente sovrapposto alla risposta all’impulso h(k), e il segnale di uscita y(n) vale: +∞ X

+n X

+n X

1 − αn+1 , ∀n ∈ {0, 1} 1−α k=0 k=0 k=−∞ (5.14) Continuando con questo ragionamento, si nota che se n ≥ 2, il segnale di uscita y(n) vale: y(n) =

+∞ X

h(k)x(n − k) =

+n X

h(k) =

αk =

+n X

αn−2 − αn+1 , ∀n ≥ 2 1−α k=n−2 k=n−2 k=−∞ (5.15) L’andamento complessivo di y(n) è disegnato in figura 5.5-f. y(n) =

h(k)x(n−k) =

h(k) =

αk =

Esempio 5.6 sia data la sequenza x(n) = u(n) all’ingresso di un sistema LTI caratterizzato dalla risposta all’impulso h(n) = an u(−n − 1), dove a è una costante reale, positiva e maggiore di uno. Si calcoli il segnale di uscita y(n). Soluzione: impiegando la convoluzione lineare discreta, si ottiene: P P+∞ n−k u(−n + k − 1) = y(n) = +∞ k=−∞ x(k)h(n − k) = k=−∞ u(k)a P +∞ −k n =a k=0 a u(−n + k − 1) Ricordando la definizione del gradino unitario, si ottiene: ½ 1, k ≥ n + 1 u(k − n − 1) = 0, k ≤ n Impiegando la definizione del gradino u(k − n − 1), si ottiene: P −k = an , ∀n ≤ −1 y(n) = an +∞ k=0 a 1−1/a P+∞ a−1 −k n = 1−a−1 , ∀n ≥ 0 y(n) = a k=n+1 a

134

Capitolo 5

Sistema LTI x(n) jω

X(e )

h(n)

y(n)=x(n) * h(n)

H(e jω )

Y(e j ω )=X(e j ω ) H(e j ω )

Figura 5.6 Analisi tempo-frequenza di sistemi LTI.

5.2.2 Risposta di un sistema LTI a sequenze generiche Si consideri il sistema LTI in figura 5.6 con risposta all’impulso h(n), e si ponga, in ingresso, una sequenza generica x(n). L’obiettivo di questo paragrafo è impiegare l’analisi in frequenza per determinare la sequenza in uscita da un sistema LTI. A tal scopo, si ipotizzerà che sia la risposta all’impulso del sistema LTI, sia la sequenza in ingresso siano trasformabili mediante la DTFT. Dalla definizione di DTFT del segnale y(n), si ottiene: Y (ejω ) =

+∞ X

y(n)e−jωn

(5.16)

n=−∞

Sostituendo a y(n) la relazione di convoluzione lineare discreta tra x(n) e la risposta all’impulso h(n) del sistema LTI, si ottiene: ¡P+∞ ¢ −jωn P h(i)x(n − i) = Y (ejω ) = +∞ n=−∞ i=−∞ ¡P+∞ ¢ e P −jωn = +∞ h(i) x(n − i)e i=−∞ n=−∞

(5.17)

Effettuando il cambio di variabile n − i = z nella seconda sommatoria e riorganizzando le due sommatorie, si ottiene: ¡P+∞ ¢ ¡P+∞ ¢ −jωi · −jωz = Y (ejω ) = i=−∞ h(i)e z=−∞ x(z)e (5.18) = H(ejω ) · X(ejω ) La DTFT del segnale di uscita y(n) é pari al prodotto delle DTFT del segnale d’ingresso e della risposta all’impulso del sistema LTI. La funzione H(ejω ) = DTFT[h(n)] viene detta risposta in frequenza del sistema LTI, e può essere definita come segue: H(ejω ) =

Y (ejω ) . X(ejω )

La risposta in frequenza é in generale una funzione complessa della variabile ω, e, come tale, può essere rappresentata in forma rettangolare: ¡ ¢ ¡ ¢ H(ejω ) = < H(ejω ) + j= H(ejω ) = HR (ejω ) + jHI (ejω ) (5.19)

I sistemi Lineari Tempo Invarianti a Tempo Discreto

2

135

1 0.8

x(n)

1.5

h (n) 1

0.6 1 0.4 0.5

0

0.2

0

5

10 n

15

0

20

1

5

10 n

15

20

15

20

1

0.8

0.8

h2(n)

0.6

0.4

0.4

0.2

0.2

0

5

10 n

h (n) 3

0.6

0

0

15

20

0

0

5

10 n

Figura 5.7 Andamento del segnale x(n) = u(n) − u(n − 21) e delle tre risposte all’impulso dell’esempio 5.7.

oppure in forma polare: H(ejω ) = |H(ejω )|ejϕ(H(e

jω )

)

(5.20)

¡ ¢ dove |H(ejω )| é il modulo della risposta in frequenza, e ϕ H(ejω ) é la fase. Ricordando le proprietà delle funzioni complesse, si ottiene: |H(ejω )| = e

q 2 (ejω ) + H 2 (ejω ) HR I

¡ ¢ ϕ H(ejω ) = arctan

µ

HI (ejω ) HR (ejω )

(5.21)

¶ .

(5.22)

Si noti infine che, in quanto tale, la risposta in frequenza soddisfa tutte le proprietà della DTFT viste nel capitolo 3. Esempio 5.7 Sia x(n) = u(n) − u(n − 21) il segnale di ingresso a tre sistemi LTI caratterizzati dalle seguenti risposte all’impulso: • h1 (n) = 0.9n · [u(n) − u(n − 21)], • h2 (n) = 0.7n · [u(n) − u(n − 21)], • h3 (n) = 0.2n · [u(n) − u(n − 21)].

136

Capitolo 5

1 |H1(ejω)|

|H2(ejω)|

0.8

H(ejω)



|H3(e )|

0.6 0.4 0.2 0 −0.5

−0.4

−0.3

−0.2

−0.1

0 f

0.1

0.2

0.3

0.4

0.5

1.5 φ(H (ejω)) 1

φ(H(ejω))

1



φ(H2(e )) jω

φ(H3(e ))

0.5 0 −0.5 −1 −1.5 −0.5

−0.4

−0.3

−0.2

−0.1

0 f

0.1

0.2

0.3

0.4

0.5

Figura 5.8 Andamento delle risposte in frequenza dei tre sistemi LTI esaminati nell’esempio 5.7.

Disegnare gli andamenti dei tre segnali in uscita dai tre sistemi in esame in risposta all’ingresso x(n). Inoltre, disegnare il modulo e la fase delle risposte in frequenza dei tre sistemi LTI considerati. Soluzione: le sequenze x(n), hi (n), i = 1, 2, 3, disegnate in figura 5.7, possiedono 21 coefficienti sul supporto temporale [0, 20]. I tre sistemi LTI hanno una risposta in frequenza di tipo passa-basso. Indicando con ri , i = 1, 2, 3, le radici degli¡esponenziali presenti nelle tre risposte all’impulso, le risposte in ¢ frequenza Hi ejω risultano: 20 ¡ ¢ X 1 − (ri e−jω )21 rin e−jωn = Hi ejω = 1 − ri e−jω

(5.23)

n=0

In base ai dati del problema, è possibile distinguere le tre risposte in frequenza seguenti: ¡ ¢ r1 = 0.9 → H1 ¡ejω ¢ = DTFT [h1 (n)] (5.24) r2 = 0.7 → H2 ¡ejω ¢ = DTFT [h2 (n)] jω r3 = 0.2 → H3 e = DTFT [h3 (n)] L’andamento dei moduli e delle fasi, espresse in radianti, delle tre risposte in frequenza sono mostrate nella figura 5.8. Si tratta di sistemi LTI che rappresentano filtri di tipo passa-basso perché lasciano attraversare le componenti in frequenza presenti alle basse frequenze, mentre attenuano, in modo più o meno accentuato in relazione alla ragione ri , le frequenze via via più elevate.

I sistemi Lineari Tempo Invarianti a Tempo Discreto

137

10

y1(n) 5

0

0

5

10

15

20 n

25

30

35

40

35

40

35

40

4 3

y (n) 2

2 1 0

0

5

10

15

20 n

25

30

1.5

y3(n)

1 0.5 0

0

5

10

15

20 n

25

30

Figura 5.9 Andamento delle sequenze yi (n), per i = 1, 2, 3, in uscita dai tre sistemi LTI esaminati nell’esempio 5.7.

I segnali di uscita yi (n), i = 1, 2, 3, dai tre sistemi LTI valgono: yi (n) =

+∞ X

hi (k)x(n − k) =

k=−∞

20 X

rik x(n − k)

k=0

Gli andamenti dei tre segnali di uscita sono mostrati in figura 5.9. Si noti che quanto più è elevato il valore di ri presente nella risposta all’impulso dei filtri, tanto più la relativa risposta in frequenza filtra le componenti di alta frequenza presenti nel segnale di ingresso. Questo comporta che il segnale in uscita dal relativo sistema LTI varia più lentamente in quanto il sistema tende a smorzare le componenti di alta frequenza presenti nel segnale di ingresso. Si noti che le componenti di alta frequenza presenti in un generico segnale sono quelle che inducono elevate variazioni nell’andamento temporale del segnale. Esempio 5.8 Sia h(n) = N1 [u(n) − u(n − N )] la risposta all’impulso di un sistema LTI. Valutare l’espressione analitica della sequenza y(n) in uscita dal sistema, in funzione di una generica sequenza in ingresso x(n). Soluzione: considerando la relazione di convoluzione lineare y(n) = x(n) ? h(n), si ottiene: y(n) =

+∞ X k=−∞

h(k)x(n − k) =

N −1 1 X x(n − k). N k=0

138

Capitolo 5

Analizzando la relazione I/O, si nota che il sistema in esame effettua, per ogni n, la media aritmetica degli ultimi N valori della sequenza in ingresso x(n). Per questa ragione, tale sistema è detto filtro a media mobile.

5.2.3 Risposta di un sistema LTI a esponenziali complessi Il dominio della frequenza permette di effettuare l’analisi dei sistemi LTI impiegando la teoria sviluppata in merito alla DTFT. In questo dominio, il comportamento di un sistema LTI é determinato dalla risposta in frequenza H(ejω ), la quale corrisponde alla DTFT della risposta all’impulso h(n). Le proprietà della DTFT comportano che, nel dominio della frequenza, la risposta Y (ejω ) di un sistema LTI corrisponda al prodotto tra la risposta in frequenza e la DTFT X(ejω ) del segnale in ingresso, secondo quanto indicato in figura 5.6. Per contro, l’analisi in frequenza di un sistema LTI è possibile a patto che esistano le DTFT delle sequenze h(n) e x(n). Si consideri un sistema LTI descritto dalla convoluzione lineare discreta mostrata nell’equazione 5.7, e si ponga in ingresso il segnale x(n) = ejωo n , ∀n ∈ (−∞, +∞), dove ωo è una pulsazione costante. Attraverso semplici passaggi si ottiene: +∞ +∞ X X y(n) = h(i)ejωo (n−i) = ejωo n · h(i)e−jωo i (5.25) i=−∞

i=−∞

P+∞

L’equazione i=−∞ h(i)e−jωo i corrisponde alla DTFT della risposta all’impulso valutata nella pulsazione ωo . Si noti che la risposta in frequenza può essere definita solo nel caso in cui il sistema sia lineare e stazionario. L’equazione 5.25 può essere riscritta come segue: y(n) = ejωo n · H(ejωo )

(5.26)

dalla quale si osserva che l’uscita di un sistema LTI ad un ingresso esponenziale risulta pari al medesimo esponenziale moltiplicato per il valore della risposta in frequenza valutata nella pulsazione ωo dell’ingresso.

5.2.4 Risposta di un sistema LTI a sequenze sinusoidali Si consideri il sistema LTI in figura 5.6 con risposta all’impulso h(n) reale, e si ponga in ingresso il segnale x(n) = cos(ωo n + ψ), dove ψ é un termine di sfasamento costante. L’obiettivo di questo paragrafo é il calcolo della sequenza y(n) in uscita. Dalla relazione di Eulero si ricava: x(n) = cos(ωo n + ψ) =

ejωo n+jψ + e−jωo n−jψ . 2

I sistemi Lineari Tempo Invarianti a Tempo Discreto

139

Ricordando il risultato espresso dall’equazione 5.26 e notando che ejωo n+jψ = ejωo n ejψ , dove ejψ é un numero complesso costante, si ottiene: 1 1 y(n) = ejψ ejωo n H(ejωo ) + e−jψ e−jωo n H(e−jωo ) 2 2

(5.27)

Ricordando le proprietà della DTFT di segnali reali (modulo della risposta in frequenza pari e fase dispari), si ottiene:

e

|H(ejωo )| = Ho , |H(e−jωo )| = Ho

(5.28)

¡ ¢ ¡ ¢ ϕ H(ejωo ) = ϕo , ϕ H(e−jωo ) = −ϕo

(5.29)

Sostituendo le relazioni 5.28 e 5.29 nell’equazione 5.27, si ottiene: 1 1 y(n) = ejψ ejωo n Ho ejϕo + e−jψ e−jωo n Ho e−jϕo 2 2

(5.30)

Con dei semplici passaggi matematici, infine si ricava il risultato cercato: £ ¤ y(n) = 12 Ho · ejψ+jωo n+jϕo + e−jψ−jωo n−jϕo = (5.31) = |H(ejωo )| · cos(ωo n + ψ + ϕo ) L’uscita del sistema LTI è ancora una funzione coseno alla medesima pulsazione ωo della sequenza coseno in ingresso, ma con oscillazione massima e uno sfasamento addizionale ϕo dipendenti dalla risposta in frequenza del filtro nella pulsazione ωo della sinusoide in ingresso. Si noti che ciò che realmente interessa per il calcolo della risposta del sistema LTI é la risposta in frequenza valutata solo nella pulsazione ωo della sinusoide in ingresso al sistema. Esempio 5.9 Si consideri un sistema LTI causale, caratterizzato dalla relazione I/O seguente: y(n) = x(n) − x(n − 4) Valutare la sequenza in uscita dal sistema in risposta alla sequenza ³ πn ´ ³ πn ´ x(n) = sin + sin 2 4 Soluzione: la soluzione ¡ ¢del problema può essere ricavata impiegando la risposta in frequenza H ejω del sistema: ¡ ¢ H ejω = 1 − e−j4ω . L’equazione 1 − e−j4ω possiede quattro zeri di modulo unitario, equispaziati nell’intervallo ω ∈ [−π, +π]. E’ facile verificare che gli zeri della risposta in frequenza si trovano in corrispondenza delle pulsazioni ωo = 0, ± π2 , π.

140

Capitolo 5

Analizziamo la sequenza x(n): essa è costituita da due sinusoidi con pulsazioni, rispettivamente, ω1 = π/2 e ω2 = π/4. Evidentemente, ¡la sinusoide con ¢ pulsazione ω1 eccita uno zero della risposta in frequenza H ejω . In definitiva, la sequenza di uscita corrisponde alla risposta del sistema alla sinusoide con pulsazione ω2 . Ricordando la relazione di Eulero, si ottiene: sin (ω2 n) =

¢ 1 ¡ jω2 n e − e−jω2 n 2j

Ricordando l’equazione 5.26, si ottiene: ¡ ¢ 1 jω2 n ¡ jω2 ¢ 1 e H e − e−jω2 n H e−jω2 2j 2j ¡ jω ¢ ¡ −jω ¢ Infine, osservando che H e 2 = H e 2 = 2, si ottiene il risultato cercato: ³ πn ´ . y(n) = 2 sin 4 y(n) =

5.2.5 Risposta di un sistema LTI a sequenze periodiche Si consideri una sequenza x(n) periodica di periodo N sul supporto temporale [0, N − 1]. La risposta di un sistema LTI a tempo discreto con risposta all’impulso h(n) reale può essere ricavata ricordando l’equazione di sintesi della serie di Fourier a tempo discreto della sequenza x(n): x(n) =

N −1 X

k

X k e+j2π N n , ∀n = 0, . . . , N − 1

(5.32)

k=0

introdotta nel paragrafo 3.2 del capitolo 3. Indicando con H(ej2πf ) la risposta in frequenza del sistema LTI e adoperando la proprietà di linearità del sistema, si ottiene: y(n) =

N −1 X

³

k j2π N

XkH e

´

k

e+j2π N n , ∀n = 0, . . . , N − 1.

(5.33)

k=0

Una conseguenza dell’equazione 5.33 è che l’uscita del sistema LTI ad un ingresso x(n) periodico, è una sequenza y(n) periodica col medesimo periodo N della sequenza in ingresso.

5.2.6 Risposta in frequenza di sistemi LTI descritti da equazioni alle differenze Nell’analisi dei sistemi LTI a tempo discreto molto spesso le relazioni I/O sono descritte da equazioni lineari alle differenze a coefficienti costanti. Si consideri

I sistemi Lineari Tempo Invarianti a Tempo Discreto

141

l’equazione 5.3 e si ponga a0 = 1: y(n) = −a1 y(n − 1) − a2 y(n − 2) − . . . − aM y(n − M )+ +bo x(n) + b1 x(n − 1) + . . . + bN x(n − N )

(5.34)

Quest’equazione, come analizzato in precedenza, lega l’uscita di un sistema LTI all’istante di tempo discreto n, non solo ai valori che l’ingresso x(n) assume negli istanti di tempo n sino a N passi di tempo discreto precedenti, ma anche ai valori assunti dal segnale di uscita y(n) sino a M istanti di tempo precedenti a quello corrente n. I termini a1 , . . . , aM e bo , . . . , bN sono coefficienti costanti, indipendenti dal tempo nel caso di sistemi stazionari o tempo invarianti. Applicando la DTFT ad ogni termine nell’equazione 5.34, si ricava: Y (ejω ) = −a1 · Y (ejω )e−jω − . . . − aM · Y (ejω )e−jωM + +bo · X(ejω ) + b1 · X(ejω )e−jω + . . . + bN · X(ejω )e−jωN

(5.35)

Raccogliendo tutti i termini che moltiplicano Y (ejω ) e X(ejω ) si ottiene: £ ¤ Y (ejω ) · 1 + a1 e−jω + . . . + aM e−jωM =¤ £ (5.36) = X(ejω ) · bo + b1 e−jω + . . . + bN e−jωN La risposta in frequenza di un sistema LTI espresso tramite le equazioni alle differenze 5.34, può essere calcolata come segue: H(ejω ) =

Y (ejω ) bo + b1 e−jω + . . . + bN e−jωN = X(ejω ) 1 + a1 e−jω + . . . + aM e−jωM

(5.37)

Nella classe dei sistemi LTI descritti attraverso le equazioni alle differenze in 5.34, si distinguono due importanti tipologie di sistemi. • Sistemi LTI con risposta all’impulso di supporto finito (FIR, acronimo di Finite Impulse Response): sono i sistemi LTI non ricorsivi nei quali l’uscita y(n) dipende solo dal segnale di ingresso secondo una relazione del tipo: y(n) =

N X

bk · x(n − k)

(5.38)

k=0

• Sistemi LTI con risposta all’impulso di supporto infinito (IIR, acronimo di Infinite Impulse Response): sono i sistemi LTI ricorsivi nei quali l’uscita y(n) dipende non solo dal segnale di ingresso, ma anche dai campioni del segnale di uscita, secondo una relazione del tipo: y(n) =

N X m=0

bm · x(n − m) −

M X k=1

ak · y(n − k).

(5.39)

Capitolo 5

142

Una sottoclasse di tali sistemi riguarda i sistemi puramente ricorsivi, ovvero quelli per cui la relazione I/O nell’equazione 5.39 assume la forma: y(n) = x(n) −

M X

ak · y(n − k).

(5.40)

k=1

Esempio 5.10 si consideri un sistema LTI caratterizzato dalla relazione I/O y(n) = 13 y(n−1)+x(n). E’ facile verificare che questa relazione I/O coincide con l’equazione 5.40, dove si è posto M = 1 e a1 = −1/3. Per verificare che questo sistema LTI abbia una risposta all’impulso di durata illimitata, si calcoli la DTFT di ambo i membri dell’equazione y(n) = 13 y(n − 1) + x(n): 1 Y (ejω ) = Y (ejω )e−jω + X(ejω ). 3 La risposta in frequenza del sistema LTI vale Y (ejω )/X(ejω ): H(ejω ) =

Y (ejω ) 1 = . 1 jω X(e ) 1 − 3 e−jω

Antitrasformando la funzione H(ejω ), si ottiene la risposta all’impulso del sistema LTI considerato: µ ¶n £ ¤ 1 jω h(n) = IDTFT H(e ) = u(n). 3 Quello descritto non è l’unico modo per ottenere la risposta all’impulso di un sistema LTI, partendo dalla relativa relazione I/O. Una tecnica alternativa consiste nell’applicare la definizione di risposta all’impulso: tale sequenza è quella in uscita da un sistema LTI quando in ingresso è presente una delta numerica x(n) = δ(n). Si consideri, a titolo di esempio, il sistema dell’esempio, dove y(−1) = 0, e si calcoli la sequenza in uscita y(n) per ogni n dall’istante 0 in poi, quando x(n) = δ(n). E’ facile verificare le seguenti relazioni: y(−1) = 0 y(0) = 31 y(−1) + x(0) = δ(n) = +1, y(1) = 31 y(0) + x(1) = 31 + x(1) = 13 , ¡ ¢2 y(2) = 13 y(1) + x(2) = 31 , ... ¡ ¢n y(n) = 13 y(n − 1) + x(n) = 13 ,

x(0) = 1 x(1) = 0 x(2) = 0 x(n) = 0

Essendo y(n)|x(n)=δ(n) = h(n), ne consegue che la risposta all’impulso del ¡ ¢n sistema vale h(n) = 13 u(n).

I sistemi Lineari Tempo Invarianti a Tempo Discreto

143

Sistema LTI h(n)

x(n) jω

X(e )

y(n)=x(n) * h(n)

H(e j ω )

Y(e j ω)=X(e j ω) H(e j ω )

| H(e j ω) | 1

−π −ω t

ωt

π ω

Figura 5.10 Il concetto di filtraggio per sistemi LTI.

5.2.7 Il concetto di filtraggio Una delle applicazioni più importanti dei sistemi LTI riguarda il filtraggio di segnali a tempo discreto. Ogni circuito elettronico contiene un filtro che ha lo scopo di limitare il contenuto spettrale di un segnale ad un intervallo di frequenze pari a quello che i sistemi elettronici sono in grado di elaborare. Un filtro é, dunque, un sistema LTI che taglia alcune componenti in frequenza nel segnale d’ingresso x(n), e ne lascia passare altre, secondo quanto specificato attraverso la relativa risposta in frequenza. A titolo di esempio, si consideri lo schema mostrato in figura 5.10, dove la risposta in frequenza del sistema LTI possiede la seguente espressione in modulo: ½ ¯ ¯ ¯H(ejω )¯ = 1, ∀ |ω| ≤ ωt (5.41) 0, ∀ ωt < |ω| ≤ π Si tratta di un filtro ideale il cui scopo é di lasciar passare inalterate le componenti frequenziali di x(n) che cadono nell’intervallo di frequenze |ω| ≤ ωt , e di annullare tutte quelle che cadono in ωt < |ω| ≤ π. Si consideri, ad esempio, il segnale x(n) = cos(ω1 n) + 3 cos(ω2 n), dove |ω1 | < ωt e ωt < |ω2 | < π. Ricordando l’analisi condotta nel paragrafo 5.2.4 e ricorrendo alla proprietà di linearità dei sistemi LTI2 , é facile ottenere la risposta y(n) del filtro in esame: y(n) = |H(ejω1 )| · cos(ω1 n + ϕ1 ) + 3|H(ejω2 )| · cos(ω2 n + ϕ2 ) (5.42) ¡ ¢ ¡ ¢ dove ϕ1 = ϕ H(ejω1 ) e ϕ2 = ϕ H(ejω2 ) . Tuttavia, l’equazione 5.41 suggerisce che |H(ejω2 )| = 0, in quanto ωt < |ω2 | < π, mentre |H(ejω1 )| = 1, in 2 La linearità implica che la risposta del filtro ad un segnale di ingresso costituito dalla combinazione lineare di segnali, é pari alla somma delle risposte del sistema ad ogni singolo segnale elementare che compone x(n).

144

Capitolo 5

quanto 0 ≤ |ω1 | < ωt . In definitiva, la risposta y(n) vale y(n) = cos(ω1 n + ϕ1 )

(5.43)

In questo contesto, si dice che il sistema LTI ha filtrato la componente a frequenza ω2 nel segnale di ingresso. Il filtro esaminato in precedenza è detto filtro ideale di tipo passa-basso, in quanto lascia passare inalterate tutte le componenti armoniche del segnale x(n) presenti dalla frequenza 0 sino ad una frequenza ωt < π. Esistono altre tipologie di filtri ideali che differiscono dal filtro passa-basso per le componenti armoniche che vengono azzerate nel segnale di ingresso. Vediamo le principali categorie di filtri. • Filtro ideale passa-alto: è definito attraverso la risposta in frequenza ½ ¯ ¯ ¯H(ejω )¯ = 0, ∀ |ω| ≤ ωt 1, ∀ ωt < |ω| ≤ π • Filtro ideale passa-banda: è definito attraverso la risposta in frequenza ( 0, ∀ |ω| ≤ ω1 ¯ ¯ jω ¯H(e )¯ = 1, ∀ ω1 < |ω| ≤ ω2 0, ∀ ω2 < |ω| ≤ π

(5.44)

(5.45)

• Filtro ideale attenua-banda: è definito attraverso la risposta in frequenza ( 1, ∀ |ω| ≤ ω1 ¯ ¯ jω ¯H(e )¯ = 0, ∀ ω1 < |ω| ≤ ω2 (5.46) 1, ∀ ω2 < |ω| ≤ π Gli andamenti delle risposte in frequenza delle quattro tipologie di filtro sono mostrati in figura 5.11. Nei prossimi capitoli verranno analizzate alcune tecniche di progetto per realizzare filtri con le risposte in frequenza mostrate in figura 5.11. Antitrasformando la risposta in frequenza del filtro ideale passa-basso, riportata in 5.41, si ottiene Z ωt 1 ωt sin(ωt n) h(n) = ejωn dω = . (5.47) 2π −ωt π ωt n L’andamento della risposta all’impulso nei due casi ωt = 0.5π e ωt = 0.25π è riportato in figura 5.12 nell’intervallo temporale n ∈ [−20, +20]. Il filtro ideale passa-basso è praticamente irrealizzabile perché h(n) non è causale, e, inoltre, è anche instabile, essendo h(n) non sommabile in modulo. Una classe di sistemi LTI differente dalle precedenti è quella dei filtri passatutto. Come ¡il nome ¢ suggerisce, questi sistemi LTI possiedono una risposta in frequenza H ejω costante in modulo su tutto l’asse delle frequenze numeriche, e sono impiegati in pratica per sagomare le caratteristiche di fase dei filtri numerici.

I sistemi Lineari Tempo Invarianti a Tempo Discreto

| H(e jω )|

| H(e jω )|

1

−π

1

ωt

−ω t

π ω

passa-basso

−π

ωt

−ω t

π

ω

passa-alto

| H(e jω )|

| H(e jω )|

1

−π −ω 2 −ω1

145

1

ω1 ω2

passa-banda

π ω

−π −ω 2 −ω1

ω1 ω2

π ω

attenua-banda

Figura 5.11 Classificazione dei filtri ideali in base alle rispettive caratteristiche spettrali.

La risposta in frequenza di un filtro passa-tutto del primo ordine è del tipo: ¡ ¢ bo + b1 · ejω H ejω = b1 + bo · ejω ¡ ¢ E’ semplice verificare che H ejω vale uno sia nella pulsazione ω = 0, sia nella pulsazione ω = π. Inoltre, il suo modulo è costante per ogni valore della pulsazione ω. Si noti che in un tipico filtro passa-tutto di qualsiasi ordine, i polinomi al numeratore e al denominatore della risposta in frequenza sono del medesimo ordine, e i coefficienti moltiplicativi bi appaiono in ordine inverso tra numeratore e denominatore. Un esempio di filtro passa-tutto è il trasformatore di Hilbert in grado di ruotare di π/2 la fase di una sequenza x(n), senza cambiarne le caratteristiche spettrali. Questa tipologia di sistemi LTI verrà esaminata nel capitolo relativo al progetto di filtri FIR.

5.3 Stabilità di sistemi LTI a tempo discreto I sistemi LTI a tempo discreto devono soddisfare alcune condizioni specifiche al fine di poter essere impiegati in alcune applicazioni specifiche. Una di queste condizioni riguarda la stabilità. La condizione di stabilità più impiegata nella pratica, é detta BIBO (acronimo di bounded-input bounded-output). Un sistema a tempo discreto é detto BIBOstabile se e solo se, per ogni ingresso limitato, anche la sequenza d’uscita assume ampiezze limitate. Indicando con y(n) la risposta del sistema alla sequenza x(n), la condizione di stabilità BIBO richiede che ad ingressi limitati, cioé |x(n)| ≤ Xo < ∞, ∀n, corrispondono uscite limitate, cioé |y(n)| ≤ Yo < ∞, ∀n, dove Xo e Yo sono due costanti reali, positive, e finite.

146

Capitolo 5

0.5 ω =0.5π t

0.4

h(n)

0.3 0.2 0.1 0 −0.1 −0.2 −20

−15

−10

−5

0 n

5

10

15

20

0.25 ωt=0.25π

0.2

h(n)

0.15 0.1 0.05 0 −0.05 −0.1 −20

−15

−10

−5

0 n

5

10

15

20

Figura 5.12 Risposta all’impulso di un filtro ideale passa-basso nei due casi ωt = 0.5π e ωt = 0.25π.

Una condizione necessaria e sufficiente per garantire la stabilità di tipo BIBO coinvolge la risposta all’impulso h(n) del sistema LTI. Teorema: un sistema LTI discreto é stabile secondo la definizione BIBO se e solo se la sua risposta all’impulso h(n) é sommabile in modulo, vale a dire se é verificata la condizione hs =

+∞ X

|h(n)| < ∞.

n=−∞

Dimostrazione: si consideri una risposta all’impulso h(n) e un segnale x(n) con ampiezze limitate, cioè |x(n)| ≤ Xo < ∞. Sotto queste condizioni, l’uscita y(n) del sistema all’eccitazione costituita dal segnale x(n) vale: ¯P ¯ P |y(n)| = ¯ +∞ h(k)x(n − k)¯ ≤ +∞ k=−∞ k=−∞ |h(k)| |x(n − k)| ≤ P (5.48) |h(k)| = X h < ∞. ≤ Xo +∞ o s k=−∞ Per dimostrare che la condizione hs < ∞ é necessaria, bisogna mostrare che, se hs −→ ∞, allora deve esistere un segnale di ingresso limitato in grado di far divergere l’uscita. Un siffatto segnale di ingresso é quello definito come segue: ( ∗ h (−n) |h(−n)| , h(n) 6= 0 x(n) = (5.49) 0, h(n) = 0

I sistemi Lineari Tempo Invarianti a Tempo Discreto

147

Nell’equazione 5.49, h∗ (n) rappresenta il complesso coniugato di h(n). E’ facile dimostrare che, in modulo, x(n) é sempre inferiore ad 1. Tuttavia, il valore dell’uscita in n = 0 vale: £P+∞ ¤ P+∞ y(0) = k=−∞ x(n − k)h(k) |n=0 = k=−∞ x(−k)h(k) = (5.50) P+∞ h∗ (k)h(k) P+∞ |h(k)|2 = k=−∞ |h(k)| = k=−∞ |h(k)| = hs Dunque, se hs −→ ∞, é possibile trovare un segnale x(n) limitato che produca una risposta y(n) illimitata.

5.4 Condizioni di fisica realizzabilità In questo paragrafo verranno definite le condizioni che una generica risposta all’impulso di un sistema LTI deve soddisfare affinchè sia realizzabile in pratica. Un sistema LTI si dice fisicamente realizzabile se possiede una risposta all’impulso h(n) reale e causale. La condizione di causalità si formalizza imponendo che h(n) = 0, ∀n < 0. Analizziamo le caratteristiche della risposta in frequenza di sistemi LTI con risposte all’impulso reali. E’ semplice dimostrare che ¡ad una ¢ risposta all’impulso h(n) reale corrisponde una risposta in frequenza H ejω con parte reale pari, parte immaginaria dispari, modulo pari e fase dispari. In sintesi: jω jω H(ejω ) = HP R (e ) + jHI (e ) +∞ HR (ejω ) = n=−∞ h(n) cos(ωn) = HR (e−jω ) P −jω ) HI (ejω ) = −q +∞ n=−∞ h(n) sin(ωn) = −HI (e ¯ ¡ jω ¢¯ ¯ ¡ −jω ¢¯ ¯H e ¯ = H 2 (ejω ) + H 2 (ejω ) = ¯H e ¯ ³ R jω ´ I XI (e ) = −ϕ(−ω) ϕ(ω) = arctan X (ejω ) R

La figura 5.8 mostra degli esempi di funzioni di modulo e fase di risposte in frequenza di sistemi LTI con risposte all’impulso reali.

5.5 Il concetto di distorsione di un sistema LTI Esistono delle applicazioni pratiche nelle quali si desidera che il sistema LTI non distorca il segnale x(n) al suo ingresso. Si pensi, a titolo di esempio, ad un amplificatore: l’uscita di un tale sistema deve essere pari al segnale d’ingresso x(n) idealmente amplificato di un fattore costante A. Se questa condizione non è verificata, allora si dice che il sistema distorce, in un modo che definiremo in seguito, il segnale di ingresso x(n). Definizione: un segnale y(n) si dice replica fedele di un altro segnale x(n) se differisce da x(n) solo per uno fattore di scalamento costante ed un ritardo di

148

Capitolo 5

tempo generico N . In formule, y(n) = A · x(n − N ). Definizione: un sistema LTI che modifichi il segnale d’ingresso secondo la relazione y(n) = A · x(n − N ) si dice non distorcente. E’ chiaro che, in termini pratici, un sistema non distorcente produce in uscita un segnale che conserva la sagoma del segnale di ingresso a meno di un ritardo costante ed uno scalamento uniforme delle ampiezze. Il ritardo subito da x(n) può essere considerato come l’intervallo di tempo impiegato dal segnale di ingresso per attraversare il sistema in questione. La risposta in frequenza di un sistema LTI non distorcente può essere ottenuta dalla relazione y(n) = A · x(n − N ). Applicando la DTFT ad ambo i membri, si ottiene: Y (ejω ) = AX(ejω )e−jωN =⇒ H(ejω ) =

Y (ejω ) = A · e−jωN . X(ejω )

(5.51)

La risposta in frequenza di un sistema non é costante in modulo, ed ¡ distorcente ¢ introduce una rotazione di fase lineare ϕ H(ejω ) = −ωN , nella pulsazione ω. La risposta all’impulso di un sistema non distorcente è pari alla sequenza: £ ¤ h(n) = IDT F T H(ejω ) = Aδ(n − N ). Il modulo costante di un sistema non distorcente garantisce che tutte le componenti armoniche del segnale di ingresso siano amplificate in modo uniforme del medesimo fattore A. Distorsione di ampiezza: se la risposta in frequenza di un sistema LTI non è una funzione costante in modulo, allora si dice che il sistema introduce una distorsione di ampiezza sul segnale di ingresso. Distorsione di fase: se la risposta in frequenza di un sistema LTI presenta una funzione di fase ϕ(ω) non lineare rispetto alla pulsazione ω, o in termini equivalenti della frequenza numerica f , allora si dice che il sistema introduce una distorsione di fase sul segnale di ingresso. Il caso più generale possibile é quello di sistemi LTI che distorcano sia il modulo, sia la fase dei segnali x(n) al loro ingresso. Un esempio di segnale distorto in ampiezza è quello in uscita da uno qualsiasi dei tre sistemi LTI analizzati nell’esempio 5.7. Osservando la figura 5.9, si nota come a fronte di un segnale d’ingresso rettangolare del tipo x(n) = u(n) − u(n − 21), le sequenze yi (n), ∀i = 1, 2, 3, in uscita dai sistemi LTI risultano completamente differenti da x(n). La sequenza d’uscita più simile a quella d’ingresso è quella in uscita dal terzo sistema LTI: la ragione risiede ¡ ¢ nel fatto che, come si evince dalla figura 5.8, la risposta in frequenza H3 ejω approssima quella di un filtro non distorcente meglio delle risposte in frequenza dei filtri h1 (n) e h2 (n).

I sistemi Lineari Tempo Invarianti a Tempo Discreto

149

80 jω

φ(H1(e )) tangente 60

40

φ(H(ejω))

20

0

−20

−40

−60

−80 −0.25

−0.2

−0.15

−0.1

−0.05

0 f

0.05

0.1

0.15

0.2

0.25

Figura 5.13 Andamento della fase del sistema h3 (n) analizzato nell’esempio 5.7, e della sua retta tangente nell’origine.

Per quanto concerne la distorsione di fase, nella pratica si è soliti definire un ritardo, detto di gruppo, la cui deviazione da una costante opportuna indica il grado di distorsione di fase introdotto dal sistema: ¡ ¢ d jω ) ϕ H(e τ (ω) = − dω ¡ ¢ (5.52) 1 d j2πf ) τ (f ) = − 2π df ϕ H(e Concettualmente, il ritardo di gruppo di un sistema LTI quantifica il ritardo medio subito dalle componenti armoniche del segnale in ingresso x(n) in funzione della frequenza. Se un sistema LTI possiede fase lineare, allora il ritardo di gruppo è costante e, quindi, le diverse componenti armoniche presenti nel segnale in ingresso subiscono il medesimo ritardo costante τ (ω) = τo . I tre sistemi LTI analizzati nell’esempio 5.7, introducono una distorsione di fase che può essere misurata come la deviazione delle curve di fase mostrate in figura 5.8, dalle rispettive rette tangenti nell’origine delle frequenze alle tre curve. Il ritardo di gruppo rappresenta il coefficiente angolare di queste tre rette tangenti. A titolo di esempio si consideri la risposta in frequenza H3 (ej2πf ) dell’esempio 5.7. La curva di fase e la relativa retta tangente nell’origine sono rappresentate ◦ in figura 5.13. Il ritardo di gruppo vale circa − 26 0.1 nell’intervallo di frequenze f ∈ [−0.1, +0.1] e la retta tangente alla curva di fase nell’origine ha equazione ◦ j2πf ) può τ (f ) = − 26 0.1 f . Si noti che la fase della risposta in frequenza H3 (e essere ritenuta lineare nell’intervallo di frequenze in cui il ritardo di gruppo è costante, ovvero dove vale l’approssimazione tra la curva di fase e la propria retta

150

Capitolo 5

tangente nell’origine delle frequenze. L’osservazione più importante che possiamo dedurre è che tutti i segnali x(n) che possiedono spettro X(ej2πf ) nullo al di fuori dell’intervallo f ∈ [−0.1, +0.1], non subiscono alcuna distorsione di fase dal sistema h3 (n) dell’esempio 5.7. Esempio 5.11 si consideri il segnale x(n) = 1 + cos(2πfo n), con fo = 0.05, all’ingresso di un sistema LTI caratterizzato dalla risposta all’impulso h(n) = ¡ 2 ¢n u(n). Si calcoli l’espressione analitica del segnale in uscita. 10 Soluzione: la risposta in frequenza del sistema in esame vale: H(ej2πf ) =

1−

2 10

1 · e−j2πf

Il modulo e la fase sono rappresentate in figura 5.14. Il calcolo del segnale y(n) può essere condotto nel dominio del tempo oppure in quello della frequenza. Ragionando in frequenza, si ricava: 1 1 X(ej2πf ) = δ(f ) + δ(f − fo ) + δ(f + fo ) 2 2 Ricordando la DTFT di una convoluzione lineare tra sequenze, si ottiene: Y (ej2πf ) = X(ej2πf ) · H(ej2πf ) = −fo ) 1 δ(f +fo ) = 54 δ(f ) + 12 1−δ(f 1 −j2πfo + 2 e 1− 1 e+j2πfo 5

5

da cui, antitrasformando Y (ej2πf ), si ricava il segnale y(n): ¯ ¯ ¯ 5 ¯¯ 1 ¯ y(n) = + ¯ ¯ · cos(2πfo n + ϕo ) 1 −j2πf o ¯ 4 ¯1 − 5e dove ϕo risulta pari alla fase della risposta in frequenza del sistema valutata ¡ ¢ nella frequenza fo = 0.05. Dalla figura 5.14 si nota che ϕo = φ H(ej2πfo ) ≈ −0.08π.

5.6 Interconnessioni di sistemi LTI I sistemi di elaborazione dei segnali sono molto spesso costituiti dall’interconnessione di più sistemi LTI, secondo gli schemi mostrati nelle figure 5.15-5.17. Gli schemi di interconnessione più impiegati sono detti serie (o cascata), parallelo, e reazione.

I sistemi Lineari Tempo Invarianti a Tempo Discreto

151

1.25

|H(ejω)|

1.2 1.15 1.1 1.05 1 −0.2

−0.15

−0.1

−0.05

0 f

0.05

0.1

0.15

0.2

−0.15

−0.1

−0.05

0 f

0.05

0.1

0.15

0.2

0.3

φ(H(ejω))−[rad]

0.2 0.1 0 −0.1 −0.2 −0.3 −0.4 −0.2

Figura 5.14 Andamento della risposta in frequenza in modulo e fase del sistema h(n) analizzato nell’esempio 5.11.

x(n)

h 1 (n)

y1(n)

h 2 (n)

y2 (n)

h N(n)

yN (n)=y(n)

h e (n)=h1 (n) * h 2 (n) * ... * hN (n)

Figura 5.15 Interconnessione in cascata (o serie) di sistemi LTI.

5.6.1 Interconnessione serie di sistemi LTI Nell’interconnessione serie, o cascata, tra N sistemi LTI, ogni sistema nella cascata elabora il segnale di uscita dal sistema LTI che lo precede, così come mostrato in figura 5.15. Solo il primo sistema della cascata elabora il segnale d’ingresso x(n), mentre l’ultimo sistema fornisce l’uscita y(n) complessiva. Con alcuni semplici passaggi matematici é possibile dimostrare che il sistema equivalente della cascata di N sistemi LTI, ognuno caratterizzato da una risposta all’impulso hi (n), ∀i = 1, . . . , N , possiede risposta all’impulso he (n) pari alla convoluzione lineare tra le N risposte all’impulso in cascata. Scrivendo a ritroso le convoluzioni lineari tra la risposta all’impulso hi (n) dell’i-esimo sistema LTI e il rispettivo segnale di ingresso, si ottiene: yN (n) = y(n) = hN (n) ? yN −1 (n) = = hN (n) ? hN −1 (n) ? yN −2 (n) = . . . = = hN (n) ? hN −1 (n) ? . . . ? h1 (n) ? x(n)

(5.53)

152

Capitolo 5

x(n)

h 1 (n)

h 2 (n)

h N (n)

+

y1(n)

y(n) +

+

y2(n)

+

yN (n)

h e (n)=h 1 (n)+h 2 (n)+...+h N (n) Figura 5.16 Interconnessione parallelo di sistemi LTI.

Definendo la funzione he (n) = h1 (n) ? . . . ? hN (n), si ricava: y(n) = he (n) ? x(n).

(5.54)

La proprietà della DTFT della convoluzione lineare tra sequenze permette di dimostrare agevolmente che la risposta in frequenza del sistema LTI equivalente di N sistemi ¡ ¢ LTI in cascata, ognuno caratterizzato da una risposta in frequenza Hi ejω , ∀i = 1, . . . , N , è pari al prodotto tra le N risposte in frequenza coinvolte: He (ejω ) = DT F T [he (n)] = H1 (ejω ) · . . . · HN (ejω ).

(5.55)

5.6.2 Interconnessione parallelo di sistemi LTI L’interconnessione in parallelo tra N sistemi LTI si distingue per il fatto che gli N sistemi coinvolti elaborano lo stesso segnale d’ingresso x(n), e per il fatto che l’uscita complessiva corrisponde alla somma delle singole uscite dai sistemi LTI

I sistemi Lineari Tempo Invarianti a Tempo Discreto

+

x(n)

h 1 (n)

153

y(n)

h 2 (n) Figura 5.17 Interconnessione in reazione di sistemi LTI.

nella connessione. L’architettura del parallelo tra N sistemi LTI è mostrato in figura 5.16. Matematicamente si dimostra che la risposta all’impulso equivalente dell’interconnessione parallelo risulta pari alla somma tra le risposte all’impulso degli N sistemi LTI. Tramite semplici passaggi matematici si osserva che: y(n) = y1 (n) + . . . + yN (n) = = x(n) ? h1 (n) + . . . + x(n) ? hN (n) = = x(n) ? [h1 (n) + . . . + hN (n)]

(5.56)

Definendo la funzione he (n) = h1 (n) + . . . + hN (n), si ricava: y(n) = x(n) ? he (n).

(5.57)

In modo analogo, è possibile ricavare la DTFT della risposta all’impulso del sistema equivalente all’interconnessione in parallelo tra N sistemi LTI: He (ejω ) = DT F T [he (n)] = H1 (ejω ) + . . . + HN (ejω ).

(5.58)

5.6.3 Interconnessione in reazione di sistemi LTI Si consideri la configurazione in reazione mostrata in figura 5.17. In tale configurazione, la sequenza in uscita, y(n), dopo essere stata filtrata attraverso il sistema con risposta in frequenza H2 (ejω ), viene sottratta alla sequenza in ingresso x(n). La funzione di trasferimento del sistema LTI equivalente ¡ ¢ che impiega in reazione due sistemi LTI con funzione di trasferimento Hi ejω , ∀i = 1, 2, può essere ottenuta esprimendo la DTFT della sequenza di uscita sia in funzione della DTFT della sequenza in ingresso, sia in funzione del contributo della sequenza di uscita che torna all’ingresso lungo la reazione. In formule, si può scrivere: ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ Y ejω = X ejω H1 ejω − Y ejω H1 ejω H2 ejω ,

154

Capitolo 5

da cui si ricava:

¡ ¢ ¡ ¢ ¡ jω ¢ Y ejω H1 ejω H e = = . X (ejω ) 1 + H1 (ejω ) H2 (ejω )

La risposta all’impulso he (n) del sistema equivalente ¡ alla ¢ reazione può essere ottenuta attraverso la IDTFT applicata alla funzione H ejω , vale a dire: Z +1 ³ ´ 2 H ej2πf ej2πf n df. he (n) = − 12

5.7 Analisi di sistemi LTI mediante la DFT La convoluzione lineare tra due sequenze, x(n) e h(n), rispettivamente di Nx e Nh campioni, fornisce una sequenza y(n) di Nx + Nh − 1 campioni, ed è definita come: +∞ X y(n) = x(n) ? h(n) = x(m)h(n − m) (5.59) m=−∞

L’operatore di convoluzione lineare permette di ricavare il segnale di uscita y(n) da un sistema LTI, caratterizzato dalla risposta all’impulso h(n), quando in ingresso è presente il segnale x(n). Un esempio grafico del calcolo della convoluzione lineare 5.59, dal quale si evince che il supporto della sequenza y(n) è pari a Ny = Nx + Nh − 1 campioni, è mostrato in figura 5.18. Applicando la DTFT al segnale y(n) nell’equazione 5.59, si ottiene: ³ ´ ³ ´ ³ ´ Y ej2πf = X ej2πf H ej2πf . ¡ ¢ Discretizzando la DTFT Y ej2πf su Ny campioni, si ottiene: µ ¶ µ ¶ µ ¶ j2π Nk j2π Nk j2π Nk y y y Y e =X e H e , ∀k ∈ [0, Ny − 1]. Ricordando che la discretizzazione della DTFT di una sequenza y(n) lunga Ny campioni, su Ny frequenze discrete fk = Nky , ∀k = 0, . . . , Ny , restituisce gli Ny campioni della DFT della medesima sequenza y(n), si ottiene: µ ¶ µ ¶ µ ¶ j2π k j2π k j2π k Y e Ny = X e Ny H e Ny = (5.60) = X(k)H(k) = Y (k), ∀k ∈ [0, Ny − 1]. Poiché risulta Ny > Nx e Ny > Nh , le due sequenze X(k), ∀k ∈ [0, Ny − 1], e H(k), ∀k ∈ [0, Ny − 1], costituiscono le DFT delle due sequenze xz (n) e hz (n), legate a x(n) e h(n) attraverso le relazioni: ½ x(n), ∀ n ∈ [0; Nx − 1] xz (n) = (5.61) 0, ∀ n ∈ [Nx ; Ny − 1]

I sistemi Lineari Tempo Invarianti a Tempo Discreto

155

x(m) .... ...0 1 2 3 4 5 6 7 8 9... Nx-1

m

h(m) h(n-m) ....

....

0 1 2 3... N h-1

m

...0 1 2 3 4 5...

p

....

n- Nh+1

n

Figura 5.18 Esempio di calcolo della convoluzione lineare tra due sequenze x(m) e h(m), rispettivamente lunghe Nx e Nh campioni.

½ hz (n) =

h(n), ∀ n ∈ [0; Nh − 1] 0, ∀ n ∈ [Nh ; Ny − 1]

(5.62)

Tuttavia, l’operatore di IDFT, se applicato ai campioni Y (k), ∀k ∈ [0, Ny − 1] nell’equazione 5.60, restituisce una sequenza periodica di periodo Ny : y(n) =

+∞ X

y(n − rNy )

(5.63)

r=−∞

dove y(n) è la sequenza di lunghezza Ny in uscita dal sistema LTI. Questa sequenza periodica coincide con y(n), ∀n ∈ [0, Ny −1], se e solo se Ny ≥ Nx +Nh −1; in caso contrario, l’aliasing nel tempo, insito nell’estensione periodica 5.63, fa sì che y(n) 6= y(n), ∀n ∈ [0, Ny − 1]. Alla luce di queste considerazioni teoriche, è possibile discutere una metodologia operativa per analizzare il segnale y(n) in uscita da un sistema LTI mediante l’uso della DFT. Consideriamo, dunque, il problema di valutare il segnale di uscita da un sistema LTI a tempo discreto con risposta all’impulso h(n) quando in ingresso è presente una sequenza x(n). Nell’ipotesi che le due sequenze x(n) e h(n) abbiano un numero finito di campioni, rispettivamente Nx e Nh , con Nx dello stesso ordine di grandezza di Ny , si costruiscono le due sequenze: ½ xz (n) = ½ hz (n) =

x(n), ∀ n ∈ [0; Nx − 1] 0, ∀ n ∈ [Nx ; Ny − 1] h(n), ∀ n ∈ [0; Nh − 1] 0, ∀ n ∈ [Nh ; Ny − 1]

dove Ny deve coincidere con Nx + Nh − 1, vale a dire col supporto del segnale ottenuto tramite la convoluzione lineare discreta. Sotto queste ipotesi, le operazioni di convoluzione circolare e lineare conducono agli stessi risultati, cioé: y(n) = x(n) ? h(n) = xz (n) ⊗ hz (n)

(5.64)

156

Capitolo 5

e producono una sequenza y(n) lunga Ny = Nx + Nh − 1 campioni. Ricordando le proprietà della DFT di due sequenze complesse della stessa lunghezza, si effettua prima la DFT su Ny punti delle sequenze xz (n) e hz (n), ottenendo Xz (k) e Hz (k), ∀k = 0, . . . , Ny − 1. In seguito si effettua il prodotto, frequenza per frequenza, tra le due DFT Xz (k) e Hz (k). Infine, si applica la IDFT su Ny punti al prodotto Xz (k)Hz (k) e si ottiene y(n) con una complessità di Ny log2 Ny operazioni complesse.

5.7.1 Tecnica della sovrapposizione e somma Ci occupiamo adesso del calcolo della convoluzione lineare tra due sequenze x(n) e h(n) nel caso in cui una delle due sequenze, x(n) o h(n), sia costituita da un numero di campioni molto più elevato dell’altra. La tecnica presentata in questo paragrafo è chiamata di sovrapposizione e somma, e prende il nome dalla particolare procedura seguita per valutare la sequenza in uscita da un sistema LTI attraverso l’impiego ripetuto della DFT. Ipotizziamo che la lunghezza della sequenza x(n) sia molto più elevata del numero di campioni Nh < ∞, che costituiscono la sequenza h(n). L’obiettivo prefissato é il calcolo del segnale risultante dalla convoluzione lineare tra x(n) e h(n), impiegando la DFT, della quale esistono algoritmi efficienti dal punto di vista computazionale rispetto al calcolo della convoluzione lineare. Ricordiamo che il segnale y(n) ottenuto dalla convoluzione lineare vale: y(n) = x(n) ? h(n) =

NX h −1

h(i)x(n − i)

(5.65)

i=0

Si parte dall’ipotesi che la lunghezza Nx di x(n) sia pari ad un multiplo intero di Nh , diciamo Nx = kNh . Se così non fosse, si potrebbero aggiungere degli zeri a x(n) in numero tale da rispettare la condizione Nx = kNh . Si partiziona la sequenza x(n) in tante sequenze x1 (n), x2 (n), . . . , xk (n) più corte, ognuna di lunghezza Nh , che poi vengono riportate tra gli istanti di tempo n = 0 e n = Nh − 1, come mostrato in figura 5.19. Si effettua la convoluzione lineare tra ogni sequenza xi (n), i = 1, . . . , k, con la sequenza h(n) e si ottengono i segnali yi (n) = xi (n) ? h(n), i = 1, . . . , k. Il risultato y(n) si ottiene sommando le sequenze yi (n), i = 1, . . . , k, ognuna ritardata di un multiplo di Nh . In formule: P y(n) = x(n) ? h(n) = ki=1 yi (n − (i − 1)Nh ) = (5.66) = y1 (n) + y2 (n − Nh ) + . . . + yk (n − (k − 1)Nh ) E’ facile verificare la relazione 5.66. Si consideri la generica sequenza yi (n) = xi (n) ? h(n), espressa come: yi (n) =

NX h −1 j=0

h(j)xi (n − j)

(5.67)

I sistemi Lineari Tempo Invarianti a Tempo Discreto

157

x(n) Nh=4 x 2 (n)

x k (n)

x 1 (n) 0

x 1 (n)

0

1 2 3

Nh campioni

Nx-1

1 2 3 4 5 6 7

x 2 (n)

n

0

1 2 3

n

x k (n)

n

Nh campioni

0

1 2 3

n

Nh campioni

Figura 5.19 Divisione della sequenza x(n) in tante sequenze più corte di lunghezza Nh . Nell’esempio è Nh = 4.

e la si sostituisca nell’equazione 5.66: y(n) =

k X i=1

yi (n − (i − 1)Nh ) =

k NX h −1 X

h(j)xi (n − (i − 1)Nh − j) (5.68)

i=1 j=0

Scambiando l’ordine delle sommatorie, si ottiene: P h −1 P y(n) = N h(j) ki=1 xi (n − (i − 1)Nh − j) = j=0 P h −1 = N j=0 h(j) [x1 (n − j) + x2 (n − Nh − j) + . . . + xk (n − (k − 1)Nh − j)] (5.69) Nell’equazione 5.69, è facile verificare che: x1 (n − j) + x2 (n − Nh − j) + . . . + xk (n − (k − 1)Nh − j) = x(n − j) e che, in definitiva, le relazioni 5.66 e 5.69 rappresentano la stessa formula. Ogni sequenza yi (n), per i = 1, . . . , k, viene ottenuta non con la convoluzione lineare xi (n) ? h(n), ma con una DFT tra xi (n) e h(n). Siccome il risultato yi (n) della i-esima convoluzione lineare restituisce 2Nh − 1 campioni, bisogna aggiungere Nh − 1 zeri sia a h(n), sia ad ogni sequenza xi (n), ottenendo le sequenze hz (n) e xz,i (n), ∀i = 1, . . . , k, ognuna lunga 2Nh − 1 campioni. Riassumendo, il calcolo della convoluzione lineare y(n) viene effettuato mediante i seguenti passi: 1. innanzitutto si aggiungono Nh − 1 zeri in coda alla sequenza h(n), ottenendo la nuova sequenza: ½ h(n), ∀ n ∈ [0; Nh − 1] hz (n) = (5.70) 0, ∀ n ∈ [Nh ; 2Nh − 1]

158

Capitolo 5

Dopodiché, si valuta la DFT Hz (k), k = 0, . . . , 2Nh − 1, della sequenza hz (n) così ottenuta; 2. per ogni i = 1, . . . , k, si aggiungono Nh − 1 zeri in coda ad ogni sequenza xi (n), ottenendo le nuove sequenze: ½ xi (n), ∀ n ∈ [0; Nh − 1] xz,i (n) = (5.71) 0, ∀ n ∈ [Nh ; 2Nh − 1] Dopodiché, si valutano le DFT Xz,i (k), k = 0, . . . , 2Nh − 1, per ogni nuova sequenza xz,i (n); 3. per ogni i = 1, . . . , k, si calcolano le funzioni yi (n) applicando la IDFT su 2Nh − 1 punti al prodotto Xz,i (k)Hz (k), k = 0, . . . , 2Nh − 1; 4. s’impiega la formula 5.66 per ottenere il risultato cercato.

5.7.2 Tecnica della sovrapposizione e estrazione Questo paragrafo presenta una tecnica alternativa a quella di sovrapposizione e somma analizzata nel paragrafo precedente. L’obiettivo consiste, come in precedenza, nel valutare la convoluzione lineare tra due sequenze x(n) e h(n), impiegando l’operatore di DFT, nell’ipotesi che una delle due sequenze, x(n) o h(n), sia costituita da un numero di campioni molto più elevato dell’altra. Tale tecnica è chiamata di sovrapposizione e estrazione. Ipotizziamo che la lunghezza della sequenza x(n) sia molto più elevata del numero di campioni, Nh < ∞, che costituiscono la sequenza h(n). Si partiziona la sequenza x(n) in tante sequenze xi (n) più corte che si sovrappongono in Nh −1 campioni. Ogni sequenza xi (n) ha lunghezza ND = Nw + Nh − 1, pari alla dimensione del blocco su cui saranno eseguite le operazioni di DFT e IDFT. Inoltre, degli ND campioni, i primi Nh − 1 campioni in ogni sequenza xi (n) coincidono con gli ultimi Nh − 1 campioni della sequenza precedente xi−1 (n). In base alle considerazioni precedenti, le sequenze xi (n), i ≥ 0, sono definite come segue: xi (n) = x(n + i · (ND − Nh + 1) − Nh + 1), ∀n = 0, . . . , ND − 1

(5.72)

In riferimento all’esempio mostrato in figura 5.20, è relativamente facile verificare la sovrapposizione tra le sequenze xi (n) definite sopra: x0 (n) = x(n − 3), x1 (n) = x(n + 6), x2 (n) = x(n + 15), ...

∀n ∈ [0; 11] ⇒ x0 = [x(−3) x(−2) x(−1) x(0) . . . x(8)] ∀n ∈ [0; 11] ⇒ x1 = [x(6) x(7) x(8) x(9) . . . x(17)] ∀n ∈ [0; 11] ⇒ x2 = [x(15) x(16) x(17) x(18) . . . x(26)] ...

Si effettuano tante DFT su ND campioni quanti sono i blocchi di dati xi (n), ottenendo le DFT Xi (k), ∀k = 0, . . . , ND − 1. Dopodiché, si crea la sequenza hz (n) aggiungendo Nw − 1 zeri alla risposta all’impulso h(n), e se ne calcola la DFT, ottenendo Hz (k), ∀k = 0, . . . , ND − 1.

I sistemi Lineari Tempo Invarianti a Tempo Discreto

x(n)

y(n)

n x0(n)

159

n

0

y0(n)=x0 * h

Nw

n

n

0

x1(n)

y1(n)=x1 * h

n

n

0

x2(n)

y2(n)=x2 * h

n

n

0

x3(n)

y3(n)=x3 * h

n

0

n

Figura 5.20 Esempio di applicazione della tecnica di sovrapposizione e estrazione nel caso di sovrapposizione di Nh − 1 = 3 campioni e per segmenti di sequenza lunghi Nw = 9 campioni (ND = 12). La sequenza y(n) è ottenuta ricombinando i blocchi che definiscono le sequenze yi (n), dove yi (n) è il risultato della convoluzione tra xi (n) e h(n). I campioni delle sequenze yi (n) esterni ad ogni finestra temporale vengono scartati perché affetti da aliasing.

Si calcolano le DFT delle sequenze yi (n) come prodotto tra le DFT Xi (k) e Hz (k), vale a dire Yi (k) = Xi (k) · Hz (k), ∀k = 0, . . . , ND − 1. A questo punto, le sequenze yi (n) sono ottenute mediante IDFT dei campioni Yi (k), vale a dire: yi (n) = IDF T [Yi (k)] , ∀n = 0, . . . , ND − 1 Per ottenere il risultato finale, è necessario individuare in ogni yi (n) i campioni che coincidono con quelli ottenibili dalla convoluzione lineare. A tal proposito, bisogna ricordare che il risultato della convoluzione circolare tra una sequenza lunga ND campioni ed un’altra lunga Nh (< ND ) campioni, è una sequenza in cui i primi Nh − 1 campioni sono affetti da aliasing, mentre i restanti coincidono con quelli ottenibili mediante convoluzione lineare. Nella situazione specifica, ogni sequenza yi (n) è lunga ND campioni, e i primi Nh − 1 campioni sono affetti da aliasing. Si scartano dunque i primi Nh − 1 campioni di ogni sequenza yi (n), e si conservano gli Nw campioni successivi che coincidono con quelli della convoluzione lineare tra xi (n) e h(n).

160

Capitolo 5

La sequenza y(n) è infine ottenuta come segue: y(n) =

∞ X

y i (n − i · (ND − Nh + 1) + Nh − 1)

(5.73)

i=0

dove la generica sequenza y i (n) vale: ½ yi (n), ∀ n ∈ [Nh − 1; ND − 1] y i (n) = 0, altrimenti Si noti che ogni sequenza yi (n) ha l’origine del tempo che non coincide con l’origine della sequenza y(n). Nella pratica, ND , la lunghezza dei dati su cui sono eseguite le DFT, è scelto in modo che sia una potenza del 2. Inoltre, la sommatoria in 5.73 viene troncata dopo un numero di finestre temporali sufficienti a ritenere con ottima approssimazione y(n) ≈ 0. Un esempio di applicazione del metodo di sovrapposizione e estrazione è mostrato in figura 5.20 nel caso Nh = 4 e Nw = 9.

6 La Trasformata z

La trasformata z per i segnali a tempo discreto riveste un ruolo simile a quello della trasformata di Laplace per i segnali analogici. Al contrario di quanto accade nel caso della DTFT, la trasformata z converge in modo uniforme per una classe di sequenze più ampia. Inoltre, se applicata all’analisi dei sistemi LTI permette di scrivere in modo diretto lo schema circuitale del sistema in esame. In linea di principio, la DTFT, se esiste, è un operatore sufficiente per effettuare sia l’analisi frequenziale delle sequenze numeriche, sia l’analisi della risposta di un sistema LTI ad una qualunque sequenza di ingresso. Tuttavia, esistono dei casi in cui la DTFT non può essere impiegata per l’analisi frequenziale di una sequenza, in quanto la sommatoria che la definisce, non converge in modo uniforme. Inoltre, la trasformata z permette di mettere in luce alcune caratteristiche dei sistemi LTI, quali la causalità e la stabilità. In questo capitolo saranno esaminate le relazioni e le proprietà che sussistono tra una generica sequenza x(n) e la corrispondente trasformata z. Inoltre, saranno prese in considerazione le applicazioni più rilevanti della trasformata z nell’ambito dell’analisi dei segnali e dei sistemi LTI a tempo discreto.

6.1 Definizione La trasformata z di una sequenza x(n) bilatera é definita come segue: X(z) = Z [x(n)] =

+∞ X

x(n)z −n

(6.1)

n=−∞

Questa trasformata definisce una relazione biunivoca tra una specifica sequenza x(n) ed una funzione della variabile complessa z. La variabile z generalizza il concetto di frequenza al piano complesso, e, come tale, viene sovente indicata con pulsazione complessa. Al pari di ogni variabile complessa, tale variabile può essere scritta in modulo e fase con la seguente notazione z = ρej2πf = ρejω . Il dominio della variabile z risulta tutto il piano complesso come mostrato nella figura 6.1.

162

Capitolo 6

Dominio della variabile z +π −π

Im{z} zo φ(zo)

1

Re{z}

|zo |

Figura 6.1 Dominio della variabile complessa z.

L’espressione 6.1 della X(z) é chiamata serie di Cauchy-Laurent. Il luogo dei punti z per cui la sommatoria 6.1 converge in modo uniforme a X(z) é detta regione di convergenza (ROC) della trasformata z. Nella regione di convergenza, X(z) è una funzione analitica, cioè continua e indefinitamente derivabile con derivate continue in z. Un discorso analogo era stato sviluppato a riguardo della convergenza della DTFT di una sequenza. In particolare, sostituendo z = ρejω in 6.1, si nota subito che la trasformata z di una sequenza x(n) corrisponde alla DTFT della nuova sequenza x(n)ρ−n ; infatti: +∞ X n=−∞

x(n)z

−n

+∞ X ¡ ¢ = x(n)ρ−n e−jωn

(6.2)

n=−∞

Ricordando che la DTFT della sequenza x(n)ρ−n esiste se la sequenza é sommabile in modulo, ovvero quando: +∞ +∞ X X ¯ ¯ ¯x(n)ρ−n ¯ < ∞ =⇒ |x(n)| ρ−n < ∞ n=−∞

(6.3)

n=−∞

si nota che la regione di convergenza della sommatoria 6.3 dipende solo dalle lunghezze ρ delle pulsazioni complesse z e non dalla loro fase. Questo comporta che le regioni di convergenza nel piano complesso z siano delimitate da circonferenze, luoghi dei punti z a modulo costante. Esempio 6.1 La trasformata z della sequenza x(n) = δ(n) vale X(z) = 1. Inoltre, per questa specifica sequenza x(n), la sommatoria 6.1 converge ∀z. Esempio 6.2 La trasformata z della sequenza x(n) = 2δ(n+1)+δ(n)+4δ(n− 2) vale X(z) = 2z + 1 + 4z −2 . In questo caso, la sommatoria 6.1 converge ∀z tranne i punti z = 0 e z = ∞, in cui divergono, rispettivamente, i monomi z −2 e z. Dunque, la regione di convergenza vale {z : 0 < |z| < ∞}.

La Trasformata z

163

Esempio 6.3 La trasformata z della sequenza x(n) = u(n) vale: P P+∞ −n −n = X(z) = +∞ = n=−∞ u(n)z n=0 z P+∞ −1 = n=0 (z )n = 1−z1 −1 , |z| > 1

(6.4)

La regione di convergenza é il luogo dei punti z per cui la serie geometrica 6.4 converge, vale a dire |z −1 | < 1 =⇒ |z| > 1. La regione di convergenza corrisponde all’esterno del cerchio di raggio unitario nel piano z. Gli esempi precedenti mettono in luce alcune differenze rispetto all’analisi in frequenza con la DTFT. Innanzitutto, la trasformata z richiede che venga specificata una regione di convergenza. Inoltre, la corrispondenza biunivoca tra una generica sequenza x(n) e la rispettiva trasformata z é garantita specificando sia l’espressione analitica di X(z), sia la relativa regione di convergenza. A titolo di esempio, si consideri la sequenza x(n) = −u(−n − 1), detta gradino anticausale. La relativa trasformata z vale: P P −n = u(−n − 1)z −n = − −1 X(z) = − +∞ n=−∞ z n=−∞ P+∞ m (6.5) = − m=1 z = 1−z1 −1 , |z| < 1 Come si vede dall’esempio, le sequenze u(n) e −u(−n − 1) possiedono la stessa trasformata X(z) = 1−z1 −1 , ma regioni di convergenza differenti. La biunivocità x(n) ←→ X(z) é garantita solo se si specifica la regione di convergenza di X(z), oltre che l’espressione analitica della trasformata X(z). La trasformata z di una sequenza x(n) é utile nel caso in cui la sommatoria 6.1 possa essere scritta in forma chiusa. Nei casi pratici d’interesse, la sommatoria 6.1 possiede una forma chiusa di tipo razionale: X(z) =

(z − c1 ) (z − c2 ) . . . (z − cpn ) N (z) =K D(z) (z − d1 ) (z − d2 ) . . . (z − dpd )

(6.6)

dove N (z) e D(z) sono due polinomi nella variabile z, rispettivamente di gradi pn e pd . Le radici c1 , . . . , cpn del numeratore N (z) sono dette zeri di X(z), mentre le radici d1 , . . . , dpd del denominatore D(z) sono dette poli di X(z). Il termine K è un generico fattore costante. La relazione 6.6 è utile quando si desidera detrminare la distribuzione dei poli e degli zeri nel piano z della trasformata X(z) di una sequenza.

6.2 La relazione tra la DTFT e la trasformata z L’analisi condotta sul dominio della trasformata z suggerisce la relazione esistente tra la trasformata z e la DTFT di una generica sequenza x(n). Nel caso in cui la regione di convergenza della trasformata X(z) includa la circonferenza di raggio

164

Capitolo 6

Im{z}

Im{z}

| X(e jω ) |

z=ej ω t z=-1

z=1

Re{z}

−π

z=ej ω t

1

z=-1

−ω t

z=1

Re{z}

π ω

ωt

Im{z}

Im{z} z=ej ω t

z=-1

z=1

Re{z}

z=-1

z=1

Re{z}

j z=e− ω t

Figura 6.2 Corrispondenza tra pulsazioni complesse nel piano z e pulsazioni reali della DTFT di una generica sequenza x(n).

unitario, ponendo z = ejω nell’equazione 6.1, si ottiene la DTFT X(ejω ) della sequenza x(n): +∞ X X(ejω ) = x(n)e−jωn n=−∞

Il luogo dei punti z = ejω nel piano complesso corrisponde alla circonferenza di raggio unitario, |z| = 1, mostrata in figura 6.1. Al variare della pulsazione numerica ω vengono individuati tutti i punti a modulo costante lungo la circonferenza di raggio unitario. Inoltre, si nota facilmente che i punti z = ejπ e z = e−jπ sono i punti estremi della circonferenza, e coincidono nel medesimo punto della circonferenza. Le pulsazioni valide nell’analisi in frequenza sono tutte quelle che variano nell’intervallo (−π; +π]. La pulsazione nulla, ω = 2πf = 0, corrisponde al punto z = 1 nel piano complesso. Al crescere di ω per valori positivi, ci si muove sulla circonferenza |z| = 1 in senso antiorario; per valori negativi, invece, ci si sposta in senso orario. Alla luce di queste considerazioni, si intuisce facilmente la ragione per cui la DTFT X(ejω ) di una sequenza x(n) risulta una funzione periodica di 2π. La corrispondenza tra pulsazioni¡complesse z e pulsazioni reali ω di una ¢ generica coppia di funzioni X(z) e X ejω è mostrata in figura 6.2. Si noti che, se la regione di convergenza della trasformata X(z) di una sequenza x(n) non contiene la circonferenza di raggio unitario |z| = 1, allora non esiste la DTFT della sequenza x(n), almeno in senso ordinario. Tuttavia, esistono casi in cui la DTFT di una sequenza x(n), la cui trasformata X(z) non converga sul cerchio |z| = 1, ammette DTFT in senso generalizzato, ovvero impiegando le funzioni generalizzate δ di Dirac. In tale situazione, la DTFT di x(n) non può essere valutata con la sostituzione: ¡ ¢ X(z)|z=ejω = X ejω .

La Trasformata z

165

Un esempio di sequenza che non possiede DTFT in senso ordinario, è il gradino causale u(n). La trasformata z di tale sequenza vale 1−z1 −1 , e, soprattutto, converge nella regione |z| > 1 che esclude la circonferenza di raggio unitario. In realtà, dato che il polo si trova in z = 1, cioè in corrispondenza della frequenza numerica nulla, la DTFT di u(n) dovrebbe esistere per ogni frequenza numerica individuabile lungo il cerchio |z| = 1, eccetto l’origine, in cui si riscontra una delta di Dirac. In tale situazione, la DTFT del gradino causale non esiste in senso ordinario. Tuttavia, tale DTFT esiste in senso generalizzato, e vale: 1 1 δ(f ) + 2 1 − e−j2πf da cui si nota chiaramente la presenza della funzione generalizzata delta di Dirac nella frequenza numerica nulla. Esistono altre sequenze che ammettono DTFT in senso generalizzato, pur non ammettendo trasformata z. Un esempio di sequenza che cade in quest’ultimo o n) caso, è la sequenza sin(ω di tipo sinc(). πn

6.3 La relazione tra la trasformata z e gli operatori di DFT e DFS Nel capitolo 3 si è dimostrata la relazione esistente tra la DTFT e DFT di segnali a tempo discreto. Dal momento che, sotto certe ipotesi, la DFT rappresenta una versione discretizzata della DTFT di una e che la DTFT è legata alla ¡ sequenza, ¢ trasformata z mediante la relazione X ejω = X(z)|z=ejω , è lecito ipotizzare una relazione diretta tra la trasformata z e la DFT di una sequenza x(n). Nell’ipotesi di considerare una sequenza x(n) con supporto n ∈ [0, N − 1], la trasformata z di tale sequenza risulta: X(z) =

N −1 X

x(n)z −n

(6.7)

n=0

Valutando la trasformata z su N frequenze numeriche equispaziate sul cerchio di 2π raggio unitario nel piano z, ovvero ponendo z = ej N k , si ottiene la relazione cercata tra la trasformata z e la DFT di una sequenza x(n): −1 ³ 2π ´ NX 2π x(n)e−j N kn , ∀k = 0, . . . , N − 1 X ej N k = n=0

La relazione esistente tra la DFT e la trasformata z può essere impiegata per ricavare l’espressione analitica della trasformata z partendo dalle N componenti X(k), ∀k = 0, . . . , N − 1, della DFT della sequenza x(n) di supporto finito

166

Capitolo 6

n ∈ [0, N − 1]. A tal fine, sostituiamo l’espressione analitica dell’antitrasformata IDFT nella definizione di trasformata z riportata nell’equazione 6.7: " N −1 # N −1 X 2π 1 X X(z) = X(k)e+j N kn z −n N n=0

k=0

Scambiando l’ordine delle due sommatorie e ricordando che N −1 ³ X



z −1 e+j N k

´n



=

1 − e+j N kN z −N 2π

1 − e+j N k z −1

n=0

si ottiene: X(z) =

2π N −1 1 X 1 − e+j N kN z −N X(k) 2π N 1 − e+j N k z −1 k=0



Osservando che e+j N kN = e+j2πk ≡ 1, ∀k, e che il polinomio 1 − z −N non dipende dall’indice k della sommatoria, si ottiene: X(z) =

−1 ¢ NX X(k) 1 ¡ 1 − z −N 2π N 1 − e+j N k z −1

(6.8)

k=0

questa relazione lega gli N campioni della DFT di una sequenza x(n) alla trasformata z della medesima sequenza finita. Per concludere il paragrafo, osserviamo che esistono delle relazioni analoghe all’equazione 6.8, ma riferite alle sequenze x(n) periodiche di periodo N nell’intervallo base [0, N − 1]. Ricordando che le sequenze periodiche ammettono una rappresentazione frequenziale detta DFS (si consulti il paragrafo 3.2 del capitolo 3), consideriamo la sequenza x(n) ottenuta come estensione periodica di una sequenza x(n) di supporto N con coefficienti coincidenti con quelli di x(n) nell’intervallo n ∈ [0, N − 1]: +∞ X x(n) = x(n − rN ) r=−∞

Sotto queste ipotesi, la relazione tra la trasformata z e la DFS di una sequenza x(n) può essere ottenuta impiegando l’equazione 6.8, a patto di sostituire i termini X(k) con la sequenza X k dei coefficienti spettrali di x(n) (tali coefficienti sono stati definiti nell’equazione 3.38 del capitolo 3): −1 ¡ ¢ NX X(z) = 1 − z −N k=0

Xk 2π

1 − e+j N k z −1

(6.9)

Si noti che nell’equazione 6.9 non compare il termine moltiplicativo 1/N perché considerato nella definizione dei coefficienti X k della DFS.

La Trasformata z

167

6.4 Analisi della regione di convergenza Esistono delle relazioni specifiche tra la tipologia di una generica sequenza x(n) e la regione di convergenza della relativa trasformata z. Le sequenze x(n) con supporto che si estende sia su istanti di tempo discreto negativi ( ∀n < 0), sia su istanti di tempo positivi ( ∀n ≥ 0), sono dette bilatere. Le sequenze che possiedono coefficienti identicamente nulli per istanti di tempo negativi (origine n = 0 esclusa) sono dette causali, mentre le sequenze che possiedono coefficienti identicamente nulli per istanti di tempo n ≥ 0 sono dette anticausali. Entrambe queste tipologie di sequenze sono generalmente dette unilatere. Analizziamo la regione di convergenza delle diverse tipologie di sequenze menzionate in precedenza, alla luce delle rispettive trasformate z.

6.4.1 La regione di convergenza di sequenze x(n) finite Le sequenze x(n) con supporto finito sono i segnali a tempo discreto che possiedono un numero finito di coefficienti non nulli (es.: x(n) = 2δ(n + 1) + δ(n) + 4δ(n − 2)). Queste sequenze ammettono sempre una trasformata X(z) esprimibile in forma chiusa come un polinomio composto da un numero finito di variabili del tipo z k , z −k , ∀k intero. La trasformata X(z) converge per qualunque z nel piano complesso, eccetto il punto z = 0 se esistono termini del tipo z −k , ∀k > 0, e il punto z = ∞ se esistono termini del tipo z +k , ∀k > 0. La rappresentazione grafica della regione di convergenza tipica di sequenze con supporto finito è mostrata in figura 6.3. Esempio 6.4 Calcolare la trasformata z della sequenza finita x(n) = αn · [u(n) − u(n − N )], dove N è una costante intera finita e α è una costante reale. Soluzione: applicando la definizione di trasformata z, si ottiene: P PN −1 n −n X(z) = +∞ x(n)z −n = n=0 α z = n=−∞ ¡ ¢ PN −1 n 1−αN z −N −1 = n=0 αz = 1−αz −1

(6.10)

Dal momento che la sequenza x(n) è composta da un numero finito N di termini, la trasformata X(z) converge in ogni punto del piano complesso eccetto z = 0, punto in cui X(z) diverge. Si noti che la trasformata X(z) possiede N − 1 zeri e un polo di ordine N − 1 nell’origine. Infatti, l’equazione 6.10 può essere riscritta come segue: X(z) = z −N +1

z N − αN z−α

La radice z = α del denominatore è fittizia e viene compensata da uno zero del numeratore nella medesima pulsazione. Il polinomio di ordine N al numeratore

168

Capitolo 6

Im

x(n)

ROC di sequenze finite e causali: piano Z\{z=0}

1

Re

n .... 0 1 2 3 4 ...

x(n)

ROC di sequenze finite e anticausali: piano Z\{z= oo}

Im

1

Re

n

...-2 -1 0 1 2 3 4 ...

x(n)

ROC di sequenze finite e bilatere: piano Z\{z=0, oo }

Im

1

Re

n ...-2 -1 0 1 2 3 4 ...

Figura 6.3 La regione di convergenza tipica di sequenze finite. La regione di convergenza è evidenziata opaca.

possiede N zeri disposti in modo uniforme su una circonferenza di raggio α. In particolare, le radici del polinomio z N − αN si trovano nelle pulsazioni complesse 2π z = αej N k , k = 0, . . . , N − 1 Riassumendo, gli zeri della funzione X(z) sono definiti come segue: 2π

z = αej N k , k = 1, . . . , N − 1

6.4.2 La regione di convergenza di sequenze x(n) causali e illimitate Le sequenze x(n) causali e illimitate sono i segnali a tempo discreto che possiedono un supporto temporale illimitato per n ≥ 0. La regione di convergenza è del tipo |z| > dM , dove dM è il modulo del polo più distante dall’origine z = 0 presente nella funzione X(z) espressa come nell’equazione 6.6. Si noti che la regione di convergenza è sempre delimitata da una circonferenza di raggio pari al modulo

La Trasformata z

169

Im

x(n)=u(n)

ROC di sequenze illimitate e causali

d M =1

1

dM

(a) Re

n .... 0 1 2 3 4 ...

x(n)=-u(-n-1)

ROC di sequenze illimitate e anticausali

Im

d m =1 dm ...-2 -1 0 1 2 3 ...

(b) Re

n

-1

x(n)

ROC di sequenze illimitate sia per istanti di tempo positivo, sia per istanti di tempo negativo

1

Im

dM n

dm

...-2 -1 0 1 2 3 4 ...

(c) Re

Figura 6.4 La regione di convergenza tipica di sequenze illimitate. La regione di convergenza è opaca.

del polo più distante dall’origine z = 0. Inoltre, poiché la regione di convergenza non può contenere poli, deve corrispondere all’esterno di una circonferenza che li racchiude tutti. Esempio 6.5 La trasformata z della sequenza x(n) = u(n) vale: X(z) =

1 , |z| > 1 1 − z −1

In riferimento all’equazione 6.6 si può osservare che la funzione X(z) può essere riscritta in una forma appropriata per metterne in evidenza poli e zeri. Moltiplicando numeratore e denominatore per z, si ottiene: X(z) =

z , |z| > 1 z−1

da cui si evince che X(z) possiede uno zero in z = 0 e un solo polo in z = 1. Confrontando X(z) con l’equazione generale 6.6, si notano le seguenti corrispondenze: pn = 1, pd = 1, c1 = 0, d1 = 1, e K = 1. La rappresentazione grafica della regione di convergenza della sequenza u(n) è mostrata in figura 6.4-a con dM = 1.

170

Capitolo 6

1

1

(1/2)n u(n)

Im{z}

0.5 0

0.5

−0.5

Im{z}

−1 −2

0 Re{z}

1

2

0

1

2

0.5

1.5

0

1

−0.5

0.5

−1 −2

Im{z}

−1

−1

0 Re{z}

1

2

0

1

4000

0.5

3000

0

2000

−0.5

1000

−1 −2

0

5

10 n

15

20

15

20

u(n)

0

5

10 n n

(3/2) u(n)

−1

0 Re{z}

1

2

0

0

5

10 n

15

20

Figura 6.5 Andamento nel tempo discreto di sequenze causali con un solo polo reale e positivo nella relativa trasformata z. La posizione del polo (indicato con una crocetta) e dello zero (indicato con un cerchietto) della trasformata z sono nel piano z.

Esempio 6.6 Si consideri la sequenza x(n) = αn u(n), con α costante reale. La trasformata z di x(n) vale: X(z) =

1 z , |z| > |α| = 1 − α · z −1 z−α

Il comportamento della sequenza x(n) al variare del tempo discreto, dipende dalla posizione del polo z = α della trasformata X(z). Se α assume valori nell’intervallo (0, 1) la sequenza x(n) risulta decrescente all’aumentare del tempo. Se α = 1, la sequenza x(n) diventa la sequenza gradino. Se α assume valori superiori all’unità, la sequenza cresce in modo indefinito all’aumentare del tempo. Questo comportamento è rappresentato graficamente nella figura 6.5, dove sono mostrate le posizioni dello zero (identificato da un cerchietto) e del polo z = α (identificato da una crocetta) della funzione X(z). In modo del tutto analogo, è possibile osservare il comportamento oscillatorio decrescente, costante oppure divergente della sequenza x(n) quando la costante reale α assume valori negativi che si spostano da 0 a −∞. Tale comportamento è rappresentato nella figura 6.6. Esempio 6.7 Si consideri la sequenza x(n) = αn cos (ωo n) u(n), con α costante reale, la cui trasformata z vale: X(z) =

z (z − α cos (ωo )) , |z| > |α| z 2 − 2α cos (ωo ) + α2 z 2

Im{z}

La Trasformata z

1

1

0.5

0.5

0

0

−0.5

−0.5

Im{z}

−1 −2

0 Re{z}

1

2

−1

1

2

0.5

1

0

0

−0.5

−1

−1 −2

Im{z}

−1

−1

0 Re{z}

1

2

−2

1

4000

0.5

2000

(−1/2)nu(n)

0

5

10 n

15

20

(−1)nu(n)

0

5

10 n

15

20

n

(−3/2) u(n)

0

0

−0.5

−2000

−1 −2

171

−1

0 Re{z}

1

2

−4000

0

5

10 n

15

20

Figura 6.6 Andamento nel tempo discreto di sequenze causali con un solo polo reale e negativo nella relativa trasformata z. La posizione del polo (indicato con una crocetta) e dello zero (indicato con un cerchietto) della trasformata z sono nel piano z.

Il comportamento della sequenza x(n) al variare del tempo discreto, dipende dalla posizione dei poli z = αejωo e z = αe−jωo in X(z), disposti in modo da fornire una coppia di poli complessi e coniugati passanti per la circonferenza di raggio |α|. Se α assume valori nell’intervallo (0, 1) la sequenza x(n) decresce, oscillando, all’aumentare del tempo. Se α = 1, la sequenza x(n) diventa la sequenza cos (ω0 n). Se α assume valori superiori all’unità, la sequenza cresce in modo indefinito, oscillando, all’aumentare del tempo. Questo comportamento è rappresentato graficamente nella figura 6.7, dove sono mostrate le posizioni degli zeri e dei poli della funzione X(z) nel caso ω0 = π/4.

6.4.3 La regione di convergenza di sequenze x(n) anticausali e illimitate Le sequenze x(n) anticausali e illimitate sono i segnali a tempo discreto che possiedono un supporto temporale illimitato per n < 0 (es.: gradino unitario anticausale −u(−n−1)). La regione di convergenza di questa categoria di sequenze è del tipo |z| < dm , dove dm è il modulo del polo più vicino all’origine z = 0 in X(z) espressa come nell’equazione 6.6. Si noti che la regione di convergenza è sempre delimitata da una circonferenza di raggio pari al modulo del polo più vicino all’origine z = 0. Inoltre, poiché non può contenere poli, deve necessariamente corrispondere all’interno di una circonferenza che li escluda tutti.

172

Capitolo 6

1

1

Im{z}

0.5

0

−0.5

Im{z}

−1 −2

−1

0 Re{z}

1

2

−0.5

1

1

0.5

0.5

0

0

−0.5

−0.5

−1 −2

−1

0 Re{z}

1

2

−1

0

5

10 n

15

20

15

20

cos(π n/4)u(n)

0

5

10 n

2000

1 0.5 Im{z}

(1/2)n cos(π n/4)u(n)

0.5

0

0

0 −2000

−0.5 −1 −2

−1

0 Re{z}

1

−4000

2

(3/2)n cos(π n/4)u(n) 0

5

10 n

15

20

Figura 6.7 Andamento nel tempo discreto di sequenze causali la cui trasformata z presenti una coppia di poli complessi coniugati. Le posizioni dei poli (indicati con una crocetta) e degli zeri (indicati con un cerchietto) della trasformata z sono nel piano z.

Esempio 6.8 La trasformata z della sequenza x(n) = −u(−n − 1) vale: X(z) =

1 , |z| < 1 1 − z −1

Moltiplicando numeratore e denominatore per z, si ottiene: X(z) =

z , |z| < 1 z−1

da cui si evince che X(z) possiede uno zero in z = 0 e un solo polo in z = 1. Confrontando X(z) con l’equazione generale 6.6, si notano le seguenti corrispondenze: pn = 1, pd = 1, c1 = 0, d1 = 1, e K = 1. La rappresentazione grafica della regione di convergenza della sequenza −u(−n− 1) è mostrata in figura 6.4-b con dm = 1.

6.4.4 La regione di convergenza di sequenze x(n) bilatere e illimitate Le sequenze x(n) bilatere e illimitate sono i segnali a tempo discreto che possiedono un supporto temporale illimitato sia per n < 0, sia per n ≥ 0.

La Trasformata z

173

La trasformata X(z) è del tipo: P −n = . . . + x(−k)z k + . . . X(z) = +∞ n=−∞ x(n)z 1 . . . + x(−1)z + x(0) + x(1)z −1 + . . . + x(p)z p + . . .

(6.11)

Si noti che la parte anticausale (n < 0) converge all’interno di un cerchio di raggio dm , mentre la parte causale converge all’esterno di un cerchio di raggio dM . Queste considerazioni portano alla conclusione che la trasformata z converge in modo uniforme alla funzione X(z) se e solo se dM < dm . In altri termini, la regione di convergenza è una corona circolare nel piano z che esclude tutti i poli della funzione X(z). Si noti che se si rende causale la sequenza x(n) annullandole i coefficienti assunti sugli istanti di tempo negativi, allora il raggio dm che delimita la parte anticausale tende a divergere (dm → ∞) e la regione di convergenza di X(z) diventa quella di una sequenza causale, |z| > dM . Un discorso analogo vale per le sequenze anticausali per le quali, invece, è il raggio che delimita la regione di convergenza della parte causale a tendere a zero (dM → 0) annullando i coefficienti che la sequenza x(n) assume sugli istanti di tempo n ≥ 0. La rappresentazione grafica della regione di convergenza tipica di sequenze bilatere e illimitate è mostrata in figura 6.4-c. Esempio 6.9 Calcolare la trasformata z della sequenza bilatera: x(n) =

µ ¶n µ ¶n 1 1 − u(n) − u(−n − 1). 4 3

Soluzione: applicando la definizione di trasformata z, si ottiene: X(z) =

¶ +∞ µ +∞ µ ¶n X X 1 n 1 − u(n)z −n − u(−n − 1)z −n 4 3 n=−∞ n=−∞

Attraverso qualche semplice passaggio matematico, si perviene alla soluzione: X(z) =

¶n ¶ +∞ µ −1 µ X X 1 1 −1 n − z −1 − z 4 3 n=−∞

n=0

X(z) =

1

+

1

1 −1 , 4z

∀z :

1 1 < |z| < 4 3

(6.12) 1− 1+ ¡ ¢n La parte causale − 14 u(n) converge per |z| > 14 , mentre la parte anticausale converge per |z| < 13 . La regione di convergenza è, dunque, l’anello circolare 1 1 4 < |z| < 3 nel piano z. 1 −1 3z

174

Capitolo 6

Esempio 6.10 la sequenza bilatera: µ ¶n µ ¶n 1 1 u(n) − u(−n − 1). x(n) = − 3 4 ¡ ¢n non possiede trasformata z. Infatti, la parte causale − 31 u(n) converge per |z| > 31 , mentre la parte anticausale converge per |z| < 14 . In questo caso, non esiste una regione di convergenza per X(z) perché ∀z : |z| > 31 diverge la parte anticausale −1 X x(n)z −n , n=−∞

mentre ∀z : |z| <

1 4

diverge la parte causale +∞ X

x(n)z −n .

n=0

Esempio 6.11 Calcolare la trasformata z della sequenza bilatera: x(n) = αn u(n) − β n u(−n − 1), |α| < 1, |β| < 1. Soluzione: applicando la definizione di trasformata z, si ottiene: X(z) =

+∞ X n=−∞

n

α u(n)z

−n



+∞ X

β n u(−n − 1)z −n

n=−∞

da cui: X(z) =

1 1 + , ∀z : |α| < |z| < |β| −1 1 − αz 1 − βz −1

(6.13)

Si noti che la trasformata z converge in modo uniforme a X(z) in 6.13 solo qualora |α| < |β|. Si noti, altresì, che la sequenza x(n) = 1, ∀n, non possiede trasformata z.

6.5 Proprietà della trasformata z Questo paragrafo è dedicato alla discussione delle proprietà principali dell’operatore di trasformata z, utili per l’analisi dei segnali e dei sistemi LTI a tempo discreto. Una proprietà di notevole importanza della trasformata z riguarda il fatto che nella regione di convergenza essa è analitica, cioè continua e indefinitamente derivabile. L’analiticità della trasformata z implica che se X(z) è nulla ∀z tranne

La Trasformata z

175

su una curva nel piano z, ad esempio solo su un cerchio di raggio |z| = Rx , allora è nulla dappertutto. Le proprietà più importanti della trasformata z sono riassunte nella tabella 6.1. Esse si riferiscono ad una generica sequenza x(n) bilatera, con trasformata z convergente nella regione Rx , il luogo dei punti z : R1 < |z| < R2 . Le dimostrazioni sono simili a quelle analizzate a proposito della DTFT. Al fianco di ogni trasformata è riportata la relativa regione di convergenza. Si noti che le regioni di convergenza dipendono dalle specifiche sequenze da trasformare. Ad esempio, la proprietà di linearità della trasformata z assicura che la trasformata di una somma di sequenze, x(n) + y(n), è pari alla somma delle trasformate di ogni singola sequenza. La regione di convergenza risultante è il luogo dei punti z in cui entrambe le trasformate X(z) e Y (z) convergono: si tratta del luogo dei punti z che non contiene i poli di X(z) e di Y (z). In generale, è possibile affermare che la regione di convergenza corrisponde all’intersezione delle regioni di convergenza delle trasformate z delle sequenze x(n) e y(n). Tuttavia, a seconda delle espressioni matematiche di X(z) e di Y (z), potrebbe anche capitare la cancellazione polo-zero tra poli di Y (z) e zeri di X(z), o viceversa. In definitiva, i raggi di convergenza della trasformata complessiva vanno valutati di volta in volta, in relazione alle sequenze da trasformare. La tabella 6.2 mostra le trasformate z delle sequenze elementari. ¡ ¢n Esempio 6.12 Calcolare la trasformata z della sequenza causale x(n) = 13 u(n)+ ¡ 1 ¢n u(n). 4 Soluzione: dalla definizione di trasformata z si ottiene: +∞ µ ¶n +∞ µ ¶n X X 1 1 −n u(n)z + u(n)z −n X(z) = x(n)z = 3 4 n=−∞ n=−∞ n=−∞ (6.14) Impiegando la definizione del gradino unitario u(n), si ricava: +∞ X

−n

X(z) =

+∞ µ ¶n X 1 n=0

3

z

−n

+

+∞ µ ¶n X 1 n=0

4

z −n

(6.15)

Adoperando la trasformata z della sequenza αn u(n) in tabella 6.2, si ottiene: X(z) =

+∞ µ X 1 n=0

3

z

−1

¶n +

+∞ µ X 1 n=0

4

z

−1

¶n (6.16)

Entrambe le sommatorie sono delle serie geometriche di funzioni che convergono se le rispettive ragioni sono minori di uno in modulo, vale a dire | 31 z −1 | < 1 e | 14 z −1 | < 1. Da queste due condizioni si ricava la regione di convergenza di X(z): ROC= {z : |z| > 13 ∩ |z| > 14 } =⇒ |z| > 31 , in quanto bisogna

176

Capitolo 6

considerare il luogo dei punti z in cui entrambe le sommatorie convergono. In definitiva, la X(z) vale: X(z) =

1 1 − 13 z −1

+

1 1 − 14 z −1

¡ ¢ 7 2z z − 24 1 ¢¡ ¢ =¡ 1 , |z| > 3 1 z−3 z−4

(6.17)

L’equazione 6.17 mostra chiaramente che X(z) possiede due zeri reali, uno in 7 z = 0 ed uno in z = 24 , e due poli reali z = 31 , 14 . Analizziamo alcune proprietà delle trasformate z riportate in tabella 6.1. • La trasformata X(z/α) della sequenza αn x(n) converge nella regione |α| · Rx . Questo significa che se la trasformata z della sequenza x(n) possiede regione di convergenza pari a R1 < |z| < R2 , allora la regione di convergenza |α| · Rx della sequenza αn x(n) corrisponde a |α| · R1 < |z| < |α| · R2 . La dimostrazione di questa proprietà segue dalla definizione di trasformata z della sequenza αn x(n): ¡ −1 ¢−k P+∞ P k −k = = Z [αn¡x(n)] ¢= +∞ k=−∞ x(k) α z k=−∞ α x(k)z −1 = X α z = Z [x(n)]| −1 α

z

L’equazione precedente suggerisce che, se la trasformata z di x(n) converge nella regione R1 < |z| < R2 , allora la trasformata z della sequenza αn x(n) converge nella regione R1 < |α−1 z| < R2 . L’ultima relazione conduce alla regione di convergenza cercata: |α|R1 < |z| < |α|R2 . • La regione di convergenza della trasformata X( z1 ) della sequenza x(−n) vale 1 Rx . Questo significa che se la trasformata z di x(n) possiede regione di convergenza pari a R1 < |z| < R2 , allora la regione di convergenza R1x corrisponde a R12 < |z| < R11 . La dimostrazione di questa proprietà segue dalla definizione di trasformata z della sequenza x(−n): ¡ −1 ¢−i P+∞ P+∞ −k Z [x(−n)] = ¡ −1 ¢= k=−∞ x(−k)z = i=−∞ x(i) z =X z = Z [x(n)]| −1 z

L’equazione precedente suggerisce che, se la trasformata z di x(n) converge nella regione R1 < |z| < R2 , allora la trasformata z della sequenza x(−n) converge nella regione R1 < |z −1 | < R2 . L’ultima relazione conduce alla regione R12 < |z| < R11 . • La regione di convergenza della trasformata X ∗ ( z1∗ ) della sequenza x∗ (−n) vale R1x . Questo significa che se la trasformata z di x(n) possiede regione di convergenza pari a R1 < |z| < R2 , allora la regione di convergenza R1x corrisponde a R12 < |z| < R11 .

La Trasformata z

177

• La trasformata z della sequenza nx(n) vale −z dX(z) dz , dove X(z) è la trasformata z della sequenza x(n). Infatti, è facile verificare la seguente relazione: £ ¤ P+∞ d P+∞ dz −k −k = −z −z dX(z) k=−∞ x(k)z k=−∞ x(k) dz = dz = −z dz P P +∞ −k−1 = −k = Z [nx(n)] = z +∞ k=−∞ kx(k)z k=−∞ kx(k)z • La trasformata z della sequenza y(n), ottenuta attraverso la convoluzione discreta tra due sequenze x(n) e h(n), è pari al prodotto tra le trasformate z delle due sequenze x(n) e h(n). La dimostrazione segue dalla definizione di convoluzione discreta: £P+∞ ¤ P P+∞ −n = Z [y(n)] = Z x(k)h(n − k) = +∞ k=−∞ n=−∞ k=−∞ x(k)h(n − k)z P+∞ P+∞ = k=−∞ x(k) n=−∞ h(n − k)z −n Effettuando il cambio di variabile p = n − k nella sommatoria interna rispetto al tempo n, si ottiene: P P+∞ −(p+k) = Y (z) = +∞ k=−∞ x(k) ³p=−∞ h(p)z ´ ¡P+∞ ¢ P +∞ −p = X(z)H(z). −k · h(p)z = x(k)z p=−∞ k=−∞ Evidentemente, la regione di convergenza della trasformata Y (z) deve corrispondere all’intersezione delle regioni di convergenza delle due trasformate X(z) e H(z).

6.6 Trasformate z razionali Le proprietà della regione di convergenza analizzate in precedenza, derivano direttamente dall’espressione analitica della trasformata z. Nei casi pratici di interesse, la funzione X(z) è una funzione razionale di due polinomi: X(z) =

N (z) D(z)

(6.18)

dove N (z) e D(z) sono due polinomi nella variabile z −1 , rispettivamente di grado pn e pd . Scrivendo i due polinomi N (z) e D(z) in forma estesa, si ottiene: Pn Ppn bi z pn −i z pd pi=0 bi z −i b0 + b1 z −1 + . . . + bpn z −pn i=0 P P = X(z) = = p p d d −i a0 + a1 z −1 + . . . + apd z −pd z pn i=0 ai z pd −i i=0 ai z (6.19) Si noti che i polinomi nella frazione di sinistra sono espressi in termini di potenze negative di z, mentre quelli nella frazione di destra sono espressi in termini di

178

Capitolo 6

Sequenza x(n), y(n) x(n − N )

X(z), Y (z) z −N X(z)

α1 x(n) + α2 y(n), α1 , α2 costanti α1 X(z) + α2 Y (z) x(−n) X(z −1 ) ∗ x (n) X ∗ (z ∗ ) ∗ x (−n) X ∗ ( z1∗ ) 1 ∗ ∗ 0 → Rx \{z = 0} se N < 0 → Rx \{z = ∞} contiene Rx ∩ Ry 1 Rx

Rx 1 Rx

contiene Rx contiene Rx − |α| · Rx Rx meno z = ∞ o z = 0 contiene R1x |α| · Rx meno z = ∞ o z = 0 − − contiene Rx ∩ Ry

potenze positive di z. Nel caso in cui a0 e b0 sono entrambi non nulli, è possibile scrivere: bp b p −1 p z pd b0 z n + b01 z n + . . . + b0n X(z) = pn · (6.20) z a0 z pd + aa1 z pd −1 + . . . + aapd 0 0 Fattorizzando i due polinomi in termini delle rispettive radici elementari, si ottiene: ¢ Qpn ¡ Qn 1 − ci z −1 (z − ci ) b0 pd −pn pi=1 b0 i=1 Qpd Qpd = z X(z) = (6.21) −1 a0 i=1 (1 − di z ) a0 i=1 (z − di ) dove i coefficienti ci , ∀i = 1, . . . , pn , sono gli zeri non nulli di X(z), mentre i coefficienti di , ∀i = 1, . . . , pd , sono i poli non nulli di X(z). L’equazione 6.21 mostra chiaramente che ci sono pn − pd poli in z = 0 nel caso in cui pn > pd , ovvero pd − pn zeri in z = 0 nel caso in cui pd > pn . Si noti che contando gli eventuali zeri e poli in z = 0 e z → ∞, il numero di zeri di X(z) coincide col numero di poli complessivi di X(z). Il numero degli zeri di X(z) rispetto al numero dei poli fornisce delle indicazioni utili circa la tipologia della sequenza x(n) di cui X(z) è la trasformata. Ad esempio, affinché una generica funzione X(z) possa rappresentare la trasformata z di una sequenza x(n) causale, il numero di zeri di X(z) non può essere superiore al numero di poli presenti in X(z), cioè pn ≤ pd . Se così non fosse, sarebbe facile verificare la presenza di un polo all’infinito in X(z): lim X(z) → ∞.

z→∞

La Trasformata z

Sequenza x(n) δ(n) δ(n − N ), N > 0 δ(n + N ), N > 0 u(n) −u(−n − 1) αn u(n) −αn u(−n − 1) nαn u(n)

X(z) 1 z −N z +N 1 1−z −1 1 1−z −1 1 1−αz −1 1 1−αz −1 αz −1 (1−αz −1 )2 z −1 (1−αz −1 )2 2αz −1 −1 (1−αz −1 )2 αz −1 (1+αz −1 ) (1−αz −1 )3 αz −1 (1−αz −1 )2 sin(ωo )z −1 1−2 cos(ωo )z −1 +z −2 1−cos(ωo )z −1 1−2 cos(ωo )z −1 +z −2 α sin(ωo )z −1 1−2α cos(ωo )z −1 +α2 z −2 1−α cos(ωo )z −1 1−2α cos(ωo )z −1 +α2 z −2 1−αN z −N 1−αz −1

nαn−1 u(n) n

(n − 1)α u(n) 2 n

n α u(n) n

−nα u(−n − 1) sin(ωo n)u(n) cos(ωo n)u(n) n

α sin(ωo n)u(n) n

α cos(ωo n)u(n) n

α [u(n) − u(n − N )] Tabella 6.2 Le trasformate z di segnali elementari.

179

ROC ∀z ∀z − {z = 0} ∀z − {z = ∞} ∀|z| > 1 ∀|z| < 1 ∀|z| > |α| ∀|z| < |α| ∀|z| > |α| ∀|z| > |α| ∀|z| > |α| ∀|z| > |α| ∀|z| < |α| ∀|z| > 1 ∀|z| > 1 ∀|z| > α ∀|z| > α ∀|z| > 0

Il polo all’infinito violerebbe la condizione di causalità della sequenza x(n), dato che cadrebbe nella regione di convergenza della trasformata z di una sequenza x(n) supposta causale. Esempio 6.13 Siano date le seguenti trasformate z 2

1. X(z) =

(1−z −2 )

1− 31 z −1 2

2. X(z) =

(z−1) z− 14

3. X(z) =

(z− 12 ) 5 (z− 34 )

4

Determinare quali funzioni possono rappresentare le trasformate z di sequenze causali. Soluzione: 1. Essendo espressa in termini di potenze negative di z, la prima trasformata z può rappresentare una sequenza causale, qualunque sia l’ordine del polinomio al numeratore rispetto a quello al denominatore. Applicando la proprietà

180

Capitolo 6

del ritardo della trasformata z, è facile riscrivere X(z) come segue: X(z) =

1 1 − 13 z −1



2z −2 z −4 + 1 − 31 z −1 1 − 13 z −1

a cui è associata la sequenza causale: µ ¶n µ ¶n−2 µ ¶n−4 1 1 1 x(n) = u(n) − 2 u(n − 2) + u(n − 4). 3 3 3 2. Essendo espressa in termini di potenze positive di z, questa trasformata z non può rappresentare sequenze causali perché il grado del polinomio al numeratore è superiore al grado del polinomio al denominatore. E’ facile verificare che: X(z) =

(z − 1)2 7 1 − 47 z −1 = z − · 4 1 − 14 z −1 z − 14

A causa del monomio z, l’antitrasformata di X(z) presenta una delta numerica centrata in n = −1, e, come tale, risulta la trasformata z di una sequenza non causale. 3. Il grado del polinomio al numeratore è inferiore al grado del polinomio al denominatore, e, come tale, è possibile associare una sequenza causale alla trasformata in questione. Moltiplicando e dividendo per z −5 , si ottiene: ¡ ¢4 ¢4 ¡ z − 12 z −1 1 − 21 z −1 X(z) = ¡ ¢5 = ¡ ¢5 z − 34 1 − 34 z −1

6.7 Inversione della trasformata z La formula di inversione della trasformata z permette di ottenere la sequenza x(n) a partire dall’espressione analitica della trasformata X(z), convergente nella regione R1 < |z| < R2 , ed è definita come segue: I 1 x(n) = (6.22) X(z)z n−1 dz, 2jπ γ dove γ descrive una curva di integrazione appartenente alla regione di convergenza di X(z). La curva γ è percorsa in senso antiorario e circoscrive l’origine z = 0. Si moltiplichino ambo i membri della trasformata z X(z) =

+∞ X k=−∞

x(k)z −k ,

La Trasformata z

181

per z n , e si integri sulla curva γ: I n

X(z)z dz = γ

+∞ X k=−∞

I z n−k dz.

x(k) γ

H L’integrale γ z n−k dz si risolve andando a considerare una curva che contenga l’origine z = 0, e che appartenga alla regione di convergenza di X(z). Ad esempio, se il cerchio di raggio unitario appartiene alla regione di convergenza di X(z), l’integrale di linea si risolve ponendo z = ejθ con θ ∈ [0, 2π]. ¡ ¢ Sotto queste ipotesi, impiegando il cambio di variabile dz = d ejθ = jejθ dθ, si ottiene: I

Z z

n−k

dz = j

γ



ejθ(n−k) ejθ dθ = 2jπe+jπ(n−k+1) sinc(n − k + 1).

0

Questo integrale è nullo per ogni n e k tranne che per i valori di n e k che soddisfano la relazione n − k + 1 = 0 → n = k − 1, per i quali l’integrale vale 2πj. Sotto queste condizioni, l’equazione 6.22 può essere risolta come segue: I X £ ¤ 1 x(n) = X(z)z n−1 dz = Ri X(z)z n−1 | (6.23) poli∈γ 2jπ γ i

£

¤ n−1

sono i residui della funzione X(z)z n−1 nei poli all’interno dove Ri X(z)z della regione individuata dalla curva γ. La soluzione può essere ottenuta ricavando l’espressione analitica dei residui. Nel caso in cui la funzione X(z) è analitica all’interno della curva γ, curva compresa, a meno del punto z = zp in cui ammette un polo di ordine gp (sotto queste ipotesi la funzione X(z) può essere scritta come Y (z)/(z − zp )gp , dove Y (z) è una funzione analitica in γ), allora l’integrale di H 1 linea 2jπ Y (z)dz può essere valutato come segue: 1 2jπ

·

I Y (z)dz = R [X(z)]|z=zp

¸ dgp −1 1 gp [(z − zp ) X(z)] = (gp − 1)! dz gp −1 z=zp

Se il polo è semplice, allora gp = 1 e la relazione precedente diventa: 1 2jπ

I Y (z)dz = R [X(z)]|z=zp = [(z − zp )X(z)]z=zp = Y (zp ).

L’integrale di linea assume un’espressione semplice nel caso in cui le trasformate z sono di tipo razionale, come spesso accade con le funzioni di trasferimento di sistemi LTI impiegati nella pratica. Nei paragrafi che seguono, saranno analizzate le tecniche di inversione utili per trasformate z di tipo razionale.

182

Capitolo 6

6.7.1 Metodo diretto E’ il metodo più semplice disponibile e consiste nel riconoscere la sequenze x(n) ispezionando la relativa trasformata X(z). Generalmente, s’impiegano le trasformate elementari riportate in tabella 6.2. Alcuni esempi possono chiarire l’impiego di questo metodo di inversione. Esempio 6.14 Calcolare l’antitrasformata z della funzione X(z) = z 4 +3z −1 + 4z −10 . Soluzione: la proprietà di linearità della trasformata z garantisce che l’antitrasformata di una somma di termini è pari £ ¤ alla somma £ delle ¤ antitrasformate £ −10 ¤ di ogni termine. In formule, x(n) = Z −1 z 4 + Z −1 3z −1 £+ Z −1 . Im¤ 4z −1 −N piegando la proprietà del ritardo in tabella 6.2, cioé Z z = δ(n − N ), si ottiene x(n) = δ(n + 4) + 3δ(n − 1) + 4δ(n − 10). 1 Esempio 6.15 Calcolare l’antitrasformata della funzione X(z) = 1−αz −1 , dove α è una costante reale e positiva. Soluzione: innanzitutto si noti che la trasformata X(z) cercata potrebbe corrispondere alla sequenza causale x(n) = αn u(n), oppure alla sequenza anticausale x(n) = −αn u(−n − 1). Entrambe, infatti, possiedono la medesima espressione analitica della trasformata z, come si evince dalla tabella 6.2. E’ necessario, dunque, conoscere a priori il supporto temporale della sequenza x(n) per procedere in modo opportuno.

Un caso interessante che ricade in questa tecnica di inversione, riguarda il seguente esempio. Esempio 6.16 Calcolare l’antitrasformata della funzione X(z) = log(1+αz −1 ), |z| > |α|, dove α è una costante. Soluzione: l’esercizio si risolve ricorrendo all’espansione in serie di potenze della funzione log(1 + x), |x| < 1. In formule: X(z) =

+∞ X (−1)k+1 αk z −k k=1

da cui si ottiene: x(n) =

k

(−1)n+1 αn u(n − 1) n

(6.24)

(6.25)

6.7.2 Metodo per divisioni successive (z) Si consideri una funzione X(z) = N D(z) , espressa come rapporto di polinomi nella variabile z. Se la sequenza x(n) è causale, vale a dire X(z) converge all’esterno di un cerchio di raggio |zo |, allora conviene riportare X(z) nella forma di rapporto tra polinomi organizzati secondo potenze decrescenti della variabile z. Viceversa,

La Trasformata z

Sequenza anticausale

Sequenza causale z2 z

z

4

z

1 +z

+1

-1

z -1 -2 3 +3 z 3 z -2 -1 4 z +3 z -1

-2

4 z +4 z

+1

4 +z

-2 -3 z-1 3 z 4 z ....

-1

3

183

4 +4 z 4 z

2

3 z +4 z

2 2

4 3z 3z

3

+ z +3 z

3

3 z +3 z

2

z +z2

....

...........

-3

4z

z-2 +4 z-3

...........

(a)

(b)

Figura 6.8 Divisioni successive condotte nell’esempio 6.17.

per sequenze anticausali, conviene esprimere X(z) nella forma di rapporto tra polinomi organizzati secondo potenze crescenti della variabile z. In una fase successiva, si effettuano delle divisioni successive tra i due polinomi N (z) e D(z), e si considerano i quozienti ottenuti, i quali rappresentano i coefficienti della sequenza x(n). Esempio 6.17 Si consideri la trasformata z: X(z) =

z2

z−4 , |z| > |zo |. −z+1

Le divisioni successive sono eseguite secondo quanto indicato nella figura 6.8a. Con questa tecnica, la trasformata X(z) viene espressa come potenze negative crescenti nella variabile z: X(z) = z −1 − 3z −2 − 4z −3 + . . . Impiegando la proprietà del ritardo della trasformata z, si ottiene il risultato cercato: x(n) = δ(n − 1) − 3δ(n − 2) − 4δ(n − 3) + . . . Qualora la trasformata z si riferisca ad una sequenza con supporto su istanti di tempo discreti negativi, allora la divisione va condotta secondo quanto mostrato nella figura 6.8-b. Con questa tecnica, la trasformata X(z) viene espressa come potenze positive crescenti nella variabile z: X(z) = −4 − 3z + . . . Impiegando le proprietà basilari della trasformata z, si ottiene il risultato cercato: x(n) = −4δ(n) − 3δ(n + 1) + . . .

184

Capitolo 6

L’approccio seguito per la soluzione degli esercizi precedenti permette di evincere che la tecnica delle divisioni successive è valida solo se la sequenza x(n) è costituita da un numero finito di termini: solo in questo caso il quoziente della divisione è costituito da un numero finito di termini. Nel caso di sequenze con supporto illimitato conviene adoperare le tecniche di inversione discusse nei paragrafi che seguono.

6.7.3 Inversione per espansione in fratti semplici Nei casi pratici di interesse la trasformata X(z) può essere espressa come una funzione razionale di due polinomi N (z), D(z). In questo caso, conviene adoperare la tecnica dell’espansione in fratti semplici, in modo tale da scrivere la funzione X(z) razionale come una combinazione di funzioni razionali: X(z) = β1 X1 (z) + . . . + βk Xk (z), dove i termini β1 , . . . , βk sono delle costanti, eventualmente complesse, mentre le funzioni X1 (z), . . . , Xk (z) sono funzioni razionali nella variabile z. Ogni funzione Xi (z) generalmente considera uno o due poli di X(z), per cui l’antitrasformata può essere dedotta dalla tabella 6.2. Se la decomposizione in fratti semplici di X(z) è possibile, allora l’antitrasformata risulta: x(n) = β1 x1 (n) + . . . + βk xk (n). Consideriamo, dunque, una funzione X(z) razionale del tipo: X(z) =

b0 + b1 z −1 + . . . + bpn z −pn a0 + a1 z −1 + . . . + apd z −pd

e modifichiamola in modo tale che i polinomi al numeratore e al denominatore abbiano termine noto unitario: b0 1 + · X(z) = a0 1 +

b1 −1 + ... + b0 z a1 −1 + ... + a0 z

bpn −pn b0 z apd −p d a0 z

Nell’ipotesi che i gradi pn e pd dei due polinomi N (z) e D(z) soddisfino la relazione pn < pd , e che i poli di X(z) siano semplici, allora è possibile scomporre i polinomi al numeratore e denominatore in termini delle rispettivi radici semplici ci , ∀i = 1, . . . , pn , e di , ∀i = 1, . . . , pd : Q

pn −1 Pd (z) b0 Qi=1 (1−ci z ) = pi=1 Xi (z) = X(z) = N = pd −1 ) a0 D(z) (1−d z i i=1 ¡ ¢ Ppd Ri −1 = i=1 1−di z −1 , Ri = 1 − di z · X(z)|z=d

(6.26)

i

dove i termini ci , ∀i = 1, . . . , pn , sono gli zeri non nulli di X(z), i termini di , ∀i = 1, . . . , pd , sono i poli non nulli di X(z), e Ri è l’i-esimo residuo della

La Trasformata z

185

funzione X(z) nel polo z = di . La ragione per cui convenga adoperare l’espansione in termini di potenze negative di z, è strettamente legato alla realizzazione dei sistemi LTI a tempo-discreto causali. I metodi di analisi che tratteremo nel seguito, saranno applicati alla realizzazione circuitale pratica di tali sistemi. L’antitrasformata di X(z) si ricava facilmente impiegando la proprietà di linearità e ricordando le seguenti antitrasformate elementari: h i • Z −1 [Xi (z)] = Z −1 1−dRiiz −1 = Ri · (di )n u(n) nel caso di sequenza causale; h i • Z −1 [Xi (z)] = Z −1 1−dRiiz −1 = −Ri · (di )n u(−n − 1) per sequenze anticausali. Resta ancora da capire come scegliere l’antitrasformata (causale/anticausale) da associare ad ogni funzione elementare Xi (z) nello sviluppo in fratti semplici di X(z). A tal fine, distinguiamo i tre casi seguenti. • X(z) causale. Si consideri una sequenza causale con trasformata X(z) avente pd poli distinti. L’ipotesi di causalità implica che la funzione X(z) converga all’esterno di un cerchio di raggio opportuno. Impiegando la scomposizione in fratti semplici, si ottiene: X(z) =

pd X i=1

Xi (z) =

pd X i=1

¡ ¢ Ri −1 , R = 1 − d z · X(z)|z=d i i i 1 − di z −1

La regione di convergenza della funzione X(z) è l’intersezione tra le pd regioni di convergenza delle funzioni elementari Xi (z). L’unico modo affinché la regione di convergenza di X(z) sia l’esterno di un cerchio di raggio opportuno è che ogni funzione elementare Xi (z) converga all’esterno di un cerchio passante per il relativo polo semplice z = di . La regione di convergenza di X(z) è dunque |z| > dM = max {|d1 |, . . . , |dpd |}. La rappresentazione schematica della regione di convergenza di sequenze causali è mostrata in figura 6.9-a. • X(z) anticausale. Si consideri una sequenza anticausale con trasformata X(z) avente pd poli distinti. L’ipotesi di anticausalità implica che la funzione X(z) converga all’interno di un cerchio di raggio opportuno. Impiegando la scomposizione in fratti semplici 6.26, ne consegue che la regione di convergenza della funzione X(z) è l’intersezione tra le pd regioni di convergenza delle funzioni elementari Xi (z). L’unico modo affinché la regione di convergenza di X(z) sia l’interno di un cerchio di raggio opportuno è che ogni funzione elementare Xi (z) converga all’interno di un cerchio passante per il relativo polo semplice z = di . La regione di convergenza di X(z) è dunque |z| < dm = min {|d1 |, . . . , |dpd |}. La rappresentazione schematica della regione di convergenza di sequenze anticausali è mostrata in figura 6.9-b. • X(z) bilatere. Un discorso analogo può essere ripetuto per le sequenze bilatere per le quali la trasformata z converge in una regione individuata da un anello circolare del tipo dM < |z| < dm . In questo caso, la parte causale di X(z) converge all’esterno del cerchio |z| > dM (al cui interno ci sono i poli associati

186

Capitolo 6

ROC di sequenze causali

Im

Im

ROC di sequenze anticausali

d1 di d1

d2

dM d3

dm Re

di Re

d2 d3

(a)

(b)

Im

ROC di sequenze bilatere illimitate

d4 d1

dM Re

d d2 d 3 m di d5

(c)

Figura 6.9 La regione di convergenza di trasformate X(z) di tipo razionale associate a sequenze causali, anticausali, e bilatere. I poli della funzione X(z) sono indicati con delle crocette.

alle sequenze causali), mentre la parte anticausale converge all’interno del cerchio |z| < dm (al cui esterno ci sono i poli associati alle sequenze anticausali). In riferimento all’equazione 6.26, si deduce che tutte le trasformate elementari del tipo Xi (z) = 1−dRiiz −1 che si riferiscono a poli di in modulo minori di dM , identificano sequenze causali. Allo stesso modo, tutte le trasformate elementari del tipo Xi (z) = 1−dRiiz −1 che si riferiscono a poli di in modulo maggiori di dm , identificano sequenze anticausali. La sequenza x(n) può essere ottenuta applicando le trasformate elementari, riportate nella tabella 6.2, ad ogni trasformata Xi (z) = 1−dRiiz −1 . La rappresentazione schematica della regione di convergenza di sequenze bilatere è mostrata in figura 6.9-c. Vediamo alcuni esempi di inversione di trasformate z razionali che rientrano nella casistica discussa in precedenza. 1 , |z| > 12 . (z− 12 )(z− 13 ) Soluzione: la regione di convergenza suggerisce che la sequenza x(n) cercata è causale. Per applicare l’espansione in 6.26, è sufficiente dividere numeratore e denominatore per z 2 , in modo da scrivere la funzione X(z) come rapporto di polinomi con potenze negative di z:

Esempio 6.18 Calcolare l’antitrasformata di X(z) =

z −2 −2 0 ¢¡ ¢ X(z) = ¡ 1 −1 1 −1 = z X (z), 1 − 2z 1 − 3z

La Trasformata z

dove

187

1 0 ¢¡ ¢. X (z) = ¡ 1 −1 1 − 2z 1 − 13 z −1 0

Per risolvere il problema, è sufficiente antitrasformare X (z) e, poi, applicare 0 la proprietà del ritardo della trasformata z alla funzione z −2 X (z). Riassumendo: R1 R2 0 ¢ ¡ ¢, X (z) = ¡ 1 −1 + 1 − 2z 1 − 13 z −1 dove i residui R1 e R2 valgono: µ ¶ 1 −1 0 R1 = 1 − z · X (z)| 1 = 3 z= 2 2 µ ¶ 1 −1 0 R2 = 1 − z · X (z)| 1 = −2. z= 3 3

e

Sostituendo i valori numerici dei residui, si ottiene: 3 2 0 ¢ ¡ ¢ X (z) = ¡ 1 −1 − 1 − 2z 1 − 31 z −1 e quindi x(n) = Z

−1

" µ ¶ µ ¶n−2 # h i 1 1 n−2 −2 0 u(n − 2) −2· z X (z) = 3 · 2 3

Esempio 6.19 Calcolare l’antitrasformata della funzione X(z) =

1 1− 34 z −1 + 18 z −2

con le seguenti regioni di convergenza: 1. ROC1 : |z| > 21 ; 2. ROC2 : |z| < 41 ; 3. ROC3 : 14 < |z| < 21 . Soluzione: il polinomio D(z) in X(z) può in¢ termini delle ¡ essere scomposto ¢¡ sue due radici elementari come D(z) = 1 − 21 z −1 1 − 14 z −1 . Ricorrendo all’espansione in fratti semplici (equazione 6.26), è possibile scrivere: X(z) = 1−R1 1z −1 + 1−R1 2z −1 , 2 4 ¡ ¢ R1 = 1 − 12 z −1 X(z)| 1 = 2, z= 2 ¡ ¢ R2 = 1 − 14 z −1 X(z)| 1 = −1. z= 4

Sostituendo i valori dei due residui, si ottiene: X(z) =

2 1−

1 −1 2z



1 1 − 14 z −1

.

188

Capitolo 6

L’antitrasformata viene ricavata a partire dalla conoscenza della regione di convergenza di X(z). Distinguiamo, a tal scopo, i tre casi seguenti. 1. La prima regione di convergenza, |z| > 21 , si riferisce ad una sequenza causale. Impiegando le trasformate elementari in tabella 6.2, si ottiene: µ ¶n µ ¶n 1 1 x(n) = 2 · u(n) − u(n). 2 4 2. La seconda regione di convergenza, |z| < 41 , identifica una sequenza anticausale. Impiegando le trasformate elementari in tabella 6.2, si ottiene: µ ¶n µ ¶n 1 1 x(n) = −2 · u(−n − 1) + u(−n − 1). 2 4 3. La terza regione di convergenza, 14 < |z| < 21 , identifica una sequenza bilatera. Il polo z = 14 delimita la regione di convergenza della parte causale, mentre il polo z = 12 delimita la regione di convergenza della parte anticausale. Questo discorso implica che la trasformata elementare 2 1 − 12 z −1 si riferisce ad una sequenza anticausale, mentre la trasformata −

1 1 − 14 z −1

si riferisce ad una sequenza causale. In definitiva, l’antitrasformata z cercata vale: µ ¶n µ ¶n 1 1 x(n) = −2 · u(−n − 1) − u(n). 2 4 Esempio 6.20 Calcolare l’antitrasformata della funzione X(z) = 1 3.

2−z −1 1 −2 , 3− 74 z −1 + 12 z

Soluzione: per applicare l’equazione 6.26, bisogna rendere monici i polinomi al numeratore e al denominatore. E’ facile dimostrare che la funzione X(z) può essere riscritta come segue: X(z) =

1 − 12 z −1 2 ¢¡ ¢ ·¡ 3 1 − 13 z −1 1 − 41 z −1

dove si sono messi in evidenza lo zero finito in z = 12 e i due poli finiti in z = 13 e z = 14 . I due residui valgono R1 = −4/3 e R2 = 2. Si noti che il coefficiente moltiplicativo 23 corrisponde al rapporto ab00 mostrato nell’equazione 6.26.

|z| >

La Trasformata z

189

Impiegando le trasformate elementari associate a sequenze causali nella tabella 6.2, si ottiene il risultato cercato: µ ¶ µ ¶n 4 1 n 1 x(n) = − u(n) + 2 u(n) 3 3 4 L’equazione 6.26 si riferisce a trasformate z razionali con poli semplici, dove il numeratore possiede grado minore del grado del polinomio al denominatore. Se N (z) ha grado maggiore o uguale al grado del denominatore D(z), cioé pn ≥ pd , allora è sufficiente effettuare la divisione tra polinomi fino ad ottenere una trasformata X(z) del tipo: X(z) =

pn −pd X

0

Ak z −k +

k=0

N (z) D(z)

(6.27)

0

dove N (z) è un polinomio di grado inferiore al grado del denominatore D(z), e i termini Ak , ∀k = 0, . . . , pn − pd , rappresentano i quozienti delle divisioni successive tra i polinomi N (z) e D(z). A questo punto, nell’ipotesi che le radici 0

(z) di D(z) siano semplici, l’antitrasformata di ND(z) si valuta secondo quanto inz della sommatoria si ricava dicato dall’equazione 6.26, mentre£ l’antitrasformata ¤ ricordando l’antitrasformata Z −1 Ak z −k = Ak δ(n − k): # pn −p "pn −p Xd Xd Ak δ(n − k). Ak z −k = Z −1 k=0

k=0

Esempio 6.21 Calcolare l’antitrasformata della funzione X(z) =

N (z) D(z)

1 2.

=

1+2z −1 +z −2

(1− 12 z −1 )(1− 13 z −1 )

Soluzione: si tratta di una sequenza causale. Inoltre, poiché N (z) e D(z) hanno lo stesso grado, bisogna effettuare una divisione tra polinomi per ricondurci alla formula 6.27. Con una divisione tra polinomi si ottiene: 0

1 + 2z −1 + z −2 7z −1 − 5 N (z) ¡ ¢¡ ¢ X(z) = = 6 + = 6 + D(z) 1 − 56 z −1 + 16 z −2 1 − 21 z −1 1 − 13 z −1 (6.28) Infine, si ricavano i due residui: à !µ ¶ 7z −1 − 5 1 −1 ¢¡ ¢ R1 = ¡ 1− z = 27 (6.29) 2 1 − 12 z −1 1 − 31 z −1 | 1 z= 2

e

à R2 =

7z −1 − 5 ¡ ¢¡ ¢ 1 − 12 z −1 1 − 13 z −1



1 1 − z −1 3

¶ = −32 |z= 1 3

(6.30)

, |z| >

190

Capitolo 6

e, quindi, 27 32 − 1 −1 =⇒ z ) (1− 21 z −1 ) ¡ (1− 3 ¢ ¡ ¢n n 1 =⇒ x(n) = 6δ(n) + 27 2 u(n) − 32 31 u(n)

X(z) = 6 +

(6.31)

Le equazioni 6.26 e 6.27 si riferivano all’espansione in fratti semplici di funzioni X(z) con poli semplici. L’ultimo caso da affrontare riguarda l’espansione in fratti semplici di funzioni X(z) con poli di ordine maggiore di uno. Per porci nella situazione più generale possibile, ipotizziamo che i polinomi N (z) e D(z) abbiano gradi che soddisfano la relazione pn > pd , e che D(z) abbia un polo di ordine gd > 1 in z = dmu . Per semplicità, ipotizziamo che i poli semplici siano indicizzati come segue: di , ∀i = 1, . . . , pd − gd Sotto queste ipotesi, l’equazione 6.27 può essere scomposta in fratti semplici come segue: X(z) =

pn −pd X k=0

Ak z

−k

+

pX d −gd i=1

g

d X Ri Bi + −1 1 − di z (1 − dmu z −1 )i

(6.32)

i=1

¡ ¢ dove i termini Ri = 1 − di z −1 · X(z)|z=d sono i residui nei poli semplici, i mentre i termini Bi sono i residui nei poli di ordine superiore. I residui Bi si valutano come segue: £ ¤ dgd −i gd X(s−1 ) (1 − d s) mu g −i d | ds s=d−1 mu Bi = (6.33) gd −i (gd − i)! (−dmu ) Si noti che se il grado del numeratore è inferiore a quello del denominatore, allora scompare la prima sommatoria in 6.32. In caso di presenza di P d di più Bpoli i ordine gd > 1, allora si aggiungono tante sommatorie del tipo gi=1 (1−dmu z −1 )i per ogni polo di ordine multiplo. Esempio 6.22 Calcolare l’antitrasformata z della funzione X(z) = 1 , |z| > 1. (1+z −1 )(1−z −1 )2

N (z) D(z)

=

Soluzione: si tratta di una sequenza causale. Inoltre, poiché N (z) ha grado inferiore al grado di D(z) possiamo applicare la relazione 6.32, laddove si elimini la prima sommatoria, e si consideri gd = 2: 2

X R1 Bi X(z) = , + 1 + z −1 (1 − z −1 )i i=1

dove

¡ ¢ R1 = 1 + z −1 X(z)|z=−1 = 14¤, £ 1 d B1 = −1 · ds (1 − s)2 X(s−1 ) |s=1 = £ ¤ B2 = (1 − s)2 X(s−1 ) |s=1 = 12 .

1 (1+s)2 |s=1

= 14 ,

La Trasformata z

191

Noti i tre residui, si ottiene: X(z) =

1 1 1 1 1 1 + + . −1 −1 41+z 41−z 2 (1 − z −1 )2

L’antitrasformata di X(z) si ottiene impiegando le trasformate elementari riportate nella tabella 6.2: 1 1 4 1+z −1 1 1 4 1−z −1 z −1 z 2 (1−z −1 )2

→ → →

1 n 4 (−1) u(n), 1 4 u(n), 1 2 (n + 1)u(n +

1).

Osservando che, per n = −1, il termine 12 (n + 1)u(n + 1) = 0, allora è possibile scrivere 12 (n + 1)u(n + 1) = 12 (n + 1)u(n). In definitiva, si ottiene: x(n) = £41 (−1)n u(n) + 14 u(n) + 21 (n + 1)u(n) = ¤ = u(n) 43 + n2 + 14 (−1)n . 2

(z) 1+z+z Esempio 6.23 Calcolare l’antitrasformata della funzione X(z) = N D(z) = (z−0.2)(z−0.3)2 , |z| > 0.3. Soluzione: la regione di convergenza di X(z) suggerisce che x(n) è una sequenza causale. Per valutare l’antitrasformata z mediante l’equazione 6.32, si moltiplica per z −3 sia il numeratore, sia il denominatore di X(z):

X(z) = z −1

1 + z −1 + z −2 (1 −

0.2z −1 ) (1

0.3z −1 )2



0

= z −1 X (z).

0

Si tratta di antitrasformare la funzione X (z) per poi applicare la proprietà del ritardo della trasformata z. Osservando che il polinomio al numeratore ha grado inferiore al polinomio al denominatore, si ottiene: 2

0

X (z) =

X R1 Bi + , −1 1 − 0.2z (1 − 0.3z −1 )i i=1

dove

¡ ¢ 0 R1 = 1 − 0.2zh−1 X (z)|z=0.2 = 124, i 1 −0.3

d ds

0

(1 − 0.3s)2 X (s−1 ) = −216, |s=10/3 h i 0 B2 = (1 − 0.3s)2 X (s−1 ) = 139 3 . B1 =

·

|s=10/3

Noti i tre residui, si ottiene: 0

X (z) =

124 216 139 1 − + . −1 −1 1 − 0.2z (1 − 0.3z ) 3 (1 − 0.3z −1 )2

192

Capitolo 6

L’antitrasformata di X(z) si ottiene impiegando le trasformate elementari riportate nella tabella 6.2, alla funzione: 0

X(z) = z −1 X (z) =

216z −1 139 z −1 124z −1 − + 1 − 0.2z −1 (1 − 0.3z −1 ) 3 (1 − 0.3z −1 )2

In definitiva, la sequenza x(n) vale: µ ¶n−1 µ ¶n−1 µ ¶ 2 3 139 3 n x(n) = 124 u(n−1)−216 u(n−1)+ nu(n). 10 10 0.9 10

6.8 La trasformata z unilatera La trasformata z definita nell’equazione 6.1 si applica a qualunque tipo di sequenza. Per l’analisi delle sequenze e dei sistemi LTI causali è conveniente definire una trasformata z, detta unilatera, che consideri solo gli istanti di tempo positivi: +

X (z) =

+∞ X

x(n)z −n = Z + [x(n)]

(6.34)

n=0

Per distinguerla dalla trasformata z in 6.1, la trasformata z unilatera viene indicata con l’apice +, ad indicare il fatto che tale operatore considera solo gli istanti di tempo discreti ≥ 0. Si noti che, per sequenze x(n) causali, la trasformata z unilatera produce lo stesso risultato della trasformata z in 6.1, cioé X + (z) = X(z). Data una sequenza x(n), non necessariamente causale, la trasformata z unilatera di x(n) corrisponde alla trasformata z in 6.1 della sequenza x(n)u(n): X + (z) = Z + [x(n)] = Z [x(n)u(n)]

(6.35)

La biunivocità della corrispondenza x(n) ↔ X + (z) è assicurata solo per sequenze x(n) causali: più sequenze bilatere possono avere la medesima trasformata z unilatera in quanto i campioni che la sequenza assume sul supporto temporale negativo, non vengono presi in considerazione nella definizione in 6.34. La relazione 6.35 suggerisce che la regione di convergenza della trasformata z unilatera corrisponde alla regione di convergenza della trasformata z in 6.1 di una sequenza causale x(n)u(n), ottenuta da x(n) considerandone solo i campioni sul supporto temporale n ≥ 0. Per tale ragione, quando si impiega la trasformata z unilatera non è necessario specificare la regione di convergenza essendo per definizione sempre l’esterno di un cerchio di raggio opportuno nel piano z.

6.8.1 Le proprietà della trasformata z unilatera Le proprietà della trasformata z unilatera sono analoghe a quelle riassunte nella tabella 6.1 per la trasformata z in 6.1. L’unica differenza riguarda la proprietà del

La Trasformata z

193

ritardo e dell’anticipo: x(n) ↔ X(z) x(n − N ) ↔ z −N X(z) in quanto la traslazione temporale della sequenza x(n) di N istanti di tempo discreti altera la sequenza di campioni che rientra nella finestra temporale [0, +∞) della trasformata z unilatera. Le proprietà del ritardo/anticipo nel caso della trasformata z unilatera sono formalizzate come segue: x(n) ↔ X + (z) i h P n , x(−n)z ritardo: x(n − N ) ↔ z −N X + (z) + N n=1 h i PN −1 +N + anticipo: x(n + N ) ↔ z X (z) − n=0 x(n)z −n ,

∀N > 0 ∀N > 0

Si noti che, per quanto concerne la proprietà del ritardo di N istanti di tempo discreto, la trasformata z unilatera prende in considerazione i campioni della sequenza x(n) negli istanti di tempo n = −N, . . . , −1, i quali, dopo l’applicazione del ritardo, rientrano sul supporto [0, +∞) su cui è calcolata la trasformata z unilatera. Un analogo discorso vale per la proprietà di anticipo, con l’ovvia osservazione che i campioni traslati di N istanti di tempo discreto verso gli istanti di tempo negativi danno un contributo nullo alla trasformata z unilatera, e, coP −1 −n va sottratta alla trasformata z unilatera me tale, la sommatoria N n=0 x(n)z X + (z).

6.8.2 Il teorema del valore iniziale Il teorema del valore iniziale si applica generalmente a sequenze x(n) causali, e asserisce che il valore della sequenza x(n), per n = 0, vale: £ ¤ x(0) = lim X(z) = lim x(0) + x(1)z −1 + x(2)z −2 + . . . z→∞

z→∞

(6.36)

La dimostrazione del teorema segue facilmente dall’operazione di limite per z → ∞ della trasformata X(z) scritta come sommatoria di termini del tipo z −n . Poiché per sequenze causali è X + (z) = X(z), il teorema si applica così come formulato anche alla trasformata z unilatera. Il teorema del valore iniziale può essere applicato a sequenze bilatere considerandone la trasformata z unilatera: x(0) = lim X + (z) z→∞

(6.37)

194

Capitolo 6

6.8.3 Il teorema del valore finale Il teorema del valore finale si applica a sequenze x(n) con trasformate z unilatere X + (z) tali che la regione di convergenza della funzione (z − 1)X + (z) contenga il cerchio di raggio unitario |z| = 1. Il valore finale è il limite a cui tendono i campioni della sequenza x(n) quando il tempo n cresce in modo indefinito. Il teorema afferma che, sotto le condizioni menzionate in precedenza, allora lim x(n) = lim (z − 1)X + (z)

n→∞

z→1

(6.38)

Nel caso di sequenze causali è X + (z) = X(z). In tal caso, il teorema del valore finale si applica così come formulato in 6.38 considerando la trasformata X(z) al posto della trasformata z unilatera X + (z), nell’ipotesi che la funzione (z − 1)X + (z) possieda poli all’interno del cerchio di raggio unitario |z| = 1. I risultati del teorema del valore finale permettono di dedurre le seguenti osservazioni sul comportamento dei campioni della sequenza x(n): • limn→∞ x(n) → 0 se tutti i poli di X + (z) giacciono all’interno del cerchio di raggio unitario |z| = 1. In questa situazione, x(n) è costituito da esponenziali del tipo αn u(n), con |α| < 1. • limn→∞ x(n) → xo , con xo costante, se X + (z) possiede un polo singolo in z = 1. In questo caso, la sequenza x(n) include la funzione u(n). • limn→∞ x(n) risulta indeterminato se X + (z) possiede poli complessi coniugati sul cerchio di raggio unitario. In questo caso, la sequenza x(n) è costituita da sinusoidi. Il teorema fornisce risultati sbagliati se impiegato in questo caso. z(z−2) , |z| > 1, con due Esempio 6.24 Sia data la trasformata X(z) = (z−1)(z−1/2) zeri rispettivamente in z = 0 e z = 2, e due poli in z = 1 e z = 1/2. Il teorema del valore iniziale assicura che:

1 − 2z −1 =1 z→∞ (1 − z −1 )(1 − 0.5z −1 )

x(0) = lim X(z) = lim z→∞

(6.39)

Il teorema del valore finale, invece, assicura che: z(z − 2) = −2 (6.40) z→1 z→1 z − 0.5 Riassumendo, la sequenza in esame vale 1 nell’origine e tende a -2 quando n → ∞. Applicando la decomposizione in fratti semplici, è facile verificare che la sequenza x(n) vale: µ ¶n 1 x(n) = −2 · u(n) + 3 u(n) 2 x(∞) = lim (z − 1)X(z) = lim

Infatti, dividendo per z 2 sia il numeratore, sia il denominatore di X(z), si ottiene: X(z) =

R2 1 − 2z −1 R1 ¡ ¢ 1 −1 = 1 − z −1 + −1 (1 − z ) 1 − 2 z 1 − 12 z −1

La Trasformata z

dove: e

195

¡ ¢ R1 = X(z) · 1 − z −1 |z=1 = −2 µ ¶ 1 −1 R2 = X(z) · 1 − z 2 |

= +3

z= 1 2

Dall’espressione analitica di x(n) si verificano immediatamente i risultati dei teoremi dei valori iniziale e finale.

6.9 Analisi dei sistemi LTI mediante la trasformata z La teoria della trasformata z sviluppata in precedenza, può essere impiegata per studiare il comportamento di un sistema LTI con risposta all’impulso h(n). La risposta y(n) di un sistema LTI ad una sequenza in ingresso x(n) può essere calcolata attraverso la convoluzione lineare discreta: y(n) =

+∞ X

h(k)x(n − k)

k=−∞

Impiegando la proprietà della convoluzione lineare discreta tra due sequenze x(n) e h(n), è possibile effettuare l’analisi dei sistemi LTI nel dominio della pulsazione complessa z: Y (z) = Z [x(n) ? h(n)] = X(z)H(z). La regione di convergenza della funzione Y (z) coincide, nel caso più generale possibile, ovvero nel caso in cui non avvengano cancellazioni tra poli e zeri in X(z) e H(z), con l’intersezione tra le regioni di convergenza delle due funzioni X(z) e H(z). Nei casi pratici di interesse, si è visto che la funzione di trasferimento H(z) è una funzione razionale N (z)/D(z) del tipo mostrato nelle equazioni 6.19-6.21, la quale corrisponde ad un’equazione numerica, detta equazione alle differenze. Le equazioni alle differenze descrivono il comportamento di un sistema a tempo discreto in termini di una opportuna combinazione lineare di campioni della sequenza di ingresso x(n) e della stessa sequenza di uscita y(n). Nella pratica tutti i sistemi LTI a tempo discreto possono essere classificati come ricorsivi o non ricorsivi, a seconda che nella relativa equazione alle differenze compaiano o meno i campioni del segnale di uscita y(n) negli istanti di tempo precedenti a quello corrente, convenzionalmente indicato con n. Un sistema LTI causale e non ricorsivo può essere descritto tramite la seguente funzione di trasferimento: HN (z) = bo + b1 z −1 + . . . + bN z −N ,

(6.41)

la quale corrisponde all’equazione alle differenze: y(n) = bo x(n) + b1 x(n − 1) + . . . + bN x(n − N ).

(6.42)

196

Capitolo 6

b0

x(n)

+

y(n) +

z

b1

-1

+ +

z

b2

-1

+ +

z

b N-1

-1

Figura 6.10 Schema circuitale di un filtro FIR conforme alla funzione di trasferimento mostrata nell’equazione 6.41.

Un sistema LTI causale e puramente ricorsivo può essere descritto tramite la seguente funzione di trasferimento: HR (z) =

1 + a1

z −1

1 . + . . . + aM z −M

(6.43)

la quale corrisponde all’equazione alle differenze: y(n) = −a1 y(n − 1) − a2 y(n − 2) − . . . − aN y(n − M ) + x(n).

(6.44)

Gli schemi circuitali che realizzano le due classi di filtri FIR (acronimo di Finite Impulse Response) e IIR (acronimo di Infinite Impulse Response) con le funzioni di trasferimento mostrate nelle equazioni 6.41 e 6.43, sono mostrati, rispettivamente, nelle figure 6.10 e 6.11. I blocchi elementari impiegati nella realizzazione pratica, sono i seguenti. • Blocco ritardatore di un passo di tempo discreto (indicato con z −1 ). Data una sequenza x(n), il blocco restituisce la sequenza x(n − 1) ritardata di un passo di tempo discreto. • Blocco moltiplicatore per bi (indicato con un triangolo etichettato con il fattore moltiplicativo relativo). Data una sequenza x(n), il blocco restituisce la

La Trasformata z

x(n)

197

y(n) +

-a1 -1

+

z

+

-a2 z-1

+ +

-aM z-1 Figura 6.11 Schema circuitale di un filtro puramente ricorsivo conforme alla funzione di trasferimento mostrata nell’equazione 6.43.

sequenza bi · x(n) dove i campioni della sequenza x(n) risultano moltiplicati per il fattore bi . L • Blocco sommatore (indicato con un cerchietto ). Date due sequenze x(n) e z(n), il blocco restituisce la somma x(n) + z(n). Nel caso più generale possibile, il comportamento di un sistema LTI causale può essere descritto dalla seguente equazione alle differenze: y(n) = −a1 y(n − 1) − a2 y(n − 2) − . . . − aM y(n − M )+ +bo x(n) + b1 x(n − 1) + . . . + bN x(n − N ).

(6.45)

L’equazione 6.45 mette in relazione l’uscita del sistema LTI considerato all’istante di tempo discreto n ai valori che l’ingresso x(n) assume nell’arco temporale n − N, n − N + 1, . . . , n − 1, n (cioé sino a N istanti di tempo precedenti), e ai valori assunti dal segnale di uscita y(n) sino a M istanti di tempo precedenti a quello corrente n. La funzione di trasferimento dell’equazione 6.45 si ricava effettuando la trasformata z di ambo i membri, e isolando il rapporto H(z) = Y (z)/X(z). Procedendo in questo modo, si ottiene: H(z) =

bo + b1 z −1 + . . . + bN z −N = HN (z)HR (z). 1 + a1 z −1 − a2 z −2 + . . . + aM z −M

(6.46)

198

Capitolo 6

b0 +

x(n) -1

y(n) +

b1

+

+

z

-a1

+

-a2 +

+ +

bN

z

+

b2 z-1

-1

+

z-1

+

-aM

z-1

z-1

H N(z)

H R (z)

Figura 6.12 Schema circuitale di un filtro misto ricorsivo conforme alla funzione di trasferimento mostrata nell’equazione 6.46.

La funzione H(z) = HN (z)HR (z) risulta pari al prodotto delle funzioni di trasferimento di un sistema puramente ricorsivo ed uno non ricorsivo. Il prodotto tra le due funzioni di trasferimento HN (z) e HR (z) suggerisce, inoltre, che l’ordine con cui sono collocati i due filtri FIR e IIR nella cascata non influenza la funzione di trasferimento complessiva H(z). L’equazione 6.46 viene realizzata mediante il circuito mostrato in figura 6.12. Il progetto di un sistema LTI con una risposta in frequenza predefinita equivale, in sintesi, a determinare la funzione di trasferimento H(z), ovvero la sequenza di coefficienti a1 , . . . , aM , b0 , . . . , bN in 6.46. Nei prossimi capitoli vedremo delle tecniche specifiche per progettare dei sistemi LTI di tipo IIR e FIR. La funzione di trasferimento nell’equazione 6.46 può essere espressa in termini delle radici dei polinomi al numeratore e al denominatore prima mettendo in evidenza il termine b0 al numeratore, e poi fattorizzando i due polinomi N (z) e D(z) secondo quanto già discusso nel paragrafo 6.6: H(z) =

N (z) (z − c1 ) (z − c2 ) · (z − cN ) = Kz M −N D(z) (z − d1 ) (z − d2 ) · (z − dM )

(6.47)

dove c1 , c2 , . . . , cN sono gli zeri finiti e non nulli di H(z), mentre d1 , d2 , . . . , dM sono i poli finiti e non nulli di H(z), e K è un fattore costante opportuno. La relazione 6.47 permette di mettere in evidenza i poli e gli zeri di un sistema LTI. Si noti che, per un sistema causale, il numero di zeri non può essere superiore al numero dei poli, ed il grado del polinomio al numeratore non può essere superiore al grado del polinomio al denominatore.

La Trasformata z

199

Esempio 6.25 Determinare i poli e gli zeri del sistema LTI caratterizzato dalla funzione di trasferimento: H(z) =

1 − 2z −1 + z −2 , 1 − 34 z −1 − z −2 + z −3

Soluzione: per determinare poli e zeri di H(z) è necessario riscrivere la funzione di trasferimento H(z) secondo quanto indicato nell’equazione 6.47. Innanzitutto si noti che N = 2 e M = 3, e, dunque, z M −N = z. Al fine di riscrivere la funzione H(z) in termini di potenze positive di z, bisogna moltiplicare il numeratore e il denominatore di H(z) per z 3 : H(z) = z

z 2 − 2z + 1 (z − 1)2 = z z 3 − 34 z 2 − z + 1 z 3 − 34 z 2 − z + 1

La funzione di trasferimento H(z) possiede dunque tre zeri, uno dei quali è nell’origine c1 = 0 mentre l’altro è del secondo ordine e cade in c2/3 = 1, e tre poli d1 = −1.0666, d2 = 0.9083 + j0.3355 e d3 = 0.9083 − j0.3355. Esempio 6.26 Si consideri un sistema LTI caratterizzato dalla funzione di trasferimento 1 − z −1 3 H(z) = 3 −1 , |z| > 4 1 + 4z Calcolare la sequenza y(n) in uscita dal sistema in risposta alla sequenza d’ingresso µ ¶n 1 x(n) = u(n) + u(−n − 1). 3 Soluzione: la valutazione della sequenza y(n) può essere condotta impiegando la relazione Y (z) = X(z)H(z). La trasformata z della sequenza in ingresso si ricava impiegando le trasformate elementari X(z) =

1 1 − 13 z −1



− 23 z −1 1 1 ¡ ¢ = , < |z| < 1 1 −1 −1 −1 1−z 1 − 3z (1 − z ) 3

Si noti che il polo z = 13 impone la parte causale della regione di convergenza di X(z), mentre il polo z = 1 impone la parte anticausale della regione di convergenza di X(z). La regione di convergenza complessiva è l’intersezione delle due regioni, cioè l’anello circolare 13 < |z| < 1. La trasformata z di y(n) vale − 32 z −1 − 23 z −1 1 − z −1 ¡ ¢ ¢¡ ¢ Y (z) = X(z)H(z) = ¡ = · 1 − 13 z −1 (1 − z −1 ) 1 + 34 z −1 1 − 31 z −1 1 + 34 z −1

200

Capitolo 6

x(n-k)

.... ....

1 ....

k

n

-1

h(k)

....

1 .... 0

k

2

Figura 6.13 Andamento delle sequenze x(n) e h(n) considerate nell’esempio 6.26.

In virtù della cancellazione del polo in z = 1, responsabile della parte anticausale della regione di convergenza di X(z), la regione di convergenza di Y (z) è l’esterno della circonferenza di raggio 3/4, e, come tale, la sequenza y(n) risulta causale. Impiegando l’espansione in fratti semplici, Y (z) può essere riscritta come segue Y (z) = 1+R3 1z −1 + 1−R1 2z −1 4¡ 3¢ 8 R1 = Y (z) 1 + 34 z −1 | = 13 z=−3/4 ¡ ¢ 8 R2 = Y (z) 1 − 13 z −1 | = − 13 z=1/3

Impiegando le antitrasformate z di sequenze causali, si ottiene µ ¶n µ ¶ 8 3 8 1 n y(n) = − u(n) − u(n) 13 4 13 3 La causalità della sequenza y(n) può essere verificata mediante la convoluzione discreta: y(n) =

+∞ X k=−∞

h(k)x(n − k) =

+∞ X k=−∞

h(k)x(n − k)

La Trasformata z

201

dove l’andamento delle sequenze h(k) e x(n − k), al variare di k, è mostrato in figura 6.13. E’ facile verificare che, per ogni n < 0, si ha h(k)x(n − k) = −h(k), e, come tale, si ottiene: y(n)|n 1. In modo del tutto analogo, è possibile dimostrare che, anche per i sistemi LTI bilateri, la condizione necessaria e sufficiente di stabilità richiede che la circonferenza di raggio unitario, |z| = 1, sia contenuta nell’anello circolare che identifica la regione di convergenza della funzione di trasferimento del sistema. In sintesi, la circonferenza di raggio unitario è sempre contenuta nella regione di convergenza di un sistema stabile causale, anticausale, o bilatero. Si noti che

204

Capitolo 6

ROC di sistemi LTI stabili e causali

Im

Im

ROC di sistemi LTI stabili e anticausali

d1 dm

|z|=1 d1 dM

|z|=1

Re

d2 d 3

Re d3 d2

Im

ROC di sistemi LTI bilateri e stabili

d4 dM

d2

Re

d1 d3

|z|=1

dm d5

Figura 6.14 Rappresentazione della regione di convergenza tipica di sistemi LTI stabili.

la condizione di stabilità implica che per un sistema stabile è sempre possibile identificare la risposta in frequenza H(ejω ), essendo la circonferenza |z| = 1 contenuta nella regione di convergenza della funzione di trasferimento H(z). La rappresentazione schematica delle regioni di convergenza di sistemi stabili è riportata in figura 6.14. Esempio 6.31 Si consideri un sistema LTI causale, caratterizzato dalla relazione I/O seguente: 1 y(n) = − y(n − 1) + x(n − 1) α Determinare i valori della costante α che rendono stabile il sistema. Soluzione: la stabilità del sistema può essere analizzata mediante la trasformata z dell’equazione alle differenze che descrive il comportamento del sistema: H(z) =

z −1 1 + α1 z −1

Data la causalità del sistema, la stabilità è garantita se il polo in z = 1/α cade all’interno del cerchio di raggio unitario. Ciò comporta che l’intervallo dei valori di α per cui il sistema è stabile, risulta: ¯ ¯ ¯ 1¯ ¯− ¯ < 1 ⇒ |α| > 1. ¯ α¯

La Trasformata z

205

6.9.3 Realizzabilità fisica di un sistema LTI Un sistema LTI fisicamente realizzabile deve possedere una risposta all’impulso h(n) causale e con coefficienti reali. Le due condizioni possono essere verificate tramite la funzione di trasferimento H(z) nel dominio della pulsazione complessa z. La causalità della sequenza h(n) richiede che la regione di convergenza di H(z) corrisponda all’esterno di un cerchio di raggio opportuno che racchiuda tutti i poli presenti in H(z). La seconda condizione, invece, richiede che per ogni polo e zero complesso, sia presente anche il rispettivo complesso coniugato. Poli e zeri sull’asse reale possono essere singoli, in quanto, avendo una parte immaginaria nulla, rappresentano essi stessi i rispettivi complessi coniugati. E’ facile verificare che una funzione di trasferimento H(z) con poli e zeri complessi coniugati possiede coefficienti reali. A titolo di esempio, si consideri la seguente funzione di trasferimento: ¡ ¢¡ ¢ 1 − ck z −1 1 − c∗k z −1 ¡ ¢ H(z) = (1 − dk z −1 ) 1 − d∗k z −1 con due zeri e due poli complessi coniugati, rispettivamente, in z = ck , z = c∗k , e z = dk , z = d∗k . Risolvendo i due prodotti, si ottiene: H(z) =

1 − 2< (ck ) z −1 + |ck |2 z −2 1 − 2< (dk ) z −1 + |dk |2 z −2

La funzione di trasferimento H(z) ha coefficienti reali (< (ck ) è la parte reale della radice ck , mentre |ck |2 = (< (ck ))2 + (= (ck ))2 ). Esempio 6.32 Si consideri un sistema LTI reale e causale con funzione di traπ sferimento H(z) avente tre zeri in z = eji 4 , i = 1, 2, 3. Il sistema è realizzato per mezzo di uno schema FIR con L coefficienti bj , j = 1, . . . , 7. Inoltre, è noto che H(z)|z=1 = 0.1 e L ≤ 7. Calcolare i coefficienti bj , j = 1, . . . , 7, del sistema LTI considerato. Soluzione: il sistema LTI in esame possiede solo zeri ed un polo multiplo nell’origine (perché è di tipo FIR), e, dunque, è sempre stabile. Per la realizzabilità fisica del sistema, i coefficienti della risposta all’impulso h(n) sono reali. L’ultima osservazione comporta che gli zeri complessi siano presenti insieme ai rispettivi complessi coniugati; in altri termini, la funzione di trasferimento π H(z) possiede i tre zeri z = eji 4 , i = 1, 2, 3 e i rispettivi complessi coniugati π z = e−ji 4 , i = 1, 2, 3. Inoltre, data la causalità del sistema, la funzione di trasferimento H(z) può essere scritta in termini di potenze negative di z:

³ ´³ ´³ ´³ ´³ ´³ π π π π π 3π H(z) = K 1 − ej 4 z −1 1 − e−j 4 z −1 1 − ej 2 z −1 1 − e−j 2 z −1 1 − e3j 4 z −1 1 − e−j 4 z

206

Capitolo 6

Im{z}

| H(e jω ) | z=ej ω t

z=-1

z=1

1

Re{z}

−ω t

−π

filtro passa-basso ideale

π ω

ωt

Im{z}

Im{z} z=ej ω t

z=-1

z=1

Re{z}

z=-1

z=1

Re{z}

Figura 6.15 Corrispondenza tra punti nel piano z e frequenze numeriche nel caso di un filtro ideale di tipo passa-basso. π





π

π



Ricordando che e±j 4 = 22 ± j 22 , e±j 2 = ±j, e±3j 4 = − 22 ± j ottiene: ³ ´¡ ´ √ √ ¢³ H(z) = K 1 − 2z −1 + z −2 1 + z −2 1 + 2z −1 + z −2

√ 2 2 ,

si

1 La condizione H(z)|z=1 = 0.1 richiede che K = 40 . Effettuando i prodotti in H(z), si ottiene la seguente funzione a coefficienti reali:

H(z) =

¢ 1 ¡ 1 + z −2 + z −4 + z −6 . 40

Confrontando l’equazione precedente con quella di un generico filtro FIR su P −i L + 1 coefficienti, vale a dire H(z) = L i=0 bi z , si ottiene: 1 b0 = b2 = b4 = b6 = 40 b1 = b3 = b5 = b7 = 0.

6.9.4 Progetto di filtri a tempo discreto mediante la tecnica del posizionamento dei poli e degli zeri Il progetto dei sistemi LTI a tempo discreto può essere condotto posizionando poli e zeri della funzione di trasferimento H(z) in modo appropriato nel piano complesso z. In questo paragrafo si desidera mostrare gli effetti indotti ¡ ¢ dalle posizioni dei poli e degli zeri di H(z) sulla risposta in frequenza H ejω di un generico sistema LTI, considerando una semplice funzione di trasferimento con un solo polo reale e al più quattro zeri complessi coniugati. Si consideri la funzione di trasferimento del tipo considerato nell’equazione 6.46. In linea di principio, è possibile progettare un qualunque filtro a tempo discreto ponendo gli zeri e i poli di H(z) nel piano z. Intuitivamente, i poli della funzione di trasferimento H(z) devono essere posizionati in prossimità del cerchio

La Trasformata z

207

1 α=0.9 α=0.8 α=0.5 α=0.3

0.9

0.8

0.7

|H(ejω)|

0.6

0.5

0.4

0.3

0.2

0.1

0 −0.5

−0.4

−0.3

−0.2

−0.1

0 f

0.1

0.2

0.3

0.4

0.5

Figura 6.16 Risposte in frequenza del filtro passa-basso con un solo polo nella pulsazione complessa z = α ed un solo zero enll’origine del piano z.

di raggio unitario nelle pulsazioni complesse z corrispondenti alle componenti armoniche nel segnale d’ingresso x(n) che devono essere enfatizzate. Gli zeri della funzione di trasferimento H(z), invece, devono essere posizionati vicino ai punti z del cerchio di raggio unitario, corrispondenti alle componenti armoniche del segnale d’ingresso x(n) che devono essere attenuate dal filtro. Inoltre, tutti i poli del filtro devono cadere nel cerchio di raggio unitario per la stabilità, mentre gli zeri possono essere posizionati in qualunque punto del piano z. Infine, tutti i poli e gli zeri complessi devono essere presenti a coppie complesse coniugate, di modo che la risposta all’impulso del filtro sia reale. Si noti che non è facile costruire delle risposte in frequenza H(z) di filtri desiderati, soprattutto quando i gradi N e M sono elevati. Per questa ragione esistono delle particolari tecniche di progetto di filtri a tempo discreto, che, partendo dalla risposta in frequenza desiderata, collocano zeri e poli in posizioni appropriate del piano z. Tuttavia, è istruttivo capire gli effetti della locazione dei poli e degli zeri sulla funzione di trasferimento del filtro progettato. Vediamo alcuni semplici esempi. Si consideri la figura 6.15, dove è mostrata la corrispondenza tra punti del piano z e frequenze numeriche, e si ipotizzi di progettare un filtro H(ejω ) di tipo passa-basso. A tal proposito, i poli del filtro dovrebbero essere posizionati nelle pulsazioni complesse z corrispondenti alle frequenze della banda passante di H(ejω ), vale a dire nelle frequenze ω ∈ [0, ωt ]. Gli zeri, invece, dovrebbero essere posizionati in prossimità, oppure sul cerchio |z| = 1, nelle pulsazioni complesse z corrispondenti alle frequenze ω ∈ [ωt , π].

208

Capitolo 6

1 α=0.3, H1(ejω)

α=0.3, H2(ejω)

0.9

0.8

0.7

|H(ejω)|

0.6

0.5

0.4

0.3

0.2

0.1

0 −0.5

−0.4

−0.3

−0.2

−0.1

0 f

0.1

0.2

0.3

0.4

0.5

Figura 6.17 Risposte in frequenza H1 (ejω ) e H2 (ejω ) nel caso α = 0.3.

Un esempio di filtro passa-basso con un solo polo ed un solo zero è riportato di seguito: 1−α H1 (z) = . 1 − αz −1 L’andamento della risposta in frequenza, H1 (ejω ), è riportato in figura 6.16 per vari valori del parametro α, il quale identifica la posizione del polo z = α. Si noti che lo zero nell’origine z = 0 non ha alcun effetto sulla risposta in frequenza H1 (ejω ), essendo distante dalla circonferenza di raggio unitario: la risposta in frequenza è unicamente determinata dalla posizione del polo. L’aggiunta di uno zero in z = −1 ha l’effetto di enfatizzare l’attenuazione del filtro H1 (z) alle alte frequenze. Essendo sulla circonferenza di raggio unitario, questo zero compare anche sulla risposta in frequenza del filtro in corrispondenza delle frequenze numeriche ±1/2. La trasformata z di un semplice filtro passabasso con zeri in z = −1 e z = 0, ed un polo in z = α, è riportata di seguito: H2 (z) =

1 − α 1 + z −1 . 2 1 − αz −1

Il confronto tra le risposte in frequenza H1 (ejω ) e H2 (ejω ) dei due filtri è mostrato in figura 6.17 nel caso α = 0.3. E’ possibile enfatizzare l’attenuazione del filtro passa-basso alle alte frequenze, inserendo zeri ulteriori sul cerchio di raggio unitario in coppie complesse coniugate (per la realizzabilità fisica del filtro). Si consideri l’esempio di un filtro passa-basso con quattro zeri nelle posizioni π π z = −1, z = 0, z = ej 2 , z = e−j 2 , ed un polo in z = α. La trasformata z di un

La Trasformata z

209

1 α=0.3, H2(ejω)

α=0.3, H3(ejω)

0.9

0.8

0.7

|H(ejω)|

0.6

0.5

0.4

0.3

0.2

0.1

0 −0.5

−0.4

−0.3

−0.2

−0.1

0 f

0.1

0.2

0.3

0.4

0.5

Figura 6.18 Risposte in frequenza H2 (ejω ) e H3 (ejω ) nel caso α = 0.3.

filtro siffatto è: ¡ ¢ ¢¡ ¢ 1 − α 1 + z −1 ¡ −1 ∗ −1 H3 (z) = 1 − β · z 1 − β · z , 4 1 − αz −1 π

dove β = ej 2 . La risposta in frequenza del filtro con risposta in frequenza H3 (ejω ) è confrontata con quella del filtro H2 (ejω ) in figura 6.18.

6.9.5 Sistemi inversi Molto spesso nelle applicazioni pratiche è richiesta l’implementazione di un sistema LTI che inverta il comportamento di un altro sistema LTI caratterizzato dalla funzione di trasferimento H(z). Si consideri, a titolo di esempio, la trasmissione di dati attraverso il canale telefonico. E’ noto che il mezzo di trasmissione in questione, il doppino telefonico per intenderci, distorce il segnale trasmesso x(n), recapitando al destinatario un segnale y(n) 6= x(n). La compensazione della distorsione subita dal segnale x(n) avviene ¡ ¢in due fasi. Nella prima fase si cerca di stimare la risposta in frequenza H ejω del mezzo di trasmissione. In una fase successiva, si filtra il segnale ricevuto y(n) con un sistema ¡ LTI, ¢ detto equalizzatore, avente come risposta in frequenza la funzione H −1 ejω . Se la stima del canale è condotta in modo ideale, al ricevitore si riesce a compensare perfettamente la distorsione introdotta dal mezzo di trasmissione. Il sistema inverso corrispondente ad un sistema LTI caratterizzato dalla fun-

210

Capitolo 6

zione di trasferimento H(z), é definito come segue: HI (z) = H −1 (z) =

1 H(z)

(6.51)

La cascata di un sistema e del suo inverso ha una funzione di trasferimento pari ad una costante unitaria nel piano z: HC (z) = H(z)HI (z) = H(z)H −1 (z) = 1 =⇒ hC (n) = δ(n).

(6.52)

Il sistema caratterizzato dalla funzione di trasferimento HC (z) é detto sistema identità, e la sua risposta all’impulso risulta pari ad una delta numerica centrata nell’origine del tempo discreto. Il sistema inverso viene adoperato per annullare gli effetti del sistema originale caratterizzato dalla funzione di trasferimento H(z). Una classe di sistemi che ammettono il sistema inverso è quella dei sistemi caratterizzati da una trasformata z razionale: ¢ Qpn ¡ 1 − ci z −1 b0 i=1 Qd H(z) = (6.53) . a0 pi=1 (1 − di z −1 ) Per questa classe di sistemi, la funzione di trasferimento del sistema inverso vale: ¢ Qpd ¡ 1 − di z −1 a0 i=1 Qn HI (z) = . (6.54) b0 pi=1 (1 − ci z −1 ) La funzione di trasferimento del sistema inverso possiede zeri corrispondenti ai poli del sistema diretto, e poli corrispondenti agli zeri del sistema diretto. Nella pratica, i sistemi LTI devono essere causali. Questa condizione richiede che la regione di convergenza del sistema caratterizzato dalla funzione di trasferimento HI (z), sia del tipo |z| > maxi=1,...,pn |ci |. Se il sistema HI (z) deve anche essere stabile, allora la regione di convergenza deve contenere il cerchio di raggio unitario. In altri termini, tutti gli zeri ci , ∀i = 1, . . . , pn , del sistema diretto H(z), devono essere contenuti nel cerchio di raggio unitario. In definitiva, un sistema LTI causale e stabile, con poli e zeri contenuti nel cerchio di raggio unitario, ammette un sistema inverso causale e stabile. Esempio 6.33 Determinare la funzione di trasferimento HI (z) del sistema causale inverso di un sistema LTI causale descritto dall’equazione alle differenze y(n) −

4 y(n − 1) = x(n) + 2x(n − 1). 10

Soluzione: l’esercizio può essere risolto calcolando prima la funzione di trasferimento H(z), e poi valutando la funzione di trasferimento HI (z) = 1/H(z). In formule: 4 1 + 2z −1 H(z) = 4 −1 , |z| > 10 1 − 10 z

La Trasformata z

211

da cui si ottiene: HI (z) =

4 −1 1 − 10 z 1 = , |z| > 2. H(z) 1 + 2z −1

Si noti che entrambi i sistemi LTI sono causali, ma il sistema inverso HI (z) non è stabile, in quanto il polo z = −2 giace all’esterno della circonferenza |z| = 1 nel piano complesso.

6.9.6 Sistemi LTI a fase minima Un sistema LTI che possiede una realizzazione non ricorsiva della tipologia mostrata nell’equazione 6.41, si dice a fase minima se tutti gli zeri della funzione di trasferimento HN (z) sono collocati all’interno o al più sul cerchio di raggio unitario.¡ Questa definizione risiede nel fatto che la fase della risposta in frequenza ¢ HN ejω assume valori nulli nelle frequenze f agli estremi dell’intervallo di frequenze numeriche [0, +1/2]. Scomponendo la funzione in 6.41 in termini delle radici elementari, si ottiene: HN (z) = bo ·

N Y ¡ ¢ 1 − ci z −1 i=1

La risposta in frequenza corrisponde alla funzione HN (z)|z=ejω : N Y ¡ ¢ ¡ ¢ 1 − ci e−jω HN ejω = bo · i=1

¡ ¢ L’andamento della fase della funzione HN ejω è: N X ¡ ¡ jω ¢¢ ¡ ¢ ϕ HN e = ϕ (bo ) + ϕ 1 − ci e−jω i=1

Nell’ipotesi che tutti gli N zeri ci della funzione di trasferimento siano contenuti all’interno o sul cerchio di raggio unitario, la differenza di fase agli estremi dell’intervallo base delle frequenze numeriche positive è: ¡ ¢¢ ¡ ¡ ¡ ¢¢ ϕ HN ejω |ω=π − ϕ HN ejω |ω=0 = 0 e, per tale ragione, tali sistemi LTI sono detti a fase minima Un analogo discorso vale per i sistemi LTI il cui comportamento è descritto da un’equazione alle differenze ricorsiva del tipo mostrato nell’equazione 6.45. Tali sistemi LTI sono detti a fase minima se tutti i poli e tutti gli zeri della funzione di trasferimento (equazione 6.46) sono contenuti all’interno del cerchio di raggio unitario nel piano z.

212

Capitolo 6

6.9.7 Sistemi LTI passa-tutto Nelle applicazioni pratiche in cui è richiesta l’implementazione di un sistema LTI che elabori in modo opportuno la fase di un segnale, senza cambiarne il modulo delle componenti armoniche, sovente sono impiegati i sistemi LTI passa-tutto. La funzione di trasferimento H(z) di un sistema LTI passa-tutto di ordine N é definita come: N (z) bN + bN −1 z −1 + bN −2 z −2 + . . . + b1 z −(N −1) + z −N = D(z) 1 + b1 z −1 + b2 z −2 + . . . + bN −1 z −(N −1) + bN z −N (6.55) Si noti che i coefficienti del polinomio al numeratore sono in ordine inverso rispetto a quelli presenti nel polinomio al denominatore. Inoltre, se nel polinomio al numeratore si pone in evidenza z −N , si ottiene: ¡ ¢ N (z) = z −N 1 + b1 z +1 + b2 z +2 + . . . + bN −1 z N −1 + bN z N = z −N D(z −1 ) H(z) =

e, come tale, è possibile scrivere: H(z) =

z −N D(z −1 ) D(z)

Le proprietà evidenziate in precedenza, comportano che la funzione di trasferimento di un filtro passa-tutto soddisfi la seguente relazione: H(z)H(z −1 ) = 1

(6.56)

Si noti che se pk è un generico polo della funzione di trasferimento H(z) in 6.55, allora zk = p−1 k è uno zero di H(z). Inoltre, la realizzabilità fisica impone che se pk è un polo complesso, allora anche p∗k è un polo di H(z), e, di conseguenza, 1/p∗k è uno zero di H(z). Un sistema LTI passa-tutto causale e stabile presenta poli nel cerchio di raggio unitario nel piano z, e zeri all’esterno del cerchio |z| = 1. Questa osservazione comporta che un sistema passa-tutto stabile non è a fase minima. L’applicazione più importante dei sistemi LTI di tipo passa-tutto riguarda l’equalizzazione della fase di filtri IIR. A titolo di esempio, si immagini di conoscere la funzione di trasferimento HIIR (z) di un filtro IIR progettato con una tecnica appropriata. I¡ filtri ¢ IIR non possiedono fase lineare (la fase della risposta in frequenza HIIR ejω è una funzione non lineare della frequenza numerica f ) e, come tale, distorcono il segnale x(n) al loro ingresso. Per equalizzare la distorsione di fase sulla sequenza x(n) è possibile porre in cascata al filtro IIR un sistema LTI di¡ tipo¢ passa-tutto, progettato in modo tale che la sua risposta in frequenza H ejω sia tale per cui il sistema complessivo, cascata¡ dei¢due sistemi LTI filtro IIR+filtro passa-tutto, abbia risposta in frequenza Hc ejω con le seguenti caratteristiche:  ¡ jω ¢ ¡ jω ¢ ¡ jω ¢  H ¯ c ¡e jω ¢¯= H¯IIR e ¡ jω· ¢H e ¡ jω ¢¯ ¯ ¡ ¢¯ ¯Hc e ¯ = ¯HIIR e · H¢¢e ¯ ¡= ¯¡HIIR¢¢ ejω ¯ (6.57) ¡ ¡ ¢¢ ¡ ¡  ϕ Hc ejω = ϕ HIIR ejω + ϕ H ejω ≈ c · f

La Trasformata z

213

dove c è una costante reale generica, eventualmente nulla. In altri termini, scegliendo opportunamente i coefficienti b1 , . . . , bN della ¡ funzione ¡ ¢¢ di trasferimento H(z) in 6.55, è possibile ottenere una curva di fase ϕ Hc ejω della risposta in frequenza della cascata dei due sistemi LTI, che approssimi una funzione lineare in un opportuno intervallo di frequenze, lasciando inalterata la caratteristica del modulo.

6.9.8 Funzione di trasferimento di Sistemi LTI interconnessi Nelle applicazioni pratiche, i circuiti numerici sono generalmente composti da interconnessioni predefinite di sistemi LTI. Le connessioni più impiegate in pratica, cascata, parallelo e reazione, sono già state analizzate dal punto di vista della risposta in frequenza. Nei paragrafi che seguono, l’analisi dei sistemi LTI interconnessi è condotta tramite la trasformata z. Configurazione in cascata La funzione di trasferimento di una cascata di N sistemi LTI (figura 6.19), ognuno caratterizzato da una funzione di trasferimento Hi (z), ∀i = 1, . . . , N , risulta pari al prodotto delle funzioni di trasferimento dei singoli sistemi: He (z) = H1 (z) · . . . · HN (z). (6.58) L’equazione 6.58 comporta che la risposta all’impulso del sistema equivalente alla cascata, risulta: he (n) = Z −1 {Hc (z)} = h1 (n) ? . . . ? hN (n).

(6.59)

Il segnale di uscita dalla cascata di N sistemi LTI si ricava mediante la seguente relazione: Y (z) = X(z) · He (z), (6.60) da cui segue la relazione nel dominio del tempo-discreto: y(n) = x(n) ? he (n) = x(n) ? [h1 (n) ? . . . ? hN (n)] .

(6.61)

Configurazione in parallelo La funzione di trasferimento del sistema LTI equivalente al parallelo di N sistemi LTI, ognuno caratterizzato da una funzione di trasferimento Hi (z), ∀i = 1, . . . , N , risulta pari alla somma delle funzioni di trasferimento dei singoli sistemi: He (z) = H1 (z) + H2 (z) + . . . + HN (z).

(6.62)

L’equazione 6.62 comporta che la risposta all’impulso del sistema equivalente alla cascata, risulta: he (n) = Z −1 {Hc (z)} = h1 (n) + . . . + hN (n).

(6.63)

214

Capitolo 6

x(n)

h 1 (n)

y1(n)

h 2 (n)

y2 (n)

h N(n)

yN (n)=y(n)

Interconnessione serie

h e (n)=h1 (n) * h 2 (n) * ... * hN (n) H e (z)=H1 (z)H 2 (z)

x(n)

h 1 (n)

h 2 (n)

h N (n)

x(n)

+

h 1 (n)

+

y1(n)

HN (z)

Interconnessione parallelo

y(n) +

h e (n)=h 1 (n)+h 2 (n)+...+h N (n)

+

y2(n)

...

+

He(z)=H1(z)+H2(z)+...+H N(z)

yN (n)

y(n)

Interconnessione reazione

h 2 (n)

Figura 6.19 Schemi a blocchi delle interconnessioni più impiegate di sistemi LTI.

Il segnale di uscita dal parallelo di N sistemi LTI si ricava mediante la seguente relazione: Y (z) = X(z) · He (z), (6.64) da cui segue la relazione nel dominio del tempo-discreto: y(n) = x(n) ? he (n) = x(n) ? [h1 (n) + . . . + hN (n)] .

(6.65)

Configurazione in reazione Si consideri la configurazione in reazione mostrata in figura 6.19. In tale configurazione, la sequenza in uscita, y(n), dopo essere stata filtrata attraverso il sistema con funzione di trasferimento H2 (z), viene sottratta alla sequenza in ingresso x(n). La funzione di trasferimento del sistema LTI equivalente al sistema in reazione può essere ricavata calcolando la trasformata z del sistema complessivo presente tra il segnale x(n) e il segnale y(n). In formule, si può scrivere: Y (z) = X(z)H1 (z) − Y (z)H1 (z)H2 (z),

La Trasformata z

da cui si ricava: H(z) =

215

H1 (z) Y (z) = . X(z) 1 + H1 (z)H2 (z)

La risposta all’impulso del sistema in reazione può essere ottenuta antitrasformando la funzione H(z): · h(n) = Z

−1

[H(z)] = Z

−1

¸ H1 (z) . 1 + H1 (z)H2 (z)

6.10 Alcune applicazioni della trasformata z all’elaborazione dei segnali audio Nei paragrafi che seguono, verranno esaminate alcune semplici applicazioni della trasformata z al progetto dei sistemi LTI per applicazioni audio.

6.10.1 Gli equalizzatori audio Gli equalizzatori audio sono sistemi LTI impiegati per adattare la composizione in frequenza del suono musicale ai gusti dell’ascoltatore. La forma più comune di equalizzazione consiste nel controllo dei toni (per esempio per il controllo dei suoni alle basse e alle alte frequenze). Il controllo dei toni avviene amplificando o attenuando la risposta di un filtro equalizzatore su una banda di frequenze di interesse, lasciando inalterata la risposta alle altre frequenze, per le quali, quindi, il filtro presenta guadagno unitario. I filtri per il controllo del livello del segnale su varie bande di frequenza sono costituiti dalla cascata di vari filtri, ognuno dei quali opera su un intervallo di frequenze prestabilito. Gli equalizzatori grafici offrono un livello superiore per il controllo del suono e sono costituiti da un banco di filtri passa-banda, tipicamente del secondo ordine (cioè con due poli), i quali coprono un numero prefissato di bande di frequenza. Ogni filtro del banco possiede una frequenza centrale ed una ampiezza di banda prestabiliti. L’utente può solo controllare il guadagno di ogni filtro del banco. Ogni filtro isola un intervallo di frequenze selezionato e fornisce un guadagno quasi nullo altrove. Di conseguenza, le singole sezioni sono disposte in parallelo secondo lo schema mostrato nella figura 6.19. Il contenuto del segnale audio alle basse e alle alte frequenze viene comunemente modificato tramite filtri equalizzatori del primo ordine con guadagno e frequenza di taglio variabili. La funzione di trasferimento di un filtro passa basso del primo ordine con guadagno in continua unitario e la cui risposta tende a zero a f = 0.5 (vale a dire in z = −1, cioè alle alte frequenze numeriche) vale: µ ¶ 1−α z+1 HLP (z) = · . (6.66) 2 z−α

216

Capitolo 6

x(n)

Filtro Equalizzatore Passa-Basso + G-1 HSL(z)

y(n)

x(n)

Filtro Equalizzatore Passa-Alto +

+

G-1

y(n) +

HSH(z)

Figura 6.20 Schema circuitale di filtri equalizzatori passa-basso e passa-alto del primo ordine.

La frequenza numerica di taglio a 3-dB del filtro dell’equazione 6.66 vale1 : µ ¶ 1 2α f3dB = (6.67) 2π 1 + α2 La funzione di trasferimento di un filtro passa alto del primo ordine con la stessa frequenza di taglio f3dB vale semplicemente HHP (z) = 1 − HLP (z), e quindi: µ ¶ 1+α z−1 HHP (z) = · . (6.68) 2 z−α Il suo guadagno vale zero in f = 0, ed è unitario in f = 0.5. Un filtro equalizzatore passa-basso consiste di un filtro passa basso del primo ordine con guadagno variabile G, in parallelo con un filtro passa alto. Dato che vale la relazione HLP (z) + HHP (z) = 1, la funzione di trasferimento di un filtro equalizzatore passa-basso può essere scritta come: HSL (z) = GHLP (z) + HHP (z) = 1 + (G − 1)HLP (z).

(6.69)

Un filtro equalizzatore passa-alto consiste di un filtro passa alto del primo ordine con guadagno variabile G, in parallelo con un filtro passa basso. Dato che vale la relazione HLP (z) + HHP (z) = 1, la funzione di trasferimento di un filtro equalizzatore passa-alto può essere scritta come: HSH (z) = GHHP (z) + HLP (z) = 1 + (G − 1)HHP (z).

(6.70)

Gli schemi circuitali dei filtri passa-basso e passa-alto sono rappresentati in figura 6.20. La figura 6.21 mostra l’andamento della risposta in frequenza del filtro equalizzatore passa-basso, HSL (ejω ), al variare del parametro G. Si noti l’effetto del parametro di amplificazione G: alti valori di G comportano un’amplificazione del segnale alle basse frequenze rispetto alle alte. La variazione di G, ottenuta agendo su un indicatore a livello, può anche attenuare il contenuto del segnale di ingresso alle basse frequenze. Considerando la risposta in frequenza HLP (ejω ), la frequenza a 3-dB corrisponde alla freh¯ ¯ i ¯ ¯ j2πf ¯2 j2πf ¯2 1 ¯ ¯ ) . quenza numerica per cui valga la relazione HLP (e ) = 2 max∀f ∈[0, 1 ] HLP (e 2 1

La Trasformata z

217

10 G=0.25 G=0.5 G=2 G=4

20*log10(|HSL(f)|)−[dB]

5

0

−5

−10

−15

0

0.01

0.02

0.03

0.04

0.05 f

0.06

0.07

0.08

0.09

0.1

Figura 6.21 Modulo della funzione di trasferimento HSL (ejω ) (filtro equalizzatore passa-basso) per vari valori del parametro G e per α = 0.85.

In linea di principio è possibile ottenere equalizzatori audio più complessi in grado di equalizzare e enfatizzare le componenti armoniche del segnale in diverse bande di frequenza. Lo schema di principio di un equalizzatore grafico è riportato in figura 6.22. Il segnale musicale x(n) viene filtrato attraverso diversi filtri di tipo passa-banda, disposti nella configurazione parallela, centrati su diversi intervalli di frequenza opportunamente scelti in modo da coprire lo spettro delle frequenze udibili (20Hz-20kHz). I segnali in uscita dai filtri vengono amplificati in modo indipendente di un guadagno imposto dal selettore presente nel ramo relativo. Il segnale y(n) equalizzato viene ottenuto ricombinando linearmente i diversi segnali filtrati e amplificati.

6.10.2 Effetti audio digitali Le tecniche di elaborazione numerica dei segnali consentono di compensare l’acustica di un ambiente di ascolto, ma anche di sovrappore al segnale musicale degli effetti speciali, quali echi, ritardi, riverbero, al fine di ricreare l’ambiente acustico tipico di grandi sale o teatri da concerto. L’ascoltatore percepisce un suono musicale che dipende sia dalle caratteristiche della sala d’ascolto, sia dalla propria posizione nella sala. Un brano musicale registrato in un teatro viene percepito diversamente se l’ascolto avviene in una stanza di dimensioni contenute. I filtri numerici sono in grado di compensare le differenze di ascolto prima filtrando le caratteristiche della stanza in cui si ascolta la musica, e poi introducendo l’effetto riverbero tipico delle grandi sale da concerto. Nell’ipotesi che l’ascolta-

218

Capitolo 6

controllo di amplificazione in ogni sottobanda Filtro passa-banda

f [kHz] 0.1

-10dB...+10dB

Filtro passa-banda

f [kHz] 0.5 + +

x(n) Sorgente sonora

y(n) + +

Filtro passa-banda

f [kHz] 8

Filtro passa-banda

f [kHz] 16

Figura 6.22 Architettura di un equalizzatore grafico. Sorgente sonora

suono diretto

Suono percepito dall'ascoltatore

+ +

suono diretto

prime riflessioni (echi) riflessioni successive (riverbero)

+

Filtri di eco Filtri di riverbero

ritardatore

t

Figura 6.23 Circuito equivalente alla riproduzione sonora in una camera.

tore si trovi in una posizione fissa, è possibile modellare la stanza di ascolto come un sistema LTI, la cui risposta all’impulso viene ricavata impiegando un opportuno segnale di test che viene percepito da un microfono posto nella posizione dell’ascoltatore. La compensazione della sala di ascolto può essere ottenuta filtrando il segnale audio con un filtro con risposta in frequenza inversa di quella della camera di ascolto. L’effetto teatro può essere ottenuto tramite un sistema LTI che emuli il comportamento tipico di una sala di teatro. In qualunque ambiente di ascolto l’orecchio umano percepisce il suono diretto a cui si aggiungono le onde riflesse dalle pareti dell’ambiente di riproduzione, ed il suono prodotto dalle riflessioni multiple successive, detto riverbero. Le diverse repliche del segnale che raggiungono l’orecchio umano forniscono diverse indicazioni circa le caratteristiche dell’ambiente di ascolto: • il suono diretto ci fornisce un’indicazione sommaria della posizione della sorgente acustica rispetto all’ascoltatore;

La Trasformata z

219

• i primi echi percepiti forniscono un’indicazione delle dimensioni fisiche della sala d’ascolto: echi che l’orecchio percepisce subito dopo il suono diretto indicano che la sala d’ascolto possiede dimensioni contenute; • il riverbero caratterizza la vivacità, l’animazione, lo spessore del suono. Le ampiezze degli echi e del riverbero decrescono esponenzialmente col tempo. Un modello concettuale di ambiente di ascolto presenta, dunque, filtri di eco e di riverbero, ed é rappresentato in figura 6.23. Un singolo eco viene modellato attraverso un sistema non ricorsivo con funzione di trasferimento H(z) della forma: y(n) = x(n)+αx(n−D) =⇒ H(z) = 1+αz −D =⇒ h(n) = δ(n)−αδ(n−D). (6.71) Nell’equazione 6.71 il segnale y(n) risulta composto dal suono diretto x(n) a cui si aggiunge, additivamente, una versione del segnale x(n) ritardato di D istanti di tempo discreti ed attenuato di un fattore α. Un eco viene percepito se il ritardo D corrisponde ad almeno 50ms. In modo del tutto analogo, sommando N repliche del segnale base x(n), ognuna ritardata di una quantità temporale Di e attenuata di un fattore αi , è possibile ottenere un effetto di tipo coro: N N N X X X y(n) = x(n)+ αi x(n−Di ) =⇒ H(z) = 1+ αi z −Di =⇒ h(n) = δ(n)+ αi δ(n−Di ). i=1

i=1

i=1

(6.72) Un filtro di riverbero che descrive riflessioni multiple del segnale sonoro x(n), possiede una struttura ricorsiva del tipo: y(n) = x(n) + αy(n − D) =⇒ H(z) =

1 , 0 < α < 1. 1 − αz −D

(6.73)

La struttura ricorsiva del riverbero garantisce la sovrapposizione successiva di echi con intensità via via decrescente. Questi due modelli costituiscono i blocchi di base per la riproduzione e l’emulazione di qualsiasi ambiente di ascolto. Si noti, infine, che il riverbero é la riflessione successiva di tutto il segnale y(n) = x(n) + αx(n − D) ricevuto dall’ascoltatore, vale a dire il segnale diretto x(n) più le sue prime riflessioni. E’ questa la ragione per cui la formula del segnale totale y(n), ricevuto dall’ascoltatore, risulta pari al segnale diretto x(n) a cui si aggiungono le riflessioni di y(n) ritardate di D secondi ed attenuate di un fattore α.

6.10.3 La tastiera a toni del telefono numerico Il telefono a toni utilizza degli oscillatori numerici per generare dei toni udibili premendo i tasti della tastiera. La pressione di un tasto produce un segnale costituito da due toni, uno a bassa frequenza e l’altro ad alta frequenza, secondo lo schema mostrato in figura 6.24.

220

Capitolo 6

Gruppo delle basse frequenze (Hz)

Gruppo delle alte frequenze (Hz)

1

2

3

697

4

5

6

770

7

8

9

852

*

0

#

941

1209

1336

1477

Figura 6.24 Schema di principio di una tastiera numerica presente in un telefono a toni.

Ad ogni tasto corrisponde una coppia univoca di frequenze. A titolo di esempio, la pressione del tasto 4 produce un segnale contenente i due toni alle frequenze 770 e 1209 Hz. I toni impiegati sono scelti in modo da non interferire con il segnale vocale, il cui contenuto armonico si colloca prevalentemente intorno a frequenze di qualche kHz. La coppia di toni viene generata con gli oscillatori numerici mostrati in figura 6.25. La frequenza di campionamento tipicamente vale fc = 8 kHz. La frequenza numerica fH corrispondente ad un tipico tono di alta frequenza vale ωH = 2πfH /fc . Il codice di ogni tasto sceglie gli appropriati coefficienti dei filtri in figura 6.25, identificando univocamente un tasto con il segnale costituito dalla coppia di toni. Al ricevitore, i tasti premuti sono identificati andando ad isolare i gruppi delle frequenze alte e basse, rispettivamente, con un filtro passa-alto con frequenza di taglio intorno a 1200 Hz, e con filtro passa-basso con frequenza di taglio superiore intorno a 1000 Hz, disposti in parallelo. Dopo questo filtraggio, la coppia di toni viene fatta passare in un banco parallelo di filtri a banda stretta e ognuno centrato su un solo tono. Le otto uscite di questo banco parallelo di otto filtri, tanti quanti sono i toni da individuare, sono inviate ad un circuito costituito da un rilevatore di livello e una logica di decisione, i quali stabiliscono la presenza o l’assenza di un tono. In questo modo, la centralina numerica che raccoglie il numero telefonico selezionato, abilita la chiamata del numero telefonico desiderato.

La Trasformata z

+

δ(n) +

2cos(2πf L ) +

+ +

221

y(n) +

-1

z

+

-cos(2πf L) -1

-1

z

Generatore delle basse frequenze

+ +

+

2cos(2πf H) +

-1

z

+

-cos(2πf H) -1

-1

z

Generatore delle alte frequenze

Figura 6.25 Schema circuitale degli oscillatori che in una tastiera numerica producono i due gruppi di toni per individuare il tasto specifico premuto.

222

7 Progetto di Filtri FIR

I filtri FIR (acronimo di Finite Impulse Response) causali hanno due peculiarità che li fanno preferire ai filtri IIR ricorsivi. 1. Sono sempre stabili perché la risposta in frequenza H(z) = possiede solo zeri ed un polo multiplo nell’origine z = 0; 2. Possono essere progettati in modo da possedere fase lineare.

PM −1 n=0

an z −n

Il progetto dei filtri FIR é solitamente condotto scegliendo una risposta all’impulso di tipo simmetrico pari o dispari rispetto all’origine n = 0 del tempo discreto, oppure rispetto ad un qualsiasi altro istante di tempo no finito, perciò detto istante di simmetria. I valori dei coefficienti ai , ∀i = 0, . . . , M − 1, e la lunghezza M del filtro sono scelti in modo tale che il filtro progettato sia in grado di soddisfare le specifiche di progetto (oscillazione in banda passante, attenuazione in banda attenuata, e via discorrendo) per una specifica tipologia di filtro del tipo discusso nel paragrafo 5.2.7 del capitolo 5. Si noti, altresì, che le tolleranze definite sulla risposta in frequenza di un filtro FIR sono analoghe a quelle imposte alla risposta in frequenza di un filtro IIR (si veda la figura ?? del capitolo ??). A parità di specifiche di progetto, generalmente i filtri FIR richiedono un numero di coefficienti moltiplicativi decisamente superiore a quello richiesto da un equivalente filtro IIR, soprattutto quando sono richieste bande di transizione molto strette. Questo suggerisce che i filtri FIR devono essere impiegati solo nelle applicazioni in cui la linearità di fase sia un requisito obbligatorio di progetto. La prima parte del capitolo verte sulle caratteristiche principali delle sequenze simmetriche, pari e dispari, alla luce del loro comportamento sia nel dominio della frequenza, sia nel dominio del tempo discreto. Nella seconda parte sono trattate le principali tecniche di progetto di filtri FIR: il metodo delle finestre, la tecnica del campionamento della risposta in frequenza, la tecnica di progetto di filtri FIR con oscillazioni equilivello sia in banda passante, sia in banda attenuata, e le tecniche assistite dal calcolatore. L’ultima parte del capitolo affronta il progetto di filtri FIR a mezza banda, a banda M -esima, di filtri di Hilbert, e di filtri derivatori.

224

Capitolo 7

Im

Im 1/r*

1

r

r

Re

1/r Re

r* 1/r

Simmetria Reciproca Coniugata: posizione degli zeri nel piano complesso Im

Im r

1

Re

-1

1

Re

r*

Figura 7.1 Posizionamento nel piano complesso degli zeri di sequenze a fase lineare.

7.1 Le sequenze simmetriche La linearità di fase è sovente un requisito di progetto di sistemi LTI non distorcenti, quali quelli impiegati nei sistemi di trasmissione numerica. Nell’ipotesi di impiegare sistemi LTI realizzabili fisicamente, una condizione necessaria e sufficiente affinché la risposta in frequenza abbia fase lineare (come si vedrà nel paragrafo 7.1.1), è che la risposta all’impulso h(n) presenti un centro di simmetria. Le sequenze che possiedono simmetria pari o dispari intorno all’origine, oppure rispetto ad un altro istante di tempo finito, sono impiegate come risposte all’impulso dei cosiddetti filtri FIR a fase lineare. D’altro canto, i filtri IIR causali sono caratterizzati da una risposta all’impulso di durata infinita e, come tale, non possono essere a fase lineare in quanto non è possibile determinare un istante di tempo discreto finito che funga da centro di simmetria per la risposta all’impulso. Ricordiamo che la DTFT di una sequenza h(n) reale e pari é della forma H(f ) = A(f ), dove A(f ) é una funzione reale e pari della frequenza numerica f . La DTFT di una sequenza reale a simmetria dispari, invece, é del tipo H(f ) = j · A(f ), cioé puramente immaginaria. E’ ovvio che le sequenze simmetriche rispetto all’origine del tempo discreto conducono a filtri FIR non causali (la sequenza possiede coefficienti non nulli anche per istanti di tempo discreto negativi). Tuttavia, tali filtri possono essere resi causali, ritardandone in modo opportuno la risposta all’impulso h(n). Infatti, un ritardo temporale di α istanti di tempo verso destra, necessario per rendere causale la sequenza h(n), conduce

Progetto di Filtri FIR

225

ad una nuova sequenza h(n − α) il cui spettro presenta solo una rotazione di fase lineare del tipo φ(f ) = e−j2παf rispetto allo spettro della sequenza h(n). Le posizioni degli zeri e dei poli delle sequenze simmetriche non possono essere arbitrarie. Ricordando l’espressione generale della trasformata z di una sequenza h(n): +∞ X H(z) = h(n)z −n n=−∞

si nota che i poli devono giacere solo nell’origine, affinchè la sequenza h(n), causale, abbia lunghezza finita. Inoltre, la simmetria intorno all’origine impone che la sequenza h(n) soddisfi la relazione h(n) = ±h(−n)1 . Impiegando la trasformata Z [h(−n)] = H (1/z), si ottiene la trasformata z della relazione h(n) = ±h(−n): H(z) = ±H(1/z). L’ultima equazione suggerisce che se z = r è una radice di H(z), cioé H(r) = 0, allora anche 1/r è una radice di H(z), essendo H(r) = H(1/r) = 0. Inoltre, ricordando la condizione di realizzabilità fisica di un sistema LTI (la quale richiede che se z = r è una radice complessa, allora anche z = r∗ sia una radice della funzione di trasferimento del sistema) ne consegue che gli zeri di H(z) devono essere presenti a coppie reciproche (e coppie coniugate se complesse). Un discorso analogo vale per le sequenze simmetriche attorno ad un istante di tempo diverso da zero. Gli zeri reali in z = 1 oppure in z = −1 non devono necessariamente essere presenti a coppie in quanto costituiscono i propri zeri reciproci, ma tutti gli altri zeri reali devono apparire insieme ai propri reciproci. Uno schema concettuale che riassume le possibili posizioni degli zeri di sequenze a fase lineare, é riportato in figura 7.1. Gli zeri complessi che cadono sul cerchio di raggio unitario, devono apparire insieme ai loro complessi coniugati i quali formano anche i rispettivi zeri reciproci, mentre gli zeri complessi presenti in un qualsiasi altro punto del piano complesso devono apparire insieme ad altri tre zeri in modo da formare una quadrupletta di zeri coniugati e reciproci, così come mostrato nel disegno di sinistra nella figura 7.1. Infine, una sequenza a fase lineare con simmetria dispari deve possedere un numero dispari di zeri in z = 1. Esempio 7.1 determinare i poli e gli zeri della funzione di trasferimento H(z) = z 2 + 2.5z − 2.5z −1 − z −2 . La sequenza h(n) corrispondente possiede fase lineare? Soluzione: data la simmetria dispari della sequenza con trasformata H(z), deve essere H(z) = −H(1/z). E’ chiaro, quindi, che h(n) risulta simmetrica 1

La condizione h(n) = h(−n) è quella di simmetria pari, mentre la condizione h(n) = −h(−n) è quella di simmetria dispari.

226

Capitolo 7

dispari, e in particolare vale: h(n) = δ(n + 2) + 2.5δ(n + 1) − 2.5δ(n − 1) − δ(n − 2). Fattorizzando H(z) in termini delle proprie radici elementari, si ottiene: H(z) =

(z − 1)(z + 1)(z + 0.5)(z + 2) . z2

Dalla espressione analitica di H(z) si nota la presenza di una coppia di zeri reciproci in z = −0.5 e z = −2. Gli zeri in z = −1 e z = 1 corrispondono ai propri rispettivi reciproci e, dunque, non appaiono in coppie.

7.1.1 Classificazione delle sequenze a fase lineare Le sequenze simmetriche sono classificate in base alla lunghezza M e alle caratteristiche di simmetria. Il centro di simmetria può corrispondere ad un punto centrale (se M è dispari) effettivamente assunto dalla sequenza, o ad un punto intermedio nel quale la sequenza non possiede valori (se M è pari), come mostrato nelle figure 7.2 e 7.4. Si noti che la simmetria di una sequenza può essere definita rispetto all’origine n = 0 del tempo discreto oppure rispetto ad un istante di tempo n0 finito e diverso da 0. In base a queste considerazioni, e nell’ipotesi che la sequenza h(n) abbia supporto [0, . . . , M − 1], possiamo elencare quattro tipologie di sequenze largamente adoperate nel progetto di filtri FIR a fase lineare. Sequenze di tipo 1: si tratta delle sequenze di lunghezza dispari e simmetria pari. Un esempio di sequenza di lunghezza dispari a simmetria pari è illustrato in figura 7.2. Il centro di simmetria si trova nell’istante α = (M − 1)/2. Applicando la definizione di DTFT e adoperando la relazione di Eulero, si ricava la risposta in frequenza: " # α−1 X h(k) cos((α − k)2πf ) e−j2παf = A(f )e−j2παf H1 (f ) = h(α) + 2 k=0

(7.1) Appare ovvio che, per costruzione, A(f ) é simmetrica pari intorno a f = 0 e f = 0.52 e che |H1 (0)| e |H1 (0.5)| non possono essere nulli3 . A titolo di esempio si consideri la sequenza di M = 5 coefficienti mostrata in figura 7.3. Applicando la definizione di DTFT, si ottiene: H1 (f ) = h(0) + h(1)e−j2πf + h(2)e−j2πf 2 + h(3)e−j2πf 3 + h(4)e−j2πf 4 2 3

La frequenza f compare nella funzione coseno, la quale é una funzione pari di f . I coefficienti h(0), . . . , h(α) non possono essere tutti nulli!

Progetto di Filtri FIR

227

Sequenze di tipo 1 A(f) h(n)

n centro di simmetria

-1

-0.5

0.5

1

f

Simmetria pari intorno a f=0 e f=0.5

Sequenze di tipo 2 h(n)

A(f)

n centro di simmetria

-1

-0.5

0.5

1

f

Simmetria dispari intorno a f=0.5

Figura 7.2 Caratteristiche spettrali delle sequenze a simmetria pari.

Mettendo in evidenza l’esponenziale e−j2πf 2 si ricava: h i H1 (f ) = e−j2πf 2 h(0)e+j2πf 2 + h(1)e+j2πf + h(2) + h(3)e−j2πf + h(4)e−j2πf Ricordando che α = 2 e impiegando la proprietà di simmetria dei coefficienti (h(0) = h(4), h(1) = h(3)), e la relazione di Eulero, si ricava: " H1 (f ) = h(2) + 2 ·

1 X

# h(k) cos (2πf (2 − k)) e−j2πf α = A(f )e−j2πf α .

k=0

Si noti che, come atteso, la funzione A(f ), che denoteremo risposta d’ampiezza, è puramente reale. Sequenze di tipo 2: si tratta delle sequenze di lunghezza pari a simmetria pari. Un esempio di sequenza di lunghezza pari, a simmetria pari, è illustrato in figura 7.2. Il centro di simmetria si trova nell’istante α = (M − 1)/2. Usando la relazione

228

Capitolo 7

h(n) h(4) h(3)

h(1)

h(0)

h(2)

0

1

2

3

4

n

Figura 7.3 Esempio di sequenza a simmetria pari e con un numero di coefficienti dispari (M = 5).

di Eulero, si ricava la risposta in frequenza:   α−1/2 X H2 (f ) = 2 h(k) cos((α − k)2πf ) e−j2παf = A(f )e−j2παf

(7.2)

k=0

Appare ovvio che, per costruzione, A(f ) é simmetrica pari rispetto a f = 0, ed é simmetrica dispari intorno a f = 0.5, e, quindi, |H2 (0.5)| vale sempre zero. Dal momento che risulta H2 (0.5) = 0, questa tipologia di sequenze non è adatta al progetto di filtri di tipo passa-alto e attenua-banda. Sequenze di tipo 3: si tratta delle sequenze di lunghezza dispari a simmetria dispari. Un esempio di sequenza di lunghezza dispari, a simmetria dispari, è illustrato in figura 7.4. Il centro di simmetria si trova nell’istante α = (M − 1)/2. Usando la relazione di Eulero, si ricava la risposta in frequenza: " α−1 # X H3 (f ) = j · 2 h(k) sin((α − k)2πf ) e−j2παf = A(f )ej(0.5π−2παf ) (7.3) k=0

Appare ovvio che, per costruzione, A(f ) é simmetrica dispari intorno a f = 0 e f = 0.5, e, quindi, |H3 (0)| e |H3 (0.5)| valgono sempre zero. Dal momento che risulta H3 (0) = H3 (0.5) = 0, questa tipologia di sequenze è adatta al progetto di filtri di tipo passa-banda, di filtri differenziatori e di Hilbert. Sequenze di tipo 4: si tratta delle sequenze di lunghezza pari a simmetria dispari. Un esempio di sequenza di lunghezza pari, a simmetria dispari, è illustrato in

Progetto di Filtri FIR

229

Sequenze di tipo 3 h(n)

A(f)

0.5 n centro di simmetria

-1

-0.5

1

f

Simmetria dispari intorno a f=0 e f=0.5

Sequenze di tipo 4 h(n)

A(f)

-1 -0.5 n centro di simmetria

0.5

1

f

Simmetria dispari intorno a f=0

Figura 7.4 Caratteristiche spettrali delle sequenze a simmetria dispari.

figura 7.4. Il centro di simmetria si trova nell’istante α = (M − 1)/2. Usando la relazione di Eulero, si ricava la risposta in frequenza:   α−1/2 X H4 (f ) = j · 2 h(k) sin((α − k)2πf ) e−j2παf = A(f )ej(0.5π−2παf ) k=0

(7.4) Appare ovvio che, per costruzione, A(f ) é simmetrica dispari intorno a f = 0 (|H4 (0)| vale sempre zero), ed é simmetrica pari intorno a f = 0.5. Dal momento che risulta H4 (0) = 0, questa tipologia di sequenze non è adatta al progetto di filtri di tipo passa-basso. Può, invece, essere impiegata per il progetto di filtri differenziatori e di Hilbert. Le espressioni analitiche delle quattro tipologie di filtro (H1 (f ), . . . , H4 (f )) indicano chiaramente le ragioni per cui tali filtri siano detti a fase lineare: la funzione A(f ) é puramente reale, e, dunque, a fase costante a tratti (nulla oppure pari a ±π), mentre la funzione esponenziale e−j2παf introduce una fase che risulta lineare nella variabile f . Le risposte d’ampiezza A(f ) delle quattro tipologie di sequenze a fase lineare

230

Capitolo 7

possono essere sintetizzate nella formula seguente: A(f ) =

kX max

αk T (ω, k)

(7.5)

k=0

dove le funzioni αk , T (ω, k), e il parametro kmax sono riassunti nella tabella 7.1. Tabella 7.1 Sommario delle quattro tipologie di sequenze a fase lineare con risposta in frequenza A(f ) conforme all’equazione 7.5. Tipo I

Simmetria pari

M dispari

kmax = M2−1

II III IV

pari dispari dispari

pari dispari pari

= = =

M 2 − M −3 2 M 2 −

αk ¡ ¢ = h M2−1 − k 1 1

¢ ¡ = h ¡M 2 −1−k ¢ = h ¡ M2−1 − 1 −¢k =h M 2 −1−k

T (ω, k) = 2 cos (kω) , ∀k > 0 = 1, k = ¢ ¢ ¡¡0 = 2 cos k + 21 ω , ∀k = 2 sin ¡¡ ((k + 1)¢ω)¢, ∀k = 2 sin k + 21 ω , ∀k

In base alle considerazioni dedotte sui valori che le quattro tipologie di risposte in frequenza assumono agli estremi della banda delle frequenze numeriche, è possibile riassumere le applicazioni delle sequenze simmetriche come mostrato nella tabella 7.2. Le posizioni degli zeri delle sequenze simmetriche sono state Tabella 7.2 Sommario delle tipologie di risposte in frequenza realizzabili tramite sequenze simmetriche. Tipo di filtro realizzabile Passa-basso Passa-banda Passa-alto Attenua-banda Trasform. di Hilbert Differenziatore

Tipologia di sequenza simmetrica Tipo 1-2 Tipo 1-2-3 Tipo 1-4 Tipo 1-4 Tipo 3-4 Tipo 3-4

riassunte nella figura 7.1. Un discorso a parte vale per gli zeri eventuali presenti nelle pulsazioni complesse z = +1 e z = −1, il cui numero consente di individuare la tipologia di sequenza simmetrica. In base alla molteplicità degli zeri reali in z = ±1, possiamo distinguere i quattro casi seguenti. • Se una sequenza simmetrica di tipo 1 possiede zeri in z = ±1, allora questi devono apparire in numero pari. • Se una sequenza simmetrica di tipo 2 possiede zeri in z = −1, allora questi devono apparire in numero dispari. Gli eventuali zeri in z = 1 devono apparire con molteplicità pari.

Progetto di Filtri FIR

Im

Tipo 1

1

-1

Re

ordine pari, se presente

Im

Re

ordine dispari, se presente

ordine dispari, se presente

ordine pari, se presente

Re

ordine pari, se presente

Im

-1

Tipo 2

1

-1

Tipo 3

1

-1

Im

231

Tipo 4

1

Re

ordine dispari, se presente

Figura 7.5 Molteplicità degli zeri in z = ±1 per le quattro tipologie di sequenze simmetriche.

• Se una sequenza simmetrica di tipo 3 possiede zeri in z = ±1, allora questi devono apparire in numero dispari. • Se una sequenza simmetrica di tipo 4 possiede zeri in z = −1, allora questi devono apparire in numero pari. Gli eventuali zeri in z = 1 devono apparire con molteplicità dispari. La ragione alla base di queste considerazioni è semplice e la analizzeremo solo per sequenze di tipo 1. Si consideri la funzione di trasferimento di una sequenza simmetrica di M coefficienti e con supporto [0, M − 1]: H(z) =

M −1 X

hn z −n = ho + h1 z −1 + . . . + hM −1 z −(M −1)

n=0

e si ricordi che il numero degli zeri di H(z) coincide con M − 1, il grado del polinomio nella variabile z. Ricordando le caratteristiche riassuntive della tabella 7.1, si nota che per le sequenze di tipo 1 deve essere M dispari, ovvero M − 1 pari. Gli zeri complessi capitano sempre in numero pari in quanto sono presenti a coppie coniugate oppure costituiscono una quadrupletta di zeri reciproci e coniugati. Gli zeri reali in modulo diversi da uno, sono presenti a coppie reciproche. Affinché M − 1 sia pari, gli eventuali zeri in z = ±1 devono essere presenti con molteplicità due. Le molteplicità degli zeri in z = ±1 sono riassunte nella figura 7.5 per le quattro tipologie di sequenze simmetriche. Si noti che la presenza di un numero dispari di zeri in z = +1 identifica una sequenza a simmetria dispari.

232

Capitolo 7

|X( fa )|

Spettro del segnale analogico

-B x |X(f )|

-1/2

fa

Bx

frequenza analogica [Hz]

Spettro del segnale campionato (nel periodo fondamentale)

-B x

Bx

fc

fc

f +1/2

frequenza numerica (adimensionata)

periodo fondamentale delle frequenze numeriche

Figura 7.6 Corrispondenza esistente tra spettro analogico e spettro del segnale analogico campionato.

7.2 La relazione tra frequenze analogiche e numeriche Nei sistemi di elaborazione dei segnali sovente capita di dover elaborare dei segnali analogici mediante sistemi di elaborazione a tempo discreto. E’ utile, a tal fine, determinare la corrispondenza tra frequenze analogiche e numeriche in modo tale da poter definire le bande operative di un filtro a tempo discreto. Si consideri un segnale a tempo-discreto x(nTc ) ≡ x(n) del quale si desideri progettare un filtro a tempo discreto con funzione di trasferimento H(z), di tipo passa-basso, con delle specifiche predefinite. Il segnale a tempo discreto è ottenuto mediante campionamento con frequenza fc di un segnale x(t) analogico con spettro X(fa ) a supporto Bx limitato, vale a dire |X(fa )| = 0, ∀|fa | > Bx . La frequenza di campionamento fc è scelta in modo tale da soddisfare il teorema del campionamento. Partendo da queste considerazioni preliminari, ha senso chiedersi qual è lo spettro numerico del segnale x(n); in altre parole, su quale intervallo delle frequenze numeriche si colloca lo spettro X(ejω ) del segnale a tempo-discreto x(n)? La risposta a tale domanda ci permette di collocare, nel dominio della frequenza, lo spettro X(ejω ) rispetto alla risposta in frequenza H(ejω ) del filtro numerico progettato. Campionando un segnale analogico con banda Bx , si ottiene uno spettro periodico X(ehjω ), il cui periodo fondamentale si colloca nell’intervallo di frequenze i Bx Bx numeriche − fc , + fc , così come mostrato in figura 7.6. Si noti che, dovendo

Progetto di Filtri FIR

oscillazione massima in banda passante xx 1+ δ1 xx xx 1xx xx 1- δ1 xx

δ2

xx xx xx

0

dB 0xx xx

xx xx

oscillazione massima in banda attenuata

xx xx

233

Rp xxxx

ω ωc ω p xxx s xxx xx xxx xx xx

xxx

xx

π

xx xx

ω

xx xx

xx

xxx xxx xxx

xx xx

xx xx ω p ωc ωs

As xxxxxx xx xx

π

xx xx xx

ω

banda di transizione

Figura 7.7 Maschera di un filtro passa-basso.

essere fc ≥ 2Bx (Th. del campionamento), allora il supporto Bfcx è sempre inferiore, o al più uguale, al valore limite 1/2; in questo modo non sarà presente aliasing nello spettro del segnale campionato, sempre che valga la relazione Bx < ∞. A titolo di esempio, si consideri un segnale analogico con banda Bx = 10kHz. Si ipotizzi di campionare il segnale x(t) con una frequenza di campionamento fc = 40kHz. Lo£spettro analogico X(fa ) viene mappato nello spettro ¤ 1 1 X(f ), il cui supporto vale − 4 , + 4 , essendo Bfcx = 1/4. Le caratteristiche spettrali dei filtri numerici vanno, dunque, stabilite in relazione alla collocazione frequenziale dello spettro del segnale a tempo-discreto.

7.3 Progetto di filtri FIR mediante le tecniche a finestra L’idea alla base del progetto di filtri FIR tramite le tecniche a finestra consiste nel troncare la risposta all’impulso h(n) del filtro ideale desiderato, con una finestra di supporto limitato e pari al numero dei coefficienti del filtro. Un modo per ottenere la risposta all’impulso del filtro ideale consiste nell’effettuare la IDTFT della risposta in frequenza del filtro ideale desiderato. Dal momento che l’antitrasformata fornisce una risposta all’impulso non causale e solitamente di durata infinita, la si deve troncare (o finestrare, per l’appunto) al fine di ottenere un filtro FIR realizzabile fisicamente e con un numero finito M di coefficienti. I gradi di libertà garantiti dalle tecniche a finestra sono il tipo di finestra e il relativo numero di coefficienti. La tecnica consiste nello scegliere la finestra più opportuna, in grado, di volta in volta, di garantire le specifiche di progetto. Per semplicità, la trattazione che segue si riferisce al progetto di filtri FIR di tipo passa-basso. Lo svantaggio di questa tecnica di progetto è che non permette di definire due tolleranze diverse δ1 e δ2 in banda passante e in banda attenuata (si veda la maschera di progetto mostrata nella figura 7.7). Dunque, per questa tecnica risulta δ1 = δ2 = δ. Inoltre, con queste tecniche non è possibile controllare con precisione la banda di transizione della risposta in frequenza.

234

Capitolo 7

H id(e jω )

H id(e jω )

1

−π

1

ωt

−ω t

π ω

passa-basso

−π

ωt

−ω t

ω

passa-alto

H id(e jω )

H id(e jω )

1

−π −ω 2 −ω1

π

1

ω1 ω2

π ω

passa-banda

−π −ω 2 −ω1

ω1 ω2

π ω

attenua-banda

Figura 7.8 Classificazione dei filtri ideali in base alle caratteristiche spettrali.

Le tipologie di filtri ideali più impiegate nella pratica sono mostrate nella figura 7.8. Nella trattazione che segue si farà riferimento alla tipologia di filtro ideale passa-basso.

7.3.1 Considerazioni preliminari Il filtro passa-basso ideale possiede una risposta in frequenza il cui modulo é costante e unitario su tutta la banda passante del filtro, e zero su tutta la banda attenuata. Inoltre, la fase del filtro é lineare. Un filtro di questo tipo possiede la seguente funzione di trasferimento: ½ e−jαω , |ω| ≤ ωc jω Hid (e ) = (7.6) 0, ωc < |ω| ≤ π ω +ω

dove ωc = p 2 s é la frequenza di taglio del filtro, così come illustrato nello schema in figura 7.7, ed α corrisponde ad un ritardo opportuno applicato alla risposta all’impulso del filtro ideale. La risposta all’impulso di questo filtro si valuta antitrasformando la risposta in frequenza Hid (ejω ): ¡ ¢ Rπ 1 jω jωn dω = hid (n) = =−1 Hid (ejω ) = 2π −π Hid (e )e R (7.7) ω sin(ω (n−α)) c c 1 −jαω ejωn dω = = 2π −ωc e π(n−α) Le risposte all’impulso hid (n) corrispondenti alle altre tre tipologie di filtri ideali mostrati nella figura 7.8, sono riassunte nella tabella 7.3. Un filtro FIR fisicamente realizzabile può essere ottenuto dalla risposta all’impulso hid (n) nell’equazione 7.7, mediante un troncamento su un numero finito di coefficienti. In altre parole, il filtro FIR che viene realizzato in pratica possiede risposta all’impulso del tipo: ½ hid (n), 0 ≤ n ≤ M − 1 h(n) = (7.8) 0, altrimenti

Progetto di Filtri FIR

235

Tabella 7.3 Sommario delle risposte all’impulso dei filtri ideali con risposte in frequenza mostrate in figura 7.8. coefficienti-hid (n)

Tipo

c n) , ∀n 6= 0 hid (n) = sin(ω πn ωc hid (0) = π c n) hid (n) = − sin(ω , ∀n 6= 0 πn ωc hid (0) = 1 − π 1 hid (n) = πn [sin (ω2 n) − sin (ω1 n)] , ∀n 6= 0 ω2 −ω1 hid (0) = π 1 hid (n) = − πn [sin (ω2 n) − sin (ω1 n)] , ∀n 6= 0 1 hid (0) = 1 − ω2 −ω π

passa-basso passa-alto passa-banda attenua-banda

e α = M2−1 permette di rendere causale la risposta all’impulso h(n). L’equazione 7.8 é quella che esprime l’operazione di troncamento, ed é chiaramente ottenuta moltiplicando la risposta all’impulso hid (n) per una porta p(n) a tempo discreto, che vale 1 nell’intervallo di tempo n ∈ [0, M − 1]. E’ opportuno analizzare gli effetti del troncamento sulla risposta in frequenza del filtro progettato. La risposta in frequenza H(ejω ) del filtro passa-basso progettato tramite il troncamento, si ottiene effettuando la DTFT della sequenza h(n) = hid (n) · p(n): Z jω

H(e ) = Hid (e

j2πf

) ? P (e

j2πf

)=

+ 12

− 21

´ ¡ ¢ ³ Hid ej2πη P ej2π(f −η) dη. (7.9)

dove Hid (ej2πf ) e P (ej2πf ) sono, rispettivamente, le DTFT delle due sequenze hid (n) e p(n). L’equazione 7.9 mostra chiaramente che il troncamento della risposta all’impulso hid (n) del filtro ideale conduce ad una risposta in frequenza H(ejω ) diversa da quella desiderata Hid (ejω ). L’obiettivo è comprendere in che modo la risposta in frequenza H(ejω ) differisce da¢ Hid (ejω ). A tal scopo, la fi¡ jω gura 7.9 confronta la risposta in frequenza H e per due diversi valori di M , con la risposta in frequenza di un filtro passa-basso ideale con frequenza di taglio ωc = 2πfc = 2π0.2. Il troncamento con la finestra rettangolare crea delle oscillazioni più o meno marcate intorno alla discontinuità fc = 0.2 nella risposta in frequenza del filtro ideale. Questo comportamento è noto come fenomeno di Gibbs, e si manifesta ogniqualvolta si tronca la risposta all’impulso di un filtro ideale con una finestra di durata finita. La figura 7.9 mostra inoltre che l’intervallo di frequenze in cui H(ejω ) transita dal valore unitario a zero, si riduce all’aumentare del numero dei coefficienti M , mentre l’ampiezza della massima oscillazione della risposta in frequenza H(ejω ) non cambia al variare del numero dei coefficienti M della finestra rettangolare. Per spiegare questo comportamento, bisogna fare riferimento all’equazione

236

Capitolo 7

1.4 |Hid(ejω)| |H(ejω)|−M=32 |H(ejω)|−M=100

1.2

Risposta in frequenza

1

0.8

0.6

0.4

0.2

0

0

0.05

0.1

0.15

0.2

0.25 f

0.3

0.35

0.4

0.45

0.5

¯ ¯ Figura 7.9 Confronto tra la risposta in frequenza ¯Hid (ejω )¯ del filtro passa-basso ¯ ¯ ideale con frequenza di taglio fc = 0.2 e le risposte in frequenza ¯H(ejω )¯ di due filtri ottenuti impiegando una finestra rettangolare con M = 32 e M = 100 coefficienti.

7.9, e alla risposta in frequenza P (f ) della porta rettangolare: ½ 1, 0 ≤ n ≤ M − 1 p(n) = 0, altrove

(7.10)

La DTFT della porta p(n) vale: P −1 −j2πf n PM −1 −j2πf n P (f ) = M = n=0 (e ) = n=0 e sin(M πf ) 1−e−j2πf M −j2πf (M −1)/2 = 1−e−j2πf = e sin(πf )

(7.11)

Trascurando il termine di fase lineare e−j2πf (M −1)/2 , l’andamento della rispoπf ) sta in frequenza sin(M sin(πf ) nell’equazione 7.11 é mostrato in figura 7.10 per alcuni valori di M . La figura 7.10 mostra che il £lobo principale ¤ intorno all’origine ha va1 1 , +M . Al crescere di M , aumenta lore massimo pari a M e supporto pari a − M l’altezza e decresce il supporto del lobo principale, ma l’area sottesa da ogni lobo resta costante. Questo comportamento produce l’effetto di avvicinare tra di loro le oscillazioni intorno al punto di discontinuità, presente in ωc , della risposta in frequenza ideale Hid (ej2πf ), senza ridurne l’ampiezza. Analizziamo, dunque, l’operazione di convoluzione nell’equazione 7.9. Per un filtro ideale di tipo passa-basso, Hid (ej2πf ) è unitaria nell’intervallo delle

Progetto di Filtri FIR

237

20 M=6 M=10 M=20

15

P(f)

10

5

0

−5 −0.5

−0.4

−0.3

−0.2

−0.1

0 f

0.1

Figura 7.10 Andamento in frequenza della funzione di M .

0.2

0.3

sin(M πf ) sin(πf )

0.4

0.5

per tre diversi valori

frequenze [−fc , +fc ], mentre vale zero altrove. L’equazione 7.9 diventa: Z H(ejω ) =

+fc

³ ´ P ej2π(f −η) dη.

−fc

¡ ¢ Si noti che la funzione P ej2π(f −η) è centrata intorno al valore assunto dalla frequenza numerica f , considerata come parametro rispetto all’integrale in η (si ¡ ¢ veda la figura 7.11 dove sono mostrate le due funzioni P ej2π(f −η) e Hid (ej2πf ) coinvolte nell’operazione di convoluzione ¡ lineare).¢ Se f assume valori prossimi a 1/2, il lobo principale della funzione P ej2π(f −η) si trova lontano dall’intervallo d’integrazione [−fc , +fc ], e solo le sue oscillazioni secondarie vengono integrate nell’intervallo [−fc , +fc ], producendo valori molto piccoli dell’area netta. Si tratta dei valori assunti dalla funzione H(ej2πf ) nella banda attenuata, cioè per valori elevati di f . Man mano che la frequenza f diminuisce, nella ¡ finestra¢d’integrazione entrano oscillazioni via via più ampie della funzione P ej2π(f −η) producendo un valore netto sempre più ampio. Le oscillazioni risultanti nella funzione H(ejω¢) ¡ j2π(f −η) , sono dovute al fatto che le aree dei lobi secondari della funzione P e che via via entrano d’integrazione, hanno segni alternati. Se f = fc , ¡ nella finestra ¢ la funzione P ej2π(f −η) viene integrata solo a metà, trascurando il contributo dei lobi secondari che vanno oltre la frequenza −fc . Il risultato dell’integrale ¡ j2π(f −η) ¢ vale circa 1/2. Per valori di f inferiori a fc , il lobo principale di P e entra completamente nella finestra d’integrazione, producendo un risultato netto circa

238

Capitolo 7

δ

1

H(ej 2πη )

H id(ej 2πη ) fc

η δ

P( f −η) f finestra di integrazione

η 1/M

δ

Figura 7.11 Descrizione grafica del fenomeno di Gibbs causato dalla convoluzione descritta nell’equazione 7.9.

¡ ¢ unitario. Si noti che l’ampiezza del lobo principale di P ej2π(f −η) determina l’ampiezza della banda di transizione nella risposta in frequenza H(ejω ¡ ) del filtro¢ finale. Inoltre, aumentando M , le altezze dei lobi della funzione P ej2π(f −η) crescono, ma il loro supporto diminuisce, lasciando pressoché inalterata l’area sotdi M ¢è to ogni lobo (si veda la figura 7.10). In altri termini, l’effetto di un aumento ¡ solo l’aumento della velocità di ripetizione dei lobi della funzione P ej2π(f −η) e non la riduzione della loro area: è questa la ragione per cui l’ampiezza della massima oscillazione presente nella funzione H(ejω ) non cambia al variare di M , come già osservato a proposito dei risultati mostrati nella figura 7.9. Inoltre, in base a considerazioni analoghe, si nota che l’ampiezza della massima oscillazione in banda attenuata, δ2 , coincide con l’ampiezza della massima oscillazione δ1 in banda passante: è questa la ragione per cui risulta δ1 = δ2 = δ. La figura 7.12 mostra le risposte in frequenza di tre filtri progettati impiegando una finestra rettangolare con numero di coefficienti M pari a 41, 61 e 81. Le considerazione addotte in precedenza, suggeriscono che la riduzione della oscillazione massima δ nella risposta in frequenza del filtro progettato può essere garantita esclusivamente cambiando il tipo di finestra di troncamento e non la lunghezza. Resta quindi da analizzare altre tipologie di finestre che permettano di ridurre questo errore con delle transizioni più graduali di quanto garantito dalla finestra rettangolare.

Progetto di Filtri FIR

239

0 M=41 M=61 M=81 −20

|H(ejω)|−dB

−40

−60

−80

−100

−120

0

0.1

0.2

0.3

0.4

0.5 0.6 ω, in unità di π

0.7

0.8

0.9

1

Figura 7.12 Andamento del modulo della risposta in frequenza, in dB, di tre filtri progettati impiegando una finestra rettangolare con tre valori differenti di M .

7.3.2 La scelta della finestra di troncamento L’elaborazione numerica dei segnali é un argomento di ricerca che fonda le sue radici ai primi anni quaranta. In letteratura sono state proposte diverse finestre di troncamento in grado di ridurre l’ampiezza dell’oscillazione massima δ. Si ricordi che le oscillazioni nella risposta in frequenza H(ejω ) nascono perchè la porta p(n) presenta delle transizioni ripide negli istanti di tempo discreti n = 0 e n = M − 1. Una soluzione al problema consiste nell’impiegare delle finestre con delle transizioni più regolari. Vediamo quelle più impiegate in pratica.

Bartlett: é definita mediante la relazione:   p(n) =



2n M −1 , 2 − M2n −1 ,

0

0 ≤ n ≤ M2−1 M −1 ≤n≤M −1 2 altrimenti

(7.12)

Hanning: é definita mediante la relazione: ( p(n) =

h ³ ´i 2πn 0.5 1 − cos M , 0≤n≤M −1 −1 0, altrimenti

(7.13)

240

Capitolo 7

Hamming: é definita mediante la relazione: ( ´ ³ 2πn 0.54 − 0.46 cos M −1 , 0 ≤ n ≤ M − 1 p(n) = 0, altrimenti

(7.14)

Blackman: é definita mediante la relazione: ( ³ ´ ´ ³ 4πn 2πn + 0.08 cos 0.42 − 0.5 cos M −1 M −1 , 0 ≤ n ≤ M − 1 p(n) = 0, altrimenti (7.15) Le caratteristiche peculiari di queste finestre sono riassunte nella tabella 7.4. Tali valori sono stati ottenuti considerando un filtro ideale di tipo passa-basso con risposta all’impulso mostrata nell’equazione 7.7 (fc = 14 ) troncato con la relativa finestra su M = 51 coefficienti. Si noti che, sebbene valutate nella situazione specifica fc = 41 e M = 51, le quantità mostrate nella tabella 7.4 sono valide per ogni fc e per ogni lunghezza M della finestra impiegata. Con riferimento alle specifiche di un filtro prototipo riportate in figura 7.7, merita osservare che tutte queste finestre garantiscono una banda di transizione [ωp , ωs ] inversamente proporzionale al numero di coefficienti M , e che dipende dal supporto del lobo principale della relativa risposta in frequenza, così come già osservato a proposito della finestra rettangolare. La frequenza di taglio fc non può essere controllata direttamente dal progetto, e, come tale, viene imposta come segue: 1 ωp + ωs fc = . 2π 2 La minima attenuazione in banda attenuata vale: As = −20 · log10 (δ) , dove δ = min {δ1 , δ2 }. La relazione precedente garantisce che venga soddisfatta la specifica sull’oscillazione minore qualora vengano specificate due tolleranze δ1 e δ2 differenti tra banda passante e banda attenuata. L’andamento nel dominio del tempo discreto delle finestre più comuni é riportato in figura 7.13 per un numero di coefficienti pari a 41. Nelle figure 7.147.17 sono mostrati gli andamenti nel tempo e le risposte in frequenza delle finestre mostrate nelle equazioni 7.12-7.15, valutate con un numero di coefficienti M = 51. Si noti che anche per queste finestre l’oscillazione più elevata della rispettiva risposta in frequenza in banda attenuata non cambia all’aumentare del numero dei coefficienti M . Inoltre, dalle figure 7.14-7.17 si nota che l’attenuazione in banda attenuata garantita da ogni finestra é tanto più elevata quanto più é la finestra considerata presenta transizioni regolari agli estremi della finestra di osservazione [0, M − 1]. A titolo di esempio, la finestra rettangolare presenta l’attenuazione più ridotta, As = 21 dB, perchè presenta la transizione più ripida nel dominio del tempo negli istanti di tempo discreto n = 0 e n = M − 1.

Progetto di Filtri FIR

241

Tabella 7.4 Caratteristiche di progetto delle finestre più note. Finestra

Banda di transizione BT 2π M 6.1π M 6.2π M 6.6π M 11π M

Rettangolare Bartlett Hanning Hamming Blackman

1

1

0.8

0.8 Hanning−M=41

Bartlett−M=41

Minima attenuazione in banda attenuata, As = −20 · log10 (δ) 21dB 25dB 44dB 53dB 74dB

0.6 0.4 0.2 0

0.6 0.4 0.2

0

10

20 n

30

0

40

1

0

10

20 n

30

40

0

10

20 n

30

40

1

Blackman−M=41

Hamming−M=41

0.8 0.6 0.4

0.5

0.2 0

0

10

20 n

30

40

0

Figura 7.13 Andamento nel tempo delle finestre più comuni. coefficienti é pari a M = 41.

Il numero di

242

Capitolo 7

1

0

0.9

−10

0.8 −20 0.7 −30 |H(ejω)|−dB

p(n)

0.6

0.5

0.4

−40

−50

0.3 −60 0.2 −70

0.1

0

0

10

20

30

40

−80

50

0

0.2

n

0.4 0.6 ω, in unità di π

0.8

1

Figura 7.14 Andamento della finestra p(n) di Bartlett e della relativa risposta in frequenza in dB nel caso M = 51.

1

0

0.9

−10

0.8 −20 0.7 −30 |H(ejω)|−dB

p(n)

0.6

0.5

0.4

−40

−50

0.3 −60 0.2 −70

0.1

0

0

10

20

30 n

40

50

−80

0

0.2

0.4 0.6 ω, in unità di π

0.8

1

Figura 7.15 Andamento della finestra p(n) di Hamming e della relativa risposta in frequenza in dB nel caso M = 51.

Progetto di Filtri FIR

1

243

0

0.9 −20 0.8

0.7 −40

|H(e )|−dB

0.5



p(n)

0.6

−60

0.4 −80 0.3

0.2 −100 0.1

0

0

10

20

30

40

−120

50

0

0.2

n

0.4 0.6 ω, in unità di π

0.8

1

Figura 7.16 Andamento della finestra p(n) di Blackman e della relativa risposta in frequenza in dB nel caso M = 51.

1

0

0.9 −20 0.8

0.7 −40

|H(e )|−dB

0.5



p(n)

0.6

−60

0.4 −80 0.3

0.2 −100 0.1

0

0

10

20

30 n

40

50

−120

0

0.2

0.4 0.6 ω, in unità di π

0.8

1

Figura 7.17 Andamento della finestra p(n) di Hanning e della relativa risposta in frequenza in dB nel caso M = 51.

244

Capitolo 7

7.3.3 La finestra di Kaiser Una finestra alternativa a quelle presentate nel paragrafo precedente è la cosiddetta finestra di Kaiser, dal nome dell’inventore [11]. Si tratta della finestra che garantisce il miglior compromesso tra ampiezza del lobo principale e area dei lobi laterali nella risposta in frequenza del filtro progettato. L’equazione è la seguente:

p(n) =

 

· q ¸ n 2 I0 β 1−( M )



I0 [β]

0

, −M ≤ n ≤ M altrimenti

(7.16)

dove I0 [·] è la funzione di Bessel modificata di ordine zero e di prima specie definita come: " #2 ∞ X (x/2)k I0 (x) = 1 + k! k=1

Dal punto di vista pratico, solitamente poche decine di termini sono sufficienti nella funzione di Bessel per ottenere delle finestre di Kaiser accurate. Il ritardo α che rende causale la finestra di Kaiser risulta pari a M . Esaminando l’equazione 7.16, si nota che la finestra di Kaiser presenta due parametri, β e M , al variare dei quali è possibile modificare le ampiezze del lobo principale rispetto ai lobi secondari della risposta in frequenza del filtro. I parametri M e β sono scelti mediante le due equazioni di progetto seguenti.  As > 50  0.1102 · (As − 8.7), β= 0.5842 · (As − 21)0.4 + 0.07886 · (As − 21), 21 ≤ As ≤ 50  0, As < 21 (7.17) dove As = −20 · log10 δ2 è la minima attenuazione in banda attenuata richiesta dal progetto. Si noti che la finestra di Kaiser non permette il controllo della distorsione δ1 in banda passante, anche se, come per le altre finestre, solitamente risulta δ1 ≈ δ2 . E’ sufficiente, dunque, cercare di imporre come requisito di progetto il minimo tra δ1 e δ2 qualora vengano specificati due valori differenti di distorsione in banda passante e attenuata. Il numero di coefficienti M richiesti per garantire un’attenuazione minima As ed una banda di transizione ampia ωs − ωp , entro una tolleranza di circa ±2 coefficienti, è ottenibile mediante la seguente relazione empirica: M=

As − 8 2.285 · (ωs − ωp )

(7.18)

La figura 7.18 mostra l’andamento nel tempo di alcune finestre di Kaiser, mentre le caratteristiche spettrali di alcune finestre di Kaiser sono mostrare in figura 7.19 per alcuni valori dei parametri β e per un numero di coefficienti M = 51.

Progetto di Filtri FIR

245

1 β=2 β=3 β=4 β=5 β=6

0.9

0.8

Finestra di Kaiser

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0

0

5

10

15

20

25 n

30

35

40

45

50

Figura 7.18 Andamento nel tempo di alcune finestre di Kaiser per M = 51 coefficienti e diversi valori del parametro β.

7.3.4 Il progetto di filtri FIR con la tecnica a finestre Alla luce di quanto analizzato nei paragrafi precedenti possiamo formalizzare il metodo di progetto di filtri FIR passa-basso con la tecnica a finestre. Ricordiamo che, in riferimento alla figura 7.7, le specifiche di progetto sono δ = δ2 , ωp , ωs e che δ1 = δ2 = δ 4 . Il progetto del filtro avviene in accordo alle fasi seguenti. 1. Si sceglie la finestra p(n) in grado di garantire la specifica su δ con il minor numero di coefficienti, M . A questo scopo, è sufficiente scegliere dalla tabella 7.4 il tipo di finestra in grado di garantire un’attenuazione minima in banda attenuata uguale o superiore alla tolleranza δ di progetto (o As se si impiegano le specifiche in dB). 2. Si sceglie il numero di coefficienti M in modo tale che la banda di transizione BT sia inferiore o uguale alla differenza ωs − ωp , dove ωs e ωp sono specifiche di progetto. A questo punto conosciamo l’espressione analitica della finestra p(n) perchè sono noti sia il numero di coefficienti M , sia il tipo di finestra: basta applicare una delle equazioni 7.10 oppure 7.12-7.15. 3. I coefficienti del filtro si ottengono moltiplicando la risposta all’impulso del filtro ideale (Equazione 7.7) con la finestra p(n) scelta. 4. L’equazione 7.9 ci permette di ricavare la funzione di trasferimento del fil4

Normalmente δ2 é espresso in dB

246

Capitolo 7

0 β=2 β=3 β=4 β=5

−10

−20

|H(ej2π f)|−dB

−30

−40

−50

−60

−70

−80

0

0.05

0.1

0.15

0.2

0.25 f

0.3

0.35

0.4

0.45

0.5

Figura 7.19 Andamento della risposta in frequenza di alcune finestre di Kaiser per M = 51 coefficienti e diversi valori del parametro β.

tro progettato. Si noti che la funzione P (ejω ) é la DTFT della finestra p(n) impiegata nel progetto. Infine, si ricordi che α = M2−1 . 5. Si verifica se la risposta in frequenza H(ejω ) soddisfa il vincolo sull’errore massimo δ1 tollerato in banda passante. Se così non fosse, bisognerebbe cambiare la finestra impiegata, scegliendone una che garantisca un’attenuazione As superiore. In letteratura sono state proposte altre finestre con parametri costituenti modificabili secondo delle regole ben definite. Le più importanti sono quelle di Saram¨aki e di Dolph-Chebyshev, i cui dettagli possono essere consultati nel riferimento [12]. La metodologia progettuale analizzata in precedenza risulta valida anche per il progetto di filtri FIR con risposte in frequenza diverse da passa-basso. E’ sufficiente considerare la risposta all’impulso hid (n) appropriata nella tabella 7.3. Esempio 7.2 progettare un filtro FIR passa-basso con le seguenti specifiche: • • • •

frequenza di taglio della banda passante ωp = 0.2π; oscillazione massima tollerata nella banda passante Rp = 0.25dB; frequenza di taglio della banda attenuata ωs = 0.3π; oscillazione nella banda attenuata As = 50dB;

Soluzione: dalla tabella 7.4 si nota che sia la finestra di Hamming, sia quella di Blackman sono in grado di fornire un’attenuazione superiore a 50dB. Scegliamo la finestra di Hamming perchè fornisce una banda di transizione più contenuta e, come tale, il più ridotto numero di coefficienti M .

Progetto di Filtri FIR

0.3

0

0.25

−20 |H(ejω)|−dB

h(n)

0.2 0.15 0.1 0.05

−40 −60 −80 −100

0 −0.05

247

0

20

40

−120

60

0

0.2

n

0.25

0.4 0.6 ω, in unità di π

0.8

1

0

0.2 −0.01 |H(ejω)|−dB

h(n) ideale

0.15 0.1 0.05 0

−0.02

−0.03

−0.05 −0.1

0

20

40 n

60

−0.04

0

0.05

0.1 0.15 ω, in unità di π

0.2

Figura 7.20 Andamento della risposta all’impulso e della risposta in frequenza del filtro progettato nell’esercizio 7.2.

Dalla banda di transizione BT = ωs − ωp = 0.1π si ricava il numero di coefficienti M richiesti dal filtro, cioè BT = 6.6π M = ωs − ωp = 0.1π =⇒ M = e + 1 = 67. d 6.6π BT La pulsazione di taglio ωc é legata alle due pulsazioni di taglio ωp e ωs tramite ω +ω la relazione ωc = p 2 s = 0.25π: si trova nel punto intermedio tra ωp e ωs . La risposta in frequenza del filtro progettato é mostrata in figura 7.20. Dalla figura si nota che la massima oscillazione in banda passante (detta anche ripple) vale Rp = 0.039 ¿ 0.25dB, mentre la minima attenuazione in banda attenuata vale circa | − 55|dB> | − 50|dB.

248

Capitolo 7

7.4 Tecnica del campionamento della risposta in frequenza La tecnica del campionamento della risposta in frequenza consiste nel determinare i coefficienti della risposta all’impulso effettuando la trasformata di Fourier Discreta Inversa (IDFT) su M campioni equispaziati della risposta in frequenza del filtro ideale desiderato nell’intervallo delle frequenze numeriche [0, 1). Prima di formalizzare la tecnica di progetto, analizziamo alcune linee guida utili per il progetto di filtri FIR con la tecnica del campionamento in frequenza nell’ipotesi di voler progettare un¡ filtro¢di tipo passa-basso la cui risposta in frequenza ideale sia la funzione H ej2πf . Supponiamo, inoltre, di impiegare una risposta all’impulso simmetrica, e, dunque, una sequenza la cui risposta d’ampiezza sia esprimibile secondo quanto riportato nell’equazione 7.5 analizzata nel paragrafo 7.1.1. ¡ ¢ • Gli M campioni estratti dalla risposta in frequenza desiderata H ej2πf devono corrispondere alle frequenze numeriche che cadono nell’intervallo 0 ≤ f < 1, vale a dire ³ ´ j2πfk H(k) = H e , ∀k = 0, . . . , M − 1. |fk =k/M

Questa considerazione deriva dal fatto che sia la DFT, sia la IDFT richiedono £ ¤ che lo spettro della sequenza h(n) sia discretizzato nell’intervallo 0, MM−1 , 1 con risoluzione M . • La DFT H(k), k = 0, . . . , M − 1, deve mostrare simmetria coniugata (figura 7.22) intorno al punto k = 12 · M , in quanto, per la condizione di realizzabilità fisica, i coefficienti della risposta all’impulso h(n) sono reali. • Per assicurare la causalità, é necessario ritardare h(n) di un numero di istanti di tempo discreto pari al numero di coefficienti che la risposta all’impulso possiede sul semiasse temporale n < 0 (figura 7.21). Questa operazione comporta una rotazione di fase lineare che non modifica il modulo della risposta in frequenza desiderata. • Gli effetti del fenomeno di Gibbs possono essere controllati ¡ ¢scegliendo opportunamente i campioni della risposta in frequenza H ej2πf nella banda di transizione. In virtù dell’equazione 7.5, l’obiettivo del progetto consiste nel determinare i campioni H(k) della risposta in frequenza del filtro ideale espresso in termini della relativa risposta d’ampiezza: µ ¶ 2πk H(k) = A ejφ(H(k)) (7.19) M dove

µ A

2πk M

(

¶ =

A(0), ´ k=0 ³ 2π(M −k) , k = 1, . . . , M − 1 A M

(7.20)

Progetto di Filtri FIR

h(n)

249

h(n-2)

n

-2 -1 0 1 2

Sequenza non causale

0 1 2 3 4

n

Sequenza resa causale

Figura 7.21 Esempio di risposta all’impulso h(n) resa causale con un ritardo pari a 2 campioni.

La funzione di fase può essere espressa come segue: ( − (M −1)2πk , k = 0, . . . , b M2−1 c 2M φ (H(k)) = −k) + (M −1)2πk(M , k = b M2−1 c + 1, . . . , M − 1 2M

(7.21)

per le sequenze di tipo 1 e 2, oppure ( φ (H(k)) =

, k = 0, . . . , b M2−1 c (±π/2) − (M −1)2πk 2M (M −1)2πk(M −k) −(±π/2) + , k = b M2−1 c + 1, . . . , M − 1 2M

(7.22)

per le sequenze di tipo 3 e 4. Scelta una delle quattro tipologie di sequenze simmetriche, le equazioni 7.20 e 7.21 o 7.22 consentono di ricavare i valori da sostituire nell’equazione 7.19. Noti i valori dei campioni H(k) della risposta in frequenza desiderata, si impiega la IDFT: M −1 2π 1 X H(k)ej M k·n , ∀n = 0, . . . , M − 1. h(n) = (7.23) M k=0

La trasformata z del filtro progettato può essere calcolata come segue: H(z) =

M −1 X

h(n)z

n=0

−n

M −1 1 − z −M X H(k) = 2π , −1 j M k M k=0 1 − z e

(7.24)

mentre la risposta in frequenza risulta: H(ejω ) = dove

M −1 H(k) 1 − e−jωM X 2π −jω ej M k M k=0 1 − e

½ H(k) = H(e

j 2π k M

)=

H(0), k=0 H ∗ (M − k), k = 1, . . . , M − 1

(7.25)

(7.26)

250

Capitolo 7

A(f)

k M

1 2

M-k M

1

f

fase di H(f)

1

f

Figura 7.22 Spiegazione intuitiva del concetto di simmetria coniugata. Il grafico k mostra che H(k) = H ∗ (M − k) visto che i due campioni in f = M e f = MM−k possiedono lo stesso modulo, ma una fase di segno opposto.

Esempio 7.3 Progettare, mediante la tecnica del campionamento della risposta in frequenza, un filtro passa-basso con le seguenti specifiche: • ωp = 0.2π, frequenza massima della banda passante. • Rp = 0.25dB, massima oscillazione (ripple) tollerata nella banda passante. • ωs = 0.3π, frequenza di inizio della banda attenuata. • As = 50dB, attenuazione minima in banda attenuata. dove i parametri si riferiscono ad una maschera di progetto del tipo mostrata in figura 7.7. Soluzione: scegliamo M = 60 come valore iniziale in modo tale da avere un campione della risposta in frequenza H(ejω ) desiderata nella pulsazione ωp , cioé nel punto k = 6: ωp = 0.2π =

2π 2π k= 6 M 60

(7.27)

2π 2π k= 9. M 60

(7.28)

e un altro in ωs , cioé per k = 9: ωs = 0.3π =

Progetto di Filtri FIR

251

1 Dato che la risoluzione in frequenza vale 2π M = 30 π, con la scelta M = 60 si ottengono 7 campioni nella banda passante [0 ≤ ω ≤ ωp ], due nella banda di transizione [ωp < ω ≤ ωs ], e 21 campioni nella banda attenuata [ωs ≤ ω ≤ π]. In sostanza, ricordando che la distanza tra due campioni successivi della risposta in frequenza vale 2π M , dall’equazione 7.20 otteniamo i campioni

[1, 1, 1, 1, 1, 1, 1, T1 , T2 , 0, .., 0, T2 , T1 , 1, 1, 1, 1, 1, 1] dove al centro ci sono 43 zeri. I campioni T1 e T2 nella banda di transizione sono compresi tra zero e uno, e valgono T1 = 0.5925 e T2 = 0.1099 [14]. Questi valori vanno scelti in modo tale da ridurre l’effetto del fenomeno di Gibbs. Nella pratica il numero di termini non nulli nella banda di transizione, nonché i relativi valori, si trovano per tentativi, verificando che la risposta in frequenza progettata soddisfi le specifiche di progetto. Per quanto concerne la fase φ (H(k)), siccome M = 60, il punto di simmetria vale α = (60 − 1)/2 = 29.5. Siamo in presenza di un filtro lineare di tipo 2, i cui campioni della fase sono definiti dall’equazione 7.21. Noti i campioni della risposta in frequenza H(k) = A(k)ejφ(H(k)) , ∀k = 0, . . . , M − 1, possiamo valutare i coefficienti della risposta all’impulso del filtro tramite l’operatore di IDFT. La risposta in frequenza del filtro progettato è riportata in figura 7.23. Si noti che il filtro progettato soddisfa le specifiche in banda attenuata perché tutti i lobi sono inferiori a 63dB. Il problema della determinazione dei valori T1 e T2 nella banda di transizione è stato risolto da Rabiner e Gold. Il riferimento [14] mostra una serie di tabelle di progetto contenenti i valori da associare alla banda di transizione di un filtro progettato con la tecnica del campionamento della risposta in frequenza, in modo tale da contenere l’effetto del fenomeno di Gibbs.

7.5 Progetto di filtri FIR ottimi Le tecniche di progetto di filtri FIR analizzate in precedenza, hanno degli svantaggi. In primo luogo non è possibile specificare delle tolleranze δ1 , δ2 differenti in banda passante e attenuata. Inoltre, l’errore di approssimazione tra la risposta in frequenza £ ideale ¤ e quella progettata non è uniforme su tutto l’intervallo delle frequenze 0, 21 : in riferimento alla figura 7.7, nella banda attenuata, soprattutto ben oltre la pulsazione ωs , il filtro progettato possiede una risposta in frequenza i cui lobi sono generalmente ben al di sotto delle specifiche imposte. Queste considerazioni suggeriscono la possibilità di distribuire l’errore di approssimazione tra H(ejω ) e Hid (ejω ) in modo uniforme sia in banda passante, sia in banda attenuata; così facendo, si riesce a progettare il filtro che soddisfa le specifiche di progetto col minor numero possibile di coefficienti. Nel progetto di filtri FIR ottimi a fase lineare l’obiettivo consiste nel minimizzare l’errore massimo commesso nell’approssimare la risposta in frequenza Hid (ejω ) del filtro ideale desiderato con una funzione H(ejω ). Questo approccio

252

Capitolo 7

A(ω)

1

0.59

0.109 0 0

0.2

0.3

0

0.2

0.3

ω

1

|H(ω)|−[dB]

0

63

ω

1

Figura 7.23 Risposta d’ampiezza A(ω) e risposta in frequenza del filtro passabasso dell’esempio 7.3. L’asse delle ascisse riporta la pulsazione numerica ω espressa in unità di π.

fa sì che i filtri progettati soddisfino i requisiti di progetto impiegando il minor numero possibile di coefficienti. Inoltre, in virtù dei polinomi di Chebychev impiegati nel progetto, la risposta in frequenza del filtro progettato è generalmente equilivello sia in banda passante, sia in banda attenuata. La funzione di errore, definita come H(ejω ) − Hid (ejω ), solitamente mostra un numero uguale di massimi e minimi con attraversamenti per lo zero alternati. Quanto più è elevato il numero di attraversamenti per lo zero, vale a dire il numero dei punti in cui l’approssimazione tra H(ejω ) e Hid (ejω ) è perfetta, tanto più è elevato l’ordine del filtro progettato. Prima di affrontare il progetto dei filtri, conviene determinare delle equazioni generali in grado di identificare sia la risposta in frequenza, sia la risposta d’ampiezza delle quattro tipologie di sequenze simmetriche, nelle ipotesi di voler determinare un filtro con risposta all’impulso h(n) di supporto [0, M − 1]. E’ possibile dimostrare [12] che la risposta d’ampiezza di un filtro FIR a fase lineare assume la forma:

A (f ) = T (f ) ·

K X

αn cos(2πf n) = T (f ) · R(f )

(7.29)

n=0

dove i coefficienti αn , dipendenti dalla tipologia della sequenza simmetrica impiegata, sono legati ai coefficienti h(n) del filtro desiderato attraverso le relazioni

Progetto di Filtri FIR

253

seguenti: ¡ −1 ¢ tipo 1 : α0 = h M , 2 ¡M ¢ −1 αn = 2h¡ 2 ¢− n , ∀n = 1, . . . , M2−1 , tipo 2 : α0 = h M ¡2M− 1 ,¢ αn = 4h 2 − n − αn−1 , ∀n = 1, . . . , M 2 − 2, α M −1 = 4h (0) , 2 tipo 3 : α M −3 = 2h (0) , 2 α M −5 = 4h (1) , 2 α M −7 = 4h (2) , 2 ... ¡ ¢ αn−1 − αn+1 = 4h M2−1 − n , ∀n = 2, . . . , M2−5 , ... ¡ ¢ α0 + 12 α2 = 2h M2−1 − 1 tipo 4 : α M −1 = 4h (0) , 2 ... ¡ ¢ αn−1 − αn = 4h M − n , ∀n = 2, . . . , M 2 2 − 1, ... ¡ ¢ α0 − 12 α1 = 2h M 2 −1

(7.30)

Il parametro K e la funzione T (f ) nell’equazione 7.29 sono mostrati nella tabella 7.5. Tabella 7.5 Sommario delle funzioni chiave e dei parametri presenti nelle equazioni 7.29 e 7.31. I parametri si riferiscono a sequenze simmetriche h(n) di M coefficienti sul supporto [0, M − 1].

Simmetria M T (f ) K β0 β1

Tipo 1 pari dispari 1 M −1 2 M −1 2

0

Tipo 2 pari pari cos(πf ) M 2 −1

Tipo 3 dispari dispari sin(2πf )

M −1 2

0

M −3 2 M −1 2 π 2

Tipo 4 dispari pari sin(πf ) M 2 −1 M −1 2 π 2

¡ ¢ Si noti che le risposte in frequenza Hi ejω , i = 1, . . . , 4, delle quattro tipologie di sequenze simmetriche, sono legate alla risposta d’ampiezza A (f ) nell’equazione 7.29 attraverso la relazione ¡ ¢ Hi ejω = e−j(β0 ω−β1 ) · A(f ), ∀i = 1, . . . , 4, dove i parametri β0 e β1 sono riassunti nella tabella 7.5.

(7.31)

254

Capitolo 7

Affrontiamo il problema di progetto di filtri FIR ottimi nell’ipotesi di aver scelto una specifica tipologia di sequenza simmetrica in base al tipo di filtro da voler progettare. La tabella 7.2 riassume le tipologie di filtri ideali implementabili con le quattro tipologie di sequenze simmetriche. Per semplicità, omettiamo il ¡ ¢ pedice i nella risposta in frequenza Hi ejω del filtro desiderato. L’obiettivo del progetto consiste nell’approssimare la risposta d’ampiezza Hid (ejω ) del filtro ideale desiderato con la risposta d’ampiezza A(f ) del tipo mostrato nell’equazione 7.29. Dal momento che le risposte in frequenza Hid (ejω ) dei filtri ideali sono delle risposte d’ampiezza puramente reali, è possibile identificarle con la notazione Hid (f ), così come fatto per la risposta d’ampiezza mostrata nelle equazioni 7.5 e 7.29. Per quantificare la bontà dell’approssimazione tra le due funzioni Hid (f ) e A(f ), si definisce un errore di approssimazione pesato ²(f ) come segue: ²(f ) = W (f ) [Hid (f h ) − A(f )] = W i (f ) [Hid (f ) − T (f )R(f )] = Hid (f ) = W (f )T (f ) T (f ) − R(f )

(7.32)

dove W (f ) rappresentano i pesi con i quali è possibile definire degli errori di approssimazione differenti tra la banda passante e la banda attenuata. Le componenti del vettore W (f ) rappresentano il peso dell’approssimazione in una specifica frequenza f . Si definiscano le due funzioni seguenti: Wx (f ) = W (f )T (f ) Hx (f ) = HTid(f(f) ) in modo tale da riscrivere la funzione errore ²(f ) come segue: ²(f ) = Wx (f ) [Hx (f ) − R(f )]

(7.33)

L’obiettivo del metodo di progetto consiste nello scegliere i coefficienti αn nell’equazione 7.29 in modo tale da minimizzare l’errore assoluto massimo com£messo ¢ nell’approssimazione 7.33 su una partizione dell’intervallo di frequenze 0, 12 . In buona sostanza, si cerca di minimizzare l’errore massimo ²(f ) su una partizione di frequenze f1 , f2 , . . . , fK+2 . A tal scopo, sono utili le conclusioni dedotte dal teorema dell’alternanza. Teorema 7.5.1 dell’alternanza. Sia Fp una partizione chiusa dell’asse reale delle frequenze su cui s’impone l’approssimazione in 7.33. Se R(f ) è una combinazione lineare di K + 1 funzioni coseno, cioé vale la relazione: R(f ) =

K X n=0

αn cos(2πf n),

Progetto di Filtri FIR

255

ε( fi ) ε( f i+1 ) 1+ δ1xxx xxx xxx 1xxx xxx 1- δ1xx xx

xx xx

δ2 xxx xxx xxx xx xxx xx

xx xx xx xx

0 fi f i+1

xx xx

fp

xx xx

xx xx

xxx xxx

fc

fs

0.5

f

Figura 7.24 Spiegazione concettuale del teorema dell’alternanza.

allora una condizione necessaria e sufficiente affinché R(f ) sia un’approssimazione di Chebyshev della funzione continua Hx (f ) nell’equazione 7.33 sull’insieme compatto Fp , è che la funzione errore ²(f ) presenti almeno K + 2 alternanze. In altri termini, esistono almeno K + 2 valori di frequenza in Fp , che indichiamo con fi , ∀i = 1, . . . , K + 2, ordinati in modo crescente, cioé f1 < f2 < . . . < fK+2 , tali che ²(fi ) = −²(fi+1 ) = ±kEm k, ∀i = 1, . . . , K + 1. dove kEm k = max |²(f )| f ∈Fp

(7.34)

Scelto Fp come l’unione dei due intervalli di frequenza {[0; fp ] ∪ [fs ; 12 ]}, il teorema dell’alternanza ci assicura di poter trovare almeno K + 2 frequenze fi , i = 1, . . . , K + 2, nelle quali l’errore si alterna tra coppie di massimi e minimi uguali in estensione, così come evidenziato in figura 7.24. Inoltre, l’errore ²(f ) nelle frequenze fi , ∀i = 1, . . . , K + 2, corrisponde all’errore massimo kEm k definito nell’equazione 7.34. Il teorema dell’alternanza non dice, tuttavia, come ottenere la partizione di K + 2 frequenze. Si ricorre, perciò, a delle strategie iterative al fine di determinare le K +2 frequenze più idonee. Il metodo più impiegato è l’algoritmo di Parks e McClellan [15]-[17], il quale si basa sull’algoritmo di Remez. L’algoritmo di Parks e McClellan richiede che vengano specificati i parametri fp , fs , δ1 , δ2 , ∆ = δδ12 e la lunghezza M del filtro. Una stima del numero M di coefficienti del filtro FIR da progettare può essere

256

Capitolo 7

ottenuta attraverso una formula proposta da Kaiser: √ ¯ ¯ ¯ −20 · log10 ( δ1 δ2 ) − 13 ¯ ωs − ωp M = ¯¯ + 1¯¯ , ∆f = 14.6 · ∆f 2π

(7.35)

con la quale è possibile ottenere una stima preliminare del numero di coefficienti M del filtro che possiede una banda di transizione compresa tra ωp e ωs , un’oscillazione massima δ1 in banda passante, e un’oscillazione massima δ2 in banda attenuata. Si noti che M cresce man mano che diminuisce l’oscillazione tollerata in banda passante ed in banda attenuata, ma anche riducendo la banda di transizione ∆f . Una formula per la stima del numero dei coefficienti M più accurata della precedente è stata proposta in [18]: M =1+

ωs − ωp D∞ (δ1 , δ2 ) − F (δ1 , δ2 ) · (∆f )2 , ∆f = ∆f 2π

(7.36)

dove:  ³ ´ 2   D (δ , δ ) = 0.005309 (log δ ) + 0.07114 · log δ − 0.4761 · log10 δ2 − ∞ 1 2 1 1 10  ³ ´10 − 0.00266 · (log10 δ1 )2 + 0.5941 log10 δ1 + 0.4278    F (δ1 , δ2 ) = 11.01217 + 0.51244 · (log10 δ1 − log10 δ2 )

L’equazione 7.36 presuppone che sia δ2 < δ1 . In caso contrario, è sufficiente scambiare δ1 con δ2 . Nella pratica a volte le specifiche vengono imposte in termini logaritmici, ovvero fornendo i due parametri Rp e As , piuttosto che le tolleranze δ1 , δ2 . Le due coppie di parametri, in base alla figura 7.7, sono legate dalle relazioni: µ ¶ 1 − δ1 Rp = −20 · log10 >0 (7.37) 1 + δ1 µ ¶ δ2 As = −20 · log10 > 0, (À 1). (7.38) 1 + δ1 Ai fini pratici, impiegando una delle due formule 7.35-7.36, si ottiene una stima preliminare del numero di coefficienti M del filtro FIR. Dopo il progetto bisognerebbe verificare che le specifiche imposte (δ1 , δ2 , ωp , ωs ) siano soddisfatte. Se così non fosse, bisognerebbe ripetere il progetto, impiegando un numero di coefficienti M più elevato. Infine, le relazioni inverse alle equazioni 7.37-7.38 sono: δ1 = e

10Rp /20 − 1 10Rp /20 + 1

δ2 = (1 + δ1 ) · 10−As /20 .

(7.39) (7.40)

Progetto di Filtri FIR

257

L’algoritmo di Parks e McClellan [17] restituisce i coefficienti αk ed i parametri δ1 , δ2 effettivamente garantiti dal filtro progettato. Nel caso di un filtro di tipo passa-basso, i pesi W (f ) e l’equazione della maschera ideale risultano: ½ 1, ∀f ∈ [0; fp ] W (f ) = (7.41) δ1 1 δ2 , ∀f ∈ [fs ; 2 ] ½

e Hid (f ) =

1, ∀f ∈ [0; fp ] 0, ∀f ∈ [fs ; 12 ]

(7.42)

L’algoritmo di Remez opera come segue: 1. si parte da una sequenza di K + 2 frequenze fi , i = 1, . . . , K + 2, e si valutano i K + 1 coefficienti αk risolvendo l’equazione: − (−1)n ²o = W (fn ) [Hid (fn ) − H(fn )] , ∀n = 1, . . . , K + 2

(7.43)

dove ²o , essendo ancora incognito, viene assunto pari a ²o = ²(fn ) = −²(fn+1 ). Le incognite rispetto cui il sistema 7.43 è risolto, sono appunto i K + 1 coefficienti αk e l’errore massimo stimato ²o . Non avendo una scelta prestabilita, è possibile scegliere £ ¤ delle frequenze spaziate in modo uniforme nell’intervallo di frequenze 0, 12 . 2. Determinati i coefficienti αn , ∀n = 1, . . . , K + 1, allora è nota l’equazione W (fn ) [Hid (fn ) − H(fn )], e da essa vengono determinate le frequenze fn in cui si hanno gli estremi. 3. Se le frequenze stimate fbn , ∀n = 1, . . . , K + 2 non soddisfano il teorema dell’alternanza, si rivalutano i coefficienti αn e ²o impiegando fbn , e si ripete l’algoritmo partendo dal punto 1, sino a quando le frequenze stimate fbn non soddisfano il teorema dell’alternanza entro delle tolleranze predefinite. La tecnica di progetto di Parks e McClellan permette un controllo diretto delle pulsazioni ωp e ωs che delimitano la banda di transizione, e delle tolleranze δ1 e δ2 in banda passante e attenuata. Inoltre, è valida per funzioni W (f ) e Hid (f ) arbitrarie. La tecnica delle finestre, ad esempio, non possiede questa flessibilità progettuale. Esistono altre tecniche di progetto di filtri FIR, tra le quali citiamo le seguenti. • Le tecniche di programmazione lineare consentono di minimizzare l’errore pesato tra una risposta in frequenza ideale desiderata e quella dovuta ad una delle quattro rappresentazioni di sequenze a fase lineare riassunte nell’equazione 7.29, garantendo dei requisiti ulteriori sulla sequenza h(n) progettata. • Le tecniche che minimizzano l’errore quadratico medio pesato: Z E= [W (f ) (Hid (f ) − A(f ))]2 df (7.44) B

258

Capitolo 7

0

0.3 0.25

−0.05 |H(ejω)|−dB

h(n)

0.2 0.15 0.1

−0.1 −0.15

0.05 −0.2

0 −0.05

0

10

20

30

40

−0.25

50

0

0.05

n

−20

0.1 0.15 ω, in unità di π

0.2

20 0 |H(ejω)|−dB

|H(ejω)|−dB

−40

−60

−20 −40 −60

−80 −80 −100

0.4

0.6 0.8 ω, in unità di π

1

−100

0

0.2

0.4 0.6 ω, in unità di π

0.8

1

Figura 7.25 Andamento della risposta all’impulso e della risposta in frequenza del filtro progettato nell’esercizio 7.4.

su un opportuno intervallo di frequenze B. La funzione W (f ) è una funzione di peso opportuna, e possiede un significato analogo a quello impiegato nell’algoritmo di Parks e McClellan. La funzione A(f ) è definita nell’equazione 7.29. Solitamente, il problema si risolve dividendo la banda di frequenze B in una partizione fitta di frequenze f1 , . . . , fK su cui si garantisce la minimizzazione dell’errore quadratico medio E: E=

K X

[W (fk ) (Hid (fk ) − A(fk ))]2

(7.45)

k=1

Per approfondimenti, il lettore interessato può consultare il testo [12]. Esempio 7.4 progettare, mediante la tecnica di progetto di filtri equilivello ottimi, un filtro FIR passa-basso con le specifiche impiegate nell’esercizio 7.2: • frequenza di taglio della banda passante ωp = 0.2π; • oscillazione massima tollerata nella banda passante Rp = 0.25dB; • frequenza di taglio della banda attenuata ωs = 0.3π; • oscillazione nella banda attenuata As = 50dB; Soluzione: l’equazione 7.35 fornisce una stima di M = 43 coefficienti. Procedendo per tentativi, si nota che il minimo numero di coefficienti M per cui l’algoritmo di Remez converge, risulta pari a 47. La risposta in frequenza del filtro progettato é mostrata in figura 7.25. Dalla figura si nota che l’oscillazione in banda passante (ripple) vale Rp = 0.22 <

Progetto di Filtri FIR

259

0.25dB, mentre la minima attenuazione in banda attenuata vale circa −51dB< −50dB. Si noti che, rispetto alla tecnica a finestre, per la quale il numero di coefficienti richiesto per soddisfare le specifiche di progetto è 67, la tecnica di progetto equilivello consente di progettare un filtro FIR, che soddisfi le medesime specifiche di progetto con soli 47 coefficienti.

7.6 Filtri FIR a mezza-banda Un filtro FIR a mezza-banda è un sistema LTI a tempo discreto con una risposta all’impulso di durata finita, simmetrica, e con un numero di coefficienti M dispari, che soddisfa la seguente proprietà: ½ h(n) =

0, 1/2,

∀ n = 2k n=0

(7.46)

dove k è un intero non nullo. L’equazione 7.46 suggerisce che la risposta all’impulso di un filtro a mezza-banda possiede coefficienti nulli in corrispondenza degli istanti di tempo pari. Questa caratteristica comporta che ogni campione della sequenza in uscita da un filtro siffatto, può essere calcolato con una complessità computazionale che è circa la metà di quella richiesta da un generico filtro con una risposta all’impulso di medesimo supporto. Inoltre, come il nome suggerisce, la risposta in frequenza presenta una frequenza di taglio fc che si colloca al centro della banda delle frequenze numeriche [0, 1/2], vale a dire fc = 0.25. La risposta all’impulso di un filtro a mezza-banda è una sequenza simmetrica di tipo 1. Dunque, la risposta in frequenza presenta simmetria pari intorno alla frequenza numerica f = 0, e simmetria dispari intorno alla frequenza f = 0.25. Ponendo ωc = 2πfc = π/2 nella risposta all’impulso di un filtro passa-basso ideale (equazione 7.7), si ottiene: 1 h(n) = 2fc · sinc (2fc n) = · sinc 2

µ

¶ 1 1 n , ∀|n| ≤ (M − 1) 2 2

(7.47)

La condizione espressa dall’equazione 7.46 impone che la risposta in frequenza di un filtro a mezza-banda soddisfi la seguente proprietà: ³ ´ ¡ ¢ H ejω + H ej(π−ω) = 2 · h(0) = 1

(7.48)

Infatti, ricordando l’equazione 7.46, è facile verificare la seguente relazione: P+ M2−1 =

P+ M −1 1 h(k)e−j2πf k + k=−2 M −1 h(k)e−j2π( 2 −f )k = 2 £ −j2πf k ¤ −jπk h(k) e +e e+j2πf k

k=− M2−1 + M2−1 k=− M2−1

P

260

Capitolo 7

Si noti che i termini per k pari e k 6= 0 sono tutti nulli, essendo h(k) = 0. Inoltre, se k è dispari, e−jπk = −1, e, dunque, si ottiene: £ −j2πf k ¤ P+ M2−1 +j2πf k = h(k) e − e M −1 k=− 2 , k disp. P+ M −1 = −2j k=−2 M −1 , k disp. h(k) sin (2πf k) = 0 2

essendo h(k) sin (2πf k) una sequenza dispari rispetto al tempo discreto k, sommata su un intervallo simmetrico rispetto all’origine del tempo k = 0. Il requisito mostrato nell’equazione 7.48 impone che la risposta in frequenza di un filtro passa-basso a mezza-banda soddisfi le condizioni: ½ fp + fs = 12 (7.49) δ1 = δ2 dove i parametri fp , fs , δ1 e δ2 sono quelli relativi alla maschera di un filtro passabasso mostrata in figura 7.7. Gli andamenti risposta ¯ della ¡ j2πf ¢¯ all’impulso h2 (n) = h(n−α)·p(n) e della rispo¯ ¯ di un filtro a mezza-banda con M = 71 coefficienti, sta in frequenza H2 e progettato con la finestra di Kaiser di parametro β = 6, sono mostrati nella figura 7.26. Nell’esempio, α = 35 è il ritardo che rende causale il filtro FIR progettato, h(n) è la risposta all’impulso del filtro FIR a mezza-banda ideale mostrata nell’equazione 7.47, e p(n) è la finestra di Kaiser mostrata nell’equazione 7.16 con i parametri α = 35 e β = 6. Si noti che, come atteso, i coefficienti della risposta all’impulso h2 (n) sono alternativamente nulli, tranne quello corrispondente al picco della risposta all’impulso. Il concetto di filtro a mezza-banda può essere esteso a filtri a banda N -esima, in grado di garantire risparmi computazionali di un fattore N . Un filtro FIR a banda N -esima è un sistema LTI a tempo discreto con una risposta all’impulso di durata finita, simmetrica, e con un numero di coefficienti M dispari, che soddisfa la seguente proprietà: ½ 0, ∀n=N ·k h(n) = (7.50) 1/N, n = 0 dove k è un intero non nullo. In modo analogo ai filtri a mezza-banda, un filtro a banda N -esima garantisce una complessità computazionale minore di un fattore N rispetto a quella richiesta da un filtro FIR col medesimo numero M di coefficienti, mentre le frequenze di progetto e le tolleranze della maschera del filtro soddisfano le seguenti relazioni: ½ fp + fs = N1 (7.51) δ1 ≤ (N − 1)δ2 La risposta all’impulso di un fltro ideale a banda N -esima può essere ricavata dall’equazione 7.7 ponendo ωc = 2πfc = π/N : µ ¶ 1 1 1 h(n) = · sinc n , ∀|n| ≤ (M − 1) N N 2

Progetto di Filtri FIR

261

0.5 0.4

h2(n)

0.3 0.2 0.1 0 −0.1 −0.2

0

10

20

30

40

50

60

70

n

0

|H2(ej2π f)|−dB

−20 −40 −60 −80 −100 −120 −140

0

0.05

0.1

0.15

0.2

0.25 f

0.3

0.35

0.4

0.45

0.5

Figura 7.26 Andamento ¯ ¡ ¢¯della risposta all’impulso h2 (n) e della relativa risposta in frequenza ¯H2 ej2πf ¯ di un filtro a mezza-banda con M = 71 coefficienti, progettato con la finestra di Kaiser di parametro β = 6.

In virtù della complessità computazionale ridotta, i filtri a banda N -esima sono impiegati nei sistemi di decimazione di segnali a tempo discreto. I filtri a banda N -esima (compresi i filtri a mezza-banda per i quali N = 2) possono essere progettati con le tecniche presentate nei paragrafi precedenti. Nota la risposta all’impulso h(n), una tecnica semplice, ma subottima, è quella delle finestre, con la quale la risposta all’impulso del filtro si ricava troncando con un’opportuna finestra la risposta all’impulso h(n) del filtro a banda N -esima ideale.

7.7 Trasformatore di Hilbert ¡ jω ¢ Un filtro di Hilbert è un sistema LTI con risposta in frequenza H e di tipo ¯ ¡ ¢¯ passa-tutto, cioè tale per cui ¯H ejω ¯ è costante ∀ω, che ruota di π/2 la fase della sequenza x(n) in ingresso. La risposta in frequenza di un trasformatore di Hilbert ideale è definita come: ¡ ¢ ³ ´ ½ −j, ∀f ∈ ¡0, 21 ¢ H ej2πf = (7.52) +j, ∀f ∈ − 12 , 0 Ricordando la definizione della funzione segno, è possibile scrivere: ³ ´ 1 H ej2πf = −j · sgn(f ), ∀|f | < 2

262

Capitolo 7

Se si richiede che la rotazione di fase venga applicata a tutte le componenti di frequenza inferiori ad una frequenza di taglio fc ≤ 1/2, il trasformatore di Hilbert ha la seguente risposta in frequenza: ³ ´ H ej2πf = −j · sgn(f ), ∀|f | < fc I filtri di Hilbert sono impiegati nell’ambito delle telecomunicazioni e dell’elaborazione dei segnali per generare segnali in quadratura di fase. La risposta all’impulso di un filtro di Hilbert vale: R +f R +f h(n) = −fcc H(ej2πf )ej2πf n df = −fcc −j · sgn(f )ej2πf n df = R +f c n) = 2 0 c sin (2πf n) df = 1−cos(2πf , ∀n 6= 0 πn

(7.53)

Si noti che h(0) = 0. La risposta all’impulso di un trasformatore di Hilbert presenta simmetria dispari (h(n) = −h(−n)), ed è, inoltre, non causale e di durata illimitata. In virtù delle caratteristiche di simmetria, la risposta all’impulso deve essere una sequenza di tipo 4. Inoltre, la risposta in frequenza di questa tipologia di sequenze è nulla per f = 0, e in f = 1/2 per sequenze di lunghezza dispari. E’ chiaro, dunque, che non è possibile progettare un filtro passa-tutto ideale. Nella pratica la rotazione di fase deve essere garantita solo in alcuni intervalli di frequenza, e quindi il filtro di Hilbert risulta fattibile anche impiegando sequenze simmetriche di tipo 3. Una delle tecniche di progetto più semplici è quella delle finestre, con cui la risposta all’impulso del trasformatore di Hilbert viene ottenuta troncando la risposta h(n) del filtro di Hilbert ideale con una finestra opportuna, secondo quanto già visto nei paragrafi precedenti. Dopo il troncamento, il filtro è reso causale applicando un ritardo finito alla risposta all’impulso ottenuta.

7.8 Filtri FIR derivatori ¡ ¢ Un filtro derivatore ideale è un sistema LTI con risposta in frequenza H ejω definita come segue: ³ ´ 1 H ej2πf = j2πf, ∀|f | ≤ 2

(7.54)

Spesso, in pratica, si richiede che il filtro effettui l’operatore di derivata su un intervallo di frequenze delimitato da una frequenza di taglio fc ≤ 1/2. In questo caso, il sistema derivatore ha la seguente risposta in frequenza: ³ ´ 1 H ej2πf = j2πf, ∀|f | ≤ fc ≤ 2

Progetto di Filtri FIR

263

La risposta all’impulso h(n) di un filtro derivatore può essere ricavata, per ogni n 6= 0, applicando l’antitrasformata IDTFT all’equazione precedente: h(n) = =

R +fc

c R −f +f −4π 0 c

H(ej2πf )ej2πf n df = f sin (2πf n) df =

R +fc

j2πf n df = −fc j2πf e 2πnfc cos(2πfc n)−sin(2πfc n) , πn2

∀n 6= 0

(7.55)

¡ ¢ Si noti che risulta h(0) = 0, dal momento che la risposta in frequenza H ej2πf è una funzione dispari della frequenza. Ponendo fc = 1/2 nella risposta all’impulso mostrata nell’equazione 7.55, si ottiene: cos(πn) h(n) = , ∀n 6= 0 n Il progetto di filtri derivatori può essere condotto con le tecniche esaminate nei capitoli precedenti. In particolare, in virtù delle caratteristiche di simmetria della risposta in frequenza, la risposta all’impulso deve essere una sequenza di tipo 3 oppure 4, a seconda che il numero di coefficienti sia pari o dispari. Se il numero di coefficienti è dispari, allora bisogna includere il campione h(0) = 0.

7.9 Confronto tra filtri FIR e IIR Dopo aver presentato una serie di tecniche di progetto di filtri FIR e IIR, è opportuno dedicare una breve sezione al confronto tra le due tipologie di filtri in relazione alle applicazioni pratiche. I filtri IIR possono ben emulare la maschera di filtri prototipo analogici molto impiegati nei circuiti analogici elettronici, mentre i filtri FIR non possiedono questa flessibilità. Le tecniche di progetto di filtri IIR sono piuttosto meccaniche e, come tale, sono relativamente semplici da applicare. Se la linearità di fase non è un requisito di progetto, i filtri IIR sono in grado di realizzare una risposta in frequenza predefinita col minor numero di coefficienti nella realizzazione ricorsiva. In virtù della complessità computazionale estremamente ridotta, tali filtri sono adatti ad applicazioni ad elevate velocità. Queste ragioni sono alla base del loro uso in applicazioni audio, quali equalizzatori, telefonia numerica, e via discorrendo. Per contro, i filtri IIR causali possono presentare problemi di stabilità dal momento che i poli della funzione di trasferimento possono spostarsi all’esterno della circonferenza di raggio unitario qualora il filtro venga implementato in precisione finita. I filtri FIR, invece, non presentano problemi di stabilità in quanto gli unici poli che possiedono, sono nell’origine z = 0 del piano complesso. Dunque, sono preferiti ai filtri IIR in applicazioni quali il filtraggio di segnali in sistemi di trasmissione digitali, ed il filtraggio adattativo. I filtri FIR consentono il progetto di sistemi LTI causali e a fase lineare. Esistono molteplici applicazioni pratiche, quali l’elaborazione vocale e l’elaborazione di immagini, in cui è necessario filtrare porzioni di spettro senza distorcere il

264

Capitolo 7

sistema LTI x(n) segnale trasmesso

Canale di trasmissione h(n)

y(n) segnale ricevuto

Figura 7.27 Modello di canale di trasmissione lineare e stazionario.

segnale. In queste applicazioni, i sistemi a fase lineare consentono di evitare la distorsione di fase, in quanto introducono solo un ritardo sul segnale filtrato. L’elaborazione di un filtro FIR è condotta attraverso l’operazione di convoluzione lineare. Poiché la risposta all’impulso ha supporto finito, è possibile realizzare l’operazione di filtraggio in modo efficiente mediante tecniche di FFT. L’ultimo discorso da affrontare riguarda la sensibilità della risposta in frequenza alla quantizzazione dei coefficienti. Questo problema verrà affrontato in un capitolo successivo. In questo capitolo, basti dire che i filtri IIR, contrariamente a quanto accade per i filtri FIR, possiedono una risposta in frequenza in generale molto sensibile alla rappresentazione in aritmetica finita dei rispettivi coefficienti. I poli del filtro IIR possono cambiare posizione con la quantizzazione dei suoi coefficienti, e, in taluni casi, possono anche rendere instabile il filtro. Per ciò che concerne i filtri FIR, invece, l’effetto dei disturbi dovuti alla quantizzazione dei coefficienti è piuttosto limitato perché la risposta all’impulso possiede supporto limitato. Per contenere i disturbi in presenza di risposte all’impulso lunghe (più di 100 coefficienti), si ricorre a architetture implementative di tipo parallelo.

7.10 Cenni sulle tecniche di filtraggio adattativo Le tecniche analizzate nei paragrafi precedenti, consentono di progettare sistemi LTI di tipo FIR con coefficienti h0 , . . . , hN −1 fissi. In molte applicazioni pratiche, tuttavia, nasce la necessità di implementare dei sistemi LTI con coefficienti variabili, scelti in modo tale da realizzare una risposta in frequenza diversa a seconda che cambino delle particolari condizioni operative. Un tipico esempio nel quale si desidera un sistema con coefficienti variabili riguarda la trasmissione di dati numerici attraverso canali di trasmissione con caratteristiche fisiche che cambiano da una trasmissione all’altra. Nelle ipotesi che vari molto più lentamente rispetto alla durata del segnale da trasmettere, il canale di trasmissione è praticamente modellato con un sistema LTI con risposta all’impulso h(n), come mostrato in figura 7.27. Dal momento che le caratteristiche del canale di trasmissione non sono note a priori, al ricevitore si ricorre a delle tecniche opportune che consentono di stimare

Progetto di Filtri FIR

x(n) segnale trasmesso

sistema LTI Canale di trasmissione h(n)

265

Apparato di ricezione y(n)

Equalizzatore h e (n),H e (e jω)

^x(n)

stima della risposta all'impulso del canale Figura 7.28 Illustrazione del sistema equalizzatore in un ricevitore di dati numerici.

i coefficienti della risposta all’impulso he (n) del sistema inverso a quello che modella il canale. La stima si basa sullo scambio di dati noti sia al trasmettitore, sia al ricevitore. Noti i coefficienti della risposta all’impulso he (n) del sistema inverso, gli effetti del canale di trasmissione sono compensati mediante un sistema LTI con risposta all’impulso he (n), detto sistema equalizzatore, posto in cascata al canale di trasmissione. Lo schema concettuale che descrive le operazioni menzionate in precedenza, è mostrato in figura 7.28. Si noti che l’equalizzatore al ricevito¡ ¢ re è implementato attraverso un sistema LTI con risposta in frequenza He ejω ¡ ¢ idealmente pari a H −1 ejω . In base alle proprietà della DTFT, se la stima dei coefficienti he (n) è condotta in modo ideale, allora la sequenza x b(n) in uscita dall’equalizzatore è pari a quella trasmessa x(n).

7.10.1 Filtraggio adattativo: l’algoritmo dei minimi quadrati Questo paragrafo presenta la tecnica dei minimi quadrati nel contesto del problema dell’equalizzazione di canale discusso precedentemente. Il blocco di equalizzazione è implementato come un sistema LTI di tipo FIR con risposta all’impulso he (n) di supporto pari a N coefficienti (figura 7.29). I coefficienti he (0), . . . , he (N −1) sono ricalcolati ogniqualvolta il comportamento del canale dovesse modificarsi: è questa la ragione per cui questa classe di filtri è detta adattativa. Il progetto di questi filtri richiede che venga specificato un criterio di ottimizzazione, in base al quale scegliere i coefficienti he (0), . . . , he (N − 1) che più si avvicinano al comportamento vero del canale. Il criterio più impiegato è detto dei minimi quadrati (indicato con LMS, acronimo di Least Minimum Squares), in quanto ha l’obiettivo di minimizzare una funzione di costo quadratica che possiede un solo minimo globale, quello a cui corrispondono i coefficienti ottimi he (0), . . . , he (N − 1).

266

Capitolo 7

y(n)

z

h e (0)

-1

z

h e (1)

-1

z

h e (2 )

-1

h e ( N-1 ) ^ x(n)

sommatore

Figura 7.29 Schema pratico del sistema equalizzatore in un ricevitore di dati numerici. L’equalizzatore è modellato attraverso un filtro FIR con N prese.

Si tratta, dunque, di analizzare il criterio LMS. Si supponga di modellare l’equalizzatore con un filtro FIR con coefficienti he (0), . . . , he (N − 1), secondo quanto mostrato nella figura 7.29. Sia y(n) la sequenza in ingresso al filtro. Sotto le ipotesi che l’equalizzatore si comporti come un sistema LTI, allora la sequenza in uscita vale: N −1 X he (k)y(n − k), ∀n ∈ [0, M ]. x b(n) = k=0

Impiegando la sequenza x(n) trasmessa, che per ipotesi è nota sia al ricevitore, sia al trasmettitore, in ricezione si crea la sequenza errore e(n) = x(n) − x b(n), ∀n ∈ [0, M ]. Il criterio LMS consiste nello scegliere i coefficienti he (k), ∀k ∈ [0, N − 1], in modo tale da minimizzare la somma degli errori quadratici e2 (n), ∀n ∈ [0, M ]. In sostanza, si crea una funzione di costo E definita come segue: E=

M X

2

e (n) =

n=0

M X

à x(n) −

n=0

N −1 X

!2 he (k)y(n − k)

.

k=0

Risolvendo il quadrato all’interno della sommatoria, si ottiene la seguente funzione di costo: P PN −1 P he (k)y(n − k)+ E= M x2 (n) − 2 M x(n) k=0 n=0 n=0 PM PN −1 PN −1 + n=0 k=0 j=0 he (k)y(n − k)he (j)y(n − j) Impiegando le due seguenti definizioni: Rx,y (k) =

M X

x(n)y(n − k), ∀k ∈ [0, N − 1]

n=0

e Ry,y (k) =

M X n=0

y(n)y(n − k), ∀k ∈ [0, N − 1]

Progetto di Filtri FIR

267

la funzione di costo può essere riscritta come segue: P P −1 E= M x2 (n) − 2 N n=0 k=0 he (k)Rx,y (k)+ PN −1 PN −1 + k=0 j=0 he (k)he (j)Ry,y (k − j). Si noti che la sequenza Rx,y (k) rappresenta la funzione di correlazione incrociata tra la sequenza di uscita desiderata, x(n), e la sequenza y(n) in ingresso all’equalizzatore, mentre Ry,y (k) è la funzione di autocorrelazione di y(n). Per costruzione, E è una funzione di costo quadratica dei coefficienti he (k), ∀k ∈ [0, N − 1], del filtro FIR. Il minimo di questa funzione corrisponde al vettore dei coefficienti ottimi he (k), ∀k ∈ [0, N − 1], per cui l’errore quadratico e(n) = x(n) − x b(n) risulta minimo. Il punto di ottimo viene ottenuto derivando la funzione E rispetto ai coefficienti he (k), ∀k ∈ [0, N − 1], del filtro equalizzatore. Sotto queste ipotesi, si ottiene un sistema lineare di M equazioni in N incognite. Scegliendo M = N , la soluzione del sistema fornisce i coefficienti cercati he (k), ∀k ∈ [0, N − 1]. In formule: ∂E , ∀p ∈ [0, N − 1]. ∂he (p) Effettuando le derivate parziali, si ottiene il seguente sistema di equazioni N −1 X

he (p)Rx,x (p − k) = Rx,y (k), ∀k ∈ [0, N − 1],

p=0

la cui soluzione è l’insieme dei coefficienti ottimi he (p), ∀p ∈ [0, N − 1]. Un metodo alternativo per trovare la soluzione ottima, consiste nel ricorrere ad un approccio iterativo. In sostanza, si parte da un insieme di coefficienti preliminari he,0 (p), ∀p ∈ [0, N − 1]; ad esempio i coefficienti tutti nulli. Dopodiché, ogniqualvolta un nuovo termine y(n) entra nel filtro adattativo, prima si valuta il coefficiente della sequenza x b(n) in uscita, poi si crea il segnale errore e(n) = x(n)−b x(n), e, infine, si aggiornano i coefficienti del filtro con la seguente relazione ricorsiva: he,i (n) = he,i−1 (n) + ∆ · e(k) · y(k − n), ∀n ∈ [0, N − 1], ∀i = 1, 2, . . . dove ∆ è un parametro da cui dipende la velocità di convergenza dell’algoritmo, y(k − n) è il campione del segnale in ingresso all’equalizzatore presente nell’ennesimo ritardatore dell’equalizzatore al tempo discreto k, e i è l’indice dell’iterazione corrente. In generale, se ∆ cresce, l’algoritmo tende a convergere più rapidamente, anche se potrebbe diventare instabile. Considerazioni pratiche circa la stabilità dell’algoritmo suggeriscono che il parametro ∆ debba essere contenuto nell’intervallo: 0 0 z sin(x) 1−2z cos(x)+z 2 , |z| < 1 z cos(x)−z 2 1−2z cos(x)+z 2 , |z| < 1 1 2 (π − z) , 0 < z < 2π 1 2 z (π − z) , 0 < z < 2π n(n+1) 2 2

n

n(n+1)(2n+1) 6 1 n(4n2 − 1) 3 h i2 n(n+1) 2 2 2

n (2n − 1) π2 6 π2 12 π2 8 π4 90 π4 96

274

Capitolo 8

Tabella 8.5 Tavola delle espansioni in serie. P+∞

k α2k+1 k=0 (−1) (2k+1)! P+∞ α2k sin2 (α) = k=1 (−1)k+1 22k−1 (2k)! P+∞ 2k+1 −3 2k+1 sin3 (α) = 14 k=1 (−1)k+1 3(2k+1)! α P+∞ 2k k α cos (α) = k=0 (−1) (2k)! P+∞ α2k cos2 (α) = 1 − k=1 (−1)k+1 22k−1 (2k)! P+∞ 2k +3 2k cos3 (α) = 14 k=0 (−1)k 3(2k)! α ³ ´ 2k−1 P+∞ 1 ln(α) = 2 k=1 2k−1 α−1 , α>0 α+1 k P+∞ k+1 (α−1) ln(α) = k=1 (−1) , 0
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF