Le Filtrage des Signaux Numériques

Page 1 sur 121Lecteur de document UniversityLib

Le Filtrage des Signaux Numériques

Digital Signal Processing · notes

Voir tous les documents en électronique et automatique

MASTER1-FILS UPB

Le Filtrage des Signaux Numériques

Andrei Doncescu [email protected]

Filtres Linéaires

Fonction de Transfert

Filtres Analogiques Passives

4 types de filtres - “Ideal”

Passe-bas lowpass

Passe-haut highpass

Bande passante bandpass Filtre rejecteur bandstop

Filtres Analogiques Passives

Le Cas Réel :

lowpass

highpass

bandpass

bandstop

Systèmes linéaires

•  Les systèmes linéaires sont caractérisés complètement par

leur réponse à une impulsion unité

Specification (anglais)

Frequency-Selection function

Passing Stopping Pass-Band Low-Pass High-Pass Band-Pass Band-Stop Band-Reject

Passband ripple Ripple bandwidth

Filter Specification

Filtres

•  Analogique : se divisent en

passives et actives en fonction de la partie hardware utilisé : RLC ou A.O.

•  Numériques : Implémentés en utilisant une structure numérique : DSP, microprocesseur permettant de calculer la convolution, la FFT

Filtre Passe-Bas Passif et Analogique

VI

+

_

R

C

+

VO _

Low pass filter circuit

OV jw ) ( V jw ) ( i

=

R

1 jwC 1 jwC

+

=

1 jwRC

1

+

Filtre Passe-Bas Passif et Analogique

0 dB

.

-3 dB

Bode

1/RC

ω

1

x

0.707

Lineair

0

1/RC

ω

Filtre Passe-Haut Analogique Passif

+ _

Vi

C

R

+

VO _

En anglais High Pass Filter

( OV jw ) V jw ) ( i

=

R

1 jwC

R

+

=

jwRC +

jwRC

1

Filtre Passe-Haut High Pass Filter

0 dB

Bode

1 0.707

Lineair

. -3 dB

1/RC

ω

1/RC

x .

0

1/RC

ω

Filtre Passe-Bande Passif

Vi

+ _

C

L

R

+ VO

_

( ) V s O V s ( ) i

=

2

s

+

s

R L R s L

+

1 LC

Filtre Passe-Bande Passif

0 dB -3 dB

1 0.707

0

.

ωl o .

ωl o

.

ωhi

.

Bode

ω

Lineair

ωhi

ω

Filtre Passif et Analogique

B ode D iagrams

F rom : U(1)

-3 dB

0

-5 dB

-5

)

