résumé de cours 5. filtrage numérique · numérique utilisant la méthode invariance...

27
Traitement de signal, Filtrage ENSIL ELT 2 ième année Vahid Meghdadi 2009-2010 1 Résumé de cours 5. Filtrage Numérique 5.1. Introduction - Quelques avantages et inconvénients des filtres numériques - Ils sont programmables en changeant uniquement des variables et non pas le circuit. - On peut avoir des structures adaptatives, ce qui les rend très attractifs dans un certain nombre d'applications comme l'égaliseur de canal. - La simulation se fait de manière exacte sur l'ordinateur. - Pas de dégradation avec le temps et la température (2*2=4 il fait chaud ou froid, jour ou nuit !!!) - La fréquence d'opération est constamment en progrès à l'aide des circuits de plus en plus rapides. - Mais à ne pas utiliser à haute puissance - Donne des circuits complexes même pour des filtres simples - Plus de consommation électrique - Le système numérique remplaçant le système analogique - Le bloqueur en sortie du système peut être remplacé par un bloc interpolateur. Dans les pluparts des cas, la fonction de transfert de ce bloc modifie légèrement la fonction de transfert du système global. On peut cependant, en tenir compte et le récompenser dans la synthèse de H(z) du système numérique. La question est que nous connaissons le gabarit du filtre analogique et que nous cherchons un H(z) à remplacer dans le circuit ci-dessus pour finalement satisfaire le gabarit analogique. Pour pouvoir remplacer le système analogique par numérique, il faut échantillonner le signal au rythme supérieur à celui de Shannon. C'est à dire que le signal à l'entrée du convertisseur CAN doit être limité en fréquence : 2 2 pour 0 ) ( e f j X π > Par convention, nous prendrons pour la fréquence analogique et ϖ pour désigner la fréquence numérique dans l’intervalle (-π,π). Dans un premier temps, on calcule le gabarit du filtre numérique à partir du gabarit du filtre analogique. C’est une transformation linéaire en fréquence pour transformer l’intervalle (-f e /2, f e /2) dans l’intervalle (-π,π) : ( , ) ( , ) 2 2 e e f f ϖ ππ Ω∈ - ∈- C’est un résultat de la théorie d’échantillonnage. Les propriétés suivantes en découlent : Système analogique H a (p) x(t) y(t) Filtre anti- repliement CAN Système numérique H(z) CNA Bloqueur x(t) y(t)

Upload: others

