35
1 Synthèse de filtres numériques B. David SI 240, TSMECS Octobre 2006 Généralités T. Bilinéaire RIF à linéaire

Synthèse de filtres numériques

  • Upload
    errin

  • View
    91

  • Download
    4

Embed Size (px)

DESCRIPTION

Synthèse de filtres numériques. Généralités T. Bilinéaire RIF à  linéaire. B. David SI 240, TSMECS Octobre 2006. Généralités. Critères de choix. RIF ou RII ? RII : + : complexité, imitation des filtres analogiques - PowerPoint PPT Presentation

Citation preview

Page 1: Synthèse de filtres numériques

1

Synthèse de filtres numériques

B. DavidSI 240, TSMECSOctobre 2006

B. DavidSI 240, TSMECSOctobre 2006

GénéralitésT. BilinéaireRIF à linéaire

GénéralitésT. BilinéaireRIF à linéaire

Page 2: Synthèse de filtres numériques

2Oct. 2006 SI240-TSMECS

Critères de choix

RIF ou RII ?

RII : + : complexité, imitation des filtres analogiques - : pb d’arrondis de calcul cumulatifs, sensibilité à la représentation finie

des coefficients, phase non linéaire

RIF : + : phase exactement linéaire possible, garantie de stabilité, non

cumulation des erreurs de calcul (non récursifs) - : complexité (par ex. pour traduire des résonances ou pour assurer une

bonne sélectivité)

RIF ou RII ?

RII : + : complexité, imitation des filtres analogiques - : pb d’arrondis de calcul cumulatifs, sensibilité à la représentation finie

des coefficients, phase non linéaire

RIF : + : phase exactement linéaire possible, garantie de stabilité, non

cumulation des erreurs de calcul (non récursifs) - : complexité (par ex. pour traduire des résonances ou pour assurer une

bonne sélectivité)

Généralités

Page 3: Synthèse de filtres numériques

3Oct. 2006 SI240-TSMECS

Spécifications d’un filtre numérique

Généralités

Page 4: Synthèse de filtres numériques

4Oct. 2006 SI240-TSMECS

construction empirique d’un filtre passe-bas IIR

on suppose

pour construire la bande atténuée, on place des zéros en 0.1, 0.2...

0.5.

on suppose

pour construire la bande atténuée, on place des zéros en 0.1, 0.2...

0.5.

Généralités

0 0.1 0.2 0.3 0.4 0.5-200

-100

0

Frequency (Hz)

Ph

ase

(d

eg

ree

s) 0 0.1 0.2 0.3 0.4 0.5

-40

-20

0

20

Ma

gn

itu

de

(d

B)

Code

z = exp(j*2*pi*[0.1 .2 .3 0.4 0.5]);z = [z conj(z)];N = poly(z);

freqz(N,1,4096,1)

Page 5: Synthèse de filtres numériques

5Oct. 2006 SI240-TSMECS

construction empirique d’un filtre passe-bas IIR

le filtre n’est pas « plat » dans sa bande passante

on cherche à compenser par le placement d’un pole tel que

le filtre n’est pas « plat » dans sa bande passante

on cherche à compenser par le placement d’un pole tel que

Généralités

0 0.1 0.2 0.3 0.4 0.5-200

-100

0

100

Frequency (Hz)

Ph

ase

(d

eg

ree

s)

0 0.1 0.2 0.3 0.4 0.5-20

0

20

40

Ma

gn

itu

de

(d

B)

Dénominateur seul

Page 6: Synthèse de filtres numériques

6Oct. 2006 SI240-TSMECS

construction empirique d’un filtre passe-bas IIR

Généralités

0 0.1 0.2 0.3 0.4 0.5-300

-200

-100

0

Frequency (Hz)

Ph

ase

(d

eg

ree

s)

0 0.1 0.2 0.3 0.4 0.5

-40

-20

0

20

Ma

gn

itud

e (

dB

)

Page 7: Synthèse de filtres numériques

7Oct. 2006 SI240-TSMECS

diagramme poles-zeros typique

Généralités > construction empirique IIR

Bande de transition

o

oo

o

o

oo

o

Page 8: Synthèse de filtres numériques

8Oct. 2006 SI240-TSMECS

Transformation bilinéaire

Définition et propriétés

Laplace Ha(p) fonction de transfert en H(z) en posant

Transforme le demi-plan gauche intérieur du C1 (conserve la stabilité)

la droite imaginaire C1

Définition et propriétés

Laplace Ha(p) fonction de transfert en H(z) en posant

Transforme le demi-plan gauche intérieur du C1 (conserve la stabilité)