B d (

e d u t i

n g a M

; ) g e d (

e s a h P

-10

-15

100

50

0

-50

-100

) 1 (

Y

: o T

2

10

3

10

4

10

Frequency (rad/sec)

Filtre Passe-Bande

Exemple Matlab

N = 10; %order butterworth ordre 10

[ZB, PB, KB] = buttap(N); numzb = poly([ZB]); denpb = poly([PB]);

wo = 600; bw = 200; % wo freq centrale

% bw bandwidth

[numbbs,denbbs] = lp2bs(numzb,denpb,wo,bw);

w = 1:1:1200;

Hbbs = freqs(numbbs,denbbs,w); Hb = abs(Hbbs);

plot(w,Hb) grid xlabel('Amplitude') ylabel('frequency (rad/sec)') title('10th order Butterworth filter')

Butterworth

Filtre Rejecteur

Exemple

num = [1 0 300000];

den = [1 3100 300000];

w = 1 : 5 : 10000;

Bode(num,den,w)

Filtre Rejecteur

Exemple

Bode

Matlab

Filtre Passe-Bas Actif

C

Rfb

Rin

+ Vin _

+

VO _

Filtre Passe-Haut Actif

Rfb

C

Rin

+ Vin _

+ VO _

Filtre Passe-Bande Actif

R1

C1

R1

C2

R2

Rfb

R2

Ri

+ Vin _

+ VO _

Filtre Rejecteur

C1

R1

R2

Ri

R1

C2

Vin

+

_

Rfb

+ VO _

La Transformée en z

Lien avec la Transformée de Laplace

•  Pour p=σ+2πjf, σ l’amortissement et f=fréquence

x(n)

−npTee

∑

n∈Z

=

∑

n∈Z

−n

x(n)z

Plan des {z}

{ Tz x(n)

{ } = TL x(n)

} z=e pt =

Plan de Laplace

2πjf

0

σ

Plan Transformée en Z

p

2πσ+=

j

f

f

∈

⎡ ⎢ ⎣

(

k

−

1 2

)

f

e

(,

k

+

1 2

)

f

⎤ et σe ⎥ ⎦

<

0

z

σ=

tee

j

2 π

eTf

Plan des p

2πjf

fe/2

0

-fe/2

σ

fe/2

-fe/2

Plan des {z}

fe/4

-fe/4

Représentation par la Transformée en z

•  Définition On appelle transformée en z bilatérale d’une suite {x(n)}, la

somme Xb(z) définie par :

Xb(z) = Tzb =

∑ z−n x(n)

n∈Z

Remarque : On peut considérer la transformée monolatérale:

Xb(z) = Tzb x(n)

{

∞

} =

∑ z−n x(n)

n=0

Propriétés

•  Linéarité

nw )(

=

nax )(

zWnby )( =↔+

)(

zaX )(

+

zbY )(

•  Shift (retard ou avance)

nnx (

) n−↔−

zXz )(

0

0

•

Inversion dans le temps

nx (

zX ( 1−↔−

)

)

Attention au domaine de convergence

Propriétés

•  Multiplication par une exponentielle

nxn )(

α

↔

X

•  Convolution

−

( α

1 z

)

nhnxny )( )( )(

=↔∗

zHzXzY )(

)(

)(

=

•  La transformée en z n’a pas de sens que si l’on précise le domaine de

convergence

Le domaine de convergence d’un signal causal est un ????

Systèmes linéaires invariants

•  Définition

kLx )(

=

ky )(

kkLx ( ) =− 0

kky ( ) − 0

Signaux Déterministes

•  Dans un contexte de logique câblée ou programmée, il est

immédiat de créer certains signaux déterministe:

nx )(

=

rect N

n )(

nx )(

triang =

n )(

N

•  Par contre il est moins facile de créer des signaux plus élaborés

comme par exemple:

y(n) =

a

exp

(αα e

)

cos 02 nTπf ( e

) u(n)

Systèmes discrets

•  Un système est discret lorsque toutes les grandeurs variables du système sont des signaux discrets.

•  La réponse du système ne dépend pas

uniquement des signaux discrets d’entrée mais aussi de l’état interne du système, donc nous avons une relation de récurrence

Systèmes discrets

•  Si le système est linéaire et invariant dans le

temps nous avons l’équation de type récurrence :

N

M

∑

0 =

n

( nkyb ) =− n m

∑

( mkxa ) m 0 =

−

Exemple (l’importance des conditions initiales) 1)1( =− 1)0(

− ay

= x

)0(

)0(

)1(

)1(

ay

a

y

y

x

ky 0)( k 0 <∀= )( tukx )( =

= 1)2(

−=

y

ky )(

=

−= aa

− ay 1)1( +−= ) (1 a −− 1 a +

ku )(

1 +

k

2

Relation de récurrence et transformée en z monolatérale

•  Considérons la relation de récurrence:

ny )(

+

nyb (

1

)1 +−

nyb (

2

−

0)2 =

b1 et b2 ctes

•  La Transformée en z est :

{

Y

+

)( z

−=

yb

)1(

1

yb +− 1

)2( − zb

+

1 −

1

2

} { + zb +

2

−

2

yb

} )1( z −

2

1 −

La Transformée en z Inverse

•  Basée sur l’intégrale de Cauchy •  Méthode d’identification par “inspection”

–  Décomposition en fractions simples –  Identification de la série géométrique

Exemple: Calculer la transformée z inverse de :

( ) zX

=

1 1 2

−

1

z

1

−

z

>

1 2

→

[ ] nx

=

n

⎛ ⎜ ⎝

1 2

⎞ ⎟ ⎠

[ ]nu

[ ] n nua

Z ⎯⎯ →←

1 az

−

1

1

−

z

>

a

35

Transformée en z inverse

•  Supposons que la TZ se présente sous la forme :

( ) zX

M

∑ 0k = = N ∑

0k =

−

k

zb k

−

k

za k

•  Développement en fractions simple :

( ) zX

=

NM −

∑

0r =

−

r

zB r

+

N

∑

ik,1k ≠

=

k

A zd1 −

k

s

+

∑

1m =

−

1

C

m ( zd1 −

i

m1 −

)

•  Le premier terme existe si M>N

–  Br est obtenu par division longue

•  Le deuxième terme représente le pôles simples •  Le troisième terme représente les pôles multiples •  Chaque terme permet d’obtenir le TZ inverse par identification

36

Développement en Fraction

( ) zX

=

NM −

∑

0r =

−

r

zB r

+

N

∑

ik,1k ≠

=

k

A zd1 −

k

s

+

∑

1m =

−

1

C

m ( zd1 −

i

m1 −

Publicité

)

A k

=

•  Coefficients sont :

) ( ) ( − zXzd1 k

−

1

kdz =

C

m

=

1 ) ( ( d!ms − i

−

ms −

)

⎧ ⎨ ⎩

d dw

ms −

ms −

[ ( ( ) wXwd1

−

s

i

−

1

⎫ ] ) ⎬ ⎭ 1 −= idw

37

•  Easier to understand with examples

Transformée z inverse d’un 2eme ordre

( ) zX

=

1

−

⎛ ⎜ ⎝

1 4

−

1

z

1

⎞ ⎛ ⎜ ⎟ ⎠ ⎝

1

−

1 2

−

1

z

⎞ ⎟ ⎠

ROC

z :

>

1 2

( ) zX

=

1

−

⎛ ⎜ ⎝

+

A 2 1 2

−

1

⎛ ⎜ ⎝

−

1

z

⎞ ⎟ ⎠

−

1

z

⎞ ⎟ ⎠

A 1 1 4

1

A

1

=

1

−

⎛ ⎜ ⎝

1 4

−

1

⎞ ( ) zXz ⎟ ⎠

=

z

=

1 4

1

−

⎛ ⎜ ⎜ ⎝

1 2

⎛ ⎜ ⎝

1 4

⎞ ⎟ ⎠

−

1

⎞ ⎟ ⎟ ⎠

−=

1

A

2

=

1

−

⎛ ⎜ ⎝

1 2

−

1

⎞ ( ) zXz ⎟ ⎠

=

z

=

1 2

1

1

−

⎛ ⎜ ⎜ ⎝

1 4

1 2

⎛ ⎜ ⎝

⎞ ⎟ ⎠

−

1

⎞ ⎟ ⎟ ⎠

=

2

38

( ) zX

=

1

⎛ ⎜ ⎝

1 − 1 4

z

−

+

−

1

⎞ ⎟ ⎠

1

−

⎛ ⎜ ⎝

2 1 2

−

1

z

⎞ ⎟ ⎠

z

>

1 2

•  ROC extension

[ ] nx

=

1 2

⎛ 2 ⎜ ⎝

n ⎞ ⎟ ⎠

[ ] -nu

1 4

⎛ ⎜ ⎝

n ⎞ ⎟ ⎠

[ ]nu

39

Génération des signaux numériques

•  Relation de récurrence :

kxakx )( =

)1( −

x

1)0( =

x(k)

=

•  Générer un signal sinusoïdal

ak ⎧ ⎪ ⎨ 0 ⎪⎩

k en

0 ≥ rest

sin( cos( kb kb

ba ) + ba ) + b ) + b ) +