Post on 29-Dec-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 1

    Résumé de cours

    5. Filtrage Numérique

    5.1. Introduction

    - Quelques avantages et inconvénients des filtres numériques - Ils sont programmables en changeant uniquement des variables et non pas le circuit. - On peut avoir des structures adaptatives, ce qui les rend très attractifs dans un certain

    nombre d'applications comme l'égaliseur de canal. - La simulation se fait de manière exacte sur l'ordinateur. - Pas de dégradation avec le temps et la température (2*2=4 il fait chaud ou froid, jour

    ou nuit !!!) - La fréquence d'opération est constamment en progrès à l'aide des circuits de plus en

    plus rapides. - Mais à ne pas utiliser à haute puissance - Donne des circuits complexes même pour des filtres simples - Plus de consommation électrique

    - Le système numérique remplaçant le système analogique - Le bloqueur en sortie du système peut être remplacé par un bloc interpolateur. Dans les

    pluparts des cas, la fonction de transfert de ce bloc modifie légèrement la fonction de transfert du système global. On peut cependant, en tenir compte et le récompenser dans la synthèse de H(z) du système numérique.

    La question est que nous connaissons le gabarit du filtre analogique et que nous cherchons un H(z) à remplacer dans le circuit ci-dessus pour finalement satisfaire le gabarit analogique. Pour pouvoir remplacer le système analogique par numérique, il faut échantillonner le signal au rythme supérieur à celui de Shannon. C'est à dire que le signal à l'entrée du convertisseur CAN doit être limité en fréquence :

    22pour 0)( e

    fjX π>Ω≈Ω

    Par convention, nous prendrons Ω pour la fréquence analogique et ω pour désigner la fréquence numérique dans l’intervalle (-π,π). Dans un premier temps, on calcule le gabarit du filtre numérique à partir du gabarit du filtre analogique. C’est une transformation linéaire en fréquence pour transformer l’intervalle (-fe/2, fe/2) dans l’intervalle (-π,π) :

    ( , ) ( , )2 2

    e ef f ω π πΩ∈ − ⇒ ∈ −

    C’est un résultat de la théorie d’échantillonnage. Les propriétés suivantes en découlent :

    Système analogique

    Ha(p)

    x(t) y(t)

    Filtre anti-repliement CAN

    Système numérique

    H(z)

    CNA Bloqueur

    x(t) y(t)

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 2

    • )( ωjeX est périodique : ZkeXeX kjj ∈∀= + )()( 2 πωω

    • Si ( ) 0 pour 22

    ea

    fH j πΩ ≈ Ω > , on aura : )(1)(

    ea

    e

    j

    TjH

    TeH

    ωω =

    • Si ( ) 0 pour 22

    ea

    fH j πΩ ≠ Ω > on aura : ∑

    −∞=

    +=k e

    ae

    j

    T

    kjH

    TeH )

    2(

    1)(

    πωω .

    C’est l’effet de recouvrement du spectre ou aliasing. Conclusion : nous avons un gabarit analogique donné.

    • Suivant la fréquence maximale du signal, on choisit la fréquence d'échantillonnage. • On calcule le gabarit du filtre numérique correspondant. • On calcule le H(z) pour que H(ejω) satisfasse le gabarit.

    5.2. Définitions

    - La fonction de transfert du filtre H(z) est rationnelle : )(

    )()(

    zQ

    zPzH =

    - 0

    1

    1 2 0 1

    ( )( )

    ( ) 1

    ( ) ( 1) ( 2) ... ( ) ( ) ( 1) ... ( )

    Mn

    nn

    Nn

    nn

    N M

    b zY z

    H zX z a z

    y n a y n a y n a y n N b x n b x n b x n M

    =

    =

    = = ⇒−

    = − + − + + − + + − + + −

    - si an =0 le filtre s’appelle non récursif ou RIF (à Réponse Impulsionnelle Finie) - si an ≠0 le filtre s’appelle récursif ou RII (à Réponse Impulsionnelle Infinie) - Le filtre numérique est stable si les pôles de H(z) sont à l'intérieur du cercle unité. - Il est linéaire et invariant dans le temps : la somme de convolution est applicable. - Le gabarit d'un filtre numérique H(ejω) est défini comme suit :

    5.3. Filtres à réponse impulsionnelle infinie (RII)

    On cherche à calculer un H(z) satisfaisant un gabarit donné. Pour que le filtre soit réalisable, il faut un certain nombre de conditions. • La fonction de transfert est une fonction rationnelle aux coefficients réels • Les pôles sont tous à l'intérieur du cercle unité Une méthode pour calculer le H(z) à partir du gabarit numérique consiste à transformer ce gabarit en un gabarit analogique (moyennant une transformation appropriée), et ensuite, concevoir le filtre analogique Ha(p). On revient dans le domaine numérique en appliquant la

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 3

    transformation inverse. Suivant la transformation utilisée, on obtient des caractéristiques différentes. Nous allons étudier les méthodes suivantes : • Invariance impulsionnelle (impulse invariance) • Approximation de dérivée (Backward difference) • Approximation de l'intégral / transformation bilinéaire

    5.3.1. Invariance impulsionnelle (impulse invariance)

    Si nous disposons de Ha(p) du filtre analogique, nous connaissons donc la réponse impulsionnelle du filtre ha(t). Cette méthode consiste à échantillonner ha(t) pour obtenir la réponse impulsionnelle du filtre numérique h(n)

    )()( nTThnh a= où T est la période d'échantillonnage. Noter que le h(n) est normalisé en utilisant le coefficient T devant ha(nT) pour conserver le gain du filtre. H(z) est immédiatement calculé à partir de h(n). La question est : quelle est la relation entre H(ejω) et Ha(jΩ) ? Rappelant le théorème d'échantillonnage, on peut écrire :

    ∑∞

    −∞=

    +=k e

    aj

    T

    kjHeH )

    2()(

    πωω

    En examinant cette équation, il est clair que le filtre numérique garde la même forme que le filtre analogique à condition que : ( ) 0aH jΩ ≈ pour T/π≥Ω ou de manière équivalante pour 2/eff ≥ , où fe est la fréquence d'échantillonnage. On cherche maintenant à trouver une transformation directe de Ha(p) en H(z) sans passer par la réponse temporelle du filtre. Imaginez par exemple que le filtre analogique défini par la fonction de transfert :

    bppH

    −= 1)( . La réponse impulsionnelle sera donc : ebtu(t). En échantillonnant ce signal, on

    obtient pour la réponse impulsionnelle du filtre numérique : )()()( nuTenTThnh bTna == qui a

    pour transformée en Z : 11

    )( −−=

    ze

    TzH

    bT

    En comparant les deux fonctions de transfert, on déduit que le pôle du système analogique à p=b est transformé en z=ebT. Sachant que n'importa quelle fonction rationnelle peut être divisée en somme des éléments du premier ordre, cette conclusion est généralisée pour tous les pôles d'un système. Remarque 1 : Un système analogique stable donne un système numérique stable car les pôles dans le demi-plan gauche du plan "p" sont projetés dans le cercle unité du plan "z".

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 4

    Remarque 2 : L'axe de jΩ dans l'intervalle de (-π/T,π/T) est projeté sur le cercle unité. Si on monte encore sur l'axe jΩ et on dépasse le point π/T, l'image sur le plan Z continue à tourner autour du cercle unité. Ceci est l'effet de repliement dont on a parlé auparavant. Remarque 3 : Ayant une fonction rationnelle analogique, on la développe en éléments de premier ordre et ensuite, on utilise la transformation :

    11)(

    1)( −−

    =⇒−

    =ze

    TzH

    bppH

    bTa

    Remarque 4 : La commande "impinvar" de matlab, transforme un filtre analogique en numérique utilisant la méthode invariance impulsionnelle. Remarque 5 : Cette méthode ne peut pas être utilisée pour des filtres passe haut et coupe bande puisque l'effet d'aliasing supprime complètement l'effet de filtrage. Exercice : Considérer un filtre analogique Butterworth de second ordre avec la fréquence de coupure -3dB à 3000 Hz. Utilisant la méthode invariance impulsionnelle, calculer le filtre numérique résultant si la fréquence d'échantillonnage est égale à 30 KHz.

    réponse : [ ] [ ] 1211 exp12/2

    exp1

    2/2)( −− −

    +−

    −=zpT

    j

    zpT

    jzH

    sc

    c

    sc

    c

    ωω

    ωω

    où ωc=6000π et 2

    2

    2

    2)2(1 jp ±−=

    5.3.2. Approximation de dérivée

    Une fonction de transfert en "p" est une équation différentielle dans le temps. En effet :

    ∑∑∑

    ==

    =

    = =⇔==M

    kk

    k

    k

    N

    kk

    k

    kN

    k

    kk

    M

    k

    kk

    txdt

    ddty

    dt

    dc

    pc

    pd

    pX

    pYpH

    00

    0

    0 )()()(

    )()(

    En approximant x'(t) par T

    nxnx )1()( −−, on peut remplacer "p" par

    T

    z 11 −−. Ceci est une

    transformation facile à faire et on obtient H(z) en remplaçant "p" par T

    z 11 −− dans Ha(p) :

    T

    zp

    pHzH a1

    1)()( −−=

    =

    Remarque 1 : Un système analogique stable donne un système numérique stable car les pôles dans le demi-plan gauche du plan "p" sont projetés dans un cercle présenté ci-dessous :

    Plan P Plan Z

    jπ/T

    -jπ/T

    Z=epT

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 5

    Remarque 2 : l'axe jω n'est pas projeté sur le cercle unité. Ceci signifie que la forme de la réponse fréquentielle du filtre analogique sera déformée et on ne peut pas deviner la réponse fréquentielle du filtre numérique. Par contre, on attend par l'intuition, que quand le T est suffisamment petit, l'approximation devienne exacte. En effet, quand T tend vers zéro, une grande partie de l'axe jω (de -jM à jM où M est un grand réel) est projetée autour du point z=1. A cet endroit les deux cercles sont tangents. C'est à dire que l'axe jω est quasiment projeté sur le cercle unité. A ce moment là, la réponse fréquentielle du filtre numérique est quasiment identique à celle du filtre analogique : )()( Ω≈ jHeH a

    Tjω .

    Remarque 3 : Déduisant de la remarque 2, cette transformation est utilisée pour les filtres passe bas et passe bande. Remarque 4 : Augmenter la fréquence d'échantillonnage n'est pas toujours toléré. Exercice : Montrer qu'une approximation de dérivée par la relation )()1()( nynyny −+≈′ peut aboutir à des filtres numériques instables.

    5.3.3. approximation de l'intégral / transformation bilinéaire

    Cette méthode consiste à approximer l'intégral temporel par son approximation numérique.

    Soit : 01

    0

    )(

    )()(

    cpc

    d

    pX

    pYpH a +

    == .

    On peut écrire le y(t) en fonction de sa dérivée :

    )()()( 00

    tydttyty at

    t aa+′= ∫

    En remplaçant t par nT et t0 par (n-1)T, on obtient :

    ))1(()()()1(

    TnydttynTy anT

    Tn aa−+′= ∫ −

    Nous n'avons qu'à remplacer l'intégral par son approximation trapézoïdale :

    ( ) ))1(())1(()(2

    )( TnyTnynTyT

    nTy aaaa −+−′+′=

    En utilisant la fonction de transfert du système, on peut écrire :

    )()()(1

    0

    1

    0 nTxc

    dnTy

    c

    cnTy aaa +

    −=′

    En remplaçant cette équation dans la relation précédente, on obtient :

    Plan P Plan Z Z=1/(1-pT)

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 6

    [ ] ( )

    −++−+−=−− )1()())1()((

    2)1()(

    1

    0

    1

    0 nxnxc

    dnyny

    c

    cTnyny

    où x(n) et y(n) sont xa(nT) et ya(nT). Ceci va donner le résultat intéressant ci-dessous :

    01

    1

    1

    0

    1

    12)(

    )()(

    cz

    z

    Tc

    d

    zX

    zYzH

    ++−

    ==

    Comparant cette équation avec Ha(p), on remarque la transformation nécessaire :

    1

    1

    1

    12)()(−

    +−=

    =z

    z

    Tp

    pHzH a p

    T

    pT

    z

    21

    21

    +=

    La question principale : qu'est-ce qui se passe dans le domaine fréquentiel ? Remplaçant z par ejω, on obtient :

    )2/tan(2

    1

    12 ωωω

    jTe

    e

    Tp

    j

    j

    =+−= −

    2

    arctan2TΩ=ω

    Le résultat étant purement imaginaire, le cercle unité est projeté sur l'axe jΩ dans le plan "p". Autre point très intéressant c'est que tout l'axe jΩ est projeté sur un tour du cercle unité. La courbe ci-dessous présente ce résultat : Remarque 1 : Un système analogique stable donne un système numérique stable car les pôles dans le demi-plan gauche du plan "p" sont projetés dans le cercle unité du plan "z". Ceci est facilement vérifié par le fait que pour un "p" avec la partie réelle négative, le module de Z est

    inférieur à 1 car dans l'équation pT

    pTz

    )2/(1

    )2/(1

    −+= le module de numérateur est inférieur à celui

    de dénominateur.

    ω

    π

    )2

    (tan2 1TΩ= −ω

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 7

    Remarque 2 : L'axe jΩ est projeté sur le cercle unité. Remarque 3 : Il n'y a pas d'effet d'aliasing car l'axe jΩ tout entier est projeté sur le cercle unité. Remarque 4 : Cette méthode peut être utilisée pour tout type de filtre : passe bas, passe bande, passe haut et coupe bande. Remarque 5 : Dans le domaine fréquentiel c'est une transformation non linéaire d'où une déformation de la réponse fréquentielle est obtenue. Remarque 6 : En partant d'un gabarit numérique, on peut obtenir un gabarit analogique, concevoir le filtre analogique et ensuite utiliser la transformation bilinéaire afin de calculer H(z).

    Exemple : Supposons que nous disposons une fonction de transfert ( )aH p où

    ( )aH jΩ est tracé ci-dessous :

    Plan P Plan Z pTpT

    z)2/(1

    )2/(1

    −+=

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 8

    Nous allons utiliser la transformation bilinéaire pour transformer en numérique cette fonction de transfert pour obtenir un H(z) et puis implémenter ce H(z) avec le système ci-dessous :

    Pour passer ( )aH p en numérique en utilisant la transformation bilinéaire, nous

    pouvons choisir arbitrairement le T : on prend T=1/4. C'est-à-dire que dans ( )aH p , on

    remplace le p par 1

    1

    2 1

    1

    zp

    T z

    −=+

    . On peut maintenant dessiner le ( )jH e ω utilisant la

    formule : 2arctan2

    Tω Ω =

    .

    Ω ω 1 0.25 3 0.72 4 0.93 6 1.29 8 1.57

    Le H(z) ainsi obtenu est implanté comme présente le système échantillonné ci-dessus. Le comportement fréquentiel équivalent du système résultant supposant une fréquence d’échantillonnage à 500 Hz sera donc le suivant :

    1 3 4 6 8 -8 -6 -4 -3 -1

    ( )aH jΩ

    CAN CNA H(z)

    0.25 0.72 0.93 1.29 1.57 3.14

    ( )jH e ω

    ω

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 9

    Exercice 1 : Dans l'approximation bilinéaire, l'intégral est approximé par un trapèze. Suivez les mêmes démarches pour obtenir une autre transformation en approximant l'intégral par un rectangle. Exercice 2 : Soit Ha(p) la fonction de transfert d'un système analogique :

    22)()(

    bap

    appH a ++

    +=

    Calculer le H(z) d'un système numérique obtenu par a) la méthode invariance impulsionnelle : h(n)=T.ha(nT)

    b) la méthode invariance indicielle : s(n) = sa(nT) où ∑−∞=

    =n

    k

    khns )()( et ∫ ∞−=t

    aa dhts ττ )()(

    Exercice 3 : Soit Ha(p) un filtre passe bas et H(z)=Ha((z+1)/(z-1)). La bande passante du filtre numérique est centrée autour de : (choisissez la bonne réponse) 1) ω=0 (passe bas) 2) ω=π (passe haut) 3) à une autre fréquence

    5.3.4. Transformation en Fréquence

    Comme dans le cas des filtres analogiques, on peut utiliser des transformations pour obtenir, à partir d’un filtre passe-bas, des filtres passe-bas, passe-bande, passe-haut et coupe-bande. La transformation utilisée pour transformer un filtre passe bas numérique ressemble à une transformation bilinéaire. Nous utilisons par convention, z (minuscule) pour le filtre passe bas d’origine que nous présentons par Hpb(z), et Z (majuscule) pour le filtre désiré que nous présenterons par Hd(Z). Nous utilisons finalement la fonction G(Z

    -1) pour présenter la transformation de la variable z : ( )11 −− = ZGz . On peut écrire donc : ( )111 −−− = zGZ Pour une bonne transformation, il faut que la transformation soit rationnelle pour donner toujours une fonction de transfert rationnelle, et il faut aussi qu'un filtre causal et stable donne un filtre causal et stable :

    19.8 57.1 73.8 102.4 125

    ( )H jΩ

    x(n-1)T x(n-1)T

    Approximation trapézoïdale Approximation rectangulaire

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 10

    • G(Z-1) doit être une fonction rationnelle de Z-1 • L'intérieur du cercle unité sur le plan z doit être projeté à l'intérieur du cercle unité sur le

    plan Z. Une forme générale de la fonction G(Z-1) qui satisfait les deux conditions ci-dessus est la suivante :

    ∏=

    −−

    −−±=

    N

    k k

    k

    Za

    aZZG

    11

    11

    1)(

    Pour avoir la stabilité, il faut que 1

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 11

    θ en fonction de ω pour différentes valeurs de a Exemple Le gabarit d'un filtre passe-bas est donné sur la figure ci-dessous. Sachant que le paramètre a est égal à 0.5, tracez le gabarit du filtre obtenu par la transformation

    )1/()( 111 −−− −−= aZaZz . En appliquant la formule donnée 5.3.4.1, ou utilisant le graphe ci-dessus, on obtient pour ωa=0.067 et ωp=0.135.

    5.3.4.2. Autres transformations

    Le tableau ci-dessous résume ces transformations :

    0.2 0.4 π θ

    |H(ejθ)|

    0.067 0.135 π ω

    |H(ejω)|

    a=0

    a=0.3a=0.5

    a=0.7a=0.9

    θ

    ω

    a=0.5

    θ

    ω

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 12

    • Exemple pour une transformation passe-bas passe-haut

    θ en fonction de ω pour différentes valeurs de a=0, 0.3, 0.5, 0.7 et 0.9 pour une transformation passe-bas passe-haut

    a=0

    a=0.9

    a=0

    a=0.9

    ω

    θ

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 13

    • Exemple pour une transformation passe-bas passe-bande. On prend θp=π/4, (ω2+ω1)/2=π/4, et on fait varier (ω2-ω1)/2. On obtient donc pour (a,k) les valeurs suivante : (0.76, 1), (0.72, 2.08), (0.71, 4.2), (0.7, 8.4). On remarque que les basse fréquences pour le filtre passe-bas sont transformées autour de π/4 pour le filtre passe-bande souhaité.

    θ en fonction de ω pour différentes valeurs de (a,k) pour une transformation passe-bas passe-bande

    5.3.5. Conception des filtres RII assistée par ordinateur

    Dans beaucoup de cas pratiques, on s'intéresse d'optimiser directement le filtre numérique car soit un filtre analogique n'est pas disponible, soit on ne maîtrise pas la conception des filtres analogiques et surtout quand nous avons un ordinateur équipé des logiciels d'optimisation.

    5.3.5.1. Minimisation d'erreur quadratique moyenne

    L'algorithme est simple. Nous avons la réponse fréquentielle idéale, et nous voulons que le filtre à synthétiser se rapproche le plus possible à cette caractéristique. Imaginez par exemple la réponse fréquentielle d'un filtre passe bas présentée ci-dessous : H(z) peut avoir la forme générale ci-dessous

    ∏=

    −−

    −−

    ++++=

    K

    k kk

    kk

    zdzc

    zbzaAzH

    121

    21

    1

    1)(

    π

    Hd(ejω)

    ω

    θ

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 14

    Prenons quelques points sur la réponse fréquentielle et essayons donc de minimiser la fonction de coût présentée ci-dessous :

    [ ]∑=

    −=M

    i

    jd

    j ii eHeHE1

    2)()( ωω

    Le but est de minimiser la fonction d'erreur en jouant sur les paramètres ak, bk, ck et dk. Ceci aboutit normalement à 4K équations non linéaires à résoudre.

    5.3.5.2. Least-Square Inverse Design

    Cette méthode au contraire de la méthode précédente, aboutit à des équations linéaires. Le principe de cette méthode est simple. Le filtre est identifié ici, en terme de L premiers échantillons du filtre recherché : {hdn)} , n=0, 1, 2, …, L-1 Pour une question de simplicité, on ne développe que le cas des filtres ayant la forme suivante :

    ∑=

    −−=

    N

    k

    kk za

    bzH

    1

    0

    1)(

    Le problème se réduit maintenant à trouver les ak pour que les L premières valeurs de h(n) soient les plus proches possibles aux valeurs correspondantes de hd(n). Autrement dit, on cherche à ce que la sortie du système ci-dessous se rapproche à un delta dirac. En écrivant les équations de différence relatives au schéma ci-dessus, on obtient :

    ∑=

    −−=⇒=N

    rdrd

    d rnhanhnvbzH

    zHzV

    10 )()()()(

    )()(

    b0 se calcule donc facilement car on va mettre v(n)=δ(n) : b0=hd(0). On considère maintenant le reste des coefficients. Pour cela, il faut que v(n) soit le plus petit

    possible pour n>1. L'erreur à minimiser est donc ∑∞

    ==

    1

    2)(n

    nvE . En remplaçant le v(n) par son

    équivalent et calculer sa dérivée par rapport à ai, on arrive à l'ensemble d'équations ci-dessous :

    1 1 1

    ( ) ( ) ( ) ( )N

    r d d d dr n n

    a h n r h n i h n h n i∞ ∞

    = = =− − = −∑ ∑ ∑ i=1,2,…,N

    Ceci est un ensemble d'équations linéaires qui donne les coefficients ai.

    Hd(z) 1/H(z) δ(n) v(n)

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 15

    5.4. Filtres non-récursif (ou à réponse impulsionnelle finie, RIF)

    5.4.1. Introduction

    Les filtres à réponse impulsionnelle finie présente une catégorie très importante des filtres numériques. La fonction de transfert d'un filtre RIF s'écrit :

    0

    ( ) ( )M

    n

    n

    H z h n z−

    ==∑

    Ceci implique qu'un filtre RIF a M+1 pôles à l'origine est toujours stable. Une autre propriété intéressante des filtres RIF est qu'ils peuvent donner une phase linéaire ce qui le rend très intéressant pour un grand nombre d'applications pratiques.

    5.4.2. Filtre à phase linéaire

    La réponse fréquentielle d'un filtre RIF est la suivante :

    ∑=

    −=M

    n

    njj enheH0

    )()( ωω

    Si la condition de symétrie est satisfaite : h(n)=h(M-n), la somme ci-dessus peut s'écrire sous la forme :

    −+

    =

    ∑−

    =

    =

    impaire Mpour 2

    cos)(2

    paire Mpour 2

    cos)(22

    )(2/)1(

    0

    2/

    12/

    0

    2/

    M

    n

    Mj

    M

    n

    Mj

    j

    Mnnhe

    Mnnh

    Mhe

    eH

    ω

    ω

    ω

    ω

    ω

    Dans cette équation le terme entre les crochets est réel. La phase est donc -ωM/2, ce qui veut dire que la phase est linéaire et correspond à un délai de M/2 échantillons :

    2)(

    M

    d

    d =−= ωϕω

    τ

    Dans beaucoup de cas pratiques, les filtres à phase linéaire sont exigés. De plus, cette propriété permet une implantation plus facile des filtres RIF. C'est la raison pour laquelle nous ne considérons que les filtres à phase linéaire.

    5.4.3. Conception des filtres RIF utilisant des fenêtres

    L'utilisation des fenêtres est la méthode la plus directe de la conception des filtres RIF. Imaginer que nous avons à notre disposition la réponse fréquentielle recherchée Hd(e

    jω). En général, pour des filtres de fréquence, c'est une constante, 1, pour une plage fréquentielle et zéro pour le reste des fréquences. La réponse temporelle d'un tel filtre peut être calculée en faisant une transformé de Fourier inverse sur cette réponse fréquentielle :

    ∫−=π

    π

    ωω ωπ

    deeHnh njjdd )(2

    1)(

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 16

    Si la durée de hd(n) est infinie, une méthode d'obtenir un filtre RIF est de tronquer cette réponse sur une fenêtre de largeur désirée :

    ≤≤

    =ailleur

    Mnnhnh d

    0

    0)()(

    Cette troncation est équivalente à une multiplication d'une fonction porte par le hd(n) : )()()( nwnhnh d= où

    ≤≤

    =ailleur

    Mnnw

    0

    01)(

    La multiplication dans le temps correspond à une convolution dans le domaine de fréquence :

    ∫−−=

    π

    π

    θωθω θπ

    deWeHeH jjdj )()(

    2

    1)( )(

    où )2/sin(

    )2/)1(sin(

    1

    1)( 2/

    )1(

    0 ωωω

    ω

    ωωω +=

    −−== −−

    +−

    =

    −∑M

    ee

    eeeW Mj

    j

    MjM

    n

    njj .

    Le schéma ci-dessous présente graphiquement cette relation.

    Ceci signifie que la réponse fréquentielle résultant est la réponse "arrondie" du filtre désiré. C'est à dire que les discontinuités du filtre idéal sont remplacées par des ondulations autour de ces sauts. Pour ne pas trop dégrader la réponse idéale, la fenêtre doit avoir un certain nombre de propriétés. Dans le domaine fréquentiel, il faut qu'il se rapproche à un delta dirac. Si on augment la taille de la fenêtre, la largeur du lobe principal se réduit, d'où l'effet d'arrondissement va réduire. Plus la variation de Hd(e

    jω) est important, plus nous avons besoins d'un W(ejω) pointu ce qui se traduit par une fenêtre plus longue. De l'autre côté, il est préférable d'avoir un h(n) le plus court possible d'où une petite fenêtre (pour des raisons de complexité d’implantation). Il y a donc un compromis entre ces deux propriétés contradictoires. La figure ci-dessous présente la réponse fréquentielle de w(n) pour différentes valeurs de M. Il se voit qu'en augmentant le M, la largeur (fréquentielle) du lobe principal diminue.

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 17

    Il existe autres méthodes de fenêtrage qui, tout en gardant la largeur temporelle de la fenêtre constante, présente une réponse fréquentielle plus pointue (lobe principal plus mince ou évanouissement plus important des lobes secondaires). Pour M constant, un lobe principal plus étroit conduit à un évanouissement moins important. Un fenêtrage rectangulaire est optimisé dans le sens de la minimisation de l'expression :

    ∫− −=π

    π

    ωω ωπ

    deHeHE jjd2

    )()(2

    1

    La méthode Bartlett consiste à utiliser une fenêtre triangulaire à la place d'une fenêtre rectangulaire. C'est à dire qu'il pondère la réponse impulsionnelle du filtre idéal tout en insistant sur les points du milieu. Les méthodes Hanning, Hamming, Blackman et Kaiser proposent d’autres méthodes de fenêtrage. Bartelett :

    ≤≤−

    ≤≤=

    MnM

    M

    n

    Mn

    M

    n

    nw

    2

    22

    20

    2

    )(

    Hanning :

    MnM

    nnw ≤≤

    −= 02cos12

    1)(

    π

    Hamming :

    MnM

    nnw ≤≤

    −= 02cos46.054.0)( π

    Blackman :

    MnM

    n

    M

    nnw ≤≤

    +

    −= 04cos08.02cos5.042.0)( ππ

    0

    0,2

    0,4

    0,6

    0,8

    1

    1,2

    -0,25 -0,15 -0,05 0,05 0,15 0,25

    f

    W(f

    )

    M=7

    M=15

    M=31

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 18

    MM/2

    Quelques propriétés des fenêtres ci-dessus sont présentées par le tableau suivant :

    Fenêtre Amplitude du

    lobe secondaire Largeur du lobe

    principal Atténuation minimale

    de la bande coupée

    Rectangulaire -13 4π/(M+1) -21 Bartelett -25 8π/M -25 Hanning -31 8π/M -44 Hamming -41 8π/M -53 Blackman -57 12π/M -74

    5.4.3.1. Fenêtrage Kaiser

    Parmi les méthodes de fenêtrage existantes, la méthode de Kaiser présente une meilleure flexibilité. C'est la méthode la plus souvent utilisée. C'est la raison pour laquelle, nous la présentons sous un paragraphe séparé plus en détails. La relation mathématique de cette fenêtre est donnée ci-dessous :

    [ ][ ] MnI

    aanInw ≤≤

    −−= 0

    ]/)[(1()(

    0

    20

    ββ

    où 2/Ma = et I0(.) est la fonction de Bessel modifiée du premier espèce et d'ordre zéro. Cette fenêtre a deux paramètres : la taille de la fenêtre M et le paramètre de forme β. Les figures ci-dessous présentent l'effet de variation de ces deux paramètres sur la transformée de Fourier et la fenêtre résultant.

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 19

    Ce qui est intéressant dans cette méthode est le fait que Kaiser propose des relations empiriques qui permettent de trouver M et β en fonction de gabarit désiré. Prenons le gabarit ci-contre. Supposons que les valeurs de δ, ωa et ωp sont données. On définit ∆ω=ωa-ωp et A=-20log10δ. Dans ce cas β peut être estimé à l'aide de la relation :

    <≤≤−+−

    >−=

    210.0

    5021)21(07886.0)21(5842.0

    50)7.8(1102.04.0

    A

    AAA

    AA

    β

    La taille de la fenêtre peut être calculée à l'aide de la formule empirique suivante :

    ω∆−=

    285.2

    8AM

    Ceci rend cette méthode attractive car il n'y a plus d'itération ou d'essai et erreur pour trouver les paramètres de la fenêtre comme c’était le cas d’autres fenêtres. Remarque : en utilisant cette méthode δ1=δ2=δ. Exemple : Calculer un filtre numérique pour répondre aux caractéristiques suivantes : ωp=0.4π, ωa=0.6π, δ1=0.01 et δ2=0.001. Solution : β=5.653, M=37.

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 20

    5.4.4. Méthodes assistées par ordinateur

    Les méthodes de fenêtrage sont les méthodes directes. Leurs comportements autour d'une discontinuité ne sont pas satisfaisants à cause des ondulations créées autour de ces endroits. Il existe autres critères d'optimisation par exemple, minimisation de l'erreur maximale, c'est ce que l'on appelle la méthode minimax. Les méthodes assistées par ordinateurs sont généralement des méthodes itératives pour minimiser une fonction de coût à définir.

    5.4.4.1. Echantillonnage en fréquence

    Sachant qu'une séquence bornée peut être représentée par sa TFD (Transformée de Fourier Discrète), on peut écrire :

    1,...,1,0)()()(1

    0

    )/2(

    ))/2(exp(−=== ∑

    =

    −=

    NkenhzHkHN

    n

    knNj

    kNjz

    ππ

    H(z) peut s'écrire en fonction de H(k) comme suit :

    ∑−

    =−

    −−=

    1

    01)/2(1

    )(1)(

    N

    kkNj

    N

    ze

    kH

    N

    zzH π

    Cette relation est la base de la méthode de synthèse par les échantillons fréquentiels. Remplaçant z par ejω, on obtient :

    ∑−

    =

    −−

    −−=

    1

    0

    2/)1((

    ]2/))/2(sin[(

    ]2/))/2((sin[)()(

    N

    k

    Njj

    kN

    kNNkH

    N

    eeH

    πωπωωω

    Cette relation montre un point très important. Si nous avons des échantillons isolés d'une réponse fréquentielle, nous pouvons en déduire la réponse fréquentielle pour tous les points de fréquence (rassurez-vous d'avoir bien compris les trois équations ci-dessus). Une proposition simpliste pour synthétiser un filtre RIF est donc de prendre quelques échantillons (N plus précisément) sur la réponse fréquentielle du filtre pour former H(k) : H(k)=Hd(e

    j(2π/N)k). Ensuite, à l'aide de l'équation ci-dessus, on trace H(ejω). Si cette dernière est satisfaisante, on calcule H(z) correspondant. Les figures ci-dessous montrent un exemple de cette technique.

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 21

    Si par exemple l'atténuation dans la bande coupée n'est pas satisfaisante, on peut élargir la bande de transition. Plus la discontinuité est graduelle, plus l'atténuation dans la bande coupée peut être importante. On laisse alors un point intermédiaire entre 1 et zéro : mettons H1=0.5. On obtient alors les figures ci-dessous : On remarque l'amélioration apportée dans la bande coupée au prix d'avoir un filtre moins sélectif. On peut aller plus loin et essayer d'optimiser la valeur de H1 pour obtenir l'atténuation maximale. Cette valeur se trouvant par itération est égale à 0.3904. La figure ci-dessous présente la réponse fréquentielle résultante. On peut obtenir encore plus d'atténuation dans la bande coupée en élargissant encore la bande de transition. Nous prenons cette fois-ci, 2 échantillons non nuls dans la bande de transition à optimiser : H1 et H2. Les valeurs optimisées sont H1=0.5886 et H2=0.1065. On obtient alors les figures ci-dessous : Dans cette méthode, on fixe d'abord la valeur de N, on sélection les échantillons fixe, et ensuite une série d'échantillons en variables d'optimisation. Si le gabarit recherché n'est pas satisfait, on augmente la valeur de N et on re-itère cet algorithme.

    5.4.4.2. Approximation equi-ondulation

    On remarque que l'approche utilisée dans le paragraphe 5.4.3 donne une erreur d'approximation maximale autour de la bande de transition mais une erreur "trop" bonne

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 22

    quand on s'éloigne de cette bande. Par intuition, on se pose la question si on pouvait obtenir une erreur constante répartie en fréquence, on aurait obtenu un filtre plus court. Ceci est vérifié par la suite. Nous considérons uniquement le cas des filtres à phase linéaire :

    ∑−=

    −=M

    Mn

    njj enheH ωω )()( , et que h(n)=h(-n). on obtient alors :

    ∑=

    +=M

    n

    j nnhheH1

    )cos()(2)0()( ωω

    Le gabarit à satisfaire est présenté ci-contre : Pour un problème d'optimisation, nous avons donc un certain nombre de variable à faire varier pour minimiser une fonction de coût. Les variables sont δ1, δ2, ωp, ωa, et M. Normalement, on fixe un certain nombre de ces variables et on optimise le reste. Par exemple, Parks et McClellan proposent un algorithme dans lequel M, ωp et ωa sont fixes et on optimise δ1 et δ2. On fixe aussi le rapport K=δ1/δ2. Ainsi, la seule variable à optimisée est le δ2. Avant d'expliquer leur méthode, nous définition le théorème d'alternance :

    Une condition nécessaire et suffisante pour que H(ejω) soit unique et le meilleur approximation au sens Chebyshev d'une fonction donnée Hd(e

    jω) sur un sous-ensemble compact F de l'intervalle [0,π], est que la fonction d'erreur E(ω) présente au moins M+2 fréquences extrémales sur F. C'est à dire qu'il existe M+2 fréquence (ω0, ω1, …, ωM+1) telles que E(ωi)=-E(ωi-1)=max|E(ω)| avec ω0 ≤ ω1 ≤ ω2 … < ωM+1 et ωi est dans F.

    Ce théorème peut être compris plus facilement en regardant le schéma ci-dessous tracé pour un filtre passe bas. La fonction d'erreur est définie comme la suivante :

    M=7

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 23

    )]()()[()( ωωωω jjd eHeHWE −= où E(ω) est évaluée sur la bande passante et la bande coupée, et W(ω) est une fonction de poids. Pour le gabarit présenté précédemment :

    ≤≤≤≤

    =πωω

    ωωωa

    pjd eH 0

    01)( et

    ≤≤≤≤

    =πωωωω

    ωa

    pKW1

    0/1)(

    La fonction de coût à minimiser est |E(ω)| qui est équivalent à minimiser δ2. La fonction H(ejω) peut avoir M-1 maximum et minimum dans l'intervalle (0,π). Nous avons en plus, H(ejωp)=1-δ1, H(ejωa)= δ2. La fonction de coût atteint aussi sa valeur maximale en ω=0 et ω=π. C'est à dire qu'en M+3 points, la courbe d'erreur atteint sa valeur maximale. L'algorithme commence par une première estimation des ωi , i=0, 1, …, M+1. N'oublions pas que ces valeurs sont dans l'intervalle (0,ωp] et [ωa,π) et que ωp et ωa constituent deux ωi consécutifs. Si cette estimation (des ωi) était exacte, la fonction d'erreur pour ces fréquences serait égale (au signe près) :

    1,...,1,0)1(])cos()(2)0()()[(1

    +=−−=−− ∑=

    MinnhheHW iM

    ni

    jdi

    i ρωω ω

    Nous avons donc à résoudre cet ensemble de M+2 équations. Les inconnus sont les h(n) et le ρ. Une fois les inconnus sont calculés, on calcule maintenant les maximums et les miniums de la fonction résultant. Ces valeurs seront les nouvelles valeurs de ωi (voir la figure ci-dessous) et l'algorithme se répète jusqu'à ce que les nouvelles valeurs s'approchent suffisamment aux fréquences estimées dans l'itération précédente. Ce qui signifie d'une itération à l'autre, on s'approche à la solution optimisée. Une fois le filtre est optimisé, la valeur de δ2 est fixe et si cette valeur n'est pas suffisante, on augment la valeur de M et on ré-optimise le filtre. Il existe quand même une formule empirique qui estime la taille du filtre (2M+1). Ceci se fait à partir du gabarit du filtre numérique recherché :

    f

    fMN ee ∆

    =+=

    2110 10

    1log

    3

    2)12(

    δδ

    où fe est la fréquence d'échantillonnage et ∆f est la largeur de la bande de transition.

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 24

    5.5. La réalisation des filtres RIF

    Une fois que les coefficients du filtre, h(n), sont calculés, il suffit d'évaluer la convolution de l'entrée du filtre avec la réponse impulsionnelle, h(n), du filtre :

    ∑−

    =−=

    1

    0

    )()()(N

    i

    inxihny

    Pour un filtre à phase linéaire, on peut utiliser la symétrie des coefficients pour réduire la complexité du système :

    5.6. Structure des filtres RII

    Une fois que la fonction de transfert d'un filtre est calculée, il ne reste qu'à réaliser cette fonction. Tous systèmes avec une fonction de transfert rationnelle peuvent être réalisés avec des éléments élémentaires suivants : additionneur, multiplicateur et délai. Puisque la réponse impulsionnelle d'un filtre RII n'est pas bornée, une somme de convolution n'est pas réalisable. Exemple : Pour voir comment on peut réaliser une équation de différence, considérer l'équation

    suivante :2

    21

    11)( −− −−

    =zaza

    bzH . Ce H(z) n'a que des

    pôles. L'équation aux différences s'écrit alors :

    )2()1()()( 21 −+−+= nyanyanbxny Cette équation se réalise avec le système ci-contre. Nous considérons maintenant le cas général d'un filtre RII. C'est à dire le cas où le système possède des pôles et des zéros. Soit

    z-1

    h(1)

    z-1

    h(2)

    z-1

    h(3)

    z-1

    h(N-1) h(0)

    x(n)

    y(n)

    z-1

    z-1

    z-1

    z-1

    z-1

    z-1 x(n)

    h(0) h(1) h((N-1)/2)

    h((N-3)/2)

    y(n)

    N impaire

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 25

    =

    =

    −=

    N

    k

    kk

    M

    k

    kk

    za

    zbzH

    1

    0

    1)(

    L'équation aux différences s'écrit alors :

    ∑∑==

    −+−=M

    kk

    N

    kk knxbknyany )()()(

    1

    Une réalisation de cette équation est donnée ci-dessous (la forme directe I) : On regardant la structure de la forme directe I, on remarque la mis en série de deux structures. Celle qui réalise les zéros de la fonction de transfert et celle qui réalise les pôles. Puisque l'on peut changer l'ordre des systèmes linéaire, la structure ci-dessus peut être présentée comme la suivante (la forme directe II) : Une autre méthode de réalisation des systèmes discrets est de transformer la fonction de transfert en produit des fractions de deuxième ordre :

    ∏= −−

    ++=−

    −K

    k kk

    kk

    zz

    zzAzH

    12

    21

    221

    1

    1

    1

    1)(

    ααββ

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 26

    Cette relation se réalise par la structure ci-dessous appelée la forme en cascade. On peut aussi présenter une fonction de transfert avec une somme des éléments de deuxième ordre. Dans ce cas H(z) s'écrit :

    ∑∑=

    =

    ++++=

    N

    k kk

    kkM

    k

    kk zz

    zzczH

    12

    21

    110

    011

    )(αα

    γγ

    La structure correspondant sera donc (la structure en parallèle) :

    5.7. Théorie de la Transposition

    Le théorème de transposition dit que l'on peut inverser, dans un système discret donné, le sens de tous les signaux et inter changer l'entrée et la sortie. La fonction de transfert résultant est identique au système initial. Suivant cette loi, on peut transformer les structures présentées ci-dessus pour obtenir de nouvelles structures. Par exemple la forme transposée directe I sera celle de la figure ci-dessous.

  • Traitement de signal, Filtrage ENSIL ELT 2ième année

    Vahid Meghdadi 2009-2010 27