• Aucun résultat trouvé

 4 Filtres numériques

N/A
N/A
Protected

Academic year: 2022

Partager " 4 Filtres numériques"

Copied!
68
0
0

Texte intégral

(1)

4 Filtres numériques

4.1 Généralités

4.1.1 Rappels sur le filtrage

Un filtre est un dispositif destiné à séparer les différentes composantes d’un mélange hétérogène.

Exemple: le filtre à café sépare les particules solides du liquide.

Dans le domaine du traitement du signal, un filtre agit dans le domaine des fréquences pour séparer des signaux entre eux ou éliminer des signaux indésirables.

Les systèmes linéaires stationnaires sont des convolueurs temporels.

( ) ( ) ( )

( ) ( ) ( )

s t h t e t S f H f E f

 

 

Ils établissent une relation simple dans le domaine des fréquences; c’est pourquoi ils sont utilisés comme filtres.

Un filtre ne doit pas déformer le signal qu’il est chargé de conserver. Pour cela, sa réponse en fréquence doit répondre à deux conditions essentielles :

 Module constant dans la bande passante.

 Phase linéaire dans la bande passante.

Pour approfondir :

http://www.ist.jussieu.fr/~auvray/CSE009_Filtres_Harmoniques_Generalites.pdf

4.1.2 Systèmes numériques

Un système de traitement numérique produit un signal s(k) à partir d'un signal d'entrée ou d'excitation e(k). L'opérateur H est un ensemble d'équations spécifiant la relation mathématique entre s(k) et e(k) : s k( )H e k

( )

.

Si le système est linéaire, l'opérateur H possède les propriétés de linéarité au sens mathématique du terme. Il est stationnaire si ses propriétés sont invariantes dans le temps.

Les signaux d'entrées et sorties des systèmes numériques linéaires et invariants (S.N.L.I.) sont liés par des relations de la forme:

 

 

1

0 1

0

M

m

m k m N

n

n k

n

s b e

a

appelées équations aux différences linaires (similitude avec les équations différentielles des systèmes continus).

Les systèmes numériques traitent les signaux numériques, échantillonnés et quantifiés, en effectuant des séries de calculs sur les échantillons. Pour un traitement en temps réel, ces calculs doivent être effectués durant la période d’échantillonnage. Ce qui limite la fréquence d’échantillonnage!

Les progrès technologiques, en augmentant la fréquence de fonctionnement des composant ont permis de pénétrer des domaines de fréquence de plus en plus élevés (audio, vidéo, télécommunications, etc..).

(2)

4.1.3 Filtrage des signaux numériques

Le spectre des signaux numériques est périodique (Chapitre 1 Signaux échantillonnés).

Considérons un exemple de signal numérique échantillonné à 200Hz.

Figure 4.1-1

La réponse en fréquence d’un filtre numérique est nécessairement périodique pour agir sur toutes les périodes de la même façon. Observons l’action d’un tel filtre (en module). Le filtre choisi pour cet exemple est un filtre passe bas de fréquence de coupure

f

c

 27,5 Hz

Figure 4.1-2 Et voilà !! Le filtre agit autour des multiples de la fréquence d’échantillonnage.

Figure 4.1-3 Il est donc inutile de représenter plusieurs périodes. La bande utile suffit :

2 2

e e

f f

f

   ou en fréquence réduite 1 1

2 x 2

   .

Pour les signaux réels, dont les spectres respectent la symétrie hermitienne, il est même possible de ne représenter que la partie positive : 1

0 x  2.

Figure 4.1-4

(3)

4.1.4 Classification des filtres numériques

Il est nécessaire de connaître les bases du filtrage; pour approfondir :

http://www.ist.jussieu.fr/~auvray/CSE009_Filtres_Harmoniques_Generalites.pdf 4.1.4.1 Filtres idéaux

Nous retrouvons la classification des filtres idéaux en fonction de leur action dans le domaine des fréquences.

Mais à la différence des filtres analogiques, leur réponse en fréquence est périodique de période

f

e.

Les fréquences de coupure sont proportionnelles à

f

e.

C’est pourquoi, nous raisonnerons de façon très générale en fréquences réduites en posant :

e

x f

f

.

Il faut toutefois signaler les filtres en peigne, peu usités en analogique, qui sont périodiques dans la bande de fréquence utile

2 2

e e

f f

f

   .

Faciles à réaliser en numérique, ils peuvent trouver de nombreuses applications.

Figure 4.1-5

(4)

4.1.4.2 Réponse impulsionnelle

Un filtre linéaire réalise une convolution temporelle.

La réponse impulsionnelle d’un filtre caractérise son comportement vis à vis des signaux, dans le domaine temporel et dans le domaine fréquentiel par transformation de Fourier.

La réponse impulsionnelle prend donc une importance considérable dans le traitement numérique dans la mesure où les calculs sur les échantillons sont effectués dans le domaine temporel.

4.1.4.2.1 Filtres RIF

Les systèmes numériques peuvent calculer un produit de convolution si l’un des termes est à support borné [nul en dehors d’un intervalle]. C’est le cas si la réponse impulsionnelle est finie :

1 1

0 0

0 1 1 2 2 3 3

...

1 1

N N

k k l l l k l

l l

k k k k k N k N