sin( cos(

a b ) ) cos( sin( = + ) cos( cos( a b ) = − sin( ) ) kb b cos( + = ) kb cos( b ) cos( = −

a b cos( ) sin( ) sin( sin( a b ) ) cos( sin( kb ) b ) sin( kb ) b ) sin(

x(k y(k

1 ) =+ ) 1 =+

x(k) y(k)

cos cos

(b) + (b) −

y(k) x(k)

sin sin

(b) (b)

x 0)0( = ⎧ ⎨ y 1)0( = ⎩

kx )( sin( = ky cos( )( =

kb ) kb )

⎧ ⎨ ⎩

Modèle Linéaire Discrets

Soit, l’équation linéaire, aux différences finies

L

1 − lnyb ( ) =− l

1 − knxa ( ) − k

K

∑

0 =

k

∑

0 =

l

Est un modèle ARMA d’ordre (K,L)

Questions: 1.  Quel l’ordre minimal (K,L) qui permettre de représenter le signal de

façon convenable ?

2.  Comment déterminer les {ak} et les {bl} ? Ces coefficients restent-ils invariants lorsque l’on considère différentes réalisation du signal ?

Filtres

•  Filtres récursifs

Entrée Xk

RII-ARMA

Sortie yk

•  Filtres non-récursifs

Entrée Xk

RIF-MA

Sortie yk

Stabilité des Modèles ARMA

•  La CNS pour qu’un système linéaire, de réponse

impulsionnelle {h(n)} soit stable est que :

∞

)( nh

∞<

sommabilit é

∑

n

=

0

•  La stabilité d’un système AR ou ARMA exige que les pôles de la fonction de transfert H(z) soient à l’intérieur du cercle unité du plan {z}

Filtrage Numérique

l

i

a n g s u d e d u t i l

p m a

MATLAB 3: signal sinusoïdal

c hronogr amme d'un signal en temps c ontinu

1

0.8

0.6

0.4

0.2

0

-0.2

-0.4

-0.6

-0.8

-1

0

0. 005

0. 01

0.015 axe des temps (secondes)

0.02

0.025

•  Amplitude : 0.8 •  Durée : 0.03 seconde •  Période : 0.02 seconde •  Fréquence : 1/0.02 = 50Hz •  Signal analogique et (en temps) continu •  Expression : s(t)= 0.8*sin(2*π*t/0.02)

script Matlab

% créer et afficher le signal sinusoïdal précédent freq= 50; % en Hertz (Hz) ampl= 0.8; % ';' signifie ne pas afficher le résultat temps= [0:1:299]/10000; % définir vecteur temps(secondes) signal= ampl*sin(2*pi*freq*temps); % créer vecteur signal plot(temps, signal) % trace la courbe signal(temps) axis([0, temps(length(temps)), -1, 1]) % définir les axes grid % tracer la grille title('chronogramme d''un signal en temps continu') xlabel('axe des temps (secondes)') ylabel('amplitude du signal')

c hronogr amme d'un signal en temps c ontinu

l

i

a n g s u d e d u

t i l

p m a

1

0.8

0.6

0.4

0.2

0

-0.2

-0.4

-0.6

-0.8

-1

0

0. 005

0.015 0. 01 axe des temps (secondes)

0.02

0.025

Page 46

l

i

a n g s u d e d u

t i l

p m a

signal discret, signal numérique.

chronogramme d‘‘un signal en temps discret

signal numérisé, B=3bits

1

0.8

0.6

0.4

0.2

0

-0.2

-0.4

-0.6

-0.8

-1

0

0.005

1

0.8

0.6

0.4

0.2

0

-0.2

-0.4

-0.6

-0.8

l

a n g s

i

0.01 axe des temps (secondes)

0.015

0.02

0.025

-1

0

0.005

0.01 axe des temps (secondes)

0.015

0.02

010

001

000

0.025

•  période d’échantillonnage : Te= 0.001s •  fréquence d'échantillonnage fe =1000Hz •  20 Te par période •  Signal en temps discret et analogique

•  nombre de bits par échantillon : B = 3 •  8 niveaux de quantification •  pas de quantification : Q=0.25 •  erreur de quantification 0 < ε < 0.25 •  Signal numérique et en temps discret

Page 47

Composition fréquentielle.

Le chronogramme ci-dessus a été tracé par Goldwave à partir de l’expression mathématique :

ts )(

=

t π

)

+

cos(

400 2 200Hz

cos(

t π

1200 18 600Hz

)

+

)

cos(

t π

2000 50 1000Hz

Le signal s(t) est composé des trois fréquences 200, 600 et 1000Hz

Page 48

MATLAB : spectre et spectrogramme du signal s(t)

fe/2

e c n e u q é r f

amplitude en dB

spectrogramme = spectre(temps)

spectre calculé par l’algorithme de F.F.T. (Fast Fourier Transform)

Page 49

fréquence

fe/2

Gabarit d’un filtre •  Pour un filtre passe-bas, est conduit à introduire 3 régions –  Bande passante, plage de fréquences où le gain prend des valeurs

comprises entre (1-δp,1+ δp) où δp est le taux d’ondulation

–  Bande de transition, plage de fréquence où le gain s’atténue dans

un rapport A.

–  Bande affaiblie, plage de fréquences où le gain prend des valeurs

inférieurs à δs

H(f)

ripples

- 3dB

B. passante

B. affaiblie

fc

fe

f

•  La partie du plan complexes où se trouvent les zéros correspond à la bande affaiblie. Plus les zéros sont proches du cercle unité, plus l’atténuation est grande. Plus le nombre de zéros est grand, plus les ondulations dans la bande affaiblie pourront être rendues faibles.

zéros

x

pôles

• Le lien entre le gabarit et la position des pôles et des zéros.

– Le cercle unité est gradué en valeur de la fréquence qui varie entre –½et ½

– Si les pôles et les zéros sont complexes conjugués |H(jω)| est paire

– La partie du plan complexe où se trouvent les pôles correspond à la bande passante. Plus les pôles sont proches du cercle unité, plus les surtension sont grandes. Plus les pôles est grandes, plus les ondulations dans la bande passante pourront être rendues faibles.

Im(z)

f=1/4

x

x

x

f=0

Re(z)

f=-1/4

Synthèse d’un filtre réel à temps continu

•  Problème :

Comment réaliser en numérique un filtrage analogique ? –  Donc, si xa(t) et ya(t) sont les signaux d’entrée et de sortie d’un filtre analogique: comment fabriquer les échantillons de ya(t) à partir de ceux de xa(t) ?

Solution :

•  Soit le filtrage linéaire réel analogique défini par l’équation en

fréquence :

fXfHfY ) ( ) ( a a

) ( a

=

Si Xa(f)=0 pour |f|>B, alors Ya(f) est lui-même à bande limitée B. On prend Fe=1/Te>2B

•  L’expression des échantillons ye(n)=ya(nT) en fonction des

échantillons x e(n)=xa(nTe) s’écrit ~ )( e

)( *)( nhtxny e e

e(Y e

⇔

=

j 2 π

nf

e(X) = e

n 2 jπ f

~ e(H) e

n 2 jπ f

)

2~ nf jπ e(H e

Où est la périodisée de

)

H

( fFe

a

)

rect

( −

), bb

)( f

où b =

B/fe

Conclusion

•  C’est donc un filtrage à temps discret dont la réponse en

fréquence s’obtient par troncature de Ha à la bande (-B,B) suivie d’une division de l’axe des fréquences par Fe

Preuve

•  En utilisant la formule de Poisson:

fj 2 π

e ( Y e

) =

fnj 2 π

=

F e

∑ Zn ∈ ) FfkXFfkHF ) e e