la droite imaginaire C1

Synthèse des RII par T.B.

Page 9: Synthèse de filtres numériques

9Oct. 2006 SI240-TSMECS

Transformation bilinéaire

Synthèse des RII par T.B.

Plan P

Plan Z

Page 10: Synthèse de filtres numériques

10Oct. 2006 SI240-TSMECS

Exemple du passe bas du premier ordre

fonction de transfert du type

soit c = 1/.

Ex: Fe = 8000 Hz, fc = 1000 Hz conduit à choisir la fréquence de coupure du filtre numérique !

on peut par exemple prendre c = 1

conduit à

calcul final

fonction de transfert du type

soit c = 1/.

Ex: Fe = 8000 Hz, fc = 1000 Hz conduit à choisir la fréquence de coupure du filtre numérique !

on peut par exemple prendre c = 1

conduit à

calcul final

Synthèse des RII par T.B.

Page 11: Synthèse de filtres numériques

11Oct. 2006 SI240-TSMECS

Exemple du passe bas du premier ordre

Synthèse des RII par T.B.

Page 12: Synthèse de filtres numériques

12Oct. 2006 SI240-TSMECS

Exemple : maximalement plat en = 0

filtre de Butterworth

Réponse en fréquence

2N-1 dérivées nulles en 0 :

filtre de Butterworth

Réponse en fréquence

2N-1 dérivées nulles en 0 :

Synthèse des RII par T.B.

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-200

-150

-100

-50

0

Frequency (Hz)

Ph

ase

(d

eg

ree

s)

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-100

-80

-60

-40

-20

0M

ag

nitu

de

(d

B)

Page 13: Synthèse de filtres numériques

13Oct. 2006 SI240-TSMECS

Exemple : filtres à ondulations constante

Filtres elliptiques

forme particulière du gain faisant intervenir des fonctions elliptiques

condition sur les fréquences de transition : c A = 1

obtenue itérativement à partir des données initiales c et A

Filtres elliptiques

forme particulière du gain faisant intervenir des fonctions elliptiques

condition sur les fréquences de transition : c A = 1

obtenue itérativement à partir des données initiales c et A

Synthèse des RII par T.B.

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.50

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

fréquence

|H|

A

c Filtre elliptique d'ordre 4 (0.1, -20dB,

c=0.15)

Page 14: Synthèse de filtres numériques

14Oct. 2006 SI240-TSMECS

Synthèse des filtres à RIF

Filtres RIF à phase linéaire

intérêt majeur des RIF : peuvent avoir une phase exactement linéaire

Définition

propriété : si le support fréquentiel du signal d’entrée est dans la bande passante (avec HR()=c dans la BP), alors

où xa(t) est la reconstruction parfaite analogique à partir des échantillons x(n) à la cadence 1.

Filtres RIF à phase linéaire

intérêt majeur des RIF : peuvent avoir une phase exactement linéaire

Définition

propriété : si le support fréquentiel du signal d’entrée est dans la bande passante (avec HR()=c dans la BP), alors

où xa(t) est la reconstruction parfaite analogique à partir des échantillons x(n) à la cadence 1.

Synthèse des RIF

Page 15: Synthèse de filtres numériques

15Oct. 2006 SI240-TSMECS

Exemple IIR (phase NL) vs FIR à phase lin.

signal d’entrée : SF du carré à 3 composantes

IIR = filtre elliptique, RIF à phase lin. à ondulation constantes

même niveaux d’ondulation dans les bp et ba

même fréquences de coupure, > fréq. supérieure du spectre d’entrée

signal d’entrée : SF du carré à 3 composantes

IIR = filtre elliptique, RIF à phase lin. à ondulation constantes

même niveaux d’ondulation dans les bp et ba

même fréquences de coupure, > fréq. supérieure du spectre d’entrée

Synthèse des RIF > RIF à phase linéaire

0 50 100 150 200 250 300 350 400-1.5

-1

-0.5

0

0.5

1

1.5

temps discret

am

plit

ud

eentréey elliptiquey rif

Page 16: Synthèse de filtres numériques

16Oct. 2006 SI240-TSMECS

Symétrie de la réponse impulsionnelle

on considère un filtre h(n) causal, réèl, à phase linéaire. Montrer que est nécessairement un demi-entier, = p/2 p 2 Z

en déduire que HR() est au moins périodique de période 2.

Montrer que d = ej2 vaut 1 ou j.

On pose G(ej2) = HR(2). Etudier les symétries possibles pour g(n). Montrer la relation

interpréter le résultat en terme de suréchantillonnage. En déduire la valeur de p en fonction de la longueur N de la RI.