s h e h e

s h e h e h e h e h e

   

          

 

Les filtres conçus sur ce principe sont appelés filtres RIF (Réponse Impulsionnelle Finie ; FIR en Anglais).

Le filtrage RIF est une moyenne glissante pondérée (la moyenne glissante étudiée dans le cadre des systèmes numériques au chapitre 3 est un excellent exemple de filtre RIF ; à revoir !!).

4.1.4.2.2 Filtres RII

Si la réponse impulsionnelle est infinie les filtres sont appelés filtres RII (IIR en Anglais).

Les échantillons sont calculés à partir de l’équation aux différences qui est une relation de récurrence.

4.1.4.3 Structures de réalisation

4.1.4.3.1 Structure transversale ou non récursive

Cette structure est la structure naturellement associée aux filtres RIF. Toutefois, pour diminuer le nombre de calculs, les filtres RIF peuvent être réalisés sous forme récursive.

4.1.4.3.2 Structure récursive

Cette structure est la structure associée aux filtres définis par une équation de récurrence, donc en majorité les filtres RII.

4.1.4.3.3 Transformée de Fourier discrète

Les algorithmes de transformation rapide permettent de raisonner dans le domaine des fréquences, en agissant directement sur le spectre du signal à traiter.

Ces structures de bases peuvent être associées en cascade ou en parallèle pour réaliser des filtres complexes.

D’autres structures existent, filtres en treillis, en échelle etc….mais sont beaucoup moins utilisés.

(5)

4.1.5 D.S.P.

L’augmentation de la puissance de calcul des processeurs informatiques et de la densité d’intégration des composants a abouti à la réalisation de DSP (processeurs de signaux numériques) très performants.

Les processeurs d’usage général effectuent une multiplication par une suite d’additions, exécutant un programme, nécessitant donc plusieurs cycles d’horloges. La durée d’une multiplication est importante et limite la fréquence des signaux traités. Ou la complexité du traitement.

L’élément principal d’un processeur de signal est un multiplieur « câblé » qui effectue une « MAC » (Multiply and Accumulate) c'est-à-dire une multiplication suivie d'une addition et d'un stockage du résultat, le tout en un seul cycle d’horloge.

La majorité des DSP manipulent des nombres entiers (en virgule fixe). Cependant, certains DSP possèdent des unités de calcul en virgule flottante pour des applications qui nécessitent une grande précision ou une large dynamique.

Quelques exemples déjà anciens de DSP Texas Instrument et de leurs performances:

DSP Temps de cycle

Mode RIF 64 coeff Fe max

RII 5 cellules Fe max

FFT 1024points

TMS320C54x Tc=10ns

Virgule fixe 1,56 MHz 5 MHz 0,5 ms

TMS320C62x Tc=5ns

Virgule fixe 5,54 MHz 5,55 MHz 104 µs

TMS320C67x Tc=6ns

Virgule flottante

4,8 MHz 3,4 MHz 124 µs

Le développement du parallélisme et des coprocesseurs spécialisés ont permis une amélioration de ces performances.

L’évolution est plus rapide que la mise à jour de ce cours. A ce jour, le DSP TMS320C64x atteint un temps de cycle inférieur à 1 ns et effectue 8 GMACS (milliards de MAC par seconde). Les performances des différents DSP sont évaluées et comparées dans des tests adaptés « BDTI DSP Kernel Benchmarks ».

Les DSP peuvent être associés dans un même boitier avec d’autres composants : microprocesseur, convertisseurs AN et NA, coprocesseurs spécialisés...

Le filtrage numérique peut aussi être réalisé à l'aide de FPGA, contenant des « cœurs DSP ».

Pour en savoir plus:

http://fr.wikipedia.org/wiki/Digital_Signal_Processor http://fr.wikipedia.org/wiki/FPGA

http://www.bdti.com/pocket/pocket.htm

et bien sûr, vous pouvez suivre l’excellente UE (cours et TP) du CNAM, ELE119 : Processeurs de signaux et logique programmable

http://dnf3.cnam.fr/offre2006/ue.php?code_formation=ELE119

(6)

4.1.6 Filtre analogique ou numérique?

Question intéressante! Comparons avantages et inconvénients.

 Les filtres numériques sont insensibles aux conditions extérieures (humidité, température…).

 Les filtres d’ordre élevé sont plus facilement réalisables qu’en analogique.

 Les bruits générés sont des bruits de quantification et de calcul, liés au nombre de bits de codage et donc maîtrisables. Le bruit de calcul peut être considérablement réduit en utilisant un processeur à virgule flottante.

 Les paramètres d’un filtre sont déterminés par des coefficients numériques. Mise au point et modifications d’un filtre sont faites en modifiant des constantes dans un logiciel, sans toucher au matériel. Cette propriété permet de faire varier les paramètres à distance ou même de les calculer au fur et à mesure pour réaliser des filtres adaptatifs.

 Les filtres numériques nécessitent un filtre analogique à l’échantillonnage et à la restitution. Mais la complexité de la partie analogique peut être réduite par traitement numérique.

4.1.7 Comparaison des différents filtres numériques

Les qualités des différents filtres numériques sont liées aux applications et aux progrès technologiques. Elles seront développées tout au long de ce cours.

