I*m of Canada National Library Bibliothèque nationale du Canada Acquisitions and Bibliographie Services Acquisitions et services bibliographiques 395 Wellington Street OttawaON K1AON4 Canada 395. nie Wellington Ottawa ON K I A ON4 Canada Y w r U Votre nilrhence Our me NOae nlHmce The author has granted a nonexclusive licence allowing the National Library of Canada to reproduce, loan, distniute or sell copies of this thesis in microfoxm, paper or electronic formats. L'auteur a accordé une licence non exclusive permettant à la Bibliothèque nationale du Canada de reproduire, prêter, distribuer ou vendre des copies de cette thèse sous la forme de microfiche/nlm, de reproduction sur papier ou sur format électronique. The author retains ownership of the copyright in this thesis. Neither the thesis nor substantial extracts fiom it may be printed or otherwise reproduced without the author's permission. L'auteur conserve la propriété du droit d'auteur qui protège cette thèse. Ni la thèse ni des extraits substantiels de celle-ci ne doivent être imprimés ou autrement reproduits sans son autorisation. Canada Pour le contrôle actif de type feedfowmd (par anticipation) du bruit et des vibrations, l'algorithme de contrôle le plus utilisé est sans aucun doute le LMS à référence filtrée multi- canaux [NELSONet coll., 19921. Le défaut principal de cet algorithme est que, dans le cas du contrôle à large bande, sa vitesse de convergence est faible lorsque les signaux de référence filtrée sont fortement cordés. Pour éviter ce problème de convergence lente, l'algorithme Newton-LMS [WIDROW et cou., 19851 a référence filtrée multi-canaux peut être utilisé. La charge de calcul de cet aigorithme est cependant élevée lorsque des nltres adaptatifs avec un nombre important de coefficients sont requis, et il n'est pas robuste à une augmentation soudaine de l'énergie des signaux de référence filtrée (il peut alors diverger). Le LMS à référence filtrée multi-canaux a ce même problème de robustesse, mais dans ce cas il est possible de normaliser le pas d'adaptation de l'algorithme pour produire un algorithme robuste : le NLMS multi-canaux [DOUGLAS et coll., 19931. Le but de ce document est d'introduire un algorithme qui a pratiquement la même vitesse de convergence que le Newton-LMS à référence filtrée multi-canaux, presque la même faible charge de calcul que le LMS à référence filtrée multi-canaux, et la même robustesse que le NLMS multicanaux. Il sera appelé le COS-NLMS, parce que cet algorithme utilise p~cipalementune transformée discrète en cosinus @CT) pour éliminer la corrélation dans les signaux de référence filtrée qui ralentit le processus de convergence. Des résultats de simulation seront d'abord présentés, et ensuite des résultats de contrôle actif en temps réel sur une structure mécanique (un conduit) permettront de vérifîer les performances du nouvel algorithme. L'auteur de ce texte désire remercier sincèrement l'initiateur de ce projet de recherche, Bruno Paillard, de qui il a appris la majeure partie des notions utiles à cet ouvrage. De plus, ce projet n'aurait vraisemblablement jamais vu le jour n'eut été de l'intérêt et le support du groupe d'acoustique et de vibrations de 1'Univeniti de Sherbrooke (GAUS), dirigé par Jean Nicolas. L'auteur désire également remercier André L'Espérance, à la fois pour son support financier via un projet de contrôle actif avec l'aluminerie Lauralco et pour ses remarques judicieuses sur la propagation des ondes acoustiques. L'institut de recherche en santé et en sécurité au travail (IRSST) a également foumi une aide financière nécessaire à la réalisation de ce projet. L'auteur désire finalement remercier quelques professeurs et étudiants qui ont travaillé en contrôle actif pendant ce projet de maîtrise, Main Berry, Catherine Guigou et François Charette, de même que les techniciens Martin Gagnon et Christian Clavet pour leur collaboration indispensable. TABLE DES MATIÈRES 1. INTRODUCTION 1.1 Problématique 1.2 Systèmes feedbacks et feedforwards 1.3 Filtres à réponse impulsiomelle finie (FR)et filtres à réponse impulsiomelie infinie (W) 1-4 Systèmes mono-canal et muhi-canaux 1-5 Définition du projet de recherche 1.6 Bases théoriques de l'ouvrage 2. DÉVELOPPEMENT D'UN NOWEL ALGORITHME À CONVERGENCE RAPIDE 2.1 Développement d'un algorithme LMS équivalent au Newton-LMS 2.2 Développement d'une approximation efficace de l'algorithme LMS équivalent Newton. 2.3 Évaluation de l'ordre de grandeur de la charge de calcuI des différents algorithmes 2.4 Résumé du chapitre 3. SIMULATION DES PERFORMANCES DES ALGOEUTHMES 3.1 Avantages des simulations par rapport aux expérimentations réelles 3.2 Description du système simulé 3.3 Aperçu du programme de simulation 3.4 Résultats de simulation 3.5 Résumé du chapitre 4. MISE EN OEUVRE EN T E M P S &EL DES ALGûRlTHMES Description des tâches devant être exécutées par le système de contrôle 4.2 Description du matériel utilisé Système d'exploitation permettant la communication PC-DSP 4.3 4.3 Parallélisation des calculs et synchronisation des processus 4.5 Résumé du chapitre 4.1 S. EXPERIMENTATIONS SUR UN SYSTÈMEACOUSTIQUE &EL 5.1 Description du système acoustique réel 5.2 Problème de fannulation de bouclage Expérimentations et résultats de contrôle 5.3 5.4 Résumé du chapitre CONCLUSION BIBLIOGRAPHIE 81 LISTE DES FiGURES Page Figure 1.1 : exemple d'un système de contrôle actif feedforward 4 Figure 1-2 : exemple d'un système de contrôle actif feedback Figure 1.3 : exemple d'un système de contrôle actif feedback modifié 6 Figure 2.4 : exemple d'un système de contrôle actif feedforward, avec filire W 9 7 Figure 1.5 : exemple d'un système de contrôle actif feedback modifié, avec filtre W 9 Figure 2.1 : mise en oeuvre classique du LMS à référence filtrée. mise en oeuvre alternative du LMS à référence filtrée. Figure 2.2: Figure 2.3 : mise en oeuvre du LMS équivalent Newton. mise en oeuvre du COS-LMSou du COS-NLMS Figure 2.4: Figure 3.1: exemple mono-canal d'un système simulant I'aigorithme LMS à Figure 3.2 : référence filtrée. interface usager du simulateur. Figure 3.3 : programme principal ("main") du simulateur en langage graphique Figure 3.4 : LABVIEW courbe de convergence des différents algorithmes, cas 1- 1- 1 Figure 3.5 : courbe de convergence des différents algorithmes, cas 1-2-2 Figure 4.1 : architecture utilisée pour la mise en oeuvre en temps réel du contrôleur Figure 4.2 : système d'exploitation permettant la communication PC-DSP Figure 4.3 : interface usager typique des programmes utilisant le système d'exploitation développé Figure 5.1 : système acoustique utihsé pour les expérimentations en temps réel Figure 5.2 : système feedfoward de contrôle actif avec annulation de bouclage numérique Figure 5.3 : courbes de convergence obtenues lors des expérimentations en monocanal (1- 1-1) Figure 5.4 : courbes de convergence obtenues lors des expérimentations en multicanaux (1-2-2), canai 1 Figure 5.5 : courbes de convergence obtenues lors des expérimentations en multicanaux (1-2-2), canal 2 LISTE DES TABLEAUX F%= Tableau 2.1 : Ordres de grandeur de la charge de calcul des différents algorithmes 42 1. INTRODUCTION 1.1 Problématique Depuis un certain nombre d'années, on assiste à des développements technologiques importants dans le domaine des microprocesseun. En particulier, les processeurs de traitement numérique des signaux @SP pour Digital Signal Processor) sont aujourd'hui suffisamment rapides pour que l'on puisse utiliser des algorithmes de traitement des signaux sophistiqués, pour réagir et contrôler en temps réel des smictures mécaniques complexes. De tels systèmes, appelés systèmes de contrôle actif, comprennent des capteurs mécaniques (pression, force, position, etc.) permettant de mesurer le comportement de la structure, des actionneun (moteurs, haut-parleurs. etc.) permettant de réagir sur la structure, et un algorithme de traitement numérique des signaux s'exécutant en temps réel et reliant intelligemment les signaux issus des capteurs aux signaux des actionneurs. Les applications du contrôle actif sont relativement nombreuses. On pense par exemple aux systèmes permettant d'annuler activement les bruits d'échappement de véhicules automobiles. aux systèmes permettant de minimiser le champ acoustique dans une enceinte close (cabine d'avion par exemple) BILLOUD et coll., 19921,aux casques actifs antibruit [DANO, 19941, ou encore au contrôle à la source du bruit généré par un appareil, par exemple le contrôle des vibrations d'un appareil [GUIGOU et coll., 19951. Les applications futures seront certainement nombreuses et déborderont largement du domaine de l'acoustique. Toutefois les techniques de traitement du signal utilisées en contrôle actif, aussi sophistiquées soient elles, sont encore souvent inadéquates. Un problème souvent rencontré est que les algorithmes d'optimisation utilisés ont d'excellentes performances après convergence, mais ont des temps de convergence tellement longs qu'il est impossible de les utiliser pour résoudre certains problèmes industriels réels. Afin d'assurer le développement et l'essor équilibré des systèmes de contrôle actif, il est nécessaire de travailler sur les techniques et les algorithmes de traitements des signaux permettant de résoudre finement et efficacement les problèmes spécifiques du contrôle actif. Le projet de rnaTtrise vise donc à étudier une technique d'accélération de convergence pour un algorithme de contrôle. Cette technique d'accélération de convergence sera basée sur une décorrélation de certains signaux par une transformation temps-fréquence. Elle peut en principe amener des gains de vitesse de convergence très élevés (100,1000,10ûûûou plus) par rapport agx techniques classiques. De façon à bien préciser sur quel rype d'algorithme ou de système ce mémoire présentera de nouveaux développements et de nouvelles idées, une classification des systèmes de contrôle actif existants doit d'abord être présentée. Le choix d'un système ou d'un algorithme est relié à des facteurs tels : la disponibilité d'une information avancée sur la perturbation à éliminer la puissance de calcul requise par 1' algorithme la stabilité de la convergence de l'algorithme (prédictibilité, répétabilité) la vitesse de convergence de l'algorithme l'existence d'une solution optimale unique pour l'algorithme nécessité d'un système mono-canal ou multi-canaux. 1.2 Systèmesfeedbacks etfeedfoomrtk La première classification qui est présentée identifie dew types de systèmes : les systèmes feedforwmds (par anticipation) et les systèmes feedbucks (par rétroaction) W R O W et COL, 19851. Une des difEcultés pour la distinction entre les systèmes feedfoMards et feedbacks est la présence d'une boucle de réaoaction (feedback) dans les deux types de contrôleurs : feedforward et feedback. Pour illustrer et expliquer ceci, la figure 1.1 présente un système classique de contrôle actif, où le bruit présent à l'extrémité d'un conduit circulaire est réduit de façon active. Dans ce système, on retrouve d'abord une source de bruit indésirable (souvent appelée source primaire) qui est dans ce cas-ci un haut-parleur. En pratique, dans les systèmes industriels, la source de bruit sera un ventilateur ou un moteur. Dans la même figure, on retrouve également une source de contre-bruit (actionneur ou source secondaire), dont la fonction est d'éliminer ou de réduire l'effet de la source primaire à la sortie du conduit (c'est l'addition physique du champ sonore émis par chacune des deux sources qui permet la réduction active du bruit). On remarque qu'un microphone de référence est utilisé par le contrôleur en amont dans le conduit, de façon a avoir une information avancée à partir de laquelle le signal de contrôle (signal de l'actionneur) sera calculé. C'est l'utilisation d'une telle information avancée qui caractérise les systèmes feedforwards. On voit cependant à la même figure qu'un autre microphone est présent, à l'extrémité du tuyau, et le signal de bruit résiduel en provenance de ce microphone agit comme une rétroaction, c'est-àdire qu'il permet l'optimisation du Ntre numérique adaptatif en lui fournissant une information sur la performance du système en boucle fermée. On rewouve donc un certain feedback même dans les systèmes feedfonvards. Source de perturbation (haut-parleur) résiduelle (bruit au microphone) Signal de référence avancée sur la perturbation à éliminer (microphone) 1' actiomeur (hautparleur de contre- I Figure 1.1 : exemple d'un système de contrôle actif feedforward Dans cet exemple fwdforward (figure 1.l), le filtre numérique adaptatif cherche à modéliser la réponse impulsiomelle entre le microphone de référence et I'actionneur, en tenant compte des réflexions dans le conduit et des délais de propagation. Dans le cas d'un système très réverbérant (GU on retrouve de nombreuses réflexions contre des parois irrégulières etlou à l'extrémité du conduit dû à une discontinuité d'impédance), la réponse impulsiomelle entre le microphone de référence et l'actionneur est très longue, et le filtre numérique du contrôleur devrait par conséquent avoir une longue réponse impulsionnelle de façon à bien la modéliser. Certains systèmes de contrôle actif n'utilisent pas d'information avancée sur la perturbation à éliminer. Par exemple, il est possible qu'une teiie information ne soit pas disponible, c'est-à-dire que la perturbation (source primaire) est générée pratiquement au même endroit où elle doit être contrôlée. C'est le cas du bruit produit par la vibration d'un toit d'automobile excité aérodynamiquement. Ii y a également des cas où l'utilisation d'une référence avancée peut être supefflue, par exemple lorsque la perturbation à éliminer peut bien être prédite (source périodique) et que le contrôleur peut déterminer lui-même quelle sera la prochaine perturbation à éliminer. Les systèmes n'utilisant aucune information avancée sont appelés feedbacks. La particularité d'un système feedback est que la référence de l'algorithme (l'entrée du filtre numérique adaptatif) provient du signal d'erreur résiduelle (par exemple le microphone à l'extrémité du conduit à la figure 1.1). La figure 1-2 illustre un système feedback de contrôle actif semblable au système feedforward de la figure 1.1. Source de perturbation (haut-parleur) n F-3 résiduelle (bruit au microphone) Signal de réference parleur de contre\ I Figure 1.2 : exemple d'un système de contrôle actif feedback Le système de la figure 1.2 n'est pas toujours pratique car l'énergie de la référence du filtre adaptatif diminue en même temps que l'erreur résiduelle (le film optimal théorique, qui élimine complètement le bruit, aurait donc une référence nulle et ne pourrait donc pas émettre aucun signal de contrôle !). De plus, il est clair que dans ce cas le signal de référence à l'entrée du filtre adaptatif dépend en partie de ce même fdtre, ce qui a pour conséquence que le système n'est plus linéaire et que l'analyse de la convergence est beaucoup plus complexe. Une approche utilisée pour contourner ce problème est d'utiliser un estimé de la perturbation présente au point de contrôle comme référence du filtre adaptatif @5LLIOT'I'et coll., 19951. Cet estimé est obtenu en calculant la contribution de l'actiomeur au point de contrôle et en la soustrayant au signal d'erreur résiduelle. Ceci requiert la connaissance de la fonction de transfert entre l'actiomeur et le point de contrôle. Un tel système feedback modifié se comporte alors comme un système feedforward. La figure 1.3 illustre le système de contrôle actif de la figure 1.2 où l'on a apporté la modification décrite dans ce paragraphe. Source de perturbation (haut-parleur) 4 - -- .. . 4 Estime de fa fonction de transfert entre l'actio~euret le point Signal de l'actionneUT(haut- de contrôle parleur de contre- bruit) Signal d'erreur résiduelle (bruit au microphone) - - - - . Signal de référence = estimé de la perturbation présente au point de contrôle Figure 1.3 : exemple d'un système de contrôle actif feedback modifié Les systèmes feedbacks ne peuvent éliminer que la partie des signaux de perturbation qui peut être prédite linéairement à partir des signaux de perturbation filtrés par la fonction de transfert entre l'actionneur et le point de contrôle. Par exemple, si la perturbation filtrée était une sinusoïde, elle pounait être complètement éliminée par le contrôleur feedback (parce que tout échantillon d'un signal sinusoïdal peut être prédit à partir de deux échantillons d'un autre signal sinusoïdal. dont la fréquence est la même mais la phase et I'amplitude peuvent être différentes). A l'opposé, si la pemirbation filtrée était complètement aléatoire, alors un contrôleur feedback ne pourrait ni éliminer ni diminuer la perturbation (puisqu'un signal parfaitement aléatoire ne peut être prédit à partir de ses derniers échantillons fütrés par un filtre quelconque). Par contre, les contrôleun feedforwards peuvent éliminer tous les types de perturbation, à la condition que la référence avancée soit cohérente avec la perturbation à éliminer au point de contrôle, et qu'il n'y ait pas de problème de causaW. C'est cette cohérence entre la référence et la perturbation à éliminer qui déterminera la performance maximale pouvant être atteinte par le système feedfonvard. Par problème de causalité, on entend que le délai de propagation entre le capteur de référence et le point de contrôle (capteur d'cireur) doit être plus élevé que la somme des délais suivants : délai pour la génération du signal de sortie du contrôleur à partir de la référence délai de propagation entre la sortie du contrôleur et le point de contrôle (capteur d'erreur). 1.3 Filtres à réponse impuisionnelle h i e (FDR) et filtres à réponse impuisionneile infinie W) Les filtres présentés jusqu'à présent dans les figures 1.1 à 1.3 sont tous du type filtre à réponse finie (FI'pour Finite Impulse Response), c'est-à-dire que les filtres utilisent uniquement un signal d'entrée pour générer un échantillon en sortie. Li existe une autre catégorie de filtres dits récursifs (ou [IR pour Infinite Impulse Response ou filtre à réponse infinie) [OPPENHEIM et coll., 19831. En plus d'utiliser un signal Gentrée comme les filtres FIR,ces filtres utilisent les derniers échantillons qu'ils ont produits pour calculer le nouvel échantillon. L'exemple de la figure 1.1 représentait donc un système feedforward avec filtre FR adaptatif, tandis que l'exemple de la figure 1.3 représentait un système feedback modifié avec filtre FIR adaptatif. Leurs équivalents W adaptatifs sont présentés aux figures 1.4 et 1.5. Source de perturbation (haut-parleur) n F--+ résiduelle (bruit au microphone) Signal de référence avancée sur la perturbation & éliminer I'actionneur (haut- Figure 1.4 : exemple d'un système de contrôle actif feedfoward, avec filtre W adaptatif Source de perturbation (haut-parleur) h 4 Estimé de la fonction de transfert entre * l'actiomeur et le point (haut- de contrale parleur de contre- Signal d'erreur résiduelle microphone) \ J Signal de référence = estimé de la perturbation présente au point de contrôle Figure 1.5 : exemple d'un système de contrôle actif feedback modifié, avec filtre W adaptatif. Les filtres F R et W présentent chacun des avantages et des désavantages. Les filtres W nécessitent habituellement beaucoup moins de coefficients pour modéliser une réponse impulsionnelle longue (et par conséquent les filtres W adaptatifs convergent plus vite et requièrent une puissance de calcul moindre). Les fdtres IR peuvent cependant être instables. c'est-à-dire qu'ils peuvent avoir des pôles à I'exténeur du cercle unitaire. Pendant le processus d'apprentissage du fütre adaptatif W,les pôles du filtre peuvent se déplacer à l'extérieur du cercle unitaire même si la solution optimale qui serait éventuellement trouvée (après convergence) ne contient pas de pôles à l'extérieur du cercle unitaire. Ce phénomène peut être dommageable (par exemple il peut entraîner la saturation des signaux de sortie du contrôleur, ce qui empêche toute convergence par la suite car le système devient alors non-linéaire), et doit généralement être évité. Il faut toutefois préciser que quelques algorithmes ont été développés pour améliorer la stabilité des filtres W adaptatifs pendant la convergence [IWIDROW et coll., 19851. De plus, la performance après convergence des filtres IR adaptatifs n'est pas nécessairement optimale, car la surface de performance de ces filtres est généralement non quadratique, c'est-àdire qu'il existe des minimums locaux oh l'algorithme a l'impression d'avoir atteint l'optimum sans réellement l'avoir atteint. Certaines publications ont laissé entendre que la surface de performance des fdtres IIR adaptatifs deviendrait quasiquadratique lorsque le nombre de coefficients est grand W R O W et coll., 19851, mais alors le filtre W adaptatif perdrait son avantage majeur sur le filtre FIR adaptatif : son nombre peu élevé de coefficients. A l'opposé, un filtre FIEZ est toujours stable, c'est-à-dire qu'il génère une sortie d'énergie finie pour une entrée d'énergie finie. Par contre, les Nûes adaptatifs FR numériques ne seront toujours stables (dans le sens de ne pas diverger et de converger vers une solution valable) que si un pas d'adaptation approprié est utilisé dans l'algorithme de contrôIe. De plus la surface de performance des algodh.mes adaptatifs FlR est toujours quadratique, c'est-à-dire qu'il n'y a qu'un seul minimum (pas de minima locaux). La convergence des fdtres adaptatifs FIR est bien maîtrisable et bien connue [HAYKIN, 19861. Des algorithmes F R adaptatifs à convergence rapide sont également bien connus W R O W et coll., 1985 et HAYKIN et cou., 19861, mais ils sont cependant plus lourds en complexité de calcul ou bien moins stables numériquement. Finalement, l'analyse mathématique de la convergence des fütres adaptatifs F E étant mieux connue, il est plus facile d'apporter des modifications ou des améliorations à l'algorithme tout en prévoyant analytiquement leurs effets. Le seul inconvénient des filtres FIR adaptatifs est le nombre souvent élevé de coefficients requis pour le contrôle d'une perturbation à large bande (parce qu'en large bande les filtres FIR adaptatifs doivent modéliser la réponse impulsionnelle d'un système réverbérant, qui est souvent longue tel que mentionné plus tôt). 1.4 Systèmes mono-canai et muiti-canaux Le dernier point à spécifier pour classifier précisément l'algorithme qui sera développé dans la suite du document consiste à distinguer les systèmes mono-canul des systèmes multi-canaux. Un système mono-canal est un système où 1'011 retrouve un capteur de référence (pour les systèmes feedfonvards), un actionneur et un capteur d'erreur résiduelle (au point de contrôle). A l'opposé, dans les systèmes multicanaux, on peut retrouver plusieurs capteurs de référence (pour les systèmes feedforwards), plusieurs actionneurs et plusieurs capteun d'erreur. L'inconvénient des systèmes multi-canaux est la grande puissance de calcul qu'ils exigent. a s sont cependant très intéressants ou mêmes nécessaires dans certains cas. En effet, si on reprend le système de contrôle actif qui a été présenté aux figures 1.1 à 1.5 (conduit circulaire), un système mono-canal ne pourra réduire le bruit qui est émis à l'extrémité du conduit que si la fréquence maximale présente dans le conduit est inférieure à la fréquence de coupure du premier mode de propagation. En d'autres termes, un système de contrôle actif monocanal dans un conduit ne permet que le contrôle des ondes acoustiques planes. Si des fréquences supérieures sont présentes (présence d'ondes stationnaires), alors Ie contrôleur pourra toujours éliminer ou réduire le niveau de bruit au point de contrôle (capteur d'erreur), mais l'effet du contrôle sera très local c'est-à-dire qu'à quelques centimètres du point de contrôle le niveau de bruit n'aura pas diminué et aura même probablement augmenté (en espérance). Dans ce cas le niveau de bruit global émis à l'extrémité du conduit aura également augmenté (en espérance). Pour pouvoir contrôler de façon efficace le son émis à I'extrérnité d'un conduit circulaire lorsque plusieurs modes de propagation sont présents, un système multi-canaux est requis [LESPÉRANCE et cou., 19951. Le principe est de placer plusieurs capteurs d'erreur dans une même section du conduit, et de minimiser la distance moyenne des points dans la section au capteur d'erreur le plus près. En utilisant suffisamment de capteun d'erreur, il est alors possible de contrôler plusieurs modes de propagation. Toutefois, pour pouvoir imposer des niveaux de bruits nuls ou réduits à chacun des capteurs d'erreur, plusieurs actionneurs sont requis de façon à ce que le contrôleur ait suffisamment de degrés de liberté pour pouvoir accomplir sa tâche. Un autre cas où il peut être intéressant d'utiliser un système multi-canaux plutôt qu'un système mono-canal est le cas du contrôle actif du bruit dans les cabines et les salles. Le cas du contrôle du bruit dans ces cas est légèrement différent du contrôle du bruit dans les conduits. En considérant d'abord le cas des contrôleurs mono-canal, il est possible pour un système de contrôle actif de réduire considérablement le niveau de bruit présent à un capteur d'erreur situé dans une pièce [NELSON et COU., 19921. L'effet du contrôle n'est pas ponctuel, et autour du capteur d'erreur le niveau de bruit est également réduit (mais dans une moindre mesure qu'au point de contrôle c'est-à-dire au capteur d'erreur lui-même). La dimension de la zone autour d'un capteur d'erreur où une atténuation appréciable du bruit est obtenue (par exemple 10 dB) dépend directement de la longueur d'onde de la fréquence qui est contrôlée. Une telle zone est appelée zone de silence. Ceci signifie que plus la fréquence à contrôler est élevée, plus la zone de silence obtenue sera petite. Le contrôle du bruit en un point seulement dans une pièce n'est pas utile habituellement car la zme de silence produite par le contrôle est trop petite et à l'extérieur de cette zone de silence les niveaux de bruit sont souvent augmentés. Les fréquences à partir desquelles une seule zone de silence pourrait être produite pour couvrir l'ensemble une p i h e moyenne sont si faibles qu'à ces fréquences elles ne constituent pas une nuisance majeure pour l'oreille humaine. Cependant, en juxtaposant différentes zones de silence les unes aux côtés des autres il est possible d'obtenir une atténuation globale dans un volume appréciable W O S H I et coll., 19941. Ceci requiert cependant un contrôleur actif multi-canaux, et bien sûr le nombre de canaux requis pour contrôler le niveau sonore dans une pièce augmente rapidement avec la fréquence maximale du son à éliminer, D'autres raisons peuvent favoriser I'utilisation de systèmes de contrôle actif multi-canaux. Par exemple, les systèmes multi-canaux peuvent être utilisés pour une question de sécurité (avec des éléments redondants). De plus, dans certaines conditions, seul l'utilisation d'un système multicanaux permet l'élimination exacte du bruit au capteur d'erreur. C'est le cas du contrôle actif d'une pemirbation à large bande dans un environnement réverbérant W O S H I et coll., 19911. La réverbération introduit des zéros à l'extérieur du cercle unitaire dans les fonctions de transfert entre la source de bruit primaire et le capteur de référence (système feedfonvard), et entre I'actionneur et le capteur d'erreur. Le filtre adaptatif optimal doit contenir des éléments qui proviennent de l'inverse de ces fonctions de transfert, et donc dans ce casci ces éléments ne seront stables que s'ils sont nontausaux (à cause des pôles à l'extérieur du cercle unitaire). En pratique, le Ntre adaptatif utilisé dans un contrôleur actif mono-canal est causal, et il est alors impossible pour ce filtre de modéliser le filtre optimal qui lui est non-causal. L'utilisation d'un système multicanaux où l'on retrouve un actiomeur de plus que le nombre de capteur d'erreur permet de résoudre ce problème de causalité, en augmentant le nombre de degrés de liberté du contrôleur. Les filtres adaptatifs utilisés sont alors tous causaux, et ils correspondent i la solution optimale qui est recherchée. Les systèmes multi-canaux peuvent également améliorer les performances de systèmes où on retrouve des «trous » spectraux (zones spectrales très peu énergétiques) dans le signal en provenance du capteur de référence, ou bien dans la fonction de transfert entre I'actionneur et le capteur d'erreur. La présence de ces «ûous» se retrouvera dans le signal de référence filtrée (dont la définition sera donnée à la section 2), et si ces trous correspondent à des zones énergétiques dans le signal du capteur d'erreur, alors la convergence sera très lente pour éliminer le bruit à ces fréquences au capteur d'erreur. Dans ce cas, de multiples capteurs de référence ou de multiples actionneurs, positionnés 2 différents endroits, peuvent se compléter au niveau spectral, c'est-à-dire que les trous présents dans certains signaux de référence filtrée ne seraient pas présents dans d'autres. Le contrôleur disposerait alors d'une information assez énergétique pour l'ensemble des fréquences, et la convergence ne serait plus ralentie ou limitée par la présence de trous. Finalement, l'utilisation de systèmes de contrôles actifs multisanaux peut être requise dans le cas du contrôle feedfoward d'une perturbation en provenance de différentes sources non cohérentes entre elles. Dans ce cas, l'utilisation d'un signal de référence en provenance de chacune des sources peut être requise de façon à améliorer la perfomance du contrôleur. Pour l'ensemble des raisons mentionnées dans cette sous-section, les algorithmes qui seront présentés dans la suite de ce document seront essentiellement muki-canaux, le cas mono-canal pouvant facilement être vu comme un cas particulier des algorithmes muiti-canaux. 1.5 Définition du projet de recherche Après la considération des éléments mentionnés aux paragraphes pr&édents, les algorithmes adaptatifs FIR ont été retenus comme sujet d'étude pour la maîtrise parce que leur convergence est facilement contrôlable et parce que l'analyse mathématique de ces algorithmes est plus simple que celle des algorithmes adaptatifs W. De plus, un système de type feedfonvard sera utilisé pour l'étude des performances des filtres adaptatifs FR,le but ultime étant d'obtenir un algorithme permettant le contrôle efficace de perturbations aléatoires à large bande. Les systèmes feedbacks seraient donc moins appropriés dans ce cas, puisque tel que mentionné plus tôt ils sont particulièrement efficaces pour le contrôle de perturbations périodiques. Le but principal de ce mémoire peut maintenant être décrit de façon plus explicite : une technique d'accélération de convergence, basée sur une transformation temps-fréquence, sera développée pour des systèmes feedforward muiti-canaw, avec fdtres adaptatifs FR.Cette technique sera en quelque sorte une extension du cas mono-canal non normalisé au cas multi-canal normalisé, d'un algorithme à convergence rapide ne nécessitant pas une puissance de calcul élevée PAILLARD et cou., 19951. Ce nouvel algorithme combinera les avantages des filtres adaptatifs FR (prédictibilité et contrôlabilité de la convergence, minimum global atteint à tout coup) et un des avantages des filtres W adaptatifs (rapidité de la convergence). Dans la prochaine partie de ce travail (chapitre 2), le développement théorique du nouvel algorithme est présenté. Au chapitre suivant, une simulation du nouvel algorithme et une comparaison avec des algorithmes classiques est réalisée avec le logiciel LABVIEW. Une brève description du simulateur y est décrite et des résultats de simulation sont présentés. Le chapitre 4 décrira une mise en oeuvre en temps réel de l'algorithme sur une carte multiprocesseurs TMS320C4-û (DSP). On y traitera de la communication entre l'ordinateur personnel (PC) et la carte spécialisée, de l'interface LABVIEW qui est utilisé, de la synchronisation de processus entre les processeurs C40, de la stratégie de parallélisation des calculs pour I'utilisation efficace des multiples processeurs, etc.. Finalement, le chapitre 5 présentera un système acoustique réel sur lequel des expérimentations de contrôle actif ont été effectuées. Des résultats de contrôle comparant les performances du nouvel algorithme et d'un algorithme classique seront présentés. 1.6 Bases théoriques de l'ouvrage Les bases théoriques de cet ouvrage proviennent essentiellement de sources bien connues dans le domaine du filtrage adaptatif ou du contrôle actif de bruit et de vibrations. En particulier, les livres de Bernard Widrow et Samuel D-Steams W R O W et coll., 19851 et de Simon Haykin [HAYKIN, 19861 ont servi de références sur la base du filtxage adaptatif. Du côté contrôle actif, le livre de P.A Nelson et SJ.El1ion N L S O N et coll., 19921 est une référence utile pour les aspects mécaniques (acoustiques) du contrôle actif du son. Les communications des conférences internationales majeures traitant de contrôle actif (ASME, Inter-Noise, Active 95, Recent advances in active control of sound and vibrations) ont permis à l'auteur de connaître l'état de l'art de la recherche dans ce domaine. 2. DÉVELOPPEMENT D'UN NOUVEL ALGORITHME À CONVERGENCE W I D E 2.1 Développement d'un algorithme LMS é<iuivalent au Newton-LMS Un algorithme d'usage très répandu pour des mises en oeuvre en temps réel de contrôle actif de bruit ou de vibrations sur des systèmes feedfowards est le LMS multi-canaux à référence filtrée [NELSON et cou., 19921. Une normalisation de cet algorithme existe et a été publiée [DOUGLASet coll., 19931 : l'algorithme NLMS (implicitement à référence fütrée). Puisque tous les algorithmes dont il sera question dans ce document seront des algorithmes multi-canaux, le terme << multi-canaux u sera la plupart du temps omis. Un algorithme adaptatif est dit normalisé lorsque l'algorithme converge pour des pas d'adaptation inférieurs à un seuil qui est connu et qui est indépendant de l'énergie des signaux en provenance des capteurs de référence. Le LMS à référence filtrée est une extension du bien connu M S W R O W et coll., 19851, et il conserve la plupart de ses propriétés. Ses caractéristiques de convergence sont bien maîtrisées. C'est la simplicité de sa structure et la faible puissance de calcul qu'il nécessite qui en font un algorithme applicable à un grand nombre de situations réelles, en utilisant des processeun de traitement des signaux disponibles (DSP). Le désavantage principal du LMS à référence filtrée est sa faible vitesse de convergence pour des contrôles à large bande, lorsque les signaux de référence fiItrée (ces derniers sont définis quelques paragraphes plus loin) sont fortement corrélés (auto-corrélés ou inter-corrélés). Des signaux de référence filtrée statistiquement indépendants (blancs) atteignent la vitesse de convergence optimale, tandis que des signaux de référence filhée fortement corrélés peuvent nécessiter un nombre d'itérations de convergence qui est plusieurs ordres de grandeur plus élevé que dans le cas des signaux indépendants, pour atteindre la même performance après convergence. Pour atteindre la vitesse de convergence optimale, le Newton-LMS à référence filtrée (extension du Newton-LMS W R O W et coll., 19851 ) peut être utilisé. Cet algorithme nécessite cependant un nombre élevé d'opérations mathématiques, comme il le sera démontré plus loin. Pour des applications temps réel large bande, cet algorithme est habituellement beaucoup trop exigeant. Dans cette section, un algorithme de type LMS ayant les mêmes propriétés de convergence que le Newton-LMSà référence filtrée sera développé. Cet algorithme pourra être normalisé de la même façon que le NLMS, alon que ceci n'est pas possible dans le cas du Newton-LMS. Mais d'abord, les trois algorithmes mentionnés jusqu'à présent (le LMS à référence filtrée, le NLMS et le Newton-LMS à référence filtrée) seront explicitement décrits. Tout d'abord, quelques définitions sont requises pour identifier les différents éléments d'un système feedfonvard de contrôle actif avec fdtres adaptatifs FIR (figure 1.1) : nombre de capteurs de référence nombre d'actionnem nombre de capteurs d'erreur filtre adaptatif entre le iCcapteur de référence et le je actionneur, après << iter » itérations d' optimisation modification à apporter au filtre adaptatif entre le ie capteur de référence et le je actionneur filtre modélisant la fonction de transfert entre le je actionneur et le me capteur d7erreur longueur des filtres adaptatifs Wi jm longueur des fdtres Hjm vecteur des Lh derniers échantillons en provenance du ie capteur de référence, à l'instant k erreur résiduelle associée au mecapteur d'erreur, à l'instant k échantillon en provenance du me capteur d'erreur, à l'instant k vecteur des LWderniers échantillons du signal de référence filtrée, calculé en filtrant Xi+avec Hj,rn Le schéma classique d'un contrôleur feedfoward avec un algorithme adaptatif FIR à référence filtrée est présenté à la figure 2.1 (pour le cas monotanal). On y retrouve le signal du capteur de référence le signal du capteur d'erreur (d&, le filtre adaptatif (Wyi,), la référence filtrée (Vi4,mk),la fonction de transfert entre i'actio~meuret le capteur d'erreur (HjPm) et le processus de modification du filtre adaptatif (à partir de et dmJ. Comme il est indiqué dans cette figure, toutes les opérations numériques (à l'intérieur du trait en pointillés) sont effectuées en temps réel, c'est-à-dire à chaque échantillon. être Figure 2.1 :mise en oeuvre classique du LMS à référence filtrée. En pratique cependant, les algorithmes de contrôle pour des systèmes feedforwards sont souvent divisés en deux parties : la partie contrôle (partie temps réel) et la partie optimisation. Comme il est montré à la figure 2.2, plutôt que d'optimiser directement les filtres adaptatifs WQtiEravec les signaux en provenance des capteurs d'erreur (d&, des filtres de modifications sont optimisés avec les erreurs résiduelles (%J, Le. les signaux qui n'ont pas été annulés par les filtres Wijviter et AWijVitcr. La tâche de contrôle temps réel des filtres WiJ,imest exécutée à chaque ichantillon, mais l'optimisation des fiitres AWUimest calculée pendant les temps libres du processeur (quand le processeur n'est pas en train d'exécuter une tâche temps réel). Après un ce* nombre d'itérations d'optimisation, les valeurs des £ïltres AWijPimsont additionnées aux filtres WijSimet ensuite mises à zéro POUT débuter un nouveau cycle d'optimisation. C'est toujours cette approche alternative (figure 2.2) qui sera utiüsée dans ce travail, car le but ultime est la mise en oeuvre en temps réel de l'algorithme qui sera développé. Cette approche permet des mises en oeuvre en temps réel à des fkéquences d'échantillonnage bien plus élevées que l'approche classique de la figure 2.1. êîre Figure 2.2: mise en oeuvre alternative du LMS à référence filtrée. Les équations de base du LMS a référence filtrée sont alors (a*» signifie un produit scalaire): Notez la convention utilisée à l'équation 2.2, où le signal d'erreur est la somme de l'échantillon en provenance du capteur d'erreur et de la contribution du contrôleur, et non leur différence comme c'est souvent le cas en fdtrage adaptatif. Cette convention affectera plusieurs autres équations, et elle est utilisée pour mieux représenter un système de contrôle actif physique où les ondes mécaniques (acoustiques ou vibratoires) s'additionnent. Maintenant pour décrire le Newton-LMS à référence Ntrée et le NLMS de façon compacte, une notation entrelacée est introduite. Cette notation rendra la mairice de corrélation globale des signaux de référence filtrée << bloc Toeplitz ». c< Bloc Toeplitz u signifie que tous les blocs d'éléments au sein d'une même << bloc diagonale » sont identiques. Cette propriété sera utile dans la section suivante lors du développement d'un nouvel algorithme normalisé, à convergence rapide et avec une charge de calcul faible. Si les matrices suivantes sont définies : alors les équations 2.2 et 2.3 pour le LMS à référence filtrée peuvent être ré-écrites d'une façon plus compacte: La nouvelle déf~tionpour le LMS à référence fdtrée serait donc les équations 2.1, 2.4 et 2.5. Le NLMS peut lui-aussi être décrit avec les équations 2.1 et 2.4, cependant l'équation de récurrence ne serait plus l'équation 2.5 mais plutôt : T Notons que si la matrice (VkVI;)devant être inversée à l'équation 2.6 est singulière, d o n soit un pseudo inverse devra être uutisé, soit une fraction de la matrice identité pourra être additionnée à la matrice avant de l'inverser, de façon à la rendre moins singulière. Cet algorithme DOUGLAS et cou., 19931 minimise les variations des éléments de A W i , sujet à la contrainte: Cette contrainte signifie que le filtre calculé pour la prochaine itération est la solution exacte du système pour l'itération présente. Introduire l'inverse de la matrice V ~ (Ne V X~ Ne) dans l'équation de récurrence modifie également les valeurs de u pour lesquelles l'algorithme converge :O < u < 2. L'algorithme est alors normalisé, c'est à dire que les valeurs admissibles de u sont indépendantes des statistiques des signaux de référence filtrée. À l'opposé, la valeur de u utilisée dans l'équation 2.5 pour le LMS à référence filtrée est ajustée manuellement en pratique (par essais et erreur) de façon à trouver une convergence convenable. Les valeurs valides de u pour la convergence de l'équation 2.5 dépendent des statistiques des signaux de référence filtrée et sont (pour des signaux de référence filtrée n'ayant pas d'augmentation soudaine de leur énergie totale. et si u cc 1 1 valeur propre maximale de E p ] k:v D Y K I N , 19861) : O < u < 2rïrace(EpkVA) ou de façon équivalente 0 < u < 2/E[énergie totale de tous les échantillons de la matrice de référence filtrée]. La matrice E v k vC] est la matrice de comélation giobale de tous les signaux de référence filtrée. Elle est de dimensions instantanée V v]: NXNYLWx NXNYLW(à ne pas confondre avec la matrice ~ deVdimensions ~ Ne x Ne à i'équation 2.6). À partir de maintenant, E p k sera appelée Rw. Cette matrice de corrélation globale est « bloc Toeplitz D, à cause de la notation entrelacée choisie pour Vket AWim. L'équation de récurrence de l'algorithme Newton-LMS à référence filtrée peut maintenant être présentée (une fois de plus les équations 2.1 et 2.4 demeurent valides) : C'est le produit matriciel avec R, -1 , nécessitant une puissance de calcul élevée, qui fait que cet algorithme n'est pas pratique pour des systèmes en temps réel avec un nombre élevé de coefficients (LW).Néanmoins, cet algorithme atteint la vitesse de convergence optimale, et il est le plus rapide (en convergence) de tous les algorithmes utilisant le gradient stochastique W R O W et coll., 19851. Les valeurs de u pour lesquelles l'algorithme converge sont (pour des signaux de référence filtrée n'ayant pas d'augmentation soudaine de leur énergie totale, et u « 1): O c u c 2/NxNyLw. Il est important ici de remarquer les différences entre les équations 2.6 et 2.8. L'équation 2.6 (NLMS)est un algorithme qui ajuste l'amplitude des variations sur AWim à chaque itération, en fonction de l'énergie et de la corrélation des signaux de référence Ntrée, et par conséquent c'est un algorithme robuste (qui ne diverge pas à cause d'une augmentation soudaine du niveau d'un signal de référence). Ce n'est pas un algorithme ayant une vitesse de convergence particulièrement rapide, même si un certain gain en vitesse de convergence peut être obtenu par rapport au L,MS à référence filtrée [DOUGLAS et COU., 19931. À I'opposé, l'équation 2.8 (Newton-LMS à référence filtrée) est un algorithme à convergence rapide qui peut être robuste lors de I'utilisation du pas optimal u=1.0, lorsqu'il n'y a pas d'augmentation soudaine de l'énergie totale des signaux de référence filtrée. Cependant, lorsqu'il y a une augmentation soudaine de l'énergie totale des signaux de référence filtrée (due aux caractéristiques du signal ou à du bruit), les modifications instantanées sur les flues adaptatifs peuvent être trop grandes pour que la convergence de l'algorithme soit assurée avec l'utilisation du pas optimal. Un pas d'adaptation très inférieur à 1.0 doit alors être utilisé pour que la convergence soit assurée, et ceci cause une perte de vitesse de convergence. Ii serait utile de pouvoir combiner les propriétés des deux algorithmes (robustesse avec l'utilisation du pas optimal et grande vitesse de convergence), et c'est ce qui sera maintenant fait en développant un algorithme LMS à référence filtrée équivalent au Newton-LMS à référence Ntrée (ayant la même vitesse de convergence). Cet algorithme sera dorénavant appelé le « LMS équivalent Newton ». D'abord, définissons le vecteur Wdi, comme étant : Wdi, = WO- A W i , où WOest le filtre optimal (la soiution de Wiener du système) (2.9). En utilisant les équations 2.9 et 2.4, l'équation 2.8 pour le Newton-LMS à référence filtrée peut maintenant être ré-écrite : Et puisque E[V,(V*O + Dd] = EIVkEo]= O (2.1 1) (l'erreur n'est pas corrélée avec la référence filtrée à I'opti~num),alors l'équation 2.10 devient: Et puisque E[Vk v:] est Rw dors : Il n'est pas nécessaire d'aller plus loin dans l'analyse du Newton-LMS à référence filtrée. Pour déterminer les valeurs de u pour lesquelles Wdimi converge en espérance et en variance, le développement classique pourrait être continué W R O W et coll., 1985 et HAYKIN, 19861. L'équation 2.13 sera cependant suffisante pour prouver I'équivalence entre le Newton-LMS à référence filtrée et le LMS équivalent Newton. En considérant maintenant I'algorithrne LMS à référence filtrée, (équations 2.1, 2.4 et 2.5), une nouvelle matrice Zkest introduite et est donnée par: où m T est une matrice de dimensions N f l y L w x NxNyLw où les colonnes sont les vecteurs propres de la matrice Rw (il s'agit de la transformée de Karhunen-Loeve rnuitidimensiomel~e des signaux de référence filtrée). La matrice de corrélation globale de dimensions NXNYLW x N x N ~ L west : R= = E [ Z ~z?] = E ~ T vk *vkTmq =K L T ~ R~ KLT et donc parce que les vecteurs propres d'une maaice symétrique (comme R d sont orthonormaux, et donc K L T = ~ KLT'. Il est alors clair que la matrice R, est égale à la manice diagonale A qui contient ies valeurs propres de R , . Si la matrice Znkest maintenant définie comme étant: la nouvelle matrice de corrélation globale sera : Les équations de I'algorithme LMS équivalent Newton sont donc (où A w ~ , est l'équivalent dans le domaine de la IUT de AWisr dans le domaine du temps, l'équation 2.1 est toujours valide): En définissant le vecteur Odim d'une façon similaire à Wdim à l'équation 2.9 (die 00 - AG,), l'équation 2.20 peut alors être réécrite: Et à nouveau puisque ~ [ Z n , ( Z n h+ D3]= E[Zn&o] = O (l'erreur n'est pas conélée avec la référence filtrée à l'optimum), dors l'équation 2.21 devient: T Et puisque E[Znk Znk ] est R-, et que cette dernière est égaie à la matrice identité 1. alors : L'équation 2.24 a exactement la même forme que l'équation 2.13, alors l'algorithme LMS équivalent Newton a exactement la même vitesse de convergence que l'algorithme Newton-LMS à référence fdtrée. Ce qu'il y a d'intéressant au niveau de l'équivalence des équations 2.24 et 2.13, c'est que I'équation 2.20 (à partir de laquelle l'équation 2.24 a été développée) peut être normalisée de la même façon que le NLMS pour donner l'algorithme LMS équivalent Newton normalisé : tandis que l'équation 2.8 (à partir de laquelle l'équation 2.13 a été développée) ne peut pas être normalisée d'une telle façon. Il ne peut donc pas y avoir une solution exacte à chaque itération de I'équation 2.8, avec la minimisation de la variation des coefficients, et pas de protection contre une augmentation soudaine de l'énergie des signaux de référence filtrée (à moins d'utiliser un pas d'adaptation plus faible et donc de diminuer la vitesse de convergence). L'équation 2.25 conduit donc à une convergence plus robuste (moins susceptible de diverger dû à une augmentation soudaine de I'énergie de la référence) que l'équation 2.8. La figure 2.3 montre une mise en oeuvre de l'algorithme LMS équivalent Newton. Il est important de remarquer que la partie temps réel de I'algorithme à la figure 2.3 est exactement la même que la partie temps réel de la figure 2.2, dors l'augmentation de la puissance de calcul requise pour l'algorithme LMS équivalent Newton, par rapport au LMS a référence filtrée standard, est entiérement située dans la partie optimisation. Néanmoins, dans la partie optimisation, le calcul des équations 2.14 et 2.17 est une grande charge de calcul (particulièrement pour un nombre élevé de coefficientspour les fdtres adaptatifs (Lw)), et trouver les vecteurs propres et les valeurs propres de Rw (les matrices KLT et A) est aussi une grande charge de calcul (mais pas aussi critique que le calcul des équations 2.14 et 2.17 car ces matrices n'ont pas à être estimées à chaque itération). -----.-.*-.--*-.-..-- . i TEMPS RÉEL w 4- H : KLT 4 *-in v *-1/2T , Zn Figure 2.3 : mise en oeuvre du LMS équivalent Newton. Il sera maintenant montré que le vecteur de filtres AWim à la figure 2.3 est le vecteur approprié i b w e s 2.2 et 2.3, on remarque que les deux termes de obtenu à partir de Amkp En comparant les f l'équation suivante doivent être équivalents : d'où AWita= KLT A Q ~ ~ ce qui correspond à la transformation au centre de la figure 2.3. 2.2 Développement d'une approximation efficace de I'algorithme LMS équivalent Newton. Comme il a été mentionné quelques paragraphes plus tôt, l'équation 2.25 (LMS équivalent Newton et normalisé) a hérité du principal défaut du Newton-LMS à référence filtrée : une grande puissance de calcul est exigée (augmentant avec le carré du nombre de coefficients Lw). Une approximation rapide de cet algorithme sera maintenant développée (le COS-LMS), de même qu'une version normalisée de cette approximation rapide (le COS-NLMS). L'élimination de la corrélation entre les signaux de référence sera en majeure partie effectuée par une transformation temps-fréquence plutôt que par l'utilisation de la matrice m T . C'est un fait bien connu dans le domaine du traitement des signaux numériques que la transformée en cosinus discrète (DCT) peut presque orthogonaliser un signai fortement corrélé WARAYAN et cou., 19831.La transformée en sinus discrète (DST)a une meilleure performance sur des signaux faiblement corr6lés, tandis que la transformée de Fourier discrète (DFT) obtient de meilleures performances lorsque les signaux à orthogonaüser ne sont ni trop faiblement ni trop fortement corrélés. Dans [PAILLARDet coll., 19951, un algorithme à convergence rapide LMS mono-canal à référence filtrée basé sur une optimisation spectrale @CT) a été présenté. Il a été montré que dans des cas réels, une augmentation de la vitesse de convergence d'un facteur lûûûû pouvait facilement être atteinte. ûrthogonaliser un signal de référence filtrée équivaut à diagonaliser sa matrice d'auto-corrélation. Orthogonaliser plusieurs signaux de référence filtrée entre eux équivaut à diagonaliser la matrice de corrélation globale R,, qui tient compte de toutes les auto-corrélations et intercorrélations des différents signaux de référence filtrée. Soit le nouveau vecteur de référence filtrée Ci, défini comme étant : où DCT est une matrice de dimension NXNYLW x NxN~Lw,qui peut être vue comme étant une matrice de dimension LW blocs X LW blocs où chaque bloc est de dimension NXNYx N m y . Chaque bloc est la matrice identité multipliée par une valeur scalaire. Ces valeurs scalaires seront les éléments de chaque vecteur de base de la transformée en cosinus, c'est-à-dire que les éléments d'un même vecteur multiplieront les blocs d'une même bloc-colonne. Cette notation est compacte et sera utilisée pour le développement des algorithmes COS-LMSet COSNLMS parce qu'elle facilite la comparaison des équations 2.28 et 2.14. de même que la comparaison des matrices DCT et M T .L'utilisation de D C T ~à l'équation 2.28 correspond bien à une «bloc transformée» en cosinus discrète (étant donné la défmition de DCT), et non à une «bloc transformée» inverse en cosinus. Mais l'équation 2.28 n'est pas une façon efficace de calculer Ck, et en pratique l'approche utilisée pour calculer Ckest de calculer ses éléments avec une transformée en cosinus discrète sur chacun des signaux de référence fdtrée : = transformée en cosinus (vij,mJrT) Riisqu'il existe plusieurs algorithmes rapides pour calculer des transfodes en cosinus, le calcul de Cksera de l'ordre de NxNyNeLwiog(Lw) opérations et non de l'ordre de NxNyNeLwLw opérations. La matrice de corrélation de Ckest : La aansformée en cosinus sur les différents signaux de référence filtrée peut rendre & approximativement bloc-diagonale, ce qui signifie que l'auto-corrélation des différents signaux de référence filtrée est presque éliminée, et que I'inter-corrélation entre les différents signaux de référence filtrée a également été presque éliminie à l'exception des composantes à la même fréquence. Par exemple, C ~ J , J Let~ -C~~ . J L L ~sont - ~ à la même fréquence (Lw-2), alors la corrélation entre ces deux composantes n'a pas été éliminée par la transformée en cosinus, et elle apparaîtra comme une composante d'un des blocs de la bloc-diagonale de la matrice &. La matrice ayant des éléments nuls à l'extérieur de la bloc-diagonale principale et ayant les mêmes éléments que & dans la bloc-diagonale principale est appelée - Rd, (Rac &). La décomposition en valeurs propres de cette matrice bloc-diagonale est dors calculée en effectuant la décomposition en valeurs propres de chacun des LW blocs de dimension NXNYX NXNYet en combinant ensuite les vecteurs propres et les valeurs propres pour former: Rd, = Q L Q-'=Q L Q~(parce que Rd, est symétrique) où Q est la matrice des vecteurs propres (les colonnes de Q sont les vecteurs propres de R k ) , et L est la matrice des valeurs propres (une matrice diagonale où chaque valeur de la diagonale -112 correspond à une valeur propre de Rd&. Ii est dors possible de calculer Rd, La matrice de référence filtrée Cnkest alors introduite : et la nouvelle matrice de corrélation globale sera : . 1 Donc les signaux de référence fdtrée sont donc maintenant quasi-décorrélés, et la vitesse de convergence sera quasi-optimale. Les nouvelles équations pour l'approximation à faible charge de calcul de I'algorithme LMS équivalent Newton seront donc (algorithme COS-LMSoù est l'équivalent dans le domaine spectral de Aniw AWim dans le domaine temporel, l'équation 2.1 demeure valide) : Lorsqu'un cycle d'optimisation est compiété, l'équation 2.37 est utilisée pour calculer la modification à apporter aux filtres temps réel: Le même commentaire qu'à I'équation 2.28 doit être fait ici, c'est-à-dire que l'utilisation de la mamce DCT à l'équation 2.37 facilite la comparaison des équations 2.37 et 2.27, tout en respectant la définition de la matnce DCT.L'utilisation de DCT à l'équation 2.37 correspond bien à une «bIoc transformée» inverse en cosinus discrète, et non à une «bloc transformée» en cosinus. En pratique, plutôt que d'utiliser la matrice DCT et I'équation 2.37, une transformation en cosinus inverse est appliquée à chacun des filtres adaptatifs de Mit,pour calculer les filtres = transformée en cosinus inverse([A(i)i j,i,aLw ..- AoiJ,iccs I 1) (la stnicnire de LQiter est la même que la structure de AWita). Un algorithme NLMS peut maintenant être utilisé pour normaliser I'équation 2.36 et ainsi donner l'algorithme COS-NLMS: La figure 2.4 montre une mise en oeuvre du COS-LMS ou de sa version normalisée, le COSNLMS. Le COS-NLMSest un algorithme LMS à référence filtrée robuste (normalisé), avec une vitesse de convergence quasi-optimale et une charge de calcul fible. La charge de calcul de cet algorithme n'augmente pas avec le camé de la longueur des filtres adaptatifs (Lw), à l'opposé de l'algorithme Newton-LMS à référence filtrée. Tout comme le NLMS, les valeurs du pas d'adaptation pour lesquelles l'algorithme converge sont: 0 < u < 2. De plus, la valeur du pas d'adaptation produisant la vitesse de convergence optimale est de 1 (parce que les signaux de référence filtrée sont décorrélés). Pour des systèmes avec beaucoup de capteurs d'erreur, dans lesquels l'inversion de matrice à l'équation 2.39 pour le COS-NLMSpeut être une tâche trop exigeante, une alternative simplificatrice serait de normaliser le pas d'adaptation avec la somme instantanée de l'énergie des composantes de la matrice des signaux de référence filtrée Cnk. Figure 2.4: mise en oeuvre du COS-LMSou du COS-NLMS. 2.3 Évaluation de l'ordre de grandeur de la charge de calcul des différents algorithmes De façon à justifier le qualificatif de «charge de calcul faible » utilisé pour décrire le COS- NLMS,I'ordre de grandeur de la charge de calcul requise par les différents algorithmes dont il a été question précédemment dans ce chapitre sera maintenant évalué. Le tableau 2.1 présente un résumé des différents ordres de grandeur obtenus pour la charge de calcul des algorithmes. On remarque dans ce tableau que la charge de calcul du COS-LMS ou du COS-NLMS n'augmente pas en fonction du camé de Lw. C'est p~cipalementce fait qui justifiait le terme « charge de calcul faible n. De plus, pour des systèmes ayant un faible nombre de canaux, la charge de calcul requise par le COS-LMSou le COS-NLMSest d o n presque aussi faible que la charge de calcul du LMS à référence filtrée. TABLEAU 2.1 : ORDRES DE GRANDEUR DE LA CHARGE DE CALCUL DES Algorithme Ordre de grandeur de la charge de calcul LMS à référence filtrée O(NxNyNe(2Lw+Lh)) NLMS O(NxNyNe(2Lw+Lh)) Newton-LMS à référence 6itrée O(NxNyNe(Zw+Lh) + NxNxNyNyLwLw) LMS équivaient Newton O(NxNyNe(2Lw+Lh) + NxNxNyNyNeLwLw) LMS équivalent Newton normalisé O(NxNyNe(2Lw+Lh+NeLw) COS-LMS O(NxNyNe(2Lw+Lh+Lwxlog(Lw)+NxNyt w)) COS-NLMS O(NxNyNe(2Lw+Lh+Lwxiog(L~)+NxNyLw+NeLw)) + NxNxNyNyNeLwLw) L'ordre de la charge de calcul ( O()) requise par le LMS à référence filtrée (équations 2.1, 2.4 et 2.5) est d'abord estimé. L'équation 2.1 requiert O(NxNyNeLh) caicuis, et 1' équation 2.4 requiert O(NxNyNeLw) caicuis. Fiaiement, I'équation 2.5 nécessite O(NxNyNeLw) calculs. L'ordre total de la charge de calcul requise par cet algorithme est alors O(NxNyNe(2Lw+Lh)). Le NLMS utilise également les équations 2.1 et 2.4 tout comme le L M S à référence filtrée (O(NxNyNeLh)et O(NxNyNeLw)), mais l'équation de récurrence sera l'équation 2.6 plutôt que l'équation 2.5. Le calcul complet de V& calcul plus efficace de V requiert O(NxVyNeNeLw) calculs, mais un ~ peut V être ~ fait puisque Vkest la matrice Vk-Ià laquelle les NxNy lignes du haut ont été éliminées et à laquelie NXNY nouvelles lignes ont été ajoutées au bas. En soustrayant la contribution des lignes éliminées à V nouvelles lignes, un calcul plus efficace de ~ etVen additionnant ~ la contribution des v a t est obtenu nécessitant O(2NxNyNeNe) calculs. L'inversion de la matrice requiert O(NeNeNe) caiculs (inversion de Gauss-Jordan [STRANG, 1988]), mais pour des systèmes avec un grand Ne le lemme d'inversion de matrice pourrait être utilisé et il nécessiterait plutôt O(2NxNyNeNe) calculs [DOUGLAS et 19931. Le reste de I'équation 2.6 requiert O(NxNyNeLw + NeNe) COIL, caiculs. L'ordre de grandeur total de la charge de calcul requise pour cet algorithme est donc : O( NxNyNe(2Lw+Lh) + NeNeNe + NeNe + 2NxNyNeNe) - O(NxNyNe(2Lw+Lh)) si 2Lw+Lh »2Ne et NxNy(2Lw+Lh)»NeNe. Avec le calcul efficace de VA, l'ordre du NLMS est approximativement le même que celui du LMS à référence filtrée. Le Newton-LiMS à référence filtrée utilise également les équations 2.1 et 2.4 (O(NxNyNeLh)et O(NxNyNeLw)), mais l'équation 2.8 sera utilisée pour l'équation de récurrence. L'équation 2.8 requiert O(NflXNyNyLwLw + NxNyLwNe) calculs. II faut noter que l'estimation de Rw et Rw- 1 n'est pas incluse parce que ces matrices n'ont pas à être modifiées à chaque itération d'optimisation. Dans le cas d'un système stationnaire, Rw et R, -1 pourraient même être estimées une seule fois avant l'optimisation. L'ordre de grandeur de la charge de calcul totale requise par le Newton-LMS à référence filtrée est alors O(NxNyNe(2Lw+Lh) + NxNxN~NYLwLw). Le terme LWLWest ce qui fait qu'habituellement le Newton-LMS à référence filtrée est inutilisable en pratique pour des systèmes avec des filtres adaptatifs longs. L'algorithme LMS équivalent Newton utilise également l'équation 2.1 (O(NxNyNeLh)). Les équations 2.14 et 2.17 peuvent être combinées en un seul produit matriciel en pré-multipliant les matrices KLT et A? Encore une fois, l'estimation des matrices KLT et A-'" n'est pas incluse parce que ces matrices n'ont pas à être modifiées à chaque itération d'optimisation. L'équation résultante requiert O(NxNxNyNyNeLwLw) calculs. L'équation 2.19 aura la même charge de calcul que l'équation 2.4 (O(NxNyNeLw )), et I'équation de récurrence sera 1' équation 2-20 (même charge de calcul que l'équation 2.5: OVxNyNeLw)). L'algorithme LMS équivalent Newton a donc une charge de calcul totale ayant un ordre de O(NxNyNe(2Lw+Lh) + NxNxNyNyNeLwLw) calculs. fl est à noter que le calcul de la matrice intermédiaire Znk n'est pas un choix optimal (au sens de la charge de calcul), parce que les équations 2.14 et 2.17 pourraient être incluses dans les équations 2.19 et 2.20 pour obtenir une mise en oeuvre plus efficace, mais le calcul de la matrice intermédiaire Znk sera cependant le choix optimal dans la version normalisée de I'algorïthme dont il est question au paragraphe suivant. L'algorithme LMS équivalent Newton normalisé utilise les équations 2.1, 2.14, 2.17 et 2.19 tout comme l'algorithme non normalisé. L'équation de récurrence sera cependant l'équation 2.25. Contrairement au w de l'algorithme NLMS, un cdcui efficace de znkTak n'est pas possible parce que les valeurs de Znk changent complètement à chaque itération. Le calcul de zn*nk requiert donc O(NxNyNeNeLw) calculs, le calcul de son inverse requiert O(NeNeNe) calculs, et le reste de l'équation 2.25 requiert O(NxNyNeLw+NeNe) calculs. L'ordre de grandeur totai de la charge de calcul de cet algorithme est donc O(NxNyNe(2Lw NeLw) + NxNxNyNyNeLwLw + NeNe + NeNeNe) = O(NxNyNe(2Lw + Lh + + Lh + NeLw) + NxNxNyNyNeLwLw) cdcuis si NxNy(2Lw + Lh + NeLw) >> NeNe. L'algorithme COS-LMSutilise d'abord I'équation 2.1 (O(NxNyNe) calculs). L'équation 2.29 est ensuite calculée avec une transformée discrète en cosinus rapide sur chaque signal de référence filtrée, ce qui requiert O(NxNyNe Lw~log(Lw))cdcuis. L'équation 2.33 requiert O(NxNxNyNyNeLw) calculs puisque seulement la bloc-diagonale de R&;'~ est impliquée dans le produit matriciel. Une fois de plus il faut noter que l'estimation des matrices R&, et R&;'~ n'est pas incluse parce que ces matrices n'on: pas à être modifiées à chaque itération d'optimisation. L'équation 2.35 aura la même charge de calcul que I'équation 2.4 (O(NxNyNeLw)), et l'équation de récurrence sera l'équation 2.36 (même charge de calcul que I'équation 2.5 : O(NxNyNeLw)). L'algorithme COS-LMS a alors une charge de calcul totale ayant un ordre de O(NxNyNe (L~+~Lw+Lwx~o~(Lw)+N~N~Lw)) calculs. Une fois de plus le calcd de la mairice intermédiaire Cnkn'est pas un choix optimal (au sens de la charge de calcul)), parce que l'équation 2.33 pourrait être incluse dans les équations 2.35 et 2.36 pour obtenir une mise en oeuvre plus efficace, mais le calcul de la matrice intermédiaire Cnk sera le choix optimal pour l'algorithme COS-NLMSdont il est question au paragraphe suivant. L'algorithme COS-NLMSutilise les équations 2.1, 2.28, 2.33 et 2.35 tout comme le COS-LMS, mais l'équation de récurrence sera l'équation 2.39 plutôt que l'équation 2.36. L'équation 2.39 a la même charge de calcd que I'équation 2.25 : O(NxNyNeNeLw + NeNe + NeNeNe + NxNyNeLw). La charge de calcul totale du COS-NLMS est donc de l'ordre de O(NxNyNe (Lh + 2Lw + Lwxlog(Lw) + NxNyLw + NeLw) + NeNe + NeNeNe) =O( NxNyNe 2.4 R h é du chapitre Les algorithmes LMS à référence filtrée, Newton-LMS à référence filtrée et NLMS ont été décrits. Le Newton-LMS est un algorithme à convergence rapide mais avec une charge de calcul élevée. Le NLMS pour sa part est un algorithme nonnalisé, robuste aux augmentations soudaines du niveau des références, mais n'ayant pas une convergence rapide. Un algorithme de type LMS à référence filtrée pouvant être normalisé comme le NLMS et ayant La même vitesse de convergence que le Newton-LMS a été développé : le LMS équivalent Newton normalisé. Cet algorithme a également une charge de calcul élevée, et c'est pourquoi une approximation efficace au niveau de la charge de calcul a été présentée : l'algorithme COS-NLMS. Les charges de calcul des différents algorithmes ont ensuite été décrites plus explicitement, à titre de comparaison. 3. SIMCZATION DES PERFORMANCES DES ALGORIT)I[MES 3.1 Avantages des simuiations par rapport aux expérimentations réelles Avant de procéder aux essais de contrôle avec l'algorithme COS-NLMS développé dans la partie précédente et l'algorithme NLMS, des simulations seront d'abord effectuées de façon à observer le comportement des différents algorithmes. Les aspects acoustiques des systèmes à contrôler étant très difficiles à prendre en compte en simu1ation (réflexions multiples dans le système à contrôler, trous spectraux très prononcés dans les signaux traités, etc.), l'évaluation ultime des performances des algonthmes doit absolument se faire en temps réel sur une structure mécanique complexe. Cependant, les simulations peuvent être utilisées à titre de comparaison et offrent des avantages certains : les éléments simulés sont tous idéaux, c'est-à-dire parfaitement linéaires. Ces éléments peuvent être des actionneurs (haut-parleurs, piézo-céramiques, etc.) ou bien des capteurs (microphones, accéléromètres, capteurs de force, piézo-électriques, etc.). en pratique, lorsque les fonctions de transfert entre la source de perturbation et les capteurs de référence sont non minimales de phase (dû à la réverbération du système), ou bien lorsque les fonctions de transfert entre les actionneurs et les capteurs d'erreur sont non minimales de phase, alors les filtres optimaux contiennent des éléments non causaux qui ne peuvent pas être représentés exactement par des filtres FIR causaux. C'est derniers ne peuvent alors qu'approximer la solution exacte. Dans les simulations, les fonctions de transfert peuvent être forcées à être minimales de phase, et donc la solution exacte peut exister, c'est-à-dire que les filtres adaptatifs optimaux pourront être causaux. le niveau de bruit à chacun des capteurs est déterminé par le programmeur. Par exemple, dans les simulations qui vont suivre, les capteurs d'erreur auront un rapport signal sur bruit de 30 dB, tandis que les capteurs de référence seront non-bruités. Les simulations permettront donc de valider le comportement des algorithmes avant d'effectuer le test ultime : le contrôle acoustique large bande dans un conduit. Ces simulations ont été effectuées avec le logiciel labview (O 1994 National Instruments Corporation). Ce logiciel a été choisi principalement pour deux raisons : le temps de développement du simulateur est plus court à cause de l'environnement de programmation graphique fourni par ce logiciel les capacités graphiques fournies par ce logiciel pour visualiser les résultats ainsi que pour l'entrée des paramètres du simulateur sont très développées. 3.2 Description du système simulé Contrairement à un système physique réel, il faudra calculer dans les simulations les valeurs à la sortie des fonctions de transfert entre la source de perturbation et les capteurs de référence, entre la source de perturbation et les capteurs d'eneur, et entre les actionneurs et les capteurs d'erreur. Les premières seront appelées NX, les secondes ND et les dernières seront appelées H comme au chapitre 2. Ces fonctions de transfert seront approximées par des filtres FIR causaux. Dans un système réel, ces fonctions sont physiques et les valem résultantes sont mesurées plutôt que calculées. Pour illustrer le système global des simulations, la figure 3.1 présente le cas monocanal avec l'algorithme LMS 2 référence filtrée : système physique sirnuié 1 bruit au capteur d'erreur I I 1 capteur S- * " N (source de pembation) H v capteur de référence - filtre adaptatif Figure 3.1 : exemple mono-canal d'un système simulant l'algorithme LMS à référence filtrée. Il est à noter que dans le système simulé de la figure 3.1 la branche de contrôle est absente (à comparer avec la figure 2.2). Il est en effet inutile dans les simulations de séparer l'algorithme en une partie contrôle en temps réel et une partie optimisation en temps différé puisqu'il n'y a aucune contrainte reliée au temps ou à la fféquence d'échantillonnage dans les simulations. Ceci signifie que contrairement aux systèmes de contrôle en temps réel, les coefficients des filtres adaptatifs W seront modifiés à chaque échantillon dans les simulations. Comme il a été mentionné quelques pwgraphes plus tôt, les filtres ND, M(. et H sont en fait des filtres FIR causaux à phase minimale, de façon à ce que la solution exacte pour les fdms W soit causale (notons que le filtre ND n'a pas besoin d'être à phase minimale mais il a cependant été construit de la même façon que NX et H). Pour s'assurer de la propriété de phase minimale, les filtres ont été construits en convoluant les réponses temporelles de zéros à l'intérieur du cercle unitaire dans le domaine de la transformée en 2.Ce sont ces mêmes filtres NX et H qui détermineront la vitesse de convergence de l'algorithme LMS à référence filtrée (ou du NLMS), dépendamment de la corrélation des signaux de référence filtrée qu'ils produiront L'algorithme COS-NLMS pour sa part devrait toujours avoir une vitesse de convergence quasi-optimale. 3.3 Aperçu du programme de simulation La vitesse de convergence de ces trois derniers algorithmes (LMS à référence filtrée, NLMS et COS-NLMS)sera comparée dans les simulations. De façon à demeurer le plus général possible dans les simulations, le simulateur a été construit avec plusieurs paramètres qui lui sont fournis en entrée. La figure 3.2 illustre l'interface usager du simulateur avec les différents paramètres d'entrée et de sortie. 1 bruit capteur deneu excitaho BRUIT BLANC r Figure 3.2 : interîace usager du simulateur. À la figure 3.2, I'encadré à gauche contient les paramètres d'initialisation du simulateur. Ces paramètres ne sont lus qu'une seule fois. Ils permettent de déterminer: le nombre de capteurs de référence (Nx) le nombre d'actiomeurs (Ny) le nombre de capteurs d'erreur (Ne) la longueur des filtres ND, NX et H (L) la longueur des filtres adaptatifs W (Lw) le niveau de bruit par rapport au signal utile aux capteurs d'erreur le nombre d'itérations de convergence à simuler (ensuite la courbe de convergence sera écrite dans un fichier) le type d'excitation (source de perturbation large bande ou harmonique) l'algorithme à simuler (LMS à référence filtrée, NLMS ou COS-NLMS). L'encadré à gauche sous le graphique contient des éléments qui seront constamment lus ou écrits (à l'opposé des éléments dans l'encadré à gauche complètement). On y retrouve: le pas d'adaptation de l'algorithme utilisé le nombre d'itérations de convergence effectuées la convergence de l'algorithme à I'itération présente. Les éléments de l'encadré à droite directement sous le graphique servent à contrôler l'affichage graphique. Le commutateur qu'on y retrouve sert à activer ou désactiver l'affichage graphique. Cette option est présente parce que les calculs se font beaucoup plus rapidement lorsque l'affichage graphique est désactivé. Les deux autres paramètres servent à sélectionner quel type de courbe doit être affichée (courbe de convergence, filtre adaptatif, signai de référence, signal d'erreur, etc.), ainsi que le numéro de courbe à afficher lorsqu'il y a plusieurs courbes du même type (par exemple plusieurs filtres adaptatifs dans le cas multi-canaux). Finalement l'encadré à droite au bas de la figure sert à vérifier qu'aucune condition d'erreur ne s'est produite pendant la simulation. en particulier lors de l'inversion de matrices. La figure 3.3 présente Le programme principal du simulateur (le "main") écrit en langage graphique LABVIEW. On retrouve dans ce langage de programmation les différents éléments de la programmation classique (boucle FOR, boucle WHILE, CASE, les structures, les types de données), ainsi qu'un aspect de la programmation orientée objet : le pol ymorphisrx. D'autres fonctionnalités sont particulières au langage de programmation LABVIEW, par exemple l'autoindexage des tableaux et des matrices utilisés dans une boucle, fonctionnalité qui évite d'avoir à entrer la dimension du tableau ou de la matrice comme paramètre de la boucle. Figure 3.3 : programme principal ("main") du simulateur en langage graphique LABç7EW 3.4 Résultats de simulation Dans les simulations, l'algorithme LMS à référence filtrée a été normalisé par la moyenne de la somme des énergies totales des signaux de référence filtrée (normalisation par la trace de la matrice Rw)- Le NLMS et le COS-NLMS étant déjà normalisés, aucune normalisation supplémentaire ne fut requise. Le pas d'adaptation optimal (au niveau de la vitesse de convergence) a été trouvé par essai et erreur dans le cas du LMS et du NLMS. Dans le cas du COS-NLMS,puisque les signaux de référence filtrée sont quasi-décorrélés, alon I'hypothèse d'indépendance des signaux de référence filtrée devient valide [UNGERBOECK. 19721 et le pas d'adaptation optimal est alors u=1.O.Le bruit au capteur d'erreur a été fixé à 30 d B sous le niveau du signal utile (sans cela la convergence aurait été limitée seulement par la précision de calcul). Pour toutes les simulations effectuées, la longueur des filtres ND, NX et H a été fixée à 64 coefficients, tandis que la longueur des filtres adaptatifs W était de 256 coefficients. Les simulations ont été effectuées pendant lûûûû itérations avec une excitation large bande (bruit blanc). Deux cas G intéressants » seront présentés : un système classique mono-canal 1- 1- 1 ( 1 capteur de référence, 1 actionneur et 1 capteur d'erreur) et un système 1-2-2. Ces configurations sont intéressantes parce que ce sont ces mêmes configurations qui seront ensuite testées dans les expériences de contrôle en temps réel dans un conduit circulaire. Pour évaluer la performance des différents algorithmes de contrôle, le critère suivant est calculé : le rapport entre l'énergie résiduelle aux capteurs d'erreur et l'énergie de la perturbation à éliminer aux capteurs d'erreur, le tout converti en dB. La figure 3.4 présente les courbes de convergence des algorithmes à référence filtrée LMS, NLMS et COS-NLMSpour le cas 1-1-1. On remarque aisément que le COS-NLMSa une vitesse de convergence bien supérieure aux deux autres algorithmes, qui ont une vitesse de convergence à peu près identique. Il faut mentionner une fois de plus que le gain en vitesse de convergence du COS-NLMSpar rapport au LMS et au NLMS dépend uniquement de la comélation des signaux de référence filtrée. Comme cette corrélation est produite dans ce casci par les filtres M( et H (la source de perturbation étant blanche), ce sont ces derniers qui déterminent l'amélioration obtenue par le COS-NLMS.Dans le cas où tous ces fdtres ne seraient que des retards purs, tous les algorithmes auraient la même vitesse de convergence car les signaux de référence fdtrée seraient non-corrélés. Le cas illustré à la figure 3.4 correspond cependant à un cas où les signaux de référence fùtrée sont très corrélés, comme c'est souvent le cas en pratique dans les conduits. C'est ce qui explique la vitesse de convergence sup6rieure du COS-NLMSà cette figure. "'% NLMS 1. COSNLMS 2 Figure 3.4 : courbe de convergence des différents algorithmes, cas 1- 1-1 À la figure 3.5, les courbes de convergence du cas 1-2-2 sont maintenant affichées, et le gain en vitesse de convergence du COS-NLMS par rapport au LMS et au NLMS est encore plus évident, car ces demies semblent avoir atteint un plateau. Après un temps de convergence très long, le LMS et le NLMS obtiendraient la même performance après convergence que le COS-NLMS(-27 dB). Cependant dans un environnement non-stationnaire (où les fonctions de transfert ND, NX et H de la figure 3.1 varient en fonction du temps), on imagine facilement que le COS-NLMS parviendrait à s'adapter beaucoup mieux aux changements des fonctions de transfert que les deux autres algorithmes. Figure 3.5 : courbe de convergence des différents algorithmes, cas 1-2-2 3.5 Résumé du chapitre Des simulations de contrôle actif ont été effectuées avec le logiciel LABVIEW dans le but d'obtenir une première validation des vitesses de convergence des différents algorithmes. Le système simulé a été présenté et un aperçu du programme de simulation a été montré. Les résultats ont clairement indiqué que pour des signaux de référence filtrée fortement corrélés, le COS-NLMSavait une vitesse de convergence bien supérieure au LMS et au NLMS. 4. MISE EN OEUVRE EN TEMPS RÉEL DES ALGORITHMES 4.1 Description des tâches devant être exécutées par le système de contrôle k système en temps réel permettant la mise en oeuvre des algorithmes de contrôle dont il a été question jusqu'à présent dans ce document est un système complexe, c'est-à-dire qu'il doit exécuter plusieurs tâches en simultané. La tâche ayant la priorité absolue est la tâche de filtrage en temps réel, c'est-à-dire la branche temps réel des figures 2.2 et 2.4. Cette tâche doit s'exécuter de façon synchrone avec la fréquence d'échantillonnage du contrôleur (donc un filtrage en temps réel et la génération d%i échantillon de sortie à chaque fois qu'un nouvel échantillon est lu en entrée), et ne doit pas ê e retardée ou empêchée de s'exécuter sous aucune condition. Cette tâche sera donc exécutée par une i n t e m o n qui sera déclenchée par la lecture d'un nouvel échantillon sur les convertisseurs AIN. La tâche la plus prioritaire après celle du filtrage en temps réel est la tâche d'optimisation, c'est-àdire la tâche correspondant aux branches doptimisation des figures 2.2 et 2.4. Cette tâche est responsable de l'adaptation des filtres adaptatifs et du calcul des références filtrées, ainsi que de l'estimation des différents paramètres utiles au contrôle (calcul de l'énergie instantanée des références filtrées, calcul de la performance de l'algorithme, etc.). L'exécution de cette tâche se produit dès que la tâche prioritaire (exécutée par interruption) n'est pas en cours d'exécution. L,e troisième type de tâche devant être exécutée par le système de contrôle en temps réel est la tâche de communication avec un ordinateur portatif (PC). Cette tâche est la moins prioritaire des tâches. Communiquer avec un PC est essentiel dans le cas d'un système prototype car cela permet l'entrée de paramètres de façon conviviale par un usager (pas d'adaptation, type de contrôle, configuration du système, etc.), ainsi que la visualisation par l'usager de courbes et de valeurs pertinentes au contrôle (signaux en provenance des capteurs, filtres adaptatifs, performance du contrôleur, etc.). Un tel prototype permet rajustement approprié des divers paramètres du contrôleur et l'évaluation correcte de ses performances. Une fois cette étape franchie, la tâche de communication avec un PC n'est plus absolument requise, c'est-à-dire que si le système de contrôle actif doit être produit à un faible coût alors cette tâche peut être réduite ou éliminée. 4.2 Description du matériel utilisé La mise en oeuvre en temps réel des algorithmes a été effectuée sur une carte DSP multiprocesseurs. La carte DSP est connectée sur un bus VME, et sur ce bus on retrouve d'autres cartes dont une carte pour communiquer avec le PC via un port dédié et une autre carte pour gérer un bus spécialisé, le bus MIX, pemettant d'accéder à des cartes de convertisseurs A/N et DIA. La figure 4.1 donne un aperçu de l'architecture du système informatique utilisé. LE fait que la carte DSP ait accès à deux bus en parallèle lui permet d'avoir une bonne bande passante au niveau du transfert des données. Au niveau de la puissance de calcul, cette même carte contient 4 processeurs TMS320C40 (O Texas Instrument) en parallèle, ce qui lui donne une puissance de calcul théorique de 200 MFLOPS (millions d'opération en point flottant à la seconde). Pour sa part, le PC utilisé est un ordinateur Hewlett-Packard avec microprocesseur 80486 DX2 n'ayant rien de vraiment particulier pour un PC, à part le fait qu'il contient une carte permettant de communiquer avec le bus VME via un bus dédié. CARTE DSP CARTE DE CONVERTISSEURS A/N ET NIA BUS MIX BUS VMIE 1 CARTE DE CONVERTISSEURS CARTE GÉRANT LE BUS MIX LE BUS VME ET LE BUS DÉDIÉ CARTE GÉRANT CARTE GÉRANTLE BUS DÉDG BUS ISA (FC) Figure 4.1 : architecture utilisée pour la mise en oeuvre en temps réel du contrôleur 4.3 Système d'exploitationpermettant la communication PC-DSP Traditionnellement, l'environnement de programmation des DSPs est un environnement du type "debugger",où on a accès aux registres et à la mémoire telle que vue par le DSP. Ce type d'environnement ne convient pas três bien aux applications de contrôle actif, où il est vital de pouvoir visualiser de façon graphique différents signaux et spectres. D'autres environnements plus sophistiqués sont également disponibles (par exemple SPOX), mais les possibilités graphiques de ces environnements semblent limitées ou inexistantes. Un système d'exploitation permettant le chargement du code dam les DSPs et l'échange de données en continu avec le PC pendant l'exécution du code a donc été développé. Le système d'exploitation contient une partie s'exécutant sur le PC et une partie s'exécutant sur le DSP,tel qu'indiqué à la figure 4.2. La partie s'exécutant sur le DSP opère en mode maître, c'est-à-dire que c'est eile qui détermine quand les échanges doivent avoir Lieu avec le PC.Ce dernier opère en mode esclave, c'est-à-dire qu'il vérifie constamment si une requête est émise par le DSP. Ceci est préférable car d'une part le DSP ne peut se permettre de vérifier constamment si le PC veut communiquer (parce que le DSP a d'autres tâches plus importantes à accomplir), et d'autre part le PC peut difficilement interrompre le DSP pour lui indiquer qu'il veut communiquer. En effet, si le PC interrompt trop souvent le DSP (à chaque mot échangé par exemple), ceci risque de duninuer le temps de calcul alloué par le DSP à des tâches prioritaires. A I'opposé, si le PC interrompt moins souvent le DSP mais pour le transfert d'un nombre important de données, cette interruption risque de durer trop longtemps, c'est-à-dire qu'elle empêchera l'interruption du filtrage en temps réel de pouvoir s'exécuter entre deux instants d'échanti~omage.Il est donc préférable que le DSP opère en mode maître, et qu'il n'effectue des tâches de communication que lorsqu'il a commandé un échange avec le PC. Pour sa part, le PC peut constamment lire dans la mémoire du DSP pour déterminer s'il y a une requête de communication, parce que la communication avec le DSP (pour l'affichage des résultats et rentrée des paramètres) est la seule tâche exécutée par le PC et que cette tâche n'est pas critique (eue ne requiert pas d'être exécutée en temps réel). .-----------------------------.-----------. i ~ S (C .. . P a a w m b ~ ~ ) ... .. .. .... .... PARTIE PCDU ALGOFUTHME 1 i i PARTIE DSP DU : : SYSTÈME KERNEL PC , i-* i SYSTÈME DE CONTRÔLE .. .. D'EXPLOITATION y D'EXPLOITATION O SUR DSP (ESCLAVE) i : (MAZTRE) .. . ... ' ... .. . .-----------.----.--.-------.---.--...--+: - . t . - - - c - c , - r - . - - - - * - * . * - * - - . * - * * * - * - * . ~ * * - - . - - - - - : DISQUE i DUR :* CUVIER .i .PC(LABVIEW) ' * ' ' * , i ÉCRAN : GRAPHIQUE a m 0 . c----------------...---..--------------- Figure 4.2 : système d'exploitation permettant la communication PC-DSP Notons ici qulm seul des 4 DSPs est utilisé pour échanger des données avec le PC. Du côté DSP, le code doit être écrit en C ou en assembleur, avec les outils de développement fournis par le fabricant (Texas Instrument). Par contre, du côté PC, le choix de I'enviromement de développement est plus vaste, et une fois de plus le logiciel LABVIEW a été utilisé parce que ses capacités graphiques sont importantes et que sa convivialité est bonne. La figure 4.3 illustre une interface usager typique des programmes LABVIEW utilisant le système d'exploitation développé pour communiquer avec les DSPs. On remarque qu'il est facile de sélectionner quelle courbe doit être affichée, de signaler au contrôleur de terminer son exécution, de choisir le pas d'adaptation, d'afficher des statistiques, etc.. niveau de s o r k N d r e cfitératioils de convergence Etat âe i'a1gont)me: lntemrption cp Intenuptionnode Figure 4.3 : interface usager typique des programmes utilisant le système d'exploitation développé 4.4 Parallélisation des calculs et synchronisation des processus De façon à simplifier la gestion de la parallélisation des calculs, une approche rnodulo 4 a été utilisée pour Les filtres en temps réel (voir figure 2.2). Ceci signifie que s'il n'y a qu'un filtre en temps réel à convoluer, alors seulement le processeur 1 est sollicité pour la convolution. S'il y a deux filtres en temps réel à convoluer, alors les processeurs 1 et 2 seront utilisés, chacun calculant une convolution. S'il y a quatre filtres en temps réel à convoluer, chaque processeur effectuera une convolution. S'il y a cinq filtres en temps réel à convoluer, alors le processeur 1 effectuera 2 convolutions, et les autres processeurs effectueront chacun 1 convolution. Une répartition plus égale de la charge de calcul entre les processeurs serait possible en sous-divisant chaque convolution en sous-convolutions réparties enae les quatre processeurs, mais cette technique exigerait cependant une synchronisation supplémentaire entre les différents processeurs. Aucune synchronisation n'est requise pour l'échange des résultats des convolutions en temps réel entre les DSPs (sauf évidemment l'interruption qui survient à la fréquence d'échantillonnage). Ceci est possible parce qu'à chaque instant les processeurs utilisent les résultats des convolutions calculées à I'échantiIlon précédent pour génkrer les résultats de l'instant présent, et effectuent des convolutions qui serviront à calculer les résultats de l'échantillon suivant. Ceci implique que l'on ajoute artificieiIernent un retard de un échantillon dans le temps de réponse du contrôleur mais habituellement un tel retard n'est pas critique pour un système de type feedforward. Pour sa part, la partie optimisation s'effectue sur un seul processeur. La cause de ceci est que l'effort requis pour paralléliser ce processus n'est probablement pas rentable car une telle parallélisation n'aura pas d'impact sur la fréquence d'échantillonnage maximale pouvant être atteinte par le système. Comme il a été mentionné un peu plus tôt, un seul processeur communique avec le PC via le système d'exploitation. Ceci signifie donc que ce processeur devra envoyer les paramètres qu'il a reçus en provenance du PC aux autres processeurs quand cela s'avérera nécessaire. Ces communications inter-processeurs sont très peu souvent requises (seulement à l'initialisation), et pour les synchroniser, de simples sémaphores sont utilisés avec une mémoire partagée pour les données à échanger. Le DSP devant calculer la partie optimisation et devant gérer la commiinication PC-DSPn'est cependant pas ralentie dans sa tâche de contrôle en temps réel, car cette tâche s'effectue dans une interruption déclenchée par les convertisseurs A N et N/A. 4.5 R b é du chapitre Les différentes tâches devant être exécutées par le système de contrôle ont été décrites. et l'architecture du matériel informatique utilisé pour la mise en oeuvre en temps réel du contrôleur a été présentée. De plus. un système d'exploitation permettant aux programmes de contrôle de visualiser des courbes et d'envoyer des paramètres aux DSPs a été développé, et l'interface typique d'un programme de contrôle avec l'usager a été montré. Finalement la parallélisation des calculs de temps réel a été décrite, et on a vu que les autres processus (cdculs en temps différé et communication DSP-PC)sont effectués par un seul DSP. 5.1 Description du syst6me acoustique réel Le système acoustique utilisé pour les expérimentations en temps réel est un conduit d'environ 10 cm de diamètre. De tels conduits ont été parmi les premiers systèmes sur lesquels la technologie du contrôle actif a été appliquée [SWINBAPXS,19731.La figure 5.1 illustre le conduit ainsi que les différents éléments du système de contrôle actif. Ce système peut être utilisé aussi bien pour des cas de contrôle mono-canal (avec un seul actiomeur et un seul capteur demur) que pour des cas multicanaux (avec deux actionneun et deux capteurs d'erreur). Un seul capteur de référence a été utilisé dans les expérimentations, celui-ci s'avérant suffisant pour effectuer un contrôle efficace. CAPTEUR D'ERREUR PERTURBATION ÀLARGEBANDE (BRUITBLANC) / )) \ 1 CONDUIT CAPTEUR DE RÉFÉRENCE ACTIONNEUR .*.-. CAPTEUR D'ERREUR fermé lorsqu'un seul capteur d'erreur est utilisé Figure 5.1 : système acoustique utilisé pour les expérimentations en temps réel Le capteur de référence a été placé dans une partie de conduit perpendiculaire au conduit principal, ceci dans le but d'obtenir un signal de référence assez auto-corrélé (avec une bonne dynamique spectrale). Notons que cet emplacement n'est pas le seul où il est possible d'obtenir un signal de référence assez auto-corrélé, mais les chances d'obtenir de telles propriétés sur le signal de référence étaient meilleures à cet endroit. Un signal de référence corrélé produira un signal de référence Ntrée (ou plusieurs signaux dans le cas d'un contrôleur multi-canaux) qui sera également corrélé, le signal de référence filtrée étant obtenu en fdtrant le signal de référence avec la fonction de transfert entre l'actionneur et le capteur d'erreur. Plus le signal de référence filtrée sera corrélé, plus le COS-NLMS sera avantageux par rapport aux algorithmes classiques tels le LMS et le NL,MS. En effet, la performance (en vitesse de convergence) du COS-NLMS ne dépend pas de la corrélation du signal de référence filtrée, alors que la performance du LMS ou du NLMS en dépend fortement. En pratique, les situations où Iton retrouve des signaux de référence filtrée fortement cornélés ne sont pas rares, que ce soit dû à une corrélation des signaux de référence ou bien à une fonction de transfert entre l'actionneur et le capteur d'erreur ayant une grande dynamique spectrale (ces deux causes sont typiques des systèmes très réverbéranü). Les expérimentations qui seront effectuées avec de tels signaux de référence filtrée seront donc très réalistes. La bande de fréquences à contrôler pendant les expérimentations sera de O à 1000 Hz. Ces fréquences sont en dessous de la fréquence de coupure du premier mode supérieur de propagation dans le conduit, donné par: Fc = 1.84 * C * (2*pi*r) (5-1) où Fc (en Hz) est la fréquence de coupure du premier mode supérieur, soit la fréquence à partir de laquelle ce mode existe, C (en mètreds) est la vitesse du son dans le conduit (qui varie en fonction de la température), et r (en mètres)est le rayon dans le conduit. Notons que cette relation n'est valide que pour des conduits circulaires. En supposant une vitesse du son d'environ 330 m/s, et pour un rayon de 5 cm, la fréquence de coupure est alors de 1932 Hz. Donc en limitant la perturbation à éliminer à 1 0 Hz de largeur de bande, on s'assure que seul le mode plan de propagation sera présent dans le conduit. Ne retrouver que le mode plan comme mode de propagation dans le conduit est intéressant pour la raison suivante : si le contrôleur parvient bien à réduire le niveau de bruit au capteur d'erreur, alors le contrôle sera effectif dans l'ensemble de la section où se trouve le capteur d'erreur, et le niveau de bmit sera réduit partout en aval du microphone d'erreur (et par conséquent le niveau de bruit à la sortie sera également réduit). À l'opposé, tel que mentionné dans l'introduction. lorsque des modes de propagation supérieurs sont présents, même si le contrôleur réussi bien à éliminer le bruit au capteur d'erreur, le niveau de bruit ailleurs dans la section où se trouve le capteur d'erreur ainsi qu'en aval dans le tuyau ne sera pas atténué, et pourra même être augmenté (en espérance). Le contrôle est dans ce cas uniquement local, et aucune atténuation globale n'est observée à la sortie du tuyau. 5.2 Problème de l'annulation de bouclage Un système tel que celui qui apparaît à la figure 5.1 présente un problème : il y a une rétroaction entre l'actionneur de contrôle et le capteur de référence, c'est-à-dire que le capteur de référence ne capte pas seulement le signal en provenance de la source de perturbations, mais plutôt la somme de la contribution de la source de perturbation et de la contribution de l'actionneur de contrôle au capteur de référence. Ce phénomène peut mener directement à l'instabilité (divergence) dans le cas de contrôleurs utilisant des filtres FIR (comme ce sera le cas dans les expérimentations), s'il n'est pas traité d'une façon appropriée. Ji existe plusieurs approches pour éliminer cette rétroaction entre l'actionneur et le capteur de référence. La première approche est d'utiliser un système où on élimine de façon physique la contribution de l'actiomeur au capteur de référence. Par exemple, deux actionneurs sont stratégiquement situés pour que leur contribution au capteur de référence soit nulle, et que leur contribution au capteur d'erreur permette d'éliminer la perturbation. Ce principe n'est valide que pour une fréquence fixe, et n'est donc pas applicable pour des contrôleurs à large bande. Une autre approche est d'utiliser un capteur de référence qui n'est pas «couplé» avec l'actionneur. Par exemple, dans le cas où la source de perturbation éliminer est un moteur, un accéléromètre peut être utilisé comme capteur de référence, et dans ce cas si l'actionneur est un haut-parleur alors celui-ci n'a aucune influence sur le signal capté par le capteur de référence. L'inconvénient de cette approche est que la cohérence entre le signal à éliminer au capteur d'erreur et le signal du capteur de référence n'est pas toujours bonne, ce qui rend difficile la tâche du contrôleur. Par exemple, un accéléromètre détecte des modes de vibrations qui ne rayonnent pas acoustiquement et donc qui ne seront pas présents dans le conduit. D'autres approches essaient de compenser numériquement pour la rétroaction entre l'actionneur et le capteur d'erreur. Pour les contrôleurs feedfonvard à perturbation large bande, il existe essentiellement deux approches. La première approche combine le fdtre de contrôle entre le capteur de référence et l'actionneur, et le filtre d'annulation de bouclage entre l'actionneur et le capteur de référence, en un seul filtre dont la structure est celle d'un filtre à réponse impulsionnelle infinie (W) ERIKSSON et coll., 19871. Cette approche permet d'obtenir des filtres efficaces ayant un faible nombre de coefficients. La convergence est relativement rapide, mais les algorithmes doptimisation de filtres à réponses impulsionnelles infinies souffrent d'un manque de robustesse. En particulier, ces algorithmes peuvent converger vers des minima locaux et manquer le minimum global. De plus, l'optimisation peut converger temporairement vers un filtre instable (avec des pôles à l'extérieur du cercle unitaire). Puisque dans ce projet de recherche l'accent est surtout mis sur l'étude de filtres RR pour les raisons mentionnées dans I'introduction, cette approche ne sera pas utilisée. L'autre approche de compensation de la rétroaction entre l'actionneur et le capteur de référence consiste à considérer le filtre de contrôle (entre le capteur de référence et l'actionneur) indépendamment du filtre d'annulation de bouclage (entre l'actionneur et le capteur de référence). Pour cette approche, la convergence est bien contrôlée. L'optimum global est toujours atteint, et il n'y a pas de problème de stabilité (pas de pôles à l'extérieur du cercle unitaire). Par contre, le filtre peut nécessiter un nombre important de coefficients et la convergence est en général lente (c'est pourquoi le COS-NLMS a été développé dans ce projet). C'est cette dernière approche qui a été retenue, et la figure 5.2 illustre plus en détail le concept. Source de perturbation (haut-parleur) n 5-4 -- xgnai ae rererence . - N p e . - - - Fiitre d'annulation 4 de bouclage avancée sur ia perturbation à éliminer I A Signal de 1' actiomeur (haut-parleur de contrebruit) Signa1 d'erreur résiduelle (bruit au microphone) Figure 5.2 : système feedfonvard de contrôle actif avec annulation de bouclage numérique 5.3 Expérimentations et résultats de contrôle Le contrôleur utilisé procédait en deux étapes : une étape d'identification et une étape de contrôle. Dans l'étape d'identification, la source de perturbation n'était pas en marche et du bruit blanc était émis dans I'actiomeur (ou les actiomeurs dans le cas multi-canaux), de façon à pouvoir identifier les fonctions de transfert entre l'actionneur et les capteurs d'erreur et de référence. Un algorithme LMS classique (et non pas un LMS à référence filtrk) est utilisé pour cette identification, et puisque dans ce cas la référence de l'algorithme est blanche don la vitesse de convergence est optimale. Mentionnons qu'il existe des techniques d'identification «on-line», c'est-à-dire des techniques qui permettent de procéder à l'identification pendant que la source de perturbation à éliminer est en marche [COLEMAN et coll., 19941. k principe général est d'émettre à l'actionneur un signal faible et non-corrélé avec le signal de contrôle émis par l'actionneur, et d'identifier les fonctions de transfert à partir des corrélations qui existeront entre le signal faible émis et les signaux recueillis par les capteurs d'erreur et de référence. La fréquence d'échantillonnage utilisée pour les essais en temps réel a été choisie 2 3000 Hz, de façon à pouvoir contrôler la bande de O à 1000 Hz. Des filtres de reconstruction elliptiques analogiques passes-bas avec une fréquence de coupure à 1OOO Hz ont été utilisés à sortie des convertisseurs D/A du contrôleur. Ces filtres avaient une atténuation de plus de 60 dB à la dernie fréquence d'échanflonnage, soit 1500 Hz. De plus, un fdue analogique similaire a été appliqué sur la source de perturbation (générateur de bruit blanc), de façon à ce que la perturbation soit à bande limitée. Comme la perturbation était à bande limitée et que la contribution du contrôleur était également à bande limitée, les signaux recueillis par les microphones (capteurs d'erreur et de référence) étaient également à bande limitée, ce qui implique que des filtres anti-repliements analogiques n'étaient pas requis sur ces capteurs. Dans tous les cas, le nombre de coefficients utilisés a été de 256, que ce soit pour les filtres modélisant les fonctions de transfert entre les actionneun et les microphones ou bien pour les filtres de contrôle en temps réel. Deux algorithmes ont été comparés dans les expérimentations : le NLMS et le COS-NLMS (les deux algorithmes sont évidemment des algorithmes à référence filtrée). Le LMS à référence filtrée n'a pas été mis en oeuvre en temps réel tout simplement parce que ses performances sont habituellement soit équivalentes, soit inférieures au NLMS. Dans le cas du C O S - U S , l'estimation de démarré, et Ra, (2.33) a été effectuée avant que le contrôle ne soit Rd, n'a pas été modifié par la suite pendant le contrôle (hypothèse d'un système stationnaire). Bien sûr dans un système non-stationnaire, l'estimation de Rd, devrait constamment être modifiée. Pour calculer Rd, -IR, une décomposition en valeurs singulières (SVD [ S W G , 19881) a été utilisée. Plutôt que de faire une décomposition globale, il était possible d'effectuer une décomposition en valeurs singulières de chacun des blocs de la blocdiagonale de R&, puisque cette dernière est une matrice bloc-diagonale. Seules les valeurs propres qui étaient situées audessus du niveau de bruit et au-dessus du niveau de la résolution de la DCT étaient inversées. En fait, les valeurs propres étaient visualisées sur une même courbe et le seuil à partir duquel elles ne devaient plus être inversées était déterminé «àl'oeil» par l'allure de la courbe. Les valeurs propres qui n'étaient pas inversées étaient mises à zéro, mais une autre approche qui aurait pu être utilisée serait d'inverser toutes les valeurs propres mais de limiter les valeurs de l'inverse des valeurs propres faibles. Dans certains cas, le seuil pour la valeur du pas d'adaptation du NLMS et du COS-NLMS permettant la convergence a été trouvé en pratique plus faible qu'en théorie. En effet, dans ces cas, des divergences survenaient pendant la phase de contrôle, alon qu'un pas d'adaptation de 1.0 (et donc sous la limite théorique de 2.0 pour les deux algorithmes normalisés) était utilisé. La cause principale de cette divergence pour un pas d'adaptation de 1.0 est attribuée à une imprécision dans le calcul du signal de référence, qui est obtenu en soustrayant la contribution estimée des actiomeurs au capteur de référence au signal mesuré par le capteur de référence (annulation de bouclage). En effet, dans le cas rnulti-canaux (principal cas où le problème de divergence s'est présenté), l'imprécision peut être plus grande car c'est l'erreur cumulée de l'estimation de chaque fonction de transfert entre les actionneurs et le capteur de référence qui sera perçue sur le signal de référence. De plus, dans le cas du COS-NLMS,il est possible que si trop de valeurs propres ont été inversées dans le calcul de Rd, -IR (alors que certaines valeurs propres n'auraient pas dû être inversées car elles étaient trop près du niveau de bruit), alors le seuil du pas d'adaptation maximal assurant la convergence s'en trouve modifié car dans ce cas le bruit du système est amplifié. Deux configurations ont été retenues pour les expérimentations : le cas mono-canai (un capteur de référence, un actionneur et un capteur d'erreur) et le cas 1-2-2 (un capteur de référence, 2 actionneurs et 2 capteun &erreur). C'est le cas 1-2-2 qui apparaît à la figure 5.1. À la figure 5.3, la performance des 2 algorithmes testés en fonction du nombre d'itérations (et donc en fonction du temps) est présentée pour le cas mono-canal. Comme auparavant, pour évaluer la performance des différents algorithmes de contrôle, on calcule le rapport entre l'énergie résiduelle au capteur d'erreur et l'énergie de la perturbation à éliminer au capteur d'erreur, le tout converti en dB. O.0 10~0.13 Figure 5.3 :courbes de convergence obtenues lors des expérimentations en mono-canai (1- 1- 1) On remarque à la figure 5.3 que la vitesse de convergence du COS-NLMSest bien supérieure à celle du LVS. De plus, l'algorithme NLMS (tout comme l'algorithme LMS) converge initialement rapidement pour les fréquences qui sont énergétiques dans les signaux de référence filtrée, pour ensuite converger beaucoup moins rapidement pour les fréquences moins énergétiques W R O W et coll., 1985 et PAILLARD et coll., 19951. Autrement dit, la courbe de convergence du NLMS a une pente beaucoup plus élevée dans les premiers instants de convergence que par la suite. Le nombre d'itérations requises par l'algorithme NLMS pour atteindre la même performance après convergence que le COS-NLMSserait donc très élevé, plus élevé encore que ce qui peut être déduit de la figure 5.3 en extrapolant. La limitation de I'algorithme à une performance de 15 dB d'anénuation est due au nombre limité de coefficients utilisés pour les fdtres et à la nonsausdité des filtres optimaux de contrôle (dû à la réverbération du système, et donc aux fonctions de transfert non minimales de phase entre les actionneurs et les capteurs d'erreur). À la figure 5.4, les courbes de convergence sont présentées pour le cas 1-2-2, et pour le capteur d'erreur 1. Dans ce cas l'amélioration du COS-NLMS par rapport au NLMS est encore plus évidente que pour le cas précédent 1- 1- 1. De plus, ce cas prouve que le principe d'utiliser des techniques dans le domaine des transformées pour accélérer la convergence de I'algorithme LMS à référence filtrée, tel que présenté auparavant pour le cas mono-canal seulement WARAYAN et coll., 1983 et PAILLARD et coll., 19951, peut être étendu au cas multi-canaux. Figure 5.4 :courbes de convergence obtenues lors des expérimentations en multitanaux ( 1-2-2). canal 1 La figure 5.5 présente les courbes de convergence au capteur 2 pour le même cas 1-2-2. On remarque que bien que le COS-NLMSse comporte mieux que le NLMS une fois de plus, le gain en performance n'apparaît vraiment qu'après 20000 itérations de convergence. Ceci est dû au fait mentionné quelques paragraphes plus tôt que la vitesse de convergence du NLMS est initialement assez rapide (convergence dans les zones spectrales énergétiques dans les signaux de référence filtrée) pour ensuite devenir beaucoup moins rapide (convergence dans les zones spectrales moins énergétiques dans les signaux de référence filtrée). Rappelons une fois de plus que le gain en performance obtenu par le COS-NLMS par rapport au NLMS est directement fonction de la corrélation des signaux de référence filtrée utilisés par l'algorithme LMS. Plus cette corrélation sera grande, plus le COS-NLMSconvergera plus vite que le NLMS. Figure 5.5 :courbes de convergence obtenues lors des expérimentations en multi-canaux canal 2 5.4 Résumé du chapitre Le système physique réel sur lequel les expérimentations de contrôle actif en temps réel ont été effectuées a été décrit: il s'agit d'un conduit circulaire. Des problèmes pratiques tels la propagation des modes supérieurs dans un conduit ou la présence d'une rétroaction entre les actionneurs et le capteur de référence ont été abordés. Des détails sur les expérimentations qui ont été effectuées ont également été présentés. Les résultats de contrôle montrent hors de tout doute que pour des signaux de référence assez corrélés, le COS-NLMSpermet d'obtenir une vitesse de convergence bien supérieure au NLMS, aussi bien dans le cas monocanal que dans le cas multicanaux. CONCLUSION Dans ce travail, un nouvel algorithme de contrôle actif avec fdtres F R pour systèmes feedfonvards a été développé : le COS-NLMS.Cet algorithme a la même robustesse que le NLMS (robustesse à une augmentation soudaine du niveau des références), presque la même faible charge de calcul que le LMS à référence filtrée ou le NLMS, et une vitesse de convergence quasi-optimale (approchant celie du Newton-LMS). Cet algorithme offie donc une alternative intéressante aux filtres W car il permet lui aussi une convergence rapide, et en plus la convergence est bien contrôlée dans ce cas car il s'agit d'un filtre FR.D'autres algorithmes du genre existent mais ces algorithmes ont quelques défauts [HAYKIN et coll., 19911: leur structure est trop complexe pour être décomposée en une tâche de contrôle en temps réel et une tâche d'optimisation en temps différé (Fast Kalman) ils exigent plus de calculs et sont applicables surtout au cas monosanal (approches en treillis). Des simulations effectuées avec le logiciel LABVIEW ont pemiis de vérifier le gain en vitesse de convergence obtenu par l'utilisation de l'algorithme COS-NLMS plutôt que I'utilisation des algorithmes LMS à référence filtrée ou NLMS. Ce gain s'est avéré être très intéressant dans le cas de signaux de référence filtrée très corrélés. Ensuite, les aigorithmes COS-NLMS et NLMS ont été m i s en oeuvre en temps réel sur une carte DSP de façon à pouvoir effectuer un contrôle sur une structure mécanique réelle, soit le contrôle du bruit dans un conduit. Encore une fois, le gain en vitesse de convergence apporté par le COS-NLMS par rapport au NLMS s'est avéré intéressant. Ce travail a donc prouvé que, dans des environnements stationnaires (c'est-à-dire lorsque les différentes fonctions de transfert présentes dans le système de contrôle actif sont invariantes et que la source de perturbation est également stationnaire), le COS-NLMS pouvait permettre d'atteindre une performance donnée plus rapidement que les algorithmes LMS classiques. Parmi les points qu'il reste à évaluer, il y a l'étude de la performance du COS-NLMS dans des environnements où les fonctions de transfert sont non-stationnaires ou bien dans des environnements où les statistiques de la source de perturbation varient en fonction du temps. Le COS-NLMS devrait permettre une meilleure poursuite ("tracking") que les algorithmes L M S classiques mais cependant l'estimation de la matrice Rd, (voir l'équation 2.33) devra dans ce cas être effectuée continuellement, et puisque le calcul d'un estimé valable n'est pas instantané alors une perte de performance pourrait être observée par rapport au cas stationnaire. L'applicabilité de l'algorithme COS-NLiMS aux systèmes feedbacks pourrait également être un point à étudier. En théorie, l'algorithme pourrait être directement utilisable pour les systèmes feedbacks mais la problématique des systèmes feedbacks est différente de celle des systèmes feedforwards. En effet, les systèmes feedbacks essaient généralement d'éliminer les composantes périodiques ainsi que les résonances du système à contrôler, et les algorithmes de type LMS à référence filtrée sont généralement efficaces pour un tel contrôle. De plus, la performance des contrôleurs feedbacks provient en partie de leur capacité à identifier des corrélations à court terme entre le signal de référence filtrée et le signal à éliminer. Donc pour de tels systèmes, la décomposition du contrôleur en un système de contrôle en temps réel et un système d'optimisation en temps différé (figure 2.2) n'est pas intéressante, car le délai entre les mmcations aux filaes de temps réel est beaucoup plus long dans ce cas, et les corrélations à court terme ne peuvent alors être contrôlées. A l'opposé, le COS-NLMS est un algorithme particulièrement intéressant lorsque cette décomposition temps réel - temps différé est possible, car la partie temps réel du COS-NLMS est strictement identique à celle du LMS à référence filtrée. Le COS-NLMS deviendrait cependant un algorithme plus lourd que le LMS si l'optimisation devait être calculée en temps réel. Néanmoins, dans le cas où la fonction de transfert entre l'actionneur et le point de contrôle est faible en amplitude aux fréquences qui sont les plus importantes à contrôler (et donc le signal de référence aura également une composante faible à ces fréquences), alors un algorithme de type COS-NLMS où la partie contrôle et la partie optimisation seraient calculées en temps réel pourrait vraisemblablement améliorer les performances d'un système feedback de contrôle actif par rapport à un système qui utilise l'algorithme LMS à référence filtrée classique. BILLOUD, G.,LEFEBVRE, S.,PAILLARD, J., RIBET, H. (1992) MultivanCcble adaptive active control of cabin noise, Conférence Idée force 92, séminaire de travail sur le contrôle actif du son. des vibrations et des instabilités fluides. COLEMAN, R.B.,B E , E.F., WATERS, B.G. (novembre 1994) Optimlprobe-signal generation for on-line p h t identification within filrered-X LMS controllers, Active conirol of noise and vibrations (ASME 1994), DE-Vol.75, Chicago, p. 1-6. DANO,P. (octobre 1994) Réalisation d'cm casque actif mti-bruit de configuration feedfonvard, Réalisation d'un casque actif anti-bruit de configuration feedforward, Mémoire de maîtrise en sciences appliquées de l'Université de Sherbrooke, Sherbrooke, 109 p. DOUGLAS, S., OLKIN, J. (avril 1993) Multiple-Input, Multiple Output, Multiple-Errur Adaptive Feedforward Contrul Using the Filtered-X Nomlised LMS Algorith, J?roceedines of the second conference on recent advances in active control of sound and vibration, B lacksburgh(VA), p. 743-754. ELLIO'IT, S.J., SUTTON, TJ.,RAFAELY, B.,JOHNSON,M. (juillet 1995) Design of feedback controllers using afeedfonvard approach, Roceedings of ACTIVE 95. Newport Beach (CA), p. 863-874 ERIKSSON, L.J., ALLIE, M.C., GRIENER, R.A. (1987) Ihe selection und application of an 1 . filter for use in active sozuzd atenzuztion, IEEE Transactions on ASSP, volume 35, p. 433437 GWIGOU, C. , VERNIER, E.,BERRY. A., L'ESPÉRANCE, A. (juillet 1995)A study of active s o d control on air-exchanger ,Proceedings of ACTNE 95, Newport Beach (CA), p. 253-262 HAYKIN, S. (1991) Adaptive Filter Theory, Englewood Cliffs (NJ), Deuxième édition, Prentice Hall, 854 p. L*ESPÉRANCE,A., BOUCHARD,M., PAILLARD, B.,HOUIEL, F., GUIGOU, C. (juillet 1995) Active noise control of high order modes in a circular duct, Proceedinns of ACTIVE 95, Newport Beach (CA), p. 43 1-440 MIYOSHI, M.,SHIMIZU,J., KOIZUIUII, N. (août 1994) On arrangements ofnoise controlled points for producing Iorger quiet zones wtrh rnulti-point active noise control, Proceedines of inter-noise 94, Yokohama,p. 1299-1304. MIYOSHI, M., KANEDA, Y. (mars-avril 1991) Active controi of broadbund random noise in a reverberant three dànemional space, Noise Control Engineering ioumai, Volume 36, Numéro 2, p. 85-90. NARAYAN, S.S., PETERSON, A.M., NARASIMHA,M.J.(juin 1983) T r N o m dornain LMS algorith, IEEE Transactions on Acoustics. Srnech and Signal Processing, Volume 3 1, Numéro 3, p. 6096 15. NELSON,P.A., ELLIO'IT, S.J. (1992) Active control of sound, London, Academic Press Limited, 436 p. OPPENHEIM, A.V., WILLSKY, A.S (1983)Signais Md system, Englewood Cliffs (No, Prentice-Hall, 796 p. PAILLARD, B., BERRY,A., LE DINH, C.T., NICOLAS, J. (1995) Accelerating The Convergence Of Ihe Filtered-X LMS Algonthm Through Tranrfm-Domin Optirnizution, À êee publié dans Mechanical Svstems and Simal Processing. STRANG, G. (1988) Linear algebra and its applications, Orlando (FL), Harcourt Brace lovanovich, 505 p. SWINBANKS, M.A. (1973) Active control of s o d propagation in long ducts, Journal of sound and vibration. volume 27 (3), p. 4 11-4 16 UNGERBOECK, G. (novembre 1972) n e o r y on the speed of convergence in adaptive equulizers for digital communication, IBM Journal of Research and Develo~ment,p. 546-555 WIDROW, B.,STEARNS, S.D.(1985) Adaptive Signal Processing, Englewood Cliffs (NJ), Prentice Hall, 474 p.