De la Théorie du Signal à la pratique du Traitement du …mailhes/documents/TNS_Mailhes.pdf · 2...

65
1 TNS 2En Corinne Mailhes dernière modification 2010 De la Théorie du Signal à la pratique du Traitement du Signal

Transcript of De la Théorie du Signal à la pratique du Traitement du …mailhes/documents/TNS_Mailhes.pdf · 2...

1TNS – 2En – Corinne Mailhes – dernière modification 2010

De la Théorie du Signalà la pratique du Traitement du Signal

2

I.Du TS au TNS

Bases du TS

Le Traitement Numérique du Signal démarre ici

TNS de base :

1. Comment calculer une Densité Spectrale de Puissance (DSP) ? (analyse)

2. Comment faire un filtre numérique ?

(traitement, élimination de composantes indésirables)

3

Transcrire numériquement la T.F. : intégrale continue sur R ???

Avec

signal connu sur horizon fini (durée L)

signal échantillonné : N échantillons espacés de Te (L=NTe)

Définition de la T.F.D. (Transformée de Fourier Discrète)

calcul pour les fréquences normalisées : f = k/N

Algorithme réversible : N points de signal, N points de fréquence

Relation T.F. / T.F.D. : seul pb vient de la troncature

Exemple sur un sinus de fréquence commensurable ou non avec Fe

~

f ~

f ~

f0 = k0/N ~

II. De la TF à la TFD

4

T.F.D. et T.F.D. inverse

http://asi.insa-rouen.fr/enseignement/siteUV/tds/cours7.pdf

5

D(f) : noyau de Dirichlet

Fréquences normalisées

N=46

0 0.5 1 1.5 2 2.5 3 3.5-50

-40

-30

-20

-10

0

10

20

30

40

50

La troncature liée à la fenêtre d’observation provoqueune convolution par le noyau de Dirichlet

6

Comparaison noyau de Dirichlet et sinus cardinal

Fréquences normalisées

ZOOM

0.34 0.5

1

-10.34 0.36 0.38 0.4 0.42 0.44 0.46 0.48 0.5

-1

-0.5

0

0.5

1

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

-10

0

10

20

30

40

50

7

III. Propriétés de la TFD Les mêmes

que celles

de la TF ?

P1 – Périodicité

P2 – Linéarité

P3 – Décalage temporel / fréquentiel

P4 – Symétrie hermitienne

P5 – Théorème de Parseval

P6 – Produit et convolution… circulaire !!!

convolution circulaire convolution linéaire

convolution circulaire = convolution linéaire entre

entre signaux prolongés périodiquement,

avec périodicité N

8

… 0 0 1 2 3 2 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …*

x(n)*y(n) = x(k) y(n-k) k

… 0 0 1 2 3 2 1 0 0 …0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

0

13

68

98

63

1

0

x(n) y(n) = x(k) y([n-k]mod N) k

… 0 0 1 2 3 2 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 2 3 2 1 0 0 …1 1 1 1 1 1 1 1 1 1 1 1 1 1…

… 1 1 1 1 1 1 1 1 1 1 1 1 1…… 1 1 1 1 1 1 1 1 1 1 1 1…

9

99

N=5

Mais on peut s’arranger

pour que

= *

9

… 0 0 1 2 3 2 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …

Au lieu de faire On prolonge x(n) et y(n) avec des zéros

Et on fait la convolution sur N=10 points

… 0 0 1 2 3 2 1 0 0 0 0 0 0 0 …0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0… 0

13

0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…

0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…

68

Moralité

TFD (x(n)) . TFD(y(n)) x(n) y(n)

TFD (x(n) 0…0) . TFD(y(n) 0….0) x(n)*y(n)

N zéros N zéros

10

Meilleure représentation spectrale

et convolution circulaire évitée :

le zero-paddingAvant T.F.D., signal « paddé » par 0

y(n)= x(n) pour n = 0,…,N-1

y(n)= 0 pour n = N,…,M.N-1

MN points en entrée de l ’algorithme

et donc MN points en sortie :

MN points de TF au lieu de N

la T.F.D. est calculée sur plus de points, mieux représentée

entre deux points du calcul sur N points, M-1 points supplémentaires0 1

f ~

N points

MN points

Ne change rien au pouvoir séparateur, permet seulement une

meilleure représentation… mais absolument nécessaire !!!