on considère un filtre h(n) causal, réèl, à phase linéaire. Montrer que est nécessairement un demi-entier, = p/2 p 2 Z

en déduire que HR() est au moins périodique de période 2.

Montrer que d = ej2 vaut 1 ou j.

On pose G(ej2) = HR(2). Etudier les symétries possibles pour g(n). Montrer la relation

interpréter le résultat en terme de suréchantillonnage. En déduire la valeur de p en fonction de la longueur N de la RI.

Synthèse des RIF > RIF à phase linéaire

Page 17: Synthèse de filtres numériques

17Oct. 2006 SI240-TSMECS

-15 -10 -5 0 5 10 150

0.5

1

g(n

)

type I

-15 -10 -5 0 5 10 150

0.5

1

g(n

-p)

-15 -10 -5 0 5 10 150

0.5

1

h(n

)

temps discret

Cas longueur impaire, entier

Synthèse des RIF > RIF à phase linéaire

si d=1 : G est paire, réelle g est paire et réelle. si d=1 : G est paire, réelle g est paire et réelle.

Page 18: Synthèse de filtres numériques

18Oct. 2006 SI240-TSMECS

Cas longueur paire, demi-entier

Synthèse des RIF > RIF à phase linéaire

si d=1 : G est paire, réelle g est paire et réelle. si d=1 : G est paire, réelle g est paire et réelle.

-15 -10 -5 0 5 10 150

0.5

1

g(n

)type II

-15 -10 -5 0 5 10 150

0.5

1

g(n

-p)

-15 -10 -5 0 5 10 150

0.5

1

h(n

)

temps discret

Page 19: Synthèse de filtres numériques

19Oct. 2006 SI240-TSMECS

Cas longueur impaire, entier

Synthèse des RIF > RIF à phase linéaire

si d=j : G est impaire, réelle g est impaire et imaginaire. si d=j : G est impaire, réelle g est impaire et imaginaire.

-15 -10 -5 0 5 10 15-1

0

1

d g

(n)

type III

-15 -10 -5 0 5 10 15-1

0

1

d g

(n-p

)

-15 -10 -5 0 5 10 15-1

0

1

h(n

)

temps discret

Page 20: Synthèse de filtres numériques

20Oct. 2006 SI240-TSMECS

Cas longueur paire, demi-entier

Synthèse des RIF > RIF à phase linéaire

si d=j : G est impaire, réelle g est impaire et imaginaire. si d=j : G est impaire, réelle g est impaire et imaginaire.

-15 -10 -5 0 5 10 15-1

0

1

d g

(n)

type IV

-15 -10 -5 0 5 10 15-1

0

1

d g

(n-p

)

-15 -10 -5 0 5 10 15-1

0

1

h(n

)

temps discret

Page 21: Synthèse de filtres numériques

21Oct. 2006 SI240-TSMECS

En résumé

Synthèse des RIF > RIF à phase linéaire

Type IN impair

symétrique-

Passe-basPasse-Haut

Passe-Bande

Type IIN pair

symétriqueH(-1) = 0

Passe-bas,Passe-bande

Type IIIN impairanti-sym.

H(0)=H(-1) = 0

Différentiateur,Transformateur

de Hilbert, Passe-bande

Type IVN pair

anti-sym.H(0) = 0

Différentiateur,Transformateur

de Hilbert,Passe Haut

Page 22: Synthèse de filtres numériques

22Oct. 2006 SI240-TSMECS

Filtres spéciaux

lié au facteur j dans la réponse en fréquence des types III et IV.

Différentiateur : réalise une approximation de l’opérateur différentiel en temps, dans le domaine fréquentiel :

Transformateur de Hilbert. Soit H la réponse en fréquence du filtre linéaire tel que

H: x(n) → x_h(n) H: cos(20 n) → sin(20 n), 8 0 2 [-0.5 0.5]