Néanmoins, il est bon de préciser les propriétés qui vont orienter le choix de l’ingénieur.

Les filtres RIF nécessitent en général un nombre de coefficients élevé, plus élevé que les filtres RII pour une même sélectivité.

Mais la linéarité de la phase, propre aux filtres RIF est indispensable aux traitements de certains signaux comme les images.

Les filtres RIF sont toujours stables ; ils sont très utilisés en filtrage adaptatif.

Les filtres RII en treillis sont faciles à stabiliser ; ils sont utilisés dans la modélisation des conduits vocaux.

(7)

4.2 Filtre RIF 4.2.1 Principe

Un filtre RIF calcule le produit de convolution de signaux échantillonnés. La fonction de filtrage est définie par les valeurs des échantillons

h

kde la réponse impulsionnelle.

Soit N le nombre de coefficients numériques du filtre.

1 1

0 0

0 1 1 2 2 3 3

...

1 1

N N

k k l l l k l

l l

k k k k k N k N

s h e h e

s h e h e h e h e h e

   

          

 

Le diagramme ci-contre représente la convolution du signal par la réponse impulsionnelle échantillonnée.

Pour illustrer cet exposé, nous prendrons comme exemple un

filtre passe bas idéal et nous appliquerons les connaissances acquises lors du chapitre précédent

« Systèmes Numériques ».

Les coefficients du filtre sont les échantillons de la réponse impulsionnelle.

La réponse impulsionnelle est échantillonnée. e

( )

k

(

e

)

k

h t   h

tkT

 

1 1

( ) ( ) ( )

e f e x

h tTF

  H f    f TF

H x

La transformée d’une fonction périodique se calcule à partir de la génératrice Gx

 

x . Calculons la transformée inverse :

 

 

1 1 2

( ) e f( ) ( e) k x( ) x( ) j kx

k k

h t T TF G f t kT h TF G x  G x e dx



   

 

       

On retrouve le développement en séries complexes de Fourrier. En effet, la réponse en fréquence étant périodique, elle est développable en série complexe.

Les échantillons de la réponse impulsionnelle sont les coefficients du développement en série complexe de la réponse en fréquence.

(8)

4.2.2 Filtre passe bas RIF

4.2.2.1 Présentation

Le filtre qui nous servira de base pour l’étude est un filtre passe-bas idéal de fréquence de coupure

c

0, 2

e

f   f

. La réponse en fréquence Hf( )f est périodique de période

f

e.

Soit

H x

x

( )

la réponse en fréquence réduite, de période 1, et

G x

x

( )

sa génératrice. La fréquence de coupure réduite est

x

c

 0, 2

Figure 4.2-1

Figure 4.2-2

4.2.2.2 Réponse Impulsionnelle

Les échantillons de la réponse impulsionnelle sont les coefficients du développement :

1 2 2 1 2

( )

j kx

k x

h  

H x e

dx

En introduisant la génératrice : hk  G x ex( ) j2kxdx



2

2

sin( 2 )

2 2 sinc( 2 )

2 2

c c

c

c

j kx x

x j kx c

k x c c

x

k x

h e dx e x k x

j k k

 

         

 

La réponse impulsionnelle est un sinus cardinal échantillonné. C’est tout simplement la transformée inverse de la génératrice échantillonnée, le sinus cardinal étant la transformée inverse de la fonction porte (ou fenêtre) rectangulaire.

Figure 4.2-3

(9)

Une petite vérification à effectuer systématiquement :

0 5

0, 2 0, 4 0

xchh

Le résultat est correct. Mais cette réponse impulsionnelle est infinie et non causale. Il est nécessaire de la tronquer pour la rendre finie.

Remarque : dans le cadre de cet exemple, la symétrie de la réponse en fréquence (réelle et paire) entraîne une réponse impulsionnelle réelle et paire.

4.2.2.3 Troncature et décalage

Pour tronquer la réponse impulsionnelle on la multiplie par une fenêtre rectangulaire symétrique qui conserve un nombre fini d’échantillons non nuls. La largeur de la fenêtre

T

w est un multiple de la période d’échantillonnage pour garder un nombre entier de coefficients.

Choisissons

T

w

 ( N  1)  T

e. avec 11 ce qui correspond au lobe central et deux lobes latéraux.

Figure 4.2-4

Figure 4.2-5 La réponse impulsionnelle est maintenant finie.

Mais la troncature a annulé les échantillons situés en dehors de la fenêtre ; donc les coefficients de rangs les plus élevés. Du point de vue du développement en série évoqué au paragraphe précédent, les

« harmoniques » de rangs élevés vont manquer. Et la réponse en fréquence ne sera pas parfaite !!

Mais nous ne pouvons pas encore l’observer car la réponse impulsionnelle n’est pas causale ! Cette réponse est rendue causale par décalage d’une demi-largeur de fenêtre : 1

2 2

w

e

T N

T

 

sin 1 2

1 2 c

k N x

N   

     

(10)

Figure 4.2-6 Les coefficients du filtre sont donc :

k 0 1 2 3 4 5 6 7 8 9 10

h

k 0 -0,08 -0,06 0,09 0,30 0,40 0,30 0,09 -0,06 -0,06 0

Les échantillons

h

0et

h

10sont nuls et peuvent être supprimés pour simplifier.

