Télécharger le fichier pdf d’un mémoire de fin d’études
Aspect pratique:
La bande passante est ici étroite. En générale, on travaille avec 0.1≤α ≤ 0.5.
Pour une meilleure sélectivité, on utilise un double T monté à contre réaction.
L’ exigence de ces filtres est l’utilisation des composants à tolérance très serrée.
Filtre à manipulation de phase:
Cette classe contient les filtres qui servent à corriger la différence de phase entre les signaux d’entrée et de sortie.
En pratique, ces filtres sont appelés « filtres passe-tout », en anglais « all pass filters », parce qu’il laissent passer toutes les fréquences, c’est-à-dire, leurs fonctions de transfert sont à modules constants.
Eléments théoriques:
L’étude d’un filtre passe-tout se base surtout sur la réponse en phase qui, n’est autre que le déphasage de sa fonction de transfert, qui sert à corriger celui d’un autre type de filtre.
Réponse en phase:
En pratique, les réponses en phase φ(ω) sont représentées à la Fig.1.3. : pour le cas idéal et pour le cas réel.
Ainsi, pour une fréquence ω0 donnée, on désigne la phase en ce point par: φ0 = φ(ω0)
Puisque le déphasage est la différence de phase entre les deux signaux, de sortie Vs et d’entrée Ve, il est supposé positif (φ0), si la phase de Vs est supérieure à celle de Ve.
Fonctions de chaque phase:
La première phase, qui n’est autre que la définition et la spécification des besoins, définit les services censés à être fournis ultérieurement par le logiciel. En général, elle se décompose en deux sortes d’analyse dont l’une est préliminaire et l’autre détaillée. L’analyse préliminaire a pour objet de définir le cadre de développement, en fixant la situation, les objectifs et les besoins fonctionnels et non fonctionnels (contraintes imposées par les outils environnants).L’analyse plus détaillée, définit de manières explicite et exhaustive les services qui devront être rendus.
La deuxième phase (conception technique) est de décrire l’implémentation du logiciel. Elle se fait par l’étude théorique préalable, qui définit l’architecture et les principes d’implémentation du logiciel, suivie par la conception préliminaire, qui à son tour, fournit la structure détaillée et complète, et définit le principe de fonctionnement.
La troisième phase est celle de la réalisation: le codage et les tests unitaires qui lui sont associés, y sont inclus.
La quatrième phase, c’est l’intégration. Elle assemble et relie les composants logiciels, grâce à l’intégration référentielle afin d’avoir un logiciel complet, qui sera prêt pour être en état de marche.
Malgré l’utilisation de l’intégration référentielle, qui est un ensemble de règles, relatifs aux liaisons entre composants, qui permet d’assurer, à l’exécution, la cohérence entre ces composants, la réalisation des tests d’intégration est nécessaire, pour mieux vérifier les bonnes interactions entre les fichiers.
Quant à la validation, elle vérifie si le logiciel réalisé, peut satisfaire pleinement les besoins spécifiés.
Et enfin, la dernière phase, c’est la maintenance. Ce n’est que les travaux d’extension et de correction à apporter par le responsable durant la phase d’utilisation, si nécessaires.
Développement du logiciel:
Le logiciel, avant d’être remis au commanditaire, a parcouru les différentes phases du cycle bien qu’il n’ait pas encore atteint celle de la maintenance.
Corps du logiciel:
C’est à partir des besoins (fonctionnels et non fonctionnels, dont la plupart vient de l’utilisateur) et des formulations théoriques des différents types de classes des filtres analogiques qui traitent les amplitudes des signaux analogiques, qu’on a conçu techniquement ce logiciel A.C.F.A.A.O.
Il a été codé avec de la programmation C++[7], [8], qui est une intégration objets du langage C, et aussi un langage système (avec lequel les calculs délicats deviennent plus accélérés), de façon à obtenir un logiciel puissant et réutilisable, vue l’étendue du domaine embrassé.
Quant à l’intégration, elle a été fait par regroupement des fichiers correspondant à un type de filtre, dans un seul projet.
Puisque dans ce logiciel, on y étudie plusieurs types de filtres, on est donc ramené à manipuler un grand nombre de projets, précisément trente cinq pour le corps dont chacun comporte au moins sept fichiers.
Et après plusieurs tests d’intégration sur chaque projet, qu’on a validé les résultats.
Interface avec l’utilisateur:
Dans ce logiciel, il y a deux sortes d’interface. L’une de la première apparition, est formée de deux projets, élaborés avec le langage Visual Basic, dont l’un est celui de la première fenêtre, et l’autre est celui de la fenêtre des menus des filtres analogiques. Tous les deux sont en interaction avec les projets du corps du logiciel. En conséquence, on peut appeler cet interface à partir de chacun de ces projets.
La deuxième interface, ce sont des fenêtres et des boîtes de dialogues dont les programmes qui les réalisent sont incorporés dans chaque projet du corps. Cet interface étant codée avec la programmation C++.
Comme tous les autres logiciels, ce logiciel devrait être lancé à partir du fichier exécutable d’un projet de la première interface.
Gestion de mémoire utilisée:
Puisque tous les projets du logiciel pourraient s’interagir entre eux, les interactions sont nombreuses et très chargées, elles nécessitent, par conséquent, une gestion de mémoire rigoureuse.
En dépit du changement de système d’exploitation, pendant l’interaction entre un projet élaboré sous MSDOS et un autre développé sous WINDOWS 3.1, qui produit des complications logicielles, des méthodes d’appel et de gestion de mémoire ont été utilisées. Elles facilitent beaucoup ces basculements.
Dans un projet élaboré en C++, sous MSDOS, un fichier exécutable est appelé par l’instruction « spawnlp(P_OVERLAY, « nom du fichier exécutable »,NULL); » de la bibliothèque « process.h » du langage, après avoir mis chaque fichier de ce projet en module « OVERLAY », et le modèle de mémoire « HUGE ». Cet appel, sert à vider les RAM, par le processus « Père » et « Fils », des programmes statiquement résidents, pour y introduire le fichier exécutable ainsi invoqué.
Même si, quelquefois l’instruction « exit(1) » est suffisant pour faire retourner le programme vers un projet de l’autre système d’exploitation, chaque appel nécessite un rafraîchissement de la mémoire par l’instruction « _fpreset(); » ou bien « _clear87(); » de la bibliothèque « float.h ».
Et pour optimiser cette gestion, une autre méthode a été mise au point, celle de la remise en mode texte par l’appel de la fonction « system(« mode co80 »); » de la
« process.h », avant chaque appel d’un exécutable. Cette fonction élimine toute dédoublement de mode, comme l’insertion du mode texte dans le mode graphique.
Dans un projet développé à l’aide du langage d’événement Visual Basic, sous WINDOWS 3.1, pour éliminer l’apparition d’un icône, au lieu de la fonction « shell(« chemin et nom de l’exécutable ») », on utilise « shell(« chemin et nom de l’exécutable »,1) » à l’appel d’un fichier exécutable d’un projet élaboré avec C++ sous MSDOS.
LANCEMENT DU LOGICIEL
Mode de lancement:
Le logiciel se lance comme toujours, en tapant sur la racine du disque en opération, le nom ACFAAO.
Après quoi, une première fenêtre apparaît sur l’écran, celle de l’étiquette. On y trouve le nom du logiciel.
En appuyant sur une touche, il y a apparition de la fenêtre d’accès et de renseignement, sur laquelle il y a deux menus, dont l’un est « File », équipé de trois sous-menus, « Open », pour la lecture des contenus d’un fichier, « New » l’accès au corps du logiciel en cours, et « Quit » une façon de quitter l’application. L’autre est « Help », muni de ses deux sous-menus, « About » si on veut connaître sur le label complet, et « Learning about ACFAAO… » pour les renseignements sur l’utilisation de ce logiciel.
Cliquant le sous-menu « New » du menu « File », il y a apparition d’une autre fenêtre, avec laquelle, s’affichent six choix de menus, dont chacun représente un type de filtre.
/ « Reson » représente les filtres à résonance, il est divisé en quatre sous-menus (« Passe-bas », « Passe-haut », « Passe-bande », et « Coupe-bande »).
/ « RCAO » est celui des filtres à résonance à simulation d’inductance par le circuit d’Antoniou, analogue au précédent. Il est divisé en quatre sous-menus des types de base.
/ « SCFilter » représente les filtres à simulation de résistances par de circuits à capacités commutées. Il est muni de trois sous-menus indiquant les trois types de base (Passe-bas, Passe-haut, et Passe-bande).
/ « Integrat » représente les filtres universels, équipé de deux sous-menus. Le premier est « KHN-Biquad », pour les filtres réalisés avec du circuit de KERWIN-HUELSMAN-NEWCOMB, divisé en quatre sous-sous-menus des types de base. Le second est « TT-Biquad », pour les filtres réalisés avec du circuit de TOW-THOMAS, muni de trois sous-sous-menus de trois premiers types de base (Passe-bas, Passe-haut, et Passe-bande), dont le dernier est divisé encore en deux sous-menus du passe-bande inférieure à la fréquence centrale et du passe-bande supérieure.
/ « BTRWTH » ou les filtres de BUTTERWORTH, divisé en deux sous-menus « VCVS »et « Biquad », ces derniers sont chacun divisés en quatre sous-sous-menus représentant les quatre types de base.
/ « CHBSHV » représente les filtres de CHEBYSHEV, de façon similaire à la précédente, il est divisé en deux sous-menus, munis chacun de quatre sous-sous-menus, analogues à ceux du précédent.
Mode de traitement:
Jusque là, l’utilisation de la souris est permise, car les projets qui réalisent cet interface ont été élaborés avec du Visual Basic sous Windows. Puisqu’on ne dispose pas dans les applications MS DOS de gestionnaire de souris, il est recommandé de n’utiliser que le clavier pendant le traitement.
Le traitement, après qu’un filtre a été choisi, est le déroulement des opérations d’analyse et de conception de ce filtre.
Cas des filtres passe-haut et passe-bas:
Après validation du filtre choisi, il y a un petit basculement dû au changement d’interface, de mode et de système d’exploitation, et une autre fenêtre muni d’une première boîte de dialogue demandant la fréquence de coupure fp apparaît sur l’écran.
Choisissant « NEXT », après validation de la valeur de fp entrée (sinon « CANCEL » pour changer la valeur de fp), on aura une autre boîte de dialogue pour la limite de la bande stoppée fs. D’une façon analogue, on aura celle de la variation maximale tolérable de la transmission Amax, puis celle de l’atténuation maximale requise des signaux passants Amin. Puis après validation de celle-ci, une autre boîte de dialogue affiche l’ordre minimale acceptable [Voir ANNEXE 1,2,3] et demande l’ordre n désiré du filtre.
Après avoir tout fait pour valider ces données, une nouvelle et plus grande boîte de dialogue, qui se divise en trois parties, apparaît. La partie gauche est dédiée pour les saisies des paramètres restants. La partie droite est destinée à afficher un résultat, après chaque validation par la touche « Entrée », de paramètres correspondants à un étage. Et la partie basse représente les deux choix de validation, dont, « OK » pour procéder au traitement suivant, tandis que « CANCEL », pour recommencer le traitement.
Notons que : (1) après chaque saisie de valeur par l’utilisateur , et (2) après chaque présentation de résultat (partiel) par la machine, une validation à l’aide de la touche « Entrée » est nécessaire. Ensuite, il faut aussi noter que les boîtes de dialogue de Amax, Amin, et n ne se trouvent que dans les menus des filtres de Butterworth et de Chebyshev.
Pour les saisies, en général, on doit entrer la valeur du gain global k du filtre, et les gains partiels ki ( i = 0,1,…,n-1 et k =k0.k1…kn-1) de chaque étage. Et pour le cas des filtres passe-bas de Butterworth et de Chebyshev, après chaque saisie de ki, la partie « résultat » affiche une valeur du condensateur C1i maximale acceptable, et par la suite, on doit entrer une valeur qui lui est inférieure, et ainsi de suite, après chaque validation.
Si on choisit l’option « CANCEL » de cette boîte, l’opération sera recommencée. Sinon, choisissant l’option « OK », une autre boîte de dialogue va s’apparaître, celle de la fonction de transfert du filtre, représentée de façon analytique, les choix de validation sont analogues à ceux de la précédente.
On avance encore à l’aide de « NEXT », une nouvelle fenêtre prendra place de celle de la précédente. Elle présentera le montage du circuit correspondant au filtre, toujours munie des deux choix de validation de continuation et d’annulation.
Et enfin, à l’aide de « NEXT », une autre fenêtre représentant la réponse impulsionnelle relative à la fonction de transfert du filtre, apparaîtra sur l’écran, elle est équipée de trois choix « Quit » (quitter), « Save » (sauvegarder), et « Cancel » ( annuler).
Validant le premier choix, une boîte de dialogue de confirmation de décision va apparaître, si on est sûr de quitter, c’est à dire de revenir à la première interface (cf § 4-1). Choisissant « Save », une boîte de dialogue va aussi apparaître, elle demande le nom de fichier, dans lequel on veut enregistrer les valeurs de quelques paramètres, (tels que fp, Q, k, …), puis on pourra revenir à l’application en cours après validation de ce nom. Et « Cancel », si on n’est pas satisfait des résultats, permet de recommencer le traitement.
Cas des autres filtres:
Le déroulement est presque identique à celui des précédents. Mais dans ce cas, il n’ y a plus de boîtes de dialogue pour fs, Amax et Amin.
Et pour les filtres autres que ceux de Chebyshev et de Butterworth, il n’y a plus de boîte de dialogue pour n, car ce dernier est fixé à deux.
Au lieu de la boîte de dialogue de fp, c’est plutôt celle de f0 (parfois, il y a apparition de deux boîtes de dialogue dont, l’une celle de la fréquence de coupure haute fu, et l’autre celle de la fréquence de coupure basse fl). Une autre boîte où le facteur de la qualité Q du filtre est demandé, est ajoutée. Dans certains cas, au lieu d’une demande de saisie de la valeur d’un paramètre, il y a une demande de saisie de la valeur d’une composante, ou les deux : valeur des paramètres et valeur d’un élément.
Remarques:
– Si on veut concevoir un filtre d’ordre supérieure (sauf s’il est de Butterworth ou de Chebyshev), le résultat du logiciel est suffisant, car on peut cascader des filtres d’ordre deux pour atteindre cet ordre supérieure.
– Les données enregistrées dans un fichier, à l’aide de la commande « Save », peuvent être visualisées à l’aide du « WRITE » du système d’exploitation en cours (la commande « edit nom de fichier » pour MSDOS), ou par l’intermédiaire du logiciel A.C.F.A.A.O. par le sous-menu « Open » du menu « File ».
AVANTAGES ET INCONVENIENTS
Avantages:
a) Autrefois, l’analyse et la conception d’un filtre prennent de temps. Mais ce logiciel apporte une correction de la situation, car il peut exécuter les traitements réduits très rapidement. En effet, l’utilisation du système de développement d’un logiciel et aussi bien l’utilisation des langages Visual Basic et C++, facilitent et accélèrent les calculs mathématiques et les développements graphiques.
b) Du fait que ce logiciel a été élaboré à l’aide des langages puissants (c’est-à-dire extensibles à tous les niveaux d’abstraction) et évolutifs, il emprunte toutes ces qualités. C’est ainsi que sa maintenance est facile.
c) Et un des avantages de ce logiciel est la configuration requise : les gammes de microordinateurs modestes telle que le 386, peuvent être utilisées pour le faire tourner.
d) Malgré les coûts, les efforts et le temps dépensés pendant le développement de ce logiciel, il présente des avantages car il peut fournir des services de plus de valeur, y compris les divers avantages cités auparavant. Bien qu’il soit destiné plus à la pédagogie qu’à la commercialisation, on est presque certain que le rapport qualité et prix qu’il procure est loin d’être faible.
Inconvénients:
Vis-à-vis l’insuffisance du matériel à notre disposition, ce logiciel est limité à ne traiter que quelque types de filtre analogique. Et en plus, on se limite seulement aux filtres d’ordre huit.
CONCLUSION
Le filtrage analogique du signal est dans le domaine de l’électronique. Il est donc dans la branche de la physique, et c’est évident que l’analyse du circuit qui le réalise et, aussi bien la conception de ce circuit même, exigent des calculs mathématiques avec de grandes précisions, et de développements graphiques sophistiqués ( qu’ils soient à dérivé mathématique telles que les réponses impulsionnelles ou à dérivé artistique comme les schémas des circuits correspondants). Ces calculs nécessitent beaucoup de travail et de temps.
Et malgré, les diverses contraintes matérielle, temporelle, et économique, et grâce à l’utilisation du principe de développement d’un logiciel, et les langages de programmation orientés objets (C++) et le Visual Basic, on a pu concevoir ce logiciel A.C.F.A.A.O., en vue d’apporter des services répondant aux besoins des commanditaires.
En sachant que rien n’est parfait, il se peut que ce logiciel présente des désavantages. Et on espère, malgré tout, que la prochaine version viendra pour réduire le degré de l’imperfection.
|
Table des matières
INTRODUCTION
Chapitre I : GENERALITES DES FILTRES
1-1 Définitions
1-2 Fonction de transfert
a) Cas des filtres idéaux
b) Cas des filtres réels
1-3 Fréquence de coupure
1-4 Déphasages
Chapitre II : ETUDE THEORIQUE DES FILTRES ANALOGIQUES
2-1 Filtres à manipulation de fréquence
a) Eléments théoriques
b) Aspect pratique
2-2 Filtres à manipulation de phase
a) Eléments théoriques
(i) Réponse en phase
(ii) Filtre passe-tout de second-ordre
b) Eléments de conception
c) Aspect technologique
2-3 Filtres à manipulation d’amplitude
a) Introduction
b) Filtres de Chebyshev
(i) Filtres passe-bas de Chebyshev
(i) Filtres de Chebyshev de premier-ordre
(iii) Filtre de Chebyshev de second-ordre
c) Filtres de Butterworth
d) Filtres à résonance
(i) Filtre passe-bas
(ii) Filtre passe-haut
(iii) Filtre passe bande
(iv) Filtre coupe bande
e) Filtres universels
(i) Eléments théoriques
(ii) Aspect technologique
f) Conclusion
Chapitre III : PRINCIPE DE L’ELABORATION DU LOGICIEL
3-1. Déroulement de l’élaboration
a) Présentation du cycle de vie du logiciel
b) Fonctions de chaque Phase
3-2. Développement du logiciel
a) Corps du logiciel
b) Interface avec l’utilisateur
c) Gestion de mémoire utilisée
Chapitre IV: LANCEMENT DU LOGICIEL
4-1. Mode de lancement
4-2. Mode de traitement
a) Cas des filtres passe-haut et passe-bas
b) Cas des autres filtres
c) Remarques
Chapitre V: AVANTAGES ET INCONVENIENTS
5-1. Avantages
5-2. Inconvénients
CONCLUSION
Télécharger le rapport complet