Déterminer la fonction H(ej2) pour 2 ]-0.5 0[ U ]0 0.5[. Préciser ensuite sa valeur aux points 0 et 0.5

En déduire l’intérêt présenté par les types III et IV pour réaliser le filtre H.

Signal analytique. Soit le filtre H_a: x(n) → x_a(n) = x(n)+j x_h(n). x_a(n) est le signal analytique associé au signal réel x(n).

lié au facteur j dans la réponse en fréquence des types III et IV.

Différentiateur : réalise une approximation de l’opérateur différentiel en temps, dans le domaine fréquentiel :

Transformateur de Hilbert. Soit H la réponse en fréquence du filtre linéaire tel que

H: x(n) → x_h(n) H: cos(20 n) → sin(20 n), 8 0 2 [-0.5 0.5]

Déterminer la fonction H(ej2) pour 2 ]-0.5 0[ U ]0 0.5[. Préciser ensuite sa valeur aux points 0 et 0.5

En déduire l’intérêt présenté par les types III et IV pour réaliser le filtre H.

Signal analytique. Soit le filtre H_a: x(n) → x_a(n) = x(n)+j x_h(n). x_a(n) est le signal analytique associé au signal réel x(n).

Synthèse des RIF > RIF à phase linéaire

Page 23: Synthèse de filtres numériques

23Oct. 2006 SI240-TSMECS

Différentiateur : exemple

Synthèse des RIF > RIF à phase linéaire > filtres spéciaux

h = remez(11,[0 0.49]*2,[0 2*pi*.49],'d');

0 20 40 60 80 100 120 140-0.5

0

0.5

n

xy dx/dt

0 0.1 0.2 0.3 0.40

1

2

3

|H|

0 0.1 0.2 0.3 0.4-30

-20

-10

0

10

H

Page 24: Synthèse de filtres numériques

24Oct. 2006 SI240-TSMECS

Transformateur de Hilbert : exemple

Synthèse des RIF > RIF à phase linéaire > filtres spéciaux

h = remez(60,2*[.01 .25 .3 .5],[1 1 0 0],[1 10],'h');

0 20 40 60 80 100 120-2

-1

0

1

2

n

x(n)=cos(20 n)

xh

0 0.1 0.2 0.3 0.4-100

-80

-60

-40

-20

0

20

fréquence réduite

|H| dB

0 0.1 0.2 0.3 0.4-60

-40

-20

0

H

Page 25: Synthèse de filtres numériques

25Oct. 2006 SI240-TSMECS

Synthèse : méthodes pour les RIF

méthode de la fenêtre : permet de comprendre le compromis à atteindre entre le niveau d’ondulation et la largeur de transition

méthode d’optimisation sous contrainte, notion de « filtre propre »

méthode d’optimisation par minimisation de la norme L1 d’une fonction d’erreur pondérée.

méthode de la fenêtre : permet de comprendre le compromis à atteindre entre le niveau d’ondulation et la largeur de transition

méthode d’optimisation sous contrainte, notion de « filtre propre »

méthode d’optimisation par minimisation de la norme L1 d’une fonction d’erreur pondérée.

Synthèse des RIF

Page 26: Synthèse de filtres numériques

26Oct. 2006 SI240-TSMECS

Synthèse à fenêtre

Algorithme simple : inversion de Hidéal

troncature symétrique multiplication par une fenêtre finie décalage pour rendre le filtre causal

Donne nécessairement type I ou III (N impair)

Exemple : soit Hi(ej2) ci-contre

calculer hi(n)

en déduire h(n) par troncaturerectangulaire de longueur 2P-1,P = 4.

Représenter H(ej2)

Algorithme simple : inversion de Hidéal

troncature symétrique multiplication par une fenêtre finie décalage pour rendre le filtre causal

Donne nécessairement type I ou III (N impair)

Exemple : soit Hi(ej2) ci-contre

calculer hi(n)

en déduire h(n) par troncaturerectangulaire de longueur 2P-1,P = 4.

Représenter H(ej2)

Synthèse des RIF > synthèse des RIF

Hi(ej2)

c 0.5

Page 27: Synthèse de filtres numériques

27Oct. 2006 SI240-TSMECS

Synthèse à fenêtre : Gibbs et transition

Synthèse des RIF > synthèse des RIF

Page 28: Synthèse de filtres numériques

28Oct. 2006 SI240-TSMECS

Optimisation de la synthèse à Fenêtre

Fenêtre paramétrable de Kaiser

qques pb liés à la méthode à fenêtre ajuster indépendamment le niveau d’ondulation en bande coupée et la

largeur de transition le niveau d’ondulation est le même en bande coupée et passante

fenêtre de Kaiser dépend d’un paramètre qui ajuste 2 en bande atténuée

on joue ensuite sur la longueur du filtre pour la bande de transition longueur N =2M+1, I0 : fonction de Bessel modifiée de 1ere espèce

Fenêtre paramétrable de Kaiser

qques pb liés à la méthode à fenêtre ajuster indépendamment le niveau d’ondulation en bande coupée et la

largeur de transition le niveau d’ondulation est le même en bande coupée et passante

fenêtre de Kaiser dépend d’un paramètre qui ajuste 2 en bande atténuée

on joue ensuite sur la longueur du filtre pour la bande de transition longueur N =2M+1, I0 : fonction de Bessel modifiée de 1ere espèce

Synthèse des RIF > synthèse des RIF

Page 29: Synthèse de filtres numériques

29Oct. 2006 SI240-TSMECS

Optimiser la fenêtre sous contrainte

Prolates sphéroïdes

on cherche à maximiser l’énergie en bande passante sous contrainte unitaire, i.e.

on cherche

sous contrainte

montrer que ce pb peut se ramener à la maximisation de la forme

quadratique

sous la contrainte hH h = 1, avec

Prolates sphéroïdes

on cherche à maximiser l’énergie en bande passante sous contrainte unitaire, i.e.

on cherche

sous contrainte

montrer que ce pb peut se ramener à la maximisation de la forme

quadratique

sous la contrainte hH h = 1, avec

Synthèse des RIF > synthèse des RIF

Page 30: Synthèse de filtres numériques

30Oct. 2006 SI240-TSMECS

Optimiser la fenêtre sous contrainte

Prolates sphéroïdes et filtres propres

terme général de R :

définie positive (Réelle symétrique)

algorithme de calcul 1. calcul de R 2. décomposition aux valeurs propres 3. h = vecteur propre unitaire associé à la plus grande valeur propre

extension : contrainte en minimisation d’erreur quadratique sur les différentes bandes → filtres propres.

Prolates sphéroïdes et filtres propres

terme général de R :

définie positive (Réelle symétrique)

algorithme de calcul 1. calcul de R 2. décomposition aux valeurs propres 3. h = vecteur propre unitaire associé à la plus grande valeur propre

extension : contrainte en minimisation d’erreur quadratique sur les différentes bandes → filtres propres.

Synthèse des RIF > synthèse des RIF

Page 31: Synthèse de filtres numériques

31Oct. 2006 SI240-TSMECS

Exemple

Synthèse des RIF > synthèse des RIF > optimisation sous contrainte

clear allnu0 = 0.05; % freq de coupureN = 33 ; % longueur du filtren = 0:N-1;

L1 = sincard(2*pi*nu0*n)R = nu0*toeplitz(L1); [V,lambda]=eig(R,'nobalance');lambda = diag(lambda);ind = find(lambda==max(lambda));

h = V(:,ind);

0 10 20 30 400

0.05

0.1

0.15

0.2

0.25

0.3

0.35

n

h(n

)

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-400

-300

-200

-100

0

100

Frequency (Hz)

Pha

se (

degr

ees)

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-100

-50

0

50

Frequency (Hz)

Mag

nitu

de (d

B)

Page 32: Synthèse de filtres numériques

32Oct. 2006 SI240-TSMECS

Méthodes itératives : principe

rappel : la forme de la rf =

on cherche à minimiser le maximum d’une erreur pondérée

soit

rappel : la forme de la rf =

on cherche à minimiser le maximum d’une erreur pondérée

soit

Synthèse des RIF > synthèse des RIF

Page 33: Synthèse de filtres numériques

33Oct. 2006 SI240-TSMECS

illustration de l’erreur pondérée (Chebychev)

Synthèse des RIF > synthèse des RIF > méthodes itératives

Page 34: Synthèse de filtres numériques

34Oct. 2006 SI240-TSMECS

algorithme d’échange (remez)

Sur un exemple de type I (N impair, symétrique)

Montrer que la réponse zéro-phase s’écrit sous la forme

On en déduit qu’on peut encore l’écrire sous la forme d’un

polynôme en c() = cos(2) soit :

qui admet une dérivée =0

en 0 et P-1 autres maxima

algorithme d’échange : 0: init : on réparti dans B les candidats au max en prenant les bords 1: a l’aide d’une interpolation, on calcule les coeffs du polynome 2: on recalcule les candidats comme les max du polynome 3: si non convergence de l’erreur, retour à 1:

Sur un exemple de type I (N impair, symétrique)

Montrer que la réponse zéro-phase s’écrit sous la forme

On en déduit qu’on peut encore l’écrire sous la forme d’un

polynôme en c() = cos(2) soit :

qui admet une dérivée =0

en 0 et P-1 autres maxima

algorithme d’échange : 0: init : on réparti dans B les candidats au max en prenant les bords 1: a l’aide d’une interpolation, on calcule les coeffs du polynome 2: on recalcule les candidats comme les max du polynome 3: si non convergence de l’erreur, retour à 1:

Synthèse des RIF > synthèse des RIF > méthodes itératives

Page 35: Synthèse de filtres numériques

35Oct. 2006 SI240-TSMECS

algorithme d’échange (remez)

Synthèse des RIF > synthèse des RIF > méthodes itératives