4.2.2.4 Fonction de transfert

Calculons la fonction de transfert en z du filtre :

 

1

0 N

k k k

H z h z

  

 

0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10

H zhh zh zh zh zh zh zh zh zh zhz

En multipliant par

10 10

z

z

,

 

10 10 0

10 10

( )

k k k

h z N z

H z z z

 

Calculons et traçons les racines de N(z), zéros de H(z).

Figure 4.2-7

(11)

Un des zéros, rejeté très loin, n’est pas représenté. Le zéros voisin de l’origine (l’écart est le résultat des erreurs de calcul) et celui qui est rejeté à l’infini sont dus aux échantillons nuls. Les valeurs exactes sont 0 et



. Aucune influence sur la réponse en fréquence.

Remarquez les zéros sur le cercle, qui sont des zéros de transmission du filtre (atténuation infinie).

4.2.2.5 Réponse en fréquence (Module)

Calculons la réponse en fréquence en affectant à z la valeur complexe :

z  exp( 2 j

x )

10

2 0

( )

j x

x k

k

H x h e

  

En utilisant la symétrie de la réponse impulsionnelle

h

k

h

10k et en mettant

e

j10x en facteur,

4

10 1

( ) 1 2 cos(2 )

j x

x k

k

H x h k

x e

 

        

  

Figure 4.2-8 La réponse est périodique comme prévu.

Analysons plus finement la réponse en fréquence dans la bande utile :

Figure 4.2-9

Les ondulations dues à la suppression des harmoniques de rangs élevés sont là!! Ondulations de Gibbs.

Dans la bande rejetée, les ondulations entraînent des annulations du module, c'est-à-dire des zéros de transmissions. Nous avons des zéros sur le cercle unitaire!

Zéro de transmission

Zéro de transmission Paire de zéros en

bande passante

(12)

Figure 4.2-10

Dans la bande passante, les ondulations sont dues aux paires de zéros qui ne sont pas sur le cercle.

Les zéros sont inverses deux à deux, car sur le cercle, l’inverse est conjugué (et réciproquement)..

Le zéro proche de l'origine est inverse d'un zéro proche de l'infini (très loin) non représenté.

4.2.2.6 Réponse en fréquence (Argument) Observons l’argument :

Figure 4.2-11

L’argument est linéaire dans la bande passante

 0, 25  x  0, 25

même si la représentation graphique présente une discontinuité de 2 due à la périodicité des fonctions trigonométriques. En effet l’argument d’un nombre complexe est défini à 2 près, et ne permet pas de savoir si son affixe a accompli plusieurs tours.

Par contre, les discontinuités de en dehors de la bande passante sont dues aux changements de signe aux voisinages des zéros.

Après le décalage, la réponse impulsionnelle a pour équation :

 

 

0.. 2 sinc 2 1

2

0.. 0

k c c

k

k L h x x k N

k L h

  

       

 

 

 

Zéro de transmission Zéro de

transmission

Discontinuité fictive Ondulation en

bande passante Zéros de

transmission

(13)

Le décalage de 1

2 2

w

e

T N

T

  introduit un déphasage proportionnel à la fréquence comme le montrent les équations suivantes :

2 2

( ) ( ) ( ) ( )

2

Tw

j f

w

w TF wf w TF wf

h t  H fh tT  H fe

.

Soit Hdf

 

f la réponse en fréquence du filtre définitif (après troncature et décalage).

     

1

2 2

2 2

w N Te

j T f j f

f wf wf

Hd f H f e

H f e

 

   

   

j N 1x

' ( )1

x wx

Hd xH x e

 

d où

x   

N   x

Les courbes représentatives de l’argument sont des segments de droite.

Ce filtre est « à phase linéaire », pas de distorsion de phase. Il retarde le signal de 1

2 e

NT

.

Vérification sur le graphe précédent : N=11, le déphasage est de  pour x=0,1. Le retard est de

5  T

e La linéarité de la phase est associée au fait que les zéros vont par paires inverses. Les zéros sur le cercle conjugués sont inverses.

4.2.2.7 Influence de la largeur de la fenêtre

La largeur de la fenêtre (et donc le nombre d’échantillons) influe sur la réponse en fréquence.

Lorsqu’elle augmente, la fréquence des oscillations augmente et la réponse en fréquence du filtre se rapproche de la réponse idéale.

Un raisonnement simple, sur le développement en série de Fourier, montre que ce développement se rapproche de la fonction périodique lorsque le nombre de termes augmente.

La largeur de la bande transition diminue avec l’augmentation du nombre de coefficients.

Pour des filtres à 11 (courbe rouge) et 41 échantillons (courbe bleue) nous obtenons :

Figure 4.2-12

4.2.2.8 Influence de la forme de la fenêtre

(14)

Considérons la fenêtre rectangulaire Wr

 

f et sa transformée de Fourier Wf

 

f . La troncature est le produit de la réponse impulsionnelle par l’équation de la fenêtre.

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

w r TF wf f r

h th t W t H fH fW f

La multiplication dans le domaine des temps se traduit par une convolution dans le domaine des fréquences. Si la transformée de la fenêtre présente des oscillations, la réponse en fréquence présente des ondulations.