(( ) FfkY − a e

∑ Zk ∈ ) e

e )( ny e ∑ (( a

(( a

−

−

)

)

=

Zk ∈

~ Et en posant fFeHfH =

)(

(

a

a

)

rect

( −

bb ),

f )(

: aon

fj

( 2 π Y e

e

) =

∑

Zk ∈

)) FfkHFfkXF

))

((

((

a

a

e

e

e

−

−

~

∑

Zk ∈

ANALYSE DES FILTRES NON RECURSIFS OU RIF

Caractéristiques des RIF

•  Équations mathématiques :

y(n) =

N−1

∑

k=0

h(k)x(n − k)

H (z) =

N−1

∑

k=0

h(k)z−k

x(n)

h0

z 1−

h1

z 1−

hk

Σ

y(n)

Σ

zH )(

=

zY )( zX )(

=

h

0

+

zh

1

1 −

−

N

zh

N

... ++ 1

Filtre à réponse impulsionelle finie (RIF)

xhy =

0

n

n

... −++

xh

L

1

Ln

1 −−

Stabilité : un filtre RIF est stable Phase linéaire: si la réponse impulsionelle

vérifie

0 ∈∀ [L hh

= −

LN

L

,N]

Remarque: conséquence directe de la symétrie de la réponse

impulsionelle

Démonstration de la phase linéaire

•  N=7 •  h(n)=h(N-1-n) ou h(n)=-h(N-1-n)

h

Publicité

)0(

=

h

h )1( ; )6(

=

h

h )2( ; )5(

=

h

)4(

6

H

)( ω

=

eH (

t j ω

)

=

ekh )(

−

Tjk ω

∑=

0

k

H

( ) ω

=

e

−

j

3 T ω

h )(0((

e

j

3 T ω

+

e

−

j

3 T ω

)

+

h

)(1(

e

j

2

T ω

+

e

−

j

2

T ω

)

+

h

)(2(

e

Tj ω

+

e

−

Tj ω

))

Exemple

•  Considérons le filtre RIF, dont la réponse :

, hhh = 0 3

h et h = 1 2

0 = n

{ }3210 pour n ,,, ≠

Sa réponse en fréquence est :

fj 2 π

e jππ fj fj 4 2 π π − − H ehh ( ) eh += + 0 1 2 e (h πf ) cos ( 3 h = − + 1

fj 6 π − eh + 3 ( cos 6 πf )) −

3 −

0

Filtre Design

•  Spécifications du filtre •  Calcul des coefficients •  Réalisation •  Analyse de la quantification des coefficients du filtre •  Implémentation

Spécifications :

Soit un filtre passe-bas utilisé pour la réduction du bruit physiologique :

•  La bande passante 10Hz •  La bande d’arrêt < 20 Hz •  L’atténuation dans la bande d’arrêt < 30dB •  Les oscillation dans la bande passante « ripple » <0.026 dB •  La fréquence d’échantillonnage 256 Hz

Gabarit d’un filtre

–  Bande passante, plage de fréquences où le gain prend des valeurs

comprises entre (1-δp,1+ δp) où δp est le taux d’ondulation

–  Bande de transition, plage de fréquence où le gain s’atténue dans

un rapport A.

–  Bande affaiblie, plage de fréquences où le gain prend des valeurs

inférieurs à δs

H(f)

ripples

- 3dB

B. passante

B. affaiblie

fc

fe

f

Synthèse RIF passe-bas par la méthode de la fenêtre •  On veut construire un filtre numérique idéal réel de bande

b∈(0,1/2) définie par :

2

eH (

fj

) =π

rect

(

−

bb ,

)

(

f

)

•  Donc

h

n

b

= ∫−

b

2 π

e

jn

f

df

=

sin( 2 ) bn π n π

h

O

2=

f

c

•  La meilleure approximation de longueur 2N+1 est :

{

=

h n 0

g n

si n

∈

[N,...,N } sinon

Remarque: cette troncature introduit des lobes dans la réponse

en fréquence

Fenêtre de pondération

•  Le fait de ne conserver de la suite infinie h(n) qu’un nombre fini de termes revient à la multiplier par une fonction rectangle de largeur N et donc à convoluer H(f) par la fonction :

Wr =

N−1

∑

n=0

e− jω n

=

1− e− jNω 1- e− jω =

sin(Nπf ) sin(π f)

e− jπ( N−1) f

Algorithme

1.

2.

3.

On se donne le gain complexe H(f) à réaliser et le nombre N de coefficients du filtre On détermine les coefficients h(n) par la formule précédente en limitant le calcul à N valeurs réparties de façon symétrique autour de n On multiplie terme à terme la suite obtenue par une suite w(n) appelée fenêtre de pondération

Synthèse RIF passe-bande à partir d’un RIF passe-bas

•  Soit hn la réponse impulsionnelle d’un filtre passe-bas de bande B. •  Considérons le filtre de réponse impulsionnelle:

g n

2 h =

cos(

2 π

n

nfj 2 π ehnf ) 0 = 0 n

2 nfj −+ π eh 0 n

•  Par TFtd on en déduit que l’expression du gain complexe de gn:

fj 2 π

G ( e

(2 j f π

) =

H ( e

f

) 0

+ + )

(2 j f π

H ( e

−

f

) 0

)

•  Conclusion : Si hn est filtre passe-Bas de bande B, gn est un passe-bande

centré autour de f0 de bande 2B

Fenêtre de pondération

•  Sont des fenêtres qui présentent des lobes secondaires de

moindre amplitudes.

•  Conséquence: l’élargissement de la bande de transition. •  Exemple: Hamming

wH (n) = 0.54 + 0.46 cos(2πn/N) où n ∈ −N / 2,..., N / 2 gn = hn × wn

{

}

•  Remarque: la pondération utilisée conserve la symétrie de

la fenêtre et donc la propriété de phase linéaire

Relation pour la fenêtre de Hamming

f =Δ

3.3 N

H(f)

ripples

- 3dB

Les oscillations dans la bande passante minimum 0.0194 dB

B. passante

B. affaiblie

atténuation maximum est 53 dB

fΔ

Hamming

Différentes fenêtres

Fenêtre

Ltransition Ripple

Lobe principal

Attenuation dans la bande stop

Function

Rectang.

0.9/N

0.7416

Hanning

3.1/N

0.0546

Hamming

3.9/N

0.0194

Blackman

5.5/N

0.0017

13

31

41

57

21

44

53

75

1

⎛ cos5.05.0 ⎜⎜ ⎝

+

nπ2 N

⎞ ⎟⎟ ⎠

54.0

+

46.0

⎛ cos ⎜⎜ ⎝

nπ2 N

⎞ ⎟⎟ ⎠

Kaiser

Signification physique des coefficients bi

Considérons une impulsion :

)(nx

=

0n si 1 ⎧ ⎪ ⎨ n si 0 0 ⎪⎩

= ≠

Et la relation de récurrence :

ny )(

=

nxa )(

0

+

nxa (

1

)1 +−

nxa (

2

−

)2

+

...

y y

)1( 0 =− a )0( =

0

y

)1(

=

a

1

y

)2(

=

0

y

)3(

=

0

a

0

=

a

a

2

=

a

3

1

=

1 2 ... ==

0

Remarques

•  On peut dire que la suite a0 ,a1, … constitue

la réponse du filtre à une impulsion •  Le milieu de la réponse a pour abscisse :

=τ

eT 2

•  On peut estimer que le filtre introduit un

retard et que la réponse impulsionnelle est symétrique par rapport à ce point.

Exemple

•  Supposons que l'on veuille faire un filtre passe-bas de fréquence de

coupure fc, On peut prendre •  Réponse de ce filtre :

s n

=

1 2

e n

+

1 e 12 n

−

1 2 •  On a donc une réponse fréquentielle du type :

)( zE +

)( zzE

)( zS

1 2

=

1 −

zH

)(

=

)( zS zE )(

=

1 2

+

1 2

1 −

z

( jH

) ω

=

1 2

+

1 2

−

e

j ω

T e

=

1 2

T e

j ω 2

e (

+

e

−

T e

j ω 2

)

e

−

T e

j ω 2

=

⎛ cos ⎜⎜ ⎝

e

T ω 2

e

⎞ ⎟⎟ ⎠

−

T e

j ω 2

Réponse en amplitude

Réponse en phase

L' équation de récurrence • Ex: y(n)=x(n)-x(n-1) dérivateur mais avec • des résultats très moyens sauf pour les basses fréquence.

Exemple

•  Déterminer les coefficients d’un filtre RIF passe-bas avec les fréquences suivantes pour la bande passante et la bande d’arrêt 1kH et 4.3 kHz. Utiliser une fenêtre de Hamming et considérer la fréquence d’échantillonnage de 10kHz.

Solution

N

≈

3.3 f Δ

Conclusion

•  Il existe des méthodes de conception de filtre RIF simple à

mettre en œuvre

•  Phase linéaire, donc pas de dispersion •  Stabilité •  Cher en réalisation •  Le retard entre l’entrée et la sortie peut être relativement

longue

•  Implémentation possible sur tous les DSP

ANALYSE DES FILTRES RECURSIFS OU RII

Synthèse des filtres numériques RII

•  Caractérisés par l’équation récurrente :

∞

N

M

)( ny

=

∑

k

0 =

()( knxkh

−

)

=

∑

k

=

0

( knxb

) +−

k

( knya

−

k

)

∑

k

1 =

•  La fonction de transfert est :

N

)( zH

=

−

k

zb

k

∑

k

=

0

1

+

M

∑

k

1 =

−

k

za

k

Réponse impulsionnelle

zH )(

=

8.11 −

cos(

1 −

z 5.01 + )16/ z π

1 −

+

z 81.0

−

2

Filtrage

Synthèse des filtres numériques par transformation de H(p) en H(z)

•  Transposer la fonction de transfert H(p) de son homologue

analogique du plan p dans le plan z par une règle reliant p à z

Transformation d’Euler ou équivalence de la dérivation

)( ty

dx xx −−=→= k k y k dt T e

1

)( pY

=

ppX

)(

⇒

H(p) =

p

[ )(1)( zXzX zY )( − T e

=

z

1 −

z 1 ] − = T e

1 −

zX )(

p →

z 1 −− 1 eT

Synthèse d’un filtre numérique passe-bas du 1er ordre

•  Soit la fonction de transfert :

pH )(

=

τ

=

RC

1 •  La réponse impulsionnelle :

1 τ p +

th )( tu )( •  La réponse indicielle :

=

e

RC

t

−

1 RC

s

ind

t )(

−

t

RC

e

⎡ −= 1 ⎢⎣

⎤ tu )( ⎥⎦

•  En utilisant la transformation précédente :

zH )(

=

1

+

⎛ ⎜ 1 ⎜ ⎝

τ T

e

⎞ ⎟ −⎟ ⎠

τ T

e

1 −

z

•  L’équation aux différence est :

y

k

=

τ T

e

1

+

τ T

e

y

k

1 −

+

1

1 τ T

e

+

x

k

Application

τ

=

Rms 1 (

=

)1Ck 1 = µ

Te

=

µ100 s

Équation ????* Réponse impulsionnelle x1=1 xk=0 k>1 Réponse indicielle xk=1 k>=1 Conditions initiales y0=1

RII versus RIF

•  La complexité d'un filtre RII est moindre que celle d'un filtre RIF du

même ordre. Cette propriété peut être utile sur les plateformes limitées en puissance de calcul

•  Généralement, les filtres RIF sont moins sensibles aux erreurs de

quantification que les filtres RII. L'absence de récursivité empêche les erreurs cumulatives.

•  Un filtre RIF est moins sélectif qu'un filtre RII du même ordre. C'est-à- dire que la transition entre la bande passante et la bande rejetée est moins rapide que dans le cas du filtre RII.

Publicité

•  Contrairement à un RII, un filtre RIF peut avoir une réponse

impulsionnelle symétrique et introduire un retard sur le signal mais aucun déphasage.

Le choix du filtre RIF/RII

•  RIF peuvent avoir une phase linéaire : Applications transmission de données, audio, traitement d’images

•  RII la phase est non-linéaire •  RIF toujours stable •  L’effet de la limitation du nombre de bits est moins sévère

pour les RIF que pour les RII

•  RIF nécessitent un nombre de coefficient supérieure au RII •  Les filtres analogiques peuvent être transformés facilement

en RII

Quand RII/RIF ?

•  RII pour des filtres avec une bande de transition

faible

•  RII pour des gains importants •  RIF quand le nombre de coefficients est réduit :

les DSP conçus pour RIF

Les banc de filtres

Traitement Multicadence

•  Un système multicadence est caractérisé par le fait que des cadences

de traitement différentes sont présentes simultanément en divers points de la chaîne de calcul

•  Exemple: les opérations de sur et de sous-échantillonnage •  Avantage: gain en termes d’efficacité de calcul

Applications du traitement du signal « multicadence »

•  Filtrage bande étroite : Audio numérique

•  Le codage en sous-bandes

•  La conversion analogique/digitale (Σ-Δ)

•  Transmultiplexeurs (OFDM)

•  MPEG audio/vidéo

•  ………

Problématique

Les systèmes de communications mobiles (GSM) ou interactifs sur câbles sont des systèmes où divers utilisateurs sont autorisés à communiquer simultanément.

L'accès multiple est classiquement résolu en ayant recours au multiplexage temporel des signaux (GSM) où l'attribution de codes différents (code division Pour les réseaux CATV interactifs, il a récemment été multiple acces). proposé d'attribuer à chaque utilisateur une forme d'onde qui est en fait une fonction de base d'une transformation de Fourier discrète. Cette technique a été baptisée OFDMA (orthogonal frequency division multipleacces).

Solution: •  Structures en bancs de filtres (systèmes sous-bandes) , qui sont plus

généraux que les systèmes à transformation orthogonale.

Introduction

Un banc de filtre est un ensemble de filtres numériques travaillant en

parallèle et découpant la bande de fréquence en K sous bandes.

Le traitement du signal numérique traditionnel utilise des blocs comme: l’additionneur, multiplicateurs et des le retard.

Dans les systèmes banc de filtres, nous avons deux nouveaux bloc Décimateur

Expandeur

M↓

L↑

Sur-échantillonnage •  Consiste à effectuer une interpolation sur une suite x(n) en calculant

M-1 valeurs intermédiaires entre deux points consécutifs

Sous-échantillonnage •  Consiste à calculer, à partir d’une suite échantillonnée à fe, les valeurs

de la même suite qui aurait été échantillonnée à fe/M

M Décimateur

M décimation:

x

)( zY

1 −

M

1 = ∑ M

=

0

k

/1

WzX

M

(

M↓

y

ny )(

=

x

(

Mn

)

k

) ,

eW =

j /2 π−

M

z =

ωje

eY (

j ω

)

=

1 M

M

1 −

∑

k

=

0

j

( 2 πω −

Mk /)

( eX

)

Dans l’intervalle (-1/2,1/2), Y(f) est la somme algébrique de M contributions décalées de 1/M

Échelle temps

Séquence )(nx

Temps physique

)(tx

1−

0

1

2

3

4

5

6

7

)(ny

1−

0

1

2

3

4

n

n

T−

0

T

T2

T3

T4

T5

T6

T7

)(ty

0

T2

T4

T6

t

t

Échelle fréquence

Fréquence physique

( ωjeX )

( ωjeY )

1

0

1

2

0

π

π2

ω

π

π2

ω

Fréquence normalisée ) ( ΩjX

1

0

1

2

0

( ΩjY )

π T

π2 T

Ω

π T

π2 T

Ω

L Expandeur

x

y

L↑

L-expandeur:

ny )(

⎧= ⎨ ⎩

),

nLnx /( ,0

un est en

multiple rest

de

L

zY )(

=

LzX (

)

z =

ωje

eY (

j

ω = )

eX (

Lj ω

)

On retrouve le spectre de x(n) répliqué L fois

Filtre Décimateur

x

u

)(zH

M↓

Filtre Décimateur

Décimateur

y

∞

zU )(

=

zHzX )( )(

)( nu

=

()( knhkx

−

)

∑

−∞=

k

zY )(

=

=

1 M 1 M

M

1 −

∑

k

=

0

M

1 −

∑

k

=

0

/1

WzU

(

M

k

)

)( ny

=

u

(

Mn

)

∞

/1

M

WzHWzX )

(

(

/1

M

k

k

)

=

∑

k

−∞=

()( hkx

kMn −

)

Filtre Interpolateur

x

L↑

u

)(zH

y

expandeur

filtre interpolateur

zU )(

=

LzX (

)

zHzUzY )(

)(

)(

=

=

L

zHzX ) )(

(

nu )(

( ) nLnx / , ⎧= ⎨ ,0 ⎩

multiple rest

en

de

L

)( ny

=

=

∞

knhku

()(

−

)

∑

k

−∞=

∞

∑

k

−∞=

()( nhkx

−

kL

)

Connexion des éléments d’un schéma bloque

x

c

M↓

2x

2x

1x

1x

M↓

M↓

y

y

y

≡

≡

x

M↓

1x

M↓

≡

1x

M↓

c

2x

M↓

2x

M↓

y

y

y

Décimateur-Expandeur en cascades

x

x

0u

1u

L↑

M↓

M↓

L↑

0y

1y

yy =

0

1

et si

seulement

si

( LM ,

) premiéres

Simplification

Identité 1:

( MzH

)

M↓

y

x

≡

M↓

)(zH

Identité 2:

L↑

( LzH

)

y

x

≡

)(zH

L↑

x

x

y

y

Filtres Spéciaux

zE

=)(0

c

Filtre banc d’ordre M:

M

1 −

∑

k

=

0

zWH (

k Mc ) =

Représentation fréquentielle:

)(zH

(zWH

)

zWH (

2

)

1−MzWH

(

)

0

π2

ω

Banc de Filtres Numériques

Analyse

Synthèse

x

)(0 zH

)(1 zH

0x

1x

0y

1y

)(0 zF

)(1 zF

H M −

)(1 z

1−Mx

1−My

FM −

)(1 z

y

Conclusions:

M-banc de filtres:

x

)(0 zH

)(1 zH

0x

1x

M↓

M↓

0v

1v

0u

1u

M↑

M↑

)(0 zF

)(1 zF

H M −

)(1 z

1−Mx

M↓

1−Mv

M↑

1−Mu

FM −

)(1 z

xˆ

La reconstruction exacte est: )(ˆ zX

zX (

cz

),

n 0

−

=

nx )(ˆ

=

nncx 0

−

(

)

M=2 :

x

0x

1x

)(0 zG

)(1 zG

2↓

2↓

2↑

2↑

0y

1y

)(0 zH

)(1 zH

zXzGzXzGzHzY )( )()( − 0 0

()

( − 0

)[

( 0

=

+

2/)]

zXzGzXzGzHzY )( )()( − 1 1

( −+ 1

()

)[

=

( 1

2/)]

La reconstruction parfaite est assurée lorsque

)(ˆ zX

r−= zXz )(

zHzGzHzG +

)( 0

)( 0

)( 1

2)( = 1

r −

z

zHzGzHzG

( −+ 1

)( 0

( − 0

0)( = 1

)

)

•  QMF: G1(z)=G0(-z)

•  CQF: G1(z)=(-z) -N G0(-z -1)

Transmission Numérique

Types de transmission

•  Transmission en bande de base: les signaux sont transmis

tels qu’ils sortent de la source

•  Transmission par modulation: transposer le signal en autre contenant la même information, mais avec une modification en fréquence du signal –  Permet le multiplexage fréquentiel –  Adaptation aux condition d’un milieu de transmission

Quantité d’information

•  La quantité d’information I contenue dans un caractère est :

I −=

log2

ixp )(

•  Quantité d’information moyenne d’une source Entropie

Soit une source ayant émis un message de m caractère issus d’un alphabet de n caractère alors

XH )(

−=

n

∑

1 =

i

xp log)( i 2

xp )( i

Message numérique en bande de base •  Le message numérique est une suite {dk} de v.a. à valeurs

dans {0,1}

•  Le modulateur associe de façon bijective à chacun de 2k

message possible un signal à temps continue x(t)

•  Exemple: le signal numérique est engendré à partir d’une

impulsion h(t) décalée et modulée par dk

)( tx

( kTthd ) b k

−

K

∑ =

k

1 =

•  Où Tb est l’intervalle de temps entre l’émission de 2 bits D 1= b T

b

Transmission binaire

•  On considère un alphabet fini à M symboles

2mM = •  On choisit un codage qui asso