IV. Intérêt du zero-padding Lao-Tzeu l’a dit : il faut faire du zero-padding !

Toujours

11

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.450

0.5

1

1.5

2

2.5

3

3.5

416 points de signal, 16 points de TF

0 0.1 0.2 0.3 0.4 0.50

1

2

3

4

5

6

7

816 points de signal, 32 points de TF

0 0.1 0.2 0.3 0.4 0.50

2

4

6

8

1016 points de signal, 64 points de TF 16 points de signal, 1024 points de TF

0 0.1 0.2 0.3 0.4 0.50

2

4

6

8

10

ZERO PADDING POUR « VOIR » LE SINUS CARDINAL…

12

X[k]

n 0

(N/ 2) 1

x[2r]WN /2rk WN

k

n 0

(N/ 2) 1

x[2r 1]WN / 2rk

r=0 r=0

En 1967,

TFD de 8192 points :

30 min sans FFT

5 sec avec FFT !

V. De la TFD à la FFT (Fast Fourier Transform)

13

On continue…

14

Au final N log2(N) opérations élémentaires…

15

FFT Discrete Fourier transform.

FFT(X) is the discrete Fourier transform (DFT) of vector X. For

matrices, the FFT operation is applied to each column. For N-D

arrays, the FFT operation operates on the first non-singleton

dimension.

FFT(X,N) is the N-point FFT, padded with zeros if X has less

than N points and truncated if it has more.

IFFT Inverse discrete Fourier transform.

IFFT(X) is the inverse discrete Fourier transform of X.

IFFT(X,N) is the N-point inverse transform.

FFTSHIFT Shift zero-frequency component to center of spectrum.

For vectors, FFTSHIFT(X) swaps the left and right halves of

X. For matrices, FFTSHIFT(X) swaps the first and third

quadrants and the second and fourth quadrants. For N-D

arrays, FFTSHIFT(X) swaps "half-spaces" of X along each

dimension.

FFTSHIFT(X,DIM) applies the FFTSHIFT operation along the

dimension DIM.

FFTSHIFT is useful for visualizing the Fourier transform with

the zero-frequency component in the middle of the spectrum.

16

I.Problème de l’estimation spectrale

Rappels :

DSP : 2 définitions équivalentes si la fonction

d’autocorrélation décroît suffisamment.

1

2

Estimation de la DSP :

• méthodes non paramétriques, basées sur la TF et sur ces

deux définitions (corrélogramme et périodogramme)

• méthodes paramétriques

17

II. Méthodes du périodogramme et corrélogramme

1. Périodogramme

2. Corrélogramme

3. Propriétés

Corrélogramme avec estimateur biaisé de la corrélation = périodogramme

Biais convolutif avec noyau de Fejer

Variance pour un bruit blanc Gaussien

18

Noyau de Fejer

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.50

5

10

15

20

25

30

35

-0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

-50

-40

-30

-20

-10

0

10

20

N=32

~1/N

Fréquences

Fréquences

19

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

1

2

3

4

5

6

7

8

N = 30 points de signal, FFT sur 2048 points (zero-padding)

Analyse spectrale par périodogramme :problème de résolution spectrale (« smearing »)

Composition du signal : un sinus ?????

Fréquences

20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

2

4

6

8

10

12

14

16

Fréquences

N = 50 points de signal, FFT sur 2048 points (zero-padding)

Et non ! 2 sinus de fréquences très proches !!!

(1/50 de différence)

21

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

1

2

3

4

5

6

7

8

N = 30 points de signal, FFT sur 2048 points (zero-padding)

Composition du signal : un sinus ?????

Fréquences

Analyse spectrale par périodogramme :problème de « leakage » (fuite des lobes secondaires)

22

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-35

-30

-25

-20

-15

-10

-5

0

5

10

Fréquences

Et non ! 2 sinus d’amplitudes très différentes !!!

N = 30 points de signal, FFT sur 2048 points (zero-padding)

AFFICHAGE EN ECHELLE LOG

23

III. Méthodes de Blackman-Tuckeyet périodogramme modifié

Estimateur biaiséFenêtre de pondération

sur la corrélation

ou

sur le signal

Moyennage « local » pondéré du périodogramme

Lissage des variations importantes du périodogramme

Diminution de la résolution

Compromis à faire entre RESOLUTION et VARIANCE.