En adoptant une fenêtre de pondération moins abrupte, avec une transformée sans oscillations (par exemple en cosinus surélevé) les ondulations, en bande passante mais aussi en bande rejetée, sont considérablement diminuées.

Figure 4.2-13 Cette fenêtre est appelée fenêtre de Hann (Julius von Hann).

Pour N=11 échantillons (courbe bleue) comparez à la courbe précédente rouge:

Figure 4.2-14

Les ondulations ont disparu (du moins en échelle linéaire), mais la bande de transition est plus large.

La solution est d’augmenter le nombre de coefficients.

Observons la réponse en fréquence d’un filtre à 41 échantillons avec une fenêtre de pondération de Hann.

(15)

Figure 4.2-15

En échelles logarithmiques, les ondulations en bande coupée sont plus visibles. Elles sont inférieures à - 40dB.

Figure 4.2-16

(16)

4.2.3 Filtre passe haut RIF

4.2.3.1 Réponse impulsionnelle

Considérons la réponse en fréquence d’un filtre passe haut idéal :

Figure 4.2-17 La réponse en fréquence d’un filtre passe haut est celle d’un passe bas décalée de

2 fe

soit 1 2 en fréquence réduite.

Figure 4.2-18 Appliquons cette translation de fréquence au filtre passe bas.

    1

2 2

e

fPH fPB xPH xPB

H f Hf fH x Hx

       

 

 

La réponse en fréquence est déduite de la fonction de transfert en z.

   

j2 x

xPB PB

H xH z pour ze

   

   

2 ( 1)

2 2

2 2

j x

j x j j x

xPH PB

j x

xPH PB

H x H z pour z e e e e

H x H z pour z e

 

   

  

D’où la fonction de transfert :

   

PH PB

H zHz

 

      1

k

PB PBk

k

k k k

PH PB PBk PHk

k k

H z h z

H z H z h z h z

 

       

 

  1

k

PHk PBk

hh  

Les échantillons impairs sont inversés (changés de signe).

(17)

La réponse impulsionnelle d’un filtre passe haut se déduit de celle du filtre passe bas ayant les mêmes caractéristiques. Par exemple comparons la réponse impulsionnelle d’un filtre passe-bas idéal

fc0, 2

et celle d’un passe-haut

fc0, 3

.

A cause de la translation, 1

c 2 c

x passe haut  x passe bas .

Figure 4.2-19 Inutile de refaire l’étude, elle se déduit de celle du passe bas.

Troncature, décalage…..

Figure 4.2-20 Ondulations, fenêtre de pondération…

(18)

4.2.4 Calcul des coefficients des filtres RIF

4.2.4.1 Fenêtres de pondération

De nombreuses fenêtres ont été étudiées, construites selon des critères différents. Leur objectif est de réduire les ondulations, tant dans la bande passante que dans la bande rejetée, au prix toutefois d’un élargissement de la bande de transition ; elles sont aussi utilisées comme fenêtres d'observation pour la FFT.

 Fenêtre de Barlett (triangulaire)

 Fenêtre de Hann Hann

  0,5 1 cos 2

W x x

N

    

      

 

 

 Fenêtre de Hamming Hamm

  0,54 0, 46 cos 2 x

W x

N

 

    

 

 Fenêtre de Blackmann Black

  0, 42 0,5 cos 2 x 0, 08 cos 4 x

W x

N N

   

        

   

 Fenêtre de Kaiser sous cette appellation, se trouve regroupée une famille de courbes dépendant d'un paramètre et utilisant les fonctions de Bessel de première espèce (dans tout bon livre sur le sujet).

4.2.4.2 Réponse impulsionnelle avec fenêtre

 Calcul de la transformée de Fourier inverse g(t) de la génératrice ;

 Choix du nombre d’échantillons (pair ou impair) ;

 Echantillonnage de g(t) ;

 Choix d’une fenêtre ;

 Application de la fenêtre aux coefficients.

Des logiciels adaptés permettent le calcul direct des coefficients.

4.2.4.3 Echantillonnage en fréquence

La réponse en fréquence est échantillonnée. La Transformée de Fourier inverse permet le calcul des coefficients. Le nombre d’échantillons fréquentiels est égal au nombre de coefficients du filtre.

Figure 4.2-21

La réponse en fréquence correspond aux échantillons, mais présente des ondulations dans les intervalles.

(19)

La position des échantillons dans la bande de transition permet de minimiser l’amplitude des oscillations.

L’utilisation de la Transformée de Fourier Rapide (TFR ou FFT) demande une petite manipulation sur les périodes.

4.2.4.4 Méthode des moindres carrés

A partir de la réponse idéale, la transformée de Fourier discrète inverse calcule des coefficients. Un algorithme de calcul modifie ces coefficients afin de minimiser l’erreur quadratique.

4.2.4.5 Ondulations constantes

La méthode des moindres carrés fournit des filtres avec des ondulations d’amplitude variable.

Une méthode itérative permet de réaliser des filtres à ondulations d’amplitude constante dans la bande passante et dans la bande rejetée. (Algorithme de Parks et Mc Cellan utilisant lui même l’algorithme de Remez).

La bande de transition est moins large que celle obtenue par la méthode des moindres carrés.

Le filtre étant défini par son gabarit, le logiciel calcule les coefficients.

