8 filtri analogici - LAR-DEIS Home Page · Filtro di Chebyshev inverso • La logica è la stessa...

Post on 14-Oct-2018

218 views 0 download

Transcript of 8 filtri analogici - LAR-DEIS Home Page · Filtro di Chebyshev inverso • La logica è la stessa...

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO

Filtri analogiciFiltri analogici

Prof. Carlo RossiDEIS - Università di Bologna

Tel: 051 2093020email: crossi@deis.unibo.it

2

Filtri analogici

Il filtro passa basso ideale

• Si vuole ricostruire un segnale utile che ha sovrapposto un segnale di rumore con spettro di frequenza separato (maggiore)– Se si vuole ottenere il segnale di uscita della stessa forma del

segnale di ingresso, le uniche operazioni ammesse sono un guadagno ed un ritardo

– Alle frequenze del segnale utile ciò corrisponde ad una funzione di trasferimento

a cui corrisponde

( ) ( )δ−= txkty

( ) ( ) ( ) δωδω ωωω jj ekjHekjXjY −− ==

( ) ( ) ( ) δωτδωωω ==−= gbka log20

( )ωjH

k

ωc ω

( )ωbωc δ

ωc ω

3

Filtri analogici

Approssimazioni di un filtro ideale

• Il filtro ideale non può essere realizzato con costo finito• Si ricercano delle FdT razionali che approssimano la risposta

frequenziale ideale: aumentando l’ordine del filtro l’approssimazione può essere sempre migliorata

• L’approssimazione si ricerca nella forma

dove N rappresenta l’ordine del filtro e la funzione approssimante AN ha la proprietà di assumere valori bassi tra 0 e la frequenza di cutoff e di aumentare rapidamente al di sopra

( ) ( )22

11

ωω

NAjH

+=

4

Filtri analogici

Approssimazioni di un filtro ideale

• Il comportamento desiderato per l’ampiezza della risposta armonica del filtro è solitamente specificata in termini di tolleranze

( )ωjH

1

ωp ωωs

vp

vs

banda passante

stop-band

deviazione inbanda passante

gaudagno ammessoin stop-band

banda di transizione

5

Filtri analogici

Filtro di Butterworth

• In questo tipo di filtro, la funzione approssimante è scelta come

• Le derivate dell’ampiezza della risposta armonica sono nulle nell’origine– filtro massimamente piatto

• Tutti gli zeri sono all’infinito– ampiezza decrescente e convergente a zero all’infinito

• Si utilizza per il progetto la pulsazione normalizzata

( ) ( ) ( )( ) Nc

NcN jHA 2

2221

1ωω

ωωωω+

==

( ) NcjH 2

2

11Ω+

=Ω=Ωωω

6

Filtri analogici

Caratteristica di ampiezza del filtro

( )ωjH

1

1 Ω

vp

vs2

7

Filtri analogici

FdT del filtro

• Per determinare la funzione di trasferimento, si introduce la variabile di Laplace normalizzata S=jΩ. Si ottiene

• Gli zeri del polinomio al denominatore sono sul cerchio unitarioe sono dati da

di cui N a parte reale positiva e N negativa. Raggruppandoli si ha

( )( )

( )( )NN

NNN SS

SH1

11111

222

−+−=

−+=

( ) 1202/12 −≤≤= +∞ NvejS Nvjv

π

( ) ( ) ( ) ( )

( ) ( ) ( )

( ) ( )22

2

1

1

Ω=Ω

−=−

−=

jHjH

SHSH

SHSHSH

n

npN

pnN

8

Filtri analogici

FdT del filtro

• La funzione di trasferimento (stabile) del filtro è dunque data da

Esistono tabelle per i coefficienti A1i e A2i.

( )( )( ) ( )

( )SASASASASA

SH

SSSSSSSH

kkkn