Blackman-Tuckey

Périodogramme modifié

24

0 0.1 0.2 0.3 0.4 0.510

-10

10-8

10-6

10-4

10-2

100

102

fréquences normalisées

rectangulaire

triangulaire

Effet des fenêtres

0 0.1 0.2 0.3 0.4 0.510

-12

10-10

10-8

10-6

10-4

10-2

100

102

fréquences normalisées

Hamming

Hanning

On the use of windows for

harmonic analysis

with the discrete Fourier transform

Harris, F.J.

Proceedings of the IEEE

Volume 66, Issue 1,

Jan. 1978 Page(s): 51 - 83

Effet spectral

des fenêtres

d’apodisation

Lancer window

25

http://opus.grenet.fr/dokeos/inpg/courses/ENSE3A24EMAAAL0/document/CoursAspect-Grandeurs_Spectrales.pdf?cidReq=ENSE3A24EMAAAL0

26

IV. Méthode de Bartlett

1.04 1.045 1.05 1.055 1.06 1.065 1.07

x 104

-3

-2

-1

0

1

2

M échant.

N échantillons

M échant. M échant. M échant.

2727

IV. Méthode de Welch

1.04 1.045 1.05 1.055 1.06 1.065 1.07

x 104

-3

-2

-1

0

1

2

M échant.

N échantillons

M échant.

M échant.

M échant.

M échant.

M échant.

Recouvrement possible des tranches

Introduction d’une fenêtre de pondération avant de faire le périodogramme

Sur chaque tranche

28

Taille des segments : 4096, recouvrement de 30%, 44 segments

Fenêtre de Hanning

Signal d’engrenage (EDF) Voir SPtool

29

Taille des segments : 16384, recouvrement de 30%, 10 segments

Fenêtre de Hanning

30

Taille des segments : 65536, 1 segment, fenêtre de Hanning

31

L’autre application des plus courantes en T.S.,

après l’analyse spectrale

Filtrage linéaire invariant dans le temps

Relations numériques inspirées de l’analogique

h(n)x(n) y(n)

y(n)= x(n) h(n) = h(k)x(n-k)

= x(k)h(n-k)

h(n) réponse impulsionnelle

H(f) = T.F.D. {h(n)} réponse fréquentielle

h(t)x(t) y(t)

y(t)= x(t) h(t) = h(u)x(t-u)du

= x(u)h(t-u)du

h(t) réponse impulsionnelle

H(f) = T.F. {h(t)} réponse fréquentielle

~

32

0 20 40 60 80 100-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

Te

L’échantillonnage idéal : x(t) x(nTe) n=0,…,N-1

xe(n) = x(nTe) (t-nTe)

L’échantillonnage idéal

provoque une périodisation

du spectre autour des multiples

de la fréquence d’échantillonnage

Fe=1/Te

Xe(f)=Fe X(f - nFe)

À temps continu :

Transformée de Laplace,

Transformée de Fourier

À temps discret :

Transformée en Z,

Transformée de Fourier Discrète

I. La transformée en Z: l’outil du filtrage numérique

33

Définition de la transformée en Z

{x(n)} X(z) = x(n) z-n

n = 0, 1,…,+ : TZ unilatérale

n = - ,…,-1,0,1,…,+ : TZ bilatérale

Les relations entre ces transformées

Laplace : X(p) = x(t) e–pt dt

Fourier : X(f) = x(t) e–i2 ft dt

z=e i2 f TZ=TFD~

p = i2 f TL = TF

T.Z : X(z) = x(n) z–n

TFD : X(k) = x(n) e–i2 kn/N

n=0

N-1

34

Propriétés de la Transformée en Z

x(n) y(n) X(z).Y(z)

x(n-k) X(z) z-k z-1 retard d’échantillonnage

Dans un filtre linéaire :

y(n)= x(n) h(n) Y(z) = X(z).H(z)

h(t)(t) h(t)

Réponse impulsionnelle d’un filtre :

Impulsion

De Dirac

h(n)(n) h(n)

Symbole

De Kronecker

35

Par analogie avec filtres analogiques, réponse fréquentielle rationnelle

H(z) = a0=1 h(n) = T.Z.-1{H(z)}bk z

-k

ak z-k

k=0

k=0

M

M

y(n) = - ak y(n-k) + bk x(n-k)