1 et 2 sont les amplitudes constantes des oscillations en bande passante et en bande coupée.

Figure 4.2-22

Le nombre de coefficients du filtre optimal est estimé par la formule suivante :

10

2 1 1 2

2 1

3 log 10

e e

N f

f f

 

 

    

    

Cette expression montre l’importance de la largeur de la bande de transition et celle moindre de l’amplitude des oscillations. Il faut aussi remarquer que la complexité du filtre est indépendante de la bande passante.

Cette formule donne des résultats convenables, sauf pour les bandes de transition très étroites.

Par exemple, calculons un filtre de fréquence de coupure réduite

x

c

 0, 2

avec une bande de transition  x 0.08 et des ondulations constantes 0.01.

Le nombre de coefficients estimé est de 25. Calculons le filtre avec le logiciel Scilab hn=eqfir(25,[0 0.16;0.24 .5],[1 0 0],[1 1 0]);

[hm,fr]=frmag(hn,256);

plot(fr,hm),

(20)

Figure 4.2-23 Le résultat est conforme à notre attente.

Avec MUSTIG, qui optimise les coefficients, nous simulons un filtre ayant les mêmes caractéristiques :

Figure 4.2-24 La réponse impulsionnelle est de 25 échantillons comme prévu !!

4.2.4.6 Passe haut

Les filtres passe-haut se déduisant par translation de fréquence des filtres passe-bas, le calcul des coefficients est identique. Les coefficients impairs sont inversés. La formule permettant le calcul du nombre de coefficients s’applique aussi aux passe-haut.

4.2.4.7 Passe bande

Pour les filtres passe bande, un majorant peut être calculé en considérant un passe bas et un passe bas en cascade, et en faisant la somme des coefficients.

(21)

Le nombre de coefficients dépend surtout de la bande de transition la plus faible. On peut appliquer

alors l’estimation 10

min 1 2

2 1

3 log 10

e e

N f

f  

 

    

    

4.2.4.8 Calibrage

Pour que le filtre ait la réponse voulue en continu (passe bas), les coefficients calculés à partir de la réponse impulsionnelle tronquée et pondérés par une fenêtre, doivent être calibrés.

Pour un filtre unité, H(0)=1 la valeur de chaque échantillon est divisée par la somme des

coefficients :

1

0 1

0 N

l k l l

k N

l l

h e s

h

4.2.4.9 Parité du nombre de coefficients

Si la réponse en fréquence du filtre est paire, la réponse impulsionnelle l’est aussi ; le nombre de coefficients peut être pair ou impair.

Nombre impair, N=2P+1 le filtre a un temps de propagation de

P T

e.

1 2

0

( )

e

2 cos(2 )

P j PT f

P k e

k

H f e

h h

k T f

 

        

  

Le retard est un nombre entier de périodes.

Figure 4.2-25 Nombre pair, N=2P le filtre a un temps de propagation de

1

2

e

P T

 

 

 

 

.

1 2

0

( )

e

2 cos(2 )

P j PT f

k e

k

H f e

h

k T f

 

       

  

(22)

Figure 4.2-26

4.2.4.10 Limitation du nombre de bits

Les coefficients sont réels. Dans les calculs ils sont exprimés avec un nombre limité de bits (surtout si le calcul est effectué en entiers). Cette quantification entraîne une erreur dans les calculs, erreur qui influence la réponse en fréquence.

1

2 0

( )

e

N

j kT f

f k

k

H f h e

  

.

En reprenant notre exemple de filtre passe bas (15 échantillons) avec fenêtre de Hann.

Figure 4.2-27 Les coefficients sont arrondis après multiplication par 256 (exprimés sur 8bits).

La limitation du nombre de bits augmente les ondulations dans la bande passante et dans la bande rejetée. Les ondulations en bande coupée ne sont visibles qu’en échelles logarithmiques.

Réponse avec arrondi

Réponse sans arrondi

(23)

Pour quantifier l’influence de la limitation du nombre de bits, nous raisonnons sur un grand nombre de filtres. Cette quantification sera statistique.

Soit

h

k, l’erreur de quantification sur le coefficient de rang k et H(f), l’erreur sur la réponse en fréquence.

1

2 0

e

N

j kT f k

k

H (f)

h e

  

h

k

est une variable aléatoire indépendante, à distribution uniforme avec un pas de quantification 2

 d’où une variance

2

12

.

Calculons la puissance de l’erreur :

2 1

2 2 2

0 2

( ) théorème de Parseval.

e

e

f

N

e k

f k

Heff T H f df h

 

Heff est une variable aléatoire, calculons sa variance :

1 1

2 2 2 2

0 0

= .

N N

k k

k k

E Heff E h h

 

 

     

   

2 2

N 12

 

 doit être choisi de telle sorte que la réponse en fréquence reste à l’intérieur du gabarit.

Heff est une variable aléatoire, somme d’un grand nombre de variables aléatoires indépendantes et peut être considérée comme gaussienne. Ce qui permet d’estimer l’amplitude de l’erreur en fréquence.

H

  f2, 6

(probabilité 1%) ou

H

  f3,3

(probabilité

 10

3).

Le gabarit doit être modifié en tenant compte de ces considérations.

La quantification des coefficients est déterminée à partir du coefficient qui a la plus forte valeur.