Nn

)1(1221

22111

21

11

11

11

1

+

∞∞∞

+++++=

−−−=

…ordine dispari

Poli del filtro di butterworth

9

Filtri analogici

Sintesi del filtro

• Per determinare l’ordine del filtro e la pulsazione di cutoff a partire dai parametri di tolleranza, si impone il passaggio per i due punti (ωp,vp) e (ωs,vs). Si ottiene

che va arrotondato all’intero superiore.• La pulsazione di cutoff si può determinare ancora imponendo il

passaggio per il punto (ωp,vp).

In questo caso il comportamento in stop-band sarà leggermente migliore

Npppc vv121

−= ωω

( )( )ps

ps vvN

ωωlog1111log 22 −−

=

10

Filtri analogici

Sintesi con Matlab

• In Matlab (Signal Processing Toolbox) esistono le routine per ilcalcolo del filtro% sintesi del filtro di Butterworth

% parametri di tolleranza; frequenze normalizzate tra % 0 ed 1. Rp ed Rs attenuazione in dB (massima in % banda passante e minima in stop-band)Wp=0.8;Ws=0.9;Rp=5;Rs=20;

% calcolo dell'ordine e della pulsazione di cutoff[N,Wc]=buttord(Wp,Ws,Rp,Rs,'s')

% sintesi del filtro[B,A]=butter(N,Wc,'s');filter = tf(B,A);

11

Filtri analogici

Sintesi con Matlab

12

Filtri analogici

Sintesi con Matlab

13

Filtri analogici

Sintesi con Matlab

14

Filtri analogici

Filtro di Chebyshev

• In questo tipo di filtro, la funzione approssimante è scelta come

• Utilizzo dei polinomi di Chebishev del primo tipo di ordine n

Utile la formula ricorrente

( ) ( ) ( )( )Ω+

=ΩΩ=Ω 2222221

1

NNN

TjHTA

εε

( ) ( )( )

( )2

11

1coshcosh10arccoscos

22

1

nn

n

n

T

nn

T

−Ω+Ω+

−Ω+Ω

>ΩΩ≤Ω≤Ω

( ) ( ) ( )Ω−ΩΩ=Ω −+ 11 2 nnn TTT

15

Filtri analogici

Polinomi di Chebyshev

16

Filtri analogici

Polinomi di Chebyshev

17

Filtri analogici

Polinomi di Chebyshev

18

Filtri analogici

Polinomi di Chebyshev

19

Filtri analogici

Ampiezza della risposta armonica

ε = 0.5n = 6

20

Filtri analogici

Caratteristiche dei polinomi

• Oscillazione tra -1 e +1 nell’intervallo [0,1]– numero di massimi e minimi proporzionale all’ordine del polinomio– per Ω > 1 funzione crescente tendente all’infinito– la pendenza della curva aumenta all’aumentare dell’ordine

• Il parametro ε influenza l’ampiezza della oscillazione in banda passante– all’aumentare di ε aumenta il ripple in banda e la pendenza nella

banda di transizione• Chebyshev rispetto a Butterworth rilassa la richiesta di in banda

passante per aumentare la pendenza nella banda di transizione– caratteristica min-max: minimizza il massimo del ripple in banda

passante; ciò porta a massimi tutti uguali– a parità di ordine del filtro e di parametri di tolleranza, si ottengono

transizioni più ripide rispetto a Butterworth

21

Filtri analogici

FdT del filtro

• Analogamente al caso del filtro di Butterworth, per determinare i poli del filtro si pone

e si ricercano gli zeri del polinomio a denominatore

Gli zeri del polinomio sono 2N e sono disposti su una ellisse nel piano complesso.

( )( )SjT

SHN −+

= 222

11

ε

( )( ) εε

jSjTSjT

N

N±=−

=−+ 01 22

22

Filtri analogici

FdT del filtro

• Similmente al caso di Butterworth, raggruppando gli zeri a partereale negativa si ottiene la funzione di trasferimento nella forma

con il fattore V che normalizza il guadagno dato da

( )( )( ) ( )

( )SASASASASA

VSH

SSSSSSSH

kkkn

Nn

)1(1221

22111

21

11

11

11

1

+

∞∞∞

+++++=

−−−=

+=

pari11dispari1

2 NN

23

Filtri analogici

Sintesi del filtro

• Le caratteristiche del filtro sono determinate da tre parametri: la pulsazione di cutoff, l’ordine del filtro ed il parametro ε– la frequenza di normalizzazione è presa uguale alla frequenza della

banda passante: ciò garantisce il passaggio per il punto (ωp,vp)– l’ordine del filtro si otiene imponendo il passaggio per il punto (ωs,vs)

ed arrotondando all’intero superiore– il parametro ε si ricava imponendo l’attenuazione voluta in banda

passante tenendo conto dell’arrotondamento

( )( )pss

sp

p

Nv

vv

v

ωωεε 1

22

coshcosh

11−

−=

−=

( )p

vvN

s

ps

ωω1

221

cosh

1111cosh

−−

=

Ripple esatto in banda

Migliore in stop-band

Ripple minore in banda

Passaggio per (ωs,vs)

24

Filtri analogici

Sintesi con Matlab

• In Matlab (Signal Processing Toolbox) esistono le routine per ilcalcolo del filtro

% sintesi del filtro di Chebyshev

% parametri di tolleranza frequenze normalizzate% tra 0 ed 1. Rp ed Rs attenuazione in dB (massima in % banda passante e minima in stop-band)Wp=0.85;Ws=0.9;Rp=3;Rs=20;

% calcolo dell'ordine e della pulsazione di cutoff[N,Wc]=cheb1ord(Wp,Ws,Rp,Rs,'s')

% sintesi del filtro[B,A]=cheby1(N,Rp,Wc,'s');filter = tf(B,A);

25

Filtri analogici

Sintesi con Matlab

26

Filtri analogici

Sintesi con Matlab

Attenzione al guadagno in continuaInserire il fattore di normalizzazione V

27

Filtri analogici

Sintesi con Matlab

28

Filtri analogici

Filtro di Chebyshev inverso

• La logica è la stessa del filtro diretto, ma in questo caso si vuole un comportamento monotono in banda passante accettando ripple nella banda di attenuazione

• Si ottiene invertendo l’asse della frequenza, che porta ad una risposta passa-alto, e successivamente sottraendo il risultato dall’unità, che riporta il comportamento passa basso

( )( )

( )( )

( )( )

( )( )

( )Ω+

Ω=Ω⇒

Ω+−=Ω

⇒Ω+

=Ω⇒Ω+

11

1

1111

111

11

22

222

222

222

222

N

N

N

NN

T

TjH

TjH

TjH

TjH

ε

ε

ε

εε

29

Filtri analogici

Ampiezza della risposta armonica

ε = 0.1n = 6

30

Filtri analogici

Ampiezza della risposta armonica

• Si nota come la convergenza a zero non è più monotona– presenza di zeri nella FdT del filtro– il numero M degli zeri è sempre pari ed uguale rispettivamente al

numero dei poli per N pari ed a N - 1 per N dispari

– i poli del filtro inverso sono i reciproci del corrispondente filtro diretto

( )[ ] 12

02/12cos

10 −≤≤

+±=

MN

jS µµπµ

31

Filtri analogici

FdT del filtro

• La funzione di trasferimento del filtro è data da

( ) ( )( ) ( )( )( ) ( )

( )SASASA

SB

SASA

SBSH

SSSSSSSSSSSSSH

kkk

kn

NM

n

)1(1221

22

22111

221

2100201

11

1

1

11

+

∞∞∞

+++

+

++

+=

−−−−−−

=

……

Poli su una ellisseZeri sull’asse immaginario

32

Filtri analogici

Sintesi del filtro

• I parametri di progetto hanno un significato diverso per il filtro inverso– la frequenza di normalizzazione è presa uguale alla frequenza della

stop-band: ciò garantisce il passaggio per il punto (ωs,vs)– l’ordine del filtro rimane inalterato

con arrotondando all’intero superiore– il parametro ε è legato al guadagno in stop-band

– per la presenza dell’arrotondamento, il comportamento in banda èleggermente migliore

21 s

s

v

v

−=ε

( )p

vvN

s

ps

ωω1

221

cosh

1111cosh

−−

=

33

Filtri analogici

Sintesi con Matlab

• In Matlab (Signal Processing Toolbox) esistono le routine per ilcalcolo del filtro inverso

% sintesi del filtro di Chebyshev inverso

% parametri di tolleranza frequenze normalizzate& tra 0 ed 1. Rp ed Rs attenuazione in dB (massima in % banda passante e minima in stop-band)Wp=0.85;Ws=0.9;Rp=3;Rs=20;

% calcolo dell'ordine e della pulsazione di cutoff[N,Wc]=cheb2ord(Wp,Ws,Rp,Rs,'s')

% sintesi del filtro[B,A]=cheby2(N,Rs,Wc,'s');filter = tf(B,A);

34

Filtri analogici

Sintesi con Matlab

35

Filtri analogici

Sintesi con Matlab

Risposta discontinua pergrado relativo nullo

36

Filtri analogici

Sintesi con Matlab

37

Filtri analogici

Confronto

• Per un dato schema di tolleranza, i filtri diretto ed inverso richiedono lo stesso ordine

• Il filtro inverso è più complesso per la presenza degli zeri• Si ha comportamento monotono in banda passante• Il ritardo di gruppo ha un comportamento migliore

38

Filtri analogici

Altri filtri

• Si cita l’esistenza di altri due tipi di filtri analogici• Filtri ellittici

– a parità di ordine aumenta ancora la prendenza nella banda di transizione

– si ottiene ammettendo ripple sia in banda passante che in stop-band

• Filtri di Bessel– si basano sul principio di ottenere un ritardo di gruppo

massimamente piatto in banda passante– pendenza nella banda di transizione bassa in confronto agli altri

filtri– idonei per ritardare segnali

• Entrambi poco utilizzati in applicazioni di controllo

39

Filtri analogici

Trasformazioni frequenziali

• Si sono considerati solo filtri passa basso• In effetti, il progetto di tutti gli altri tipi di filtro può essere riportato

ad un progetto per un passa basso attraverso opportune trasformazioni frequenziali

• La sequenza è– specifiche per il filtro– trasformazione in specifiche equivalenti per il passa basso– sintesi del passa basso– trasformazione inversa per ottenere il fitro voluto

• La procedura utilizzata fornisce specifiche equivalenti per le frequenze normalizzate. Per ottenere il filtro originale, è necessario determinare anche come la frequenza di normalizzazione è determinata dalla trasformazione

40

Filtri analogici

Trasformazione passa-basso passa-alto

( )ωjH

1

ω1 ωω2

vp

vs

Schema di tolleranzaper un filtro passa-alto

12 ωωωω =ps Trasformazione frequenziale

SS 1→ Trasformazione inversa normalizzata

41

Filtri analogici

Trasformazione passa-basso passa-alto

• Per ottenere il filtro finale, è necessario tornare alle frequenze non normalizzate– Per i filtri di Chebyshev, il prototipo passa basso è normalizzato

rispetto alla pulsazione di banda passante ωp: tale pulsazione corrisponde alla pulsazione di banda passante del filtro passa alto ω2

– Per i filtri di Butterworth, la normalizzazione è fatta rispetto alla pulsazione di cutoff a 3dB, che rimane la stessa

• Nel caso generale, basta imporre che la pulsazione a cui si vuole imporre il guadagno nel filtro passa corrisponda alla pulsazione a cui si è imposto nel prototipo passa basso

42

Filtri analogici

Trasformazione passa-basso passa-banda

Schema di tolleranzaper un filtro passa-banda

( )ωjH

1

ω1 ωω2

vp

vsω3 ω4

( ) ( )2314 ωωωωωω −−=ps Trasformazione frequenziale• Si noti la trasformazione adottata porta al disegno di filtri simmetrici con

ampiezza delle bande di transizione ugale. Nello schema di tolleranza, le quattro pulsazioni non possono essere indipendenti, ma devonosoddisfare

3241 ωωωω =

43

Filtri analogici

( ) BSSS /1+→

Trasformazione passa-basso passa-banda

• La trasformazione inversa normalizzata risulta

– B è l’ampiezza della banda passante normalizzata rispetto alla frequenza di centro banda

• La trasformazione inversa raddoppia l’ordine del filtro

( )

3241

23 /ωωωωω

ωωω

==

−=

m

mB

44

Filtri analogici

Trasformazione passa-basso elimina-banda

Schema di tolleranzaper un filtro elimina-banda

( )ωjH

1

ω1 ωω2

vp

vsω3 ω4

• Del tutto analogo al caso passa banda. La trasformazione frequenziale è la stessa, mentre l’altra è invertita

( ) ( )2314 ωωωωωω −−=ps ( )SSBS 1/ +→

45

Filtri analogici

( ) BSSS /1+→

Trasformazione passa-basso passa-banda

• La trasformazione inversa normalizzata risulta

– B è l’ampiezza della banda passante normalizzata rispetto alla frequenza di centro banda

• La trasformazione inversa raddoppia l’ordine del filtro

( )

3241

23 /ωωωωω

ωωω

==

−=

m

mB

46

Filtri analogici

Sintesi con Matlab

• Le routine viste precedentemente in realtà calcolano direttamente il filtro a partire dalle pulsazioni assolute.– nel caso di filtri passa o elimina banda, le pulsazioni di banda sono

in realtà un vettore con gli estremi della banda relativa– nel caso di filtro passa alto va specificata l’opzione ’high'– nel caso di filtro elimina banda va specificata l’ozione 'stop'

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO

Filtri analogici Filtri analogici -- finefine

Prof. Carlo RossiDEIS - Università di Bologna

Tel: 051 2093020email: crossi@deis.unibo.it