M M

k=1 k=0

Des filtres analogiques aux filtres numériques

Remarque : on note « M » dans les deux sommes par simplicité.

Nombre de coefficients dans les deux sommes pas forcément égaux.

| H(f) |² = H(z) H(z-1 ) | z = e i2 fTe

Suppose coefs réels

36

Spécifications des filtres numériques

37

Spécifications des filtres numériques

38

Cas particulier de filtres non récursifs :

y(n) = bk x(n-k)

d’où

H(z) = bk z-k h(n) = bn pour n=0,…,M

filtre à Réponse Impulsionnelle Finie (R.I.F.)

tout zéro, pas de pb de stabilité, faible sensibilité numérique

non récursif

à mémoire finie, défini par M+1 coefficients

phase linéaire possible

k=0

k=0

M

M

RIFx(n) y(n)

y(n) = - ak y(n-k) + bk x(n-k)

M M

k=1 k=0

II. Filtres RIF (FIR) : 1) Définition

39

H(f) = bk e-i2 kfTe = R(f) e-i (f)

k=0

M

Temps de Propagation de Groupe (TPG) = évaluation du temps

de propagation des paquets d’onde dans le système linéaire

(f) = - 1/(2 ) ’(f)

Ex : une sinusoïde de fréquence f0 retardée de (f0) en sortie du filtre.

Phase linéaire = TPG constant (f) = 0 + 2 f

• si 0 = 0, on obtient un RIF à coefficients réels et symétriques

• si 0 = /2, on obtient un RIF à coefficients réels et antisymétriques

• sinon, RIF à coefficients complexes

h(n) h(n)

II. Filtres RIF (FIR) : 2) Phase linéaire

40

H(f)

f

0 0.5

n

H(f)

f

0 0.5M+1 coefficients

II. Filtres RIF (FIR) : 3) Synthèse

41

À partir d’un filtre idéal et troncature de la réponse impulsionnelle

hRIF(n)=hI(n).w(n) soit HRIF(f)=HI(f) W(f)

w(n) : fenêtre d’apodisation de support : n=-p,…,p

conditionne l’ordre du filtre : filtre RIF d ’ordre 2p+1 = M+1

filtre causal : décalage de la réponse impulsionnelle :

hRIF(n)= hRIF(n-p)

influence des paramètres : ordre du filtre, fenêtre d’apodisation

Ondulations en bande passante et affaiblie égales

Amplitude des ondulations non constante

existe algorithmes d’optimisation pour égaliser les ondulations

dans la bande et hors bande : REMEZ

II. Filtres RIF (FIR) : 3) Synthèse

42

Voir fdatoolFonctions Matlab pour synthèse de filtres RIF• fir1 : FIR filter design using the window method.

B = FIR1(N,Wn) designs an N'th order lowpass FIR digital filter

and returns the filter coefficients in length N+1 vector B.

B = FIR1(N,Wn,'high') designs an N'th order highpass filter.

You can also use B = FIR1(N,Wn,'low') to design a lowpass filter.

If Wn is a multi-element vector, Wn = [W1 W2 W3 W4 W5 ... WN],

FIR1 returns an order N multiband filter with bands

• fir2 : FIR2 FIR arbitrary shape filter design using the frequency sampling method.

B = FIR2(N,F,A) designs an N'th order FIR digital filter with the

frequency response specified by vectors F and A, and returns the

filter coefficients in length N+1 vector B. Vectors F and A specify

the frequency and magnitude breakpoints for the filter such that

PLOT(F,A) would show a plot of the desired frequency response.

• voir aussi firls, firpm (optimisations moindres carrés et norme Lsup)

• autre fonction utile, FREQZ Digital filter frequency response.

[H,W] = FREQZ(B,A,N) returns the N-point complex frequency response

vector H and the N-point frequency vector W in radians/sample of

the filter, given numerator and denominator coefficients in vectors B and A. The

frequency response is evaluated at N points equally spaced around the

upper half of the unit circle. If N isn't specified, it defaults to 512.

43

RIF : Choix de l’ordre (échelle linéaire)

0 100 200 300 400 500 600 700 800 900 10000

0.5

1

1.5

Fréquence (Hz)

Am

plit

ude

Ordre 20

Ordre 50Ordre 200

Synthèse par fenêtre naturelle (rectangulaire)

44