Reprenons notre exemple, le filtre passe bas à N=25 coefficients de fréquence de coupure

x

c

 0, 2

avec une bande de transition  x 0.08 et des ondulations constantes

 0,01

.

D’après les propriétés de la transformée de Fourier, le coefficient le plus grand est égal à l’aire de la surface du module.

h

13

  2 x

c

 0, 4

.

Si les coefficients sont exprimés sur 8 bits, 0, 4

  256.

La quantification introduit avec une probabilité de 1% une erreur de

25

3

2, 6 2, 6 5,85 10

12

      

L’amplitude réelle des ondulations peut atteindre 0,016.

(24)

4.2.5 Fonction de transfert

4.2.5.1 Transformée en z

L’équation aux différences linéaire est un produit de convolution.

Appliquons lui la transformée en z pour calculer la fonction de transfert.

1 1

0 0

( ) ( )

N N

l

k l k l TZ l

l l

s h e S z h z E z

       

1

1 2 1

0 1 2 1

0

( ) ... ...

N

l j N

l j N

l

H z h z h h z h z h z h z

             

4.2.5.2 Pôles et zéros

1 2 1

0 1 2 1

( ) ... j j ... N N

H zhh zh z  h z  h z

Multiplions et divisons la fonction de transfert par

z

N1pour faire apparaître les puissances positives et donc les polynômes, pour calculer leurs racines.

1

1

1 2

1

0 0 1 2 1

1 1

0

...

( )

N

N l

N N

N l

l l N N

l N N

l

h z h z h z h z h

H z h z

z z

 

       

   

 

La fonction de transfert possède N-1 zéros et N-1 pôles à l’origine.

Les pôles étant à l’origine, les filtres RIF sont toujours stables.

Les zéros sont réels ou complexes conjugués. Lorsque le filtre doit éliminer une bande de fréquence, ils doivent être situés au voisinage ou sur le cercle unitaire.

Exemple de filtre passe bas avec fenêtre rectangulaire (15 échantillons).

 

14 14 0

14 14

( )

k k k

h z N z

H z z z

 

N(z) est de degré 14, le filtre possède 14 zéros dont 8 sur le cercle.

Certains zéros sont en dehors du cercle ; le filtre n’est pas à déphasage minimal.

Zéros inverses.

Zéros inverses.

(25)

Remarquons que dans cet exemple, tout zéro possède son inverse (phase linéaire).

4.2.5.3 Phase linéaire ou non

La phase d’un filtre RIF est linéaire si sa réponse en fréquence est définie par son module car cela suppose que la phase soit nulle. La réponse en fréquence est réelle et paire.

TF

Réponse en fréquence Réponse impulsionnelle

réelle paire  réelle paire

Un filtre RIF est à phase linéaire si ses coefficients sont symétriques :

1

j N j

j h h

 

 

Dans ce cas, chaque zéro possède son inverse.

La réponse impulsionnelle doit être décalée pour rendre le filtre causal. Le temps de propagation de groupe est constant (indépendant de la fréquence). Le filtrage s’accompagne d’un retard.

Lorsque cette propriété n’est pas recherchée, le filtre peut être simplifié en le ramenant à un filtre à phase minimale (zéros à l’intérieur du cercle unitaire). Le nombre de coefficients est alors moins élevé ; mais la réponse impulsionnelle n’est plus symétrique. Le filtre ne peut plus être replié.

Le filtre peut être calculé en tant que filtre optimal, (algorithme de Remez) puis simplifié en supprimant des zéros doubles (§ Traitement numérique du signal par M.BELLANGER Dunod).

Les filtres RIF sont utilisés pour la linéarité de leur phase ou leur stabilité à toute épreuve.

Toutefois, lorsque ces propriétés ne sont pas critiques, des filtres RII peuvent être utilisés, avec des coefficients moins nombreux.

4.2.5.4 Schémas fonctionnels

0 1 1 2 2 1 1

1 2 1

0 1 2 1

...

( ) ... ( )

k k k k N N

N N

s h e h e h e h e

S z h h z h z h z E z

        

 

          

D’où les schémas fonctionnels :

Figure 4.2-28

Pour les filtres RIF à phase linéaire, les coefficients présentent une symétrie (paire ou impaire) ; le nombre de multiplications peut être réduit avec une structure « repliée »:

Sur cet exemple, le nombre de coefficients est impair.

(26)

Figure 4.2-29

Sur cette structure repliée, on peut constater que le nombre de multiplication est divisé par 2.

La structure transversale est naturellement associée aux filtres RIF. Toutefois, les filtres RIF peuvent être mis sous forme récursive. Dans le cas de filtres à bande étroite, la structure transversale nécessite un grand nombre de coefficients, donc de multiplications. Une structure récursive permet de diminuer le nombre d’opérations et donc la durée des calculs. Mais un problème de stabilité peut alors se poser.

4.2.6 Filtrage du bruit

Reprenons les relations étudiées dans le chapitre Systèmes Numériques.

( )

TZ

( ) h k  H z

( ) ( ) ( )

TZ

( ) ( ) ( )

s kh ke k  S zH zE z

   

2

 

S x

x H

x

x

E x

x

  

D’où

 

1 1

2 2

2

