Deux mŽthodes sont possibles pour lancer le programme :
- Utilisation de l'application appletviewer fournie avec le JDK (Java Development Kit). Il suffit de taper la commande suivante : appletviewer Java_Filtre.html .
- Utilisation d'un viewer de fichier html tel que les browsers Internet Explorer ou Netscape. Dans ces logiciels, il suffit de faire Open File puis de sŽlectionner le fichier Java_Filtre.html .
L'applet Java_Filtre doit alors avoir l'allure suivante ˆ l'Žcran :
L'applet se compose de quatre parties distinctes ˆ savoir :
- Une zone graphique, situŽe en haut ˆ gauche, destinŽe ˆ l'affichage du module de la fonction de transfert ainsi que du gabarit.
- A droite de cette premire zone graphique, l'ensemble des menus dŽroulants et des zones de saisie sont prŽsents.
- En bas ˆ gauche, une autre zone graphique permet l'affichage de la rŽponse impulsionnelle ou le lieu des p™les et des zŽros.
- Enfin, en bas ˆ droite, une zone de texte permet l'affichage des coefficients de la rŽponse impulsionnelle ainsi que des coefficients de la fenÍtre sŽlectionnŽe pour les filtres RIF et les coefficients ai et bi lorsqu'il s'agit d'un filtre RII.
2.2 Description des diffŽrents boutons et champs de saisie.
La zone correspondante a l'allure suivante :
Le bouton RIF/RII/PZ permet le choix entre la synthse d'un filtre RIF, d'un filtre RII ou la synthse d'un filtre ˆ partir de ces p™les et zŽros. Il est important de noter que lorsque des menus dŽroulants sont actifs d'autres sont inactifs.
Ainsi lorsqu'on choisit de synthŽtiser un filtre RIF, il est impossible de choisir filtre de Butterworth ou de Chebychev.
Le bouton de choix de la mŽthode de synthse d'un filtre RIF permet une synthse entre les trois mŽthodes suivantes : ˆ partir du calcul de la rŽponse impulsionnelle, ˆ partir du gabarit idŽal et par TransformŽes de Fourier succes-sives, utilisation de la mŽthode de Parks-Mc Clellan.
Le dernier bouton de la premire ligne permet de choisir entre filtre de Butterworth et filtre de Chebychev I lorsqu'on est en train de synthŽtiser un filtre de type RII.
Le bouton de la deuxime ligne permet le choix de la fentre de pondŽration. Ce bouton est accessible uniquement pour la synthse de filtre RIF et pour les deux premires mŽthodes.
Le bouton `Choix du type de filtre' permet de choisir entre les quatre types de filtres suivants : passe-bas, passe-haut, passe-bande, coupe-bande.
Deux boutons radio situŽs ˆ droite permettent de choisir entre une saisie graphique des paramtres (en bougeant la souris sur la zone de dessin du gabarit) ou une saisie manuelle.
Le champ de saisie `Choix du paramtre' permet la saisie du paramtre sŽlectionnŽ. Le premier menu est actif uniquement pour les filtres passe-bas et passe-haut tandis que le second est actif pour les filtres passe-bande et coupe-bande. Les paramtres sont les frŽquences indiquant les dŽbuts et fins de bande ainsi que les attŽnuations dans ces bandes. (l'indice p pour passband et l'indice s pour stopband).
En dessous de cette ligne, un champ de texte indique la valeur du paramtre. La valeur doit tre entrŽe au clavier si la saisie est manuelle.
Le champ fe indique la valeur de la frŽquence d`Žchantillonnage fe, il permet aussi de la modifier. La valeur par dŽfaut est de 1kHz.
Remarque importante : Lorsqu'une saisie est faite au clavier, il ne faut pas oublier de valider la valeur par un retour chariot.
Les champs N et Nmin indiquent, respectivement, l'ordre ou la longueur du filtre (N) en cours de synthse et la longueur minimale conseillŽe(Nmin).
Trois boutons radios permettent le choix entre une quantification par la mŽthode de troncature , ou par la mŽthode d'arrondi ou bien encore pas de quantification du tout. Par dŽfaut, il n'y a pas de quantification.
La dernire ligne regroupe deux boutons. Un bouton clear efface les diffŽrentes zones graphiques et zones de textes. Le bouton gabarit permet la synthse du filtre proprement dite. Il est important de remarquer que le bouton gabarit permet de faire des modifications aisŽes : ˆ savoir, aprs une premire synthse si l'on rappuit sur le bouton gabarit les diffŽrents paramtres prŽsentŽs ci-dessus sont modifiables y compris ceux dont la saisie peut tre effectuŽe graphiquement.
Un bouton Affiche situŽ en dessous de la zone de texte permet l'affichage des coefficients, ainsi que de la rŽponse impulsionnelle sous forme graphique une fois la synthse faite.
De mme, en dessous de la zone graphique situŽe en bas ˆ gauche, un menu dŽroulant permet de choisir entre l'affichage de la rŽponse impulsionnelle et le lieu des p™les et des zŽros du filtre ˆ synthŽtiser. Lorsqu'on dŽsire synthŽtiser un filtre ˆ partir de ses p™les et de ses zŽros, deux boutons permettent de placer ou de dŽplacer ces p™les et zŽros. De plus, une zone de texte indique les coordonnŽes du point sŽlectionnŽ.
3 Exemples de synthse de filtre.
Les Žtapes de la synthse d'un filtre sont les suivantes :
a) SŽlection du type (RIF/RII)
b) SŽlection de l'ordre, de fe et du type de filtre (passe-bas, passe-haut...)
c) SŽlection graphique ou manuelle des paramtres du filtre
d) Synthse en appuyant sur le bouton gabarit.
Bien sr certaines Žtapes ne sont pas toujours nŽcessaires telle que choix de la fentre ; de plus les paramtres fe et N ont des valeurs par dŽfaut.
Les caractŽristiques du filtre ˆ synthŽtiser sont les suivantes :
filtre passe bande avec fe=1kHz, fsL=0.2kHz, fpL=0.25kHz, fpU=0.35kHz, fsU=0.4kHz, delta1=delta2=0.1.
Les mŽthodes 1 et 3 (Parks McClellan) vont tre utilisŽes pour rŽaliser la synthse de ce filtre. Une fois tous les paramtres saisis, l'Žcran doit ressembler ˆ cela, on pourra alors ensuite cliquer sur le bouton gabarit .
On obtient avec la premire mŽthode et en utilisant une fentre de blackman le filtre suivant (N=61).
Le mme gabarit mais en utilisant la mŽthode Parks Mc Clellan donne pour N=25 le rŽsultat suivant :
On peut bien sr quantifier les rŽsultats sur l'exemple prŽcŽdent; Žtudions l'effet de la quantification :
Prenons 4 bits de quantification et observons les deux options troncature et arrondi.
Prenons les mmes paramtres que prŽcŽdemment. Ici nous ferons une saisie manuelle. On obtient le rŽsultat suivant pour un filtre de Butterworth d'ordre 6 :
Pour le mme gabarit, un filtre de Chebychev d'ordre 3 suffit :
Pour les filtres RII passe-bas et passe-haut, les coefficients du filtre et sa rŽponse impulsionnelle peuvent tre affichŽes.
Ex : Passe bas : fe=1kHz, fp=200Hz, fs=300Hz, delta1=delta2=0.1
3.3 Synthse d'un filtre ˆ partir de ses p™les et
zŽros.
L'applet permet de synthŽtiser un filtre connaissant les p™les et les zŽros de ce filtre. Les Žtapes de la synthse sont les suivantes :
a) SŽlection de l'option PZ (comme p™le-zero) dans le bouton RIF/RII/PZ
b) Faire appara\^itre le cercle unitaire avec le bouton Rep. Impulsionnelle/Zero-Pole
c) Placer les diffŽrents p™les et zŽros. On peut aussi les dŽplacer pour voir l'influence .
d) Synthse en appuyant sur gabarit.
Remarque : Lorsqu'on veut placer ou deplacer un pole , il ne faut pas oublier de placer le bouton Pole/Zero sur Pole ; il en est de mme pour un zero.
Exemple :
RŽfŽrences
[1] R.W. Hamming. Digital Filters (third edition). Prentice Hall Signal Processing Series.
[2] T.W. Parks & C.S. Burrus. Digital Filter Design. A Whiley-Interscience Publication
[3] Samuel D. Stearns & Ruth A. David. Signal Processing Algorithms. Prentice Hall