RIF : Choix de l’ordre (échelle logarithmique)

0 100 200 300 400 500 600 700 800 900 1000-45

-40

-35

-30

-25

-20

-15

-10

-5

0

Fréquence (Hz)

Am

plit

ude

(dB

)

Ordre 20Ordre 50

Ordre 200

Synthèse par fenêtre naturelle (rectangulaire)

45

RIF : Choix de la fenêtre (échelle logarithmique)

0 100 200 300 400 500 600 700 800 900 1000-45

-40

-35

-30

-25

-20

-15

-10

-5

0

Fréquence (Hz)

Am

plit

ud

e (

dB

)

RIF d’ordre 50

Fenêtre naturelle (rectangulaire)

Fenêtre de Kaiser

Fenêtre de Hamming

46

RIF : Choix de la fenêtre

Voir : « On the Use of Windows for Harmonic Analysiswith the Discrete Fourier Transform »,

F.J.Harris, Proc. Of the IEEE, vol 66, n1, Jan. 1978.

Choix entre largeur du lobe principal (pente du filtre)et les ondulations (ondulations dans les bandes)

0 10 20 30 40 50 60 70 80 90 1000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Hamming

Hanning

Bartlett (triangulaire)

Blackman

… diverses façons

d’arrondir la coupure

47

RIIx(n) y(n)

y(n) = - ak y(n-k) + bk x(n-k)

M M

k=1 k=0

Filtres récursifs, propriétés proches des filtres analogiques

Fonction de transfert :

H(z) = bk z

-k

ak z-k

k=0

k=1

M

M

| H(f) |² = H(z) H(z-1 ) | z = e i2 fTe

Présence de pôles

!!! Risque d’instabilité !!!

III. Filtres RII (IIR) : 1) Définition

48

Réponse impulsionnelle et stabilité

Si dénominateur n’a que des pôles simples, h(n) = Ak pkn n>0

avec H(z) décomposé en éléments simples

H(z) =

alors la condition de stabilité : entrée bornée - sortie bornée :

|h(n)| < Bh pour tout n |pk| < 1 pour tout k

k=1

M

1-pkz-1

Ak

k=1

M

1

1

-1

-1

III. Filtres RII (IIR) : 2) Propriétés

P1

49

Réponse en phase : systèmes à minimum de phaseDéfinition :tous les zéros du numérateur du filtres sont dans le cercle unité

(tous en dehors : système à maximum de phase)

(en dehors et en dedans : système à phase mixte)

Intérêt du minimum de phase : système inverse stable

Propriété recherchée dans beaucoup d’applications

Réponse en phase : TPGOn démontre :

filtres rationnels ne peuvent pas avoir de phase linéaire (sauf RIF)

P2

P3

50

1. Synthèse d’un filtre analogique HA(p)

2. Transformation HA(p) HN(z)

conservant certaines propriétés de HA(p) à HN(z).

Conservation

d’une réponse

temporelle

Conservation

d’une réponse

harmonique

III. Filtres RII (IIR) : 3) Synthèse

Synthèse par invariance

à une entrée (peu utilisée)

Ne garantit rien sur comportement fréquentiel

(peut avoir pbs d’aliasing)

51

p

HA(p)

z

HN(Z) = HA(T(z))

Principe : changement de variable

1

1

-1

-1

Fraction

rationnelle

Conservation

d’une réponse

harmonique

52

Transformer une droite en cercle : transformation homographique,

appelée Transformée bilinéaire

1- z-1

1+z-1p = c Souvent c = 2/Te

fA=Fe/ tan( fN ) : préserve les basses fréquences~

53

fN

Gabarit numérique

fC1 fC2

A=2Fe tan( fN ) ~

AC1 C2

Gabarit analogique

Choix d’un modèle

analogique,

Calcul de HA(p)

1- z-1

1+z-1p =

2Te

HN(z)

changer p en z par la bilinéaire

à partir du gabarit numérique,

construire gabarit analogique

synthétiser un filtre

analogique satisfaisant (modèle ?)

54

Prototypes de filtres analogiques

Butterworth

Pas d’ondulation |H( )|² = 1/ [1+( / c )2n ] n ordre du filtre,

c pulsation de coupure à –3 dB, pôles sur le cercle unité

Tchebychef

|H(f )|² = 1/ [1+ 2 T²n(f)] avec Tn(cos(x)) = cos(nx)