1 1

2 2

S e S x e x

( )

E x

W T x dx T H x dx

          

Si le signal est un bruit blanc centré , Ex

 

xN0Cste et WEE2 1

2 2

0 0

1 2

E E e e

W

T N dx N T

      

1

2 2

2 2

1 2

S S E x

( )

W

H x dx

    

En supposant l’ergodisme du signal,

1 2

2 2

0 N

S E k

k

h

  

.

(27)

4.3 Applications des filtres RIF 4.3.1 Interpolation

Considérons la technique de reconstitution d’un signal par sur-échantillonnage et interpolation (§1.3.4).

L’interpolateur est un filtre passe bas numérique que nous nous proposons d’étudier.

Dans le cas d’un sur-échantillonnage par 4,

f

e2

  4 f

e1 le filtre passe bas doit avoir une fréquence de

coupure 1 2

2 8

e e

f f

 soit une fréquence de coupure réduite de 0,125.

Observons la réponse impulsionnelle du filtre :

Figure 4.3-1

En conservant le lobe central et 2 lobes latéraux (14 échantillons) et en appliquant une fenêtre de pondération de Hamming :

Figure 4.3-2 Nous ne conservons que les échantillons de valeur importante :

k 0 1 2 3 4 5 6

h

k 0,048 0,132 0,215 0,25 0,215 0,132 0,048

 

6 2

2 6

3

0 0

2 cos(2 )

e e

j k T f j T f

f k k e

k k

H f h e

  

e

h h

k T f

 

          

 

 

D’où la réponse en fréquence :

Fenêtre temporelle conservée

Echantillons non nuls

(28)

Figure 4.3-3

La réponse en continu n’est pas exactement égale à 1. Pour le faire, nous pourrions diviser par la somme des coefficients.

Simulation de l’interpolateur sous MUSTIG :

Figure 4.3-4 Schéma du montage sous MUSTIG :

Figure 4.3-5 Signal téléphonique sur-échantillonné

Signal téléphonique échantillonné.

(29)

Figure 4.3-6

Quelques petites imperfections dans la reconstitution, car le filtre est très simple (peu d’échantillons pour une meilleur visibilité).

Dans la pratique rien n’empêche (sauf la durée des calculs) de réaliser un filtre plus performant avec beaucoup plus de coefficients.

Signal final.

(30)

4.3.2 Déphaseur RIF en quadrature

L’objectif est l’étude et la réalisation d’un filtre déphaseur en quadrature pour la bande téléphonique.

La fréquence d’échantillonnage est de 8kHz.

Définissons la réponse en fréquences du filtre :

   

( ) 1 dans la bande passante

arg H(f) 0 arg H(f) 0

2 2

H f

pour f et pour f

    

La réponse en fréquence peut se mettre sous la forme :

H f ( )    j signe f ( )

.

Nous calculons la réponse impulsionnelle échantillonnée par développement en série complexe :

0 2

2 2

0 2

2 sin ² 2

e

e e

e

f

j kT f j kT f

k e

f

k

h T j e df j e df

h k k

 

 

     

 

 

 

   

 

 

Figure 4.3-7 Remarquez que « un échantillon sur deux est nul ».

La réponse est infinie et non causale. Appliquons une fenêtre de Hamming sur 15 échantillons :

Figure 4.3-8

(31)

La réponse tronquée et décalée :

Figure 4.3-9 Calculons la fonction de transfert en z :

 

14

0 k k k

H z h z

  

 

0 2 2 4 4 6 6 8 8 10 10 12 12 14 14

H zhhzhzh zh zhzhzhz

Les zéros de la fonction de transfert sont :

Nous pouvons remarquer que tous les zéros possèdent leur inverse par rapport au cercle unitaire. Mais aucun zéro sur le cercle dans la bande utile (sauf en x=0 et x=1/2), c’est la caractéristique des déphaseurs.

Nous calculons la réponse en fréquence :

14

2 0

( )

k j kT fe

k

H f h e

  

Le développement fait apparaître une somme de sinus. D’où

la réponse en fréquences : Figure 4.3-10

Références

Documents relatifs

Mill partage avec les utilitaristes le même refus de penser l’être humain à partir d’une morale transcendante ou a priori (intuitionniste). Il n’y a pas de phénomènes moraux en

Ainsi, si f (t) est la distance parcourue au bout d’un temps t , la va- riation moyenne ne sera rien d’autre que la vitesse moyenne et le nombre dérivé est la vitesse

[r]

This is especially noticeable for the Jakarta meteor radar, where the ensemble mean zonal winds derived by HRDI (crosses) do not fall within the con®dence intervals (horizontal

Le nombre de nucléons est appelé nombre de masses (La masse d’un atome est concentrée dans son noyau). Le nombre de protons est appelé numéro atomique. Le nombre d’électrons

Plus généralement, la nature même de ce que l'on appelle « Science » varie selon les contextes : pour certains, comme ceux qui écrivent des programmes et référentiels

Exercice 4 : On considère une urne contenant trois boules jaunes, deux boules bleues, une boule rouge et quatre boules vertes.. On tire au hasard une boule

De plus, dans ces séances de calcul mental on peut introduire progressivement le produit de deux décimaux comme ci-dessous avant d’en arriver au chapitre..