Relation de récurrence sur Tn : Tn+1 = 2x Tn(x) – Tn-1(x)

Passent + facilement dans le gabarit que Butterworth pour même ordre

Elliptiques (Cauer)

|H(f )|² = 1/ [1+ Sn(f,k)] k : sélectivité du filtre

À gabarit donné, ordre du filtre le moins élevé

Bessel : Phase à peu près linéaire, TPG constant mais mauvaise

caractéristique de module

55

Voir fdatoolFonctions Matlab pour synthèse de filtres RII• butter : BUTTER Butterworth digital and analog filter design.

[B,A] = BUTTER(N,Wn) designs an Nth order lowpass digital Butterworth filter.

• buttord : BUTTORD Butterworth filter order selection.

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital Butterworth filter that

loses no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband.

• cheby1 : CHEBY1 Chebyshev Type I digital and analog filter design.

[B,A] = CHEBY1(N,R,Wp) designs an Nth order lowpass digital Chebyshev filter with R decibels of

peak-to-peak ripple in the passband.

• cheb1ord : CHEB1ORD Chebyshev Type I filter order selection.

[N, Wp] = CHEB1ORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital Chebyshev Type I

filter that loses no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband.

• cheby2 : CHEBY2 Chebyshev Type II digital and analog filter design.

[B,A] = CHEBY2(N,R,Wst) designs an Nth order lowpass digital Chebyshev filter with the stopband ripple R

decibels down and stopband-edge frequency Wst.

• cheb2ord : CHEB2ORD Chebyshev Type II filter order selection.

[N, Ws] = CHEB2ORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital Chebyshev Type II

filter that loses no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband.

• ellip : ELLIP Elliptic or Cauer digital and analog filter design.

[B,A] = ELLIP(N,Rp,Rs,Wp) designs an Nth order lowpass digital elliptic filter with Rp decibels of

peak-to-peak ripple and a minimum stopband attenuation of Rs decibels.

• ellipord : ELLIPORD Elliptic filter order selection.

[N, Wp] = ELLIPORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital elliptic filter that loses

no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband

56

Structures de réalisation canonique :Décomposition du système

comme la mise en série de 2 systèmes numériques

H1(z) H2(z)x(n) w(n) y(n)

N(z) 1/D(z)x(n) w(n) y(n)

1/D(z) N(z)x(n) w(n) y(n)

Soit : forme directe I : partie non récursive, suivie de la partie récursive

ou forme directe II : partie récursive, suivie de la partie non récursive

IV. Implantation des filtres RII (IIR)

Forme directe I

Forme directe II

57

Forme directe I

1) Partie non récursive :

2) Partie récursive :

Complexité :M+N mémoires

(2 files d’attente)

M+N additions,

M+N+1 mult.

58

Forme directe II

1) Partie récursive :

2) Partie non récursive :

Complexité :Max(M,N) mémoires

(1 file d’attente !)

M+N additions,

M+N+1 multiplications

1 seule file d’attentemais sensibilité numériqueaugmente avec la taille

59

Nécessité de fractionner en structures plus petites

Formes décomposées

Série (cascade)

H(z) = C Hi(z)

propagation des erreurs

Parallèle

H(z) = C + Hi(z)

Éléments simples du 1er ou 2nd ordre

1+b1 z-1 + b2 z-2

1+a1 z-1 + a2 z-2

Décomposition

en série ou parallèle ?

60

Décomposition

en série

Obtenue en factorisant numérateur et dénominateur de H(z)

et en mettant sous forme de produits de FT élémentaires

FT du 1er ordre FT du 2ème ordre

61

Décomposition

en parallèle

Obtenue en décomposant H(z) en éléments simples

FT du 1er ordreFT du 2ème ordre

62

Sources d’erreur dans l’implémentation des filtres

63

-1.5 -1 -0.5 0 0.5 1 1.5 2

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

-

2

3 bits après la virgule

(+/-)xx,xxx

2 bits après la virgule

(+/-)xx,xx

arrondi :

coin le plus proche

troncature :

coin en bas, à gauche

a1

a2 a2

a1

Dans le plan (a1,a2), intérieur du triangle

Pôles C

Pôles R

Stabilité de la cellule du second ordre : le triangle de stabilité

64

65

alors RIF ou RII ?